ohif-viewer/StandaloneViewer/SampleClientOnlyBuild/1b141e5df4cc5763349d5ad09402ac283977d7af.js

283 lines
2.9 MiB
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.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

!function(){var n,t;(function(){n={}}).call(this),function(){(function(){var t=this,r=t._,e={},i=Array.prototype,u=Object.prototype,a=Function.prototype,c=i.push,o=i.slice,l=i.concat,f=u.toString,s=u.hasOwnProperty,p=i.forEach,h=i.map,v=i.reduce,y=i.reduceRight,d=i.filter,g=i.every,m=i.some,b=i.indexOf,_=i.lastIndexOf,w=Array.isArray,x=Object.keys,j=a.bind,A=function(n){return n instanceof A?n:this instanceof A?void(this._wrapped=n):new A(n)};"undefined"!=typeof n?("undefined"!=typeof module&&module.exports&&(n=module.exports=A),n._=A):t._=A,A.VERSION="1.5.2";var k=function(n){return"[object Arguments]"===f.call(n)};k(arguments)||(k=function(n){return!(!n||!s.call(n,"callee")||"function"!=typeof n.callee)});var O=function(n){return n.length===+n.length&&(k(n)||n.constructor!==Object)},E=A.each=A.forEach=function(n,t,r){if(null!=n)if(p&&n.forEach===p)n.forEach(t,r);else if(O(n)){for(var i=0,u=n.length;i<u;i++)if(t.call(r,n[i],i,n)===e)return}else for(var a=A.keys(n),i=0,u=a.length;i<u;i++)if(t.call(r,n[a[i]],a[i],n)===e)return};A.map=A.collect=function(n,t,r){var e=[];return null==n?e:h&&n.map===h?n.map(t,r):(E(n,function(n,i,u){e.push(t.call(r,n,i,u))}),e)};var F="Reduce of empty array with no initial value";A.reduce=A.foldl=A.inject=function(n,t,r,e){var i=arguments.length>2;if(null==n&&(n=[]),v&&n.reduce===v)return e&&(t=A.bind(t,e)),i?n.reduce(t,r):n.reduce(t);if(E(n,function(n,u,a){i?r=t.call(e,r,n,u,a):(r=n,i=!0)}),!i)throw new TypeError(F);return r},A.reduceRight=A.foldr=function(n,t,r,e){var i=arguments.length>2;if(null==n&&(n=[]),y&&n.reduceRight===y)return e&&(t=A.bind(t,e)),i?n.reduceRight(t,r):n.reduceRight(t);var u=n.length;if(!O(n)){var a=A.keys(n);u=a.length}if(E(n,function(c,o,l){o=a?a[--u]:--u,i?r=t.call(e,r,n[o],o,l):(r=n[o],i=!0)}),!i)throw new TypeError(F);return r},A.find=A.detect=function(n,t,r){var e;return M(n,function(n,i,u){if(t.call(r,n,i,u))return e=n,!0}),e},A.filter=A.select=function(n,t,r){var e=[];return null==n?e:d&&n.filter===d?n.filter(t,r):(E(n,function(n,i,u){t.call(r,n,i,u)&&e.push(n)}),e)},A.reject=function(n,t,r){return A.filter(n,function(n,e,i){return!t.call(r,n,e,i)},r)},A.every=A.all=function(n,t,r){t||(t=A.identity);var i=!0;return null==n?i:g&&n.every===g?n.every(t,r):(E(n,function(n,u,a){if(!(i=i&&t.call(r,n,u,a)))return e}),!!i)};var M=A.some=A.any=function(n,t,r){t||(t=A.identity);var i=!1;return null==n?i:m&&n.some===m?n.some(t,r):(E(n,function(n,u,a){if(i||(i=t.call(r,n,u,a)))return e}),!!i)};A.contains=A.include=function(n,t){return null!=n&&(b&&n.indexOf===b?n.indexOf(t)!=-1:M(n,function(n){return n===t}))},A.invoke=function(n,t){var r=o.call(arguments,2),e=A.isFunction(t);return A.map(n,function(n){return(e?t:n[t]).apply(n,r)})},A.pluck=function(n,t){return A.map(n,function(n){return n[t]})},A.where=function(n,t,r){return A.isEmpty(t)?r?void 0:[]:A[r?"find":"filter"](n,function(n){for(var r in t)if(t[r]!==n[r])return!1;return!0})},A.findWhere=function(n,t){return A.where(n,t,!0)},A.max=function(n,t,r){if(!t&&A.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.max.apply(Math,n);if(!t&&A.isEmpty(n))return-(1/0);var e={computed:-(1/0),value:-(1/0)};return E(n,function(n,i,u){var a=t?t.call(r,n,i,u):n;a>e.computed&&(e={value:n,computed:a})}),e.value},A.min=function(n,t,r){if(!t&&A.isArray(n)&&n[0]===+n[0]&&n.length<65535)return Math.min.apply(Math,n);if(!t&&A.isEmpty(n))return 1/0;var e={computed:1/0,value:1/0};return E(n,function(n,i,u){var a=t?t.call(r,n,i,u):n;a<e.computed&&(e={value:n,computed:a})}),e.value},A.shuffle=function(n){var t,r=0,e=[];return E(n,function(n){t=A.random(r++),e[r-1]=e[t],e[t]=n}),e},A.sample=function(n,t,r){return arguments.length<2||r?n[A.random(n.length-1)]:A.shuffle(n).slice(0,Math.max(0,t))};var R=function(n){return A.isFunction(n)?n:function(t){return t[n]}};A.sortBy=function(n,t,r){var e=R(t);return A.pluck(A.map(n,function(n,t,i){return{value:n,index:t,criteria:e.call(r,n,t,i)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||void 0===r)return 1;if(r<e||void 0===e)return-1}return n.index-t.index}),"value")};var S=function(n){return function(t,r,e){var i={},u=null==r?A.identity:R(r);return E(t,function(r,a){var c=u.call(e,r,a,t);n(i,c,r)}),i}};A.groupBy=S(function(n,t,r){(A.has(n,t)?n[t]:n[t]=[]).push(r)}),A.indexBy=S(function(n,t,r){n[t]=r}),A.countBy=S(function(n,t){A.has(n,t)?n[t]++:n[t]=1}),A.sortedIndex=function(n,t,r,e){r=null==r?A.identity:R(r);for(var i=r.call(e,t),u=0,a=n.length;u<a;){var c=u+a>>>1;r.call(e,n[c])<i?u=c+1:a=c}return u},A.toArray=function(n){return n?A.isArray(n)?o.call(n):O(n)?A.map(n,A.identity):A.values(n):[]},A.size=function(n){return null==n?0:O(n)?n.length:A.keys(n).length},A.first=A.head=A.take=function(n,t,r){if(null!=n)return null==t||r?n[0]:o.call(n,0,t)},A.initial=function(n,t,r){return o.call(n,0,n.length-(null==t||r?1:t))},A.last=function(n,t,r){if(null!=n)return null==t||r?n[n.length-1]:o.call(n,Math.max(n.length-t,0))},A.rest=A.tail=A.drop=function(n,t,r){return o.call(n,null==t||r?1:t)},A.compact=function(n){return A.filter(n,A.identity)};var I=function(n,t,r){return t&&A.every(n,A.isArray)?l.apply(r,n):(E(n,function(n){A.isArray(n)||A.isArguments(n)?t?c.apply(r,n):I(n,t,r):r.push(n)}),r)};A.flatten=function(n,t){return I(n,t,[])},A.without=function(n){return A.difference(n,o.call(arguments,1))},A.uniq=A.unique=function(n,t,r,e){A.isFunction(t)&&(e=r,r=t,t=!1);var i=r?A.map(n,r,e):n,u=[],a=[];return E(i,function(r,e){(t?e&&a[a.length-1]===r:A.contains(a,r))||(a.push(r),u.push(n[e]))}),u},A.union=function(){return A.uniq(A.flatten(arguments,!0))},A.intersection=function(n){var t=o.call(arguments,1);return A.filter(A.uniq(n),function(n){return A.every(t,function(t){return A.indexOf(t,n)>=0})})},A.difference=function(n){var t=l.apply(i,o.call(arguments,1));return A.filter(n,function(n){return!A.contains(t,n)})},A.zip=function(){for(var n=A.max(A.pluck(arguments,"length").concat(0)),t=new Array(n),r=0;r<n;r++)t[r]=A.pluck(arguments,""+r);return t},A.object=function(n,t){if(null==n)return{};for(var r={},e=0,i=n.length;e<i;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},A.indexOf=function(n,t,r){if(null==n)return-1;var e=0,i=n.length;if(r){if("number"!=typeof r)return e=A.sortedIndex(n,t),n[e]===t?e:-1;e=r<0?Math.max(0,i+r):r}if(b&&n.indexOf===b)return n.indexOf(t,r);for(;e<i;e++)if(n[e]===t)return e;return-1},A.lastIndexOf=function(n,t,r){if(null==n)return-1;var e=null!=r;if(_&&n.lastIndexOf===_)return e?n.lastIndexOf(t,r):n.lastIndexOf(t);for(var i=e?r:n.length;i--;)if(n[i]===t)return i;return-1},A.range=function(n,t,r){arguments.length<=1&&(t=n||0,n=0),r=arguments[2]||1;for(var e=Math.max(Math.ceil((t-n)/r),0),i=0,u=new Array(e);i<e;)u[i++]=n,n+=r;return u};var T=function(){};A.bind=function(n,t){var r,e;if(j&&n.bind===j)return j.apply(n,o.call(arguments,1));if(!A.isFunction(n))throw new TypeError;return r=o.call(arguments,2),e=function(){if(!(this instanceof e))return n.apply(t,r.concat(o.call(arguments)));T.prototype=n.prototype;var i=new T;T.prototype=null;var u=n.apply(i,r.concat(o.call(arguments)));return Object(u)===u?u:i}},A.partial=function(n){var t=o.call(arguments,1);return function(){return n.apply(this,t.concat(o.call(arguments)))}},A.bindAll=function(n){var t=o.call(arguments,1);if(0===t.length)throw new Error("bindAll must be passed function names");return E(t,function(t){n[t]=A.bind(n[t],n)}),n},A.memoize=function(n,t){var r={};return t||(t=A.identity),function(){var e=t.apply(this,arguments);return A.has(r,e)?r[e]:r[e]=n.apply(this,arguments)}},A.delay=function(n,t){var r=o.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},A.defer=function(n){return A.delay.apply(A,[n,1].concat(o.call(arguments,1)))},A.throttle=function(n,t,r){var e,i,u,a=null,c=0;r||(r={});var o=function(){c=r.leading===!1?0:new Date,a=null,u=n.apply(e,i)};return function(){var l=new Date;c||r.leading!==!1||(c=l);var f=t-(l-c);return e=this,i=arguments,f<=0?(clearTimeout(a),a=null,c=l,u=n.apply(e,i)):a||r.trailing===!1||(a=setTimeout(o,f)),u}},A.debounce=function(n,t,r){var e,i,u,a,c;return function(){u=this,i=arguments,a=new Date;var o=function(){var l=new Date-a;l<t?e=setTimeout(o,t-l):(e=null,r||(c=n.apply(u,i)))},l=r&&!e;return e||(e=setTimeout(o,t)),l&&(c=n.apply(u,i)),c}},A.once=function(n){var t=!1,r;return function(){return t?r:(t=!0,r=n.apply(this,arguments),n=null,r)}},A.wrap=function(n,t){return function(){var r=[n];return c.apply(r,arguments),t.apply(this,r)}},A.compose=function(){var n=arguments;return function(){for(var t=arguments,r=n.length-1;r>=0;r--)t=[n[r].apply(this,t)];return t[0]}},A.after=function(n,t){return function(){if(--n<1)return t.apply(this,arguments)}},A.keys=x||function(n){if(n!==Object(n))throw new TypeError("Invalid object");var t=[];for(var r in n)A.has(n,r)&&t.push(r);return t},A.values=function(n){for(var t=A.keys(n),r=t.length,e=new Array(r),i=0;i<r;i++)e[i]=n[t[i]];return e},A.pairs=function(n){for(var t=A.keys(n),r=t.length,e=new Array(r),i=0;i<r;i++)e[i]=[t[i],n[t[i]]];return e},A.invert=function(n){for(var t={},r=A.keys(n),e=0,i=r.length;e<i;e++)t[n[r[e]]]=r[e];return t},A.functions=A.methods=function(n){var t=[];for(var r in n)A.isFunction(n[r])&&t.push(r);return t.sort()},A.extend=function(n){return E(o.call(arguments,1),function(t){if(t)for(var r in t)n[r]=t[r]}),n},A.pick=function(n){var t={},r=l.apply(i,o.call(arguments,1));return E(r,function(r){r in n&&(t[r]=n[r])}),t},A.omit=function(n){var t={},r=l.apply(i,o.call(arguments,1));for(var e in n)A.contains(r,e)||(t[e]=n[e]);return t},A.defaults=function(n){return E(o.call(arguments,1),function(t){if(t)for(var r in t)void 0===n[r]&&(n[r]=t[r])}),n},A.clone=function(n){return A.isObject(n)?A.isArray(n)?n.slice():A.extend({},n):n},A.tap=function(n,t){return t(n),n};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n==1/t;if(null==n||null==t)return n===t;n instanceof A&&(n=n._wrapped),t instanceof A&&(t=t._wrapped);var i=f.call(n);if(i!=f.call(t))return!1;switch(i){case"[object String]":return n==String(t);case"[object Number]":return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case"[object Date]":case"[object Boolean]":return+n==+t;case"[object RegExp]":return n.source==t.source&&n.global==t.global&&n.multiline==t.multiline&&n.ignoreCase==t.ignoreCase}if("object"!=typeof n||"object"!=typeof t)return!1;for(var u=r.length;u--;)if(r[u]==n)return e[u]==t;var a=n.constructor,c=t.constructor;if(a!==c&&!(A.isFunction(a)&&a instanceof a&&A.isFunction(c)&&c instanceof c))return!1;r.push(n),e.push(t);var o=0,l=!0;if("[object Array]"==i){if(o=n.length,l=o==t.length)for(;o--&&(l=N(n[o],t[o],r,e)););}else{for(var s in n)if(A.has(n,s)&&(o++,!(l=A.has(t,s)&&N(n[s],t[s],r,e))))break;if(l){for(s in t)if(A.has(t,s)&&!o--)break;l=!o}}return r.pop(),e.pop(),l};A.isEqual=function(n,t){return N(n,t,[],[])},A.isEmpty=function(n){if(null==n)return!0;if(A.isArray(n)||A.isString(n))return 0===n.length;for(var t in n)if(A.has(n,t))return!1;return!0},A.isElement=function(n){return!(!n||1!==n.nodeType)},A.isArray=w||function(n){return"[object Array]"==f.call(n)},A.isObject=function(n){return n===Object(n)},E(["Arguments","Function","String","Number","Date","RegExp"],function(n){A["is"+n]=function(t){return f.call(t)=="[object "+n+"]"}}),A.isArguments(arguments)||(A.isArguments=function(n){return!(!n||!A.has(n,"callee"))}),"function"!=typeof/./&&(A.isFunction=function(n){return"function"==typeof n}),A.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},A.isNaN=function(n){return A.isNumber(n)&&n!=+n},A.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"==f.call(n)},A.isNull=function(n){return null===n},A.isUndefined=function(n){return void 0===n},A.has=function(n,t){return s.call(n,t)},A.noConflict=function(){return t._=r,this},A.identity=function(n){return n},A.times=function(n,t,r){for(var e=Array(Math.max(0,n)),i=0;i<n;i++)e[i]=t.call(r,i);return e},A.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))};var q={escape:{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;"}};q.unescape=A.invert(q.escape);var B={escape:new RegExp("["+A.keys(q.escape).join("")+"]","g"),unescape:new RegExp("("+A.keys(q.unescape).join("|")+")","g")};A.each(["escape","unescape"],function(n){A[n]=function(t){return null==t?"":(""+t).replace(B[n],function(t){return q[n][t]})}}),A.result=function(n,t){if(null!=n){var r=n[t];return A.isFunction(r)?r.call(n):r}},A.mixin=function(n){E(A.functions(n),function(t){var r=A[t]=n[t];A.prototype[t]=function(){var n=[this._wrapped];return c.apply(n,arguments),U.call(this,r.apply(A,n))}})};var D=0;A.uniqueId=function(n){var t=++D+"";return n?n+t:t},A.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var P=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\t":"t","\u2028":"u2028","\u2029":"u2029"},C=/\\|'|\r|\n|\t|\u2028|\u2029/g;A.template=function(n,t,r){var e;r=A.defaults({},r,A.templateSettings);var i=new RegExp([(r.escape||P).source,(r.interpolate||P).source,(r.evaluate||P).source].join("|")+"|$","g"),u=0,a="__p+='";n.replace(i,function(t,r,e,i,c){return a+=n.slice(u,c).replace(C,function(n){return"\\"+z[n]}),r&&(a+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'"),e&&(a+="'+\n((__t=("+e+"))==null?'':__t)+\n'"),i&&(a+="';\n"+i+"\n__p+='"),u=c+t.length,t}),a+="';\n",r.variable||(a="with(obj||{}){\n"+a+"}\n"),a="var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n"+a+"return __p;\n";try{e=new Function(r.variable||"obj","_",a)}catch(n){throw n.source=a,n}if(t)return e(t,A);var c=function(n){return e.call(this,n,A)};return c.source="function("+(r.variable||"obj")+"){\n"+a+"}",c},A.chain=function(n){return A(n).chain()};var U=function(n){return this._chain?A(n).chain():n};A.mixin(A),E(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=i[n];A.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!=n&&"splice"!=n||0!==r.length||delete r[0],U.call(this,r)}}),E(["concat","join","slice"],function(n){var t=i[n];A.prototype[n]=function(){return U.call(this,t.apply(this._wrapped,arguments))}}),A.extend(A.prototype,{chain:function(){return this._chain=!0,this},value:function(){return this._wrapped}})}).call(this)}.call(this),function(){t=n._}.call(this),"undefined"==typeof Package&&(Package={}),function(n,t){for(var r in t)r in n||(n[r]=t[r])}(Package.underscore={},{_:t})}();
!function(){var t=Package.underscore._,e,n,r;(function(){e=this}).call(this),function(){n=__meteor_runtime_config__.meteorEnv,r={isProduction:"production"===n.NODE_ENV,isDevelopment:"production"!==n.NODE_ENV,isClient:!0,isServer:!1,isCordova:!1},"object"==typeof __meteor_runtime_config__&&__meteor_runtime_config__.PUBLIC_SETTINGS&&(r.settings={public:__meteor_runtime_config__.PUBLIC_SETTINGS})}.call(this),function(){function e(t){if(t)return r._debug("Exception in callback of async function",t.stack?t.stack:t)}if(r.isServer)var n=Npm.require("fibers/future");"object"==typeof __meteor_runtime_config__&&__meteor_runtime_config__.meteorRelease&&(r.release=__meteor_runtime_config__.meteorRelease),t.extend(r,{_get:function(t){for(var e=1;e<arguments.length;e++){if(!(arguments[e]in t))return;t=t[arguments[e]]}return t},_ensure:function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];n in t||(t[n]={}),t=t[n]}return t},_delete:function(t){for(var e=[t],n=!0,r=1;r<arguments.length-1;r++){var o=arguments[r];if(!(o in t)){n=!1;break}if(t=t[o],"object"!=typeof t)break;e.push(t)}for(var r=e.length-1;r>=0;r--){var o=arguments[r+1];if(n)n=!1;else for(var i in e[r][o])return;delete e[r][o]}},wrapAsync:function(o,i){return function(){for(var a=i||this,s=t.toArray(arguments),u,c=s.length-1;c>=0;--c){var l=s[c],f=typeof l;if("undefined"!==f){"function"===f&&(u=l);break}}if(!u){if(r.isClient)u=e;else{var p=new n;u=p.resolver()}++c}s[c]=r.bindEnvironment(u);var _=o.apply(a,s);return p?p.wait():_}},_inherits:function(e,n){for(var r in n)t.has(n,r)&&(e[r]=n[r]);var o=function(){this.constructor=e};return o.prototype=n.prototype,e.prototype=new o,e.__super__=n.prototype,e}});var o=!1;r._wrapAsync=function(t,e){return o||(r._debug("Meteor._wrapAsync has been renamed to Meteor.wrapAsync"),o=!0),r.wrapAsync.apply(r,arguments)}}.call(this),function(){"use strict";function t(){if(o.setImmediate){var t=function(t){o.setImmediate(t)};return t.implementation="setImmediate",t}return null}function e(){function t(t,e){return"string"==typeof t&&t.substring(0,e.length)===e}function e(e){if(e.source===o&&t(e.data,s)){var n=e.data.substring(s.length);try{a[n]&&a[n]()}finally{delete a[n]}}}if(!o.postMessage||o.importScripts)return null;var n=!0,r=o.onmessage;if(o.onmessage=function(){n=!1},o.postMessage("","*"),o.onmessage=r,!n)return null;var i=0,a={},s="Meteor._setImmediate."+Math.random()+".";o.addEventListener?o.addEventListener("message",e,!1):o.attachEvent("onmessage",e);var u=function(t){++i,a[i]=t,o.postMessage(s+i,"*")};return u.implementation="postMessage",u}function n(){var t=function(t){o.setTimeout(t,0)};return t.implementation="setTimeout",t}var o=this;r._setImmediate=t()||e()||n()}.call(this),function(){var e=function(t){if(Package.ddp){var e=Package.ddp.DDP._CurrentInvocation;if(e.get()&&e.get().isSimulation)throw new Error("Can't set timers inside simulations");return function(){e.withValue(null,t)}}return t},n=function(t,n){return r.bindEnvironment(e(n),t)};t.extend(r,{setTimeout:function(t,e){return setTimeout(n("setTimeout callback",t),e)},setInterval:function(t,e){return setInterval(n("setInterval callback",t),e)},clearInterval:function(t){return clearInterval(t)},clearTimeout:function(t){return clearTimeout(t)},defer:function(t){r._setImmediate(n("defer callback",t))}})}.call(this),function(){r.makeErrorType=function(t,e){var n=function(){Error.captureStackTrace?Error.captureStackTrace(this,n):this.stack=(new Error).stack,e.apply(this,arguments),this.errorType=t};return r._inherits(n,Error),n},r.Error=r.makeErrorType("Meteor.Error",function(t,e,n){var r=this;r.error=t,r.reason=e,r.details=n,r.reason?r.message=r.reason+" ["+r.error+"]":r.message="["+r.error+"]"}),r.Error.prototype.clone=function(){var t=this;return new r.Error(t.error,t.reason,t.details)}}.call(this),function(){r._noYieldsAllowed=function(t){return t()},r._SynchronousQueue=function(){var t=this;t._tasks=[],t._running=!1,t._runTimeout=null},t.extend(r._SynchronousQueue.prototype,{runTask:function(e){var n=this;if(!n.safeToRunTask())throw new Error("Could not synchronously run a task from a running task");n._tasks.push(e);var o=n._tasks;n._tasks=[],n._running=!0,n._runTimeout&&(clearTimeout(n._runTimeout),n._runTimeout=null);try{for(;!t.isEmpty(o);){var i=o.shift();try{i()}catch(e){if(t.isEmpty(o))throw e;r._debug("Exception in queued task: "+(e.stack||e))}}}finally{n._running=!1}},queueTask:function(e){var n=this;n._tasks.push(e),n._runTimeout||(n._runTimeout=setTimeout(t.bind(n.flush,n),0))},flush:function(){var t=this;t.runTask(function(){})},drain:function(){var e=this;if(e.safeToRunTask())for(;!t.isEmpty(e._tasks);)e.flush()},safeToRunTask:function(){var t=this;return!t._running}})}.call(this),function(){var t=[],e=!1,n=!1,o=0,i=function(){o++},a=function(){o--,s()},s=function(){if(!(n||!e||o>0)){for(n=!0;t.length;)t.shift()();r.isCordova&&WebAppLocalServer.startupDidComplete()}},u=function(){e||(e=!0,s())};r.isCordova&&(i(),document.addEventListener("deviceready",a,!1)),"complete"===document.readyState||"loaded"===document.readyState?window.setTimeout(u):document.addEventListener?(document.addEventListener("DOMContentLoaded",u,!1),window.addEventListener("load",u,!1)):(document.attachEvent("onreadystatechange",function(){"complete"===document.readyState&&u()}),window.attachEvent("load",u)),r.startup=function(e){var o=!document.addEventListener&&document.documentElement.doScroll;if(o&&window===top){try{o("left")}catch(t){return void setTimeout(function(){r.startup(e)},50)}e()}else n?e():t.push(e)}}.call(this),function(){var t=0;r._debug=function(){if(t)return void t--;if("undefined"!=typeof console&&"undefined"!=typeof console.log)if(0==arguments.length)console.log("");else if("function"==typeof console.log.apply){for(var e=!0,n=0;n<arguments.length;n++)"string"!=typeof arguments[n]&&(e=!1);e?console.log.apply(console,[Array.prototype.join.call(arguments," ")]):console.log.apply(console,arguments)}else if("function"==typeof Function.prototype.bind){var r=Function.prototype.bind.call(console.log,console);r.apply(console,arguments)}else Function.prototype.call.call(console.log,console,Array.prototype.slice.call(arguments))},r._suppress_log=function(e){t+=e},r._suppressed_log_expected=function(){return 0!==t}}.call(this),function(){r._escapeRegExp=function(t){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}}.call(this),function(){var t;t=r.isClient?n.TEST_METADATA:process.env.TEST_METADATA;var e=JSON.parse(t||"{}"),o=e.driverPackage;r.isTest=!!e.isTest,r.isAppTest=!!e.isAppTest,r.isPackageTest=!!o&&!r.isTest&&!r.isAppTest,"string"==typeof o&&r.startup(function(){var t=Package[o];if(!t)throw new Error("Can't find test driver package: "+o);if(r.isClient){if("function"!=typeof t.runTests)throw new Error("Test driver package "+o+" missing `runTests` export");t.runTests()}else"function"==typeof t.start&&t.start()})}.call(this),function(){var e=0,n=[];r.EnvironmentVariable=function(){this.slot=e++},t.extend(r.EnvironmentVariable.prototype,{get:function(){return n[this.slot]},getOrNullIfOutsideFiber:function(){return this.get()},withValue:function(t,e){var r=n[this.slot];try{n[this.slot]=t;var o=e()}finally{n[this.slot]=r}return o}}),r.bindEnvironment=function(e,o,i){var a=t.clone(n);if(!o||"string"==typeof o){var s=o||"callback of async function";o=function(t){r._debug("Exception in "+s+":",t&&t.stack||t)}}return function(){var r=n;try{n=a;var s=e.apply(i,t.toArray(arguments))}catch(t){o(t)}finally{n=r}return s}},r._nodeCodeMustBeInFiber=function(){}}.call(this),function(){r.absoluteUrl=function(e,n){n||"object"!=typeof e||(n=e,e=void 0),n=t.extend({},r.absoluteUrl.defaultOptions,n||{});var o=n.rootUrl;if(!o)throw new Error("Must pass options.rootUrl or set ROOT_URL in the server environment");return/^http[s]?:\/\//i.test(o)||(o="http://"+o),/\/$/.test(o)||(o+="/"),e&&(o+=e),n.secure&&/^http:/.test(o)&&!/http:\/\/localhost[:\/]/.test(o)&&!/http:\/\/127\.0\.0\.1[:\/]/.test(o)&&(o=o.replace(/^http:/,"https:")),n.replaceLocalhost&&(o=o.replace(/^http:\/\/localhost([:\/].*)/,"http://127.0.0.1$1")),o},r.absoluteUrl.defaultOptions={},"object"==typeof __meteor_runtime_config__&&__meteor_runtime_config__.ROOT_URL&&(r.absoluteUrl.defaultOptions.rootUrl=__meteor_runtime_config__.ROOT_URL),r._relativeToSiteRootUrl=function(t){return"object"==typeof __meteor_runtime_config__&&"/"===t.substr(0,1)&&(t=(__meteor_runtime_config__.ROOT_URL_PATH_PREFIX||"")+t),t}}.call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var n in e)n in t||(t[n]=e[n])}(Package.meteor={},{Meteor:r,global:e,meteorEnv:n})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["meteor-base"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["mobile-experience"]={}}();
!function(){var e=Package.meteor.Meteor,r=Package.meteor.global,n=Package.meteor.meteorEnv,t,o;t=function(e){"use strict";function r(e,r){return o(e)&&(l(P,e,r),i(w)&&w(b)),b}function n(e){this.id=e,this.children=[]}function t(e,r){return x.call(e,r)&&e[r]}function o(e){return e&&"object"==typeof e}function i(e){return"function"==typeof e}function u(e){return"string"==typeof e}function f(e){function r(r){var n=m(e,r);if(n)return a(n,e.m);var t=new Error("Cannot find module '"+r+"'");if(i(q))return q(r,e.m.id,t);throw t}return i(g)&&(r=g(r,e.m.id)),r.resolve=function(r){var n=m(e,r);if(n)return n.m.id;var t=new Error("Cannot find module '"+r+"'");if(q&&i(q.resolve))return q.resolve(r,e.m.id,t);throw t},r}function c(e,r){var t=this;t.p=r=r||null,t.m=new n(e)}function a(e,r){var n=e&&e.c,t=e.m;if(!x.call(t,"exports")){if(r){t.parent=r;var o=r.children;Array.isArray(o)&&o.push(t)}i(t.useNode)&&t.useNode()||n(t.require=t.require||f(e),t.exports={},t,e.m.id,e.p.m.id),t.loaded=!0}return i(t.runModuleSetters)&&t.runModuleSetters(),t.exports}function s(e){return e&&o(e.c)}function l(e,r,n){if(Array.isArray(r)){var f=[];r.forEach(function(e){u(e)?f.push(e):i(e)&&(r=e)}),i(r)?r.d=f:r=null}else i(r)?r.d=r.d||[]:u(r)||o(r)||(r=null);r&&(e.c=e.c||(o(r)?{}:r),o(r)&&s(e)&&Object.keys(r).forEach(function(o){if(".."===o)i=e.p;else{var i=t(e.c,o);i||(i=e.c[o]=new c(e.m.id.replace(/\/*$/,"/")+o,e),i.o=n)}l(i,r[o],n)}))}function p(e){return e.o&&e.o.extensions||y}function d(e,r,n){for(;e&&!s(e);)e=e.p;if(!e||!r||"."===r)return e;if(".."===r)return e.p;var o=t(e.c,r);if(n&&(!o||s(o)))for(var i=0;i<n.length;++i){var u=t(e.c,r+n[i]);if(u)return u}return o}function v(e,r,n){var t=r.split("/");return t.every(function(r,o){return e=o<t.length-1?d(e,r):d(e,r,n)}),e}function m(e,r,n){var t=p(e);for(e="/"===r.charAt(0)?v(P,r,t):"."===r.charAt(0)?v(e,r,t):h(e,r,t);s(e);){if(n=n||[],n.indexOf(e)<0){n.push(e);var o=d(e,"package.json"),i=o&&a(o).main;if(u(i)&&(e=v(e,i,t)||m(e,i,n)))continue}e=d(e,"index.js")}return e&&u(e.c)&&(e=m(e,e.c,n)),e}function h(e,r,n){if(i(k)&&(r=k(r,e.m.id)),u(r)){for(var t;e&&!t;e=e.p)t=s(e)&&v(e,"node_modules/"+r,n);return t}}e=e||{};var y=e.extensions||[".js",".json"],w=e.onInstall,g=e.wrapRequire,k=e.override,q=e.fallback,x={}.hasOwnProperty,P=new c("/",new c("/..")),b=f(P);return n.prototype.resolve=function(e){return this.require.resolve(e)},r.Module=n,r},"object"==typeof exports&&(exports.makeInstaller=t),function(){var r={},n=r.hasOwnProperty,i=/^[^.\/]/;"function"==typeof Profile&&process.env.METEOR_PROFILE&&(r.wrapRequire=function(e){return Profile(function(e){return"require("+JSON.stringify(e)+")"},e)}),r.fallback=function(e,r,n){if(i.test(e)&&"object"==typeof Npm&&"function"==typeof Npm.require)return Npm.require(e);throw n},r.fallback.resolve=function(r,n,t){if(e.isServer&&i.test(r))return r;throw t},o=t(r);var u=o.Module.prototype;e.isServer&&(u.useNode=function(){if("function"!=typeof npmRequire)return!1;var e=this.id.split("/"),r=0;if(""===e[r]&&++r,"node_modules"===e[r]&&"meteor"===e[r+1]&&(r+=2),e.indexOf("node_modules",r)<0)return!1;try{npmRequire.resolve(this.id)}catch(e){return!1}return this.exports=npmRequire(this.id),!0})}.call(this),"undefined"==typeof Package&&(Package={}),function(e,r){for(var n in r)n in e||(e[n]=r[n])}(Package["modules-runtime"]={},{meteorInstall:o})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,r=Package.meteor.meteorEnv,n=Package.underscore._,o=Package["modules-runtime"].meteorInstall,i,s,a=o({node_modules:{meteor:{modules:{"client.js":["./install-packages.js","./stubs.js","./buffer.js","./process.js","reify/lib/runtime","./css",function(t,e,r){t("./install-packages.js"),t("./stubs.js"),t("./buffer.js"),t("./process.js"),t("reify/lib/runtime").enable(r.constructor),e.addStyles=t("./css").addStyles}],"buffer.js":["buffer",function(t){try{i=e.Buffer||t("buffer").Buffer}catch(t){}}],"css.js":function(t,e){var r=document,n=r.getElementsByTagName("head").item(0);e.addStyles=function(t){var e=r.createElement("style");e.setAttribute("type","text/css");var o=e.sheet||e.styleSheet;return o?o.cssText=t:e.appendChild(r.createTextNode(t)),n.appendChild(e)}},"install-packages.js":function(t,e,r){function n(t,e){var r={};e?r[t+".js"]=[e,function(t,r,n){n.exports=t(e)}]:r[t+".js"]=function(e,r,n){n.exports=Package[t]},o({node_modules:{meteor:r}})}n("underscore"),n("meteor"),n("meteor-base"),n("mobile-experience"),n("modules-runtime"),n("modules","meteor/modules/client.js"),n("es5-shim","meteor/es5-shim/client.js"),n("promise","meteor/promise/client.js"),n("ecmascript-runtime","meteor/ecmascript-runtime/runtime.js"),n("babel-compiler"),n("ecmascript"),n("base64"),n("ejson"),n("id-map"),n("ordered-dict"),n("tracker"),n("babel-runtime","meteor/babel-runtime/babel-runtime.js"),n("random"),n("mongo-id"),n("diff-sequence"),n("geojson-utils","meteor/geojson-utils/main.js"),n("minimongo"),n("check","meteor/check/match.js"),n("retry"),n("ddp-common"),n("reload"),n("ddp-client"),n("ddp"),n("ddp-server"),n("allow-deny"),n("mongo"),n("blaze-html-templates"),n("reactive-var"),n("jquery","meteor/jquery/main.js"),n("standard-minifier-css"),n("standard-minifier-js"),n("shell-server"),n("standard-app-packages"),n("stylus"),n("autoupdate"),n("meteor-platform"),n("webapp"),n("logging"),n("deps"),n("reactive-dict"),n("session"),n("livedata"),n("observe-sequence"),n("htmljs"),n("blaze"),n("ui"),n("spacebars"),n("templating-compiler"),n("templating-runtime"),n("templating"),n("launch-screen"),n("design"),n("iron:core"),n("iron:dynamic-template"),n("iron:layout"),n("clinical:router-url"),n("clinical:router-middleware-stack"),n("clinical:router-location"),n("iron:controller"),n("clinical:router"),n("natestrauser:select2"),n("aldeed:simple-schema"),n("ohif:core","meteor/ohif:core/main.js"),n("ohif:cornerstone"),n("url"),n("http"),n("momentjs:moment"),n("validatejs"),n("ohif:viewerbase"),n("silentcicero:jszip"),n("ddp-rate-limiter"),n("localstorage"),n("callback-hook"),n("accounts-base","meteor/accounts-base/client_main.js"),n("raix:eventemitter"),n("aldeed:collection2-core"),n("aldeed:schema-index"),n("aldeed:schema-deny"),n("aldeed:collection2"),n("gilbertwat:bootstrap3-daterangepicker"),n("coffeescript"),n("practicalmeteor:chai"),n("practicalmeteor:loglevel"),n("ohif:log"),n("ohif:dicom-services"),n("ohif:wadoproxy"),n("ohif:study-list"),n("ohif:hanging-protocols"),n("aldeed:template-extension"),n("twbs:bootstrap"),n("fortawesome:fontawesome"),n("mrt:moment"),n("fastclick"),n("peppelg:bootstrap-3-modal"),n("hot-code-push"),n("mdg:validation-error"),n("service-configuration")},"process.js":["process",function(i,a,u){try{s=e.process||i("process")}catch(t){s={}}t.isServer?o({node_modules:{"process.js":function(t,e,r){r.exports=s}}}):(s.platform="browser",s.nextTick=s.nextTick||t._setImmediate),"object"!=typeof s.env&&(s.env={}),n.extend(s.env,r)}],"stubs.js":["meteor-node-stubs",function(t){try{t("meteor-node-stubs")}catch(t){}}],node_modules:{reify:{lib:{"runtime.js":["./entry.js","./utils.js",function(t,e,r){var n=t("./entry.js").Entry,o=t("./utils.js");e.enable=function(e){function r(t){var e=t.exports;e&&"object"==typeof e&&(e.__esModule=!0)}var i=e.prototype;return"function"==typeof i.import&&"function"==typeof i.export?e:(i.resolve=i.resolve||function t(e){throw new Error("Module.prototype.resolve not implemented")},i.runModuleSetters=function t(e){var r=n.get(this.id);return r&&r.runModuleSetters(this),e},i.import=function(e,o){var s=this;r(s);var a=s.resolve(e);if(o&&"object"==typeof o){var u=n.getOrCreate(a);u.addSetters(s,o)}var c=u&&u.runCount,f="function"==typeof s.require?s.require(a):t(a);u&&u.runCount===c&&u.runModuleSetters({id:a,exports:f,getExportByName:i.getExportByName})},i.export=function(t){var e=this;r(e),o.isPlainObject(t)&&n.getOrCreate(e.id).addGetters(t),e.loaded&&e.runModuleSetters()},i.getExportByName=function(t){var e=this.exports;return"*"===t?e:"default"!==t||e&&"object"==typeof e&&e.__esModule&&"default"in e?e&&e[t]:e},e)}}],"entry.js":["./utils.js",function(t,e,r){function n(t){this.id=t,this.runCount=0,this.setters=Object.create(null),this.getters=Object.create(null)}function o(t){var e=a[t.id];e&&e.runModuleSetters(t)}function i(t){var e=a[t.id];return e?e.runModuleGetters(t):0}var s=Object.prototype.hasOwnProperty,a=Object.create(null),u=t("./utils.js"),c=n.prototype;n.get=function(t){return a[t]||null},n.getOrCreate=function(t){return a[t]=a[t]||new n(t)},c.addSetters=function(t,e){var r=this;Object.keys(e).forEach(function(n){var o=e[n];"function"==typeof o&&"__esModule"!==n&&(o.parent=t,(r.setters[n]=r.setters[n]||[]).push(o))})},c.addGetters=function(t){var e=this;Object.keys(t).forEach(function(r){var n=t[r];"function"==typeof n&&"__esModule"!==r&&(e.getters[r]=n)})},c.runModuleGetters=function(t){var e=this,r=0;return Object.keys(e.getters).forEach(function(n){e.runGetter(t,n)&&++r}),r},c.runGetter=function(t,e){if(!s.call(this.getters,e))return!1;var r=this.getters[e];try{var n=r.call(t)}catch(t){}var o=t.exports;return(!s.call(o,e)||o[e]!==n)&&(o[e]=n,!0)},c.runModuleSetters=function(t){function e(e,o){function i(t,r,n){if("__esModule"!==n)return t.last=t.last||Object.create(null),s.call(t.last,n)&&t.last[n]===r?void 0:e.apply(o,arguments)}n.forEach(function(e){r.setters[e].forEach(function(r){var n=t.getExportByName(e);"*"===e?Object.keys(n).forEach(function(t){i(r,n[t],t)}):i(r,n,e)})})}var r=this,n=Object.keys(r.setters);r.runModuleGetters(t);var a=[],c,f;e(function(t,e,r){var n=t.parent;f=f||Object.create(null),s.call(f,n.id)||(c=c||Object.create(null),c[n.id]=n,u.isPlainObject(n.exports)?f[n.id]=u.assign({},n.exports):f[n.id]=n.exports),a.push(t,e,r)});for(var l=0;l<a.length;l+=3){var h=a[l],p=a[l+1],d=a[l+2];h.call(t,h.last[d]=p,d)}++r.runCount,c&&Object.keys(c).forEach(function(t){var e=c[t];if(i(e)>0)return o(e);var r=e.exports,n=f[e.id];u.shallowObjEqual(r,n)||o(e)})},e.Entry=n}],"utils.js":function(t,e){function r(t){return o.call(t)===i}var n=Object.prototype.hasOwnProperty,o=Object.prototype.toString,i=o.call({});e.isPlainObject=r,e.assign=Object.assign||function(t){for(var e=arguments.length,r=1;r<e;++r){var n=arguments[r];if(n&&"object"==typeof n)for(var o=Object.keys(n),i=0;i<o.length;++i){var s=o[i];t[s]=n[s]}}return t},e.shallowObjEqual=function(t,e){if(t===e)return!0;if(!r(t)||!r(e))return!1;var o=Object.keys(t),i=Object.keys(e);return o.length===i.length&&o.every(function(r){return n.call(e,r)&&t[r]===e[r]})}}}}}}},"meteor-node-stubs":{"package.json":function(t,e){e.name="meteor-node-stubs",e.version="0.2.4",e.main="index.js"},"index.js":["./map.json",function(t,e){var r=t("./map.json"),n={};Object.keys(r).forEach(function(o){if("string"==typeof r[o])try{e[o]=n[o+".js"]=t.resolve(r[o])}catch(t){}else e[o]=r[o],n[o+".js"]=function(){}}),"function"==typeof o&&o({"..":{node_modules:n}})}],"map.json":function(t,e,r){r.exports={assert:"assert/",buffer:"buffer/",child_process:null,cluster:null,console:"console-browserify",constants:"constants-browserify",crypto:"crypto-browserify",dgram:null,dns:null,domain:"domain-browser",events:"events/",fs:null,http:"http-browserify",https:"https-browserify",module:null,net:null,os:"os-browserify/browser.js",path:"path-browserify",process:"process/browser.js",punycode:"punycode/",querystring:"querystring-es3/",readline:null,repl:null,stream:"stream-browserify",_stream_duplex:"readable-stream/duplex.js",_stream_passthrough:"readable-stream/passthrough.js",_stream_readable:"readable-stream/readable.js",_stream_transform:"readable-stream/transform.js",_stream_writable:"readable-stream/writable.js",string_decoder:"string_decoder/",sys:"util/util.js",timers:"timers-browserify",tls:null,tty:"tty-browserify",url:"url/",util:"util/util.js",vm:"vm-browserify",zlib:"browserify-zlib"}},deps:{"buffer.js":["buffer/",function(t){t("buffer/")}],"process.js":["process/browser.js",function(t){t("process/browser.js")}],"domain.js":["domain-browser",function(t){t("domain-browser")}],"tty.js":["tty-browserify",function(t){t("tty-browserify")}]},node_modules:{buffer:{"package.json":function(t,e){e.name="buffer",e.version="4.9.1",e.main="index.js"},"index.js":["base64-js","ieee754","isarray",function(t,r,n){"use strict";function o(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(t){return!1}}function i(){return a.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(t,e){if(i()<e)throw new RangeError("Invalid typed array length");return a.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e),t.__proto__=a.prototype):(null===t&&(t=new a(e)),t.length=e),t}function a(t,e,r){if(!(a.TYPED_ARRAY_SUPPORT||this instanceof a))return new a(t,e,r);if("number"==typeof t){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return l(this,t)}return u(this,t,e,r)}function u(t,e,r,n){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?d(t,e,r,n):"string"==typeof e?h(t,e,r):y(t,e)}function c(t){if("number"!=typeof t)throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError('"size" argument must not be negative')}function f(t,e,r,n){return c(e),e<=0?s(t,e):void 0!==r?"string"==typeof n?s(t,e).fill(r,n):s(t,e).fill(r):s(t,e)}function l(t,e){if(c(e),t=s(t,e<0?0:0|_(e)),!a.TYPED_ARRAY_SUPPORT)for(var r=0;r<e;++r)t[r]=0;return t}function h(t,e,r){if("string"==typeof r&&""!==r||(r="utf8"),!a.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var n=0|g(e,r);t=s(t,n);var o=t.write(e,r);return o!==n&&(t=t.slice(0,o)),t}function p(t,e){var r=e.length<0?0:0|_(e.length);t=s(t,r);for(var n=0;n<r;n+=1)t[n]=255&e[n];return t}function d(t,e,r,n){if(e.byteLength,r<0||e.byteLength<r)throw new RangeError("'offset' is out of bounds");if(e.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");return e=void 0===r&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,r):new Uint8Array(e,r,n),a.TYPED_ARRAY_SUPPORT?(t=e,t.__proto__=a.prototype):t=p(t,e),t}function y(t,e){if(a.isBuffer(e)){var r=0|_(e.length);return t=s(t,r),0===t.length?t:(e.copy(t,0,0,r),t)}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||Z(e.length)?s(t,0):p(t,e);if("Buffer"===e.type&&tt(e.data))return p(t,e.data)}throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}function _(t){if(t>=i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i().toString(16)+" bytes");return 0|t}function b(t){return+t!=t&&(t=0),a.alloc(+t)}function g(t,e){if(a.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return J(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return X(t).length;default:if(n)return J(t).length;e=(""+e).toLowerCase(),n=!0}}function m(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if(r>>>=0,e>>>=0,r<=e)return"";for(t||(t="utf8");;)switch(t){case"hex":return B(this,e,r);case"utf8":case"utf-8":return T(this,e,r);case"ascii":return L(this,e,r);case"latin1":case"binary":return M(this,e,r);case"base64":return P(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return U(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function v(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function j(t,e,r,n,o){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=o?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(o)return-1;r=t.length-1}else if(r<0){if(!o)return-1;r=0}if("string"==typeof e&&(e=a.from(e,n)),a.isBuffer(e))return 0===e.length?-1:w(t,e,r,n,o);if("number"==typeof e)return e=255&e,a.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):w(t,[e],r,n,o);throw new TypeError("val must be string, number or Buffer")}function w(t,e,r,n,o){function i(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}var s=1,a=t.length,u=e.length;if(void 0!==n&&(n=String(n).toLowerCase(),"ucs2"===n||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,u/=2,r/=2}var c;if(o){var f=-1;for(c=r;c<a;c++)if(i(t,c)===i(e,f===-1?0:c-f)){if(f===-1&&(f=c),c-f+1===u)return f*s}else f!==-1&&(c-=c-f),f=-1}else for(r+u>a&&(r=a-u),c=r;c>=0;c--){for(var l=!0,h=0;h<u;h++)if(i(t,c+h)!==i(e,h)){l=!1;break}if(l)return c}return-1}function x(t,e,r,n){r=Number(r)||0;var o=t.length-r;n?(n=Number(n),n>o&&(n=o)):n=o;var i=e.length;if(i%2!==0)throw new TypeError("Invalid hex string");n>i/2&&(n=i/2);for(var s=0;s<n;++s){var a=parseInt(e.substr(2*s,2),16);if(isNaN(a))return s;t[r+s]=a}return s}function E(t,e,r,n){return Q(J(e,t.length-r),t,r,n)}function k(t,e,r,n){return Q(K(e),t,r,n)}function A(t,e,r,n){return k(t,e,r,n)}function O(t,e,r,n){return Q(X(e),t,r,n)}function S(t,e,r,n){return Q(V(e,t.length-r),t,r,n)}function P(t,e,r){return 0===e&&r===t.length?H.fromByteArray(t):H.fromByteArray(t.slice(e,r))}function T(t,e,r){r=Math.min(t.length,r);for(var n=[],o=e;o<r;){var i=t[o],s=null,a=i>239?4:i>223?3:i>191?2:1;if(o+a<=r){var u,c,f,l;switch(a){case 1:i<128&&(s=i);break;case 2:u=t[o+1],128===(192&u)&&(l=(31&i)<<6|63&u,l>127&&(s=l));break;case 3:u=t[o+1],c=t[o+2],128===(192&u)&&128===(192&c)&&(l=(15&i)<<12|(63&u)<<6|63&c,l>2047&&(l<55296||l>57343)&&(s=l));break;case 4:u=t[o+1],c=t[o+2],f=t[o+3],128===(192&u)&&128===(192&c)&&128===(192&f)&&(l=(15&i)<<18|(63&u)<<12|(63&c)<<6|63&f,l>65535&&l<1114112&&(s=l))}}null===s?(s=65533,a=1):s>65535&&(s-=65536,n.push(s>>>10&1023|55296),s=56320|1023&s),n.push(s),o+=a}return R(n)}function R(t){var e=t.length;if(e<=et)return String.fromCharCode.apply(String,t);for(var r="",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=et));return r}function L(t,e,r){var n="";r=Math.min(t.length,r);for(var o=e;o<r;++o)n+=String.fromCharCode(127&t[o]);return n}function M(t,e,r){var n="";r=Math.min(t.length,r);for(var o=e;o<r;++o)n+=String.fromCharCode(t[o]);return n}function B(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var o="",i=e;i<r;++i)o+=W(t[i]);return o}function U(t,e,r){for(var n=t.slice(e,r),o="",i=0;i<n.length;i+=2)o+=String.fromCharCode(n[i]+256*n[i+1]);return o}function C(t,e,r){if(t%1!==0||t<0)throw new RangeError("offset is not uint");if(t+e>r)throw new RangeError("Trying to access beyond buffer length")}function I(t,e,r,n,o,i){if(!a.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||e<i)throw new RangeError('"value" argument is out of bounds');if(r+n>t.length)throw new RangeError("Index out of range")}function Y(t,e,r,n){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-r,2);o<i;++o)t[r+o]=(e&255<<8*(n?o:1-o))>>>8*(n?o:1-o)}function N(t,e,r,n){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-r,4);o<i;++o)t[r+o]=e>>>8*(n?o:3-o)&255}function D(t,e,r,n,o,i){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function F(t,e,r,n,o){return o||D(t,e,r,4,3.4028234663852886e38,-3.4028234663852886e38),$.write(t,e,r,n,23,4),r+4}function G(t,e,r,n,o){return o||D(t,e,r,8,1.7976931348623157e308,-1.7976931348623157e308),$.write(t,e,r,n,52,8),r+8}function z(t){if(t=q(t).replace(rt,""),t.length<2)return"";for(;t.length%4!==0;)t+="=";return t}function q(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function W(t){return t<16?"0"+t.toString(16):t.toString(16)}function J(t,e){e=e||1/0;for(var r,n=t.length,o=null,i=[],s=0;s<n;++s){if(r=t.charCodeAt(s),r>55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=(o-55296<<10|r-56320)+65536}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function K(t){for(var e=[],r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}function V(t,e){for(var r,n,o,i=[],s=0;s<t.length&&!((e-=2)<0);++s)r=t.charCodeAt(s),n=r>>8,o=r%256,i.push(o),i.push(n);return i}function X(t){return H.toByteArray(z(t))}function Q(t,e,r,n){for(var o=0;o<n&&!(o+r>=e.length||o>=t.length);++o)e[o+r]=t[o];return o}function Z(t){return t!==t}var H=t("base64-js"),$=t("ieee754"),tt=t("isarray");r.Buffer=a,r.SlowBuffer=b,r.INSPECT_MAX_BYTES=50,a.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:o(),r.kMaxLength=i(),a.poolSize=8192,a._augment=function(t){return t.__proto__=a.prototype,t},a.from=function(t,e,r){return u(null,t,e,r)},a.TYPED_ARRAY_SUPPORT&&(a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0})),a.alloc=function(t,e,r){return f(null,t,e,r)},a.allocUnsafe=function(t){return l(null,t)},a.allocUnsafeSlow=function(t){return l(null,t)},a.isBuffer=function t(e){return!(null==e||!e._isBuffer)},a.compare=function t(e,r){if(!a.isBuffer(e)||!a.isBuffer(r))throw new TypeError("Arguments must be Buffers");if(e===r)return 0;for(var n=e.length,o=r.length,i=0,s=Math.min(n,o);i<s;++i)if(e[i]!==r[i]){n=e[i],o=r[i];break}return n<o?-1:o<n?1:0},a.isEncoding=function t(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}},a.concat=function t(e,r){if(!tt(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return a.alloc(0);var n;if(void 0===r)for(r=0,n=0;n<e.length;++n)r+=e[n].length;var o=a.allocUnsafe(r),i=0;for(n=0;n<e.length;++n){var s=e[n];if(!a.isBuffer(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(o,i),i+=s.length}return o},a.byteLength=g,a.prototype._isBuffer=!0,a.prototype.swap16=function t(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<e;r+=2)v(this,r,r+1);return this},a.prototype.swap32=function t(){var e=this.length;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<e;r+=4)v(this,r,r+3),v(this,r+1,r+2);return this},a.prototype.swap64=function t(){var e=this.length;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<e;r+=8)v(this,r,r+7),v(this,r+1,r+6),v(this,r+2,r+5),v(this,r+3,r+4);return this},a.prototype.toString=function t(){var e=0|this.length;return 0===e?"":0===arguments.length?T(this,0,e):m.apply(this,arguments)},a.prototype.equals=function t(e){if(!a.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===a.compare(this,e)},a.prototype.inspect=function t(){var e="",n=r.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),"<Buffer "+e+">"},a.prototype.compare=function t(e,r,n,o,i){if(!a.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===r&&(r=0),void 0===n&&(n=e?e.length:0),void 0===o&&(o=0),void 0===i&&(i=this.length),r<0||n>e.length||o<0||i>this.length)throw new RangeError("out of range index");if(o>=i&&r>=n)return 0;if(o>=i)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,o>>>=0,i>>>=0,this===e)return 0;for(var s=i-o,u=n-r,c=Math.min(s,u),f=this.slice(o,i),l=e.slice(r,n),h=0;h<c;++h)if(f[h]!==l[h]){s=f[h],u=l[h];break}return s<u?-1:u<s?1:0},a.prototype.includes=function t(e,r,n){return this.indexOf(e,r,n)!==-1},a.prototype.indexOf=function t(e,r,n){return j(this,e,r,n,!0)},a.prototype.lastIndexOf=function t(e,r,n){return j(this,e,r,n,!1)},a.prototype.write=function t(e,r,n,o){if(void 0===r)o="utf8",n=this.length,r=0;else if(void 0===n&&"string"==typeof r)o=r,n=this.length,r=0;else{if(!isFinite(r))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");r=0|r,isFinite(n)?(n=0|n,void 0===o&&(o="utf8")):(o=n,n=void 0)}var i=this.length-r;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");o||(o="utf8");for(var s=!1;;)switch(o){case"hex":return x(this,e,r,n);case"utf8":case"utf-8":return E(this,e,r,n);case"ascii":return k(this,e,r,n);case"latin1":case"binary":return A(this,e,r,n);case"base64":return O(this,e,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,r,n);default:if(s)throw new TypeError("Unknown encoding: "+o);o=(""+o).toLowerCase(),s=!0}},a.prototype.toJSON=function t(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var et=4096;a.prototype.slice=function t(e,r){var n=this.length;e=~~e,r=void 0===r?n:~~r,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r<e&&(r=e);var o;if(a.TYPED_ARRAY_SUPPORT)o=this.subarray(e,r),o.__proto__=a.prototype;else{var i=r-e;o=new a(i,(void 0));for(var s=0;s<i;++s)o[s]=this[s+e]}return o},a.prototype.readUIntLE=function t(e,r,n){e=0|e,r=0|r,n||C(e,r,this.length);for(var o=this[e],i=1,s=0;++s<r&&(i*=256);)o+=this[e+s]*i;return o},a.prototype.readUIntBE=function t(e,r,n){e=0|e,r=0|r,n||C(e,r,this.length);for(var o=this[e+--r],i=1;r>0&&(i*=256);)o+=this[e+--r]*i;return o},a.prototype.readUInt8=function t(e,r){return r||C(e,1,this.length),this[e]},a.prototype.readUInt16LE=function t(e,r){return r||C(e,2,this.length),this[e]|this[e+1]<<8},a.prototype.readUInt16BE=function t(e,r){return r||C(e,2,this.length),this[e]<<8|this[e+1]},a.prototype.readUInt32LE=function t(e,r){return r||C(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},a.prototype.readUInt32BE=function t(e,r){return r||C(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},a.prototype.readIntLE=function t(e,r,n){e=0|e,r=0|r,n||C(e,r,this.length);for(var o=this[e],i=1,s=0;++s<r&&(i*=256);)o+=this[e+s]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*r)),o},a.prototype.readIntBE=function t(e,r,n){e=0|e,r=0|r,n||C(e,r,this.length);for(var o=r,i=1,s=this[e+--o];o>0&&(i*=256);)s+=this[e+--o]*i;return i*=128,s>=i&&(s-=Math.pow(2,8*r)),s},a.prototype.readInt8=function t(e,r){return r||C(e,1,this.length),128&this[e]?(255-this[e]+1)*-1:this[e]},a.prototype.readInt16LE=function t(e,r){r||C(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt16BE=function t(e,r){r||C(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt32LE=function t(e,r){return r||C(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},a.prototype.readInt32BE=function t(e,r){return r||C(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},a.prototype.readFloatLE=function t(e,r){return r||C(e,4,this.length),$.read(this,e,!0,23,4)},a.prototype.readFloatBE=function t(e,r){return r||C(e,4,this.length),$.read(this,e,!1,23,4)},a.prototype.readDoubleLE=function t(e,r){return r||C(e,8,this.length),$.read(this,e,!0,52,8)},a.prototype.readDoubleBE=function t(e,r){return r||C(e,8,this.length),$.read(this,e,!1,52,8)},a.prototype.writeUIntLE=function t(e,r,n,o){if(e=+e,r=0|r,n=0|n,!o){var i=Math.pow(2,8*n)-1;I(this,e,r,n,i,0)}var s=1,a=0;for(this[r]=255&e;++a<n&&(s*=256);)this[r+a]=e/s&255;return r+n},a.prototype.writeUIntBE=function t(e,r,n,o){if(e=+e,r=0|r,n=0|n,!o){var i=Math.pow(2,8*n)-1;I(this,e,r,n,i,0)}var s=n-1,a=1;for(this[r+s]=255&e;--s>=0&&(a*=256);)this[r+s]=e/a&255;return r+n},a.prototype.writeUInt8=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,1,255,0),a.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[r]=255&e,r+1},a.prototype.writeUInt16LE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8):Y(this,e,r,!0),r+2},a.prototype.writeUInt16BE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[r]=e>>>8,this[r+1]=255&e):Y(this,e,r,!1),r+2},a.prototype.writeUInt32LE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=255&e):N(this,e,r,!0),r+4},a.prototype.writeUInt32BE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=255&e):N(this,e,r,!1),r+4},a.prototype.writeIntLE=function t(e,r,n,o){if(e=+e,r=0|r,!o){var i=Math.pow(2,8*n-1);I(this,e,r,n,i-1,-i)}var s=0,a=1,u=0;for(this[r]=255&e;++s<n&&(a*=256);)e<0&&0===u&&0!==this[r+s-1]&&(u=1),this[r+s]=(e/a>>0)-u&255;return r+n},a.prototype.writeIntBE=function t(e,r,n,o){if(e=+e,r=0|r,!o){var i=Math.pow(2,8*n-1);I(this,e,r,n,i-1,-i)}var s=n-1,a=1,u=0;for(this[r+s]=255&e;--s>=0&&(a*=256);)e<0&&0===u&&0!==this[r+s+1]&&(u=1),this[r+s]=(e/a>>0)-u&255;return r+n},a.prototype.writeInt8=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,1,127,-128),a.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[r]=255&e,r+1},a.prototype.writeInt16LE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8):Y(this,e,r,!0),r+2},a.prototype.writeInt16BE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[r]=e>>>8,this[r+1]=255&e):Y(this,e,r,!1),r+2},a.prototype.writeInt32LE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,4,2147483647,-2147483648),a.TYPED_ARRAY_SUPPORT?(this[r]=255&e,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24):N(this,e,r,!0),r+4},a.prototype.writeInt32BE=function t(e,r,n){return e=+e,r=0|r,n||I(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),a.TYPED_ARRAY_SUPPORT?(this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=255&e):N(this,e,r,!1),r+4},a.prototype.writeFloatLE=function t(e,r,n){return F(this,e,r,!0,n)},a.prototype.writeFloatBE=function t(e,r,n){return F(this,e,r,!1,n)},a.prototype.writeDoubleLE=function t(e,r,n){return G(this,e,r,!0,n)},a.prototype.writeDoubleBE=function t(e,r,n){return G(this,e,r,!1,n)},a.prototype.copy=function t(e,r,n,o){if(n||(n=0),o||0===o||(o=this.length),r>=e.length&&(r=e.length),r||(r=0),o>0&&o<n&&(o=n),o===n)return 0;if(0===e.length||0===this.length)return 0;if(r<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-r<o-n&&(o=e.length-r+n);var i=o-n,s;if(this===e&&n<r&&r<o)for(s=i-1;s>=0;--s)e[s+r]=this[s+n];else if(i<1e3||!a.TYPED_ARRAY_SUPPORT)for(s=0;s<i;++s)e[s+r]=this[s+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+i),r);return i},a.prototype.fill=function t(e,r,n,o){if("string"==typeof e){if("string"==typeof r?(o=r,r=0,n=this.length):"string"==typeof n&&(o=n,n=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==o&&"string"!=typeof o)throw new TypeError("encoding must be a string");if("string"==typeof o&&!a.isEncoding(o))throw new TypeError("Unknown encoding: "+o)}else"number"==typeof e&&(e=255&e);if(r<0||this.length<r||this.length<n)throw new RangeError("Out of range index");if(n<=r)return this;r>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0);var s;if("number"==typeof e)for(s=r;s<n;++s)this[s]=e;else{var u=a.isBuffer(e)?e:J(new a(e,o).toString()),c=u.length;for(s=0;s<n-r;++s)this[s+r]=u[s%c]}return this};var rt=/[^+\/0-9A-Za-z-_]/g}]},"base64-js":{"package.json":function(t,e){e.name="base64-js",e.version="1.2.0",e.main="index.js"},"index.js":function(t,e){"use strict";function r(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===t[e-2]?2:"="===t[e-1]?1:0}function n(t){return 3*t.length/4-r(t)}function o(t){var e,n,o,i,s,a,u=t.length;s=r(t),a=new f(3*u/4-s),o=s>0?u-4:u;var l=0;for(e=0,n=0;e<o;e+=4,n+=3)i=c[t.charCodeAt(e)]<<18|c[t.charCodeAt(e+1)]<<12|c[t.charCodeAt(e+2)]<<6|c[t.charCodeAt(e+3)],a[l++]=i>>16&255,a[l++]=i>>8&255,a[l++]=255&i;return 2===s?(i=c[t.charCodeAt(e)]<<2|c[t.charCodeAt(e+1)]>>4,a[l++]=255&i):1===s&&(i=c[t.charCodeAt(e)]<<10|c[t.charCodeAt(e+1)]<<4|c[t.charCodeAt(e+2)]>>2,a[l++]=i>>8&255,a[l++]=255&i),a}function i(t){return u[t>>18&63]+u[t>>12&63]+u[t>>6&63]+u[63&t]}function s(t,e,r){for(var n,o=[],s=e;s<r;s+=3)n=(t[s]<<16)+(t[s+1]<<8)+t[s+2],o.push(i(n));return o.join("")}function a(t){for(var e,r=t.length,n=r%3,o="",i=[],a=16383,c=0,f=r-n;c<f;c+=a)i.push(s(t,c,c+a>f?f:c+a));return 1===n?(e=t[r-1],o+=u[e>>2],o+=u[e<<4&63],o+="=="):2===n&&(e=(t[r-2]<<8)+t[r-1],o+=u[e>>10],o+=u[e>>4&63],o+=u[e<<2&63],o+="="),i.push(o),i.join("")}e.byteLength=n,e.toByteArray=o,e.fromByteArray=a;for(var u=[],c=[],f="undefined"!=typeof Uint8Array?Uint8Array:Array,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",h=0,p=l.length;h<p;++h)u[h]=l[h],c[l.charCodeAt(h)]=h;c["-".charCodeAt(0)]=62,c["_".charCodeAt(0)]=63}},ieee754:{"package.json":function(t,e){e.name="ieee754",e.version="1.1.8",e.main="index.js"},"index.js":function(t,e){e.read=function(t,e,r,n,o){var i,s,a=8*o-n-1,u=(1<<a)-1,c=u>>1,f=-7,l=r?o-1:0,h=r?-1:1,p=t[e+l];for(l+=h,i=p&(1<<-f)-1,p>>=-f,f+=a;f>0;i=256*i+t[e+l],l+=h,f-=8);for(s=i&(1<<-f)-1,i>>=-f,f+=n;f>0;s=256*s+t[e+l],l+=h,f-=8);if(0===i)i=1-c;else{if(i===u)return s?NaN:(p?-1:1)*(1/0);s+=Math.pow(2,n),i-=c}return(p?-1:1)*s*Math.pow(2,i-n)},e.write=function(t,e,r,n,o,i){var s,a,u,c=8*i-o-1,f=(1<<c)-1,l=f>>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=f):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),e+=s+l>=1?h/u:h*Math.pow(2,1-l),e*u>=2&&(s++,u/=2),s+l>=f?(a=0,s=f):s+l>=1?(a=(e*u-1)*Math.pow(2,o),s+=l):(a=e*Math.pow(2,l-1)*Math.pow(2,o),s=0));o>=8;t[r+p]=255&a,p+=d,a/=256,o-=8);for(s=s<<o|a,c+=o;c>0;t[r+p]=255&s,p+=d,s/=256,c-=8);t[r+p-d]|=128*y}}},isarray:{"package.json":function(t,e){e.name="isarray",e.version="1.0.0",e.main="index.js"},"index.js":function(t,e,r){var n={}.toString;r.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}}},process:{"browser.js":function(t,e,r){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function i(t){if(h===setTimeout)return setTimeout(t,0);if((h===n||!h)&&setTimeout)return h=setTimeout,setTimeout(t,0);try{return h(t,0)}catch(e){try{return h.call(null,t,0)}catch(e){return h.call(this,t,0)}}}function s(t){if(p===clearTimeout)return clearTimeout(t);
if((p===o||!p)&&clearTimeout)return p=clearTimeout,clearTimeout(t);try{return p(t)}catch(e){try{return p.call(null,t)}catch(e){return p.call(this,t)}}}function a(){y&&_&&(y=!1,_.length?d=_.concat(d):b=-1,d.length&&u())}function u(){if(!y){var t=i(a);y=!0;for(var e=d.length;e;){for(_=d,d=[];++b<e;)_&&_[b].run();b=-1,e=d.length}_=null,y=!1,s(t)}}function c(t,e){this.fun=t,this.array=e}function f(){}var l=r.exports={},h,p;!function(){try{h="function"==typeof setTimeout?setTimeout:n}catch(t){h=n}try{p="function"==typeof clearTimeout?clearTimeout:o}catch(t){p=o}}();var d=[],y=!1,_,b=-1;l.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];d.push(new c(t,e)),1!==d.length||y||i(u)},c.prototype.run=function(){this.fun.apply(null,this.array)},l.title="browser",l.browser=!0,l.env={},l.argv=[],l.version="",l.versions={},l.on=f,l.addListener=f,l.once=f,l.off=f,l.removeListener=f,l.removeAllListeners=f,l.emit=f,l.binding=function(t){throw new Error("process.binding is not supported")},l.cwd=function(){return"/"},l.chdir=function(t){throw new Error("process.chdir is not supported")},l.umask=function(){return 0}}},"domain-browser":{"package.json":function(t,e){e.name="domain-browser",e.version="1.1.7",e.main="./index.js"},"index.js":["events",function(t,e,r){"use strict";r.exports=function(){var e=t("events"),r={};return r.createDomain=r.create=function(){function t(t){r.emit("error",t)}var r=new e.EventEmitter;return r.add=function(e){e.on("error",t)},r.remove=function(e){e.removeListener("error",t)},r.bind=function(e){return function(){var r=Array.prototype.slice.call(arguments);try{e.apply(null,r)}catch(e){t(e)}}},r.intercept=function(e){return function(r){if(r)t(r);else{var n=Array.prototype.slice.call(arguments,1);try{e.apply(null,n)}catch(e){t(e)}}}},r.run=function(e){try{e()}catch(e){t(e)}return this},r.dispose=function(){return this.removeAllListeners(),this},r.enter=r.exit=function(){return this},r},r}.call(this)}]},events:{"package.json":function(t,e){e.name="events",e.version="1.1.1",e.main="./events.js"},"events.js":function(t,e,r){function n(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function o(t){return"function"==typeof t}function i(t){return"number"==typeof t}function s(t){return"object"==typeof t&&null!==t}function a(t){return void 0===t}r.exports=n,n.EventEmitter=n,n.prototype._events=void 0,n.prototype._maxListeners=void 0,n.defaultMaxListeners=10,n.prototype.setMaxListeners=function(t){if(!i(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},n.prototype.emit=function(t){var e,r,n,i,u,c;if(this._events||(this._events={}),"error"===t&&(!this._events.error||s(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var f=new Error('Uncaught, unspecified "error" event. ('+e+")");throw f.context=e,f}if(r=this._events[t],a(r))return!1;if(o(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:i=Array.prototype.slice.call(arguments,1),r.apply(this,i)}else if(s(r))for(i=Array.prototype.slice.call(arguments,1),c=r.slice(),n=c.length,u=0;u<n;u++)c[u].apply(this,i);return!0},n.prototype.addListener=function(t,e){var r;if(!o(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,o(e.listener)?e.listener:e),this._events[t]?s(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,s(this._events[t])&&!this._events[t].warned&&(r=a(this._maxListeners)?n.defaultMaxListeners:this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),"function"==typeof console.trace&&console.trace())),this},n.prototype.on=n.prototype.addListener,n.prototype.once=function(t,e){function r(){this.removeListener(t,r),n||(n=!0,e.apply(this,arguments))}if(!o(e))throw TypeError("listener must be a function");var n=!1;return r.listener=e,this.on(t,r),this},n.prototype.removeListener=function(t,e){var r,n,i,a;if(!o(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],i=r.length,n=-1,r===e||o(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(s(r)){for(a=i;a-- >0;)if(r[a]===e||r[a].listener&&r[a].listener===e){n=a;break}if(n<0)return this;1===r.length?(r.length=0,delete this._events[t]):r.splice(n,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},n.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[t]&&delete this._events[t],this;if(0===arguments.length){for(e in this._events)"removeListener"!==e&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],o(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},n.prototype.listeners=function(t){var e;return e=this._events&&this._events[t]?o(this._events[t])?[this._events[t]]:this._events[t].slice():[]},n.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(o(e))return 1;if(e)return e.length}return 0},n.listenerCount=function(t,e){return t.listenerCount(e)}}},"tty-browserify":{"package.json":function(t,e){e.name="tty-browserify",e.version="0.0.0",e.main="index.js"},"index.js":function(t,e){function r(){throw new Error("tty.ReadStream is not implemented")}function n(){throw new Error("tty.ReadStream is not implemented")}e.isatty=function(){return!1},e.ReadStream=r,e.WriteStream=n}}}},"babel-runtime":{regenerator:{"index.js":["regenerator-runtime",function(t,e,r){r.exports=t("regenerator-runtime")}]},helpers:{"typeof.js":["../core-js/symbol/iterator","../core-js/symbol",function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var n=t("../core-js/symbol/iterator"),o=r(n),i=t("../core-js/symbol"),s=r(i),a="function"==typeof s.default&&"symbol"==typeof o.default?function(t){return typeof t}:function(t){return t&&"function"==typeof s.default&&t.constructor===s.default&&t!==s.default.prototype?"symbol":typeof t};e.default="function"==typeof s.default&&"symbol"===a(o.default)?function(t){return"undefined"==typeof t?"undefined":a(t)}:function(t){return t&&"function"==typeof s.default&&t.constructor===s.default&&t!==s.default.prototype?"symbol":"undefined"==typeof t?"undefined":a(t)}}],"toConsumableArray.js":["../core-js/array/from",function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var n=t("../core-js/array/from"),o=r(n);e.default=function(t){if(Array.isArray(t)){for(var e=0,r=Array(t.length);e<t.length;e++)r[e]=t[e];return r}return(0,o.default)(t)}}],"classCallCheck.js":function(t,e){"use strict";e.__esModule=!0,e.default=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},"extends.js":["../core-js/object/assign",function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var n=t("../core-js/object/assign"),o=r(n);e.default=o.default||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}}],"possibleConstructorReturn.js":["../helpers/typeof",function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var n=t("../helpers/typeof"),o=r(n);e.default=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!==("undefined"==typeof e?"undefined":(0,o.default)(e))&&"function"!=typeof e?t:e}}],"inherits.js":["../core-js/object/set-prototype-of","../core-js/object/create","../helpers/typeof",function(t,e){"use strict";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var n=t("../core-js/object/set-prototype-of"),o=r(n),i=t("../core-js/object/create"),s=r(i),a=t("../helpers/typeof"),u=r(a);e.default=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+("undefined"==typeof e?"undefined":(0,u.default)(e)));t.prototype=(0,s.default)(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(o.default?(0,o.default)(t,e):t.__proto__=e)}}]},"core-js":{symbol:{"iterator.js":["core-js/library/fn/symbol/iterator",function(t,e,r){r.exports={default:t("core-js/library/fn/symbol/iterator"),__esModule:!0}}]},"symbol.js":["core-js/library/fn/symbol",function(t,e,r){r.exports={default:t("core-js/library/fn/symbol"),__esModule:!0}}],array:{"from.js":["core-js/library/fn/array/from",function(t,e,r){r.exports={default:t("core-js/library/fn/array/from"),__esModule:!0}}]},object:{"assign.js":["core-js/library/fn/object/assign",function(t,e,r){r.exports={default:t("core-js/library/fn/object/assign"),__esModule:!0}}],"set-prototype-of.js":["core-js/library/fn/object/set-prototype-of",function(t,e,r){r.exports={default:t("core-js/library/fn/object/set-prototype-of"),__esModule:!0}}],"create.js":["core-js/library/fn/object/create",function(t,e,r){r.exports={default:t("core-js/library/fn/object/create"),__esModule:!0}}]}}},"regenerator-runtime":{"package.json":function(t,e,r){e.name="regenerator-runtime",e.version="0.9.6",e.main="runtime-module.js"},"runtime-module.js":["./runtime",function(t,r,n){var o="object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this,i=o.regeneratorRuntime&&Object.getOwnPropertyNames(o).indexOf("regeneratorRuntime")>=0,s=i&&o.regeneratorRuntime;if(o.regeneratorRuntime=void 0,n.exports=t("./runtime"),i)o.regeneratorRuntime=s;else try{delete o.regeneratorRuntime}catch(t){o.regeneratorRuntime=void 0}}],"runtime.js":function(t,r,n){!function(t){"use strict";function e(t,e,r,n){var i=e&&e.prototype instanceof o?e:o,s=Object.create(i.prototype),a=new d(n||[]);return s._invoke=l(t,r,a),s}function r(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}function o(){}function i(){}function a(){}function u(t){["next","throw","return"].forEach(function(e){t[e]=function(t){return this._invoke(e,t)}})}function c(t){this.arg=t}function f(t){function e(n,o,i,s){var a=r(t[n],t,o);if("throw"!==a.type){var u=a.arg,f=u.value;return f instanceof c?Promise.resolve(f.arg).then(function(t){e("next",t,i,s)},function(t){e("throw",t,i,s)}):Promise.resolve(f).then(function(t){u.value=t,i(u)},s)}s(a.arg)}function n(t,r){function n(){return new Promise(function(n,o){e(t,r,n,o)})}return o=o?o.then(n,n):n()}"object"==typeof s&&s.domain&&(e=s.domain.bind(e));var o;this._invoke=n}function l(t,e,n){var o=E;return function i(s,a){if(o===A)throw new Error("Generator is already running");if(o===O){if("throw"===s)throw a;return _()}for(;;){var u=n.delegate;if(u){if("return"===s||"throw"===s&&u.iterator[s]===g){n.delegate=null;var c=u.iterator.return;if(c){var f=r(c,u.iterator,a);if("throw"===f.type){s="throw",a=f.arg;continue}}if("return"===s)continue}var f=r(u.iterator[s],u.iterator,a);if("throw"===f.type){n.delegate=null,s="throw",a=f.arg;continue}s="next",a=g;var l=f.arg;if(!l.done)return o=k,l;n[u.resultName]=l.value,n.next=u.nextLoc,n.delegate=null}if("next"===s)n.sent=n._sent=a;else if("throw"===s){if(o===E)throw o=O,a;n.dispatchException(a)&&(s="next",a=g)}else"return"===s&&n.abrupt("return",a);o=A;var f=r(t,e,n);if("normal"===f.type){o=n.done?O:k;var l={value:f.arg,done:n.done};if(f.arg!==S)return l;n.delegate&&"next"===s&&(a=g)}else"throw"===f.type&&(o=O,s="throw",a=f.arg)}}}function h(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function p(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function d(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(h,this),this.reset(!0)}function y(t){if(t){var e=t[v];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,n=function e(){for(;++r<t.length;)if(b.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=g,e.done=!0,e};return n.next=n}}return{next:_}}function _(){return{value:g,done:!0}}var b=Object.prototype.hasOwnProperty,g,m="function"==typeof Symbol?Symbol:{},v=m.iterator||"@@iterator",j=m.toStringTag||"@@toStringTag",w="object"==typeof n,x=t.regeneratorRuntime;if(x)return void(w&&(n.exports=x));x=t.regeneratorRuntime=w?n.exports:{},x.wrap=e;var E="suspendedStart",k="suspendedYield",A="executing",O="completed",S={},P=a.prototype=o.prototype;i.prototype=P.constructor=a,a.constructor=i,a[j]=i.displayName="GeneratorFunction",x.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===i||"GeneratorFunction"===(e.displayName||e.name))},x.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,a):(t.__proto__=a,j in t||(t[j]="GeneratorFunction")),t.prototype=Object.create(P),t},x.awrap=function(t){return new c(t)},u(f.prototype),x.async=function(t,r,n,o){var i=new f(e(t,r,n,o));return x.isGeneratorFunction(r)?i:i.next().then(function(t){return t.done?t.value:i.next()})},u(P),P[v]=function(){return this},P[j]="Generator",P.toString=function(){return"[object Generator]"},x.keys=function(t){var e=[];for(var r in t)e.push(r);return e.reverse(),function r(){for(;e.length;){var n=e.pop();if(n in t)return r.value=n,r.done=!1,r}return r.done=!0,r}},x.values=y,d.prototype={constructor:d,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=g,this.done=!1,this.delegate=null,this.tryEntries.forEach(p),!t)for(var e in this)"t"===e.charAt(0)&&b.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=g)},stop:function(){this.done=!0;var t=this.tryEntries[0],e=t.completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){function e(e,n){return i.type="throw",i.arg=t,r.next=e,!!n}if(this.done)throw t;for(var r=this,n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n],i=o.completion;if("root"===o.tryLoc)return e("end");if(o.tryLoc<=this.prev){var s=b.call(o,"catchLoc"),a=b.call(o,"finallyLoc");if(s&&a){if(this.prev<o.catchLoc)return e(o.catchLoc,!0);if(this.prev<o.finallyLoc)return e(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return e(o.catchLoc,!0)}else{if(!a)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return e(o.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&b.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=t,i.arg=e,o?this.next=o.finallyLoc:this.complete(i),S},complete:function(t,e){if("throw"===t.type)throw t.arg;"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=t.arg,this.next="end"):"normal"===t.type&&e&&(this.next=e)},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),p(r),S}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;p(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:y(t),resultName:e,nextLoc:r},S}}}("object"==typeof e?e:"object"==typeof window?window:"object"==typeof self?self:this)}},"core-js":{library:{fn:{symbol:{"iterator.js":["../../modules/es6.string.iterator","../../modules/web.dom.iterable","../../modules/_wks-ext",function(t,e,r){t("../../modules/es6.string.iterator"),t("../../modules/web.dom.iterable"),r.exports=t("../../modules/_wks-ext").f("iterator")}],"index.js":["../../modules/es6.symbol","../../modules/es6.object.to-string","../../modules/es7.symbol.async-iterator","../../modules/es7.symbol.observable","../../modules/_core",function(t,e,r){t("../../modules/es6.symbol"),t("../../modules/es6.object.to-string"),t("../../modules/es7.symbol.async-iterator"),t("../../modules/es7.symbol.observable"),r.exports=t("../../modules/_core").Symbol}]},array:{"from.js":["../../modules/es6.string.iterator","../../modules/es6.array.from","../../modules/_core",function(t,e,r){t("../../modules/es6.string.iterator"),t("../../modules/es6.array.from"),r.exports=t("../../modules/_core").Array.from}]},object:{"assign.js":["../../modules/es6.object.assign","../../modules/_core",function(t,e,r){t("../../modules/es6.object.assign"),r.exports=t("../../modules/_core").Object.assign}],"set-prototype-of.js":["../../modules/es6.object.set-prototype-of","../../modules/_core",function(t,e,r){t("../../modules/es6.object.set-prototype-of"),r.exports=t("../../modules/_core").Object.setPrototypeOf}],"create.js":["../../modules/es6.object.create","../../modules/_core",function(t,e,r){t("../../modules/es6.object.create");var n=t("../../modules/_core").Object;r.exports=function t(e,r){return n.create(e,r)}}]}},modules:{"es6.string.iterator.js":["./_string-at","./_iter-define",function(t){"use strict";var e=t("./_string-at")(!0);t("./_iter-define")(String,"String",function(t){this._t=String(t),this._i=0},function(){var t=this._t,r=this._i,n;return r>=t.length?{value:void 0,done:!0}:(n=e(t,r),this._i+=n.length,{value:n,done:!1})})}],"_string-at.js":["./_to-integer","./_defined",function(t,e,r){var n=t("./_to-integer"),o=t("./_defined");r.exports=function(t){return function(e,r){var i=String(o(e)),s=n(r),a=i.length,u,c;return s<0||s>=a?t?"":void 0:(u=i.charCodeAt(s),u<55296||u>56319||s+1===a||(c=i.charCodeAt(s+1))<56320||c>57343?t?i.charAt(s):u:t?i.slice(s,s+2):(u-55296<<10)+(c-56320)+65536)}}}],"_to-integer.js":function(t,e,r){var n=Math.ceil,o=Math.floor;r.exports=function(t){return isNaN(t=+t)?0:(t>0?o:n)(t)}},"_defined.js":function(t,e,r){r.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},"_iter-define.js":["./_library","./_export","./_redefine","./_hide","./_has","./_iterators","./_iter-create","./_set-to-string-tag","./_object-gpo","./_wks",function(t,e,r){"use strict";var n=t("./_library"),o=t("./_export"),i=t("./_redefine"),s=t("./_hide"),a=t("./_has"),u=t("./_iterators"),c=t("./_iter-create"),f=t("./_set-to-string-tag"),l=t("./_object-gpo"),h=t("./_wks")("iterator"),p=!([].keys&&"next"in[].keys()),d="@@iterator",y="keys",_="values",b=function(){return this};r.exports=function(t,e,r,g,m,v,j){c(r,e,g);var w=function(t){if(!p&&t in A)return A[t];switch(t){case y:return function e(){return new r(this,t)};case _:return function e(){return new r(this,t)}}return function e(){return new r(this,t)}},x=e+" Iterator",E=m==_,k=!1,A=t.prototype,O=A[h]||A[d]||m&&A[m],S=O||w(m),P=m?E?w("entries"):S:void 0,T="Array"==e?A.entries||O:O,R,L,M;if(T&&(M=l(T.call(new t)),M!==Object.prototype&&(f(M,x,!0),n||a(M,h)||s(M,h,b))),E&&O&&O.name!==_&&(k=!0,S=function t(){return O.call(this)}),n&&!j||!p&&!k&&A[h]||s(A,h,S),u[e]=S,u[x]=b,m)if(R={values:E?S:w(_),keys:v?S:w(y),entries:P},j)for(L in R)L in A||i(A,L,R[L]);else o(o.P+o.F*(p||k),e,R);return R}}],"_library.js":function(t,e,r){r.exports=!0},"_export.js":["./_global","./_core","./_ctx","./_hide",function(t,e,r){var n=t("./_global"),o=t("./_core"),i=t("./_ctx"),s=t("./_hide"),a="prototype",u=function(t,e,r){var c=t&u.F,f=t&u.G,l=t&u.S,h=t&u.P,p=t&u.B,d=t&u.W,y=f?o:o[e]||(o[e]={}),_=y[a],b=f?n:l?n[e]:(n[e]||{})[a],g,m,v;f&&(r=e);for(g in r)m=!c&&b&&void 0!==b[g],m&&g in y||(v=m?b[g]:r[g],y[g]=f&&"function"!=typeof b[g]?r[g]:p&&m?i(v,n):d&&b[g]==v?function(t){var e=function(e,r,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,r)}return new t(e,r,n)}return t.apply(this,arguments)};return e[a]=t[a],e}(v):h&&"function"==typeof v?i(Function.call,v):v,h&&((y.virtual||(y.virtual={}))[g]=v,t&u.R&&_&&!_[g]&&s(_,g,v)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,r.exports=u}],"_global.js":function(t,e,r){var n=r.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},"_core.js":function(t,e,r){var n=r.exports={version:"2.4.0"};"number"==typeof __e&&(__e=n)},"_ctx.js":["./_a-function",function(t,e,r){var n=t("./_a-function");r.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}}],"_a-function.js":function(t,e,r){r.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"_hide.js":["./_object-dp","./_property-desc","./_descriptors",function(t,e,r){var n=t("./_object-dp"),o=t("./_property-desc");r.exports=t("./_descriptors")?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}}],"_object-dp.js":["./_an-object","./_ie8-dom-define","./_to-primitive","./_descriptors",function(t,e){var r=t("./_an-object"),n=t("./_ie8-dom-define"),o=t("./_to-primitive"),i=Object.defineProperty;e.f=t("./_descriptors")?Object.defineProperty:function t(e,s,a){if(r(e),s=o(s,!0),r(a),n)try{return i(e,s,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(e[s]=a.value),e}}],"_an-object.js":["./_is-object",function(t,e,r){var n=t("./_is-object");r.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}}],"_is-object.js":function(t,e,r){r.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},"_ie8-dom-define.js":["./_descriptors","./_fails","./_dom-create",function(t,e,r){r.exports=!t("./_descriptors")&&!t("./_fails")(function(){return 7!=Object.defineProperty(t("./_dom-create")("div"),"a",{get:function(){return 7}}).a})}],"_descriptors.js":["./_fails",function(t,e,r){r.exports=!t("./_fails")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})}],"_fails.js":function(t,e,r){r.exports=function(t){try{return!!t()}catch(t){return!0}}},"_dom-create.js":["./_is-object","./_global",function(t,e,r){var n=t("./_is-object"),o=t("./_global").document,i=n(o)&&n(o.createElement);r.exports=function(t){return i?o.createElement(t):{}}}],"_to-primitive.js":["./_is-object",function(t,e,r){var n=t("./_is-object");r.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}}],"_property-desc.js":function(t,e,r){r.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"_redefine.js":["./_hide",function(t,e,r){r.exports=t("./_hide")}],"_has.js":function(t,e,r){var n={}.hasOwnProperty;r.exports=function(t,e){return n.call(t,e)}},"_iterators.js":function(t,e,r){r.exports={}},"_iter-create.js":["./_object-create","./_property-desc","./_set-to-string-tag","./_hide","./_wks",function(t,e,r){"use strict";var n=t("./_object-create"),o=t("./_property-desc"),i=t("./_set-to-string-tag"),s={};t("./_hide")(s,t("./_wks")("iterator"),function(){return this}),r.exports=function(t,e,r){t.prototype=n(s,{next:o(1,r)}),i(t,e+" Iterator")}}],"_object-create.js":["./_an-object","./_object-dps","./_enum-bug-keys","./_shared-key","./_dom-create","./_html",function(t,e,r){var n=t("./_an-object"),o=t("./_object-dps"),i=t("./_enum-bug-keys"),s=t("./_shared-key")("IE_PROTO"),a=function(){},u="prototype",c=function(){var e=t("./_dom-create")("iframe"),r=i.length,n="<",o=">",s;for(e.style.display="none",t("./_html").appendChild(e),e.src="javascript:",s=e.contentWindow.document,s.open(),s.write(n+"script"+o+"document.F=Object"+n+"/script"+o),s.close(),c=s.F;r--;)delete c[u][i[r]];return c()};r.exports=Object.create||function t(e,r){var i;return null!==e?(a[u]=n(e),i=new a,a[u]=null,i[s]=e):i=c(),void 0===r?i:o(i,r)}}],"_object-dps.js":["./_object-dp","./_an-object","./_object-keys","./_descriptors",function(t,e,r){var n=t("./_object-dp"),o=t("./_an-object"),i=t("./_object-keys");r.exports=t("./_descriptors")?Object.defineProperties:function t(e,r){o(e);for(var s=i(r),a=s.length,u=0,c;a>u;)n.f(e,c=s[u++],r[c]);return e}}],"_object-keys.js":["./_object-keys-internal","./_enum-bug-keys",function(t,e,r){var n=t("./_object-keys-internal"),o=t("./_enum-bug-keys");r.exports=Object.keys||function t(e){return n(e,o)}}],"_object-keys-internal.js":["./_has","./_to-iobject","./_array-includes","./_shared-key",function(t,e,r){var n=t("./_has"),o=t("./_to-iobject"),i=t("./_array-includes")(!1),s=t("./_shared-key")("IE_PROTO");r.exports=function(t,e){var r=o(t),a=0,u=[],c;for(c in r)c!=s&&n(r,c)&&u.push(c);for(;e.length>a;)n(r,c=e[a++])&&(~i(u,c)||u.push(c));return u}}],"_to-iobject.js":["./_iobject","./_defined",function(t,e,r){var n=t("./_iobject"),o=t("./_defined");r.exports=function(t){return n(o(t))}}],"_iobject.js":["./_cof",function(t,e,r){var n=t("./_cof");r.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}}],"_cof.js":function(t,e,r){var n={}.toString;r.exports=function(t){return n.call(t).slice(8,-1)}},"_array-includes.js":["./_to-iobject","./_to-length","./_to-index",function(t,e,r){var n=t("./_to-iobject"),o=t("./_to-length"),i=t("./_to-index");r.exports=function(t){return function(e,r,s){var a=n(e),u=o(a.length),c=i(s,u),f;if(t&&r!=r){for(;u>c;)if(f=a[c++],f!=f)return!0}else for(;u>c;c++)if((t||c in a)&&a[c]===r)return t||c||0;return!t&&-1}}}],"_to-length.js":["./_to-integer",function(t,e,r){var n=t("./_to-integer"),o=Math.min;r.exports=function(t){return t>0?o(n(t),9007199254740991):0}}],"_to-index.js":["./_to-integer",function(t,e,r){var n=t("./_to-integer"),o=Math.max,i=Math.min;r.exports=function(t,e){return t=n(t),t<0?o(t+e,0):i(t,e)}}],"_shared-key.js":["./_shared","./_uid",function(t,e,r){var n=t("./_shared")("keys"),o=t("./_uid");r.exports=function(t){return n[t]||(n[t]=o(t))}}],"_shared.js":["./_global",function(t,e,r){var n=t("./_global"),o="__core-js_shared__",i=n[o]||(n[o]={});r.exports=function(t){return i[t]||(i[t]={})}}],"_uid.js":function(t,e,r){var n=0,o=Math.random();r.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+o).toString(36))}},"_enum-bug-keys.js":function(t,e,r){r.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"_html.js":["./_global",function(t,e,r){r.exports=t("./_global").document&&document.documentElement}],"_set-to-string-tag.js":["./_object-dp","./_has","./_wks",function(t,e,r){var n=t("./_object-dp").f,o=t("./_has"),i=t("./_wks")("toStringTag");r.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}}],"_wks.js":["./_shared","./_uid","./_global",function(t,e,r){var n=t("./_shared")("wks"),o=t("./_uid"),i=t("./_global").Symbol,s="function"==typeof i,a=r.exports=function(t){return n[t]||(n[t]=s&&i[t]||(s?i:o)("Symbol."+t))};a.store=n}],"_object-gpo.js":["./_has","./_to-object","./_shared-key",function(t,e,r){var n=t("./_has"),o=t("./_to-object"),i=t("./_shared-key")("IE_PROTO"),s=Object.prototype;r.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?s:null}}],"_to-object.js":["./_defined",function(t,e,r){var n=t("./_defined");r.exports=function(t){return Object(n(t))}}],"web.dom.iterable.js":["./es6.array.iterator","./_global","./_hide","./_iterators","./_wks",function(t){t("./es6.array.iterator");for(var e=t("./_global"),r=t("./_hide"),n=t("./_iterators"),o=t("./_wks")("toStringTag"),i=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],s=0;s<5;s++){var a=i[s],u=e[a],c=u&&u.prototype;c&&!c[o]&&r(c,o,a),n[a]=n.Array}}],"es6.array.iterator.js":["./_add-to-unscopables","./_iter-step","./_iterators","./_to-iobject","./_iter-define",function(t,e,r){"use strict";var n=t("./_add-to-unscopables"),o=t("./_iter-step"),i=t("./_iterators"),s=t("./_to-iobject");r.exports=t("./_iter-define")(Array,"Array",function(t,e){this._t=s(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):"keys"==e?o(0,r):"values"==e?o(0,t[r]):o(0,[r,t[r]])},"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")}],"_add-to-unscopables.js":function(t,e,r){r.exports=function(){}},"_iter-step.js":function(t,e,r){r.exports=function(t,e){return{value:e,done:!!t}}},"_wks-ext.js":["./_wks",function(t,e){e.f=t("./_wks")}],"es6.symbol.js":["./_global","./_has","./_descriptors","./_export","./_redefine","./_meta","./_fails","./_shared","./_set-to-string-tag","./_uid","./_wks","./_wks-ext","./_wks-define","./_keyof","./_enum-keys","./_is-array","./_an-object","./_to-iobject","./_to-primitive","./_property-desc","./_object-create","./_object-gopn-ext","./_object-gopd","./_object-dp","./_object-keys","./_object-gopn","./_object-pie","./_object-gops","./_library","./_hide",function(t){"use strict";var e=t("./_global"),r=t("./_has"),n=t("./_descriptors"),o=t("./_export"),i=t("./_redefine"),s=t("./_meta").KEY,a=t("./_fails"),u=t("./_shared"),c=t("./_set-to-string-tag"),f=t("./_uid"),l=t("./_wks"),h=t("./_wks-ext"),p=t("./_wks-define"),d=t("./_keyof"),y=t("./_enum-keys"),_=t("./_is-array"),b=t("./_an-object"),g=t("./_to-iobject"),m=t("./_to-primitive"),v=t("./_property-desc"),j=t("./_object-create"),w=t("./_object-gopn-ext"),x=t("./_object-gopd"),E=t("./_object-dp"),k=t("./_object-keys"),A=x.f,O=E.f,S=w.f,P=e.Symbol,T=e.JSON,R=T&&T.stringify,L="prototype",M=l("_hidden"),B=l("toPrimitive"),U={}.propertyIsEnumerable,C=u("symbol-registry"),I=u("symbols"),Y=u("op-symbols"),N=Object[L],D="function"==typeof P,F=e.QObject,G=!F||!F[L]||!F[L].findChild,z=n&&a(function(){return 7!=j(O({},"a",{get:function(){return O(this,"a",{value:7}).a}})).a})?function(t,e,r){var n=A(N,e);n&&delete N[e],O(t,e,r),n&&t!==N&&O(N,e,n)}:O,q=function(t){var e=I[t]=j(P[L]);return e._k=t,e},W=D&&"symbol"==typeof P.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof P},J=function t(e,n,o){return e===N&&J(Y,n,o),b(e),n=m(n,!0),b(o),r(I,n)?(o.enumerable?(r(e,M)&&e[M][n]&&(e[M][n]=!1),o=j(o,{enumerable:v(0,!1)})):(r(e,M)||O(e,M,v(1,{})),e[M][n]=!0),z(e,n,o)):O(e,n,o)},K=function t(e,r){b(e);for(var n=y(r=g(r)),o=0,i=n.length,s;i>o;)J(e,s=n[o++],r[s]);return e},V=function t(e,r){return void 0===r?j(e):K(j(e),r)},X=function t(e){var n=U.call(this,e=m(e,!0));return!(this===N&&r(I,e)&&!r(Y,e))&&(!(n||!r(this,e)||!r(I,e)||r(this,M)&&this[M][e])||n)},Q=function t(e,n){if(e=g(e),n=m(n,!0),e!==N||!r(I,n)||r(Y,n)){var o=A(e,n);return!o||!r(I,n)||r(e,M)&&e[M][n]||(o.enumerable=!0),o}},Z=function t(e){for(var n=S(g(e)),o=[],i=0,a;n.length>i;)r(I,a=n[i++])||a==M||a==s||o.push(a);return o},H=function t(e){for(var n=e===N,o=S(n?Y:g(e)),i=[],s=0,a;o.length>s;)!r(I,a=o[s++])||n&&!r(N,a)||i.push(I[a]);return i};D||(P=function t(){if(this instanceof P)throw TypeError("Symbol is not a constructor!");var e=f(arguments.length>0?arguments[0]:void 0),o=function(t){this===N&&o.call(Y,t),r(this,M)&&r(this[M],e)&&(this[M][e]=!1),z(this,e,v(1,t))};return n&&G&&z(N,e,{configurable:!0,set:o}),q(e)},i(P[L],"toString",function t(){return this._k}),x.f=Q,E.f=J,t("./_object-gopn").f=w.f=Z,t("./_object-pie").f=X,t("./_object-gops").f=H,n&&!t("./_library")&&i(N,"propertyIsEnumerable",X,!0),
h.f=function(t){return q(l(t))}),o(o.G+o.W+o.F*!D,{Symbol:P});for(var $="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),tt=0;$.length>tt;)l($[tt++]);for(var $=k(l.store),tt=0;$.length>tt;)p($[tt++]);o(o.S+o.F*!D,"Symbol",{for:function(t){return r(C,t+="")?C[t]:C[t]=P(t)},keyFor:function t(e){if(W(e))return d(C,e);throw TypeError(e+" is not a symbol!")},useSetter:function(){G=!0},useSimple:function(){G=!1}}),o(o.S+o.F*!D,"Object",{create:V,defineProperty:J,defineProperties:K,getOwnPropertyDescriptor:Q,getOwnPropertyNames:Z,getOwnPropertySymbols:H}),T&&o(o.S+o.F*(!D||a(function(){var t=P();return"[null]"!=R([t])||"{}"!=R({a:t})||"{}"!=R(Object(t))})),"JSON",{stringify:function t(e){if(void 0!==e&&!W(e)){for(var r=[e],n=1,o,i;arguments.length>n;)r.push(arguments[n++]);return o=r[1],"function"==typeof o&&(i=o),!i&&_(o)||(o=function(t,e){if(i&&(e=i.call(this,t,e)),!W(e))return e}),r[1]=o,R.apply(T,r)}}}),P[L][B]||t("./_hide")(P[L],B,P[L].valueOf),c(P,"Symbol"),c(Math,"Math",!0),c(e.JSON,"JSON",!0)}],"_meta.js":["./_uid","./_is-object","./_has","./_object-dp","./_fails",function(t,e,r){var n=t("./_uid")("meta"),o=t("./_is-object"),i=t("./_has"),s=t("./_object-dp").f,a=0,u=Object.isExtensible||function(){return!0},c=!t("./_fails")(function(){return u(Object.preventExtensions({}))}),f=function(t){s(t,n,{value:{i:"O"+ ++a,w:{}}})},l=function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!u(t))return"F";if(!e)return"E";f(t)}return t[n].i},h=function(t,e){if(!i(t,n)){if(!u(t))return!0;if(!e)return!1;f(t)}return t[n].w},p=function(t){return c&&d.NEED&&u(t)&&!i(t,n)&&f(t),t},d=r.exports={KEY:n,NEED:!1,fastKey:l,getWeak:h,onFreeze:p}}],"_wks-define.js":["./_global","./_core","./_library","./_wks-ext","./_object-dp",function(t,e,r){var n=t("./_global"),o=t("./_core"),i=t("./_library"),s=t("./_wks-ext"),a=t("./_object-dp").f;r.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:n.Symbol||{});"_"==t.charAt(0)||t in e||a(e,t,{value:s.f(t)})}}],"_keyof.js":["./_object-keys","./_to-iobject",function(t,e,r){var n=t("./_object-keys"),o=t("./_to-iobject");r.exports=function(t,e){for(var r=o(t),i=n(r),s=i.length,a=0,u;s>a;)if(r[u=i[a++]]===e)return u}}],"_enum-keys.js":["./_object-keys","./_object-gops","./_object-pie",function(t,e,r){var n=t("./_object-keys"),o=t("./_object-gops"),i=t("./_object-pie");r.exports=function(t){var e=n(t),r=o.f;if(r)for(var s=r(t),a=i.f,u=0,c;s.length>u;)a.call(t,c=s[u++])&&e.push(c);return e}}],"_object-gops.js":function(t,e){e.f=Object.getOwnPropertySymbols},"_object-pie.js":function(t,e){e.f={}.propertyIsEnumerable},"_is-array.js":["./_cof",function(t,e,r){var n=t("./_cof");r.exports=Array.isArray||function t(e){return"Array"==n(e)}}],"_object-gopn-ext.js":["./_to-iobject","./_object-gopn",function(t,e,r){var n=t("./_to-iobject"),o=t("./_object-gopn").f,i={}.toString,s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(t){try{return o(t)}catch(t){return s.slice()}};r.exports.f=function t(e){return s&&"[object Window]"==i.call(e)?a(e):o(n(e))}}],"_object-gopn.js":["./_object-keys-internal","./_enum-bug-keys",function(t,e){var r=t("./_object-keys-internal"),n=t("./_enum-bug-keys").concat("length","prototype");e.f=Object.getOwnPropertyNames||function t(e){return r(e,n)}}],"_object-gopd.js":["./_object-pie","./_property-desc","./_to-iobject","./_to-primitive","./_has","./_ie8-dom-define","./_descriptors",function(t,e){var r=t("./_object-pie"),n=t("./_property-desc"),o=t("./_to-iobject"),i=t("./_to-primitive"),s=t("./_has"),a=t("./_ie8-dom-define"),u=Object.getOwnPropertyDescriptor;e.f=t("./_descriptors")?u:function t(e,c){if(e=o(e),c=i(c,!0),a)try{return u(e,c)}catch(t){}if(s(e,c))return n(!r.f.call(e,c),e[c])}}],"es6.object.to-string.js":function(){},"es7.symbol.async-iterator.js":["./_wks-define",function(t){t("./_wks-define")("asyncIterator")}],"es7.symbol.observable.js":["./_wks-define",function(t){t("./_wks-define")("observable")}],"es6.array.from.js":["./_ctx","./_export","./_to-object","./_iter-call","./_is-array-iter","./_to-length","./_create-property","./core.get-iterator-method","./_iter-detect",function(t){"use strict";var e=t("./_ctx"),r=t("./_export"),n=t("./_to-object"),o=t("./_iter-call"),i=t("./_is-array-iter"),s=t("./_to-length"),a=t("./_create-property"),u=t("./core.get-iterator-method");r(r.S+r.F*!t("./_iter-detect")(function(t){Array.from(t)}),"Array",{from:function t(r){var c=n(r),f="function"==typeof this?this:Array,l=arguments.length,h=l>1?arguments[1]:void 0,p=void 0!==h,d=0,y=u(c),_,b,g,m;if(p&&(h=e(h,l>2?arguments[2]:void 0,2)),void 0==y||f==Array&&i(y))for(_=s(c.length),b=new f(_);_>d;d++)a(b,d,p?h(c[d],d):c[d]);else for(m=y.call(c),b=new f;!(g=m.next()).done;d++)a(b,d,p?o(m,h,[g.value,d],!0):g.value);return b.length=d,b}})}],"_iter-call.js":["./_an-object",function(t,e,r){var n=t("./_an-object");r.exports=function(t,e,r,o){try{return o?e(n(r)[0],r[1]):e(r)}catch(e){var i=t.return;throw void 0!==i&&n(i.call(t)),e}}}],"_is-array-iter.js":["./_iterators","./_wks",function(t,e,r){var n=t("./_iterators"),o=t("./_wks")("iterator"),i=Array.prototype;r.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}}],"_create-property.js":["./_object-dp","./_property-desc",function(t,e,r){"use strict";var n=t("./_object-dp"),o=t("./_property-desc");r.exports=function(t,e,r){e in t?n.f(t,e,o(0,r)):t[e]=r}}],"core.get-iterator-method.js":["./_classof","./_wks","./_iterators","./_core",function(t,e,r){var n=t("./_classof"),o=t("./_wks")("iterator"),i=t("./_iterators");r.exports=t("./_core").getIteratorMethod=function(t){if(void 0!=t)return t[o]||t["@@iterator"]||i[n(t)]}}],"_classof.js":["./_cof","./_wks",function(t,e,r){var n=t("./_cof"),o=t("./_wks")("toStringTag"),i="Arguments"==n(function(){return arguments}()),s=function(t,e){try{return t[e]}catch(t){}};r.exports=function(t){var e,r,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=s(e=Object(t),o))?r:i?n(e):"Object"==(a=n(e))&&"function"==typeof e.callee?"Arguments":a}}],"_iter-detect.js":["./_wks",function(t,e,r){var n=t("./_wks")("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,function(){throw 2})}catch(t){}r.exports=function(t,e){if(!e&&!o)return!1;var r=!1;try{var i=[7],s=i[n]();s.next=function(){return{done:r=!0}},i[n]=function(){return s},t(i)}catch(t){}return r}}],"es6.object.assign.js":["./_export","./_object-assign",function(t){var e=t("./_export");e(e.S+e.F,"Object",{assign:t("./_object-assign")})}],"_object-assign.js":["./_object-keys","./_object-gops","./_object-pie","./_to-object","./_iobject","./_fails",function(t,e,r){"use strict";var n=t("./_object-keys"),o=t("./_object-gops"),i=t("./_object-pie"),s=t("./_to-object"),a=t("./_iobject"),u=Object.assign;r.exports=!u||t("./_fails")(function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach(function(t){e[t]=t}),7!=u({},t)[r]||Object.keys(u({},e)).join("")!=n})?function t(e,r){for(var u=s(e),c=arguments.length,f=1,l=o.f,h=i.f;c>f;)for(var p=a(arguments[f++]),d=l?n(p).concat(l(p)):n(p),y=d.length,_=0,b;y>_;)h.call(p,b=d[_++])&&(u[b]=p[b]);return u}:u}],"es6.object.set-prototype-of.js":["./_export","./_set-proto",function(t){var e=t("./_export");e(e.S,"Object",{setPrototypeOf:t("./_set-proto").set})}],"_set-proto.js":["./_is-object","./_an-object","./_ctx","./_object-gopd",function(t,e,r){var n=t("./_is-object"),o=t("./_an-object"),i=function(t,e){if(o(t),!n(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};r.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,r,n){try{n=t("./_ctx")(Function.call,t("./_object-gopd").f(Object.prototype,"__proto__").set,2),n(e,[]),r=!(e instanceof Array)}catch(t){r=!0}return function t(e,o){return i(e,o),r?e.__proto__=o:n(e,o),e}}({},!1):void 0),check:i}}],"es6.object.create.js":["./_export","./_object-create",function(t){var e=t("./_export");e(e.S,"Object",{create:t("./_object-create")})}]}}}}},{extensions:[".js",".json"]}),u=a("./node_modules/meteor/modules/client.js");"undefined"==typeof Package&&(Package={}),function(t,e){for(var r in e)r in t||(t[r]=e[r])}(Package.modules=u,{meteorInstall:o,Buffer:i,process:s})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,r=Package.meteor.meteorEnv,n=Package.modules.meteorInstall,o=Package.modules.Buffer,i=Package.modules.process,a,c,u,f,s=n({node_modules:{meteor:{"es5-shim":{"client.js":["./import_globals.js","es5-shim/es5-shim.js","es5-shim/es5-sham.js","./console.js","./export_globals.js",function(t){t("./import_globals.js"),t("es5-shim/es5-shim.js"),t("es5-shim/es5-sham.js"),t("./console.js"),t("./export_globals.js")}],"console.js":function(){function t(t){var e=console[t];e&&"object"==typeof e&&(console[t]=function(){return Function.prototype.apply.call(e,console,arguments)})}var e=Object.prototype.hasOwnProperty;if("object"==typeof console&&"object"==typeof console.log)for(var r in console)e.call(console,r)&&t(r)},"export_globals.js":function(){e.Date!==a&&(e.Date=a),e.parseInt!==c&&(e.parseInt=c),e.parseFloat!==u&&(e.parseFloat=u);var t=String.prototype;t.replace!==f&&(t.replace=f)},"import_globals.js":function(){a=e.Date,c=e.parseInt,u=e.parseFloat,f=String.prototype.replace},node_modules:{"es5-shim":{"es5-shim.js":function(t,e,r){!function(t,n){"use strict";"function"==typeof define&&define.amd?define(n):"object"==typeof e?r.exports=n():t.returnExports=n()}(this,function(){var t=Array,e=t.prototype,r=Object,n=r.prototype,o=Function,i=o.prototype,f=String,s=f.prototype,l=Number,p=l.prototype,h=e.slice,y=e.splice,d=e.push,b=e.unshift,g=e.concat,v=e.join,w=i.call,j=i.apply,O=Math.max,m=Math.min,T=n.toString,E="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag,x,S=Function.prototype.toString,_=/^\s*class /,P=function t(e){try{var r=S.call(e),n=r.replace(/\/\/.*\n/g,""),o=n.replace(/\/\*[.\s\S]*\*\//g,""),i=o.replace(/\n/gm," ").replace(/ {2}/g," ");return _.test(i)}catch(t){return!1}},M=function t(e){try{return!P(e)&&(S.call(e),!0)}catch(t){return!1}},I="[object Function]",D="[object GeneratorFunction]",x=function t(e){if(!e)return!1;if("function"!=typeof e&&"object"!=typeof e)return!1;if(E)return M(e);if(P(e))return!1;var r=T.call(e);return r===I||r===D},k,F=RegExp.prototype.exec,U=function t(e){try{return F.call(e),!0}catch(t){return!1}},N="[object RegExp]";k=function t(e){return"object"==typeof e&&(E?U(e):T.call(e)===N)};var C,A=String.prototype.valueOf,R=function t(e){try{return A.call(e),!0}catch(t){return!1}},$="[object String]";C=function t(e){return"string"==typeof e||"object"==typeof e&&(E?R(e):T.call(e)===$)};var z=r.defineProperty&&function(){try{var t={};r.defineProperty(t,"x",{enumerable:!1,value:t});for(var e in t)return!1;return t.x===t}catch(t){return!1}}(),J=function(t){var e;return e=z?function(t,e,n,o){!o&&e in t||r.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:!0,value:n})}:function(t,e,r,n){!n&&e in t||(t[e]=r)},function r(n,o,i){for(var a in o)t.call(o,a)&&e(n,a,o[a],i)}}(n.hasOwnProperty),G=function t(e){var r=typeof e;return null===e||"object"!==r&&"function"!==r},Z=l.isNaN||function t(e){return e!==e},Y={ToInteger:function t(e){var r=+e;return Z(r)?r=0:0!==r&&r!==1/0&&r!==-(1/0)&&(r=(r>0||-1)*Math.floor(Math.abs(r))),r},ToPrimitive:function t(e){var r,n,o;if(G(e))return e;if(n=e.valueOf,x(n)&&(r=n.call(e),G(r)))return r;if(o=e.toString,x(o)&&(r=o.call(e),G(r)))return r;throw new TypeError},ToObject:function(t){if(null==t)throw new TypeError("can't convert "+t+" to object");return r(t)},ToUint32:function t(e){return e>>>0}},W=function t(){};J(i,{bind:function t(e){var n=this;if(!x(n))throw new TypeError("Function.prototype.bind called on incompatible "+n);for(var i=h.call(arguments,1),a,c=function(){if(this instanceof a){var t=j.call(n,this,g.call(i,h.call(arguments)));return r(t)===t?t:this}return j.call(n,e,g.call(i,h.call(arguments)))},u=O(0,n.length-i.length),f=[],s=0;s<u;s++)d.call(f,"$"+s);return a=o("binder","return function ("+v.call(f,",")+"){ return binder.apply(this, arguments); }")(c),n.prototype&&(W.prototype=n.prototype,a.prototype=new W,W.prototype=null),a}});var B=w.bind(n.hasOwnProperty),X=w.bind(n.toString),H=w.bind(h),L=j.bind(h),q=w.bind(s.slice),K=w.bind(s.split),Q=w.bind(s.indexOf),V=w.bind(d),tt=w.bind(n.propertyIsEnumerable),et=w.bind(e.sort),rt=t.isArray||function t(e){return"[object Array]"===X(e)},nt=1!==[].unshift(0);J(e,{unshift:function(){return b.apply(this,arguments),this.length}},nt),J(t,{isArray:rt});var ot=r("a"),it="a"!==ot[0]||!(0 in ot),at=function t(e){var r=!0,n=!0,o=!1;if(e)try{e.call("foo",function(t,e,n){"object"!=typeof n&&(r=!1)}),e.call([1],function(){"use strict";n="string"==typeof this},"x")}catch(t){o=!0}return!!e&&!o&&r&&n};J(e,{forEach:function t(e){var r=Y.ToObject(this),n=it&&C(this)?K(this,""):r,o=-1,i=Y.ToUint32(n.length),a;if(arguments.length>1&&(a=arguments[1]),!x(e))throw new TypeError("Array.prototype.forEach callback must be a function");for(;++o<i;)o in n&&("undefined"==typeof a?e(n[o],o,r):e.call(a,n[o],o,r))}},!at(e.forEach)),J(e,{map:function e(r){var n=Y.ToObject(this),o=it&&C(this)?K(this,""):n,i=Y.ToUint32(o.length),a=t(i),c;if(arguments.length>1&&(c=arguments[1]),!x(r))throw new TypeError("Array.prototype.map callback must be a function");for(var u=0;u<i;u++)u in o&&("undefined"==typeof c?a[u]=r(o[u],u,n):a[u]=r.call(c,o[u],u,n));return a}},!at(e.map)),J(e,{filter:function t(e){var r=Y.ToObject(this),n=it&&C(this)?K(this,""):r,o=Y.ToUint32(n.length),i=[],a,c;if(arguments.length>1&&(c=arguments[1]),!x(e))throw new TypeError("Array.prototype.filter callback must be a function");for(var u=0;u<o;u++)u in n&&(a=n[u],("undefined"==typeof c?e(a,u,r):e.call(c,a,u,r))&&V(i,a));return i}},!at(e.filter)),J(e,{every:function t(e){var r=Y.ToObject(this),n=it&&C(this)?K(this,""):r,o=Y.ToUint32(n.length),i;if(arguments.length>1&&(i=arguments[1]),!x(e))throw new TypeError("Array.prototype.every callback must be a function");for(var a=0;a<o;a++)if(a in n&&!("undefined"==typeof i?e(n[a],a,r):e.call(i,n[a],a,r)))return!1;return!0}},!at(e.every)),J(e,{some:function t(e){var r=Y.ToObject(this),n=it&&C(this)?K(this,""):r,o=Y.ToUint32(n.length),i;if(arguments.length>1&&(i=arguments[1]),!x(e))throw new TypeError("Array.prototype.some callback must be a function");for(var a=0;a<o;a++)if(a in n&&("undefined"==typeof i?e(n[a],a,r):e.call(i,n[a],a,r)))return!0;return!1}},!at(e.some));var ct=!1;e.reduce&&(ct="object"==typeof e.reduce.call("es5",function(t,e,r,n){return n})),J(e,{reduce:function t(e){var r=Y.ToObject(this),n=it&&C(this)?K(this,""):r,o=Y.ToUint32(n.length);if(!x(e))throw new TypeError("Array.prototype.reduce callback must be a function");if(0===o&&1===arguments.length)throw new TypeError("reduce of empty array with no initial value");var i=0,a;if(arguments.length>=2)a=arguments[1];else for(;;){if(i in n){a=n[i++];break}if(++i>=o)throw new TypeError("reduce of empty array with no initial value")}for(;i<o;i++)i in n&&(a=e(a,n[i],i,r));return a}},!ct);var ut=!1;e.reduceRight&&(ut="object"==typeof e.reduceRight.call("es5",function(t,e,r,n){return n})),J(e,{reduceRight:function t(e){var r=Y.ToObject(this),n=it&&C(this)?K(this,""):r,o=Y.ToUint32(n.length);if(!x(e))throw new TypeError("Array.prototype.reduceRight callback must be a function");if(0===o&&1===arguments.length)throw new TypeError("reduceRight of empty array with no initial value");var i,a=o-1;if(arguments.length>=2)i=arguments[1];else for(;;){if(a in n){i=n[a--];break}if(--a<0)throw new TypeError("reduceRight of empty array with no initial value")}if(a<0)return i;do a in n&&(i=e(i,n[a],a,r));while(a--);return i}},!ut);var ft=e.indexOf&&[0,1].indexOf(1,2)!==-1;J(e,{indexOf:function t(e){var r=it&&C(this)?K(this,""):Y.ToObject(this),n=Y.ToUint32(r.length);if(0===n)return-1;var o=0;for(arguments.length>1&&(o=Y.ToInteger(arguments[1])),o=o>=0?o:O(0,n+o);o<n;o++)if(o in r&&r[o]===e)return o;return-1}},ft);var st=e.lastIndexOf&&[0,1].lastIndexOf(0,-3)!==-1;J(e,{lastIndexOf:function t(e){var r=it&&C(this)?K(this,""):Y.ToObject(this),n=Y.ToUint32(r.length);if(0===n)return-1;var o=n-1;for(arguments.length>1&&(o=m(o,Y.ToInteger(arguments[1]))),o=o>=0?o:n-Math.abs(o);o>=0;o--)if(o in r&&e===r[o])return o;return-1}},st);var lt=function(){var t=[1,2],e=t.splice();return 2===t.length&&rt(e)&&0===e.length}();J(e,{splice:function t(e,r){return 0===arguments.length?[]:y.apply(this,arguments)}},!lt);var pt=function(){var t={};return e.splice.call(t,0,0,1),1===t.length}();J(e,{splice:function t(e,r){if(0===arguments.length)return[];var n=arguments;return this.length=O(Y.ToInteger(this.length),0),arguments.length>0&&"number"!=typeof r&&(n=H(arguments),n.length<2?V(n,this.length-e):n[1]=Y.ToInteger(r)),y.apply(this,n)}},!pt);var ht=function(){var e=new t(1e5);return e[8]="x",e.splice(1,1),7===e.indexOf("x")}(),yt=function(){var t=256,e=[];return e[t]="a",e.splice(t+1,0,"b"),"a"===e[t]}();J(e,{splice:function t(e,r){for(var n=Y.ToObject(this),o=[],i=Y.ToUint32(n.length),a=Y.ToInteger(e),c=a<0?O(i+a,0):m(a,i),u=m(O(Y.ToInteger(r),0),i-c),s=0,l;s<u;)l=f(c+s),B(n,l)&&(o[s]=n[l]),s+=1;var p=H(arguments,2),h=p.length,y;if(h<u){s=c;for(var d=i-u;s<d;)l=f(s+u),y=f(s+h),B(n,l)?n[y]=n[l]:delete n[y],s+=1;s=i;for(var b=i-u+h;s>b;)delete n[s-1],s-=1}else if(h>u)for(s=i-u;s>c;)l=f(s+u-1),y=f(s+h-1),B(n,l)?n[y]=n[l]:delete n[y],s-=1;s=c;for(var g=0;g<p.length;++g)n[s]=p[g],s+=1;return n.length=i-u+h,o}},!ht||!yt);var dt=e.join,bt;try{bt="1,2,3"!==Array.prototype.join.call("123",",")}catch(t){bt=!0}bt&&J(e,{join:function t(e){var r="undefined"==typeof e?",":e;return dt.call(C(this)?K(this,""):this,r)}},bt);var gt="1,2"!==[1,2].join(void 0);gt&&J(e,{join:function t(e){var r="undefined"==typeof e?",":e;return dt.call(this,r)}},gt);var vt=function t(e){for(var r=Y.ToObject(this),n=Y.ToUint32(r.length),o=0;o<arguments.length;)r[n+o]=arguments[o],o+=1;return r.length=n+o,n+o},wt=function(){var t={},e=Array.prototype.push.call(t,void 0);return 1!==e||1!==t.length||"undefined"!=typeof t[0]||!B(t,0)}();J(e,{push:function t(e){return rt(this)?d.apply(this,arguments):vt.apply(this,arguments)}},wt);var jt=function(){var t=[],e=t.push(void 0);return 1!==e||1!==t.length||"undefined"!=typeof t[0]||!B(t,0)}();J(e,{push:vt},jt),J(e,{slice:function(t,e){var r=C(this)?K(this,""):this;return L(r,arguments)}},it);var Ot=function(){try{return[1,2].sort(null),[1,2].sort({}),!0}catch(t){}return!1}(),mt=function(){try{return[1,2].sort(/a/),!1}catch(t){}return!0}(),Tt=function(){try{return[1,2].sort(void 0),!0}catch(t){}return!1}();J(e,{sort:function t(e){if("undefined"==typeof e)return et(this);if(!x(e))throw new TypeError("Array.prototype.sort callback must be a function");return et(this,e)}},Ot||!Tt||!mt);var Et=!tt({toString:null},"toString"),xt=tt(function(){},"prototype"),St=!B("x","0"),_t=function(t){var e=t.constructor;return e&&e.prototype===t},Pt={$window:!0,$console:!0,$parent:!0,$self:!0,$frame:!0,$frames:!0,$frameElement:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$external:!0},Mt=function(){if("undefined"==typeof window)return!1;for(var t in window)try{!Pt["$"+t]&&B(window,t)&&null!==window[t]&&"object"==typeof window[t]&&_t(window[t])}catch(t){return!0}return!1}(),It=function(t){if("undefined"==typeof window||!Mt)return _t(t);try{return _t(t)}catch(t){return!1}},Dt=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],kt=Dt.length,Ft=function t(e){return"[object Arguments]"===X(e)},Ut=function t(e){return null!==e&&"object"==typeof e&&"number"==typeof e.length&&e.length>=0&&!rt(e)&&x(e.callee)},Nt=Ft(arguments)?Ft:Ut;J(r,{keys:function t(e){var r=x(e),n=Nt(e),o=null!==e&&"object"==typeof e,i=o&&C(e);if(!o&&!r&&!n)throw new TypeError("Object.keys called on a non-object");var a=[],c=xt&&r;if(i&&St||n)for(var u=0;u<e.length;++u)V(a,f(u));if(!n)for(var s in e)c&&"prototype"===s||!B(e,s)||V(a,f(s));if(Et)for(var l=It(e),p=0;p<kt;p++){var h=Dt[p];l&&"constructor"===h||!B(e,h)||V(a,h)}return a}});var Ct=r.keys&&function(){return 2===r.keys(arguments).length}(1,2),At=r.keys&&function(){var t=r.keys(arguments);return 1!==arguments.length||1!==t.length||1!==t[0]}(1),Rt=r.keys;J(r,{keys:function t(e){return Rt(Nt(e)?H(e):e)}},!Ct||At);var $t=0!==new a((-0xc782b5b342b24)).getUTCMonth(),zt=new a((-0x55d318d56a724)),Jt=new a(14496624e5),Gt="Mon, 01 Jan -45875 11:59:59 GMT"!==zt.toUTCString(),Zt,Yt,Wt=zt.getTimezoneOffset();Wt<-720?(Zt="Tue Jan 02 -45875"!==zt.toDateString(),Yt=!/^Thu Dec 10 2015 \d\d:\d\d:\d\d GMT[-\+]\d\d\d\d(?: |$)/.test(Jt.toString())):(Zt="Mon Jan 01 -45875"!==zt.toDateString(),Yt=!/^Wed Dec 09 2015 \d\d:\d\d:\d\d GMT[-\+]\d\d\d\d(?: |$)/.test(Jt.toString()));var Bt=w.bind(a.prototype.getFullYear),Xt=w.bind(a.prototype.getMonth),Ht=w.bind(a.prototype.getDate),Lt=w.bind(a.prototype.getUTCFullYear),qt=w.bind(a.prototype.getUTCMonth),Kt=w.bind(a.prototype.getUTCDate),Qt=w.bind(a.prototype.getUTCDay),Vt=w.bind(a.prototype.getUTCHours),te=w.bind(a.prototype.getUTCMinutes),ee=w.bind(a.prototype.getUTCSeconds),re=w.bind(a.prototype.getUTCMilliseconds),ne=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],oe=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],ie=function t(e,r){return Ht(new a(r,e,0))};J(a.prototype,{getFullYear:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Bt(this);return e<0&&Xt(this)>11?e+1:e},getMonth:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Bt(this),r=Xt(this);return e<0&&r>11?0:r},getDate:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Bt(this),r=Xt(this),n=Ht(this);if(e<0&&r>11){if(12===r)return n;var o=ie(0,e+1);return o-n+1}return n},getUTCFullYear:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Lt(this);return e<0&&qt(this)>11?e+1:e},getUTCMonth:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Lt(this),r=qt(this);return e<0&&r>11?0:r},getUTCDate:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Lt(this),r=qt(this),n=Kt(this);if(e<0&&r>11){if(12===r)return n;var o=ie(0,e+1);return o-n+1}return n}},$t),J(a.prototype,{toUTCString:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=Qt(this),r=Kt(this),n=qt(this),o=Lt(this),i=Vt(this),c=te(this),u=ee(this);return ne[e]+", "+(r<10?"0"+r:r)+" "+oe[n]+" "+o+" "+(i<10?"0"+i:i)+":"+(c<10?"0"+c:c)+":"+(u<10?"0"+u:u)+" GMT"}},$t||Gt),J(a.prototype,{toDateString:function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=this.getDay(),r=this.getDate(),n=this.getMonth(),o=this.getFullYear();return ne[e]+" "+oe[n]+" "+(r<10?"0"+r:r)+" "+o}},$t||Zt),($t||Yt)&&(a.prototype.toString=function t(){if(!(this&&this instanceof a))throw new TypeError("this is not a Date object.");var e=this.getDay(),r=this.getDate(),n=this.getMonth(),o=this.getFullYear(),i=this.getHours(),c=this.getMinutes(),u=this.getSeconds(),f=this.getTimezoneOffset(),s=Math.floor(Math.abs(f)/60),l=Math.floor(Math.abs(f)%60);return ne[e]+" "+oe[n]+" "+(r<10?"0"+r:r)+" "+o+" "+(i<10?"0"+i:i)+":"+(c<10?"0"+c:c)+":"+(u<10?"0"+u:u)+" GMT"+(f>0?"-":"+")+(s<10?"0"+s:s)+(l<10?"0"+l:l)},z&&r.defineProperty(a.prototype,"toString",{configurable:!0,enumerable:!1,writable:!0}));var ae=-621987552e5,ce="-000001",ue=a.prototype.toISOString&&new a(ae).toISOString().indexOf(ce)===-1,fe=a.prototype.toISOString&&"1969-12-31T23:59:59.999Z"!==new a((-1)).toISOString(),se=w.bind(a.prototype.getTime);J(a.prototype,{toISOString:function t(){if(!isFinite(this)||!isFinite(se(this)))throw new RangeError("Date.prototype.toISOString called on non-finite value.");var e=Lt(this),r=qt(this);e+=Math.floor(r/12),r=(r%12+12)%12;var n=[r+1,Kt(this),Vt(this),te(this),ee(this)];e=(e<0?"-":e>9999?"+":"")+q("00000"+Math.abs(e),0<=e&&e<=9999?-4:-6);for(var o=0;o<n.length;++o)n[o]=q("00"+n[o],-2);return e+"-"+H(n,0,2).join("-")+"T"+H(n,2).join(":")+"."+q("000"+re(this),-3)+"Z"}},ue||fe);var le=function(){try{return a.prototype.toJSON&&null===new a(NaN).toJSON()&&new a(ae).toJSON().indexOf(ce)!==-1&&a.prototype.toJSON.call({toISOString:function(){return!0}})}catch(t){return!1}}();le||(a.prototype.toJSON=function t(e){var n=r(this),o=Y.ToPrimitive(n);if("number"==typeof o&&!isFinite(o))return null;var i=n.toISOString;if(!x(i))throw new TypeError("toISOString property is not callable");return i.call(n)});var pe=1e15===a.parse("+033658-09-27T01:46:40.000Z"),he=!isNaN(a.parse("2012-04-04T24:00:00.500Z"))||!isNaN(a.parse("2012-11-31T23:59:59.000Z"))||!isNaN(a.parse("2012-12-31T23:59:60.000Z")),ye=isNaN(a.parse("2000-01-01T00:00:00.000Z"));if(ye||he||!pe){var de=Math.pow(2,31)-1,be=Z(new a(1970,0,1,0,0,0,de+1).getTime());a=function(t){var e=function r(n,o,i,a,c,u,s){var l=arguments.length,p;if(this instanceof t){var h=u,y=s;if(be&&l>=7&&s>de){var d=Math.floor(s/de)*de,b=Math.floor(d/1e3);h+=b,y-=1e3*b}p=1===l&&f(n)===n?new t(e.parse(n)):l>=7?new t(n,o,i,a,c,h,y):l>=6?new t(n,o,i,a,c,h):l>=5?new t(n,o,i,a,c):l>=4?new t(n,o,i,a):l>=3?new t(n,o,i):l>=2?new t(n,o):l>=1?new t(n instanceof t?+n:n):new t}else p=t.apply(this,arguments);return G(p)||J(p,{constructor:e},!0),p},r=new RegExp("^(\\d{4}|[+-]\\d{6})(?:-(\\d{2})(?:-(\\d{2})(?:T(\\d{2}):(\\d{2})(?::(\\d{2})(?:(\\.\\d{1,}))?)?(Z|(?:([-+])(\\d{2}):(\\d{2})))?)?)?)?$"),n=[0,31,59,90,120,151,181,212,243,273,304,334,365],o=function t(e,r){var o=r>1?1:0;return n[r]+Math.floor((e-1969+o)/4)-Math.floor((e-1901+o)/100)+Math.floor((e-1601+o)/400)+365*(e-1970)},i=function e(r){var n=0,o=r;if(be&&o>de){var i=Math.floor(o/de)*de,a=Math.floor(i/1e3);n+=a,o-=1e3*a}return l(new t(1970,0,1,0,0,n,o))};for(var a in t)B(t,a)&&(e[a]=t[a]);J(e,{now:t.now,UTC:t.UTC},!0),e.prototype=t.prototype,J(e.prototype,{constructor:e},!0);var c=function e(n){var a=r.exec(n);if(a){var c=l(a[1]),u=l(a[2]||1)-1,f=l(a[3]||1)-1,s=l(a[4]||0),p=l(a[5]||0),h=l(a[6]||0),y=Math.floor(1e3*l(a[7]||0)),d=Boolean(a[4]&&!a[8]),b="-"===a[9]?1:-1,g=l(a[10]||0),v=l(a[11]||0),w,j=p>0||h>0||y>0;return s<(j?24:25)&&p<60&&h<60&&y<1e3&&u>-1&&u<12&&g<24&&v<60&&f>-1&&f<o(c,u+1)-o(c,u)&&(w=60*(24*(o(c,u)+f)+s+g*b),w=1e3*(60*(w+p+v*b)+h)+y,d&&(w=i(w)),-864e13<=w&&w<=864e13)?w:NaN}return t.parse.apply(this,arguments)};return J(e,{parse:c}),e}(a)}a.now||(a.now=function t(){return(new a).getTime()});var ge=p.toFixed&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0)),ve={base:1e7,size:6,data:[0,0,0,0,0,0],multiply:function t(e,r){for(var n=-1,o=r;++n<ve.size;)o+=e*ve.data[n],ve.data[n]=o%ve.base,o=Math.floor(o/ve.base)},divide:function t(e){for(var r=ve.size,n=0;--r>=0;)n+=ve.data[r],ve.data[r]=Math.floor(n/e),n=n%e*ve.base},numToString:function t(){for(var e=ve.size,r="";--e>=0;)if(""!==r||0===e||0!==ve.data[e]){var n=f(ve.data[e]);""===r?r=n:r+=q("0000000",0,7-n.length)+n}return r},pow:function t(e,r,n){return 0===r?n:r%2===1?t(e,r-1,n*e):t(e*e,r/2,n)},log:function t(e){for(var r=0,n=e;n>=4096;)r+=12,n/=4096;for(;n>=2;)r+=1,n/=2;return r}},we=function t(e){var r,n,o,i,a,c,u,s;if(r=l(e),r=Z(r)?0:Math.floor(r),r<0||r>20)throw new RangeError("Number.toFixed called with invalid number of decimals");if(n=l(this),Z(n))return"NaN";if(n<=-1e21||n>=1e21)return f(n);if(o="",n<0&&(o="-",n=-n),i="0",n>1e-21)if(a=ve.log(n*ve.pow(2,69,1))-69,c=a<0?n*ve.pow(2,-a,1):n/ve.pow(2,a,1),c*=4503599627370496,a=52-a,a>0){for(ve.multiply(0,c),u=r;u>=7;)ve.multiply(1e7,0),u-=7;for(ve.multiply(ve.pow(10,u,1),0),u=a-1;u>=23;)ve.divide(1<<23),u-=23;ve.divide(1<<u),ve.multiply(1,1),ve.divide(2),i=ve.numToString()}else ve.multiply(0,c),ve.multiply(1<<-a,0),i=ve.numToString()+q("0.00000000000000000000",2,2+r);return r>0?(s=i.length,i=s<=r?o+q("0.0000000000000000000",0,r-s+2)+i:o+q(i,0,s-r)+"."+q(i,s-r)):i=o+i,i};J(p,{toFixed:we},ge);var je=function(){try{return"1"===1..toPrecision(void 0)}catch(t){return!0}}(),Oe=p.toPrecision;J(p,{toPrecision:function t(e){return"undefined"==typeof e?Oe.call(this):Oe.call(this,e)}},je),2!=="ab".split(/(?:ab)*/).length||4!==".".split(/(.?)(.?)/).length||"t"==="tesst".split(/(s)*/)[1]||4!=="test".split(/(?:)/,-1).length||"".split(/.?/).length||".".split(/()()/).length>1?!function(){var t="undefined"==typeof/()??/.exec("")[1],e=Math.pow(2,32)-1;s.split=function(r,n){var o=String(this);if("undefined"==typeof r&&0===n)return[];if(!k(r))return K(this,r,n);var i=[],a=(r.ignoreCase?"i":"")+(r.multiline?"m":"")+(r.unicode?"u":"")+(r.sticky?"y":""),c=0,u,f,s,l,p=new RegExp(r.source,a+"g");t||(u=new RegExp("^"+p.source+"$(?!\\s)",a));var h="undefined"==typeof n?e:Y.ToUint32(n);for(f=p.exec(o);f&&(s=f.index+f[0].length,!(s>c&&(V(i,q(o,c,f.index)),!t&&f.length>1&&f[0].replace(u,function(){for(var t=1;t<arguments.length-2;t++)"undefined"==typeof arguments[t]&&(f[t]=void 0)}),f.length>1&&f.index<o.length&&d.apply(i,H(f,1)),l=f[0].length,c=s,i.length>=h)));)p.lastIndex===f.index&&p.lastIndex++,f=p.exec(o);return c===o.length?!l&&p.test("")||V(i,""):V(i,q(o,c)),i.length>h?H(i,0,h):i}}():"0".split(void 0,0).length&&(s.split=function t(e,r){return"undefined"==typeof e&&0===r?[]:K(this,e,r)});var me=s.replace,Te=function(){var t=[];return"x".replace(/x(.)?/g,function(e,r){V(t,r)}),1===t.length&&"undefined"==typeof t[0]}();Te||(s.replace=function t(e,r){var n=x(r),o=k(e)&&/\)[*?]/.test(e.source);if(n&&o){var i=function(t){var n=arguments.length,o=e.lastIndex;e.lastIndex=0;var i=e.exec(t)||[];return e.lastIndex=o,V(i,arguments[n-2],arguments[n-1]),r.apply(this,i)};return me.call(this,e,i)}return me.call(this,e,r)});var Ee=s.substr,xe="".substr&&"b"!=="0b".substr(-1);J(s,{substr:function t(e,r){var n=e;return e<0&&(n=O(this.length+e,0)),Ee.call(this,n,r)}},xe);var Se="\t\n\v\f\r    \u2028\u2029\ufeff",_e="",Pe="["+Se+"]",Me=new RegExp("^"+Pe+Pe+"*"),Ie=new RegExp(Pe+Pe+"*$"),De=s.trim&&(Se.trim()||!_e.trim());J(s,{trim:function t(){if("undefined"==typeof this||null===this)throw new TypeError("can't convert "+this+" to object");return f(this).replace(Me,"").replace(Ie,"")}},De);var ke=w.bind(String.prototype.trim),Fe=s.lastIndexOf&&"abcあい".lastIndexOf("あい",2)!==-1;J(s,{lastIndexOf:function t(e){if("undefined"==typeof this||null===this)throw new TypeError("can't convert "+this+" to object");for(var r=f(this),n=f(e),o=arguments.length>1?l(arguments[1]):NaN,i=Z(o)?1/0:Y.ToInteger(o),a=m(O(i,0),r.length),c=n.length,u=a+c;u>0;){u=O(0,u-c);var s=Q(q(r,u,a+c),n);if(s!==-1)return u+s}return-1}},Fe);var Ue=s.lastIndexOf;if(J(s,{lastIndexOf:function t(e){return Ue.apply(this,arguments)}},1!==s.lastIndexOf.length),8===c(Se+"08")&&22===c(Se+"0x16")||(c=function(t){var e=/^[\-+]?0[xX]/;return function r(n,o){var i=ke(String(n)),a=l(o)||(e.test(i)?16:10);return t(i,a)}}(c)),1/u("-0")!==-(1/0)&&(u=function(t){return function e(r){var n=ke(String(r)),o=t(n);return 0===o&&"-"===q(n,0,1)?-0:o}}(u)),"RangeError: test"!==String(new RangeError("test"))){var Ne=function t(){if("undefined"==typeof this||null===this)throw new TypeError("can't convert "+this+" to object");var e=this.name;"undefined"==typeof e?e="Error":"string"!=typeof e&&(e=f(e));var r=this.message;return"undefined"==typeof r?r="":"string"!=typeof r&&(r=f(r)),e?r?e+": "+r:e:r};Error.prototype.toString=Ne}if(z){var Ce=function(t,e){if(tt(t,e)){var r=Object.getOwnPropertyDescriptor(t,e);r.configurable&&(r.enumerable=!1,Object.defineProperty(t,e,r))}};Ce(Error.prototype,"message"),""!==Error.prototype.message&&(Error.prototype.message=""),Ce(Error.prototype,"name")}if("/a/gim"!==String(/a/gim)){var Ae=function t(){var e="/"+this.source+"/";return this.global&&(e+="g"),this.ignoreCase&&(e+="i"),this.multiline&&(e+="m"),e};RegExp.prototype.toString=Ae}})},"es5-sham.js":function(t,e,r){!function(t,n){"use strict";"function"==typeof define&&define.amd?define(n):"object"==typeof e?r.exports=n():t.returnExports=n()}(this,function(){var t=Function.call,e=Object.prototype,r=t.bind(e.hasOwnProperty),n=t.bind(e.propertyIsEnumerable),o=t.bind(e.toString),i,a,c,u,f=r(e,"__defineGetter__");f&&(i=t.bind(e.__defineGetter__),a=t.bind(e.__defineSetter__),c=t.bind(e.__lookupGetter__),u=t.bind(e.__lookupSetter__));var s=function t(e){return null==e||"object"!=typeof e&&"function"!=typeof e};Object.getPrototypeOf||(Object.getPrototypeOf=function t(r){var n=r.__proto__;return n||null===n?n:"[object Function]"===o(r.constructor)?r.constructor.prototype:r instanceof Object?e:null});var l=function t(e){try{return e.sentinel=0,0===Object.getOwnPropertyDescriptor(e,"sentinel").value}catch(t){return!1}};if(Object.defineProperty){var p=l({}),h="undefined"==typeof document||l(document.createElement("div"));if(!h||!p)var y=Object.getOwnPropertyDescriptor}if(!Object.getOwnPropertyDescriptor||y){var d="Object.getOwnPropertyDescriptor called on a non-object: ";Object.getOwnPropertyDescriptor=function t(o,i){if(s(o))throw new TypeError(d+o);if(y)try{return y.call(Object,o,i)}catch(t){}var a;if(!r(o,i))return a;if(a={enumerable:n(o,i),configurable:!0},f){var l=o.__proto__,p=o!==e;p&&(o.__proto__=e);var h=c(o,i),b=u(o,i);if(p&&(o.__proto__=l),h||b)return h&&(a.get=h),b&&(a.set=b),a}return a.value=o[i],a.writable=!0,a}}if(Object.getOwnPropertyNames||(Object.getOwnPropertyNames=function t(e){return Object.keys(e)}),!Object.create){var b,g=!({__proto__:null}instanceof Object),v=function t(){if(!document.domain)return!1;try{return!!new ActiveXObject("htmlfile")}catch(t){return!1}},w=function t(){var e,r;r=new ActiveXObject("htmlfile");var n="script";return r.write("<"+n+"></"+n+">"),r.close(),e=r.parentWindow.Object.prototype,r=null,e},j=function t(){var e=document.createElement("iframe"),r=document.body||document.documentElement,n;return e.style.display="none",r.appendChild(e),e.src="javascript:",n=e.contentWindow.Object.prototype,r.removeChild(e),e=null,n};b=g||"undefined"==typeof document?function(){return{__proto__:null}}:function(){var t=v()?w():j();delete t.constructor,delete t.hasOwnProperty,delete t.propertyIsEnumerable,delete t.isPrototypeOf,delete t.toLocaleString,delete t.toString,delete t.valueOf;var e=function t(){};return e.prototype=t,b=function(){return new e},new e},Object.create=function t(e,r){var n,o=function t(){};if(null===e)n=b();else{if(null!==e&&s(e))throw new TypeError("Object prototype may only be an Object or null");o.prototype=e,n=new o,n.__proto__=e}return void 0!==r&&Object.defineProperties(n,r),n}}var O=function t(e){try{return Object.defineProperty(e,"sentinel",{}),"sentinel"in e}catch(t){return!1}};if(Object.defineProperty){var m=O({}),T="undefined"==typeof document||O(document.createElement("div"));if(!m||!T)var E=Object.defineProperty,x=Object.defineProperties}if(!Object.defineProperty||E){var S="Property description must be an object: ",_="Object.defineProperty called on non-object: ",P="getters & setters can not be defined on this javascript engine";Object.defineProperty=function t(r,n,o){if(s(r))throw new TypeError(_+r);if(s(o))throw new TypeError(S+o);if(E)try{return E.call(Object,r,n,o)}catch(t){}if("value"in o)if(f&&(c(r,n)||u(r,n))){var l=r.__proto__;r.__proto__=e,delete r[n],r[n]=o.value,r.__proto__=l}else r[n]=o.value;else{var p="get"in o,h="set"in o;if(!f&&(p||h))throw new TypeError(P);p&&i(r,n,o.get),h&&a(r,n,o.set)}return r}}Object.defineProperties&&!x||(Object.defineProperties=function t(e,r){if(x)try{return x.call(Object,e,r)}catch(t){}return Object.keys(r).forEach(function(t){"__proto__"!==t&&Object.defineProperty(e,t,r[t])}),e}),Object.seal||(Object.seal=function t(e){if(Object(e)!==e)throw new TypeError("Object.seal can only be called on Objects.");return e}),Object.freeze||(Object.freeze=function t(e){if(Object(e)!==e)throw new TypeError("Object.freeze can only be called on Objects.");return e});try{Object.freeze(function(){})}catch(t){Object.freeze=function(t){return function e(r){return"function"==typeof r?r:t(r)}}(Object.freeze)}Object.preventExtensions||(Object.preventExtensions=function t(e){if(Object(e)!==e)throw new TypeError("Object.preventExtensions can only be called on Objects.");return e}),Object.isSealed||(Object.isSealed=function t(e){if(Object(e)!==e)throw new TypeError("Object.isSealed can only be called on Objects.");return!1}),Object.isFrozen||(Object.isFrozen=function t(e){if(Object(e)!==e)throw new TypeError("Object.isFrozen can only be called on Objects.");return!1}),Object.isExtensible||(Object.isExtensible=function t(e){if(Object(e)!==e)throw new TypeError("Object.isExtensible can only be called on Objects.");for(var n="";r(e,n);)n+="?";e[n]=!0;var o=r(e,n);return delete e[n],o})})}}}}}}},{extensions:[".js",".json"]}),l=s("./node_modules/meteor/es5-shim/client.js");"undefined"==typeof Package&&(Package={}),Package["es5-shim"]=l}();
!function(){var n=Package.meteor.Meteor,e=Package.meteor.global,t=Package.meteor.meteorEnv,o=Package.modules.meteorInstall,i=Package.modules.Buffer,r=Package.modules.process,u,c=o({node_modules:{meteor:{promise:{"client.js":["meteor-promise","./common.js",function(n,e){n("meteor-promise").makeCompatible(e.Promise=n("./common.js").Promise)}],"common.js":["promise/lib/es6-extensions",function(e,t){var o=this;"function"==typeof o.Promise?t.Promise=o.Promise:t.Promise=e("promise/lib/es6-extensions"),t.Promise.prototype.done=function(e,t){var o=this;arguments.length>0&&(o=this.then.apply(this,arguments)),o.then(null,function(e){n._setImmediate(function(){throw e})})}}],node_modules:{"meteor-promise":{"package.json":function(n,e){e.name="meteor-promise",e.version="0.8.0",e.main="promise_client.js"},"promise_client.js":function(e,t){function o(n){throw n}t.makeCompatible=function(e){var t=e.prototype.then;e.prototype.then=function(e,i){return"object"==typeof n&&"function"==typeof n.bindEnvironment?t.call(this,e&&n.bindEnvironment(e,o),i&&n.bindEnvironment(i,o)):t.call(this,e,i)}}}},promise:{lib:{"es6-extensions.js":["./core.js",function(n,e,t){"use strict";function o(n){var e=new i(i._61);return e._81=1,e._65=n,e}var i=n("./core.js");t.exports=i;var r=o(!0),u=o(!1),c=o(null),f=o(void 0),s=o(0),a=o("");i.resolve=function(n){if(n instanceof i)return n;if(null===n)return c;if(void 0===n)return f;if(n===!0)return r;if(n===!1)return u;if(0===n)return s;if(""===n)return a;if("object"==typeof n||"function"==typeof n)try{var e=n.then;if("function"==typeof e)return new i(e.bind(n))}catch(n){return new i(function(e,t){t(n)})}return o(n)},i.all=function(n){var e=Array.prototype.slice.call(n);return new i(function(n,t){function o(u,c){if(c&&("object"==typeof c||"function"==typeof c)){if(c instanceof i&&c.then===i.prototype.then){for(;3===c._81;)c=c._65;return 1===c._81?o(u,c._65):(2===c._81&&t(c._65),void c.then(function(n){o(u,n)},t))}var f=c.then;if("function"==typeof f){var s=new i(f.bind(c));return void s.then(function(n){o(u,n)},t)}}e[u]=c,0===--r&&n(e)}if(0===e.length)return n([]);for(var r=e.length,u=0;u<e.length;u++)o(u,e[u])})},i.reject=function(n){return new i(function(e,t){t(n)})},i.race=function(n){return new i(function(e,t){n.forEach(function(n){i.resolve(n).then(e,t)})})},i.prototype.catch=function(n){return this.then(null,n)}}],"core.js":["asap/raw",function(n,e,t){"use strict";function o(){}function i(n){try{return n.then}catch(n){return d=n,y}}function r(n,e){try{return n(e)}catch(n){return d=n,y}}function u(n,e,t){try{n(e,t)}catch(n){return d=n,y}}function c(n){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof n)throw new TypeError("not a function");this._45=0,this._81=0,this._65=null,this._54=null,n!==o&&_(n,this)}function f(n,e,t){return new n.constructor(function(i,r){var u=new c(o);u.then(i,r),s(n,new h(e,t,u))})}function s(n,e){for(;3===n._81;)n=n._65;return c._10&&c._10(n),0===n._81?0===n._45?(n._45=1,void(n._54=e)):1===n._45?(n._45=2,void(n._54=[n._54,e])):void n._54.push(e):void a(n,e)}function a(n,e){v(function(){var t=1===n._81?e.onFulfilled:e.onRejected;if(null===t)return void(1===n._81?l(e.promise,n._65):m(e.promise,n._65));var o=r(t,n._65);o===y?m(e.promise,d):l(e.promise,o)})}function l(n,e){if(e===n)return m(n,new TypeError("A promise cannot be resolved with itself."));if(e&&("object"==typeof e||"function"==typeof e)){var t=i(e);if(t===y)return m(n,d);if(t===n.then&&e instanceof c)return n._81=3,n._65=e,void p(n);if("function"==typeof t)return void _(t.bind(e),n)}n._81=1,n._65=e,p(n)}function m(n,e){n._81=2,n._65=e,c._97&&c._97(n,e),p(n)}function p(n){if(1===n._45&&(s(n,n._54),n._54=null),2===n._45){for(var e=0;e<n._54.length;e++)s(n,n._54[e]);n._54=null}}function h(n,e,t){this.onFulfilled="function"==typeof n?n:null,this.onRejected="function"==typeof e?e:null,this.promise=t}function _(n,e){var t=!1,o=u(n,function(n){t||(t=!0,l(e,n))},function(n){t||(t=!0,m(e,n))});t||o!==y||(t=!0,m(e,d))}var v=n("asap/raw"),d=null,y={};t.exports=c,c._10=null,c._97=null,c._61=o,c.prototype.then=function(n,e){if(this.constructor!==c)return f(this,n,e);var t=new c(o);return s(this,new h(n,e,t)),t}}]}},asap:{"raw.js":["domain",function(n,e,t){"use strict";function o(n){s.length||(u(),a=!0),s[s.length]=n}function i(){for(;l<s.length;){var n=l;if(l+=1,s[n].call(),l>m){for(var e=0,t=s.length-l;e<t;e++)s[e]=s[e+l];s.length-=l,l=0}}s.length=0,l=0,a=!1}function u(){var e=r.domain;e&&(c||(c=n("domain")),c.active=r.domain=null),a&&f?setImmediate(i):r.nextTick(i),e&&(c.active=r.domain=e)}var c,f="function"==typeof setImmediate;t.exports=o;var s=[],a=!1,l=0,m=1024;o.requestFlush=u}]}}}}}},{extensions:[".js",".json"]}),f=c("./node_modules/meteor/promise/client.js");"undefined"==typeof Package&&(Package={}),function(n,e){for(var t in e)t in n||(n[t]=e[t])}(Package.promise=f,{Promise:u})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,r=Package.meteor.meteorEnv,o=Package.modules.meteorInstall,n=Package.modules.Buffer,s=Package.modules.process,i=Package.promise.Promise,c,u,a,_,f,l=o({node_modules:{meteor:{"ecmascript-runtime":{"runtime.js":["meteor-ecmascript-runtime",function(t,e,r){r.exports=t("meteor-ecmascript-runtime")}],node_modules:{"meteor-ecmascript-runtime":{"package.json":function(t,e){e.name="meteor-ecmascript-runtime",e.version="0.2.9",e.main="index.js"},"index.js":["core-js/es6/object","core-js/es6/array","core-js/es6/string","core-js/es6/function","core-js/fn/array/includes","core-js/fn/object/values","core-js/fn/object/entries","core-js/fn/object/get-own-property-descriptors","core-js/fn/string/pad-start","core-js/fn/string/pad-end","core-js/fn/string/trim-start","core-js/fn/string/trim-end","core-js/es6/symbol","core-js/es6/map","core-js/es6/set",function(t,r){t("core-js/es6/object"),t("core-js/es6/array"),t("core-js/es6/string"),t("core-js/es6/function"),t("core-js/fn/array/includes"),t("core-js/fn/object/values"),t("core-js/fn/object/entries"),t("core-js/fn/object/get-own-property-descriptors"),t("core-js/fn/string/pad-start"),t("core-js/fn/string/pad-end"),t("core-js/fn/string/trim-start"),t("core-js/fn/string/trim-end"),c=r.Symbol=e.Symbol||t("core-js/es6/symbol"),u=r.Map=t("core-js/es6/map"),a=r.Set=t("core-js/es6/set")}]},"core-js":{es6:{"object.js":["../modules/es6.symbol","../modules/es6.object.create","../modules/es6.object.define-property","../modules/es6.object.define-properties","../modules/es6.object.get-own-property-descriptor","../modules/es6.object.get-prototype-of","../modules/es6.object.keys","../modules/es6.object.get-own-property-names","../modules/es6.object.freeze","../modules/es6.object.seal","../modules/es6.object.prevent-extensions","../modules/es6.object.is-frozen","../modules/es6.object.is-sealed","../modules/es6.object.is-extensible","../modules/es6.object.assign","../modules/es6.object.is","../modules/es6.object.set-prototype-of","../modules/es6.object.to-string","../modules/_core",function(t,e,r){t("../modules/es6.symbol"),t("../modules/es6.object.create"),t("../modules/es6.object.define-property"),t("../modules/es6.object.define-properties"),t("../modules/es6.object.get-own-property-descriptor"),t("../modules/es6.object.get-prototype-of"),t("../modules/es6.object.keys"),t("../modules/es6.object.get-own-property-names"),t("../modules/es6.object.freeze"),t("../modules/es6.object.seal"),t("../modules/es6.object.prevent-extensions"),t("../modules/es6.object.is-frozen"),t("../modules/es6.object.is-sealed"),t("../modules/es6.object.is-extensible"),t("../modules/es6.object.assign"),t("../modules/es6.object.is"),t("../modules/es6.object.set-prototype-of"),t("../modules/es6.object.to-string"),r.exports=t("../modules/_core").Object}],"array.js":["../modules/es6.string.iterator","../modules/es6.array.is-array","../modules/es6.array.from","../modules/es6.array.of","../modules/es6.array.join","../modules/es6.array.slice","../modules/es6.array.sort","../modules/es6.array.for-each","../modules/es6.array.map","../modules/es6.array.filter","../modules/es6.array.some","../modules/es6.array.every","../modules/es6.array.reduce","../modules/es6.array.reduce-right","../modules/es6.array.index-of","../modules/es6.array.last-index-of","../modules/es6.array.copy-within","../modules/es6.array.fill","../modules/es6.array.find","../modules/es6.array.find-index","../modules/es6.array.species","../modules/es6.array.iterator","../modules/_core",function(t,e,r){t("../modules/es6.string.iterator"),t("../modules/es6.array.is-array"),t("../modules/es6.array.from"),t("../modules/es6.array.of"),t("../modules/es6.array.join"),t("../modules/es6.array.slice"),t("../modules/es6.array.sort"),t("../modules/es6.array.for-each"),t("../modules/es6.array.map"),t("../modules/es6.array.filter"),t("../modules/es6.array.some"),t("../modules/es6.array.every"),t("../modules/es6.array.reduce"),t("../modules/es6.array.reduce-right"),t("../modules/es6.array.index-of"),t("../modules/es6.array.last-index-of"),t("../modules/es6.array.copy-within"),t("../modules/es6.array.fill"),t("../modules/es6.array.find"),t("../modules/es6.array.find-index"),t("../modules/es6.array.species"),t("../modules/es6.array.iterator"),r.exports=t("../modules/_core").Array}],"string.js":["../modules/es6.string.from-code-point","../modules/es6.string.raw","../modules/es6.string.trim","../modules/es6.string.iterator","../modules/es6.string.code-point-at","../modules/es6.string.ends-with","../modules/es6.string.includes","../modules/es6.string.repeat","../modules/es6.string.starts-with","../modules/es6.string.anchor","../modules/es6.string.big","../modules/es6.string.blink","../modules/es6.string.bold","../modules/es6.string.fixed","../modules/es6.string.fontcolor","../modules/es6.string.fontsize","../modules/es6.string.italics","../modules/es6.string.link","../modules/es6.string.small","../modules/es6.string.strike","../modules/es6.string.sub","../modules/es6.string.sup","../modules/es6.regexp.match","../modules/es6.regexp.replace","../modules/es6.regexp.search","../modules/es6.regexp.split","../modules/_core",function(t,e,r){t("../modules/es6.string.from-code-point"),t("../modules/es6.string.raw"),t("../modules/es6.string.trim"),t("../modules/es6.string.iterator"),t("../modules/es6.string.code-point-at"),t("../modules/es6.string.ends-with"),t("../modules/es6.string.includes"),t("../modules/es6.string.repeat"),t("../modules/es6.string.starts-with"),t("../modules/es6.string.anchor"),t("../modules/es6.string.big"),t("../modules/es6.string.blink"),t("../modules/es6.string.bold"),t("../modules/es6.string.fixed"),t("../modules/es6.string.fontcolor"),t("../modules/es6.string.fontsize"),t("../modules/es6.string.italics"),t("../modules/es6.string.link"),t("../modules/es6.string.small"),t("../modules/es6.string.strike"),t("../modules/es6.string.sub"),t("../modules/es6.string.sup"),t("../modules/es6.regexp.match"),t("../modules/es6.regexp.replace"),t("../modules/es6.regexp.search"),t("../modules/es6.regexp.split"),r.exports=t("../modules/_core").String}],"function.js":["../modules/es6.function.bind","../modules/es6.function.name","../modules/es6.function.has-instance","../modules/_core",function(t,e,r){t("../modules/es6.function.bind"),t("../modules/es6.function.name"),t("../modules/es6.function.has-instance"),r.exports=t("../modules/_core").Function}],"symbol.js":["../modules/es6.symbol","../modules/es6.object.to-string","../modules/_core",function(t,e,r){t("../modules/es6.symbol"),t("../modules/es6.object.to-string"),r.exports=t("../modules/_core").Symbol}],"map.js":["../modules/es6.object.to-string","../modules/es6.string.iterator","../modules/web.dom.iterable","../modules/es6.map","../modules/_core",function(t,e,r){t("../modules/es6.object.to-string"),t("../modules/es6.string.iterator"),t("../modules/web.dom.iterable"),t("../modules/es6.map"),r.exports=t("../modules/_core").Map}],"set.js":["../modules/es6.object.to-string","../modules/es6.string.iterator","../modules/web.dom.iterable","../modules/es6.set","../modules/_core",function(t,e,r){t("../modules/es6.object.to-string"),t("../modules/es6.string.iterator"),t("../modules/web.dom.iterable"),t("../modules/es6.set"),r.exports=t("../modules/_core").Set}]},modules:{"es6.symbol.js":["./_global","./_has","./_descriptors","./_export","./_redefine","./_meta","./_fails","./_shared","./_set-to-string-tag","./_uid","./_wks","./_wks-ext","./_wks-define","./_keyof","./_enum-keys","./_is-array","./_an-object","./_to-iobject","./_to-primitive","./_property-desc","./_object-create","./_object-gopn-ext","./_object-gopd","./_object-dp","./_object-keys","./_object-gopn","./_object-pie","./_object-gops","./_library","./_hide",function(t){"use strict";var e=t("./_global"),r=t("./_has"),o=t("./_descriptors"),n=t("./_export"),s=t("./_redefine"),i=t("./_meta").KEY,c=t("./_fails"),u=t("./_shared"),a=t("./_set-to-string-tag"),_=t("./_uid"),f=t("./_wks"),l=t("./_wks-ext"),d=t("./_wks-define"),p=t("./_keyof"),j=t("./_enum-keys"),g=t("./_is-array"),b=t("./_an-object"),m=t("./_to-iobject"),h=t("./_to-primitive"),y=t("./_property-desc"),v=t("./_object-create"),x=t("./_object-gopn-ext"),w=t("./_object-gopd"),k=t("./_object-dp"),S=t("./_object-keys"),O=w.f,P=k.f,E=x.f,A=e.Symbol,F=e.JSON,M=F&&F.stringify,R="prototype",z=f("_hidden"),T=f("toPrimitive"),I={}.propertyIsEnumerable,C=u("symbol-registry"),N=u("symbols"),W=u("op-symbols"),D=Object[R],L="function"==typeof A,K=e.QObject,q=!K||!K[R]||!K[R].findChild,B=o&&c(function(){return 7!=v(P({},"a",{get:function(){return P(this,"a",{value:7}).a}})).a})?function(t,e,r){var o=O(D,e);o&&delete D[e],P(t,e,r),o&&t!==D&&P(D,e,o)}:P,G=function(t){var e=N[t]=v(A[R]);return e._k=t,e},J=L&&"symbol"==typeof A.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof A},U=function t(e,o,n){return e===D&&U(W,o,n),b(e),o=h(o,!0),b(n),r(N,o)?(n.enumerable?(r(e,z)&&e[z][o]&&(e[z][o]=!1),n=v(n,{enumerable:y(0,!1)})):(r(e,z)||P(e,z,y(1,{})),e[z][o]=!0),B(e,o,n)):P(e,o,n)},Y=function t(e,r){b(e);for(var o=j(r=m(r)),n=0,s=o.length,i;s>n;)U(e,i=o[n++],r[i]);return e},$=function t(e,r){return void 0===r?v(e):Y(v(e),r)},Q=function t(e){var o=I.call(this,e=h(e,!0));return!(this===D&&r(N,e)&&!r(W,e))&&(!(o||!r(this,e)||!r(N,e)||r(this,z)&&this[z][e])||o)},H=function t(e,o){if(e=m(e),o=h(o,!0),e!==D||!r(N,o)||r(W,o)){var n=O(e,o);return!n||!r(N,o)||r(e,z)&&e[z][o]||(n.enumerable=!0),n}},V=function t(e){for(var o=E(m(e)),n=[],s=0,c;o.length>s;)r(N,c=o[s++])||c==z||c==i||n.push(c);return n},X=function t(e){for(var o=e===D,n=E(o?W:m(e)),s=[],i=0,c;n.length>i;)!r(N,c=n[i++])||o&&!r(D,c)||s.push(N[c]);return s};L||(A=function t(){if(this instanceof A)throw TypeError("Symbol is not a constructor!");var e=_(arguments.length>0?arguments[0]:void 0),n=function(t){this===D&&n.call(W,t),r(this,z)&&r(this[z],e)&&(this[z][e]=!1),B(this,e,y(1,t))};return o&&q&&B(D,e,{configurable:!0,set:n}),G(e)},s(A[R],"toString",function t(){return this._k}),w.f=H,k.f=U,t("./_object-gopn").f=x.f=V,t("./_object-pie").f=Q,t("./_object-gops").f=X,o&&!t("./_library")&&s(D,"propertyIsEnumerable",Q,!0),l.f=function(t){return G(f(t))}),n(n.G+n.W+n.F*!L,{Symbol:A});for(var Z="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),tt=0;Z.length>tt;)f(Z[tt++]);for(var Z=S(f.store),tt=0;Z.length>tt;)d(Z[tt++]);n(n.S+n.F*!L,"Symbol",{for:function(t){return r(C,t+="")?C[t]:C[t]=A(t)},keyFor:function t(e){if(J(e))return p(C,e);throw TypeError(e+" is not a symbol!")},useSetter:function(){q=!0},useSimple:function(){q=!1}}),n(n.S+n.F*!L,"Object",{create:$,defineProperty:U,defineProperties:Y,getOwnPropertyDescriptor:H,getOwnPropertyNames:V,getOwnPropertySymbols:X}),F&&n(n.S+n.F*(!L||c(function(){var t=A();return"[null]"!=M([t])||"{}"!=M({a:t})||"{}"!=M(Object(t))})),"JSON",{stringify:function t(e){if(void 0!==e&&!J(e)){for(var r=[e],o=1,n,s;arguments.length>o;)r.push(arguments[o++]);return n=r[1],"function"==typeof n&&(s=n),!s&&g(n)||(n=function(t,e){if(s&&(e=s.call(this,t,e)),!J(e))return e}),r[1]=n,M.apply(F,r)}}}),A[R][T]||t("./_hide")(A[R],T,A[R].valueOf),a(A,"Symbol"),a(Math,"Math",!0),a(e.JSON,"JSON",!0)}],"_global.js":function(t,e,r){var o=r.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof _&&(_=o)},"_has.js":function(t,e,r){var o={}.hasOwnProperty;r.exports=function(t,e){return o.call(t,e)}},"_descriptors.js":["./_fails",function(t,e,r){r.exports=!t("./_fails")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})}],"_fails.js":function(t,e,r){r.exports=function(t){try{return!!t()}catch(t){return!0}}},"_export.js":["./_global","./_core","./_hide","./_redefine","./_ctx",function(t,e,r){var o=t("./_global"),n=t("./_core"),s=t("./_hide"),i=t("./_redefine"),c=t("./_ctx"),u="prototype",a=function(t,e,r){var _=t&a.F,f=t&a.G,l=t&a.S,d=t&a.P,p=t&a.B,j=f?o:l?o[e]||(o[e]={}):(o[e]||{})[u],g=f?n:n[e]||(n[e]={}),b=g[u]||(g[u]={}),m,h,y,v;f&&(r=e);for(m in r)h=!_&&j&&void 0!==j[m],y=(h?j:r)[m],v=p&&h?c(y,o):d&&"function"==typeof y?c(Function.call,y):y,j&&i(j,m,y,t&a.U),g[m]!=y&&s(g,m,v),d&&b[m]!=y&&(b[m]=y)};o.core=n,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,a.U=64,a.R=128,r.exports=a}],"_core.js":function(t,e,r){var o=r.exports={version:"2.4.0"};"number"==typeof f&&(f=o)},"_hide.js":["./_object-dp","./_property-desc","./_descriptors",function(t,e,r){var o=t("./_object-dp"),n=t("./_property-desc");r.exports=t("./_descriptors")?function(t,e,r){return o.f(t,e,n(1,r))}:function(t,e,r){return t[e]=r,t}}],"_object-dp.js":["./_an-object","./_ie8-dom-define","./_to-primitive","./_descriptors",function(t,e){var r=t("./_an-object"),o=t("./_ie8-dom-define"),n=t("./_to-primitive"),s=Object.defineProperty;e.f=t("./_descriptors")?Object.defineProperty:function t(e,i,c){if(r(e),i=n(i,!0),r(c),o)try{return s(e,i,c)}catch(t){}if("get"in c||"set"in c)throw TypeError("Accessors not supported!");return"value"in c&&(e[i]=c.value),e}}],"_an-object.js":["./_is-object",function(t,e,r){var o=t("./_is-object");r.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}}],"_is-object.js":function(t,e,r){r.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},"_ie8-dom-define.js":["./_descriptors","./_fails","./_dom-create",function(t,e,r){r.exports=!t("./_descriptors")&&!t("./_fails")(function(){return 7!=Object.defineProperty(t("./_dom-create")("div"),"a",{get:function(){return 7}}).a})}],"_dom-create.js":["./_is-object","./_global",function(t,e,r){var o=t("./_is-object"),n=t("./_global").document,s=o(n)&&o(n.createElement);r.exports=function(t){return s?n.createElement(t):{}}}],"_to-primitive.js":["./_is-object",function(t,e,r){var o=t("./_is-object");r.exports=function(t,e){if(!o(t))return t;var r,n;if(e&&"function"==typeof(r=t.toString)&&!o(n=r.call(t)))return n;if("function"==typeof(r=t.valueOf)&&!o(n=r.call(t)))return n;if(!e&&"function"==typeof(r=t.toString)&&!o(n=r.call(t)))return n;throw TypeError("Can't convert object to primitive value")}}],"_property-desc.js":function(t,e,r){r.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"_redefine.js":["./_global","./_hide","./_has","./_uid","./_core",function(t,e,r){var o=t("./_global"),n=t("./_hide"),s=t("./_has"),i=t("./_uid")("src"),c="toString",u=Function[c],a=(""+u).split(c);t("./_core").inspectSource=function(t){return u.call(t)},(r.exports=function(t,e,r,c){var u="function"==typeof r;u&&(s(r,"name")||n(r,"name",e)),t[e]!==r&&(u&&(s(r,i)||n(r,i,t[e]?""+t[e]:a.join(String(e)))),t===o?t[e]=r:c?t[e]?t[e]=r:n(t,e,r):(delete t[e],n(t,e,r)))})(Function.prototype,c,function t(){return"function"==typeof this&&this[i]||u.call(this)})}],"_uid.js":function(t,e,r){var o=0,n=Math.random();r.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++o+n).toString(36))}},"_ctx.js":["./_a-function",function(t,e,r){var o=t("./_a-function");r.exports=function(t,e,r){if(o(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,o){return t.call(e,r,o)};case 3:return function(r,o,n){return t.call(e,r,o,n)}}return function(){return t.apply(e,arguments)}}}],"_a-function.js":function(t,e,r){r.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},"_meta.js":["./_uid","./_is-object","./_has","./_object-dp","./_fails",function(t,e,r){var o=t("./_uid")("meta"),n=t("./_is-object"),s=t("./_has"),i=t("./_object-dp").f,c=0,u=Object.isExtensible||function(){return!0},a=!t("./_fails")(function(){return u(Object.preventExtensions({}))}),_=function(t){i(t,o,{value:{i:"O"+ ++c,w:{}}})},f=function(t,e){if(!n(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!s(t,o)){if(!u(t))return"F";if(!e)return"E";_(t)}return t[o].i},l=function(t,e){if(!s(t,o)){if(!u(t))return!0;if(!e)return!1;_(t)}return t[o].w},d=function(t){return a&&p.NEED&&u(t)&&!s(t,o)&&_(t),t},p=r.exports={KEY:o,NEED:!1,fastKey:f,getWeak:l,onFreeze:d}}],"_shared.js":["./_global",function(t,e,r){var o=t("./_global"),n="__core-js_shared__",s=o[n]||(o[n]={});r.exports=function(t){return s[t]||(s[t]={})}}],"_set-to-string-tag.js":["./_object-dp","./_has","./_wks",function(t,e,r){var o=t("./_object-dp").f,n=t("./_has"),s=t("./_wks")("toStringTag");r.exports=function(t,e,r){t&&!n(t=r?t:t.prototype,s)&&o(t,s,{configurable:!0,value:e})}}],"_wks.js":["./_shared","./_uid","./_global",function(t,e,r){var o=t("./_shared")("wks"),n=t("./_uid"),s=t("./_global").Symbol,i="function"==typeof s,c=r.exports=function(t){return o[t]||(o[t]=i&&s[t]||(i?s:n)("Symbol."+t))};c.store=o}],"_wks-ext.js":["./_wks",function(t,e){e.f=t("./_wks")}],"_wks-define.js":["./_global","./_core","./_library","./_wks-ext","./_object-dp",function(t,e,r){var o=t("./_global"),n=t("./_core"),s=t("./_library"),i=t("./_wks-ext"),c=t("./_object-dp").f;r.exports=function(t){var e=n.Symbol||(n.Symbol=s?{}:o.Symbol||{});"_"==t.charAt(0)||t in e||c(e,t,{value:i.f(t)})}}],"_library.js":function(t,e,r){r.exports=!1},"_keyof.js":["./_object-keys","./_to-iobject",function(t,e,r){var o=t("./_object-keys"),n=t("./_to-iobject");r.exports=function(t,e){for(var r=n(t),s=o(r),i=s.length,c=0,u;i>c;)if(r[u=s[c++]]===e)return u}}],"_object-keys.js":["./_object-keys-internal","./_enum-bug-keys",function(t,e,r){var o=t("./_object-keys-internal"),n=t("./_enum-bug-keys");r.exports=Object.keys||function t(e){return o(e,n)}}],"_object-keys-internal.js":["./_has","./_to-iobject","./_array-includes","./_shared-key",function(t,e,r){var o=t("./_has"),n=t("./_to-iobject"),s=t("./_array-includes")(!1),i=t("./_shared-key")("IE_PROTO");r.exports=function(t,e){var r=n(t),c=0,u=[],a;for(a in r)a!=i&&o(r,a)&&u.push(a);for(;e.length>c;)o(r,a=e[c++])&&(~s(u,a)||u.push(a));return u}}],"_to-iobject.js":["./_iobject","./_defined",function(t,e,r){var o=t("./_iobject"),n=t("./_defined");r.exports=function(t){return o(n(t))}}],"_iobject.js":["./_cof",function(t,e,r){var o=t("./_cof");r.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}}],"_cof.js":function(t,e,r){var o={}.toString;r.exports=function(t){return o.call(t).slice(8,-1)}},"_defined.js":function(t,e,r){r.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},"_array-includes.js":["./_to-iobject","./_to-length","./_to-index",function(t,e,r){var o=t("./_to-iobject"),n=t("./_to-length"),s=t("./_to-index");r.exports=function(t){return function(e,r,i){var c=o(e),u=n(c.length),a=s(i,u),_;if(t&&r!=r){for(;u>a;)if(_=c[a++],_!=_)return!0}else for(;u>a;a++)if((t||a in c)&&c[a]===r)return t||a||0;return!t&&-1}}}],"_to-length.js":["./_to-integer",function(t,e,r){var o=t("./_to-integer"),n=Math.min;r.exports=function(t){return t>0?n(o(t),9007199254740991):0}}],"_to-integer.js":function(t,e,r){var o=Math.ceil,n=Math.floor;r.exports=function(t){return isNaN(t=+t)?0:(t>0?n:o)(t)}},"_to-index.js":["./_to-integer",function(t,e,r){var o=t("./_to-integer"),n=Math.max,s=Math.min;r.exports=function(t,e){return t=o(t),t<0?n(t+e,0):s(t,e)}}],"_shared-key.js":["./_shared","./_uid",function(t,e,r){var o=t("./_shared")("keys"),n=t("./_uid");r.exports=function(t){return o[t]||(o[t]=n(t))}}],"_enum-bug-keys.js":function(t,e,r){r.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},"_enum-keys.js":["./_object-keys","./_object-gops","./_object-pie",function(t,e,r){var o=t("./_object-keys"),n=t("./_object-gops"),s=t("./_object-pie");r.exports=function(t){var e=o(t),r=n.f;if(r)for(var i=r(t),c=s.f,u=0,a;i.length>u;)c.call(t,a=i[u++])&&e.push(a);return e}}],"_object-gops.js":function(t,e){e.f=Object.getOwnPropertySymbols},"_object-pie.js":function(t,e){e.f={}.propertyIsEnumerable},"_is-array.js":["./_cof",function(t,e,r){var o=t("./_cof");r.exports=Array.isArray||function t(e){return"Array"==o(e)}}],"_object-create.js":["./_an-object","./_object-dps","./_enum-bug-keys","./_shared-key","./_dom-create","./_html",function(t,e,r){var o=t("./_an-object"),n=t("./_object-dps"),s=t("./_enum-bug-keys"),i=t("./_shared-key")("IE_PROTO"),c=function(){},u="prototype",a=function(){var e=t("./_dom-create")("iframe"),r=s.length,o="<",n=">",i;for(e.style.display="none",t("./_html").appendChild(e),e.src="javascript:",i=e.contentWindow.document,i.open(),i.write(o+"script"+n+"document.F=Object"+o+"/script"+n),i.close(),a=i.F;r--;)delete a[u][s[r]];return a()};r.exports=Object.create||function t(e,r){var s;return null!==e?(c[u]=o(e),s=new c,c[u]=null,s[i]=e):s=a(),void 0===r?s:n(s,r)}}],"_object-dps.js":["./_object-dp","./_an-object","./_object-keys","./_descriptors",function(t,e,r){var o=t("./_object-dp"),n=t("./_an-object"),s=t("./_object-keys");r.exports=t("./_descriptors")?Object.defineProperties:function t(e,r){n(e);for(var i=s(r),c=i.length,u=0,a;c>u;)o.f(e,a=i[u++],r[a]);return e}}],"_html.js":["./_global",function(t,e,r){r.exports=t("./_global").document&&document.documentElement}],"_object-gopn-ext.js":["./_to-iobject","./_object-gopn",function(t,e,r){var o=t("./_to-iobject"),n=t("./_object-gopn").f,s={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],c=function(t){try{return n(t)}catch(t){return i.slice()}};r.exports.f=function t(e){return i&&"[object Window]"==s.call(e)?c(e):n(o(e))}}],"_object-gopn.js":["./_object-keys-internal","./_enum-bug-keys",function(t,e){var r=t("./_object-keys-internal"),o=t("./_enum-bug-keys").concat("length","prototype");e.f=Object.getOwnPropertyNames||function t(e){return r(e,o)}}],"_object-gopd.js":["./_object-pie","./_property-desc","./_to-iobject","./_to-primitive","./_has","./_ie8-dom-define","./_descriptors",function(t,e){var r=t("./_object-pie"),o=t("./_property-desc"),n=t("./_to-iobject"),s=t("./_to-primitive"),i=t("./_has"),c=t("./_ie8-dom-define"),u=Object.getOwnPropertyDescriptor;e.f=t("./_descriptors")?u:function t(e,a){if(e=n(e),a=s(a,!0),c)try{return u(e,a)}catch(t){}if(i(e,a))return o(!r.f.call(e,a),e[a])}}],"es6.object.create.js":["./_export","./_object-create",function(t){var e=t("./_export");e(e.S,"Object",{create:t("./_object-create")})}],"es6.object.define-property.js":["./_export","./_descriptors","./_object-dp",function(t){var e=t("./_export");e(e.S+e.F*!t("./_descriptors"),"Object",{defineProperty:t("./_object-dp").f})}],"es6.object.define-properties.js":["./_export","./_descriptors","./_object-dps",function(t){var e=t("./_export");e(e.S+e.F*!t("./_descriptors"),"Object",{defineProperties:t("./_object-dps")})}],"es6.object.get-own-property-descriptor.js":["./_to-iobject","./_object-gopd","./_object-sap",function(t){var e=t("./_to-iobject"),r=t("./_object-gopd").f;t("./_object-sap")("getOwnPropertyDescriptor",function(){return function t(o,n){return r(e(o),n)}})}],"_object-sap.js":["./_export","./_core","./_fails",function(t,e,r){var o=t("./_export"),n=t("./_core"),s=t("./_fails");r.exports=function(t,e){var r=(n.Object||{})[t]||Object[t],i={};i[t]=e(r),o(o.S+o.F*s(function(){r(1)}),"Object",i)}}],"es6.object.get-prototype-of.js":["./_to-object","./_object-gpo","./_object-sap",function(t){var e=t("./_to-object"),r=t("./_object-gpo");t("./_object-sap")("getPrototypeOf",function(){return function t(o){return r(e(o))}})}],"_to-object.js":["./_defined",function(t,e,r){var o=t("./_defined");r.exports=function(t){return Object(o(t))}}],"_object-gpo.js":["./_has","./_to-object","./_shared-key",function(t,e,r){var o=t("./_has"),n=t("./_to-object"),s=t("./_shared-key")("IE_PROTO"),i=Object.prototype;r.exports=Object.getPrototypeOf||function(t){return t=n(t),o(t,s)?t[s]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?i:null}}],"es6.object.keys.js":["./_to-object","./_object-keys","./_object-sap",function(t){var e=t("./_to-object"),r=t("./_object-keys");t("./_object-sap")("keys",function(){return function t(o){return r(e(o))}})}],"es6.object.get-own-property-names.js":["./_object-sap","./_object-gopn-ext",function(t){t("./_object-sap")("getOwnPropertyNames",function(){return t("./_object-gopn-ext").f})}],"es6.object.freeze.js":["./_is-object","./_meta","./_object-sap",function(t){var e=t("./_is-object"),r=t("./_meta").onFreeze;t("./_object-sap")("freeze",function(t){return function o(n){return t&&e(n)?t(r(n)):n}})}],"es6.object.seal.js":["./_is-object","./_meta","./_object-sap",function(t){var e=t("./_is-object"),r=t("./_meta").onFreeze;t("./_object-sap")("seal",function(t){return function o(n){return t&&e(n)?t(r(n)):n}})}],"es6.object.prevent-extensions.js":["./_is-object","./_meta","./_object-sap",function(t){var e=t("./_is-object"),r=t("./_meta").onFreeze;t("./_object-sap")("preventExtensions",function(t){return function o(n){return t&&e(n)?t(r(n)):n}})}],"es6.object.is-frozen.js":["./_is-object","./_object-sap",function(t){var e=t("./_is-object");t("./_object-sap")("isFrozen",function(t){return function r(o){return!e(o)||!!t&&t(o)}})}],"es6.object.is-sealed.js":["./_is-object","./_object-sap",function(t){var e=t("./_is-object");t("./_object-sap")("isSealed",function(t){return function r(o){return!e(o)||!!t&&t(o)}})}],"es6.object.is-extensible.js":["./_is-object","./_object-sap",function(t){var e=t("./_is-object");t("./_object-sap")("isExtensible",function(t){return function r(o){return!!e(o)&&(!t||t(o))}})}],"es6.object.assign.js":["./_export","./_object-assign",function(t){var e=t("./_export");e(e.S+e.F,"Object",{assign:t("./_object-assign")})}],"_object-assign.js":["./_object-keys","./_object-gops","./_object-pie","./_to-object","./_iobject","./_fails",function(t,e,r){"use strict";var o=t("./_object-keys"),n=t("./_object-gops"),s=t("./_object-pie"),i=t("./_to-object"),u=t("./_iobject"),a=Object.assign;r.exports=!a||t("./_fails")(function(){var t={},e={},r=c(),o="abcdefghijklmnopqrst";return t[r]=7,o.split("").forEach(function(t){e[t]=t}),7!=a({},t)[r]||Object.keys(a({},e)).join("")!=o})?function t(e,r){for(var c=i(e),a=arguments.length,_=1,f=n.f,l=s.f;a>_;)for(var d=u(arguments[_++]),p=f?o(d).concat(f(d)):o(d),j=p.length,g=0,b;j>g;)l.call(d,b=p[g++])&&(c[b]=d[b]);return c}:a}],"es6.object.is.js":["./_export","./_same-value",function(t){var e=t("./_export");e(e.S,"Object",{is:t("./_same-value")})}],"_same-value.js":function(t,e,r){r.exports=Object.is||function t(e,r){return e===r?0!==e||1/e===1/r:e!=e&&r!=r}},"es6.object.set-prototype-of.js":["./_export","./_set-proto",function(t){var e=t("./_export");e(e.S,"Object",{setPrototypeOf:t("./_set-proto").set})}],"_set-proto.js":["./_is-object","./_an-object","./_ctx","./_object-gopd",function(t,e,r){var o=t("./_is-object"),n=t("./_an-object"),s=function(t,e){if(n(t),!o(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};r.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,r,o){try{o=t("./_ctx")(Function.call,t("./_object-gopd").f(Object.prototype,"__proto__").set,2),o(e,[]),r=!(e instanceof Array)}catch(t){r=!0}return function t(e,n){return s(e,n),r?e.__proto__=n:o(e,n),e}}({},!1):void 0),check:s}}],"es6.object.to-string.js":["./_classof","./_wks","./_redefine",function(t){"use strict";var e=t("./_classof"),r={};r[t("./_wks")("toStringTag")]="z",r+""!="[object z]"&&t("./_redefine")(Object.prototype,"toString",function t(){return"[object "+e(this)+"]"},!0)}],"_classof.js":["./_cof","./_wks",function(t,e,r){var o=t("./_cof"),n=t("./_wks")("toStringTag"),s="Arguments"==o(function(){return arguments}()),i=function(t,e){try{return t[e]}catch(t){}};r.exports=function(t){var e,r,c;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=i(e=Object(t),n))?r:s?o(e):"Object"==(c=o(e))&&"function"==typeof e.callee?"Arguments":c}}],"es6.string.iterator.js":["./_string-at","./_iter-define",function(t){"use strict";var e=t("./_string-at")(!0);t("./_iter-define")(String,"String",function(t){this._t=String(t),this._i=0},function(){var t=this._t,r=this._i,o;return r>=t.length?{value:void 0,done:!0}:(o=e(t,r),this._i+=o.length,{value:o,done:!1})})}],"_string-at.js":["./_to-integer","./_defined",function(t,e,r){var o=t("./_to-integer"),n=t("./_defined");r.exports=function(t){return function(e,r){var s=String(n(e)),i=o(r),c=s.length,u,a;return i<0||i>=c?t?"":void 0:(u=s.charCodeAt(i),u<55296||u>56319||i+1===c||(a=s.charCodeAt(i+1))<56320||a>57343?t?s.charAt(i):u:t?s.slice(i,i+2):(u-55296<<10)+(a-56320)+65536)}}}],"_iter-define.js":["./_library","./_export","./_redefine","./_hide","./_has","./_iterators","./_iter-create","./_set-to-string-tag","./_object-gpo","./_wks",function(t,e,r){"use strict";var o=t("./_library"),n=t("./_export"),s=t("./_redefine"),i=t("./_hide"),c=t("./_has"),u=t("./_iterators"),a=t("./_iter-create"),_=t("./_set-to-string-tag"),f=t("./_object-gpo"),l=t("./_wks")("iterator"),d=!([].keys&&"next"in[].keys()),p="@@iterator",j="keys",g="values",b=function(){return this};r.exports=function(t,e,r,m,h,y,v){a(r,e,m);var x=function(t){if(!d&&t in O)return O[t];switch(t){case j:return function e(){return new r(this,t)};case g:return function e(){return new r(this,t)}}return function e(){return new r(this,t)}},w=e+" Iterator",k=h==g,S=!1,O=t.prototype,P=O[l]||O[p]||h&&O[h],E=P||x(h),A=h?k?x("entries"):E:void 0,F="Array"==e?O.entries||P:P,M,R,z;if(F&&(z=f(F.call(new t)),z!==Object.prototype&&(_(z,w,!0),o||c(z,l)||i(z,l,b))),k&&P&&P.name!==g&&(S=!0,E=function t(){return P.call(this)}),o&&!v||!d&&!S&&O[l]||i(O,l,E),u[e]=E,u[w]=b,h)if(M={values:k?E:x(g),keys:y?E:x(j),entries:A},v)for(R in M)R in O||s(O,R,M[R]);else n(n.P+n.F*(d||S),e,M);return M}}],"_iterators.js":function(t,e,r){r.exports={}},"_iter-create.js":["./_object-create","./_property-desc","./_set-to-string-tag","./_hide","./_wks",function(t,e,r){"use strict";var o=t("./_object-create"),n=t("./_property-desc"),s=t("./_set-to-string-tag"),i={};t("./_hide")(i,t("./_wks")("iterator"),function(){return this}),r.exports=function(t,e,r){t.prototype=o(i,{next:n(1,r)}),s(t,e+" Iterator")}}],"es6.array.is-array.js":["./_export","./_is-array",function(t){var e=t("./_export");e(e.S,"Array",{isArray:t("./_is-array")})}],"es6.array.from.js":["./_ctx","./_export","./_to-object","./_iter-call","./_is-array-iter","./_to-length","./_create-property","./core.get-iterator-method","./_iter-detect",function(t){"use strict";var e=t("./_ctx"),r=t("./_export"),o=t("./_to-object"),n=t("./_iter-call"),s=t("./_is-array-iter"),i=t("./_to-length"),c=t("./_create-property"),u=t("./core.get-iterator-method");r(r.S+r.F*!t("./_iter-detect")(function(t){Array.from(t)}),"Array",{from:function t(r){var a=o(r),_="function"==typeof this?this:Array,f=arguments.length,l=f>1?arguments[1]:void 0,d=void 0!==l,p=0,j=u(a),g,b,m,h;if(d&&(l=e(l,f>2?arguments[2]:void 0,2)),void 0==j||_==Array&&s(j))for(g=i(a.length),b=new _(g);g>p;p++)c(b,p,d?l(a[p],p):a[p]);else for(h=j.call(a),b=new _;!(m=h.next()).done;p++)c(b,p,d?n(h,l,[m.value,p],!0):m.value);return b.length=p,b}})}],"_iter-call.js":["./_an-object",function(t,e,r){var o=t("./_an-object");r.exports=function(t,e,r,n){try{return n?e(o(r)[0],r[1]):e(r)}catch(e){var s=t.return;throw void 0!==s&&o(s.call(t)),e}}}],"_is-array-iter.js":["./_iterators","./_wks",function(t,e,r){var o=t("./_iterators"),n=t("./_wks")("iterator"),s=Array.prototype;r.exports=function(t){return void 0!==t&&(o.Array===t||s[n]===t)}}],"_create-property.js":["./_object-dp","./_property-desc",function(t,e,r){"use strict";var o=t("./_object-dp"),n=t("./_property-desc");r.exports=function(t,e,r){e in t?o.f(t,e,n(0,r)):t[e]=r}}],"core.get-iterator-method.js":["./_classof","./_wks","./_iterators","./_core",function(t,e,r){var o=t("./_classof"),n=t("./_wks")("iterator"),s=t("./_iterators");r.exports=t("./_core").getIteratorMethod=function(t){if(void 0!=t)return t[n]||t["@@iterator"]||s[o(t)]}}],"_iter-detect.js":["./_wks",function(t,e,r){
var o=t("./_wks")("iterator"),n=!1;try{var s=[7][o]();s.return=function(){n=!0},Array.from(s,function(){throw 2})}catch(t){}r.exports=function(t,e){if(!e&&!n)return!1;var r=!1;try{var s=[7],i=s[o]();i.next=function(){return{done:r=!0}},s[o]=function(){return i},t(s)}catch(t){}return r}}],"es6.array.of.js":["./_export","./_create-property","./_fails",function(t){"use strict";var e=t("./_export"),r=t("./_create-property");e(e.S+e.F*t("./_fails")(function(){function t(){}return!(Array.of.call(t)instanceof t)}),"Array",{of:function t(){for(var e=0,o=arguments.length,n=new("function"==typeof this?this:Array)(o);o>e;)r(n,e,arguments[e++]);return n.length=o,n}})}],"es6.array.join.js":["./_export","./_to-iobject","./_iobject","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_to-iobject"),o=[].join;e(e.P+e.F*(t("./_iobject")!=Object||!t("./_strict-method")(o)),"Array",{join:function t(e){return o.call(r(this),void 0===e?",":e)}})}],"_strict-method.js":["./_fails",function(t,e,r){var o=t("./_fails");r.exports=function(t,e){return!!t&&o(function(){e?t.call(null,function(){},1):t.call(null)})}}],"es6.array.slice.js":["./_export","./_html","./_cof","./_to-index","./_to-length","./_fails",function(t){"use strict";var e=t("./_export"),r=t("./_html"),o=t("./_cof"),n=t("./_to-index"),s=t("./_to-length"),i=[].slice;e(e.P+e.F*t("./_fails")(function(){r&&i.call(r)}),"Array",{slice:function t(e,r){var c=s(this.length),u=o(this);if(r=void 0===r?c:r,"Array"==u)return i.call(this,e,r);for(var a=n(e,c),_=n(r,c),f=s(_-a),l=Array(f),d=0;d<f;d++)l[d]="String"==u?this.charAt(a+d):this[a+d];return l}})}],"es6.array.sort.js":["./_export","./_a-function","./_to-object","./_fails","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_a-function"),o=t("./_to-object"),n=t("./_fails"),s=[].sort,i=[1,2,3];e(e.P+e.F*(n(function(){i.sort(void 0)})||!n(function(){i.sort(null)})||!t("./_strict-method")(s)),"Array",{sort:function t(e){return void 0===e?s.call(o(this)):s.call(o(this),r(e))}})}],"es6.array.for-each.js":["./_export","./_array-methods","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(0),o=t("./_strict-method")([].forEach,!0);e(e.P+e.F*!o,"Array",{forEach:function t(e){return r(this,e,arguments[1])}})}],"_array-methods.js":["./_ctx","./_iobject","./_to-object","./_to-length","./_array-species-create",function(t,e,r){var o=t("./_ctx"),n=t("./_iobject"),s=t("./_to-object"),i=t("./_to-length"),c=t("./_array-species-create");r.exports=function(t,e){var r=1==t,u=2==t,a=3==t,_=4==t,f=6==t,l=5==t||f,d=e||c;return function(e,c,p){for(var j=s(e),g=n(j),b=o(c,p,3),m=i(g.length),h=0,y=r?d(e,m):u?d(e,0):void 0,v,x;m>h;h++)if((l||h in g)&&(v=g[h],x=b(v,h,j),t))if(r)y[h]=x;else if(x)switch(t){case 3:return!0;case 5:return v;case 6:return h;case 2:y.push(v)}else if(_)return!1;return f?-1:a||_?_:y}}}],"_array-species-create.js":["./_array-species-constructor",function(t,e,r){var o=t("./_array-species-constructor");r.exports=function(t,e){return new(o(t))(e)}}],"_array-species-constructor.js":["./_is-object","./_is-array","./_wks",function(t,e,r){var o=t("./_is-object"),n=t("./_is-array"),s=t("./_wks")("species");r.exports=function(t){var e;return n(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!n(e.prototype)||(e=void 0),o(e)&&(e=e[s],null===e&&(e=void 0))),void 0===e?Array:e}}],"es6.array.map.js":["./_export","./_array-methods","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(1);e(e.P+e.F*!t("./_strict-method")([].map,!0),"Array",{map:function t(e){return r(this,e,arguments[1])}})}],"es6.array.filter.js":["./_export","./_array-methods","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(2);e(e.P+e.F*!t("./_strict-method")([].filter,!0),"Array",{filter:function t(e){return r(this,e,arguments[1])}})}],"es6.array.some.js":["./_export","./_array-methods","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(3);e(e.P+e.F*!t("./_strict-method")([].some,!0),"Array",{some:function t(e){return r(this,e,arguments[1])}})}],"es6.array.every.js":["./_export","./_array-methods","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(4);e(e.P+e.F*!t("./_strict-method")([].every,!0),"Array",{every:function t(e){return r(this,e,arguments[1])}})}],"es6.array.reduce.js":["./_export","./_array-reduce","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-reduce");e(e.P+e.F*!t("./_strict-method")([].reduce,!0),"Array",{reduce:function t(e){return r(this,e,arguments.length,arguments[1],!1)}})}],"_array-reduce.js":["./_a-function","./_to-object","./_iobject","./_to-length",function(t,e,r){var o=t("./_a-function"),n=t("./_to-object"),s=t("./_iobject"),i=t("./_to-length");r.exports=function(t,e,r,c,u){o(e);var a=n(t),_=s(a),f=i(a.length),l=u?f-1:0,d=u?-1:1;if(r<2)for(;;){if(l in _){c=_[l],l+=d;break}if(l+=d,u?l<0:f<=l)throw TypeError("Reduce of empty array with no initial value")}for(;u?l>=0:f>l;l+=d)l in _&&(c=e(c,_[l],l,a));return c}}],"es6.array.reduce-right.js":["./_export","./_array-reduce","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-reduce");e(e.P+e.F*!t("./_strict-method")([].reduceRight,!0),"Array",{reduceRight:function t(e){return r(this,e,arguments.length,arguments[1],!0)}})}],"es6.array.index-of.js":["./_export","./_array-includes","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_array-includes")(!1),o=[].indexOf,n=!!o&&1/[1].indexOf(1,-0)<0;e(e.P+e.F*(n||!t("./_strict-method")(o)),"Array",{indexOf:function t(e){return n?o.apply(this,arguments)||0:r(this,e,arguments[1])}})}],"es6.array.last-index-of.js":["./_export","./_to-iobject","./_to-integer","./_to-length","./_strict-method",function(t){"use strict";var e=t("./_export"),r=t("./_to-iobject"),o=t("./_to-integer"),n=t("./_to-length"),s=[].lastIndexOf,i=!!s&&1/[1].lastIndexOf(1,-0)<0;e(e.P+e.F*(i||!t("./_strict-method")(s)),"Array",{lastIndexOf:function t(e){if(i)return s.apply(this,arguments)||0;var c=r(this),u=n(c.length),a=u-1;for(arguments.length>1&&(a=Math.min(a,o(arguments[1]))),a<0&&(a=u+a);a>=0;a--)if(a in c&&c[a]===e)return a||0;return-1}})}],"es6.array.copy-within.js":["./_export","./_array-copy-within","./_add-to-unscopables",function(t){var e=t("./_export");e(e.P,"Array",{copyWithin:t("./_array-copy-within")}),t("./_add-to-unscopables")("copyWithin")}],"_array-copy-within.js":["./_to-object","./_to-index","./_to-length",function(t,e,r){"use strict";var o=t("./_to-object"),n=t("./_to-index"),s=t("./_to-length");r.exports=[].copyWithin||function t(e,r){var i=o(this),c=s(i.length),u=n(e,c),a=n(r,c),_=arguments.length>2?arguments[2]:void 0,f=Math.min((void 0===_?c:n(_,c))-a,c-u),l=1;for(a<u&&u<a+f&&(l=-1,a+=f-1,u+=f-1);f-- >0;)a in i?i[u]=i[a]:delete i[u],u+=l,a+=l;return i}}],"_add-to-unscopables.js":["./_wks","./_hide",function(t,e,r){var o=t("./_wks")("unscopables"),n=Array.prototype;void 0==n[o]&&t("./_hide")(n,o,{}),r.exports=function(t){n[o][t]=!0}}],"es6.array.fill.js":["./_export","./_array-fill","./_add-to-unscopables",function(t){var e=t("./_export");e(e.P,"Array",{fill:t("./_array-fill")}),t("./_add-to-unscopables")("fill")}],"_array-fill.js":["./_to-object","./_to-index","./_to-length",function(t,e,r){"use strict";var o=t("./_to-object"),n=t("./_to-index"),s=t("./_to-length");r.exports=function t(e){for(var r=o(this),i=s(r.length),c=arguments.length,u=n(c>1?arguments[1]:void 0,i),a=c>2?arguments[2]:void 0,_=void 0===a?i:n(a,i);_>u;)r[u++]=e;return r}}],"es6.array.find.js":["./_export","./_array-methods","./_add-to-unscopables",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(5),o="find",n=!0;o in[]&&Array(1)[o](function(){n=!1}),e(e.P+e.F*n,"Array",{find:function t(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}}),t("./_add-to-unscopables")(o)}],"es6.array.find-index.js":["./_export","./_array-methods","./_add-to-unscopables",function(t){"use strict";var e=t("./_export"),r=t("./_array-methods")(6),o="findIndex",n=!0;o in[]&&Array(1)[o](function(){n=!1}),e(e.P+e.F*n,"Array",{findIndex:function t(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}}),t("./_add-to-unscopables")(o)}],"es6.array.species.js":["./_set-species",function(t){t("./_set-species")("Array")}],"_set-species.js":["./_global","./_object-dp","./_descriptors","./_wks",function(t,e,r){"use strict";var o=t("./_global"),n=t("./_object-dp"),s=t("./_descriptors"),i=t("./_wks")("species");r.exports=function(t){var e=o[t];s&&e&&!e[i]&&n.f(e,i,{configurable:!0,get:function(){return this}})}}],"es6.array.iterator.js":["./_add-to-unscopables","./_iter-step","./_iterators","./_to-iobject","./_iter-define",function(t,e,r){"use strict";var o=t("./_add-to-unscopables"),n=t("./_iter-step"),s=t("./_iterators"),i=t("./_to-iobject");r.exports=t("./_iter-define")(Array,"Array",function(t,e){this._t=i(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,n(1)):"keys"==e?n(0,r):"values"==e?n(0,t[r]):n(0,[r,t[r]])},"values"),s.Arguments=s.Array,o("keys"),o("values"),o("entries")}],"_iter-step.js":function(t,e,r){r.exports=function(t,e){return{value:e,done:!!t}}},"es6.string.from-code-point.js":["./_export","./_to-index",function(t){var e=t("./_export"),r=t("./_to-index"),o=String.fromCharCode,n=String.fromCodePoint;e(e.S+e.F*(!!n&&1!=n.length),"String",{fromCodePoint:function t(e){for(var n=[],s=arguments.length,i=0,c;s>i;){if(c=+arguments[i++],r(c,1114111)!==c)throw RangeError(c+" is not a valid code point");n.push(c<65536?o(c):o(((c-=65536)>>10)+55296,c%1024+56320))}return n.join("")}})}],"es6.string.raw.js":["./_export","./_to-iobject","./_to-length",function(t){var e=t("./_export"),r=t("./_to-iobject"),o=t("./_to-length");e(e.S,"String",{raw:function t(e){for(var n=r(e.raw),s=o(n.length),i=arguments.length,c=[],u=0;s>u;)c.push(String(n[u++])),u<i&&c.push(String(arguments[u]));return c.join("")}})}],"es6.string.trim.js":["./_string-trim",function(t){"use strict";t("./_string-trim")("trim",function(t){return function e(){return t(this,3)}})}],"_string-trim.js":["./_export","./_defined","./_fails","./_string-ws",function(t,e,r){var o=t("./_export"),n=t("./_defined"),s=t("./_fails"),i=t("./_string-ws"),c="["+i+"]",u="…",a=RegExp("^"+c+c+"*"),_=RegExp(c+c+"*$"),f=function(t,e,r){var n={},c=s(function(){return!!i[t]()||u[t]()!=u}),a=n[t]=c?e(l):i[t];r&&(n[r]=a),o(o.P+o.F*c,"String",n)},l=f.trim=function(t,e){return t=String(n(t)),1&e&&(t=t.replace(a,"")),2&e&&(t=t.replace(_,"")),t};r.exports=f}],"_string-ws.js":function(t,e,r){r.exports="\t\n\v\f\r    \u2028\u2029\ufeff"},"es6.string.code-point-at.js":["./_export","./_string-at",function(t){"use strict";var e=t("./_export"),r=t("./_string-at")(!1);e(e.P,"String",{codePointAt:function t(e){return r(this,e)}})}],"es6.string.ends-with.js":["./_export","./_to-length","./_string-context","./_fails-is-regexp",function(t){"use strict";var e=t("./_export"),r=t("./_to-length"),o=t("./_string-context"),n="endsWith",s=""[n];e(e.P+e.F*t("./_fails-is-regexp")(n),"String",{endsWith:function t(e){var i=o(this,e,n),c=arguments.length>1?arguments[1]:void 0,u=r(i.length),a=void 0===c?u:Math.min(r(c),u),_=String(e);return s?s.call(i,_,a):i.slice(a-_.length,a)===_}})}],"_string-context.js":["./_is-regexp","./_defined",function(t,e,r){var o=t("./_is-regexp"),n=t("./_defined");r.exports=function(t,e,r){if(o(e))throw TypeError("String#"+r+" doesn't accept regex!");return String(n(t))}}],"_is-regexp.js":["./_is-object","./_cof","./_wks",function(t,e,r){var o=t("./_is-object"),n=t("./_cof"),s=t("./_wks")("match");r.exports=function(t){var e;return o(t)&&(void 0!==(e=t[s])?!!e:"RegExp"==n(t))}}],"_fails-is-regexp.js":["./_wks",function(t,e,r){var o=t("./_wks")("match");r.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[o]=!1,!"/./"[t](e)}catch(t){}}return!0}}],"es6.string.includes.js":["./_export","./_string-context","./_fails-is-regexp",function(t){"use strict";var e=t("./_export"),r=t("./_string-context"),o="includes";e(e.P+e.F*t("./_fails-is-regexp")(o),"String",{includes:function t(e){return!!~r(this,e,o).indexOf(e,arguments.length>1?arguments[1]:void 0)}})}],"es6.string.repeat.js":["./_export","./_string-repeat",function(t){var e=t("./_export");e(e.P,"String",{repeat:t("./_string-repeat")})}],"_string-repeat.js":["./_to-integer","./_defined",function(t,e,r){"use strict";var o=t("./_to-integer"),n=t("./_defined");r.exports=function t(e){var r=String(n(this)),s="",i=o(e);if(i<0||i==1/0)throw RangeError("Count can't be negative");for(;i>0;(i>>>=1)&&(r+=r))1&i&&(s+=r);return s}}],"es6.string.starts-with.js":["./_export","./_to-length","./_string-context","./_fails-is-regexp",function(t){"use strict";var e=t("./_export"),r=t("./_to-length"),o=t("./_string-context"),n="startsWith",s=""[n];e(e.P+e.F*t("./_fails-is-regexp")(n),"String",{startsWith:function t(e){var i=o(this,e,n),c=r(Math.min(arguments.length>1?arguments[1]:void 0,i.length)),u=String(e);return s?s.call(i,u,c):i.slice(c,c+u.length)===u}})}],"es6.string.anchor.js":["./_string-html",function(t){"use strict";t("./_string-html")("anchor",function(t){return function e(r){return t(this,"a","name",r)}})}],"_string-html.js":["./_export","./_fails","./_defined",function(t,e,r){var o=t("./_export"),n=t("./_fails"),s=t("./_defined"),i=/"/g,c=function(t,e,r,o){var n=String(s(t)),c="<"+e;return""!==r&&(c+=" "+r+'="'+String(o).replace(i,"&quot;")+'"'),c+">"+n+"</"+e+">"};r.exports=function(t,e){var r={};r[t]=e(c),o(o.P+o.F*n(function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}),"String",r)}}],"es6.string.big.js":["./_string-html",function(t){"use strict";t("./_string-html")("big",function(t){return function e(){return t(this,"big","","")}})}],"es6.string.blink.js":["./_string-html",function(t){"use strict";t("./_string-html")("blink",function(t){return function e(){return t(this,"blink","","")}})}],"es6.string.bold.js":["./_string-html",function(t){"use strict";t("./_string-html")("bold",function(t){return function e(){return t(this,"b","","")}})}],"es6.string.fixed.js":["./_string-html",function(t){"use strict";t("./_string-html")("fixed",function(t){return function e(){return t(this,"tt","","")}})}],"es6.string.fontcolor.js":["./_string-html",function(t){"use strict";t("./_string-html")("fontcolor",function(t){return function e(r){return t(this,"font","color",r)}})}],"es6.string.fontsize.js":["./_string-html",function(t){"use strict";t("./_string-html")("fontsize",function(t){return function e(r){return t(this,"font","size",r)}})}],"es6.string.italics.js":["./_string-html",function(t){"use strict";t("./_string-html")("italics",function(t){return function e(){return t(this,"i","","")}})}],"es6.string.link.js":["./_string-html",function(t){"use strict";t("./_string-html")("link",function(t){return function e(r){return t(this,"a","href",r)}})}],"es6.string.small.js":["./_string-html",function(t){"use strict";t("./_string-html")("small",function(t){return function e(){return t(this,"small","","")}})}],"es6.string.strike.js":["./_string-html",function(t){"use strict";t("./_string-html")("strike",function(t){return function e(){return t(this,"strike","","")}})}],"es6.string.sub.js":["./_string-html",function(t){"use strict";t("./_string-html")("sub",function(t){return function e(){return t(this,"sub","","")}})}],"es6.string.sup.js":["./_string-html",function(t){"use strict";t("./_string-html")("sup",function(t){return function e(){return t(this,"sup","","")}})}],"es6.regexp.match.js":["./_fix-re-wks",function(t){t("./_fix-re-wks")("match",1,function(t,e,r){return[function r(o){"use strict";var n=t(this),s=void 0==o?void 0:o[e];return void 0!==s?s.call(o,n):new RegExp(o)[e](String(n))},r]})}],"_fix-re-wks.js":["./_hide","./_redefine","./_fails","./_defined","./_wks",function(t,e,r){"use strict";var o=t("./_hide"),n=t("./_redefine"),s=t("./_fails"),i=t("./_defined"),c=t("./_wks");r.exports=function(t,e,r){var u=c(t),a=r(i,u,""[t]),_=a[0],f=a[1];s(function(){var e={};return e[u]=function(){return 7},7!=""[t](e)})&&(n(String.prototype,t,_),o(RegExp.prototype,u,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)}))}}],"es6.regexp.replace.js":["./_fix-re-wks",function(t){t("./_fix-re-wks")("replace",2,function(t,e,r){return[function o(n,s){"use strict";var i=t(this),c=void 0==n?void 0:n[e];return void 0!==c?c.call(n,i,s):r.call(String(i),n,s)},r]})}],"es6.regexp.search.js":["./_fix-re-wks",function(t){t("./_fix-re-wks")("search",1,function(t,e,r){return[function r(o){"use strict";var n=t(this),s=void 0==o?void 0:o[e];return void 0!==s?s.call(o,n):new RegExp(o)[e](String(n))},r]})}],"es6.regexp.split.js":["./_fix-re-wks","./_is-regexp",function(t){t("./_fix-re-wks")("split",2,function(e,r,o){"use strict";var n=t("./_is-regexp"),s=o,i=[].push,c="split",u="length",a="lastIndex";if("c"=="abbc"[c](/(b)*/)[1]||4!="test"[c](/(?:)/,-1)[u]||2!="ab"[c](/(?:ab)*/)[u]||4!="."[c](/(.?)(.?)/)[u]||"."[c](/()()/)[u]>1||""[c](/.?/)[u]){var _=void 0===/()??/.exec("")[1];o=function(t,e){var r=String(this);if(void 0===t&&0===e)return[];if(!n(t))return s.call(r,t,e);var o=[],c=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),f=0,l=void 0===e?4294967295:e>>>0,d=new RegExp(t.source,c+"g"),p,j,g,b,m;for(_||(p=new RegExp("^"+d.source+"$(?!\\s)",c));(j=d.exec(r))&&(g=j.index+j[0][u],!(g>f&&(o.push(r.slice(f,j.index)),!_&&j[u]>1&&j[0].replace(p,function(){for(m=1;m<arguments[u]-2;m++)void 0===arguments[m]&&(j[m]=void 0)}),j[u]>1&&j.index<r[u]&&i.apply(o,j.slice(1)),b=j[0][u],f=g,o[u]>=l)));)d[a]===j.index&&d[a]++;return f===r[u]?!b&&d.test("")||o.push(""):o.push(r.slice(f)),o[u]>l?o.slice(0,l):o}}else"0"[c](void 0,0)[u]&&(o=function(t,e){return void 0===t&&0===e?[]:s.call(this,t,e)});return[function t(n,s){var i=e(this),c=void 0==n?void 0:n[r];return void 0!==c?c.call(n,i,s):o.call(String(i),n,s)},o]})}],"es6.function.bind.js":["./_export","./_bind",function(t){var e=t("./_export");e(e.P,"Function",{bind:t("./_bind")})}],"_bind.js":["./_a-function","./_is-object","./_invoke",function(t,e,r){"use strict";var o=t("./_a-function"),n=t("./_is-object"),s=t("./_invoke"),i=[].slice,c={},u=function(t,e,r){if(!(e in c)){for(var o=[],n=0;n<e;n++)o[n]="a["+n+"]";c[e]=Function("F,a","return new F("+o.join(",")+")")}return c[e](t,r)};r.exports=Function.bind||function t(e){var r=o(this),c=i.call(arguments,1),a=function(){var t=c.concat(i.call(arguments));return this instanceof a?u(r,t.length,t):s(r,t,e)};return n(r.prototype)&&(a.prototype=r.prototype),a}}],"_invoke.js":function(t,e,r){r.exports=function(t,e,r){var o=void 0===r;switch(e.length){case 0:return o?t():t.call(r);case 1:return o?t(e[0]):t.call(r,e[0]);case 2:return o?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return o?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return o?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},"es6.function.name.js":["./_object-dp","./_property-desc","./_has","./_descriptors",function(t){var e=t("./_object-dp").f,r=t("./_property-desc"),o=t("./_has"),n=Function.prototype,s=/^\s*function ([^ (]*)/,i="name",c=Object.isExtensible||function(){return!0};i in n||t("./_descriptors")&&e(n,i,{configurable:!0,get:function(){try{var t=this,n=(""+t).match(s)[1];return o(t,i)||!c(t)||e(t,i,r(5,n)),n}catch(t){return""}}})}],"es6.function.has-instance.js":["./_is-object","./_object-gpo","./_wks","./_object-dp",function(t){"use strict";var e=t("./_is-object"),r=t("./_object-gpo"),o=t("./_wks")("hasInstance"),n=Function.prototype;o in n||t("./_object-dp").f(n,o,{value:function(t){if("function"!=typeof this||!e(t))return!1;if(!e(this.prototype))return t instanceof this;for(;t=r(t);)if(this.prototype===t)return!0;return!1}})}],"es7.array.includes.js":["./_export","./_array-includes","./_add-to-unscopables",function(t){"use strict";var e=t("./_export"),r=t("./_array-includes")(!0);e(e.P,"Array",{includes:function t(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}}),t("./_add-to-unscopables")("includes")}],"es7.object.values.js":["./_export","./_object-to-array",function(t){var e=t("./_export"),r=t("./_object-to-array")(!1);e(e.S,"Object",{values:function t(e){return r(e)}})}],"_object-to-array.js":["./_object-keys","./_to-iobject","./_object-pie",function(t,e,r){var o=t("./_object-keys"),n=t("./_to-iobject"),s=t("./_object-pie").f;r.exports=function(t){return function(e){for(var r=n(e),i=o(r),c=i.length,u=0,a=[],_;c>u;)s.call(r,_=i[u++])&&a.push(t?[_,r[_]]:r[_]);return a}}}],"es7.object.entries.js":["./_export","./_object-to-array",function(t){var e=t("./_export"),r=t("./_object-to-array")(!0);e(e.S,"Object",{entries:function t(e){return r(e)}})}],"es7.object.get-own-property-descriptors.js":["./_export","./_own-keys","./_to-iobject","./_object-gopd","./_create-property",function(t){var e=t("./_export"),r=t("./_own-keys"),o=t("./_to-iobject"),n=t("./_object-gopd"),s=t("./_create-property");e(e.S,"Object",{getOwnPropertyDescriptors:function t(e){for(var i=o(e),c=n.f,u=r(i),a={},_=0,f;u.length>_;)s(a,f=u[_++],c(i,f));return a}})}],"_own-keys.js":["./_object-gopn","./_object-gops","./_an-object","./_global",function(t,e,r){var o=t("./_object-gopn"),n=t("./_object-gops"),s=t("./_an-object"),i=t("./_global").Reflect;r.exports=i&&i.ownKeys||function t(e){var r=o.f(s(e)),i=n.f;return i?r.concat(i(e)):r}}],"es7.string.pad-start.js":["./_export","./_string-pad",function(t){"use strict";var e=t("./_export"),r=t("./_string-pad");e(e.P,"String",{padStart:function t(e){return r(this,e,arguments.length>1?arguments[1]:void 0,!0)}})}],"_string-pad.js":["./_to-length","./_string-repeat","./_defined",function(t,e,r){var o=t("./_to-length"),n=t("./_string-repeat"),s=t("./_defined");r.exports=function(t,e,r,i){var c=String(s(t)),u=c.length,a=void 0===r?" ":String(r),_=o(e);if(_<=u||""==a)return c;var f=_-u,l=n.call(a,Math.ceil(f/a.length));return l.length>f&&(l=l.slice(0,f)),i?l+c:c+l}}],"es7.string.pad-end.js":["./_export","./_string-pad",function(t){"use strict";var e=t("./_export"),r=t("./_string-pad");e(e.P,"String",{padEnd:function t(e){return r(this,e,arguments.length>1?arguments[1]:void 0,!1)}})}],"es7.string.trim-left.js":["./_string-trim",function(t){"use strict";t("./_string-trim")("trimLeft",function(t){return function e(){return t(this,1)}},"trimStart")}],"es7.string.trim-right.js":["./_string-trim",function(t){"use strict";t("./_string-trim")("trimRight",function(t){return function e(){return t(this,2)}},"trimEnd")}],"web.dom.iterable.js":["./es6.array.iterator","./_redefine","./_global","./_hide","./_iterators","./_wks",function(t){for(var e=t("./es6.array.iterator"),r=t("./_redefine"),o=t("./_global"),n=t("./_hide"),s=t("./_iterators"),i=t("./_wks"),c=i("iterator"),u=i("toStringTag"),a=s.Array,_=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],f=0;f<5;f++){var l=_[f],d=o[l],p=d&&d.prototype,j;if(p){p[c]||n(p,c,a),p[u]||n(p,u,l),s[l]=a;for(j in e)p[j]||r(p,j,e[j],!0)}}}],"es6.map.js":["./_collection-strong","./_collection",function(t,e,r){"use strict";var o=t("./_collection-strong");r.exports=t("./_collection")("Map",function(t){return function e(){return t(this,arguments.length>0?arguments[0]:void 0)}},{get:function t(e){var r=o.getEntry(this,e);return r&&r.v},set:function t(e,r){return o.def(this,0===e?0:e,r)}},o,!0)}],"_collection-strong.js":["./_object-dp","./_object-create","./_redefine-all","./_ctx","./_an-instance","./_defined","./_for-of","./_iter-define","./_iter-step","./_set-species","./_descriptors","./_meta",function(t,e,r){"use strict";var o=t("./_object-dp").f,n=t("./_object-create"),s=t("./_redefine-all"),i=t("./_ctx"),c=t("./_an-instance"),u=t("./_defined"),a=t("./_for-of"),_=t("./_iter-define"),f=t("./_iter-step"),l=t("./_set-species"),d=t("./_descriptors"),p=t("./_meta").fastKey,j=d?"_s":"size",g=function(t,e){var r=p(e),o;if("F"!==r)return t._i[r];for(o=t._f;o;o=o.n)if(o.k==e)return o};r.exports={getConstructor:function(t,e,r,_){var f=t(function(t,o){c(t,f,e,"_i"),t._i=n(null),t._f=void 0,t._l=void 0,t[j]=0,void 0!=o&&a(o,r,t[_],t)});return s(f.prototype,{clear:function t(){for(var e=this,r=e._i,o=e._f;o;o=o.n)o.r=!0,o.p&&(o.p=o.p.n=void 0),delete r[o.i];e._f=e._l=void 0,e[j]=0},delete:function(t){var e=this,r=g(e,t);if(r){var o=r.n,n=r.p;delete e._i[r.i],r.r=!0,n&&(n.n=o),o&&(o.p=n),e._f==r&&(e._f=o),e._l==r&&(e._l=n),e[j]--}return!!r},forEach:function t(e){c(this,f,"forEach");for(var r=i(e,arguments.length>1?arguments[1]:void 0,3),o;o=o?o.n:this._f;)for(r(o.v,o.k,this);o&&o.r;)o=o.p},has:function t(e){return!!g(this,e)}}),d&&o(f.prototype,"size",{get:function(){return u(this[j])}}),f},def:function(t,e,r){var o=g(t,e),n,s;return o?o.v=r:(t._l=o={i:s=p(e,!0),k:e,v:r,p:n=t._l,n:void 0,r:!1},t._f||(t._f=o),n&&(n.n=o),t[j]++,"F"!==s&&(t._i[s]=o)),t},getEntry:g,setStrong:function(t,e,r){_(t,e,function(t,e){this._t=t,this._k=e,this._l=void 0},function(){for(var t=this,e=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?"keys"==e?f(0,r.k):"values"==e?f(0,r.v):f(0,[r.k,r.v]):(t._t=void 0,f(1))},r?"entries":"values",!r,!0),l(e)}}}],"_redefine-all.js":["./_redefine",function(t,e,r){var o=t("./_redefine");r.exports=function(t,e,r){for(var n in e)o(t,n,e[n],r);return t}}],"_an-instance.js":function(t,e,r){r.exports=function(t,e,r,o){if(!(t instanceof e)||void 0!==o&&o in t)throw TypeError(r+": incorrect invocation!");return t}},"_for-of.js":["./_ctx","./_iter-call","./_is-array-iter","./_an-object","./_to-length","./core.get-iterator-method",function(t,e,r){var o=t("./_ctx"),n=t("./_iter-call"),s=t("./_is-array-iter"),i=t("./_an-object"),c=t("./_to-length"),u=t("./core.get-iterator-method"),a={},_={},e=r.exports=function(t,e,r,f,l){var d=l?function(){return t}:u(t),p=o(r,f,e?2:1),j=0,g,b,m,h;if("function"!=typeof d)throw TypeError(t+" is not iterable!");if(s(d)){for(g=c(t.length);g>j;j++)if(h=e?p(i(b=t[j])[0],b[1]):p(t[j]),h===a||h===_)return h}else for(m=d.call(t);!(b=m.next()).done;)if(h=n(m,p,b.value,e),h===a||h===_)return h};e.BREAK=a,e.RETURN=_}],"_collection.js":["./_global","./_export","./_redefine","./_redefine-all","./_meta","./_for-of","./_an-instance","./_is-object","./_fails","./_iter-detect","./_set-to-string-tag","./_inherit-if-required",function(t,e,r){"use strict";var o=t("./_global"),n=t("./_export"),s=t("./_redefine"),i=t("./_redefine-all"),c=t("./_meta"),u=t("./_for-of"),a=t("./_an-instance"),_=t("./_is-object"),f=t("./_fails"),l=t("./_iter-detect"),d=t("./_set-to-string-tag"),p=t("./_inherit-if-required");r.exports=function(t,e,r,j,g,b){var m=o[t],h=m,y=g?"set":"add",v=h&&h.prototype,x={},w=function(t){var e=v[t];s(v,t,"delete"==t?function(t){return!(b&&!_(t))&&e.call(this,0===t?0:t)}:"has"==t?function t(r){return!(b&&!_(r))&&e.call(this,0===r?0:r)}:"get"==t?function t(r){return b&&!_(r)?void 0:e.call(this,0===r?0:r)}:"add"==t?function t(r){return e.call(this,0===r?0:r),this}:function t(r,o){return e.call(this,0===r?0:r,o),this})};if("function"==typeof h&&(b||v.forEach&&!f(function(){(new h).entries().next()}))){var k=new h,S=k[y](b?{}:-0,1)!=k,O=f(function(){k.has(1)}),P=l(function(t){new h(t)}),E=!b&&f(function(){for(var t=new h,e=5;e--;)t[y](e,e);return!t.has(-0)});P||(h=e(function(e,r){a(e,h,t);var o=p(new m,e,h);return void 0!=r&&u(r,g,o[y],o),o}),h.prototype=v,v.constructor=h),(O||E)&&(w("delete"),w("has"),g&&w("get")),(E||S)&&w(y),b&&v.clear&&delete v.clear}else h=j.getConstructor(e,t,g,y),i(h.prototype,r),c.NEED=!0;return d(h,t),x[t]=h,n(n.G+n.W+n.F*(h!=m),x),b||j.setStrong(h,t,g),h}}],"_inherit-if-required.js":["./_is-object","./_set-proto",function(t,e,r){var o=t("./_is-object"),n=t("./_set-proto").set;r.exports=function(t,e,r){var s,i=e.constructor;return i!==r&&"function"==typeof i&&(s=i.prototype)!==r.prototype&&o(s)&&n&&n(t,s),t}}],"es6.set.js":["./_collection-strong","./_collection",function(t,e,r){"use strict";var o=t("./_collection-strong");r.exports=t("./_collection")("Set",function(t){return function e(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function t(e){return o.def(this,e=0===e?0:e,e)}},o)}]},fn:{array:{"includes.js":["../../modules/es7.array.includes","../../modules/_core",function(t,e,r){t("../../modules/es7.array.includes"),r.exports=t("../../modules/_core").Array.includes}]},object:{"values.js":["../../modules/es7.object.values","../../modules/_core",function(t,e,r){t("../../modules/es7.object.values"),r.exports=t("../../modules/_core").Object.values}],"entries.js":["../../modules/es7.object.entries","../../modules/_core",function(t,e,r){t("../../modules/es7.object.entries"),r.exports=t("../../modules/_core").Object.entries}],"get-own-property-descriptors.js":["../../modules/es7.object.get-own-property-descriptors","../../modules/_core",function(t,e,r){t("../../modules/es7.object.get-own-property-descriptors"),r.exports=t("../../modules/_core").Object.getOwnPropertyDescriptors}]},string:{"pad-start.js":["../../modules/es7.string.pad-start","../../modules/_core",function(t,e,r){t("../../modules/es7.string.pad-start"),r.exports=t("../../modules/_core").String.padStart}],"pad-end.js":["../../modules/es7.string.pad-end","../../modules/_core",function(t,e,r){t("../../modules/es7.string.pad-end"),r.exports=t("../../modules/_core").String.padEnd}],"trim-start.js":["../../modules/es7.string.trim-left","../../modules/_core",function(t,e,r){t("../../modules/es7.string.trim-left"),r.exports=t("../../modules/_core").String.trimLeft}],"trim-end.js":["../../modules/es7.string.trim-right","../../modules/_core",function(t,e,r){t("../../modules/es7.string.trim-right"),r.exports=t("../../modules/_core").String.trimRight}]}}}}}}}},{extensions:[".js",".json"]}),d=l("./node_modules/meteor/ecmascript-runtime/runtime.js");"undefined"==typeof Package&&(Package={}),function(t,e){for(var r in e)r in t||(t[r]=e[r])}(Package["ecmascript-runtime"]=d,{Symbol:c,Map:u,Set:a})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["babel-compiler"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package.ecmascript={}}();
!function(){var n=Package.meteor.Meteor,r=Package.meteor.global,e=Package.meteor.meteorEnv,a;(function(){for(var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r={},e=0;e<n.length;e++)r[n.charAt(e)]=e;a={},a.encode=function(n){if("string"==typeof n){var r=n;n=a.newBinary(r.length);for(var e=0;e<r.length;e++){var l=r.charCodeAt(e);if(l>255)throw new Error("Not ascii. Base64.encode can only take ascii strings.");n[e]=l}}for(var u=[],i=null,o=null,c=null,f=null,e=0;e<n.length;e++)switch(e%3){case 0:i=n[e]>>2&63,o=(3&n[e])<<4;break;case 1:o|=n[e]>>4&15,c=(15&n[e])<<2;break;case 2:c|=n[e]>>6&3,f=63&n[e],u.push(t(i)),u.push(t(o)),u.push(t(c)),u.push(t(f)),i=null,o=null,c=null,f=null}return null!=i&&(u.push(t(i)),u.push(t(o)),null==c?u.push("="):u.push(t(c)),null==f&&u.push("=")),u.join("")};var t=function(r){return n.charAt(r)},l=function(n){return"="===n?-1:r[n]};a.newBinary=function(n){if("undefined"==typeof Uint8Array||"undefined"==typeof ArrayBuffer){for(var r=[],e=0;e<n;e++)r.push(0);return r.$Uint8ArrayPolyfill=!0,r}return new Uint8Array(new ArrayBuffer(n))},a.decode=function(n){var r=Math.floor(3*n.length/4);"="==n.charAt(n.length-1)&&(r--,"="==n.charAt(n.length-2)&&r--);for(var e=a.newBinary(r),t=null,u=null,i=null,o=0,c=0;c<n.length;c++){var f=n.charAt(c),s=l(f);switch(c%4){case 0:if(s<0)throw new Error("invalid base64 string");t=s<<2;break;case 1:if(s<0)throw new Error("invalid base64 string");t|=s>>4,e[o++]=t,u=(15&s)<<4;break;case 2:s>=0&&(u|=s>>2,e[o++]=u,i=(3&s)<<6);break;case 3:s>=0&&(e[o++]=i|s)}}return e}}).call(this),"undefined"==typeof Package&&(Package={}),function(n,r){for(var e in r)e in n||(n[e]=r[e])}(Package.base64={},{Base64:a})}();
!function(){var n=Package.meteor.Meteor,e=Package.meteor.global,t=Package.meteor.meteorEnv,r=Package.underscore._,u=Package.base64.Base64,a,i;(function(){a={},i={};var e={};a.addType=function(n,t){if(r.has(e,n))throw new Error("Type "+n+" already present");e[n]=t};var t=function(n){return r.isNaN(n)||n===1/0||n===-(1/0)},o=[{matchJSONValue:function(n){return r.has(n,"$date")&&1===r.size(n)},matchObject:function(n){return n instanceof Date},toJSONValue:function(n){return{$date:n.getTime()}},fromJSONValue:function(n){return new Date(n.$date)}},{matchJSONValue:function(n){return r.has(n,"$InfNaN")&&1===r.size(n)},matchObject:t,toJSONValue:function(n){var e;return e=r.isNaN(n)?0:n===1/0?1:-1,{$InfNaN:e}},fromJSONValue:function(n){return n.$InfNaN/0}},{matchJSONValue:function(n){return r.has(n,"$binary")&&1===r.size(n)},matchObject:function(n){return"undefined"!=typeof Uint8Array&&n instanceof Uint8Array||n&&r.has(n,"$Uint8ArrayPolyfill")},toJSONValue:function(n){return{$binary:u.encode(n)}},fromJSONValue:function(n){return u.decode(n.$binary)}},{matchJSONValue:function(n){return r.has(n,"$escape")&&1===r.size(n)},matchObject:function(n){return!(r.isEmpty(n)||r.size(n)>2)&&r.any(o,function(e){return e.matchJSONValue(n)})},toJSONValue:function(n){var e={};return r.each(n,function(n,t){e[t]=a.toJSONValue(n)}),{$escape:e}},fromJSONValue:function(n){var e={};return r.each(n.$escape,function(n,t){e[t]=a.fromJSONValue(n)}),e}},{matchJSONValue:function(n){return r.has(n,"$type")&&r.has(n,"$value")&&2===r.size(n)},matchObject:function(n){return a._isCustomType(n)},toJSONValue:function(e){var t=n._noYieldsAllowed(function(){return e.toJSONValue()});return{$type:e.typeName(),$value:t}},fromJSONValue:function(t){var u=t.$type;if(!r.has(e,u))throw new Error("Custom EJSON type "+u+" is not defined");var a=e[u];return n._noYieldsAllowed(function(){return a(t.$value)})}}];a._isCustomType=function(n){return n&&"function"==typeof n.toJSONValue&&"function"==typeof n.typeName&&r.has(e,n.typeName())},a._getTypes=function(){return e},a._getConverters=function(){return o};var f=a._adjustTypesToJSONValue=function(n){if(null===n)return null;var e=c(n);return void 0!==e?e:"object"!=typeof n?n:(r.each(n,function(e,r){if("object"==typeof e||void 0===e||t(e)){var u=c(e);return u?void(n[r]=u):void f(e)}}),n)},c=function(n){for(var e=0;e<o.length;e++){var t=o[e];if(t.matchObject(n))return t.toJSONValue(n)}};a.toJSONValue=function(n){var e=c(n);return void 0!==e?e:("object"==typeof n&&(n=a.clone(n),f(n)),n)};var l=a._adjustTypesFromJSONValue=function(n){if(null===n)return null;var e=s(n);return e!==n?e:"object"!=typeof n?n:(r.each(n,function(e,t){if("object"==typeof e){var r=s(e);if(e!==r)return void(n[t]=r);l(e)}}),n)},s=function(n){if("object"==typeof n&&null!==n&&r.size(n)<=2&&r.all(n,function(n,e){return"string"==typeof e&&"$"===e.substr(0,1)}))for(var e=0;e<o.length;e++){var t=o[e];if(t.matchJSONValue(n))return t.fromJSONValue(n)}return n};a.fromJSONValue=function(n){var e=s(n);return e===n&&"object"==typeof n?(n=a.clone(n),l(n),n):e},a.stringify=function(n,e){var t=a.toJSONValue(n);return e&&(e.canonical||e.indent)?a._canonicalStringify(t,e):JSON.stringify(t)},a.parse=function(n){if("string"!=typeof n)throw new Error("EJSON.parse argument should be a string");return a.fromJSONValue(JSON.parse(n))},a.isBinary=function(n){return!!("undefined"!=typeof Uint8Array&&n instanceof Uint8Array||n&&n.$Uint8ArrayPolyfill)},a.equals=function(n,e,t){var u,i=!(!t||!t.keyOrderSensitive);if(n===e)return!0;if(r.isNaN(n)&&r.isNaN(e))return!0;if(!n||!e)return!1;if("object"!=typeof n||"object"!=typeof e)return!1;if(n instanceof Date&&e instanceof Date)return n.valueOf()===e.valueOf();if(a.isBinary(n)&&a.isBinary(e)){if(n.length!==e.length)return!1;for(u=0;u<n.length;u++)if(n[u]!==e[u])return!1;return!0}if("function"==typeof n.equals)return n.equals(e,t);if("function"==typeof e.equals)return e.equals(n,t);if(n instanceof Array){if(!(e instanceof Array))return!1;if(n.length!==e.length)return!1;for(u=0;u<n.length;u++)if(!a.equals(n[u],e[u],t))return!1;return!0}switch(a._isCustomType(n)+a._isCustomType(e)){case 1:return!1;case 2:return a.equals(a.toJSONValue(n),a.toJSONValue(e))}var o;if(i){var f=[];return r.each(e,function(n,e){f.push(e)}),u=0,o=r.all(n,function(n,r){return!(u>=f.length)&&(r===f[u]&&(!!a.equals(n,e[f[u]],t)&&(u++,!0)))}),o&&u===f.length}return u=0,o=r.all(n,function(n,i){return!!r.has(e,i)&&(!!a.equals(n,e[i],t)&&(u++,!0))}),o&&r.size(e)===u},a.clone=function(n){var e;if("object"!=typeof n)return n;if(null===n)return null;if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return n;if(a.isBinary(n)){e=a.newBinary(n.length);for(var t=0;t<n.length;t++)e[t]=n[t];return e}if(r.isArray(n)||r.isArguments(n)){for(e=[],t=0;t<n.length;t++)e[t]=a.clone(n[t]);return e}return"function"==typeof n.clone?n.clone():a._isCustomType(n)?a.fromJSONValue(a.clone(a.toJSONValue(n)),!0):(e={},r.each(n,function(n,t){e[t]=a.clone(n)}),e)},a.newBinary=u.newBinary}).call(this),function(){function n(n){return JSON.stringify(n)}var e=function(t,u,a,i,o){var f,c,l,s,y=i,h,N=u[t];switch(typeof N){case"string":return n(N);case"number":return isFinite(N)?String(N):"null";case"boolean":return String(N);case"object":if(!N)return"null";if(y=i+a,h=[],r.isArray(N)||r.isArguments(N)){for(s=N.length,f=0;f<s;f+=1)h[f]=e(f,N,a,y,o)||"null";return l=0===h.length?"[]":y?"[\n"+y+h.join(",\n"+y)+"\n"+i+"]":"["+h.join(",")+"]"}var p=r.keys(N);return o&&(p=p.sort()),r.each(p,function(t){l=e(t,N,a,y,o),l&&h.push(n(t)+(y?": ":":")+l)}),l=0===h.length?"{}":y?"{\n"+y+h.join(",\n"+y)+"\n"+i+"}":"{"+h.join(",")+"}"}};a._canonicalStringify=function(n,t){if(t=r.extend({indent:"",canonical:!1},t),t.indent===!0)t.indent=" ";else if("number"==typeof t.indent){for(var u="",a=0;a<t.indent;a++)u+=" ";t.indent=u}return e("",{"":n},t.indent,"",t.canonical)}}.call(this),"undefined"==typeof Package&&(Package={}),function(n,e){for(var t in e)t in n||(n[t]=e[t])}(Package.ejson={},{EJSON:a,EJSONTest:i})}();
!function(){var i=Package.meteor.Meteor,t=Package.meteor.global,a=Package.meteor.meteorEnv,n=Package.underscore._,e=Package.ejson.EJSON,r;(function(){r=function(i,t){var a=this;a._map={},a._idStringify=i||JSON.stringify,a._idParse=t||JSON.parse},n.extend(r.prototype,{get:function(i){var t=this,a=t._idStringify(i);return t._map[a]},set:function(i,t){var a=this,n=a._idStringify(i);a._map[n]=t},remove:function(i){var t=this,a=t._idStringify(i);delete t._map[a]},has:function(i){var t=this,a=t._idStringify(i);return n.has(t._map,a)},empty:function(){var i=this;return n.isEmpty(i._map)},clear:function(){var i=this;i._map={}},forEach:function(i){for(var t=this,a=n.keys(t._map),e=0;e<a.length;e++){var r=i.call(null,t._map[a[e]],t._idParse(a[e]));if(r===!1)return}},size:function(){var i=this;return n.size(i._map)},setDefault:function(i,t){var a=this,e=a._idStringify(i);return n.has(a._map,e)?a._map[e]:(a._map[e]=t,t)},clone:function(){var i=this,t=new r(i._idStringify,i._idParse);return i.forEach(function(i,a){t.set(a,e.clone(i))}),t}})}).call(this),"undefined"==typeof Package&&(Package={}),function(i,t){for(var a in t)a in i||(i[a]=t[a])}(Package["id-map"]={},{IdMap:r})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,r=Package.meteor.meteorEnv,n=Package.underscore._,i;(function(){var t=function(t,e,r,n){return{key:t,value:e,next:r,prev:n}};i=function(){var t=this;t._dict={},t._first=null,t._last=null,t._size=0;var e=n.toArray(arguments);t._stringify=function(t){return t},"function"==typeof e[0]&&(t._stringify=e.shift()),n.each(e,function(e){t.putBefore(e[0],e[1],null)})},n.extend(i.prototype,{_k:function(t){return" "+this._stringify(t)},empty:function(){var t=this;return!t._first},size:function(){var t=this;return t._size},_linkEltIn:function(t){var e=this;t.next?(t.prev=t.next.prev,t.next.prev=t,t.prev&&(t.prev.next=t)):(t.prev=e._last,e._last&&(e._last.next=t),e._last=t),null!==e._first&&e._first!==t.next||(e._first=t)},_linkEltOut:function(t){var e=this;t.next&&(t.next.prev=t.prev),t.prev&&(t.prev.next=t.next),t===e._last&&(e._last=t.prev),t===e._first&&(e._first=t.next)},putBefore:function(e,r,n){var i=this;if(i._dict[i._k(e)])throw new Error("Item "+e+" already present in OrderedDict");var o=n?t(e,r,i._dict[i._k(n)]):t(e,r,null);if(void 0===o.next)throw new Error("could not find item to put this one before");i._linkEltIn(o),i._dict[i._k(e)]=o,i._size++},append:function(t,e){var r=this;r.putBefore(t,e,null)},remove:function(t){var e=this,r=e._dict[e._k(t)];if(void 0===r)throw new Error("Item "+t+" not present in OrderedDict");return e._linkEltOut(r),e._size--,delete e._dict[e._k(t)],r.value},get:function(t){var e=this;if(e.has(t))return e._dict[e._k(t)].value},has:function(t){var e=this;return n.has(e._dict,e._k(t))},forEach:function(t){for(var e=this,r=0,n=e._first;null!==n;){var o=t(n.value,n.key,r);if(o===i.BREAK)return;n=n.next,r++}},first:function(){var t=this;if(!t.empty())return t._first.key},firstValue:function(){var t=this;if(!t.empty())return t._first.value},last:function(){var t=this;if(!t.empty())return t._last.key},lastValue:function(){var t=this;if(!t.empty())return t._last.value},prev:function(t){var e=this;if(e.has(t)){var r=e._dict[e._k(t)];if(r.prev)return r.prev.key}return null},next:function(t){var e=this;if(e.has(t)){var r=e._dict[e._k(t)];if(r.next)return r.next.key}return null},moveBefore:function(t,e){var r=this,n=r._dict[r._k(t)],i=e?r._dict[r._k(e)]:null;if(void 0===n)throw new Error("Item to move is not present");if(void 0===i)throw new Error("Could not find element to move this one before");i!==n.next&&(r._linkEltOut(n),n.next=i,r._linkEltIn(n))},indexOf:function(t){var e=this,r=null;return e.forEach(function(n,o,f){if(e._k(o)===e._k(t))return r=f,i.BREAK}),r},_checkRep:function(){var t=this;n.each(t._dict,function(t,e){if(e.next===e)throw new Error("Next is a loop");if(e.prev===e)throw new Error("Prev is a loop")})}}),i.BREAK={break:!0}}).call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var r in e)r in t||(t[r]=e[r])}(Package["ordered-dict"]={},{OrderedDict:i})}();
!function(){var n=Package.meteor.Meteor,t=Package.meteor.global,e=Package.meteor.meteorEnv,o,r;(function(){o={},o.active=!1,o.currentComputation=null;var t=function(n){o.currentComputation=n,o.active=!!n},e=function(){return"undefined"!=typeof n?n._debug:"undefined"!=typeof console&&console.error?function(){console.error.apply(console,arguments)}:function(){}},r=function(t){"undefined"!=typeof n&&n._suppressed_log_expected()&&n._suppress_log(t-1)},i=function(n,t){if(l)throw t;var o=["Exception from Tracker "+n+" function:"];if(t.stack&&t.message&&t.name){var i=t.stack.indexOf(t.message);if(i<0||i>t.name.length+2){var a=t.name+": "+t.message;o.push(a)}}o.push(t.stack),r(o.length);for(var u=0;u<o.length;u++)e()(o[u])},a=function(t){return"undefined"==typeof n||n.isClient?t:function(){var e=arguments;n._noYieldsAllowed(function(){t.apply(null,e)})}},u=1,c=[],p=!1,s=!1,f=!1,l=!1,d=[],h=function(){p||("undefined"!=typeof n?n._setImmediate(o._runFlush):setTimeout(o._runFlush,0),p=!0)},v=!1;o.Computation=function(n,t,e){if(!v)throw new Error("Tracker.Computation constructor is private; use Tracker.autorun");v=!1;var o=this;o.stopped=!1,o.invalidated=!1,o.firstRun=!0,o._id=u++,o._onInvalidateCallbacks=[],o._onStopCallbacks=[],o._parent=t,o._func=n,o._onError=e,o._recomputing=!1;var r=!0;try{o._compute(),r=!1}finally{o.firstRun=!1,r&&o.stop()}},o.Computation.prototype.onInvalidate=function(n){var t=this;if("function"!=typeof n)throw new Error("onInvalidate requires a function");t.invalidated?o.nonreactive(function(){a(n)(t)}):t._onInvalidateCallbacks.push(n)},o.Computation.prototype.onStop=function(n){var t=this;if("function"!=typeof n)throw new Error("onStop requires a function");t.stopped?o.nonreactive(function(){a(n)(t)}):t._onStopCallbacks.push(n)},o.Computation.prototype.invalidate=function(){var n=this;if(!n.invalidated){n._recomputing||n.stopped||(h(),c.push(this)),n.invalidated=!0;for(var t=0,e;e=n._onInvalidateCallbacks[t];t++)o.nonreactive(function(){a(e)(n)});n._onInvalidateCallbacks=[]}},o.Computation.prototype.stop=function(){var n=this;if(!n.stopped){n.stopped=!0,n.invalidate();for(var t=0,e;e=n._onStopCallbacks[t];t++)o.nonreactive(function(){a(e)(n)});n._onStopCallbacks=[]}},o.Computation.prototype._compute=function(){var n=this;n.invalidated=!1;var e=o.currentComputation;t(n);var r=f;f=!0;try{a(n._func)(n)}finally{t(e),f=r}},o.Computation.prototype._needsRecompute=function(){var n=this;return n.invalidated&&!n.stopped},o.Computation.prototype._recompute=function(){var n=this;n._recomputing=!0;try{if(n._needsRecompute())try{n._compute()}catch(t){n._onError?n._onError(t):i("recompute",t)}}finally{n._recomputing=!1}},o.Computation.prototype.flush=function(){var n=this;n._recomputing||n._recompute()},o.Computation.prototype.run=function(){var n=this;n.invalidate(),n.flush()},o.Dependency=function(){this._dependentsById={}},o.Dependency.prototype.depend=function(n){if(!n){if(!o.active)return!1;n=o.currentComputation}var t=this,e=n._id;return!(e in t._dependentsById)&&(t._dependentsById[e]=n,n.onInvalidate(function(){delete t._dependentsById[e]}),!0)},o.Dependency.prototype.changed=function(){var n=this;for(var t in n._dependentsById)n._dependentsById[t].invalidate()},o.Dependency.prototype.hasDependents=function(){var n=this;for(var t in n._dependentsById)return!0;return!1},o.flush=function(n){o._runFlush({finishSynchronously:!0,throwFirstError:n&&n._throwFirstError})},o._runFlush=function(n){if(s)throw new Error("Can't call Tracker.flush while flushing");if(f)throw new Error("Can't flush inside Tracker.autorun");n=n||{},s=!0,p=!0,l=!!n.throwFirstError;var t=0,e=!1;try{for(;c.length||d.length;){for(;c.length;){var r=c.shift();if(r._recompute(),r._needsRecompute()&&c.unshift(r),!n.finishSynchronously&&++t>1e3)return void(e=!0)}if(d.length){var a=d.shift();try{a()}catch(n){i("afterFlush",n)}}}e=!0}finally{if(e||(s=!1,o._runFlush({finishSynchronously:n.finishSynchronously,throwFirstError:!1})),p=!1,s=!1,c.length||d.length){if(n.finishSynchronously)throw new Error("still have more to do?");setTimeout(h,10)}}},o.autorun=function(n,t){if("function"!=typeof n)throw new Error("Tracker.autorun requires a function argument");t=t||{},v=!0;var e=new o.Computation(n,o.currentComputation,t.onError);return o.active&&o.onInvalidate(function(){e.stop()}),e},o.nonreactive=function(n){var e=o.currentComputation;t(null);try{return n()}finally{t(e)}},o.onInvalidate=function(n){if(!o.active)throw new Error("Tracker.onInvalidate requires a currentComputation");o.currentComputation.onInvalidate(n)},o.afterFlush=function(n){d.push(n),h()}}).call(this),function(){n.flush=o.flush,n.autorun=o.autorun,n.autosubscribe=o.autorun,o.depend=function(n){return n.depend()},r=o}.call(this),"undefined"==typeof Package&&(Package={}),function(n,t){for(var e in t)e in n||(n[e]=t[e])}(Package.tracker={},{Tracker:o,Deps:r})}();
!function(){var e=Package.meteor.Meteor,r=Package.meteor.global,n=Package.meteor.meteorEnv,t=Package.modules.meteorInstall,a=Package.modules.Buffer,o=Package.modules.process,i=Package.promise.Promise,l,u=t({node_modules:{meteor:{"babel-runtime":{"babel-runtime.js":["meteor-babel-helpers","babel-runtime/regenerator",function(e,r){r.meteorBabelHelpers=e("meteor-babel-helpers"),r.checkHelper=function e(r){return!1};try{var n=e("babel-runtime/regenerator")}catch(e){throw new Error(["The babel-runtime npm package could not be found in your node_modules ","directory. Please run the following command to install it:",""," meteor npm install --save babel-runtime",""].join("\n"))}if(n&&"function"==typeof i&&"function"==typeof i.asyncApply){var t=n.async;n.async=function(){return i.asyncApply(t,n,arguments)}}}],node_modules:{"meteor-babel-helpers":{"package.json":function(e,r){r.name="meteor-babel-helpers",r.version="0.0.3",r.main="index.js"},"index.js":function(e,r,n){function t(){var e={},r="t";try{Object.defineProperty(e,r,{enumerable:!1,value:e});for(var n in e)if(n===r)return!1}catch(e){return!1}return e[r]===e}function a(e){return e}function o(e){if(Array.isArray(e)){for(var r={},n=Object.keys(e),t=n.length,a=0;a<t;++a){var o=n[a];r[o]=e[o]}return r}return e}l=n.exports={sanitizeForInObject:t()?a:o,_sanitizeForInObjectHard:o}}}}}}}},{extensions:[".js",".json"]}),c=u("./node_modules/meteor/babel-runtime/babel-runtime.js");"undefined"==typeof Package&&(Package={}),function(e,r){for(var n in r)n in e||(e[n]=r[n])}(Package["babel-runtime"]=c,{meteorBabelHelpers:l})}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,r=Package.meteor.meteorEnv,t=Package.underscore._,o=Package.modules.meteorInstall,a=Package.modules.Buffer,i=Package.modules.process,d=Package["ecmascript-runtime"].Symbol,u=Package["ecmascript-runtime"].Map,c=Package["ecmascript-runtime"].Set,s=Package["babel-runtime"].meteorBabelHelpers,f=Package.promise.Promise,m,p=o({node_modules:{meteor:{random:{"random.js":function(n){function r(){return new d(d.Type.ALEA,{seeds:[new Date,u,c,s,Math.random()]})}if(e.isServer)var t=Npm.require("crypto");var o=function e(){function n(){var e=4022871197,n=function n(r){r=r.toString();for(var t=0;t<r.length;t++){e+=r.charCodeAt(t);var o=.02519603282416938*e;e=o>>>0,o-=e,o*=e,e=o>>>0,o-=e,e+=4294967296*o}return 2.3283064365386963e-10*(e>>>0)};return n.version="Mash 0.9",n}return function(e){var r=0,t=0,o=0,a=1;0==e.length&&(e=[+new Date]);var i=n();r=i(" "),t=i(" "),o=i(" ");for(var d=0;d<e.length;d++)r-=i(e[d]),r<0&&(r+=1),t-=i(e[d]),t<0&&(t+=1),o-=i(e[d]),o<0&&(o+=1);i=null;var u=function e(){var n=2091639*r+2.3283064365386963e-10*a;return r=t,t=o,o=n-(a=0|n)};return u.uint32=function(){return 4294967296*u()},u.fract53=function(){return u()+1.1102230246251565e-16*(2097152*u()|0)},u.version="Alea 0.9",u.args=e,u}(Array.prototype.slice.call(arguments))},a="23456789ABCDEFGHJKLMNPQRSTWXYZabcdefghijkmnopqrstuvwxyz",i="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_",d=function e(n,r){var t=this;if(t.type=n,!e.Type[n])throw new Error("Unknown random generator type: "+n);if(n===e.Type.ALEA){if(!r.seeds)throw new Error("No seeds were provided for Alea PRNG");t.alea=o.apply(null,r.seeds)}};d.Type={NODE_CRYPTO:"NODE_CRYPTO",BROWSER_CRYPTO:"BROWSER_CRYPTO",ALEA:"ALEA"},d.prototype.fraction=function(){var e=this;if(e.type===d.Type.ALEA)return e.alea();if(e.type===d.Type.NODE_CRYPTO){var n=parseInt(e.hexString(8),16);return 2.3283064365386963e-10*n}if(e.type===d.Type.BROWSER_CRYPTO){var r=new Uint32Array(1);return window.crypto.getRandomValues(r),2.3283064365386963e-10*r[0]}throw new Error("Unknown random generator type: "+e.type)},d.prototype.hexString=function(e){var n=this;if(n.type===d.Type.NODE_CRYPTO){var r=Math.ceil(e/2),o;try{o=t.randomBytes(r)}catch(e){o=t.pseudoRandomBytes(r)}var a=o.toString("hex");return a.substring(0,e)}return this._randomString(e,"0123456789abcdef")},d.prototype._randomString=function(e,n){for(var r=this,t=[],o=0;o<e;o++)t[o]=r.choice(n);return t.join("")},d.prototype.id=function(e){var n=this;return void 0===e&&(e=17),n._randomString(e,a)},d.prototype.secret=function(e){var n=this;return void 0===e&&(e=43),n._randomString(e,i)},d.prototype.choice=function(e){var n=Math.floor(this.fraction()*e.length);return"string"==typeof e?e.substr(n,1):e[n]};var u="undefined"!=typeof window&&window.innerHeight||"undefined"!=typeof document&&document.documentElement&&document.documentElement.clientHeight||"undefined"!=typeof document&&document.body&&document.body.clientHeight||1,c="undefined"!=typeof window&&window.innerWidth||"undefined"!=typeof document&&document.documentElement&&document.documentElement.clientWidth||"undefined"!=typeof document&&document.body&&document.body.clientWidth||1,s="undefined"!=typeof navigator&&navigator.userAgent||"";m=e.isServer?new d(d.Type.NODE_CRYPTO):"undefined"!=typeof window&&window.crypto&&window.crypto.getRandomValues?new d(d.Type.BROWSER_CRYPTO):r(),m.createWithSeeds=function(){for(var e=arguments.length,n=Array(e),r=0;r<e;r++)n[r]=arguments[r];if(0===n.length)throw new Error("No seeds were provided");return new d(d.Type.ALEA,{seeds:n})},m.insecure=r()},"deprecated.js":function(){e.uuid=function(){for(var e="0123456789abcdef",n=[],r=0;r<36;r++)n[r]=m.choice(e);n[14]="4",n[19]=e.substr(3&parseInt(n[19],16)|8,1),n[8]=n[13]=n[18]=n[23]="-";var t=n.join("");return t}}}}}},{extensions:[".js",".json"]});p("./node_modules/meteor/random/random.js"),p("./node_modules/meteor/random/deprecated.js"),"undefined"==typeof Package&&(Package={}),function(e,n){for(var r in n)r in e||(e[r]=n[r])}(Package.random={},{Random:m})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,r=Package.meteor.meteorEnv,o=Package.ejson.EJSON,n=Package["id-map"].IdMap,i=Package.random.Random,a;(function(){a={},a._looksLikeObjectID=function(t){return 24===t.length&&t.match(/^[0-9a-f]*$/)},a.ObjectID=function(t){var e=this;if(t){if(t=t.toLowerCase(),!a._looksLikeObjectID(t))throw new Error("Invalid hexadecimal string for creating an ObjectID");e._str=t}else e._str=i.hexString(24)},a.ObjectID.prototype.toString=function(){var t=this;return'ObjectID("'+t._str+'")'},a.ObjectID.prototype.equals=function(t){var e=this;return t instanceof a.ObjectID&&e.valueOf()===t.valueOf()},a.ObjectID.prototype.clone=function(){var t=this;return new a.ObjectID(t._str)},a.ObjectID.prototype.typeName=function(){return"oid"},a.ObjectID.prototype.getTimestamp=function(){var t=this;return parseInt(t._str.substr(0,8),16)},a.ObjectID.prototype.valueOf=a.ObjectID.prototype.toJSONValue=a.ObjectID.prototype.toHexString=function(){return this._str},o.addType("oid",function(t){return new a.ObjectID(t)}),a.idStringify=function(t){if(t instanceof a.ObjectID)return t.valueOf();if("string"==typeof t)return""===t?t:"-"===t.substr(0,1)||"~"===t.substr(0,1)||a._looksLikeObjectID(t)||"{"===t.substr(0,1)?"-"+t:t;if(void 0===t)return"-";if("object"==typeof t&&null!==t)throw new Error("Meteor does not currently support objects other than ObjectID as ids");return"~"+JSON.stringify(t)},a.idParse=function(t){return""===t?t:"-"===t?void 0:"-"===t.substr(0,1)?t.substr(1):"~"===t.substr(0,1)?JSON.parse(t.substr(1)):a._looksLikeObjectID(t)?new a.ObjectID(t):t}}).call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var r in e)r in t||(t[r]=e[r])}(Package["mongo-id"]={},{MongoID:a})}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,d=Package.meteor.meteorEnv,i=Package.underscore._,a=Package.ejson.EJSON,r;(function(){r={},r.diffQueryChanges=function(e,n,d,i,a){e?r.diffQueryOrderedChanges(n,d,i,a):r.diffQueryUnorderedChanges(n,d,i,a)},r.diffQueryUnorderedChanges=function(e,n,d,o){o=o||{};var f=o.projectionFn||a.clone;if(d.movedBefore)throw new Error("_diffQueryUnordered called with a movedBefore observer!");n.forEach(function(n,o){var t=e.get(o);if(t){if(d.changed&&!a.equals(t,n)){var c=f(n),u=f(t),h=r.makeChangedFields(c,u);i.isEmpty(h)||d.changed(o,h)}}else if(d.added){var l=f(n);delete l._id,d.added(n._id,l)}}),d.removed&&e.forEach(function(e,i){n.has(i)||d.removed(i)})},r.diffQueryOrderedChanges=function(n,d,o,f){f=f||{};var t=f.projectionFn||a.clone,c={};i.each(d,function(n){c[n._id]&&e._debug("Duplicate _id in new_results"),c[n._id]=!0});var u={};i.each(n,function(n,d){n._id in u&&e._debug("Duplicate _id in old_results"),u[n._id]=d});for(var h=[],l=0,s=d.length,g=new Array(s),v=new Array(s),_=function(e){return u[d[e]._id]},m=0;m<s;m++)if(void 0!==u[d[m]._id]){for(var y=l;y>0&&!(_(g[y-1])<_(m));)y--;v[m]=0===y?-1:g[y-1],g[y]=m,y+1>l&&(l=y+1)}for(var k=0===l?-1:g[l-1];k>=0;)h.push(k),k=v[k];h.reverse(),h.push(d.length),i.each(n,function(e){c[e._id]||o.removed&&o.removed(e._id)});var p=0;i.each(h,function(e){for(var a=d[e]?d[e]._id:null,f,c,h,l,s,g=p;g<e;g++)c=d[g],i.has(u,c._id)?(f=n[u[c._id]],l=t(c),s=t(f),h=r.makeChangedFields(l,s),i.isEmpty(h)||o.changed&&o.changed(c._id,h),o.movedBefore&&o.movedBefore(c._id,a)):(h=t(c),delete h._id,o.addedBefore&&o.addedBefore(c._id,h,a),o.added&&o.added(c._id,h));a&&(c=d[e],f=n[u[c._id]],l=t(c),s=t(f),h=r.makeChangedFields(l,s),i.isEmpty(h)||o.changed&&o.changed(c._id,h)),p=e+1})},r.diffObjects=function(e,n,d){i.each(e,function(e,a){i.has(n,a)?d.both&&d.both(a,e,n[a]):d.leftOnly&&d.leftOnly(a,e)}),d.rightOnly&&i.each(n,function(n,a){i.has(e,a)||d.rightOnly(a,n)})},r.makeChangedFields=function(e,n){var d={};return r.diffObjects(n,e,{leftOnly:function(e,n){d[e]=void 0},rightOnly:function(e,n){d[e]=n},both:function(e,n,i){a.equals(n,i)||(d[e]=i)}}),d},r.applyChanges=function(e,n){i.each(n,function(n,d){void 0===n?delete e[d]:e[d]=n})}}).call(this),"undefined"==typeof Package&&(Package={}),function(e,n){for(var d in n)d in e||(e[d]=n[d])}(Package["diff-sequence"]={},{DiffSequence:r})}();
!function(){var n=Package.meteor.Meteor,t=Package.meteor.global,o=Package.meteor.meteorEnv,e=Package.modules.meteorInstall,a=Package.modules.Buffer,r=Package.modules.process,i,s=e({node_modules:{meteor:{"geojson-utils":{"main.js":["./geojson-utils.js",function(n,t){t.GeoJSON=n("./geojson-utils.js")}],"geojson-utils.js":function(n,t,o){!function(){function n(n){for(var t=[],o=[],e=0;e<n[0].length;e++)t.push(n[0][e][1]),o.push(n[0][e][0]);return t=t.sort(function(n,t){return n-t}),o=o.sort(function(n,t){return n-t}),[[t[0],o[0]],[t[t.length-1],o[o.length-1]]]}function t(n,t,o){for(var e=[[0,0]],a=0;a<o.length;a++){for(var r=0;r<o[a].length;r++)e.push(o[a][r]);e.push([0,0])}for(var i=!1,a=0,r=e.length-1;a<e.length;r=a++)e[a][0]>t!=e[r][0]>t&&n<(e[r][1]-e[a][1])*(t-e[a][0])/(e[r][0]-e[a][0])+e[a][1]&&(i=!i);return i}var e={};"undefined"!=typeof o&&o.exports&&(o.exports=e),e.lineStringsIntersect=function(n,t){for(var o=[],e=0;e<=n.coordinates.length-2;++e)for(var a=0;a<=t.coordinates.length-2;++a){var r={x:n.coordinates[e][1],y:n.coordinates[e][0]},i={x:n.coordinates[e+1][1],y:n.coordinates[e+1][0]},s={x:t.coordinates[a][1],y:t.coordinates[a][0]},c={x:t.coordinates[a+1][1],y:t.coordinates[a+1][0]},u=(c.x-s.x)*(r.y-s.y)-(c.y-s.y)*(r.x-s.x),h=(i.x-r.x)*(r.y-s.y)-(i.y-r.y)*(r.x-s.x),d=(c.y-s.y)*(i.x-r.x)-(c.x-s.x)*(i.y-r.y);if(0!=d){var l=u/d,g=h/d;0<=l&&l<=1&&0<=g&&g<=1&&o.push({type:"Point",coordinates:[r.x+l*(i.x-r.x),r.y+l*(i.y-r.y)]})}}return 0==o.length&&(o=!1),o},e.pointInBoundingBox=function(n,t){return!(n.coordinates[1]<t[0][0]||n.coordinates[1]>t[1][0]||n.coordinates[0]<t[0][1]||n.coordinates[0]>t[1][1])},e.pointInPolygon=function(o,a){for(var r="Polygon"==a.type?[a.coordinates]:a.coordinates,i=!1,s=0;s<r.length;s++)e.pointInBoundingBox(o,n(r[s]))&&(i=!0);if(!i)return!1;for(var c=!1,s=0;s<r.length;s++)t(o.coordinates[1],o.coordinates[0],r[s])&&(c=!0);return c},e.numberToRadius=function(n){return n*Math.PI/180},e.numberToDegree=function(n){return 180*n/Math.PI},e.drawCircle=function(n,t,o){for(var a=[t.coordinates[1],t.coordinates[0]],r=n/1e3/6371,i=[e.numberToRadius(a[0]),e.numberToRadius(a[1])],o=o||15,s=[[a[0],a[1]]],c=0;c<o;c++){var u=2*Math.PI*c/o,h=Math.asin(Math.sin(i[0])*Math.cos(r)+Math.cos(i[0])*Math.sin(r)*Math.cos(u)),d=i[1]+Math.atan2(Math.sin(u)*Math.sin(r)*Math.cos(i[0]),Math.cos(r)-Math.sin(i[0])*Math.sin(h));s[c]=[],s[c][1]=e.numberToDegree(h),s[c][0]=e.numberToDegree(d)}return{type:"Polygon",coordinates:[s]}},e.rectangleCentroid=function(n){var t=n.coordinates[0],o=t[0][0],e=t[0][1],a=t[2][0],r=t[2][1],i=a-o,s=r-e;return{type:"Point",coordinates:[o+i/2,e+s/2]}},e.pointDistance=function(n,t){var o=n.coordinates[0],a=n.coordinates[1],r=t.coordinates[0],i=t.coordinates[1],s=e.numberToRadius(i-a),c=e.numberToRadius(r-o),u=Math.pow(Math.sin(s/2),2)+Math.cos(e.numberToRadius(a))*Math.cos(e.numberToRadius(i))*Math.pow(Math.sin(c/2),2),h=2*Math.atan2(Math.sqrt(u),Math.sqrt(1-u));return 6371*h*1e3},e.geometryWithinRadius=function(n,t,o){if("Point"==n.type)return e.pointDistance(n,t)<=o;if("LineString"==n.type||"Polygon"==n.type){var a={},r;r="Polygon"==n.type?n.coordinates[0]:n.coordinates;for(var i in r)if(a.coordinates=r[i],e.pointDistance(a,t)>o)return!1}return!0},e.area=function(n){for(var t=0,o=n.coordinates[0],e=o.length-1,a,r,i=0;i<o.length;e=i++){var a={x:o[i][1],y:o[i][0]},r={x:o[e][1],y:o[e][0]};t+=a.x*r.y,t-=a.y*r.x}return t/=2},e.centroid=function(n){for(var t,o=0,a=0,r=n.coordinates[0],i=r.length-1,s,c,u=0;u<r.length;i=u++){var s={x:r[u][1],y:r[u][0]},c={x:r[i][1],y:r[i][0]};t=s.x*c.y-c.x*s.y,o+=(s.x+c.x)*t,a+=(s.y+c.y)*t}return t=6*e.area(n),{type:"Point",coordinates:[a/t,o/t]}},e.simplify=function(n,t){t=t||20,n=n.map(function(n){return{lng:n.coordinates[0],lat:n.coordinates[1]}});var o,e,a,r,i,s,c,u,h,d,l,g,f,y,M,x,m,p,P,v=Math.PI/180*.5,b=new Array,T=new Array,j=new Array;if(n.length<3)return n;for(o=n.length,d=360*t/(2*Math.PI*6378137),d*=d,a=0,T[0]=0,j[0]=o-1,e=1;e>0;)if(r=T[e-1],i=j[e-1],e--,i-r>1){for(l=n[i].lng()-n[r].lng(),g=n[i].lat()-n[r].lat(),Math.abs(l)>180&&(l=360-Math.abs(l)),l*=Math.cos(v*(n[i].lat()+n[r].lat())),f=l*l+g*g,s=r+1,c=r,h=-1;s<i;s++)y=n[s].lng()-n[r].lng(),M=n[s].lat()-n[r].lat(),Math.abs(y)>180&&(y=360-Math.abs(y)),y*=Math.cos(v*(n[s].lat()+n[r].lat())),x=y*y+M*M,m=n[s].lng()-n[i].lng(),p=n[s].lat()-n[i].lat(),Math.abs(m)>180&&(m=360-Math.abs(m)),m*=Math.cos(v*(n[s].lat()+n[i].lat())),P=m*m+p*p,u=x>=f+P?P:P>=f+x?x:(y*g-M*l)*(y*g-M*l)/f,u>h&&(c=s,h=u);h<d?(b[a]=r,a++):(e++,T[e-1]=c,j[e-1]=i,e++,T[e-1]=r,j[e-1]=c)}else b[a]=r,a++;b[a]=o-1,a++;for(var I=new Array,s=0;s<a;s++)I.push(n[b[s]]);return I.map(function(n){return{type:"Point",coordinates:[n.lng,n.lat]}})},e.destinationPoint=function(n,t,o){o/=6371,t=e.numberToRadius(t);var a=e.numberToRadius(n.coordinates[0]),r=e.numberToRadius(n.coordinates[1]),i=Math.asin(Math.sin(a)*Math.cos(o)+Math.cos(a)*Math.sin(o)*Math.cos(t)),s=r+Math.atan2(Math.sin(t)*Math.sin(o)*Math.cos(a),Math.cos(o)-Math.sin(a)*Math.sin(i));return s=(s+3*Math.PI)%(2*Math.PI)-Math.PI,{type:"Point",coordinates:[e.numberToDegree(i),e.numberToDegree(s)]}}}()}}}}},{extensions:[".js",".json"]}),c=s("./node_modules/meteor/geojson-utils/main.js");"undefined"==typeof Package&&(Package={}),function(n,t){for(var o in t)o in n||(n[o]=t[o])}(Package["geojson-utils"]=c,{GeoJSON:i})}();
!function(){var e=Package.meteor.Meteor,r=Package.meteor.global,t=Package.meteor.meteorEnv,n=Package.underscore._,o=Package.ejson.EJSON,i=Package["id-map"].IdMap,a=Package["ordered-dict"].OrderedDict,s=Package.tracker.Tracker,c=Package.tracker.Deps,u=Package["mongo-id"].MongoID,d=Package.random.Random,f=Package["diff-sequence"].DiffSequence,l=Package["geojson-utils"].GeoJSON,h,p,v,_,m,y,g,w,$,b,E,I,C,O,k,S;(function(){h=function(r){var t=this;t.name=r,t._docs=new h._IdMap,t._observeQueue=new e._SynchronousQueue,t.next_qid=1,t.queries={},t._savedOriginals=null,t.paused=!1},p={},v={},_=function(e){var r=new Error(e);return r.name="MinimongoError",r},h.prototype.find=function(e,r){return 0===arguments.length&&(e={}),new h.Cursor(this,e,r)},h.Cursor=function(e,r,t){var n=this;t||(t={}),n.collection=e,n.sorter=null,n.matcher=new p.Matcher(r),h._selectorIsId(r)?n._selectorId=r:h._selectorIsIdPerhapsAsObject(r)?n._selectorId=r._id:(n._selectorId=void 0,(n.matcher.hasGeoQuery()||t.sort)&&(n.sorter=new p.Sorter(t.sort||[],{matcher:n.matcher}))),n.skip=t.skip,n.limit=t.limit,n.fields=t.fields,n._projectionFn=h._compileProjection(n.fields||{}),n._transform=h.wrapTransform(t.transform),"undefined"!=typeof s&&(n.reactive=void 0===t.reactive||t.reactive)},h.Cursor.prototype.rewind=function(){},h.prototype.findOne=function(e,r){return 0===arguments.length&&(e={}),r=r||{},r.limit=1,this.find(e,r).fetch()[0]},h.Cursor.prototype.forEach=function(e,r){var t=this,o=t._getRawObjects({ordered:!0});t.reactive&&t._depend({addedBefore:!0,removed:!0,changed:!0,movedBefore:!0}),n.each(o,function(n,o){n=t._projectionFn(n),t._transform&&(n=t._transform(n)),e.call(r,n,o,t)})},h.Cursor.prototype.getTransform=function(){return this._transform},h.Cursor.prototype.map=function(e,r){var t=this,n=[];return t.forEach(function(o,i){n.push(e.call(r,o,i,t))}),n},h.Cursor.prototype.fetch=function(){var e=this,r=[];return e.forEach(function(e){r.push(e)}),r},h.Cursor.prototype.count=function(){var e=this;return e.reactive&&e._depend({added:!0,removed:!0},!0),e._getRawObjects({ordered:!0}).length},h.Cursor.prototype._publishCursor=function(e){var r=this;if(!r.collection.name)throw new Error("Can't publish a cursor from a collection without a name.");var t=r.collection.name;if(!Package.mongo)throw new Error("Can't publish from Minimongo without the `mongo` package.");return Package.mongo.Mongo.Collection._publishCursor(r,e,t)},h.Cursor.prototype._getCollectionName=function(){var e=this;return e.collection.name},h._observeChangesCallbacksAreOrdered=function(e){if(e.added&&e.addedBefore)throw new Error("Please specify only one of added() and addedBefore()");return!(!e.addedBefore&&!e.movedBefore)},h._observeCallbacksAreOrdered=function(e){if(e.addedAt&&e.added)throw new Error("Please specify only one of added() and addedAt()");if(e.changedAt&&e.changed)throw new Error("Please specify only one of changed() and changedAt()");if(e.removed&&e.removedAt)throw new Error("Please specify only one of removed() and removedAt()");return!!(e.addedAt||e.movedTo||e.changedAt||e.removedAt)},h.ObserveHandle=function(){},n.extend(h.Cursor.prototype,{observe:function(e){var r=this;return h._observeFromObserveChanges(r,e)},observeChanges:function(e){var r=this,t=h._observeChangesCallbacksAreOrdered(e);if(!e._allow_unordered&&!t&&(r.skip||r.limit))throw new Error("must use ordered observe (ie, 'addedBefore' instead of 'added') with skip or limit");if(r.fields&&(0===r.fields._id||r.fields._id===!1))throw Error("You may not observe a cursor with {fields: {_id: 0}}");var i={dirty:!1,matcher:r.matcher,sorter:t&&r.sorter,distances:r.matcher.hasGeoQuery()&&t&&new h._IdMap,resultsSnapshot:null,ordered:t,cursor:r,projectionFn:r._projectionFn},a;r.reactive&&(a=r.collection.next_qid++,r.collection.queries[a]=i),i.results=r._getRawObjects({ordered:t,distances:i.distances}),r.collection.paused&&(i.resultsSnapshot=t?[]:new h._IdMap);var c=function(e){return e?function(){var t=this,n=arguments;r.collection.paused||r.collection._observeQueue.queueTask(function(){e.apply(t,n)})}:function(){}};if(i.added=c(e.added),i.changed=c(e.changed),i.removed=c(e.removed),t&&(i.addedBefore=c(e.addedBefore),i.movedBefore=c(e.movedBefore)),!e._suppress_initial&&!r.collection.paused){var u=t?n.bind(n.each,null,i.results):n.bind(i.results.forEach,i.results);u(function(e){var n=o.clone(e);delete n._id,t&&i.addedBefore(e._id,r._projectionFn(n),null),i.added(e._id,r._projectionFn(n))})}var d=new h.ObserveHandle;return n.extend(d,{collection:r.collection,stop:function(){r.reactive&&delete r.collection.queries[a]}}),r.reactive&&s.active&&s.onInvalidate(function(){d.stop()}),r.collection._observeQueue.drain(),d}}),h.Cursor.prototype._getRawObjects=function(e){var r=this;e=e||{};var t=e.ordered?[]:new h._IdMap;if(void 0!==r._selectorId){if(r.skip)return t;var n=r.collection._docs.get(r._selectorId);return n&&(e.ordered?t.push(n):t.set(r._selectorId,n)),t}var o;if(r.matcher.hasGeoQuery()&&e.ordered&&(e.distances?(o=e.distances,o.clear()):o=new h._IdMap),r.collection._docs.forEach(function(n,i){var a=r.matcher.documentMatches(n);return a.result&&(e.ordered?(t.push(n),o&&void 0!==a.distance&&o.set(i,a.distance)):t.set(i,n)),!(r.limit&&!r.skip&&!r.sorter&&t.length===r.limit)}),!e.ordered)return t;if(r.sorter){var i=r.sorter.getComparator({distances:o});t.sort(i)}var a=r.skip||0,s=r.limit?r.limit+a:t.length;return t.slice(a,s)},h.Cursor.prototype._depend=function(e,r){var t=this;if(s.active){var o=new s.Dependency;o.depend();var i=n.bind(o.changed,o),a={_suppress_initial:!0,_allow_unordered:r};n.each(["added","changed","removed","addedBefore","movedBefore"],function(r){e[r]&&(a[r]=i)}),t.observeChanges(a)}},h.prototype.insert=function(r,t){var i=this;r=o.clone(r),n.has(r,"_id")||(r._id=h._useOID?new u.ObjectID:d.id());var a=r._id;if(i._docs.has(a))throw _("Duplicate _id '"+a+"'");i._saveOriginal(a,void 0),i._docs.set(a,r);var s=[];for(var c in i.queries){var f=i.queries[c];if(!f.dirty){var l=f.matcher.documentMatches(r);l.result&&(f.distances&&void 0!==l.distance&&f.distances.set(a,l.distance),f.cursor.skip||f.cursor.limit?s.push(c):h._insertInResults(f,r))}}return n.each(s,function(e){i.queries[e]&&i._recomputeResults(i.queries[e])}),i._observeQueue.drain(),t&&e.defer(function(){t(null,a)}),a},h.prototype._eachPossiblyMatchingDoc=function(e,r){var t=this,n=h._idsMatchedBySelector(e);if(n)for(var o=0;o<n.length;++o){var i=n[o],a=t._docs.get(i);if(a){var s=r(a,i);if(s===!1)break}}else t._docs.forEach(r)},h.prototype.remove=function(r,t){var i=this;if(i.paused&&!i._savedOriginals&&o.equals(r,{})){var a=i._docs.size();return i._docs.clear(),n.each(i.queries,function(e){e.ordered?e.results=[]:e.results.clear()}),t&&e.defer(function(){t(null,a)}),a}var s=new p.Matcher(r),c=[];i._eachPossiblyMatchingDoc(r,function(e,r){s.documentMatches(e).result&&c.push(r)});for(var u=[],d=[],f=0;f<c.length;f++){var l=c[f],v=i._docs.get(l);n.each(i.queries,function(e,r){e.dirty||e.matcher.documentMatches(v).result&&(e.cursor.skip||e.cursor.limit?u.push(r):d.push({qid:r,doc:v}))}),i._saveOriginal(l,v),i._docs.remove(l)}return n.each(d,function(e){var r=i.queries[e.qid];r&&(r.distances&&r.distances.remove(e.doc._id),h._removeFromResults(r,e.doc))}),n.each(u,function(e){var r=i.queries[e];r&&i._recomputeResults(r)}),i._observeQueue.drain(),a=c.length,t&&e.defer(function(){t(null,a)}),a},h.prototype.update=function(r,t,i,a){var s=this;!a&&i instanceof Function&&(a=i,i=null),i||(i={});var c=new p.Matcher(r),u={},d=new h._IdMap,f=h._idsMatchedBySelector(r);n.each(s.queries,function(e,r){if((e.cursor.skip||e.cursor.limit)&&!s.paused){if(e.results instanceof h._IdMap)return void(u[r]=e.results.clone());if(!(e.results instanceof Array))throw new Error("Assertion failed: query.results not an array");var t=function(e){if(d.has(e._id))return d.get(e._id);var r;return r=f&&!n.any(f,function(r){return o.equals(r,e._id)})?e:o.clone(e),d.set(e._id,r),r};u[r]=e.results.map(t)}});var l={},v=0;s._eachPossiblyMatchingDoc(r,function(e,r){var n=c.documentMatches(e);return!(n.result&&(s._saveOriginal(r,e),s._modifyAndNotify(e,t,l,n.arrayIndices),++v,!i.multi))}),n.each(l,function(e,r){var t=s.queries[r];t&&s._recomputeResults(t,u[r])}),s._observeQueue.drain();var _;if(0===v&&i.upsert){var m=h._removeDollarOperators(r);h._modify(m,t,{isInsert:!0}),!m._id&&i.insertedId&&(m._id=i.insertedId),_=s.insert(m),v=1}var y;return i._returnObject?(y={numberAffected:v},void 0!==_&&(y.insertedId=_)):y=v,a&&e.defer(function(){a(null,y)}),y},h.prototype.upsert=function(e,r,t,o){var i=this;return o||"function"!=typeof t||(o=t,t={}),i.update(e,r,n.extend({},t,{upsert:!0,_returnObject:!0}),o)},h.prototype._modifyAndNotify=function(e,r,t,n){var i=this,a={};for(var s in i.queries){var c=i.queries[s];c.dirty||(c.ordered?a[s]=c.matcher.documentMatches(e).result:a[s]=c.results.has(e._id))}var u=o.clone(e);h._modify(e,r,{arrayIndices:n});for(s in i.queries)if(c=i.queries[s],!c.dirty){var d=a[s],f=c.matcher.documentMatches(e),l=f.result;l&&c.distances&&void 0!==f.distance&&c.distances.set(e._id,f.distance),c.cursor.skip||c.cursor.limit?(d||l)&&(t[s]=!0):d&&!l?h._removeFromResults(c,e):!d&&l?h._insertInResults(c,e):d&&l&&h._updateInResults(c,e,u)}},h._insertInResults=function(e,r){var t=o.clone(r);if(delete t._id,e.ordered){if(e.sorter){var n=h._insertInSortedList(e.sorter.getComparator({distances:e.distances}),e.results,r),i=e.results[n+1];i=i?i._id:null,e.addedBefore(r._id,e.projectionFn(t),i)}else e.addedBefore(r._id,e.projectionFn(t),null),e.results.push(r);e.added(r._id,e.projectionFn(t))}else e.added(r._id,e.projectionFn(t)),e.results.set(r._id,r)},h._removeFromResults=function(e,r){if(e.ordered){var t=h._findInOrderedResults(e,r);e.removed(r._id),e.results.splice(t,1)}else{var n=r._id;e.removed(r._id),e.results.remove(n)}},h._updateInResults=function(e,r,t){if(!o.equals(r._id,t._id))throw new Error("Can't change a doc's _id while updating");var i=e.projectionFn,a=f.makeChangedFields(i(r),i(t));if(!e.ordered)return void(n.isEmpty(a)||(e.changed(r._id,a),e.results.set(r._id,r)));var s=h._findInOrderedResults(e,r);if(n.isEmpty(a)||e.changed(r._id,a),e.sorter){e.results.splice(s,1);var c=h._insertInSortedList(e.sorter.getComparator({distances:e.distances}),e.results,r);if(s!==c){var u=e.results[c+1];u=u?u._id:null,e.movedBefore&&e.movedBefore(r._id,u)}}},h.prototype._recomputeResults=function(e,r){var t=this;return t.paused?void(e.dirty=!0):(t.paused||r||(r=e.results),e.distances&&e.distances.clear(),e.results=e.cursor._getRawObjects({ordered:e.ordered,distances:e.distances}),void(t.paused||h._diffQueryChanges(e.ordered,r,e.results,e,{projectionFn:e.projectionFn})))},h._findInOrderedResults=function(e,r){if(!e.ordered)throw new Error("Can't call _findInOrderedResults on unordered query");for(var t=0;t<e.results.length;t++)if(e.results[t]===r)return t;throw Error("object missing from query")},h._binarySearch=function(e,r,t){for(var n=0,o=r.length;o>0;){var i=Math.floor(o/2);e(t,r[n+i])>=0?(n+=i+1,o-=i+1):o=i}return n},h._insertInSortedList=function(e,r,t){if(0===r.length)return r.push(t),0;var n=h._binarySearch(e,r,t);return r.splice(n,0,t),n},h.prototype.saveOriginals=function(){var e=this;if(e._savedOriginals)throw new Error("Called saveOriginals twice without retrieveOriginals");e._savedOriginals=new h._IdMap},h.prototype.retrieveOriginals=function(){var e=this;if(!e._savedOriginals)throw new Error("Called retrieveOriginals without saveOriginals");var r=e._savedOriginals;return e._savedOriginals=null,r},h.prototype._saveOriginal=function(e,r){var t=this;t._savedOriginals&&(t._savedOriginals.has(e)||t._savedOriginals.set(e,o.clone(r)))},h.prototype.pauseObservers=function(){if(!this.paused){this.paused=!0;for(var e in this.queries){var r=this.queries[e];r.resultsSnapshot=o.clone(r.results)}}},h.prototype.resumeObservers=function(){var e=this;if(this.paused){this.paused=!1;for(var r in this.queries){var t=e.queries[r];t.dirty?(t.dirty=!1,e._recomputeResults(t,t.resultsSnapshot)):h._diffQueryChanges(t.ordered,t.resultsSnapshot,t.results,t,{projectionFn:t.projectionFn}),t.resultsSnapshot=null}e._observeQueue.drain()}}}).call(this),function(){h.wrapTransform=function(e){if(!e)return null;if(e.__wrappedTransform__)return e;var r=function(r){if(!n.has(r,"_id"))throw new Error("can only transform documents with _id");var t=r._id,i=s.nonreactive(function(){return e(r)});if(!y(i))throw new Error("transform must return object");if(n.has(i,"_id")){if(!o.equals(i._id,t))throw new Error("transformed document can't have different _id")}else i._id=t;return i};return r.__wrappedTransform__=!0,r}}.call(this),function(){m=function(e){return n.isArray(e)&&!o.isBinary(e)},y=h._isPlainObject=function(e){return e&&3===h._f._type(e)},g=function(e){return m(e)||y(e)},w=function(e,r){if(!y(e))return!1;var t=void 0;return n.each(e,function(n,o){var i="$"===o.substr(0,1);if(void 0===t)t=i;else if(t!==i){if(!r)throw new Error("Inconsistent operator: "+JSON.stringify(e));t=!1}}),!!t},$=function(e){return/^[0-9]+$/.test(e)}}.call(this),function(){p.Matcher=function(e){var r=this;r._paths={},r._hasGeoQuery=!1,r._hasWhere=!1,r._isSimple=!0,r._matchingDocument=void 0,r._selector=null,r._docMatcher=r._compileSelector(e)},n.extend(p.Matcher.prototype,{documentMatches:function(e){if(!e||"object"!=typeof e)throw Error("documentMatches needs a document");return this._docMatcher(e)},hasGeoQuery:function(){return this._hasGeoQuery},hasWhere:function(){return this._hasWhere},isSimple:function(){return this._isSimple},_compileSelector:function(r){var t=this;if(r instanceof Function)return t._isSimple=!1,t._selector=r,t._recordPathUsed(""),function(e){return{result:!!r.call(e)}};if(h._selectorIsId(r))return t._selector={_id:r},t._recordPathUsed("_id"),function(e){return{result:o.equals(e._id,r)}};if(!r||"_id"in r&&!r._id)return t._isSimple=!1,S;if("boolean"==typeof r||m(r)||o.isBinary(r))throw new Error("Invalid selector: "+r);return t._selector=o.clone(r),e(r,t,{isRoot:!0})},_recordPathUsed:function(e){this._paths[e]=!0},_getPaths:function(){return n.keys(this._paths)}});var e=function(e,t,o){o=o||{};var i=[];return n.each(e,function(e,a){if("$"===a.substr(0,1)){if(!n.has(s,a))throw new Error("Unrecognized logical operator: "+a);t._isSimple=!1,i.push(s[a](e,t,o.inElemMatch))}else{o.inElemMatch||t._recordPathUsed(a);var c=C(a),u=r(e,t,o.isRoot);i.push(function(e){var r=c(e);return u(r)})}}),j(i)},r=function(e,r,n){return e instanceof RegExp?(r._isSimple=!1,t(b(e))):w(e)?i(e,r,n):t(E(e))},t=function(e,r){return r=r||{},function(t){var o=t;r.dontExpandLeafArrays||(o=O(t,r.dontIncludeLeafArrays));var i={};return i.result=n.any(o,function(r){var t=e(r.value);return"number"==typeof t&&(r.arrayIndices||(r.arrayIndices=[t]),t=!0),t&&r.arrayIndices&&(i.arrayIndices=r.arrayIndices),t}),i}};b=function(e){return function(r){return r instanceof RegExp?n.isEqual(r,e):"string"==typeof r&&(e.lastIndex=0,e.test(r))}},E=function(e){if(w(e))throw Error("Can't create equalityValueSelector for operator object");return null==e?function(e){return null==e}:function(r){return h._f._equal(e,r)}};var i=function(e,r,o){var i=[];return n.each(e,function(a,s){var c=n.contains(["$lt","$lte","$gt","$gte"],s)&&n.isNumber(a),u=n.contains(["$ne","$eq"],s)&&!n.isObject(a),f=n.contains(["$in","$nin"],s)&&n.isArray(a)&&!n.any(a,n.isObject);if(c||f||u||(r._isSimple=!1),n.has(d,s))i.push(d[s](a,e,r,o));else{if(!n.has(I,s))throw new Error("Unrecognized operator: "+s);var l=I[s];i.push(t(l.compileElementSelector(a,e,r),l))}}),P(i)},a=function(r,t,o){if(!m(r)||n.isEmpty(r))throw Error("$and/$or/$nor must be nonempty array");return n.map(r,function(r){if(!y(r))throw Error("$or/$and/$nor entries need to be full objects");return e(r,t,{inElemMatch:o})})},s={$and:function(e,r,t){var n=a(e,r,t);return j(n)},$or:function(e,r,t){var o=a(e,r,t);return 1===o.length?o[0]:function(e){var r=n.any(o,function(r){return r(e).result});return{result:r}}},$nor:function(e,r,t){var o=a(e,r,t);return function(e){var r=n.all(o,function(r){return!r(e).result});return{result:r}}},$where:function(e,r){return r._recordPathUsed(""),r._hasWhere=!0,e instanceof Function||(e=Function("obj","return "+e)),function(r){return{result:e.call(r,r)}}},$comment:function(){return function(){return{result:!0}}}},c=function(e){return function(r){var t=e(r);return{result:!t.result}}},d={$eq:function(e){return t(E(e))},$not:function(e,t,n){return c(r(e,n))},$ne:function(e){return c(t(E(e)))},$nin:function(e){return c(t(I.$in.compileElementSelector(e)))},$exists:function(e){var r=t(function(e){return void 0!==e});return e?r:c(r)},$options:function(e,r){if(!n.has(r,"$regex"))throw Error("$options needs a $regex");return M},$maxDistance:function(e,r){if(!r.$near)throw Error("$maxDistance needs a $near");return M},$all:function(e,t,o){if(!m(e))throw Error("$all requires array");if(n.isEmpty(e))return S;var i=[];return n.each(e,function(e){if(w(e))throw Error("no $ expressions in $all");i.push(r(e,o))}),P(i)},$near:function(e,r,t,o){if(!o)throw Error("$near can't be inside another $ operator");t._hasGeoQuery=!0;var i,a,s;if(y(e)&&n.has(e,"$geometry"))i=e.$maxDistance,a=e.$geometry,s=function(e){return e&&e.type?"Point"===e.type?l.pointDistance(a,e):l.geometryWithinRadius(e,a,i)?0:i+1:null};else{if(i=r.$maxDistance,!m(e)&&!y(e))throw Error("$near argument must be coordinate pair or GeoJSON");a=_(e),s=function(e){return m(e)||y(e)?f(a,e):null}}return function(e){e=O(e);var r={result:!1};return n.each(e,function(e){var t=s(e.value);null===t||t>i||void 0!==r.distance&&r.distance<=t||(r.result=!0,r.distance=t,e.arrayIndices?r.arrayIndices=e.arrayIndices:delete r.arrayIndices)}),r}}},f=function(e,r){e=_(e),r=_(r);var t=e[0]-r[0],o=e[1]-r[1];return n.isNaN(t)||n.isNaN(o)?null:Math.sqrt(t*t+o*o)},_=function(e){return n.map(e,n.identity)},k=function(e){return{compileElementSelector:function(r){if(m(r))return function(){return!1};void 0===r&&(r=null);var t=h._f._type(r);return function(n){return void 0===n&&(n=null),h._f._type(n)===t&&e(h._f._cmp(n,r))}}}};I={$lt:k(function(e){return e<0}),$gt:k(function(e){return e>0}),$lte:k(function(e){return e<=0}),$gte:k(function(e){return e>=0}),$mod:{compileElementSelector:function(e){if(!m(e)||2!==e.length||"number"!=typeof e[0]||"number"!=typeof e[1])throw Error("argument to $mod must be an array of two numbers");var r=e[0],t=e[1];return function(e){return"number"==typeof e&&e%r===t}}},$in:{compileElementSelector:function(e){if(!m(e))throw Error("$in needs an array");var r=[];return n.each(e,function(e){if(e instanceof RegExp)r.push(b(e));else{if(w(e))throw Error("cannot nest $ under $in");r.push(E(e))}}),function(e){return void 0===e&&(e=null),n.any(r,function(r){return r(e)})}}},$size:{dontExpandLeafArrays:!0,compileElementSelector:function(e){if("string"==typeof e)e=0;else if("number"!=typeof e)throw Error("$size needs a number");return function(r){return m(r)&&r.length===e}}},$type:{dontIncludeLeafArrays:!0,compileElementSelector:function(e){if("number"!=typeof e)throw Error("$type needs a number");return function(r){return void 0!==r&&h._f._type(r)===e}}},$regex:{compileElementSelector:function(e,r){if(!("string"==typeof e||e instanceof RegExp))throw Error("$regex has to be a string or RegExp");var t;if(void 0!==r.$options){if(/[^gim]/.test(r.$options))throw new Error("Only the i, m, and g regexp options are supported");var n=e instanceof RegExp?e.source:e;t=new RegExp(n,r.$options)}else t=e instanceof RegExp?e:new RegExp(e);return b(t)}},$elemMatch:{dontExpandLeafArrays:!0,compileElementSelector:function(t,o,i){if(!y(t))throw Error("$elemMatch need an object");var a,c;return w(n.omit(t,n.keys(s)),!0)?(a=r(t,i),c=!1):(a=e(t,i,{inElemMatch:!0}),c=!0),function(e){if(!m(e))return!1;for(var r=0;r<e.length;++r){var t=e[r],n;if(c){if(!y(t)&&!m(t))return!1;n=t}else n=[{value:t,dontIterate:!0}];if(a(n).result)return r}return!1}}}},C=function(e,r){r=r||{};var t=e.split("."),o=t.length?t[0]:"",i=$(o),a=t.length>=2&&$(t[1]),s;t.length>1&&(s=C(t.slice(1).join(".")));var c=function(e){return e.dontIterate||delete e.dontIterate,e.arrayIndices&&!e.arrayIndices.length&&delete e.arrayIndices,e};return function(e,t){if(t||(t=[]),m(e)){if(!(i&&o<e.length))return[];t=t.concat(+o,"x")}var u=e[o];if(!s)return[c({value:u,dontIterate:m(e)&&m(u),arrayIndices:t})];if(!g(u))return m(e)?[]:[c({value:void 0,arrayIndices:t})];var d=[],f=function(e){Array.prototype.push.apply(d,e)};return f(s(u,t)),!m(u)||a&&r.forSort||n.each(u,function(e,r){y(e)&&f(s(e,t.concat(r)))}),d}},v.makeLookupFunction=C,O=function(e,r){var t=[];return n.each(e,function(e){var o=m(e.value);r&&o&&!e.dontIterate||t.push({value:e.value,arrayIndices:e.arrayIndices}),o&&!e.dontIterate&&n.each(e.value,function(r,n){t.push({value:r,arrayIndices:(e.arrayIndices||[]).concat(n)})})}),t};var S=function(e){return{result:!1}},M=function(e){return{result:!0}},A=function(e){return 0===e.length?M:1===e.length?e[0]:function(r){var t={};return t.result=n.all(e,function(e){var n=e(r);return n.result&&void 0!==n.distance&&void 0===t.distance&&(t.distance=n.distance),n.result&&n.arrayIndices&&(t.arrayIndices=n.arrayIndices),n.result}),t.result||(delete t.distance,delete t.arrayIndices),t}},j=A,P=A;h._f={_type:function(e){return"number"==typeof e?1:"string"==typeof e?2:"boolean"==typeof e?8:m(e)?4:null===e?10:e instanceof RegExp?11:"function"==typeof e?13:e instanceof Date?9:o.isBinary(e)?5:e instanceof u.ObjectID?7:3},_equal:function(e,r){return o.equals(e,r,{keyOrderSensitive:!0})},_typeorder:function(e){return[-1,1,2,3,4,5,-1,6,7,8,0,9,-1,100,2,100,1,8,1][e]},_cmp:function(e,r){if(void 0===e)return void 0===r?0:-1;if(void 0===r)return 1;var t=h._f._type(e),n=h._f._type(r),o=h._f._typeorder(t),i=h._f._typeorder(n);if(o!==i)return o<i?-1:1;if(t!==n)throw Error("Missing type coercion logic in _cmp");if(7===t&&(t=n=2,e=e.toHexString(),r=r.toHexString()),9===t&&(t=n=1,e=e.getTime(),r=r.getTime()),1===t)return e-r;if(2===n)return e<r?-1:e===r?0:1;if(3===t){var a=function(e){var r=[];for(var t in e)r.push(t),r.push(e[t]);return r};return h._f._cmp(a(e),a(r))}if(4===t)for(var s=0;;s++){if(s===e.length)return s===r.length?0:-1;if(s===r.length)return 1;var c=h._f._cmp(e[s],r[s]);if(0!==c)return c}if(5===t){if(e.length!==r.length)return e.length-r.length;for(s=0;s<e.length;s++){if(e[s]<r[s])return-1;if(e[s]>r[s])return 1}return 0}if(8===t)return e?r?0:1:r?-1:0;if(10===t)return 0;if(11===t)throw Error("Sorting not supported on regular expression");if(13===t)throw Error("Sorting not supported on Javascript code");throw Error("Unknown type to sort")}},h._removeDollarOperators=function(e){var r={};for(var t in e)"$"!==t.substr(0,1)&&(r[t]=e[t]);return r}}.call(this),function(){p.Sorter=function(r,t){var o=this;t=t||{},o._sortSpecParts=[],o._sortFunction=null;var i=function(e,r){if(!e)throw Error("sort keys must be non-empty");if("$"===e.charAt(0))throw Error("unsupported sort key: "+e);o._sortSpecParts.push({path:e,lookup:C(e,{forSort:!0}),ascending:r})};if(r instanceof Array)for(var a=0;a<r.length;a++)"string"==typeof r[a]?i(r[a],!0):i(r[a][0],"desc"!==r[a][1]);else if("object"==typeof r)n.each(r,function(e,r){i(r,e>=0)});else{if("function"!=typeof r)throw Error("Bad sort specification: "+JSON.stringify(r));o._sortFunction=r}if(!o._sortFunction){if(o.affectedByModifier){var s={};n.each(o._sortSpecParts,function(e){s[e.path]=1}),o._selectorForAffectedByModifier=new p.Matcher(s)}o._keyComparator=e(n.map(o._sortSpecParts,function(e,r){return o._keyFieldComparator(r)})),o._keyFilter=null,t.matcher&&o._useWithMatcher(t.matcher)}},n.extend(p.Sorter.prototype,{getComparator:function(r){var t=this;if(!r||!r.distances)return t._getBaseComparator();var n=r.distances;return e([t._getBaseComparator(),function(e,r){if(!n.has(e._id))throw Error("Missing distance for "+e._id);if(!n.has(r._id))throw Error("Missing distance for "+r._id);return n.get(e._id)-n.get(r._id)}])},_getPaths:function(){var e=this;return n.pluck(e._sortSpecParts,"path")},_getMinKeyFromDoc:function(e){var r=this,t=null;if(r._generateKeysFromDoc(e,function(e){if(r._keyCompatibleWithSelector(e))return null===t?void(t=e):void(r._compareKeys(e,t)<0&&(t=e))}),null===t)throw Error("sort selector found no keys in doc?");return t},_keyCompatibleWithSelector:function(e){var r=this;return!r._keyFilter||r._keyFilter(e)},_generateKeysFromDoc:function(e,r){var t=this;if(0===t._sortSpecParts.length)throw new Error("can't generate keys without a spec");var o=[],i=function(e){return e.join(",")+","},a=null;if(n.each(t._sortSpecParts,function(r,t){var s=O(r.lookup(e),!0);s.length||(s=[{value:null}]);var c=!1;if(o[t]={},n.each(s,function(e){if(!e.arrayIndices){if(s.length>1)throw Error("multiple branches but no array used?");return void(o[t][""]=e.value)}c=!0;var r=i(e.arrayIndices);if(n.has(o[t],r))throw Error("duplicate path: "+r);if(o[t][r]=e.value,a&&!n.has(a,r))throw Error("cannot index parallel arrays")}),a){if(!n.has(o[t],"")&&n.size(a)!==n.size(o[t]))throw Error("cannot index parallel arrays!")}else c&&(a={},n.each(o[t],function(e,r){a[r]=!0}))}),!a){var s=n.map(o,function(e){if(!n.has(e,""))throw Error("no value in sole key case?");return e[""]});return void r(s)}n.each(a,function(e,t){var i=n.map(o,function(e){if(n.has(e,""))return e[""];if(!n.has(e,t))throw Error("missing path?");return e[t]});r(i)})},_compareKeys:function(e,r){var t=this;if(e.length!==t._sortSpecParts.length||r.length!==t._sortSpecParts.length)throw Error("Key has wrong length");return t._keyComparator(e,r)},_keyFieldComparator:function(e){var r=this,t=!r._sortSpecParts[e].ascending;return function(r,n){var o=h._f._cmp(r[e],n[e]);return t&&(o=-o),o}},_getBaseComparator:function(){var e=this;return e._sortFunction?e._sortFunction:e._sortSpecParts.length?function(r,t){var n=e._getMinKeyFromDoc(r),o=e._getMinKeyFromDoc(t);return e._compareKeys(n,o)}:function(e,r){return 0}},_useWithMatcher:function(e){var r=this;if(r._keyFilter)throw Error("called _useWithMatcher twice?");if(!n.isEmpty(r._sortSpecParts)){var t=e._selector;if(!(t instanceof Function)){var o={};n.each(r._sortSpecParts,function(e,r){o[e.path]=[]}),n.each(t,function(e,r){var t=o[r];if(t){if(e instanceof RegExp){if(e.ignoreCase||e.multiline)return;return void t.push(b(e))}return w(e)?void n.each(e,function(r,o){n.contains(["$lt","$lte","$gt","$gte"],o)&&t.push(I[o].compileElementSelector(r)),"$regex"!==o||e.$options||t.push(I.$regex.compileElementSelector(r,e))}):void t.push(E(e))}}),n.isEmpty(o[r._sortSpecParts[0].path])||(r._keyFilter=function(e){return n.all(r._sortSpecParts,function(r,t){return n.all(o[r.path],function(r){return r(e[t])})})})}}}});var e=function(e){return function(r,t){for(var n=0;n<e.length;++n){var o=e[n](r,t);if(0!==o)return o}return 0}}}.call(this),function(){h._compileProjection=function(e){h._checkSupportedProjection(e);var r=!!n.isUndefined(e._id)||e._id,t=k(e),i=function(e,r){if(n.isArray(e))return n.map(e,function(e){return i(e,r)});var a=t.including?{}:o.clone(e);return n.each(r,function(r,s){n.has(e,s)&&(n.isObject(r)?n.isObject(e[s])&&(a[s]=i(e[s],r)):t.including?a[s]=o.clone(e[s]):delete a[s])}),a};return function(e){var o=i(e,t.tree);return r&&n.has(e,"_id")&&(o._id=e._id),!r&&n.has(o,"_id")&&delete o._id,o}},k=function(e){var r=n.keys(e).sort();!(r.length>0)||1===r.length&&"_id"===r[0]||n.contains(r,"_id")&&e._id||(r=n.reject(r,function(e){return"_id"===e}));var t=null;n.each(r,function(r){var n=!!e[r];if(null===t&&(t=n),t!==n)throw _("You cannot currently mix including and excluding fields.")});var o=S(r,function(e){return t},function(e,r,t){var n=t,o=r;throw _("both "+n+" and "+o+" found in fields option, using both of them may trigger unexpected behavior. Did you mean to use only one of them?")});return{tree:o,including:t}},S=function(e,r,t,o){return o=o||{},n.each(e,function(e){var i=o,a=e.split("."),s=n.all(a.slice(0,-1),function(r,o){if(n.has(i,r)){if(!n.isObject(i[r])&&(i[r]=t(i[r],a.slice(0,o+1).join("."),e),!n.isObject(i[r])))return!1}else i[r]={};return i=i[r],!0});if(s){var c=n.last(a);n.has(i,c)?i[c]=t(i[c],e,e):i[c]=r(e)}}),o},h._checkSupportedProjection=function(e){if(!n.isObject(e)||n.isArray(e))throw _("fields option must be an object");n.each(e,function(e,r){if(n.contains(r.split("."),"$"))throw _("Minimongo doesn't support $ operator in projections yet.");if("object"==typeof e&&n.intersection(["$elemMatch","$meta","$slice"],n.keys(e)).length>0)throw _("Minimongo doesn't support operators in projections yet.");if(n.indexOf([1,0,!0,!1],e)===-1)throw _("Projection values should be one of 1, 0, true, or false")})}}.call(this),function(){h._modify=function(i,a,s){if(s=s||{},!y(a))throw _("Modifier must be an object");a=o.clone(a);var c=w(a),u;if(c)u=o.clone(i),n.each(a,function(o,i){var a=t[i];if(s.isInsert&&"$setOnInsert"===i&&(a=t.$set),!a)throw _("Invalid modifier specified "+i);n.each(o,function(t,o){if(""===o)throw _("An empty update path is not valid.");if("_id"===o&&"$setOnInsert"!==i)throw _("Mod on _id not allowed");var c=o.split(".");if(!n.all(c,n.identity))throw _("The update path '"+o+"' contains an empty field name, which is not allowed.");var d=n.has(r,i),f="$rename"===i,l=e(u,c,{noCreate:r[i],forbidArray:"$rename"===i,arrayIndices:s.arrayIndices}),h=c.pop();a(l,h,t,o,u)})});else{if(a._id&&!o.equals(i._id,a._id))throw _("Cannot change the _id of a document");for(var d in a)if(/\./.test(d))throw _("When replacing document, field name may not contain '.'");u=a}n.each(n.keys(i),function(e){"_id"!==e&&delete i[e]}),n.each(u,function(e,r){i[r]=e})};var e=function(e,r,t){t=t||{};for(var n=!1,o=0;o<r.length;o++){var i=o===r.length-1,a=r[o],s=g(e);if(!s){if(t.noCreate)return;var c=_("cannot use the part '"+a+"' to traverse "+e);throw c.setPropertyError=!0,c}if(e instanceof Array){if(t.forbidArray)return null;if("$"===a){if(n)throw _("Too many positional (i.e. '$') elements");if(!t.arrayIndices||!t.arrayIndices.length)throw _("The positional operator did not find the match needed from the query");a=t.arrayIndices[0],n=!0}else{if(!$(a)){if(t.noCreate)return;throw _("can't append to array using string field name ["+a+"]")}a=parseInt(a)}if(i&&(r[o]=a),t.noCreate&&a>=e.length)return;for(;e.length<a;)e.push(null);if(!i)if(e.length===a)e.push({});else if("object"!=typeof e[a])throw _("can't modify field '"+r[o+1]+"' of list value "+JSON.stringify(e[a]))}else{if(a.length&&"$"===a.substr(0,1))throw _("can't set field named "+a);if(!(a in e)){if(t.noCreate)return;i||(e[a]={})}}if(i)return e;e=e[a]}},r={$unset:!0,$pop:!0,$rename:!0,$pull:!0,$pullAll:!0},t={$currentDate:function(e,r,t){if("object"==typeof t&&t.hasOwnProperty("$type")){if("date"!==t.$type)throw _("Minimongo does currently only support the date type in $currentDate modifiers")}else if(t!==!0)throw _("Invalid $currentDate modifier");e[r]=new Date},$min:function(e,r,t){if("number"!=typeof t)throw _("Modifier $min allowed for numbers only");if(r in e){if("number"!=typeof e[r])throw _("Cannot apply $min modifier to non-number");e[r]>t&&(e[r]=t)}else e[r]=t},$max:function(e,r,t){if("number"!=typeof t)throw _("Modifier $max allowed for numbers only");if(r in e){if("number"!=typeof e[r])throw _("Cannot apply $max modifier to non-number");e[r]<t&&(e[r]=t)}else e[r]=t},$inc:function(e,r,t){if("number"!=typeof t)throw _("Modifier $inc allowed for numbers only");if(r in e){if("number"!=typeof e[r])throw _("Cannot apply $inc modifier to non-number");e[r]+=t}else e[r]=t},$set:function(e,r,t){if(!n.isObject(e)){var o=_("Cannot set property on non-object field");throw o.setPropertyError=!0,o}if(null===e){var o=_("Cannot set property on null");throw o.setPropertyError=!0,o}e[r]=t},$setOnInsert:function(e,r,t){},$unset:function(e,r,t){void 0!==e&&(e instanceof Array?r in e&&(e[r]=null):delete e[r])},$push:function(e,r,t){if(void 0===e[r]&&(e[r]=[]),!(e[r]instanceof Array))throw _("Cannot apply $push modifier to non-array");if(!t||!t.$each)return void e[r].push(t);var n=t.$each;
if(!(n instanceof Array))throw _("$each must be an array");var o=void 0;if("$position"in t){if("number"!=typeof t.$position)throw _("$position must be a numeric value");if(t.$position<0)throw _("$position in $push must be zero or positive");o=t.$position}var i=void 0;if("$slice"in t){if("number"!=typeof t.$slice)throw _("$slice must be a numeric value");if(t.$slice>0)throw _("$slice in $push must be zero or negative");i=t.$slice}var a=void 0;if(t.$sort){if(void 0===i)throw _("$sort requires $slice to be present");a=new p.Sorter(t.$sort).getComparator();for(var s=0;s<n.length;s++)if(3!==h._f._type(n[s]))throw _("$push like modifiers using $sort require all elements to be objects")}if(void 0===o)for(var c=0;c<n.length;c++)e[r].push(n[c]);else{for(var u=[o,0],c=0;c<n.length;c++)u.push(n[c]);Array.prototype.splice.apply(e[r],u)}a&&e[r].sort(a),void 0!==i&&(0===i?e[r]=[]:e[r]=e[r].slice(i))},$pushAll:function(e,r,t){if(!("object"==typeof t&&t instanceof Array))throw _("Modifier $pushAll/pullAll allowed for arrays only");var n=e[r];if(void 0===n)e[r]=t;else{if(!(n instanceof Array))throw _("Cannot apply $pushAll modifier to non-array");for(var o=0;o<t.length;o++)n.push(t[o])}},$addToSet:function(e,r,t){var o=!1;if("object"==typeof t)for(var i in t){"$each"===i&&(o=!0);break}var a=o?t.$each:[t],s=e[r];if(void 0===s)e[r]=a;else{if(!(s instanceof Array))throw _("Cannot apply $addToSet modifier to non-array");n.each(a,function(e){for(var r=0;r<s.length;r++)if(h._f._equal(e,s[r]))return;s.push(e)})}},$pop:function(e,r,t){if(void 0!==e){var n=e[r];if(void 0!==n){if(!(n instanceof Array))throw _("Cannot apply $pop modifier to non-array");"number"==typeof t&&t<0?n.splice(0,1):n.pop()}}},$pull:function(e,r,t){if(void 0!==e){var n=e[r];if(void 0!==n){if(!(n instanceof Array))throw _("Cannot apply $pull/pullAll modifier to non-array");var o=[];if(null==t||"object"!=typeof t||t instanceof Array)for(var i=0;i<n.length;i++)h._f._equal(n[i],t)||o.push(n[i]);else for(var a=new p.Matcher(t),i=0;i<n.length;i++)a.documentMatches(n[i]).result||o.push(n[i]);e[r]=o}}},$pullAll:function(e,r,t){if(!("object"==typeof t&&t instanceof Array))throw _("Modifier $pushAll/pullAll allowed for arrays only");if(void 0!==e){var n=e[r];if(void 0!==n){if(!(n instanceof Array))throw _("Cannot apply $pull/pullAll modifier to non-array");for(var o=[],i=0;i<n.length;i++){for(var a=!1,s=0;s<t.length;s++)if(h._f._equal(n[i],t[s])){a=!0;break}a||o.push(n[i])}e[r]=o}}},$rename:function(r,t,n,o,i){if(o===n)throw _("$rename source must differ from target");if(null===r)throw _("$rename source field invalid");if("string"!=typeof n)throw _("$rename target must be a string");if(void 0!==r){var a=r[t];delete r[t];var s=n.split("."),c=e(i,s,{forbidArray:!0});if(null===c)throw _("$rename target field invalid");var u=s.pop();c[u]=a}},$bit:function(e,r,t){throw _("$bit is not supported")}}}.call(this),function(){h._diffQueryChanges=function(e,r,t,n,o){return f.diffQueryChanges(e,r,t,n,o)},h._diffQueryUnorderedChanges=function(e,r,t,n){return f.diffQueryUnorderedChanges(e,r,t,n)},h._diffQueryOrderedChanges=function(e,r,t,n){return f.diffQueryOrderedChanges(e,r,t,n)},h._diffObjects=function(e,r,t){return f.diffObjects(e,r,t)}}.call(this),function(){h._IdMap=function(){var e=this;i.call(e,u.idStringify,u.idParse)},e._inherits(h._IdMap,i)}.call(this),function(){h._CachingChangeObserver=function(e){var r=this;e=e||{};var t=e.callbacks&&h._observeChangesCallbacksAreOrdered(e.callbacks);if(n.has(e,"ordered")){if(r.ordered=e.ordered,e.callbacks&&e.ordered!==t)throw Error("ordered option doesn't match callbacks")}else{if(!e.callbacks)throw Error("must provide ordered or callbacks");r.ordered=t}var i=e.callbacks||{};r.ordered?(r.docs=new a(u.idStringify),r.applyChange={addedBefore:function(e,t,n){var a=o.clone(t);a._id=e,i.addedBefore&&i.addedBefore.call(r,e,t,n),i.added&&i.added.call(r,e,t),r.docs.putBefore(e,a,n||null)},movedBefore:function(e,t){var n=r.docs.get(e);i.movedBefore&&i.movedBefore.call(r,e,t),r.docs.moveBefore(e,t||null)}}):(r.docs=new h._IdMap,r.applyChange={added:function(e,t){var n=o.clone(t);i.added&&i.added.call(r,e,t),n._id=e,r.docs.set(e,n)}}),r.applyChange.changed=function(e,t){var n=r.docs.get(e);if(!n)throw new Error("Unknown id for changed: "+e);i.changed&&i.changed.call(r,e,o.clone(t)),f.applyChanges(n,t)},r.applyChange.removed=function(e){i.removed&&i.removed.call(r,e),r.docs.remove(e)}},h._observeFromObserveChanges=function(e,r){var t=e.getTransform()||function(e){return e},i=!!r._suppress_initial,a;if(h._observeCallbacksAreOrdered(r)){var s=!r._no_indices;a={addedBefore:function(e,o,a){var c=this;if(!i&&(r.addedAt||r.added)){var u=t(n.extend(o,{_id:e}));if(r.addedAt){var d=s?a?c.docs.indexOf(a):c.docs.size():-1;r.addedAt(u,d,a)}else r.added(u)}},changed:function(e,n){var i=this;if(r.changedAt||r.changed){var a=o.clone(i.docs.get(e));if(!a)throw new Error("Unknown id for changed: "+e);var c=t(o.clone(a));if(f.applyChanges(a,n),a=t(a),r.changedAt){var u=s?i.docs.indexOf(e):-1;r.changedAt(a,c,u)}else r.changed(a,c)}},movedBefore:function(e,n){var i=this;if(r.movedTo){var a=s?i.docs.indexOf(e):-1,c=s?n?i.docs.indexOf(n):i.docs.size():-1;c>a&&--c,r.movedTo(t(o.clone(i.docs.get(e))),a,c,n||null)}},removed:function(e){var n=this;if(r.removedAt||r.removed){var o=t(n.docs.get(e));if(r.removedAt){var i=s?n.docs.indexOf(e):-1;r.removedAt(o,i)}else r.removed(o)}}}}else a={added:function(e,o){if(!i&&r.added){var a=n.extend(o,{_id:e});r.added(t(a))}},changed:function(e,n){var i=this;if(r.changed){var a=i.docs.get(e),s=o.clone(a);f.applyChanges(s,n),r.changed(t(s),t(o.clone(a)))}},removed:function(e){var n=this;r.removed&&r.removed(t(n.docs.get(e)))}};var c=new h._CachingChangeObserver({callbacks:a}),u=e.observeChanges(c.applyChange);return i=!1,u}}.call(this),function(){h._selectorIsId=function(e){return"string"==typeof e||"number"==typeof e||e instanceof u.ObjectID},h._selectorIsIdPerhapsAsObject=function(e){return h._selectorIsId(e)||e&&"object"==typeof e&&e._id&&h._selectorIsId(e._id)&&1===n.size(e)},h._idsMatchedBySelector=function(e){if(h._selectorIsId(e))return[e];if(!e)return null;if(n.has(e,"_id"))return h._selectorIsId(e._id)?[e._id]:e._id&&e._id.$in&&n.isArray(e._id.$in)&&!n.isEmpty(e._id.$in)&&n.all(e._id.$in,h._selectorIsId)?e._id.$in:null;if(e.$and&&n.isArray(e.$and))for(var r=0;r<e.$and.length;++r){var t=h._idsMatchedBySelector(e.$and[r]);if(t)return t}return null}}.call(this),"undefined"==typeof Package&&(Package={}),function(e,r){for(var t in r)t in e||(e[t]=r[t])}(Package.minimongo={},{LocalCollection:h,Minimongo:p,MinimongoTest:v})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.modules.meteorInstall,a=Package.modules.Buffer,i=Package.modules.process,o=Package.underscore._,c=Package.ejson.EJSON,s,u,f=r({node_modules:{meteor:{check:{"match.js":["./isPlainObject.js",function(t,n){var r=new e.EnvironmentVariable,a=t("./isPlainObject.js").isPlainObject,i=n.check=function(e,t){var n=r.getOrNullIfOutsideFiber();n&&n.checking(e);var a=y(e,t);if(a){var i=new s.Error(a.message);throw a.path&&(i.message+=" in field "+a.path,i.path=a.path),i}},s=n.Match={Optional:function(e){return new u(e)},Maybe:function(e){return new f(e)},OneOf:function(){return new l(o.toArray(arguments))},Any:["__any__"],Where:function(e){return new h(e)},ObjectIncluding:function(e){return new p(e)},ObjectWithValues:function(e){return new g(e)},Integer:["__integer__"],Error:e.makeErrorType("Match.Error",function(t){this.message="Match error: "+t,this.path="",this.sanitizedError=new e.Error(400,"Match failed")}),test:function(e,t){return!y(e,t)},_failIfArgumentsAreNotAllChecked:function(e,t,n,a){var i=new v(n,a),o=r.withValue(i,function(){return e.apply(t,n)});return i.throwUnlessAllArgumentsHaveBeenChecked(),o}},u=function(e){this.pattern=e},f=function(e){this.pattern=e},l=function(e){if(o.isEmpty(e))throw new Error("Must provide at least one choice to Match.OneOf");this.choices=e},h=function(e){this.condition=e},p=function(e){this.pattern=e},g=function(e){this.pattern=e},d=function(e,t){if(t=t||{},null===e)return"null";if(t.onlyShowType)return typeof e;if("object"!=typeof e)return c.stringify(e);try{JSON.stringify(e)}catch(t){if("TypeError"===t.name)return typeof e}return c.stringify(e)},m=[[String,"string"],[Number,"number"],[Boolean,"boolean"],[Function,"function"],[void 0,"undefined"]],y=function(e,t){if(t===s.Any)return!1;for(var n=0;n<m.length;++n)if(t===m[n][0])return typeof e!==m[n][1]&&{message:"Expected "+m[n][1]+", got "+d(e,{onlyShowType:!0}),path:""};if(null===t)return null!==e&&{message:"Expected null, got "+d(e),path:""};if("string"==typeof t||"number"==typeof t||"boolean"==typeof t)return e!==t&&{message:"Expected "+t+", got "+d(e),path:""};if(t===s.Integer)return("number"!=typeof e||(0|e)!==e)&&{message:"Expected Integer, got "+d(e),path:""};if(t===Object&&(t=s.ObjectIncluding({})),t instanceof Array){if(1!==t.length)return{message:"Bad pattern: arrays must have one type element"+d(t),path:""};if(!o.isArray(e)&&!o.isArguments(e))return{message:"Expected array, got "+d(e),path:""};for(var n=0,r=e.length;n<r;n++){var i=y(e[n],t[0]);if(i)return i.path=k(n,i.path),i}return!1}if(t instanceof h){var i;try{i=t.condition(e)}catch(e){if(!(e instanceof s.Error))throw e;return{message:e.message,path:e.path}}return!i&&{message:"Failed Match.Where validation",path:""}}if(t instanceof f?t=s.OneOf(void 0,null,t.pattern):t instanceof u&&(t=s.OneOf(void 0,t.pattern)),t instanceof l){for(var n=0;n<t.choices.length;++n){var i=y(e,t.choices[n]);if(!i)return!1}return{message:"Failed Match.OneOf, Match.Maybe or Match.Optional validation",path:""}}if(t instanceof Function)return!(e instanceof t)&&{message:"Expected "+(t.name||"particular constructor"),path:""};var c=!1,v;if(t instanceof p&&(c=!0,t=t.pattern),t instanceof g&&(c=!0,v=[t.pattern],t={}),"object"!=typeof t)return{message:"Bad pattern: unknown pattern type",path:""};if("object"!=typeof e)return{message:"Expected object, got "+typeof e,path:""};if(null===e)return{message:"Expected object, got null",path:""};if(!a(e))return{message:"Expected plain object",path:""};var b={},w={};o.each(t,function(e,t){e instanceof u||e instanceof f?w[t]=e.pattern:b[t]=e});for(var O=function(e){var t=[];if(o.isObject(e))for(var n in e)t.push(n);return t},j=O(e),n=0,r=j.length;n<r;n++){var E=j[n],P=e[E];if(o.has(b,E)){var i=y(P,b[E]);if(i)return i.path=k(E,i.path),i;delete b[E]}else if(o.has(w,E)){var i=y(P,w[E]);if(i)return i.path=k(E,i.path),i}else{if(!c)return{message:"Unknown key",path:E};if(v){var i=y(P,v[0]);if(i)return i.path=k(E,i.path),i}}}var j=o.keys(b);return j.length?{message:"Missing key '"+j[0]+"'",path:""}:void 0},v=function(e,t){var n=this;n.args=o.clone(e),n.args.reverse(),n.description=t};o.extend(v.prototype,{checking:function(e){var t=this;t._checkingOneValue(e)||(o.isArray(e)||o.isArguments(e))&&o.each(e,o.bind(t._checkingOneValue,t))},_checkingOneValue:function(e){for(var t=this,n=0;n<t.args.length;++n)if(e===t.args[n]||o.isNaN(e)&&o.isNaN(t.args[n]))return t.args.splice(n,1),!0;return!1},throwUnlessAllArgumentsHaveBeenChecked:function(){var e=this;if(!o.isEmpty(e.args))throw new Error("Did not check() all arguments during "+e.description)}});var b=["do","if","in","for","let","new","try","var","case","else","enum","eval","false","null","this","true","void","with","break","catch","class","const","super","throw","while","yield","delete","export","import","public","return","static","switch","typeof","default","extends","finally","package","private","continue","debugger","function","arguments","interface","protected","implements","instanceof"],k=function(e,t){return"number"==typeof e||e.match(/^[0-9]+$/)?e="["+e+"]":e.match(/^[a-z_$][0-9a-z_$]*$/i)&&!o.contains(b,e)||(e=JSON.stringify([e])),t&&"["!==t[0]?e+"."+t:e+t}}],"isPlainObject.js":function(e,t){function n(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?a[i.call(e)]||"object":typeof e}function r(e){return null!=e&&e==e.window}var a={},i=a.toString,c=a.hasOwnProperty,s={};o.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){a["[object "+e+"]"]=e.toLowerCase()}),t.isPlainObject=function(e){var t;if(!e||"object"!==n(e)||e.nodeType||r(e))return!1;try{if(e.constructor&&!c.call(e,"constructor")&&!c.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(e){return!1}if(s.ownLast)for(t in e)return c.call(e,t);for(t in e);return void 0===t||c.call(e,t)}}}}}},{extensions:[".js",".json"]}),l=f("./node_modules/meteor/check/match.js");"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.check=l,{check:s,Match:u})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,r=Package.meteor.meteorEnv,n=Package.underscore._,i=Package.random.Random,a;(function(){a=function(e){var t=this;n.extend(t,n.defaults(n.clone(e||{}),{baseTimeout:1e3,exponent:2.2,maxTimeout:3e5,minTimeout:10,minCount:2,fuzz:.5})),t.retryTimer=null},n.extend(a.prototype,{clear:function(){var e=this;e.retryTimer&&clearTimeout(e.retryTimer),e.retryTimer=null},_timeout:function(e){var t=this;if(e<t.minCount)return t.minTimeout;var r=Math.min(t.maxTimeout,t.baseTimeout*Math.pow(t.exponent,e));return r*=i.fraction()*t.fuzz+(1-t.fuzz/2)},retryLater:function(t,r){var n=this,i=n._timeout(t);return n.retryTimer&&clearTimeout(n.retryTimer),n.retryTimer=e.setTimeout(r,i),i}})}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var r in t)r in e||(e[r]=t[r])}(Package.retry={},{Retry:a})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,a=Package.meteor.meteorEnv,n=Package.check.check,r=Package.check.Match,i=Package.random.Random,o=Package.ejson.EJSON,c=Package.underscore._,s=Package.tracker.Tracker,l=Package.tracker.Deps,u=Package.retry.Retry,d;(function(){d={}}).call(this),function(){d.Heartbeat=function(e){var t=this;t.heartbeatInterval=e.heartbeatInterval,t.heartbeatTimeout=e.heartbeatTimeout,t._sendPing=e.sendPing,t._onTimeout=e.onTimeout,t._seenPacket=!1,t._heartbeatIntervalHandle=null,t._heartbeatTimeoutHandle=null},c.extend(d.Heartbeat.prototype,{stop:function(){var e=this;e._clearHeartbeatIntervalTimer(),e._clearHeartbeatTimeoutTimer()},start:function(){var e=this;e.stop(),e._startHeartbeatIntervalTimer()},_startHeartbeatIntervalTimer:function(){var t=this;t._heartbeatIntervalHandle=e.setInterval(c.bind(t._heartbeatIntervalFired,t),t.heartbeatInterval)},_startHeartbeatTimeoutTimer:function(){var t=this;t._heartbeatTimeoutHandle=e.setTimeout(c.bind(t._heartbeatTimeoutFired,t),t.heartbeatTimeout)},_clearHeartbeatIntervalTimer:function(){var t=this;t._heartbeatIntervalHandle&&(e.clearInterval(t._heartbeatIntervalHandle),t._heartbeatIntervalHandle=null)},_clearHeartbeatTimeoutTimer:function(){var t=this;t._heartbeatTimeoutHandle&&(e.clearTimeout(t._heartbeatTimeoutHandle),t._heartbeatTimeoutHandle=null)},_heartbeatIntervalFired:function(){var e=this;e._seenPacket||e._heartbeatTimeoutHandle||(e._sendPing(),e._startHeartbeatTimeoutTimer()),e._seenPacket=!1},_heartbeatTimeoutFired:function(){var e=this;e._heartbeatTimeoutHandle=null,e._onTimeout()},messageReceived:function(){var e=this;e._seenPacket=!0,e._heartbeatTimeoutHandle&&e._clearHeartbeatTimeoutTimer()}})}.call(this),function(){d.SUPPORTED_DDP_VERSIONS=["1","pre2","pre1"],d.parseDDP=function(t){try{var a=JSON.parse(t)}catch(a){return e._debug("Discarding message with invalid JSON",t),null}return null===a||"object"!=typeof a?(e._debug("Discarding non-object DDP message",t),null):(c.has(a,"cleared")&&(c.has(a,"fields")||(a.fields={}),c.each(a.cleared,function(e){a.fields[e]=void 0}),delete a.cleared),c.each(["fields","params","result"],function(e){c.has(a,e)&&(a[e]=o._adjustTypesFromJSONValue(a[e]))}),a)},d.stringifyDDP=function(e){var t=o.clone(e);if(c.has(e,"fields")){var a=[];c.each(e.fields,function(e,n){void 0===e&&(a.push(n),delete t.fields[n])}),c.isEmpty(a)||(t.cleared=a),c.isEmpty(t.fields)&&delete t.fields}if(c.each(["fields","params","result"],function(e){c.has(t,e)&&(t[e]=o._adjustTypesToJSONValue(t[e]))}),e.id&&"string"!=typeof e.id)throw new Error("Message id is not a string");return JSON.stringify(t)}}.call(this),function(){d.MethodInvocation=function(e){var t=this;this.isSimulation=e.isSimulation,this._unblock=e.unblock||function(){},this._calledUnblock=!1,this.userId=e.userId,this._setUserId=e.setUserId||function(){},this.connection=e.connection,this.randomSeed=e.randomSeed,this.randomStream=null},c.extend(d.MethodInvocation.prototype,{unblock:function(){var e=this;e._calledUnblock=!0,e._unblock()},setUserId:function(e){var t=this;if(t._calledUnblock)throw new Error("Can't call setUserId in a method after calling unblock");t.userId=e,t._setUserId(e)}})}.call(this),function(){function e(){return i.hexString(20)}d.RandomStream=function(t){var a=this;this.seed=[].concat(t.seed||e()),this.sequences={}},d.RandomStream.get=function(e,t){if(t||(t="default"),!e)return i.insecure;var a=e.randomStream;return a||(e.randomStream=a=new d.RandomStream({seed:e.randomSeed})),a._sequence(t)},d.makeRpcSeed=function(e,t){var a=d.RandomStream.get(e,"/rpc/"+t);return a.hexString(20)},c.extend(d.RandomStream.prototype,{_sequence:function(e){var t=this,a=t.sequences[e]||null;if(null===a){for(var n=t.seed.concat(e),r=0;r<n.length;r++)c.isFunction(n[r])&&(n[r]=n[r]());t.sequences[e]=a=i.createWithSeeds.apply(null,n)}return a}})}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var a in t)a in e||(e[a]=t[a])}(Package["ddp-common"]={},{DDPCommon:d})}();
!function(){var a=Package.meteor.Meteor,e=Package.meteor.global,t=Package.meteor.meteorEnv,o=Package.underscore._,n=Package["ecmascript-runtime"].Symbol,r=Package["ecmascript-runtime"].Map,i=Package["ecmascript-runtime"].Set,c;(function(){c={};var e="Meteor_Reload",t={},n,r=null;try{r=window.sessionStorage,r?(r.setItem("__dummy__","1"),r.removeItem("__dummy__")):r=null}catch(a){r=null}c._getData=function(){return r&&r.getItem(e)},r&&(n=c._getData(),r.removeItem(e)),n||(n="{}");var i={};try{i=JSON.parse(n),"object"!=typeof i&&(a._debug("Got bad data on reload. Ignoring."),i={})}catch(e){a._debug("Got invalid JSON on reload. Ignoring.")}i.reload&&"object"==typeof i.data&&(t=i.data);var l=[];c._onMigrate=function(a,e){e||(e=a,a=void 0),l.push({name:a,callback:e})},c._migrationData=function(a){return t[a]};var d=function(a,e){a=a||function(){},e=e||{};for(var t={},n=o.clone(l),r=!0;n.length;){var i=n.shift(),c=i.callback(a,e);c[0]||(r=!1),c.length>1&&i.name&&(t[i.name]=c[1])}return r||e.immediateMigration?t:null};c._migrate=function(t,o){var n=d(t,o);if(null===n)return!1;try{var i=JSON.stringify({data:n,reload:!0})}catch(e){throw a._debug("Couldn't serialize data for migration",n),e}if(r)try{r.setItem(e,i)}catch(e){a._debug("Couldn't save data for migration to sessionStorage",e)}else a._debug("Browser does not support sessionStorage. Not saving migration state.");return!0},c._withFreshProvidersForTest=function(a){var e=o.clone(l);l=[];try{a()}finally{l=e}};var g=!1;c._reload=function(a){if(a=a||{},!g){g=!0;var e=function(){o.defer(function(){c._migrate(e,a)&&(window.location.hash||window.location.href.endsWith("#")?window.location.reload():window.location.replace(window.location.href))})};e()}}}).call(this),function(){a._reload={onMigrate:c._onMigrate,migrationData:c._migrationData,reload:c._reload}}.call(this),"undefined"==typeof Package&&(Package={}),function(a,e){for(var t in e)t in a||(a[t]=e[t])}(Package.reload={},{Reload:c})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.check.check,o=Package.check.Match,i=Package.random.Random,s=Package.ejson.EJSON,a=Package.underscore._,u=Package.tracker.Tracker,c=Package.tracker.Deps,d=Package.retry.Retry,l=Package["id-map"].IdMap,f=Package["ddp-common"].DDPCommon,_=Package["diff-sequence"].DiffSequence,p=Package["mongo-id"].MongoID,h,v,m,g,b,y,w;(function(){h={},v={}}).call(this),function(){m=function(){var e=this;l.call(e,p.idStringify,p.idParse)},e._inherits(m,l)}.call(this),function(){g=function(){var e=document,t=window,n={},r=function(){};r.prototype.addEventListener=function(e,t){this._listeners||(this._listeners={}),e in this._listeners||(this._listeners[e]=[]);var r=this._listeners[e];n.arrIndexOf(r,t)===-1&&r.push(t)},r.prototype.removeEventListener=function(e,t){if(this._listeners&&e in this._listeners){var r=this._listeners[e],o=n.arrIndexOf(r,t);return o!==-1?void(r.length>1?this._listeners[e]=r.slice(0,o).concat(r.slice(o+1)):delete this._listeners[e]):void 0}},r.prototype.dispatchEvent=function(e){var t=e.type,n=Array.prototype.slice.call(arguments,0);if(this["on"+t]&&this["on"+t].apply(this,n),this._listeners&&t in this._listeners)for(var r=0;r<this._listeners[t].length;r++)this._listeners[t][r].apply(this,n)};var o=function(e,t){if(this.type=e,"undefined"!=typeof t)for(var n in t)t.hasOwnProperty(n)&&(this[n]=t[n])};o.prototype.toString=function(){var e=[];for(var t in this)if(this.hasOwnProperty(t)){var n=this[t];"function"==typeof n&&(n="[function]"),e.push(t+"="+n)}return"SimpleEvent("+e.join(", ")+")"};var i=function(e){var t=this;t._events=e||[],t._listeners={}};i.prototype.emit=function(e){var t=this;if(t._verifyType(e),!t._nuked){var n=Array.prototype.slice.call(arguments,1);if(t["on"+e]&&t["on"+e].apply(t,n),e in t._listeners)for(var r=0;r<t._listeners[e].length;r++)t._listeners[e][r].apply(t,n)}},i.prototype.on=function(e,t){var n=this;n._verifyType(e),n._nuked||(e in n._listeners||(n._listeners[e]=[]),n._listeners[e].push(t))},i.prototype._verifyType=function(e){var t=this;n.arrIndexOf(t._events,e)===-1&&n.log("Event "+JSON.stringify(e)+" not listed "+JSON.stringify(t._events)+" in "+t)},i.prototype.nuke=function(){var e=this;e._nuked=!0;for(var t=0;t<e._events.length;t++)delete e[e._events[t]];e._listeners={}};var s="abcdefghijklmnopqrstuvwxyz0123456789_";n.random_string=function(e,t){t=t||s.length;var n,r=[];for(n=0;n<e;n++)r.push(s.substr(Math.floor(Math.random()*t),1));return r.join("")},n.random_number=function(e){return Math.floor(Math.random()*e)},n.random_number_string=function(e){var t=(""+(e-1)).length,r=Array(t+1).join("0");return(r+n.random_number(e)).slice(-t)},n.getOrigin=function(e){e+="/";var t=e.split("/").slice(0,3);return t.join("/")},n.isSameOriginUrl=function(e,n){return n||(n=t.location.href),e.split("/").slice(0,3).join("/")===n.split("/").slice(0,3).join("/")},n.isSameOriginScheme=function(e,n){return n||(n=t.location.href),e.split(":")[0]===n.split(":")[0]},n.getParentDomain=function(e){if(/^[0-9.]*$/.test(e))return e;if(/^\[/.test(e))return e;if(!/[.]/.test(e))return e;var t=e.split(".").slice(1);return t.join(".")},n.objectExtend=function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e};var a="_jp";n.polluteGlobalNamespace=function(){a in t||(t[a]={})},n.closeFrame=function(e,t){return"c"+JSON.stringify([e,t])},n.userSetCode=function(e){return 1e3===e||e>=3e3&&e<=4999},n.countRTO=function(e){var t;return t=e>100?3*e:e+200},n.log=function(){t.console&&console.log&&console.log.apply&&console.log.apply(console,arguments)},n.bind=function(e,t){return e.bind?e.bind(t):function(){return e.apply(t,arguments)}},n.flatUrl=function(e){return e.indexOf("?")===-1&&e.indexOf("#")===-1},n.amendUrl=function(t,r){var o;if(void 0===r)o=e.location;else{var i=/^([a-z0-9.+-]+:)/i.exec(r);if(i){var s=i[0].toLowerCase(),a=r.substring(s.length),u=/[a-z0-9\.-]+(:[0-9]+)?/.exec(a);if(u)var c=u[0]}if(!s||!c)throw new Error("relativeTo must be an absolute url");o={protocol:s,host:c}}if(!t)throw new Error("Wrong url for SockJS");if(!n.flatUrl(t))throw new Error("Only basic urls are supported in SockJS");0===t.indexOf("//")&&(t=o.protocol+t),0===t.indexOf("/")&&(t=o.protocol+"//"+o.host+t),t=t.replace(/[\/]+$/,"");var d=t.split("/");return("http:"===d[0]&&/:80$/.test(d[2])||"https:"===d[0]&&/:443$/.test(d[2]))&&(d[2]=d[2].replace(/:(80|443)$/,"")),t=d.join("/")},n.arrIndexOf=function(e,t){for(var n=0;n<e.length;n++)if(e[n]===t)return n;return-1},n.arrSkip=function(e,t){var r=n.arrIndexOf(e,t);if(r===-1)return e.slice();var o=e.slice(0,r);return o.concat(e.slice(r+1))},n.isArray=Array.isArray||function(e){return{}.toString.call(e).indexOf("Array")>=0},n.delay=function(e,t){return"function"==typeof e&&(t=e,e=0),setTimeout(t,e)};var u=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,c={"\0":"\\u0000","":"\\u0001","":"\\u0002","":"\\u0003","":"\\u0004","":"\\u0005","":"\\u0006","":"\\u0007","\b":"\\b","\t":"\\t","\n":"\\n","\v":"\\u000b","\f":"\\f","\r":"\\r","":"\\u000e","":"\\u000f","":"\\u0010","":"\\u0011","":"\\u0012","":"\\u0013","":"\\u0014","":"\\u0015","":"\\u0016","":"\\u0017","":"\\u0018","":"\\u0019","":"\\u001a","":"\\u001b","":"\\u001c","":"\\u001d","":"\\u001e","":"\\u001f",'"':'\\"',"\\":"\\\\","":"\\u007f","€":"\\u0080","":"\\u0081","‚":"\\u0082","ƒ":"\\u0083","„":"\\u0084","…":"\\u0085","†":"\\u0086","‡":"\\u0087","ˆ":"\\u0088","‰":"\\u0089","Š":"\\u008a","‹":"\\u008b","Œ":"\\u008c","":"\\u008d","Ž":"\\u008e","":"\\u008f","":"\\u0090","‘":"\\u0091","’":"\\u0092","“":"\\u0093","”":"\\u0094","•":"\\u0095","–":"\\u0096","—":"\\u0097","˜":"\\u0098","™":"\\u0099","š":"\\u009a","›":"\\u009b","œ":"\\u009c","":"\\u009d","ž":"\\u009e","Ÿ":"\\u009f","­":"\\u00ad","؀":"\\u0600","؁":"\\u0601","؂":"\\u0602","؃":"\\u0603","؄":"\\u0604","܏":"\\u070f","":"\\u17b4","":"\\u17b5","":"\\u200c","":"\\u200d","":"\\u200e","":"\\u200f","\u2028":"\\u2028","\u2029":"\\u2029","":"\\u202a","":"\\u202b","":"\\u202c","":"\\u202d","":"\\u202e","":"\\u202f","":"\\u2060","":"\\u2061","":"\\u2062","":"\\u2063","":"\\u2064","":"\\u2065","":"\\u2066","":"\\u2067","":"\\u2068","":"\\u2069","":"\\u206a","":"\\u206b","":"\\u206c","":"\\u206d","":"\\u206e","":"\\u206f","\ufeff":"\\ufeff","":"\\ufff0","":"\\ufff1","":"\\ufff2","":"\\ufff3","":"\\ufff4","":"\\ufff5","":"\\ufff6","":"\\ufff7","":"\\ufff8","":"\\ufff9","":"\\ufffa","":"\\ufffb","":"\\ufffc","<22>":"\\ufffd","￾":"\\ufffe","￿":"\\uffff"},d=/[\x00-\x1f\ud800-\udfff\ufffe\uffff\u0300-\u0333\u033d-\u0346\u034a-\u034c\u0350-\u0352\u0357-\u0358\u035c-\u0362\u0374\u037e\u0387\u0591-\u05af\u05c4\u0610-\u0617\u0653-\u0654\u0657-\u065b\u065d-\u065e\u06df-\u06e2\u06eb-\u06ec\u0730\u0732-\u0733\u0735-\u0736\u073a\u073d\u073f-\u0741\u0743\u0745\u0747\u07eb-\u07f1\u0951\u0958-\u095f\u09dc-\u09dd\u09df\u0a33\u0a36\u0a59-\u0a5b\u0a5e\u0b5c-\u0b5d\u0e38-\u0e39\u0f43\u0f4d\u0f52\u0f57\u0f5c\u0f69\u0f72-\u0f76\u0f78\u0f80-\u0f83\u0f93\u0f9d\u0fa2\u0fa7\u0fac\u0fb9\u1939-\u193a\u1a17\u1b6b\u1cda-\u1cdb\u1dc0-\u1dcf\u1dfc\u1dfe\u1f71\u1f73\u1f75\u1f77\u1f79\u1f7b\u1f7d\u1fbb\u1fbe\u1fc9\u1fcb\u1fd3\u1fdb\u1fe3\u1feb\u1fee-\u1fef\u1ff9\u1ffb\u1ffd\u2000-\u2001\u20d0-\u20d1\u20d4-\u20d7\u20e7-\u20e9\u2126\u212a-\u212b\u2329-\u232a\u2adc\u302b-\u302c\uaab2-\uaab3\uf900-\ufa0d\ufa10\ufa12\ufa15-\ufa1e\ufa20\ufa22\ufa25-\ufa26\ufa2a-\ufa2d\ufa30-\ufa6d\ufa70-\ufad9\ufb1d\ufb1f\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufb4e\ufff0-\uffff]/g,l,f=JSON&&JSON.stringify||function(e){return u.lastIndex=0,u.test(e)&&(e=e.replace(u,function(e){return c[e]})),'"'+e+'"'},_=function(e){var t,n={},r=[];for(t=0;t<65536;t++)r.push(String.fromCharCode(t));return e.lastIndex=0,r.join("").replace(e,function(e){return n[e]="\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4),""}),e.lastIndex=0,n};n.quote=function(e){var t=f(e);return d.lastIndex=0,d.test(t)?(l||(l=_(d)),t.replace(d,function(e){return l[e]})):t};var p=["websocket","xdr-streaming","xhr-streaming","iframe-eventsource","iframe-htmlfile","xdr-polling","xhr-polling","iframe-xhr-polling","jsonp-polling"];n.probeProtocols=function(){for(var e={},t=0;t<p.length;t++){var n=p[t];e[n]=C[n]&&C[n].enabled()}return e},n.detectProtocols=function(e,t,n){var r={},o=[];t||(t=p);for(var i=0;i<t.length;i++){var s=t[i];r[s]=e[s]}var a=function(e){var t=e.shift();r[t]?o.push(t):e.length>0&&a(e)};return n.websocket!==!1&&a(["websocket"]),r["xhr-streaming"]&&!n.null_origin?o.push("xhr-streaming"):!r["xdr-streaming"]||n.cookie_needed||n.null_origin?a(["iframe-eventsource","iframe-htmlfile"]):o.push("xdr-streaming"),r["xhr-polling"]&&!n.null_origin?o.push("xhr-polling"):!r["xdr-polling"]||n.cookie_needed||n.null_origin?a(["iframe-xhr-polling","jsonp-polling"]):o.push("xdr-polling"),o};var h="_sockjs_global";n.createHook=function(){var e="a"+n.random_string(8);if(!(h in t)){var r={};t[h]=function(e){return e in r||(r[e]={id:e,del:function(){delete r[e]}}),r[e]}}return t[h](e)},n.attachMessage=function(e){n.attachEvent("message",e)},n.attachEvent=function(n,r){"undefined"!=typeof t.addEventListener?t.addEventListener(n,r,!1):(e.attachEvent("on"+n,r),t.attachEvent("on"+n,r))},n.detachMessage=function(e){n.detachEvent("message",e)},n.detachEvent=function(n,r){"undefined"!=typeof t.addEventListener?t.removeEventListener(n,r,!1):(e.detachEvent("on"+n,r),t.detachEvent("on"+n,r))};var v={},m=!1,g=function(){for(var e in v)v[e](),delete v[e]},b=function(){m||(m=!0,g())};n.attachEvent("unload",b),n.unload_add=function(e){var t=n.random_string(8);return v[t]=e,m&&n.delay(g),t},n.unload_del=function(e){e in v&&delete v[e]},n.createIframe=function(t,r){var o=e.createElement("iframe"),i,s,a=function(){clearTimeout(i);try{o.onload=null}catch(e){}o.onerror=null},u=function(){o&&(a(),setTimeout(function(){o&&o.parentNode.removeChild(o),o=null},0),n.unload_del(s))},c=function(e){o&&(u(),r(e))},d=function(e,t){try{o&&o.contentWindow&&o.contentWindow.postMessage(e,t)}catch(e){}};return o.src=t,o.style.display="none",o.style.position="absolute",o.onerror=function(){c("onerror")},o.onload=function(){clearTimeout(i),i=setTimeout(function(){c("onload timeout")},2e3)},e.body.appendChild(o),i=setTimeout(function(){c("timeout")},15e3),s=n.unload_add(u),{post:d,cleanup:u,loaded:a}},n.createHtmlfile=function(e,r){var o=new ActiveXObject("htmlfile"),i,s,u,c=function(){clearTimeout(i)},d=function(){o&&(c(),n.unload_del(s),u.parentNode.removeChild(u),u=o=null,CollectGarbage())},l=function(e){o&&(d(),r(e))},f=function(e,t){try{u&&u.contentWindow&&u.contentWindow.postMessage(e,t)}catch(e){}};o.open(),o.write('<html><script>document.domain="'+document.domain+'";</script></html>'),o.close(),o.parentWindow[a]=t[a];var _=o.createElement("div");return o.body.appendChild(_),u=o.createElement("iframe"),_.appendChild(u),u.src=e,i=setTimeout(function(){l("timeout")},15e3),s=n.unload_add(d),{post:f,cleanup:d,loaded:c}};var y=function(){};y.prototype=new i(["chunk","finish"]),y.prototype._start=function(e,r,o,i){var s=this;try{s.xhr=new XMLHttpRequest}catch(e){}if(!s.xhr)try{s.xhr=new t.ActiveXObject("Microsoft.XMLHTTP")}catch(e){}(t.ActiveXObject||t.XDomainRequest)&&(r+=(r.indexOf("?")===-1?"?":"&")+"t="+ +new Date),s.unload_ref=n.unload_add(function(){s._cleanup(!0)});try{s.xhr.open(e,r,!0)}catch(e){return s.emit("finish",0,""),void s._cleanup()}if(i&&i.no_credentials||(s.xhr.withCredentials="true"),i&&i.headers)for(var a in i.headers)s.xhr.setRequestHeader(a,i.headers[a]);s.xhr.onreadystatechange=function(){if(s.xhr){var e=s.xhr;switch(e.readyState){case 3:try{var t=e.status,n=e.responseText}catch(e){}1223===t&&(t=204),n&&n.length>0&&s.emit("chunk",t,n);break;case 4:var t=e.status;1223===t&&(t=204),s.emit("finish",t,e.responseText),s._cleanup(!1)}}},s.xhr.send(o)},y.prototype._cleanup=function(e){var t=this;if(t.xhr){if(n.unload_del(t.unload_ref),t.xhr.onreadystatechange=function(){},e)try{t.xhr.abort()}catch(e){}t.unload_ref=t.xhr=null}},y.prototype.close=function(){var e=this;e.nuke(),e._cleanup(!0)};var w=n.XHRCorsObject=function(){var e=this,t=arguments;n.delay(function(){e._start.apply(e,t)})};w.prototype=new y;var S=n.XHRLocalObject=function(e,t,r){var o=this;n.delay(function(){o._start(e,t,r,{no_credentials:!0})})};S.prototype=new y;var k=n.XDRObject=function(e,t,r){var o=this;n.delay(function(){o._start(e,t,r)})};k.prototype=new i(["chunk","finish"]),k.prototype._start=function(e,t,r){var o=this,i=new XDomainRequest;t+=(t.indexOf("?")===-1?"?":"&")+"t="+ +new Date;var s=i.ontimeout=i.onerror=function(){o.emit("finish",0,""),o._cleanup(!1)};i.onprogress=function(){o.emit("chunk",200,i.responseText)},i.onload=function(){o.emit("finish",200,i.responseText),o._cleanup(!1)},o.xdr=i,o.unload_ref=n.unload_add(function(){o._cleanup(!0)});try{o.xdr.open(e,t),o.xdr.send(r)}catch(e){s()}},k.prototype._cleanup=function(e){var t=this;if(t.xdr){if(n.unload_del(t.unload_ref),t.xdr.ontimeout=t.xdr.onerror=t.xdr.onprogress=t.xdr.onload=null,e)try{t.xdr.abort()}catch(e){}t.unload_ref=t.xdr=null}},k.prototype.close=function(){var e=this;e.nuke(),e._cleanup(!0)},n.isXHRCorsCapable=function(){return t.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest?1:t.XDomainRequest&&e.domain?2:B.enabled()?3:4};var C=function(e,t,r){if(!(this instanceof C))return new C(e,t,r);var o=this,i;o._options={devel:!1,debug:!1,protocols_whitelist:[],info:void 0,rtt:void 0},r&&n.objectExtend(o._options,r),o._base_url=n.amendUrl(e),o._server=o._options.server||n.random_number_string(1e3),o._options.protocols_whitelist&&o._options.protocols_whitelist.length?i=o._options.protocols_whitelist:(i="string"==typeof t&&t.length>0?[t]:n.isArray(t)?t:null,i&&o._debug('Deprecated API: Use "protocols_whitelist" option instead of supplying protocol list as a second parameter to SockJS constructor.')),o._protocols=[],o.protocol=null,o.readyState=C.CONNECTING,o._ir=J(o._base_url),o._ir.onfinish=function(e,t){o._ir=null,e?(o._options.info&&(e=n.objectExtend(e,o._options.info)),o._options.rtt&&(t=o._options.rtt),o._applyInfo(e,t,i),o._didClose()):o._didClose(1002,"Can't connect to server",!0)}};C.prototype=new r,C.version="0.3.4",C.CONNECTING=0,C.OPEN=1,C.CLOSING=2,C.CLOSED=3,C.prototype._debug=function(){this._options.debug&&n.log.apply(n,arguments)},C.prototype._dispatchOpen=function(){var e=this;e.readyState===C.CONNECTING?(e._transport_tref&&(clearTimeout(e._transport_tref),e._transport_tref=null),e.readyState=C.OPEN,e.dispatchEvent(new o("open"))):e._didClose(1006,"Server lost session")},C.prototype._dispatchMessage=function(e){var t=this;t.readyState===C.OPEN&&t.dispatchEvent(new o("message",{data:e}))},C.prototype._dispatchHeartbeat=function(e){var t=this;t.readyState===C.OPEN&&t.dispatchEvent(new o("heartbeat",{}))},C.prototype._didClose=function(e,t,r){var i=this;if(i.readyState!==C.CONNECTING&&i.readyState!==C.OPEN&&i.readyState!==C.CLOSING)throw new Error("INVALID_STATE_ERR");i._ir&&(i._ir.nuke(),i._ir=null),i._transport&&(i._transport.doCleanup(),i._transport=null);var s=new o("close",{code:e,reason:t,wasClean:n.userSetCode(e)});if(!n.userSetCode(e)&&i.readyState===C.CONNECTING&&!r){if(i._try_next_protocol(s))return;s=new o("close",{code:2e3,reason:"All transports failed",wasClean:!1,last_event:s})}i.readyState=C.CLOSED,n.delay(function(){i.dispatchEvent(s)})},C.prototype._didMessage=function(e){var t=this,n=e.slice(0,1);switch(n){case"o":t._dispatchOpen();break;case"a":for(var r=JSON.parse(e.slice(1)||"[]"),o=0;o<r.length;o++)t._dispatchMessage(r[o]);break;case"m":var r=JSON.parse(e.slice(1)||"null");t._dispatchMessage(r);break;case"c":var r=JSON.parse(e.slice(1)||"[]");t._didClose(r[0],r[1]);break;case"h":t._dispatchHeartbeat()}},C.prototype._try_next_protocol=function(t){var r=this;for(r.protocol&&(r._debug("Closed transport:",r.protocol,""+t),r.protocol=null),r._transport_tref&&(clearTimeout(r._transport_tref),r._transport_tref=null);;){var o=r.protocol=r._protocols.shift();if(!o)return!1;if(C[o]&&C[o].need_body===!0&&(!e.body||"undefined"!=typeof e.readyState&&"complete"!==e.readyState))return r._protocols.unshift(o),r.protocol="waiting-for-load",n.attachEvent("load",function(){r._try_next_protocol()}),!0;if(C[o]&&C[o].enabled(r._options)){var i=C[o].roundTrips||1,s=(r._options.rto||0)*i||5e3;r._transport_tref=n.delay(s,function(){r.readyState===C.CONNECTING&&r._didClose(2007,"Transport timeouted")});var a=n.random_string(8),u=r._base_url+"/"+r._server+"/"+a;return r._debug("Opening transport:",o," url:"+u," RTO:"+r._options.rto),r._transport=new C[o](r,u,r._base_url),!0}r._debug("Skipping transport:",o)}},C.prototype.close=function(e,t){var r=this;if(e&&!n.userSetCode(e))throw new Error("INVALID_ACCESS_ERR");return(r.readyState===C.CONNECTING||r.readyState===C.OPEN)&&(r.readyState=C.CLOSING,r._didClose(e||1e3,t||"Normal closure"),!0)},C.prototype.send=function(e){var t=this;if(t.readyState===C.CONNECTING)throw new Error("INVALID_STATE_ERR");return t.readyState===C.OPEN&&t._transport.doSend(n.quote(""+e)),!0},C.prototype._applyInfo=function(t,r,o){var i=this;i._options.info=t,i._options.rtt=r,i._options.rto=n.countRTO(r),i._options.info.null_origin=!e.domain,t.base_url&&(i._base_url=n.amendUrl(t.base_url,i._base_url));var s=n.probeProtocols();i._protocols=n.detectProtocols(s,o,t),n.isSameOriginScheme(i._base_url)||2!==n.isXHRCorsCapable()||(i._protocols=["jsonp-polling"])};var E=C.websocket=function(e,r){var o=this,i=r+"/websocket";i="https"===i.slice(0,5)?"wss"+i.slice(5):"ws"+i.slice(4),o.ri=e,o.url=i;var s=t.WebSocket||t.MozWebSocket;o.ws=new s(o.url),o.ws.onmessage=function(e){o.ri._didMessage(e.data)},o.unload_ref=n.unload_add(function(){o.ws.close()}),o.ws.onclose=function(){o.ri._didMessage(n.closeFrame(1006,"WebSocket connection broken"))}};E.prototype.doSend=function(e){this.ws.send("["+e+"]")},E.prototype.doCleanup=function(){var e=this,t=e.ws;t&&(t.onmessage=t.onclose=null,t.close(),n.unload_del(e.unload_ref),e.unload_ref=e.ri=e.ws=null)},E.enabled=function(){return!(!t.WebSocket&&!t.MozWebSocket)},E.roundTrips=2;var O=function(){};O.prototype.send_constructor=function(e){var t=this;t.send_buffer=[],t.sender=e},O.prototype.doSend=function(e){var t=this;t.send_buffer.push(e),t.send_stop||t.send_schedule()},O.prototype.send_schedule_wait=function(){var e=this,t;e.send_stop=function(){e.send_stop=null,clearTimeout(t)},t=n.delay(25,function(){e.send_stop=null,e.send_schedule()})},O.prototype.send_schedule=function(){var e=this;if(e.send_buffer.length>0){var t="["+e.send_buffer.join(",")+"]";e.send_stop=e.sender(e.trans_url,t,function(t,n){e.send_stop=null,t===!1?e.ri._didClose(1006,"Sending error "+n):e.send_schedule_wait()}),e.send_buffer=[]}},O.prototype.send_destructor=function(){var e=this;e._send_stop&&e._send_stop(),e._send_stop=null};var T=function(t,r,o){var i=this;if(!("_send_form"in i)){var s=i._send_form=e.createElement("form"),a=i._send_area=e.createElement("textarea");a.name="d",s.style.display="none",s.style.position="absolute",s.method="POST",s.enctype="application/x-www-form-urlencoded",s.acceptCharset="UTF-8",s.appendChild(a),e.body.appendChild(s)}var s=i._send_form,a=i._send_area,u="a"+n.random_string(8);s.target=u,s.action=t+"/jsonp_send?i="+u;var c;try{c=e.createElement('<iframe name="'+u+'">')}catch(t){c=e.createElement("iframe"),c.name=u}c.id=u,s.appendChild(c),c.style.display="none";try{a.value=r}catch(e){n.log("Your browser is seriously broken. Go home! "+e.message)}s.submit();var d=function(e){c.onerror&&(c.onreadystatechange=c.onerror=c.onload=null,n.delay(500,function(){c.parentNode.removeChild(c),c=null}),a.value="",o(!0))};return c.onerror=c.onload=d,c.onreadystatechange=function(e){"complete"==c.readyState&&d()},d},D=function(e){return function(t,n,r){var o=new e("POST",t+"/xhr_send",n);return o.onfinish=function(e,t){r(200===e||204===e,"http status "+e)},function(e){r(!1,e)}}},M=function(t,r){var o,i=e.createElement("script"),s,a=function(e){s&&(s.parentNode.removeChild(s),s=null),i&&(clearTimeout(o),i.parentNode.removeChild(i),i.onreadystatechange=i.onerror=i.onload=i.onclick=null,i=null,r(e),r=null)},u=!1,c=null;if(i.id="a"+n.random_string(8),i.src=t,i.type="text/javascript",i.charset="UTF-8",i.onerror=function(e){c||(c=setTimeout(function(){u||a(n.closeFrame(1006,"JSONP script loaded abnormally (onerror)"))},1e3))},i.onload=function(e){a(n.closeFrame(1006,"JSONP script loaded abnormally (onload)"))},i.onreadystatechange=function(e){if(/loaded|closed/.test(i.readyState)){if(i&&i.htmlFor&&i.onclick){u=!0;try{i.onclick()}catch(e){}}i&&a(n.closeFrame(1006,"JSONP script loaded abnormally (onreadystatechange)"))}},"undefined"==typeof i.async&&e.attachEvent)if(/opera/i.test(navigator.userAgent))s=e.createElement("script"),s.text="try{var a = document.getElementById('"+i.id+"'); if(a)a.onerror();}catch(x){};",i.async=s.async=!1;else{try{i.htmlFor=i.id,i.event="onclick"}catch(e){}i.async=!0}"undefined"!=typeof i.async&&(i.async=!0),o=setTimeout(function(){a(n.closeFrame(1006,"JSONP script loaded abnormally (timeout)"))},35e3);var d=e.getElementsByTagName("head")[0];return d.insertBefore(i,d.firstChild),s&&d.insertBefore(s,d.firstChild),a},x=C["jsonp-polling"]=function(e,t){n.polluteGlobalNamespace();var r=this;r.ri=e,r.trans_url=t,r.send_constructor(T),r._schedule_recv()};x.prototype=new O,x.prototype._schedule_recv=function(){var e=this,t=function(t){e._recv_stop=null,t&&(e._is_closing||e.ri._didMessage(t)),e._is_closing||e._schedule_recv()};e._recv_stop=R(e.trans_url+"/jsonp",M,t)},x.enabled=function(){return!0},x.need_body=!0,x.prototype.doCleanup=function(){var e=this;e._is_closing=!0,e._recv_stop&&e._recv_stop(),e.ri=e._recv_stop=null,e.send_destructor()};var R=function(e,r,o){var i="a"+n.random_string(6),s=e+"?c="+escape(a+"."+i),u=0,c=function(e){switch(u){case 0:delete t[a][i],o(e);break;case 1:o(e),u=2;break;case 2:delete t[a][i]}},d=r(s,c);t[a][i]=d;var l=function(){t[a][i]&&(u=1,t[a][i](n.closeFrame(1e3,"JSONP user aborted read")))};return l},I=function(){};I.prototype=new O,I.prototype.run=function(e,t,n,r,o){var i=this;i.ri=e,i.trans_url=t,i.send_constructor(D(o)),i.poll=new K(e,r,t+n,o)},I.prototype.doCleanup=function(){var e=this;e.poll&&(e.poll.abort(),e.poll=null)};var P=C["xhr-streaming"]=function(e,t){this.run(e,t,"/xhr_streaming",re,n.XHRCorsObject)};P.prototype=new I,P.enabled=function(){return t.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest&&!/opera/i.test(navigator.userAgent)},P.roundTrips=2,P.need_body=!0;var N=C["xdr-streaming"]=function(e,t){this.run(e,t,"/xhr_streaming",re,n.XDRObject)};N.prototype=new I,N.enabled=function(){return!!t.XDomainRequest},N.roundTrips=2;var j=C["xhr-polling"]=function(e,t){this.run(e,t,"/xhr",re,n.XHRCorsObject)};j.prototype=new I,j.enabled=P.enabled,j.roundTrips=2;var A=C["xdr-polling"]=function(e,t){this.run(e,t,"/xhr",re,n.XDRObject)};A.prototype=new I,A.enabled=N.enabled,A.roundTrips=2;var B=function(){};B.prototype.i_constructor=function(e,t,r){var o=this;o.ri=e,o.origin=n.getOrigin(r),o.base_url=r,o.trans_url=t;var i=r+"/iframe.html";o.ri._options.devel&&(i+="?t="+ +new Date),o.window_id=n.random_string(8),i+="#"+o.window_id,o.iframeObj=n.createIframe(i,function(e){o.ri._didClose(1006,"Unable to load an iframe ("+e+")")}),o.onmessage_cb=n.bind(o.onmessage,o),n.attachMessage(o.onmessage_cb)},B.prototype.doCleanup=function(){var e=this;if(e.iframeObj){n.detachMessage(e.onmessage_cb);try{e.iframeObj.iframe.contentWindow&&e.postMessage("c")}catch(e){}e.iframeObj.cleanup(),e.iframeObj=null,e.onmessage_cb=e.iframeObj=null}},B.prototype.onmessage=function(e){var t=this;if(e.origin===t.origin){var n=e.data.slice(0,8),r=e.data.slice(8,9),o=e.data.slice(9);if(n===t.window_id)switch(r){case"s":t.iframeObj.loaded(),t.postMessage("s",JSON.stringify([C.version,t.protocol,t.trans_url,t.base_url]));break;case"t":t.ri._didMessage(o)}}},B.prototype.postMessage=function(e,t){var n=this;n.iframeObj.post(n.window_id+e+(t||""),n.origin)},B.prototype.doSend=function(e){this.postMessage("m",e)},B.enabled=function(){var e=navigator&&navigator.userAgent&&navigator.userAgent.indexOf("Konqueror")!==-1;return("function"==typeof t.postMessage||"object"==typeof t.postMessage)&&!e};var U,W=function(e,r){parent!==t?parent.postMessage(U+e+(r||""),"*"):n.log("Can't postMessage, no parent window.",e,r)},F=function(){};F.prototype._didClose=function(e,t){W("t",n.closeFrame(e,t))},F.prototype._didMessage=function(e){W("t",e)},F.prototype._doSend=function(e){this._transport.doSend(e)},F.prototype._doCleanup=function(){this._transport.doCleanup()},n.parent_origin=void 0,C.bootstrap_iframe=function(){var r;U=e.location.hash.slice(1);var o=function(e){if(e.source===parent&&("undefined"==typeof n.parent_origin&&(n.parent_origin=e.origin),e.origin===n.parent_origin)){var o=e.data.slice(0,8),i=e.data.slice(8,9),s=e.data.slice(9);if(o===U)switch(i){case"s":var a=JSON.parse(s),u=a[0],c=a[1],d=a[2],l=a[3];if(u!==C.version&&n.log('Incompatibile SockJS! Main site uses: "'+u+'", the iframe: "'+C.version+'".'),!n.flatUrl(d)||!n.flatUrl(l))return void n.log("Only basic urls are supported in SockJS");if(!n.isSameOriginUrl(d)||!n.isSameOriginUrl(l))return void n.log("Can't connect to different domain from within an iframe. ("+JSON.stringify([t.location.href,d,l])+")");r=new F,r._transport=new F[c](r,d,l);break;case"m":r._doSend(s);break;case"c":r&&r._doCleanup(),r=null}}};n.attachMessage(o),W("s")};var L=function(e,t){var r=this;n.delay(function(){r.doXhr(e,t)})};L.prototype=new i(["finish"]),L.prototype.doXhr=function(e,t){var r=this,o=(new Date).getTime(),i=new t("GET",e+"/info?cb="+n.random_string(10)),s=n.delay(8e3,function(){i.ontimeout()});i.onfinish=function(e,t){if(clearTimeout(s),s=null,200===e){var n=(new Date).getTime()-o,i=JSON.parse(t);"object"!=typeof i&&(i={}),r.emit("finish",i,n)}else r.emit("finish")},i.ontimeout=function(){i.close(),r.emit("finish")}};var H=function(t){var r=this,o=function(){var e=new B;e.protocol="w-iframe-info-receiver";var n=function(t){if("string"==typeof t&&"m"===t.substr(0,1)){var n=JSON.parse(t.substr(1)),o=n[0],i=n[1];r.emit("finish",o,i)}else r.emit("finish");e.doCleanup(),e=null},o={_options:{},_didClose:n,_didMessage:n};e.i_constructor(o,t,t)};e.body?o():n.attachEvent("load",o)};H.prototype=new i(["finish"]);var X=function(){var e=this;n.delay(function(){e.emit("finish",{},2e3)})};X.prototype=new i(["finish"]);var J=function(e){if(n.isSameOriginUrl(e))return new L(e,n.XHRLocalObject);switch(n.isXHRCorsCapable()){case 1:return new L(e,n.XHRLocalObject);case 2:return n.isSameOriginScheme(e)?new L(e,n.XDRObject):new X;case 3:return new H(e);default:return new X}},V=F["w-iframe-info-receiver"]=function(e,t,r){var o=new L(r,n.XHRLocalObject);o.onfinish=function(t,n){e._didMessage("m"+JSON.stringify([t,n])),e._didClose()}};V.prototype.doCleanup=function(){};var q=C["iframe-eventsource"]=function(){var e=this;e.protocol="w-iframe-eventsource",e.i_constructor.apply(e,arguments)};q.prototype=new B,q.enabled=function(){return"EventSource"in t&&B.enabled()},q.need_body=!0,q.roundTrips=3;var G=F["w-iframe-eventsource"]=function(e,t){this.run(e,t,"/eventsource",Z,n.XHRLocalObject)};G.prototype=new I;var Q=C["iframe-xhr-polling"]=function(){var e=this;e.protocol="w-iframe-xhr-polling",e.i_constructor.apply(e,arguments)};Q.prototype=new B,Q.enabled=function(){return t.XMLHttpRequest&&B.enabled()},Q.need_body=!0,Q.roundTrips=3;var z=F["w-iframe-xhr-polling"]=function(e,t){this.run(e,t,"/xhr",re,n.XHRLocalObject)};z.prototype=new I;var $=C["iframe-htmlfile"]=function(){var e=this;e.protocol="w-iframe-htmlfile",e.i_constructor.apply(e,arguments)};$.prototype=new B,$.enabled=function(){return B.enabled()},$.need_body=!0,$.roundTrips=3;var Y=F["w-iframe-htmlfile"]=function(e,t){this.run(e,t,"/htmlfile",ne,n.XHRLocalObject)};Y.prototype=new I;var K=function(e,t,n,r){var o=this;o.ri=e,o.Receiver=t,o.recv_url=n,o.AjaxObject=r,o._scheduleRecv()};K.prototype._scheduleRecv=function(){var e=this,t=e.poll=new e.Receiver(e.recv_url,e.AjaxObject),n=0;t.onmessage=function(t){n+=1,e.ri._didMessage(t.data)},t.onclose=function(n){e.poll=t=t.onmessage=t.onclose=null,e.poll_is_closing||("permanent"===n.reason?e.ri._didClose(1006,"Polling error ("+n.reason+")"):e._scheduleRecv())}},K.prototype.abort=function(){var e=this;e.poll_is_closing=!0,e.poll&&e.poll.abort()};var Z=function(e){var t=this,r=new EventSource(e);r.onmessage=function(e){t.dispatchEvent(new o("message",{data:unescape(e.data)}))},t.es_close=r.onerror=function(e,i){var s=i?"user":2!==r.readyState?"network":"permanent";t.es_close=r.onmessage=r.onerror=null,r.close(),r=null,n.delay(200,function(){t.dispatchEvent(new o("close",{reason:s}))})}};Z.prototype=new r,Z.prototype.abort=function(){var e=this;e.es_close&&e.es_close({},!0)};var ee,te=function(){if(void 0===ee)if("ActiveXObject"in t)try{ee=!!new ActiveXObject("htmlfile")}catch(e){}else ee=!1;return ee},ne=function(e){var r=this;n.polluteGlobalNamespace(),r.id="a"+n.random_string(6,26),e+=(e.indexOf("?")===-1?"?":"&")+"c="+escape(a+"."+r.id);var i=te()?n.createHtmlfile:n.createIframe,s;t[a][r.id]={start:function(){s.loaded()},message:function(e){r.dispatchEvent(new o("message",{data:e}))},stop:function(){r.iframe_close({},"network")}},r.iframe_close=function(e,n){s.cleanup(),r.iframe_close=s=null,delete t[a][r.id],r.dispatchEvent(new o("close",{reason:n}))},s=i(e,function(e){r.iframe_close({},"permanent")})};ne.prototype=new r,ne.prototype.abort=function(){var e=this;e.iframe_close&&e.iframe_close({},"user")};var re=function(e,t){var n=this,r=0;n.xo=new t("POST",e,null),n.xo.onchunk=function(e,t){if(200===e)for(;;){var i=t.slice(r),s=i.indexOf("\n");if(s===-1)break;r+=s+1;var a=i.slice(0,s);n.dispatchEvent(new o("message",{data:a}))}},n.xo.onfinish=function(e,t){n.xo.onchunk(e,t),n.xo=null;var r=200===e?"network":"permanent";n.dispatchEvent(new o("close",{reason:r}))}};return re.prototype=new r,re.prototype.abort=function(){var e=this;e.xo&&(e.xo.close(),e.dispatchEvent(new o("close",{reason:"user"})),e.xo=null)},C.getUtils=function(){return n},C.getIframeTransport=function(){return B},C}(),"_sockjs_onload"in window&&setTimeout(_sockjs_onload,1),"function"==typeof define&&define.amd&&define("sockjs",[],function(){return g})}.call(this),function(){v.ClientStream=function(e,t){var n=this;n.options=a.extend({retry:!0},t),n._initCommon(n.options),n.HEARTBEAT_TIMEOUT=1e5,n.rawUrl=e,n.socket=null,n.heartbeatTimer=null,"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("online",a.bind(n._online,n),!1),n._launchConnection()},a.extend(v.ClientStream.prototype,{send:function(e){var t=this;t.currentStatus.connected&&t.socket.send(e)},_changeUrl:function(e){var t=this;t.rawUrl=e},_connected:function(){var e=this;e.connectionTimer&&(clearTimeout(e.connectionTimer),e.connectionTimer=null),e.currentStatus.connected||(e.currentStatus.status="connected",e.currentStatus.connected=!0,e.currentStatus.retryCount=0,e.statusChanged(),a.each(e.eventCallbacks.reset,function(e){e()}))},_cleanup:function(e){var t=this;t._clearConnectionAndHeartbeatTimers(),t.socket&&(t.socket.onmessage=t.socket.onclose=t.socket.onerror=t.socket.onheartbeat=function(){},t.socket.close(),t.socket=null),a.each(t.eventCallbacks.disconnect,function(t){t(e)})},_clearConnectionAndHeartbeatTimers:function(){var e=this;e.connectionTimer&&(clearTimeout(e.connectionTimer),e.connectionTimer=null),e.heartbeatTimer&&(clearTimeout(e.heartbeatTimer),e.heartbeatTimer=null)},_heartbeat_timeout:function(){var t=this;e._debug("Connection timeout. No sockjs heartbeat received."),t._lostConnection(new h.ConnectionError("Heartbeat timed out"))},_heartbeat_received:function(){var e=this;e._forcedToDisconnect||(e.heartbeatTimer&&clearTimeout(e.heartbeatTimer),e.heartbeatTimer=setTimeout(a.bind(e._heartbeat_timeout,e),e.HEARTBEAT_TIMEOUT));
},_sockjsProtocolsWhitelist:function(){var e=["xdr-polling","xhr-polling","iframe-xhr-polling","jsonp-polling"],t=navigator&&/iPhone|iPad|iPod/.test(navigator.userAgent)&&/OS 4_|OS 5_/.test(navigator.userAgent);return t||(e=["websocket"].concat(e)),e},_launchConnection:function(){var t=this;t._cleanup();var n=a.extend({protocols_whitelist:t._sockjsProtocolsWhitelist()},t.options._sockjsOptions);t.socket=new g(b(t.rawUrl),(void 0),n),t.socket.onopen=function(e){t._connected()},t.socket.onmessage=function(e){t._heartbeat_received(),t.currentStatus.connected&&a.each(t.eventCallbacks.message,function(t){t(e.data)})},t.socket.onclose=function(){t._lostConnection()},t.socket.onerror=function(){e._debug("stream error",a.toArray(arguments),(new Date).toDateString())},t.socket.onheartbeat=function(){t._heartbeat_received()},t.connectionTimer&&clearTimeout(t.connectionTimer),t.connectionTimer=setTimeout(function(){t._lostConnection(new h.ConnectionError("DDP connection timed out"))},t.CONNECT_TIMEOUT)}})}.call(this),function(){var t=function(e,t){return e.length>=t.length&&e.substring(0,t.length)===t},n=function(e,t){return e.length>=t.length&&e.substring(e.length-t.length)===t},r=function(r,o,s){o||(o="http");var a=r.match(/^ddp(i?)\+sockjs:\/\//),u=r.match(/^http(s?):\/\//),c;if(a){var d=r.substr(a[0].length);c="i"===a[1]?o:o+"s";var l=d.indexOf("/"),f=l===-1?d:d.substr(0,l),_=l===-1?"":d.substr(l);return f=f.replace(/\*/g,function(){return Math.floor(10*i.fraction())}),c+"://"+f+_}if(u){c=u[1]?o+"s":o;var p=r.substr(u[0].length);r=c+"://"+p}return r.indexOf("://")!==-1||t(r,"/")||(r=o+"://"+r),r=e._relativeToSiteRootUrl(r),n(r,"/")?r+s:r+"/"+s};b=function(e){return r(e,"http","sockjs")},y=function(e){var t=r(e,"ws","websocket");return t},v.toSockjsUrl=b,a.extend(v.ClientStream.prototype,{on:function(e,t){var n=this;if("message"!==e&&"reset"!==e&&"disconnect"!==e)throw new Error("unknown event type: "+e);n.eventCallbacks[e]||(n.eventCallbacks[e]=[]),n.eventCallbacks[e].push(t)},_initCommon:function(e){var t=this;e=e||{},t.CONNECT_TIMEOUT=e.connectTimeoutMs||1e4,t.eventCallbacks={},t._forcedToDisconnect=!1,t.currentStatus={status:"connecting",connected:!1,retryCount:0},t.statusListeners="undefined"!=typeof u&&new u.Dependency,t.statusChanged=function(){t.statusListeners&&t.statusListeners.changed()},t._retry=new d,t.connectionTimer=null},reconnect:function(e){var t=this;return e=e||{},e.url&&t._changeUrl(e.url),e._sockjsOptions&&(t.options._sockjsOptions=e._sockjsOptions),t.currentStatus.connected?void((e._force||e.url)&&t._lostConnection(new h.ForcedReconnectError)):("connecting"===t.currentStatus.status&&t._lostConnection(),t._retry.clear(),t.currentStatus.retryCount-=1,void t._retryNow())},disconnect:function(e){var t=this;e=e||{},t._forcedToDisconnect||(e._permanent&&(t._forcedToDisconnect=!0),t._cleanup(),t._retry.clear(),t.currentStatus={status:e._permanent?"failed":"offline",connected:!1,retryCount:0},e._permanent&&e._error&&(t.currentStatus.reason=e._error),t.statusChanged())},_lostConnection:function(e){var t=this;t._cleanup(e),t._retryLater(e)},_online:function(){"offline"!=this.currentStatus.status&&this.reconnect()},_retryLater:function(e){var t=this,n=0;t.options.retry||e&&"DDP.ForcedReconnectError"===e.errorType?(n=t._retry.retryLater(t.currentStatus.retryCount,a.bind(t._retryNow,t)),t.currentStatus.status="waiting",t.currentStatus.retryTime=(new Date).getTime()+n):(t.currentStatus.status="failed",delete t.currentStatus.retryTime),t.currentStatus.connected=!1,t.statusChanged()},_retryNow:function(){var e=this;e._forcedToDisconnect||(e.currentStatus.retryCount+=1,e.currentStatus.status="connecting",e.currentStatus.connected=!1,delete e.currentStatus.retryTime,e.statusChanged(),e._launchConnection())},status:function(){var e=this;return e.statusListeners&&e.statusListeners.depend(),e.currentStatus}}),h.ConnectionError=e.makeErrorType("DDP.ConnectionError",function(e){var t=this;t.message=e}),h.ForcedReconnectError=e.makeErrorType("DDP.ForcedReconnectError",function(){})}.call(this),function(){v.SUPPORTED_DDP_VERSIONS=f.SUPPORTED_DDP_VERSIONS,h._CurrentInvocation=new e.EnvironmentVariable}.call(this),function(){h.randomStream=function(e){var t=h._CurrentInvocation.get();return f.RandomStream.get(t,e)}}.call(this),function(){if(e.isServer)var t=Npm.require("path"),n=Npm.require("fibers"),r=Npm.require(t.join("fibers","future"));var o=function(t,n){var r=this;n=a.extend({onConnected:function(){},onDDPVersionNegotiationFailure:function(t){e._debug(t)},heartbeatInterval:17500,heartbeatTimeout:15e3,npmFayeOptions:{},reloadWithOutstanding:!1,supportedDDPVersions:f.SUPPORTED_DDP_VERSIONS,retry:!0,respondToPings:!0,bufferedWritesInterval:5,bufferedWritesMaxAge:500},n),r.onReconnect=null,"object"==typeof t?r._stream=t:r._stream=new v.ClientStream(t,{retry:n.retry,headers:n.headers,_sockjsOptions:n._sockjsOptions,_dontPrintErrors:n._dontPrintErrors,connectTimeoutMs:n.connectTimeoutMs,npmFayeOptions:n.npmFayeOptions}),r._lastSessionId=null,r._versionSuggestion=null,r._version=null,r._stores={},r._methodHandlers={},r._nextMethodId=1,r._supportedDDPVersions=n.supportedDDPVersions,r._heartbeatInterval=n.heartbeatInterval,r._heartbeatTimeout=n.heartbeatTimeout,r._methodInvokers={},r._outstandingMethodBlocks=[],r._documentsWrittenByStub={},r._serverDocuments={},r._afterUpdateCallbacks=[],r._messagesBufferedUntilQuiescence=[],r._methodsBlockingQuiescence={},r._subsBeingRevived={},r._resetStores=!1,r._updatesForUnknownStores={},r._retryMigrate=null,r.__flushBufferedWrites=e.bindEnvironment(r._flushBufferedWrites,"flushing DDP buffered writes",r),r._bufferedWrites={},r._bufferedWritesFlushAt=null,r._bufferedWritesFlushHandle=null,r._bufferedWritesInterval=n.bufferedWritesInterval,r._bufferedWritesMaxAge=n.bufferedWritesMaxAge,r._subscriptions={},r._userId=null,r._userIdDeps=new u.Dependency,e.isClient&&Package.reload&&!n.reloadWithOutstanding&&Package.reload.Reload._onMigrate(function(e){if(r._readyToMigrate())return[!0];if(r._retryMigrate)throw new Error("Two migrations in progress?");return r._retryMigrate=e,!1});var o=function(t){try{var o=f.parseDDP(t)}catch(t){return void e._debug("Exception while parsing DDP",t)}if(r._heartbeat&&r._heartbeat.messageReceived(),null===o||!o.msg)return void(o&&o.server_id||e._debug("discarding invalid livedata message",o));if("connected"===o.msg)r._version=r._versionSuggestion,r._livedata_connected(o),n.onConnected();else if("failed"===o.msg)if(a.contains(r._supportedDDPVersions,o.version))r._versionSuggestion=o.version,r._stream.reconnect({_force:!0});else{var i="DDP version negotiation failed; server requested version "+o.version;r._stream.disconnect({_permanent:!0,_error:i}),n.onDDPVersionNegotiationFailure(i)}else"ping"===o.msg&&n.respondToPings?r._send({msg:"pong",id:o.id}):"pong"===o.msg||(a.include(["added","changed","removed","ready","updated"],o.msg)?r._livedata_data(o):"nosub"===o.msg?r._livedata_nosub(o):"result"===o.msg?r._livedata_result(o):"error"===o.msg?r._livedata_error(o):e._debug("discarding unknown livedata message type",o))},i=function(){var t={msg:"connect"};r._lastSessionId&&(t.session=r._lastSessionId),t.version=r._versionSuggestion||r._supportedDDPVersions[0],r._versionSuggestion=t.version,t.support=r._supportedDDPVersions,r._send(t),r._outstandingMethodBlocks.length>0&&a.each(r._outstandingMethodBlocks[0].methods,function(t){if(t.sentMessage&&t.noRetry){for(var n=r._outstandingMethodBlocks[0].methods,o,i=0;i<n.length&&(o=n[i],o.methodId!==t.methodId);i++);n.splice(i,1),t.receiveResult(new e.Error("invocation-failed","Method invocation might have failed due to dropped connection. Failing because `noRetry` option was passed to Meteor.apply."))}}),!a.isEmpty(r._outstandingMethodBlocks)&&a.isEmpty(r._outstandingMethodBlocks[0].methods)&&r._outstandingMethodBlocks.shift(),a.each(r._methodInvokers,function(e){e.sentMessage=!1}),r.onReconnect?r._callOnReconnectAndSendAppropriateOutstandingMethods():r._sendOutstandingMethods(),a.each(r._subscriptions,function(e,t){r._send({msg:"sub",id:t,name:e.name,params:e.params})})},s=function(){r._heartbeat&&(r._heartbeat.stop(),r._heartbeat=null)};e.isServer?(r._stream.on("message",e.bindEnvironment(o,"handling DDP message")),r._stream.on("reset",e.bindEnvironment(i,"handling DDP reset")),r._stream.on("disconnect",e.bindEnvironment(s,"handling DDP disconnect"))):(r._stream.on("message",o),r._stream.on("reset",i),r._stream.on("disconnect",s))},c=function(e){var t=this;t.methodId=e.methodId,t.sentMessage=!1,t._callback=e.callback,t._connection=e.connection,t._message=e.message,t._onResultReceived=e.onResultReceived||function(){},t._wait=e.wait,t.noRetry=e.noRetry,t._methodResult=null,t._dataVisible=!1,t._connection._methodInvokers[t.methodId]=t};a.extend(c.prototype,{sendMessage:function(){var e=this;if(e.gotResult())throw new Error("sendingMethod is called on method with result");e._dataVisible=!1,e.sentMessage=!0,e._wait&&(e._connection._methodsBlockingQuiescence[e.methodId]=!0),e._connection._send(e._message)},_maybeInvokeCallback:function(){var e=this;e._methodResult&&e._dataVisible&&(e._callback(e._methodResult[0],e._methodResult[1]),delete e._connection._methodInvokers[e.methodId],e._connection._outstandingMethodFinished())},receiveResult:function(e,t){var n=this;if(n.gotResult())throw new Error("Methods should only receive results once");n._methodResult=[e,t],n._onResultReceived(e,t),n._maybeInvokeCallback()},dataVisible:function(){var e=this;e._dataVisible=!0,e._maybeInvokeCallback()},gotResult:function(){var e=this;return!!e._methodResult}}),a.extend(o.prototype,{registerStore:function(e,t){var n=this;if(e in n._stores)return!1;var r={};a.each(["update","beginUpdate","endUpdate","saveOriginals","retrieveOriginals","getDoc","_getCollection"],function(e){r[e]=function(){return t[e]?t[e].apply(t,arguments):void 0}}),n._stores[e]=r;var o=n._updatesForUnknownStores[e];return o&&(r.beginUpdate(o.length,!1),a.each(o,function(e){r.update(e)}),r.endUpdate(),delete n._updatesForUnknownStores[e]),!0},subscribe:function(e){var t=this,n=Array.prototype.slice.call(arguments,1),r={};if(n.length){var o=n[n.length-1];a.isFunction(o)?r.onReady=n.pop():o&&a.any([o.onReady,o.onError,o.onStop],a.isFunction)&&(r=n.pop())}var c=a.find(t._subscriptions,function(t){return t.inactive&&t.name===e&&s.equals(t.params,n)}),d;c?(d=c.id,c.inactive=!1,r.onReady&&(c.ready||(c.readyCallback=r.onReady)),r.onError&&(c.errorCallback=r.onError),r.onStop&&(c.stopCallback=r.onStop)):(d=i.id(),t._subscriptions[d]={id:d,name:e,params:s.clone(n),inactive:!1,ready:!1,readyDeps:new u.Dependency,readyCallback:r.onReady,errorCallback:r.onError,stopCallback:r.onStop,connection:t,remove:function(){delete this.connection._subscriptions[this.id],this.ready&&this.readyDeps.changed()},stop:function(){this.connection._send({msg:"unsub",id:d}),this.remove(),r.onStop&&r.onStop()}},t._send({msg:"sub",id:d,name:e,params:n}));var l={stop:function(){a.has(t._subscriptions,d)&&t._subscriptions[d].stop()},ready:function(){if(!a.has(t._subscriptions,d))return!1;var e=t._subscriptions[d];return e.readyDeps.depend(),e.ready},subscriptionId:d};return u.active&&u.onInvalidate(function(e){a.has(t._subscriptions,d)&&(t._subscriptions[d].inactive=!0),u.afterFlush(function(){a.has(t._subscriptions,d)&&t._subscriptions[d].inactive&&l.stop()})}),l},_subscribeAndWait:function(e,t,n){var o=this,i=new r,s=!1,a;return t=t||[],t.push({onReady:function(){s=!0,i.return()},onError:function(e){s?n&&n.onLateError&&n.onLateError(e):i.throw(e)}}),a=o.subscribe.apply(o,[e].concat(t)),i.wait(),a},methods:function(e){var t=this;a.each(e,function(e,n){if("function"!=typeof e)throw new Error("Method '"+n+"' must be a function");if(t._methodHandlers[n])throw new Error("A method named '"+n+"' is already defined");t._methodHandlers[n]=e})},call:function(e){var t=Array.prototype.slice.call(arguments,1);if(t.length&&"function"==typeof t[t.length-1])var n=t.pop();return this.apply(e,t,n)},apply:function(t,n,o,i){var u=this;i||"function"!=typeof o||(i=o,o={}),o=o||{},i&&(i=e.bindEnvironment(i,"delivering result of invoking '"+t+"'")),n=s.clone(n);var d=function(){var e;return function(){return void 0===e&&(e=""+u._nextMethodId++),e}}(),l=h._CurrentInvocation.get(),_=l&&l.isSimulation,p=null,v=function(){return null===p&&(p=f.makeRpcSeed(l,t)),p},m=u._methodHandlers[t];if(m){var g=function(e){u.setUserId(e)},b=new f.MethodInvocation({isSimulation:!0,userId:u.userId(),setUserId:g,randomSeed:function(){return v()}});_||u._saveOriginals();try{var y=h._CurrentInvocation.withValue(b,function(){return e.isServer?e._noYieldsAllowed(function(){return m.apply(b,s.clone(n))}):m.apply(b,s.clone(n))})}catch(e){var w=e}_||u._retrieveAndStoreOriginals(d())}if(_){if(i)return void i(w,y);if(w)throw w;return y}if(w){if(o.throwStubExceptions)throw w;w.expected||e._debug("Exception while simulating the effect of invoking '"+t+"'",w,w.stack)}if(!i)if(e.isClient)i=function(n){n&&e._debug("Error invoking Method '"+t+"':",n.message)};else{var S=new r;i=S.resolver()}var k={msg:"method",method:t,params:n,id:d()};null!==p&&(k.randomSeed=p);var C=new c({methodId:d(),callback:i,connection:u,onResultReceived:o.onResultReceived,wait:!!o.wait,message:k,noRetry:!!o.noRetry});return o.wait?u._outstandingMethodBlocks.push({wait:!0,methods:[C]}):((a.isEmpty(u._outstandingMethodBlocks)||a.last(u._outstandingMethodBlocks).wait)&&u._outstandingMethodBlocks.push({wait:!1,methods:[]}),a.last(u._outstandingMethodBlocks).methods.push(C)),1===u._outstandingMethodBlocks.length&&C.sendMessage(),S?S.wait():o.returnStubValue?y:void 0},_saveOriginals:function(){var e=this;a.each(e._stores,function(e){e.saveOriginals()})},_retrieveAndStoreOriginals:function(e){var t=this;if(t._documentsWrittenByStub[e])throw new Error("Duplicate methodId in _retrieveAndStoreOriginals");var n=[];a.each(t._stores,function(r,o){var i=r.retrieveOriginals();i&&i.forEach(function(r,i){n.push({collection:o,id:i}),a.has(t._serverDocuments,o)||(t._serverDocuments[o]=new m);var s=t._serverDocuments[o].setDefault(i,{});s.writtenByStubs?s.writtenByStubs[e]=!0:(s.document=r,s.flushCallbacks=[],s.writtenByStubs={},s.writtenByStubs[e]=!0)})}),a.isEmpty(n)||(t._documentsWrittenByStub[e]=n)},_unsubscribeAll:function(){var e=this;a.each(a.clone(e._subscriptions),function(t,n){"meteor_autoupdate_clientVersions"!==t.name&&e._subscriptions[n].stop()})},_send:function(e){var t=this;t._stream.send(f.stringifyDDP(e))},_lostConnection:function(e){var t=this;t._stream._lostConnection(e)},status:function(){var e=this;return e._stream.status.apply(e._stream,arguments)},reconnect:function(){var e=this;return e._stream.reconnect.apply(e._stream,arguments)},disconnect:function(){var e=this;return e._stream.disconnect.apply(e._stream,arguments)},close:function(){var e=this;return e._stream.disconnect({_permanent:!0})},userId:function(){var e=this;return e._userIdDeps&&e._userIdDeps.depend(),e._userId},setUserId:function(e){var t=this;t._userId!==e&&(t._userId=e,t._userIdDeps&&t._userIdDeps.changed())},_waitingForQuiescence:function(){var e=this;return!a.isEmpty(e._subsBeingRevived)||!a.isEmpty(e._methodsBlockingQuiescence)},_anyMethodsAreOutstanding:function(){var e=this;return a.any(a.pluck(e._methodInvokers,"sentMessage"))},_livedata_connected:function(e){var t=this;if("pre1"!==t._version&&0!==t._heartbeatInterval&&(t._heartbeat=new f.Heartbeat({heartbeatInterval:t._heartbeatInterval,heartbeatTimeout:t._heartbeatTimeout,onTimeout:function(){t._lostConnection(new h.ConnectionError("DDP heartbeat timed out"))},sendPing:function(){t._send({msg:"ping"})}}),t._heartbeat.start()),t._lastSessionId&&(t._resetStores=!0),"string"==typeof e.session){var n=t._lastSessionId===e.session;t._lastSessionId=e.session}n||(t._updatesForUnknownStores={},t._resetStores&&(t._documentsWrittenByStub={},t._serverDocuments={}),t._afterUpdateCallbacks=[],t._subsBeingRevived={},a.each(t._subscriptions,function(e,n){e.ready&&(t._subsBeingRevived[n]=!0)}),t._methodsBlockingQuiescence={},t._resetStores&&a.each(t._methodInvokers,function(e){e.gotResult()?t._afterUpdateCallbacks.push(a.bind(e.dataVisible,e)):e.sentMessage&&(t._methodsBlockingQuiescence[e.methodId]=!0)}),t._messagesBufferedUntilQuiescence=[],t._waitingForQuiescence()||(t._resetStores&&(a.each(t._stores,function(e){e.beginUpdate(0,!0),e.endUpdate()}),t._resetStores=!1),t._runAfterUpdateCallbacks()))},_processOneDataMessage:function(e,t){var n=this;n["_process_"+e.msg](e,t)},_livedata_data:function(e){var t=this;if(t._waitingForQuiescence()){if(t._messagesBufferedUntilQuiescence.push(e),"nosub"===e.msg&&delete t._subsBeingRevived[e.id],a.each(e.subs||[],function(e){delete t._subsBeingRevived[e]}),a.each(e.methods||[],function(e){delete t._methodsBlockingQuiescence[e]}),t._waitingForQuiescence())return;a.each(t._messagesBufferedUntilQuiescence,function(e){t._processOneDataMessage(e,t._bufferedWrites)}),t._messagesBufferedUntilQuiescence=[]}else t._processOneDataMessage(e,t._bufferedWrites);var n=a.include(["added","changed","removed"],e.msg);if(0===t._bufferedWritesInterval||!n)return void t._flushBufferedWrites();if(null===t._bufferedWritesFlushAt)t._bufferedWritesFlushAt=(new Date).valueOf()+t._bufferedWritesMaxAge;else if(t._bufferedWritesFlushAt<(new Date).valueOf())return void t._flushBufferedWrites();t._bufferedWritesFlushHandle&&clearTimeout(t._bufferedWritesFlushHandle),t._bufferedWritesFlushHandle=setTimeout(t.__flushBufferedWrites,t._bufferedWritesInterval)},_flushBufferedWrites:function(){var e=this;e._bufferedWritesFlushHandle&&(clearTimeout(e._bufferedWritesFlushHandle),e._bufferedWritesFlushHandle=null),e._bufferedWritesFlushAt=null;var t=e._bufferedWrites;e._bufferedWrites={},e._performWrites(t)},_performWrites:function(e){var t=this;!t._resetStores&&a.isEmpty(e)||(a.each(t._stores,function(n,r){n.beginUpdate(a.has(e,r)?e[r].length:0,t._resetStores)}),t._resetStores=!1,a.each(e,function(e,n){var r=t._stores[n];r?a.each(e,function(e){r.update(e)}):(a.has(t._updatesForUnknownStores,n)||(t._updatesForUnknownStores[n]=[]),Array.prototype.push.apply(t._updatesForUnknownStores[n],e))}),a.each(t._stores,function(e){e.endUpdate()})),t._runAfterUpdateCallbacks()},_runAfterUpdateCallbacks:function(){var e=this,t=e._afterUpdateCallbacks;e._afterUpdateCallbacks=[],a.each(t,function(e){e()})},_pushUpdate:function(e,t,n){var r=this;a.has(e,t)||(e[t]=[]),e[t].push(n)},_getServerDoc:function(e,t){var n=this;if(!a.has(n._serverDocuments,e))return null;var r=n._serverDocuments[e];return r.get(t)||null},_process_added:function(e,t){var n=this,r=p.idParse(e.id),o=n._getServerDoc(e.collection,r);if(o){var i=void 0!==o.document;if(o.document=e.fields||{},o.document._id=r,n._resetStores){var s=n._stores[e.collection].getDoc(e.id);void 0!==s&&(e.fields=s),n._pushUpdate(t,e.collection,e)}else if(i)throw new Error("Server sent add for existing id: "+e.id)}else n._pushUpdate(t,e.collection,e)},_process_changed:function(e,t){var n=this,r=n._getServerDoc(e.collection,p.idParse(e.id));if(r){if(void 0===r.document)throw new Error("Server sent changed for nonexisting id: "+e.id);_.applyChanges(r.document,e.fields)}else n._pushUpdate(t,e.collection,e)},_process_removed:function(e,t){var n=this,r=n._getServerDoc(e.collection,p.idParse(e.id));if(r){if(void 0===r.document)throw new Error("Server sent removed for nonexisting id:"+e.id);r.document=void 0}else n._pushUpdate(t,e.collection,{msg:"removed",collection:e.collection,id:e.id})},_process_updated:function(e,t){var n=this;a.each(e.methods,function(e){a.each(n._documentsWrittenByStub[e],function(r){var o=n._getServerDoc(r.collection,r.id);if(!o)throw new Error("Lost serverDoc for "+JSON.stringify(r));if(!o.writtenByStubs[e])throw new Error("Doc "+JSON.stringify(r)+" not written by method "+e);delete o.writtenByStubs[e],a.isEmpty(o.writtenByStubs)&&(n._pushUpdate(t,r.collection,{msg:"replace",id:p.idStringify(r.id),replace:o.document}),a.each(o.flushCallbacks,function(e){e()}),n._serverDocuments[r.collection].remove(r.id))}),delete n._documentsWrittenByStub[e];var r=n._methodInvokers[e];if(!r)throw new Error("No callback invoker for method "+e);n._runWhenAllServerDocsAreFlushed(a.bind(r.dataVisible,r))})},_process_ready:function(e,t){var n=this;a.each(e.subs,function(e){n._runWhenAllServerDocsAreFlushed(function(){var t=n._subscriptions[e];t&&(t.ready||(t.ready=!0,t.readyCallback&&t.readyCallback(),t.readyDeps.changed()))})})},_runWhenAllServerDocsAreFlushed:function(e){var t=this,n=function(){t._afterUpdateCallbacks.push(e)},r=0,o=function(){--r,0===r&&n()};a.each(t._serverDocuments,function(e){e.forEach(function(e){var n=a.any(e.writtenByStubs,function(e,n){var r=t._methodInvokers[n];return r&&r.sentMessage});n&&(++r,e.flushCallbacks.push(o))})}),0===r&&n()},_livedata_nosub:function(t){var n=this;if(n._livedata_data(t),a.has(n._subscriptions,t.id)){var r=n._subscriptions[t.id].errorCallback,o=n._subscriptions[t.id].stopCallback;n._subscriptions[t.id].remove();var i=function(t){return t&&t.error&&new e.Error(t.error.error,t.error.reason,t.error.details)};r&&t.error&&r(i(t)),o&&o(i(t))}},_process_nosub:function(){},_livedata_result:function(t){var n=this;if(a.isEmpty(n._bufferedWrites)||n._flushBufferedWrites(),a.isEmpty(n._outstandingMethodBlocks))return void e._debug("Received method result but no methods outstanding");for(var r=n._outstandingMethodBlocks[0].methods,o,i=0;i<r.length&&(o=r[i],o.methodId!==t.id);i++);return o?(r.splice(i,1),void(a.has(t,"error")?o.receiveResult(new e.Error(t.error.error,t.error.reason,t.error.details)):o.receiveResult(void 0,t.result))):void e._debug("Can't match method response to original method call",t)},_outstandingMethodFinished:function(){var e=this;if(!e._anyMethodsAreOutstanding()){if(!a.isEmpty(e._outstandingMethodBlocks)){var t=e._outstandingMethodBlocks.shift();if(!a.isEmpty(t.methods))throw new Error("No methods outstanding but nonempty block: "+JSON.stringify(t));a.isEmpty(e._outstandingMethodBlocks)||e._sendOutstandingMethods()}e._maybeMigrate()}},_sendOutstandingMethods:function(){var e=this;a.isEmpty(e._outstandingMethodBlocks)||a.each(e._outstandingMethodBlocks[0].methods,function(e){e.sendMessage()})},_livedata_error:function(t){e._debug("Received error from server: ",t.reason),t.offendingMessage&&e._debug("For: ",t.offendingMessage)},_callOnReconnectAndSendAppropriateOutstandingMethods:function(){var e=this,t=e._outstandingMethodBlocks;if(e._outstandingMethodBlocks=[],e.onReconnect(),!a.isEmpty(t)){if(a.isEmpty(e._outstandingMethodBlocks))return e._outstandingMethodBlocks=t,void e._sendOutstandingMethods();a.last(e._outstandingMethodBlocks).wait||t[0].wait||(a.each(t[0].methods,function(t){a.last(e._outstandingMethodBlocks).methods.push(t),1===e._outstandingMethodBlocks.length&&t.sendMessage()}),t.shift()),a.each(t,function(t){e._outstandingMethodBlocks.push(t)})}},_readyToMigrate:function(){var e=this;return a.isEmpty(e._methodInvokers)},_maybeMigrate:function(){var e=this;e._retryMigrate&&e._readyToMigrate()&&(e._retryMigrate(),e._retryMigrate=null)}}),v.Connection=o,h.connect=function(e,t){var n=new o(e,t);return w.push(n),n},w=[],h._allSubscriptionsReady=function(){return a.all(w,function(e){return a.all(e._subscriptions,function(e){return e.ready})})}}.call(this),function(){if(e.refresh=function(e){},e.isClient){var t="/";"undefined"!=typeof __meteor_runtime_config__&&__meteor_runtime_config__.DDP_DEFAULT_CONNECTION_URL&&(t=__meteor_runtime_config__.DDP_DEFAULT_CONNECTION_URL);var n=new d,r=function(t){if(e._debug(t),Package.reload){var r=Package.reload.Reload._migrationData("livedata")||{},o=r.DDPVersionNegotiationFailures||0;++o,Package.reload.Reload._onMigrate("livedata",function(){return[!0,{DDPVersionNegotiationFailures:o}]}),n.retryLater(o,function(){Package.reload.Reload._reload()})}};e.connection=h.connect(t,{onDDPVersionNegotiationFailure:r}),a.each(["subscribe","methods","call","apply","status","reconnect","disconnect"],function(t){e[t]=a.bind(e.connection[t],e.connection)})}else e.connection=null;e.default_connection=e.connection,e.connect=h.connect}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["ddp-client"]={},{DDP:h,LivedataTest:v})}();
!function(){var a=Package["ddp-client"].DDP;"undefined"==typeof Package&&(Package={}),function(a,n){for(var e in n)e in a||(a[e]=n[e])}(Package.ddp={},{DDP:a})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["ddp-server"]={}}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,r=Package.meteor.meteorEnv,t=Package.underscore._,o=Package.minimongo.LocalCollection,a=Package.minimongo.Minimongo,i=Package.check.check,c=Package.check.Match,l=Package.ejson.EJSON,s=Package["ddp-client"].DDP,d=Package.modules.meteorInstall,u=Package.modules.Buffer,f=Package.modules.process,h=Package["ecmascript-runtime"].Symbol,_=Package["ecmascript-runtime"].Map,m=Package["ecmascript-runtime"].Set,v=Package["babel-runtime"].meteorBabelHelpers,p=Package.promise.Promise,w,y=d({node_modules:{meteor:{"allow-deny":{"allow-deny.js":function(){function n(e,n){return e.transform?e.transform(n):n}function r(e,n,r){var t=n;return e.transform&&(t=l.clone(n),null!==r&&(t._id=r),t=e.transform(t)),t}function a(e,n,r){var a=["insert","update","remove","fetch","transform"];if(t.each(t.keys(r),function(e){if(!t.contains(a,e))throw new Error(n+": Invalid key: "+e)}),e._restricted=!0,t.each(["insert","update","remove"],function(t){if(r.hasOwnProperty(t)){if(!(r[t]instanceof Function))throw new Error(n+": Value for `"+t+"` must be a function");void 0===r.transform?r[t].transform=e._transform:r[t].transform=o.wrapTransform(r.transform),e._validators[t][n].push(r[t])}}),r.update||r.remove||r.fetch){if(r.fetch&&!(r.fetch instanceof Array))throw new Error(n+": Value for `fetch` must be an array");e._updateFetch(r.fetch)}}function d(n,r){if(!o._selectorIsIdPerhapsAsObject(n))throw new e.Error(403,"Not permitted. Untrusted code may only "+r+" documents by ID.")}function u(){var e=s._CurrentInvocation.get();return e&&e.isSimulation}w={CollectionPrototype:{}};var f=w.CollectionPrototype;f.allow=function(e){a(this,"allow",e)},f.deny=function(e){a(this,"deny",e)},f._defineMutationMethods=function(n){var r=this;n=n||{},r._restricted=!1,r._insecure=void 0,r._validators={insert:{allow:[],deny:[]},update:{allow:[],deny:[]},remove:{allow:[],deny:[]},upsert:{allow:[],deny:[]},fetch:[],fetchAllFields:!1},r._name&&(r._prefix="/"+r._name+"/",r._connection&&(r._connection===e.server||e.isClient)&&!function(){var o={};t.each(["insert","update","remove"],function(a){var l=r._prefix+a;if(n.useExisting){var s=e.isClient?"_methodHandlers":"method_handlers";if(r._connection[s]&&"function"==typeof r._connection[s][l])return}o[l]=function(){i(arguments,[c.Any]);var n=t.toArray(arguments);try{var o=null;if("insert"!==a||t.has(n[0],"_id")||(o=r._makeNewID()),this.isSimulation)return null!==o&&(n[0]._id=o),r._collection[a].apply(r._collection,n);if("insert"!==a&&d(n[0],a),r._restricted){if(0===r._validators[a].allow.length)throw new e.Error(403,"Access denied. No allow validators set on restricted collection for method '"+a+"'.");var l="_validated"+a.charAt(0).toUpperCase()+a.slice(1);return n.unshift(this.userId),"insert"===a&&n.push(o),r[l].apply(r,n)}if(r._isInsecure())return null!==o&&(n[0]._id=o),r._collection[a].apply(r._collection,n);throw new e.Error(403,"Access denied")}catch(n){throw"MongoError"===n.name||"MinimongoError"===n.name?new e.Error(409,n.toString()):n}}}),r._connection.methods(o)}())},f._updateFetch=function(e){var n=this;n._validators.fetchAllFields||(e?n._validators.fetch=t.union(n._validators.fetch,e):(n._validators.fetchAllFields=!0,n._validators.fetch=null))},f._isInsecure=function(){var e=this;return void 0===e._insecure?!!Package.insecure:e._insecure},f._validatedInsert=function(n,o,a){var i=this;if(t.any(i._validators.insert.deny,function(e){return e(n,r(e,o,a))}))throw new e.Error(403,"Access denied");if(t.all(i._validators.insert.allow,function(e){return!e(n,r(e,o,a))}))throw new e.Error(403,"Access denied");null!==a&&(o._id=a),i._collection.insert.call(i._collection,o)},f._validatedUpdate=function(r,a,c,l){var s=this;if(i(c,Object),l=t.clone(l)||{},!o._selectorIsIdPerhapsAsObject(a))throw new Error("validated update should be of a single ID");if(l.upsert)throw new e.Error(403,"Access denied. Upserts not allowed in a restricted collection.");var d="Access denied. In a restricted collection you can only update documents, not replace them. Use a Mongo update operator, such as '$set'.",u=[];if(t.isEmpty(c))throw new e.Error(403,d);t.each(c,function(n,r){if("$"!==r.charAt(0))throw new e.Error(403,d);if(!t.has(h,r))throw new e.Error(403,"Access denied. Operator "+r+" not allowed in a restricted collection.");t.each(t.keys(n),function(e){e.indexOf(".")!==-1&&(e=e.substring(0,e.indexOf("."))),t.contains(u,e)||u.push(e)})});var f={transform:null};s._validators.fetchAllFields||(f.fields={},t.each(s._validators.fetch,function(e){f.fields[e]=1}));var _=s._collection.findOne(a,f);if(!_)return 0;if(t.any(s._validators.update.deny,function(e){var t=n(e,_);return e(r,t,u,c)}))throw new e.Error(403,"Access denied");if(t.all(s._validators.update.allow,function(e){var t=n(e,_);return!e(r,t,u,c)}))throw new e.Error(403,"Access denied");return l._forbidReplace=!0,s._collection.update.call(s._collection,a,c,l)};var h={$inc:1,$set:1,$unset:1,$addToSet:1,$pop:1,$pullAll:1,$pull:1,$pushAll:1,$push:1,$bit:1};f._validatedRemove=function(r,o){var a=this,i={transform:null};a._validators.fetchAllFields||(i.fields={},t.each(a._validators.fetch,function(e){i.fields[e]=1}));var c=a._collection.findOne(o,i);if(!c)return 0;if(t.any(a._validators.remove.deny,function(e){return e(r,n(e,c))}))throw new e.Error(403,"Access denied");if(t.all(a._validators.remove.allow,function(e){return!e(r,n(e,c))}))throw new e.Error(403,"Access denied");return a._collection.remove.call(a._collection,o)},f._callMutatorMethod=function(){function n(n,r,t){!e.isClient||t||u()||(t=function(){function r(r){r&&e._debug(n+" failed: "+(r.reason||r.stack))}return r}());var o="update"===n||"remove"===n;o&&!u()&&d(r[0],n);var a=this._prefix+n;return this._connection.apply(a,r,{returnStubValue:!0},t)}return n}()}}}}},{extensions:[".js",".json"]});y("./node_modules/meteor/allow-deny/allow-deny.js"),"undefined"==typeof Package&&(Package={}),function(e,n){for(var r in n)r in e||(e[r]=n[r])}(Package["allow-deny"]={},{AllowDeny:w})}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,o=Package.meteor.meteorEnv,t=Package["allow-deny"].AllowDeny,r=Package.random.Random,i=Package.ejson.EJSON,c=Package.underscore._,l=Package.minimongo.LocalCollection,a=Package.minimongo.Minimongo,s=Package["ddp-client"].DDP,u=Package.tracker.Tracker,d=Package.tracker.Deps,f=Package["diff-sequence"].DiffSequence,_=Package["mongo-id"].MongoID,p=Package.check.check,m=Package.check.Match,g=Package.modules.meteorInstall,v=Package.modules.Buffer,h=Package.modules.process,w=Package["ecmascript-runtime"].Symbol,C=Package["ecmascript-runtime"].Map,y=Package["ecmascript-runtime"].Set,k=Package["babel-runtime"].meteorBabelHelpers,O=Package.promise.Promise,b,I,P=g({node_modules:{meteor:{mongo:{"local_collection_driver.js":function(){b=function e(){var n=this;n.noConnCollections={}};var e=function e(n,o){return n in o||(o[n]=new l(n)),o[n]};c.extend(b.prototype,{open:function(){function n(n,o){var t=this;return n?o?(o._mongo_livedata_collections||(o._mongo_livedata_collections={}),e(n,o._mongo_livedata_collections)):e(n,t.noConnCollections):new l}return n}()}),b=new b},"collection.js":function(n,o,i){function a(e){p(e,RegExp);var n={$regex:e.source},o="";return e.ignoreCase&&(o+="i"),e.multiline&&(o+="m"),o&&(n.$options=o),n}function u(e,n){if(e)return n=n||c.identity,function(o,t){e(o,!o&&n(t))}}function d(e){if(e.length&&(void 0===e[e.length-1]||e[e.length-1]instanceof Function))return e.pop()}I={},I.Collection=function(n,o){var t=this;if(!(t instanceof I.Collection))throw new Error('use "new" to construct a Mongo.Collection');if(n||null===n||(e._debug("Warning: creating anonymous collection. It will not be saved or synchronized over the network. (Pass null for the collection name to turn off this warning.)"),n=null),null!==n&&"string"!=typeof n)throw new Error("First argument to new Mongo.Collection must be a string or null");switch(o&&o.methods&&(o={connection:o}),o&&o.manager&&!o.connection&&(o.connection=o.manager),o=c.extend({connection:void 0,idGeneration:"STRING",transform:null,_driver:void 0,_preventAutopublish:!1},o),o.idGeneration){case"MONGO":t._makeNewID=function(){var e=n?s.randomStream("/collection/"+n):r.insecure;return new I.ObjectID(e.hexString(24))};break;case"STRING":default:t._makeNewID=function(){var e=n?s.randomStream("/collection/"+n):r.insecure;return e.id()}}if(t._transform=l.wrapTransform(o.transform),n&&null!==o.connection?o.connection?t._connection=o.connection:e.isClient?t._connection=e.connection:t._connection=e.server:t._connection=null,o._driver||(n&&t._connection===e.server&&"undefined"!=typeof MongoInternals&&MongoInternals.defaultRemoteCollectionDriver?o._driver=MongoInternals.defaultRemoteCollectionDriver():o._driver=b),t._collection=o._driver.open(n,t._connection),t._name=n,t._driver=o._driver,t._connection&&t._connection.registerStore){var i=t._connection.registerStore(n,{beginUpdate:function(){function e(e,n){(e>1||n)&&t._collection.pauseObservers(),n&&t._collection.remove({})}return e}(),update:function(){function e(e){var n=_.idParse(e.id),o=t._collection.findOne(n);if("replace"===e.msg){var r=e.replace;return void(r?o?t._collection.update(n,r):t._collection.insert(r):o&&t._collection.remove(n))}if("added"===e.msg){if(o)throw new Error("Expected not to find a document already present for an add");t._collection.insert(c.extend({_id:n},e.fields))}else if("removed"===e.msg){if(!o)throw new Error("Expected to find a document already present for removed");t._collection.remove(n)}else{if("changed"!==e.msg)throw new Error("I don't know how to deal with this message");if(!o)throw new Error("Expected to find a document to change");if(!c.isEmpty(e.fields)){var i={};c.each(e.fields,function(e,n){void 0===e?(i.$unset||(i.$unset={}),i.$unset[n]=1):(i.$set||(i.$set={}),i.$set[n]=e)}),t._collection.update(n,i)}}}return e}(),endUpdate:function(){function e(){t._collection.resumeObservers()}return e}(),saveOriginals:function(){function e(){t._collection.saveOriginals()}return e}(),retrieveOriginals:function(){function e(){return t._collection.retrieveOriginals()}return e}(),getDoc:function(){function e(e){return t.findOne(e)}return e}(),_getCollection:function(){function e(){return t}return e}()});if(!i){var a='There is already a collection named "'+n+'"';if(o._suppressSameNameError!==!0)throw new Error(a);console.warn?console.warn(a):console.log(a)}}if(o.defineMutationMethods!==!1)try{t._defineMutationMethods({useExisting:o._suppressSameNameError===!0})}catch(e){if(e.message==="A method named '/"+n+"/insert' is already defined")throw new Error('There is already a collection named "'+n+'"');throw e}Package.autopublish&&!o._preventAutopublish&&t._connection&&t._connection.publish&&t._connection.publish(null,function(){return t.find()},{is_auto:!0})},c.extend(I.Collection.prototype,{_getFindSelector:function(){function e(e){return 0==e.length?{}:e[0]}return e}(),_getFindOptions:function(){function e(e){var n=this;return e.length<2?{transform:n._transform}:(p(e[1],m.Optional(m.ObjectIncluding({fields:m.Optional(m.OneOf(Object,void 0)),sort:m.Optional(m.OneOf(Object,Array,Function,void 0)),limit:m.Optional(m.OneOf(Number,void 0)),skip:m.Optional(m.OneOf(Number,void 0))}))),c.extend({transform:n._transform},e[1]))}return e}(),find:function(){function e(){var e=this,n=c.toArray(arguments);return e._collection.find(e._getFindSelector(n),e._getFindOptions(n))}return e}(),findOne:function(){function e(){var e=this,n=c.toArray(arguments);return e._collection.findOne(e._getFindSelector(n),e._getFindOptions(n))}return e}()}),I.Collection._publishCursor=function(e,n,o){var t=e.observeChanges({added:function(){function e(e,t){n.added(o,e,t)}return e}(),changed:function(){function e(e,t){n.changed(o,e,t)}return e}(),removed:function(){function e(e){n.removed(o,e)}return e}()});return n.onStop(function(){t.stop()}),t},I.Collection._rewriteSelector=function(e){if(l._selectorIsId(e)&&(e={_id:e}),c.isArray(e))throw new Error("Mongo selector can't be an array.");if(!e||"_id"in e&&!e._id)return{_id:r.id()};var n={};return c.each(e,function(e,o){e instanceof RegExp?n[o]=a(e):e&&e.$regex instanceof RegExp?(n[o]=a(e.$regex),void 0!==e.$options&&(n[o].$options=e.$options)):c.contains(["$or","$and","$nor"],o)?n[o]=c.map(e,function(e){return I.Collection._rewriteSelector(e)}):n[o]=e}),n},I.Collection.prototype.insert=function(){function e(e,n){if(!e)throw new Error("insert requires an argument");if(e=c.extend({},e),"_id"in e){if(!e._id||!("string"==typeof e._id||e._id instanceof I.ObjectID))throw new Error("Meteor requires document _id fields to be non-empty strings or ObjectIDs")}else{var o=!0;if(this._isRemoteCollection()){var t=s._CurrentInvocation.get();t||(o=!1)}o&&(e._id=this._makeNewID())}var r=function(){function n(n){return e._id?e._id:(e._id=n,n)}return n}(),i=u(n,r);if(this._isRemoteCollection()){var l=this._callMutatorMethod("insert",[e],i);return r(l)}try{var a=this._collection.insert(e,i);return r(a)}catch(e){if(n)return n(e),null;throw e}}return e}(),I.Collection.prototype.update=function(){function e(e,n){for(var o=arguments.length,t=Array(o>2?o-2:0),r=2;r<o;r++)t[r-2]=arguments[r];var i=d(t);e=I.Collection._rewriteSelector(e);var l=c.clone(t[0])||{};if(l&&l.upsert)if(l.insertedId){if(!("string"==typeof l.insertedId||l.insertedId instanceof I.ObjectID))throw new Error("insertedId must be string or ObjectID")}else e._id||(l.insertedId=this._makeNewID());var a=u(i);if(this._isRemoteCollection()){var s=[e,n,l];return this._callMutatorMethod("update",s,a)}try{return this._collection.update(e,n,l,a)}catch(e){if(i)return i(e),null;throw e}}return e}(),I.Collection.prototype.remove=function(){function e(e,n){e=I.Collection._rewriteSelector(e);var o=u(n);if(this._isRemoteCollection())return this._callMutatorMethod("remove",[e],o);try{return this._collection.remove(e,o)}catch(e){if(n)return n(e),null;throw e}}return e}(),I.Collection.prototype._isRemoteCollection=function(){function n(){return this._connection&&this._connection!==e.server}return n}(),I.Collection.prototype.upsert=function(){function e(e,n,o,t){t||"function"!=typeof o||(t=o,o={});var r=c.extend({},o,{_returnObject:!0,upsert:!0});return this.update(e,n,r,t)}return e}(),I.Collection.prototype._ensureIndex=function(e,n){var o=this;if(!o._collection._ensureIndex)throw new Error("Can only call _ensureIndex on server collections");o._collection._ensureIndex(e,n)},I.Collection.prototype._dropIndex=function(e){var n=this;if(!n._collection._dropIndex)throw new Error("Can only call _dropIndex on server collections");n._collection._dropIndex(e)},I.Collection.prototype._dropCollection=function(){var e=this;if(!e._collection.dropCollection)throw new Error("Can only call _dropCollection on server collections");e._collection.dropCollection()},I.Collection.prototype._createCappedCollection=function(e,n){var o=this;if(!o._collection._createCappedCollection)throw new Error("Can only call _createCappedCollection on server collections");o._collection._createCappedCollection(e,n)},I.Collection.prototype.rawCollection=function(){var e=this;if(!e._collection.rawCollection)throw new Error("Can only call rawCollection on server collections");return e._collection.rawCollection()},I.Collection.prototype.rawDatabase=function(){var e=this;if(!e._driver.mongo||!e._driver.mongo.db)throw new Error("Can only call rawDatabase on server collections");return e._driver.mongo.db},I.ObjectID=_.ObjectID,I.Cursor=l.Cursor,I.Collection.Cursor=I.Cursor,I.Collection.ObjectID=I.ObjectID,e.Collection=I.Collection,c.extend(e.Collection.prototype,t.CollectionPrototype)}}}}},{extensions:[".js",".json"]});P("./node_modules/meteor/mongo/local_collection_driver.js"),P("./node_modules/meteor/mongo/collection.js"),"undefined"==typeof Package&&(Package={}),function(e,n){for(var o in n)o in e||(e[o]=n[o])}(Package.mongo={},{Mongo:I})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["blaze-html-templates"]={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.tracker.Tracker,r=Package.tracker.Deps,i;(function(){i=function(e,t){return this instanceof i?(this.curValue=e,this.equalsFunc=t,void(this.dep=new a.Dependency)):new i(e,t)},i._isEqual=function(e,t){var n=e,a=t;return n===a&&(!n||"number"==typeof n||"boolean"==typeof n||"string"==typeof n)},i.prototype.get=function(){return a.active&&this.dep.depend(),this.curValue},i.prototype.set=function(e){var t=this.curValue;(this.equalsFunc||i._isEqual)(t,e)||(this.curValue=e,this.dep.changed())},i.prototype.toString=function(){return"ReactiveVar{"+this.get()+"}"},i.prototype._numListeners=function(){var e=0;for(var t in this.dep._dependentsById)e++;return e}}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["reactive-var"]={},{ReactiveVar:i})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.modules.meteorInstall,i=Package.modules.Buffer,o=Package.modules.process,a,s,l=r({node_modules:{meteor:{jquery:{"main.js":["jquery","./jquery.js",function(e,t){var n=this;try{var r=e("jquery")}catch(t){r=e("./jquery.js")}t.$=t.jQuery=r,n.$=n.$||r,n.jQuery=n.jQuery||r}],"jquery.js":function(e,t,n){!function(e,t){"object"==typeof n&&"object"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function n(e){var t=e.length,n=ie.type(e);return"function"!==n&&!ie.isWindow(e)&&(!(1!==e.nodeType||!t)||("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e))}function r(e,t,n){if(ie.isFunction(t))return ie.grep(e,function(e,r){return!!t.call(e,r,e)!==n});if(t.nodeType)return ie.grep(e,function(e){return e===t!==n});if("string"==typeof t){if(de.test(t))return ie.filter(t,e,n);t=ie.filter(t,e)}return ie.grep(e,function(e){return ie.inArray(e,t)>=0!==n})}function i(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}function o(e){var t=xe[e]={};return ie.each(e.match(be)||[],function(e,n){t[n]=!0}),t}function a(){he.addEventListener?(he.removeEventListener("DOMContentLoaded",s,!1),e.removeEventListener("load",s,!1)):(he.detachEvent("onreadystatechange",s),e.detachEvent("onload",s))}function s(){(he.addEventListener||"load"===event.type||"complete"===he.readyState)&&(a(),ie.ready())}function l(e,t,n){if(void 0===n&&1===e.nodeType){var r="data-"+t.replace(Ee,"-$1").toLowerCase();if(n=e.getAttribute(r),"string"==typeof n){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:Ne.test(n)?ie.parseJSON(n):n)}catch(e){}ie.data(e,t,n)}else n=void 0}return n}function u(e){var t;for(t in e)if(("data"!==t||!ie.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}function c(e,t,n,r){if(ie.acceptData(e)){var i,o,a=ie.expando,s=e.nodeType,l=s?ie.cache:e,u=s?e[a]:e[a]&&a;if(u&&l[u]&&(r||l[u].data)||void 0!==n||"string"!=typeof t)return u||(u=s?e[a]=Q.pop()||ie.guid++:a),l[u]||(l[u]=s?{}:{toJSON:ie.noop}),"object"!=typeof t&&"function"!=typeof t||(r?l[u]=ie.extend(l[u],t):l[u].data=ie.extend(l[u].data,t)),o=l[u],r||(o.data||(o.data={}),o=o.data),void 0!==n&&(o[ie.camelCase(t)]=n),"string"==typeof t?(i=o[t],null==i&&(i=o[ie.camelCase(t)])):i=o,i}}function f(e,t,n){if(ie.acceptData(e)){var r,i,o=e.nodeType,a=o?ie.cache:e,s=o?e[ie.expando]:ie.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){ie.isArray(t)?t=t.concat(ie.map(t,ie.camelCase)):t in r?t=[t]:(t=ie.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;for(;i--;)delete r[t[i]];if(n?!u(r):!ie.isEmptyObject(r))return}(n||(delete a[s].data,u(a[s])))&&(o?ie.cleanData([e],!0):ne.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}function d(){return!0}function p(){return!1}function h(){try{return he.activeElement}catch(e){}}function m(e){var t=Fe.split("|"),n=e.createDocumentFragment();if(n.createElement)for(;t.length;)n.createElement(t.pop());return n}function g(e,t){var n,r,i=0,o=typeof e.getElementsByTagName!==Te?e.getElementsByTagName(t||"*"):typeof e.querySelectorAll!==Te?e.querySelectorAll(t||"*"):void 0;if(!o)for(o=[],n=e.childNodes||e;null!=(r=n[i]);i++)!t||ie.nodeName(r,t)?o.push(r):ie.merge(o,g(r,t));return void 0===t||t&&ie.nodeName(e,t)?ie.merge([e],o):o}function y(e){De.test(e.type)&&(e.defaultChecked=e.checked)}function v(e,t){return ie.nodeName(e,"table")&&ie.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function b(e){return e.type=(null!==ie.find.attr(e,"type"))+"/"+e.type,e}function x(e){var t=Ve.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function w(e,t){for(var n,r=0;null!=(n=e[r]);r++)ie._data(n,"globalEval",!t||ie._data(t[r],"globalEval"))}function T(e,t){if(1===t.nodeType&&ie.hasData(e)){var n,r,i,o=ie._data(e),a=ie._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;r<i;r++)ie.event.add(t,n,s[n][r])}a.data&&(a.data=ie.extend({},a.data))}}function C(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!ne.noCloneEvent&&t[ie.expando]){i=ie._data(t);for(r in i.events)ie.removeEvent(t,r,i.handle);t.removeAttribute(ie.expando)}"script"===n&&t.text!==e.text?(b(t).text=e.text,x(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),ne.html5Clone&&e.innerHTML&&!ie.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&De.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:"input"!==n&&"textarea"!==n||(t.defaultValue=e.defaultValue)}}function N(t,n){var r,i=ie(n.createElement(t)).appendTo(n.body),o=e.getDefaultComputedStyle&&(r=e.getDefaultComputedStyle(i[0]))?r.display:ie.css(i[0],"display");return i.detach(),o}function E(e){var t=he,n=Ze[e];return n||(n=N(e,t),"none"!==n&&n||(Ke=(Ke||ie("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement),t=(Ke[0].contentWindow||Ke[0].contentDocument).document,t.write(),t.close(),n=N(e,t),Ke.detach()),Ze[e]=n),n}function k(e,t){return{get:function(){var n=e();if(null!=n)return n?void delete this.get:(this.get=t).apply(this,arguments)}}}function S(e,t){if(t in e)return t;for(var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=dt.length;i--;)if(t=dt[i]+n,t in e)return t;return r}function j(e,t){for(var n,r,i,o=[],a=0,s=e.length;a<s;a++)r=e[a],r.style&&(o[a]=ie._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&je(r)&&(o[a]=ie._data(r,"olddisplay",E(r.nodeName)))):(i=je(r),(n&&"none"!==n||!i)&&ie._data(r,"olddisplay",i?n:ie.css(r,"display"))));for(a=0;a<s;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}function A(e,t,n){var r=lt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function D(e,t,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;o<4;o+=2)"margin"===n&&(a+=ie.css(e,n+Se[o],!0,i)),r?("content"===n&&(a-=ie.css(e,"padding"+Se[o],!0,i)),"margin"!==n&&(a-=ie.css(e,"border"+Se[o]+"Width",!0,i))):(a+=ie.css(e,"padding"+Se[o],!0,i),"padding"!==n&&(a+=ie.css(e,"border"+Se[o]+"Width",!0,i)));return a}function L(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=nt(e),a=ne.boxSizing&&"border-box"===ie.css(e,"boxSizing",!1,o);if(i<=0||null==i){if(i=rt(e,t,o),(i<0||null==i)&&(i=e.style[t]),tt.test(i))return i;r=a&&(ne.boxSizingReliable()||i===e.style[t]),i=parseFloat(i)||0}return i+D(e,t,n||(a?"border":"content"),r,o)+"px"}function H(e,t,n,r,i){return new H.prototype.init(e,t,n,r,i)}function q(){return setTimeout(function(){pt=void 0}),pt=ie.now()}function _(e,t){var n,r={height:e},i=0;for(t=t?1:0;i<4;i+=2-t)n=Se[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function M(e,t,n){for(var r,i=(bt[t]||[]).concat(bt["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function F(e,t,n){var r,i,o,a,s,l,u,c,f=this,d={},p=e.style,h=e.nodeType&&je(e),m=ie._data(e,"fxshow");n.queue||(s=ie._queueHooks(e,"fx"),null==s.unqueued&&(s.unqueued=0,l=s.empty.fire,s.empty.fire=function(){s.unqueued||l()}),s.unqueued++,f.always(function(){f.always(function(){s.unqueued--,ie.queue(e,"fx").length||s.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],u=ie.css(e,"display"),c="none"===u?ie._data(e,"olddisplay")||E(e.nodeName):u,"inline"===c&&"none"===ie.css(e,"float")&&(ne.inlineBlockNeedsLayout&&"inline"!==E(e.nodeName)?p.zoom=1:p.display="inline-block")),n.overflow&&(p.overflow="hidden",ne.shrinkWrapBlocks()||f.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]}));for(r in t)if(i=t[r],mt.exec(i)){if(delete t[r],o=o||"toggle"===i,i===(h?"hide":"show")){if("show"!==i||!m||void 0===m[r])continue;h=!0}d[r]=m&&m[r]||ie.style(e,r)}else u=void 0;if(ie.isEmptyObject(d))"inline"===("none"===u?E(e.nodeName):u)&&(p.display=u);else{m?"hidden"in m&&(h=m.hidden):m=ie._data(e,"fxshow",{}),o&&(m.hidden=!h),h?ie(e).show():f.done(function(){ie(e).hide()}),f.done(function(){var t;ie._removeData(e,"fxshow");for(t in d)ie.style(e,t,d[t])});for(r in d)a=M(h?m[r]:0,r,f),r in m||(m[r]=a.start,h&&(a.end=a.start,a.start="width"===r||"height"===r?1:0))}}function O(e,t){var n,r,i,o,a;for(n in e)if(r=ie.camelCase(n),i=t[r],o=e[n],ie.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=ie.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function P(e,t,n){var r,i,o=0,a=vt.length,s=ie.Deferred().always(function(){delete l.elem}),l=function(){if(i)return!1;for(var t=pt||q(),n=Math.max(0,u.startTime+u.duration-t),r=n/u.duration||0,o=1-r,a=0,l=u.tweens.length;a<l;a++)u.tweens[a].run(o);return s.notifyWith(e,[u,o,n]),o<1&&l?n:(s.resolveWith(e,[u]),!1)},u=s.promise({elem:e,props:ie.extend({},t),opts:ie.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:pt||q(),duration:n.duration,tweens:[],createTween:function(t,n){var r=ie.Tween(e,u.opts,t,n,u.opts.specialEasing[t]||u.opts.easing);return u.tweens.push(r),r},stop:function(t){var n=0,r=t?u.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)u.tweens[n].run(1);return t?s.resolveWith(e,[u,t]):s.rejectWith(e,[u,t]),this}}),c=u.props;for(O(c,u.opts.specialEasing);o<a;o++)if(r=vt[o].call(u,e,c,u.opts))return r;return ie.map(c,M,u),ie.isFunction(u.opts.start)&&u.opts.start.call(e,u),ie.fx.timer(ie.extend(l,{elem:e,anim:u,queue:u.opts.queue})),u.progress(u.opts.progress).done(u.opts.done,u.opts.complete).fail(u.opts.fail).always(u.opts.always)}function B(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(be)||[];if(ie.isFunction(n))for(;r=o[i++];)"+"===r.charAt(0)?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function R(e,t,n,r){function i(s){var l;return o[s]=!0,ie.each(e[s]||[],function(e,s){var u=s(t,n,r);return"string"!=typeof u||a||o[u]?a?!(l=u):void 0:(t.dataTypes.unshift(u),i(u),!1)}),l}var o={},a=e===zt;return i(t.dataTypes[0])||!o["*"]&&i("*")}function W(e,t){var n,r,i=ie.ajaxSettings.flatOptions||{};for(r in t)void 0!==t[r]&&((i[r]?e:n||(n={}))[r]=t[r]);return n&&ie.extend(!0,e,n),e}function $(e,t,n){for(var r,i,o,a,s=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===i&&(i=e.mimeType||t.getResponseHeader("Content-Type"));if(i)for(a in s)if(s[a]&&s[a].test(i)){l.unshift(a);break}if(l[0]in n)o=l[0];else{for(a in n){if(!l[0]||e.converters[a+" "+l[0]]){o=a;break}r||(r=a)}o=o||r}if(o)return o!==l[0]&&l.unshift(o),n[o]}function z(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(a=u[l+" "+o]||u["* "+o],!a)for(i in u)if(s=i.split(" "),s[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){a===!0?a=u[i]:u[i]!==!0&&(o=s[0],c.unshift(s[1]));break}if(a!==!0)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}function I(e,t,n,r){var i;if(ie.isArray(t))ie.each(t,function(t,i){n||Ut.test(e)?r(e,i):I(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==ie.type(t))r(e,t);else for(i in t)I(e+"["+i+"]",t[i],n,r)}function X(){try{return new e.XMLHttpRequest}catch(e){}}function U(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(e){}}function V(e){return ie.isWindow(e)?e:9===e.nodeType&&(e.defaultView||e.parentWindow)}var Q=[],J=Q.slice,Y=Q.concat,G=Q.push,K=Q.indexOf,Z={},ee=Z.toString,te=Z.hasOwnProperty,ne={},re="1.11.2",ie=function(e,t){return new ie.fn.init(e,t)},oe=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ae=/^-ms-/,se=/-([\da-z])/gi,le=function(e,t){return t.toUpperCase()};ie.fn=ie.prototype={jquery:re,constructor:ie,selector:"",length:0,toArray:function(){return J.call(this)},get:function(e){return null!=e?e<0?this[e+this.length]:this[e]:J.call(this)},pushStack:function(e){var t=ie.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return ie.each(this,e,t)},map:function(e){return this.pushStack(ie.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return this.pushStack(J.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:G,sort:Q.sort,splice:Q.splice},ie.extend=ie.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,l=arguments.length,u=!1;for("boolean"==typeof a&&(u=a,a=arguments[s]||{},s++),"object"==typeof a||ie.isFunction(a)||(a={}),s===l&&(a=this,s--);s<l;s++)if(null!=(i=arguments[s]))for(r in i)e=a[r],n=i[r],a!==n&&(u&&n&&(ie.isPlainObject(n)||(t=ie.isArray(n)))?(t?(t=!1,o=e&&ie.isArray(e)?e:[]):o=e&&ie.isPlainObject(e)?e:{},a[r]=ie.extend(u,o,n)):void 0!==n&&(a[r]=n));return a},ie.extend({expando:"jQuery"+(re+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===ie.type(e)},isArray:Array.isArray||function(e){return"array"===ie.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!ie.isArray(e)&&e-parseFloat(e)+1>=0},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},isPlainObject:function(e){var t;if(!e||"object"!==ie.type(e)||e.nodeType||ie.isWindow(e))return!1;try{if(e.constructor&&!te.call(e,"constructor")&&!te.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(e){return!1}if(ne.ownLast)for(t in e)return te.call(e,t);for(t in e);return void 0===t||te.call(e,t)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?Z[ee.call(e)]||"object":typeof e},globalEval:function(t){t&&ie.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(ae,"ms-").replace(se,le)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,r){var i,o=0,a=e.length,s=n(e);if(r){if(s)for(;o<a&&(i=t.apply(e[o],r),i!==!1);o++);else for(o in e)if(i=t.apply(e[o],r),i===!1)break}else if(s)for(;o<a&&(i=t.call(e[o],o,e[o]),i!==!1);o++);else for(o in e)if(i=t.call(e[o],o,e[o]),i===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(oe,"")},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?ie.merge(r,"string"==typeof e?[e]:e):G.call(r,e)),r},inArray:function(e,t,n){var r;if(t){if(K)return K.call(t,e,n);for(r=t.length,n=n?n<0?Math.max(0,r+n):n:0;n<r;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;)e[i++]=t[r++];if(n!==n)for(;void 0!==t[r];)e[i++]=t[r++];return e.length=i,e},grep:function(e,t,n){for(var r,i=[],o=0,a=e.length,s=!n;o<a;o++)r=!t(e[o],o),r!==s&&i.push(e[o]);return i},map:function(e,t,r){var i,o=0,a=e.length,s=n(e),l=[];if(s)for(;o<a;o++)i=t(e[o],o,r),null!=i&&l.push(i);else for(o in e)i=t(e[o],o,r),null!=i&&l.push(i);return Y.apply([],l)},guid:1,proxy:function(e,t){var n,r,i;if("string"==typeof t&&(i=e[t],t=e,e=i),ie.isFunction(e))return n=J.call(arguments,2),r=function(){return e.apply(t||this,n.concat(J.call(arguments)))},r.guid=e.guid=e.guid||ie.guid++,r},now:function(){return+new Date},support:ne}),ie.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){Z["[object "+t+"]"]=t.toLowerCase()});var ue=function(e){function t(e,t,n,r){var i,o,a,s,l,u,f,p,h,m;if((t?t.ownerDocument||t:R)!==H&&L(t),t=t||H,n=n||[],s=t.nodeType,"string"!=typeof e||!e||1!==s&&9!==s&&11!==s)return n;if(!r&&_){if(11!==s&&(i=ve.exec(e)))if(a=i[1]){if(9===s){if(o=t.getElementById(a),!o||!o.parentNode)return n;if(o.id===a)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(a))&&P(t,o)&&o.id===a)return n.push(o),n}else{if(i[2])return K.apply(n,t.getElementsByTagName(e)),n;if((a=i[3])&&w.getElementsByClassName)return K.apply(n,t.getElementsByClassName(a)),n}if(w.qsa&&(!M||!M.test(e))){if(p=f=B,h=t,m=1!==s&&e,1===s&&"object"!==t.nodeName.toLowerCase()){for(u=E(e),(f=t.getAttribute("id"))?p=f.replace(xe,"\\$&"):t.setAttribute("id",p),p="[id='"+p+"'] ",l=u.length;l--;)u[l]=p+d(u[l]);h=be.test(e)&&c(t.parentNode)||t,m=u.join(",")}if(m)try{return K.apply(n,h.querySelectorAll(m)),n}catch(e){}finally{f||t.removeAttribute("id")}}}return S(e.replace(le,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>T.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[B]=!0,e}function i(e){var t=H.createElement("div");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=e.length;r--;)T.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||V)-(~e.sourceIndex||V);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function u(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function c(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function f(){}function d(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function p(e,t,n){var r=t.dir,i=n&&"parentNode"===r,o=$++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,a){var s,l,u=[W,o];if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i){if(l=t[B]||(t[B]={}),(s=l[r])&&s[0]===W&&s[1]===o)return u[2]=s[2];if(l[r]=u,u[2]=e(t,n,a))return!0}}}function h(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function m(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var o,a=[],s=0,l=e.length,u=null!=t;s<l;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),u&&t.push(s)));return a}function y(e,t,n,i,o,a){return i&&!i[B]&&(i=y(i)),o&&!o[B]&&(o=y(o,a)),r(function(r,a,s,l){var u,c,f,d=[],p=[],h=a.length,y=r||m(t||"*",s.nodeType?[s]:s,[]),v=!e||!r&&t?y:g(y,d,e,s,l),b=n?o||(r?e:h||i)?[]:a:v;if(n&&n(v,b,s,l),i)for(u=g(b,p),i(u,[],s,l),c=u.length;c--;)(f=u[c])&&(b[p[c]]=!(v[p[c]]=f));if(r){if(o||e){if(o){for(u=[],c=b.length;c--;)(f=b[c])&&u.push(v[c]=f);o(null,b=[],u,l)}for(c=b.length;c--;)(f=b[c])&&(u=o?ee(r,f):d[c])>-1&&(r[u]=!(a[u]=f))}}else b=g(b===a?b.splice(h,b.length):b),o?o(null,a,b,l):K.apply(a,b)})}function v(e){for(var t,n,r,i=e.length,o=T.relative[e[0].type],a=o||T.relative[" "],s=o?1:0,l=p(function(e){return e===t},a,!0),u=p(function(e){return ee(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==j)||((t=n).nodeType?l(e,n,r):u(e,n,r));return t=null,i}];s<i;s++)if(n=T.relative[e[s].type])c=[p(h(c),n)];else{if(n=T.filter[e[s].type].apply(null,e[s].matches),n[B]){for(r=++s;r<i&&!T.relative[e[r].type];r++);return y(s>1&&h(c),s>1&&d(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(le,"$1"),n,s<r&&v(e.slice(s,r)),r<i&&v(e=e.slice(r)),r<i&&d(e))}c.push(n)}return h(c)}function b(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,l,u){var c,f,d,p=0,h="0",m=r&&[],y=[],v=j,b=r||o&&T.find.TAG("*",u),x=W+=null==v?1:Math.random()||.1,w=b.length;for(u&&(j=a!==H&&a);h!==w&&null!=(c=b[h]);h++){if(o&&c){for(f=0;d=e[f++];)if(d(c,a,s)){l.push(c);break}u&&(W=x)}i&&((c=!d&&c)&&p--,r&&m.push(c))}if(p+=h,i&&h!==p){for(f=0;d=n[f++];)d(m,y,a,s);if(r){if(p>0)for(;h--;)m[h]||y[h]||(y[h]=Y.call(l));y=g(y)}K.apply(l,y),u&&!r&&y.length>0&&p+n.length>1&&t.uniqueSort(l)}return u&&(W=x,j=v),m};return i?r(a):a}var x,w,T,C,N,E,k,S,j,A,D,L,H,q,_,M,F,O,P,B="sizzle"+1*new Date,R=e.document,W=0,$=0,z=n(),I=n(),X=n(),U=function(e,t){return e===t&&(D=!0),0},V=1<<31,Q={}.hasOwnProperty,J=[],Y=J.pop,G=J.push,K=J.push,Z=J.slice,ee=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ne="[\\x20\\t\\r\\n\\f]",re="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",ie=re.replace("w","w#"),oe="\\["+ne+"*("+re+")(?:"+ne+"*([*^$|!~]?=)"+ne+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+ie+"))|)"+ne+"*\\]",ae=":("+re+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+oe+")*)|.*)\\)|)",se=new RegExp(ne+"+","g"),le=new RegExp("^"+ne+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ne+"+$","g"),ue=new RegExp("^"+ne+"*,"+ne+"*"),ce=new RegExp("^"+ne+"*([>+~]|"+ne+")"+ne+"*"),fe=new RegExp("="+ne+"*([^\\]'\"]*?)"+ne+"*\\]","g"),de=new RegExp(ae),pe=new RegExp("^"+ie+"$"),he={ID:new RegExp("^#("+re+")"),CLASS:new RegExp("^\\.("+re+")"),TAG:new RegExp("^("+re.replace("w","w*")+")"),ATTR:new RegExp("^"+oe),PSEUDO:new RegExp("^"+ae),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ne+"*(even|odd|(([+-]|)(\\d*)n|)"+ne+"*(?:([+-]|)"+ne+"*(\\d+)|))"+ne+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ne+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ne+"*((?:-\\d)?\\d*)"+ne+"*\\)|)(?=[^-]|$)","i")},me=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,ye=/^[^{]+\{\s*\[native \w/,ve=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,be=/[+~]/,xe=/'|\\/g,we=new RegExp("\\\\([\\da-f]{1,6}"+ne+"?|("+ne+")|.)","ig"),Te=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},Ce=function(){L()};try{K.apply(J=Z.call(R.childNodes),R.childNodes),J[R.childNodes.length].nodeType}catch(e){K={apply:J.length?function(e,t){G.apply(e,Z.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}w=t.support={},N=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},L=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:R;return r!==H&&9===r.nodeType&&r.documentElement?(H=r,q=r.documentElement,n=r.defaultView,n&&n!==n.top&&(n.addEventListener?n.addEventListener("unload",Ce,!1):n.attachEvent&&n.attachEvent("onunload",Ce)),_=!N(r),w.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),w.getElementsByTagName=i(function(e){return e.appendChild(r.createComment("")),!e.getElementsByTagName("*").length}),w.getElementsByClassName=ye.test(r.getElementsByClassName),w.getById=i(function(e){return q.appendChild(e).id=B,!r.getElementsByName||!r.getElementsByName(B).length}),w.getById?(T.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&_){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},T.filter.ID=function(e){var t=e.replace(we,Te);return function(e){return e.getAttribute("id")===t}}):(delete T.find.ID,T.filter.ID=function(e){var t=e.replace(we,Te);return function(e){var n="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}}),T.find.TAG=w.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):w.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},T.find.CLASS=w.getElementsByClassName&&function(e,t){if(_)return t.getElementsByClassName(e)},F=[],M=[],(w.qsa=ye.test(r.querySelectorAll))&&(i(function(e){q.appendChild(e).innerHTML="<a id='"+B+"'></a><select id='"+B+"-\f]' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&M.push("[*^$]="+ne+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||M.push("\\["+ne+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+B+"-]").length||M.push("~="),e.querySelectorAll(":checked").length||M.push(":checked"),e.querySelectorAll("a#"+B+"+*").length||M.push(".#.+[+~]")}),i(function(e){var t=r.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&M.push("name"+ne+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||M.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),M.push(",.*:")})),(w.matchesSelector=ye.test(O=q.matches||q.webkitMatchesSelector||q.mozMatchesSelector||q.oMatchesSelector||q.msMatchesSelector))&&i(function(e){w.disconnectedMatch=O.call(e,"div"),O.call(e,"[s!='']:x"),F.push("!=",ae)}),M=M.length&&new RegExp(M.join("|")),F=F.length&&new RegExp(F.join("|")),t=ye.test(q.compareDocumentPosition),P=t||ye.test(q.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},U=t?function(e,t){if(e===t)return D=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n?n:(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!w.sortDetached&&t.compareDocumentPosition(e)===n?e===r||e.ownerDocument===R&&P(R,e)?-1:t===r||t.ownerDocument===R&&P(R,t)?1:A?ee(A,e)-ee(A,t):0:4&n?-1:1)}:function(e,t){if(e===t)return D=!0,0;var n,i=0,o=e.parentNode,s=t.parentNode,l=[e],u=[t];if(!o||!s)return e===r?-1:t===r?1:o?-1:s?1:A?ee(A,e)-ee(A,t):0;if(o===s)return a(e,t);for(n=e;n=n.parentNode;)l.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;l[i]===u[i];)i++;return i?a(l[i],u[i]):l[i]===R?-1:u[i]===R?1:0},r):H},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==H&&L(e),n=n.replace(fe,"='$1']"),w.matchesSelector&&_&&(!F||!F.test(n))&&(!M||!M.test(n)))try{var r=O.call(e,n);if(r||w.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,H,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==H&&L(e),P(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==H&&L(e);var n=T.attrHandle[t.toLowerCase()],r=n&&Q.call(T.attrHandle,t.toLowerCase())?n(e,t,!_):void 0;return void 0!==r?r:w.attributes||!_?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(D=!w.detectDuplicates,A=!w.sortStable&&e.slice(0),e.sort(U),D){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return A=null,e},C=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=C(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=C(t);return n},T=t.selectors={cacheLength:50,createPseudo:r,match:he,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(we,Te),e[3]=(e[3]||e[4]||e[5]||"").replace(we,Te),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return he.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&de.test(n)&&(t=E(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(we,Te).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=z[e+" "];return t||(t=new RegExp("(^|"+ne+")"+e+"("+ne+"|$)"))&&z(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(se," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,f,d,p,h,m=o!==a?"nextSibling":"previousSibling",g=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!l&&!s;if(g){if(o){for(;m;){for(f=t;f=f[m];)if(s?f.nodeName.toLowerCase()===y:1===f.nodeType)return!1;h=m="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?g.firstChild:g.lastChild],a&&v){for(c=g[B]||(g[B]={}),u=c[e]||[],p=u[0]===W&&u[1],d=u[0]===W&&u[2],f=p&&g.childNodes[p];f=++p&&f&&f[m]||(d=p=0)||h.pop();)if(1===f.nodeType&&++d&&f===t){c[e]=[W,p,d];break}}else if(v&&(u=(t[B]||(t[B]={}))[e])&&u[0]===W)d=u[1];else for(;(f=++p&&f&&f[m]||(d=p=0)||h.pop())&&((s?f.nodeName.toLowerCase()!==y:1!==f.nodeType)||!++d||(v&&((f[B]||(f[B]={}))[e]=[W,d]),f!==t)););return d-=i,d===r||d%r===0&&d/r>=0}}},PSEUDO:function(e,n){var i,o=T.pseudos[e]||T.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[B]?o(n):o.length>1?(i=[e,e,"",n],T.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=ee(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=k(e.replace(le,"$1"));return i[B]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(we,Te),function(t){return(t.textContent||t.innerText||C(t)).indexOf(e)>-1}}),lang:r(function(e){return pe.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(we,Te).toLowerCase(),function(t){var n;do if(n=_?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===q},focus:function(e){return e===H.activeElement&&(!H.hasFocus||H.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!T.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return me.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:u(function(){return[0]}),last:u(function(e,t){return[t-1]}),eq:u(function(e,t,n){return[n<0?n+t:n]}),even:u(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:u(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:u(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:u(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},T.pseudos.nth=T.pseudos.eq;for(x in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})T.pseudos[x]=s(x);for(x in{submit:!0,reset:!0})T.pseudos[x]=l(x);return f.prototype=T.filters=T.pseudos,
T.setFilters=new f,E=t.tokenize=function(e,n){var r,i,o,a,s,l,u,c=I[e+" "];if(c)return n?0:c.slice(0);for(s=e,l=[],u=T.preFilter;s;){r&&!(i=ue.exec(s))||(i&&(s=s.slice(i[0].length)||s),l.push(o=[])),r=!1,(i=ce.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(le," ")}),s=s.slice(r.length));for(a in T.filter)!(i=he[a].exec(s))||u[a]&&!(i=u[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):I(e,l).slice(0)},k=t.compile=function(e,t){var n,r=[],i=[],o=X[e+" "];if(!o){for(t||(t=E(e)),n=t.length;n--;)o=v(t[n]),o[B]?r.push(o):i.push(o);o=X(e,b(i,r)),o.selector=e}return o},S=t.select=function(e,t,n,r){var i,o,a,s,l,u="function"==typeof e&&e,f=!r&&E(e=u.selector||e);if(n=n||[],1===f.length){if(o=f[0]=f[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&w.getById&&9===t.nodeType&&_&&T.relative[o[1].type]){if(t=(T.find.ID(a.matches[0].replace(we,Te),t)||[])[0],!t)return n;u&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=he.needsContext.test(e)?0:o.length;i--&&(a=o[i],!T.relative[s=a.type]);)if((l=T.find[s])&&(r=l(a.matches[0].replace(we,Te),be.test(o[0].type)&&c(t.parentNode)||t))){if(o.splice(i,1),e=r.length&&d(o),!e)return K.apply(n,r),n;break}}return(u||k(e,f))(r,t,!_,n,be.test(e)&&c(t.parentNode)||t),n},w.sortStable=B.split("").sort(U).join("")===B,w.detectDuplicates=!!D,L(),w.sortDetached=i(function(e){return 1&e.compareDocumentPosition(H.createElement("div"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),w.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(te,function(e,t,n){var r;if(!n)return e[t]===!0?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(e);ie.find=ue,ie.expr=ue.selectors,ie.expr[":"]=ie.expr.pseudos,ie.unique=ue.uniqueSort,ie.text=ue.getText,ie.isXMLDoc=ue.isXML,ie.contains=ue.contains;var ce=ie.expr.match.needsContext,fe=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,de=/^.[^:#\[\.,]*$/;ie.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?ie.find.matchesSelector(r,e)?[r]:[]:ie.find.matches(e,ie.grep(t,function(e){return 1===e.nodeType}))},ie.fn.extend({find:function(e){var t,n=[],r=this,i=r.length;if("string"!=typeof e)return this.pushStack(ie(e).filter(function(){for(t=0;t<i;t++)if(ie.contains(r[t],this))return!0}));for(t=0;t<i;t++)ie.find(e,r[t],n);return n=this.pushStack(i>1?ie.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},filter:function(e){return this.pushStack(r(this,e||[],!1))},not:function(e){return this.pushStack(r(this,e||[],!0))},is:function(e){return!!r(this,"string"==typeof e&&ce.test(e)?ie(e):e||[],!1).length}});var pe,he=e.document,me=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ge=ie.fn.init=function(e,t){var n,r;if(!e)return this;if("string"==typeof e){if(n="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:me.exec(e),!n||!n[1]&&t)return!t||t.jquery?(t||pe).find(e):this.constructor(t).find(e);if(n[1]){if(t=t instanceof ie?t[0]:t,ie.merge(this,ie.parseHTML(n[1],t&&t.nodeType?t.ownerDocument||t:he,!0)),fe.test(n[1])&&ie.isPlainObject(t))for(n in t)ie.isFunction(this[n])?this[n](t[n]):this.attr(n,t[n]);return this}if(r=he.getElementById(n[2]),r&&r.parentNode){if(r.id!==n[2])return pe.find(e);this.length=1,this[0]=r}return this.context=he,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):ie.isFunction(e)?"undefined"!=typeof pe.ready?pe.ready(e):e(ie):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),ie.makeArray(e,this))};ge.prototype=ie.fn,pe=ie(he);var ye=/^(?:parents|prev(?:Until|All))/,ve={children:!0,contents:!0,next:!0,prev:!0};ie.extend({dir:function(e,t,n){for(var r=[],i=e[t];i&&9!==i.nodeType&&(void 0===n||1!==i.nodeType||!ie(i).is(n));)1===i.nodeType&&r.push(i),i=i[t];return r},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}}),ie.fn.extend({has:function(e){var t,n=ie(e,this),r=n.length;return this.filter(function(){for(t=0;t<r;t++)if(ie.contains(this,n[t]))return!0})},closest:function(e,t){for(var n,r=0,i=this.length,o=[],a=ce.test(e)||"string"!=typeof e?ie(e,t||this.context):0;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&ie.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?ie.unique(o):o)},index:function(e){return e?"string"==typeof e?ie.inArray(this[0],ie(e)):ie.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(ie.unique(ie.merge(this.get(),ie(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),ie.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return ie.dir(e,"parentNode")},parentsUntil:function(e,t,n){return ie.dir(e,"parentNode",n)},next:function(e){return i(e,"nextSibling")},prev:function(e){return i(e,"previousSibling")},nextAll:function(e){return ie.dir(e,"nextSibling")},prevAll:function(e){return ie.dir(e,"previousSibling")},nextUntil:function(e,t,n){return ie.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return ie.dir(e,"previousSibling",n)},siblings:function(e){return ie.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return ie.sibling(e.firstChild)},contents:function(e){return ie.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:ie.merge([],e.childNodes)}},function(e,t){ie.fn[e]=function(n,r){var i=ie.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=ie.filter(r,i)),this.length>1&&(ve[e]||(i=ie.unique(i)),ye.test(e)&&(i=i.reverse())),this.pushStack(i)}});var be=/\S+/g,xe={};ie.Callbacks=function(e){e="string"==typeof e?xe[e]||o(e):ie.extend({},e);var t,n,r,i,a,s,l=[],u=!e.once&&[],c=function(o){for(n=e.memory&&o,r=!0,a=s||0,s=0,i=l.length,t=!0;l&&a<i;a++)if(l[a].apply(o[0],o[1])===!1&&e.stopOnFalse){n=!1;break}t=!1,l&&(u?u.length&&c(u.shift()):n?l=[]:f.disable())},f={add:function(){if(l){var r=l.length;!function t(n){ie.each(n,function(n,r){var i=ie.type(r);"function"===i?e.unique&&f.has(r)||l.push(r):r&&r.length&&"string"!==i&&t(r)})}(arguments),t?i=l.length:n&&(s=r,c(n))}return this},remove:function(){return l&&ie.each(arguments,function(e,n){for(var r;(r=ie.inArray(n,l,r))>-1;)l.splice(r,1),t&&(r<=i&&i--,r<=a&&a--)}),this},has:function(e){return e?ie.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],i=0,this},disable:function(){return l=u=n=void 0,this},disabled:function(){return!l},lock:function(){return u=void 0,n||f.disable(),this},locked:function(){return!u},fireWith:function(e,n){return!l||r&&!u||(n=n||[],n=[e,n.slice?n.slice():n],t?u.push(n):c(n)),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!r}};return f},ie.extend({Deferred:function(e){var t=[["resolve","done",ie.Callbacks("once memory"),"resolved"],["reject","fail",ie.Callbacks("once memory"),"rejected"],["notify","progress",ie.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return ie.Deferred(function(n){ie.each(t,function(t,o){var a=ie.isFunction(e[t])&&e[t];i[o[1]](function(){var e=a&&a.apply(this,arguments);e&&ie.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[o[0]+"With"](this===r?n.promise():this,a?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?ie.extend(e,r):r}},i={};return r.pipe=r.then,ie.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=J.call(arguments),r=n.length,i=1!==r||e&&ie.isFunction(e.promise)?r:0,o=1===i?e:ie.Deferred(),a=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?J.call(arguments):r,n===s?o.notifyWith(t,n):--i||o.resolveWith(t,n)}},s,l,u;if(r>1)for(s=new Array(r),l=new Array(r),u=new Array(r);t<r;t++)n[t]&&ie.isFunction(n[t].promise)?n[t].promise().done(a(t,u,n)).fail(o.reject).progress(a(t,l,s)):--i;return i||o.resolveWith(u,n),o.promise()}});var we;ie.fn.ready=function(e){return ie.ready.promise().done(e),this},ie.extend({isReady:!1,readyWait:1,holdReady:function(e){e?ie.readyWait++:ie.ready(!0)},ready:function(e){if(e===!0?!--ie.readyWait:!ie.isReady){if(!he.body)return setTimeout(ie.ready);ie.isReady=!0,e!==!0&&--ie.readyWait>0||(we.resolveWith(he,[ie]),ie.fn.triggerHandler&&(ie(he).triggerHandler("ready"),ie(he).off("ready")))}}}),ie.ready.promise=function(t){if(!we)if(we=ie.Deferred(),"complete"===he.readyState)setTimeout(ie.ready);else if(he.addEventListener)he.addEventListener("DOMContentLoaded",s,!1),e.addEventListener("load",s,!1);else{he.attachEvent("onreadystatechange",s),e.attachEvent("onload",s);var n=!1;try{n=null==e.frameElement&&he.documentElement}catch(e){}n&&n.doScroll&&!function e(){if(!ie.isReady){try{n.doScroll("left")}catch(t){return setTimeout(e,50)}a(),ie.ready()}}()}return we.promise(t)};var Te="undefined",Ce;for(Ce in ie(ne))break;ne.ownLast="0"!==Ce,ne.inlineBlockNeedsLayout=!1,ie(function(){var e,t,n,r;n=he.getElementsByTagName("body")[0],n&&n.style&&(t=he.createElement("div"),r=he.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),typeof t.style.zoom!==Te&&(t.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",ne.inlineBlockNeedsLayout=e=3===t.offsetWidth,e&&(n.style.zoom=1)),n.removeChild(r))}),function(){var e=he.createElement("div");if(null==ne.deleteExpando){ne.deleteExpando=!0;try{delete e.test}catch(e){ne.deleteExpando=!1}}e=null}(),ie.acceptData=function(e){var t=ie.noData[(e.nodeName+" ").toLowerCase()],n=+e.nodeType||1;return(1===n||9===n)&&(!t||t!==!0&&e.getAttribute("classid")===t)};var Ne=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Ee=/([A-Z])/g;ie.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?ie.cache[e[ie.expando]]:e[ie.expando],!!e&&!u(e)},data:function(e,t,n){return c(e,t,n)},removeData:function(e,t){return f(e,t)},_data:function(e,t,n){return c(e,t,n,!0)},_removeData:function(e,t){return f(e,t,!0)}}),ie.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=ie.data(o),1===o.nodeType&&!ie._data(o,"parsedAttrs"))){for(n=a.length;n--;)a[n]&&(r=a[n].name,0===r.indexOf("data-")&&(r=ie.camelCase(r.slice(5)),l(o,r,i[r])));ie._data(o,"parsedAttrs",!0)}return i}return"object"==typeof e?this.each(function(){ie.data(this,e)}):arguments.length>1?this.each(function(){ie.data(this,e,t)}):o?l(o,e,ie.data(o,e)):void 0},removeData:function(e){return this.each(function(){ie.removeData(this,e)})}}),ie.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=ie._data(e,t),n&&(!r||ie.isArray(n)?r=ie._data(e,t,ie.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=ie.queue(e,t),r=n.length,i=n.shift(),o=ie._queueHooks(e,t),a=function(){ie.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return ie._data(e,n)||ie._data(e,n,{empty:ie.Callbacks("once memory").add(function(){ie._removeData(e,t+"queue"),ie._removeData(e,n)})})}}),ie.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?ie.queue(this[0],e):void 0===t?this:this.each(function(){var n=ie.queue(this,e,t);ie._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&ie.dequeue(this,e)})},dequeue:function(e){return this.each(function(){ie.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=ie.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)n=ie._data(o[a],e+"queueHooks"),n&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ke=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Se=["Top","Right","Bottom","Left"],je=function(e,t){return e=t||e,"none"===ie.css(e,"display")||!ie.contains(e.ownerDocument,e)},Ae=ie.access=function(e,t,n,r,i,o,a){var s=0,l=e.length,u=null==n;if("object"===ie.type(n)){i=!0;for(s in n)ie.access(e,t,s,n[s],!0,o,a)}else if(void 0!==r&&(i=!0,ie.isFunction(r)||(a=!0),u&&(a?(t.call(e,r),t=null):(u=t,t=function(e,t,n){return u.call(ie(e),n)})),t))for(;s<l;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:u?t.call(e):l?t(e[0],n):o},De=/^(?:checkbox|radio)$/i;!function(){var e=he.createElement("input"),t=he.createElement("div"),n=he.createDocumentFragment();if(t.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",ne.leadingWhitespace=3===t.firstChild.nodeType,ne.tbody=!t.getElementsByTagName("tbody").length,ne.htmlSerialize=!!t.getElementsByTagName("link").length,ne.html5Clone="<:nav></:nav>"!==he.createElement("nav").cloneNode(!0).outerHTML,e.type="checkbox",e.checked=!0,n.appendChild(e),ne.appendChecked=e.checked,t.innerHTML="<textarea>x</textarea>",ne.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue,n.appendChild(t),t.innerHTML="<input type='radio' checked='checked' name='t'/>",ne.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,ne.noCloneEvent=!0,t.attachEvent&&(t.attachEvent("onclick",function(){ne.noCloneEvent=!1}),t.cloneNode(!0).click()),null==ne.deleteExpando){ne.deleteExpando=!0;try{delete t.test}catch(e){ne.deleteExpando=!1}}}(),function(){var t,n,r=he.createElement("div");for(t in{submit:!0,change:!0,focusin:!0})n="on"+t,(ne[t+"Bubbles"]=n in e)||(r.setAttribute(n,"t"),ne[t+"Bubbles"]=r.attributes[n].expando===!1);r=null}();var Le=/^(?:input|select|textarea)$/i,He=/^key/,qe=/^(?:mouse|pointer|contextmenu)|click/,_e=/^(?:focusinfocus|focusoutblur)$/,Me=/^([^.]*)(?:\.(.+)|)$/;ie.event={global:{},add:function(e,t,n,r,i){var o,a,s,l,u,c,f,d,p,h,m,g=ie._data(e);if(g){for(n.handler&&(l=n,n=l.handler,i=l.selector),n.guid||(n.guid=ie.guid++),(a=g.events)||(a=g.events={}),(c=g.handle)||(c=g.handle=function(e){return typeof ie===Te||e&&ie.event.triggered===e.type?void 0:ie.event.dispatch.apply(c.elem,arguments)},c.elem=e),t=(t||"").match(be)||[""],s=t.length;s--;)o=Me.exec(t[s])||[],p=m=o[1],h=(o[2]||"").split(".").sort(),p&&(u=ie.event.special[p]||{},p=(i?u.delegateType:u.bindType)||p,u=ie.event.special[p]||{},f=ie.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&ie.expr.match.needsContext.test(i),namespace:h.join(".")},l),(d=a[p])||(d=a[p]=[],d.delegateCount=0,u.setup&&u.setup.call(e,r,h,c)!==!1||(e.addEventListener?e.addEventListener(p,c,!1):e.attachEvent&&e.attachEvent("on"+p,c))),u.add&&(u.add.call(e,f),f.handler.guid||(f.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,f):d.push(f),ie.event.global[p]=!0);e=null}},remove:function(e,t,n,r,i){var o,a,s,l,u,c,f,d,p,h,m,g=ie.hasData(e)&&ie._data(e);if(g&&(c=g.events)){for(t=(t||"").match(be)||[""],u=t.length;u--;)if(s=Me.exec(t[u])||[],p=m=s[1],h=(s[2]||"").split(".").sort(),p){for(f=ie.event.special[p]||{},p=(r?f.delegateType:f.bindType)||p,d=c[p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),l=o=d.length;o--;)a=d[o],!i&&m!==a.origType||n&&n.guid!==a.guid||s&&!s.test(a.namespace)||r&&r!==a.selector&&("**"!==r||!a.selector)||(d.splice(o,1),a.selector&&d.delegateCount--,f.remove&&f.remove.call(e,a));l&&!d.length&&(f.teardown&&f.teardown.call(e,h,g.handle)!==!1||ie.removeEvent(e,p,g.handle),delete c[p])}else for(p in c)ie.event.remove(e,p+t[u],n,r,!0);ie.isEmptyObject(c)&&(delete g.handle,ie._removeData(e,"events"))}},trigger:function(t,n,r,i){var o,a,s,l,u,c,f,d=[r||he],p=te.call(t,"type")?t.type:t,h=te.call(t,"namespace")?t.namespace.split("."):[];if(s=c=r=r||he,3!==r.nodeType&&8!==r.nodeType&&!_e.test(p+ie.event.triggered)&&(p.indexOf(".")>=0&&(h=p.split("."),p=h.shift(),h.sort()),a=p.indexOf(":")<0&&"on"+p,t=t[ie.expando]?t:new ie.Event(p,"object"==typeof t&&t),t.isTrigger=i?2:3,t.namespace=h.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:ie.makeArray(n,[t]),u=ie.event.special[p]||{},i||!u.trigger||u.trigger.apply(r,n)!==!1)){if(!i&&!u.noBubble&&!ie.isWindow(r)){for(l=u.delegateType||p,_e.test(l+p)||(s=s.parentNode);s;s=s.parentNode)d.push(s),c=s;c===(r.ownerDocument||he)&&d.push(c.defaultView||c.parentWindow||e)}for(f=0;(s=d[f++])&&!t.isPropagationStopped();)t.type=f>1?l:u.bindType||p,o=(ie._data(s,"events")||{})[t.type]&&ie._data(s,"handle"),o&&o.apply(s,n),o=a&&s[a],o&&o.apply&&ie.acceptData(s)&&(t.result=o.apply(s,n),t.result===!1&&t.preventDefault());if(t.type=p,!i&&!t.isDefaultPrevented()&&(!u._default||u._default.apply(d.pop(),n)===!1)&&ie.acceptData(r)&&a&&r[p]&&!ie.isWindow(r)){c=r[a],c&&(r[a]=null),ie.event.triggered=p;try{r[p]()}catch(e){}ie.event.triggered=void 0,c&&(r[a]=c)}return t.result}},dispatch:function(e){e=ie.event.fix(e);var t,n,r,i,o,a=[],s=J.call(arguments),l=(ie._data(this,"events")||{})[e.type]||[],u=ie.event.special[e.type]||{};if(s[0]=e,e.delegateTarget=this,!u.preDispatch||u.preDispatch.call(this,e)!==!1){for(a=ie.event.handlers.call(this,e,l),t=0;(i=a[t++])&&!e.isPropagationStopped();)for(e.currentTarget=i.elem,o=0;(r=i.handlers[o++])&&!e.isImmediatePropagationStopped();)e.namespace_re&&!e.namespace_re.test(r.namespace)||(e.handleObj=r,e.data=r.data,n=((ie.event.special[r.origType]||{}).handle||r.handler).apply(i.elem,s),void 0!==n&&(e.result=n)===!1&&(e.preventDefault(),e.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,e),e.result}},handlers:function(e,t){var n,r,i,o,a=[],s=t.delegateCount,l=e.target;if(s&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!=this;l=l.parentNode||this)if(1===l.nodeType&&(l.disabled!==!0||"click"!==e.type)){for(i=[],o=0;o<s;o++)r=t[o],n=r.selector+" ",void 0===i[n]&&(i[n]=r.needsContext?ie(n,this).index(l)>=0:ie.find(n,this,null,[l]).length),i[n]&&i.push(r);i.length&&a.push({elem:l,handlers:i})}return s<t.length&&a.push({elem:this,handlers:t.slice(s)}),a},fix:function(e){if(e[ie.expando])return e;var t,n,r,i=e.type,o=e,a=this.fixHooks[i];for(a||(this.fixHooks[i]=a=qe.test(i)?this.mouseHooks:He.test(i)?this.keyHooks:{}),r=a.props?this.props.concat(a.props):this.props,e=new ie.Event(o),t=r.length;t--;)n=r[t],e[n]=o[n];return e.target||(e.target=o.srcElement||he),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,a.filter?a.filter(e,o):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var n,r,i,o=t.button,a=t.fromElement;return null==e.pageX&&null!=t.clientX&&(r=e.target.ownerDocument||he,i=r.documentElement,n=r.body,e.pageX=t.clientX+(i&&i.scrollLeft||n&&n.scrollLeft||0)-(i&&i.clientLeft||n&&n.clientLeft||0),e.pageY=t.clientY+(i&&i.scrollTop||n&&n.scrollTop||0)-(i&&i.clientTop||n&&n.clientTop||0)),!e.relatedTarget&&a&&(e.relatedTarget=a===e.target?t.toElement:a),e.which||void 0===o||(e.which=1&o?1:2&o?3:4&o?2:0),e}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==h()&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){if(this===h()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if(ie.nodeName(this,"input")&&"checkbox"===this.type&&this.click)return this.click(),!1},_default:function(e){return ie.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=ie.extend(new ie.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?ie.event.trigger(i,null,t):ie.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},ie.removeEvent=he.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,t,n){var r="on"+t;e.detachEvent&&(typeof e[r]===Te&&(e[r]=null),e.detachEvent(r,n))},ie.Event=function(e,t){return this instanceof ie.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&e.returnValue===!1?d:p):this.type=e,t&&ie.extend(this,t),this.timeStamp=e&&e.timeStamp||ie.now(),void(this[ie.expando]=!0)):new ie.Event(e,t)},ie.Event.prototype={isDefaultPrevented:p,isPropagationStopped:p,isImmediatePropagationStopped:p,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=d,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=d,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=d,e&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),this.stopPropagation()}},ie.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){ie.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||ie.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),ne.submitBubbles||(ie.event.special.submit={setup:function(){return!ie.nodeName(this,"form")&&void ie.event.add(this,"click._submit keypress._submit",function(e){var t=e.target,n=ie.nodeName(t,"input")||ie.nodeName(t,"button")?t.form:void 0;n&&!ie._data(n,"submitBubbles")&&(ie.event.add(n,"submit._submit",function(e){e._submit_bubble=!0}),ie._data(n,"submitBubbles",!0))})},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&ie.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return!ie.nodeName(this,"form")&&void ie.event.remove(this,"._submit")}}),ne.changeBubbles||(ie.event.special.change={setup:function(){return Le.test(this.nodeName)?("checkbox"!==this.type&&"radio"!==this.type||(ie.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),ie.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),ie.event.simulate("change",this,e,!0)})),!1):void ie.event.add(this,"beforeactivate._change",function(e){var t=e.target;Le.test(t.nodeName)&&!ie._data(t,"changeBubbles")&&(ie.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||ie.event.simulate("change",this.parentNode,e,!0)}),ie._data(t,"changeBubbles",!0))})},handle:function(e){var t=e.target;if(this!==t||e.isSimulated||e.isTrigger||"radio"!==t.type&&"checkbox"!==t.type)return e.handleObj.handler.apply(this,arguments)},teardown:function(){return ie.event.remove(this,"._change"),!Le.test(this.nodeName)}}),ne.focusinBubbles||ie.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){ie.event.simulate(t,e.target,ie.event.fix(e),!0)};ie.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=ie._data(r,t);i||r.addEventListener(e,n,!0),ie._data(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=ie._data(r,t)-1;i?ie._data(r,t,i):(r.removeEventListener(e,n,!0),ie._removeData(r,t))}}}),ie.fn.extend({on:function(e,t,n,r,i){var o,a;if("object"==typeof e){"string"!=typeof t&&(n=n||t,t=void 0);for(o in e)this.on(o,t,n,e[o],i);return this}if(null==n&&null==r?(r=t,n=t=void 0):null==r&&("string"==typeof t?(r=n,n=void 0):(r=n,n=t,t=void 0)),r===!1)r=p;else if(!r)return this;return 1===i&&(a=r,r=function(e){return ie().off(e),a.apply(this,arguments)},r.guid=a.guid||(a.guid=ie.guid++)),this.each(function(){ie.event.add(this,e,r,n,t)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,ie(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return t!==!1&&"function"!=typeof t||(n=t,t=void 0),n===!1&&(n=p),this.each(function(){ie.event.remove(this,e,n,t)})},trigger:function(e,t){return this.each(function(){ie.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return ie.event.trigger(e,t,n,!0)}});var Fe="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",Oe=/ jQuery\d+="(?:null|\d+)"/g,Pe=new RegExp("<(?:"+Fe+")[\\s/>]","i"),Be=/^\s+/,Re=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,We=/<([\w:]+)/,$e=/<tbody/i,ze=/<|&#?\w+;/,Ie=/<(?:script|style|link)/i,Xe=/checked\s*(?:[^=]|=\s*.checked.)/i,Ue=/^$|\/(?:java|ecma)script/i,Ve=/^true\/(.*)/,Qe=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,Je={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:ne.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},Ye=m(he),Ge=Ye.appendChild(he.createElement("div"));Je.optgroup=Je.option,Je.tbody=Je.tfoot=Je.colgroup=Je.caption=Je.thead,Je.th=Je.td,ie.extend({clone:function(e,t,n){var r,i,o,a,s,l=ie.contains(e.ownerDocument,e);if(ne.html5Clone||ie.isXMLDoc(e)||!Pe.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(Ge.innerHTML=e.outerHTML,Ge.removeChild(o=Ge.firstChild)),!(ne.noCloneEvent&&ne.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||ie.isXMLDoc(e)))for(r=g(o),s=g(e),a=0;null!=(i=s[a]);++a)r[a]&&C(i,r[a]);if(t)if(n)for(s=s||g(e),r=r||g(o),a=0;null!=(i=s[a]);a++)T(i,r[a]);else T(e,o);return r=g(o,"script"),r.length>0&&w(r,!l&&g(e,"script")),r=s=i=null,o},buildFragment:function(e,t,n,r){for(var i,o,a,s,l,u,c,f=e.length,d=m(t),p=[],h=0;h<f;h++)if(o=e[h],o||0===o)if("object"===ie.type(o))ie.merge(p,o.nodeType?[o]:o);else if(ze.test(o)){for(s=s||d.appendChild(t.createElement("div")),l=(We.exec(o)||["",""])[1].toLowerCase(),c=Je[l]||Je._default,s.innerHTML=c[1]+o.replace(Re,"<$1></$2>")+c[2],i=c[0];i--;)s=s.lastChild;if(!ne.leadingWhitespace&&Be.test(o)&&p.push(t.createTextNode(Be.exec(o)[0])),!ne.tbody)for(o="table"!==l||$e.test(o)?"<table>"!==c[1]||$e.test(o)?0:s:s.firstChild,i=o&&o.childNodes.length;i--;)ie.nodeName(u=o.childNodes[i],"tbody")&&!u.childNodes.length&&o.removeChild(u);for(ie.merge(p,s.childNodes),s.textContent="";s.firstChild;)s.removeChild(s.firstChild);s=d.lastChild}else p.push(t.createTextNode(o));for(s&&d.removeChild(s),ne.appendChecked||ie.grep(g(p,"input"),y),h=0;o=p[h++];)if((!r||ie.inArray(o,r)===-1)&&(a=ie.contains(o.ownerDocument,o),s=g(d.appendChild(o),"script"),a&&w(s),n))for(i=0;o=s[i++];)Ue.test(o.type||"")&&n.push(o);return s=null,d},cleanData:function(e,t){for(var n,r,i,o,a=0,s=ie.expando,l=ie.cache,u=ne.deleteExpando,c=ie.event.special;null!=(n=e[a]);a++)if((t||ie.acceptData(n))&&(i=n[s],o=i&&l[i])){if(o.events)for(r in o.events)c[r]?ie.event.remove(n,r):ie.removeEvent(n,r,o.handle);l[i]&&(delete l[i],u?delete n[s]:typeof n.removeAttribute!==Te?n.removeAttribute(s):n[s]=null,Q.push(i))}}}),ie.fn.extend({text:function(e){return Ae(this,function(e){return void 0===e?ie.text(this):this.empty().append((this[0]&&this[0].ownerDocument||he).createTextNode(e))},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=v(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=v(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var n,r=e?ie.filter(e,this):this,i=0;null!=(n=r[i]);i++)t||1!==n.nodeType||ie.cleanData(g(n)),n.parentNode&&(t&&ie.contains(n.ownerDocument,n)&&w(g(n,"script")),n.parentNode.removeChild(n));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&ie.cleanData(g(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&ie.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return ie.clone(this,e,t)})},html:function(e){return Ae(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e)return 1===t.nodeType?t.innerHTML.replace(Oe,""):void 0;if("string"==typeof e&&!Ie.test(e)&&(ne.htmlSerialize||!Pe.test(e))&&(ne.leadingWhitespace||!Be.test(e))&&!Je[(We.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(Re,"<$1></$2>");try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(ie.cleanData(g(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,function(t){e=this.parentNode,ie.cleanData(g(this)),e&&e.replaceChild(t,this)}),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t){e=Y.apply([],e);var n,r,i,o,a,s,l=0,u=this.length,c=this,f=u-1,d=e[0],p=ie.isFunction(d);if(p||u>1&&"string"==typeof d&&!ne.checkClone&&Xe.test(d))return this.each(function(n){var r=c.eq(n);p&&(e[0]=d.call(this,n,r.html())),r.domManip(e,t)});if(u&&(s=ie.buildFragment(e,this[0].ownerDocument,!1,this),n=s.firstChild,1===s.childNodes.length&&(s=n),n)){for(o=ie.map(g(s,"script"),b),i=o.length;l<u;l++)r=s,l!==f&&(r=ie.clone(r,!0,!0),i&&ie.merge(o,g(r,"script"))),t.call(this[l],r,l);if(i)for(a=o[o.length-1].ownerDocument,ie.map(o,x),l=0;l<i;l++)r=o[l],Ue.test(r.type||"")&&!ie._data(r,"globalEval")&&ie.contains(a,r)&&(r.src?ie._evalUrl&&ie._evalUrl(r.src):ie.globalEval((r.text||r.textContent||r.innerHTML||"").replace(Qe,"")));s=n=null}return this}}),ie.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){ie.fn[e]=function(e){for(var n,r=0,i=[],o=ie(e),a=o.length-1;r<=a;r++)n=r===a?this:this.clone(!0),ie(o[r])[t](n),G.apply(i,n.get());return this.pushStack(i)}});var Ke,Ze={};!function(){var e;ne.shrinkWrapBlocks=function(){if(null!=e)return e;e=!1;var t,n,r;return n=he.getElementsByTagName("body")[0],n&&n.style?(t=he.createElement("div"),r=he.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),typeof t.style.zoom!==Te&&(t.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",t.appendChild(he.createElement("div")).style.width="5px",e=3!==t.offsetWidth),n.removeChild(r),e):void 0}}();var et=/^margin/,tt=new RegExp("^("+ke+")(?!px)[a-z%]+$","i"),nt,rt,it=/^(top|right|bottom|left)$/;e.getComputedStyle?(nt=function(t){
return t.ownerDocument.defaultView.opener?t.ownerDocument.defaultView.getComputedStyle(t,null):e.getComputedStyle(t,null)},rt=function(e,t,n){var r,i,o,a,s=e.style;return n=n||nt(e),a=n?n.getPropertyValue(t)||n[t]:void 0,n&&(""!==a||ie.contains(e.ownerDocument,e)||(a=ie.style(e,t)),tt.test(a)&&et.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0===a?a:a+""}):he.documentElement.currentStyle&&(nt=function(e){return e.currentStyle},rt=function(e,t,n){var r,i,o,a,s=e.style;return n=n||nt(e),a=n?n[t]:void 0,null==a&&s&&s[t]&&(a=s[t]),tt.test(a)&&!it.test(t)&&(r=s.left,i=e.runtimeStyle,o=i&&i.left,o&&(i.left=e.currentStyle.left),s.left="fontSize"===t?"1em":a,a=s.pixelLeft+"px",s.left=r,o&&(i.left=o)),void 0===a?a:a+""||"auto"}),function(){function t(){var t,n,r,i;n=he.getElementsByTagName("body")[0],n&&n.style&&(t=he.createElement("div"),r=he.createElement("div"),r.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",n.appendChild(r).appendChild(t),t.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",o=a=!1,l=!0,e.getComputedStyle&&(o="1%"!==(e.getComputedStyle(t,null)||{}).top,a="4px"===(e.getComputedStyle(t,null)||{width:"4px"}).width,i=t.appendChild(he.createElement("div")),i.style.cssText=t.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",t.style.width="1px",l=!parseFloat((e.getComputedStyle(i,null)||{}).marginRight),t.removeChild(i)),t.innerHTML="<table><tr><td></td><td>t</td></tr></table>",i=t.getElementsByTagName("td"),i[0].style.cssText="margin:0;border:0;padding:0;display:none",s=0===i[0].offsetHeight,s&&(i[0].style.display="",i[1].style.display="none",s=0===i[0].offsetHeight),n.removeChild(r))}var n,r,i,o,a,s,l;n=he.createElement("div"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",i=n.getElementsByTagName("a")[0],r=i&&i.style,r&&(r.cssText="float:left;opacity:.5",ne.opacity="0.5"===r.opacity,ne.cssFloat=!!r.cssFloat,n.style.backgroundClip="content-box",n.cloneNode(!0).style.backgroundClip="",ne.clearCloneStyle="content-box"===n.style.backgroundClip,ne.boxSizing=""===r.boxSizing||""===r.MozBoxSizing||""===r.WebkitBoxSizing,ie.extend(ne,{reliableHiddenOffsets:function(){return null==s&&t(),s},boxSizingReliable:function(){return null==a&&t(),a},pixelPosition:function(){return null==o&&t(),o},reliableMarginRight:function(){return null==l&&t(),l}}))}(),ie.swap=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i};var ot=/alpha\([^)]*\)/i,at=/opacity\s*=\s*([^)]*)/,st=/^(none|table(?!-c[ea]).+)/,lt=new RegExp("^("+ke+")(.*)$","i"),ut=new RegExp("^([+-])=("+ke+")","i"),ct={position:"absolute",visibility:"hidden",display:"block"},ft={letterSpacing:"0",fontWeight:"400"},dt=["Webkit","O","Moz","ms"];ie.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=rt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:ne.cssFloat?"cssFloat":"styleFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=ie.camelCase(t),l=e.style;if(t=ie.cssProps[s]||(ie.cssProps[s]=S(l,s)),a=ie.cssHooks[t]||ie.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];if(o=typeof n,"string"===o&&(i=ut.exec(n))&&(n=(i[1]+1)*i[2]+parseFloat(ie.css(e,t)),o="number"),null!=n&&n===n&&("number"!==o||ie.cssNumber[s]||(n+="px"),ne.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),!(a&&"set"in a&&void 0===(n=a.set(e,n,r)))))try{l[t]=n}catch(e){}}},css:function(e,t,n,r){var i,o,a,s=ie.camelCase(t);return t=ie.cssProps[s]||(ie.cssProps[s]=S(e.style,s)),a=ie.cssHooks[t]||ie.cssHooks[s],a&&"get"in a&&(o=a.get(e,!0,n)),void 0===o&&(o=rt(e,t,r)),"normal"===o&&t in ft&&(o=ft[t]),""===n||n?(i=parseFloat(o),n===!0||ie.isNumeric(i)?i||0:o):o}}),ie.each(["height","width"],function(e,t){ie.cssHooks[t]={get:function(e,n,r){if(n)return st.test(ie.css(e,"display"))&&0===e.offsetWidth?ie.swap(e,ct,function(){return L(e,t,r)}):L(e,t,r)},set:function(e,n,r){var i=r&&nt(e);return A(e,n,r?D(e,t,r,ne.boxSizing&&"border-box"===ie.css(e,"boxSizing",!1,i),i):0)}}}),ne.opacity||(ie.cssHooks.opacity={get:function(e,t){return at.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=ie.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===ie.trim(o.replace(ot,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=ot.test(o)?o.replace(ot,i):o+" "+i)}}),ie.cssHooks.marginRight=k(ne.reliableMarginRight,function(e,t){if(t)return ie.swap(e,{display:"inline-block"},rt,[e,"marginRight"])}),ie.each({margin:"",padding:"",border:"Width"},function(e,t){ie.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Se[r]+t]=o[r]||o[r-2]||o[0];return i}},et.test(e)||(ie.cssHooks[e+t].set=A)}),ie.fn.extend({css:function(e,t){return Ae(this,function(e,t,n){var r,i,o={},a=0;if(ie.isArray(t)){for(r=nt(e),i=t.length;a<i;a++)o[t[a]]=ie.css(e,t[a],!1,r);return o}return void 0!==n?ie.style(e,t,n):ie.css(e,t)},e,t,arguments.length>1)},show:function(){return j(this,!0)},hide:function(){return j(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){je(this)?ie(this).show():ie(this).hide()})}}),ie.Tween=H,H.prototype={constructor:H,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(ie.cssNumber[n]?"":"px")},cur:function(){var e=H.propHooks[this.prop];return e&&e.get?e.get(this):H.propHooks._default.get(this)},run:function(e){var t,n=H.propHooks[this.prop];return this.options.duration?this.pos=t=ie.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):H.propHooks._default.set(this),this}},H.prototype.init.prototype=H.prototype,H.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=ie.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){ie.fx.step[e.prop]?ie.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[ie.cssProps[e.prop]]||ie.cssHooks[e.prop])?ie.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},H.propHooks.scrollTop=H.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},ie.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},ie.fx=H.prototype.init,ie.fx.step={};var pt,ht,mt=/^(?:toggle|show|hide)$/,gt=new RegExp("^(?:([+-])=|)("+ke+")([a-z%]*)$","i"),yt=/queueHooks$/,vt=[F],bt={"*":[function(e,t){var n=this.createTween(e,t),r=n.cur(),i=gt.exec(t),o=i&&i[3]||(ie.cssNumber[e]?"":"px"),a=(ie.cssNumber[e]||"px"!==o&&+r)&&gt.exec(ie.css(n.elem,e)),s=1,l=20;if(a&&a[3]!==o){o=o||a[3],i=i||[],a=+r||1;do s=s||".5",a/=s,ie.style(n.elem,e,a+o);while(s!==(s=n.cur()/r)&&1!==s&&--l)}return i&&(a=n.start=+a||+r||0,n.unit=o,n.end=i[1]?a+(i[1]+1)*i[2]:+i[2]),n}]};ie.Animation=ie.extend(P,{tweener:function(e,t){ie.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,i=e.length;r<i;r++)n=e[r],bt[n]=bt[n]||[],bt[n].unshift(t)},prefilter:function(e,t){t?vt.unshift(e):vt.push(e)}}),ie.speed=function(e,t,n){var r=e&&"object"==typeof e?ie.extend({},e):{complete:n||!n&&t||ie.isFunction(e)&&e,duration:e,easing:n&&t||t&&!ie.isFunction(t)&&t};return r.duration=ie.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in ie.fx.speeds?ie.fx.speeds[r.duration]:ie.fx.speeds._default,null!=r.queue&&r.queue!==!0||(r.queue="fx"),r.old=r.complete,r.complete=function(){ie.isFunction(r.old)&&r.old.call(this),r.queue&&ie.dequeue(this,r.queue)},r},ie.fn.extend({fadeTo:function(e,t,n,r){return this.filter(je).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=ie.isEmptyObject(e),o=ie.speed(t,n,r),a=function(){var t=P(this,ie.extend({},e),o);(i||ie._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=ie.timers,a=ie._data(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&yt.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||ie.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=ie._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=ie.timers,a=r?r.length:0;for(n.finish=!0,ie.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),ie.each(["toggle","show","hide"],function(e,t){var n=ie.fn[t];ie.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(_(t,!0),e,r,i)}}),ie.each({slideDown:_("show"),slideUp:_("hide"),slideToggle:_("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){ie.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),ie.timers=[],ie.fx.tick=function(){var e,t=ie.timers,n=0;for(pt=ie.now();n<t.length;n++)e=t[n],e()||t[n]!==e||t.splice(n--,1);t.length||ie.fx.stop(),pt=void 0},ie.fx.timer=function(e){ie.timers.push(e),e()?ie.fx.start():ie.timers.pop()},ie.fx.interval=13,ie.fx.start=function(){ht||(ht=setInterval(ie.fx.tick,ie.fx.interval))},ie.fx.stop=function(){clearInterval(ht),ht=null},ie.fx.speeds={slow:600,fast:200,_default:400},ie.fn.delay=function(e,t){return e=ie.fx?ie.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},function(){var e,t,n,r,i;t=he.createElement("div"),t.setAttribute("className","t"),t.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",r=t.getElementsByTagName("a")[0],n=he.createElement("select"),i=n.appendChild(he.createElement("option")),e=t.getElementsByTagName("input")[0],r.style.cssText="top:1px",ne.getSetAttribute="t"!==t.className,ne.style=/top/.test(r.getAttribute("style")),ne.hrefNormalized="/a"===r.getAttribute("href"),ne.checkOn=!!e.value,ne.optSelected=i.selected,ne.enctype=!!he.createElement("form").enctype,n.disabled=!0,ne.optDisabled=!i.disabled,e=he.createElement("input"),e.setAttribute("value",""),ne.input=""===e.getAttribute("value"),e.value="t",e.setAttribute("type","radio"),ne.radioValue="t"===e.value}();var xt=/\r/g;ie.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=ie.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,ie(this).val()):e,null==i?i="":"number"==typeof i?i+="":ie.isArray(i)&&(i=ie.map(i,function(e){return null==e?"":e+""})),t=ie.valHooks[this.type]||ie.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return t=ie.valHooks[i.type]||ie.valHooks[i.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(xt,""):null==n?"":n)}}}),ie.extend({valHooks:{option:{get:function(e){var t=ie.find.attr(e,"value");return null!=t?t:ie.trim(ie.text(e))}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||i<0,a=o?null:[],s=o?i+1:r.length,l=i<0?s:o?i:0;l<s;l++)if(n=r[l],(n.selected||l===i)&&(ne.optDisabled?!n.disabled:null===n.getAttribute("disabled"))&&(!n.parentNode.disabled||!ie.nodeName(n.parentNode,"optgroup"))){if(t=ie(n).val(),o)return t;a.push(t)}return a},set:function(e,t){for(var n,r,i=e.options,o=ie.makeArray(t),a=i.length;a--;)if(r=i[a],ie.inArray(ie.valHooks.option.get(r),o)>=0)try{r.selected=n=!0}catch(e){r.scrollHeight}else r.selected=!1;return n||(e.selectedIndex=-1),i}}}}),ie.each(["radio","checkbox"],function(){ie.valHooks[this]={set:function(e,t){if(ie.isArray(t))return e.checked=ie.inArray(ie(e).val(),t)>=0}},ne.checkOn||(ie.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var wt,Tt,Ct=ie.expr.attrHandle,Nt=/^(?:checked|selected)$/i,Et=ne.getSetAttribute,kt=ne.input;ie.fn.extend({attr:function(e,t){return Ae(this,ie.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){ie.removeAttr(this,e)})}}),ie.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(e&&3!==o&&8!==o&&2!==o)return typeof e.getAttribute===Te?ie.prop(e,t,n):(1===o&&ie.isXMLDoc(e)||(t=t.toLowerCase(),r=ie.attrHooks[t]||(ie.expr.match.bool.test(t)?Tt:wt)),void 0===n?r&&"get"in r&&null!==(i=r.get(e,t))?i:(i=ie.find.attr(e,t),null==i?void 0:i):null!==n?r&&"set"in r&&void 0!==(i=r.set(e,n,t))?i:(e.setAttribute(t,n+""),n):void ie.removeAttr(e,t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(be);if(o&&1===e.nodeType)for(;n=o[i++];)r=ie.propFix[n]||n,ie.expr.match.bool.test(n)?kt&&Et||!Nt.test(n)?e[r]=!1:e[ie.camelCase("default-"+n)]=e[r]=!1:ie.attr(e,n,""),e.removeAttribute(Et?n:r)},attrHooks:{type:{set:function(e,t){if(!ne.radioValue&&"radio"===t&&ie.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}}}),Tt={set:function(e,t,n){return t===!1?ie.removeAttr(e,n):kt&&Et||!Nt.test(n)?e.setAttribute(!Et&&ie.propFix[n]||n,n):e[ie.camelCase("default-"+n)]=e[n]=!0,n}},ie.each(ie.expr.match.bool.source.match(/\w+/g),function(e,t){var n=Ct[t]||ie.find.attr;Ct[t]=kt&&Et||!Nt.test(t)?function(e,t,r){var i,o;return r||(o=Ct[t],Ct[t]=i,i=null!=n(e,t,r)?t.toLowerCase():null,Ct[t]=o),i}:function(e,t,n){if(!n)return e[ie.camelCase("default-"+t)]?t.toLowerCase():null}}),kt&&Et||(ie.attrHooks.value={set:function(e,t,n){return ie.nodeName(e,"input")?void(e.defaultValue=t):wt&&wt.set(e,t,n)}}),Et||(wt={set:function(e,t,n){var r=e.getAttributeNode(n);if(r||e.setAttributeNode(r=e.ownerDocument.createAttribute(n)),r.value=t+="","value"===n||t===e.getAttribute(n))return t}},Ct.id=Ct.name=Ct.coords=function(e,t,n){var r;if(!n)return(r=e.getAttributeNode(t))&&""!==r.value?r.value:null},ie.valHooks.button={get:function(e,t){var n=e.getAttributeNode(t);if(n&&n.specified)return n.value},set:wt.set},ie.attrHooks.contenteditable={set:function(e,t,n){wt.set(e,""!==t&&t,n)}},ie.each(["width","height"],function(e,t){ie.attrHooks[t]={set:function(e,n){if(""===n)return e.setAttribute(t,"auto"),n}}})),ne.style||(ie.attrHooks.style={get:function(e){return e.style.cssText||void 0},set:function(e,t){return e.style.cssText=t+""}});var St=/^(?:input|select|textarea|button|object)$/i,jt=/^(?:a|area)$/i;ie.fn.extend({prop:function(e,t){return Ae(this,ie.prop,e,t,arguments.length>1)},removeProp:function(e){return e=ie.propFix[e]||e,this.each(function(){try{this[e]=void 0,delete this[e]}catch(e){}})}}),ie.extend({propFix:{for:"htmlFor",class:"className"},prop:function(e,t,n){var r,i,o,a=e.nodeType;if(e&&3!==a&&8!==a&&2!==a)return o=1!==a||!ie.isXMLDoc(e),o&&(t=ie.propFix[t]||t,i=ie.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=ie.find.attr(e,"tabindex");return t?parseInt(t,10):St.test(e.nodeName)||jt.test(e.nodeName)&&e.href?0:-1}}}}),ne.hrefNormalized||ie.each(["href","src"],function(e,t){ie.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}}),ne.optSelected||(ie.propHooks.selected={get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}}),ie.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){ie.propFix[this.toLowerCase()]=this}),ne.enctype||(ie.propFix.enctype="encoding");var At=/[\t\r\n\f]/g;ie.fn.extend({addClass:function(e){var t,n,r,i,o,a,s=0,l=this.length,u="string"==typeof e&&e;if(ie.isFunction(e))return this.each(function(t){ie(this).addClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(be)||[];s<l;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(At," "):" ")){for(o=0;i=t[o++];)r.indexOf(" "+i+" ")<0&&(r+=i+" ");a=ie.trim(r),n.className!==a&&(n.className=a)}return this},removeClass:function(e){var t,n,r,i,o,a,s=0,l=this.length,u=0===arguments.length||"string"==typeof e&&e;if(ie.isFunction(e))return this.each(function(t){ie(this).removeClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(be)||[];s<l;s++)if(n=this[s],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(At," "):"")){for(o=0;i=t[o++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");a=e?ie.trim(r):"",n.className!==a&&(n.className=a)}return this},toggleClass:function(e,t){var n=typeof e;return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):ie.isFunction(e)?this.each(function(n){ie(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n)for(var t,r=0,i=ie(this),o=e.match(be)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else n!==Te&&"boolean"!==n||(this.className&&ie._data(this,"__className__",this.className),this.className=this.className||e===!1?"":ie._data(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",n=0,r=this.length;n<r;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(At," ").indexOf(t)>=0)return!0;return!1}}),ie.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){ie.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),ie.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}});var Dt=ie.now(),Lt=/\?/,Ht=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;ie.parseJSON=function(t){if(e.JSON&&e.JSON.parse)return e.JSON.parse(t+"");var n,r=null,i=ie.trim(t+"");return i&&!ie.trim(i.replace(Ht,function(e,t,i,o){return n&&t&&(r=0),0===r?e:(n=i||t,r+=!o-!i,"")}))?Function("return "+i)():ie.error("Invalid JSON: "+t)},ie.parseXML=function(t){var n,r;if(!t||"string"!=typeof t)return null;try{e.DOMParser?(r=new DOMParser,n=r.parseFromString(t,"text/xml")):(n=new ActiveXObject("Microsoft.XMLDOM"),n.async="false",n.loadXML(t))}catch(e){n=void 0}return n&&n.documentElement&&!n.getElementsByTagName("parsererror").length||ie.error("Invalid XML: "+t),n};var qt,_t,Mt=/#.*$/,Ft=/([?&])_=[^&]*/,Ot=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Pt=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Bt=/^(?:GET|HEAD)$/,Rt=/^\/\//,Wt=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,$t={},zt={},It="*/".concat("*");try{_t=location.href}catch(e){_t=he.createElement("a"),_t.href="",_t=_t.href}qt=Wt.exec(_t.toLowerCase())||[],ie.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:_t,type:"GET",isLocal:Pt.test(qt[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":It,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":ie.parseJSON,"text xml":ie.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?W(W(e,ie.ajaxSettings),t):W(ie.ajaxSettings,e)},ajaxPrefilter:B($t),ajaxTransport:B(zt),ajax:function(e,t){function n(e,t,n,r){var i,c,y,v,x,T=t;2!==b&&(b=2,s&&clearTimeout(s),u=void 0,a=r||"",w.readyState=e>0?4:0,i=e>=200&&e<300||304===e,n&&(v=$(f,w,n)),v=z(f,v,w,i),i?(f.ifModified&&(x=w.getResponseHeader("Last-Modified"),x&&(ie.lastModified[o]=x),x=w.getResponseHeader("etag"),x&&(ie.etag[o]=x)),204===e||"HEAD"===f.type?T="nocontent":304===e?T="notmodified":(T=v.state,c=v.data,y=v.error,i=!y)):(y=T,!e&&T||(T="error",e<0&&(e=0))),w.status=e,w.statusText=(t||T)+"",i?h.resolveWith(d,[c,T,w]):h.rejectWith(d,[w,T,y]),w.statusCode(g),g=void 0,l&&p.trigger(i?"ajaxSuccess":"ajaxError",[w,f,i?c:y]),m.fireWith(d,[w,T]),l&&(p.trigger("ajaxComplete",[w,f]),--ie.active||ie.event.trigger("ajaxStop")))}"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,i,o,a,s,l,u,c,f=ie.ajaxSetup({},t),d=f.context||f,p=f.context&&(d.nodeType||d.jquery)?ie(d):ie.event,h=ie.Deferred(),m=ie.Callbacks("once memory"),g=f.statusCode||{},y={},v={},b=0,x="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(2===b){if(!c)for(c={};t=Ot.exec(a);)c[t[1].toLowerCase()]=t[2];t=c[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===b?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return b||(e=v[n]=v[n]||e,y[e]=t),this},overrideMimeType:function(e){return b||(f.mimeType=e),this},statusCode:function(e){var t;if(e)if(b<2)for(t in e)g[t]=[g[t],e[t]];else w.always(e[w.status]);return this},abort:function(e){var t=e||x;return u&&u.abort(t),n(0,t),this}};if(h.promise(w).complete=m.add,w.success=w.done,w.error=w.fail,f.url=((e||f.url||_t)+"").replace(Mt,"").replace(Rt,qt[1]+"//"),f.type=t.method||t.type||f.method||f.type,f.dataTypes=ie.trim(f.dataType||"*").toLowerCase().match(be)||[""],null==f.crossDomain&&(r=Wt.exec(f.url.toLowerCase()),f.crossDomain=!(!r||r[1]===qt[1]&&r[2]===qt[2]&&(r[3]||("http:"===r[1]?"80":"443"))===(qt[3]||("http:"===qt[1]?"80":"443")))),f.data&&f.processData&&"string"!=typeof f.data&&(f.data=ie.param(f.data,f.traditional)),R($t,f,t,w),2===b)return w;l=ie.event&&f.global,l&&0===ie.active++&&ie.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Bt.test(f.type),o=f.url,f.hasContent||(f.data&&(o=f.url+=(Lt.test(o)?"&":"?")+f.data,delete f.data),f.cache===!1&&(f.url=Ft.test(o)?o.replace(Ft,"$1_="+Dt++):o+(Lt.test(o)?"&":"?")+"_="+Dt++)),f.ifModified&&(ie.lastModified[o]&&w.setRequestHeader("If-Modified-Since",ie.lastModified[o]),ie.etag[o]&&w.setRequestHeader("If-None-Match",ie.etag[o])),(f.data&&f.hasContent&&f.contentType!==!1||t.contentType)&&w.setRequestHeader("Content-Type",f.contentType),w.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+It+"; q=0.01":""):f.accepts["*"]);for(i in f.headers)w.setRequestHeader(i,f.headers[i]);if(f.beforeSend&&(f.beforeSend.call(d,w,f)===!1||2===b))return w.abort();x="abort";for(i in{success:1,error:1,complete:1})w[i](f[i]);if(u=R(zt,f,t,w)){w.readyState=1,l&&p.trigger("ajaxSend",[w,f]),f.async&&f.timeout>0&&(s=setTimeout(function(){w.abort("timeout")},f.timeout));try{b=1,u.send(y,n)}catch(e){if(!(b<2))throw e;n(-1,e)}}else n(-1,"No Transport");return w},getJSON:function(e,t,n){return ie.get(e,t,n,"json")},getScript:function(e,t){return ie.get(e,void 0,t,"script")}}),ie.each(["get","post"],function(e,t){ie[t]=function(e,n,r,i){return ie.isFunction(n)&&(i=i||r,r=n,n=void 0),ie.ajax({url:e,type:t,dataType:i,data:n,success:r})}}),ie._evalUrl=function(e){return ie.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},ie.fn.extend({wrapAll:function(e){if(ie.isFunction(e))return this.each(function(t){ie(this).wrapAll(e.call(this,t))});if(this[0]){var t=ie(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstChild&&1===e.firstChild.nodeType;)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return ie.isFunction(e)?this.each(function(t){ie(this).wrapInner(e.call(this,t))}):this.each(function(){var t=ie(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=ie.isFunction(e);return this.each(function(n){ie(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){ie.nodeName(this,"body")||ie(this).replaceWith(this.childNodes)}).end()}}),ie.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0||!ne.reliableHiddenOffsets()&&"none"===(e.style&&e.style.display||ie.css(e,"display"))},ie.expr.filters.visible=function(e){return!ie.expr.filters.hidden(e)};var Xt=/%20/g,Ut=/\[\]$/,Vt=/\r?\n/g,Qt=/^(?:submit|button|image|reset|file)$/i,Jt=/^(?:input|select|textarea|keygen)/i;ie.param=function(e,t){var n,r=[],i=function(e,t){t=ie.isFunction(t)?t():null==t?"":t,r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=ie.ajaxSettings&&ie.ajaxSettings.traditional),ie.isArray(e)||e.jquery&&!ie.isPlainObject(e))ie.each(e,function(){i(this.name,this.value)});else for(n in e)I(n,e[n],t,i);return r.join("&").replace(Xt,"+")},ie.fn.extend({serialize:function(){return ie.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=ie.prop(this,"elements");return e?ie.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!ie(this).is(":disabled")&&Jt.test(this.nodeName)&&!Qt.test(e)&&(this.checked||!De.test(e))}).map(function(e,t){var n=ie(this).val();return null==n?null:ie.isArray(n)?ie.map(n,function(e){return{name:t.name,value:e.replace(Vt,"\r\n")}}):{name:t.name,value:n.replace(Vt,"\r\n")}}).get()}}),ie.ajaxSettings.xhr=void 0!==e.ActiveXObject?function(){return!this.isLocal&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&X()||U()}:X;var Yt=0,Gt={},Kt=ie.ajaxSettings.xhr();e.attachEvent&&e.attachEvent("onunload",function(){for(var e in Gt)Gt[e](void 0,!0)}),ne.cors=!!Kt&&"withCredentials"in Kt,Kt=ne.ajax=!!Kt,Kt&&ie.ajaxTransport(function(e){if(!e.crossDomain||ne.cors){var t;return{send:function(n,r){var i,o=e.xhr(),a=++Yt;if(o.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(i in e.xhrFields)o[i]=e.xhrFields[i];e.mimeType&&o.overrideMimeType&&o.overrideMimeType(e.mimeType),e.crossDomain||n["X-Requested-With"]||(n["X-Requested-With"]="XMLHttpRequest");for(i in n)void 0!==n[i]&&o.setRequestHeader(i,n[i]+"");o.send(e.hasContent&&e.data||null),t=function(n,i){var s,l,u;if(t&&(i||4===o.readyState))if(delete Gt[a],t=void 0,o.onreadystatechange=ie.noop,i)4!==o.readyState&&o.abort();else{u={},s=o.status,"string"==typeof o.responseText&&(u.text=o.responseText);try{l=o.statusText}catch(e){l=""}s||!e.isLocal||e.crossDomain?1223===s&&(s=204):s=u.text?200:404}u&&r(s,l,u,o.getAllResponseHeaders())},e.async?4===o.readyState?setTimeout(t):o.onreadystatechange=Gt[a]=t:t()},abort:function(){t&&t(void 0,!0)}}}}),ie.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return ie.globalEval(e),e}}}),ie.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),ie.ajaxTransport("script",function(e){if(e.crossDomain){var t,n=he.head||ie("head")[0]||he.documentElement;return{send:function(r,i){t=he.createElement("script"),t.async=!0,e.scriptCharset&&(t.charset=e.scriptCharset),t.src=e.url,t.onload=t.onreadystatechange=function(e,n){(n||!t.readyState||/loaded|complete/.test(t.readyState))&&(t.onload=t.onreadystatechange=null,t.parentNode&&t.parentNode.removeChild(t),t=null,n||i(200,"success"))},n.insertBefore(t,n.firstChild)},abort:function(){t&&t.onload(void 0,!0)}}}});var Zt=[],en=/(=)\?(?=&|$)|\?\?/;ie.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Zt.pop()||ie.expando+"_"+Dt++;return this[e]=!0,e}}),ie.ajaxPrefilter("json jsonp",function(t,n,r){var i,o,a,s=t.jsonp!==!1&&(en.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&en.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return i=t.jsonpCallback=ie.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(en,"$1"+i):t.jsonp!==!1&&(t.url+=(Lt.test(t.url)?"&":"?")+t.jsonp+"="+i),t.converters["script json"]=function(){return a||ie.error(i+" was not called"),a[0]},t.dataTypes[0]="json",o=e[i],e[i]=function(){a=arguments},r.always(function(){e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Zt.push(i)),a&&ie.isFunction(o)&&o(a[0]),a=o=void 0}),"script"}),ie.parseHTML=function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||he;var r=fe.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=ie.buildFragment([e],t,i),i&&i.length&&ie(i).remove(),ie.merge([],r.childNodes))};var tn=ie.fn.load;ie.fn.load=function(e,t,n){if("string"!=typeof e&&tn)return tn.apply(this,arguments);var r,i,o,a=this,s=e.indexOf(" ");return s>=0&&(r=ie.trim(e.slice(s,e.length)),e=e.slice(0,s)),ie.isFunction(t)?(n=t,t=void 0):t&&"object"==typeof t&&(o="POST"),a.length>0&&ie.ajax({url:e,type:o,dataType:"html",data:t}).done(function(e){i=arguments,a.html(r?ie("<div>").append(ie.parseHTML(e)).find(r):e)}).complete(n&&function(e,t){a.each(n,i||[e.responseText,t,e])}),this},ie.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ie.fn[t]=function(e){return this.on(t,e)}}),ie.expr.filters.animated=function(e){return ie.grep(ie.timers,function(t){return e===t.elem}).length};var nn=e.document.documentElement;ie.offset={setOffset:function(e,t,n){var r,i,o,a,s,l,u,c=ie.css(e,"position"),f=ie(e),d={};"static"===c&&(e.style.position="relative"),s=f.offset(),o=ie.css(e,"top"),l=ie.css(e,"left"),u=("absolute"===c||"fixed"===c)&&ie.inArray("auto",[o,l])>-1,u?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(l)||0),ie.isFunction(t)&&(t=t.call(e,n,s)),null!=t.top&&(d.top=t.top-s.top+a),null!=t.left&&(d.left=t.left-s.left+i),"using"in t?t.using.call(e,d):f.css(d)}},ie.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){ie.offset.setOffset(this,e,t)});var t,n,r={top:0,left:0},i=this[0],o=i&&i.ownerDocument;if(o)return t=o.documentElement,ie.contains(t,i)?(typeof i.getBoundingClientRect!==Te&&(r=i.getBoundingClientRect()),n=V(o),{top:r.top+(n.pageYOffset||t.scrollTop)-(t.clientTop||0),left:r.left+(n.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}):r},position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===ie.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),ie.nodeName(e[0],"html")||(n=e.offset()),n.top+=ie.css(e[0],"borderTopWidth",!0),n.left+=ie.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-ie.css(r,"marginTop",!0),left:t.left-n.left-ie.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||nn;e&&!ie.nodeName(e,"html")&&"static"===ie.css(e,"position");)e=e.offsetParent;return e||nn})}}),ie.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n=/Y/.test(t);ie.fn[e]=function(r){return Ae(this,function(e,r,i){var o=V(e);return void 0===i?o?t in o?o[t]:o.document.documentElement[r]:e[r]:void(o?o.scrollTo(n?ie(o).scrollLeft():i,n?i:ie(o).scrollTop()):e[r]=i)},e,r,arguments.length,null)}}),ie.each(["top","left"],function(e,t){ie.cssHooks[t]=k(ne.pixelPosition,function(e,n){if(n)return n=rt(e,t),
tt.test(n)?ie(e).position()[t]+"px":n})}),ie.each({Height:"height",Width:"width"},function(e,t){ie.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){ie.fn[r]=function(r,i){var o=arguments.length&&(n||"boolean"!=typeof r),a=n||(r===!0||i===!0?"margin":"border");return Ae(this,function(t,n,r){var i;return ie.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(i=t.documentElement,Math.max(t.body["scroll"+e],i["scroll"+e],t.body["offset"+e],i["offset"+e],i["client"+e])):void 0===r?ie.css(t,n,a):ie.style(t,n,r,a)},t,o?r:void 0,o,null)}})}),ie.fn.size=function(){return this.length},ie.fn.andSelf=ie.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return ie});var rn=e.jQuery,on=e.$;return ie.noConflict=function(t){return e.$===ie&&(e.$=on),t&&e.jQuery===ie&&(e.jQuery=rn),ie},typeof t===Te&&(e.jQuery=e.$=ie),ie})}}}}},{extensions:[".js",".json"]}),u=l("./node_modules/meteor/jquery/main.js");"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.jquery=u,{$:a,jQuery:s})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["standard-minifier-css"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["standard-minifier-js"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["shell-server"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["standard-app-packages"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package.stylus={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.tracker.Tracker,r=Package.tracker.Deps,o=Package.retry.Retry,i=Package["ddp-client"].DDP,s=Package.mongo.Mongo,c=Package.underscore._,u,l;(function(){var t=__meteor_runtime_config__.autoupdateVersion||"unknown",n=__meteor_runtime_config__.autoupdateVersionRefreshable||"unknown";u=new s.Collection("meteor_autoupdate_clientVersions"),l={},l.newClientAvailable=function(){return!!u.findOne({_id:"version",version:{$ne:t}})||!!u.findOne({_id:"version-refreshable",version:{$ne:n}})},l._ClientVersions=u;var a=!1,r=new o({minCount:0,baseTimeout:3e4}),i=0;l._retrySubscription=function(){e.subscribe("meteor_autoupdate_clientVersions",{onError:function(t){e._debug("autoupdate subscription failed:",t),i++,r.retryLater(i,function(){l._retrySubscription()})},onReady:function(){if(Package.reload)var r=function(r){var i=this;if("version-refreshable"===r._id&&r.version!==n){n=r.version;var s=r.assets&&r.assets.allCss||[],u=[];c.each(document.getElementsByTagName("link"),function(e){"__meteor-css__"===e.className&&u.push(e)});var l=function(t,n){var r=c.once(n);if(t.onload=function(){a=!0,r()},!a)var o=e.setInterval(function(){t.sheet&&(r(),e.clearInterval(o))},50)},d=c.after(s.length,function(){c.each(u,function(e){e.parentNode.removeChild(e)})}),f=function(t){document.getElementsByTagName("head").item(0).appendChild(t),l(t,function(){e.setTimeout(d,200)})};0!==s.length?c.each(s,function(e){var t=document.createElement("link");t.setAttribute("rel","stylesheet"),t.setAttribute("type","text/css"),t.setAttribute("class","__meteor-css__"),t.setAttribute("href",e.url),f(t)}):d()}else"version"===r._id&&r.version!==t&&(o&&o.stop(),Package.reload&&Package.reload.Reload._reload())},o=u.find().observe({added:r,changed:r})}})},l._retrySubscription()}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.autoupdate={},{Autoupdate:l})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["meteor-platform"]={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,a=Package.meteor.meteorEnv,n=Package.underscore._,o=Package.modules.meteorInstall,r=Package.modules.Buffer,s=Package.modules.process,c=Package["ecmascript-runtime"].Symbol,u=Package["ecmascript-runtime"].Map,m=Package["ecmascript-runtime"].Set,i=Package["babel-runtime"].meteorBabelHelpers,l=Package.promise.Promise,p,d=o({node_modules:{meteor:{webapp:{"webapp_client.js":function(){p={_isCssLoaded:function(){function e(){return 0===document.styleSheets.length||n.find(document.styleSheets,function(e){return e.cssText&&!e.cssRules?!e.cssText.match(/meteor-css-not-found-error/):!n.find(e.cssRules,function(e){return".meteor-css-not-found-error"===e.selectorText})})}return e}()}}}}}},{extensions:[".js",".json"]});d("./node_modules/meteor/webapp/webapp_client.js"),"undefined"==typeof Package&&(Package={}),function(e,t){for(var a in t)a in e||(e[a]=t[a])}(Package.webapp={},{WebApp:p})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.underscore._,i=Package.ejson.EJSON,a=Package.modules.meteorInstall,f=Package.modules.Buffer,o=Package.modules.process,c,l,s=a({node_modules:{meteor:{logging:{"logging.js":["cli-color",function(t){c=function(){return c.info.apply(this,arguments)};var n=0,a=[],f=0;c._intercept=function(e){n+=e},c._suppress=function(e){f+=e},c._intercepted=function(){var e=a;return a=[],n=0,e},c.outputFormat="json";var o={debug:"green",warn:"magenta",error:"red"},l="blue",s=["time","timeInexact","level","file","line","program","originApp","satellite","stderr"],u=s.concat(["app","message"]),d=function(t){var n=c.format(t),r=t.level;"undefined"!=typeof console&&console[r]?console[r](n):e._debug(n)};c._getCallerDetails=function(){var e=function(){var e=new Error,t=e.stack;return t},t=e();if(!t)return{};for(var n=t.split("\n"),r,i=1;i<n.length;++i){if(r=n[i],r.match(/^\s*at eval \(eval/))return{file:"eval"};if(!r.match(/packages\/(?:local-test[:_])?logging(?:\/|\.js)/))break}var a={},f=/(?:[@(]| at )([^(]+?):([0-9:]+)(?:\)|$)/.exec(r);return f?(a.line=f[2].split(":")[0],a.file=f[1].split("/").slice(-1)[0].split("?")[0],a):a},r.each(["debug","info","warn","error"],function(t){c[t]=function(o){if(f)return void f--;var l=!1;n&&(n--,l=!0);var u=!r.isObject(o)||r.isRegExp(o)||r.isDate(o)?{message:new String(o).toString()}:o;if(r.each(s,function(e){if(u[e])throw new Error("Can't set '"+e+"' in log message")}),r.has(u,"message")&&!r.isString(u.message))throw new Error("The 'message' field in log objects must be a string");if(u.omitCallerDetails||(u=r.extend(c._getCallerDetails(),u)),u.time=new Date,u.level=t,"debug"!==t)if(l)a.push(i.stringify(u));else if(e.isServer)if("colored-text"===c.outputFormat)console.log(c.format(u,{color:!0}));else{if("json"!==c.outputFormat)throw new Error("Unknown logging output format: "+c.outputFormat);console.log(i.stringify(u))}else d(u)}}),c.parse=function(e){var t=null;if(e&&"{"===e.charAt(0))try{t=i.parse(e)}catch(e){}return t&&t.time&&t.time instanceof Date?t:null},c.format=function(n,a){n=i.clone(n),a=a||{};var f=n.time;if(!(f instanceof Date))throw new Error("'time' must be a Date object");var c=n.timeInexact,s=n.level||"info",d=n.file,p=n.line,b=n.app||"",m=n.originApp,h=n.message||"",v=n.program||"",g=n.satellite,x=n.stderr||"";r.each(u,function(e){delete n[e]}),r.isEmpty(n)||(h&&(h+=" "),h+=i.stringify(n));var y=function(e){return e<10?"0"+e:e.toString()},j=function(e){return e<100?"0"+y(e):e.toString()},O=f.getFullYear().toString()+y(f.getMonth()+1)+y(f.getDate()),_=y(f.getHours())+":"+y(f.getMinutes())+":"+y(f.getSeconds())+"."+j(f.getMilliseconds()),w="("+-((new Date).getTimezoneOffset()/60)+")",A="";b&&(A+=b),m&&m!==b&&(A+=" via "+m),A&&(A="["+A+"] ");var N=[];v&&N.push(v),d&&N.push(d),p&&N.push(p);var S=r.isEmpty(N)?"":"("+N.join(":")+") ";g&&(S+=["[",g,"]"].join(""));var P=x?"(STDERR) ":"",z=[s.charAt(0).toUpperCase(),O,"-",_,w,c?"? ":" ",A,S,P].join(""),k=function(n,r){return a.color&&e.isServer&&r?t("cli-color")[r](n):n};return k(z,a.metaColor||l)+k(h,o[s])},c.objFromText=function(e,t){var n={message:e,level:"info",time:new Date,timeInexact:!0};return r.extend(n,t)}}],node_modules:{"cli-color":{"package.json":function(e,t){t.name="cli-color",t.version="0.2.3",t.main="lib"},lib:{"index.js":["es5-ext/lib/Object/descriptor","es5-ext/lib/Object/extend","es5-ext/lib/Object/map","es5-ext/lib/Object/reduce","es5-ext/lib/String/prototype/repeat","memoizee","tty","./_xterm-match",function(e,t,n){"use strict";var r=e("es5-ext/lib/Object/descriptor"),i=e("es5-ext/lib/Object/extend"),a=e("es5-ext/lib/Object/map"),f=e("es5-ext/lib/Object/reduce"),c=e("es5-ext/lib/String/prototype/repeat"),l=e("memoizee"),s=e("tty"),u=Array.prototype.join,d=Object.defineProperty,p=Object.defineProperties,b=Math.abs,m=Math.floor,h=Math.max,v=Math.min,g,x,y,j,O,_,w,A,N,S,P;g=i({bold:{_bold:[1,22]},italic:{_italic:[3,23]},underline:{_underline:[4,24]},blink:{_blink:[5,25]},inverse:{_inverse:[7,27]},strike:{_strike:[9,29]}},["black","red","green","yellow","blue","magenta","cyan","white"].reduce(function(e,t,n){return e[t]={_fg:[30+n,39]},e[t+"Bright"]={_fg:[90+n,39]},e["bg"+t[0].toUpperCase()+t.slice(1)]={_bg:[40+n,49]},e["bg"+t[0].toUpperCase()+t.slice(1)+"Bright"]={_bg:[100+n,49]},e},{})),P=l(function(e,t){return d(y(),"_cliColorData",r(i({},e._cliColorData,t)))}),x=Object.create(Function.prototype,i(a(g,function(e){return r.gs(function(){return P(this,e)})}),{xterm:r(l(function(e){return e=isNaN(e)?255:v(h(e,0),255),d(y(),"_cliColorData",r(i({},this._cliColorData,{_fg:[O?O[e]:"38;5;"+e,39]})))},{method:"xterm"})),bgXterm:r(l(function(e){return e=isNaN(e)?255:v(h(e,0),255),d(y(),"_cliColorData",r(i({},this._cliColorData,{_bg:[O?O[e]+10:"48;5;"+e,49]})))},{method:"bgXterm"}))})),"win32"===o.platform&&(O=e("./_xterm-match")),y=function(){var e=function(){var t=e._cliColorData,n="";return f(t,function(e,t){return n="["+t[1]+"m"+n,e+"["+t[0]+"m"},"",!0)+u.call(arguments," ")+n};return e.__proto__=x,e},j=function(e){return function(t){return t=isNaN(t)?0:h(m(t),0),t?"["+t+e:""}},n.exports=p(y(),{width:r.gs(o.stdout.getWindowSize?function(){return o.stdout.getWindowSize()[0]}:function(){return s.getWindowSize?s.getWindowSize()[1]:0}),height:r.gs(S=o.stdout.getWindowSize?function(){return o.stdout.getWindowSize()[1]}:function(){return s.getWindowSize?s.getWindowSize()[0]:0}),reset:r.gs(function(){return c.call("\n",S()-1)+"c"}),up:r(_=j("A")),down:r(w=j("B")),right:r(A=j("C")),left:r(N=j("D")),move:r(function(e,t){return e=isNaN(e)?0:m(e),t=isNaN(t)?0:m(t),(e>0?A(e):N(-e))+(t>0?w(t):_(-t))}),moveTo:r(function(e,t){return e=isNaN(e)?1:h(m(e),0)+1,t=isNaN(t)?1:h(m(t),0)+1,"["+t+";"+e+"H"}),bol:r(function(e){var t;return e=isNaN(e)?0:Number(e),t=e>=0?"E":"F",e=m(b(e)),arguments[1]?(e&&"F"!==t?"":"K")+c.call("[1"+t+"",e):"["+e+t}),beep:r(""),xtermSupported:r(!O),_cliColorData:r({})})}],"_xterm-match.js":["./_xterm-colors",function(e,t,n){"use strict";var r=Array.prototype.push,i=Array.prototype.reduce,a=Math.abs,f,o,c,l;for(f=e("./_xterm-colors").map(function(e){return{r:parseInt(e.slice(0,2),16),g:parseInt(e.slice(2,4),16),b:parseInt(e.slice(4),16)}}),o=f.slice(0,16),n.exports=c=[],l=0;l<8;)c.push(30+l++);for(l=0;l<8;)c.push(90+l++);r.apply(c,f.slice(16).map(function(e){var t,n=1/0;return o.every(function(r,f){var o=i.call("rgb",function(t,n){return t+=a(r[n]-e[n])},0);return o<n&&(t=f,n=o),o}),c[t]}))}],"_xterm-colors.js":function(e,t,n){"use strict";n.exports=["000000","800000","008000","808000","000080","800080","008080","c0c0c0","808080","ff0000","00ff00","ffff00","0000ff","ff00ff","00ffff","ffffff","000000","00005f","000087","0000af","0000d7","0000ff","005f00","005f5f","005f87","005faf","005fd7","005fff","008700","00875f","008787","0087af","0087d7","0087ff","00af00","00af5f","00af87","00afaf","00afd7","00afff","00d700","00d75f","00d787","00d7af","00d7d7","00d7ff","00ff00","00ff5f","00ff87","00ffaf","00ffd7","00ffff","5f0000","5f005f","5f0087","5f00af","5f00d7","5f00ff","5f5f00","5f5f5f","5f5f87","5f5faf","5f5fd7","5f5fff","5f8700","5f875f","5f8787","5f87af","5f87d7","5f87ff","5faf00","5faf5f","5faf87","5fafaf","5fafd7","5fafff","5fd700","5fd75f","5fd787","5fd7af","5fd7d7","5fd7ff","5fff00","5fff5f","5fff87","5fffaf","5fffd7","5fffff","870000","87005f","870087","8700af","8700d7","8700ff","875f00","875f5f","875f87","875faf","875fd7","875fff","878700","87875f","878787","8787af","8787d7","8787ff","87af00","87af5f","87af87","87afaf","87afd7","87afff","87d700","87d75f","87d787","87d7af","87d7d7","87d7ff","87ff00","87ff5f","87ff87","87ffaf","87ffd7","87ffff","af0000","af005f","af0087","af00af","af00d7","af00ff","af5f00","af5f5f","af5f87","af5faf","af5fd7","af5fff","af8700","af875f","af8787","af87af","af87d7","af87ff","afaf00","afaf5f","afaf87","afafaf","afafd7","afafff","afd700","afd75f","afd787","afd7af","afd7d7","afd7ff","afff00","afff5f","afff87","afffaf","afffd7","afffff","d70000","d7005f","d70087","d700af","d700d7","d700ff","d75f00","d75f5f","d75f87","d75faf","d75fd7","d75fff","d78700","d7875f","d78787","d787af","d787d7","d787ff","d7af00","d7af5f","d7af87","d7afaf","d7afd7","d7afff","d7d700","d7d75f","d7d787","d7d7af","d7d7d7","d7d7ff","d7ff00","d7ff5f","d7ff87","d7ffaf","d7ffd7","d7ffff","ff0000","ff005f","ff0087","ff00af","ff00d7","ff00ff","ff5f00","ff5f5f","ff5f87","ff5faf","ff5fd7","ff5fff","ff8700","ff875f","ff8787","ff87af","ff87d7","ff87ff","ffaf00","ffaf5f","ffaf87","ffafaf","ffafd7","ffafff","ffd700","ffd75f","ffd787","ffd7af","ffd7d7","ffd7ff","ffff00","ffff5f","ffff87","ffffaf","ffffd7","ffffff","080808","121212","1c1c1c","262626","303030","3a3a3a","444444","4e4e4e","585858","626262","6c6c6c","767676","808080","8a8a8a","949494","9e9e9e","a8a8a8","b2b2b2","bcbcbc","c6c6c6","d0d0d0","dadada","e4e4e4","eeeeee"]}},node_modules:{"es5-ext":{lib:{Object:{"descriptor.js":["./is-callable","./valid-callable","./valid-value","./copy","./map","../String/is-string","../String/prototype/contains",function(e,t,n){"use strict";var r=e("./is-callable"),i=e("./valid-callable"),a=e("./valid-value"),f=e("./copy"),o=e("./map"),c=e("../String/is-string"),l=e("../String/prototype/contains"),s=Function.prototype.bind,u=Object.defineProperty,d;d=n.exports=function(e,t){var n,r,i;return arguments.length<2&&(t=e,e=null),null==e?(n=i=!0,r=!1):(n=l.call(e,"c"),r=l.call(e,"e"),i=l.call(e,"w")),{value:t,configurable:n,enumerable:r,writable:i}},d.gs=function(e,t,n){var a,f;return r(e)?(n=null==t?void 0:i(t),t=e,e=null):(t=null==t?void 0:i(t),n=null==n?void 0:i(n)),null==e?(a=!0,f=!1):(a=l.call(e,"c"),f=l.call(e,"e")),{get:t,set:n,configurable:a,enumerable:f}},d.binder=function e(t,n){var r,l;return c(t)?(r=a(n)&&i(n.value),l=f(n),delete l.writable,delete l.value,l.get=function(){return n.value=s.call(r,this),u(this,t,n),this[t]},l):o(t,function(t,n){return e(n,t)})}}],"is-callable.js":function(e,t,n){"use strict";var r=Array.prototype.forEach.bind([]);n.exports=function(e){var t;if(!e)return!1;if(t=typeof e,"function"===t)return!0;if("object"!==t)return!1;try{return r(e),!0}catch(e){if(e instanceof TypeError)return!1;throw e}}},"valid-callable.js":["./is-callable",function(e,t,n){"use strict";var r=e("./is-callable");n.exports=function(e){if(!r(e))throw new TypeError(e+" is not a function");return e}}],"valid-value.js":function(e,t,n){"use strict";n.exports=function(e){if(null==e)throw new TypeError("Cannot use null or undefined");return e}},"copy.js":["./is-plain-object","./for-each","./extend","./valid-value",function(e,t,n){"use strict";var r=e("./is-plain-object"),i=e("./for-each"),a=e("./extend"),f=e("./valid-value"),o;o=function(e,t,n){i(t,function(t,i){var f;r(t)&&((f=n[0].indexOf(t))===-1?(n[0].push(t),n[1].push(e[i]=a({},t)),o(e[i],t,n)):e[i]=n[1][f])},t)},n.exports=function(e){var t;return(t=Object(f(e)))===e&&(t=a({},e),arguments[1]&&o(t,e,[[e],[t]])),t}}],"is-plain-object.js":function(e,t,n){"use strict";var r=Object.getPrototypeOf,i=Object.prototype,a=i.toString,f={}.toString();n.exports=function(e){var t;return!(!e||"object"!=typeof e||a.call(e)!==f)&&(t=r(e),t===i||null===r(t))}},"for-each.js":["./_iterate",function(e,t,n){"use strict";n.exports=e("./_iterate")("forEach")}],"_iterate.js":["./is-callable","./valid-callable","./valid-value",function(e,t,n){"use strict";var r=e("./is-callable"),i=e("./valid-callable"),a=e("./valid-value"),f=Function.prototype.call,o=Object.keys;n.exports=function(e){return function(t,n){var c,l=arguments[2],s=arguments[3];return t=Object(a(t)),i(n),c=o(t),s&&c.sort(r(s)?s.bind(t):void 0),c[e](function(e,r){return f.call(n,l,t[e],e,t,r)})}}}],"extend.js":["./valid-value",function(e,t,n){"use strict";var r=e("./valid-value"),i=Array.prototype.forEach,a=Array.prototype.slice,f=Object.keys,o;o=function(e){f(Object(e)).forEach(function(t){this[t]=e[t]},this)},n.exports=function(e){return i.call(arguments,r),a.call(arguments,1).forEach(o,e),e}}],"map.js":["./valid-callable","./for-each",function(e,t,n){"use strict";var r=e("./valid-callable"),i=e("./for-each"),a=Function.prototype.call;n.exports=function(e,t){var n={},f=arguments[2];return r(t),i(e,function(e,r,i,o){n[r]=a.call(t,f,e,r,i,o)}),n}}],"reduce.js":["./is-callable","./valid-callable","./valid-value",function(e,t,n){"use strict";var r=e("./is-callable"),i=e("./valid-callable"),a=e("./valid-value"),f=Function.prototype.call,o=Object.keys;n.exports=t=function e(t,n){var c,l,s,u,d;return a(t)&&i(n),t=Object(t),s=arguments[2],u=arguments[3],c=o(t),u&&c.sort(r(u)?u.bind(t):void 0),l=function(e,r,i){return d?f.call(n,void 0,e,t[r],r,t,i):(d=!0,f.call(n,void 0,t[e],t[r],r,t,i,e))},arguments.length<3||s===e.NO_INITIAL?c.reduce(l):(d=!0,c.reduce(l,s))},t.NO_INITIAL={}}],"is.js":function(e,t,n){"use strict";n.exports=function(e,t){return e===t?0!==e||1/e===1/t:e!==e&&t!==t}},"is-empty.js":["./valid-value",function(e,t,n){"use strict";var r=e("./valid-value");n.exports=function(e){var t;r(e);for(t in e)if(e.propertyIsEnumerable(t))return!1;return!0}}]},String:{"is-string.js":function(e,t,n){"use strict";var r=Object.prototype.toString,i=r.call("");n.exports=function(e){return"string"==typeof e||e&&"object"==typeof e&&(e instanceof String||r.call(e)===i)||!1}},prototype:{"contains.js":function(e,t,n){"use strict";var r=String.prototype.indexOf;n.exports=function(e){return r.call(this,e,arguments[1])>-1}},"repeat.js":["../../Object/valid-value","../../Number/to-uint",function(e,t,n){"use strict";var r=e("../../Object/valid-value"),i=e("../../Number/to-uint");n.exports=function(e){return new Array((isNaN(e)?1:i(e))+1).join(String(r(this)))}}]}},Number:{"to-uint.js":["./to-int",function(e,t,n){"use strict";var r=e("./to-int"),i=Math.max;n.exports=function(e){return i(0,r(e))}}],"to-int.js":["../Math/sign",function(e,t,n){"use strict";var r=e("../Math/sign"),i=Math.abs,a=Math.floor;n.exports=function(e){return isNaN(e)?0:(e=Number(e),0!==e&&isFinite(e)?r(e)*a(i(e)):e)}}],"is-nan.js":function(e,t,n){"use strict";n.exports=function(e){return e!==e}},"is-number.js":function(e,t,n){"use strict";var r=Object.prototype.toString,i=r.call(1);n.exports=function(e){return"number"==typeof e||e instanceof Number||"object"==typeof e&&r.call(e)===i}}},Math:{"sign.js":function(e,t,n){"use strict";n.exports=function(e){return e=Number(e),isNaN(e)||0===e?e:e>0?1:-1}}},Error:{"custom.js":["../Object/descriptor","../Object/extend",function(e,t,n){"use strict";var r=e("../Object/descriptor"),i=e("../Object/extend"),a=Error.captureStackTrace,f;f=n.exports=function e(t,n){var r=arguments[2];null!=r&&i(this,r),this.message=String(t),null!=n&&(this.code=String(n)),a&&a(this,e)},f.prototype=Object.create(Error.prototype,{constructor:r(f),name:r("CustomError")})}]},Array:{prototype:{"e-index-of.js":["../../Number/is-nan","../../Object/is","../../Object/valid-value",function(e,t,n){"use strict";var r=e("../../Number/is-nan"),i=e("../../Object/is"),a=e("../../Object/valid-value"),f=Array.prototype.indexOf;n.exports=function(e){var t;if(!r(e)&&0!==e)return f.apply(this,arguments);for(t=arguments[1]>>>0;t<a(this).length>>>0;++t)if(this.hasOwnProperty(t)&&i(e,this[t]))return t;return-1}}],"last.js":["./last-index",function(e,t,n){"use strict";var r=e("./last-index");n.exports=function(){var e;if(null!==(e=r.call(this)))return this[e]}}],"last-index.js":["../../Object/valid-value",function(e,t,n){"use strict";var r=e("../../Object/valid-value");n.exports=function(){var e,t;if(!(t=r(this).length>>>0))return null;for(e=t-1;!this.hasOwnProperty(e);)if(--e===-1)return null;return e}}]},"from.js":["../Function/is-arguments",function(e,t,n){"use strict";var r=e("../Function/is-arguments"),i=Array.isArray,a=Array.prototype.slice;n.exports=function(e){return i(e)?e:r(e)?1===e.length?[e[0]]:Array.apply(null,e):a.call(e)}}]},Function:{"is-arguments.js":function(e,t,n){"use strict";var r=Object.prototype.toString,i=r.call(function(){return arguments}());n.exports=function(e){return r.call(e)===i}}},"global.js":function(e,t,n){"use strict";n.exports=new Function("return this")()}}},memoizee:{"package.json":function(e,t){t.name="memoizee",t.version="0.2.5",t.main="lib"},lib:{"index.js":["./regular","./primitive","./ext/dispose","./ext/resolvers","./ext/async","./ext/ref-counter","./ext/method","./ext/max-age","./ext/max",function(e,t,n){"use strict";var r=e("./regular"),i=e("./primitive"),a=Function.prototype.call;e("./ext/dispose"),e("./ext/resolvers"),e("./ext/async"),e("./ext/ref-counter"),e("./ext/method"),e("./ext/max-age"),e("./ext/max"),n.exports=function(e){var t=Object(arguments[1]);return a.call(t.primitive?i:r,this,e,t)}}],"regular.js":["es5-ext/lib/Error/custom","es5-ext/lib/Array/prototype/e-index-of","event-emitter/lib/has-listeners","./_base",function(e,t,n){"use strict";var r=e("es5-ext/lib/Error/custom"),i=e("es5-ext/lib/Array/prototype/e-index-of"),a=e("event-emitter/lib/has-listeners"),f=Function.prototype.apply;n.exports=e("./_base")(function(e,t){var n,o,c,l,s,u,d,p,b,m,h,v=e.cache={},g;0===t?(n=null,l=e.get=function(){return n},s=function(){return n=1},u=function(){n=null},e.clearAll=function(){n=null,v=e.cache={}}):(d=0,1===t?(o=[],c=[],l=e.get=function(e){var t=i.call(o,e[0]);return t===-1?null:c[t]},s=function(e){return o.push(e[0]),c.push(++d),d},u=function(e){var t=i.call(c,e);t!==-1&&(o.splice(t,1),c.splice(t,1))},e.clearAll=function(){o=[],c=[],v=e.cache={}}):t===!1?(n=[],g={},l=e.get=function(e){var t=0,r=n,a,f=e.length;if(0===f)return r[f]||null;if(r=r[f]){for(;t<f-1;){if(a=i.call(r[0],e[t]),a===-1)return null;r=r[1][a],++t}return a=i.call(r[0],e[t]),a===-1?null:r[1][a]||null}return null},s=function(e){var t=0,r=n,a,f=e.length;if(0===f)r[f]=++d;else{for(r[f]||(r[f]=[[],[]]),r=r[f];t<f-1;)a=i.call(r[0],e[t]),a===-1&&(a=r[0].push(e[t])-1,r[1].push([[],[]])),r=r[1][a],++t;a=i.call(r[0],e[t]),a===-1&&(a=r[0].push(e[t])-1),r[1][a]=++d}return g[d]=e,d},u=function(e){var t=0,r=n,a,f=g[e],o=f.length,c=[];if(0===o)delete r[o];else if(r=r[o]){for(;t<o-1;){if(a=i.call(r[0],f[t]),a===-1)return;c.push(r,a),r=r[1][a],++t}if(a=i.call(r[0],f[t]),a===-1)return;for(e=r[1][a],r[0].splice(a,1),r[1].splice(a,1);!r[0].length&&c.length;)a=c.pop(),r=c.pop(),r[0].splice(a,1),r[1].splice(a,1)}delete g[e]},e.clearAll=function(){n=[],v=e.cache={},g={}}):(n=[[],[]],g={},l=e.get=function(e){for(var r=0,a=n,f;r<t-1;){if(f=i.call(a[0],e[r]),f===-1)return null;a=a[1][f],++r}return f=i.call(a[0],e[r]),f===-1?null:a[1][f]||null},s=function(e){for(var r=0,a=n,f;r<t-1;)f=i.call(a[0],e[r]),f===-1&&(f=a[0].push(e[r])-1,a[1].push([[],[]])),a=a[1][f],++r;return f=i.call(a[0],e[r]),f===-1&&(f=a[0].push(e[r])-1),a[1][f]=++d,g[d]=e,d},u=function(e){for(var r=0,a=n,f,o=[],c=g[e];r<t-1;){if(f=i.call(a[0],c[r]),f===-1)return;o.push(a,f),a=a[1][f],++r}if(f=i.call(a[0],c[r]),f!==-1){for(e=a[1][f],a[0].splice(f,1),a[1].splice(f,1);!a[0].length&&o.length;)f=o.pop(),a=o.pop(),a[0].splice(f,1),a[1].splice(f,1);delete g[e]}},e.clearAll=function(){n=[[],[]],v=e.cache={},g={}})),e.memoized=function(){var t=l(arguments),n;if(null!=t)return b&&e.emit("hit",t,arguments,this),v[t];if(n=f.call(p,this,arguments),t=l(arguments),null!=t)throw new r("Circular invocation","CIRCULAR_INVOCATION");return t=s(arguments),v[t]=n,m&&e.emit("init",t),n},e.clear=function(t){v.hasOwnProperty(t)&&(h&&e.emit("purge",t),u(t),delete v[t])},e.once("ready",function(){p=e.fn,b=a(e,"hit"),m=a(e,"init"),h=a(e,"purge")})})}],"_base.js":["es5-ext/lib/Object/valid-callable","es5-ext/lib/Object/for-each","event-emitter/lib/core",function(e,t,n){"use strict";var r=e("es5-ext/lib/Object/valid-callable"),i=e("es5-ext/lib/Object/for-each"),a=e("event-emitter/lib/core"),f;n.exports=t=function(e){return function t(n){var o,c,l,s,u;return r(n),n.memoized?n:(o=Object(arguments[1]),u=a({memoize:t,fn:n}),isNaN(o.length)?(c=n.length,o.async&&f.async&&--c):c=o.length!==!1&&o.length>>>0,e(u,c),i(f,function(e,t){e.force?e(u,o):o[t]&&e(o[t],u,o)}),n=u.fn,l=u.get,s=u.clear,u.memoized.clear=function(){s(l(arguments))},u.memoized.clearAll=function(){u.emit("purgeall"),u.clearAll()},u.memoized.memoized=!0,u.emit("ready"),u.memoized)}},f=t.ext={}}],"primitive.js":["es5-ext/lib/Error/custom","event-emitter/lib/has-listeners","./_base",function(e,t,n){"use strict";var r=e("es5-ext/lib/Error/custom"),i=e("event-emitter/lib/has-listeners"),a=function(){return""},f=function(e){return e[0]},o=Function.prototype.apply,c=Function.prototype.call;n.exports=e("./_base")(function(e,t){var n,l=e.cache={},s,u,d,p;n=1===t?e.get=f:t===!1?e.get=function(e){var t="",n,r=e.length;if(r)for(t+=e[n=0];--r;)t+=""+e[++n];else t="";return t}:t?e.get=function(e){for(var n=String(e[0]),r=0,i=t;--i;)n+=""+e[++r];return n}:e.get=a,e.memoized=1===t?function(t){var n;if(l.hasOwnProperty(t))return u&&e.emit("hit",t,arguments,this),l[t];if(n=1===arguments.length?c.call(s,this,t):o.call(s,this,arguments),l.hasOwnProperty(t))throw new r("Circular invocation","CIRCULAR_INVOCATION");return l[t]=n,d&&e.emit("init",t),n}:function(){var t=n(arguments),i;if(l.hasOwnProperty(t))return u&&e.emit("hit",t,arguments,this),l[t];if(i=o.call(e.fn,this,arguments),l.hasOwnProperty(t))throw new r("Circular invocation","CIRCULAR_INVOCATION");return l[t]=i,d&&e.emit("init",t),i},e.clear=function(t){l.hasOwnProperty(t)&&(p&&e.emit("purge",t),delete l[t])},e.clearAll=function(){l=e.cache={}},e.once("ready",function(){s=e.fn,u=i(e,"hit"),d=i(e,"init"),p=i(e,"purge")})})}],ext:{"dispose.js":["es5-ext/lib/Object/valid-callable","es5-ext/lib/Object/for-each","../_base",function(e){"use strict";var t=e("es5-ext/lib/Object/valid-callable"),n=e("es5-ext/lib/Object/for-each"),r=e("../_base").ext,i=Array.prototype.slice;r.dispose=function(e,a,f){var o,c;t(e),c=f.async&&r.async,a.on("purge"+(c?"async":""),o=c?function(t){var n=a.async[t];delete a.cache[t],e.apply(a.memoized["_memoize:context_"],i.call(n,1))}:function(t){var n=a.cache[t];delete a.cache[t],e.call(a.memoized["_memoize:context_"],n)}),c||a.on("purgeall",function(){n(a.cache,function(e,t){o(t)})})}}],"resolvers.js":["es5-ext/lib/Array/from","es5-ext/lib/Object/for-each","es5-ext/lib/Object/valid-callable","../_base",function(e){"use strict";var t=e("es5-ext/lib/Array/from"),n=e("es5-ext/lib/Object/for-each"),r=e("es5-ext/lib/Object/valid-callable"),i=Array.prototype.slice,a;a=function(e){return this.map(function(t,n){return t?t(e[n]):e[n]}).concat(i.call(e,this.length))},e("../_base").ext.resolvers=function(e,i){var f;f=t(e),f.forEach(function(e){null==e||r(e)}),f=a.bind(f),function(e){i.memoized=function(){var t;return i.memoized.args=arguments,t=e.apply(this,f(arguments)),delete i.memoized.args,t},n(e,function(t,n){i.memoized[n]=function(){return e[n].apply(this,f(arguments))}})}(i.memoized)}}],"async.js":["es5-ext/lib/Array/from","es5-ext/lib/Array/prototype/last","es5-ext/lib/Object/for-each","es5-ext/lib/Object/is-callable","next-tick","../_base",function(e){"use strict";var t=e("es5-ext/lib/Array/from"),n=e("es5-ext/lib/Array/prototype/last"),r=e("es5-ext/lib/Object/for-each"),i=e("es5-ext/lib/Object/is-callable"),a=e("next-tick"),f=Array.isArray,o=Array.prototype.slice,c=Function.prototype.apply;e("../_base").ext.async=function(e,l){var s,u;s=l.async={},function(e){var u,d,p,b,m,h;l.on("init",function(e){u.id=e,s[e]=d?[d]:[]}),l.on("hit",function(e,t,n){d&&(f(s[e])?s[e].push(d):(a(function(e,r,i,a){s[r]?(l.emit("hitasync",r,t,n),c.call(e,this.context,this)):m.apply(i,a)}.bind(s[e],d,e,p,b)),p=b=null))}),l.fn=function(){var n,r;return n=arguments,r=t(n),r.push(u=function e(t){var n,r,i,f;if(null==e.id)return void a(c.bind(e,this,arguments));for(i=s[e.id],l.cache.hasOwnProperty(e.id)?t?(delete s[e.id],l.clear(e.id)):(arguments.context=this,s[e.id]=arguments,l.emit("initasync",e.id,i.length)):delete s[e.id],n=0;r=i[n];++n)f=c.call(r,this,arguments);return f}),c.call(e,this,r)},m=l.memoized,h=function(e){return d=n.call(e),i(d)?o.call(e,0,-1):(d=null,e)},l.memoized=function(){return m.apply(p=this,b=h(arguments))},r(m,function(e,t){l.memoized[t]=function(){return m[t].apply(this,h(arguments))}})}(l.fn),l.on("purge",u=function(e){f(s[e])||(l.emit("purgeasync",e),delete s[e])}),l.on("purgeall",function(){r(l.async,function(e,t){u(t)})})}}],"ref-counter.js":["../_base",function(e){"use strict";var t=e("../_base").ext;t.refCounter=function(e,n,r){var i,a;i={},a=r.async&&t.async,n.on("init"+(a?"async":""),a?function(e,t){i[e]=t}:function(e){i[e]=1}),n.on("hit"+(a?"async":""),function(e){++i[e]}),n.on("purge"+(a?"async":""),function(e){delete i[e]}),a||n.on("purgeall",function(){i={}}),n.memoized.clearRef=function(){var e=n.get(arguments);return i.hasOwnProperty(e)?!--i[e]&&(n.clear(e),!0):null}}}],"method.js":["es5-ext/lib/Object/descriptor","es5-ext/lib/global","es5-ext/lib/Object/extend","es5-ext/lib/String/is-string","../_base",function(e){"use strict";var t=e("es5-ext/lib/Object/descriptor"),n=e("es5-ext/lib/global"),r=e("es5-ext/lib/Object/extend"),i=e("es5-ext/lib/String/is-string"),a=Object.create,f=Object.defineProperty;e("../_base").ext.method=function(e,o,c){i(c.method)?e={name:String(c.method),descriptor:{configurable:!0,writable:!0}}:(e=c.method,e.name=String(e.name),e.descriptor=null==e.descriptor?{configurable:!0,writable:!0}:Object(e.descriptor)),c=a(c),c.method=void 0,function(i){o.memoized=function(){var r;return this&&this!==n?(r=e.descriptor.value=o.memoize(o.fn.bind(this),c),f(this,e.name,e.descriptor),f(r,"_memoize:context_",t(this)),r.apply(this,arguments)):i.apply(this,arguments)},r(o.memoized,i)}(o.memoized)}}],"max-age.js":["es5-ext/lib/Number/is-number","es5-ext/lib/Object/for-each","next-tick","../_base",function(e){"use strict";var t=e("es5-ext/lib/Number/is-number"),n=e("es5-ext/lib/Object/for-each"),r=e("next-tick"),i=e("../_base").ext,a=Math.max,f=Math.min;i.maxAge=function(e,o,c){var l,s,u,d;e>>>=0,e&&(l={},s=c.async&&i.async,o.on("init"+(s?"async":""),function(t){l[t]=setTimeout(function(){o.clear(t)},e),d&&(d[t]=setTimeout(function(){delete d[t]},u))}),o.on("purge"+(s?"async":""),function(e){clearTimeout(l[e]),d&&d[e]&&(clearTimeout(d[e]),delete d[e]),delete l[e]}),c.preFetch&&(u=t(c.preFetch)?a(f(Number(c.preFetch),1),0):.333,u&&(d={},u=(1-u)*e,o.on("hit"+(s?"async":""),function(e,t,n){d[e]||(d[e]=!0,r(function(){d[e]===!0&&(delete d[e],o.clear(e),o.memoized.apply(n,t))}))}))),s||o.on("purgeall",function(){n(l,function(e){clearTimeout(e)}),l={},d&&(n(d,function(e){clearTimeout(e)}),d={})}))}}],"max.js":["../_base",function(e){"use strict";var t=e("../_base").ext;t.max=function(e,n,r){var i,a,f,o,c,l;e>>>=0,e&&(i=-1,a=f=0,o={},c={},l=r.async&&t.async,n.on("init"+(l?"async":""),function(t){o[++i]=t,c[t]=i,++f,f>e&&n.clear(o[a])}),n.on("hit"+(l?"async":""),function(e){var t=c[e];if(o[++i]=e,c[e]=i,delete o[t],a===t)for(;!o.hasOwnProperty(++a);)continue}),n.on("purge"+(l?"async":""),function(e){var t=c[e];if(delete o[t],--f,a===t)if(f)for(;!o.hasOwnProperty(++a);)continue;else i=-1,a=0}),l||n.on("purgeall",function(){i=-1,a=f=0,o={},c={}}))}}]}},node_modules:{"event-emitter":{lib:{"has-listeners.js":["es5-ext/lib/Object/is-empty","es5-ext/lib/Object/valid-value","./_id",function(e,t,n){"use strict";var r=e("es5-ext/lib/Object/is-empty"),i=e("es5-ext/lib/Object/valid-value"),a=e("./_id");n.exports=function(e){var t;return i(e),t=arguments[1],arguments.length>1?e.hasOwnProperty(a)&&e[a].hasOwnProperty(t):e.hasOwnProperty(a)&&!r(e[a])}}],"_id.js":function(e,t,n){"use strict";n.exports="_ee2_"},"core.js":["es5-ext/lib/Object/descriptor","es5-ext/lib/Object/valid-callable","./_id",function(e,t,n){"use strict";var r=e("es5-ext/lib/Object/descriptor"),i=e("es5-ext/lib/Object/valid-callable"),a=e("./_id"),f=Function.prototype.apply,o=Function.prototype.call,c=Object.create,l=Object.defineProperty,s=Object.defineProperties,u={configurable:!0,enumerable:!1,writable:!0},d,p,b,m,h,v,g,x;h=a+"l_",d=function(e,t){var n;return i(t),this.hasOwnProperty(a)?n=this[a]:(n=u.value={},l(this,a,u),u.value=null),n.hasOwnProperty(e)?n[e].hasOwnProperty(h)?n[e].push(t):(n[e]=[n[e],t])[h]=!0:n[e]=t,this},p=function(e,t){var n,r;return i(t),r=this,d.call(this,e,n=function(){b.call(r,e,n),f.call(t,this,arguments)}),n._listener=t,this},b=function(e,t){var n,r,f,o;if(i(t),!this.hasOwnProperty(a))return this;if(n=this[a],!n.hasOwnProperty(e))return this;if(r=n[e],r.hasOwnProperty(h))for(o=0;f=r[o];++o)f!==t&&f._listener!==t||(2===r.length?n[e]=r[o?0:1]:r.splice(o,1));else r!==t&&r._listener!==t||delete n[e];return this},m=function(e){var t,n,r,i,c,l;if(this.hasOwnProperty(a)&&(t=this[a],t.hasOwnProperty(e)))if(c=t[e],c.hasOwnProperty(h)){for(r=arguments.length,l=new Array(r-1),n=1;n<r;++n)l[n-1]=arguments[n];for(c=c.slice(),n=0;i=c[n];++n)f.call(i,this,l)}else switch(arguments.length){case 1:o.call(c,this);break;case 2:o.call(c,this,arguments[1]);break;case 3:o.call(c,this,arguments[1],arguments[2]);break;default:for(r=arguments.length,l=new Array(r-1),n=1;n<r;++n)l[n-1]=arguments[n];f.call(c,this,l)}},v={on:d,once:p,off:b,emit:m},g={on:r(d),once:r(p),off:r(b),emit:r(m)},x=s({},g),n.exports=t=function(e){return null==e?c(x):s(Object(e),g)},t.methods=v}]}},"next-tick":{"package.json":function(e,t){t.name="next-tick",t.version="0.1.0",t.main="lib/next-tick"},lib:{"next-tick.js":function(e,t,n){"use strict";"undefined"!=typeof o&&o&&"function"==typeof o.nextTick?n.exports=o.nextTick:"function"==typeof setImmediate?n.exports=function(e){setImmediate(e)}:n.exports=function(e){setTimeout(e,0)}}}}}}}}}}}}},{extensions:[".js",".json"]});s("./node_modules/meteor/logging/logging.js"),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.logging={},{Log:c})}();
!function(){var a=Package.tracker.Tracker,e=Package.tracker.Deps;"undefined"==typeof Package&&(Package={}),function(a,e){for(var c in e)c in a||(a[c]=e[c])}(Package.deps={},{Tracker:a,Deps:e})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.underscore._,i=Package.tracker.Tracker,r=Package.tracker.Deps,c=Package.ejson.EJSON,s=Package.modules.meteorInstall,o=Package.modules.Buffer,u=Package.modules.process,d=Package["ecmascript-runtime"].Symbol,f=Package["ecmascript-runtime"].Map,l=Package["ecmascript-runtime"].Set,k=Package["babel-runtime"].meteorBabelHelpers,p=Package.promise.Promise,y,g=s({node_modules:{meteor:{"reactive-dict":{"reactive-dict.js":["babel-runtime/helpers/typeof",function(e,t,n){var r;n.import("babel-runtime/helpers/typeof",{default:function(e){r=e}});var s=function e(t){return void 0===t?"undefined":c.stringify(t)},o=function e(t){if(void 0!==t&&"undefined"!==t)return c.parse(t)},u=function e(t){t&&t.changed()};y=function(e){function t(t){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(e){if(e)if("string"==typeof e)y._registerDictForMigrate(e,this),this.keys=y._loadMigratedDict(e)||{},this.name=e;else{if("object"!==("undefined"==typeof e?"undefined":r(e)))throw new Error("Invalid ReactiveDict argument: "+e);this.keys=e}else this.keys={};this.allDeps=new i.Dependency,this.keyDeps={},this.keyValueDeps={}}),a.extend(y.prototype,{set:function(){function e(e,t){var n=this;if("object"===("undefined"==typeof e?"undefined":r(e))&&void 0===t)return void n._setObject(e);var i=e;t=s(t);var c=a.has(n.keys,i),o=c?n.keys[i]:"undefined",d=t!==o;n.keys[i]=t,!d&&c||n.allDeps.changed(),d&&(u(n.keyDeps[i]),n.keyValueDeps[i]&&(u(n.keyValueDeps[i][o]),u(n.keyValueDeps[i][t])))}return e}(),setDefault:function(){function e(e,t){var n=this;if("object"===("undefined"==typeof e?"undefined":r(e))&&void 0===t)return void n._setDefaultObject(e);var i=e;a.has(n.keys,i)||n.set(i,t)}return e}(),get:function(){function e(e){var t=this;return t._ensureKey(e),t.keyDeps[e].depend(),o(t.keys[e])}return e}(),equals:function(){function e(e,t){var n=this,r=null;if(Package.mongo&&(r=Package.mongo.Mongo.ObjectID),!("string"==typeof t||"number"==typeof t||"boolean"==typeof t||"undefined"==typeof t||t instanceof Date||r&&t instanceof r||null===t))throw new Error("ReactiveDict.equals: value must be scalar");var u=s(t);if(i.active){n._ensureKey(e),a.has(n.keyValueDeps[e],u)||(n.keyValueDeps[e][u]=new i.Dependency);var d=n.keyValueDeps[e][u].depend();d&&i.onInvalidate(function(){n.keyValueDeps[e][u].hasDependents()||delete n.keyValueDeps[e][u]})}var f=void 0;return a.has(n.keys,e)&&(f=o(n.keys[e])),c.equals(f,t)}return e}(),all:function(){function e(){this.allDeps.depend();var e={};return a.each(this.keys,function(t,n){e[n]=o(t)}),e}return e}(),clear:function(){function e(){var e=this,t=e.keys;e.keys={},e.allDeps.changed(),a.each(t,function(t,n){u(e.keyDeps[n]),e.keyValueDeps[n]&&(u(e.keyValueDeps[n][t]),u(e.keyValueDeps[n].undefined))})}return e}(),delete:function(){function e(e){var t=this,n=!1;if(a.has(t.keys,e)){var i=t.keys[e];delete t.keys[e],u(t.keyDeps[e]),t.keyValueDeps[e]&&(u(t.keyValueDeps[e][i]),u(t.keyValueDeps[e].undefined)),t.allDeps.changed(),n=!0}return n}return e}(),_setObject:function(){function e(e){var t=this;a.each(e,function(e,n){t.set(n,e)})}return e}(),_setDefaultObject:function(){function e(e){var t=this;a.each(e,function(e,n){t.setDefault(n,e)})}return e}(),_ensureKey:function(){function e(e){var t=this;e in t.keyDeps||(t.keyDeps[e]=new i.Dependency,t.keyValueDeps[e]={})}return e}(),_getMigrationData:function(){function e(){return this.keys}return e}()})}],"migration.js":function(){if(y._migratedDictData={},y._dictsToMigrate={},y._loadMigratedDict=function(e){return a.has(y._migratedDictData,e)?y._migratedDictData[e]:null},y._registerDictForMigrate=function(e,t){if(a.has(y._dictsToMigrate,e))throw new Error("Duplicate ReactiveDict name: "+e);y._dictsToMigrate[e]=t},e.isClient&&Package.reload){var t=Package.reload.Reload._migrationData("reactive-dict");t&&t.dicts&&(y._migratedDictData=t.dicts),Package.reload.Reload._onMigrate("reactive-dict",function(){var e=y._dictsToMigrate,t={};for(var n in k.sanitizeForInObject(e))t[n]=e[n]._getMigrationData();return[!0,{dicts:t}]})}}}}}},{extensions:[".js",".json"]});g("./node_modules/meteor/reactive-dict/reactive-dict.js"),g("./node_modules/meteor/reactive-dict/migration.js"),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["reactive-dict"]={},{ReactiveDict:y})}();
!function(){var e=Package.meteor.Meteor,a=Package.meteor.global,c=Package.meteor.meteorEnv,n=Package.underscore._,o=Package["reactive-dict"].ReactiveDict,i=Package.ejson.EJSON,t;(function(){t=new o("session")}).call(this),"undefined"==typeof Package&&(Package={}),function(e,a){for(var c in a)c in e||(e[c]=a[c])}(Package.session={},{Session:t})}();
!function(){var a=Package["ddp-client"].DDP,e;"undefined"==typeof Package&&(Package={}),function(a,e){for(var n in e)n in a||(a[n]=e[n])}(Package.livedata={},{DDP:a,LivedataTest:e})}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,r=Package.meteor.meteorEnv,o=Package.tracker.Tracker,t=Package.tracker.Deps,i=Package["mongo-id"].MongoID,a=Package["diff-sequence"].DiffSequence,c=Package.underscore._,f=Package.random.Random,u,d,s,l;(function(){var e=function(){u._suppressWarnings?u._suppressWarnings--:("undefined"!=typeof console&&console.warn&&console.warn.apply(console,arguments),u._loggedWarnings++)},n=i.idStringify,r=i.idParse;u={_suppressWarnings:0,_loggedWarnings:0,observe:function(e,n){var r=null,i=null,f=[],u=o.autorun(function(){var u=e();o.nonreactive(function(){var e;if(i&&(f=c.map(r.fetch(),function(e){return{_id:e._id,item:e}}),i.stop(),i=null),u)if(u instanceof Array)e=s(f,u,n);else{if(!a(u))throw t();var o=l(f,u,n);e=o[0],i=o[1]}else e=d(f,n);v(f,e,n),r=u,f=e})});return{stop:function(){u.stop(),i&&i.stop()}}},fetch:function(e){if(e){if(e instanceof Array)return e;if(a(e))return e.fetch();throw t()}return[]}};var t=function(){return new Error("{{#each}} currently only accepts arrays, cursors or falsey values.")},a=function(e){return e&&c.isObject(e)&&c.isFunction(e.observe)&&c.isFunction(e.fetch)},v=function(e,o,t){var i=Package["diff-sequence"].DiffSequence.diffQueryOrderedChanges,a=[],f=[],u={},d={},s={},l=e.length;c.each(o,function(e,r){f.push({_id:e._id}),d[n(e._id)]=r}),c.each(e,function(e,r){a.push({_id:e._id}),u[n(e._id)]=r,s[n(e._id)]=r}),i(a,f,{addedBefore:function(e,r,i){var a=i?s[n(i)]:l;i&&c.each(s,function(e,n){e>=a&&s[n]++}),l++,s[n(e)]=a,t.addedAt(e,o[d[n(e)]].item,a,i)},movedBefore:function(e,r){if(e!==r){var i=s[n(e)],a=r?s[n(r)]:l;a>i&&a--,c.each(s,function(e,n){i<e&&e<a?s[n]--:a<=e&&e<i&&s[n]++}),s[n(e)]=a,t.movedTo(e,o[d[n(e)]].item,i,a,r)}},removed:function(r){var o=s[n(r)];c.each(s,function(e,n){e>=o&&s[n]--}),delete s[n(r)],l--,t.removedAt(r,e[u[n(r)]].item,o)}}),c.each(d,function(n,i){var a=r(i);if(c.has(u,i)){var f=o[n].item,d=e[u[i]].item;"object"!=typeof f&&f===d||t.changedAt(a,f,d,n)}})};d=function(e,n){return[]},s=function(r,o,t){var i={},a=c.map(o,function(r,t){var a;if("string"==typeof r)a="-"+r;else if("number"==typeof r||"boolean"==typeof r||void 0===r||null===r)a=r;else{if("object"!=typeof r)throw new Error("{{#each}} doesn't support arrays with elements of type "+typeof r);a=r&&"_id"in r?r._id:t}var c=n(a);return i[c]?(r&&"object"==typeof r&&"_id"in r&&e("duplicate id "+a+" in",o),a=f.id()):i[c]=!0,{_id:a,item:r}});return a},l=function(e,n,r){var o=!0,t=[],i=n.observe({addedAt:function(e,n,i){if(o){if(null!==i)throw new Error("Expected initial data from observe in order");t.push({_id:e._id,item:e})}else r.addedAt(e._id,e,n,i)},changedAt:function(e,n,o){r.changedAt(e._id,e,n,o)},removedAt:function(e,n){r.removedAt(e._id,e,n)},movedTo:function(e,n,o,t){r.movedTo(e._id,e,n,o,t)}});return o=!1,[t,i]}}).call(this),"undefined"==typeof Package&&(Package={}),function(e,n){for(var r in n)r in e||(e[r]=n[r])}(Package["observe-sequence"]={},{ObserveSequence:u})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,i=Package.meteor.meteorEnv,r=Package.tracker.Tracker,n=Package.tracker.Deps,o,a,s;(function(){o={},a=function(t){return t},s=Array.prototype.slice}).call(this),function(){var t=Object.prototype.hasOwnProperty,e=function(e,i){for(var r in i)t.call(i,r)&&(e[r]=i[r]);return e};o.Visitor=function(t){e(this,t)},o.Visitor.def=function(t){e(this.prototype,t)},o.Visitor.extend=function(t){var i=this,r=function t(){o.Visitor.apply(this,arguments)};return r.prototype=new i,r.extend=i.extend,r.def=i.def,t&&e(r.prototype,t),r},o.Visitor.def({visit:function(t){if(null==t)return this.visitNull.apply(this,arguments);if("object"==typeof t){if(t.htmljsType)switch(t.htmljsType){case o.Tag.htmljsType:return this.visitTag.apply(this,arguments);case o.CharRef.htmljsType:return this.visitCharRef.apply(this,arguments);case o.Comment.htmljsType:return this.visitComment.apply(this,arguments);case o.Raw.htmljsType:return this.visitRaw.apply(this,arguments);default:throw new Error("Unknown htmljs type: "+t.htmljsType)}return o.isArray(t)?this.visitArray.apply(this,arguments):this.visitObject.apply(this,arguments)}if("string"==typeof t||"boolean"==typeof t||"number"==typeof t)return this.visitPrimitive.apply(this,arguments);if("function"==typeof t)return this.visitFunction.apply(this,arguments);throw new Error("Unexpected object in htmljs: "+t)},visitNull:function(t){},visitPrimitive:function(t){},visitArray:function(t){},visitComment:function(t){},visitCharRef:function(t){},visitRaw:function(t){},visitTag:function(t){},visitObject:function(t){throw new Error("Unexpected object in htmljs: "+t)},visitFunction:function(t){throw new Error("Unexpected function in htmljs: "+t)}}),o.TransformingVisitor=o.Visitor.extend(),o.TransformingVisitor.def({visitNull:a,visitPrimitive:a,visitArray:function(t){for(var e=s.call(arguments),i=t,r=0;r<t.length;r++){var n=t[r];e[0]=n;var o=this.visit.apply(this,e);o!==n&&(i===t&&(i=t.slice()),i[r]=o)}return i},visitComment:a,visitCharRef:a,visitRaw:a,visitObject:a,visitFunction:a,visitTag:function(t){var e=t.children,i=s.call(arguments);i[0]=e;var r=this.visitChildren.apply(this,i),n=t.attrs;i[0]=n;var a=this.visitAttributes.apply(this,i);if(a===n&&r===e)return t;var l=o.getTag(t.tagName).apply(null,r);return l.attrs=a,l},visitChildren:function(t){return this.visitArray.apply(this,arguments)},visitAttributes:function(t){if(o.isArray(t)){for(var i=s.call(arguments),r=t,n=0;n<t.length;n++){var a=t[n];i[0]=a;var l=this.visitAttributes.apply(this,i);l!==a&&(r===t&&(r=t.slice()),r[n]=l)}return r}if(t&&o.isConstructedObject(t))throw new Error("The basic HTML.TransformingVisitor does not support foreign objects in attributes. Define a custom visitAttributes for this case.");var u=t,f=u;if(u){var c=[null,null];c.push.apply(c,arguments);for(var h in u){var p=u[h];c[0]=h,c[1]=p;var m=this.visitAttribute.apply(this,c);m!==p&&(f===u&&(f=e({},u)),f[h]=m)}}return f},visitAttribute:function(t,e,i){var r=s.call(arguments,2);return r[0]=e,this.visit.apply(this,r)}}),o.ToTextVisitor=o.Visitor.extend(),o.ToTextVisitor.def({visitNull:function(t){return""},visitPrimitive:function(t){var e=String(t);return this.textMode===o.TEXTMODE.RCDATA?e.replace(/&/g,"&amp;").replace(/</g,"&lt;"):this.textMode===o.TEXTMODE.ATTRIBUTE?e.replace(/&/g,"&amp;").replace(/"/g,"&quot;"):e},visitArray:function(t){for(var e=[],i=0;i<t.length;i++)e.push(this.visit(t[i]));return e.join("")},visitComment:function(t){throw new Error("Can't have a comment here")},visitCharRef:function(t){return this.textMode===o.TEXTMODE.RCDATA||this.textMode===o.TEXTMODE.ATTRIBUTE?t.html:t.str},visitRaw:function(t){return t.value},visitTag:function(t){return this.visit(this.toHTML(t))},visitObject:function(t){throw new Error("Unexpected object in htmljs in toText: "+t)},toHTML:function(t){return o.toHTML(t)}}),o.ToHTMLVisitor=o.Visitor.extend(),o.ToHTMLVisitor.def({visitNull:function(t){return""},visitPrimitive:function(t){var e=String(t);return e.replace(/&/g,"&amp;").replace(/</g,"&lt;")},visitArray:function(t){for(var e=[],i=0;i<t.length;i++)e.push(this.visit(t[i]));return e.join("")},visitComment:function(t){return"<!--"+t.sanitizedValue+"-->"},visitCharRef:function(t){return t.html},visitRaw:function(t){return t.value},visitTag:function(t){var e=[],i=t.tagName,r=t.children,n=t.attrs;if(n){n=o.flattenAttributes(n);for(var a in n)if("value"===a&&"textarea"===i)r=[n[a],r];else{var s=this.toText(n[a],o.TEXTMODE.ATTRIBUTE);e.push(" "+a+'="'+s+'"')}}var l="<"+i+e.join("")+">",u=[],f;if("textarea"===i){for(var c=0;c<r.length;c++)u.push(this.toText(r[c],o.TEXTMODE.RCDATA));f=u.join(""),"\n"===f.slice(0,1)&&(f="\n"+f)}else{for(var c=0;c<r.length;c++)u.push(this.visit(r[c]));f=u.join("")}var h=l+f;return!r.length&&o.isVoidElement(i)||(h+="</"+i+">"),h},visitObject:function(t){throw new Error("Unexpected object in htmljs in toHTML: "+t)},toText:function(t,e){return o.toText(t,e)}})}.call(this),function(){o.Tag=function(){},o.Tag.prototype.tagName="",o.Tag.prototype.attrs=null,o.Tag.prototype.children=Object.freeze?Object.freeze([]):[],o.Tag.prototype.htmljsType=o.Tag.htmljsType=["Tag"];var t=function(t){var e=function(){var t=this instanceof o.Tag?this:new e,i=0,r=arguments.length&&arguments[0];if(r&&"object"==typeof r)if(o.isConstructedObject(r)){if(r instanceof o.Attrs){var n=r.value;1===n.length?t.attrs=n[0]:n.length>1&&(t.attrs=n),i++}}else t.attrs=r,i++;return i<arguments.length&&(t.children=s.call(arguments,i)),t};return e.prototype=new o.Tag,e.prototype.constructor=e,e.prototype.tagName=t,e},e=o.Attrs=function(){var t=this instanceof e?this:new e;return t.value=s.call(arguments),t};o.getTag=function(e){var i=o.getSymbolName(e);if(i===e)throw new Error("Use the lowercase or camelCase form of '"+e+"' here");return o[i]||(o[i]=t(e)),o[i]},o.ensureTag=function(t){o.getTag(t)},o.isTagEnsured=function(t){return o.isKnownElement(t)},o.getSymbolName=function(t){return t.toUpperCase().replace(/-/g,"_")},o.knownElementNames="a abbr acronym address applet area article aside audio b base basefont bdi bdo big blockquote body br button canvas caption center cite code col colgroup command data datagrid datalist dd del details dfn dir div dl dt em embed eventsource fieldset figcaption figure font footer form frame frameset h1 h2 h3 h4 h5 h6 head header hgroup hr html i iframe img input ins isindex kbd keygen label legend li link main map mark menu meta meter nav noframes noscript object ol optgroup option output p param pre progress q rp rt ruby s samp script section select small source span strike strong style sub summary sup table tbody td textarea tfoot th thead time title tr track tt u ul var video wbr".split(" "),o.knownSVGElementNames="altGlyph altGlyphDef altGlyphItem animate animateColor animateMotion animateTransform circle clipPath color-profile cursor defs desc ellipse feBlend feColorMatrix feComponentTransfer feComposite feConvolveMatrix feDiffuseLighting feDisplacementMap feDistantLight feFlood feFuncA feFuncB feFuncG feFuncR feGaussianBlur feImage feMerge feMergeNode feMorphology feOffset fePointLight feSpecularLighting feSpotLight feTile feTurbulence filter font font-face font-face-format font-face-name font-face-src font-face-uri foreignObject g glyph glyphRef hkern image line linearGradient marker mask metadata missing-glyph path pattern polygon polyline radialGradient rect set stop style svg switch symbol text textPath title tref tspan use view vkern".split(" "),o.knownElementNames=o.knownElementNames.concat(o.knownSVGElementNames),o.voidElementNames="area base br col command embed hr img input keygen link meta param source track wbr".split(" ");var i={yes:!0},r=function(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=i;return e},n=r(o.voidElementNames),a=r(o.knownElementNames),l=r(o.knownSVGElementNames);o.isKnownElement=function(t){return a[t]===i},o.isKnownSVGElement=function(t){return l[t]===i},o.isVoidElement=function(t){return n[t]===i};for(var u=0;u<o.knownElementNames.length;u++)o.ensureTag(o.knownElementNames[u]);var f=o.CharRef=function(t){if(!(this instanceof f))return new f(t);if(!(t&&t.html&&t.str))throw new Error("HTML.CharRef must be constructed with ({html:..., str:...})");this.html=t.html,this.str=t.str};f.prototype.htmljsType=f.htmljsType=["CharRef"];var c=o.Comment=function(t){if(!(this instanceof c))return new c(t);if("string"!=typeof t)throw new Error("HTML.Comment must be constructed with a string");this.value=t,this.sanitizedValue=t.replace(/^-|--+|-$/g,"")};c.prototype.htmljsType=c.htmljsType=["Comment"];var h=o.Raw=function(t){if(!(this instanceof h))return new h(t);if("string"!=typeof t)throw new Error("HTML.Raw must be constructed with a string");this.value=t};h.prototype.htmljsType=h.htmljsType=["Raw"],o.isArray=function(t){return t instanceof Array},o.isConstructedObject=function(t){return t&&"object"==typeof t&&t.constructor!==Object&&"function"==typeof t.constructor&&t instanceof t.constructor},o.isNully=function(t){if(null==t)return!0;if(o.isArray(t)){for(var e=0;e<t.length;e++)if(!o.isNully(t[e]))return!1;return!0}return!1},o.isValidAttributeName=function(t){return/^[:_A-Za-z][:_A-Za-z0-9.\-]*/.test(t)},o.flattenAttributes=function(t){if(!t)return t;var e=o.isArray(t);if(e&&0===t.length)return null;for(var i={},r=0,n=e?t.length:1;r<n;r++){var a=e?t[r]:t;if("object"!=typeof a||o.isConstructedObject(a))throw new Error("Expected plain JS object as attrs, found: "+a);for(var s in a){if(!o.isValidAttributeName(s))throw new Error("Illegal HTML attribute name: "+s);var l=a[s];o.isNully(l)||(i[s]=l)}}return i},o.toHTML=function(t){return(new o.ToHTMLVisitor).visit(t)},o.TEXTMODE={STRING:1,RCDATA:2,ATTRIBUTE:3},o.toText=function(t,e){if(!e)throw new Error("textMode required for HTML.toText");if(e!==o.TEXTMODE.STRING&&e!==o.TEXTMODE.RCDATA&&e!==o.TEXTMODE.ATTRIBUTE)throw new Error("Unknown textMode: "+e);var i=new o.ToTextVisitor({textMode:e});return i.visit(t)}}.call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var i in e)i in t||(t[i]=e[i])}(Package.htmljs={},{HTML:o})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.jquery.$,i=Package.jquery.jQuery,a=Package.tracker.Tracker,o=Package.tracker.Deps,s=Package.check.check,l=Package.check.Match,c=Package.underscore._,u=Package["observe-sequence"].ObserveSequence,d=Package["reactive-var"].ReactiveVar,p=Package.htmljs.HTML,f,h,m,w,v;(function(){f={},f._escape=function(){var e={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","&":"&amp;"},t=function(t){return e[t]};return function(e){return e.replace(/[&<>"'`]/g,t)}}(),f._warn=function(e){e="Warning: "+e,"undefined"!=typeof console&&console.warn&&console.warn(e)};var e=Function.prototype.bind;e?f._bind=function(t,n){if(2===arguments.length)return e.call(t,n);for(var r=new Array(arguments.length),i=0;i<r.length;i++)r[i]=arguments[i];return e.apply(t,r.slice(1))}:f._bind=c.bind}).call(this),function(){var e={};f._DOMBackend=e;var t="undefined"!=typeof i?i:"undefined"!=typeof Package?Package.jquery&&Package.jquery.jQuery:null;if(!t)throw new Error("jQuery not found");e._$jq=t,e.parseHTML=function(e){return t.parseHTML(e)||[]},e.Events={delegateEvents:function(e,n,r,i){t(e).on(n,r,i)},undelegateEvents:function(e,n,r){t(e).off(n,"**",r)},bindEventCapturer:function(n,r,i,a){var o=t(n),s=function(e){e=t.event.fix(e),e.currentTarget=e.target;var r=t(e.currentTarget);r.is(o.find(i))&&a.call(n,e)};a._meteorui_wrapper=s,r=e.Events.parseEventType(r),n.addEventListener(r,s,!0)},unbindEventCapturer:function(t,n,r){n=e.Events.parseEventType(n),t.removeEventListener(n,r._meteorui_wrapper,!0)},parseEventType:function(e){var t=e.indexOf(".");return t>=0?e.slice(0,t):e}};var n=function(){},r=function(e){this.next=this,this.prev=this,this.func=e};r.prototype.linkBefore=function(e){this.prev=e.prev,this.next=e,e.prev.next=this,e.prev=this},r.prototype.unlink=function(){this.prev.next=this.next,this.next.prev=this.prev},r.prototype.go=function(){var e=this.func;e&&e()},r.prototype.stop=r.prototype.unlink,e.Teardown={_JQUERY_EVENT_NAME:"blaze_teardown_watcher",_CB_PROP:"$blaze_teardown_callbacks",onElementTeardown:function(i,a){var o=new r(a),s=e.Teardown._CB_PROP;return i[s]||(i[s]=new r,t(i).on(e.Teardown._JQUERY_EVENT_NAME,n)),o.linkBefore(i[s]),o},tearDownElement:function(e){for(var n=[],r=e.getElementsByTagName("*"),i=0;i<r.length;i++)n.push(r[i]);n.push(e),t.cleanData(n)}},t.event.special[e.Teardown._JQUERY_EVENT_NAME]={setup:function(){},teardown:function(){var t=this,n=t[e.Teardown._CB_PROP];if(n){for(var r=n.next;r!==n;)r.go(),r=r.next;n.go(),t[e.Teardown._CB_PROP]=null}}},e.findBySelector=function(e,n){return t(e,n)}}.call(this),function(){var e=Object.freeze?Object.freeze([]):[];f._DOMRange=function(n){if(!(this instanceof t))return new t(n);var r=n||e;if(!r||"number"!=typeof r.length)throw new Error("Expected array");for(var i=0;i<r.length;i++)this._memberIn(r[i]);this.members=r,this.emptyRangePlaceholder=null,this.attached=!1,this.parentElement=null,this.parentRange=null,this.attachedCallbacks=e};var t=f._DOMRange;t._USE_COMMENT_PLACEHOLDERS=function(){var e=!1,t=document.createTextNode("");try{t.someProp=!0}catch(t){e=!0}return e}(),t._insert=function(e,n,r,i){var a=e;a instanceof t?a.attach(n,r,i):i?t._moveNodeWithHooks(a,n,r):t._insertNodeWithHooks(a,n,r)},t._remove=function(e){var n=e;n instanceof t?n.detach():t._removeNodeWithHooks(n)},t._removeNodeWithHooks=function(e){e.parentNode&&(1===e.nodeType&&e.parentNode._uihooks&&e.parentNode._uihooks.removeElement?e.parentNode._uihooks.removeElement(e):e.parentNode.removeChild(e))},t._insertNodeWithHooks=function(e,t,n){n=n||null,1===e.nodeType&&t._uihooks&&t._uihooks.insertElement?t._uihooks.insertElement(e,n):t.insertBefore(e,n)},t._moveNodeWithHooks=function(e,t,n){e.parentNode===t&&(n=n||null,1===e.nodeType&&t._uihooks&&t._uihooks.moveElement?t._uihooks.moveElement(e,n):t.insertBefore(e,n))},t.forElement=function(e){if(1!==e.nodeType)throw new Error("Expected element, found: "+e);for(var t=null;e&&!t;)t=e.$blaze_range||null,t||(e=e.parentNode);return t},t.prototype.attach=function(e,n,r,i){if((r||i)&&(this.parentElement!==e||!this.attached))throw new Error("Can only move or replace an attached DOMRange, and only under the same parent element");var a=this.members;if(a.length){this.emptyRangePlaceholder=null;for(var o=0;o<a.length;o++)t._insert(a[o],e,n,r)}else{var s=t._USE_COMMENT_PLACEHOLDERS?document.createComment(""):document.createTextNode("");this.emptyRangePlaceholder=s,e.insertBefore(s,n||null)}if(this.attached=!0,this.parentElement=e,!r&&!i)for(var o=0;o<this.attachedCallbacks.length;o++){var l=this.attachedCallbacks[o];l.attached&&l.attached(this,e)}},t.prototype.setMembers=function(e){var t=e;if(!t||"number"!=typeof t.length)throw new Error("Expected array");for(var n=this.members,r=0;r<n.length;r++)this._memberOut(n[r]);for(var r=0;r<t.length;r++)this._memberIn(t[r]);if(this.attached){if(t.length||n.length){var i=this.lastNode().nextSibling,a=this.parentElement;this.detach(!0),this.members=t,this.attach(a,i,!1,!0)}}else this.members=t},t.prototype.firstNode=function(){if(!this.attached)throw new Error("Must be attached");if(!this.members.length)return this.emptyRangePlaceholder;var e=this.members[0];return e instanceof t?e.firstNode():e},t.prototype.lastNode=function(){if(!this.attached)throw new Error("Must be attached");if(!this.members.length)return this.emptyRangePlaceholder;var e=this.members[this.members.length-1];return e instanceof t?e.lastNode():e},t.prototype.detach=function(e){if(!this.attached)throw new Error("Must be attached");var n=this.parentElement,r=this.members;if(r.length)for(var i=0;i<r.length;i++)t._remove(r[i]);else{var a=this.emptyRangePlaceholder;this.parentElement.removeChild(a),this.emptyRangePlaceholder=null}if(!e){this.attached=!1,this.parentElement=null;for(var i=0;i<this.attachedCallbacks.length;i++){var o=this.attachedCallbacks[i];o.detached&&o.detached(this,n)}}},t.prototype.addMember=function(e,n,r){var i=this.members;if(!(n>=0&&n<=i.length))throw new Error("Bad index in range.addMember: "+n);if(r||this._memberIn(e),this.attached)if(0===i.length)this.setMembers([e]);else{var a;if(n===i.length)a=this.lastNode().nextSibling;else{var o=i[n];a=o instanceof t?o.firstNode():o}i.splice(n,0,e),t._insert(e,this.parentElement,a,r)}else i.splice(n,0,e)},t.prototype.removeMember=function(n,r){var i=this.members;if(!(n>=0&&n<i.length))throw new Error("Bad index in range.removeMember: "+n);if(r)i.splice(n,1);else{var a=i[n];this._memberOut(a),1===i.length?this.setMembers(e):(i.splice(n,1),this.attached&&t._remove(a))}},t.prototype.moveMember=function(e,t){var n=this.members[e];this.removeMember(e,!0),this.addMember(n,t,!0)},t.prototype.getMember=function(e){var t=this.members;if(!(e>=0&&e<t.length))throw new Error("Bad index in range.getMember: "+e);return this.members[e]},t.prototype._memberIn=function(e){e instanceof t?e.parentRange=this:1===e.nodeType&&(e.$blaze_range=this)},t._destroy=function(e,n){e instanceof t?e.view&&f._destroyView(e.view,n):n||1!==e.nodeType||e.$blaze_range&&(f._destroyNode(e),e.$blaze_range=null)},t.prototype._memberOut=t._destroy,t.prototype.destroyMembers=function(e){for(var t=this.members,n=0;n<t.length;n++)this._memberOut(t[n],e)},t.prototype.destroy=function(e){t._destroy(this,e)},t.prototype.containsElement=function(e){if(!this.attached)throw new Error("Must be attached");if(!f._elementContains(this.parentElement,e))return!1;for(;e.parentNode!==this.parentElement;)e=e.parentNode;for(var t=e.$blaze_range;t&&t!==this;)t=t.parentRange;return t===this},t.prototype.containsRange=function(e){if(!this.attached)throw new Error("Must be attached");if(!e.attached)return!1;if(e.parentElement!==this.parentElement)return this.containsElement(e.parentElement);if(e===this)return!1;for(;e&&e!==this;)e=e.parentRange;return e===this},t.prototype.onAttached=function(e){this.onAttachedDetached({attached:e})},t.prototype.onAttachedDetached=function(t){this.attachedCallbacks===e&&(this.attachedCallbacks=[]),this.attachedCallbacks.push(t)},t.prototype.$=function(e){var t=this,n=this.parentElement;if(!n)throw new Error("Can't select in removed DomRange");if(11===n.nodeType)throw new Error("Can't use $ on an offscreen range");var r=f._DOMBackend.findBySelector(e,n),i=function(e){return"number"==typeof e&&(e=this),t.containsElement(e)};if(r.filter)r=r.filter(i);else{for(var a=[],o=0;o<r.length;o++){var s=r[o];i(s)&&a.push(s)}r=a}return r},f._elementContains=function(e,t){return 1===e.nodeType&&(e!==t&&(e.compareDocumentPosition?16&e.compareDocumentPosition(t):(t=t.parentNode,!(!t||1!==t.nodeType)&&(e===t||e.contains(t)))))}}.call(this),function(){var e=f._EventSupport={},t=f._DOMBackend,n=e.eventsToDelegate={blur:1,change:1,click:1,focus:1,focusin:1,focusout:1,reset:1,submit:1},r=e.EVENT_MODE={TBD:0,BUBBLING:1,CAPTURING:2},i=1,a=function(e,a,o,s,l){this.elem=e,this.type=a,this.selector=o,this.handler=s,this.recipient=l,this.id=i++,this.mode=r.TBD,this.delegatedHandler=function(e){return function(t){if(e.selector||t.currentTarget===t.target)return e.handler.apply(e.recipient,arguments)}}(this);var u=e.addEventListener&&!c.has(n,t.Events.parseEventType(a));u?this.capturingHandler=function(e){return function(n){if(e.mode===r.TBD){if(n.bubbles)return e.mode=r.BUBBLING,void t.Events.unbindEventCapturer(e.elem,e.type,e.capturingHandler);e.mode=r.CAPTURING,t.Events.undelegateEvents(e.elem,e.type,e.delegatedHandler)}e.delegatedHandler(n)}}(this):this.mode=r.BUBBLING};e.HandlerRec=a,a.prototype.bind=function(){this.mode!==r.BUBBLING&&t.Events.bindEventCapturer(this.elem,this.type,this.selector||"*",this.capturingHandler),this.mode!==r.CAPTURING&&t.Events.delegateEvents(this.elem,this.type,this.selector||"*",this.delegatedHandler)},a.prototype.unbind=function(){this.mode!==r.BUBBLING&&t.Events.unbindEventCapturer(this.elem,this.type,this.capturingHandler),this.mode!==r.CAPTURING&&t.Events.undelegateEvents(this.elem,this.type,this.delegatedHandler)},e.listen=function(e,t,n,r,i,o){try{e=e}finally{}var s=[];t.replace(/[^ \/]+/g,function(e){s.push(e)});for(var l=[],c=0,u=s.length;c<u;c++){var d=s[c],p=e.$blaze_events;p||(p=e.$blaze_events={});var f=p[d];f||(f=p[d]={},f.handlers=[]);var h=f.handlers,m=new a(e,d,n,r,i);if(l.push(m),m.bind(),h.push(m),o)for(var w=o(i);w;w=o(w))for(var v=0,_=h.length;v<_;v++){var g=h[v];g.recipient===w&&(g.unbind(),g.bind(),h.splice(v,1),h.push(g),v--,_--)}}return{stop:function(){var t=e.$blaze_events;if(t){for(var n=0;n<l.length;n++){var r=l[n],i=t[r.type];if(i)for(var a=i.handlers,o=a.length-1;o>=0;o--)a[o]===r&&(r.unbind(),a.splice(o,1))}l.length=0}}}}}.call(this),function(){var t=!1;f._allowJavascriptUrls=function(){t=!0},f._javascriptUrlsAllowed=function(){return t},h=function(e,t){this.name=e,this.value=t},f._AttributeHandler=h,h.prototype.update=function(e,t,n){null===n?null!==t&&e.removeAttribute(this.name):e.setAttribute(this.name,n)},h.extend=function(e){var t=this,n=function e(){h.apply(this,arguments)};return n.prototype=new t,n.extend=t.extend,e&&c.extend(n.prototype,e),n},f._DiffingAttributeHandler=h.extend({update:function(e,t,n){if(!this.getCurrentValue||!this.setValue||!this.parseValue)throw new Error("Missing methods in subclass of 'DiffingAttributeHandler'");var r=t?this.parseValue(t):{},i=n?this.parseValue(n):{},a=this.getCurrentValue(e),o=a?this.parseValue(a):{};c.each(c.keys(r),function(e){e in i||delete o[e]}),c.each(c.keys(i),function(e){o[e]=i[e]}),this.setValue(e,c.values(o).join(" "))}});var n=f._DiffingAttributeHandler.extend({getCurrentValue:function(e){return e.className},setValue:function(e,t){e.className=t},parseValue:function(e){var t={};return c.each(e.split(" "),function(e){e&&(t[e]=e)}),t}}),i=n.extend({getCurrentValue:function(e){return e.className.baseVal},setValue:function(e,t){e.setAttribute("class",t)}}),a=f._DiffingAttributeHandler.extend({getCurrentValue:function(e){return e.getAttribute("style")},setValue:function(e,t){""===t?e.removeAttribute("style"):e.setAttribute("style",t)},parseValue:function(e){for(var t={},n=/(\*?[-#\/\*\\\w]+(?:\[[0-9a-z_-]+\])?)\s*:\s*(?:\'(?:\\\'|.)*?\'|"(?:\\"|.)*?"|\([^\)]*?\)|[^};])+[;\s]*/g,i=n.exec(e);i;)t[" "+i[1]]=i[0].trim?i[0].trim():r.trim(i[0]),i=n.exec(e);return t}}),o=h.extend({update:function(e,t,n){var r=this.name;null==n?null!=t&&(e[r]=!1):e[r]=!0}}),s=h.extend({update:function(e,t,n){var r=this.name;n!==e[r]&&(e[r]=n)}}),l=h.extend({update:function(e,t,n){var r="http://www.w3.org/1999/xlink";null===n?null!==t&&e.removeAttributeNS(r,this.name):e.setAttributeNS(r,this.name,this.value)}}),u=function(e){return"ownerSVGElement"in e},d=function(e,t){var n={FORM:["action"],BODY:["background"],BLOCKQUOTE:["cite"],Q:["cite"],DEL:["cite"],INS:["cite"],OBJECT:["classid","codebase","data","usemap"],APPLET:["codebase"],A:["href"],AREA:["href"],LINK:["href"],BASE:["href"],IMG:["longdesc","src","usemap"],FRAME:["longdesc","src"],IFRAME:["longdesc","src"],HEAD:["profile"],SCRIPT:["src"],INPUT:["src","usemap","formaction"],BUTTON:["formaction"],BASE:["href"],MENUITEM:["icon"],HTML:["manifest"],VIDEO:["poster"]};if("itemid"===t)return!0;var r=n[e]||[];return c.contains(r,t)};if(e.isClient)var p=document.createElement("A");var w=function(t){if(e.isClient)return p.href=t,(p.protocol||"").toLowerCase();throw new Error("getUrlProtocol not implemented on the server")},v=h.prototype.update,_=h.extend({update:function(e,t,n){var r=this,i=arguments;if(f._javascriptUrlsAllowed())v.apply(r,i);else{var a="javascript:"===w(n),o="vbscript:"===w(n);a||o?(f._warn("URLs that use the 'javascript:' or 'vbscript:' protocol are not allowed in URL attribute values. Call Blaze._allowJavascriptUrls() to enable them."),v.apply(r,[e,t,null])):v.apply(r,i)}}});f._makeAttributeHandler=function(e,t,r){return"class"===t?u(e)?new i(t,r):new n(t,r):"style"===t?new a(t,r):"OPTION"===e.tagName&&"selected"===t||"INPUT"===e.tagName&&"checked"===t?new o(t,r):"autofocus"===t||"disabled"===t||"hidden"===t||"readonly"===t||"required"===t?new o(t,r):"FORM"===e.tagName&&"novalidate"===t?new o(t,r):"IFRAME"!==e.tagName||"sandbox"!==t||r?"IMG"===e.tagName&&"ismap"===t?new o(t,r):"INPUT"!==e.tagName&&"SELECT"!==e.tagName||"multiple"!==t?"OL"===e.tagName&&"reversed"===t?new o(t,r):"SCRIPT"===e.tagName&&"defer"===t?new o(t,r):"VIDEO"!==e.tagName||"autoplay"!==t&&"controls"!==t&&"loop"!==t&&"muted"!==t?"TEXTAREA"!==e.tagName&&"INPUT"!==e.tagName||"value"!==t?"xlink:"===t.substring(0,6)?new l(t.substring(6),r):d(e.tagName,t)?new _(t,r):new h(t,r):new s(t,r):new o(t,r):new o(t,r):new o(t,(!!r))},m=function(e){this.elem=e,this.handlers={}},m.prototype.update=function(e){var t=this.elem,n=this.handlers;for(var r in n)if(!c.has(e,r)){var i=n[r],a=i.value;i.value=null,i.update(t,a,null),delete n[r]}for(var r in e){var i=null,a,o=e[r];c.has(n,r)?(i=n[r],a=i.value):null!==o&&(i=f._makeAttributeHandler(t,r,o),n[r]=i,a=null),a!==o&&(i.value=o,i.update(t,a,o),null===o&&delete n[r])}}}.call(this),function(){f._materializeDOM=function(t,n,r,i){var a=i||[];if(e(t,n,r,a),!i)for(;a.length;){var o=a.pop();o()}return n};var e=function(e,n,r,i){if(null!=e){switch(typeof e){case"string":case"boolean":case"number":return void n.push(document.createTextNode(String(e)));case"object":if(e.htmljsType)switch(e.htmljsType){case p.Tag.htmljsType:return void n.push(t(e,r,i));case p.CharRef.htmljsType:return void n.push(document.createTextNode(e.str));case p.Comment.htmljsType:return void n.push(document.createComment(e.sanitizedValue));case p.Raw.htmljsType:for(var a=f._DOMBackend.parseHTML(e.value),o=0;o<a.length;o++)n.push(a[o]);return}else{if(p.isArray(e)){for(var o=e.length-1;o>=0;o--)i.push(f._bind(f._materializeDOM,null,e[o],n,r,i));return}if(e instanceof f.Template&&(e=e.constructView()),e instanceof f.View)return void f._materializeView(e,r,i,n)}}throw new Error("Unexpected object in htmljs: "+e)}},t=function(e,t,r){var i=e.tagName,o;o=(p.isKnownSVGElement(i)||n(e))&&document.createElementNS?document.createElementNS("http://www.w3.org/2000/svg",i):document.createElement(i);var s=e.attrs,l=e.children;if("textarea"===i&&e.children.length&&!(s&&"value"in s)){if("function"==typeof s||p.isArray(s))throw new Error("Can't have reactive children of TEXTAREA node; use the 'value' attribute instead.");s=c.extend({},s||null),s.value=f._expand(l,t),l=[]}if(s){var u=new m(o),d=function(){var e=f._expandAttributes(s,t),n=p.flattenAttributes(e),r={};for(var i in n)r[i]=f._toText(n[i],t,p.TEXTMODE.STRING);u.update(r)},h;h=t?t.autorun(d,void 0,"updater"):a.nonreactive(function(){return a.autorun(function(){a._withCurrentView(t,d)})}),f._DOMBackend.Teardown.onElementTeardown(o,function e(){h.stop()})}if(l.length){var w=[];r.push(function(){for(var e=0;e<w.length;e++){var t=w[e];t instanceof f._DOMRange?t.attach(o):o.appendChild(t)}}),r.push(f._bind(f._materializeDOM,null,l,w,t,r))}return o},n=function(e){return"a"===e.tagName&&e.attrs&&void 0!==e.attrs["xlink:href"]}}.call(this),function(){var t;f._throwNextException=!1,f._reportException=function(n,r){if(f._throwNextException)throw f._throwNextException=!1,n;t||(t=function(){return"undefined"!=typeof e?e._debug:"undefined"!=typeof console&&console.log?console.log:function(){}}),t()(r||"Exception caught in template:",n.stack||n.message||n)},f._wrapCatchingExceptions=function(e,t){return"function"!=typeof e?e:function(){try{return e.apply(this,arguments)}catch(e){f._reportException(e,"Exception in "+t+":")}}}}.call(this),function(){f.View=function(e,t){return this instanceof f.View?("function"==typeof e&&(t=e,e=""),this.name=e,this._render=t,this._callbacks={created:null,rendered:null,destroyed:null},this.isCreated=!1,this._isCreatedForExpansion=!1,this.isRendered=!1,this._isAttached=!1,this.isDestroyed=!1,this._isInRender=!1,this.parentView=null,this._domrange=null,this._hasGeneratedParent=!1,this._scopeBindings={},void(this.renderCount=0)):new f.View(e,t)},f.View.prototype._render=function(){return null},f.View.prototype.onViewCreated=function(e){this._callbacks.created=this._callbacks.created||[],this._callbacks.created.push(e)},f.View.prototype._onViewRendered=function(e){this._callbacks.rendered=this._callbacks.rendered||[],this._callbacks.rendered.push(e)},f.View.prototype.onViewReady=function(e){var t=this,n=function(){a.afterFlush(function(){t.isDestroyed||f._withCurrentView(t,function(){e.call(t)})})};t._onViewRendered(function e(){t.isDestroyed||(t._domrange.attached?n():t._domrange.onAttached(n))})},f.View.prototype.onViewDestroyed=function(e){this._callbacks.destroyed=this._callbacks.destroyed||[],this._callbacks.destroyed.push(e)},f.View.prototype.removeViewDestroyedListener=function(e){var t=this._callbacks.destroyed;if(t){var n=c.lastIndexOf(t,e);n!==-1&&(t[n]=null)}},f.View.prototype.autorun=function(e,t,n){var r=this;if(!r.isCreated)throw new Error("View#autorun must be called from the created callback at the earliest");if(this._isInRender)throw new Error("Can't call View#autorun from inside render(); try calling it from the created or rendered callback");var i=f.Template._currentTemplateInstanceFunc,o=function n(a){return f._withCurrentView(t||r,function(){return f.Template._withTemplateInstanceFunc(i,function(){return e.call(r,a)})})};o.displayName=(r.name||"anonymous")+":"+(n||"anonymous");var s=a.autorun(o),l=function(){s.stop()};return r.onViewDestroyed(l),s.onStop(function(){r.removeViewDestroyedListener(l)}),s},f.View.prototype._errorIfShouldntCallSubscribe=function(){var e=this;if(!e.isCreated)throw new Error("View#subscribe must be called from the created callback at the earliest");if(e._isInRender)throw new Error("Can't call View#subscribe from inside render(); try calling it from the created or rendered callback");if(e.isDestroyed)throw new Error("Can't call View#subscribe from inside the destroyed callback, try calling it inside created or rendered.")},f.View.prototype.subscribe=function(t,n){var r=this;n=n||{},r._errorIfShouldntCallSubscribe();var i;return i=n.connection?n.connection.subscribe.apply(n.connection,t):e.subscribe.apply(e,t),r.onViewDestroyed(function(){i.stop()}),i},f.View.prototype.firstNode=function(){if(!this._isAttached)throw new Error("View must be attached before accessing its DOM");return this._domrange.firstNode()},f.View.prototype.lastNode=function(){if(!this._isAttached)throw new Error("View must be attached before accessing its DOM");return this._domrange.lastNode()},f._fireCallbacks=function(e,t){f._withCurrentView(e,function(){a.nonreactive(function n(){for(var r=e._callbacks[t],i=0,a=r&&r.length;i<a;i++)r[i]&&r[i].call(e)})})},f._createView=function(e,t,n){if(e.isCreated)throw new Error("Can't render the same View twice");e.parentView=t||null,e.isCreated=!0,n&&(e._isCreatedForExpansion=!0),f._fireCallbacks(e,"created")};var t=function(e,t){var n=new f._DOMRange(t);e._domrange=n,n.view=e,e.isRendered=!0,f._fireCallbacks(e,"rendered");var r=null;return n.onAttached(function t(n,i){e._isAttached=!0,r=f._DOMBackend.Teardown.onElementTeardown(i,function t(){f._destroyView(e,!0)})}),e.onViewDestroyed(function(){r&&r.stop(),r=null}),n};f._materializeView=function(e,n,r,i){f._createView(e,n);var o,s;return a.nonreactive(function(){e.autorun(function t(n){e.renderCount++,e._isInRender=!0;var r=e._render();e._isInRender=!1,n.firstRun||a.nonreactive(function t(){var n=f._materializeDOM(r,[],e);f._isContentEqual(s,r)||(o.setMembers(n),f._fireCallbacks(e,"rendered"))}),s=r,a.onInvalidate(function(){o&&o.destroyMembers()})},void 0,"materialize");var n;r?(n=[],r.push(function(){o=t(e,n),n=null,i.push(o)}),r.push(f._bind(f._materializeDOM,null,s,n,e,r))):(n=f._materializeDOM(s,[],e),o=t(e,n),n=null)}),r?null:o},f._expandView=function(e,t){f._createView(e,t,!0),e._isInRender=!0;var n=f._withCurrentView(e,function(){return e._render()});e._isInRender=!1;var r=f._expand(n,e);return a.active?a.onInvalidate(function(){f._destroyView(e)}):f._destroyView(e),r},f._HTMLJSExpander=p.TransformingVisitor.extend(),f._HTMLJSExpander.def({visitObject:function(e){return e instanceof f.Template&&(e=e.constructView()),e instanceof f.View?f._expandView(e,this.parentView):p.TransformingVisitor.prototype.visitObject.call(this,e)},visitAttributes:function(e){return"function"==typeof e&&(e=f._withCurrentView(this.parentView,e)),p.TransformingVisitor.prototype.visitAttributes.call(this,e)},visitAttribute:function(e,t,n){return"function"==typeof t&&(t=f._withCurrentView(this.parentView,t)),p.TransformingVisitor.prototype.visitAttribute.call(this,e,t,n)}});var n=function(){var e=f.currentView;return e&&e._isInRender?e:null};f._expand=function(e,t){return t=t||n(),new f._HTMLJSExpander({parentView:t}).visit(e)},f._expandAttributes=function(e,t){return t=t||n(),new f._HTMLJSExpander({parentView:t}).visitAttributes(e)},f._destroyView=function(e,t){e.isDestroyed||(e.isDestroyed=!0,f._fireCallbacks(e,"destroyed"),e._domrange&&e._domrange.destroyMembers(t))},f._destroyNode=function(e){1===e.nodeType&&f._DOMBackend.Teardown.tearDownElement(e)},f._isContentEqual=function(e,t){return e instanceof p.Raw?t instanceof p.Raw&&e.value===t.value:null==e?null==t:e===t&&("number"==typeof e||"boolean"==typeof e||"string"==typeof e)},f.currentView=null,f._withCurrentView=function(e,t){var n=f.currentView;try{return f.currentView=e,t()}finally{f.currentView=n}};var r=function(e){if(null===e)throw new Error("Can't render null");if("undefined"==typeof e)throw new Error("Can't render undefined");if(!(e instanceof f.View||e instanceof f.Template||"function"==typeof e))try{(new p.Visitor).visit(e)}catch(e){throw new Error("Expected Template or View")}},i=function(e){if(r(e),e instanceof f.Template)return e.constructView();if(e instanceof f.View)return e;var t=e;return"function"!=typeof t&&(t=function(){return e}),f.View("render",t)},o=function(e){return r(e),"function"!=typeof e?function(){return e}:e};f.render=function(e,t,r,a){if(t||f._warn("Blaze.render without a parent element is deprecated. You must specify where to insert the rendered content."),r instanceof f.View&&(a=r,r=null),t&&"number"!=typeof t.nodeType)throw new Error("'parentElement' must be a DOM node");if(r&&"number"!=typeof r.nodeType)throw new Error("'nextNode' must be a DOM node");a=a||n();var o=i(e);return f._materializeView(o,a),t&&o._domrange.attach(t,r),o},f.insert=function(e,t,n){if(f._warn("Blaze.insert has been deprecated. Specify where to insert the rendered content in the call to Blaze.render."),!(e&&e._domrange instanceof f._DOMRange))throw new Error("Expected template rendered with Blaze.render");e._domrange.attach(t,n)},f.renderWithData=function(e,t,n,r,i){return f.render(f._TemplateWith(t,o(e)),n,r,i)},f.remove=function(e){if(!(e&&e._domrange instanceof f._DOMRange))throw new Error("Expected template rendered with Blaze.render");for(;e;){if(!e.isDestroyed){var t=e._domrange;t.attached&&!t.parentRange&&t.detach(),t.destroy()}e=e._hasGeneratedParent&&e.parentView}},f.toHTML=function(e,t){return t=t||n(),p.toHTML(f._expandView(i(e),t))},f.toHTMLWithData=function(e,t,r){return r=r||n(),p.toHTML(f._expandView(f._TemplateWith(t,o(e)),r))},f._toText=function(e,t,r){if("function"==typeof e)throw new Error("Blaze._toText doesn't take a function, just HTMLjs");if(null==t||t instanceof f.View||(r=t,t=null),t=t||n(),!r)throw new Error("textMode required");if(r!==p.TEXTMODE.STRING&&r!==p.TEXTMODE.RCDATA&&r!==p.TEXTMODE.ATTRIBUTE)throw new Error("Unknown textMode: "+r);return p.toText(f._expand(e,t),r)},f.getData=function(e){var t;if(e)if(e instanceof f.View){var n=e;t="with"===n.name?n:f.getView(n,"with")}else{if("number"!=typeof e.nodeType)throw new Error("Expected DOM element or View");if(1!==e.nodeType)throw new Error("Expected DOM element");t=f.getView(e,"with")}else t=f.getView("with");return t?t.dataVar.get():null},f.getElementData=function(e){if(f._warn("Blaze.getElementData has been deprecated. Use Blaze.getData(element) instead."),1!==e.nodeType)throw new Error("Expected DOM element");return f.getData(e)},f.getView=function(e,t){var n=t;if("string"==typeof e&&(n=e,e=null),e){if(e instanceof f.View)return f._getParentView(e,n);if("number"==typeof e.nodeType)return f._getElementView(e,n);throw new Error("Expected DOM element or View")}return f._getCurrentView(n)},f._getCurrentView=function(e){var t=f.currentView;if(!t)throw new Error("There is no current view");if(e){for(;t&&t.name!==e;)t=t.parentView;return t||null}return t},f._getParentView=function(e,t){var n=e.parentView;if(t)for(;n&&n.name!==t;)n=n.parentView;return n||null},f._getElementView=function(e,t){for(var n=f._DOMRange.forElement(e),r=null;n&&!r;)r=n.view||null,r||(n=n.parentRange?n.parentRange:f._DOMRange.forElement(n.parentElement));if(t){for(;r&&r.name!==t;)r=r.parentView;return r||null}return r},f._addEventMap=function(e,t,n){n=n||null;var r=[];if(!e._domrange)throw new Error("View must have a DOMRange");e._domrange.onAttached(function i(a,o){c.each(t,function(t,i){var s=i.split(/,\s+/);c.each(s,function(i){var s=i.split(/\s+/);if(0!==s.length){var l=s.shift(),c=s.join(" ");r.push(f._EventSupport.listen(o,l,c,function(r){if(!a.containsElement(r.currentTarget))return null;var i=n||this,o=arguments;return f._withCurrentView(e,function(){return t.apply(i,o)})},a,function(e){return e.parentRange}))}})})}),e.onViewDestroyed(function(){c.each(r,function(e){e.stop()}),r.length=0})}}.call(this),function(){f._calculateCondition=function(e){return e instanceof Array&&0===e.length&&(e=!1),!!e},f.With=function(e,t){var n=f.View("with",t);return n.dataVar=new d,n.onViewCreated(function(){"function"==typeof e?n.autorun(function(){n.dataVar.set(e())},n.parentView,"setData"):n.dataVar.set(e)}),n},f._attachBindingsToView=function(e,t){t.onViewCreated(function(){c.each(e,function(e,n){t._scopeBindings[n]=new d,"function"==typeof e?t.autorun(function(){t._scopeBindings[n].set(e())},t.parentView):t._scopeBindings[n].set(e)})})},f.Let=function(e,t){var n=f.View("let",t);return f._attachBindingsToView(e,n),n},f.If=function(e,t,n,r){var i=new d,a=f.View(r?"unless":"if",function(){return i.get()?t():n?n():null});return a.__conditionVar=i,a.onViewCreated(function(){this.autorun(function(){var t=f._calculateCondition(e());i.set(r?!t:t)},this.parentView,"condition")}),a},f.Unless=function(e,t,n){return f.If(e,t,n,!0)},f.Each=function(e,t,n){var r=f.View("each",function(){var e=this.initialSubviews;return this.initialSubviews=null,this._isCreatedForExpansion&&(this.expandedValueDep=new a.Dependency,this.expandedValueDep.depend()),e});r.initialSubviews=[],r.numItems=0,r.inElseMode=!1,r.stopHandle=null,r.contentFunc=t,r.elseFunc=n,r.argVar=new d,r.variableName=null;var i=function(e,t){void 0===t&&(t=r.numItems-1);for(var n=e;n<=t;n++){var i=r._domrange.members[n].view;i._scopeBindings["@index"].set(n)}};return r.onViewCreated(function(){r.autorun(function(){var t=e();c.isObject(t)&&c.has(t,"_sequence")&&(r.variableName=t._variable||null,t=t._sequence),r.argVar.set(t)},r.parentView,"collection"),r.stopHandle=u.observe(function(){return r.argVar.get()},{addedAt:function(e,t,n){a.nonreactive(function(){var e;e=r.variableName?f.View("item",r.contentFunc):f.With(t,r.contentFunc),r.numItems++;var a={};if(a["@index"]=n,r.variableName&&(a[r.variableName]=t),f._attachBindingsToView(a,e),r.expandedValueDep)r.expandedValueDep.changed();else if(r._domrange){r.inElseMode&&(r._domrange.removeMember(0),r.inElseMode=!1);var o=f._materializeView(e,r);r._domrange.addMember(o,n),i(n)}else r.initialSubviews.splice(n,0,e)})},removedAt:function(e,t,n){a.nonreactive(function(){r.numItems--,r.expandedValueDep?r.expandedValueDep.changed():r._domrange?(r._domrange.removeMember(n),i(n),r.elseFunc&&0===r.numItems&&(r.inElseMode=!0,r._domrange.addMember(f._materializeView(f.View("each_else",r.elseFunc),r),0))):r.initialSubviews.splice(n,1)})},changedAt:function(e,t,n,i){a.nonreactive(function(){if(r.expandedValueDep)r.expandedValueDep.changed();else{var e;e=r._domrange?r._domrange.getMember(i).view:r.initialSubviews[i],r.variableName?e._scopeBindings[r.variableName].set(t):e.dataVar.set(t)}})},movedTo:function(e,t,n,o){a.nonreactive(function(){if(r.expandedValueDep)r.expandedValueDep.changed();else if(r._domrange)r._domrange.moveMember(n,o),i(Math.min(n,o),Math.max(n,o));else{var e=r.initialSubviews,t=e[n];e.splice(n,1),e.splice(o,0,t)}})}}),r.elseFunc&&0===r.numItems&&(r.inElseMode=!0,r.initialSubviews[0]=f.View("each_else",r.elseFunc))}),r.onViewDestroyed(function(){r.stopHandle&&r.stopHandle.stop()}),r},f._TemplateWith=function(e,t){var n,r=e;"function"!=typeof e&&(r=function(){return e});var i=function(){var e=null;return n.parentView&&"InOuterTemplateScope"===n.parentView.name&&(e=n.parentView.originalParentView),e?f._withCurrentView(e,r):r()},a=function(){var e=t.call(this);return e instanceof f.Template&&(e=e.constructView()),e instanceof f.View&&(e._hasGeneratedParent=!0),e};return n=f.With(i,a),n.__isTemplateWith=!0,n},f._InOuterTemplateScope=function(e,t){var n=f.View("InOuterTemplateScope",t),r=e.parentView;return r.__isTemplateWith&&(r=r.parentView),n.onViewCreated(function(){this.originalParentView=this.parentView,this.parentView=r,this.__childDoesntStartNewLexicalScope=!0}),n},f.InOuterTemplateScope=f._InOuterTemplateScope}.call(this),function(){f._globalHelpers={},f.registerHelper=function(e,t){f._globalHelpers[e]=t},f.deregisterHelper=function(e){delete f._globalHelpers[e]};var e=function(e,t){return"function"!=typeof e?e:f._bind(e,t)},t=function(e){return"function"==typeof e?function(){var t=f.getData();return null==t&&(t={}),e.apply(t,arguments)}:e};f._OLDSTYLE_HELPER={},f._getTemplateHelper=function(e,r,i){var a=!1;if(e.__helpers.has(r)){var o=e.__helpers.get(r);if(o!==f._OLDSTYLE_HELPER)return null!=o?n(t(o),i):null;a=!0}return r in e&&(a||(e.__helpers.set(r,f._OLDSTYLE_HELPER),e._NOWARN_OLDSTYLE_HELPERS||f._warn("Assigning helper with `"+e.viewName+"."+r+" = ...` is deprecated. Use `"+e.viewName+".helpers(...)` instead.")),null!=e[r])?n(t(e[r]),i):null};var n=function(e,t){
return"function"!=typeof e?e:function(){var n=this,r=arguments;return f.Template._withTemplateInstanceFunc(t,function(){return f._wrapCatchingExceptions(e,"template helper").apply(n,r)})}};f._lexicalBindingLookup=function(e,t){var n=e,r=[];do if(c.has(n._scopeBindings,t)){var i=n._scopeBindings[t];return function(){return i.get()}}while((!n.__startsNewLexicalScope||n.parentView&&n.parentView.__childDoesntStartNewLexicalScope)&&(n=n.parentView));return null},f._getTemplate=function(e,t){return e in f.Template&&f.Template[e]instanceof f.Template?f.Template[e]:null},f._getGlobalHelper=function(e,r){return null!=f._globalHelpers[e]?n(t(f._globalHelpers[e]),r):null},f.View.prototype.lookup=function(e,t){var n=this.template,r=t&&t.template,i,a,o,s;if(this.templateInstance&&(o=f._bind(this.templateInstance,this)),/^\./.test(e)){if(!/^(\.)+$/.test(e))throw new Error("id starting with dot must be a series of dots");return f._parentData(e.length-1,!0)}return n&&null!=(i=f._getTemplateHelper(n,e,o))?i:n&&null!=(a=f._lexicalBindingLookup(f.currentView,e))?a:r&&null!=(s=f._getTemplate(e,o))?s:null!=(i=f._getGlobalHelper(e,o))?i:function(){var t=arguments.length>0,n=f.getData(),i=n&&n[e];if(!i){if(r)throw new Error("No such template: "+e);if(t)throw new Error("No such function: "+e);if("@"===e.charAt(0)&&(null===i||void 0===i))throw new Error("Unsupported directive: "+e)}if(!n)return null;if("function"!=typeof i){if(t)throw new Error("Can't call non-function: "+i);return i}return i.apply(n,arguments)}},f._parentData=function(e,t){null==e&&(e=1);for(var n=f.getView("with"),r=0;r<e&&n;r++)n=f.getView(n,"with");return n?t?function(){return n.dataVar.get()}:n.dataVar.get():null},f.View.prototype.lookupTemplate=function(e){return this.lookup(e,{template:!0})}}.call(this),function(){f.Template=function(e,n){if(!(this instanceof f.Template))return new f.Template(e,n);if("function"==typeof e&&(n=e,e=""),"string"!=typeof e)throw new Error("viewName must be a String (or omitted)");if("function"!=typeof n)throw new Error("renderFunction must be a function");this.viewName=e,this.renderFunction=n,this.__helpers=new t,this.__eventMaps=[],this._callbacks={created:[],rendered:[],destroyed:[]}};var e=f.Template,t=function(){};t.prototype.get=function(e){return this[" "+e]},t.prototype.set=function(e,t){this[" "+e]=t},t.prototype.has=function(e){return" "+e in this},f.isTemplate=function(e){return e instanceof f.Template},e.prototype.onCreated=function(e){this._callbacks.created.push(e)},e.prototype.onRendered=function(e){this._callbacks.rendered.push(e)},e.prototype.onDestroyed=function(e){this._callbacks.destroyed.push(e)},e.prototype._getCallbacks=function(e){var t=this,n=t[e]?[t[e]]:[];return n=n.concat(t._callbacks[e])};var n=function(t,n){e._withTemplateInstanceFunc(function(){return n},function(){for(var e=0,r=t.length;e<r;e++)t[e].call(n)})};e.prototype.constructView=function(t,r){var i=this,a=f.View(i.viewName,i.renderFunction);a.template=i,a.templateContentBlock=t?new e("(contentBlock)",t):null,a.templateElseBlock=r?new e("(elseBlock)",r):null,(i.__eventMaps||"object"==typeof i.events)&&a._onViewRendered(function(){1===a.renderCount&&(i.__eventMaps.length||"object"!=typeof i.events||e.prototype.events.call(i,i.events),c.each(i.__eventMaps,function(e){f._addEventMap(a,e,a)}))}),a._templateInstance=new f.TemplateInstance(a),a.templateInstance=function(){var e=a._templateInstance;return e.data=f.getData(a),a._domrange&&!a.isDestroyed?(e.firstNode=a._domrange.firstNode(),e.lastNode=a._domrange.lastNode()):(e.firstNode=null,e.lastNode=null),e};var o=i._getCallbacks("created");a.onViewCreated(function(){n(o,a.templateInstance())});var s=i._getCallbacks("rendered");a.onViewReady(function(){n(s,a.templateInstance())});var l=i._getCallbacks("destroyed");return a.onViewDestroyed(function(){n(l,a.templateInstance())}),a},f.TemplateInstance=function(e){if(!(this instanceof f.TemplateInstance))return new f.TemplateInstance(e);if(!(e instanceof f.View))throw new Error("View required");e._templateInstance=this,this.view=e,this.data=null,this.firstNode=null,this.lastNode=null,this._allSubsReadyDep=new a.Dependency,this._allSubsReady=!1,this._subscriptionHandles={}},f.TemplateInstance.prototype.$=function(e){var t=this.view;if(!t._domrange)throw new Error("Can't use $ on template instance with no DOM");return t._domrange.$(e)},f.TemplateInstance.prototype.findAll=function(e){return Array.prototype.slice.call(this.$(e))},f.TemplateInstance.prototype.find=function(e){var t=this.$(e);return t[0]||null},f.TemplateInstance.prototype.autorun=function(e){return this.view.autorun(e)},f.TemplateInstance.prototype.subscribe=function(){var e=this,t=e._subscriptionHandles,n=c.toArray(arguments),r={};if(n.length){var i=c.last(n),a={onReady:l.Optional(Function),onError:l.Optional(Function),onStop:l.Optional(Function),connection:l.Optional(l.Any)};c.isFunction(i)?r.onReady=n.pop():i&&!c.isEmpty(i)&&l.test(i,a)&&(r=n.pop())}var o,s=r.onStop;r.onStop=function(n){delete t[o.subscriptionId],e._allSubsReady||e._allSubsReadyDep.changed(),s&&s(n)};var u=r.connection,d=c.pick(r,["onReady","onError","onStop"]);return n.push(d),o=e.view.subscribe.call(e.view,n,{connection:u}),c.has(t,o.subscriptionId)||(t[o.subscriptionId]=o,e._allSubsReady&&e._allSubsReadyDep.changed()),o},f.TemplateInstance.prototype.subscriptionsReady=function(){return this._allSubsReadyDep.depend(),this._allSubsReady=c.all(this._subscriptionHandles,function(e){return e.ready()}),this._allSubsReady},e.prototype.helpers=function(e){if(!c.isObject(e))throw new Error("Helpers dictionary has to be an object");for(var t in e)this.__helpers.set(t,e[t])},e._currentTemplateInstanceFunc=null,e._withTemplateInstanceFunc=function(t,n){if("function"!=typeof n)throw new Error("Expected function, got: "+n);var r=e._currentTemplateInstanceFunc;try{return e._currentTemplateInstanceFunc=t,n()}finally{e._currentTemplateInstanceFunc=r}},e.prototype.events=function(t){if(!c.isObject(t))throw new Error("Event map has to be an object");var n=this,r={};for(var i in t)r[i]=function(t,n){return function(t){var r=this,i=f.getData(t.currentTarget);null==i&&(i={});var a=Array.prototype.slice.call(arguments),o=f._bind(r.templateInstance,r);return a.splice(1,0,o()),e._withTemplateInstanceFunc(o,function(){return n.apply(i,a)})}}(i,t[i]);n.__eventMaps.push(r)},e.instance=function(){return e._currentTemplateInstanceFunc&&e._currentTemplateInstanceFunc()},e.currentData=f.getData,e.parentData=f._parentData,e.registerHelper=f.registerHelper,e.deregisterHelper=f.deregisterHelper}.call(this),function(){w=f,f.ReactiveVar=d,w._templateInstance=f.Template.instance,v={},v.registerHelper=f.registerHelper,v._escape=f._escape,v.SafeString=function(e){this.string=e},v.SafeString.prototype.toString=function(){return this.string.toString()}}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.blaze={},{Blaze:f,UI:w,Handlebars:v})}();
!function(){var a=Package.blaze.Blaze,e=Package.blaze.UI,n=Package.blaze.Handlebars;"undefined"==typeof Package&&(Package={}),function(a,e){for(var n in e)n in a||(a[n]=e[n])}(Package.ui={},{Blaze:a,UI:e,Handlebars:n})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package["observe-sequence"].ObserveSequence,a=Package.underscore._,u=Package.tracker.Tracker,i=Package.tracker.Deps,o=Package.htmljs.HTML,c=Package.blaze.Blaze,l=Package.blaze.UI,f=Package.blaze.Handlebars,p;(function(){p={};var e=function(e,t){return e===t};p.include=function(t,n,r){if(!t)return null;if("function"!=typeof t){var a=t;if(!c.isTemplate(a))throw new Error("Expected template or null, found: "+a);var u=t.constructView(n,r);return u.__startsNewLexicalScope=!0,u}var i=c.ReactiveVar(null,e),u=c.View("Spacebars.include",function(){var e=i.get();if(null===e)return null;if(!c.isTemplate(e))throw new Error("Expected template or null, found: "+e);return e.constructView(n,r)});return u.__templateVar=i,u.onViewCreated(function(){this.autorun(function(){i.set(t())})}),u.__startsNewLexicalScope=!0,u},p.mustacheImpl=function(e){var t=arguments;if(t.length>1){var n=t[t.length-1];if(n instanceof p.kw){var r={};for(var a in n.hash){var u=n.hash[a];r[a]="function"==typeof u?u():u}t[t.length-1]=p.kw(r)}else n=p.kw(),t=Array.prototype.slice.call(arguments),t.push(n)}return p.call.apply(null,t)},p.mustache=function(e){var t=p.mustacheImpl.apply(null,arguments);return t instanceof p.SafeString?o.Raw(t.toString()):null==t||t===!1?null:String(t)},p.attrMustache=function(e){var t=p.mustacheImpl.apply(null,arguments);if(null==t||""===t)return null;if("object"==typeof t)return t;if("string"==typeof t&&o.isValidAttributeName(t)){var n={};return n[t]="",n}throw new Error("Expected valid attribute name, '', null, or object")},p.dataMustache=function(e){var t=p.mustacheImpl.apply(null,arguments);return t},p.makeRaw=function(e){return null==e?null:e instanceof o.Raw?e:o.Raw(e)},p.call=function(e){if("function"==typeof e){for(var t=[],n=1;n<arguments.length;n++){var r=arguments[n];t[n-1]="function"==typeof r?r():r}return e.apply(null,t)}if(null!=e&&arguments.length>1)throw new Error("Can't call non-function: "+e);return e},p.kw=function(e){return this instanceof p.kw?void(this.hash=e||{}):new p.kw(e)},p.SafeString=function(e){return this instanceof p.SafeString?new f.SafeString(e):new p.SafeString(e)},p.SafeString.prototype=f.SafeString.prototype,p.dot=function(e,t){if(arguments.length>2){var n=[];return n.push(p.dot(e,t)),n.push.apply(n,Array.prototype.slice.call(arguments,2)),p.dot.apply(null,n)}if("function"==typeof e&&(e=e()),!e)return e;var r=e[t];return"function"!=typeof r?r:function(){return r.apply(e,arguments)}},p.With=function(e,t,n){var r=new c.ReactiveVar,a=c.View("Spacebars_with",function(){return c.If(function(){return r.get()},function(){return c.With(function(){return r.get()},t)},n)});return a.onViewCreated(function(){this.autorun(function(){r.set(e()),u.onInvalidate(function(){r.dep.changed()})})}),a},p.TemplateWith=c._TemplateWith}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.spacebars={},{Spacebars:p})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["templating-compiler"]={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.underscore._,o=Package.blaze.Blaze,c=Package.blaze.UI,r=Package.blaze.Handlebars,i=Package.spacebars.Spacebars,u=Package.htmljs.HTML,l;(function(){l=o.Template;var e="__proto__ name".split(" ");l.__checkName=function(t){if(t in l||a.contains(e,t)){if(l[t]instanceof l&&"body"!==t)throw new Error("There are multiple templates named '"+t+"'. Each template needs a unique name.");throw new Error("This template name is reserved: "+t)}},l.__define__=function(e,t){l.__checkName(e),l[e]=new l("Template."+e,t),l[e]._NOWARN_OLDSTYLE_HELPERS=!0},l.body=new l("body",function(){var e=this;return a.map(l.body.contentRenderFuncs,function(t){return t.apply(e)})}),l.body.contentRenderFuncs=[],l.body.view=null,l.body.addContent=function(e){l.body.contentRenderFuncs.push(e)},l.body.renderToDocument=function(){if(!l.body.view){var e=o.render(l.body,document.body);l.body.view=e}},c.body=l.body,l.__body__=l.body,l.__body__.__contentParts=l.body.contentViews,l.__body__.__instantiate=l.body.renderToDocument}).call(this),function(){l.__checkName("__dynamic"),l.__dynamic=new l("Template.__dynamic",function(){var e=this;return[o.View("lookup:checkContext",function(){return i.mustache(e.lookup("checkContext"))}),"\n ",o.If(function(){return i.call(e.lookup("dataContextPresent"))},function(){return["\n ",i.include(e.lookupTemplate("__dynamicWithDataContext"),function(){return o._InOuterTemplateScope(e,function(){return i.include(function(){return i.call(e.templateContentBlock)})})}),"\n "]},function(){return["\n \n ",o._TemplateWith(function(){return{template:i.call(e.lookup("template")),data:i.call(e.lookup(".."))}},function(){return i.include(e.lookupTemplate("__dynamicWithDataContext"),function(){return o._InOuterTemplateScope(e,function(){return i.include(function(){return i.call(e.templateContentBlock)})})})}),"\n "]})]}),l.__checkName("__dynamicWithDataContext"),l.__dynamicWithDataContext=new l("Template.__dynamicWithDataContext",function(){var e=this;return i.With(function(){return i.dataMustache(e.lookup("chooseTemplate"),e.lookup("template"))},function(){return["\n \n ",o._TemplateWith(function(){return i.call(i.dot(e.lookup(".."),"data"))},function(){return i.include(e.lookupTemplate(".."),function(){return o._InOuterTemplateScope(e,function(){return i.include(function(){return i.call(e.templateContentBlock)})})})}),"\n "]})})}.call(this),function(){var e=o.Template;e.__dynamicWithDataContext.helpers({chooseTemplate:function(t){return o._getTemplate(t,function(){return e.instance()})}}),e.__dynamic.helpers({dataContextPresent:function(){return a.has(this,"data")},checkContext:function(){if(!a.has(this,"template"))throw new Error("Must specify name in the 'template' argument to {{> Template.dynamic}}.");a.each(this,function(e,t){if("template"!==t&&"data"!==t)throw new Error("Invalid argument to {{> Template.dynamic}}: "+t)})}})}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["templating-runtime"]={},{Template:l})}();
!function(){var a=Package["templating-runtime"].Template;"undefined"==typeof Package&&(Package={}),function(a,e){for(var n in e)n in a||(a[n]=e[n])}(Package.templating={},{Template:a})}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,a=Package.meteor.meteorEnv,r;(function(){var n=0,a=!1;r={hold:function(){if(!e.isCordova)return{release:function(){}};if(a)throw new Error("Can't show launch screen once it's hidden");n++;var r=!1,o=function(){e.isCordova&&(r||(r=!0,n--,0===n&&"undefined"!=typeof navigator&&navigator.splashscreen&&(a=!0,navigator.splashscreen.hide())))};return{release:o}}}}).call(this),function(){var n=r.hold(),a=Package.templating&&Package.templating.Template;e.startup(function(){a?Package["iron:router"]?Package["iron:router"].Router.onAfterAction(function(){n.release()}):(a.body.onRendered(function(){n.release()}),setTimeout(function(){n.release()},6e3)):n.release()})}.call(this),"undefined"==typeof Package&&(Package={}),function(e,n){for(var a in n)a in e||(e[a]=n[a])}(Package["launch-screen"]={},{LaunchScreen:r})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package.jquery.$,a=Package.jquery.jQuery,u=Package.modules.meteorInstall,r=Package.modules.Buffer,c=Package.modules.process,l=Package["ecmascript-runtime"].Symbol,s=Package["ecmascript-runtime"].Map,i=Package["ecmascript-runtime"].Set,d=Package["babel-runtime"].meteorBabelHelpers,p=Package.promise.Promise,m=Package.webapp.WebApp,g=Package.logging.Log,k=Package.deps.Tracker,f=Package.deps.Deps,P=Package.session.Session,h=Package["ddp-client"].DDP,v=Package.mongo.Mongo,b=Package.ui.Blaze,B=Package.ui.UI,G=Package.ui.Handlebars,V=Package.spacebars.Spacebars,j=Package["templating-runtime"].Template,I=Package.check.check,y=Package.check.Match,L=Package.underscore._,S=Package.random.Random,x=Package.ejson.EJSON,D=Package["launch-screen"].LaunchScreen,_=Package.htmljs.HTML,M=u({node_modules:{meteor:{design:{components:{roundedButtonGroup:{"template.roundedButtonGroup.js":function(){j.__checkName("roundedButtonGroup"),j.roundedButtonGroup=new j("Template.roundedButtonGroup",function(){var e=this;return _.DIV({class:function(){return[V.mustache(e.lookup("class"))," roundedButtonGroup clearfix center-table"]}},"\n ",b.Each(function(){return{_sequence:V.call(V.dot(e.lookup("."),"options")),_variable:"item"}},function(){return["\n ",_.A({class:function(){return["roundedButtonWrapper noselect ",b.If(function(){return V.dataMustache(e.lookup("eq"),e.lookup("getValue"),V.dot(e.lookup("item"),"value"))},function(){return"active"})]},"data-value":function(){return V.mustache(V.dot(e.lookup("item"),"value"))}},"\n ",_.DIV({class:"roundedButton"},"\n ",b.If(function(){return V.call(V.dot(e.lookup("item"),"svgLink"))},function(){return["\n ",_.SVG({style:function(){return["width: ",V.mustache(V.dot(e.lookup("item"),"svgWidth")),"px; height: ",V.mustache(V.dot(e.lookup("item"),"svgHeight")),"px"]}},"\n ",_.USE({"xlink:href":function(){return V.mustache(V.dot(e.lookup("item"),"svgLink"))}}),"\n "),"\n "]}),"\n ",b.If(function(){return V.call(V.dot(e.lookup("item"),"text"))},function(){return["\n ",_.SPAN(b.View("lookup:item.text",function(){return V.mustache(V.dot(e.lookup("item"),"text"))})),"\n "]}),"\n ",b.If(function(){return V.call(V.dot(e.lookup("item"),"iconClasses"))},function(){return["\n ",_.I({class:function(){return V.mustache(V.dot(e.lookup("item"),"iconClasses"))}}),"\n "]}),"\n "),"\n ",b.If(function(){return V.call(V.dot(e.lookup("item"),"bottomLabel"))},function(){return["\n ",_.DIV({class:"bottomLabel"},b.View("lookup:item.bottomLabel",function(){return V.mustache(V.dot(e.lookup("item"),"bottomLabel"))})),"\n "]}),"\n "),"\n "]}),"\n ")})},"roundedButtonGroup.js":function(){j.roundedButtonGroup.onCreated(function(){var e=j.instance(),t=e.data.value;e.getValue=function(){return t.get(e.data.key)},e.setValue=function(n){var o=[n];t instanceof ReactiveDict&&o.unshift(e.data.key),t.set.apply(t,o)},e.getValue()||e.data.toggleable||e.setValue(e.data.options[0].value)}),j.roundedButtonGroup.events({"click [data-value]":function(){function e(e,t){e.preventDefault();var n=o(e.currentTarget);if(!n.hasClass("disabled")){var a=n.hasClass("active")&&t.data.toggleable,u=a?null:n.attr("data-value");t.setValue(u)}}return e}()}),j.roundedButtonGroup.helpers({getValue:function(){function e(){return j.instance().getValue()}return e}()})}}}}}}},{extensions:[".js",".json",".styl",".html"]});M("./node_modules/meteor/design/components/roundedButtonGroup/template.roundedButtonGroup.js"),M("./node_modules/meteor/design/components/roundedButtonGroup/roundedButtonGroup.js"),"undefined"==typeof Package&&(Package={}),Package.design={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.underscore._,o=Package.ejson.EJSON,i;(function(){if(Package["cmather:iron-core"])throw new Error("\n\n Sorry! The cmather:iron-{x} packages were migrated to the new package system with the wrong name, and you have duplicate copies.\n You can see which cmather:iron-{x} packages have been installed by using this command:\n\n > meteor list\n\n Can you remove any installed cmather:iron-{x} packages like this: \n\n > meteor remove cmather:iron-core\n > meteor remove cmather:iron-router\n > meteor remove cmather:iron-dynamic-template\n > meteor remove cmather:iron-dynamic-layout\n \n The new packages are named iron:{x}. For example:\n\n > meteor add iron:router\n\n Sorry for the hassle, but thank you! \n\n ")}).call(this),function(){i={},i.utils={},i.utils.assert=function(e,t){if(!e)throw new Error(t)},i.utils.warn=function(e,t){e||console&&console.warn&&console.warn(t)},i.utils.defaultValue=function(e,t,n){return"undefined"==typeof e[t]?(e[t]=n,n):e[t]},i.utils.inherits=function(e,t,n){i.utils.assert("undefined"!=typeof e,"Child is undefined in inherits function"),i.utils.assert("undefined"!=typeof t,"Parent is undefined in inherits function");for(var a in t)r.has(t,a)&&(e[a]=o.clone(t[a]));var s=function(){this.constructor=e};return s.prototype=t.prototype,e.prototype=new s,e.__super__=t.prototype,r.isObject(n)&&r.extend(e.prototype,n),e},i.utils.extend=function(e,t){t=t||{};var n=function(){var e;e=r.has(t,"constructor")?t.constructor:n.__super__.constructor,e.apply(this,arguments)};return i.utils.inherits(n,e,t)},i.utils.global=function(){return e.isClient?window:t}(),i.utils.namespace=function(e,t){var n=i.utils.global,r,o,a,s;i.utils.assert("string"==typeof e,"namespace must be a string"),r=e.split("."),a=r.pop(),s=n;for(var c=0;c<r.length;c++)o=r[c],s=s[o]=s[o]||{};return 2===arguments.length?(s[a]=t,t):s[a]},i.utils.resolve=function(e){var t=i.utils.global,n,r;if("string"==typeof e){n=e.split("."),r=t;for(var o=0;o<n.length;o++)if(r=r[n[o]],!r)return}else r=e;return r},i.utils.capitalize=function(e){return e.charAt(0).toUpperCase()+e.slice(1,e.length)},i.utils.classCase=function(e){var t=/_|-|\.|\//;return e?r.map(e.split(t),function(e){return i.utils.capitalize(e)}).join(""):""},i.utils.camelCase=function(e){var t=i.utils.classCase(e);return t=t.charAt(0).toLowerCase()+t.slice(1,t.length)},i.utils.notifyDeprecated=function(e){var t,n,o,i,a="[:where] ':name' is deprecated. Please use ':instead' instead.";r.isObject(e)?(t=e.name,n=e.instead,o=e.message||a,i=e.where||"IronRouter"):(o=e,t="",n="",i=""),"undefined"!=typeof console&&console.warn&&console.warn("<deprecated> "+o.replace(":name",t).replace(":instead",n).replace(":where",i)+" "+(new Error).stack)},i.utils.withDeprecatedNotice=function(e,t,n){return function(){return Utils.notifyDeprecated(e),t&&t.apply(n||this,arguments)}},Function.prototype.deprecate=function(e){var t=this;return i.utils.withDeprecatedNotice(e,t)},i.utils.debug=function(e){return i.utils.assert("string"==typeof e,"debug requires a package name"),function t(){if(console&&console.log&&i.debug===!0){var n=r.toArray(arguments).join(" ");console.log("%c<"+e+"> %c"+n,"color: #999;","color: #000;")}}},i.utils.get=function(e){for(var t=1;t<arguments.length;t++){if(!(e&&arguments[t]in e))return;e=e[arguments[t]]}return e},i.utils.global.Iron=i}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["iron:core"]={},{Iron:i})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.ui.Blaze,r=Package.ui.UI,i=Package.ui.Handlebars,o=Package.underscore._,s=Package.jquery.$,u=Package.jquery.jQuery,c=Package.tracker.Tracker,l=Package.tracker.Deps,p=Package["reactive-var"].ReactiveVar,h=Package["templating-runtime"].Template,d=Package.random.Random,m=Package["iron:core"].Iron,f=Package.htmljs.HTML,_=Package.spacebars.Spacebars,v;(function(){if(Package["cmather:iron-dynamic-template"])throw new Error("\n\n Sorry! The cmather:iron-{x} packages were migrated to the new package system with the wrong name, and you have duplicate copies.\n You can see which cmather:iron-{x} packages have been installed by using this command:\n\n > meteor list\n\n Can you remove any installed cmather:iron-{x} packages like this: \n\n > meteor remove cmather:iron-core\n > meteor remove cmather:iron-router\n > meteor remove cmather:iron-dynamic-template\n > meteor remove cmather:iron-dynamic-layout\n \n The new packages are named iron:{x}. For example:\n\n > meteor add iron:router\n\n Sorry for the hassle, but thank you! \n\n ")}).call(this),function(){h.__checkName("__DynamicTemplateError__"),h.__DynamicTemplateError__=new h("Template.__DynamicTemplateError__",function(){var e=this;return f.DIV({style:"margin: 0 auto; color: red;"},"\n ",a.View("lookup:msg",function(){return _.mustache(e.lookup("msg"))}),"\n ")})}.call(this),function(){var e=m.utils.debug("iron:dynamic-template"),t=m.utils.assert,n=m.utils.get,i=m.utils.camelCase,u=function(e){return Object.prototype.toString.call(e)};v=function(e){this._id=d.id(),this.options=e=e||{},this._template=e.template,this._defaultTemplate=e.defaultTemplate,this._content=e.content,this._data=e.data,this._templateDep=new c.Dependency,this._dataDep=new c.Dependency,this._lookupHostDep=new c.Dependency,this._lookupHostValue=null,this._hooks={},this._eventMap=null,this._eventHandles=null,this._eventThisArg=null,this.name=e.name||this.constructor.prototype.name||"DynamicTemplate",this.isCreated=!1,this.isDestroyed=!1},v.prototype.template=function(e){if(1===arguments.length&&e!==this._template)return this._template=e,void this._templateDep.changed();if(!(arguments.length>0))return this._templateDep.depend(),this._template?"function"==typeof this._template?this._template():this._template:this._defaultTemplate?"function"==typeof this._defaultTemplate?this._defaultTemplate():this._defaultTemplate:void 0},v.prototype.defaultTemplate=function(e){return 1!==arguments.length?this._defaultTemplate:void(this._defaultTemplate=e)},v.prototype.clear=function(){this._template=void 0,this._data=void 0,this._templateDep.changed()},v.prototype.data=function(e){return 1===arguments.length&&e!==this._data?(this._data=e,void this._dataDep.changed()):(this._dataDep.depend(),"function"==typeof this._data?this._data():this._data)},v.prototype.create=function(e){var t=this;if(this.isCreated)throw new Error("DynamicTemplate view is already created");this.isCreated=!0,this.isDestroyed=!1;var n=p(null),r=a.View("DynamicTemplate",function(){var e=this,r=n.get();return a.With(function(){var n=t.data();return"undefined"!=typeof n?n:v.getParentDataContext(e)},function(){return t.renderView(r)})});return r.onViewCreated(function(){this.autorun(function(){n.set(t.template())})}),o.each(["onViewCreated","onViewReady","_onViewRendered","onViewDestroyed"],function(e){r[e](function(){t._runHooks(e,this)})}),r._onViewRendered(function(){t.isInserted=!0,1===r.renderCount&&t._attachEvents()}),r.onViewDestroyed(function(){t._detachEvents()}),r._templateInstance=new a.TemplateInstance(r),r.templateInstance=function(){var e=r._templateInstance;return e.data=a.getData(r),r._domrange&&!r.isDestroyed?(e.firstNode=r._domrange.firstNode(),e.lastNode=r._domrange.lastNode()):(e.firstNode=null,e.lastNode=null),e},this.view=r,r.__dynamicTemplate__=this,r.name=this.name,r},v.prototype.renderView=function(e){var t=this,n=null;return"string"==typeof e?(n=h[e],n||(n=h[i(e)]),n||(n=a.With({msg:"Couldn't find a template named "+JSON.stringify(e)+" or "+JSON.stringify(i(e))+". Are you sure you defined it?"},function(){return h.__DynamicTemplateError__}))):"[object Object]"===u(e)?n=e:"undefined"!=typeof t._content&&(n=t._content),n},v.prototype.destroy=function(){this.isCreated&&(a.remove(this.view),this.view=null,this.isDestroyed=!0,this.isCreated=!1)},o.each(["onViewCreated","onViewReady","_onViewRendered","onViewDestroyed"],function(e){v.prototype[e]=function(t){var n=this._hooks[e]=this._hooks[e]||[];return n.push(t),this}}),v.prototype._runHooks=function(e,t){for(var n=this._hooks[e]||[],a,r=0;r<n.length;r++)a=n[r],a.call(t,this)},v.prototype.events=function(e,t){var n=this;this._detachEvents(),this._eventThisArg=t;var r=this._eventMap={};for(var i in e)r[i]=function(e,r){return function(e){var i=a.getData(e.currentTarget);null==i&&(i={});var o=n.view.templateInstance();return r.call(t||this,e,o,i)}}(i,e[i]);this._attachEvents()},v.prototype._attachEvents=function(){var e=this,t=e._eventThisArg,n=e._eventMap,r=e.view,i=e._eventHandles;if(r){var s=r._domrange;if(!s)throw new Error("no domrange");var u=function(t,s){o.each(n,function(n,u){var c=u.split(/,\s+/);o.each(c,function(o){var u=o.split(/\s+/);if(0!==u.length){var c=u.shift(),l=u.join(" ");i.push(a._EventSupport.listen(s,c,l,function(i){if(!t.containsElement(i.currentTarget))return null;var o=e._eventThisArg||this,s=arguments;return a._withCurrentView(r,function(){return n.apply(o,s)})},t,function(e){return e.parentRange}))}})})};s.attached?u(s,s.parentElement):s.onAttached(u)}},v.prototype._detachEvents=function(){o.each(this._eventHandles,function(e){e.stop()}),this._eventHandles=[]};var f=function(e,t,n,r){o.each(n,function(n,i){var s=i.split(/,\s+/);o.each(s,function(i){var o=i.split(/\s+/);if(0!==o.length){var s=o.shift(),u=o.join(" ");handles.push(a._EventSupport.listen(t,s,u,function(t){if(!e.containsElement(t.currentTarget))return null;var i=r||this,o=arguments;return a._withCurrentView(view,function(){return n.apply(i,o)})},e,function(e){return e.parentRange}))}})})};v.prototype.insert=function(e){if(e=e||{},!this.isInserted){this.isInserted=!0;var t=e.el||document.body,n=s(t);if(0===n.length)throw new Error("No element to insert layout into. Is your element defined? Try a Meteor.startup callback.");return this.view||this.create(e),a.render(this.view,n[0],e.nextNode,e.parentView),this}},v.prototype._getLookupHost=function(){return this._lookupHostValue},v.prototype._setLookupHost=function(e){var t=this;return t._lookupHostValue!==e&&(t._lookupHostValue=e,l.afterFlush(function(){t._lookupHostDep.changed()})),this},v.getParentDataContext=function(e){return v.getDataContext(e&&e.parentView)},v.getDataContext=function(e){for(;e;){if("with"===e.name&&!e.__isTemplateWith)return e.dataVar.get();e=e.parentView}return null},v.getInclusionArguments=function(e){var t=e&&e.parentView;return t&&t.__isTemplateWith?t.dataVar.get():null},v.args=function(e){return function(t){var n=v.getInclusionArguments(e);return n?t?n[t]:n:null}},v.extend=function(e){return m.utils.extend(this,e)},v.findFirstLookupHost=function(e){var n,r;for(t(e instanceof a.View,"view must be a Blaze.View");e;)if(e.__dynamicTemplate__){var n=e.__dynamicTemplate__._getLookupHost();if(n)return n}else e=e.parentView},v.findLookupHostWithProperty=function(e,r){var i,o;for(t(e instanceof a.View,"view must be a Blaze.View");e;){if(e.__dynamicTemplate__){var i=e.__dynamicTemplate__._getLookupHost();if(i&&n(i,r))return i}e=e.parentView}},v.findLookupHostWithHelper=function(e,r){var i,o;for(t(e instanceof a.View,"view must be a Blaze.View");e;){if(e.__dynamicTemplate__){var i=e.__dynamicTemplate__._getLookupHost();if(i&&n(i,"constructor","_helpers",r))return i}e=e.parentView}},"undefined"!=typeof h&&r.registerHelper("DynamicTemplate",new h("DynamicTemplateHelper",function(){var e=v.args(this);return new v({data:function(){return e("data")},template:function(){return e("template")},content:this.templateContentBlock}).create()})),m.DynamicTemplate=v}.call(this),function(){var e=m.utils.assert,t=m.utils.get,n=a.View.prototype.lookup;a.View.prototype.lookup=function(e){var r;return r=v.findLookupHostWithHelper(a.getView(),e),r?function n(){var a=t(r,"constructor","_helpers",e),i=[].slice.call(arguments);return"function"==typeof a?a.apply(r,i):a}:n.apply(this,arguments)}}.call(this),"undefined"==typeof Package&&(Package={}),Package["iron:dynamic-template"]={}}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,t=Package.meteor.meteorEnv,r=Package["templating-runtime"].Template,o=Package.blaze.Blaze,i=Package.blaze.UI,a=Package.blaze.Handlebars,s=Package.underscore._,c=Package.tracker.Tracker,u=Package.tracker.Deps,h=Package["iron:core"].Iron,l=Package.htmljs.HTML,g=Package.spacebars.Spacebars,d,p,m;(function(){var e=[];if(Package["cmather:iron-layout"]&&e.push("\n\n The cmather:iron-{x} packages were migrated to the new package system with the wrong name, and you have duplicate copies.\n You can see which cmather:iron-{x} packages have been installed by using this command:\n\n > meteor list\n\n Can you remove any installed cmather:iron-{x} packages like this: \n\n > meteor remove cmather:iron-core\n > meteor remove cmather:iron-router\n > meteor remove cmather:iron-dynamic-template\n > meteor remove cmather:iron-dynamic-layout\n \n The new packages are named iron:{x}. For example:\n\n > meteor add iron:router\n\n Sorry for the hassle, but thank you! \n\n "),Package["cmather:blaze-layout"]&&e.push("The blaze-layout package has been replaced by iron-layout. Please remove the package like this:\n> meteor remove cmather:blaze-layout\n"),e.length>0)throw new Error("Sorry! Looks like there's a few errors related to iron:layout\n\n"+e.join("\n\n"))}).call(this),function(){r.__checkName("__IronDefaultLayout__"),r.__IronDefaultLayout__=new r("Template.__IronDefaultLayout__",function(){var e=this;return g.include(e.lookupTemplate("yield"))})}.call(this),function(){var e=h.DynamicTemplate,n=h.utils.inherits;d=function(e){for(;e;){if("Iron.Layout"===e.name)return e.__dynamicTemplate__;e=e.parentView}return null},p=function(e){var n=this;p.__super__.constructor.apply(this,arguments),e=e||{},this.name="Iron.Layout",this._regions={},this._regionHooks={},this.defaultTemplate("__IronDefaultLayout__"),e.content&&this.render(e.content)},m=p.DEFAULT_REGION="main",n(p,h.DynamicTemplate),p.prototype.region=function(e,n){return this._ensureRegion(e,n)},p.prototype.destroyRegions=function(){s.each(this._regions,function(e){e.destroy()}),this._regions={}},p.prototype.render=function(e,n){n=n||{};var t=n.to||n.region||m,r=this.region(t);this._trackRenderedRegion(t),r.template(e),r.data(n.data)},p.prototype.has=function(e){return e=e||p.DEFAULT_REGION,!!this._regions[e]},p.prototype.regionKeys=function(){return s.keys(this._regions)},p.prototype.clear=function(e){return e=e||p.DEFAULT_REGION,this.has(e)&&this.region(e).template(null),this},p.prototype.clearAll=function(){return s.each(this._regions,function(e){e.template(null)}),this},p.prototype.beginRendering=function(e){var n=this;if(this._finishRenderingTransaction&&this._finishRenderingTransaction(),this._finishRenderingTransaction=s.once(function(){var t=n._endRendering({flush:!1});e&&e(t)}),u.afterFlush(this._finishRenderingTransaction),this._renderedRegions)throw new Error("You called beginRendering again before calling endRendering");this._renderedRegions={}},p.prototype._trackRenderedRegion=function(e){this._renderedRegions&&(this._renderedRegions[e]=!0)},p.prototype._endRendering=function(e){e=e||{},e.flush!==!1&&u.flush();var n=this._renderedRegions||{};return this._renderedRegions=null,s.keys(n)},s.each(["onRegionCreated","onRegionRendered","onRegionDestroyed"],function(e){p.prototype[e]=function(n){var t=this._regionHooks[e]=this._regionHooks[e]||[];return t.push(n),this}}),p.prototype._ensureRegion=function(e,n){return this._regions[e]=this._regions[e]||this._createDynamicTemplate(e,n)},p.prototype._createDynamicTemplate=function(e,n){var t=this,r=new h.DynamicTemplate(n),o=h.utils.capitalize;return r._region=e,s.each(["viewCreated","viewReady","viewDestroyed"],function(e){e=o(e),r["on"+e](function(n){var r=this,o={viewCreated:"regionCreated",viewReady:"regionRendered",viewDestroyed:"regionDestroyed"}[e];t._runRegionHooks("on"+o,r,n)})}),r},p.prototype._runRegionHooks=function(e,n,t){for(var r=this,o=this._regionHooks[e]||[],i,a=0;a<o.length;a++)i=o[a],i.call(n,t.region,t,this)},"undefined"!=typeof r&&(i.registerHelper("yield",new r("yield",function(){var n=d(this);if(!n)throw new Error("No Iron.Layout found so you can't use yield!");var t=e.getInclusionArguments(this),r,o;return s.isString(t)?r=t:s.isObject(t)&&(r=t.region),r=r||m,o=n.region(r),o.isCreated&&o.destroy(),o.create()})),i.registerHelper("contentFor",new r("contentFor",function(){var n=d(this);if(!n)throw new Error("No Iron.Layout found so you can't use contentFor!");var t=e.getInclusionArguments(this)||{},r=this.templateContentBlock,o=t.template,i=t.data,a;if(s.isString(t))a=t;else{if(!s.isObject(t))throw new Error("Which region is this contentFor block supposed to be for?");a=t.region}return n.region(a).template(o||r),n._trackRenderedRegion(a),i&&n.region(a).data(i),null})),i.registerHelper("hasRegion",function(e){var n=d(o.getView());if(!n)throw new Error("No Iron.Layout found so you can't use hasRegion!");if(!s.isString(e))throw new Error("You need to provide an region argument to hasRegion");return!!n.region(e).template()}),i.registerHelper("Layout",new r("layout",function(){var e=h.DynamicTemplate.args(this),n=new p({template:function(){return e("template")},data:function(){return e("data")},content:this.templateContentBlock});return n.create()}))),h.Layout=p}.call(this),"undefined"==typeof Package&&(Package={}),Package["iron:layout"]={}}();
!function(){var e=Package.meteor.Meteor,r=Package.meteor.global,t=Package.meteor.meteorEnv,n=Package.underscore._,i=Package["iron:core"].Iron,o,a;(function(){(function(){function e(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function r(o,a,c){a&&"[object Array]"!==t(a)&&(c=a,a=null),a=a||[],c=c||{};var s=c.strict,u=c.end!==!1,p=c.sensitive?"":"i",f=0;if(o instanceof RegExp){var l=o.source.match(/\((?!\?)/g)||[];return a.push.apply(a,l.map(function(e,r){return{name:r,delimiter:null,optional:!1,repeat:!1}})),i(o,a)}if("[object Array]"===t(o))return o=o.map(function(e){return r(e,a,c).source}),i(new RegExp("(?:"+o.join("|")+")",p),a);o=o.replace(n,function(r,t,n,i,o,c,s,u){if(t)return t;if(u)return"\\"+u;var p="+"===s||"*"===s,l="?"===s||"*"===s;return a.push({name:i||f++,delimiter:n||"/",optional:l,repeat:p}),n=n?"\\"+n:"",o=e(o||c||"[^"+(n||"\\/")+"]+?"),p&&(o=o+"(?:"+n+o+")*"),l?"(?:"+n+"("+o+"))?":n+"("+o+")"});var g="/"===o[o.length-1];return s||(o=(g?o.slice(0,-2):o)+"(?:\\/(?=$))?"),u||(o+=s&&g?"":"(?=\\/|$)"),i(new RegExp("^"+o+(u?"$":""),p),a)}var t=function(e){return Object.prototype.toString.call(e)},n=new RegExp(["(\\\\.)","([\\/.])?(?:\\:(\\w+)(?:\\(((?:\\\\.|[^)])*)\\))?|\\(((?:\\\\.|[^)])*)\\))([+*?])?","([.+*?=^!:${}()[\\]|\\/])"].join("|"),"g"),i=function(e,r){return e.keys=r,e};o=r}).call(this),function(){function r(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(r){return void(r.constructor==URIError&&c("Tried to decode an invalid URI component: "+JSON.stringify(e)+" "+r.stack))}}function t(e){try{return decodeURI(e.replace(/\+/g," "))}catch(r){return void(r.constructor==URIError&&c("Tried to decode an invalid URI: "+JSON.stringify(e)+" "+r.stack))}}var c=i.utils.warn,s=i.utils.assert;a=function(e,r){r=r||{},this.options=r,this.keys=[],this.regexp=o(e,this.keys,r),this._originalPath=e,n.extend(this,a.parse(e))};var u=__meteor_runtime_config__.ROOT_URL;if(__meteor_runtime_config__.ROOT_URL_PATH_PREFIX){var p=__meteor_runtime_config__.ROOT_URL.indexOf(__meteor_runtime_config__.ROOT_URL_PATH_PREFIX);p!=-1&&(u=__meteor_runtime_config__.ROOT_URL.substr(0,p))}a.ROOT_URL_WITHOUT_PATH_PREFIX=u,a.normalize=function(e){if(e instanceof RegExp)return e;if("string"!=typeof e)return"/";var r=a.parse(e),t=r.pathname;return"/"!==t.charAt(0)&&(t="/"+t),t.length>1&&"/"===t.charAt(t.length-1)&&(t=t.slice(0,t.length-1)),t},a.isSameOrigin=function(e,r){var t=a.parse(e),n=a.parse(r),i=t.origin===n.origin;return i},a.fromQueryString=function(e){if(!e)return{};if("string"!=typeof e)throw new Error("expected string");"?"===e.charAt(0)&&(e=e.slice(1));var t=e.split("&"),i={},o;return n.each(t,function(e){var t=e.split("="),n=t[0],o=r(t[1]);"[]"===n.slice(-2)?(n=n.slice(0,-2),i[n]=i[n]||[],i[n].push(o)):i[n]=o}),i},a.toQueryString=function(e){var r=[];return"string"==typeof e?"?"!==e.charAt(0)?"?"+e:e:(n.each(e,function(e,t){n.isArray(e)?n.each(e,function(e){r.push(encodeURIComponent(t+"[]")+"="+encodeURIComponent(e))}):r.push(encodeURIComponent(t)+"="+encodeURIComponent(e))}),r.length>0?"?"+r.join("&"):"")},a.parse=function(e){if("string"!=typeof e)return{};var r=/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,t=e.match(r),n=t[1]?t[1].toLowerCase():void 0,i=t[3],o=!!i,c=t[4]?t[4].toLowerCase():void 0,s=c?c.split("@"):[],u,p;2==s.length?(p=s[0],u=s[1]):1==s.length?(u=s[0],p=void 0):(u=void 0,p=void 0);var f=u&&u.split(":")||[],l=f[0],g=f[1],h=n&&u?n+"//"+u:void 0,_=t[5],m=t[8],d=e,R=t[6],v,y=m&&m.indexOf("?")||-1;~y&&!R?(R=m.slice(y),m=m.substr(0,y),v=R.slice(1)):v=t[7];var U=_+(R||""),O=a.fromQueryString(v),P=[n||"",o?"//":"",c||""].join(""),x=[n||"",o?"//":"",c||"",_||"",R||"",m||""].join("");return{rootUrl:P||"",originalUrl:e||"",href:x||"",protocol:n||"",auth:p||"",host:u||"",hostname:l||"",port:g||"",origin:h||"",path:U||"",pathname:_||"",search:R||"",query:v||"",queryObject:O||"",hash:m||"",slashes:o}},a.prototype.test=function(e){return e=a.normalize(e),e=a.trimPathPrefixAccordingToMeteorRootUrlSettingsForRouteMatching(e),this.regexp.test(e)},a.prototype.exec=function(e){return e=a.normalize(e),e=a.trimPathPrefixAccordingToMeteorRootUrlSettingsForRouteMatching(e),this.regexp.exec(e)},a.prototype.params=function(e){if(!e)return[];var n=[],i=this.exec(e),o,c=this.keys,s,u;if(!i)throw new Error('The route named "'+this.name+'" does not match the path "'+e+'"');for(var p=1,f=i.length;p<f;++p)s=c[p-1],u="string"==typeof i[p]?r(i[p]):i[p],s?n[s.name]=void 0!==n[s.name]?n[s.name]:u:n.push(u);return e=t(e),"undefined"!=typeof e&&(o=e.split("?")[1],o&&(o=o.split("#")[0]),n.hash=e.split("#")[1]||null,n.query=a.fromQueryString(o)),n},a.prototype.resolve=function(e,r){var t,i,o,c=0,s=this._originalPath,u,p,f=[],l=e;if(r=r||{},e=e||[],p=r.query,u=r.hash&&r.hash.toString(),s instanceof RegExp)throw new Error("Cannot currently resolve a regular expression path");if(s=s.replace(/(\/)?(\.)?:(\w+)(?:(\(.*?\)))?(\?)?/g,function(r,o,a,c,s,u,p){if(o=o||"",t=e[c],i="undefined"!=typeof t,u&&!i)t="";else if(!i)return void f.push(c);t=n.isFunction(t)?t.call(e):t;var l=n.map(String(t).split("/"),function(e){return encodeURIComponent(e)}).join("/");return o+l}).replace(/\*/g,function(r){if("undefined"==typeof e[c])throw new Error("You are trying to access a wild card parameter at index "+c+" but the value of params at that index is undefined");var t=String(e[c++]);return n.map(t.split("/"),function(e){return encodeURIComponent(e)}).join("/")}),p=a.toQueryString(p),s+=p,u&&(u=encodeURI(u.replace("#","")),s=s+"#"+u),s=s.replace(/\/+/g,"/"),s=s.replace(/^(.+)\/$/g,"$1"),s=__meteor_runtime_config__.ROOT_URL_PATH_PREFIX+s,0==f.length)return s;if(r.throwOnMissingParams===!0)throw new Error("Missing required parameters on path "+JSON.stringify(this._originalPath)+". The missing params are: "+JSON.stringify(f)+". The params object passed in was: "+JSON.stringify(l)+".");return null},a.trimPathPrefixAccordingToMeteorRootUrlSettingsForRouteMatching=function(r){var t=__meteor_runtime_config__.ROOT_URL_PATH_PREFIX;return e.isClient&&t&&(s(r.substring(0,t.length)===t,"Unknown path prefix, expected: '"+t+"'"),r=r.substring(t.length)),r},i.Url=a}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(e,r){for(var t in r)t in e||(e[t]=r[t])}(Package["clinical:router-url"]={},{Url:a})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.underscore._,i=Package.ejson.EJSON,o=Package["iron:core"].Iron,a=Package["clinical:router-url"].Url,s,h;(function(){var t=o.Url;s=function(e,n,i){r.isFunction(e)&&(i=i||n||{},n=e,e="/",this.middleware=!0,"undefined"==typeof i.mount&&(i.mount=!0)),"object"==typeof n&&(i=n,n=i.action||"action"),i=i||{},this.options=i,this.mount=i.mount,this.method=i.method&&i.method.toLowerCase()||!1,this.where=i.where||"client",this.mount&&(i.end=!1),i.name?this.name=i.name:"string"==typeof e&&"/"!==e.charAt(0)?this.name=e:"string"==typeof e&&"/"!==e&&(this.name=e.split("/").slice(1).join(".")),e=i.path||e,"string"==typeof e&&"/"!==e.charAt(0)&&(e="/"+e),this.path=e,this.compiledUrl=new t(e,i),r.isString(n)?this.handle=function t(){var e=this[n];if("function"!=typeof e)throw new Error("No method named "+JSON.stringify(n)+" found on handler.");return e.apply(this,arguments)}:r.isFunction(n)&&(this.handle=n)},s.prototype.test=function(t,e){e=e||{};var n=this.compiledUrl.test(t),r=!0,i=!0;return this.method&&e.method&&(r=this.method==e.method.toLowerCase()),e.where&&(i=this.where==e.where),n&&r&&i},s.prototype.params=function(t){return this.compiledUrl.params(t)},s.prototype.resolve=function(t,e){return this.compiledUrl.resolve(t,e)},s.prototype.clone=function(){var t=new s(this.path,this.handle,this.options);return t.name=this.name,t}}).call(this),function(){var e=o.Url,n=o.utils.assert,a=o.utils.defaultValue;h=function(){this._stack=[],this.length=0},h.prototype._create=function(t,e,n){var i=new s(t,e,n),o=i.name;if(o){if(r.has(this._stack,o))throw new Error("Handler with name '"+o+"' already exists.");this._stack[o]=i}return i},h.prototype.findByName=function(t){return this._stack[t]},h.prototype.push=function(t,e,n){var r=this._create(t,e,n);return this._stack.push(r),this.length++,r},h.prototype.append=function(){var t=this,e=r.toArray(arguments),n={};return"object"==typeof e[e.length-1]&&(n=e.pop()),r.each(e,function(e){if("undefined"!=typeof e)if("function"==typeof e)t.push(e,n);else{if(!r.isArray(e))throw new Error("Can only append functions or arrays to the MiddlewareStack");t.append.apply(t,e.concat([n]))}}),this},h.prototype.insertAt=function(t,e,n,r){var i=this._create(e,n,r);return this._stack.splice(t,0,i),this.length=this._stack.length,this},h.prototype.insertBefore=function(t,e,n,i){var o,a;if(!(o=this._stack[t]))throw new Error("Couldn't find a handler named '"+t+"' on the path stack");return a=r.indexOf(this._stack,o),this.insertAt(a,e,n,i),this},h.prototype.insertAfter=function(t,e,n,i){var o,a;if(!(o=this._stack[t]))throw new Error("Couldn't find a handler named '"+t+"' on the path stack");return a=r.indexOf(this._stack,o),this.insertAt(a+1,e,n,i),this},h.prototype.concat=function(){var t=new h,e=Array.prototype.concat,n=i.clone(this._stack),o=r.map(r.toArray(arguments),function(t){return i.clone(t._stack)});return t._stack=e.apply(n,o),t.length=t._stack.length,t},h.prototype.dispatch=function r(i,o,s){var h=this,l=i;n("string"==typeof i,"Requires url"),n("object"==typeof o,"Requires context object"),i=e.normalize(i||"/"),a(o,"request",{}),a(o,"response",{}),a(o,"originalUrl",i),a(o,"_method",o.method),a(o,"_handlersForEnv",{client:!1,server:!1}),a(o,"_handled",!1),a(o,"isHandled",function(){return o._handled}),a(o,"willBeHandledOnClient",function(){return o._handlersForEnv.client}),a(o,"willBeHandledOnServer",function(){return o._handlersForEnv.server});var c=function(){if(s)try{s.apply(this,arguments)}catch(t){throw t._punt=!0,t}},u=0,d=t.bindEnvironment(function n(r){var a=h._stack[u++];if(o.url=o.request.url=o.originalUrl,!a)return c.call(o,r);if(!a.test(i,{method:o._method}))return d(r);var s=t.isClient?"client":"server";if(a.middleware||(o._handlersForEnv[a.where]=!0),a.where!==s)return d(r);if(o.next=d,a.mount){var l=e.normalize(a.compiledUrl.pathname),p=i.substr(l.length,i.length);p=e.normalize(p),o.url=o.request.url=p}try{var f=a.handle.length,m=o.request,y=o.response;return r&&4===f?a.handle.call(o,r,m,y,d):!r&&f<4?a.handle.call(o,m,y,d):d(r)}catch(t){if(t._punt)throw t;d(t)}finally{o._handled=!0,o.next=null}});return d(),o.next=null,o},o=o||{},o.MiddlewareStack=h}.call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var n in e)n in t||(t[n]=e[n])}(Package["clinical:router-middleware-stack"]={},{MiddlewareStack:h,Handler:s})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.underscore._,r=Package.tracker.Tracker,o=Package.tracker.Deps,i=Package.jquery.$,c=Package.jquery.jQuery,s=Package["iron:core"].Iron,h=Package["clinical:router-url"].Url,u,l,f,p,g;(function(){(function(){var t=s.Url,e="__hash__";u=function(n){var a=t.parse(n),r=a.hash&&a.hash.replace("#",""),o=a.search,i=a.pathname,c=a.rootUrl;if(r&&"!"!==r.charAt(0)){var s=e+"="+r;o=o?o+"&":"?",o+=s,r=""}return!r&&i?r="#!"+i.substring(1):r&&(r="#"+r),[c,r,o].join("")},l=function(n){var r=t.parse(n),o=r.hash&&r.hash.replace("#!","/"),i=r.search,c=r.rootUrl,s;return a.has(r.queryObject,e)?(s="#"+r.queryObject[e],delete r.queryObject[e]):s="",[c,o,t.toQueryString(r.queryObject),s].join("")},f=function(n){var a=t.parse(n),r=a.queryObject;return a.hash&&(r[e]=a.hash.replace("#","")),["!",a.pathname.substring(1),t.toQueryString(r)].join("")}}).call(this),function(){var t=s.Url;p=function(e,n){a.extend(this,t.parse(e),{options:n||{}})},p.prototype.equals=function(t){return!!t&&(t instanceof p&&(t.pathname==this.pathname&&t.search==this.search&&t.hash==this.hash&&t.options.historyState===this.options.historyState))},p.prototype.isCancelled=function(){return!!this._isCancelled},p.prototype.cancelUrlChange=function(){this._isCancelled=!0}}.call(this),function(){var e=s.Url,n=null,r=new o.Dependency,c={go:[],popState:[]},h=function(){return/MSIE 9/.test(navigator.appVersion)},y=function(){return/MSIE 8/.test(navigator.appVersion)},d=function(){return!!Package.appcache},S=function(){return"undefined"==typeof history||"function"!=typeof history.pushState},v=function(){return g.options.useHashPaths||y()||h()||d()||S()},k=function(){return!!g.options.useHashPaths},P=function(t,e){a.each(c[t],function(t){t.call(e)})},w=function(t){if(!(t instanceof p))throw new Error("Expected a State instance");return!t.equals(n)&&(n=t,r.changed(),!0)},m=function(){var t=location.href,e;e=k()?new p(l(t)):new p(t,{historyState:history.state}),P("popState",e),w(e)},j=function(t){var e=q;e&&e(t)},_=function(t,e){e=e||{};var n=new p(t,e);P("go",n),w(n)&&o.afterFlush(function(){n.isCancelled()||(k()?location.hash=f(t):e.replaceState===!0?history.replaceState(e.historyState,null,t):history.pushState(e.historyState,null,t))})},q=function(t){try{var n=t.currentTarget,a=n.href,r=n.pathname+n.search+n.hash;if(r=r.replace(/(^\/?)/,"/"),t.isDefaultPrevented())return void t.preventDefault();if(t.metaKey||t.ctrlKey||t.shiftKey)return;if(n.target)return;if(!e.isSameOrigin(a,location.href))return;t.preventDefault(),_(r)}catch(e){throw t.preventDefault(),e}};g={},g.options={linkSelector:"a[href]",useHashPaths:!1},g.configure=function(t){a.extend(this.options,t||{})},g.get=function(){return r.depend(),n},g.start=function(){if(!this._isStarted){var n=e.parse(location.href);if(v()){if(n.pathname.length>1){var a=u(location.href);window.location=a}this.configure({useHashPaths:!0})}var r=location.href;if(k()){var o=new p(l(r));w(o)}else{if("!"===n.hash.replace("#","")[0])var r=l(r);var c={initial:!0};history.replaceState(c,null,r);var o=new p(r,{historyState:c});w(o)}i(window).on("popstate.iron-location",m),i(window).on("hashchange.iron-location",m),t.startup(function(){i(document).on("click.iron-location",g.options.linkSelector,j)}),this._isStarted=!0}},g.stop=function(){this._isStarted&&(i(window).on("popstate.iron-location"),i(window).on("hashchange.iron-location"),i(document).off("click.iron-location"),this._isStarted=!1)},g.onClick=function(t){q=t},g.go=function(t,e){return _(t,e)},g.onGo=function(t){c.go.push(t)},g.onPopState=function(t){c.popState.push(t)},g.start(),s.Location=g}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var n in e)n in t||(t[n]=e[n])}(Package["clinical:router-location"]={},{urlToHashStyle:u,urlFromHashStyle:l})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.underscore._,o=Package.tracker.Tracker,i=Package.tracker.Deps,r=Package["reactive-dict"].ReactiveDict,u=Package["templating-runtime"].Template,s=Package["iron:core"].Iron,c=Package.blaze.Blaze,l=Package.blaze.UI,p=Package.blaze.Handlebars,d=Package.spacebars.Spacebars,y=Package.htmljs.HTML,h,f;(function(){var t=s.utils.assert,e=function(){for(var t={},e=i.currentComputation;e;)t[String(e._id)]=!0,e=e._parent;return t},n=function(n){var o=e(),i=a.keys(n._dependentsById);a.each(i,function(e){t(!o[e],"\n\nYou called wait() after calling ready() inside the same computation tree.\n\nYou can fix this problem in two possible ways:\n\n1) Put all of your wait() calls before any ready() calls.\n2) Put your ready() call in its own computation with Deps.autorun.")})};h=function(){this._readyDep=new i.Dependency,this._comps=[],this._notReadyCount=0},h.prototype.wait=function(t){var e=this,o=i.currentComputation;n(e._readyDep),i.nonreactive(function(){var n=null,r=i.autorun(function(a){var o=!!t(),i=e._notReadyCount;a.firstRun&&!o?e._notReadyCount++:null!==n&&o!==n&&o===!0?e._notReadyCount--:null!==n&&o!==n&&o===!1&&e._notReadyCount++,n=o,0===i&&e._notReadyCount>0?e._readyDep.changed():i>0&&0===e._notReadyCount&&e._readyDep.changed()});e._comps.push(r),o&&o.onInvalidate(function(){i.afterFlush(function(){r.stop(),e._comps.splice(a.indexOf(e._comps,r),1),n===!1&&(e._notReadyCount--,0===e._notReadyCount&&e._readyDep.changed())})})})},h.prototype.ready=function(){return this._readyDep.depend(),0===this._notReadyCount},h.prototype.stop=function(){a.each(this._comps,function(t){t.stop()}),this._comps=[]},s.WaitList=h}).call(this),function(){var t=s.utils.debug("iron:controller"),e=s.Layout,n=s.DynamicTemplate,o=function(t,e){return function(){return"function"==typeof t?t.apply(e,arguments):t}};f=function(t){var n=this;this.options=t||{},this._layout=this.options.layout||new e(this.options),this._isController=!0,this._layout._setLookupHost(this);var a=f._collectEventMaps.call(this.constructor);this._layout.events(a,this),this.init(t)},f.prototype.layout=function(t,e){var n=this;return this._layout.template(t),e&&a.has(e,"data")&&this._layout.data(o(e.data,this)),{data:function(t){return n._layout.data(o(t,n))}}},f.prototype.render=function(t,e){var n=this;e&&"undefined"!=typeof e.data&&(e.data=o(e.data,this));var a=this._layout.render(t,e);return{data:function(t){return a.data(o(t,n))}}},f.prototype.beginRendering=function(t){return this._layout.beginRendering(t)},f.extend=function(t){return s.utils.extend(this,t)},f.events=function(t){return this._eventMap=t,this};var i=function(t,e){var n={};return t.__super__&&a.extend(n,i(t.__super__.constructor,e)),a.has(t,e)?a.extend(n,t[e]):n};f._collectEventMaps=function(){return i(this,"_eventMap")},f._helpers={},f.helpers=function(t){return a.extend(this._helpers,t),this},"undefined"!=typeof u&&(s.controller=function(){return n.findLookupHostWithProperty(c.getView(),"_isController")},u.registerHelper("get",function(t){var e=s.controller();if(e&&e.state)return e.state.get(t)})),s.Controller=f}.call(this),function(){var t=s.Layout,e=s.utils.debug("iron:controller"),n=s.utils.defaultValue,o=function(t,e){return function(){return"function"==typeof t?t.apply(e,arguments):t}};f.prototype.init=function(t){this._waitlist=new h,this.state=new r},f.prototype.insert=function(t){return this._layout.insert.apply(this._layout,arguments)},f.prototype.wait=function(t){var e=this;if(t)return a.isArray(t)?a.each(t,function t(n){e.wait(n)}):t.ready?this._waitlist.wait(function(){return t.ready()}):this._waitlist.wait(t),this},f.prototype.ready=function(){return this._waitlist.ready()},f.prototype.stop=function(){this._waitlist.stop()}}.call(this),"undefined"==typeof Package&&(Package={}),Package["iron:controller"]={}}();
!function(){var t=Package.underscore._,o=Package.tracker.Tracker,e=Package.tracker.Deps,r=Package.blaze.Blaze,n=Package.blaze.UI,i=Package.blaze.Handlebars,a=Package["templating-runtime"].Template,u=Package.ejson.EJSON,s=Package.meteor.Meteor,l=Package.meteor.global,c=Package.meteor.meteorEnv,p=Package["iron:core"].Iron,h=Package["clinical:router-middleware-stack"].MiddlewareStack,f=Package["clinical:router-url"].Url,d=Package.htmljs.HTML,y=Package.spacebars.Spacebars,_,m,g,v,k,w;(function(){(function(){_=new s.EnvironmentVariable}).call(this),function(){m=["get","post","put","delete","patch"]}.call(this),function(){var o=p.Controller,e=p.Url,r=p.MiddlewareStack,n=p.utils.assert;g=o.extend({constructor:function(o){g.__super__.constructor.apply(this,arguments),o=o||{},this.options=o,this._onStopCallbacks=[],this.route=o.route,this.params=[];var e=this.lookupOption("data");"function"==typeof e?this.data=t.bind(e,this):"undefined"!=typeof e&&(this.data=function(){return e}),this.init(o)}}),g.prototype.lookupOption=function(o){if(this.route&&this.route.options&&t.has(this.route.options,o))return this.route.options[o];if(t.has(this.options,o))return this.options[o];if("undefined"!=typeof this[o])return this[o];var e=_.get();return e&&t.has(e,o)?e[o]:this.router&&this.router.options&&t.has(this.router.options,o)?this.router.options[o]:void 0},g.prototype.configureFromUrl=function(t,o,e){n("string"==typeof t,"url must be a string"),o=o||{},this.request=o.request||{},this.response=o.response||{},this.url=o.url||t,this.originalUrl=o.originalUrl||t,this.method=this.request.method,this.route&&this.setParams(this.route.params(t),e)},g.prototype._collectHooks=function(){var o=this,e=t.toArray(arguments),r=function(e){if(!e)return[];var r=o.router.lookupHook,n=t.isArray(e)?e:[e];return t.map(n,function(t){return r(t)})},n=function(o,e){var i=[];return o.__super__&&(i=i.concat(n(o.__super__.constructor,e))),t.has(o.prototype,e)?i.concat(r(o.prototype[e])):i},i=function(t){for(var o=0;o<e.length;o++)t(e[o])},a=[];i(function(t){var e=o.route&&o.route.getName(),r=o.router.getHooks(t,e);a=a.concat(r)});var u=[];i(function(t){var e=n(o.constructor,t);u=u.concat(e)});var s=[];i(function(e){if(t.has(o,e)){var n=r(o[e]);s=s.concat(n)}});var l=[];o.route&&i(function(t){var e=r(o.route.options[t]);l=l.concat(e)});var c=a.concat(l).concat(u).concat(s);return c},g.prototype.runHooks=function(){for(var t=this._collectHooks.apply(this,arguments),o=0,e=t.length;o<e;o++){var r=t[o];r.call(this)}return t.length},g.prototype.getParams=function(){return this.params},g.prototype.setParams=function(t){return this.params=t,this},p.RouteController=g}.call(this),function(){var r=p.Controller,n=p.Url,i=p.MiddlewareStack,a=p.utils.debug("iron-router:RouteController");if(g.prototype.init=function(t){g.__super__.init.apply(this,arguments),this._computation=null,this._paramsDep=new o.Dependency,this.location=p.Location},g.prototype.getParams=function(){return this._paramsDep.depend(),this.params},g.prototype.setParams=function(o,e){var r=function(o,r){if(!(o instanceof Array))throw new Error("you called equals with a non array value in setParams");if(!(r instanceof Array))return!1;if(o.length!==r.length)return!1;for(var n=0;n<o.length;n++)if(!u.equals(o[n],r[n],e))return!1;var i=t.keys(o),a=t.keys(r),s;if(i.length!==a.length)return!1;for(var n=0;n<i.length;n++){if(s=i[n],!t.has(r,s))return!1;if(!u.equals(o[s],r[s]))return!1}return!0};if(!r(this.params,o))return this.params=o,e=e||{},e.reactive!==!1&&this._paramsDep.changed(),this},g.prototype.dispatch=function(t,o,r){if(this._computation&&!this._computation.stopped)throw new Error("RouteController computation is already running. Stop it first.");var n=this;return e.nonreactive(function(){e.autorun(function(e){n._computation=e,t.dispatch(o,n,r)})}),n},g.prototype._runRoute=function(o,r,n){var a=this,u=this._collectHooks("subscriptions");t.each(u,function(t){a.wait(t.call(a))});var s=this._collectHooks("waitOn");t.each(s,function(t){a.wait(t.call(a))});var l=s.length>0,c,h,f=function(){return e.nonreactive(function(){return a._layout.template()})},d=function(){return e.nonreactive(function(){var t=a._layout._regions.main;return t&&t.template()})},y=f(),_=d();this.beginRendering(function o(e){if(!a.isStopped){var r=f(),n=d();if(y!==r||_!=n){var i=a._layout.regionKeys(),u=t.difference(i,e);t.each(u,function(t){a._layout.clear(t)})}}}),this.layout(this.lookupOption("layoutTemplate"),{data:this.lookupOption("data")});var m=new i,v=new i,k=new i;v.append(this._collectHooks("onRun","load"),{where:"client"}),k.append(this._collectHooks("onRerun"),{where:"client"}),m.append(function t(o,e,r){this._computation.firstRun&&!g._hasJustReloaded&&v.length>0?v.dispatch(o.url,this,r):r(),g._hasJustReloaded=!1},function t(o,e,r){this._computation.firstRun?r():k.length>0?k.dispatch(o.url,this,r):r()},{where:"client"}),l&&m.push(t.bind(p.Router.hooks.loading,a));var w=this._collectHooks("onBeforeAction","before");m.append(w,{where:"client"}),0===o._actionStack.length&&o._actionStack.push(o._path,"action",o.options),m=m.concat(o._actionStack),this._rendered=!1,m.dispatch(r,this,n),e.afterFlush(function(){p.utils.warn(a._rendered||a.isStopped,"Route dispatch never rendered. Did you forget to call this.next() in an onBeforeAction?")}),this.runHooks("onAfterAction","after")},g.prototype.action=function(){this.render()},g.prototype.lookupTemplate=function(){return this.lookupOption("template")||this.router&&this.router.toTemplateName(this.route.getName())},g.prototype.lookupRegionTemplates=function(){return this.lookupOption("yieldRegions")||this.lookupOption("regionTemplates")||this.lookupOption("yieldTemplates")||{}},g.prototype.render=function(t,o){if(this._rendered=!0,0===arguments.length){var t=this.lookupTemplate(),e=g.__super__.render.call(this,t);return this.renderRegions(),e}return g.__super__.render.call(this,t,o)},g.prototype.renderRegions=function(){var o=this,e=this.lookupRegionTemplates();a("regionTemplates: "+JSON.stringify(e)),t.each(e,function(t,e){o.render(e,t)})},g.prototype.stop=function(){g.__super__.stop.call(this),this._computation&&this._computation.stop(),this.runHooks("onStop","unload"),this.isStopped=!0},g.prototype.redirect=function(){return this.router.go.apply(this.router,arguments)},g.prototype.subscribe=function(){var o=this,e=s.subscribe.apply(this,arguments);return t.extend(e,{wait:function(){o.wait(this)}})},Package.reload){Package.reload.Reload._onMigrate("iron-router",function(){return[!0,!0]});var l=Package.reload.Reload._migrationData("iron-router");g._hasJustReloaded=l}}.call(this),function(){var o=p.Url,e=p.MiddlewareStack,r=p.utils.assert;v=function(o,r,n){var i=function(t,o,e){var r=this;r.request=t,r.response=o,i.dispatch(t.url,r,e)};return"object"==typeof r&&(n=r,r=n.action),n=n||{},"string"==typeof o&&"/"!==o.charAt(0)&&(o=n.path?n.path:"/"+o),t.extend(i,this.constructor.prototype),n=i.options=n||{},i._actionStack=new e,i._beforeStack=new e,i._beforeStack.append(i.options.onBeforeAction),i._beforeStack.append(i.options.before),i._afterStack=new e,i._afterStack.append(i.options.onAfterAction),i._afterStack.append(i.options.after),i._methods={},"string"==typeof r?i._actionStack.push(o,t.extend(n,{template:r})):"function"!=typeof r&&"object"!=typeof r||i._actionStack.push(o,r,n),i._path=o,i},v.prototype.getName=function(){return this.handler&&this.handler.name},v.prototype.findControllerConstructor=function(){var t=this,o=function(t,o){o=o||{};var e=p.utils.resolve(t);if(e&&g.prototype.isPrototypeOf(e.prototype))return e;if(o.supressErrors!==!0)throw new Error("RouteController '"+t+"' is not defined.")},e=function(o){return t.router.toControllerName(o)},r,n=this.getName();return"function"==typeof this.options.controller?this.options.controller:"string"==typeof this.options.controller?o(this.options.controller):this.router&&this.router.options.controller?"function"==typeof this.router.options.controller?this.router.options.controller:"string"==typeof this.router.options.controller?o(this.router.options.controller):void 0:n&&(r=o(e(n),{supressErrors:!0}))?r:g},v.prototype.createController=function(t){t=t||{};var o=this.findControllerConstructor();t.route=this;var e=new o(t);return e},v.prototype.setControllerParams=function(t,o){},v.prototype.dispatch=function(t,o,e){return r(o._runRoute,"context doesn't have a _runRoute method"),o._runRoute(this,t,e)},v.prototype.path=function(t,o){return this.handler.resolve(t,o)},v.prototype.url=function(t,o){var e=this.path(t,o),r=o&&o.host||s.absoluteUrl();return"/"===r.charAt(r.length-1),r=r.slice(0,r.length-1),r+e},v.prototype.params=function(t){return this.handler.params(t)},t.each(m,function(t){v.prototype[t]=function(o){return this._methods[t]=!0,this._actionStack.push(this._path,o,{name:this.getName()+"_"+t.toLowerCase(),method:t,where:this.handler.where,mount:!1}),this}}),p.Route=v}.call(this),function(){var o=p.MiddlewareStack,e=p.Url,r=p.Layout,n=p.utils.warn,i=p.utils.assert;k=function(e){function r(t,o,e){r.dispatch(t.url,{request:t,response:o},e)}return r._stack=new o,r._globalHooks={},r.routes=[],r.routes._byPath={},this.configure.call(r,e),t.extend(r,this.constructor.prototype),this.init.call(r,e),s.startup(function(){s.defer(function(){r.options.autoStart!==!1&&r.start()})}),r},k.prototype.init=function(t){},k.prototype.configure=function(o){var e=this;o=o||{};var r=function(o){return o?t.isArray(o)?o:[o]:[]};return t.each(p.Router.HOOK_TYPES,function n(i){o[i]&&(t.each(r(o[i]),function t(o){e.addHook(i,o)}),delete o[i])}),this.options=this.options||{},t.extend(this.options,o),this},k.prototype.map=function(t){return t.call(this)},k.prototype.route=function(t,o,e){var r=function(t){return Object.prototype.toString.call(t)};i("[object String]"===r(t)||"[object RegExp]"===r(t),"Router.route requires a path that is a string or regular expression."),"object"==typeof o&&(e=o,o=e.action);var n=new v(t,o,e);e=e||{},e.mount=!1;var a=this._stack.push(t,n,e);return a.route=n,n.handler=a,n.router=this,i(!this.routes._byPath[a.path],"A route for the path "+JSON.stringify(a.path)+" already exists by the name of "+JSON.stringify(a.name)+"."),this.routes._byPath[a.path]=n,this.routes.push(n),"string"==typeof a.name&&(this.routes[a.name]=n),n},k.prototype.findFirstRoute=function(t){for(var o,e,r=0;r<this.routes.length;r++)if(w=this.routes[r],o=w.handler.test(t,{where:s.isServer?"server":"client"}))return w;return null},k.prototype.path=function(t,o,e){var r=this.routes[t];return n(r,"You called Router.path for a route named "+JSON.stringify(t)+" but that route doesn't seem to exist. Are you sure you created it?"),r&&r.path(o,e)},k.prototype.url=function(t,o,e){var r=this.routes[t];return n(r,"You called Router.url for a route named "+JSON.stringify(t)+" but that route doesn't seem to exist. Are you sure you created it?"),r&&r.url(o,e)},k.prototype.createController=function(t,o){var e=this.findFirstRoute(t),r;return o=o||{},r=e?e.createController({layout:this._layout}):new g({layout:this._layout}),r.router=this,r.configureFromUrl(t,o,{reactive:!1}),r},k.prototype.setTemplateNameConverter=function(t){return this._templateNameConverter=t,this},k.prototype.setControllerNameConverter=function(t){return this._controllerNameConverter=t,this},k.prototype.toTemplateName=function(t){return this._templateNameConverter?this._templateNameConverter(t):p.utils.classCase(t)},k.prototype.toControllerName=function(t){return this._controllerNameConverter?this._controllerNameConverter(t):p.utils.classCase(t)+"Controller"},k.prototype.addHook=function(o,e,r){var n=this;r=r||{};var i=function(o){return o?t.isArray(o)?o:[o]:[]};r.only&&(r.only=i(r.only)),r.except&&(r.except=i(r.except));var a=this._globalHooks[o]=this._globalHooks[o]||[],u=function(){var t=this,o=arguments;return _.withValue(r,function(){return n.lookupHook(e).apply(t,o)})};return a.push({options:r,hook:u}),this},k.prototype.lookupHook=function(o){var e=o;if(t.isFunction(e))return e;if(t.isString(e)&&t.isFunction(p.Router.hooks[e]))return p.Router.hooks[e];throw new Error("No hook found named: "+o)},k.prototype.getHooks=function(o,e){var r=this,n=[];return t.each(this._globalHooks[o],function(o){var r=o.options;return r.except&&t.include(r.except,e)?[]:r.only&&!t.include(r.only,e)?[]:void n.push(o.hook)}),n},k.HOOK_TYPES=["onRun","onRerun","onBeforeAction","onAfterAction","onStop","waitOn","subscriptions","load","before","after","unload"],k.hooks={},k.plugins={},t.each(k.HOOK_TYPES,function(t){k.prototype[t]=function(o,e){this.addHook(t,o,e)}}),k.prototype.plugin=function(t,o){var e;if("function"==typeof t?e=t:"string"==typeof t&&(e=p.Router.plugins[t]),!e)throw new Error("No plugin found named "+JSON.stringify(t));return e.call(this,this,o),this},p.Router=k}.call(this),function(){if("undefined"!=typeof a)var t=new a("DefaultLoadingTemplate",function(){return"Loading..."}),o=new a("DefaultDataNotFoundTemplate",function(){return"Data not found..."});k.hooks.loading=function(){if(this.ready())return void this.next();var o=this.lookupOption("loadingTemplate");this.render(o||t),this.renderRegions()},k.hooks.dataNotFound=function(){if(!this.ready())return void this.next();var t=this.lookupOption("data"),e,r=this.lookupOption("notFoundTemplate");return"function"!=typeof t||(e=t.call(this))?void this.next():(this.render(r||o),void this.renderRegions())}}.call(this),function(){var o=p.utils.warn,e=p.DynamicTemplate,i=p.utils.debug("clinincal:router <helpers>");n.registerHelper("Router",new r.Template("Router",function(){return k.createView()})),n.registerHelper("pathFor",function(e){var r;arguments.length>1&&(r=arguments[0],e=arguments[1]||{});var n=e&&e.hash;n=n||{};var i="",a=n.query,s=n.hash,r=r||n.route,l=t.extend({},n.data||this),c=k.routes[r];return o(c,"pathFor couldn't find a route named "+JSON.stringify(r)),c&&(t.each(c.handler.compiledUrl.keys,function(o){var e=o.name;t.has(n,e)&&(l[e]=u.clone(n[e]),delete n[e])}),i=c.path(l,{query:a,hash:s})),i}),n.registerHelper("urlFor",function(e){var r;arguments.length>1&&(r=arguments[0],e=arguments[1]||{});var n=e&&e.hash;n=n||{};var i="",a=n.query,s=n.hash,r=r||n.route,l=t.extend({},n.data||this),c=k.routes[r];return o(c,"urlFor couldn't find a route named "+JSON.stringify(r)),c&&(t.each(c.handler.compiledUrl.keys,function(o){var e=o.name;t.has(n,e)&&(l[e]=u.clone(n[e]),delete n[e])}),i=c.url(l,{query:a,hash:s})),i}),n.registerHelper("linkTo",new r.Template("linkTo",function(){var n=this,i=e.getInclusionArguments(this);if("object"!=typeof i)throw new Error("linkTo options must be key value pairs such as {{#linkTo route='my.route.name'}}. You passed: "+JSON.stringify(i));i=i||{};var a="",s=i.query,l=i.hash,c=i.route,p=t.extend({},i.data||e.getParentDataContext(this)),h=k.routes[c],f;o(h,"linkTo couldn't find a route named "+JSON.stringify(c)),h&&(t.each(h.handler.compiledUrl.keys,function(o){var e=o.name;t.has(i,e)&&(p[e]=u.clone(i[e]),delete i[e])}),a=h.path(p,{query:s,hash:l}));var y=t.omit(i,"route","query","hash","data");return y.href=a,r.With(function(){return e.getParentDataContext(n)},function(){return d.A(y,n.templateContentBlock)})}))}.call(this),function(){var o=p.MiddlewareStack,r=p.Url,n=p.Layout,i=p.utils.assert,a="__IronRouterNotFound__",u="__IronRouterNoRoutes__";k.prototype.init=function(t){var o=this;o._currentController=null,o._currentRoute=null,o._currentDep=new e.Dependency,o._locationComputation=null,o._layout=new n({template:o.options.layoutTemplate}),s.startup(function(){setTimeout(function t(){o.options.autoRender!==!1&&o.insert({el:document.body})})})},k.prototype.insert=function(t){return this._layout.insert(t),this},k.prototype.createView=function(){return this._layout.create()},k.prototype.lookupNotFoundTemplate=function(){return this.options.notFoundTemplate?this.options.notFoundTemplate:0===this.routes.length?u:a},k.prototype.lookupLayoutTemplate=function(){return this.options.layoutTemplate},k.prototype.dispatch=function(t,o,r){var n=this;i("string"==typeof t,"expected url string in router dispatch");var s=this._currentController,l=this.findFirstRoute(t),c=this._currentRoute;return this._currentRoute=l,this._currentController&&this._currentController.stop(),s&&l&&c===l?s.configureFromUrl(t,o):s=this.createController(t,o),this._currentController=s,s.dispatch(n._stack,t,function t(o){if(o)throw o;if(!s.isHandled()){var i=e.nonreactive(function(){return s.location.get().options.historyState});if(i&&i.initial===!0){this.layout(this.lookupOption("layoutTemplate"),{data:{url:this.url}});var l=this.lookupOption("notFoundTemplate");l||(l=0===n.routes.length?u:a),this.render(l,{data:{url:this.url}}),this.renderRegions(),s.isHandled=function(){return!0}}return r&&r.call(s)}}),this._currentController===s&&this._currentDep.changed(),s},k.prototype.current=function(){return this._currentDep.depend(),this._currentController},k.prototype._scrollToHash=function(t){try{var o=$(t);$("html, body").scrollTop(o.offset().top)}catch(t){}},k.prototype.start=function(){var t=this,o;t._locationComputation=e.autorun(function e(r){var n,i=p.Location.get(),a,u,s,l=t._currentController;!l||o&&o.path!==i.path?n=t.dispatch(i.href,null,function t(o){this.isHandled()||(i.cancelUrlChange(),window.location=i.path)}):(t._scrollToHash(i.hash),l.configureFromUrl(i.href)),o=i})},k.prototype.stop=function(){this._isStarted&&(this._locationComputation&&this._locationComputation.stop(),this._currentController&&this._currentController.stop(),this._isStarted=!1)},k.prototype.go=function(o,e,r){var n=this,a=/^\/|http/,u,l=o;if(s.absoluteUrl().split("/").length>4&&(l="/"+s.absoluteUrl().split("/")[3]+o),r=r||{},a.test(l))u=l;else{var c=n.routes[l];i(c,"No route found named "+JSON.stringify(l)),u=c.path(e,t.extend(r,{throwOnMissingParams:!0}))}p.Location.go(u,r)}}.call(this),function(){k.plugins.loading=function(t,o){t.onBeforeAction("loading",o)},k.plugins.dataNotFound=function(t,o){t.onBeforeAction("dataNotFound",o)}}.call(this),function(){k=new p.Router}.call(this),function(){a.__checkName("__IronRouterNotFound__"),a.__IronRouterNotFound__=new a("Template.__IronRouterNotFound__",function(){var t=this;return d.DIV({style:"width: 600px; margin: 0 auto; padding: 20px;"},"\n ",d.DIV({style:"font-size: 18pt; color: #999;"},"\n Oops, looks like there's no route on the client or the server for url: \"",r.View("lookup:url",function(){return y.mustache(t.lookup("url"))}),'."\n '),"\n ")}),a.__checkName("__IronRouterNoRoutes__"),a.__IronRouterNoRoutes__=new a("Template.__IronRouterNoRoutes__",function(){var t=this;return d.Raw('<div style="font-family: helvetica; color: #777; max-width: 600px; margin: 20px auto;">\n <h1 style="text-align: center; margin: 0; font-size: 48pt;">\n iron:router\n </h1>\n <p style="text-align: center; font-size: 1.3em;">\n Organize your Meteor application.\n </p>\n <div style="margin: 50px 0px;">\n <pre style="background: #f2f2f2; margin: 0; padding: 10px;">\nRouter.route(\'/\', function () {\n this.render(\'Home\', {\n data: function () { return Items.findOne({_id: this.params._id}); }\n });\n});\n </pre>\n </div>\n <div style="margin: 50px 0px;">\n Check it out on Github:<br>\n <a href="https://github.com/eventedmind/iron-router" target="_blank">https://github.com/eventedmind/iron-router</a>\n <br>\n <br>\n And check out the new Guide:<br>\n <a href="https://iron-meteor.github.io/iron-router" target="_blank">\n https://iron-meteor.github.io/iron-router\n </a>\n </div>\n </div>')})}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(t,o){for(var e in o)e in t||(t[e]=o[e])}(Package["clinical:router"]={},{Router:k,RouteController:g})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.jquery.$,i=Package.jquery.jQuery;!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e("object"==typeof exports?require("jquery"):i)}(function(e){var t=function(){if(e&&e.fn&&e.fn.select2&&e.fn.select2.amd)var t=e.fn.select2.amd;var t;return function(){if(!t||!t.requirejs){t?n=t:t={};var e,n,r;!function(t){function i(e,t){return $.call(e,t)}function o(e,t){var n,r,i,o,s,a,l,c,u,d,p,h=t&&t.split("/"),f=y.map,g=f&&f["*"]||{};if(e&&"."===e.charAt(0))if(t){for(e=e.split("/"),s=e.length-1,y.nodeIdCompat&&b.test(e[s])&&(e[s]=e[s].replace(b,"")),e=h.slice(0,h.length-1).concat(e),u=0;u<e.length;u+=1)if(p=e[u],"."===p)e.splice(u,1),u-=1;else if(".."===p){if(1===u&&(".."===e[2]||".."===e[0]))break;u>0&&(e.splice(u-1,2),u-=2)}e=e.join("/")}else 0===e.indexOf("./")&&(e=e.substring(2));if((h||g)&&f){for(n=e.split("/"),u=n.length;u>0;u-=1){if(r=n.slice(0,u).join("/"),h)for(d=h.length;d>0;d-=1)if(i=f[h.slice(0,d).join("/")],i&&(i=i[r])){o=i,a=u;break}if(o)break;!l&&g&&g[r]&&(l=g[r],c=u)}!o&&l&&(o=l,a=c),o&&(n.splice(0,a,o),e=n.join("/"))}return e}function s(e,n){return function(){var r=w.call(arguments,0);return"string"!=typeof r[0]&&1===r.length&&r.push(null),h.apply(t,r.concat([e,n]))}}function a(e){return function(t){return o(t,e)}}function l(e){return function(t){m[e]=t}}function c(e){if(i(v,e)){var n=v[e];delete v[e],_[e]=!0,p.apply(t,n)}if(!i(m,e)&&!i(_,e))throw new Error("No "+e);return m[e]}function u(e){var t,n=e?e.indexOf("!"):-1;return n>-1&&(t=e.substring(0,n),e=e.substring(n+1,e.length)),[t,e]}function d(e){return function(){return y&&y.config&&y.config[e]||{}}}var p,h,f,g,m={},v={},y={},_={},$=Object.prototype.hasOwnProperty,w=[].slice,b=/\.js$/;f=function(e,t){var n,r=u(e),i=r[0];return e=r[1],i&&(i=o(i,t),n=c(i)),i?e=n&&n.normalize?n.normalize(e,a(t)):o(e,t):(e=o(e,t),r=u(e),i=r[0],e=r[1],i&&(n=c(i))),{f:i?i+"!"+e:e,n:e,pr:i,p:n}},g={require:function(e){return s(e)},exports:function(e){var t=m[e];return"undefined"!=typeof t?t:m[e]={}},module:function(e){return{id:e,uri:"",exports:m[e],config:d(e)}}},p=function(e,n,r,o){var a,u,d,p,h,y=[],$=typeof r,w;if(o=o||e,"undefined"===$||"function"===$){for(n=!n.length&&r.length?["require","exports","module"]:n,h=0;h<n.length;h+=1)if(p=f(n[h],o),u=p.f,"require"===u)y[h]=g.require(e);else if("exports"===u)y[h]=g.exports(e),w=!0;else if("module"===u)a=y[h]=g.module(e);else if(i(m,u)||i(v,u)||i(_,u))y[h]=c(u);else{if(!p.p)throw new Error(e+" missing "+u);p.p.load(p.n,s(o,!0),l(u),{}),y[h]=m[u]}d=r?r.apply(m[e],y):void 0,e&&(a&&a.exports!==t&&a.exports!==m[e]?m[e]=a.exports:d===t&&w||(m[e]=d))}else e&&(m[e]=r)},e=n=h=function(e,n,r,i,o){if("string"==typeof e)return g[e]?g[e](n):c(f(e,n).f);if(!e.splice){if(y=e,y.deps&&h(y.deps,y.callback),!n)return;n.splice?(e=n,n=r,r=null):e=t}return n=n||function(){},"function"==typeof r&&(r=i,i=o),i?p(t,e,n,r):setTimeout(function(){p(t,e,n,r)},4),h},h.config=function(e){return h(e)},e._defined=m,r=function(e,t,n){if("string"!=typeof e)throw new Error("See almond README: incorrect module build, no module name");t.splice||(n=t,t=[]),i(m,e)||i(v,e)||(v[e]=[e,t,n])},r.amd={jQuery:!0}}(),t.requirejs=e,t.require=n,t.define=r}}(),t.define("almond",function(){}),t.define("jquery",[],function(){var t=e||r;return null==t&&console&&console.error&&console.error("Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page."),t}),t.define("select2/utils",["jquery"],function(e){function t(e){var t=e.prototype,n=[];for(var r in t){var i=t[r];"function"==typeof i&&"constructor"!==r&&n.push(r)}return n}var n={};n.Extend=function(e,t){function n(){this.constructor=e}var r={}.hasOwnProperty;for(var i in t)r.call(t,i)&&(e[i]=t[i]);return n.prototype=t.prototype,e.prototype=new n,e.__super__=t.prototype,e},n.Decorate=function(e,n){function r(){var t=Array.prototype.unshift,r=n.prototype.constructor.length,i=e.prototype.constructor;r>0&&(t.call(arguments,e.prototype.constructor),i=n.prototype.constructor),i.apply(this,arguments)}function i(){this.constructor=r}var o=t(n),s=t(e);n.displayName=e.displayName,r.prototype=new i;for(var a=0;a<s.length;a++){var l=s[a];r.prototype[l]=e.prototype[l]}for(var c=(function(e){var t=function(){};e in r.prototype&&(t=r.prototype[e]);var i=n.prototype[e];return function(){var e=Array.prototype.unshift;return e.call(arguments,t),i.apply(this,arguments)}}),u=0;u<o.length;u++){var d=o[u];r.prototype[d]=c(d)}return r};var r=function(){this.listeners={}};return r.prototype.on=function(e,t){this.listeners=this.listeners||{},e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t]},r.prototype.trigger=function(e){var t=Array.prototype.slice,n=t.call(arguments,1);this.listeners=this.listeners||{},null==n&&(n=[]),0===n.length&&n.push({}),n[0]._type=e,e in this.listeners&&this.invoke(this.listeners[e],t.call(arguments,1)),"*"in this.listeners&&this.invoke(this.listeners["*"],arguments)},r.prototype.invoke=function(e,t){for(var n=0,r=e.length;n<r;n++)e[n].apply(this,t)},n.Observable=r,n.generateChars=function(e){for(var t="",n=0;n<e;n++){var r=Math.floor(36*Math.random());t+=r.toString(36)}return t},n.bind=function(e,t){return function(){e.apply(t,arguments)}},n._convertData=function(e){for(var t in e){var n=t.split("-"),r=e;if(1!==n.length){for(var i=0;i<n.length;i++){var o=n[i];o=o.substring(0,1).toLowerCase()+o.substring(1),o in r||(r[o]={}),i==n.length-1&&(r[o]=e[t]),r=r[o]}delete e[t]}}return e},n.hasScroll=function(t,n){var r=e(n),i=n.style.overflowX,o=n.style.overflowY;return(i!==o||"hidden"!==o&&"visible"!==o)&&("scroll"===i||"scroll"===o||(r.innerHeight()<n.scrollHeight||r.innerWidth()<n.scrollWidth))},n.escapeMarkup=function(e){var t={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return"string"!=typeof e?e:String(e).replace(/[&<>"'\/\\]/g,function(e){return t[e]})},n.appendMany=function(t,n){if("1.7"===e.fn.jquery.substr(0,3)){var r=e();e.map(n,function(e){r=r.add(e)}),n=r}t.append(n)},n}),t.define("select2/results",["jquery","./utils"],function(e,t){function n(e,t,r){this.$element=e,this.data=r,this.options=t,n.__super__.constructor.call(this)}return t.Extend(n,t.Observable),n.prototype.render=function(){var t=e('<ul class="select2-results__options" role="tree"></ul>');return this.options.get("multiple")&&t.attr("aria-multiselectable","true"),this.$results=t,t},n.prototype.clear=function(){this.$results.empty()},n.prototype.displayMessage=function(t){var n=this.options.get("escapeMarkup");this.clear(),this.hideLoading();var r=e('<li role="treeitem" aria-live="assertive" class="select2-results__option"></li>'),i=this.options.get("translations").get(t.message);r.append(n(i(t.args))),r[0].className+=" select2-results__message",this.$results.append(r)},n.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()},n.prototype.append=function(e){this.hideLoading();var t=[];if(null==e.results||0===e.results.length)return void(0===this.$results.children().length&&this.trigger("results:message",{message:"noResults"}));e.results=this.sort(e.results);for(var n=0;n<e.results.length;n++){var r=e.results[n],i=this.option(r);t.push(i)}this.$results.append(t)},n.prototype.position=function(e,t){var n=t.find(".select2-results");n.append(e)},n.prototype.sort=function(e){var t=this.options.get("sorter");return t(e)},n.prototype.highlightFirstItem=function(){var e=this.$results.find(".select2-results__option[aria-selected]"),t=e.filter("[aria-selected=true]");t.length>0?t.first().trigger("mouseenter"):e.first().trigger("mouseenter"),this.ensureHighlightVisible()},n.prototype.setClasses=function(){var t=this;this.data.current(function(n){var r=e.map(n,function(e){return e.id.toString()}),i=t.$results.find(".select2-results__option[aria-selected]");i.each(function(){var t=e(this),n=e.data(this,"data"),i=""+n.id;null!=n.element&&n.element.selected||null==n.element&&e.inArray(i,r)>-1?t.attr("aria-selected","true"):t.attr("aria-selected","false")})})},n.prototype.showLoading=function(e){this.hideLoading();var t=this.options.get("translations").get("searching"),n={disabled:!0,loading:!0,text:t(e)},r=this.option(n);r.className+=" loading-results",this.$results.prepend(r)},n.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()},n.prototype.option=function(t){var n=document.createElement("li");n.className="select2-results__option";var r={role:"treeitem","aria-selected":"false"};t.disabled&&(delete r["aria-selected"],r["aria-disabled"]="true"),null==t.id&&delete r["aria-selected"],null!=t._resultId&&(n.id=t._resultId),t.title&&(n.title=t.title),t.children&&(r.role="group",r["aria-label"]=t.text,delete r["aria-selected"]);for(var i in r){var o=r[i];n.setAttribute(i,o)}if(t.children){var s=e(n),a=document.createElement("strong");a.className="select2-results__group";var l=e(a);this.template(t,a);for(var c=[],u=0;u<t.children.length;u++){var d=t.children[u],p=this.option(d);c.push(p)}var h=e("<ul></ul>",{class:"select2-results__options select2-results__options--nested"});h.append(c),s.append(a),s.append(h)}else this.template(t,n);return e.data(n,"data",t),n},n.prototype.bind=function(t,n){var r=this,i=t.id+"-results";this.$results.attr("id",i),t.on("results:all",function(e){r.clear(),r.append(e.data),t.isOpen()&&(r.setClasses(),r.highlightFirstItem())}),t.on("results:append",function(e){r.append(e.data),t.isOpen()&&r.setClasses()}),t.on("query",function(e){r.hideMessages(),r.showLoading(e)}),t.on("select",function(){t.isOpen()&&(r.setClasses(),r.highlightFirstItem())}),t.on("unselect",function(){t.isOpen()&&(r.setClasses(),r.highlightFirstItem())}),t.on("open",function(){r.$results.attr("aria-expanded","true"),r.$results.attr("aria-hidden","false"),r.setClasses(),r.ensureHighlightVisible()}),t.on("close",function(){r.$results.attr("aria-expanded","false"),r.$results.attr("aria-hidden","true"),r.$results.removeAttr("aria-activedescendant")}),t.on("results:toggle",function(){var e=r.getHighlightedResults();0!==e.length&&e.trigger("mouseup")}),t.on("results:select",function(){var e=r.getHighlightedResults();if(0!==e.length){var t=e.data("data");"true"==e.attr("aria-selected")?r.trigger("close",{}):r.trigger("select",{data:t})}}),t.on("results:previous",function(){var e=r.getHighlightedResults(),t=r.$results.find("[aria-selected]"),n=t.index(e);if(0!==n){var i=n-1;0===e.length&&(i=0);var o=t.eq(i);o.trigger("mouseenter");var s=r.$results.offset().top,a=o.offset().top,l=r.$results.scrollTop()+(a-s);0===i?r.$results.scrollTop(0):a-s<0&&r.$results.scrollTop(l)}}),t.on("results:next",function(){var e=r.getHighlightedResults(),t=r.$results.find("[aria-selected]"),n=t.index(e),i=n+1;if(!(i>=t.length)){var o=t.eq(i);o.trigger("mouseenter");var s=r.$results.offset().top+r.$results.outerHeight(!1),a=o.offset().top+o.outerHeight(!1),l=r.$results.scrollTop()+a-s;0===i?r.$results.scrollTop(0):a>s&&r.$results.scrollTop(l)}}),t.on("results:focus",function(e){e.element.addClass("select2-results__option--highlighted")}),t.on("results:message",function(e){r.displayMessage(e)}),e.fn.mousewheel&&this.$results.on("mousewheel",function(e){var t=r.$results.scrollTop(),n=r.$results.get(0).scrollHeight-t+e.deltaY,i=e.deltaY>0&&t-e.deltaY<=0,o=e.deltaY<0&&n<=r.$results.height();i?(r.$results.scrollTop(0),e.preventDefault(),e.stopPropagation()):o&&(r.$results.scrollTop(r.$results.get(0).scrollHeight-r.$results.height()),e.preventDefault(),e.stopPropagation())}),this.$results.on("mouseup",".select2-results__option[aria-selected]",function(t){var n=e(this),i=n.data("data");return"true"===n.attr("aria-selected")?void(r.options.get("multiple")?r.trigger("unselect",{originalEvent:t,data:i}):r.trigger("close",{})):void r.trigger("select",{originalEvent:t,data:i})}),this.$results.on("mouseenter",".select2-results__option[aria-selected]",function(t){var n=e(this).data("data");r.getHighlightedResults().removeClass("select2-results__option--highlighted"),r.trigger("results:focus",{data:n,element:e(this)})})},n.prototype.getHighlightedResults=function(){var e=this.$results.find(".select2-results__option--highlighted");return e},n.prototype.destroy=function(){this.$results.remove()},n.prototype.ensureHighlightVisible=function(){var e=this.getHighlightedResults();if(0!==e.length){var t=this.$results.find("[aria-selected]"),n=t.index(e),r=this.$results.offset().top,i=e.offset().top,o=this.$results.scrollTop()+(i-r),s=i-r;o-=2*e.outerHeight(!1),n<=2?this.$results.scrollTop(0):(s>this.$results.outerHeight()||s<0)&&this.$results.scrollTop(o)}},n.prototype.template=function(t,n){var r=this.options.get("templateResult"),i=this.options.get("escapeMarkup"),o=r(t,n);null==o?n.style.display="none":"string"==typeof o?n.innerHTML=i(o):e(n).append(o)},n}),t.define("select2/keys",[],function(){var e={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46};return e}),t.define("select2/selection/base",["jquery","../utils","../keys"],function(e,t,n){function r(e,t){this.$element=e,this.options=t,r.__super__.constructor.call(this)}return t.Extend(r,t.Observable),r.prototype.render=function(){var t=e('<span class="select2-selection" role="combobox" aria-haspopup="true" aria-expanded="false"></span>');return this._tabindex=0,null!=this.$element.data("old-tabindex")?this._tabindex=this.$element.data("old-tabindex"):null!=this.$element.attr("tabindex")&&(this._tabindex=this.$element.attr("tabindex")),t.attr("title",this.$element.attr("title")),t.attr("tabindex",this._tabindex),this.$selection=t,t},r.prototype.bind=function(e,t){var r=this,i=e.id+"-container",o=e.id+"-results";this.container=e,this.$selection.on("focus",function(e){r.trigger("focus",e)}),this.$selection.on("blur",function(e){r._handleBlur(e)}),this.$selection.on("keydown",function(e){r.trigger("keypress",e),e.which===n.SPACE&&e.preventDefault()}),e.on("results:focus",function(e){r.$selection.attr("aria-activedescendant",e.data._resultId)}),e.on("selection:update",function(e){r.update(e.data)}),e.on("open",function(){r.$selection.attr("aria-expanded","true"),r.$selection.attr("aria-owns",o),r._attachCloseHandler(e)}),e.on("close",function(){r.$selection.attr("aria-expanded","false"),r.$selection.removeAttr("aria-activedescendant"),r.$selection.removeAttr("aria-owns"),r.$selection.focus(),r._detachCloseHandler(e)}),e.on("enable",function(){r.$selection.attr("tabindex",r._tabindex)}),e.on("disable",function(){r.$selection.attr("tabindex","-1")})},r.prototype._handleBlur=function(t){var n=this;window.setTimeout(function(){document.activeElement==n.$selection[0]||e.contains(n.$selection[0],document.activeElement)||n.trigger("blur",t)},1)},r.prototype._attachCloseHandler=function(t){var n=this;e(document.body).on("mousedown.select2."+t.id,function(t){var n=e(t.target),r=n.closest(".select2"),i=e(".select2.select2-container--open");i.each(function(){var t=e(this);if(this!=r[0]){var n=t.data("element");n.select2("close")}})})},r.prototype._detachCloseHandler=function(t){e(document.body).off("mousedown.select2."+t.id)},r.prototype.position=function(e,t){var n=t.find(".selection");n.append(e)},r.prototype.destroy=function(){this._detachCloseHandler(this.container)},r.prototype.update=function(e){throw new Error("The `update` method must be defined in child classes.")},r}),t.define("select2/selection/single",["jquery","./base","../utils","../keys"],function(e,t,n,r){function i(){i.__super__.constructor.apply(this,arguments)}return n.Extend(i,t),i.prototype.render=function(){var e=i.__super__.render.call(this);return e.addClass("select2-selection--single"),e.html('<span class="select2-selection__rendered"></span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>'),e},i.prototype.bind=function(e,t){var n=this;i.__super__.bind.apply(this,arguments);var r=e.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",r),this.$selection.attr("aria-labelledby",r),this.$selection.on("mousedown",function(e){1===e.which&&n.trigger("toggle",{originalEvent:e})}),this.$selection.on("focus",function(e){}),this.$selection.on("blur",function(e){}),e.on("focus",function(t){e.isOpen()||n.$selection.focus()}),e.on("selection:update",function(e){n.update(e.data)})},i.prototype.clear=function(){this.$selection.find(".select2-selection__rendered").empty()},i.prototype.display=function(e,t){var n=this.options.get("templateSelection"),r=this.options.get("escapeMarkup");return r(n(e,t))},i.prototype.selectionContainer=function(){return e("<span></span>")},i.prototype.update=function(e){if(0===e.length)return void this.clear();var t=e[0],n=this.$selection.find(".select2-selection__rendered"),r=this.display(t,n);n.empty().append(r),n.prop("title",t.title||t.text)},i}),t.define("select2/selection/multiple",["jquery","./base","../utils"],function(e,t,n){function r(e,t){r.__super__.constructor.apply(this,arguments)}return n.Extend(r,t),r.prototype.render=function(){var e=r.__super__.render.call(this);return e.addClass("select2-selection--multiple"),e.html('<ul class="select2-selection__rendered"></ul>'),e},r.prototype.bind=function(t,n){var i=this;r.__super__.bind.apply(this,arguments),this.$selection.on("click",function(e){i.trigger("toggle",{originalEvent:e})}),this.$selection.on("click",".select2-selection__choice__remove",function(t){if(!i.options.get("disabled")){var n=e(this),r=n.parent(),o=r.data("data");i.trigger("unselect",{originalEvent:t,data:o})}})},r.prototype.clear=function(){this.$selection.find(".select2-selection__rendered").empty()},r.prototype.display=function(e,t){var n=this.options.get("templateSelection"),r=this.options.get("escapeMarkup");return r(n(e,t))},r.prototype.selectionContainer=function(){var t=e('<li class="select2-selection__choice"><span class="select2-selection__choice__remove" role="presentation">&times;</span></li>');return t},r.prototype.update=function(e){if(this.clear(),0!==e.length){for(var t=[],r=0;r<e.length;r++){var i=e[r],o=this.selectionContainer(),s=this.display(i,o);o.append(s),o.prop("title",i.title||i.text),o.data("data",i),t.push(o)}var a=this.$selection.find(".select2-selection__rendered");n.appendMany(a,t)}},r}),t.define("select2/selection/placeholder",["../utils"],function(e){function t(e,t,n){this.placeholder=this.normalizePlaceholder(n.get("placeholder")),e.call(this,t,n)}return t.prototype.normalizePlaceholder=function(e,t){return"string"==typeof t&&(t={id:"",text:t}),t},t.prototype.createPlaceholder=function(e,t){var n=this.selectionContainer();return n.html(this.display(t)),n.addClass("select2-selection__placeholder").removeClass("select2-selection__choice"),n},t.prototype.update=function(e,t){var n=1==t.length&&t[0].id!=this.placeholder.id,r=t.length>1;if(r||n)return e.call(this,t);this.clear();var i=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append(i)},t}),t.define("select2/selection/allowClear",["jquery","../keys"],function(e,t){function n(){}return n.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),null==this.placeholder&&this.options.get("debug")&&window.console&&console.error&&console.error("Select2: The `allowClear` option should be used in combination with the `placeholder` option."),this.$selection.on("mousedown",".select2-selection__clear",function(e){r._handleClear(e)}),t.on("keypress",function(e){r._handleKeyboardClear(e,t)})},n.prototype._handleClear=function(e,t){if(!this.options.get("disabled")){var n=this.$selection.find(".select2-selection__clear");if(0!==n.length){t.stopPropagation();for(var r=n.data("data"),i=0;i<r.length;i++){var o={data:r[i]};if(this.trigger("unselect",o),o.prevented)return}this.$element.val(this.placeholder.id).trigger("change"),this.trigger("toggle",{})}}},n.prototype._handleKeyboardClear=function(e,n,r){r.isOpen()||n.which!=t.DELETE&&n.which!=t.BACKSPACE||this._handleClear(n)},n.prototype.update=function(t,n){if(t.call(this,n),!(this.$selection.find(".select2-selection__placeholder").length>0||0===n.length)){var r=e('<span class="select2-selection__clear">&times;</span>');r.data("data",n),this.$selection.find(".select2-selection__rendered").prepend(r)}},n}),t.define("select2/selection/search",["jquery","../utils","../keys"],function(e,t,n){function r(e,t,n){e.call(this,t,n)}return r.prototype.render=function(t){var n=e('<li class="select2-search select2-search--inline"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="textbox" aria-autocomplete="list" /></li>');this.$searchContainer=n,this.$search=n.find("input");var r=t.call(this);return this._transferTabIndex(),r},r.prototype.bind=function(e,t,r){var i=this;e.call(this,t,r),t.on("open",function(){i.$search.trigger("focus")}),t.on("close",function(){i.$search.val(""),i.$search.removeAttr("aria-activedescendant"),i.$search.trigger("focus")}),t.on("enable",function(){i.$search.prop("disabled",!1),i._transferTabIndex()}),t.on("disable",function(){i.$search.prop("disabled",!0)}),t.on("focus",function(e){i.$search.trigger("focus")}),t.on("results:focus",function(e){i.$search.attr("aria-activedescendant",e.id)}),this.$selection.on("focusin",".select2-search--inline",function(e){i.trigger("focus",e)}),this.$selection.on("focusout",".select2-search--inline",function(e){i._handleBlur(e)}),this.$selection.on("keydown",".select2-search--inline",function(e){e.stopPropagation(),i.trigger("keypress",e),i._keyUpPrevented=e.isDefaultPrevented();var t=e.which;if(t===n.BACKSPACE&&""===i.$search.val()){var r=i.$searchContainer.prev(".select2-selection__choice");if(r.length>0){var o=r.data("data");i.searchRemoveChoice(o),e.preventDefault()}}});var o=document.documentMode,s=o&&o<=11;this.$selection.on("input.searchcheck",".select2-search--inline",function(e){return s?void i.$selection.off("input.search input.searchcheck"):void i.$selection.off("keyup.search")}),this.$selection.on("keyup.search input.search",".select2-search--inline",function(e){if(s&&"input"===e.type)return void i.$selection.off("input.search input.searchcheck");var t=e.which;t!=n.SHIFT&&t!=n.CTRL&&t!=n.ALT&&t!=n.TAB&&i.handleSearch(e)})},r.prototype._transferTabIndex=function(e){this.$search.attr("tabindex",this.$selection.attr("tabindex")),this.$selection.attr("tabindex","-1")},r.prototype.createPlaceholder=function(e,t){this.$search.attr("placeholder",t.text)},r.prototype.update=function(e,t){var n=this.$search[0]==document.activeElement;this.$search.attr("placeholder",""),e.call(this,t),this.$selection.find(".select2-selection__rendered").append(this.$searchContainer),this.resizeSearch(),n&&this.$search.focus()},r.prototype.handleSearch=function(){if(this.resizeSearch(),!this._keyUpPrevented){var e=this.$search.val();this.trigger("query",{term:e})}this._keyUpPrevented=!1},r.prototype.searchRemoveChoice=function(e,t){this.trigger("unselect",{data:t}),this.$search.val(t.text),this.handleSearch()},r.prototype.resizeSearch=function(){this.$search.css("width","25px");var e="";if(""!==this.$search.attr("placeholder"))e=this.$selection.find(".select2-selection__rendered").innerWidth();else{var t=this.$search.val().length+1;e=.75*t+"em"}this.$search.css("width",e)},r}),t.define("select2/selection/eventRelay",["jquery"],function(e){function t(){}return t.prototype.bind=function(t,n,r){var i=this,o=["open","opening","close","closing","select","selecting","unselect","unselecting"],s=["opening","closing","selecting","unselecting"];t.call(this,n,r),n.on("*",function(t,n){if(e.inArray(t,o)!==-1){n=n||{};var r=e.Event("select2:"+t,{params:n});i.$element.trigger(r),e.inArray(t,s)!==-1&&(n.prevented=r.isDefaultPrevented())}})},t}),t.define("select2/translation",["jquery","require"],function(e,t){function n(e){this.dict=e||{}}return n.prototype.all=function(){return this.dict},n.prototype.get=function(e){return this.dict[e]},n.prototype.extend=function(t){this.dict=e.extend({},t.all(),this.dict)},n._cache={},n.loadPath=function(e){if(!(e in n._cache)){var r=t(e);n._cache[e]=r}return new n(n._cache[e])},n}),t.define("select2/diacritics",[],function(){var e={"Ⓐ":"A","":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","":"x","ẋ":"x","ẍ":"x","ⓨ":"y","":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"};return e}),t.define("select2/data/base",["../utils"],function(e){function t(e,n){t.__super__.constructor.call(this)}return e.Extend(t,e.Observable),t.prototype.current=function(e){throw new Error("The `current` method must be defined in child classes.")},t.prototype.query=function(e,t){throw new Error("The `query` method must be defined in child classes.")},t.prototype.bind=function(e,t){},t.prototype.destroy=function(){},t.prototype.generateResultId=function(t,n){var r=t.id+"-result-";return r+=e.generateChars(4),r+=null!=n.id?"-"+n.id.toString():"-"+e.generateChars(4)},t}),t.define("select2/data/select",["./base","../utils","jquery"],function(e,t,n){function r(e,t){this.$element=e,this.options=t,r.__super__.constructor.call(this)}return t.Extend(r,e),r.prototype.current=function(e){var t=[],r=this;this.$element.find(":selected").each(function(){var e=n(this),i=r.item(e);t.push(i)}),e(t);
},r.prototype.select=function(e){var t=this;if(e.selected=!0,n(e.element).is("option"))return e.element.selected=!0,void this.$element.trigger("change");if(this.$element.prop("multiple"))this.current(function(r){var i=[];e=[e],e.push.apply(e,r);for(var o=0;o<e.length;o++){var s=e[o].id;n.inArray(s,i)===-1&&i.push(s)}t.$element.val(i),t.$element.trigger("change")});else{var r=e.id;this.$element.val(r),this.$element.trigger("change")}},r.prototype.unselect=function(e){var t=this;if(this.$element.prop("multiple"))return e.selected=!1,n(e.element).is("option")?(e.element.selected=!1,void this.$element.trigger("change")):void this.current(function(r){for(var i=[],o=0;o<r.length;o++){var s=r[o].id;s!==e.id&&n.inArray(s,i)===-1&&i.push(s)}t.$element.val(i),t.$element.trigger("change")})},r.prototype.bind=function(e,t){var n=this;this.container=e,e.on("select",function(e){n.select(e.data)}),e.on("unselect",function(e){n.unselect(e.data)})},r.prototype.destroy=function(){this.$element.find("*").each(function(){n.removeData(this,"data")})},r.prototype.query=function(e,t){var r=[],i=this,o=this.$element.children();o.each(function(){var t=n(this);if(t.is("option")||t.is("optgroup")){var o=i.item(t),s=i.matches(e,o);null!==s&&r.push(s)}}),t({results:r})},r.prototype.addOptions=function(e){t.appendMany(this.$element,e)},r.prototype.option=function(e){var t;e.children?(t=document.createElement("optgroup"),t.label=e.text):(t=document.createElement("option"),void 0!==t.textContent?t.textContent=e.text:t.innerText=e.text),e.id&&(t.value=e.id),e.disabled&&(t.disabled=!0),e.selected&&(t.selected=!0),e.title&&(t.title=e.title);var r=n(t),i=this._normalizeItem(e);return i.element=t,n.data(t,"data",i),r},r.prototype.item=function(e){var t={};if(t=n.data(e[0],"data"),null!=t)return t;if(e.is("option"))t={id:e.val(),text:e.text(),disabled:e.prop("disabled"),selected:e.prop("selected"),title:e.prop("title")};else if(e.is("optgroup")){t={text:e.prop("label"),children:[],title:e.prop("title")};for(var r=e.children("option"),i=[],o=0;o<r.length;o++){var s=n(r[o]),a=this.item(s);i.push(a)}t.children=i}return t=this._normalizeItem(t),t.element=e[0],n.data(e[0],"data",t),t},r.prototype._normalizeItem=function(e){n.isPlainObject(e)||(e={id:e,text:e}),e=n.extend({},{text:""},e);var t={selected:!1,disabled:!1};return null!=e.id&&(e.id=e.id.toString()),null!=e.text&&(e.text=e.text.toString()),null==e._resultId&&e.id&&null!=this.container&&(e._resultId=this.generateResultId(this.container,e)),n.extend({},t,e)},r.prototype.matches=function(e,t){var n=this.options.get("matcher");return n(e,t)},r}),t.define("select2/data/array",["./select","../utils","jquery"],function(e,t,n){function r(e,t){var n=t.get("data")||[];r.__super__.constructor.call(this,e,t),this.addOptions(this.convertToOptions(n))}return t.Extend(r,e),r.prototype.select=function(e){var t=this.$element.find("option").filter(function(t,n){return n.value==e.id.toString()});0===t.length&&(t=this.option(e),this.addOptions(t)),r.__super__.select.call(this,e)},r.prototype.convertToOptions=function(e){function r(e){return function(){return n(this).val()==e.id}}for(var i=this,o=this.$element.find("option"),s=o.map(function(){return i.item(n(this)).id}).get(),a=[],l=0;l<e.length;l++){var c=this._normalizeItem(e[l]);if(n.inArray(c.id,s)>=0){var u=o.filter(r(c)),d=this.item(u),p=n.extend(!0,{},c,d),h=this.option(p);u.replaceWith(h)}else{var f=this.option(c);if(c.children){var g=this.convertToOptions(c.children);t.appendMany(f,g)}a.push(f)}}return a},r}),t.define("select2/data/ajax",["./array","../utils","jquery"],function(e,t,n){function r(e,t){this.ajaxOptions=this._applyDefaults(t.get("ajax")),null!=this.ajaxOptions.processResults&&(this.processResults=this.ajaxOptions.processResults),r.__super__.constructor.call(this,e,t)}return t.Extend(r,e),r.prototype._applyDefaults=function(e){var t={data:function(e){return n.extend({},e,{q:e.term})},transport:function(e,t,r){var i=n.ajax(e);return i.then(t),i.fail(r),i}};return n.extend({},t,e,!0)},r.prototype.processResults=function(e){return e},r.prototype.query=function(e,t){function r(){var r=s.transport(s,function(r){var i=o.processResults(r,e);o.options.get("debug")&&window.console&&console.error&&(i&&i.results&&n.isArray(i.results)||console.error("Select2: The AJAX results did not return an array in the `results` key of the response.")),t(i)},function(){r.status&&"0"===r.status||o.trigger("results:message",{message:"errorLoading"})});o._request=r}var i=[],o=this;null!=this._request&&(n.isFunction(this._request.abort)&&this._request.abort(),this._request=null);var s=n.extend({type:"GET"},this.ajaxOptions);"function"==typeof s.url&&(s.url=s.url.call(this.$element,e)),"function"==typeof s.data&&(s.data=s.data.call(this.$element,e)),this.ajaxOptions.delay&&null!=e.term?(this._queryTimeout&&window.clearTimeout(this._queryTimeout),this._queryTimeout=window.setTimeout(r,this.ajaxOptions.delay)):r()},r}),t.define("select2/data/tags",["jquery"],function(e){function t(t,n,r){var i=r.get("tags"),o=r.get("createTag");void 0!==o&&(this.createTag=o);var s=r.get("insertTag");if(void 0!==s&&(this.insertTag=s),t.call(this,n,r),e.isArray(i))for(var a=0;a<i.length;a++){var l=i[a],c=this._normalizeItem(l),u=this.option(c);this.$element.append(u)}}return t.prototype.query=function(e,t,n){function r(e,o){for(var s=e.results,a=0;a<s.length;a++){var l=s[a],c=null!=l.children&&!r({results:l.children},!0),u=l.text===t.term;if(u||c)return!o&&(e.data=s,void n(e))}if(o)return!0;var d=i.createTag(t);if(null!=d){var p=i.option(d);p.attr("data-select2-tag",!0),i.addOptions([p]),i.insertTag(s,d)}e.results=s,n(e)}var i=this;return this._removeOldTags(),null==t.term||null!=t.page?void e.call(this,t,n):void e.call(this,t,r)},t.prototype.createTag=function(t,n){var r=e.trim(n.term);return""===r?null:{id:r,text:r}},t.prototype.insertTag=function(e,t,n){t.unshift(n)},t.prototype._removeOldTags=function(t){var n=this._lastTag,r=this.$element.find("option[data-select2-tag]");r.each(function(){this.selected||e(this).remove()})},t}),t.define("select2/data/tokenizer",["jquery"],function(e){function t(e,t,n){var r=n.get("tokenizer");void 0!==r&&(this.tokenizer=r),e.call(this,t,n)}return t.prototype.bind=function(e,t,n){e.call(this,t,n),this.$search=t.dropdown.$search||t.selection.$search||n.find(".select2-search__field")},t.prototype.query=function(t,n,r){function i(t){var n=s._normalizeItem(t),r=s.$element.find("option").filter(function(){return e(this).val()===n.id});if(!r.length){var i=s.option(n);i.attr("data-select2-tag",!0),s._removeOldTags(),s.addOptions([i])}o(n)}function o(e){s.trigger("select",{data:e})}var s=this;n.term=n.term||"";var a=this.tokenizer(n,this.options,i);a.term!==n.term&&(this.$search.length&&(this.$search.val(a.term),this.$search.focus()),n.term=a.term),t.call(this,n,r)},t.prototype.tokenizer=function(t,n,r,i){for(var o=r.get("tokenSeparators")||[],s=n.term,a=0,l=this.createTag||function(e){return{id:e.term,text:e.term}};a<s.length;){var c=s[a];if(e.inArray(c,o)!==-1){var u=s.substr(0,a),d=e.extend({},n,{term:u}),p=l(d);null!=p?(i(p),s=s.substr(a+1)||"",a=0):a++}else a++}return{term:s}},t}),t.define("select2/data/minimumInputLength",[],function(){function e(e,t,n){this.minimumInputLength=n.get("minimumInputLength"),e.call(this,t,n)}return e.prototype.query=function(e,t,n){return t.term=t.term||"",t.term.length<this.minimumInputLength?void this.trigger("results:message",{message:"inputTooShort",args:{minimum:this.minimumInputLength,input:t.term,params:t}}):void e.call(this,t,n)},e}),t.define("select2/data/maximumInputLength",[],function(){function e(e,t,n){this.maximumInputLength=n.get("maximumInputLength"),e.call(this,t,n)}return e.prototype.query=function(e,t,n){return t.term=t.term||"",this.maximumInputLength>0&&t.term.length>this.maximumInputLength?void this.trigger("results:message",{message:"inputTooLong",args:{maximum:this.maximumInputLength,input:t.term,params:t}}):void e.call(this,t,n)},e}),t.define("select2/data/maximumSelectionLength",[],function(){function e(e,t,n){this.maximumSelectionLength=n.get("maximumSelectionLength"),e.call(this,t,n)}return e.prototype.query=function(e,t,n){var r=this;this.current(function(i){var o=null!=i?i.length:0;return r.maximumSelectionLength>0&&o>=r.maximumSelectionLength?void r.trigger("results:message",{message:"maximumSelected",args:{maximum:r.maximumSelectionLength}}):void e.call(r,t,n)})},e}),t.define("select2/dropdown",["jquery","./utils"],function(e,t){function n(e,t){this.$element=e,this.options=t,n.__super__.constructor.call(this)}return t.Extend(n,t.Observable),n.prototype.render=function(){var t=e('<span class="select2-dropdown"><span class="select2-results"></span></span>');return t.attr("dir",this.options.get("dir")),this.$dropdown=t,t},n.prototype.bind=function(){},n.prototype.position=function(e,t){},n.prototype.destroy=function(){this.$dropdown.remove()},n}),t.define("select2/dropdown/search",["jquery","../utils"],function(e,t){function n(){}return n.prototype.render=function(t){var n=t.call(this),r=e('<span class="select2-search select2-search--dropdown"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" role="textbox" /></span>');return this.$searchContainer=r,this.$search=r.find("input"),n.prepend(r),n},n.prototype.bind=function(t,n,r){var i=this;t.call(this,n,r),this.$search.on("keydown",function(e){i.trigger("keypress",e),i._keyUpPrevented=e.isDefaultPrevented()}),this.$search.on("input",function(t){e(this).off("keyup")}),this.$search.on("keyup input",function(e){i.handleSearch(e)}),n.on("open",function(){i.$search.attr("tabindex",0),i.$search.focus(),window.setTimeout(function(){i.$search.focus()},0)}),n.on("close",function(){i.$search.attr("tabindex",-1),i.$search.val("")}),n.on("focus",function(){n.isOpen()&&i.$search.focus()}),n.on("results:all",function(e){if(null==e.query.term||""===e.query.term){var t=i.showSearch(e);t?i.$searchContainer.removeClass("select2-search--hide"):i.$searchContainer.addClass("select2-search--hide")}})},n.prototype.handleSearch=function(e){if(!this._keyUpPrevented){var t=this.$search.val();this.trigger("query",{term:t})}this._keyUpPrevented=!1},n.prototype.showSearch=function(e,t){return!0},n}),t.define("select2/dropdown/hidePlaceholder",[],function(){function e(e,t,n,r){this.placeholder=this.normalizePlaceholder(n.get("placeholder")),e.call(this,t,n,r)}return e.prototype.append=function(e,t){t.results=this.removePlaceholder(t.results),e.call(this,t)},e.prototype.normalizePlaceholder=function(e,t){return"string"==typeof t&&(t={id:"",text:t}),t},e.prototype.removePlaceholder=function(e,t){for(var n=t.slice(0),r=t.length-1;r>=0;r--){var i=t[r];this.placeholder.id===i.id&&n.splice(r,1)}return n},e}),t.define("select2/dropdown/infiniteScroll",["jquery"],function(e){function t(e,t,n,r){this.lastParams={},e.call(this,t,n,r),this.$loadingMore=this.createLoadingMore(),this.loading=!1}return t.prototype.append=function(e,t){this.$loadingMore.remove(),this.loading=!1,e.call(this,t),this.showLoadingMore(t)&&this.$results.append(this.$loadingMore)},t.prototype.bind=function(t,n,r){var i=this;t.call(this,n,r),n.on("query",function(e){i.lastParams=e,i.loading=!0}),n.on("query:append",function(e){i.lastParams=e,i.loading=!0}),this.$results.on("scroll",function(){var t=e.contains(document.documentElement,i.$loadingMore[0]);if(!i.loading&&t){var n=i.$results.offset().top+i.$results.outerHeight(!1),r=i.$loadingMore.offset().top+i.$loadingMore.outerHeight(!1);n+50>=r&&i.loadMore()}})},t.prototype.loadMore=function(){this.loading=!0;var t=e.extend({},{page:1},this.lastParams);t.page++,this.trigger("query:append",t)},t.prototype.showLoadingMore=function(e,t){return t.pagination&&t.pagination.more},t.prototype.createLoadingMore=function(){var t=e('<li class="select2-results__option select2-results__option--load-more"role="treeitem" aria-disabled="true"></li>'),n=this.options.get("translations").get("loadingMore");return t.html(n(this.lastParams)),t},t}),t.define("select2/dropdown/attachBody",["jquery","../utils"],function(e,t){function n(t,n,r){this.$dropdownParent=r.get("dropdownParent")||e(document.body),t.call(this,n,r)}return n.prototype.bind=function(e,t,n){var r=this,i=!1;e.call(this,t,n),t.on("open",function(){r._showDropdown(),r._attachPositioningHandler(t),i||(i=!0,t.on("results:all",function(){r._positionDropdown(),r._resizeDropdown()}),t.on("results:append",function(){r._positionDropdown(),r._resizeDropdown()}))}),t.on("close",function(){r._hideDropdown(),r._detachPositioningHandler(t)}),this.$dropdownContainer.on("mousedown",function(e){e.stopPropagation()})},n.prototype.destroy=function(e){e.call(this),this.$dropdownContainer.remove()},n.prototype.position=function(e,t,n){t.attr("class",n.attr("class")),t.removeClass("select2"),t.addClass("select2-container--open"),t.css({position:"absolute",top:-999999}),this.$container=n},n.prototype.render=function(t){var n=e("<span></span>"),r=t.call(this);return n.append(r),this.$dropdownContainer=n,n},n.prototype._hideDropdown=function(e){this.$dropdownContainer.detach()},n.prototype._attachPositioningHandler=function(n,r){var i=this,o="scroll.select2."+r.id,s="resize.select2."+r.id,a="orientationchange.select2."+r.id,l=this.$container.parents().filter(t.hasScroll);l.each(function(){e(this).data("select2-scroll-position",{x:e(this).scrollLeft(),y:e(this).scrollTop()})}),l.on(o,function(t){var n=e(this).data("select2-scroll-position");e(this).scrollTop(n.y)}),e(window).on(o+" "+s+" "+a,function(e){i._positionDropdown(),i._resizeDropdown()})},n.prototype._detachPositioningHandler=function(n,r){var i="scroll.select2."+r.id,o="resize.select2."+r.id,s="orientationchange.select2."+r.id,a=this.$container.parents().filter(t.hasScroll);a.off(i),e(window).off(i+" "+o+" "+s)},n.prototype._positionDropdown=function(){var t=e(window),n=this.$dropdown.hasClass("select2-dropdown--above"),r=this.$dropdown.hasClass("select2-dropdown--below"),i=null,o=this.$container.offset();o.bottom=o.top+this.$container.outerHeight(!1);var s={height:this.$container.outerHeight(!1)};s.top=o.top,s.bottom=o.top+s.height;var a={height:this.$dropdown.outerHeight(!1)},l={top:t.scrollTop(),bottom:t.scrollTop()+t.height()},c=l.top<o.top-a.height,u=l.bottom>o.bottom+a.height,d={left:o.left,top:s.bottom},p=this.$dropdownParent;"static"===p.css("position")&&(p=p.offsetParent());var h=p.offset();d.top-=h.top,d.left-=h.left,n||r||(i="below"),u||!c||n?!c&&u&&n&&(i="below"):i="above",("above"==i||n&&"below"!==i)&&(d.top=s.top-h.top-a.height),null!=i&&(this.$dropdown.removeClass("select2-dropdown--below select2-dropdown--above").addClass("select2-dropdown--"+i),this.$container.removeClass("select2-container--below select2-container--above").addClass("select2-container--"+i)),this.$dropdownContainer.css(d)},n.prototype._resizeDropdown=function(){var e={width:this.$container.outerWidth(!1)+"px"};this.options.get("dropdownAutoWidth")&&(e.minWidth=e.width,e.position="relative",e.width="auto"),this.$dropdown.css(e)},n.prototype._showDropdown=function(e){this.$dropdownContainer.appendTo(this.$dropdownParent),this._positionDropdown(),this._resizeDropdown()},n}),t.define("select2/dropdown/minimumResultsForSearch",[],function(){function e(t){for(var n=0,r=0;r<t.length;r++){var i=t[r];i.children?n+=e(i.children):n++}return n}function t(e,t,n,r){this.minimumResultsForSearch=n.get("minimumResultsForSearch"),this.minimumResultsForSearch<0&&(this.minimumResultsForSearch=1/0),e.call(this,t,n,r)}return t.prototype.showSearch=function(t,n){return!(e(n.data.results)<this.minimumResultsForSearch)&&t.call(this,n)},t}),t.define("select2/dropdown/selectOnClose",[],function(){function e(){}return e.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),t.on("close",function(e){r._handleSelectOnClose(e)})},e.prototype._handleSelectOnClose=function(e,t){if(t&&null!=t.originalSelect2Event){var n=t.originalSelect2Event;if("select"===n._type||"unselect"===n._type)return}var r=this.getHighlightedResults();if(!(r.length<1)){var i=r.data("data");null!=i.element&&i.element.selected||null==i.element&&i.selected||this.trigger("select",{data:i})}},e}),t.define("select2/dropdown/closeOnSelect",[],function(){function e(){}return e.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),t.on("select",function(e){r._selectTriggered(e)}),t.on("unselect",function(e){r._selectTriggered(e)})},e.prototype._selectTriggered=function(e,t){var n=t.originalEvent;n&&n.ctrlKey||this.trigger("close",{originalEvent:n,originalSelect2Event:t})},e}),t.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return 1!=t&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more characters";return n},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select "+e.maximum+" item";return 1!=e.maximum&&(t+="s"),t},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),t.define("select2/defaults",["jquery","require","./results","./selection/single","./selection/multiple","./selection/placeholder","./selection/allowClear","./selection/search","./selection/eventRelay","./utils","./translation","./diacritics","./data/select","./data/array","./data/ajax","./data/tags","./data/tokenizer","./data/minimumInputLength","./data/maximumInputLength","./data/maximumSelectionLength","./dropdown","./dropdown/search","./dropdown/hidePlaceholder","./dropdown/infiniteScroll","./dropdown/attachBody","./dropdown/minimumResultsForSearch","./dropdown/selectOnClose","./dropdown/closeOnSelect","./i18n/en"],function(e,t,n,r,i,o,s,a,l,c,u,d,p,h,f,g,m,v,y,_,$,w,b,A,x,E,C,O,S){function T(){this.reset()}T.prototype.apply=function(d){if(d=e.extend(!0,{},this.defaults,d),null==d.dataAdapter){if(null!=d.ajax?d.dataAdapter=f:null!=d.data?d.dataAdapter=h:d.dataAdapter=p,d.minimumInputLength>0&&(d.dataAdapter=c.Decorate(d.dataAdapter,v)),d.maximumInputLength>0&&(d.dataAdapter=c.Decorate(d.dataAdapter,y)),d.maximumSelectionLength>0&&(d.dataAdapter=c.Decorate(d.dataAdapter,_)),d.tags&&(d.dataAdapter=c.Decorate(d.dataAdapter,g)),null==d.tokenSeparators&&null==d.tokenizer||(d.dataAdapter=c.Decorate(d.dataAdapter,m)),null!=d.query){var S=t(d.amdBase+"compat/query");d.dataAdapter=c.Decorate(d.dataAdapter,S)}if(null!=d.initSelection){var T=t(d.amdBase+"compat/initSelection");d.dataAdapter=c.Decorate(d.dataAdapter,T)}}if(null==d.resultsAdapter&&(d.resultsAdapter=n,null!=d.ajax&&(d.resultsAdapter=c.Decorate(d.resultsAdapter,A)),null!=d.placeholder&&(d.resultsAdapter=c.Decorate(d.resultsAdapter,b)),d.selectOnClose&&(d.resultsAdapter=c.Decorate(d.resultsAdapter,C))),null==d.dropdownAdapter){if(d.multiple)d.dropdownAdapter=$;else{var D=c.Decorate($,w);d.dropdownAdapter=D}if(0!==d.minimumResultsForSearch&&(d.dropdownAdapter=c.Decorate(d.dropdownAdapter,E)),d.closeOnSelect&&(d.dropdownAdapter=c.Decorate(d.dropdownAdapter,O)),null!=d.dropdownCssClass||null!=d.dropdownCss||null!=d.adaptDropdownCssClass){var q=t(d.amdBase+"compat/dropdownCss");d.dropdownAdapter=c.Decorate(d.dropdownAdapter,q)}d.dropdownAdapter=c.Decorate(d.dropdownAdapter,x)}if(null==d.selectionAdapter){if(d.multiple?d.selectionAdapter=i:d.selectionAdapter=r,null!=d.placeholder&&(d.selectionAdapter=c.Decorate(d.selectionAdapter,o)),d.allowClear&&(d.selectionAdapter=c.Decorate(d.selectionAdapter,s)),d.multiple&&(d.selectionAdapter=c.Decorate(d.selectionAdapter,a)),null!=d.containerCssClass||null!=d.containerCss||null!=d.adaptContainerCssClass){var L=t(d.amdBase+"compat/containerCss");d.selectionAdapter=c.Decorate(d.selectionAdapter,L)}d.selectionAdapter=c.Decorate(d.selectionAdapter,l)}if("string"==typeof d.language)if(d.language.indexOf("-")>0){var P=d.language.split("-"),j=P[0];d.language=[d.language,j]}else d.language=[d.language];if(e.isArray(d.language)){var k=new u;d.language.push("en");for(var I=d.language,R=0;R<I.length;R++){var M=I[R],U={};try{U=u.loadPath(M)}catch(e){try{M=this.defaults.amdLanguageBase+M,U=u.loadPath(M)}catch(e){d.debug&&window.console&&console.warn&&console.warn('Select2: The language file for "'+M+'" could not be automatically loaded. A fallback will be used instead.');continue}}k.extend(U)}d.translations=k}else{var H=u.loadPath(this.defaults.amdLanguageBase+"en"),z=new u(d.language);z.extend(H),d.translations=z}return d},T.prototype.reset=function(){function t(e){function t(e){return d[e]||e}return e.replace(/[^\u0000-\u007E]/g,t)}function n(r,i){if(""===e.trim(r.term))return i;if(i.children&&i.children.length>0){for(var o=e.extend(!0,{},i),s=i.children.length-1;s>=0;s--){var a=i.children[s],l=n(r,a);null==l&&o.children.splice(s,1)}return o.children.length>0?o:n(r,o)}var c=t(i.text).toUpperCase(),u=t(r.term).toUpperCase();return c.indexOf(u)>-1?i:null}this.defaults={amdBase:"./",amdLanguageBase:"./i18n/",closeOnSelect:!0,debug:!1,dropdownAutoWidth:!1,escapeMarkup:c.escapeMarkup,language:S,matcher:n,minimumInputLength:0,maximumInputLength:0,maximumSelectionLength:0,minimumResultsForSearch:0,selectOnClose:!1,sorter:function(e){return e},templateResult:function(e){return e.text},templateSelection:function(e){return e.text},theme:"default",width:"resolve"}},T.prototype.set=function(t,n){var r=e.camelCase(t),i={};i[r]=n;var o=c._convertData(i);e.extend(this.defaults,o)};var D=new T;return D}),t.define("select2/options",["require","jquery","./defaults","./utils"],function(e,t,n,r){function i(t,i){if(this.options=t,null!=i&&this.fromElement(i),this.options=n.apply(this.options),i&&i.is("input")){var o=e(this.get("amdBase")+"compat/inputData");this.options.dataAdapter=r.Decorate(this.options.dataAdapter,o)}}return i.prototype.fromElement=function(e){var n=["select2"];null==this.options.multiple&&(this.options.multiple=e.prop("multiple")),null==this.options.disabled&&(this.options.disabled=e.prop("disabled")),null==this.options.language&&(e.prop("lang")?this.options.language=e.prop("lang").toLowerCase():e.closest("[lang]").prop("lang")&&(this.options.language=e.closest("[lang]").prop("lang"))),null==this.options.dir&&(e.prop("dir")?this.options.dir=e.prop("dir"):e.closest("[dir]").prop("dir")?this.options.dir=e.closest("[dir]").prop("dir"):this.options.dir="ltr"),e.prop("disabled",this.options.disabled),e.prop("multiple",this.options.multiple),e.data("select2Tags")&&(this.options.debug&&window.console&&console.warn&&console.warn('Select2: The `data-select2-tags` attribute has been changed to use the `data-data` and `data-tags="true"` attributes and will be removed in future versions of Select2.'),e.data("data",e.data("select2Tags")),e.data("tags",!0)),e.data("ajaxUrl")&&(this.options.debug&&window.console&&console.warn&&console.warn("Select2: The `data-ajax-url` attribute has been changed to `data-ajax--url` and support for the old attribute will be removed in future versions of Select2."),e.attr("ajax--url",e.data("ajaxUrl")),e.data("ajax--url",e.data("ajaxUrl")));var i={};i=t.fn.jquery&&"1."==t.fn.jquery.substr(0,2)&&e[0].dataset?t.extend(!0,{},e[0].dataset,e.data()):e.data();var o=t.extend(!0,{},i);o=r._convertData(o);for(var s in o)t.inArray(s,n)>-1||(t.isPlainObject(this.options[s])?t.extend(this.options[s],o[s]):this.options[s]=o[s]);return this},i.prototype.get=function(e){return this.options[e]},i.prototype.set=function(e,t){this.options[e]=t},i}),t.define("select2/core",["jquery","./options","./utils","./keys"],function(e,t,n,r){var i=function(e,n){null!=e.data("select2")&&e.data("select2").destroy(),this.$element=e,this.id=this._generateId(e),n=n||{},this.options=new t(n,e),i.__super__.constructor.call(this);var r=e.attr("tabindex")||0;e.data("old-tabindex",r),e.attr("tabindex","-1");var o=this.options.get("dataAdapter");this.dataAdapter=new o(e,this.options);var s=this.render();this._placeContainer(s);var a=this.options.get("selectionAdapter");this.selection=new a(e,this.options),this.$selection=this.selection.render(),this.selection.position(this.$selection,s);var l=this.options.get("dropdownAdapter");this.dropdown=new l(e,this.options),this.$dropdown=this.dropdown.render(),this.dropdown.position(this.$dropdown,s);var c=this.options.get("resultsAdapter");this.results=new c(e,this.options,this.dataAdapter),this.$results=this.results.render(),this.results.position(this.$results,this.$dropdown);var u=this;this._bindAdapters(),this._registerDomEvents(),this._registerDataEvents(),this._registerSelectionEvents(),this._registerDropdownEvents(),this._registerResultsEvents(),this._registerEvents(),this.dataAdapter.current(function(e){u.trigger("selection:update",{data:e})}),e.addClass("select2-hidden-accessible"),e.attr("aria-hidden","true"),this._syncAttributes(),e.data("select2",this)};return n.Extend(i,n.Observable),i.prototype._generateId=function(e){var t="";return t=null!=e.attr("id")?e.attr("id"):null!=e.attr("name")?e.attr("name")+"-"+n.generateChars(2):n.generateChars(4),t=t.replace(/(:|\.|\[|\]|,)/g,""),t="select2-"+t},i.prototype._placeContainer=function(e){e.insertAfter(this.$element);var t=this._resolveWidth(this.$element,this.options.get("width"));null!=t&&e.css("width",t)},i.prototype._resolveWidth=function(e,t){var n=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;if("resolve"==t){var r=this._resolveWidth(e,"style");return null!=r?r:this._resolveWidth(e,"element")}if("element"==t){var i=e.outerWidth(!1);return i<=0?"auto":i+"px"}if("style"==t){var o=e.attr("style");if("string"!=typeof o)return null;for(var s=o.split(";"),a=0,l=s.length;a<l;a+=1){var c=s[a].replace(/\s/g,""),u=c.match(n);if(null!==u&&u.length>=1)return u[1]}return null}return t},i.prototype._bindAdapters=function(){this.dataAdapter.bind(this,this.$container),this.selection.bind(this,this.$container),this.dropdown.bind(this,this.$container),this.results.bind(this,this.$container)},i.prototype._registerDomEvents=function(){var t=this;this.$element.on("change.select2",function(){t.dataAdapter.current(function(e){t.trigger("selection:update",{data:e})})}),this.$element.on("focus.select2",function(e){t.trigger("focus",e)}),this._syncA=n.bind(this._syncAttributes,this),this._syncS=n.bind(this._syncSubtree,this),this.$element[0].attachEvent&&this.$element[0].attachEvent("onpropertychange",this._syncA);var r=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;null!=r?(this._observer=new r(function(n){e.each(n,t._syncA),e.each(n,t._syncS)}),this._observer.observe(this.$element[0],{attributes:!0,childList:!0,subtree:!1})):this.$element[0].addEventListener&&(this.$element[0].addEventListener("DOMAttrModified",t._syncA,!1),this.$element[0].addEventListener("DOMNodeInserted",t._syncS,!1),this.$element[0].addEventListener("DOMNodeRemoved",t._syncS,!1))},i.prototype._registerDataEvents=function(){var e=this;this.dataAdapter.on("*",function(t,n){e.trigger(t,n)})},i.prototype._registerSelectionEvents=function(){var t=this,n=["toggle","focus"];this.selection.on("toggle",function(){t.toggleDropdown()}),this.selection.on("focus",function(e){t.focus(e)}),this.selection.on("*",function(r,i){e.inArray(r,n)===-1&&t.trigger(r,i)})},i.prototype._registerDropdownEvents=function(){var e=this;this.dropdown.on("*",function(t,n){e.trigger(t,n)})},i.prototype._registerResultsEvents=function(){var e=this;this.results.on("*",function(t,n){e.trigger(t,n)})},i.prototype._registerEvents=function(){var e=this;this.on("open",function(){e.$container.addClass("select2-container--open")}),this.on("close",function(){e.$container.removeClass("select2-container--open")}),this.on("enable",function(){e.$container.removeClass("select2-container--disabled")}),this.on("disable",function(){e.$container.addClass("select2-container--disabled")}),this.on("blur",function(){e.$container.removeClass("select2-container--focus")}),this.on("query",function(t){e.isOpen()||e.trigger("open",{}),this.dataAdapter.query(t,function(n){e.trigger("results:all",{data:n,query:t})})}),this.on("query:append",function(t){this.dataAdapter.query(t,function(n){e.trigger("results:append",{data:n,query:t})})}),this.on("keypress",function(t){var n=t.which;e.isOpen()?n===r.ESC||n===r.TAB||n===r.UP&&t.altKey?(e.close(),t.preventDefault()):n===r.ENTER?(e.trigger("results:select",{}),t.preventDefault()):n===r.SPACE&&t.ctrlKey?(e.trigger("results:toggle",{}),t.preventDefault()):n===r.UP?(e.trigger("results:previous",{}),t.preventDefault()):n===r.DOWN&&(e.trigger("results:next",{}),t.preventDefault()):(n===r.ENTER||n===r.SPACE||n===r.DOWN&&t.altKey)&&(e.open(),t.preventDefault())})},i.prototype._syncAttributes=function(){this.options.set("disabled",this.$element.prop("disabled")),this.options.get("disabled")?(this.isOpen()&&this.close(),this.trigger("disable",{})):this.trigger("enable",{})},i.prototype._syncSubtree=function(e,t){var n=!1,r=this;if(!e||!e.target||"OPTION"===e.target.nodeName||"OPTGROUP"===e.target.nodeName){if(t)if(t.addedNodes&&t.addedNodes.length>0)for(var i=0;i<t.addedNodes.length;i++){var o=t.addedNodes[i];o.selected&&(n=!0)}else t.removedNodes&&t.removedNodes.length>0&&(n=!0);else n=!0;n&&this.dataAdapter.current(function(e){r.trigger("selection:update",{data:e})})}},i.prototype.trigger=function(e,t){var n=i.__super__.trigger,r={open:"opening",close:"closing",select:"selecting",unselect:"unselecting"};if(void 0===t&&(t={}),e in r){var o=r[e],s={prevented:!1,name:e,args:t};if(n.call(this,o,s),s.prevented)return void(t.prevented=!0)}n.call(this,e,t)},i.prototype.toggleDropdown=function(){this.options.get("disabled")||(this.isOpen()?this.close():this.open())},i.prototype.open=function(){this.isOpen()||this.trigger("query",{})},i.prototype.close=function(){this.isOpen()&&this.trigger("close",{})},i.prototype.isOpen=function(){return this.$container.hasClass("select2-container--open")},i.prototype.hasFocus=function(){return this.$container.hasClass("select2-container--focus")},i.prototype.focus=function(e){this.hasFocus()||(this.$container.addClass("select2-container--focus"),this.trigger("focus",{}))},i.prototype.enable=function(e){this.options.get("debug")&&window.console&&console.warn&&console.warn('Select2: The `select2("enable")` method has been deprecated and will be removed in later Select2 versions. Use $element.prop("disabled") instead.'),null!=e&&0!==e.length||(e=[!0]);var t=!e[0];this.$element.prop("disabled",t)},i.prototype.data=function(){this.options.get("debug")&&arguments.length>0&&window.console&&console.warn&&console.warn('Select2: Data can no longer be set using `select2("data")`. You should consider setting the value instead using `$element.val()`.');var e=[];return this.dataAdapter.current(function(t){e=t}),e},i.prototype.val=function(t){if(this.options.get("debug")&&window.console&&console.warn&&console.warn('Select2: The `select2("val")` method has been deprecated and will be removed in later Select2 versions. Use $element.val() instead.'),null==t||0===t.length)return this.$element.val();var n=t[0];e.isArray(n)&&(n=e.map(n,function(e){return e.toString()})),this.$element.val(n).trigger("change")},i.prototype.destroy=function(){this.$container.remove(),this.$element[0].detachEvent&&this.$element[0].detachEvent("onpropertychange",this._syncA),null!=this._observer?(this._observer.disconnect(),this._observer=null):this.$element[0].removeEventListener&&(this.$element[0].removeEventListener("DOMAttrModified",this._syncA,!1),this.$element[0].removeEventListener("DOMNodeInserted",this._syncS,!1),this.$element[0].removeEventListener("DOMNodeRemoved",this._syncS,!1)),this._syncA=null,this._syncS=null,this.$element.off(".select2"),this.$element.attr("tabindex",this.$element.data("old-tabindex")),this.$element.removeClass("select2-hidden-accessible"),this.$element.attr("aria-hidden","false"),this.$element.removeData("select2"),this.dataAdapter.destroy(),
this.selection.destroy(),this.dropdown.destroy(),this.results.destroy(),this.dataAdapter=null,this.selection=null,this.dropdown=null,this.results=null},i.prototype.render=function(){var t=e('<span class="select2 select2-container"><span class="selection"></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>');return t.attr("dir",this.options.get("dir")),this.$container=t,this.$container.addClass("select2-container--"+this.options.get("theme")),t.data("element",this.$element),t},i}),t.define("jquery-mousewheel",["jquery"],function(e){return e}),t.define("jquery.select2",["jquery","jquery-mousewheel","./select2/core","./select2/defaults"],function(e,t,n,r){if(null==e.fn.select2){var i=["open","close","destroy"];e.fn.select2=function(t){if(t=t||{},"object"==typeof t)return this.each(function(){var r=e.extend(!0,{},t),i=new n(e(this),r)}),this;if("string"==typeof t){var r,o=Array.prototype.slice.call(arguments,1);return this.each(function(){var n=e(this).data("select2");null==n&&window.console&&console.error&&console.error("The select2('"+t+"') method was called on an element that is not using Select2."),r=n[t].apply(n,o)}),e.inArray(t,i)>-1?this:r}throw new Error("Invalid arguments for Select2: "+t)}}return null==e.fn.select2.defaults&&(e.fn.select2.defaults=r),n}),{define:t.define,require:t.require}}(),n=t.require("jquery.select2");return e.fn.select2.amd=t,n}),"undefined"==typeof Package&&(Package={}),Package["natestrauser:select2"]={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,i=Package.tracker.Tracker,r=Package.tracker.Deps,o=Package.underscore._,a=Package.check.check,s=Package.check.Match,u=Package.random.Random,l,c,f,d,p,m,y;(function(){String.prototype.startsWith||(String.prototype.startsWith=function(e,t){return t=t||0,this.indexOf(e,t)===t}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")})}).call(this),function(){function e(e){return e=e||"",e=e.trim(),e[0]&&(e=e[0].toUpperCase()+e.substr(1).toLowerCase()),e}function t(e){return e=e||"",e=e.toString(),e=e.trim(),e=e.replace(/([a-z\d])([A-Z]+)/g,"$1_$2"),e=e.replace(/[-\s]+/g,"_").toLowerCase()}function n(e){var t=e.lastIndexOf("."),n=e.substring(t,e.length);return t===-1?"":n}l=function i(r){return r=r||"",r=r.toString(),r=r.trim(),r=r.replace(n(r),""),r=t(r),r=r.replace(/[\W_]+/g," "),e(r)}}.call(this),function(){var e=function(e){return e===Object(e)};"function"!=typeof Object.getPrototypeOf&&("object"==typeof"".__proto__?Object.getPrototypeOf=function(e){return e.__proto__}:Object.getPrototypeOf=function(e){return e.constructor.prototype});var t=function(t){return e(t)&&Object.getPrototypeOf(t)===Object.prototype},n=function e(t){return"string"!=typeof t?null:t.replace(/\.[0-9]+\./g,".$.").replace(/\.[0-9]+$/g,".$")},i=function e(t,n){return"$each"===n?t:t?t+"."+n:n},r=function e(t){var n=t.slice(0,t.indexOf("["));return"$"===n.substring(0,1)?n:null};c=function(e,a){function s(e,r,u,c,f,d){!c&&u&&"$"===u.substring(0,1)&&(c=u,u=null);var p=!1,m,y=!1;u&&(f||("$push"===c||"$addToSet"===c||"$pop"===c?(t(e)&&"$each"in e?(e=e.$each,r+="[$each]"):u+=".0",f=!0):"$pull"===c&&(u+=".0",t(e)&&(y=!0),f=!0)),m=n(u),p=o.contains(a,m),r&&(l._affectedKeys[r]=u,l._genericAffectedKeys[r]=m,d&&l._positionsInsideArrays.push(r))),y||(o.isArray(e)&&!o.isEmpty(e)?(r&&l._parentPositions.push(r),o.each(e,function(e,t){s(e,r?r+"["+t+"]":t,u+"."+t,c,f,!0)})):(t(e)&&!p||!r)&&(r&&!o.isEmpty(e)&&(l._parentPositions.push(r),l._objectPositions.push(r)),o.each(e,function(t,n){void 0===t?delete e[n]:"$slice"!==n&&s(t,r?r+"["+n+"]":n,i(u,n),c,f,d)})))}function u(){l._affectedKeys={},l._genericAffectedKeys={},l._parentPositions=[],l._positionsInsideArrays=[],l._objectPositions=[],s(l._obj)}var l=this;l._obj=e,l._affectedKeys={},l._genericAffectedKeys={},l._parentPositions=[],l._positionsInsideArrays=[],l._objectPositions=[],s(l._obj),l.forEachNode=function(e,t){if("function"!=typeof e)throw new Error("filter requires a loop function");t=o.extend({endPointsOnly:!0},t);var n={};o.each(l._affectedKeys,function(i,a){t.endPointsOnly&&o.contains(l._parentPositions,a)||e.call({value:l.getValueForPosition(a),operator:r(a),position:a,key:i,genericKey:l._genericAffectedKeys[a],updateValue:function(e){n[a]=e},remove:function(){n[a]=void 0}})}),o.each(n,function(e,t){l.setValueForPosition(t,e)})},l.getValueForPosition=function(e){for(var n,i=e.split("["),r=l._obj,a=0,s=i.length;a<s;a++)if(n=i[a],"]"===n.slice(-1)&&(n=n.slice(0,-1)),r=r[n],!o.isArray(r)&&!t(r)&&a<s-1)return;return r},l.setValueForPosition=function(e,n){for(var i,r,a=e.split("["),s=l._obj,c=0,f=a.length;c<f;c++)if(r=a[c],"]"===r.slice(-1)&&(r=r.slice(0,-1)),c===f-1)s[r]=n,void 0===n&&delete s[r];else if(void 0===s[r]&&void 0!==n&&(i=a[c+1],i=parseInt(i,10),s[r]=isNaN(i)?{}:[]),s=s[r],!o.isArray(s)&&!t(s)&&c<f-1)return;u()},l.removeValueForPosition=function(e){l.setValueForPosition(e,void 0)},l.getKeyForPosition=function(e){return l._affectedKeys[e]},l.getGenericKeyForPosition=function(e){return l._genericAffectedKeys[e]},l.getInfoForKey=function(e){var t=l.getPositionForKey(e);if(t)return{value:l.getValueForPosition(t),operator:r(t)};for(var n=l.getPositionsForGenericKey(e+".$"),i,o,a=0,s=n.length;a<s;a++)if(i=n[a],o=l.getValueForPosition(i)||l.getValueForPosition(i.slice(0,i.lastIndexOf("["))))return{value:o,operator:r(i)}},l.getPositionForKey=function(e){for(var t in l._affectedKeys)if(l._affectedKeys.hasOwnProperty(t)&&l._affectedKeys[t]===e)return t},l.getPositionsForGenericKey=function(e){var t=[];for(var n in l._genericAffectedKeys)l._genericAffectedKeys.hasOwnProperty(n)&&l._genericAffectedKeys[n]===e&&t.push(n);return t},l.getValueForKey=function(e){var t=l.getPositionForKey(e);if(t)return l.getValueForPosition(t)},l.addKey=function(e,t,n){var i=n?n+"["+e+"]":c._keyToPosition(e);l.setValueForPosition(i,t)},l.removeGenericKeys=function(e){for(var t in l._genericAffectedKeys)l._genericAffectedKeys.hasOwnProperty(t)&&o.contains(e,l._genericAffectedKeys[t])&&l.removeValueForPosition(t)},l.removeGenericKey=function(e){for(var t in l._genericAffectedKeys)l._genericAffectedKeys.hasOwnProperty(t)&&l._genericAffectedKeys[t]===e&&l.removeValueForPosition(t)},l.removeKey=function(e){for(var t in l._affectedKeys)l._affectedKeys.hasOwnProperty(t)&&l._affectedKeys[t]===e&&l.removeValueForPosition(t)},l.removeKeys=function(e){for(var t=0,n=e.length;t<n;t++)l.removeKey(e[t])},l.filterGenericKeys=function(e){var t,n=[],i=[];for(var r in l._genericAffectedKeys)l._genericAffectedKeys.hasOwnProperty(r)&&(t=l._genericAffectedKeys[r],o.contains(n,t)||(n.push(t),t&&!e(t)&&i.push(t)));o.each(i,function(e){l.removeGenericKey(e)})},l.setValueForKey=function(e,t){for(var n in l._affectedKeys)l._affectedKeys.hasOwnProperty(n)&&l._affectedKeys[n]===e&&l.setValueForPosition(n,t)},l.setValueForGenericKey=function(e,t){for(var n in l._genericAffectedKeys)l._genericAffectedKeys.hasOwnProperty(n)&&l._genericAffectedKeys[n]===e&&l.setValueForPosition(n,t)},l.getObject=function(){return l._obj},l.getFlatObject=function(e){e=e||{};var t={};return o.each(l._affectedKeys,function(n,i){("string"!=typeof n||e.keepArrays!==!0||o.contains(l._positionsInsideArrays,i)||o.contains(l._objectPositions,i))&&(e.keepArrays||o.contains(l._parentPositions,i))||(t[n]=l.getValueForPosition(i))}),t},l.affectsKey=function(e){return!!l.getPositionForKey(e)},l.affectsGenericKey=function(e){for(var t in l._genericAffectedKeys)if(l._genericAffectedKeys.hasOwnProperty(t)&&l._genericAffectedKeys[t]===e)return!0;return!1},l.affectsGenericKeyImplicit=function(e){for(var t in l._genericAffectedKeys)if(l._genericAffectedKeys.hasOwnProperty(t)){var n=l._genericAffectedKeys[t];if(n===e)return!0;if(n.substring(0,e.length+1)===e+".")return!0;var i=e.slice(-2);if(".$"===i&&e.slice(0,-2)===n)return!0}return!1}},c.expandKey=function(e,t,n){for(var i,r,o=t.split("["),a=n,s=0,u=o.length;s<u;s++)r=o[s],"]"===r.slice(-1)&&(r=r.slice(0,-1)),s===u-1?(a[r]=e,void 0===e&&delete a[r]):(i=o[s+1],i=parseInt(i,10),a[r]||(a[r]=isNaN(i)?{}:[])),a=a[r]},c._keyToPosition=function e(t,n){var i="";return o.each(t.split("."),function(e,t){i+=0!==t||n?"["+e+"]":e}),i},c._positionToKey=function e(t){var n=new c({});n.setValueForPosition(t,1);var i=n.getKeyForPosition(t);return n=null,i}}.call(this),function(){f={appendAffectedKey:function e(t,n){return"$each"===n?t:t?t+"."+n:n},shouldCheck:function e(t){if("$pushAll"===t)throw new Error("$pushAll is not supported; use $push + $each");return!o.contains(["$pull","$pullAll","$pop","$slice"],t)},errorObject:function e(t,n,i){return{name:n,type:t,value:i}},isBasicObject:function e(t){return o.isObject(t)&&Object.getPrototypeOf(t)===Object.prototype},safariBugFix:function e(t){return"undefined"!=typeof Uint8Array&&t===Uint8Array||"undefined"!=typeof Uint16Array&&t===Uint16Array||"undefined"!=typeof Uint32Array&&t===Uint32Array||"undefined"!=typeof Uint8ClampedArray&&t===Uint8ClampedArray},isNotNullOrUndefined:function e(t){return void 0!==t&&null!==t},extractOp:function e(t){var n=t.slice(0,t.indexOf("["));return"$"===n.substring(0,1)?n:null},deleteIfPresent:function e(t,n){n in t&&delete t[n]},looksLikeModifier:function e(t){for(var n in t)if(t.hasOwnProperty(n)&&"$"===n.substring(0,1))return!0;return!1},dateToDateString:function e(t){var n=t.getUTCMonth()+1;n<10&&(n="0"+n);var i=t.getUTCDate();return i<10&&(i="0"+i),t.getUTCFullYear()+"-"+n+"-"+i}}}.call(this),function(){function t(t,n,i){function r(e){var r=this.key;if(!o.contains(s,r)){var a=r.lastIndexOf("."),u=a===-1?"":r.slice(0,a+1),l=!1,c=e.call(o.extend({isSet:void 0!==this.value,unset:function(){l=!0},value:this.value,operator:this.operator,field:function(e){var n=t.getInfoForKey(e)||{};return{isSet:void 0!==n.value,value:n.value,operator:n.operator||null}},siblingField:function(e){var n=t.getInfoForKey(u+e)||{};return{isSet:void 0!==n.value,value:n.value,operator:n.operator||null}}},i||{}),t.getObject());if(s.push(r),void 0===c)return void(l&&t.removeValueForPosition(this.position));var f,d;if(o.isObject(c))for(var p in c)if(c.hasOwnProperty(p)&&"$"===p.substring(0,1)){f=p,d=c[p];break}!f&&n&&"$"!==this.position.slice(0,1)&&(f="$set",d=c),f?(t.removeValueForPosition(this.position),t.setValueForPosition(f+"["+r+"]",d)):t.setValueForPosition(this.position,c)}}var a=this,s=[];e.isClient&&void 0===i.userId&&(i.userId=e.userId&&e.userId()||null),o.each(a._autoValues,function(e,i){var a,s,u,l;if(i.indexOf("$")!==-1){var d=i.slice(0,i.lastIndexOf("$")+1);u=i.slice(d.length+1),a=c._keyToPosition(u,!0),u="."+u,l=t.getPositionsForGenericKey(d)}else l=t.getPositionsForGenericKey(i),l.length?(s=i,u="",a=""):(s=i,u="",a="",l=n?["$set["+i+"]"]:[c._keyToPosition(i)]);o.each(l,function(n){r.call({key:(s||c._positionToKey(n))+u,value:t.getValueForPosition(n+a),operator:f.extractOp(n),position:n+a},e)})})}function n(t,n){e.startup(function(){r.autorun(function(){t.isValid()||console.log('SimpleSchema invalid keys for "'+n+'" context:',t.invalidKeys())})})}var i={type:s.Any,label:s.Optional(s.OneOf(String,Function)),optional:s.Optional(s.OneOf(Boolean,Function)),min:s.Optional(s.OneOf(Number,Date,Function)),max:s.Optional(s.OneOf(Number,Date,Function)),minCount:s.Optional(s.OneOf(Number,Function)),maxCount:s.Optional(s.OneOf(Number,Function)),allowedValues:s.Optional(s.OneOf([s.Any],Function)),decimal:s.Optional(Boolean),exclusiveMax:s.Optional(Boolean),exclusiveMin:s.Optional(Boolean),regEx:s.Optional(s.OneOf(RegExp,[RegExp])),custom:s.Optional(Function),blackbox:s.Optional(Boolean),autoValue:s.Optional(Function),defaultValue:s.Optional(s.Any),trim:s.Optional(Boolean)},u=function(e,t){var n;if(o.isArray(e)||o.isObject(e)&&!(e instanceof Date))return e;if(t===String)return"undefined"!=typeof e&&null!==e&&"string"!=typeof e?e.toString():e;if(t===Number){if("string"==typeof e&&!o.isEmpty(e)){var i=Number(e);return isNaN(i)?e:i}return e}if(t===Date){if("string"==typeof e&&(n=Date.parse(e),isNaN(n)===!1))return new Date(n);if("number"==typeof e)return new Date(e)}return e},p=function(e){return o.each(e,function(t,n){var i,r;if(t){if(s.test(t.type,d))i=".",r=t.type,t.type=Object;else{if(!s.test(t.type,[d]))return;i=".$.",r=t.type[0],t.type=[Object]}o.each(r._schema,function(t,r){var o=n+i+r;o in e||(e[o]=t)})}}),e},m=function(e){o.each(e,function(t,n){if(o.isArray(t.type)||t.type===Array){var i=n+".$";i in e||(e[i]={}),o.isArray(t.type)&&(e[i].type=t.type[0]),t.label&&(e[i].label=t.label),e[i].optional=!0,"undefined"!=typeof t.min&&(e[i].min=t.min),"undefined"!=typeof t.max&&(e[i].max=t.max),"undefined"!=typeof t.allowedValues&&(e[i].allowedValues=t.allowedValues),"undefined"!=typeof t.decimal&&(e[i].decimal=t.decimal),"undefined"!=typeof t.exclusiveMax&&(e[i].exclusiveMax=t.exclusiveMax),"undefined"!=typeof t.exclusiveMin&&(e[i].exclusiveMin=t.exclusiveMin),"undefined"!=typeof t.regEx&&(e[i].regEx=t.regEx),"undefined"!=typeof t.blackbox&&(e[i].blackbox=t.blackbox),t.type=Array,o.each(["min","max","allowedValues","decimal","exclusiveMax","exclusiveMin","regEx","blackbox"],function(e){f.deleteIfPresent(t,e)})}})},v=function(e){var t=[],n=[],i,r,a,s;for(o.each(e,function(e,r){for(var o=r.indexOf(".");o!==-1;)i=r.substring(0,o),".$"===i.substring(i.length-2)?o=-1:".$."===r.substring(o,o+3)?(t.push(i),o=r.indexOf(".",o+3)):(n.push(i),o=r.indexOf(".",o+1))}),a=0,s=t.length;a<s;a++)r=t[a],r in e||(e[r]={type:[Object],optional:!0});for(a=0,s=n.length;a<s;a++)r=n[a],r in e||(e[r]={type:Object,optional:!0});return m(e),e},h=function(e){var t={};return o.each(e,function(e){e=s.test(e,d)?e._schema:v(p(e)),o.each(e,function(e,n){t[n]=t[n]||{},o.extend(t[n],e)})}),e.length&&m(t),t},g=function(e,t){var n,i,r={},a;return o.each(e,function(e,s){e.type===Object&&(n=s+".",a=[],o.each(t,function(e){e.startsWith(n)&&(i=e.substring(n.length),i.indexOf(".")===-1&&a.push(i))}),r[n]=a)}),r},x=function(e){var t=e,n=t.lastIndexOf(".");if(n!==-1&&(t=t.substring(n+1),"$"===t)){var i=e.split(".");t=i[i.length-2]}return"_id"===t?"ID":l(t)};d=function(e,t){var n=this,a=[],u;t=t||{},e=e||{},o.isArray(e)||(e=[e]),n._schema=h(e),n._schemaKeys=[],n._autoValues={},n._blackboxKeys=[],n._validators=[],n._messages={},n._depsMessages=new r.Dependency,n._depsLabels={},o.each(n._schema,function(e,t){if(!s.test(e,i))throw new Error("Invalid definition for "+t+" field.");if(u=t.split(".")[0],n._schemaKeys.push(t),"defaultValue"in e)if("autoValue"in e)console.warn('SimpleSchema: Found both autoValue and defaultValue options for "'+t+'". Ignoring defaultValue.');else{if(".$"===t.slice(-2))throw new Error('An array item field (one that ends with ".$") cannot have defaultValue.');n._autoValues[t]=function e(t){return function(){if(null===this.operator&&!this.isSet)return t}}(e.defaultValue)}if("autoValue"in e){if(".$"===t.slice(-2))throw new Error('An array item field (one that ends with ".$") cannot have autoValue.');n._autoValues[t]=e.autoValue}n._depsLabels[t]=new r.Dependency,e.blackbox===!0&&n._blackboxKeys.push(t),o.contains(a,u)||a.push(u)}),n._firstLevelSchemaKeys=a,n._objectKeys=g(n._schema,n._schemaKeys),n._validationContexts={}},d.extendOptions=function(e){o.extend(i,e)};var b="(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z](?:[a-z-]*[a-z])?",_="(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.|$))+",K="(?:(?:[0-1]?\\d{1,2}|2[0-4]\\d|25[0-5])(?:\\.|$)){4}",O="(?:(?:[\\dA-Fa-f]{1,4}(?::|$)){8}|(?=(?:[^:\\s]|:[^:\\s])*::(?:[^:\\s]|:[^:\\s])*$)[\\dA-Fa-f]{0,4}(?:::?(?:[\\dA-Fa-f]{1,4}|$)){1,6})",$="(?:"+[_,K,O].join("|")+")";d.RegEx={Email:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Domain:new RegExp("^"+b+"$"),WeakDomain:new RegExp("^"+$+"$"),IP:new RegExp("^(?:"+K+"|"+O+")$"),IPv4:new RegExp("^"+K+"$"),IPv6:new RegExp("^"+O+"$"),Url:/^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]+-?)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/i,Id:/^[23456789ABCDEFGHJKLMNPQRSTWXYZabcdefghijkmnopqrstuvwxyz]{17}$/,ZipCode:/^\d{5}(?:[-\s]\d{4})?$/,Phone:/^[0-9-٠-٩۰-۹]{2}$|^[+]*(?:[-x-―−ー--  ­ ().\[\]\/~*]*[0-9-٠-٩۰-۹]){3,}[-x-―−ー--  ­ ().\[\]\/~0-9-٠-٩۰-۹]*(?:;ext=([0-9-٠-٩۰-۹]{1,7})|[  \t,]*(?:e?xt(?:ensi(?:ó?|ó))?n?|??|[,x#~]|int|anexo|)[:\.]?[  \t,-]*([0-9-٠-٩۰-۹]{1,7})#?|[- ]+([0-9-٠-٩۰-۹]{1,5})#)?$/i},d._makeGeneric=function(e){return"string"!=typeof e?null:e.replace(/\.[0-9]+(?=\.|$)/g,".$")},d._depsGlobalMessages=new r.Dependency,d.prototype=new s.Where,d.prototype.condition=function(t){var n=this,i,r;if(o.each(t,function(e,t){"$"===t.substring(0,1)?i=!0:r=!0}),i&&r)throw new s.Error("Object cannot contain modifier operators alongside other keys");var a=n.newContext();if(!a.validate(t,{modifier:i,filter:!1,autoConvert:!1})){var u=a.getErrorObject(),l=new s.Error(u.message);throw l.invalidKeys=u.invalidKeys,e.isServer&&(l.sanitizedError=u.sanitizedError),l}return!0},d.prototype.namedContext=function(t){var i=this;return"string"!=typeof t&&(t="default"),i._validationContexts[t]||(i._validationContexts[t]=new y(i),d.debug&&e.isClient&&r.nonreactive(function(){n(i._validationContexts[t],t)})),i._validationContexts[t]},d._validators=[],d.addValidator=function(e){d._validators.push(e)},d.prototype.addValidator=function(e){this._validators.push(e)},d.prototype.pick=function(){var e=this,t=o.toArray(arguments);t.unshift(e._schema);var n=o.pick.apply(null,t);return new d(n)},d.prototype.omit=function(){var e=this,t=o.toArray(arguments);t.unshift(e._schema);var n=o.omit.apply(null,t);return new d(n)},d.prototype.clean=function(e,n){var i=this;if(n=o.extend({filter:!0,autoConvert:!0,removeEmptyStrings:!0,trimStrings:!0,getAutoValues:!0,isModifier:!1,extendAutoValueContext:{}},n||{}),"$pushAll"in e){console.warn("SimpleSchema.clean: $pushAll is deprecated; converting to $push with $each"),e.$push=e.$push||{};for(var r in e.$pushAll){e.$push[r]=e.$push[r]||{},e.$push[r].$each=e.$push[r].$each||[];for(var a=0,s=e.$pushAll[r].length;a<s;a++)e.$push[r].$each.push(e.$pushAll[r][a]);delete e.$pushAll}}var l=new c(e,i._blackboxKeys);if((n.filter||n.autoConvert||n.removeEmptyStrings||n.trimStrings)&&l.forEachNode(function(){var e=this.genericKey,t,r,o;if(e){if(r=i._schema[e],o=this.value,n.filter&&"$unset"!==this.operator&&!i.allowsKey(e))return"[$each]"===this.position.slice(-7)?l.removeValueForPosition(this.position.slice(0,-7)):this.remove(),void(d.debug&&console.info('SimpleSchema.clean: filtered out value that would have affected key "'+e+'", which is not allowed by the schema'));if(void 0!==o){var a=!1;if(n.autoConvert&&"$unset"!==this.operator&&r){var s=u(o,r.type);n.trimStrings&&"string"==typeof s&&(s=s.trim()),void 0!==s&&s!==o&&(!n.removeEmptyStrings||this.operator&&"$set"!==this.operator||"string"!=typeof s||s.length||(s=void 0,"$set"===this.operator&&this.position.match(/\[.+?\]/g).length<2&&(t=this.position.replace("$set","$unset"),l.setValueForPosition(t,""))),d.debug&&console.info("SimpleSchema.clean: autoconverted value "+o+" from "+typeof o+" to "+typeof s+" for "+e),this.updateValue(s),a=!0)}a||(n.trimStrings&&"string"==typeof o&&(!r||r&&r.trim!==!1)&&this.updateValue(o.trim()),!n.removeEmptyStrings||this.operator&&"$set"!==this.operator||"string"!=typeof o||o.length||(this.remove(),"$set"===this.operator&&this.position.match(/\[.+?\]/g).length<2&&(t=this.position.replace("$set","$unset"),l.setValueForPosition(t,""))))}}},{endPointsOnly:!1}),n.getAutoValues&&t.call(i,l,n.isModifier,n.extendAutoValueContext),n.isModifier)for(var f in e)e.hasOwnProperty(f)&&o.isEmpty(e[f])&&delete e[f];return e},d.prototype.schema=function(e){var t=this;return null!==e&&void 0!==e?t._schema[d._makeGeneric(e)]:t._schema},d.prototype.getDefinition=function(e,t,n){var i=this,r=i.schema(e);if(r)return r=o.isArray(t)?o.pick(r,t):o.clone(r),o.each(["min","max","minCount","maxCount","allowedValues","optional","label"],function(e){o.isFunction(r[e])&&(r[e]=r[e].call(n||{}))}),r.label=r.label||x(e),r},d.prototype.keyIsInBlackBox=function(e){var t=this,n=d._makeGeneric(e),i,r;do i=n.lastIndexOf("."),i!==-1&&(n=n.slice(0,i),r=t.getDefinition(n));while(i!==-1&&!r);return!(!r||!r.blackbox)},d.prototype.labels=function(e){var t=this;o.each(e,function(e,n){(o.isString(e)||o.isFunction(e))&&n in t._schema&&(t._schema[n].label=e,t._depsLabels[n]&&t._depsLabels[n].changed())})},d.prototype.label=function(e){var t=this;if(null===e||void 0===e){var n={};return o.each(t.schema(),function(e,i){n[i]=t.label(i)}),n}var i=t.getDefinition(e);if(i){var r=d._makeGeneric(e);return t._depsLabels[r]&&t._depsLabels[r].depend(),i.label}return null},d._globalMessages={required:"[label] is required",minString:"[label] must be at least [min] characters",maxString:"[label] cannot exceed [max] characters",minNumber:"[label] must be at least [min]",maxNumber:"[label] cannot exceed [max]",minNumberExclusive:"[label] must be greater than [min]",maxNumberExclusive:"[label] must be less than [max]",minDate:"[label] must be on or after [min]",maxDate:"[label] cannot be after [max]",badDate:"[label] is not a valid date",minCount:"You must specify at least [minCount] values",maxCount:"You cannot specify more than [maxCount] values",noDecimal:"[label] must be an integer",notAllowed:"[value] is not an allowed value",expectedString:"[label] must be a string",expectedNumber:"[label] must be a number",expectedBoolean:"[label] must be a boolean",expectedArray:"[label] must be an array",expectedObject:"[label] must be an object",expectedConstructor:"[label] must be a [type]",regEx:[{msg:"[label] failed regular expression validation"},{exp:d.RegEx.Email,msg:"[label] must be a valid e-mail address"},{exp:d.RegEx.WeakEmail,msg:"[label] must be a valid e-mail address"},{exp:d.RegEx.Domain,msg:"[label] must be a valid domain"},{exp:d.RegEx.WeakDomain,msg:"[label] must be a valid domain"},{exp:d.RegEx.IP,msg:"[label] must be a valid IPv4 or IPv6 address"},{exp:d.RegEx.IPv4,msg:"[label] must be a valid IPv4 address"},{exp:d.RegEx.IPv6,msg:"[label] must be a valid IPv6 address"},{exp:d.RegEx.Url,msg:"[label] must be a valid URL"},{exp:d.RegEx.Id,msg:"[label] must be a valid alphanumeric ID"}],keyNotInSchema:"[key] is not allowed by the schema"},d.messages=function(e){o.extend(d._globalMessages,e),d._depsGlobalMessages.changed()},d.prototype.messages=function(e){var t=this;o.extend(t._messages,e),t._depsMessages.changed()},d.prototype.messageForError=function(e,t,n,i){function r(t){if("regEx"!==e||!o.isArray(t))return t;var n;return l&&(n=o.find(t,function(e){return e.exp&&e.exp.toString()===l})),n||(n=o.findWhere(t,{exp:null}),n||(n=o.findWhere(t,{exp:void 0}))),n?n.msg:null}var a=this;n=n||a.getDefinition(t,["regEx","label","minCount","maxCount","min","max","type"])||{};var s=e.indexOf("."),u=null;s!==-1&&(u=e.substring(s+1),u=parseInt(u,10),e=e.substring(0,s));var l;"regEx"===e&&(l=null===u||void 0===u||isNaN(u)?n.regEx:n.regEx[u],l&&(l=l.toString()));var c=e+" "+t,p=d._makeGeneric(t),m=e+" "+p;d._depsGlobalMessages.depend(),a._depsMessages.depend();var y=a._messages[c]||a._messages[m]||a._messages[e];if(y=r(y),y||(y=d._globalMessages[c]||d._globalMessages[m]||d._globalMessages[e],y=r(y)),!y)return"Unknown validation error";y=y.replace("[key]",t),y=y.replace("[label]",a.label(t)),"undefined"!=typeof n.minCount&&(y=y.replace("[minCount]",n.minCount)),"undefined"!=typeof n.maxCount&&(y=y.replace("[maxCount]",n.maxCount)),y=void 0!==i&&null!==i?y.replace("[value]",i.toString()):y.replace("[value]","null");var v=n.min,h=n.max;return n.type===Date||n.type===[Date]?("undefined"!=typeof v&&(y=y.replace("[min]",f.dateToDateString(v))),"undefined"!=typeof h&&(y=y.replace("[max]",f.dateToDateString(h)))):("undefined"!=typeof v&&(y=y.replace("[min]",v)),"undefined"!=typeof h&&(y=y.replace("[max]",h))),n.type instanceof Function&&(y=y.replace("[type]",n.type.name)),y},d.prototype.allowsKey=function(e){var t=this;return o.any(t._schemaKeys,function(n){if(n===e)return!0;if(t.schema(n).blackbox===!0){var i=n.length,r=e.slice(0,i+2),o=r.slice(0,-1);if(r===n+".$")return!1;if(o===n+".")return!0}return!1})},d.prototype.newContext=function(){return new y(this)},d.prototype.objectKeys=function(e){var t=this;return e?t._objectKeys[e+"."]||[]:t._firstLevelSchemaKeys},d.prototype.validate=function(e,t){if(Package.check&&Package["audit-argument-checks"])try{a(e)}catch(e){}var n=this.newContext(),i=n.validate(e,t);if(!i){var r=n.invalidKeys().map(function(e){return{name:e.name,type:e.type,details:{value:e.value}}}),o=n.keyErrorMessage(r[0].name);throw new Package["mdg:validation-error"].ValidationError(r,o)}},d.prototype.validator=function(e){var t=this;return e=e||{},function(n){e.clean===!0&&t.clean(n,e),t.validate(n)}}}.call(this),function(){function e(e,t,n){var i=e.type;if(i===String){if("string"!=typeof t)return"expectedString";if(null!==e.max&&e.max<t.length)return"maxString";if(null!==e.min&&e.min>t.length)return"minString";if(e.regEx instanceof RegExp&&!e.regEx.test(t))return"regEx";if(o.isArray(e.regEx)){var r;if(o.every(e.regEx,function(e,n){return!!e.test(t)||(r="regEx."+n,!1)}),r)return r}}else if(i===Number){if("number"!=typeof t||isNaN(t))return"expectedNumber";if("$inc"!==n&&null!==e.max&&(e.exclusiveMax?e.max<=t:e.max<t))return e.exclusiveMax?"maxNumberExclusive":"maxNumber";if("$inc"!==n&&null!==e.min&&(e.exclusiveMin?e.min>=t:e.min>t))return e.exclusiveMin?"minNumberExclusive":"minNumber";if(!e.decimal&&t.toString().indexOf(".")>-1)return"noDecimal"}else if(i===Boolean){if("boolean"!=typeof t)return"expectedBoolean"}else if(i===Object){if(!f.isBasicObject(t))return"expectedObject"}else if(i===Array){if(!o.isArray(t))return"expectedArray";if(null!==e.minCount&&t.length<e.minCount)return"minCount";if(null!==e.maxCount&&t.length>e.maxCount)return"maxCount"}else if(i instanceof Function||f.safariBugFix(i)){if(!(t instanceof i))return"expectedConstructor";if(i===Date){if(isNaN(t.getTime()))return"badDate";if(o.isDate(e.min)&&e.min.getTime()>t.getTime())return"minDate";if(o.isDate(e.max)&&e.max.getTime()<t.getTime())return"maxDate"}}}p=function t(n,i,r,a,s,u){function l(t,i,r,a,l,p,m,h){if(!a)return void y.push(f.errorObject("keyNotInSchema",i,t,a,s));if(!p&&!a.optional&&(null===t||"$unset"===l||"$rename"===l||void 0===t&&(m||h||!l||"$set"===l)))return void y.push(f.errorObject("required",i,null,a,s));if("$rename"===l&&"string"==typeof t&&!s.allowsKey(t))return void y.push(f.errorObject("keyNotInSchema",t,null,null,s));if("$unset"!==l&&"$rename"!==l&&f.isNotNullOrUndefined(t)){var g=e(a,t,l);if(g)return void y.push(f.errorObject(g,i,t,a,s));if(a.allowedValues&&!o.contains(a.allowedValues,t))return void y.push(f.errorObject("notAllowed",i,t,a,s))}var x=i.lastIndexOf("."),b=x===-1?"":i.slice(0,x+1),_=a.custom?[a.custom]:[];_=_.concat(s._validators).concat(d._validators),o.every(_,function(e){var d=e.call(o.extend({key:i,genericKey:r,definition:a,isSet:void 0!==t,value:t,operator:l,field:function(e){v=v||new c(n,s._blackboxKeys);var t=v.getInfoForKey(e)||{};return{isSet:void 0!==t.value,value:t.value,operator:t.operator}},siblingField:function(e){v=v||new c(n,s._blackboxKeys);var t=v.getInfoForKey(b+e)||{};return{isSet:void 0!==t.value,value:t.value,operator:t.operator}}},u||{}));return"string"!=typeof d||(y.push(f.errorObject(d,i,t,a,s)),!1)})}function p(e,t,n,i,r,u){var c,m;if(t){if(s.keyIsInBlackBox(t))return;if(c=d._makeGeneric(t),m=s.getDefinition(t),!a||a===t||a===c){var y=o.some(i,function(e){return e.slice(0,t.length+1)===t+"."});l(e,t,c,m,n,y,r,u)}}if(void 0!==e&&null!==e||m&&(m.type!==Object||m.optional)||(e={}),o.isArray(e))o.each(e,function(e,r){p(e,t+"."+r,n,i)});else if(f.isBasicObject(e)&&(!m||!m.blackbox)){var v=o.keys(e),h=o.union(v,s.objectKeys(c));r=c&&".$"===c.slice(-2),o.each(h,function(o){p(e[o],f.appendAffectedKey(t,o),n,i,r,!0)})}}function m(e){if(o.isEmpty(e))throw new Error("When the modifier option is true, validation object must have at least one operator");var t=o.keys(e.$set||{}).concat(o.keys(e.$setOnInsert||{}));"$setOnInsert"in e&&(r&&(e.$set=e.$set||{},e.$set=o.extend(e.$set,e.$setOnInsert)),delete e.$setOnInsert),o.each(e,function(e,n){if("$"!==n.slice(0,1))throw new Error("When the modifier option is true, all validation object keys must be operators. Did you forget `$set`?");if(f.shouldCheck(n)){if(r&&"$set"===n){var i=o.keys(e);o.each(s.objectKeys(),function(e){o.contains(i,e)||p(void 0,e,n,t)})}o.each(e,function(e,i){"$push"!==n&&"$addToSet"!==n||(f.isBasicObject(e)&&"$each"in e?e=e.$each:i+=".0"),p(e,i,n,t)})}})}if(!o.isObject(n))throw new Error("The first argument of validate() or validateOne() must be an object");if(!i&&f.looksLikeModifier(n))throw new Error("When the validation object contains mongo operators, you must set the modifier option to true");var y=[],v;i?m(n):p(n);var h=[];return y=o.filter(y,function(e){return!o.contains(h,e.name)&&(h.push(e.name),!0)})}}.call(this),function(){function t(e,t,n){var i=e.type;if(i===String){if("string"!=typeof t)return"expectedString";if(null!==e.max&&e.max<t.length)return"maxString";if(null!==e.min&&e.min>t.length)return"minString";if(e.regEx instanceof RegExp&&!e.regEx.test(t))return"regEx";if(o.isArray(e.regEx)){var r;if(o.every(e.regEx,function(e,n){return!!e.test(t)||(r="regEx."+n,!1)}),r)return r}}else if(i===Number){if("number"!=typeof t||isNaN(t))return"expectedNumber";if("$inc"!==n&&null!==e.max&&(e.exclusiveMax?e.max<=t:e.max<t))return e.exclusiveMax?"maxNumberExclusive":"maxNumber";if("$inc"!==n&&null!==e.min&&(e.exclusiveMin?e.min>=t:e.min>t))return e.exclusiveMin?"minNumberExclusive":"minNumber";if(!e.decimal&&t.toString().indexOf(".")>-1)return"noDecimal"}else if(i===Boolean){if("boolean"!=typeof t)return"expectedBoolean"}else if(i===Object){if(!f.isBasicObject(t))return"expectedObject"}else if(i===Array){if(!o.isArray(t))return"expectedArray";if(null!==e.minCount&&t.length<e.minCount)return"minCount";if(null!==e.maxCount&&t.length>e.maxCount)return"maxCount"}else if(i instanceof Function||f.safariBugFix(i)){if(!(t instanceof i))return"expectedConstructor";if(i===Date){if(isNaN(t.getTime()))return"badDate";if(o.isDate(e.min)&&e.min.getTime()>t.getTime())return"minDate";if(o.isDate(e.max)&&e.max.getTime()<t.getTime())return"maxDate"}}}function n(t,n,i){var r=new e.Collection(null),a;if(i)a=u.id(),r.upsert({_id:a},t);else{var s=new c(t),l=new c({});o.each(n,function(e,t){var n;if(e.type===Array&&s.affectsGenericKey(t)?n=[]:e.optional||(n=e.type===Boolean||(e.type===Number?e.min||0:e.type===Date?e.min||new Date:e.type===Array?[]:e.type===Object?{}:"0")),void 0!==n){var i=t.replace(/\.\$/g,".0"),r=c._keyToPosition(i,!1);l.setValueForPosition(r,n)}}),l=l.getObject(),a=r.insert(l),r.update(a,t)}var f=r.findOne(a);return r.remove(a),n._id||delete f._id,f}m=function e(i,r,a,s,u,l){function p(e,n,r,a,s,p,m){if(!a)return void v.push(f.errorObject("keyNotInSchema",n,e,a,u));if(!(p||a.optional||null!==e&&void 0!==e))return void v.push(f.errorObject("required",n,null,a,u));if(f.isNotNullOrUndefined(e)){var y=t(a,e,s);if(y)return void v.push(f.errorObject(y,n,e,a,u));if(a.allowedValues&&!o.contains(a.allowedValues,e))return void v.push(f.errorObject("notAllowed",n,e,a,u))}var g=n.lastIndexOf("."),x=g===-1?"":n.slice(0,g+1),b=a.custom?[a.custom]:[];b=b.concat(u._validators).concat(d._validators),o.every(b,function(t){var d=t.call(o.extend({key:n,genericKey:r,definition:a,isSet:void 0!==e,value:e,operator:s,field:function(e){h=h||new c(i,u._blackboxKeys);var t=h.getInfoForKey(e)||{};return{isSet:void 0!==t.value,value:t.value,operator:t.operator}},siblingField:function(e){h=h||new c(i,u._blackboxKeys);var t=h.getInfoForKey(x+e)||{};return{isSet:void 0!==t.value,value:t.value,operator:t.operator}}},l||{}));return"string"!=typeof d||(v.push(f.errorObject(d,n,e,a,u)),!1)})}function m(e,t,n,i){var r,a;if(t){if(u.keyIsInBlackBox(t))return;r=d._makeGeneric(t),a=u.getDefinition(t),s&&s!==t&&s!==r||p(e,t,r,a,null,n,i)}if(void 0!==e&&null!==e||a&&(a.type!==Object||a.optional)||(e={}),o.isArray(e))o.each(e,function(e,n){m(e,t+"."+n)});else if(f.isBasicObject(e)&&(!a||!a.blackbox)){var l=o.keys(e),c=o.union(l,u._schemaKeys);i=r&&".$"===r.slice(-2),o.each(c,function(r){f.shouldCheck(r)&&m(e[r],f.appendAffectedKey(t,r),n,i)})}}if(!o.isObject(i))throw new Error("The first argument of validate() or validateOne() must be an object");if(r){if(o.isEmpty(i))throw new Error("When the modifier option is true, validation object must have at least one operator");var y=o.every(i,function(e,t){return"$"===t.substring(0,1)});if(!y)throw new Error("When the modifier option is true, all validation object keys must be operators");i=n(i,u.schema(),a)}else if(f.looksLikeModifier(i))throw new Error("When the validation object contains mongo operators, you must set the modifier option to true");var v=[],h;m(i);var g=[];return v=o.filter(v,function(e){return!o.contains(g,e.name)&&(g.push(e.name),!0)})}}.call(this),function(){function t(e,t,n,i,r,o){var a=!0,s=a?p:m;return s(e,t,n,i,r,o)}y=function e(t){var n=this;
n._simpleSchema=t,n._schema=t.schema(),n._schemaKeys=o.keys(n._schema),n._invalidKeys=[],n._deps={},n._depsAny=new r.Dependency,o.each(n._schemaKeys,function(e){n._deps[e]=new r.Dependency})},y.prototype.validate=function n(i,r){var a=this;r=o.extend({modifier:!1,upsert:!1,extendedCustomContext:{}},r||{}),e.isClient&&void 0===r.extendedCustomContext.userId&&(r.extendedCustomContext.userId=e.userId&&e.userId()||null);var s=t(i,r.modifier,r.upsert,null,a._simpleSchema,r.extendedCustomContext),u=o.pluck(a._invalidKeys,"name");a._invalidKeys=s;var l=o.pluck(a._invalidKeys,"name"),c=o.union(l,u);return a._markKeysChanged(c),0===a._invalidKeys.length},y.prototype.validateOne=function n(i,r,a){var s=this,u,l,c;a=o.extend({modifier:!1,upsert:!1,extendedCustomContext:{}},a||{}),e.isClient&&void 0===a.extendedCustomContext.userId&&(a.extendedCustomContext.userId=e.userId&&e.userId()||null);var f=t(i,a.modifier,a.upsert,r,s._simpleSchema,a.extendedCustomContext),d=[];for(u=0,l=s._invalidKeys.length;u<l;u++)c=s._invalidKeys[u],c.name!==r&&d.push(c);for(s._invalidKeys=d,u=0,l=f.length;u<l;u++)c=f[u],s._invalidKeys.push(c);return s._markKeysChanged([r]),!s._keyIsInvalid(r)},y.prototype.resetValidation=function e(){var t=this,n=o.pluck(t._invalidKeys,"name");t._invalidKeys=[],t._markKeysChanged(n)},y.prototype.isValid=function e(){var t=this;return t._depsAny.depend(),!t._invalidKeys.length},y.prototype.invalidKeys=function e(){var t=this;return t._depsAny.depend(),t._invalidKeys},y.prototype.addInvalidKeys=function e(t){var n=this;if(t&&t.length){var i=[];o.each(t,function(e){i.push(e.name),n._invalidKeys.push(e)}),n._markKeysChanged(i)}},y.prototype._markKeysChanged=function e(t){var n=this;t&&t.length&&(o.each(t,function(e){var t=d._makeGeneric(e);t in n._deps&&n._deps[t].changed()}),n._depsAny.changed())},y.prototype._getInvalidKeyObject=function e(t,n){var i=this;n=n||d._makeGeneric(t);var r=o.findWhere(i._invalidKeys,{name:t});return r||(r=o.findWhere(i._invalidKeys,{name:n})),r},y.prototype._keyIsInvalid=function e(t,n){return!!this._getInvalidKeyObject(t,n)},y.prototype.keyIsInvalid=function e(t){var n=this,i=d._makeGeneric(t);return n._deps[i]&&n._deps[i].depend(),n._keyIsInvalid(t,i)},y.prototype.keyErrorMessage=function e(t){var n=this,i=d._makeGeneric(t);n._deps[i]&&n._deps[i].depend();var r=n._getInvalidKeyObject(t,i);return r?n._simpleSchema.messageForError(r.type,r.name,null,r.value):""},y.prototype.getErrorObject=function t(){var n=this,i,r=this._invalidKeys;r.length?(i=n.keyErrorMessage(r[0].name),r=o.map(r,function(e){return o.extend({message:n.keyErrorMessage(e.name)},e)})):i="Failed validation";var a=new Error(i);return a.invalidKeys=r,e.isServer&&(a.sanitizedError=new e.Error(400,i)),a}}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["aldeed:simple-schema"]={},{SimpleSchema:d,MongoObject:c,humanize:l})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package.jquery.$,r=Package.jquery.jQuery,i=Package.underscore._,a=Package["templating-runtime"].Template,u=Package["reactive-var"].ReactiveVar,l=Package["clinical:router"].Router,c=Package["clinical:router"].RouteController,s=Package["aldeed:simple-schema"].SimpleSchema,p=Package["aldeed:simple-schema"].MongoObject,m=Package.modules.meteorInstall,d=Package.modules.Buffer,f=Package.modules.process,h=Package["ecmascript-runtime"].Symbol,v=Package["ecmascript-runtime"].Map,g=Package["ecmascript-runtime"].Set,k=Package["babel-runtime"].meteorBabelHelpers,b=Package.promise.Promise,w=Package["iron:core"].Iron,y=Package.webapp.WebApp,x=Package.logging.Log,j=Package.deps.Tracker,T=Package.deps.Deps,I=Package.session.Session,C=Package["ddp-client"].DDP,_=Package.mongo.Mongo,M=Package.ui.Blaze,S=Package.ui.UI,H=Package.ui.Handlebars,F=Package.spacebars.Spacebars,O=Package.check.check,$=Package.check.Match,D=Package.random.Random,P=Package.ejson.EJSON,z=Package["launch-screen"].LaunchScreen,A=Package.htmljs.HTML,E,R=m({node_modules:{meteor:{"ohif:core":{"main.js":["meteor/meteor",function(e,t,n){n.export({OHIF:function(){return r}});var o;n.import("meteor/meteor",{Meteor:function(e){o=e}});var r={log:{},ui:{},viewer:{}};o.isDevelopment&&o.isClient&&(window.OHIF=r)}],client:{"index.js":["./lib","./helpers","./components","./ui","./routes.js",function(e,t,n){n.import("./lib"),n.import("./helpers"),n.import("./components"),n.import("./ui"),n.import("./routes.js")}],"routes.js":["meteor/clinical:router",function(e,t,n){var o;n.import("meteor/clinical:router",{Router:function(e){o=e}}),o.route("/playground",function(){this.render("componentPlayground")})}],components:{"index.js":["./base","./bootstrap","./playground/playground.html","./playground/playground.styl","./playground/playground.js",function(e,t,n){n.import("./base"),n.import("./bootstrap"),n.import("./playground/playground.html"),n.import("./playground/playground.styl"),n.import("./playground/playground.js")}],base:{"component.js":["babel-runtime/helpers/classCallCheck","meteor/ohif:core",function(e,t,n){var o;n.import("babel-runtime/helpers/classCallCheck",{default:function(e){o=e}});var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}});var i=function(){function e(t){o(this,e),t.view._component=this,t.sections={},this.templateInstance=t,this.registeredItems=new g}return e.prototype.registerSelf=function(){function e(){var e=r.blaze.getParentComponent(this.templateInstance.view);e&&(this.parent=e,e.registeredItems.add(this))}return e}(),e.prototype.unregisterSelf=function(){function e(){var e=r.blaze.getParentComponent(this.templateInstance.view);e&&(delete this.parent,e.registeredItems.delete(this))}return e}(),e}();r.Component=i}],"index.js":["./component.js","./mixin.js","./template.js","./section/section.html","./section/section.js","./mixins/action.js","./mixins/button.js","./mixins/checkbox.js","./mixins/component.js","./mixins/form.js","./mixins/formItem.js","./mixins/group.js","./mixins/groupRadio.js","./mixins/input.js","./mixins/link.js","./mixins/schemaData.js","./mixins/select.js","./mixins/select2.js","./templates/button.html","./templates/custom.html","./templates/div.html","./templates/form.html","./templates/input.html","./templates/link.html","./templates/select.html","./wrappers/label.html","./wrappers/labelContent.html",function(e,t,n){n.import("./component.js"),n.import("./mixin.js"),n.import("./template.js"),n.import("./section/section.html"),n.import("./section/section.js"),n.import("./mixins/action.js"),n.import("./mixins/button.js"),n.import("./mixins/checkbox.js"),n.import("./mixins/component.js"),n.import("./mixins/form.js"),n.import("./mixins/formItem.js"),n.import("./mixins/group.js"),n.import("./mixins/groupRadio.js"),n.import("./mixins/input.js"),n.import("./mixins/link.js"),n.import("./mixins/schemaData.js"),n.import("./mixins/select.js"),n.import("./mixins/select2.js"),n.import("./templates/button.html"),n.import("./templates/custom.html"),n.import("./templates/div.html"),n.import("./templates/form.html"),n.import("./templates/input.html"),n.import("./templates/link.html"),n.import("./templates/select.html"),n.import("./wrappers/label.html"),n.import("./wrappers/labelContent.html")}],"mixin.js":["babel-runtime/helpers/classCallCheck","meteor/ohif:core","meteor/underscore",function(e,t,n){var o;n.import("babel-runtime/helpers/classCallCheck",{default:function(e){o=e}});var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}}),r.mixins={};var a=function(){function e(t){var n=t.dependencies,r=t.composition;o(this,e),this.dependencies=n||"",this.composition=r}return e.prototype.init=function(){function t(t,n,o,r){var a=this,u=this.dependencies.split(" ");i.each(u,function(i){if(i){var u=e.getMixin(i);if(u===a)throw new Error("Mixin "+i+" has a cyclic dependency.");u.init(t,n,o,r)}}),this.apply(t,n,o,r)}return t}(),e.prototype.apply=function(){function e(e,t,n,o){if(!i.contains(n,this)){var r=this.composition;i.each(o,function(n){var o=n;"onMixins"===o&&(o="onRendered"),"onData"===n&&r[n]?r[n](t):r[n]&&e[o](r[n])}),n.push(this)}}return e}(),e.initData=function(){function t(t){var n=t.mixins.split(" ");i.each(n,function(n){if(n){var o=e.getMixin(n);o.init(null,t,[],["onData"])}})}return t}(),e.initAll=function(){function t(t,n){var o=n.mixins.split(" ");i.each(o,function(o){if(o){var r=e.getMixin(o);r.init(t,n,[],["onCreated","onRendered","onDestroyed","events","helpers"]),r.init(t,n,[],["onMixins"])}})}return t}(),e.getMixin=function(){function e(e){var t=r.mixins[e];if(!t)throw new Error("Mixin "+e+" not found.");return t}return e}(),e}();r.Mixin=a}],"template.js":["meteor/templating","meteor/blaze","meteor/underscore","meteor/ohif:core",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/blaze",{Blaze:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}}),o.baseComponent=new o("baseComponent",function(){}),o.baseComponent.constructView=function(e,t){var n=o.currentData();if(n){n.base||(n.base="baseCustom");var u=o[n.base];if(!u)throw new Error("Template "+n.base+" not found.");var l=a.blaze.cloneTemplate(u,n.base+"Component");l.renderFunction=u.renderFunction,a.Mixin.initData(n);var c=[];if(n.wrappers){var s=n.wrappers.split(" ");i.each(s,function(e){return e&&c.push(e)})}for(var p=[],m=function i(){var u=function n(){return l.constructView(e,t)};return l.onCreated(function(){var e=o.instance();e.component=new a.Component(e),e.wrapper=p[0]||e,p.forEach(function(t){t.view._wrapperComponent=e.component,t.component=e.component})}),a.Mixin.initAll(l,n),r.With(n,u)},d=void 0,f=function e(){var i=o[d];if(!i)throw new Error("Template "+d+" not found.");var u=a.blaze.cloneTemplate(i),l=m,c=function e(){return u.onCreated(function(){return p.push(o.instance())}),u.constructView(l,t)};m=function e(){return r.With(n,c)}};d=c.shift();)f();return m(e,t)}}}],mixins:{"action.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),o.mixins.action=new o.Mixin({dependencies:"formItem",composition:{onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element.addClass("form-action")}return e}(),events:{"click .form-action":function(){function e(e,t){var n=t.component,o=t.data,r=o.action,i=o.params,a=n.getApi();a&&r&&"function"==typeof a[r]&&a[r].call(this,i)}return e}()}}})}],"button.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),o.mixins.button=new o.Mixin({dependencies:"formItem",composition:{onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element=e.$("button").first()}return e}()}})}],"checkbox.js":["meteor/ohif:core","meteor/templating","meteor/underscore",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}}),o.mixins.checkbox=new o.Mixin({dependencies:"input",composition:{onCreated:function(){function e(){var e=r.instance(),t=e.component;t.value=function(e){var n=i.isUndefined(e);return n?t.parseData(t.$element.is(":checked")):void t.$element.prop("checked",e)}}return e}()}})}],"component.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),o.mixins.component=new o.Mixin({composition:{}})}],"form.js":["babel-runtime/helpers/typeof","meteor/ohif:core","meteor/templating","meteor/tracker","meteor/underscore","meteor/jquery",function(e,t,n){var o;n.import("babel-runtime/helpers/typeof",{default:function(e){o=e}});var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/tracker",{Tracker:function(e){a=e}});var u;n.import("meteor/underscore",{_:function(e){u=e}});var l;n.import("meteor/jquery",{$:function(e){l=e}}),r.mixins.form=new r.Mixin({dependencies:"group",composition:{onCreated:function(){function e(){var e=i.instance(),t=e.component;t.isForm=!0,t.isValidatedAlready=!1,t.validationObserver=new a.Dependency,e.data.pathKey="",t.validationRan=u.debounce(function(){t.validationObserver.changed()},200);var n=t.validate;t.validate=function(){var o=n();return t.isValidatedAlready=!0,t.schema&&t.schema._invalidKeys.length&&e.$(".state-error :input:first").focus(),o}}return e}(),onRendered:function(){function e(){var e=i.instance(),t=e.component;t.$style=t.$element=e.$("form").first(),t.$element[0].onsubmit=function(){return!1}}return e}(),events:{"click .validation-error-container a":function(){function e(e,t){var n=l(e.currentTarget).attr("data-target");t.$('.state-error[data-key="'+n+'"]').find(":input:first").focus()}return e}()},helpers:{validationErrors:function(){function e(){var e=i.instance(),t=e.component;if(t.validationObserver.depend(),t.schema&&t.schema._invalidKeys.length){var n=function(){var e=[];return t.schema._invalidKeys.forEach(function(n){var o=t.schema._schema[n.name].label,r=t.schema.keyErrorMessage(n.name);r=r.replace(o,"<strong>"+o+"</strong>"),e.push({key:n.name,message:F.SafeString(r)})}),{v:e}}();if("object"===("undefined"==typeof n?"undefined":o(n)))return n.v}}return e}()}}})}],"formItem.js":["meteor/ohif:core","meteor/templating","meteor/tracker","meteor/meteor","meteor/underscore","meteor/jquery",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}});var i;n.import("meteor/tracker",{Tracker:function(e){i=e}});var a;n.import("meteor/meteor",{Meteor:function(e){a=e}});var u;n.import("meteor/underscore",{_:function(e){u=e}});var l;n.import("meteor/jquery",{$:function(e){l=e}}),o.mixins.formItem=new o.Mixin({dependencies:"schemaData",composition:{onCreated:function(){function e(){var e=r.instance(),t=e.component;t.changeObserver=new i.Dependency,t.registerSelf(),t.$element=l(),t.$style=l(),t.$wrapper=l(),t.value=function(e){var n=u.isUndefined(e);return n?t.parseData(t.$element.val()):void t.$element.val(e).trigger("change")},t.disable=function(e){t.$element.prop("disabled",!!e)},t.readonly=function(e){t.$element.prop("readonly",!!e)},t.show=function(e){var n=e?"show":"hide";t.$wrapper[n]()},t.hasFocus=function(){var e=l(":focus")[0],n=l.contains(t.$wrapper[0],e),o=t.$wrapper[0]===e;return n||o},t.state=function(e,n){t.$wrapper.toggleClass("state-"+e,!!n)},t.error=function(e){t.state("error",e),e?t.$wrapper.attr("data-error",e):t.$wrapper.removeAttr("data-error",e)},t.toggleTooltip=function(e,n){if(e&&n){if(t.$wrapper.next(".tooltip").length)return;t.$wrapper.tooltip({trigger:"manual",title:n}).tooltip("show")}else t.$wrapper.tooltip("destroy")},t.toggleMessage=function(e){if(!e)return void a.setTimeout(function(){t.hasFocus()||t.toggleTooltip(!1)},100);var n=t.$wrapper.attr("data-error");n&&t.toggleTooltip(!0,n)},t.getForm=function(){for(var e=t;e;)if(e=e.parent,e&&e.isForm)return e},t.getApi=function(){var n=e.data.api;if(!n){if(t.isForm)return;var o=t.getForm();if(!o)return;return o.getApi()}return n},t.validate=function(){var n,r=t.getForm(),i=r&&r.schema,a=e.data.pathKey;if(!a||!i||!t.$wrapper.is(":visible"))return!0;var u=o.object.getNestedObject((n={},n[a]=t.value(),n)),l=i.validateOne(u,a);return r.validationRan(),l?(t.error(!1),!0):(t.error(i.keyErrorMessage(a)),!1)},t.depend=function(){return t.changeObserver.depend()}}return e}(),onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element=e.$(":input").first(),t.$wrapper=e.wrapper.$("*").first(),t.$wrapper.attr("data-key",e.data.pathKey)}return e}(),onDestroyed:function(){function e(){var e=r.instance();e.component.unregisterSelf()}return e}(),onMixins:function(){function e(){var e=r.instance(),t=e.component;t.$style.length||(t.$style=t.$element),t.$element.data("component",t),t.$wrapper.data("component",t)}return e}(),events:{change:function(){function e(e,t){var n=t.component;if(e.currentTarget===n.$element[0]){n.changeObserver.changed();var o=n.getForm();o&&o.isValidatedAlready&&n.validate()}}return e}(),focus:function(){function e(e,t){var n=t.component;n.isGroup||n.isCustomFocus||(e.stopPropagation(),n.toggleMessage(!0))}return e}(),blur:function(){function e(e,t){var n=t.component;n.isGroup||n.isCustomFocus||(e.stopPropagation(),n.toggleMessage(!1))}return e}()}}})}],"group.js":["babel-runtime/helpers/typeof","meteor/ohif:core","meteor/templating","meteor/underscore",function(e,t,n){var o;n.import("babel-runtime/helpers/typeof",{default:function(e){o=e}});var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/underscore",{_:function(e){a=e}}),r.mixins.group=new r.Mixin({dependencies:"formItem",composition:{onCreated:function(){function e(){var e=i.instance(),t=e.component;t.isGroup=!0,e.autorun(function(){var n=e.data.schema;n instanceof u&&(n=n.get()),t.schema=n&&n.newContext()}),t.value=function(n){var r=a.isUndefined(n),i=e.data.arrayValues,u=i?[]:{};if(r)return t.registeredItems.forEach(function(e){if(i)u.push(e.value());else{var t=e.templateInstance.data.key;t&&(u[t]=e.value())}}),u;var l="object"===("undefined"==typeof n?"undefined":o(n))?n:u;if(l){var c=0;t.registeredItems.forEach(function(e){var t=i?c:e.templateInstance.data.key,n=a.isUndefined(l[t])?null:l[t];e.value(n),c++}),t.$element.trigger("change")}},t.item=function(e){var n=void 0;return t.registeredItems.forEach(function(t){var o=t.templateInstance.data.key;o===e&&(n=t)}),n};var n=t.validate;t.validate=function(){var o=!0;return t.isForm&&!t.schema?o:(e.data.pathKey&&!n()&&(o=!1),t.registeredItems.forEach(function(t){var n=t.templateInstance.data.key;!n&&!e.data.arrayValues||t.validate()||(o=!1)}),o)},t.disable=function(e){t.registeredItems.forEach(function(t){return t.disable(e)})},t.readonly=function(e){t.registeredItems.forEach(function(t){return t.readonly(e)})}}return e}(),onRendered:function(){function e(){var e=i.instance(),t=e.component;t.$element=e.$(".component-group").first()}return e}()}})}],"groupRadio.js":["meteor/ohif:core","meteor/templating","meteor/underscore","meteor/jquery",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}});var a;n.import("meteor/jquery",{$:function(e){a=e}}),o.mixins.groupRadio=new o.Mixin({dependencies:"group",composition:{onCreated:function(){function e(){var e=r.instance(),t=e.component;t.value=function(e){var n=i.isUndefined(e),o=[];t.registeredItems.forEach(function(e){return o.push(e.$element[0])});var r=a(o);return n?t.parseData(r.filter(":checked").val()):void r.filter("[value='"+e+"']").prop("checked",!0).trigger("change")}}return e}()}})}],"input.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),o.mixins.input=new o.Mixin({dependencies:"formItem",composition:{onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element=e.$("input").first()}return e}()}})}],"link.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),o.mixins.link=new o.Mixin({dependencies:"formItem",composition:{onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element=e.$("a").first()}return e}(),events:{"click a":function(){function e(e,t){t.data.action&&e.preventDefault()}return e}()}}})}],"schemaData.js":["meteor/ohif:core","meteor/blaze","meteor/templating","meteor/reactive-var","meteor/underscore",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/blaze",{Blaze:function(e){r=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/reactive-var",{ReactiveVar:function(e){a=e}});var u;n.import("meteor/underscore",{_:function(e){u=e}});var l=function e(t,n){var o=t&&t.schema;if(t&&!o){var r=t.getForm();o=r&&r.schema}if(n&&o){var i=u.clone(o._schema[n]);if(i)return Array.isArray(i.type())&&u.extend(i,o._schema[n+".$"]),i}};o.mixins.schemaData=new o.Mixin({dependencies:"component",composition:{onData:function(){function e(){var e=i.currentData(),t=o.blaze.getParentComponent(r.currentView),n=t&&t.templateInstance.data.pathKey,c=t&&t.templateInstance.data.arrayValues;if(e.pathKey=e.key||(c?"$":""),e.pathKey&&"string"==typeof n){var s=n?n+".":"";e.pathKey=""+s+e.pathKey}var p=l(t,e.pathKey);if(p&&(e.label||(e.label=new a(p.label)),u.isUndefined(e.min)&&p.min&&(e.min=p.min),u.isUndefined(e.max)&&p.max&&(e.max=p.max),p.emptyOption&&(e.emptyOption=p.emptyOption),!e.items&&Array.isArray(p.allowedValues))){for(var m=[],d=p.allowedValues,f=p.valuesLabels||[],h=0;h<d.length;h++)m.push({value:d[h],label:f[h]||d[h]});e.items=new a(m)}}return e}(),onCreated:function(){function e(){var e=i.instance(),t=e.component;t.parseData=function(n){var o=l(t.parent,e.data.pathKey);return o?o.type===Number?parseFloat(n):o.type===Boolean?!!n:n:n}}return e}(),onMixins:function(){function e(){var e=i.instance(),t=e.component,n=l(t.parent,e.data.pathKey);n&&n.defaultValue&&t.value(n.defaultValue)}return e}()}})}],"select.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),o.mixins.select=new o.Mixin({dependencies:"formItem",composition:{onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element=e.$("select").first()}return e}()}})}],"select2.js":["meteor/ohif:core","meteor/templating","meteor/jquery",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}});var a;n.import("meteor/jquery",{$:function(e){a=e}}),o.mixins.select2=new o.Mixin({dependencies:"select",composition:{onCreated:function(){function e(){var e=r.instance();e.component.isCustomFocus=!0;var t=e.data.options&&e.data.options.placeholder;if(t){var n=e.data.items,o=n instanceof u;o&&(n=n.get());var a={value:""};if(!i.findWhere(n,a)){var l=i.clone(n)||[];l.unshift({label:t,value:""}),o?e.data.items.set(l):e.data.items=l}}}return e}(),onRendered:function(){function e(){var e=r.instance(),t=e.component;t.$element.select2(e.data.options),t.select2Instance=t.$element.data("select2");var n=[];n.push(t.$element[0]),n.push(t.$element.nextAll(".select2:first").find(".select2-selection")[0]),a(n).on("focus",function(e){e.stopPropagation(),t.toggleMessage(!0)}).on("blur",function(e){e.stopPropagation(),t.toggleMessage(!1)})}return e}(),onDestroyed:function(){function e(){var e=r.instance(),t=e.component;t.select2Instance.destroy()}return e}()}})}]},section:{"section.html":["./template.section.js",function(e,t,n){n.exports=e("./template.section.js")}],"template.section.js":function(){a.__checkName("section"),a.section=new a("Template.section",function(){var e=this;return M._TemplateWith(function(){return F.call(F.dot(e.lookup("instance"),"sectionData","get"))},function(){return F.include(function(){return F.call(F.dot(e.lookup("instance"),"renderFunction","get"))})})})},"section.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),a.section.onCreated(function(){var e=a.instance();e.renderFunction=new u(null),e.sectionData=new u(null);var t=e.data;if(t){var n=e.view.templateContentBlock;if(n){var r=o.blaze.getParentComponent(e.view,"_wrapperComponent");if(!r)return;r.templateInstance.sections[t]={data:r.templateInstance.data,renderFunction:n.renderFunction}}else j.afterFlush(function(){var n=o.blaze.getParentComponent(e.view,"_wrapperComponent");if(n){var r=n.templateInstance.sections[t];r&&(e.sectionData.set(r.data),e.renderFunction.set(new a(r.renderFunction)))}})}})}]},templates:{"button.html":["./template.button.js",function(e,t,n){n.exports=e("./template.button.js")}],"template.button.js":function(){a.__checkName("baseButton"),a.baseButton=new a("Template.baseButton",function(){var e=this;return A.BUTTON(A.Attrs({id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:function(){return F.mustache(F.dot(e.lookup("."),"class"))},disabled:function(){return M.If(function(){return F.call(F.dot(e.lookup("."),"disabled"))},function(){return"disabled"})},title:function(){return F.mustache(F.dot(e.lookup("."),"title"))}},function(){return F.attrMustache(F.dot(e.lookup("."),"tagAttributes"))}),"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n ")})},"custom.html":["./template.custom.js",function(e,t,n){n.exports=e("./template.custom.js")}],"template.custom.js":function(){a.__checkName("baseCustom"),a.baseCustom=new a("Template.baseCustom",function(){var e=this;return M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})})})},"div.html":["./template.div.js",function(e,t,n){n.exports=e("./template.div.js")}],"template.div.js":function(){a.__checkName("baseDiv"),a.baseDiv=new a("Template.baseDiv",function(){var e=this;return A.DIV(A.Attrs({id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:function(){return F.mustache(F.dot(e.lookup("."),"class"))}},function(){return F.attrMustache(F.dot(e.lookup("."),"tagAttributes"))}),"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n ")})},"form.html":["./template.form.js",function(e,t,n){n.exports=e("./template.form.js")}],"template.form.js":function(){a.__checkName("baseForm"),a.baseForm=new a("Template.baseForm",function(){var e=this;return A.FORM(A.Attrs({id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:function(){return F.mustache(F.dot(e.lookup("."),"class"))},name:function(){return F.mustache(F.dot(e.lookup("."),"name"))},action:function(){return F.mustache(F.dot(e.lookup("."),"action"))},method:function(){return F.mustache(F.dot(e.lookup("."),"method"))},autocomplete:function(){return F.mustache(F.dot(e.lookup("."),"autocomplete"))},enctype:function(){return F.mustache(F.dot(e.lookup("."),"enctype"))},novalidate:function(){return F.mustache(F.dot(e.lookup("."),"novalidate"))},target:function(){return F.mustache(F.dot(e.lookup("."),"target"))}},function(){return F.attrMustache(F.dot(e.lookup("."),"tagAttributes"))}),"\n ",M.If(function(){return F.dataMustache(e.lookup("and"),e.lookup("validationErrors"),F.dataMustache(e.lookup("not"),F.dot(e.lookup("."),"hideValidationBox")))},function(){return["\n ",A.DIV({class:"validation-error-container alert alert-danger",role:"alert"},"\n ",M.Each(function(){return{_sequence:F.call(e.lookup("validationErrors")),_variable:"error"}},function(){return["\n ",A.P(A.A({href:"#",class:"text-danger","data-target":function(){return F.mustache(F.dot(e.lookup("error"),"key"))}},M.View("lookup:error.message",function(){return F.mustache(F.dot(e.lookup("error"),"message"))}))),"\n "]}),"\n "),"\n "]}),"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n ")})},"input.html":["./template.input.js",function(e,t,n){n.exports=e("./template.input.js")}],"template.input.js":function(){a.__checkName("baseInput"),a.baseInput=new a("Template.baseInput",function(){var e=this;return[A.INPUT(A.Attrs({type:function(){return F.mustache(e.lookup("choose"),F.dot(e.lookup("."),"type"),"text")},id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:function(){return F.mustache(F.dot(e.lookup("."),"class"))},name:function(){return F.mustache(F.dot(e.lookup("."),"name"))},value:function(){return F.mustache(e.lookup("reactive"),F.dot(e.lookup("."),"value"))},placeholder:function(){return F.mustache(F.dot(e.lookup("."),"placeholder"))},checked:function(){return M.If(function(){return F.call(F.dot(e.lookup("."),"checked"))},function(){return"checked"})},disabled:function(){return M.If(function(){return F.call(F.dot(e.lookup("."),"disabled"))},function(){return"disabled"})},min:function(){return F.mustache(F.dot(e.lookup("."),"min"))},max:function(){return F.mustache(F.dot(e.lookup("."),"max"))},maxlength:function(){return F.mustache(e.lookup("choose"),F.dot(e.lookup("."),"maxlength"),F.dot(e.lookup("."),"max"))}},function(){return F.attrMustache(F.dot(e.lookup("."),"tagAttributes"))})),"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})})]})},"link.html":["./template.link.js",function(e,t,n){n.exports=e("./template.link.js")}],"template.link.js":function(){a.__checkName("baseLink"),a.baseLink=new a("Template.baseLink",function(){var e=this;return A.A(A.Attrs({id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:function(){return[F.mustache(F.dot(e.lookup("."),"class"))," ",M.If(function(){return F.call(F.dot(e.lookup("."),"disabled"))},function(){return"disabled"})]},href:function(){return F.mustache(e.lookup("choose"),F.dot(e.lookup("."),"href"),"#")},title:function(){return F.mustache(F.dot(e.lookup("."),"title"))}},function(){return F.attrMustache(F.dot(e.lookup("."),"tagAttributes"))}),"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n ")})},"select.html":["./template.select.js",function(e,t,n){n.exports=e("./template.select.js")}],"template.select.js":function(){a.__checkName("baseSelect"),a.baseSelect=new a("Template.baseSelect",function(){var e=this;return A.SELECT(A.Attrs({id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:function(){return F.mustache(F.dot(e.lookup("."),"class"))},name:function(){return F.mustache(F.dot(e.lookup("."),"name"))},multiple:function(){return M.If(function(){return F.call(F.dot(e.lookup("."),"multiple"))},function(){return"multiple"})},disabled:function(){return M.If(function(){return F.call(F.dot(e.lookup("."),"disabled"))},function(){return"disabled"})}},function(){return F.attrMustache(F.dot(e.lookup("."),"tagAttributes"))}),"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n ",M.Each(function(){return{_sequence:F.dataMustache(e.lookup("reactive"),F.dot(e.lookup("."),"items")),_variable:"item"}},function(){return["\n ",A.OPTION({value:function(){return F.mustache(F.dot(e.lookup("item"),"value"))},selected:function(){return M.If(function(){return F.dataMustache(e.lookup("eq"),F.dot(e.lookup("item"),"value"),F.dataMustache(e.lookup("reactive"),F.dot(e.lookup("."),"value")))},function(){return"selected"})}},M.View("lookup:item.label",function(){return F.mustache(F.dot(e.lookup("item"),"label"))})),"\n "]}),"\n ")})}},wrappers:{"label.html":["./template.label.js",function(e,t,n){n.exports=e("./template.label.js")}],"template.label.js":function(){a.__checkName("wrapperLabel"),a.wrapperLabel=new a("Template.wrapperLabel",function(){var e=this;return M.Unless(function(){return F.call(F.dot(e.lookup("."),"labelAsDiv"))},function(){return["\n ",A.LABEL(A.Attrs({class:function(){return["wrapperLabel ",F.mustache(F.dot(e.lookup("."),"labelClass"))]}},function(){return F.attrMustache(e.lookup("clone"),F.dot(e.lookup("."),"labelTagAttributes"))}),"\n ",F.include(e.lookupTemplate("wrapperLabelContent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]}),"\n "),"\n "]},function(){return["\n ",A.DIV(A.Attrs({class:function(){return["wrapperLabel ",F.mustache(F.dot(e.lookup("."),"labelClass"))]}},function(){return F.attrMustache(e.lookup("clone"),F.dot(e.lookup("."),"labelTagAttributes"))}),"\n ",F.include(e.lookupTemplate("wrapperLabelContent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]}),"\n "),"\n "]})})},"labelContent.html":["./template.labelContent.js",function(e,t,n){n.exports=e("./template.labelContent.js")}],"template.labelContent.js":function(){a.__checkName("wrapperLabelContent"),a.wrapperLabelContent=new a("Template.wrapperLabelContent",function(){var e=this;return[M.If(function(){return F.call(F.dot(e.lookup("."),"labelAfter"))},function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]}),"\n ",A.SPAN({class:"wrapperText"},M._TemplateWith(function(){return"labelBeforeText"},function(){return F.include(e.lookupTemplate("section"))}),M.View("lookup:reactive",function(){return F.mustache(e.lookup("reactive"),F.dot(e.lookup("."),"label"))}),M._TemplateWith(function(){return"labelAfterText"},function(){return F.include(e.lookupTemplate("section"))})),"\n ",M.Unless(function(){return F.call(F.dot(e.lookup("."),"labelAfter"))},function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})]})}}},bootstrap:{"index.js":["./dialog/confirm.html","./dialog/form.html","./dialog/form.js","./dialog/login.html","./dialog/login.js","./dropdown/backdrop.html","./dropdown/form.html","./dropdown/form.js","./form/button.html","./form/form.html","./form/group.html","./form/link.html","./input/checkbox.html","./input/hidden.html","./input/groupRadio.html","./input/password.html","./input/radio.html","./input/range.html","./input/select.html","./input/text.html",function(e,t,n){n.import("./dialog/confirm.html"),n.import("./dialog/form.html"),n.import("./dialog/form.js"),n.import("./dialog/login.html"),n.import("./dialog/login.js"),n.import("./dropdown/backdrop.html"),n.import("./dropdown/form.html"),n.import("./dropdown/form.js"),n.import("./form/button.html"),n.import("./form/form.html"),n.import("./form/group.html"),n.import("./form/link.html"),n.import("./input/checkbox.html"),n.import("./input/hidden.html"),n.import("./input/groupRadio.html"),n.import("./input/password.html"),n.import("./input/radio.html"),n.import("./input/range.html"),n.import("./input/select.html"),n.import("./input/text.html")}],dialog:{"confirm.html":["./template.confirm.js",function(e,t,n){
n.exports=e("./template.confirm.js")}],"template.confirm.js":function(){a.__checkName("dialogConfirm"),a.dialogConfirm=new a("Template.dialogConfirm",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({dialogClass:"modal-sm",title:F.dataMustache(e.lookup("choose"),F.dot(e.lookup("."),"title"),"Confirmation")}))},function(){return F.include(e.lookupTemplate("dialogForm"),function(){return["\n ",A.P(M.View("lookup:choose",function(){return F.mustache(e.lookup("choose"),F.dot(e.lookup("."),"message"),"Are you sure you want to perform this action?")})),"\n "]})})})},"form.html":["./template.form.js",function(e,t,n){n.exports=e("./template.form.js")}],"template.form.js":function(){a.__checkName("dialogForm"),a.dialogForm=new a("Template.dialogForm",function(){var e=this;return A.DIV({id:function(){return F.mustache(F.dot(e.lookup("."),"id"))},class:"modal fade",tabindex:"-1",role:"dialog"},"\n ",A.DIV({class:function(){return["modal-dialog ",F.mustache(F.dot(e.lookup("."),"dialogClass"))]},role:"document"},"\n ",M._TemplateWith(function(){return{class:F.call("modal-content"),hideValidationBox:F.call(!0),api:F.call(F.dataMustache(e.lookup("extend"),F.dot(e.lookup("instance"),"api"),F.dot(e.lookup("instance"),"data","api"))),schema:F.call(F.dot(e.lookup("."),"schema"))}},function(){return F.include(e.lookupTemplate("form"),function(){return["\n ",A.DIV({class:"modal-header"},"\n ",M._TemplateWith(function(){return{class:F.call("close"),action:F.call("cancel"),tagAttributes:F.call(F.dataMustache(e.lookup("extend"),F.dot(e.lookup("."),"tagAttributes"),F.kw({"data-dismiss":"modal","aria-label":"Close"})))}},function(){return F.include(e.lookupTemplate("button"),function(){return A.SPAN({"aria-hidden":"true"},A.CharRef({html:"&times;",str:"×"}))})}),"\n ",A.H4({class:"modal-title"},M.View("lookup:..title",function(){return F.mustache(F.dot(e.lookup("."),"title"))})),"\n "),"\n ",A.DIV({class:"modal-body"},"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "),"\n ",A.DIV({class:"modal-footer"},"\n ",M._TemplateWith(function(){return{action:F.call("cancel"),class:F.call(F.dataMustache(e.lookup("concat"),"btn ",F.dataMustache(e.lookup("choose"),F.dot(e.lookup("."),"cancelClass"),"btn-default"))),tagAttributes:F.call(F.dataMustache(e.lookup("extend"),F.dot(e.lookup("."),"tagAttributes"),F.kw({"data-dismiss":"modal"})))}},function(){return F.include(e.lookupTemplate("button"),function(){return M.View("lookup:choose",function(){return F.mustache(e.lookup("choose"),F.dot(e.lookup("."),"cancelLabel"),"Cancel")})})}),"\n ",M._TemplateWith(function(){return{action:F.call("confirm"),class:F.call(F.dataMustache(e.lookup("concat"),"btn ",F.dataMustache(e.lookup("choose"),F.dot(e.lookup("."),"confirmClass"),"btn-primary")))}},function(){return F.include(e.lookupTemplate("button"),function(){return M.View("lookup:choose",function(){return F.mustache(e.lookup("choose"),F.dot(e.lookup("."),"confirmLabel"),"Confirm")})})}),"\n "),"\n "]})}),"\n "),"\n ")})},"form.js":["meteor/templating","meteor/underscore",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/underscore",{_:function(e){r=e}}),o.dialogForm.onCreated(function(){var e=o.instance();e.api={confirm:function(){function t(){var t=e.$("form").data("component");t.validate()&&e.$(".modal").on("hidden.bs.modal",function(n){var o=t.value();r.isFunction(e.data.confirmCallback)?e.data.confirmCallback(o,e.data.promiseResolve):e.data.promiseResolve(o)}).modal("hide")}return t}(),cancel:function(){function t(){e.$(".modal").on("hidden.bs.modal",function(t){r.isFunction(e.data.cancelCallback)?e.data.cancelCallback(e.data.promiseReject):e.data.promiseReject()}).modal("hide")}return t}()}}),o.dialogForm.onRendered(function(){var e=o.instance(),t=r.extend({backdrop:"static",keyboard:!1},e.data.modalOptions),n=e.$(".modal");n.modal(t);var i=e.data.position;i&&OHIF.ui.repositionDialog(n,i.x,i.y)})}],"login.html":["./template.login.js",function(e,t,n){n.exports=e("./template.login.js")}],"template.login.js":function(){a.__checkName("dialogLogin"),a.dialogLogin=new a("Template.dialogLogin",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({dialogClass:"modal-sm",schema:F.dataMustache(e.lookup("choose"),F.dot(e.lookup("."),"schema"),F.dot(e.lookup("instance"),"schema"))}))},function(){return F.include(e.lookupTemplate("dialogForm"),function(){return["\n ",M._TemplateWith(function(){return{labelClass:F.call("form-group"),key:F.call("username")}},function(){return F.include(e.lookupTemplate("inputText"))}),"\n ",M._TemplateWith(function(){return{labelClass:F.call("form-group"),key:F.call("password")}},function(){return F.include(e.lookupTemplate("inputPassword"))}),"\n "]})})})},"login.js":["meteor/templating","meteor/aldeed:simple-schema",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/aldeed:simple-schema",{SimpleSchema:function(e){r=e}}),o.dialogLogin.onCreated(function(){var e=o.instance();e.schema=new r({username:{type:String,label:"Username"},password:{type:String,label:"Password"}})})}]},dropdown:{"backdrop.html":["./template.backdrop.js",function(e,t,n){n.exports=e("./template.backdrop.js")}],"template.backdrop.js":function(){a.__checkName("dropdownBackdrop"),a.dropdownBackdrop=new a("Template.dropdownBackdrop",function(){var e=this;return A.Raw('<div class="dropdown-backdrop"></div>')})},"form.html":["./template.form.js",function(e,t,n){n.exports=e("./template.form.js")}],"template.form.js":function(){a.__checkName("dropdownForm"),a.dropdownForm=new a("Template.dropdownForm",function(){var e=this;return M._TemplateWith(function(){return{class:F.call("dropdown"),api:F.call(F.dot(e.lookup("."),"api")),hideValidationBox:F.call(!0)}},function(){return F.include(e.lookupTemplate("form"),function(){return["\n ",F.include(e.lookupTemplate("dropdownBackdrop")),"\n ",A.UL({class:"dropdown-menu"},"\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "),"\n "]})})})},"form.js":["meteor/templating","meteor/blaze","meteor/jquery","meteor/underscore",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/blaze",{Blaze:function(e){r=e}});var i;n.import("meteor/jquery",{$:function(e){i=e}});var a;n.import("meteor/underscore",{_:function(e){a=e}}),o.dropdownForm.onRendered(function(){var e=o.instance(),t=e.$(".dropdown");t.addClass("open"),t.find("ul.dropdown-menu li a").addClass("noselect"),e.destroyView=function(){a.isFunction(e.data.destroyView)?e.data.destroyView():r.remove(e.view)}}),o.dropdownForm.events({"click .dropdown":function(){function e(e,t){var n=i(e.target);n.hasClass("disabled")?(e.preventDefault(),e.stopPropagation()):t.destroyView()}return e}()})}]},form:{"button.html":["./template.button.js",function(e,t,n){n.exports=e("./template.button.js")}],"template.button.js":function(){a.__checkName("button"),a.button=new a("Template.button",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseButton",mixins:F.dataMustache(e.lookup("concat"),"button action ",F.dot(e.lookup("."),"mixins"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"form.html":["./template.form.js",function(e,t,n){n.exports=e("./template.form.js")}],"template.form.js":function(){a.__checkName("form"),a.form=new a("Template.form",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseForm",mixins:F.dataMustache(e.lookup("concat"),"form ",F.dot(e.lookup("."),"mixins"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"group.html":["./template.group.js",function(e,t,n){n.exports=e("./template.group.js")}],"template.group.js":function(){a.__checkName("group"),a.group=new a("Template.group",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({class:F.dataMustache(e.lookup("concat"),"component-group ",F.dot(e.lookup("."),"class")),base:"baseDiv",mixins:F.dataMustache(e.lookup("concat"),"group ",F.dot(e.lookup("."),"mixins"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"link.html":["./template.link.js",function(e,t,n){n.exports=e("./template.link.js")}],"template.link.js":function(){a.__checkName("link"),a.link=new a("Template.link",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseLink",mixins:F.dataMustache(e.lookup("concat"),"link action ",F.dot(e.lookup("."),"mixins"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})}},input:{"checkbox.html":["./template.checkbox.js",function(e,t,n){n.exports=e("./template.checkbox.js")}],"template.checkbox.js":function(){a.__checkName("inputCheckbox"),a.inputCheckbox=new a("Template.inputCheckbox",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseInput",type:"checkbox",mixins:F.dataMustache(e.lookup("concat"),"checkbox ",F.dot(e.lookup("."),"mixins")),labelAfter:F.dataMustache(e.lookup("valueIf"),F.dataMustache(e.lookup("isUndefined"),F.dot(e.lookup("."),"labelAfter")),!0,F.dot(e.lookup("."),"labelAfter")),labelClass:F.dataMustache(e.lookup("concat"),"checkboxLabel ",F.dot(e.lookup("."),"labelClass")),wrappers:F.dataMustache(e.lookup("concat"),"",F.dataMustache(e.lookup("valueIf"),e.lookup("reactive"),F.dot(e.lookup("."),"label"),"wrapperLabel ",""),F.dot(e.lookup("."),"wrappers"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"groupRadio.html":["./template.groupRadio.js",function(e,t,n){n.exports=e("./template.groupRadio.js")}],"template.groupRadio.js":function(){a.__checkName("groupRadio"),a.groupRadio=new a("Template.groupRadio",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({class:F.dataMustache(e.lookup("concat"),"group-radio ",F.dot(e.lookup("."),"class")),mixins:F.dataMustache(e.lookup("concat"),"groupRadio ",F.dot(e.lookup("."),"mixins")),wrappers:F.dataMustache(e.lookup("concat"),"",F.dataMustache(e.lookup("valueIf"),e.lookup("reactive"),F.dot(e.lookup("."),"label"),"wrapperLabel ",""),F.dot(e.lookup("."),"wrappers")),labelAsDiv:!0}))},function(){return F.include(e.lookupTemplate("group"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n ",M.Each(function(){return{_sequence:F.dataMustache(e.lookup("reactive"),F.dot(e.lookup("."),"items")),_variable:"item"}},function(){return["\n ",M._TemplateWith(function(){return{class:F.call(F.dot(e.lookup("."),"radioClass")),name:F.call(F.dot(e.lookup("."),"key")),value:F.call(F.dot(e.lookup("item"),"value")),label:F.call(F.dot(e.lookup("item"),"label")),checked:F.call(F.dataMustache(e.lookup("eq"),F.dot(e.lookup("item"),"value"),F.dataMustache(e.lookup("reactive"),F.dot(e.lookup("."),"value"))))}},function(){return F.include(e.lookupTemplate("inputRadio"))}),"\n "]}),"\n "]})})})},"hidden.html":["./template.hidden.js",function(e,t,n){n.exports=e("./template.hidden.js")}],"template.hidden.js":function(){a.__checkName("inputHidden"),a.inputHidden=new a("Template.inputHidden",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseInput",type:"hidden",mixins:F.dataMustache(e.lookup("concat"),"input ",F.dot(e.lookup("."),"mixins"))}))},function(){return F.include(e.lookupTemplate("baseComponent"))})})},"password.html":["./template.password.js",function(e,t,n){n.exports=e("./template.password.js")}],"template.password.js":function(){a.__checkName("inputPassword"),a.inputPassword=new a("Template.inputPassword",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({type:"password"}))},function(){return F.include(e.lookupTemplate("inputText"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"radio.html":["./template.radio.js",function(e,t,n){n.exports=e("./template.radio.js")}],"template.radio.js":function(){a.__checkName("inputRadio"),a.inputRadio=new a("Template.inputRadio",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseInput",type:"radio",mixins:F.dataMustache(e.lookup("concat"),"input ",F.dot(e.lookup("."),"mixins")),labelAfter:F.dataMustache(e.lookup("valueIf"),F.dataMustache(e.lookup("isUndefined"),F.dot(e.lookup("."),"labelAfter")),!0,F.dot(e.lookup("."),"labelAfter")),labelClass:F.dataMustache(e.lookup("concat"),"radioLabel ",F.dot(e.lookup("."),"labelClass")),wrappers:F.dataMustache(e.lookup("concat"),"",F.dataMustache(e.lookup("valueIf"),e.lookup("reactive"),F.dot(e.lookup("."),"label"),"wrapperLabel ",""),F.dot(e.lookup("."),"wrappers"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"range.html":["./template.range.js",function(e,t,n){n.exports=e("./template.range.js")}],"template.range.js":function(){a.__checkName("inputRange"),a.inputRange=new a("Template.inputRange",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseInput",type:"range",class:F.dataMustache(e.lookup("concat"),"form-control ",F.dot(e.lookup("."),"class")),mixins:F.dataMustache(e.lookup("concat"),"input ",F.dot(e.lookup("."),"mixins")),wrappers:F.dataMustache(e.lookup("concat"),"",F.dataMustache(e.lookup("valueIf"),e.lookup("reactive"),F.dot(e.lookup("."),"label"),"wrapperLabel ",""),F.dot(e.lookup("."),"wrappers"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"select.html":["./template.select.js",function(e,t,n){n.exports=e("./template.select.js")}],"template.select.js":function(){a.__checkName("inputSelect"),a.inputSelect=new a("Template.inputSelect",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseSelect",mixins:F.dataMustache(e.lookup("concat"),"select2 ",F.dot(e.lookup("."),"mixins")),wrappers:F.dataMustache(e.lookup("concat"),"",F.dataMustache(e.lookup("valueIf"),e.lookup("reactive"),F.dot(e.lookup("."),"label"),"wrapperLabel ",""),F.dot(e.lookup("."),"wrappers")),options:F.dataMustache(e.lookup("clone"),F.dot(e.lookup("."),"options"),F.kw({multiple:F.dataMustache(e.lookup("valueIf"),F.dot(e.lookup("."),"multiple"),!0,!1),minimumResultsForSearch:F.dataMustache(e.lookup("valueIf"),F.dot(e.lookup("."),"hideSearch"),-1,F.dot(e.lookup("."),"minimumResultsForSearch"))}))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})},"text.html":["./template.text.js",function(e,t,n){n.exports=e("./template.text.js")}],"template.text.js":function(){a.__checkName("inputText"),a.inputText=new a("Template.inputText",function(){var e=this;return M._TemplateWith(function(){return F.dataMustache(e.lookup("extend"),e.lookup("."),F.kw({base:"baseInput",class:F.dataMustache(e.lookup("concat"),"form-control ",F.dot(e.lookup("."),"class")),mixins:F.dataMustache(e.lookup("concat"),"input ",F.dot(e.lookup("."),"mixins")),wrappers:F.dataMustache(e.lookup("concat"),"",F.dataMustache(e.lookup("valueIf"),e.lookup("reactive"),F.dot(e.lookup("."),"label"),"wrapperLabel ",""),F.dot(e.lookup("."),"wrappers"))}))},function(){return F.include(e.lookupTemplate("baseComponent"),function(){return["\n ",M._InOuterTemplateScope(e,function(){return F.include(function(){return F.call(e.templateContentBlock)})}),"\n "]})})})}}},playground:{"playground.html":["./template.playground.js",function(e,t,n){n.exports=e("./template.playground.js")}],"template.playground.js":function(){a.__checkName("componentPlayground"),a.componentPlayground=new a("Template.componentPlayground",function(){var e=this;return A.DIV({class:"component-playground"},"\n ",M._TemplateWith(function(){return{threeColumns:F.call(!0),hideCommon:F.call(!0)}},function(){return F.include(e.lookupTemplate("measureFlow"))}),"\n ")})},"playground.js":function(){a.componentPlayground.onRendered(function(){var e=a.instance();e.$(".measure-flow").draggable()})},"playground.styl":["./playground.styl.css",function(e,t,n){n.exports=e("./playground.styl.css")}],"playground.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles(".component-playground {\n height: 100vh;\n}\n")}]}},helpers:{"blaze.js":["meteor/templating","meteor/session","meteor/reactive-var",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/session",{Session:function(e){r=e}});var i;n.import("meteor/reactive-var",{ReactiveVar:function(e){i=e}}),o.registerHelper("instance",function(){return o.instance()}),o.registerHelper("session",function(e){return r.get(e)}),o.registerHelper("reactive",function(e){return e instanceof i?e.get():e})}],"data.js":["babel-runtime/helpers/toConsumableArray","babel-runtime/helpers/typeof","meteor/underscore","meteor/templating",function(e,t,n){var o;n.import("babel-runtime/helpers/toConsumableArray",{default:function(e){o=e}});var r;n.import("babel-runtime/helpers/typeof",{default:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}});var a;n.import("meteor/templating",{Template:function(e){a=e}});var u=function e(){for(var t=arguments.length,n=Array(t),o=0;o<t;o++)n[o]=arguments[o];var a=n[0]||{},u=i.last(n).hash,l=i.initial(n);return i.each(l,function(e){"object"===("undefined"==typeof e?"undefined":r(e))&&i.extend(a,e)}),i.extend(a,u),a};a.registerHelper("extend",function(){return u.apply(void 0,arguments)}),a.registerHelper("clone",function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=t.slice();return r.unshift({}),u.apply(void 0,o(r))}),a.registerHelper("choose",function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var o=void 0;return i.each(i.initial(t,1),function(e){o||(o=e)}),o})}],"debug.js":["meteor/underscore","meteor/meteor","meteor/templating",function(e,t,n){var o;n.import("meteor/underscore",{_:function(e){o=e}});var r;n.import("meteor/meteor",{Meteor:function(e){r=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}}),r.isDevelopment&&i.registerHelper("debug",function(){var e;(e=console).debug.apply(e,arguments)})}],"index.js":["./blaze.js","./data.js","./debug.js","./logical.js","./number.js","./string.js","./typing.js","./ui.js",function(e,t,n){n.import("./blaze.js"),n.import("./data.js"),n.import("./debug.js"),n.import("./logical.js"),n.import("./number.js"),n.import("./string.js"),n.import("./typing.js"),n.import("./ui.js")}],"logical.js":["meteor/underscore","meteor/templating",function(e,t,n){var o;n.import("meteor/underscore",{_:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),r.registerHelper("bool",function(e){return!!e}),r.registerHelper("eq",function(e,t){return e===t}),r.registerHelper("ne",function(e,t){return e!==t}),r.registerHelper("gt",function(e,t){return e>t}),r.registerHelper("lt",function(e,t){return e<t}),r.registerHelper("gte",function(e,t){return e>=t}),r.registerHelper("lte",function(e,t){return e<=t}),r.registerHelper("not",function(e){return!e}),r.registerHelper("and",function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=!0;return o.each(o.initial(t,1),function(e){return!e&&(r=!1)}),r}),r.registerHelper("or",function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=!1;return o.each(o.initial(t,1),function(e){return e&&(r=!0)}),r}),r.registerHelper("valueIf",function(e,t,n){return e?t:n})}],"number.js":["meteor/underscore","meteor/templating",function(e,t,n){var o;n.import("meteor/underscore",{_:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),r.registerHelper("sum",function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=0;return o.each(o.initial(t,1),function(e){return r+=0|e}),r})}],"string.js":["meteor/ohif:core","meteor/underscore","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/underscore",{_:function(e){r=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}}),i.registerHelper("concat",function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var o=r.initial(t,1),i="";return r.each(o,function(e){i+=e||""}),i}),i.registerHelper("encodeId",function(e){return o.string.encodeId(e)})}],"typing.js":["meteor/underscore","meteor/templating",function(e,t,n){var o;n.import("meteor/underscore",{_:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),r.registerHelper("isUndefined",function(e){return o.isUndefined(e)}),r.registerHelper("isObject",function(e){return o.isObject(e)}),r.registerHelper("isArray",function(e){return o.isArray(e)})}],"ui.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/templating",{Template:function(e){r=e}}),r.registerHelper("uiSettings",function(){return o.uiSettings})}]},lib:{"blaze.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),o.blaze={},o.blaze.cloneTemplate=function(e,t){if(e){var n=t||e.viewName,o=new a(n,e.renderFunction);return o.inheritsEventsFrom(e),o.inheritsHelpersFrom(e),o.inheritsHooksFrom(e),o}},o.blaze.getParentView=function(e,t){for(var n=e;n&&n.name!==t;)n=n.originalParentView||n.parentView;return n},o.blaze.getParentComponent=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"_component",n=e;n;)if(n=n.originalParentView||n.parentView,n&&n[t])return n[t]}}],"cornerstone.js":["babel-runtime/helpers/typeof","meteor/ohif:core","meteor/underscore",function(e,t,n){var r;n.import("babel-runtime/helpers/typeof",{default:function(e){r=e}});var i;n.import("meteor/ohif:core",{OHIF:function(e){i=e}});var a;n.import("meteor/underscore",{_:function(e){a=e}}),i.cornerstone={},i.cornerstone.pixelToPage=function(e,t){var n=cornerstone.getEnabledElement(e),i={x:0,y:0};if(!n||"object"!==("undefined"==typeof t?"undefined":r(t)))return i;var a=n.canvas,u=o(a).offset();i.x+=u.left,i.y+=u.top;var l=cornerstone.pixelToCanvas(e,t);return i.x+=l.x,i.y+=l.y,i},i.cornerstone.repositionTextBoxWhileDragging=function(e,t){var n=e.element,r=cornerstone.getEnabledElement(n),i=o(n),u=r.image,l=function e(){var n=t.handles,o=n.textBox,r=function e(t){return a.pick(n[t],["x","y"])},i=r("start"),l=r("end"),c=function e(t){var n=i[t],o=l[t],r=Math.min(n,o),a=Math.max(n,o);return r+(a-r)/2},s={};s.x=c("x"),s.y=c("y");var p={};p.x=u.width/2,p.y=u.height/2;var m={};m.x=s.x<p.x?-1:1,m.y=s.y<p.y?-1:1;var d={};d.x=m.x<0?0:u.width,d.y=m.y<0?0:u.height;var f=m.x<0?s.x:u.width-s.x,h=m.y<0?s.y:u.height-s.y,v=h<f?"y":"x",g=h<f?"x":"y";o[v]=d[v],o[g]=s[g]},c=function e(){i.off("CornerstoneToolsMeasurementModified",l)};i.one("CornerstoneToolsMouseDrag",function(){i.on("CornerstoneToolsMeasurementModified",l)}),i.one("mouseup",c)}}],"index.js":["./blaze.js","./cornerstone.js","./object.js","./string.js","./ui.js","./user.js","./utils.js","./viewer.js",function(e,t,n){n.import("./blaze.js"),n.import("./cornerstone.js"),n.import("./object.js"),n.import("./string.js"),n.import("./ui.js"),n.import("./user.js"),n.import("./utils.js"),n.import("./viewer.js")}],"object.js":["babel-runtime/helpers/typeof","meteor/ohif:core",function(e,t,n){var o;n.import("babel-runtime/helpers/typeof",{default:function(e){o=e}});var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}}),r.object={},r.object.getNestedObject=function(e){var t={};for(var n in k.sanitizeForInObject(e))for(var o=e[n],r=n.split("."),i=t;r.length;){var a=r.shift();r.length?(i[a]||(i[a]={}),i=i[a]):i[a]=o}return t},r.object.getShallowObject=function(e){var t={},n=function e(t,n,r){for(var i in k.sanitizeForInObject(n)){var a=t?t+"."+i:i,u=n[i];"object"===("undefined"==typeof u?"undefined":o(u))?(u instanceof Array&&(a+="[]"),e(a,u,r)):r[a]=u}};return n("",e,t),t}}],"string.js":["meteor/ohif:core","meteor/underscore","meteor/jquery",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/underscore",{_:function(e){r=e}});var i;n.import("meteor/jquery",{$:function(e){i=e}}),o.string={},o.string.search=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],u=new RegExp(i.trim(t),"i");return r.each(e,function(e){if(e){var i=r.isString(n)?e[n]:e;r.isString(i)&&u.test(i)&&a.push(e),r.isObject(e)&&o.string.search(e,t,n,a)}}),a},o.string.encodeId=function(e){if(""===e||"string"!=typeof e)return"_";var t=function e(t){return"_"+t[0].charCodeAt(0).toString(16)+"_"};return e.replace(/[^a-zA-Z0-9-]/g,t)}}],"ui.js":["meteor/ohif:core","meteor/meteor",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/meteor",{Meteor:function(e){r=e}});var i=r.settings&&r.settings.public&&r.settings.public.ui;o.uiSettings=i||{}}],"user.js":["meteor/ohif:core",function(t,n,o){var r;o.import("meteor/ohif:core",{OHIF:function(e){r=e}}),r.user={},r.user.validate=function(){if(!e.userId())throw new e.Error("not-authorized")},r.user.getData=function(t){r.user.validate();var n=e.user().profile,o=n&&n.persistent;if(o)return o[t]},r.user.setData=function(t,n){r.user.validate(),e.call("userDataSet",t,n)}}],"utils.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),o.utils={},o.utils.sortBy=function(){var e=[].slice.call(arguments),t=e.length;return function(n,o){var r,i,a,u,l,c,s,p;for(p=0;p<t&&(s=0,a=e[p],u="string"==typeof a?a:a.name,r=n[u],i=o[u],"undefined"!=typeof a.primer&&(r=a.primer(r),i=a.primer(i)),c=a.reverse?-1:1,r<i&&(s=c*-1),r>i&&(s=1*c),0===s);p++);return s}}}],"viewer.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),o.viewer={},o.viewer.getDisplaySetSequenceMap=function(){var e=window.layoutManager.viewportData,t=new v;return e.forEach(function(e,n){var o=i.findWhere(window.layoutManager.studies,{studyInstanceUid:e.studyInstanceUid})||window.layoutManager.studies[0],r=o.displaySets,a=i.findWhere(r,{displaySetInstanceUid:e.displaySetInstanceUid}),u=i.indexOf(r,a);u=u<0?9999:u;var l=t.get(o);l||(l=[],t.set(o,l)),l.push({viewportIndex:n,displaySetIndex:u})}),t},o.viewer.isDisplaySetsSequenced=function(e){var t=!0,n=e||o.viewer.getDisplaySetSequenceMap();return n.forEach(function(e,n){var o=null,r=null;e.forEach(function(e,n){var i=e.viewportIndex,a=e.displaySetIndex;9999===a||null===r||null===o||null===a||i-1===r&&a-1===o||(t=!1),r=i,o=a})}),t},o.viewer.canMoveDisplaySets=function(e){var t=o.uiSettings.displaySetNavigationMultipleViewports,n=o.uiSettings.displaySetNavigationLoopOverSeries;if(!window.layoutManager)return!1;var r=o.viewer.getDisplaySetSequenceMap(),i=o.viewer.isDisplaySetsSequenced(r),a=t?null:I.get("activeViewport");if(e&&!n){var u=!0;if(r.forEach(function(e,n){var o=e[null!==a?a:e.length-1];if(o){var r=o.displaySetIndex,i=e.length,l=n.displaySets.length,c=t?l%i||i:1,s=l-c;9999!==r&&r!==s&&(u=!1)}}),(!t||i)&&u)return!1}if(!e&&!n){var l=!0;if(a>=0&&r.forEach(function(e,t){var n=e[null!==a?a:0];if(n){var o=n.displaySetIndex,r=e.length;9999!==o&&o-r!==-r&&(l=!1)}}),(!t||i)&&l)return!1}return!0},o.viewer.moveSingleViewportDisplaySets=function(e,t){var n=o.uiSettings.displaySetNavigationLoopOverSeries,r=window.layoutManager.viewportData[e],a=i.findWhere(window.layoutManager.studies,{studyInstanceUid:r.studyInstanceUid})||window.layoutManager.studies[0],u=a.displaySets,l=i.findWhere(u,{displaySetInstanceUid:r.displaySetInstanceUid}),c=i.indexOf(u,l);if(t){if(c++,c>=u.length){if(!n)return;c=0}}else if(c--,c<0){if(!n)return;c=u.length-1}var s=u[c];window.layoutManager.rerenderViewportWithNewDisplaySet(e,s)},o.viewer.moveMultipleViewportDisplaySets=function(e){var t=o.uiSettings.displaySetNavigationLoopOverSeries,n=new o.viewer.getDisplaySetSequenceMap,r=o.viewer.isDisplaySetsSequenced(n),i=[];n.forEach(function(n,o){n.sort(function(e,t){return e.displaySetIndex>t.displaySetIndex});var a=o.displaySets,u=n[0].displaySetIndex,l=n.length,c=u%l,s=c?u-c:u,p=e?1:-1;s+=l*p;var m=a.length;if(s>=m){var d=m%l||l,f=m-d;if(u+l!==f+l)s=f;else{if(!t)return;s=0}}else if(s<0)if(u>0)s=0;else{if(!t)return;s=m-1-(m-1)%l}else r||(s=0);n.forEach(function(e,t){var n=e.viewportIndex,o=s+t,r=a[o]||{};i.push(r)})});var a=o.utils.sortBy({name:"studyInstanceUid"},{name:"instanceNumber"},{name:"seriesNumber"});i.sort(function(e,t){return a(e,t)}),i.forEach(function(e,t){window.layoutManager.rerenderViewportWithNewDisplaySet(t,e)})},o.viewer.moveDisplaySets=function(e){if(o.uiSettings.displaySetNavigationMultipleViewports)o.viewer.moveMultipleViewportDisplaySets(e);else{var t=I.get("activeViewport");o.viewer.moveSingleViewportDisplaySets(t,e)}}}]},ui:{"index.js":["./bounded/bounded.js","./dialog/form.js","./dialog/spatial.js","./draggable/draggable.js","./dropdown/form.js","./resizable/resizable.js","./unsavedChanges/unsavedChanges.js",function(e,t,n){n.import("./bounded/bounded.js"),n.import("./dialog/form.js"),n.import("./dialog/spatial.js"),n.import("./draggable/draggable.js"),n.import("./dropdown/form.js"),n.import("./resizable/resizable.js"),n.import("./unsavedChanges/unsavedChanges.js")}],bounded:{"bounded.js":["babel-runtime/helpers/classCallCheck","meteor/ohif:core",function(e,t,n){var r;n.import("babel-runtime/helpers/classCallCheck",{default:function(e){r=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}}),o.fn.bounded=function(e){return i.each(this,function(t){var n=o(t).data("boundedInstance");"destroy"===e&&n?(o(t).removeData("boundedInstance"),n.destroy()):n?n.options(e):o(t).data("boundedInstance",new u(t,e))}),this};var u=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};r(this,e),this.element=t,
this.$element=o(t),this.options(n),this.setBoundedFlag(!1)}return e.prototype.options=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.boundingElement,n=e.allowResizing;this.boundingElement=t,this.$boundingElement=o(this.boundingElement),this.allowResizing=n,"fixed"===this.$element.css("position")&&(this.boundingElement=window),this.destroy(),this.init()}return e}(),e.prototype.init=function(){function e(){var e=this;this.defineEventHandlers(),this.attachEventHandlers(),this.$element.addClass("bounded"),setTimeout(function(){return e.$element.trigger("spatialChanged")})}return e}(),e.prototype.destroy=function(){function e(){this.detachEventHandlers(),this.$element.removeClass("bounded")}return e}(),e.spatialInfo=function(){function e(e){var t={};if(!e||e===window){var n=o(window),r=n.outerWidth(),i=n.outerHeight();return{width:r,height:i,x0:0,y0:0,x1:r,y1:i}}var a=o(e),u=e.style;u.width&&u.width.indexOf("px")>-1?t.width=parseInt(u.width):t.width=a.outerWidth(),u.height&&u.height.indexOf("px")>-1?t.height=parseInt(u.height):t.height=a.outerHeight();var l="fixed"===a.css("position")?"position":"offset",c=a[l]();return t.x0=c.left,t.y0=c.top,t.x1=t.x0+t.width,t.y1=t.y0+t.height,t}return e}(),e.prototype.defineEventHandlers=function(){function t(){var t=this;this.spatialChangedHandler=function(n){var o=e.spatialInfo(t.element),r=e.spatialInfo(t.boundingElement);t.allowResizing&&o.width>r.width?(t.$element.width(r.width),t.$element.css("left",r.x0),t.setBoundedFlag(!0)):o.x0<r.x0?(t.$element.css("left",r.x0),t.setBoundedFlag(!0)):o.x1>r.x1&&(t.$element.css("left",r.x1-o.width),t.setBoundedFlag(!0)),t.allowResizing&&o.height>r.height?(t.$element.height(r.height),t.$element.css("top",r.y0),t.setBoundedFlag(!0)):o.y0<r.y0?(t.$element.css("top",r.y0),t.setBoundedFlag(!0)):o.y1>r.y1&&(t.$element.css("top",r.y1-o.height),t.setBoundedFlag(!0))}}return t}(),e.prototype.attachEventHandlers=function(){function e(){this.$element.on("spatialChanged",this.spatialChangedHandler),this.$boundingElement.on("resize",this.spatialChangedHandler)}return e}(),e.prototype.detachEventHandlers=function(){function e(){this.$element.off("spatialChanged",this.spatialChangedHandler),this.$boundingElement.off("resize",this.spatialChangedHandler)}return e}(),e.prototype.setBoundedFlag=function(){function e(e){this.$element.data("wasBounded",e)}return e}(),e}();a.ui.Bounded=u}]},dialog:{"form.js":["meteor/templating","meteor/blaze","meteor/underscore","meteor/ohif:core",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/blaze",{Blaze:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}}),a.ui.showDialog=function(e,t){var n=o[e];if(!n)throw{name:"TEMPLATE_NOT_FOUND",message:"Template "+e+" not found."};var a=void 0,u=void 0,l=new b(function(e,t){a=e,u=t}),c=i.extend({},t,{promise:l,promiseResolve:a,promiseReject:u}),s=r.renderWithData(n,c,document.body),p=function e(){return r.remove(s)};return l.then(p,p),l}}],"spatial.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),o.ui.repositionDialog=function(e,t,n){var o=e.find(".modal-dialog");o.css({margin:0,position:"fixed"}).bounded();var r=e.is(":visible");e.show();var i=o.outerHeight(),a=o.outerWidth(),u=parseInt(t-a/2),l=parseInt(n-i/2);o.css({left:u,top:l}).trigger("spatialChanged"),e.toggle(r)}}]},draggable:{"draggable.js":["meteor/ohif:core",function(e,t,n){var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}}),o.fn.draggable=function(){return r.ui.makeDraggable(this),this},r.ui.makeDraggable=function(e){function t(e){var t={x:e.clientX,y:e.clientY};return void 0===t.x&&(t.x=e.originalEvent.touches[0].pageX),void 0===t.y&&(t.y=e.originalEvent.touches[0].pageY),t}function n(n){if(!n.target.type||"range"!==n.target.type){var s=parseFloat(e.offset().top),p=parseFloat(e.offset().left),m=t(n);u=m.x-p,l=m.y-s,a.css("cursor","move"),e.css("cursor","move"),e.css({cursor:"move",left:p+"px",top:s+"px",bottom:"auto",right:"auto"}),o(document).on("mousemove",i),o(document).on("mouseup",r),o(document).on("touchmove",i),o(document).on("touchend",r),c&&(e.data("wasDragged",!0),c=!1)}}function r(){a.css("cursor","default"),e.css("cursor",E.defaultElementCursor),o(document).off("mousemove",i),o(document).off("touchmove",i)}function i(n){n.preventDefault();var o=parseFloat(e.outerWidth()),r=parseFloat(e.outerHeight()),i=parseFloat(a.width()),c=parseFloat(a.height()),s=t(n),p=s.x-u,m=s.y-l;p=Math.max(p,0),m=Math.max(m,0),p+o>i&&(p=i-o),m+r>c&&(m=c-r),e.css({left:p+"px",top:m+"px",bottom:"auto",right:"auto"})}var a=o(window),u,l,c=!0;E=E||{},E.defaultElementCursor=E.defaultElementCursor||"default",e.data("wasDragged",!1),e.on("mousedown",n),e.on("touchstart",n)}}]},dropdown:{"form.js":["meteor/templating","meteor/blaze","meteor/underscore","meteor/ohif:core",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var r;n.import("meteor/blaze",{Blaze:function(e){r=e}});var i;n.import("meteor/underscore",{_:function(e){i=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}}),a.ui.showFormDropdown=function(e,t){var n=o[e];if(!n)throw{name:"TEMPLATE_NOT_FOUND",message:"Template "+e+" not found."};var a=void 0,u=function e(){return r.remove(a)},l=i.extend({},t,{destroyView:u});a=r.renderWithData(n,l,document.body);var c=a.firstNode();return c}}]},resizable:{"resizable.js":["babel-runtime/helpers/classCallCheck","meteor/ohif:core",function(e,t,n){var r;n.import("babel-runtime/helpers/classCallCheck",{default:function(e){r=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}}),o.fn.resizable=function(e){return i.each(this,function(t){var n=o(t).data("resizableInstance");"destroy"===e&&n?(o(t).removeData("resizableInstance"),n.destroy()):n?n.options(e):o(t).data("resizableInstance",new u(t,e))}),this};var u=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};r(this,e),this.element=t,this.$element=o(t),this.options(n)}return e.prototype.options=function(){function e(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.boundSize,n=e.minWidth,o=e.minHeight;this.minWidth=n||this.$element.width()||16,this.minHeight=o||this.$element.height()||16,this.boundSize=t||8,this.destroy(),this.init()}return e}(),e.prototype.init=function(){function e(){this.defineEventHandlers();for(var e=-1;e<=1;e++)for(var t=-1;t<=1;t++)this.createBound(e,t);this.$element.addClass("resizable")}return e}(),e.prototype.destroy=function(){function e(){this.$element.removeClass("resizable resizing");var e=this.$element.find("resize-bound");e.remove(),this.detachEventHandlers(e)}return e}(),e.prototype.defineEventHandlers=function(){function e(){var e=this;this.initResizeHandler=function(t){var n=o(window);t.stopPropagation(),e.width=e.initialWidth=e.$element.width(),e.height=e.initialHeight=e.$element.height(),e.startWidth=e.width,e.startHeight=e.height,e.posX=parseInt(e.$element.css("left")),e.posY=parseInt(e.$element.css("top")),e.startPosX=e.posX,e.startPosY=e.posY,e.startX=t.clientX,e.startY=t.clientY,e.$element.addClass("resizing"),n.on("mousemove",t.data,e.resizeHandler),n.on("mouseup",t.data,e.endResizeHandler)},this.resizeHandler=function(t){var n=t.data,o=n.xDirection,r=n.yDirection,i=void 0,a=void 0;i=t.clientX<0?0:t.clientX,i=i>window.innerWidth?window.innerWidth:i,a=t.clientY<0?0:t.clientY,a=a>window.innerHeight?window.innerHeight:a;var u=(i-e.startX)*o,l=(a-e.startY)*r,c=u+e.startWidth,s=l+e.startHeight;e.width=c<e.minWidth?e.minWidth:c,e.height=s<e.minHeight?e.minHeight:s,e.$element.width(e.width),e.$element.height(e.height),o<0&&(e.posX=e.startPosX-u,c<e.minWidth&&(e.posX=e.startPosX+(e.startWidth-e.minWidth)),e.$element.css("left",e.posX+"px")),r<0&&(e.posY=e.startPosY-l,s<e.minHeight&&(e.posY=e.startPosY+(e.startHeight-e.minHeight)),e.$element.css("top",e.posY+"px"))},this.endResizeHandler=function(t){var n=o(window);n.off("mousemove",e.resizeHandler),n.off("mouseup",e.endResizeHandler),e.$element.removeClass("resizing")}}return e}(),e.prototype.attachEventHandlers=function(){function e(e,t,n){var o={xDirection:t,yDirection:n};e.on("mousedown",o,this.initResizeHandler)}return e}(),e.prototype.detachEventHandlers=function(){function e(e){var t=o(window);e.off("mousedown",this.initResizeHandler),t.off("mousemove",this.resizeHandler),t.off("mouseup",this.endResizeHandler)}return e}(),e.prototype.createBound=function(){function e(e,t){if(0!==e||e!==t){var n=o('<div class="resize-bound"></div>');n[0].onselectstart=function(){return!1},n.css("font-size",this.boundSize+"px");var r=["left","center","right"],i=["top","middle","bottom"];n.addClass("bound-"+r[e+1]),n.addClass("bound-"+i[t+1]),n.appendTo(this.$element),this.attachEventHandlers(n,e,t)}}return e}(),e}();a.ui.Resizable=u}]},unsavedChanges:{"unsavedChanges.js":["meteor/ohif:core","meteor/underscore",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var r;n.import("meteor/underscore",{_:function(e){r=e}}),o.ui.unsavedChanges=function(e,t){function n(e,t){var n={name:e};return t?(n.type="tree",n.children={}):(n.type="leaf",n.value=1),n}function o(e,t){var r=void 0,i=!1,a=t.shift();return"*"!==a&&(a in e?(r=e[a],t.length>0?i="tree"===r.type&&o(r.children,t):"leaf"===r.type&&(r.value++,i=!0)):(r=n(a,t.length>0),("tree"!==r.type||o(r.children,t))&&(e[a]=r,i=!0))),i}function r(e,t){var n=!1,o=t.shift();if("*"===o){for(o in k.sanitizeForInObject(e))e.hasOwnProperty(o)&&delete e[o];n=!0}else if(o in e)if(0===t.length)delete e[o],n=!0;else{var i=e[o];"tree"===i.type&&(n=r(i.children,t))}return n}function i(e,t){var n=void 0,o=0,r=t.shift();if("*"===r)for(r in k.sanitizeForInObject(e))e.hasOwnProperty(r)&&(n=e[r],"leaf"===n.type?o+=n.value:(t.unshift("*"),o+=i(n.children,t)));else r in e&&(n=e[r],"tree"===n.type?(0===t.length&&t.unshift("*"),o=i(n.children,t)):o=0===t.length?n.value:0);return o}var a={};return{set:function(){function e(e){return"string"==typeof e&&o(a,e.split("."))}return e}(),clear:function(){function e(e){return"string"==typeof e&&r(a,e.split("."))}return e}(),probe:function(){function e(e){return"string"==typeof e?i(a,e.split(".")):0}return e}(),checkBeforeAction:function(){function n(n,o,r){var i=void 0,a=void 0,u=void 0;if("function"==typeof o)if(i=this.probe(n),i>0){a=!0;var l=t.extend({title:"You have unsaved changes!",message:"Your changes will be lost if you don't save them before leaving the current page... Are you sure you want to proceed?"},r);e.ui.showDialog("dialogConfirm",l).then(function(){u=!0,o.call(null,u,a)},function(){u=!1,o.call(null,u,a)})}else a=!1,u=!0,o.call(null,u,a)}return n}()}}(o,r)}]}}},both:{"index.js":["./schema.js",function(e,t,n){n.import("./schema.js")}],"schema.js":["meteor/aldeed:simple-schema",function(e,t,n){var o;n.import("meteor/aldeed:simple-schema",{SimpleSchema:function(e){o=e}}),o.extendOptions({valuesLabels:$.Optional([String]),textOptional:$.Optional(Boolean)}),o.addValidator(function(){if(this.definition.optional!==!0&&this.definition.textOptional!==!0&&""===this.value)return"required"}),o.messages({maxCount:"[label] can not have more than [maxCount] values",minCount:"[label] must have at least [minCount] values",notAllowed:'[label] has an invalid value: "[value]"'})}]}}}}},{extensions:[".js",".json",".styl",".html"]}),B=R("./node_modules/meteor/ohif:core/main.js");R("./node_modules/meteor/ohif:core/client/index.js"),R("./node_modules/meteor/ohif:core/both/index.js"),"undefined"==typeof Package&&(Package={}),Package["ohif:core"]=B}();
!function(){var Meteor=Package.meteor.Meteor,global=Package.meteor.global,meteorEnv=Package.meteor.meteorEnv,$=Package.jquery.$,jQuery=Package.jquery.jQuery,cornerstone,dicomParser,cornerstoneTools,cornerstoneWADOImageLoader,cornerstoneMath;"undefined"==typeof cornerstone&&(cornerstone={internal:{},rendering:{}}),function(e){"use strict";function i(i){if(void 0===i)throw"disable: element element must not be undefined";for(var t=e.getEnabledElements(),r=0;r<t.length;r++)if(t[r].element===i){var n={element:i};return $(i).trigger("CornerstoneElementDisabled",n),t[r].element.removeChild(t[r].canvas),void t.splice(r,1)}}e.disable=i}(cornerstone),function(e,i){"use strict";function t(t,r,n){if(void 0===t)throw"displayImage: parameter element cannot be undefined";if(void 0===r)throw"displayImage: parameter image cannot be undefined";var a=i.getEnabledElement(t);if(a.image=r,void 0===a.viewport&&(a.viewport=i.internal.getDefaultViewport(a.canvas,r)),n)for(var o in n)null!==n[o]&&(a.viewport[o]=n[o]);var s=new Date,f;if(void 0!==a.lastImageTimeStamp){var l=s.getTime()-a.lastImageTimeStamp;f=(1e3/l).toFixed()}a.lastImageTimeStamp=s.getTime();var u={viewport:a.viewport,element:a.element,image:a.image,enabledElement:a,frameRate:f};e(a.element).trigger("CornerstoneNewImage",u),i.updateImage(t)}i.displayImage=t}($,cornerstone),function(e,i){"use strict";function t(e){var t=i.getEnabledElement(e);if(void 0===t.image)throw"draw: image has not been loaded yet";i.drawImage(t)}i.draw=t}($,cornerstone),function(e,i){"use strict";function t(){for(var e=i.getEnabledElements(),t=0;t<e.length;t++){var r=e[t];r.invalid===!0&&i.drawImage(r)}}i.drawInvalidated=t}($,cornerstone),function(e){"use strict";function i(i,t){if(void 0===i)throw"enable: parameter element cannot be undefined";t&&t.renderer&&"webgl"===t.renderer.toLowerCase()&&(e.webGL.renderer.isWebGLAvailable()?(console.log("Using WebGL rendering path"),e.webGL.renderer.initRenderer(),t.renderer="webgl"):(console.error("WebGL not available, falling back to Canvas renderer"),delete t.renderer));var r=document.createElement("canvas");i.appendChild(r);var n={element:i,canvas:r,image:void 0,invalid:!1,options:t,data:{}};return e.addEnabledElement(n),e.resize(i,!0),i}e.enable=i}(cornerstone),function(e){"use strict";function i(i,t){var r=e.getEnabledElement(i);return r.data.hasOwnProperty(t)===!1&&(r.data[t]={}),r.data[t]}function t(i,t){var r=e.getEnabledElement(i);delete r.data[t]}e.getElementData=i,e.removeElementData=t}(cornerstone),function(e){"use strict";function i(e){if(void 0===e)throw"getEnabledElement: parameter element must not be undefined";for(var i=0;i<a.length;i++)if(a[i].element==e)return a[i];throw"element not enabled"}function t(e){if(void 0===e)throw"getEnabledElement: enabledElement element must not be undefined";a.push(e)}function r(e){var i=[];return a.forEach(function(t){t.image&&t.image.imageId===e&&i.push(t)}),i}function n(){return a}var a=[];e.getEnabledElement=i,e.addEnabledElement=t,e.getEnabledElementsByImageId=r,e.getEnabledElements=n}(cornerstone),function(e){"use strict";function i(e){return 0===e.viewport.rotation||180===e.viewport.rotation?{width:e.image.width,height:e.image.height}:{width:e.image.height,height:e.image.width}}function t(t){var r=e.getEnabledElement(t),n=i(r),a=r.canvas.height/n.height,o=r.canvas.width/n.width;o<a?r.viewport.scale=o:r.viewport.scale=a,r.viewport.translation.x=0,r.viewport.translation.y=0,e.updateImage(t)}e.fitToWindow=t}(cornerstone),function(e,i){"use strict";function t(e,t){var r=i.getEnabledElement(e),n=i.internal.getDefaultViewport(r.canvas,t);return n}i.getDefaultViewportForImage=t}($,cornerstone),function(e,i){"use strict";function t(e){var t=i.getEnabledElement(e);return t.image}i.getImage=t}($,cornerstone),function(e){"use strict";function i(i,t,r,n,a){var o=e.getStoredPixels(i,t,r,n,a),s=e.getEnabledElement(i),f=e.internal.getModalityLUT(s.image.slope,s.image.intercept,s.viewport.modalityLUT),l=o.map(f);return l}e.getPixels=i}(cornerstone),function(e){"use strict";function i(i,t,r,n,a){if(void 0===i)throw"getStoredPixels: parameter element must not be undefined";t=Math.round(t),r=Math.round(r);for(var o=e.getEnabledElement(i),s=[],f=0,l=o.image.getPixelData(),u=0;u<a;u++)for(var c=0;c<n;c++){var d=(u+r)*o.image.columns+(c+t);s[f++]=l[d]}return s}e.getStoredPixels=i}(cornerstone),function(e){"use strict";function i(i){var t=e.getEnabledElement(i),r=t.viewport;if(void 0!==r)return{scale:r.scale,translation:{x:r.translation.x,y:r.translation.y},voi:{windowWidth:r.voi.windowWidth,windowCenter:r.voi.windowCenter},invert:r.invert,pixelReplication:r.pixelReplication,rotation:r.rotation,hflip:r.hflip,vflip:r.vflip,modalityLUT:r.modalityLUT,voiLUT:r.voiLUT}}e.getViewport=i}(cornerstone),function(e){"use strict";function i(e){if(void 0===e)throw"setMaximumSizeBytes: parameter numBytes must not be undefined";if(void 0===e.toFixed)throw"setMaximumSizeBytes: parameter numBytes must be a number";h=e,t()}function t(){function i(e,i){return e.timeStamp>i.timeStamp?-1:e.timeStamp<i.timeStamp?1:0}if(!(m<=h)){for(d.sort(i);m>h;){var t=d[d.length-1];m-=t.sizeInBytes,delete u[t.imageId],t.imagePromise.reject(),d.pop(),$(e).trigger("CornerstoneImageCachePromiseRemoved",{imageId:t.imageId})}var r=e.imageCache.getCacheInfo();$(e).trigger("CornerstoneImageCacheFull",r)}}function r(e,i){if(void 0===e)throw"getImagePromise: imageId must not be undefined";if(void 0===i)throw"getImagePromise: imagePromise must not be undefined";if(u.hasOwnProperty(e)===!0)throw"putImagePromise: imageId already in cache";var r={loaded:!1,imageId:e,sharedCacheKey:void 0,imagePromise:i,timeStamp:new Date,sizeInBytes:0};u[e]=r,d.push(r),i.then(function(e){if(r.loaded=!0,void 0===e.sizeInBytes)throw"putImagePromise: image does not have sizeInBytes property or";if(void 0===e.sizeInBytes.toFixed)throw"putImagePromise: image.sizeInBytes is not a number";e.sharedCacheKey?(r.sizeInBytes=e.sizeInBytes,r.sharedCacheKey=e.sharedCacheKey,c[e.sharedCacheKey]?c[e.sharedCacheKey]++:(c[e.sharedCacheKey]=1,m+=r.sizeInBytes)):(r.sizeInBytes=e.sizeInBytes,m+=r.sizeInBytes),t()})}function n(e){if(void 0===e)throw"getImagePromise: imageId must not be undefined";var i=u[e];if(void 0!==i)return i.timeStamp=new Date,i.imagePromise}function a(e){if(void 0===e)throw"removeImagePromise: imageId must not be undefined";var i=u[e];if(void 0===i)throw"removeImagePromise: imageId must not be undefined";return d.splice(d.indexOf(i),1),d.sharedCacheKey?1===c[d.sharedCacheKey]?(m-=i.sizeInBytes,delete c[d.sharedCacheKey]):c[d.sharedCacheKey]--:m-=i.sizeInBytes,delete u[e],s(i.imagePromise,i.imageId),i.imagePromise}function o(){return{maximumSizeInBytes:h,cacheSizeInBytes:m,numberOfImagesCached:d.length}}function s(e,i){e.then(function(t){t.decache&&t.decache(),e.reject(),delete u[i]}).always(function(){delete u[i]})}function f(){for(;d.length>0;){var e=d.pop();s(e.imagePromise,e.imageId)}m=0}function l(e,i){var t=u[e];t&&t.imagePromise.then(function(e){var t=i-e.sizeInBytes;e.sizeInBytes=i,m+=t})}var u={},c={},d=[],h=1073741824,m=0;e.imageCache={putImagePromise:r,getImagePromise:n,removeImagePromise:a,setMaximumSizeBytes:i,getCacheInfo:o,purgeCache:f,cachedImages:d,changeImageIdCacheSize:l}}(cornerstone),function(e,i){"use strict";function t(t){var r=t.indexOf(":"),n=t.substring(0,r),a=s[n],o;return void 0===a||null===a?void 0!==f?o=f(t):void 0:(o=a(t),o.then(function(t){e(i).trigger("CornerstoneImageLoaded",{image:t})}),o)}function r(e){if(void 0===e)throw"loadImage: parameter imageId must not be undefined";var r=i.imageCache.getImagePromise(e);if(void 0!==r)return r;if(r=t(e),void 0===r)throw"loadImage: no image loader for imageId";return r}function n(e){if(void 0===e)throw"loadAndCacheImage: parameter imageId must not be undefined";var r=i.imageCache.getImagePromise(e);if(void 0!==r)return r;if(r=t(e),void 0===r)throw"loadAndCacheImage: no image loader for imageId";return i.imageCache.putImagePromise(e,r),r}function a(e,i){s[e]=i}function o(e){var i=f;return f=e,i}var s={},f;i.loadImage=r,i.loadAndCacheImage=n,i.registerImageLoader=a,i.registerUnknownImageLoader=o}($,cornerstone),function(e){"use strict";function i(i,t){var r=new e.internal.Transform;r.translate(i.canvas.width/2,i.canvas.height/2);var n=i.viewport.rotation;0!==n&&r.rotate(n*Math.PI/180);var a=i.viewport.scale,o=i.viewport.scale;return i.image.rowPixelSpacing<i.image.columnPixelSpacing?a*=i.image.columnPixelSpacing/i.image.rowPixelSpacing:i.image.columnPixelSpacing<i.image.rowPixelSpacing&&(o*=i.image.rowPixelSpacing/i.image.columnPixelSpacing),r.scale(a,o),0!==n&&r.rotate(-n*Math.PI/180),r.translate(i.viewport.translation.x,i.viewport.translation.y),0!==n&&r.rotate(n*Math.PI/180),void 0!==t&&r.scale(t,t),i.viewport.hflip&&r.scale(-1,1),i.viewport.vflip&&r.scale(1,-1),r.translate(-i.image.width/2,-i.image.height/2),r}e.internal.calculateTransform=i}(cornerstone),function(e,i){"use strict";function t(i,t){var r=new Date;i.image.render(i,t);var n=i.canvas.getContext("2d"),a=new Date,o=a-r,s={viewport:i.viewport,element:i.element,image:i.image,enabledElement:i,canvasContext:n,renderTimeInMs:o};e(i.element).trigger("CornerstoneImageRendered",s),i.invalid=!1}i.internal.drawImage=t,i.drawImage=t}($,cornerstone),function(e){"use strict";function i(i,t,r,n,a,o){void 0===i.lut&&(i.lut=new Int16Array(i.maxPixelValue-Math.min(i.minPixelValue,0)+1));var s=i.lut,f=i.maxPixelValue,l=i.minPixelValue,u=e.internal.getModalityLUT(i.slope,i.intercept,a),c=e.internal.getVOILUT(t,r,o),d=0;l<0&&(d=l);var h,m,b,v;for(h=i.minPixelValue;h<=f;h++)m=u(h),b=c(m),v=Math.min(Math.max(b,0),255),n?s[h+-d]=Math.round(255-v):s[h+-d]=Math.round(v);return s}function t(e,t,r,n,a,o){if(a||o)return i(e,t,r,n,a,o);void 0===e.lut&&(e.lut=new Int16Array(e.maxPixelValue-Math.min(e.minPixelValue,0)+1));var s=e.lut,f=e.maxPixelValue,l=e.minPixelValue,u=e.slope,c=e.intercept,d=t,h=r,m,b,v,w,p=0;if(l<0&&(p=l),n===!0)for(w=e.minPixelValue;w<=f;w++)m=w*u+c,b=255*((m-h)/d+.5),v=Math.min(Math.max(b,0),255),s[w+-p]=Math.round(255-v);else for(w=e.minPixelValue;w<=f;w++)m=w*u+c,b=255*((m-h)/d+.5),v=Math.min(Math.max(b,0),255),s[w+-p]=Math.round(v)}e.internal.generateLutNew=i,e.internal.generateLut=t,e.generateLutNew=i,e.generateLut=t}(cornerstone),function(e){"use strict";function i(e,i){if(void 0===e)throw"getDefaultViewport: parameter canvas must not be undefined";if(void 0===i)throw"getDefaultViewport: parameter image must not be undefined";var t={scale:1,translation:{x:0,y:0},voi:{windowWidth:i.windowWidth,windowCenter:i.windowCenter},invert:i.invert,pixelReplication:!1,rotation:0,hflip:!1,vflip:!1,modalityLUT:i.modalityLUT,voiLUT:i.voiLUT},r=e.height/i.rows,n=e.width/i.columns;return n<r?t.scale=n:t.scale=r,t}e.internal.getDefaultViewport=i,e.getDefaultViewport=i}(cornerstone),function(e){"use strict";function i(i){var t=e.internal.calculateTransform(i);return t}e.internal.getTransform=i}(cornerstone),function(e,i){"use strict";i.drawImage=i.internal.drawImage,i.generateLut=i.internal.generateLut,i.storedPixelDataToCanvasImageData=i.internal.storedPixelDataToCanvasImageData,i.storedColorPixelDataToCanvasImageData=i.internal.storedColorPixelDataToCanvasImageData}($,cornerstone),function(e){"use strict";function i(e,i){var t=e,r=i;return function(e){return e*t+r}}function t(e){var i=e.lut[0],t=e.lut[e.lut.length-1],r=e.firstValueMapped+e.lut.length;return function(n){return n<e.firstValueMapped?i:n>=r?t:e.lut[n]}}function r(e,r,n){return n?t(n):i(e,r)}e.internal.getModalityLUT=r}(cornerstone),function(e){"use strict";function i(e,i,t){var r=e.minPixelValue,n=0,a=0,o=e.width*e.height*4,s=e.getPixelData(),f=i,l=t;if(r<0)for(;a<o;)l[n++]=f[s[a++]+-r],l[n++]=f[s[a++]+-r],l[n]=f[s[a]+-r],a+=2,n+=2;else for(;a<o;)l[n++]=f[s[a++]],l[n++]=f[s[a++]],l[n]=f[s[a]],a+=2,n+=2}e.internal.storedColorPixelDataToCanvasImageData=i,e.storedColorPixelDataToCanvasImageData=i}(cornerstone),function(e){"use strict";function i(e,i,t){var r=e.getPixelData(),n=e.minPixelValue,a=3,o=0,s=r.length,f=r,l=i,u=t;if(n<0)for(;o<s;)u[a]=l[f[o++]+-n],a+=4;else for(;o<s;)u[a]=l[f[o++]],a+=4}e.internal.storedPixelDataToCanvasImageData=i,e.storedPixelDataToCanvasImageData=i}(cornerstone),function(e){"use strict";function i(){this.reset()}i.prototype.reset=function(){this.m=[1,0,0,1,0,0]},i.prototype.clone=function(){var e=new i;return e.m[0]=this.m[0],e.m[1]=this.m[1],e.m[2]=this.m[2],e.m[3]=this.m[3],e.m[4]=this.m[4],e.m[5]=this.m[5],e},i.prototype.multiply=function(e){var i=this.m[0]*e.m[0]+this.m[2]*e.m[1],t=this.m[1]*e.m[0]+this.m[3]*e.m[1],r=this.m[0]*e.m[2]+this.m[2]*e.m[3],n=this.m[1]*e.m[2]+this.m[3]*e.m[3],a=this.m[0]*e.m[4]+this.m[2]*e.m[5]+this.m[4],o=this.m[1]*e.m[4]+this.m[3]*e.m[5]+this.m[5];this.m[0]=i,this.m[1]=t,this.m[2]=r,this.m[3]=n,this.m[4]=a,this.m[5]=o},i.prototype.invert=function(){var e=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),i=this.m[3]*e,t=-this.m[1]*e,r=-this.m[2]*e,n=this.m[0]*e,a=e*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),o=e*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);this.m[0]=i,this.m[1]=t,this.m[2]=r,this.m[3]=n,this.m[4]=a,this.m[5]=o},i.prototype.rotate=function(e){var i=Math.cos(e),t=Math.sin(e),r=this.m[0]*i+this.m[2]*t,n=this.m[1]*i+this.m[3]*t,a=this.m[0]*-t+this.m[2]*i,o=this.m[1]*-t+this.m[3]*i;this.m[0]=r,this.m[1]=n,this.m[2]=a,this.m[3]=o},i.prototype.translate=function(e,i){this.m[4]+=this.m[0]*e+this.m[2]*i,this.m[5]+=this.m[1]*e+this.m[3]*i},i.prototype.scale=function(e,i){this.m[0]*=e,this.m[1]*=e,this.m[2]*=i,this.m[3]*=i},i.prototype.transformPoint=function(e,i){var t=e,r=i;return e=t*this.m[0]+r*this.m[2]+this.m[4],i=t*this.m[1]+r*this.m[3]+this.m[5],{x:e,y:i}},e.internal.Transform=i}(cornerstone),function(e){"use strict";function i(e,i){return function(t){return 255*((t-i)/e+.5)}}function t(e){var i=e.numBitsPerEntry-8,t=e.lut[0]>>i,r=e.lut[e.lut.length-1]>>i,n=e.firstValueMapped+e.lut.length-1;return function(a){return a<e.firstValueMapped?t:a>=n?r:e.lut[a-e.firstValueMapped]>>i}}function r(e,r,n){return n?t(n):i(e,r)}e.internal.getVOILUT=r}(cornerstone),function(e){"use strict";function i(i){var t=e.getEnabledElement(i);t.invalid=!0;var r={element:i};$(t.element).trigger("CornerstoneInvalidated",r)}e.invalidate=i}(cornerstone),function(e){"use strict";function i(i){var t=e.getEnabledElementsByImageId(i);t.forEach(function(i){e.drawImage(i,!0)})}e.invalidateImageId=i}(cornerstone),function(e){"use strict";function i(i,t,r){var n=e.getEnabledElement(i);if(void 0===n.image)throw"image has not been loaded yet";var a=n.image,o=i.getBoundingClientRect(),s=t-o.left-window.pageXOffset,f=r-o.top-window.pageYOffset,l={x:s,y:f},u=e.internal.getTransform(n);return u.invert(),u.transformPoint(l.x,l.y)}e.pageToPixel=i}(cornerstone),function(e){"use strict";function i(i,t){var r=e.getEnabledElement(i),n=e.internal.getTransform(r);return n.transformPoint(t.x,t.y)}e.pixelToCanvas=i}(cornerstone),function(e){"use strict";function i(e){o.width=e.width,o.height=e.height,s=o.getContext("2d"),s.fillStyle="white",s.fillRect(0,0,o.width,o.height),f=s.getImageData(0,0,e.width,e.height)}function t(i,t){return void 0!==i.lut&&i.lut.windowCenter===t.voi.windowCenter&&i.lut.windowWidth===t.voi.windowWidth&&i.lut.invert===t.invert?i.lut:(e.generateLut(i,t.voi.windowWidth,t.voi.windowCenter,t.invert),i.lut.windowWidth=t.voi.windowWidth,i.lut.windowCenter=t.voi.windowCenter,i.lut.invert=t.invert,i.lut)}function r(e,i){return i.imageId!==l||u.windowCenter!==e.viewport.voi.windowCenter||u.windowWidth!==e.viewport.voi.windowWidth||u.invert!==e.viewport.invert||u.rotation!==e.viewport.rotation||u.hflip!==e.viewport.hflip||u.vflip!==e.viewport.vflip}function n(n,a,l){if(255===n.viewport.voi.windowWidth&&128===n.viewport.voi.windowCenter&&n.viewport.invert===!1&&a.getCanvas&&a.getCanvas())return a.getCanvas();if(r(n,a)===!1&&l!==!0)return o;o.width===a.width&&o.height==a.height||i(a);var u=t(a,n.viewport);return e.storedColorPixelDataToCanvasImageData(a,u,f.data),s.putImageData(f,0,0),o}function a(i,t){if(void 0===i)throw"drawImage: enabledElement parameter must not be undefined";var r=i.image;if(void 0===r)throw"drawImage: image must be loaded before it can be drawn";var a=i.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0),a.fillStyle="black",a.fillRect(0,0,i.canvas.width,i.canvas.height),i.viewport.pixelReplication===!0?(a.imageSmoothingEnabled=!1,a.mozImageSmoothingEnabled=!1):(a.imageSmoothingEnabled=!0,a.mozImageSmoothingEnabled=!0),a.save(),e.setToPixelCoordinateSystem(i,a);var o;o=i.options&&i.options.renderer&&"webgl"===i.options.renderer.toLowerCase()?e.webGL.renderer.render(i):n(i,r,t),a.drawImage(o,0,0,r.width,r.height,0,0,r.width,r.height),a.restore(),l=r.imageId,u.windowCenter=i.viewport.voi.windowCenter,u.windowWidth=i.viewport.voi.windowWidth,u.invert=i.viewport.invert,u.rotation=i.viewport.rotation,u.hflip=i.viewport.hflip,u.vflip=i.viewport.vflip}var o=document.createElement("canvas"),s,f,l,u={};e.rendering.colorImage=a,e.renderColorImage=a}(cornerstone),function(e){"use strict";function i(e){s.width=e.width,s.height=e.height,f=s.getContext("2d"),f.fillStyle="white",f.fillRect(0,0,s.width,s.height),l=f.getImageData(0,0,e.width,e.height)}function t(e,i){return!e&&!i||!(!e||!i)&&e.id!==i.id}function r(i,r,n){return void 0!==i.lut&&i.lut.windowCenter===r.voi.windowCenter&&i.lut.windowWidth===r.voi.windowWidth&&t(i.lut.modalityLUT,r.modalityLUT)&&t(i.lut.voiLUT,r.voiLUT)&&i.lut.invert===r.invert&&n!==!0?i.lut:(e.generateLut(i,r.voi.windowWidth,r.voi.windowCenter,r.invert,r.modalityLUT,r.voiLUT),i.lut.windowWidth=r.voi.windowWidth,i.lut.windowCenter=r.voi.windowCenter,i.lut.invert=r.invert,i.lut.voiLUT=r.voiLUT,i.lut.modalityLUT=r.modalityLUT,i.lut)}function n(e,i){return i.imageId!==u||c.windowCenter!==e.viewport.voi.windowCenter||c.windowWidth!==e.viewport.voi.windowWidth||c.invert!==e.viewport.invert||c.rotation!==e.viewport.rotation||c.hflip!==e.viewport.hflip||c.vflip!==e.viewport.vflip||c.modalityLUT!==e.viewport.modalityLUT||c.voiLUT!==e.viewport.voiLUT}function a(t,a,o){if(n(t,a)===!1&&o!==!0)return s;s.width===a.width&&s.height==a.height||i(a);var u=r(a,t.viewport,o);return e.storedPixelDataToCanvasImageData(a,u,l.data),f.putImageData(l,0,0),s}function o(i,t){if(void 0===i)throw"drawImage: enabledElement parameter must not be undefined";var r=i.image;if(void 0===r)throw"drawImage: image must be loaded before it can be drawn";var n=i.canvas.getContext("2d");n.setTransform(1,0,0,1,0,0),n.fillStyle="black",n.fillRect(0,0,i.canvas.width,i.canvas.height),i.viewport.pixelReplication===!0?(n.imageSmoothingEnabled=!1,n.mozImageSmoothingEnabled=!1):(n.imageSmoothingEnabled=!0,n.mozImageSmoothingEnabled=!0),e.setToPixelCoordinateSystem(i,n);var o;o=i.options&&i.options.renderer&&"webgl"===i.options.renderer.toLowerCase()?e.webGL.renderer.render(i):a(i,r,t),n.drawImage(o,0,0,r.width,r.height,0,0,r.width,r.height),u=r.imageId,c.windowCenter=i.viewport.voi.windowCenter,c.windowWidth=i.viewport.voi.windowWidth,c.invert=i.viewport.invert,c.rotation=i.viewport.rotation,c.hflip=i.viewport.hflip,c.vflip=i.viewport.vflip,c.modalityLUT=i.viewport.modalityLUT,c.voiLUT=i.viewport.voiLUT}var s=document.createElement("canvas"),f,l,u,c={};e.rendering.grayscaleImage=o,e.renderGrayscaleImage=o}(cornerstone),function(e){"use strict";function i(i,t){if(void 0===i)throw"drawImage: enabledElement parameter must not be undefined";var r=i.image;if(void 0===r)throw"drawImage: image must be loaded before it can be drawn";var n=i.canvas.getContext("2d");n.setTransform(1,0,0,1,0,0),n.fillStyle="black",n.fillRect(0,0,i.canvas.width,i.canvas.height),i.viewport.pixelReplication===!0?(n.imageSmoothingEnabled=!1,n.mozImageSmoothingEnabled=!1):(n.imageSmoothingEnabled=!0,n.mozImageSmoothingEnabled=!0),e.setToPixelCoordinateSystem(i,n),i.viewport.voi.windowWidth===i.image.windowWidth&&i.viewport.voi.windowCenter===i.image.windowCenter&&i.viewport.invert===!1?n.drawImage(r.getImage(),0,0,r.width,r.height,0,0,r.width,r.height):e.renderColorImage(i,t)}e.rendering.webImage=i,e.renderWebImage=i}(cornerstone),function(e){"use strict";function i(i){var t=e.getEnabledElement(i),r=e.internal.getDefaultViewport(t.canvas,t.image);t.viewport=r,e.updateImage(i)}e.reset=i}(cornerstone),function(e){"use strict";function i(e,i){i.width=e.clientWidth,i.height=e.clientHeight,i.style.width=e.clientWidth+"px",i.style.height=e.clientHeight+"px"}function t(t,r){var n=e.getEnabledElement(t);i(t,n.canvas),void 0!==n.image&&(r===!0?e.fitToWindow(t):e.updateImage(t))}e.resize=t}(cornerstone),function(e){"use strict";function i(i,t,r){if(void 0===i)throw"setToPixelCoordinateSystem: parameter enabledElement must not be undefined";if(void 0===t)throw"setToPixelCoordinateSystem: parameter context must not be undefined";var n=e.internal.calculateTransform(i,r);t.setTransform(n.m[0],n.m[1],n.m[2],n.m[3],n.m[4],n.m[5],n.m[6])}e.setToPixelCoordinateSystem=i}(cornerstone),function(e){"use strict";function i(i,t){var r=e.getEnabledElement(i);r.viewport.scale=t.scale,r.viewport.translation.x=t.translation.x,r.viewport.translation.y=t.translation.y,r.viewport.voi.windowWidth=t.voi.windowWidth,r.viewport.voi.windowCenter=t.voi.windowCenter,r.viewport.invert=t.invert,r.viewport.pixelReplication=t.pixelReplication,r.viewport.rotation=t.rotation,r.viewport.hflip=t.hflip,r.viewport.vflip=t.vflip,r.viewport.modalityLUT=t.modalityLUT,r.viewport.voiLUT=t.voiLUT,r.viewport.voi.windowWidth<1e-6&&(r.viewport.voi.windowWidth=1e-6),r.viewport.scale<1e-4&&(r.viewport.scale=.25),360!==r.viewport.rotation&&r.viewport.rotation!==-360||(r.viewport.rotation=0),e.updateImage(i)}e.setViewport=i}(cornerstone),function(e){"use strict";function i(i,t){var r=e.getEnabledElement(i);if(void 0===r.image)throw"updateImage: image has not been loaded yet";e.drawImage(r,t)}e.updateImage=i}(cornerstone),function(e){"use strict";function i(e,i,t){var r=e.createShader(t);e.shaderSource(r,i),e.compileShader(r);var n=e.getShaderParameter(r,e.COMPILE_STATUS);if(!n&&!e.isContextLost()){var a=e.getShaderInfoLog(r);console.error("Could not compile shader:\n"+a)}return r}function t(e,i,t){var r=e.createProgram();e.attachShader(r,i),e.attachShader(r,t),e.linkProgram(r);var n=e.getProgramParameter(r,e.LINK_STATUS);if(!n&&!e.isContextLost()){var a=e.getProgramInfoLog(r);console.error("WebGL program filed to link:\n"+a)}return r}function r(e,r,n){var a=i(e,r,e.VERTEX_SHADER),o=i(e,n,e.FRAGMENT_SHADER);return t(e,a,o)}e.webGL||(e.webGL={}),e.webGL.createProgramFromString=r}(cornerstone),function(e){"use strict";function i(){return v}function t(){for(var i in e.webGL.shaders){console.log("WEBGL: Loading shader",i);var t=e.webGL.shaders[i];t.attributes={},t.uniforms={},t.vert=e.webGL.vertexShader,t.program=e.webGL.createProgramFromString(g,t.vert,t.frag),t.attributes.texCoordLocation=g.getAttribLocation(t.program,"a_texCoord"),g.enableVertexAttribArray(t.attributes.texCoordLocation),t.attributes.positionLocation=g.getAttribLocation(t.program,"a_position"),g.enableVertexAttribArray(t.attributes.positionLocation),t.uniforms.resolutionLocation=g.getUniformLocation(t.program,"u_resolution")}}function r(){return e.webGL.isWebGLInitialized===!0?void console.log("WEBGL Renderer already initialized"):void(s(v)&&(d(),t(),console.log("WEBGL Renderer initialized!"),e.webGL.isWebGLInitialized=!0))}function n(e,i,t){e.bufferData(e.ARRAY_BUFFER,new Float32Array([i,t,0,t,i,0,0,0]),e.STATIC_DRAW)}function a(e){e.preventDefault(),console.warn("WebGL Context Lost!")}function o(i){i.preventDefault(),e.webGL.isWebGLInitialized=!1,e.webGL.textureCache.purgeCache(),r(),console.log("WebGL Context Restored.")}function s(i){g=null;try{var t={preserveDrawingBuffer:!0};e.webGL.debug===!0&&WebGLDebugUtils&&(v=WebGLDebugUtils.makeLostContextSimulatingCanvas(v)),g=i.getContext("webgl",t)||i.getContext("experimental-webgl",t),i.removeEventListener("webglcontextlost",a,!1),i.addEventListener("webglcontextlost",a,!1),i.removeEventListener("webglcontextrestored",o,!1),i.addEventListener("webglcontextrestored",o,!1)}catch(e){throw"Error creating WebGL context"}return g||(console.error("Unable to initialize WebGL. Your browser may not support it."),g=null),g}function f(e){if(e.color)return"rgb";var i="int";return e.minPixelValue>=0&&(i="u"+i),i+=e.maxPixelValue>255?"16":"8"}function l(i){var t=f(i);if(e.webGL.shaders.hasOwnProperty(t))return e.webGL.shaders[t];var r=e.webGL.shaders.rgb;return r}function u(i){var t=e.webGL.textureCache.getImageTexture(i.imageId);return t||(t=c(i),e.webGL.textureCache.putImageTexture(i,t)),t.texture}function c(i){var t={uint8:g.LUMINANCE,int8:g.LUMINANCE_ALPHA,uint16:g.LUMINANCE_ALPHA,int16:g.RGB,rgb:g.RGB},r={int8:1,uint16:2,int16:3,rgb:3},n=f(i),a=t[n],o=g.createTexture();g.bindTexture(g.TEXTURE_2D,o),g.texParameteri(g.TEXTURE_2D,g.TEXTURE_MIN_FILTER,g.NEAREST),g.texParameteri(g.TEXTURE_2D,g.TEXTURE_MAG_FILTER,g.NEAREST),g.texParameteri(g.TEXTURE_2D,g.TEXTURE_WRAP_S,g.CLAMP_TO_EDGE),g.texParameteri(g.TEXTURE_2D,g.TEXTURE_WRAP_T,g.CLAMP_TO_EDGE),g.pixelStorei(g.UNPACK_ALIGNMENT,1);var s=e.webGL.dataUtilities[n].storedPixelDataToImageData(i,i.width,i.height);g.texImage2D(g.TEXTURE_2D,0,a,i.width,i.height,0,a,g.UNSIGNED_BYTE,s);var l=i.width*i.height*r[n],u={texture:o,sizeInBytes:l};return u}function d(){T=g.createBuffer(),g.bindBuffer(g.ARRAY_BUFFER,T),g.bufferData(g.ARRAY_BUFFER,new Float32Array([1,1,0,1,1,0,0,0]),g.STATIC_DRAW),y=g.createBuffer(),g.bindBuffer(g.ARRAY_BUFFER,y),g.bufferData(g.ARRAY_BUFFER,new Float32Array([1,1,0,1,1,0,0,0]),g.STATIC_DRAW)}function h(e,i,t,r,a){g.clearColor(1,0,0,1),g.viewport(0,0,r,a),g.clear(g.COLOR_BUFFER_BIT|g.DEPTH_BUFFER_BIT),g.useProgram(e.program),g.bindBuffer(g.ARRAY_BUFFER,y),g.vertexAttribPointer(e.attributes.texCoordLocation,2,g.FLOAT,!1,0,0),g.bindBuffer(g.ARRAY_BUFFER,T),g.vertexAttribPointer(e.attributes.positionLocation,2,g.FLOAT,!1,0,0);for(var o in i){var s=g.getUniformLocation(e.program,o);if(!s)throw"Could not access location for uniform: "+o;var f=i[o],l=f.type,u=f.value;"i"==l?g.uniform1i(s,u):"f"==l?g.uniform1f(s,u):"2f"==l&&g.uniform2f(s,u[0],u[1])}n(g,r,a),g.activeTexture(g.TEXTURE0),g.bindTexture(g.TEXTURE_2D,t),g.drawArrays(g.TRIANGLE_STRIP,0,4)}function m(e){var i=e.image;v.width=i.width,v.height=i.height;var t=e.viewport,r=l(i),n=u(i),a={u_resolution:{type:"2f",value:[i.width,i.height]},wc:{type:"f",value:t.voi.windowCenter},ww:{type:"f",value:t.voi.windowWidth},slope:{type:"f",value:i.slope},intercept:{type:"f",value:i.intercept},invert:{type:"i",value:t.invert?1:0}};return h(r,a,n,i.width,i.height),v}function b(){var e={failIfMajorPerformanceCaveat:!0};try{var i=document.createElement("canvas");return!!window.WebGLRenderingContext&&(i.getContext("webgl",e)||i.getContext("experimental-webgl",e))}catch(e){return!1}}e.webGL||(e.webGL={});var v=document.createElement("canvas"),w,p,g,k,_,y,T;e.webGL.isWebGLInitialized=!1,e.webGL.renderer={render:m,initRenderer:r,getRenderCanvas:i,isWebGLAvailable:b}}(cornerstone),function(e){"use strict";function i(e){for(var i=e.getPixelData(),t=3,r=new Uint8Array(e.width*e.height*t),n=0,a=0;a<i.length;a++){var o=Math.abs(i[a]);r[n++]=parseInt(255&o,10),r[n++]=parseInt(o>>8,10),r[n++]=i[a]<0?0:1}return r}e.webGL||(e.webGL={}),e.webGL.shaders||(e.webGL.shaders={}),e.webGL.dataUtilities||(e.webGL.dataUtilities={});var t={};e.webGL.dataUtilities.int16={storedPixelDataToImageData:i},t.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.0 + color.g*65536.0;if (color.b == 0.0)intensity = -intensity;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}",e.webGL.shaders.int16=t}(cornerstone),function(e){"use strict";function i(e){for(var i=e.getPixelData(),t=2,r=new Uint8Array(e.width*e.height*t),n=0,a=0;a<i.length;a++)r[n++]=parseInt(i[a],10),r[n++]=i[a]<0?0:1;return r}e.webGL||(e.webGL={}),e.webGL.shaders||(e.webGL.shaders={}),e.webGL.dataUtilities||(e.webGL.dataUtilities={});var t={};e.webGL.dataUtilities.int8={storedPixelDataToImageData:i},t.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform float minPixelValue;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.;if (color.a == 0.0)intensity = -intensity;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}",e.webGL.shaders.int8=t}(cornerstone),function(e){"use strict";function i(e){var i=e.minPixelValue,t=0,r=0,n=e.width*e.height*4,a=e.width*e.height*3,o=e.getPixelData(),s=new Uint8Array(a);if(i<0)for(;r<n;)s[t++]=o[r++]+-i,s[t++]=o[r++]+-i,s[t++]=o[r++]+-i,r+=1;else for(;r<n;)s[t++]=o[r++],s[t++]=o[r++],s[t++]=o[r++],r+=1;return s}e.webGL||(e.webGL={}),e.webGL.shaders||(e.webGL.shaders={}),e.webGL.dataUtilities||(e.webGL.dataUtilities={});var t={};e.webGL.dataUtilities.rgb={storedPixelDataToImageData:i},t.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform float minPixelValue;uniform int invert;varying vec2 v_texCoord;void main() {vec3 color = texture2D(u_image, v_texCoord).xyz;color = color * 256.0 * slope + intercept;float center0 = wc - 0.5 - minPixelValue;float width0 = max(ww, 1.0);color = (color - center0) / width0 + 0.5;gl_FragColor = vec4(color, 1);if (invert == 1)gl_FragColor.rgb = 1. - gl_FragColor.rgb;}",e.webGL.shaders.rgb=t}(cornerstone),function(e){"use strict";function i(e){for(var i=e.getPixelData(),t=2,r=new Uint8Array(e.width*e.height*t),n=0,a=0;a<i.length;a++){var o=i[a];r[n++]=parseInt(255&o,10),r[n++]=parseInt(o>>8,10)}return r}e.webGL||(e.webGL={}),e.webGL.shaders||(e.webGL.shaders={}),e.webGL.dataUtilities||(e.webGL.dataUtilities={});var t={};e.webGL.dataUtilities.uint16={storedPixelDataToImageData:i},t.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.0 + color.a*65536.0;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}",e.webGL.shaders.uint16=t}(cornerstone),function(e){"use strict";function i(e){for(var i=e.getPixelData(),t=new Uint8Array(i.length),r=0;r<i.length;r++)t[r]=parseInt(i[r],10);return t}e.webGL||(e.webGL={}),e.webGL.shaders||(e.webGL.shaders={}),e.webGL.dataUtilities||(e.webGL.dataUtilities={});var t={};e.webGL.dataUtilities.uint8={storedPixelDataToImageData:i},t.frag="precision mediump float;uniform sampler2D u_image;uniform float ww;uniform float wc;uniform float slope;uniform float intercept;uniform int invert;varying vec2 v_texCoord;void main() {vec4 color = texture2D(u_image, v_texCoord);float intensity = color.r*256.0;intensity = intensity * slope + intercept;float center0 = wc - 0.5;float width0 = max(ww, 1.0);intensity = (intensity - center0) / width0 + 0.5;intensity = clamp(intensity, 0.0, 1.0);gl_FragColor = vec4(intensity, intensity, intensity, 1.0);if (invert == 1)gl_FragColor.rgb = 1.0 - gl_FragColor.rgb;}",
e.webGL.shaders.uint8=t}(cornerstone),function(e){"use strict";function i(e){if(void 0===e)throw"setMaximumSizeBytes: parameter numBytes must not be undefined";if(void 0===e.toFixed)throw"setMaximumSizeBytes: parameter numBytes must be a number";u=e,t()}function t(){function i(e,i){return e.timeStamp>i.timeStamp?-1:e.timeStamp<i.timeStamp?1:0}if(!(c<=u)){for(l.sort(i);c>u;){var t=l[l.length-1];c-=t.sizeInBytes,delete f[t.imageId],l.pop(),$(e).trigger("CornerstoneWebGLTextureRemoved",{imageId:t.imageId})}var r=e.imageCache.getCacheInfo();console.log("CornerstoneWebGLTextureCacheFull"),$(e).trigger("CornerstoneWebGLTextureCacheFull",r)}}function r(e,i){var r=e.imageId;if(void 0===e)throw"putImageTexture: image must not be undefined";if(void 0===r)throw"putImageTexture: imageId must not be undefined";if(void 0===i)throw"putImageTexture: imageTexture must not be undefined";if(f.hasOwnProperty(r)===!0)throw"putImageTexture: imageId already in cache";var n={imageId:r,imageTexture:i,timeStamp:new Date,sizeInBytes:i.sizeInBytes};if(f[r]=n,l.push(n),void 0===i.sizeInBytes)throw"putImageTexture: imageTexture does not have sizeInBytes property or";if(void 0===i.sizeInBytes.toFixed)throw"putImageTexture: imageTexture.sizeInBytes is not a number";c+=n.sizeInBytes,t()}function n(e){if(void 0===e)throw"getImageTexture: imageId must not be undefined";var i=f[e];if(void 0!==i)return i.timeStamp=new Date,i.imageTexture}function a(e){if(void 0===e)throw"removeImageTexture: imageId must not be undefined";var i=f[e];if(void 0===i)throw"removeImageTexture: imageId must not be undefined";return l.splice(l.indexOf(i),1),c-=i.sizeInBytes,delete f[e],i.imageTexture}function o(){return{maximumSizeInBytes:u,cacheSizeInBytes:c,numberOfImagesCached:l.length}}function s(){for(;l.length>0;){var e=l.pop();delete f[e.imageId]}c=0}var f={},l=[],u=268435456,c=0;e.webGL.textureCache={putImageTexture:r,getImageTexture:n,removeImageTexture:a,setMaximumSizeBytes:i,getCacheInfo:o,purgeCache:s,cachedImages:l}}(cornerstone),function(e){"use strict";e.webGL||(e.webGL={}),e.webGL.vertexShader="attribute vec2 a_position;attribute vec2 a_texCoord;uniform vec2 u_resolution;varying vec2 v_texCoord;void main() {vec2 zeroToOne = a_position / u_resolution;vec2 zeroToTwo = zeroToOne * 2.0;vec2 clipSpace = zeroToTwo - 1.0;gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1);v_texCoord = a_texCoord;}"}(cornerstone);var cornerstoneMath=function(e){"use strict";return void 0===e&&(e={}),e.Vector3=function(e,i,t){this.x=e||0,this.y=i||0,this.z=t||0},e.Vector3.prototype={constructor:e.Vector3,set:function(e,i,t){return this.x=e,this.y=i,this.z=t,this},setX:function(e){return this.x=e,this},setY:function(e){return this.y=e,this},setZ:function(e){return this.z=e,this},setComponent:function(e,i){switch(e){case 0:this.x=i;break;case 1:this.y=i;break;case 2:this.z=i;break;default:throw new Error("index is out of range: "+e)}},getComponent:function(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+e)}},copy:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this},add:function(e,i){return void 0!==i?(console.warn("DEPRECATED: Vector3's .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(e,i)):(this.x+=e.x,this.y+=e.y,this.z+=e.z,this)},addScalar:function(e){return this.x+=e,this.y+=e,this.z+=e,this},addVectors:function(e,i){return this.x=e.x+i.x,this.y=e.y+i.y,this.z=e.z+i.z,this},sub:function(e,i){return void 0!==i?(console.warn("DEPRECATED: Vector3's .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(e,i)):(this.x-=e.x,this.y-=e.y,this.z-=e.z,this)},subVectors:function(e,i){return this.x=e.x-i.x,this.y=e.y-i.y,this.z=e.z-i.z,this},multiply:function(e,i){return void 0!==i?(console.warn("DEPRECATED: Vector3's .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(e,i)):(this.x*=e.x,this.y*=e.y,this.z*=e.z,this)},multiplyScalar:function(e){return this.x*=e,this.y*=e,this.z*=e,this},multiplyVectors:function(e,i){return this.x=e.x*i.x,this.y=e.y*i.y,this.z=e.z*i.z,this},applyAxisAngle:function(){var i;return function(t,r){return void 0===i&&(i=new e.Quaternion),this.applyQuaternion(i.setFromAxisAngle(t,r)),this}}(),applyMatrix3:function(e){var i=this.x,t=this.y,r=this.z,n=e.elements;return this.x=n[0]*i+n[3]*t+n[6]*r,this.y=n[1]*i+n[4]*t+n[7]*r,this.z=n[2]*i+n[5]*t+n[8]*r,this},applyMatrix4:function(e){var i=this.x,t=this.y,r=this.z,n=e.elements;return this.x=n[0]*i+n[4]*t+n[8]*r+n[12],this.y=n[1]*i+n[5]*t+n[9]*r+n[13],this.z=n[2]*i+n[6]*t+n[10]*r+n[14],this},applyProjection:function(e){var i=this.x,t=this.y,r=this.z,n=e.elements,a=1/(n[3]*i+n[7]*t+n[11]*r+n[15]);return this.x=(n[0]*i+n[4]*t+n[8]*r+n[12])*a,this.y=(n[1]*i+n[5]*t+n[9]*r+n[13])*a,this.z=(n[2]*i+n[6]*t+n[10]*r+n[14])*a,this},applyQuaternion:function(e){var i=this.x,t=this.y,r=this.z,n=e.x,a=e.y,o=e.z,s=e.w,f=s*i+a*r-o*t,l=s*t+o*i-n*r,u=s*r+n*t-a*i,c=-n*i-a*t-o*r;return this.x=f*s+c*-n+l*-o-u*-a,this.y=l*s+c*-a+u*-n-f*-o,this.z=u*s+c*-o+f*-a-l*-n,this},transformDirection:function(e){var i=this.x,t=this.y,r=this.z,n=e.elements;return this.x=n[0]*i+n[4]*t+n[8]*r,this.y=n[1]*i+n[5]*t+n[9]*r,this.z=n[2]*i+n[6]*t+n[10]*r,this.normalize(),this},divide:function(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this},divideScalar:function(e){if(0!==e){var i=1/e;this.x*=i,this.y*=i,this.z*=i}else this.x=0,this.y=0,this.z=0;return this},min:function(e){return this.x>e.x&&(this.x=e.x),this.y>e.y&&(this.y=e.y),this.z>e.z&&(this.z=e.z),this},max:function(e){return this.x<e.x&&(this.x=e.x),this.y<e.y&&(this.y=e.y),this.z<e.z&&(this.z=e.z),this},clamp:function(e,i){return this.x<e.x?this.x=e.x:this.x>i.x&&(this.x=i.x),this.y<e.y?this.y=e.y:this.y>i.y&&(this.y=i.y),this.z<e.z?this.z=e.z:this.z>i.z&&(this.z=i.z),this},clampScalar:function(){var i,t;return function(r,n){return void 0===i&&(i=new e.Vector3,t=new e.Vector3),i.set(r,r,r),t.set(n,n,n),this.clamp(i,t)}}(),floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this},negate:function(){return this.multiplyScalar(-1)},dot:function(e){return this.x*e.x+this.y*e.y+this.z*e.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},lengthManhattan:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length())},setLength:function(e){var i=this.length();return 0!==i&&e!==i&&this.multiplyScalar(e/i),this},lerp:function(e,i){return this.x+=(e.x-this.x)*i,this.y+=(e.y-this.y)*i,this.z+=(e.z-this.z)*i,this},cross:function(e,i){if(void 0!==i)return console.warn("DEPRECATED: Vector3's .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(e,i);var t=this.x,r=this.y,n=this.z;return this.x=r*e.z-n*e.y,this.y=n*e.x-t*e.z,this.z=t*e.y-r*e.x,this},crossVectors:function(e,i){var t=e.x,r=e.y,n=e.z,a=i.x,o=i.y,s=i.z;return this.x=r*s-n*o,this.y=n*a-t*s,this.z=t*o-r*a,this},projectOnVector:function(){var i,t;return function(r){return void 0===i&&(i=new e.Vector3),i.copy(r).normalize(),t=this.dot(i),this.copy(i).multiplyScalar(t)}}(),projectOnPlane:function(){var i;return function(t){return void 0===i&&(i=new e.Vector3),i.copy(this).projectOnVector(t),this.sub(i)}}(),reflect:function(){var i;return function(t){return void 0===i&&(i=new e.Vector3),this.sub(i.copy(t).multiplyScalar(2*this.dot(t)))}}(),angleTo:function(i){var t=this.dot(i)/(this.length()*i.length());return Math.acos(e.clamp(t,-1,1))},distanceTo:function(e){return Math.sqrt(this.distanceToSquared(e))},distanceToSquared:function(e){var i=this.x-e.x,t=this.y-e.y,r=this.z-e.z;return i*i+t*t+r*r},setEulerFromRotationMatrix:function(e,i){console.error("REMOVED: Vector3's setEulerFromRotationMatrix has been removed in favor of Euler.setFromRotationMatrix(), please update your code.")},setEulerFromQuaternion:function(e,i){console.error("REMOVED: Vector3's setEulerFromQuaternion: has been removed in favor of Euler.setFromQuaternion(), please update your code.")},getPositionFromMatrix:function(e){return console.warn("DEPRECATED: Vector3's .getPositionFromMatrix() has been renamed to .setFromMatrixPosition(). Please update your code."),this.setFromMatrixPosition(e)},getScaleFromMatrix:function(e){return console.warn("DEPRECATED: Vector3's .getScaleFromMatrix() has been renamed to .setFromMatrixScale(). Please update your code."),this.setFromMatrixScale(e)},getColumnFromMatrix:function(e,i){return console.warn("DEPRECATED: Vector3's .getColumnFromMatrix() has been renamed to .setFromMatrixColumn(). Please update your code."),this.setFromMatrixColumn(e,i)},setFromMatrixPosition:function(e){return this.x=e.elements[12],this.y=e.elements[13],this.z=e.elements[14],this},setFromMatrixScale:function(e){var i=this.set(e.elements[0],e.elements[1],e.elements[2]).length(),t=this.set(e.elements[4],e.elements[5],e.elements[6]).length(),r=this.set(e.elements[8],e.elements[9],e.elements[10]).length();return this.x=i,this.y=t,this.z=r,this},setFromMatrixColumn:function(e,i){var t=4*e,r=i.elements;return this.x=r[t],this.y=r[t+1],this.z=r[t+2],this},equals:function(e){return e.x===this.x&&e.y===this.y&&e.z===this.z},fromArray:function(e){return this.x=e[0],this.y=e[1],this.z=e[2],this},toArray:function(){return[this.x,this.y,this.z]},clone:function(){return new e.Vector3(this.x,this.y,this.z)}},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";return void 0===e&&(e={}),e.Line3=function(i,t){this.start=void 0!==i?i:new e.Vector3,this.end=void 0!==t?t:new e.Vector3},e.Line3.prototype={constructor:e.Line3,set:function(e,i){return this.start.copy(e),this.end.copy(i),this},copy:function(e){return this.start.copy(e.start),this.end.copy(e.end),this},center:function(i){var t=i||new e.Vector3;return t.addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(i){var t=i||new e.Vector3;return t.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(i,t){var r=t||new e.Vector3;return this.delta(r).multiplyScalar(i).add(this.start)},closestPointToPointParameter:function(){var i=new e.Vector3,t=new e.Vector3;return function(r,n){i.subVectors(r,this.start),t.subVectors(this.end,this.start);var a=t.dot(t),o=t.dot(i),s=o/a;return n&&(s=e.Math.clamp(s,0,1)),s}}(),closestPointToPoint:function(i,t,r){var n=this.closestPointToPointParameter(i,t),a=r||new e.Vector3;return this.delta(a).multiplyScalar(n).add(this.start)},applyMatrix4:function(e){return this.start.applyMatrix4(e),this.end.applyMatrix4(e),this},equals:function(e){return e.start.equals(this.start)&&e.end.equals(this.end)},clone:function(){return(new e.Line3).copy(this)},intersectLine:function(e){var i=this.end.clone().sub(this.start),t=e.end.clone().sub(e.start),r=e.start.clone().sub(this.start),n=i.clone().cross(t),a=r.clone().cross(t);if(0!==r.dot(i)){var o=a.dot(n)/n.lengthSq();if(!(o>1||isNaN(o))){var s=this.start.clone().add(i.clone().multiplyScalar(o)),f=s.clone().sub(e.start).lengthSq()+s.clone().sub(e.end).lengthSq();return f<=e.distanceSq()?s:void 0}}}},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";function i(e){return e*e}function t(e,t){return i(e.x-t.x)+i(e.y-t.y)}function r(e,i){var r=t(e.start,e.end);if(0===r)return t(i,e.start);var n=((i.x-e.start.x)*(e.end.x-e.start.x)+(i.y-e.start.y)*(e.end.y-e.start.y))/r;if(n<0)return t(i,e.start);if(n>1)return t(i,e.end);var a={x:e.start.x+n*(e.end.x-e.start.x),y:e.start.y+n*(e.end.y-e.start.y)};return t(i,a)}function n(e,i){return Math.sqrt(r(e,i))}function a(i,t){var r={},n=i.start.x,a=i.start.y,o=i.end.x,s=i.end.y,f=t.start.x,l=t.start.y,u=t.end.x,c=t.end.y,d,h,m,b,v,w,p,g,k,_,y,T;if(d=s-a,m=n-o,v=o*a-n*s,k=d*f+m*l+v,_=d*u+m*c+v,(0===k||0===_||e.sign(k)!==e.sign(_))&&(h=c-l,b=f-u,w=u*l-f*c,p=h*n+b*a+w,g=h*o+b*s+w,0===p||0===g||e.sign(p)!==e.sign(g))){y=d*b-h*m,T=m*w-b*v;var M=parseFloat(T/y);T=h*v-d*w;var C=parseFloat(T/y);return r.x=M,r.y=C,r}}return void 0===e&&(e={}),e.lineSegment={distanceToPoint:n,intersectLine:a},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";function i(e,i,t){return e<i?i:e>t?t:e}function t(e){var i=Math.PI/180;return e*i}function r(e){var i=180/Math.PI;return e*i}function n(e){return"number"==typeof e?e?e<0?-1:1:e===e?0:NaN:NaN}return void 0===e&&(e={}),e.clamp=i,e.degToRad=t,e.radToDeg=r,e.sign=n,e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";return void 0===e&&(e={}),e.Matrix4=function e(i,t,r,n,a,o,s,f,l,u,c,d,h,m,b,v){this.elements=new Float32Array(16);var w=this.elements;w[0]=void 0!==i?i:1,w[4]=t||0,w[8]=r||0,w[12]=n||0,w[1]=a||0,w[5]=void 0!==o?o:1,w[9]=s||0,w[13]=f||0,w[2]=l||0,w[6]=u||0,w[10]=void 0!==c?c:1,w[14]=d||0,w[3]=h||0,w[7]=m||0,w[11]=b||0,w[15]=void 0!==v?v:1},e.Matrix4.prototype.makeRotationFromQuaternion=function(e){var i=this.elements,t=e.x,r=e.y,n=e.z,a=e.w,o=t+t,s=r+r,f=n+n,l=t*o,u=t*s,c=t*f,d=r*s,h=r*f,m=n*f,b=a*o,v=a*s,w=a*f;return i[0]=1-(d+m),i[4]=u-w,i[8]=c+v,i[1]=u+w,i[5]=1-(l+m),i[9]=h-b,i[2]=c-v,i[6]=h+b,i[10]=1-(l+d),i[3]=0,i[7]=0,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,this},e.Matrix4.prototype.multiplyMatrices=function(e,i){var t=e.elements,r=i.elements,n=this.elements,a=t[0],o=t[4],s=t[8],f=t[12],l=t[1],u=t[5],c=t[9],d=t[13],h=t[2],m=t[6],b=t[10],v=t[14],w=t[3],p=t[7],g=t[11],k=t[15],_=r[0],y=r[4],T=r[8],M=r[12],C=r[1],x=r[5],E=r[9],S=r[13],A=r[2],P=r[6],I=r[10],L=r[14],D=r[3],R=r[7],O=r[11],B=r[15];return n[0]=a*_+o*C+s*A+f*D,n[4]=a*y+o*x+s*P+f*R,n[8]=a*T+o*E+s*I+f*O,n[12]=a*M+o*S+s*L+f*B,n[1]=l*_+u*C+c*A+d*D,n[5]=l*y+u*x+c*P+d*R,n[9]=l*T+u*E+c*I+d*O,n[13]=l*M+u*S+c*L+d*B,n[2]=h*_+m*C+b*A+v*D,n[6]=h*y+m*x+b*P+v*R,n[10]=h*T+m*E+b*I+v*O,n[14]=h*M+m*S+b*L+v*B,n[3]=w*_+p*C+g*A+k*D,n[7]=w*y+p*x+g*P+k*R,n[11]=w*T+p*E+g*I+k*O,n[15]=w*M+p*S+g*L+k*B,this},e.Matrix4.prototype.multiply=function(e,i){return void 0!==i?(console.warn("DEPRECATED: Matrix4's .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(e,i)):this.multiplyMatrices(this,e)},e.Matrix4.prototype.getInverse=function(e,i){var t=this.elements,r=e.elements,n=r[0],a=r[4],o=r[8],s=r[12],f=r[1],l=r[5],u=r[9],c=r[13],d=r[2],h=r[6],m=r[10],b=r[14],v=r[3],w=r[7],p=r[11],g=r[15];t[0]=u*b*w-c*m*w+c*h*p-l*b*p-u*h*g+l*m*g,t[4]=s*m*w-o*b*w-s*h*p+a*b*p+o*h*g-a*m*g,t[8]=o*c*w-s*u*w+s*l*p-a*c*p-o*l*g+a*u*g,t[12]=s*u*h-o*c*h-s*l*m+a*c*m+o*l*b-a*u*b,t[1]=c*m*v-u*b*v-c*d*p+f*b*p+u*d*g-f*m*g,t[5]=o*b*v-s*m*v+s*d*p-n*b*p-o*d*g+n*m*g,t[9]=s*u*v-o*c*v-s*f*p+n*c*p+o*f*g-n*u*g,t[13]=o*c*d-s*u*d+s*f*m-n*c*m-o*f*b+n*u*b,t[2]=l*b*v-c*h*v+c*d*w-f*b*w-l*d*g+f*h*g,t[6]=s*h*v-a*b*v-s*d*w+n*b*w+a*d*g-n*h*g,t[10]=a*c*v-s*l*v+s*f*w-n*c*w-a*f*g+n*l*g,t[14]=s*l*d-a*c*d-s*f*h+n*c*h+a*f*b-n*l*b,t[3]=u*h*v-l*m*v-u*d*w+f*m*w+l*d*p-f*h*p,t[7]=a*m*v-o*h*v+o*d*w-n*m*w-a*d*p+n*h*p,t[11]=o*l*v-a*u*v-o*f*w+n*u*w+a*f*p-n*l*p,t[15]=a*u*d-o*l*d+o*f*h-n*u*h-a*f*m+n*l*m;var k=n*t[0]+f*t[4]+d*t[8]+v*t[12];if(0===k){var _="Matrix4.getInverse(): can't invert matrix, determinant is 0";if(i)throw new Error(_);return console.warn(_),this.identity(),this}return this.multiplyScalar(1/k),this},e.Matrix4.prototype.applyToVector3Array=function(){var i=new e.Vector3;return function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var n=0,a=t,o;n<r;n+=3,a+=3)i.x=e[a],i.y=e[a+1],i.z=e[a+2],i.applyMatrix4(this),e[a]=i.x,e[a+1]=i.y,e[a+2]=i.z;return e}},e.Matrix4.prototype.makeTranslation=function(e,i,t){return this.set(1,0,0,e,0,1,0,i,0,0,1,t,0,0,0,1),this},e.Matrix4.prototype.multiplyScalar=function(e){var i=this.elements;return i[0]*=e,i[4]*=e,i[8]*=e,i[12]*=e,i[1]*=e,i[5]*=e,i[9]*=e,i[13]*=e,i[2]*=e,i[6]*=e,i[10]*=e,i[14]*=e,i[3]*=e,i[7]*=e,i[11]*=e,i[15]*=e,this},e.Matrix4.prototype.set=function(e,i,t,r,n,a,o,s,f,l,u,c,d,h,m,b){var v=this.elements;return v[0]=e,v[4]=i,v[8]=t,v[12]=r,v[1]=n,v[5]=a,v[9]=o,v[13]=s,v[2]=f,v[6]=l,v[10]=u,v[14]=c,v[3]=d,v[7]=h,v[11]=m,v[15]=b,this},e.Matrix4.prototype.makeScale=function(e,i,t){return this.set(e,0,0,0,0,i,0,0,0,0,t,0,0,0,0,1),this},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";return void 0===e&&(e={}),e.Plane=function(i,t){this.normal=void 0!==i?i:new e.Vector3(1,0,0),this.constant=void 0!==t?t:0},e.Plane.prototype={constructor:e.Plane,set:function(e,i){return this.normal.copy(e),this.constant=i,this},setComponents:function(e,i,t,r){return this.normal.set(e,i,t),this.constant=r,this},setFromNormalAndCoplanarPoint:function(e,i){return this.normal.copy(e),this.constant=-i.dot(this.normal),this},setFromCoplanarPoints:function(){var i=new e.Vector3,t=new e.Vector3;return function(e,r,n){var a=i.subVectors(n,r).cross(t.subVectors(e,r)).normalize();return this.setFromNormalAndCoplanarPoint(a,e),this}}(),copy:function(e){return this.normal.copy(e.normal),this.constant=e.constant,this},normalize:function(){var e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this},negate:function(){return this.constant*=-1,this.normal.negate(),this},distanceToPoint:function(e){return this.normal.dot(e)+this.constant},distanceToSphere:function(e){return this.distanceToPoint(e.center)-e.radius},projectPoint:function(e,i){return this.orthoPoint(e,i).sub(e).negate()},orthoPoint:function(i,t){var r=this.distanceToPoint(i),n=t||new e.Vector3;return n.copy(this.normal).multiplyScalar(r)},isIntersectionLine:function(e){var i=this.distanceToPoint(e.start),t=this.distanceToPoint(e.end);return i<0&&t>0||t<0&&i>0},intersectLine:function(){var i=new e.Vector3;return function(t,r){var n=r||new e.Vector3,a=t.delta(i),o=this.normal.dot(a);if(0!==o){var s=-(t.start.dot(this.normal)+this.constant)/o;if(!(s<0||s>1))return n.copy(a).multiplyScalar(s).add(t.start)}else if(0===this.distanceToPoint(t.start))return n.copy(t.start)}}(),intersectPlane:function(i){var t=this.normal.clone().cross(i.normal),r=new e.Vector3,n={origin:r,direction:t};if(this.normal.clone().cross(i.normal).length<1e-10)return n.direction=new e.Vector3,n;var a=this.constant,o=i.constant,s=this.normal.clone().dot(i.normal),f=-(a-o*s)/(1-s*s),l=-(o-a*s)/(1-s*s);return n.origin=this.normal.clone().multiplyScalar(f).add(i.normal.clone().multiplyScalar(l)),n},coplanarPoint:function(i){var t=i||new e.Vector3;return t.copy(this.normal).multiplyScalar(-this.constant)},translate:function(e){return this.constant=this.constant-e.dot(this.normal),this},equals:function(e){return e.normal.equals(this.normal)&&e.constant==this.constant},clone:function(){return(new e.Plane).copy(this)}},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";function i(e){return{x:e.pageX,y:e.pageY}}function t(e,i){return{x:e.x-i.x,y:e.y-i.y}}function r(e){return{x:e.x,y:e.y}}function n(e,i){return Math.sqrt(a(e,i))}function a(e,i){var r=t(e,i);return r.x*r.x+r.y*r.y}function o(e,i){return!(e.x<i.left||e.x>i.left+i.width||e.y<i.top||e.y>i.top+i.height)}function s(i,t){var r=[],n;i.forEach(function(i,a){var o=e.point.distance(i,t);r.push(o),n=0===a?o:Math.min(o,n)});var a=r.indexOf(n);return i[a]}return void 0===e&&(e={}),e.point={subtract:t,copy:r,pageToPoint:i,distance:n,distanceSquared:a,insideRect:o,findClosestPoint:s},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";return void 0===e&&(e={}),e.Quaternion=function e(i,t,r,n){this.x=i||0,this.y=t||0,this.z=r||0,this.w=void 0!==n?n:1},e.Quaternion.prototype.setFromAxisAngle=function(e,i){var t=i/2,r=Math.sin(t);return this.x=e.x*r,this.y=e.y*r,this.z=e.z*r,this.w=Math.cos(t),this},e.Quaternion.prototype.multiplyQuaternions=function(e,i){var t=e.x,r=e.y,n=e.z,a=e.w,o=i.x,s=i.y,f=i.z,l=i.w;return this.x=t*l+a*o+r*f-n*s,this.y=r*l+a*s+n*o-t*f,this.z=n*l+a*f+t*s-r*o,this.w=a*l-t*o-r*s-n*f,this},e.Quaternion.prototype.setFromRotationMatrix=function(e){var i=e.elements,t=i[0],r=i[4],n=i[8],a=i[1],o=i[5],s=i[9],f=i[2],l=i[6],u=i[10],c=t+o+u,d;return c>0?(d=.5/Math.sqrt(c+1),this.w=.25/d,this.x=(l-s)*d,this.y=(n-f)*d,this.z=(a-r)*d):t>o&&t>u?(d=2*Math.sqrt(1+t-o-u),this.w=(l-s)/d,this.x=.25*d,this.y=(r+a)/d,this.z=(n+f)/d):o>u?(d=2*Math.sqrt(1+o-t-u),this.w=(n-f)/d,this.x=(r+a)/d,this.y=.25*d,this.z=(s+l)/d):(d=2*Math.sqrt(1+u-t-o),this.w=(a-r)/d,this.x=(n+f)/d,this.y=(s+l)/d,this.z=.25*d),this},e}(cornerstoneMath),cornerstoneMath=function(e){"use strict";function i(e){var i={start:{x:e.left,y:e.top},end:{x:e.left+e.width,y:e.top}},t={start:{x:e.left+e.width,y:e.top},end:{x:e.left+e.width,y:e.top+e.height}},r={start:{x:e.left+e.width,y:e.top+e.height},end:{x:e.left,y:e.top+e.height}},n={start:{x:e.left,y:e.top+e.height},end:{x:e.left,y:e.top}},a=[i,t,r,n];return a}function t(i,t,r){void 0===r&&(r=5);var n=e.lineSegment.distanceToPoint(t,i);return n<r}function r(t,r){var n=655535,a=i(t);return a.forEach(function(i){var t=e.lineSegment.distanceToPoint(i,r);t<n&&(n=t)}),n}function n(e){var i={topLeft:{x:e.left,y:e.top},bottomRight:{x:e.left+e.width,y:e.top+e.height}};return i}function a(e,i){var t,r,a=n(e),o=n(i);return t=e.width>=0?i.width>=0?!(a.bottomRight.x<=o.topLeft.x||o.bottomRight.x<=a.topLeft.x):!(a.bottomRight.x<=o.bottomRight.x||o.topLeft.x<=a.topLeft.x):i.width>=0?!(a.topLeft.x<=o.topLeft.x||o.bottomRight.x<=a.bottomRight.x):!(a.topLeft.x<=o.bottomRight.x||o.topLeft.x<=a.bottomRight.x),r=e.height>=0?i.height>=0?!(a.bottomRight.y<=o.topLeft.y||o.bottomRight.y<=a.topLeft.y):!(a.bottomRight.y<=o.bottomRight.y||o.topLeft.y<=a.topLeft.y):i.height>=0?!(a.topLeft.y<=o.topLeft.y||o.bottomRight.y<=a.bottomRight.y):!(a.topLeft.y<=o.bottomRight.y||o.top<=a.bottomRight.y),t&&r}function o(e,i){var t={topLeft:{},bottomRight:{}};if(a(e,i)){var r=n(e),o=n(i);return e.width>=0?i.width>=0?(t.topLeft.x=Math.max(r.topLeft.x,o.topLeft.x),t.bottomRight.x=Math.min(r.bottomRight.x,o.bottomRight.x)):(t.topLeft.x=Math.max(r.topLeft.x,o.bottomRight.x),t.bottomRight.x=Math.min(r.bottomRight.x,o.topLeft.x)):i.width>=0?(t.topLeft.x=Math.min(r.topLeft.x,o.bottomRight.x),t.bottomRight.x=Math.max(r.bottomRight.x,o.topLeft.x)):(t.topLeft.x=Math.min(r.topLeft.x,o.topLeft.x),t.bottomRight.x=Math.max(r.bottomRight.x,o.bottomRight.x)),e.height>=0?i.height>=0?(t.topLeft.y=Math.max(r.topLeft.y,o.topLeft.y),t.bottomRight.y=Math.min(r.bottomRight.y,o.bottomRight.y)):(t.topLeft.y=Math.max(r.topLeft.y,o.bottomRight.y),t.bottomRight.y=Math.min(r.bottomRight.y,o.topLeft.y)):i.height>=0?(t.topLeft.y=Math.min(r.topLeft.y,o.bottomRight.y),t.bottomRight.y=Math.max(r.bottomRight.y,o.topLeft.y)):(t.topLeft.y=Math.min(r.topLeft.y,o.topLeft.y),t.bottomRight.y=Math.max(r.bottomRight.y,o.bottomRight.y)),t}}return void 0===e&&(e={}),e.rect={distanceToPoint:r,getIntersectionRect:o},e}(cornerstoneMath);"undefined"==typeof cornerstone&&(cornerstone={}),"undefined"==typeof dicomParser&&(dicomParser={}),"undefined"==typeof cornerstoneTools&&(cornerstoneTools={referenceLines:{},orientation:{}}),function(e,i,t){"use strict";function r(t){clearTimeout(o),o=setTimeout(function(){var r=t.target.parentNode;if(t.deltaY){var n,a;void 0!==t.pageX&&void 0!==t.pageY&&(n=t.pageX,a=t.pageY);var o=i.pageToPixel(r,n,a),s,f=40,l=800;s=2===t.deltaMode?t.deltaY*l:1===t.deltaMode?t.deltaY*f:t.deltaY;var u=t.deltaY<0?-1:1,c={element:r,viewport:i.getViewport(r),image:i.getEnabledElement(r).image,direction:u,wheelDeltaPixels:s,pageX:n,pageY:a,imageX:o.x,imageY:o.y};e(r).trigger("CornerstoneToolsMouseWheel",c)}},s)}function n(e){a(e),t.addWheelListener(e,r)}function a(e){t.removeWheelListener(e,r)}var o,s=1;t.mouseWheelInput={enable:n,disable:a}}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(){c=!1}function a(i){e(i.element).trigger("CornerstoneToolsMouseDownActivate",i)}function o(n){var a=n.currentTarget,o="CornerstoneToolsMouseDoubleClick",s={page:t.point.pageToPoint(n),image:i.pageToPixel(a,n.pageX,n.pageY),client:{x:n.clientX,y:n.clientY}};s.canvas=i.pixelToCanvas(a,s.image);var f=r.copyPoints(s),l={event:n,which:n.which,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,startPoints:s,lastPoints:f,currentPoints:s,deltaPoints:{x:0,y:0},type:o},u=e.Event(o,l);e(l.element).trigger(u,l)}function s(o){function s(n){var a="CornerstoneToolsMouseDrag",o={page:t.point.pageToPoint(n),image:i.pageToPixel(u,n.pageX,n.pageY),client:{x:n.clientX,y:n.clientY}};o.canvas=i.pixelToCanvas(u,o.image);var s={page:t.point.subtract(o.page,v.page),image:t.point.subtract(o.image,v.image),client:t.point.subtract(o.client,v.client),canvas:t.point.subtract(o.canvas,v.canvas)},f={which:g,viewport:i.getViewport(u),image:i.getEnabledElement(u).image,element:u,startPoints:b,lastPoints:v,currentPoints:o,deltaPoints:s,type:a};return e(f.element).trigger(a,f),v=r.copyPoints(o),r.pauseEvent(n)}function l(r){clearTimeout(d);var n="CornerstoneToolsMouseUp";c&&(n="CornerstoneToolsMouseClick");var a={page:t.point.pageToPoint(r),image:i.pageToPixel(u,r.pageX,r.pageY),client:{x:r.clientX,y:r.clientY}};a.canvas=i.pixelToCanvas(u,a.image);var o={page:t.point.subtract(a.page,v.page),image:t.point.subtract(a.image,v.image),client:t.point.subtract(a.client,v.client),canvas:t.point.subtract(a.canvas,v.canvas)},h={event:r,which:g,viewport:i.getViewport(u),image:i.getEnabledElement(u).image,element:u,startPoints:b,lastPoints:v,currentPoints:a,deltaPoints:o,type:n},m=e.Event(n,h);e(h.element).trigger(m,h),e(document).off("mousemove",s),e(document).off("mouseup",l),e(h.element).on("mousemove",f),c=!0}d=setTimeout(n,h);var u=o.currentTarget,m="CornerstoneToolsMouseDown";e(u).off("mousemove",f);var b={page:t.point.pageToPoint(o),image:i.pageToPixel(u,o.pageX,o.pageY),client:{x:o.clientX,y:o.clientY}};b.canvas=i.pixelToCanvas(u,b.image);var v=r.copyPoints(b),w={event:o,which:o.which,viewport:i.getViewport(u),image:i.getEnabledElement(u).image,element:u,startPoints:b,lastPoints:v,currentPoints:b,deltaPoints:{x:0,y:0},type:m},p=e.Event(m,w);if(e(w.element).trigger(p,w),p.isImmediatePropagationStopped()===!1&&a(w)===!0)return r.pauseEvent(o);var g=o.which;return e(document).on("mousemove",s),e(document).on("mouseup",l),r.pauseEvent(o)}function f(n){var a=n.currentTarget,o="CornerstoneToolsMouseMove",s={page:t.point.pageToPoint(n),image:i.pageToPixel(a,n.pageX,n.pageY),client:{x:n.clientX,y:n.clientY}};s.canvas=i.pixelToCanvas(a,s.image);var f=r.copyPoints(s),l=n.which,u={page:t.point.pageToPoint(n),image:i.pageToPixel(a,n.pageX,n.pageY),client:{x:n.clientX,y:n.clientY}};u.canvas=i.pixelToCanvas(a,u.image);var c={page:t.point.subtract(u.page,f.page),image:t.point.subtract(u.image,f.image),client:t.point.subtract(u.client,f.client),canvas:t.point.subtract(u.canvas,f.canvas)},d={which:l,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,startPoints:s,lastPoints:f,currentPoints:u,deltaPoints:c,type:o};e(a).trigger(o,d),f=r.copyPoints(u)}function l(i){e(i).off("mousedown",s),e(i).off("mousemove",f),e(i).off("dblclick",o)}function u(i){l(i),e(i).on("mousedown",s),e(i).on("mousemove",f),e(i).on("dblclick",o)}var c,d,h=200;r.mouseInput={enable:u,disable:l}}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(n){console.log(n.type);var a=n.target.parentNode,o,_;switch(n.preventDefault(),(n.pointers&&n.pointers.length>1||n.originalEvent&&n.originalEvent.touches&&n.originalEvent.touches.length>1)&&(w=!1,clearTimeout(v)),n.type){case"tap":w=!1,clearTimeout(v),u={page:t.point.pageToPoint(n.pointers[0]),image:i.pageToPixel(a,n.pointers[0].pageX,n.pointers[0].pageY),client:{x:n.pointers[0].clientX,y:n.pointers[0].clientY}},u.canvas=i.pixelToCanvas(a,u.image),_="CornerstoneToolsTap",h={event:n,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,currentPoints:u,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h);break;case"doubletap":w=!1,clearTimeout(v),u={page:t.point.pageToPoint(n.pointers[0]),image:i.pageToPixel(a,n.pointers[0].pageX,n.pointers[0].pageY),client:{x:n.pointers[0].clientX,y:n.pointers[0].clientY}},u.canvas=i.pixelToCanvas(a,u.image),_="CornerstoneToolsDoubleTap",h={event:n,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,currentPoints:u,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h);break;case"pinchstart":w=!1,clearTimeout(v),s=1;break;case"pinchmove":if(w=!1,clearTimeout(v),k===!0){s=n.scale,k=!1;break}var y=(n.scale-s)/s;l={page:n.center,image:i.pageToPixel(a,n.center.x,n.center.y)},l.canvas=i.pixelToCanvas(a,l.image),_="CornerstoneToolsTouchPinch",h={event:n,startPoints:l,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,direction:n.scale<1?1:-1,scaleChange:y,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h),s=n.scale;break;case"touchstart":s=1,clearTimeout(v),clearTimeout(m),m=setTimeout(function(){l={page:t.point.pageToPoint(n.originalEvent.touches[0]),image:i.pageToPixel(a,n.originalEvent.touches[0].pageX,n.originalEvent.touches[0].pageY),client:{x:n.originalEvent.touches[0].clientX,y:n.originalEvent.touches[0].clientY}},l.canvas=i.pixelToCanvas(a,l.image),_="CornerstoneToolsTouchStart",n.originalEvent.touches.length>1&&(_="CornerstoneToolsMultiTouchStart"),h={event:n,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,startPoints:l,currentPoints:l,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h),o.isImmediatePropagationStopped()===!1&&(_="CornerstoneToolsTouchStartActive",n.originalEvent.touches.length>1&&(_="CornerstoneToolsMultiTouchStartActive"),h.type=_,e(a).trigger(_,h)),c=r.copyPoints(l)},50),w=!0,g=0,v=setTimeout(function(){w&&(u={page:t.point.pageToPoint(n.originalEvent.touches[0]),image:i.pageToPixel(a,n.originalEvent.touches[0].pageX,n.originalEvent.touches[0].pageY),client:{x:n.originalEvent.touches[0].clientX,y:n.originalEvent.touches[0].clientY}},u.canvas=i.pixelToCanvas(a,l.image),_="CornerstoneToolsTouchPress",h={event:n,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,currentPoints:u,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h))},b);break;case"touchend":s=1,w=!1,clearTimeout(v),setTimeout(function(){l={page:t.point.pageToPoint(n.originalEvent.changedTouches[0]),image:i.pageToPixel(a,n.originalEvent.changedTouches[0].pageX,n.originalEvent.changedTouches[0].pageY),client:{x:n.originalEvent.changedTouches[0].clientX,y:n.originalEvent.changedTouches[0].clientY}},l.canvas=i.pixelToCanvas(a,l.image),_="CornerstoneToolsTouchEnd",h={event:n,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,startPoints:l,currentPoints:l,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h)},50);break;case"panmove":u={page:t.point.pageToPoint(n.pointers[0]),image:i.pageToPixel(a,n.pointers[0].pageX,n.pointers[0].pageY),client:{x:n.pointers[0].clientX,y:n.pointers[0].clientY}},u.canvas=i.pixelToCanvas(a,u.image),d={page:t.point.subtract(u.page,c.page),image:t.point.subtract(u.image,c.image),client:t.point.subtract(u.client,c.client),canvas:t.point.subtract(u.canvas,c.canvas)},g+=Math.sqrt(d.page.x*d.page.x+d.page.y*d.page.y),g>p&&(w=!1,clearTimeout(v)),_="CornerstoneToolsTouchDrag",n.pointers.length>1&&(_="CornerstoneToolsMultiTouchDrag"),h={viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,startPoints:l,lastPoints:c,currentPoints:u,deltaPoints:d,numPointers:n.pointers.length,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h),c=r.copyPoints(u);break;case"panstart":u={page:t.point.pageToPoint(n.pointers[0]),image:i.pageToPixel(a,n.pointers[0].pageX,n.pointers[0].pageY),client:{x:n.pointers[0].clientX,y:n.pointers[0].clientY
}},u.canvas=i.pixelToCanvas(a,u.image),c=r.copyPoints(u);break;case"panend":if(w=!1,clearTimeout(v),!c)return!1;u={page:t.point.pageToPoint(n.pointers[0]),image:i.pageToPixel(a,n.pointers[0].pageX,n.pointers[0].pageY),client:{x:n.pointers[0].clientX,y:n.pointers[0].clientY}},u.canvas=i.pixelToCanvas(a,u.image),d={page:t.point.subtract(u.page,c.page),image:t.point.subtract(u.image,c.image),client:t.point.subtract(u.client,c.client),canvas:t.point.subtract(u.canvas,c.canvas)},_="CornerstoneToolsDragEnd",h={event:n.srcEvent,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,startPoints:l,lastPoints:c,currentPoints:u,deltaPoints:d,type:_,isTouchEvent:!0},o=e.Event(_,h),e(a).trigger(o,h);var T=n.pointers.length-n.changedPointers.length;return 2===T&&(k=!0),r.pauseEvent(n);case"rotatemove":w=!1,clearTimeout(v);var M=n.rotation-f;f=n.rotation,_="CornerstoneToolsTouchRotate",h={event:n.srcEvent,viewport:i.getViewport(a),image:i.getEnabledElement(a).image,element:a,rotation:M,type:_},o=e.Event(_,h),e(a).trigger(o,h)}return!1}function a(i){o(i);var t={inputClass:Hammer.SUPPORT_POINTER_EVENTS?Hammer.PointerEventInput:Hammer.TouchInput},a=new Hammer.Manager(i,t),s={pointers:0,direction:Hammer.DIRECTION_ALL,threshold:0},f=new Hammer.Pan(s),l=new Hammer.Pinch({threshold:0}),u=new Hammer.Rotate({threshold:0});l.recognizeWith(f),l.recognizeWith(u),u.recognizeWith(f);var c=new Hammer.Tap({event:"doubletap",taps:2,interval:1500,threshold:50,posThreshold:50});c.recognizeWith(f),a.add([c,f,u,l]),a.on("tap doubletap panstart panmove panend pinchstart pinchmove rotatemove",n),r.preventGhostClick.enable(i),e(i).on("touchstart touchend",n),e(i).data("hammer",a)}function o(i){r.preventGhostClick.disable(i),e(i).off("touchstart touchend",n);var t=e(i).data("hammer");t&&t.off("tap doubletap panstart panmove panend pinchmove rotatemove",n)}var s=1,f=0,l,u,c,d,h,m,b=700,v,w=!1,p=5,g,k=!1;r.touchInput={enable:a,disable:o}}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(i){var t={},r={activate:function(t,r,n){e(t).off("CornerstoneToolsMouseDownActivate",i);var a={mouseButtonMask:r,options:n};e(t).on("CornerstoneToolsMouseDownActivate",a,i)},disable:function(t){e(t).off("CornerstoneToolsMouseDownActivate",i)},enable:function(t){e(t).off("CornerstoneToolsMouseDownActivate",i)},deactivate:function(t){e(t).off("CornerstoneToolsMouseDownActivate",i)},getConfiguration:function(){return t},setConfiguration:function(e){t=e}};return r}t.simpleMouseButtonTool=r}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(t){function n(n){var f=n.element,l=t.createNewMeasurement(n);if(l){var u={mouseButtonMask:n.which};r.addToolState(n.element,t.toolType,l),e(f).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),e(f).off("CornerstoneToolsMouseDown",t.mouseDownCallback||s),e(f).off("CornerstoneToolsMouseDownActivate",t.mouseDownActivateCallback||a),t.mouseDoubleClickCallback&&e(f).off("CornerstoneToolsMouseDoubleClick",t.mouseDoubleClickCallback),i.updateImage(f);var c;c=1===Object.keys(l.handles).length?r.moveHandle:r.moveNewHandle;var d;d=!(!t.options||void 0===t.options.preventHandleOutsideImage)&&t.options.preventHandleOutsideImage,c(n,t.toolType,l,l.handles.end,function(){l.active=!1,l.invalidated=!0,r.anyHandlesOutsideImage(n,l.handles)&&r.removeToolState(f,t.toolType,l),e(f).on("CornerstoneToolsMouseMove",u,t.mouseMoveCallback||o),e(f).on("CornerstoneToolsMouseDown",u,t.mouseDownCallback||s),e(f).on("CornerstoneToolsMouseDownActivate",u,t.mouseDownActivateCallback||a),t.mouseDoubleClickCallback&&e(f).on("CornerstoneToolsMouseDoubleClick",u,t.mouseDoubleClickCallback),i.updateImage(f)},d)}}function a(e,i){if(r.isMouseButtonEnabled(i.which,e.data.mouseButtonMask))return t.addNewMeasurement?t.addNewMeasurement(i):n(i),!1}function o(e,n){if(r.toolCoordinates.setCoords(n),0===n.which){var a=r.getToolState(n.element,t.toolType);if(a){for(var o=!1,s=0;s<a.data.length;s++){var f=n.currentPoints.canvas,l=a.data[s];r.handleActivator(n.element,l.handles,f)===!0&&(o=!0),(t.pointNearTool(n.element,l,f)&&!l.active||!t.pointNearTool(n.element,l,f)&&l.active)&&(l.active=!l.active,o=!0)}o===!0&&i.updateImage(n.element)}}}function s(n,a){function s(){f.invalidated=!0,r.anyHandlesOutsideImage(a,f.handles)&&r.removeToolState(l,t.toolType,f),i.updateImage(l),e(l).on("CornerstoneToolsMouseMove",a,t.mouseMoveCallback||o)}var f,l=a.element;if(r.isMouseButtonEnabled(a.which,n.data.mouseButtonMask)){var u=a.startPoints.canvas,c=r.getToolState(n.currentTarget,t.toolType);if(c){var d,h;for(h=!(!t.options||void 0===t.options.preventHandleOutsideImage)&&t.options.preventHandleOutsideImage,d=0;d<c.data.length;d++){f=c.data[d];var m=6,b=r.getHandleNearImagePoint(l,f.handles,u,m);if(b)return e(l).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),f.active=!0,r.moveHandle(a,t.toolType,f,b,s,h),n.stopImmediatePropagation(),!1}if(t.pointNearTool){var v=t.options||{deleteIfHandleOutsideImage:!0,preventHandleOutsideImage:!1};for(d=0;d<c.data.length;d++)if(f=c.data[d],f.active=!1,t.pointNearTool(l,f,u))return f.active=!0,e(l).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),r.moveAllHandles(n,f,c,t.toolType,v,s),n.stopImmediatePropagation(),!1}}}}function f(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),e(r).off("CornerstoneToolsMouseDown",t.mouseDownCallback||s),e(r).off("CornerstoneToolsMouseDownActivate",t.mouseDownActivateCallback||a),t.mouseDoubleClickCallback&&e(r).off("CornerstoneToolsMouseDoubleClick",t.mouseDoubleClickCallback),i.updateImage(r)}function l(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),e(r).off("CornerstoneToolsMouseDown",t.mouseDownCallback||s),e(r).off("CornerstoneToolsMouseDownActivate",t.mouseDownActivateCallback||a),t.mouseDoubleClickCallback&&e(r).off("CornerstoneToolsMouseDoubleClick",t.mouseDoubleClickCallback),e(r).on("CornerstoneImageRendered",t.onImageRendered),i.updateImage(r)}function u(r,n){var f={mouseButtonMask:n};e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),e(r).off("CornerstoneToolsMouseDown",t.mouseDownCallback||s),e(r).off("CornerstoneToolsMouseDownActivate",t.mouseDownActivateCallback||a),e(r).on("CornerstoneImageRendered",t.onImageRendered),e(r).on("CornerstoneToolsMouseMove",f,t.mouseMoveCallback||o),e(r).on("CornerstoneToolsMouseDown",f,t.mouseDownCallback||s),e(r).on("CornerstoneToolsMouseDownActivate",f,t.mouseDownActivateCallback||a),t.mouseDoubleClickCallback&&(e(r).off("CornerstoneToolsMouseDoubleClick",t.mouseDoubleClickCallback),e(r).on("CornerstoneToolsMouseDoubleClick",f,t.mouseDoubleClickCallback)),i.updateImage(r)}function c(r,n){var f={mouseButtonMask:n},l="CornerstoneToolsToolDeactivated",u={mouseButtonMask:n,toolType:t.toolType,type:l},c=e.Event(l,u);e(r).trigger(c,u),e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",t.mouseMoveCallback||o),e(r).off("CornerstoneToolsMouseDown",t.mouseDownCallback||s),e(r).off("CornerstoneToolsMouseDownActivate",t.mouseDownActivateCallback||a),e(r).on("CornerstoneImageRendered",t.onImageRendered),e(r).on("CornerstoneToolsMouseMove",f,t.mouseMoveCallback||o),e(r).on("CornerstoneToolsMouseDown",f,t.mouseDownCallback||s),t.mouseDoubleClickCallback&&(e(r).off("CornerstoneToolsMouseDoubleClick",t.mouseDoubleClickCallback),e(r).on("CornerstoneToolsMouseDoubleClick",f,t.mouseDoubleClickCallback)),i.updateImage(r)}function d(){return m}function h(e){m=e}var m={},b={enable:l,disable:f,activate:u,deactivate:c,getConfiguration:d,setConfiguration:h,mouseDownCallback:s,mouseMoveCallback:o,mouseDownActivateCallback:a};return t.pointNearTool&&(b.pointNearTool=t.pointNearTool),t.mouseDoubleClickCallback&&(b.mouseDoubleClickCallback=t.mouseDoubleClickCallback),t.addNewMeasurement&&(b.addNewMeasurement=t.addNewMeasurement),b}r.mouseButtonTool=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(t,n){function a(i){var a=t.createNewMeasurement(i);a&&(r.addToolState(i.element,t.toolType,a),e(i.element).off("CornerstoneToolsMouseMove",s),r.moveHandle(i,t.toolType,a,a.handles.end,function(){a.active=!1,r.anyHandlesOutsideImage(i,a.handles)&&r.removeToolState(i.element,t.toolType,a),e(i.element).on("CornerstoneToolsMouseMove",s)},n))}function o(e,i){if(r.isMouseButtonEnabled(i.which,e.data.mouseButtonMask))return a(i),!1}function s(e,n){if(r.toolCoordinates.setCoords(n),0===n.which){var a=r.getToolState(n.element,t.toolType);if(void 0!==a){for(var o=!1,s=n.currentPoints.canvas,f=0;f<a.data.length;f++){var l=a.data[f];r.handleActivator(n.element,l.handles,s)===!0&&(o=!0),(t.pointInsideRect(n.element,l,s)&&!l.active||!t.pointInsideRect(n.element,l,s)&&l.active)&&(l.active=!l.active,o=!0)}o===!0&&i.updateImage(n.element)}}}function f(a,o){function f(){l.active=!1,r.anyHandlesOutsideImage(o,l.handles)&&r.removeToolState(o.element,t.toolType,l),i.updateImage(o.element),e(o.element).on("CornerstoneToolsMouseMove",s)}var l;if(r.isMouseButtonEnabled(o.which,a.data.mouseButtonMask)){var u=o.startPoints.canvas,c=r.getToolState(a.currentTarget,t.toolType),d,h=25;if(void 0!==c)for(d=0;d<c.data.length;d++){l=c.data[d];var m=r.getHandleNearImagePoint(o.element,l.handles,u,h);if(void 0!==m)return e(o.element).off("CornerstoneToolsMouseMove",s),l.active=!0,r.moveHandle(o,t.toolType,l,m,f,n),a.stopImmediatePropagation(),!1}var b={deleteIfHandleOutsideImage:!0,preventHandleOutsideImage:n};if(void 0!==c&&void 0!==t.pointInsideRect)for(d=0;d<c.data.length;d++)if(l=c.data[d],t.pointInsideRect(o.element,l,u))return e(o.element).off("CornerstoneToolsMouseMove",s),r.moveAllHandles(a,l,c,t.toolType,b,f),e(o.element).on("CornerstoneToolsMouseMove",s),a.stopImmediatePropagation(),!1}}function l(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",s),e(r).off("CornerstoneToolsMouseDown",f),e(r).off("CornerstoneToolsMouseDownActivate",o),i.updateImage(r)}function u(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",s),e(r).off("CornerstoneToolsMouseDown",f),e(r).off("CornerstoneToolsMouseDownActivate",o),e(r).on("CornerstoneImageRendered",t.onImageRendered),i.updateImage(r)}function c(r,n){var a={mouseButtonMask:n};e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",s),e(r).off("CornerstoneToolsMouseDown",f),e(r).off("CornerstoneToolsMouseDownActivate",o),e(r).on("CornerstoneImageRendered",t.onImageRendered),e(r).on("CornerstoneToolsMouseMove",a,s),e(r).on("CornerstoneToolsMouseDown",a,f),e(r).on("CornerstoneToolsMouseDownActivate",a,o),i.updateImage(r)}function d(r,n){var a={mouseButtonMask:n};e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsMouseMove",s),e(r).off("CornerstoneToolsMouseDown",f),e(r).off("CornerstoneToolsMouseDownActivate",o),e(r).on("CornerstoneImageRendered",t.onImageRendered),e(r).on("CornerstoneToolsMouseMove",a,s),e(r).on("CornerstoneToolsMouseDown",a,f),i.updateImage(r)}var h={enable:u,disable:l,activate:c,deactivate:d};return h}r.mouseButtonRectangleTool=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(i){var t={},r={activate:function(t){e(t).off("CornerstoneToolsMouseWheel",i);var r={};e(t).on("CornerstoneToolsMouseWheel",r,i)},disable:function(t){e(t).off("CornerstoneToolsMouseWheel",i)},enable:function(t){e(t).off("CornerstoneToolsMouseWheel",i)},deactivate:function(t){e(t).off("CornerstoneToolsMouseWheel",i)},getConfiguration:function(){return t},setConfiguration:function(e){t=e}};return r}t.mouseWheelTool=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){var r="CornerstoneToolsTouchDrag";t&&t.fireOnTouchStart===!0&&(r+=" CornerstoneToolsTouchStart");var n={activate:function(n){e(n).off(r,i),t&&t.eventData?e(n).on(r,t.eventData,i):e(n).on(r,i),t&&t.activateCallback&&t.activateCallback(n)},disable:function(n){e(n).off(r,i),t&&t.disableCallback&&t.disableCallback(n)},enable:function(n){e(n).off(r,i),t&&t.enableCallback&&t.enableCallback(n)},deactivate:function(n){e(n).off(r,i),t&&t.deactivateCallback&&t.deactivateCallback(n)}};return n}t.touchDragTool=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i){var t={activate:function(t){e(t).off("CornerstoneToolsTouchPinch",i);var r={};e(t).on("CornerstoneToolsTouchPinch",r,i)},disable:function(t){e(t).off("CornerstoneToolsTouchPinch",i)},enable:function(t){e(t).off("CornerstoneToolsTouchPinch",i)},deactivate:function(t){e(t).off("CornerstoneToolsTouchPinch",i)}};return t}t.touchPinchTool=r}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){Object.keys(e).forEach(function(i){var t=e[i];t.active=!1})}function a(e){if(e)for(var i=0;i<e.data.length;i++){var t=e.data[i];t.active=!1,t.handles&&n(t.handles)}}function o(t){function n(n){var a=n.element,l=t.createNewMeasurement(n);if(l){if(r.addToolState(a,t.toolType,l),1===Object.keys(l.handles).length&&"CornerstoneToolsTap"===n.type)return l.active=!1,l.handles.end.active=!1,l.handles.end.highlight=!1,l.invalidated=!0,r.anyHandlesOutsideImage(n,l.handles)&&r.removeToolState(a,t.toolType,l),void i.updateImage(a);e(a).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(a).off("CornerstoneToolsTap",t.tapCallback||s),e(a).off("CornerstoneToolsTouchStart",t.touchStartCallback||f),i.updateImage(a),r.moveNewHandleTouch(n,t.toolType,l,l.handles.end,function(){l.active=!1,l.invalidated=!0,r.anyHandlesOutsideImage(n,l.handles)&&r.removeToolState(a,t.toolType,l),e(a).on("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(a).on("CornerstoneToolsTap",t.tapCallback||s),e(a).on("CornerstoneToolsTouchStart",t.touchStartCallback||f),i.updateImage(a)})}}function o(e,i){return t.addNewMeasurement?t.addNewMeasurement(i):n(i),!1}function s(n,f){function l(){a(d),r.anyHandlesOutsideImage(f,h.handles)&&r.removeToolState(u,t.toolType,h),i.updateImage(u),e(u).on("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(u).on("CornerstoneToolsTap",t.tapCallback||s)}var u=f.element,c=f.currentPoints.canvas,d=r.getToolState(n.currentTarget,t.toolType),h,m;if(a(d),d)for(m=0;m<d.data.length;m++){h=d.data[m];var b=25,v=r.getHandleNearImagePoint(u,h.handles,c,b);if(v)return e(u).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(u).off("CornerstoneToolsTap",t.tapCallback||s),h.active=!0,v.active=!0,i.updateImage(u),r.touchMoveHandle(n,t.toolType,h,v,l),n.stopImmediatePropagation(),!1}if(d&&t.pointNearTool)for(m=0;m<d.data.length;m++)if(h=d.data[m],t.pointNearTool(u,h,c))return e(u).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(u).off("CornerstoneToolsTap",t.tapCallback||s),h.active=!0,i.updateImage(u),r.touchMoveAllHandles(n,h,d,t.toolType,!0,l),n.stopImmediatePropagation(),!1;return t.touchDownActivateCallback?t.touchDownActivateCallback(n,f):o(n,f),!1}function f(n,a){function f(n,f){if(c.active=!1,c.invalidated=!0,r.anyHandlesOutsideImage(a,c.handles)&&r.removeToolState(a.element,t.toolType,c),i.updateImage(a.element),e(l).on("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(l).on("CornerstoneToolsTap",t.tapCallback||s),t.pressCallback&&e(l).on("CornerstoneToolsTouchPress",t.pressCallback),n&&"CornerstoneToolsTouchPress"===n.type){var u=e.Event(n.type,f);e(l).trigger(u,f)}}var l=a.element,u=a.startPoints.canvas,c,d=r.getToolState(n.currentTarget,t.toolType),h,m=28;if(d){for(h=0;h<d.data.length;h++){c=d.data[h];var b=r.getHandleNearImagePoint(a.element,c.handles,u,m);if(b)return e(l).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(l).off("CornerstoneToolsTap",t.tapCallback||s),t.pressCallback&&e(l).off("CornerstoneToolsTouchPress",t.pressCallback),c.active=!0,r.touchMoveHandle(n,t.toolType,c,b,f),n.stopImmediatePropagation(),!1}if(t.pointNearTool)for(h=0;h<d.data.length;h++)if(c=d.data[h],t.pointNearTool(a.element,c,u))return e(l).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(l).off("CornerstoneToolsTap",t.tapCallback||s),t.pressCallback&&e(l).off("CornerstoneToolsTouchPress",t.pressCallback),r.touchMoveAllHandles(n,c,d,t.toolType,!0,f),n.stopImmediatePropagation(),!1}}function l(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsTouchStart",t.touchStartCallback||f),e(r).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(r).off("CornerstoneToolsTap",t.tapCallback||s),t.doubleTapCallback&&e(r).off("CornerstoneToolsDoubleTap",t.doubleTapCallback),t.pressCallback&&e(r).off("CornerstoneToolsTouchPress",t.pressCallback),i.updateImage(r)}function u(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsTouchStart",t.touchStartCallback||f),e(r).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(r).off("CornerstoneToolsTap",t.tapCallback||s),e(r).on("CornerstoneImageRendered",t.onImageRendered),t.doubleTapCallback&&e(r).off("CornerstoneToolsDoubleTap",t.doubleTapCallback),t.pressCallback&&e(r).off("CornerstoneToolsTouchPress",t.pressCallback),i.updateImage(r)}function c(r){e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsTouchStart",t.touchStartCallback||f),e(r).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(r).off("CornerstoneToolsTap",t.tapCallback||s),e(r).on("CornerstoneImageRendered",t.onImageRendered),e(r).on("CornerstoneToolsTouchStart",t.touchStartCallback||f),e(r).on("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(r).on("CornerstoneToolsTap",t.tapCallback||s),t.doubleTapCallback&&(e(r).off("CornerstoneToolsDoubleTap",t.doubleTapCallback),e(r).on("CornerstoneToolsDoubleTap",t.doubleTapCallback)),t.pressCallback&&(e(r).off("CornerstoneToolsTouchPress",t.pressCallback),e(r).on("CornerstoneToolsTouchPress",t.pressCallback)),i.updateImage(r)}function d(r){var n="CornerstoneToolsToolDeactivated",a={toolType:t.toolType,type:n},l=e.Event(n,a);e(r).trigger(l,a),e(r).off("CornerstoneImageRendered",t.onImageRendered),e(r).off("CornerstoneToolsTouchStart",t.touchStartCallback||f),e(r).off("CornerstoneToolsTouchStartActive",t.touchDownActivateCallback||o),e(r).off("CornerstoneToolsTap",t.tapCallback||s),e(r).on("CornerstoneImageRendered",t.onImageRendered),t.doubleTapCallback&&e(r).off("CornerstoneToolsDoubleTap",t.doubleTapCallback),t.pressCallback&&e(r).off("CornerstoneToolsTouchPress",t.pressCallback),i.updateImage(r)}var h={enable:u,disable:l,activate:c,deactivate:d,touchStartCallback:t.touchStartCallback||f,touchDownActivateCallback:t.touchDownActivateCallback||o,tapCallback:t.tapCallback||s};return t.pointNearTool&&(h.pointNearTool=t.pointNearTool),t.doubleTapCallback&&(h.doubleTapCallback=t.doubleTapCallback),t.pressCallback&&(h.pressCallback=t.pressCallback),t.addNewMeasurement&&(h.addNewMeasurement=t.addNewMeasurement),h}r.touchTool=o}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i={visible:!0,active:!0,handles:{start:{x:e.currentPoints.image.x-20,y:e.currentPoints.image.y+10,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},start2:{x:e.currentPoints.image.x-20,y:e.currentPoints.image.y+10,highlight:!0,active:!1},end2:{x:e.currentPoints.image.x,y:e.currentPoints.image.y+20,highlight:!0,active:!1}}};return i}function a(e,r,n){var a={start:i.pixelToCanvas(e,r.handles.start),end:i.pixelToCanvas(e,r.handles.end)},o=t.lineSegment.distanceToPoint(a,n);return o<5||(a.start=i.pixelToCanvas(e,r.handles.start2),a.end=i.pixelToCanvas(e,r.handles.end2),o=t.lineSegment.distanceToPoint(a,n),o<5)}function o(e,t){var n=r.getToolState(e.currentTarget,s);if(void 0!==n){var a=t.canvasContext.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0);for(var o,f=r.toolStyle.getToolWidth(),l=r.textStyle.getFont(),u=r.angle.getConfiguration(),c=0;c<n.data.length;c++){a.save(),u&&u.shadow&&(a.shadowColor=u.shadowColor||"#000000",a.shadowOffsetX=u.shadowOffsetX||1,a.shadowOffsetY=u.shadowOffsetY||1);var d=n.data[c];o=d.active?r.toolColors.getActiveColor():r.toolColors.getToolColor(),a.beginPath(),a.strokeStyle=o,a.lineWidth=f;var h=i.pixelToCanvas(t.element,d.handles.start),m=i.pixelToCanvas(t.element,d.handles.end);a.moveTo(h.x,h.y),a.lineTo(m.x,m.y),h=i.pixelToCanvas(t.element,d.handles.start2),m=i.pixelToCanvas(t.element,d.handles.end2),a.moveTo(h.x,h.y),a.lineTo(m.x,m.y),a.stroke(),r.drawHandles(a,t,d.handles),a.fillStyle=o;var b=(Math.ceil(d.handles.start.x)-Math.ceil(d.handles.end.x))*t.image.columnPixelSpacing,v=(Math.ceil(d.handles.start.y)-Math.ceil(d.handles.end.y))*t.image.rowPixelSpacing,w=(Math.ceil(d.handles.start2.x)-Math.ceil(d.handles.end2.x))*t.image.columnPixelSpacing,p=(Math.ceil(d.handles.start2.y)-Math.ceil(d.handles.end2.y))*t.image.rowPixelSpacing,g=Math.acos(Math.abs((b*w+v*p)/(Math.sqrt(b*b+v*v)*Math.sqrt(w*w+p*p))));g*=180/Math.PI;var k=r.roundToDecimal(g,2),_="00B0",y=k.toString()+String.fromCharCode(parseInt(_,16)),T=(h.x+m.x)/2,M=(h.y+m.y)/2;a.font=l,r.drawTextBox(a,y,T,M,o),a.restore()}}}var s="angle";r.angle=r.mouseButtonTool({createNewMeasurement:n,onImageRendered:o,pointNearTool:a,toolType:s}),r.angleTouch=r.touchTool({createNewMeasurement:n,onImageRendered:o,pointNearTool:a,toolType:s})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){e(prompt("Enter your annotation:"))}function a(e,i,t){t(prompt("Change your annotation:"))}function o(t){function n(n){null!==n?a.text=n:r.removeToolState(t.element,h,a),a.active=!1,i.updateImage(t.element),e(t.element).on("CornerstoneToolsMouseMove",o,r.arrowAnnotate.mouseMoveCallback),e(t.element).on("CornerstoneToolsMouseDown",o,r.arrowAnnotate.mouseDownCallback),e(t.element).on("CornerstoneToolsMouseDownActivate",o,r.arrowAnnotate.mouseDownActivateCallback),e(t.element).on("CornerstoneToolsMouseDoubleClick",o,r.arrowAnnotate.mouseDoubleClickCallback)}var a=s(t),o={mouseButtonMask:t.which};r.addToolState(t.element,h,a),e(t.element).off("CornerstoneToolsMouseMove",r.arrowAnnotate.mouseMoveCallback),e(t.element).off("CornerstoneToolsMouseDown",r.arrowAnnotate.mouseDownCallback),e(t.element).off("CornerstoneToolsMouseDownActivate",r.arrowAnnotate.mouseDownActivateCallback),e(t.element).off("CornerstoneToolsMouseDoubleClick",r.arrowAnnotate.mouseDoubleClickCallback),i.updateImage(t.element),r.moveNewHandle(t,h,a,a.handles.end,function(){r.anyHandlesOutsideImage(t,a.handles)&&r.removeToolState(t.element,h,a);var e=r.arrowAnnotate.getConfiguration();void 0===a.text&&e.getTextCallback(n),i.updateImage(t.element)})}function s(e){var i={visible:!0,active:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};return i}function f(e,r,n){var a={start:i.pixelToCanvas(e,r.handles.start),end:i.pixelToCanvas(e,r.handles.end)},o=t.lineSegment.distanceToPoint(a,n);return o<25}function l(e,n){var a=r.getToolState(e.currentTarget,h);if(a){var o=n.enabledElement,s=n.canvasContext.canvas.getContext("2d");s.setTransform(1,0,0,1,0,0);for(var f,l=r.toolStyle.getToolWidth(),u=r.textStyle.getFont(),c=r.arrowAnnotate.getConfiguration(),d=0;d<a.data.length;d++){s.save(),c&&c.shadow&&(s.shadowColor=c.shadowColor||"#000000",s.shadowOffsetX=c.shadowOffsetX||1,s.shadowOffsetY=c.shadowOffsetY||1);var m=a.data[d];f=m.active?r.toolColors.getActiveColor():r.toolColors.getToolColor();var b=i.pixelToCanvas(n.element,m.handles.start),v=i.pixelToCanvas(n.element,m.handles.end);c.arrowFirst?r.drawArrow(s,v,b,f,l):r.drawArrow(s,b,v,f,l);var w={drawHandlesIfActive:c&&c.drawHandlesOnHover};if(c.drawHandles&&r.drawHandles(s,n,m.handles,f,w),m.text&&""!==m.text){s.font=u;var p=s.measureText(m.text).width+10,g=r.textStyle.getFontSize()+10,k=Math.max(p,g)/2+5;v.x<b.x&&(k=-k);var _;if(!m.handles.textBox.hasMoved){_=c.arrowFirst?{x:v.x-p/2+k,y:v.y-g/2}:{x:b.x-p/2-k,y:b.y-g/2};var y=i.internal.getTransform(o);y.invert();var T=y.transformPoint(_.x,_.y);m.handles.textBox.x=T.x,m.handles.textBox.y=T.y}_=i.pixelToCanvas(n.element,m.handles.textBox);var M=r.drawTextBox(s,m.text,_.x,_.y,f);if(m.handles.textBox.boundingBox=M,m.handles.textBox.hasMoved){var C={start:{},end:{}},x={x:(b.x+v.x)/2,y:(b.y+v.y)/2},E=[b,v,x];C.end.x=_.x,C.end.y=_.y,C.start=t.point.findClosestPoint(E,C.end);var S=[{x:M.left+M.width/2,y:M.top},{x:M.left,y:M.top+M.height/2},{x:M.left+M.width/2,y:M.top+M.height},{x:M.left+M.width,y:M.top+M.height/2}];C.end=t.point.findClosestPoint(S,C.start),s.beginPath(),s.strokeStyle=f,s.lineWidth=l,s.setLineDash([2,3]),s.moveTo(C.start.x,C.start.y),s.lineTo(C.end.x,C.end.y),s.stroke()}}s.restore()}}}function u(t){function n(t){null!==t?o.text=t:r.removeToolState(a,h,o),o.active=!1,i.updateImage(a),e(a).on("CornerstoneToolsTouchPress",r.arrowAnnotateTouch.pressCallback),e(a).on("CornerstoneToolsTouchStartActive",r.arrowAnnotateTouch.touchDownActivateCallback),e(a).on("CornerstoneToolsTap",r.arrowAnnotateTouch.tapCallback)}var a=t.element,o=s(t);r.addToolState(a,h,o),e(a).off("CornerstoneToolsTouchPress",r.arrowAnnotateTouch.pressCallback),e(a).off("CornerstoneToolsTouchStartActive",r.arrowAnnotateTouch.touchDownActivateCallback),e(a).off("CornerstoneToolsTap",r.arrowAnnotateTouch.tapCallback),i.updateImage(a),r.moveNewHandleTouch(t,h,o,o.handles.end,function(){i.updateImage(a),r.anyHandlesOutsideImage(t,o.handles)&&r.removeToolState(a,h,o);var e=r.arrowAnnotate.getConfiguration();void 0===o.text&&e.getTextCallback(n)})}function c(e,t){function n(e,t,n){n===!0?r.removeToolState(a,h,e):e.text=t,e.active=!1,i.updateImage(a)}var a=t.element,o;if(e.data&&e.data.mouseButtonMask&&!r.isMouseButtonEnabled(t.which,e.data.mouseButtonMask))return!1;var s=r.arrowAnnotate.getConfiguration(),l=t.currentPoints.canvas,u=r.getToolState(a,h);if(u)for(var c=0;c<u.data.length;c++)if(o=u.data[c],f(a,o,l)||r.pointInsideBoundingBox(o.handles.textBox,l))return o.active=!0,i.updateImage(a),s.changeTextCallback(o,t,n),e.stopImmediatePropagation(),!1}function d(t,n){function a(t,n,a){console.log("pressCallback doneChangingTextCallback"),a===!0?r.removeToolState(o,h,t):t.text=n,t.active=!1,i.updateImage(o),e(o).on("CornerstoneToolsTouchStart",r.arrowAnnotateTouch.touchStartCallback),e(o).on("CornerstoneToolsTouchStartActive",r.arrowAnnotateTouch.touchDownActivateCallback),e(o).on("CornerstoneToolsTap",r.arrowAnnotateTouch.tapCallback)}var o=n.element,s;if(t.data&&t.data.mouseButtonMask&&!r.isMouseButtonEnabled(n.which,t.data.mouseButtonMask))return!1;var l=r.arrowAnnotate.getConfiguration(),u=n.currentPoints.canvas,c=r.getToolState(o,h);if(!c)return!1;if(n.handlePressed)return e(o).off("CornerstoneToolsTouchStart",r.arrowAnnotateTouch.touchStartCallback),e(o).off("CornerstoneToolsTouchStartActive",r.arrowAnnotateTouch.touchDownActivateCallback),e(o).off("CornerstoneToolsTap",r.arrowAnnotateTouch.tapCallback),l.changeTextCallback(n.handlePressed,n,a),t.stopImmediatePropagation(),!1;for(var d=0;d<c.data.length;d++)if(s=c.data[d],f(o,s,u)||r.pointInsideBoundingBox(s.handles.textBox,u))return s.active=!0,i.updateImage(o),e(o).off("CornerstoneToolsTouchStart",r.arrowAnnotateTouch.touchStartCallback),e(o).off("CornerstoneToolsTouchStartActive",r.arrowAnnotateTouch.touchDownActivateCallback),e(o).off("CornerstoneToolsTap",r.arrowAnnotateTouch.tapCallback),l.changeTextCallback(s,n,a),t.stopImmediatePropagation(),!1;return!1}var h="arrowAnnotate",m={getTextCallback:n,changeTextCallback:a,drawHandles:!1,drawHandlesOnHover:!0,arrowFirst:!0};r.arrowAnnotate=r.mouseButtonTool({addNewMeasurement:o,createNewMeasurement:s,onImageRendered:l,pointNearTool:f,toolType:h,mouseDoubleClickCallback:c}),r.arrowAnnotate.setConfiguration(m),r.arrowAnnotateTouch=r.touchTool({addNewMeasurement:u,createNewMeasurement:s,onImageRendered:l,pointNearTool:f,toolType:h,pressCallback:d})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(r,n){r.stopImmediatePropagation();var a=t.getToolState(r.currentTarget,m);if(a){var o=r.currentTarget,s=i.getEnabledElement(o),f=s.image.imageId,l=t.metaData.get("imagePlane",f),u=n.currentPoints.image,c=t.imagePointToPatientPoint(u,l),d=a.data[0].synchronizationContext,h=d.getSourceElements();e.each(h,function(r,n){if(n!==o){var a=Number.MAX_VALUE,s=-1,f=t.getToolState(n,"stack");if(void 0!==f){var l=f.data[0];if(e.each(l.imageIds,function(e,i){var r=t.metaData.get("imagePlane",i),n=r.imagePositionPatient,o=r.rowCosines.clone(),f=r.columnCosines.clone(),l=f.clone().cross(o.clone()),u=Math.abs(l.clone().dot(n)-l.clone().dot(c));u<a&&(a=u,s=e)}),s!==l.currentImageIdIndex&&s!==-1&&void 0!==l.imageIds[s]){var u=t.loadHandlerManager.getStartLoadHandler(),d=t.loadHandlerManager.getEndLoadHandler(),h=t.loadHandlerManager.getErrorLoadingHandler();u&&u(n);var m;m=l.preventCache===!0?i.loadImage(l.imageIds[s]):i.loadAndCacheImage(l.imageIds[s]),m.then(function(e){var t=i.getViewport(n);l.currentImageIdIndex=s,i.displayImage(n,e,t),d&&d(n)},function(e){var i=l.imageIds[s];h&&h(n,i,e)})}}}})}}function n(i,t){e(t.element).off("CornerstoneToolsMouseDrag",o),e(t.element).off("CornerstoneToolsMouseUp",n)}function a(i,a){if(t.isMouseButtonEnabled(a.which,i.data.mouseButtonMask))return e(a.element).on("CornerstoneToolsMouseDrag",o),e(a.element).on("CornerstoneToolsMouseUp",n),r(i,a),!1}function o(e,i){return r(e,i),!1}function s(i,r,n){var o={mouseButtonMask:r},s=t.getToolState(i,m);s=[],t.addToolState(i,m,{synchronizationContext:n}),e(i).off("CornerstoneToolsMouseDown",a),e(i).on("CornerstoneToolsMouseDown",o,a)}function f(i){e(i).off("CornerstoneToolsMouseDown",a)}function l(i,t){e(t.element).off("CornerstoneToolsTouchDrag",c),e(t.element).off("CornerstoneToolsDragEnd",l)}function u(i,t){return e(t.element).on("CornerstoneToolsTouchDrag",c),e(t.element).on("CornerstoneToolsDragEnd",l),r(i,t),!1}function c(e,i){return r(e,i),!1}function d(i,r){var n=t.getToolState(i,m);n=[],t.addToolState(i,m,{synchronizationContext:r}),e(i).off("CornerstoneToolsTouchStart",u),e(i).on("CornerstoneToolsTouchStart",u)}function h(i){e(i).off("CornerstoneToolsTouchStart",u)}var m="crosshairs";t.crosshairs={activate:s,deactivate:f,enable:s,disable:f},t.crosshairsTouch={activate:d,deactivate:h,enable:d,disable:h}}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(t){var r={},n={disable:function(i){e(i).off("CornerstoneImageRendered",t)},enable:function(r){e(r).off("CornerstoneImageRendered",t),e(r).on("CornerstoneImageRendered",t),i.updateImage(r)},getConfiguration:function(){return r},setConfiguration:function(e){r=e}};return n}t.displayTool=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i){var t={activate:function(t){e(t).off("CornerstoneToolsDoubleTap",i);var r={};e(t).on("CornerstoneToolsDoubleTap",r,i)},disable:function(t){e(t).off("CornerstoneToolsDoubleTap",i)},enable:function(t){e(t).off("CornerstoneToolsDoubleTap",i)},deactivate:function(t){e(t).off("CornerstoneToolsDoubleTap",i)}};return t}t.doubleTapTool=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e){i.fitToWindow(e.element)}function n(e,i){return t.doubleTapZoom.strategy(i),!1}t.doubleTapZoom=t.doubleTapTool(n),t.doubleTapZoom.strategies={default:r},t.doubleTapZoom.strategy=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e){var r=i.getEnabledElement(e.element);i.updateImage(e.element);var n=r.canvas.getContext("2d");n.setTransform(1,0,0,1,0,0);var a=t.toolColors.getActiveColor(),o=t.textStyle.getFont(),s=t.textStyle.getFontSize(),f=t.dragProbe.getConfiguration();
n.save(),f&&f.shadow&&(n.shadowColor=f.shadowColor||"#000000",n.shadowOffsetX=f.shadowOffsetX||1,n.shadowOffsetY=f.shadowOffsetY||1);var l=Math.round(e.currentPoints.image.x),u=Math.round(e.currentPoints.image.y),c,d,h;if(!(l<0||u<0||l>=e.image.columns||u>=e.image.rows)){if(e.image.color)c=t.getRGBPixels(e.element,l,u,1,1),d=""+l+", "+u,h="R: "+c[0]+" G: "+c[1]+" B: "+c[2]+" A: "+c[3];else{c=i.getStoredPixels(e.element,l,u,1,1);var m=c[0],b=m*e.image.slope+e.image.intercept,v=t.calculateSUV(e.image,m);d=""+l+", "+u,h="SP: "+m+" MO: "+parseFloat(b.toFixed(3)),v&&(h+=" SUV: "+parseFloat(v.toFixed(3)))}var w={x:e.currentPoints.image.x+3,y:e.currentPoints.image.y-3},p=i.pixelToCanvas(e.element,w);n.font=o,n.fillStyle=a,t.drawTextBox(n,h,p.x,p.y+s+5,a),t.drawTextBox(n,d,p.x,p.y,a),n.restore()}}function n(e){var r=e.element,n=i.getEnabledElement(r),a=n.image;i.updateImage(r);var o=n.canvas.getContext("2d");o.setTransform(1,0,0,1,0,0);var s=t.toolColors.getActiveColor(),f=t.textStyle.getFont(),l=t.dragProbe.getConfiguration();o.save(),l&&l.shadow&&(o.shadowColor=l.shadowColor||"#000000",o.shadowOffsetX=l.shadowOffsetX||1,o.shadowOffsetY=l.shadowOffsetY||1);var u;u=e.isTouchEvent===!0?i.pageToPixel(r,e.currentPoints.page.x,e.currentPoints.page.y-4*t.textStyle.getFontSize()):i.pageToPixel(r,e.currentPoints.page.x,e.currentPoints.page.y-t.textStyle.getFontSize()/2);var c,d="";if(!(u.x<0||u.y<0||u.x>=a.columns||u.y>=a.rows)){if(a.color)c=t.getRGBPixels(r,u.x,u.y,1,1),d="R: "+c[0]+" G: "+c[1]+" B: "+c[2];else{c=i.getStoredPixels(r,u.x,u.y,1,1);var h=c[0],m=h*e.image.slope+e.image.intercept,b=t.calculateSUV(e.image,h),v="x00080060",w;e.image.data&&(w=e.image.data.string(v)),"CT"===w&&(d+="HU: "),d+=parseFloat(m.toFixed(2)),b&&(d+=" SUV: "+parseFloat(b.toFixed(2)))}var p=i.pixelToCanvas(r,u);o.font=f,o.fillStyle=s;var g,k=6,_=o.measureText(d).width;g=e.isTouchEvent===!0?{x:-_/2-5,y:-t.textStyle.getFontSize()-10-2*k}:{x:12,y:-(t.textStyle.getFontSize()+10)/2},o.beginPath(),o.strokeStyle=s,o.arc(p.x,p.y,k,0,2*Math.PI),o.stroke(),t.drawTextBox(o,d,p.x+g.x,p.y+g.y,s),o.restore()}}function a(t,r){e(r.element).off("CornerstoneToolsMouseDrag",s),e(r.element).off("CornerstoneToolsMouseUp",a),e(r.element).off("CornerstoneToolsMouseClick",a),i.updateImage(r.element)}function o(i,r){if(t.isMouseButtonEnabled(r.which,i.data.mouseButtonMask))return e(r.element).on("CornerstoneToolsMouseDrag",s),e(r.element).on("CornerstoneToolsMouseUp",a),e(r.element).on("CornerstoneToolsMouseClick",a),t.dragProbe.strategy(r),!1}function s(e,i){return t.dragProbe.strategy(i),!1}t.dragProbe=t.simpleMouseButtonTool(o),t.dragProbe.strategies={default:r,minimal:n},t.dragProbe.strategy=r;var f={fireOnTouchStart:!0};t.dragProbeTouch=t.touchDragTool(s,f)}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i={visible:!0,active:!0,invalidated:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};return i}function a(e,i){var t=e.width/2,r=e.height/2;if(t<=0||r<=0)return!1;var n={x:e.left+t,y:e.top+r},a={x:i.x-n.x,y:i.y-n.y},o=a.x*a.x/(t*t)+a.y*a.y/(r*r)<=1;return o}function o(e,i){for(var t=0,r=0,n=0,o=0,s=i.top;s<i.top+i.height;s++)for(var f=i.left;f<i.left+i.width;f++)a(i,{x:f,y:s})===!0&&(t+=e[o],r+=e[o]*e[o],n++),o++;if(0===n)return{count:n,mean:0,variance:0,stdDev:0};var l=t/n,u=r/n-l*l;return{count:n,mean:l,variance:u,stdDev:Math.sqrt(u)}}function s(e,t,r,n){var o=i.pixelToCanvas(e,t.handles.start),s=i.pixelToCanvas(e,t.handles.end),f={left:Math.min(o.x,s.x)+n/2,top:Math.min(o.y,s.y)+n/2,width:Math.abs(o.x-s.x)-n,height:Math.abs(o.y-s.y)-n},l={left:Math.min(o.x,s.x)-n/2,top:Math.min(o.y,s.y)-n/2,width:Math.abs(o.x-s.x)+n,height:Math.abs(o.y-s.y)+n},u=a(f,r),c=a(l,r);return!(!c||u)}function f(e,i,t){return s(e,i,t,15)}function l(e,i,t){return s(e,i,t,25)}function u(e){var i=e.toString().split(".");return i[0]=i[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),i.join(".")}function c(e,n){var a=r.getToolState(e.currentTarget,d);if(a){var s=n.image,f=n.element,l=r.toolStyle.getToolWidth(),c=r.ellipticalRoi.getConfiguration(),h=n.canvasContext.canvas.getContext("2d");h.setTransform(1,0,0,1,0,0);var m="x00080060",b;s.data&&(b=s.data.string(m));for(var v=0;v<a.data.length;v++){h.save();var w=a.data[v];c&&c.shadow&&(h.shadowColor=c.shadowColor||"#000000",h.shadowOffsetX=c.shadowOffsetX||1,h.shadowOffsetY=c.shadowOffsetY||1);var p=r.toolColors.getColorIfActive(w.active),g=i.pixelToCanvas(f,w.handles.start),k=i.pixelToCanvas(f,w.handles.end),_=Math.min(g.x,k.x),y=Math.min(g.y,k.y),T=Math.abs(g.x-k.x),M=Math.abs(g.y-k.y);if(h.beginPath(),h.strokeStyle=p,h.lineWidth=l,r.drawEllipse(h,_,y,T,M),h.closePath(),c&&c.drawHandlesOnHover)if(w.active===!0)r.drawHandles(h,n,w.handles,p);else{var C={drawHandlesIfActive:!0};r.drawHandles(h,n,w.handles,p,C)}else r.drawHandles(h,n,w.handles,p);var x,E,S;if(w.invalidated){var A={left:Math.min(w.handles.start.x,w.handles.end.x),top:Math.min(w.handles.start.y,w.handles.end.y),width:Math.abs(w.handles.start.x-w.handles.end.x),height:Math.abs(w.handles.start.y-w.handles.end.y)};if(!s.color){var P=i.getPixels(f,A.left,A.top,A.width,A.height);E=o(P,A),"PT"===b&&(S={mean:r.calculateSUV(s,(E.mean-s.intercept)/s.slope),stdDev:r.calculateSUV(s,(E.stdDev-s.intercept)/s.slope)}),E&&!isNaN(E.mean)&&(w.meanStdDev=E,w.meanStdDevSUV=S)}var I=s.columnPixelSpacing||1,L=s.rowPixelSpacing||1;x=Math.PI*(A.width*I/2)*(A.height*L/2),isNaN(x)||(w.area=x),w.invalidated=!1}else E=w.meanStdDev,S=w.meanStdDevSUV,x=w.area;var D=[];if(E&&E.mean){var R="";"CT"===b&&(R=" HU");var O="Mean: "+u(E.mean.toFixed(2))+R,B="StdDev: "+u(E.stdDev.toFixed(2))+R;if(S&&void 0!==S.mean){var N=" SUV: ";O+=N+u(S.mean.toFixed(2)),B+=N+u(S.stdDev.toFixed(2))}D.push(O),D.push(B)}if(x){var F=" mm"+String.fromCharCode(178);s.rowPixelSpacing&&s.columnPixelSpacing||(F=" pixels"+String.fromCharCode(178));var U="Area: "+u(x.toFixed(2))+F;D.push(U)}w.handles.textBox.hasMoved||(w.handles.textBox.x=Math.max(w.handles.start.x,w.handles.end.x),w.handles.textBox.y=(w.handles.start.y+w.handles.end.y)/2);var H=i.pixelToCanvas(f,w.handles.textBox),z={centering:{x:!1,y:!0}},j=r.drawTextBox(h,D,H.x,H.y,p,z);if(w.handles.textBox.boundingBox=j,w.handles.textBox.hasMoved){var Y={start:{},end:{x:H.x,y:H.y}},V=[{x:_+T/2,y:y},{x:_,y:y+M/2},{x:_+T/2,y:y+M},{x:_+T,y:y+M/2}];Y.start=t.point.findClosestPoint(V,Y.end);var q=[{x:j.left+j.width/2,y:j.top},{x:j.left,y:j.top+j.height/2},{x:j.left+j.width/2,y:j.top+j.height},{x:j.left+j.width,y:j.top+j.height/2}];Y.end=t.point.findClosestPoint(q,Y.start),h.beginPath(),h.strokeStyle=p,h.lineWidth=l,h.setLineDash([2,3]),h.moveTo(Y.start.x,Y.start.y),h.lineTo(Y.end.x,Y.end.y),h.stroke()}h.restore()}}}var d="ellipticalRoi";r.ellipticalRoi=r.mouseButtonTool({createNewMeasurement:n,onImageRendered:c,pointNearTool:f,toolType:d}),r.ellipticalRoiTouch=r.touchTool({createNewMeasurement:n,onImageRendered:c,pointNearTool:l,toolType:d})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var t=r.getToolState(e.element,g);if(void 0!==t){var n=r.freehand.getConfiguration(),a=t.data[n.currentTool],o={x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0,lines:[]};a.handles.length&&a.handles[n.currentHandle-1].lines.push(e.currentPoints.image),a.handles.push(o),n.currentHandle+=1,n.freehand=!1,i.updateImage(e.element)}}function a(e,n){var a=r.getToolState(e.element,g);if(void 0!==a){var o=a.data[n];if(void 0!==o.handles)for(var s=e.currentPoints.canvas,f=0;f<o.handles.length;f++){var l=i.pixelToCanvas(e.element,o.handles[f]);if(t.point.distance(l,s)<5)return f}}}function o(e){var i=r.getToolState(e.element,g);if(i)for(var t,n=0;n<i.data.length;n++)if(t=a(e,n),void 0!==t)return{handleNearby:t,toolIndex:n}}function s(t,n){e(n.element).off("CornerstoneToolsMouseUp",s);var a=r.getToolState(n.element,g);if(void 0!==a){var o=r.freehand.getConfiguration();n.event.shiftKey||(o.freehand=!1),i.updateImage(n.element)}}function f(e,t){var n=r.getToolState(t.element,g);if(n){var o=r.freehand.getConfiguration(),s=n.data[o.currentTool],f=Math.max(t.currentPoints.image.x,0);f=Math.min(f,t.image.width),o.mouseLocation.handles.start.x=f;var l=Math.max(t.currentPoints.image.y,0);l=Math.min(l,t.image.height),o.mouseLocation.handles.start.y=l;var u=o.currentHandle;if(o.modifying&&(s.active=!0,s.highlight=!0,s.handles[u].x=o.mouseLocation.handles.start.x,s.handles[u].y=o.mouseLocation.handles.start.y,u)){var c=s.handles[u-1].lines.length-1,d=s.handles[u-1].lines[c];d.x=o.mouseLocation.handles.start.x,d.y=o.mouseLocation.handles.start.y}if(o.freehand)s.handles[u-1].lines.push(t.currentPoints.image);else{var h=a(t,o.currentTool);void 0!==h&&h<s.handles.length-1&&(o.mouseLocation.handles.start.x=s.handles[h].x,o.mouseLocation.handles.start.y=s.handles[h].y)}i.updateImage(t.element)}}function l(i){e(i.element).on("CornerstoneToolsMouseMove",f),e(i.element).on("CornerstoneToolsMouseUp",s);var t={visible:!0,active:!0,handles:[]},n=r.freehand.getConfiguration();n.mouseLocation.handles.start.x=i.currentPoints.image.x,n.mouseLocation.handles.start.y=i.currentPoints.image.y,r.addToolState(i.element,g,t);var a=r.getToolState(i.element,g);n.currentTool=a.data.length-1}function u(t,n){var a=r.getToolState(t.element,g);if(a){var o=r.freehand.getConfiguration(),s=a.data[o.currentTool];s.active=!1,s.highlight=!1,void 0!==n&&s.handles[o.currentHandle-1].lines.push(s.handles[n]),o.modifying&&(o.modifying=!1),o.currentHandle=0,o.currentTool=-1,e(t.element).off("CornerstoneToolsMouseMove",f),i.updateImage(t.element)}}function c(i,t){if(r.isMouseButtonEnabled(t.which,i.data.mouseButtonMask)){var c=r.getToolState(t.element,g),d,h,m=r.freehand.getConfiguration(),b=m.currentTool;if(m.modifying)return void u(t);if(b<0){var v=o(t);v?(d=v.handleNearby,h=v.toolIndex,void 0!==d&&(e(t.element).on("CornerstoneToolsMouseMove",f),e(t.element).on("CornerstoneToolsMouseUp",s),m.modifying=!0,m.currentHandle=d,m.currentTool=h)):(l(t),n(t))}else b>=0&&c.data[b].active&&(d=a(t,b),void 0!==d?u(t,d):t.event.shiftKey?m.freehand=!0:n(t));return!1}}function d(e,t){var n=r.getToolState(e.currentTarget,g);if(void 0!==n){var a=r.freehand.getConfiguration(),o=t.canvasContext.canvas.getContext("2d");o.setTransform(1,0,0,1,0,0);for(var s,f=r.toolStyle.getToolWidth(),l=r.toolColors.getFillColor(),u=0;u<n.data.length;u++){o.save();var c=n.data[u];c.active?(s=r.toolColors.getActiveColor(),l=r.toolColors.getFillColor()):(s=r.toolColors.getToolColor(),l=r.toolColors.getToolColor());var d;if(c.handles.length)for(var h=0;h<c.handles.length;h++){d=c.handles[h];var m=i.pixelToCanvas(t.element,d);o.beginPath(),o.strokeStyle=s,o.lineWidth=f,o.moveTo(m.x,m.y);for(var b=0;b<c.handles[h].lines.length;b++){var v=i.pixelToCanvas(t.element,c.handles[h].lines[b]);o.lineTo(v.x,v.y),o.stroke()}var w=i.pixelToCanvas(t.element,a.mouseLocation.handles.start);h===c.handles.length-1&&(!c.active||a.freehand||a.modifying||(o.lineTo(w.x,w.y),o.stroke()))}var p={fill:l};c.active&&r.drawHandles(o,t,a.mouseLocation.handles,s,p),r.drawHandles(o,t,c.handles,s,p),o.restore()}}}function h(t){e(t).off("CornerstoneToolsMouseDown",c),e(t).off("CornerstoneToolsMouseUp",s),e(t).off("CornerstoneToolsMouseMove",f),e(t).off("CornerstoneImageRendered",d),e(t).on("CornerstoneImageRendered",d),i.updateImage(t)}function m(t){e(t).off("CornerstoneToolsMouseDown",c),e(t).off("CornerstoneToolsMouseUp",s),e(t).off("CornerstoneToolsMouseMove",f),e(t).off("CornerstoneImageRendered",d),i.updateImage(t)}function b(t,r){var n={mouseButtonMask:r};e(t).off("CornerstoneToolsMouseDown",n,c),e(t).off("CornerstoneToolsMouseUp",s),e(t).off("CornerstoneToolsMouseMove",f),e(t).off("CornerstoneImageRendered",d),e(t).on("CornerstoneImageRendered",d),e(t).on("CornerstoneToolsMouseDown",n,c),i.updateImage(t)}function v(t){e(t).off("CornerstoneToolsMouseDown",c),e(t).off("CornerstoneToolsMouseUp",s),e(t).off("CornerstoneToolsMouseMove",f),e(t).off("CornerstoneImageRendered",d),e(t).on("CornerstoneImageRendered",d),i.updateImage(t)}function w(){return k}function p(e){k=e}var g="freehand",k={mouseLocation:{handles:{start:{highlight:!0,active:!0}}},freehand:!1,modifying:!1,currentHandle:0,currentTool:-1};r.freehand={enable:h,disable:m,activate:b,deactivate:v,getConfiguration:w,setConfiguration:p}}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i=r.getToolState(e.event.currentTarget,f);if(!(i&&i.data&&i.data.length>0)){var t={visible:!0,active:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0}}};return t}}function a(e,t,r){var n=i.pixelToCanvas(e,t.handles.start),a=i.pixelToCanvas(e,t.handles.end),o={left:Math.min(n.x,a.x),top:Math.min(n.y,a.y),width:Math.abs(n.x-a.x),height:Math.abs(n.y-a.y)},s=!1;return r.x>=o.left&&r.x<=o.left+o.width&&r.y>=o.top&&r.y<=o.top+o.height&&(s=!0),s}function o(e,r,n){var a=i.pixelToCanvas(e,r.handles.start),o=i.pixelToCanvas(e,r.handles.end),s={left:Math.min(a.x,o.x),top:Math.min(a.y,o.y),width:Math.abs(a.x-o.x),height:Math.abs(a.y-o.y)},f=t.rect.distanceToPoint(s,n);return f<5}function s(e,t){var n=r.getToolState(e.currentTarget,f);if(void 0!==n){var a=t.canvasContext.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0);var o,s=r.toolStyle.getToolWidth();a.save();var l=n.data[0];if(l){o=l.active?r.toolColors.getActiveColor():r.toolColors.getToolColor();var u=i.pixelToCanvas(t.element,l.handles.start),c=i.pixelToCanvas(t.element,l.handles.end),d={left:Math.min(u.x,c.x),top:Math.min(u.y,c.y),width:Math.abs(u.x-c.x),height:Math.abs(u.y-c.y)};a.beginPath(),a.strokeStyle="transparent",a.rect(0,0,a.canvas.clientWidth,a.canvas.clientHeight),a.rect(d.width+d.left,d.top,-d.width,d.height),a.stroke(),a.fillStyle="rgba(0,0,0,0.7)",a.fill(),a.closePath(),a.beginPath(),a.strokeStyle=o,a.lineWidth=s,a.setLineDash([4]),a.strokeRect(d.left,d.top,d.width,d.height),a.setLineDash([]),r.drawHandles(a,t,l.handles,o),a.restore()}}}var f="highlight",l=!0;r.highlight=r.mouseButtonRectangleTool({createNewMeasurement:n,onImageRendered:s,pointNearTool:o,pointInsideRect:a,toolType:f},l),r.highlightTouch=r.touchTool({createNewMeasurement:n,onImageRendered:s,pointNearTool:o,pointInsideRect:a,toolType:f},l)}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(i){var t={},r={activate:function(t){e(t).off("CornerstoneToolsKeyDown",i),e(t).on("CornerstoneToolsKeyDown",i)},disable:function(t){e(t).off("CornerstoneToolsKeyDown",i)},enable:function(t){e(t).off("CornerstoneToolsKeyDown",i)},deactivate:function(t){e(t).off("CornerstoneToolsKeyDown",i)},getConfiguration:function(){return t},setConfiguration:function(e){t=e}};return r}t.keyboardTool=r}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i={visible:!0,active:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};return i}function a(e,r,n){var a={start:i.pixelToCanvas(e,r.handles.start),end:i.pixelToCanvas(e,r.handles.end)},o=t.lineSegment.distanceToPoint(a,n);return o<25}function o(e,n){var a=r.getToolState(e.currentTarget,s);if(a){var o=n.canvasContext.canvas.getContext("2d");o.setTransform(1,0,0,1,0,0);for(var f=r.toolStyle.getToolWidth(),l=r.length.getConfiguration(),u=0;u<a.data.length;u++){o.save(),l&&l.shadow&&(o.shadowColor=l.shadowColor||"#000000",o.shadowOffsetX=l.shadowOffsetX||1,o.shadowOffsetY=l.shadowOffsetY||1);var c=a.data[u],d=r.toolColors.getColorIfActive(c.active),h=i.pixelToCanvas(n.element,c.handles.start),m=i.pixelToCanvas(n.element,c.handles.end);o.beginPath(),o.strokeStyle=d,o.lineWidth=f,o.moveTo(h.x,h.y),o.lineTo(m.x,m.y),o.stroke();var b={drawHandlesIfActive:l&&l.drawHandlesOnHover};r.drawHandles(o,n,c.handles,d,b),o.fillStyle=d;var v=(c.handles.end.x-c.handles.start.x)*(n.image.columnPixelSpacing||1),w=(c.handles.end.y-c.handles.start.y)*(n.image.rowPixelSpacing||1),p=Math.sqrt(v*v+w*w);c.length=p;var g=" mm";n.image.rowPixelSpacing&&n.image.columnPixelSpacing||(g=" pixels");var k=""+p.toFixed(2)+g;if(!c.handles.textBox.hasMoved){var _={x:Math.max(c.handles.start.x,c.handles.end.x)};_.x===c.handles.start.x?_.y=c.handles.start.y:_.y=c.handles.end.y,c.handles.textBox.x=_.x,c.handles.textBox.y=_.y}var y=i.pixelToCanvas(n.element,c.handles.textBox);y.x+=10;var T={centering:{x:!1,y:!0}},M=r.drawTextBox(o,k,y.x,y.y,d,T);if(c.handles.textBox.boundingBox=M,c.handles.textBox.hasMoved){var C={start:{},end:{}},x={x:(h.x+m.x)/2,y:(h.y+m.y)/2},E=[h,m,x];C.end.x=y.x,C.end.y=y.y,C.start=t.point.findClosestPoint(E,C.end);var S=[{x:M.left+M.width/2,y:M.top},{x:M.left,y:M.top+M.height/2},{x:M.left+M.width/2,y:M.top+M.height},{x:M.left+M.width,y:M.top+M.height/2}];C.end=t.point.findClosestPoint(S,C.start),o.beginPath(),o.strokeStyle=d,o.lineWidth=f,o.setLineDash([2,3]),o.moveTo(C.start.x,C.start.y),o.lineTo(C.end.x,C.end.y),o.stroke()}o.restore()}}}var s="length";r.length=r.mouseButtonTool({createNewMeasurement:n,onImageRendered:o,pointNearTool:a,toolType:s}),r.lengthTouch=r.touchTool({createNewMeasurement:n,onImageRendered:o,pointNearTool:a,toolType:s})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){e(t.element).off("CornerstoneToolsMouseDrag",f),e(t.element).off("CornerstoneToolsMouseUp",r),e(t.element).off("CornerstoneToolsMouseClick",r),e(t.element).off("CornerstoneNewImage",o),n(t)}function n(i){e(i.element).find(".magnifyTool").hide(),document.body.style.cursor="default"}function a(i,n){if(t.isMouseButtonEnabled(n.which,i.data.mouseButtonMask))return e(n.element).on("CornerstoneToolsMouseDrag",n,f),e(n.element).on("CornerstoneToolsMouseUp",n,r),e(n.element).on("CornerstoneToolsMouseClick",n,r),g=n.currentPoints,e(n.element).on("CornerstoneNewImage",n,o),l(n),!1}function o(e,i){i.currentPoints=g,l(i)}function s(i,t){e(t.element).off("CornerstoneToolsDragEnd",s),e(t.element).off("CornerstoneToolsTouchEnd",s),e(t.element).off("CornerstoneNewImage",o),n(t)}function f(i,t){return g=t.currentPoints,l(t),t.isTouchEvent===!0&&(e(t.element).on("CornerstoneToolsDragEnd",s),e(t.element).on("CornerstoneToolsTouchEnd",s)),!1}function l(r){var n=e(r.element).find(".magnifyTool").get(0);n||u(r.element);var a=t.magnify.getConfiguration(),o=a.magnifySize,s=a.magnificationLevel,f=e(r.element).find("canvas").not(".magnifyTool").get(0),l=f.getContext("2d");l.setTransform(1,0,0,1,0,0);var c=n.getContext("2d");c.setTransform(1,0,0,1,0,0);var d=o/s,h=i.pixelToCanvas(r.element,r.currentPoints.image);r.isTouchEvent===!0&&(h.y-=1.25*d),h.x=Math.max(h.x,0),h.x=Math.min(h.x,f.width),h.y=Math.max(h.y,0),h.y=Math.min(h.y,f.height),c.clearRect(0,0,o,o),c.fillStyle="transparent",c.fillRect(0,0,o,o);var m={x:h.x-.5*d,y:h.y-.5*d};"Safari"===p&&(m.x=Math.max(m.x,0),m.y=Math.max(m.y,0)),m.x=Math.min(m.x,f.width),m.y=Math.min(m.y,f.height);var b={x:(f.width-m.x)*s,y:(f.height-m.y)*s};c.drawImage(f,m.x,m.y,f.width-m.x,f.height-m.y,0,0,b.x,b.y),n.style.top=h.y-.5*o+"px",n.style.left=h.x-.5*o+"px",n.style.display="block",document.body.style.cursor="none"}function u(i){if(0===e(i).find(".magnifyTool").length){var r=document.createElement("canvas");r.classList.add("magnifyTool");var n=t.magnify.getConfiguration();r.width=n.magnifySize,r.height=n.magnifySize,r.style.position="absolute",i.appendChild(r)}}function c(i){e(i).find(".magnifyTool").remove()}function d(i){e(i).off("CornerstoneToolsMouseDown",a),c(i)}function h(e){var i=t.magnify.getConfiguration(i);if(!p){var r=t.getBrowserInfo(),n=r.split(" ");p=n[0]}u(e)}function m(i,t){var r={mouseButtonMask:t};e(i).off("CornerstoneToolsMouseDown",a),e(i).on("CornerstoneToolsMouseDown",r,a),u(i)}function b(){return w}function v(e){w=e}var w={magnifySize:100,magnificationLevel:2},p,g;t.magnify={enable:h,activate:m,deactivate:d,disable:d,getConfiguration:b,setConfiguration:v};var k={fireOnTouchStart:!0,activateCallback:u,disableCallback:c};t.magnifyTouchDrag=t.touchDragTool(f,k)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){var r={},n="CornerstoneToolsMultiTouchDrag";t&&t.fireOnTouchStart===!0&&(n+=" CornerstoneToolsMultiTouchStart");var a={activate:function(r){e(r).off(n,i),t&&t.eventData?e(r).on(n,t.eventData,i):e(r).on(n,i),t&&t.activateCallback&&t.activateCallback(r)},disable:function(r){e(r).off(n,i),t&&t.disableCallback&&t.disableCallback(r)},enable:function(r){e(r).off(n,i),t&&t.enableCallback&&t.enableCallback(r)},deactivate:function(r){e(r).off(n,i),t&&t.deactivateCallback&&t.deactivateCallback(r)},getConfiguration:function(){return r},setConfiguration:function(e){r=e}};return a}t.multiTouchDragTool=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e){var r=i.getEnabledElement(e),n=t.metaData.get("imagePlane",r.image.imageId);if(n&&n.rowCosines&&n.columnCosines){var a=t.orientation.getOrientationString(n.rowCosines),o=t.orientation.getOrientationString(n.columnCosines),s=t.orientation.invertOrientationString(a),f=t.orientation.invertOrientationString(o);return{top:f,bottom:o,left:s,right:a}}}function n(e){var t=i.getEnabledElement(e),r;r={x:t.image.width/2,y:5};var n=i.pixelToCanvas(e,r);r={x:t.image.width/2,y:t.image.height-5};var a=i.pixelToCanvas(e,r);r={x:5,y:t.image.height/2};var o=i.pixelToCanvas(e,r);r={x:t.image.width-10,y:t.image.height/2};var s=i.pixelToCanvas(e,r);return{top:n,bottom:a,left:o,right:s}}function a(e,i){var a=i.element,o=r(a);if(o){var s=n(a,o),f=i.canvasContext.canvas.getContext("2d");f.setTransform(1,0,0,1,0,0);var l=t.toolColors.getToolColor(),u={top:f.measureText(o.top).width,left:f.measureText(o.left).width,right:f.measureText(o.right).width,bottom:f.measureText(o.bottom).width};t.drawTextBox(f,o.top,s.top.x-u.top/2,s.top.y,l),t.drawTextBox(f,o.left,s.left.x-u.left/2,s.left.y,l);var c=t.orientationMarkers.getConfiguration();c&&c.drawAllMarkers&&(t.drawTextBox(f,o.right,s.right.x-u.right/2,s.right.y,l),t.drawTextBox(f,o.bottom,s.bottom.x-u.bottom/2,s.bottom.y,l))}}t.orientationMarkers=t.displayTool(a)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){e(t.element).off("CornerstoneToolsMouseDrag",a),e(t.element).off("CornerstoneToolsMouseUp",r),e(t.element).off("CornerstoneToolsMouseClick",r)}function n(i,n){if(t.isMouseButtonEnabled(n.which,i.data.mouseButtonMask))return e(n.element).on("CornerstoneToolsMouseDrag",a),e(n.element).on("CornerstoneToolsMouseUp",r),e(n.element).on("CornerstoneToolsMouseClick",r),!1}function a(e,t){return t.viewport.translation.x+=t.deltaPoints.page.x/t.viewport.scale,t.viewport.translation.y+=t.deltaPoints.page.y/t.viewport.scale,i.setViewport(t.element,t.viewport),!1}t.pan=t.simpleMouseButtonTool(n),t.panTouchDrag=t.touchDragTool(a)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,r){var n=t.panMultiTouch.getConfiguration();if(n&&n.testPointers(r))return r.viewport.translation.x+=r.deltaPoints.page.x/r.viewport.scale,r.viewport.translation.y+=r.deltaPoints.page.y/r.viewport.scale,i.setViewport(r.element,r.viewport),!1}var n={testPointers:function(e){return e.numPointers>=2}};t.panMultiTouch=t.multiTouchDragTool(r),t.panMultiTouch.setConfiguration(n)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e){var i={visible:!0,active:!0,handles:{end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0}}};return i}function n(e,t,r){var n=i.pixelToCanvas(e,t.handles.end);return cornerstoneMath.point.distance(n,r)<5}function a(e,r){var n=t.getToolState(e.currentTarget,o);if(n){var a=r.canvasContext.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0);for(var s,f=t.textStyle.getFont(),l=t.textStyle.getFontSize(),u=0;u<n.data.length;u++){a.save();var c=n.data[u];s=c.active?t.toolColors.getActiveColor():t.toolColors.getToolColor(),t.drawHandles(a,r,c.handles,s);var d=Math.round(c.handles.end.x),h=Math.round(c.handles.end.y),m,b,v;if(d<0||h<0||d>=r.image.columns||h>=r.image.rows)return;if(r.image.color)b=""+d+", "+h,m=t.getRGBPixels(r.element,d,h,1,1),v="R: "+m[0]+" G: "+m[1]+" B: "+m[2];else{m=i.getStoredPixels(r.element,d,h,1,1);var w=m[0],p=w*r.image.slope+r.image.intercept,g=t.calculateSUV(r.image,w);b=""+d+", "+h,v="SP: "+w+" MO: "+parseFloat(p.toFixed(3)),g&&(v+=" SUV: "+parseFloat(g.toFixed(3)))}var k={x:c.handles.end.x+3,y:c.handles.end.y-3},_=i.pixelToCanvas(r.element,k);a.font=f,a.fillStyle=s,t.drawTextBox(a,v,_.x,_.y+l+5,s),t.drawTextBox(a,b,_.x,_.y,s),a.restore()}}}var o="probe";t.probe=t.mouseButtonTool({createNewMeasurement:r,onImageRendered:a,pointNearTool:n,toolType:o}),t.probeTouch=t.touchTool({createNewMeasurement:r,onImageRendered:a,pointNearTool:n,toolType:o})}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i={visible:!0,active:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0}}};return i}function a(e,r,n){var a=i.pixelToCanvas(e,r.handles.start),o=i.pixelToCanvas(e,r.handles.end),s={left:Math.min(a.x,o.x),top:Math.min(a.y,o.y),width:Math.abs(a.x-o.x),height:Math.abs(a.y-o.y)},f=t.rect.distanceToPoint(s,n);return f<5}function o(e,i){for(var t=0,r=0,n=0,a=0,o=i.top;o<i.top+i.height;o++)for(var s=i.left;s<i.left+i.width;s++)t+=e[a],r+=e[a]*e[a],n++,a++;if(0===n)return{count:n,mean:0,variance:0,stdDev:0};var f=t/n,l=r/n-f*f;return{count:n,mean:f,variance:l,stdDev:Math.sqrt(l)}}function s(e,t){var n=r.getToolState(e.currentTarget,f);if(void 0!==n){var a=t.canvasContext.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0);for(var s,l=r.toolStyle.getToolWidth(),u=r.textStyle.getFont(),c=r.textStyle.getFontSize(),d=r.rectangleRoi.getConfiguration(),h=0;h<n.data.length;h++){a.save();var m=n.data[h];d&&d.shadow&&(a.shadowColor=d.shadowColor||"#000000",a.shadowOffsetX=d.shadowOffsetX||1,a.shadowOffsetY=d.shadowOffsetY||1),s=m.active?r.toolColors.getActiveColor():r.toolColors.getToolColor();var b=i.pixelToCanvas(t.element,m.handles.start),v=i.pixelToCanvas(t.element,m.handles.end),w=Math.abs(b.x-v.x),p=Math.abs(b.y-v.y),g=Math.min(b.x,v.x),k=Math.min(b.y,v.y),_=(b.x+v.x)/2,y=(b.y+v.y)/2;a.beginPath(),a.strokeStyle=s,a.lineWidth=l,a.rect(g,k,w,p),a.stroke(),r.drawHandles(a,t,m.handles,s);var T=Math.abs(m.handles.start.x-m.handles.end.x),M=Math.abs(m.handles.start.y-m.handles.end.y),C=Math.min(m.handles.start.x,m.handles.end.x),x=Math.min(m.handles.start.y,m.handles.end.y),E=i.getPixels(t.element,C,x,T,M),S={left:C,top:x,width:T,height:M},A=o(E,S),P=T*t.image.columnPixelSpacing*(M*t.image.rowPixelSpacing),I="Area: "+P.toFixed(2)+" mm^2";a.font=u;var L=a.measureText(P),D=_<t.image.columns/2?_+w/2:_-w/2-L.width,R=y<t.image.rows/2?y+p/2:y-p/2;a.fillStyle=s,r.drawTextBox(a,"Mean: "+A.mean.toFixed(2),D,R-c-5,s),r.drawTextBox(a,"StdDev: "+A.stdDev.toFixed(2),D,R,s),r.drawTextBox(a,I,D,R+c+5,s),a.restore()}}}var f="rectangleRoi";r.rectangleRoi=r.mouseButtonTool({createNewMeasurement:n,onImageRendered:s,pointNearTool:a,toolType:f}),r.rectangleRoiTouch=r.touchTool({createNewMeasurement:n,onImageRendered:s,pointNearTool:a,toolType:f})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(e){var t=e.element.getBoundingClientRect(e.element),r={x:e.currentPoints.client.x,y:e.currentPoints.client.y},n=e.element.clientWidth,a=e.element.clientHeight,o={x:r.x-t.left-n/2,y:-1*(r.y-t.top-a/2)},s=Math.atan2(o.y,o.x),f=s*(180/Math.PI),l=-1*f+90;e.viewport.rotation=l,i.setViewport(e.element,e.viewport)}function n(e){e.viewport.rotation+=e.deltaPoints.page.x/e.viewport.scale,i.setViewport(e.element,e.viewport)}function a(e){e.viewport.rotation+=e.deltaPoints.page.y/e.viewport.scale,i.setViewport(e.element,e.viewport)}function o(i,t){e(t.element).off("CornerstoneToolsMouseDrag",f),e(t.element).off("CornerstoneToolsMouseUp",o),e(t.element).off("CornerstoneToolsMouseClick",o)}function s(i,r){if(t.isMouseButtonEnabled(r.which,i.data.mouseButtonMask))return e(r.element).on("CornerstoneToolsMouseDrag",f),e(r.element).on("CornerstoneToolsMouseUp",o),e(r.element).on("CornerstoneToolsMouseClick",o),!1}function f(e,r){return t.rotate.strategy(r),i.setViewport(r.element,r.viewport),!1}t.rotate=t.simpleMouseButtonTool(s),t.rotate.strategies={default:r,horizontal:n,vertical:a},t.rotate.strategy=r,t.rotateTouchDrag=t.touchDragTool(f)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,t){return t.viewport.rotation+=t.rotation,i.setViewport(t.element,t.viewport),!1}function n(i){e(i).off("CornerstoneToolsTouchRotate",r)}function a(i){e(i).off("CornerstoneToolsTouchRotate",r),e(i).on("CornerstoneToolsTouchRotate",r)}t.rotateTouch={activate:a,disable:n}}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){var r=e(i).find("canvas").get(0),n=document.createElement("a");if(n.download=t,n.href=r.toDataURL(),document.createEvent){var a=document.createEvent("MouseEvents");a.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),n.dispatchEvent(a)}else n.fireEvent&&n.fireEvent("onclick")}t.saveAs=r}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){e(prompt("Enter your annotation:"))}function a(e,i,t){t(prompt("Change your annotation:"))}function o(e){function t(e){null!==e?o.text=e:r.removeToolState(n,h,o),o.active=!1,i.updateImage(n)}var n=e.element,a=r.seedAnnotate.getConfiguration(),o=s(e);r.addToolState(n,h,o),i.updateImage(n),r.moveHandle(e,h,o,o.handles.end,function(){r.anyHandlesOutsideImage(e,o.handles)&&r.removeToolState(n,h,o),void 0===o.text&&a.getTextCallback(t),i.updateImage(n)})}function s(e){var i={visible:!0,active:!0,handles:{end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};return i}function f(e,r,n){if(r.handles.end){var a=i.pixelToCanvas(e,r.handles.end),o=t.point.distance(a,n);return o<25}}function l(e,n){var a=r.getToolState(e.currentTarget,h);if(a){var o=n.enabledElement,s=n.canvasContext.canvas.getContext("2d");s.setTransform(1,0,0,1,0,0);for(var f=n.canvasContext.canvas.width,l,u=r.toolStyle.getToolWidth(),c=r.textStyle.getFont(),d=r.seedAnnotate.getConfiguration(),m=0;m<a.data.length;m++){s.save(),d&&d.shadow&&(s.shadowColor=d.shadowColor||"#000000",s.shadowOffsetX=d.shadowOffsetX||1,s.shadowOffsetY=d.shadowOffsetY||1);var b=a.data[m];l=b.active?r.toolColors.getActiveColor():r.toolColors.getToolColor();var v=i.pixelToCanvas(n.element,b.handles.end);r.drawCircle(s,v,l,u);var w={drawHandlesIfActive:d&&d.drawHandlesOnHover};if(d.drawHandles&&r.drawHandles(s,n,v,l,w),b.text&&""!==b.text){s.font=c;var p="";p=d.showCoordinates?b.text+" x: "+Math.round(b.handles.end.x)+" y: "+Math.round(b.handles.end.y):b.text;var g=s.measureText(p).width+10,k=r.textStyle.getFontSize()+10,_=Math.max(g,k)/2+5;v.x>f/2&&(_=-_);var y;if(!b.handles.textBox.hasMoved){y={x:v.x-g/2+_,y:v.y-k/2};var T=i.internal.getTransform(o);T.invert();var M=T.transformPoint(y.x,y.y);b.handles.textBox.x=M.x,b.handles.textBox.y=M.y}y=i.pixelToCanvas(n.element,b.handles.textBox);var C=r.drawTextBox(s,p,y.x,y.y,l);if(b.handles.textBox.boundingBox=C,b.handles.textBox.hasMoved){var x={start:{},end:{}};x.end.x=y.x,x.end.y=y.y,x.start=v;var E=[{x:C.left+C.width/2,y:C.top},{x:C.left,y:C.top+C.height/2},{x:C.left+C.width/2,y:C.top+C.height},{x:C.left+C.width,y:C.top+C.height/2}];x.end=t.point.findClosestPoint(E,x.start),s.beginPath(),
s.strokeStyle=l,s.lineWidth=u,s.setLineDash([2,3]),s.moveTo(x.start.x,x.start.y),s.lineTo(x.end.x,x.end.y),s.stroke()}}s.restore()}}}function u(e){function t(e){null!==e?o.text=e:r.removeToolState(n,h,o),o.active=!1,i.updateImage(n)}var n=e.element,a=r.seedAnnotate.getConfiguration(),o=s(e);r.addToolState(n,h,o),i.updateImage(n),r.moveHandle(e,h,o,o.handles.end,function(){r.anyHandlesOutsideImage(e,o.handles)&&r.removeToolState(n,h,o),void 0===o.text&&a.getTextCallback(t),i.updateImage(n)})}function c(e,t){function n(e,t,n){n===!0?r.removeToolState(a,h,e):e.text=t,e.active=!1,i.updateImage(a)}var a=t.element,o;if(e.data&&e.data.mouseButtonMask&&!r.isMouseButtonEnabled(t.which,e.data.mouseButtonMask))return!1;var s=r.seedAnnotate.getConfiguration(),l=t.currentPoints.canvas,u=r.getToolState(a,h);if(!u)return!1;for(var c=0;c<u.data.length;c++)if(o=u.data[c],f(a,o,l)||r.pointInsideBoundingBox(o.handles.textBox,l))return o.active=!0,i.updateImage(a),s.changeTextCallback(o,t,n),e.stopImmediatePropagation(),!1;return!1}function d(t,n){function a(t,n,a){console.log("pressCallback doneChangingTextCallback"),a===!0?r.removeToolState(o,h,t):t.text=n,t.active=!1,i.updateImage(o),e(o).on("CornerstoneToolsTouchStart",r.seedAnnotateTouch.touchStartCallback),e(o).on("CornerstoneToolsTouchStartActive",r.seedAnnotateTouch.touchDownActivateCallback),e(o).on("CornerstoneToolsTap",r.seedAnnotateTouch.tapCallback)}var o=n.element,s;if(t.data&&t.data.mouseButtonMask&&!r.isMouseButtonEnabled(n.which,t.data.mouseButtonMask))return!1;var l=r.seedAnnotate.getConfiguration(),u=n.currentPoints.canvas,c=r.getToolState(o,h);if(!c)return!1;if(n.handlePressed)return e(o).off("CornerstoneToolsTouchStart",r.seedAnnotateTouch.touchStartCallback),e(o).off("CornerstoneToolsTouchStartActive",r.seedAnnotateTouch.touchDownActivateCallback),e(o).off("CornerstoneToolsTap",r.seedAnnotateTouch.tapCallback),l.changeTextCallback(n.handlePressed,n,a),t.stopImmediatePropagation(),!1;for(var d=0;d<c.data.length;d++)if(s=c.data[d],f(o,s,u)||r.pointInsideBoundingBox(s.handles.textBox,u))return s.active=!0,i.updateImage(o),e(o).off("CornerstoneToolsTouchStart",r.seedAnnotateTouch.touchStartCallback),e(o).off("CornerstoneToolsTouchStartActive",r.seedAnnotateTouch.touchDownActivateCallback),e(o).off("CornerstoneToolsTap",r.seedAnnotateTouch.tapCallback),l.changeTextCallback(s,n,a),t.stopImmediatePropagation(),!1;return!1}var h="seedAnnotate",m={getTextCallback:n,changeTextCallback:a,drawHandles:!1,drawHandlesOnHover:!0,currentLetter:"A",currentNumber:0,showCoordinates:!0,countUp:!0};r.seedAnnotate=r.mouseButtonTool({addNewMeasurement:o,createNewMeasurement:s,onImageRendered:l,pointNearTool:f,toolType:h,mouseDoubleClickCallback:c}),r.seedAnnotate.setConfiguration(m),r.seedAnnotateTouch=r.touchTool({addNewMeasurement:u,createNewMeasurement:s,onImageRendered:l,pointNearTool:f,toolType:h,pressCallback:d})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i={visible:!0,active:!0,handles:{start:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},middle:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0},end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!1},textBox:{active:!1,hasMoved:!1,movesIndependently:!1,drawnIndependently:!0,allowedOutsideImage:!0,hasBoundingBox:!0}}};return i}function a(e,r,n){var a={start:i.pixelToCanvas(e,r.handles.start),end:i.pixelToCanvas(e,r.handles.middle)},o=t.lineSegment.distanceToPoint(a,n);return o<25||(a.start=i.pixelToCanvas(e,r.handles.middle),a.end=i.pixelToCanvas(e,r.handles.end),o=t.lineSegment.distanceToPoint(a,n),o<25)}function o(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function s(e,n){var a=r.getToolState(e.currentTarget,u);if(a){var s=n.enabledElement,f=n.canvasContext.canvas.getContext("2d");f.setTransform(1,0,0,1,0,0);for(var l,c=r.toolStyle.getToolWidth(),d=r.textStyle.getFont(),h=r.simpleAngle.getConfiguration(),m=0;m<a.data.length;m++){f.save(),h&&h.shadow&&(f.shadowColor=h.shadowColor||"#000000",f.shadowOffsetX=h.shadowOffsetX||1,f.shadowOffsetY=h.shadowOffsetY||1);var b=a.data[m];l=b.active?r.toolColors.getActiveColor():r.toolColors.getToolColor();var v=i.pixelToCanvas(n.element,b.handles.start),w=i.pixelToCanvas(n.element,b.handles.middle),p=i.pixelToCanvas(n.element,b.handles.end);f.beginPath(),f.strokeStyle=l,f.lineWidth=c,f.moveTo(v.x,v.y),f.lineTo(w.x,w.y),f.lineTo(p.x,p.y),f.stroke();var g={drawHandlesIfActive:h&&h.drawHandlesOnHover};r.drawHandles(f,n,b.handles,l,g),f.fillStyle=l;var k=n.image.columnPixelSpacing||1,_=n.image.rowPixelSpacing||1,y="";n.image.rowPixelSpacing&&n.image.columnPixelSpacing||(y=" (isotropic)");var T={x:(Math.ceil(b.handles.middle.x)-Math.ceil(b.handles.start.x))*k,y:(Math.ceil(b.handles.middle.y)-Math.ceil(b.handles.start.y))*_},M={x:(Math.ceil(b.handles.end.x)-Math.ceil(b.handles.middle.x))*k,y:(Math.ceil(b.handles.end.y)-Math.ceil(b.handles.middle.y))*_},C={x:(Math.ceil(b.handles.end.x)-Math.ceil(b.handles.start.x))*k,y:(Math.ceil(b.handles.end.y)-Math.ceil(b.handles.start.y))*_},x=o(T),E=o(M),S=o(C),A=Math.acos((Math.pow(x,2)+Math.pow(E,2)-Math.pow(S,2))/(2*x*E));A*=180/Math.PI;var P=r.roundToDecimal(A,2);if(P){var I="00B0",L=P.toString()+String.fromCharCode(parseInt(I,16))+y,D=15,R;if(b.handles.textBox.hasMoved)R=i.pixelToCanvas(n.element,b.handles.textBox);else{R={x:w.x,y:w.y},f.font=d;var O=f.measureText(L).width;w.x<v.x?R.x-=D+O+10:R.x+=D;var B=i.internal.getTransform(s);B.invert();var N=B.transformPoint(R.x,R.y);b.handles.textBox.x=N.x,b.handles.textBox.y=N.y}var F={centering:{x:!1,y:!0}},U=r.drawTextBox(f,L,R.x,R.y,l,F);if(b.handles.textBox.boundingBox=U,b.handles.textBox.hasMoved){var H={start:{},end:{}},z=[v,p,w];H.end.x=R.x,H.end.y=R.y,H.start=t.point.findClosestPoint(z,H.end);var j=[{x:U.left+U.width/2,y:U.top},{x:U.left,y:U.top+U.height/2},{x:U.left+U.width/2,y:U.top+U.height},{x:U.left+U.width,y:U.top+U.height/2}];H.end=t.point.findClosestPoint(j,H.start),f.beginPath(),f.strokeStyle=l,f.lineWidth=c,f.setLineDash([2,3]),f.moveTo(H.start.x,H.start.y),f.lineTo(H.end.x,H.end.y),f.stroke()}}f.restore()}}}function f(t){var a=n(t),o=t.element,s={mouseButtonMask:t.which};r.addToolState(o,u,a),e(o).off("CornerstoneToolsMouseMove",r.simpleAngle.mouseMoveCallback),e(o).off("CornerstoneToolsMouseDrag",r.simpleAngle.mouseMoveCallback),e(o).off("CornerstoneToolsMouseDown",r.simpleAngle.mouseDownCallback),e(o).off("CornerstoneToolsMouseDownActivate",r.simpleAngle.mouseDownActivateCallback),i.updateImage(o),r.moveNewHandle(t,u,a,a.handles.middle,function(){return a.active=!1,r.anyHandlesOutsideImage(t,a.handles)?(r.removeToolState(o,u,a),e(o).on("CornerstoneToolsMouseMove",r.simpleAngle.mouseMoveCallback),e(o).on("CornerstoneToolsMouseDrag",r.simpleAngle.mouseMoveCallback),e(o).on("CornerstoneToolsMouseDown",s,r.simpleAngle.mouseDownCallback),e(o).on("CornerstoneToolsMouseDownActivate",s,r.simpleAngle.mouseDownActivateCallback),void i.updateImage(o)):(a.handles.end.active=!0,i.updateImage(o),void r.moveNewHandle(t,u,a,a.handles.end,function(){a.active=!1,r.anyHandlesOutsideImage(t,a.handles)&&r.removeToolState(o,u,a),e(o).on("CornerstoneToolsMouseMove",r.simpleAngle.mouseMoveCallback),e(o).on("CornerstoneToolsMouseDrag",r.simpleAngle.mouseMoveCallback),e(o).on("CornerstoneToolsMouseDown",s,r.simpleAngle.mouseDownCallback),e(o).on("CornerstoneToolsMouseDownActivate",s,r.simpleAngle.mouseDownActivateCallback),i.updateImage(o)}))})}function l(t){var a=n(t),o=t.element;r.addToolState(o,u,a),e(o).off("CornerstoneToolsTouchDrag",r.simpleAngleTouch.touchMoveCallback),e(o).off("CornerstoneToolsTouchStartActive",r.simpleAngleTouch.touchDownActivateCallback),e(o).off("CornerstoneToolsTouchStart",r.simpleAngleTouch.touchStartCallback),e(o).off("CornerstoneToolsTap",r.simpleAngleTouch.tapCallback),i.updateImage(o),r.moveNewHandleTouch(t,u,a,a.handles.middle,function(){return r.anyHandlesOutsideImage(t,a.handles)?(r.removeToolState(o,u,a),e(o).on("CornerstoneToolsTouchDrag",r.simpleAngleTouch.touchMoveCallback),e(o).on("CornerstoneToolsTouchStart",r.simpleAngleTouch.touchStartCallback),e(o).on("CornerstoneToolsTouchStartActive",r.simpleAngleTouch.touchDownActivateCallback),e(o).on("CornerstoneToolsTap",r.simpleAngleTouch.tapCallback),void i.updateImage(o)):void r.moveNewHandleTouch(t,u,a,a.handles.end,function(){r.anyHandlesOutsideImage(t,a.handles)&&(r.removeToolState(o,u,a),i.updateImage(o)),e(o).on("CornerstoneToolsTouchDrag",r.simpleAngleTouch.touchMoveCallback),e(o).on("CornerstoneToolsTouchStart",r.simpleAngleTouch.touchStartCallback),e(o).on("CornerstoneToolsTouchStartActive",r.simpleAngleTouch.touchDownActivateCallback),e(o).on("CornerstoneToolsTap",r.simpleAngleTouch.tapCallback)})})}var u="simpleAngle";r.simpleAngle=r.mouseButtonTool({createNewMeasurement:n,addNewMeasurement:f,onImageRendered:s,pointNearTool:a,toolType:u}),r.simpleAngleTouch=r.touchTool({createNewMeasurement:n,addNewMeasurement:l,onImageRendered:s,pointNearTool:a,toolType:u})}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(e){var i=t.textMarker.getConfiguration();if(i.current){var r={visible:!0,active:!0,text:i.current,handles:{end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0,hasBoundingBox:!0}}},n={left:0,top:0,width:e.image.width,height:e.image.height};if(cornerstoneMath.point.insideRect(r.handles.end,n)){var a=i.markers.indexOf(i.current);return i.ascending?(a+=1,a>=i.markers.length&&(i.loop?a-=i.markers.length:a=-1)):(a-=1,a<0&&(i.loop?a+=i.markers.length:a=-1)),i.current=i.markers[a],r}}}function n(e,i,r){if(i.handles.end.boundingBox){var n=cornerstoneMath.rect.distanceToPoint(i.handles.end.boundingBox,r),a=t.pointInsideBoundingBox(i.handles.end,r);return n<10||a}}function a(e,r){var n=t.getToolState(r.element,f);if(n){var a=r.canvasContext.canvas.getContext("2d");a.setTransform(1,0,0,1,0,0);for(var o=t.textMarker.getConfiguration(),s=0;s<n.data.length;s++){var l=n.data[s],u=t.toolColors.getToolColor();l.active&&(u=t.toolColors.getActiveColor()),a.save(),o&&o.shadow&&(a.shadowColor=o.shadowColor||"#000000",a.shadowOffsetX=o.shadowOffsetX||1,a.shadowOffsetY=o.shadowOffsetY||1),a.fillStyle=u;var c=a.measureText(l.text);l.textWidth=c.width+10;var d=i.pixelToCanvas(r.element,l.handles.end),h={centering:{x:!0,y:!0}},m=t.drawTextBox(a,l.text,d.x,d.y-10,u,h);l.handles.end.boundingBox=m,a.restore()}}}function o(r,a){function o(n,a,o){o===!0?t.removeToolState(s,f,n):n.text=a,n.active=!1,i.updateImage(s);var l={mouseButtonMask:r.data.mouseButtonMask};e(s).on("CornerstoneToolsMouseMove",l,t.textMarker.mouseMoveCallback),e(s).on("CornerstoneToolsMouseDown",l,t.textMarker.mouseDownCallback),e(s).on("CornerstoneToolsMouseDownActivate",l,t.textMarker.mouseDownActivateCallback),e(s).on("CornerstoneToolsMouseDoubleClick",l,t.textMarker.mouseDoubleClickCallback)}var s=a.element,l;if(r.data&&r.data.mouseButtonMask&&!t.isMouseButtonEnabled(a.which,r.data.mouseButtonMask))return!1;var u=t.textMarker.getConfiguration(),c=a.currentPoints.canvas,d=t.getToolState(s,f);if(!d)return!1;for(var h=0;h<d.data.length;h++)if(l=d.data[h],n(s,l,c))return l.active=!0,i.updateImage(s),e(s).off("CornerstoneToolsMouseMove",t.textMarker.mouseMoveCallback),e(s).off("CornerstoneToolsMouseDown",t.textMarker.mouseDownCallback),e(s).off("CornerstoneToolsMouseDownActivate",t.textMarker.mouseDownActivateCallback),e(s).off("CornerstoneToolsMouseDoubleClick",t.textMarker.mouseDoubleClickCallback),u.changeTextCallback(l,a,o),r.stopImmediatePropagation(),!1;return!1}function s(r,a){function o(r,n,a){a===!0?t.removeToolState(s,f,r):r.text=n,r.active=!1,i.updateImage(s),e(s).on("CornerstoneToolsTouchDrag",t.textMarkerTouch.touchMoveCallback),e(s).on("CornerstoneToolsTouchStartActive",t.textMarkerTouch.touchDownActivateCallback),e(s).on("CornerstoneToolsTouchStart",t.textMarkerTouch.touchStartCallback),e(s).on("CornerstoneToolsTap",t.textMarkerTouch.tapCallback),e(s).on("CornerstoneToolsTouchPress",t.textMarkerTouch.pressCallback)}var s=a.element,l,u=t.textMarker.getConfiguration(),c=a.currentPoints.canvas,d=t.getToolState(s,f);if(!d)return!1;if(a.handlePressed)return a.handlePressed.active=!0,i.updateImage(s),e(s).off("CornerstoneToolsTouchDrag",t.textMarkerTouch.touchMoveCallback),e(s).off("CornerstoneToolsTouchStartActive",t.textMarkerTouch.touchDownActivateCallback),e(s).off("CornerstoneToolsTouchStart",t.textMarkerTouch.touchStartCallback),e(s).off("CornerstoneToolsTap",t.textMarkerTouch.tapCallback),e(s).off("CornerstoneToolsTouchPress",t.textMarkerTouch.pressCallback),u.changeTextCallback(a.handlePressed,a,o),r.stopImmediatePropagation(),!1;for(var h=0;h<d.data.length;h++)if(l=d.data[h],n(s,l,c))return l.active=!0,i.updateImage(s),e(s).off("CornerstoneToolsTouchDrag",t.textMarkerTouch.touchMoveCallback),e(s).off("CornerstoneToolsTouchStartActive",t.textMarkerTouch.touchDownActivateCallback),e(s).off("CornerstoneToolsTouchStart",t.textMarkerTouch.touchStartCallback),e(s).off("CornerstoneToolsTap",t.textMarkerTouch.tapCallback),e(s).off("CornerstoneToolsTouchPress",t.textMarkerTouch.pressCallback),u.changeTextCallback(l,a,o),r.stopImmediatePropagation(),!1;return!1}var f="textMarker";t.textMarker=t.mouseButtonTool({createNewMeasurement:r,onImageRendered:a,pointNearTool:n,toolType:f,mouseDoubleClickCallback:o}),t.textMarkerTouch=t.touchTool({createNewMeasurement:r,onImageRendered:a,pointNearTool:n,toolType:f,pressCallback:s})}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){e(t.element).off("CornerstoneToolsMouseDrag",o),e(t.element).off("CornerstoneToolsMouseUp",r),e(t.element).off("CornerstoneToolsMouseClick",r)}function n(i,n){if(t.isMouseButtonEnabled(n.which,i.data.mouseButtonMask))return e(n.element).on("CornerstoneToolsMouseDrag",o),e(n.element).on("CornerstoneToolsMouseUp",r),e(n.element).on("CornerstoneToolsMouseClick",r),!1}function a(e){var i=e.image.maxPixelValue*e.image.slope+e.image.intercept,t=e.image.minPixelValue*e.image.slope+e.image.intercept,r=i-t,n=r/1024,a=e.deltaPoints.page.x*n,o=e.deltaPoints.page.y*n;e.viewport.voi.windowWidth+=a,e.viewport.voi.windowCenter+=o}function o(e,r){return t.wwwc.strategy(r),i.setViewport(r.element,r.viewport),!1}function s(e,r){e.stopImmediatePropagation();var n=r,a=n.image.maxPixelValue*n.image.slope+n.image.intercept,o=n.image.minPixelValue*n.image.slope+n.image.intercept,s=a-o,f=s/1024,l=n.deltaPoints.page.x*f,u=n.deltaPoints.page.y*f,c=t.wwwc.getConfiguration();c.orientation?0===c.orientation?(n.viewport.voi.windowWidth+=l,n.viewport.voi.windowCenter+=u):(n.viewport.voi.windowWidth+=u,n.viewport.voi.windowCenter+=l):(n.viewport.voi.windowWidth+=l,n.viewport.voi.windowCenter+=u),i.setViewport(n.element,n.viewport)}t.wwwc=t.simpleMouseButtonTool(n),t.wwwc.strategies={default:a},t.wwwc.strategy=a,t.wwwcTouchDrag=t.touchDragTool(s)}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e,i,t){var r=e.length;if(r<2)return{min:i,max:t,mean:(i+t)/2};for(var n=t,a=i,o=0,s=0;s<r;s++){var f=e[s];n=Math.min(n,f),a=Math.max(a,f),o+=f}return{min:n,max:a,mean:o/r}}function a(i,t){var n=r.getToolState(t.element,g);n&&n.data&&(n.data=[]),e(t.element).off("CornerstoneToolsMouseMove",c),e(t.element).off("CornerstoneToolsMouseDrag",c),e(t.element).off("CornerstoneToolsMouseUp",o),e(t.element).off("CornerstoneToolsMouseClick",o);var a={mouseButtonMask:_};e(t.element).on("CornerstoneToolsMouseDown",a,l)}function o(i,t){e(t.element).off("CornerstoneToolsMouseMove",c),e(t.element).off("CornerstoneToolsMouseDrag",c),e(t.element).off("CornerstoneToolsMouseUp",o),e(t.element).off("CornerstoneToolsMouseClick",o);var n={mouseButtonMask:_};e(t.element).on("CornerstoneToolsMouseDown",n,l);var a=r.getToolState(t.element,g);a&&a.data&&a.data.length&&(a.data[0].endPoint={x:t.currentPoints.image.x,y:t.currentPoints.image.y},s(t))}function s(e){var t=r.getToolState(e.element,g);if(t&&t.data&&t.data.length){var a=t.data[0].startPoint,o=t.data[0].endPoint,s=Math.abs(a.x-o.x),f=Math.abs(a.y-o.y),l=Math.min(a.x,o.x),u=Math.min(a.y,o.y);l=Math.max(l,0),l=Math.min(l,e.image.width),u=Math.max(u,0),u=Math.min(u,e.image.height),s=Math.floor(Math.min(s,Math.abs(e.image.width-l))),f=Math.floor(Math.min(f,Math.abs(e.image.height-u)));var c=r.getLuminance(e.element,l,u,s,f),d=n(c,e.image.minPixelValue,e.image.maxPixelValue),h=r.wwwcRegion.getConfiguration(),m=i.getViewport(e.element);void 0===h.minWindowWidth&&(h.minWindowWidth=10),m.voi.windowWidth=Math.max(Math.abs(d.max-d.min),h.minWindowWidth),m.voi.windowCenter=d.mean,i.setViewport(e.element,m),t.data=[],i.updateImage(e.element)}}function f(i,t){var r=t.element;e(r).off("CornerstoneToolsMouseMove"),e(r).off("CornerstoneToolsMouseDrag"),e(r).on("CornerstoneToolsMouseMove",c),e(r).on("CornerstoneToolsMouseDrag",c),e(r).on("CornerstoneToolsMouseClick",o),"CornerstoneToolsMouseDrag"===i.type&&e(r).on("CornerstoneToolsMouseUp",o)}function l(i,t){if(r.isMouseButtonEnabled(t.which,i.data.mouseButtonMask))return e(t.element).on("CornerstoneToolsMouseDrag",t,f),e(t.element).on("CornerstoneToolsMouseMove",t,f),e(t.element).off("CornerstoneToolsMouseDown",l),u(t),!1}function u(e){var i=r.getToolState(e.element,g);i&&i.data&&(i.data=[]);var t={startPoint:{x:e.currentPoints.image.x,y:e.currentPoints.image.y}};r.addToolState(e.element,g,t)}function c(e,t){var n=r.getToolState(t.element,g);if(n&&n.data&&n.data.length){var a={x:t.currentPoints.image.x,y:t.currentPoints.image.y};n.data[0].endPoint=a,i.updateImage(t.element)}}function d(t,n){var a=r.getToolState(n.element,g);if(a&&a.data&&a.data.length){var o=a.data[0].startPoint,s=a.data[0].endPoint;if(o&&s){var f=e(n.element).find("canvas").get(0),l=f.getContext("2d");l.setTransform(1,0,0,1,0,0);var u=r.toolColors.getActiveColor(),c=i.pixelToCanvas(n.element,o),d=i.pixelToCanvas(n.element,s),h=Math.min(c.x,d.x),m=Math.min(c.y,d.y),b=Math.abs(c.x-d.x),v=Math.abs(c.y-d.y),w=r.toolStyle.getToolWidth(),p=r.wwwcRegion.getConfiguration();l.save(),p&&p.shadow&&(l.shadowColor=p.shadowColor||"#000000",l.shadowOffsetX=p.shadowOffsetX||1,l.shadowOffsetY=p.shadowOffsetY||1),l.beginPath(),l.strokeStyle=u,l.lineWidth=w,l.rect(h,m,b,v),l.stroke(),l.restore()}}}function h(t){e(t).off("CornerstoneToolsMouseDown",l),e(t).off("CornerstoneToolsMouseUp",o),e(t).off("CornerstoneToolsMouseClick",o),e(t).off("CornerstoneToolsMouseDrag",c),e(t).off("CornerstoneToolsMouseMove",c),e(t).off("CornerstoneImageRendered",d),e(t).off("CornerstoneNewImage",a),i.updateImage(t)}function m(t,n){var s={mouseButtonMask:n};_=n;var f=r.getToolState(t,g);if(!f){var u=[];r.addToolState(t,g,u)}e(t).off("CornerstoneToolsMouseDown",l),e(t).off("CornerstoneToolsMouseUp",o),e(t).off("CornerstoneToolsMouseClick",o),e(t).off("CornerstoneToolsMouseDrag",c),e(t).off("CornerstoneToolsMouseMove",c),e(t).off("CornerstoneImageRendered",d),e(t).off("CornerstoneNewImage",a),e(t).on("CornerstoneToolsMouseDown",s,l),e(t).on("CornerstoneImageRendered",d),e(t).on("CornerstoneNewImage",a),i.updateImage(t)}function b(i){e(i).off("CornerstoneToolsTouchDrag",c),e(i).off("CornerstoneToolsTouchStart",u),e(i).off("CornerstoneToolsDragEnd",s),e(i).off("CornerstoneImageRendered",d)}function v(i){var t=r.getToolState(i,g);if(!t){var n=[];r.addToolState(i,g,n)}e(i).off("CornerstoneToolsTouchDrag",c),e(i).off("CornerstoneToolsTouchStart",u),e(i).off("CornerstoneToolsDragEnd",s),e(i).off("CornerstoneImageRendered",d),e(i).on("CornerstoneToolsTouchDrag",c),e(i).on("CornerstoneToolsTouchStart",u),e(i).on("CornerstoneToolsDragEnd",s),e(i).on("CornerstoneImageRendered",d)}function w(){return k}function p(e){k=e}var g="wwwcRegion",k={minWindowWidth:10},_;r.wwwcRegion={activate:m,deactivate:h,disable:h,setConfiguration:p,getConfiguration:w},r.wwwcRegionTouch={activate:v,deactivate:b,disable:b}}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(e,i){var r=t.zoom.getConfiguration(),n=1.7,a=Math.log(e.scale)/Math.log(n),o=a+i,s=Math.pow(n,o);return r.maxScale&&s>r.maxScale?e.scale=r.maxScale:r.minScale&&s<r.minScale?e.scale=r.minScale:e.scale=s,e}function n(e,i,t){return e.x=Math.max(e.x,0),e.y=Math.max(e.y,0),e.x=Math.min(e.x,i),e.y=Math.min(e.y,t),e}function a(e,i){if(0!==i.rotation){var t=i.rotation*Math.PI/180,r=Math.cos(t),n=Math.sin(t),a=e.x*r-e.y*n,o=e.x*n+e.y*r;e.x=a,e.y=o}return i.hflip&&(e.x*=-1),i.vflip&&(e.y*=-1),e}function o(e,t){var n=e.element,o=r(e.viewport,t);i.setViewport(n,o);var s=i.pageToPixel(n,e.startPoints.page.x,e.startPoints.page.y),f={x:e.startPoints.image.x-s.x,y:e.startPoints.image.y-s.y};f=a(f,o),o.translation.x-=f.x,o.translation.y-=f.y,i.setViewport(n,o)}function s(e,o){var s=e.element,f=e.image,l=t.zoom.getConfiguration(),u=r(e.viewport,o),c={x:0,y:0},d=8,h=3,b=.01;if(o<0)u.scale<h&&(Math.abs(u.translation.x)<b?u.translation.x=0:c.x=u.translation.x/d,Math.abs(u.translation.y)<b?u.translation.y=0:c.y=u.translation.y/d);else{l&&l.preventZoomOutsideImage&&(m.image=n(m.image,f.width,f.height));var v={x:f.width/2-m.image.x,y:f.height/2-m.image.y};v=a(v,u);var w={x:u.translation.x-v.x,y:u.translation.y-v.y};Math.abs(w.x)<b?u.translation.x=v.x:c.x=w.x/d,Math.abs(w.y)<b?u.translation.y=v.y:c.y=w.y/d}u.translation.x-=c.x,u.translation.y-=c.y,i.setViewport(s,u)}function f(e,t){var n=e.element,a=r(e.viewport,t);i.setViewport(n,a)}function l(i,t){e(t.element).off("CornerstoneToolsMouseDrag",c),e(t.element).off("CornerstoneToolsMouseUp",l),e(t.element).off("CornerstoneToolsMouseClick",l)}function u(i,r){if(t.isMouseButtonEnabled(r.which,i.data.mouseButtonMask))return m=r.startPoints,e(r.element).on("CornerstoneToolsMouseDrag",c),e(r.element).on("CornerstoneToolsMouseUp",l),e(r.element).on("CornerstoneToolsMouseClick",l),!1}function c(e,i){if(!i.deltaPoints.page.y)return!1;var r=i.deltaPoints.page.y/100;return t.zoom.strategy(i,r),!1}function d(e,n){var a=-n.direction/4,o=t.zoom.getConfiguration();o&&o.invert&&(a*=-1);var s=r(n.viewport,a);i.setViewport(n.element,s)}function h(e,r){var n=t.zoom.getConfiguration(),o=r.viewport,s=r.element;o.scale+=r.scaleChange*o.scale,n.maxScale&&o.scale>n.maxScale?o.scale=n.maxScale:n.minScale&&o.scale<n.minScale&&(o.scale=n.minScale),i.setViewport(s,o);var f=i.pageToPixel(s,r.startPoints.page.x,r.startPoints.page.y),l={x:r.startPoints.image.x-f.x,y:r.startPoints.image.y-f.y};l=a(l,o),o.translation.x-=l.x,o.translation.y-=l.y,i.setViewport(s,o)}var m;t.zoom=t.simpleMouseButtonTool(u),t.zoom.strategies={default:o,translate:s,zoomToCenter:f},t.zoom.strategy=o,t.zoomWheel=t.mouseWheelTool(d),t.zoomTouchPinch=t.touchPinchTool(h),t.zoomTouchDrag=t.touchDragTool(c)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(t){var r=t.currentTarget,n={event:window.event||t,element:r,viewport:i.getViewport(r),image:i.getEnabledElement(r).image,currentPoints:{page:{x:s,y:f},image:i.pageToPixel(r,s,f)},keyCode:t.keyCode,which:t.which};n.currentPoints.canvas=i.pixelToCanvas(r,n.currentPoints.image);var a={keydown:"CornerstoneToolsKeyDown",keypress:"CornerstoneToolsKeyPress",keyup:"CornerstoneToolsKeyUp"};e(r).trigger(a[t.type],n)}function n(e){s=e.pageX||e.originalEvent.pageX,f=e.pageY||e.originalEvent.pageY}function a(i){o(i),e(i).on(l,r),e(i).on("mousemove",n)}function o(i){e(i).off(l,r),e(i).off("mousemove",n)}var s,f,l="keydown keypress keyup";t.keyboardInput={enable:a,disable:o}}($,cornerstone,cornerstoneTools),function(e){"use strict";function i(e,i){var t=Date.now();if(e!==f){if(t-l<=o)return i.preventDefault(),i.stopPropagation(),i.stopImmediatePropagation(),!1;f=e}l=t}function t(e,i,t){var r=t?u:c;i.forEach(function(i){e.addEventListener(i,r,!0)})}function r(e,i,t){var r=t?u:c;i.forEach(function(i){e.removeEventListener(i,r,!0)})}function n(e){r(e,d,s.mouse),r(e,h,s.touch)}function a(e){n(e),t(e,d,s.mouse),t(e,h,s.touch)}var o=2e3,s={mouse:0,touch:1},f,l,u=i.bind(null,s.mouse),c=i.bind(null,s.touch),d=["mousedown","mouseup"],h=["touchstart","touchend"];e.preventGhostClick={enable:a,disable:n}}(cornerstoneTools),function(e,i,t,r){"use strict";function n(e,i){var r=e.image,n={left:0,top:0,width:r.width,height:r.height},a=!1;return Object.keys(i).forEach(function(e){var r=i[e];r.allowedOutsideImage!==!0&&t.point.insideRect(r,n)===!1&&(a=!0)}),a}r.anyHandlesOutsideImage=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i){"use strict";function t(t,n,a,o,s){t.strokeStyle=o,Object.keys(a).forEach(function(o){var f=a[o];if(f.drawnIndependently!==!0&&(!s||s.drawHandlesIfActive!==!0||f.active)){t.beginPath(),f.active?t.lineWidth=i.toolStyle.getActiveWidth():t.lineWidth=i.toolStyle.getToolWidth();var l=e.pixelToCanvas(n.element,f);t.arc(l.x,l.y,r,0,2*Math.PI),s&&s.fill&&(t.fillStyle=s.fill,t.fill()),t.stroke()}})}var r=6;i.drawHandles=t}(cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(e,n,a,o){var s;if(n)return Object.keys(n).forEach(function(f){var l=n[f];if(l.hasOwnProperty("pointNearHandle")){if(l.pointNearHandle(e,l,a))return void(s=l)}else if(l.hasBoundingBox===!0){if(r.pointInsideBoundingBox(l,a))return void(s=l)}else{var u=i.pixelToCanvas(e,l),c=t.point.distance(u,a);if(c<=o)return void(s=l)}}),s}r.getHandleNearImagePoint=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i;return Object.keys(e).forEach(function(t){var r=e[t];if(r.active===!0)return void(i=r)}),i}function a(e,i,t,a){a||(a=6);var o=n(i),s=r.getHandleNearImagePoint(e,i,t,a);return o!==s&&(void 0!==s&&(s.active=!0),void 0!==o&&(o.active=!1),!0)}r.handleActivator=a}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t,r){"use strict";function n(t,n,a,o,s,f){function l(t,r){n.active=!0,Object.keys(n.handles).forEach(function(e){var i=n.handles[e];i.movesIndependently!==!0&&(i.x+=r.deltaPoints.image.x,i.y+=r.deltaPoints.image.y,s.preventHandleOutsideImage===!0&&(i.x=Math.max(i.x,0),i.x=Math.min(i.x,r.image.width),i.y=Math.max(i.y,0),i.y=Math.min(i.y,r.image.height)))}),i.updateImage(c);var a="CornerstoneToolsMeasurementModified",f={toolType:o,element:c,measurementData:n};return e(c).trigger(a,f),!1}function u(t,a){n.invalidated=!0,e(c).off("CornerstoneToolsMouseDrag",l),e(c).off("CornerstoneToolsMouseUp",u),e(c).off("CornerstoneToolsMouseClick",u),s.deleteIfHandleOutsideImage===!0&&r.anyHandlesOutsideImage(a,n.handles)&&r.removeToolState(c,o,n),i.updateImage(c),"function"==typeof f&&f()}var c=t.element;return e(c).on("CornerstoneToolsMouseDrag",l),e(c).on("CornerstoneToolsMouseUp",u),e(c).on("CornerstoneToolsMouseClick",u),!0}r.moveAllHandles=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(t,r,n,a,o,s){function f(t,o){a.hasMoved===!1&&(a.hasMoved=!0),a.active=!0,a.x=o.currentPoints.image.x+c.x,a.y=o.currentPoints.image.y+c.y,s&&(a.x=Math.max(a.x,0),a.x=Math.min(a.x,o.image.width),a.y=Math.max(a.y,0),a.y=Math.min(a.y,o.image.height)),i.updateImage(u);var f="CornerstoneToolsMeasurementModified",l={toolType:r,element:u,measurementData:n};e(u).trigger(f,l)}function l(){a.active=!1,e(u).off("CornerstoneToolsMouseDrag",f),e(u).off("CornerstoneToolsMouseUp",l),e(u).off("CornerstoneToolsMouseClick",l),i.updateImage(u),"function"==typeof o&&o()}var u=t.element,c={x:a.x-t.currentPoints.image.x,y:a.y-t.currentPoints.image.y};e(u).on("CornerstoneToolsMouseDrag",f),e(u).on("CornerstoneToolsMouseUp",l),e(u).on("CornerstoneToolsMouseClick",l)}t.moveHandle=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(t,r,n,a,o,s){function f(t,o){a.active=!0,a.x=o.currentPoints.image.x,a.y=o.currentPoints.image.y,s&&(a.x=Math.max(a.x,0),a.x=Math.min(a.x,o.image.width),a.y=Math.max(a.y,0),a.y=Math.min(a.y,o.image.height)),i.updateImage(h);var f="CornerstoneToolsMeasurementModified",l={toolType:r,element:h,measurementData:n};e(h).trigger(f,l)}function l(i){e(h).off("CornerstoneToolsMouseMove"),e(h).off("CornerstoneToolsMouseDrag"),e(h).on("CornerstoneToolsMouseMove",f),e(h).on("CornerstoneToolsMouseDrag",f),e(h).on("CornerstoneToolsMouseClick",d),"CornerstoneToolsMouseDrag"===i.type&&e(h).on("CornerstoneToolsMouseUp",d)}function u(e,i){i.measurementData===n&&d()}function c(t,n){n.toolType===r&&(e(h).off("CornerstoneToolsMouseMove",f),e(h).off("CornerstoneToolsMouseDrag",f),e(h).off("CornerstoneToolsMouseClick",d),e(h).off("CornerstoneToolsMouseUp",d),e(h).off("CornerstoneToolsMeasurementRemoved",u),e(h).off("CornerstoneToolsToolDeactivated",c),a.active=!1,i.updateImage(h))}function d(){e(h).off("CornerstoneToolsMouseMove",f),e(h).off("CornerstoneToolsMouseDrag",f),e(h).off("CornerstoneToolsMouseClick",d),e(h).off("CornerstoneToolsMouseUp",d),e(h).off("CornerstoneToolsMeasurementRemoved",u),e(h).off("CornerstoneToolsToolDeactivated",c),a.active=!1,i.updateImage(h),"function"==typeof o&&o()}var h=t.element;e(h).on("CornerstoneToolsMouseDrag",l),e(h).on("CornerstoneToolsMouseMove",l),e(h).on("CornerstoneToolsMeasurementRemoved",u),e(h).on("CornerstoneToolsToolDeactivated",c)}t.moveNewHandle=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(t,r,n,a,o,s){function f(t,o){a.x=o.currentPoints.image.x+m.x,a.y=o.currentPoints.image.y+m.y,s&&(a.x=Math.max(a.x,0),a.x=Math.min(a.x,o.image.width),a.y=Math.max(a.y,0),a.y=Math.min(a.y,o.image.height)),i.updateImage(d);var f="CornerstoneToolsMeasurementModified",l={toolType:r,element:d,measurementData:n};e(d).trigger(f,l)}function l(t,r){return e(d).off("CornerstoneToolsTouchDrag",f),e(d).off("CornerstoneToolsTouchPinch",l),e(d).off("CornerstoneToolsTouchEnd",l),e(d).off("CornerstoneToolsTap",l),e(d).off("CornerstoneToolsTouchStart",u),e(d).off("CornerstoneToolsToolDeactivated",c),"CornerstoneToolsTouchPinch"===t.type||"CornerstoneToolsTouchPress"===t.type?(a.active=!1,i.updateImage(d),void o()):(a.active=!1,n.active=!1,a.x=r.currentPoints.image.x+m.x,a.y=r.currentPoints.image.y+m.y,s&&(a.x=Math.max(a.x,0),a.x=Math.min(a.x,r.image.width),a.y=Math.max(a.y,0),a.y=Math.min(a.y,r.image.height)),i.updateImage(d),void("function"==typeof o&&o()))}function u(e){return e.stopImmediatePropagation(),!1}function c(){e(d).off("CornerstoneToolsTouchDrag",f),e(d).off("CornerstoneToolsTouchPinch",l),e(d).off("CornerstoneToolsTouchEnd",l),e(d).off("CornerstoneToolsTap",l),e(d).off("CornerstoneToolsTouchStart",u),e(d).off("CornerstoneToolsToolDeactivated",c),a.active=!1,n.active=!1,a.x=t.currentPoints.image.x+m.x,a.y=t.currentPoints.image.y+m.y,s&&(a.x=Math.max(a.x,0),a.x=Math.min(a.x,t.image.width),a.y=Math.max(a.y,0),a.y=Math.min(a.y,t.image.height)),i.updateImage(d)}var d=t.element,h=i.pageToPixel(d,t.currentPoints.page.x,t.currentPoints.page.y+50),m={x:a.x-h.x,y:a.y-h.y};a.active=!0,n.active=!0,e(d).on("CornerstoneToolsTouchDrag",f),e(d).on("CornerstoneToolsTouchPinch",l),e(d).on("CornerstoneToolsTouchEnd",l),e(d).on("CornerstoneToolsTap",l),e(d).on("CornerstoneToolsTouchStart",u),e(d).on("CornerstoneToolsToolDeactivated",c)}t.moveNewHandleTouch=r}($,cornerstone,cornerstoneTools),function(e,i,t,r){"use strict";function n(t,n,a,o,s,f){function l(t,r){n.active=!0,Object.keys(n.handles).forEach(function(e){var i=n.handles[e];i.movesIndependently!==!0&&(i.x+=r.deltaPoints.image.x,i.y+=r.deltaPoints.image.y)}),i.updateImage(c);var a="CornerstoneToolsMeasurementModified",s={toolType:o,element:c,measurementData:n};return e(c).trigger(a,s),!1}function u(t,a){n.active=!1,n.invalidated=!1,e(c).off("CornerstoneToolsTouchDrag",l),e(c).off("CornerstoneToolsTouchPinch",u),e(c).off("CornerstoneToolsTouchPress",u),e(c).off("CornerstoneToolsTouchEnd",u),e(c).off("CornerstoneToolsDragEnd",u),e(c).off("CornerstoneToolsTap",u),s===!0&&r.anyHandlesOutsideImage(a,n.handles)&&r.toolState.removeToolState(c,o,n),i.updateImage(c),"function"==typeof f&&f(t,a)}var c=t.element;return e(c).on("CornerstoneToolsTouchDrag",l),e(c).on("CornerstoneToolsTouchPinch",u),e(c).on("CornerstoneToolsTouchPress",u),e(c).on("CornerstoneToolsTouchEnd",u),e(c).on("CornerstoneToolsDragEnd",u),
e(c).on("CornerstoneToolsTap",u),!0}r.touchMoveAllHandles=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(e,n,a,o,s){if(a.value){var f=(new Date).getTime(),l=Math.abs(n.y-s.y),u=l/10;if(console.log("distanceRemaining: "+l),l<1)return n.y=s.y,void(a.value=!1);n.y>s.y?n.y-=u:n.y<s.y&&(n.y+=u),i.updateImage(o.element),t.requestAnimFrame(function(){r(f,n,a,o,s)})}}function n(t,n,s,f,l){function u(t,r){a.value=!1,f.hasMoved===!1&&(f.hasMoved=!0),f.active=!0;var o=r.currentPoints,l={x:o.page.x,y:o.page.y+b};w=i.pageToPixel(d,l.x,l.y),f.x=w.x,f.y=w.y,i.updateImage(d);var u="CornerstoneToolsMeasurementModified",c={toolType:n,element:d,measurementData:s};e(d).trigger(u,c)}function c(r,n){a.value=!1,f.active=!1,e(d).off("CornerstoneToolsTouchDrag",u),e(d).off(o,c),i.updateImage(d),"CornerstoneToolsTouchPress"===r.type&&(n.handlePressed=s,f.x=t.currentPoints.image.x,f.y=t.currentPoints.image.y),"function"==typeof l&&l(r,n)}a.value=!0;var d=t.element,h=i.getEnabledElement(d),m=(new Date).getTime(),b=-57,v={x:t.currentPoints.page.x,y:t.currentPoints.page.y+b},w=i.pageToPixel(d,v.x,v.y);e(d).on("CornerstoneToolsTouchDrag",u),e(d).on(o,c),r(m,f,a,h,w)}var a={value:!1},o=["CornerstoneToolsTouchEnd","CornerstoneToolsDragEnd","CornerstoneToolsTouchPinch","CornerstoneToolsTouchPress","CornerstoneToolsTap"].join(" ");t.touchMoveHandle=n}($,cornerstone,cornerstoneTools),function(e,i){"use strict";function t(){var i=this;i.samples=[],this.set=function(t){i.samples=t,e(i).trigger("CornerstoneLineSampleUpdated")}}i.LineSampleMeasurement=t}($,cornerstoneTools),function(e,i){"use strict";function t(){var i=this;i.measurements=[],this.add=function(t){var r=i.measurements.push(t),n={index:r,measurement:t};e(i).trigger("CornerstoneMeasurementAdded",n)},this.remove=function(t){var r=i.measurements[t];i.measurements.splice(t,1);var n={index:t,measurement:r};e(i).trigger("CornerstoneMeasurementRemoved",n)}}i.MeasurementManager=new t}($,cornerstoneTools),function(e,i,t){"use strict";function r(e){o.push(e)}function n(e){var i=o.indexOf(e);i!==-1&&o.splice(i,1)}function a(i,t){var r;return e.each(o,function(e,n){if(r=n(i,t),void 0!==r)return!0}),r}var o=[];t.metaData={addProvider:r,removeProvider:n,get:a}}($,cornerstone,cornerstoneTools),function(e,i){"use strict";function t(i){for(var t="",r=i.x<0?"R":"L",n=i.y<0?"A":"P",a=i.z<0?"F":"H",o=new e.Vector3(Math.abs(i.x),Math.abs(i.y),Math.abs(i.z)),s=0;s<3;s++)if(o.x>1e-4&&o.x>o.y&&o.x>o.z)t+=r,o.x=0;else if(o.y>1e-4&&o.y>o.x&&o.y>o.z)t+=n,o.y=0;else{if(!(o.z>1e-4&&o.z>o.x&&o.z>o.y))break;t+=a,o.z=0}return t}i.orientation.getOrientationString=t}(cornerstoneMath,cornerstoneTools),function(e){"use strict";function i(e){var i=e.replace("H","f");return i=i.replace("F","h"),i=i.replace("R","l"),i=i.replace("L","r"),i=i.replace("A","p"),i=i.replace("P","a"),i=i.toUpperCase()}e.orientation.invertOrientationString=i}(cornerstoneTools),function(e){"use strict";function i(i,t){var r=e.planePlaneIntersection(i,t);if(r)return{start:e.projectPatientPointToImagePlane(r.start,i),end:e.projectPatientPointToImagePlane(r.end,i)}}e.referenceLines.calculateReferenceLine=i}(cornerstoneTools),function(e,i,t){"use strict";function r(r,n){var a=t.getToolState(r.currentTarget,o);if(void 0!==a){var s=a.data[0].synchronizationContext,f=s.getSourceElements(),l=a.data[0].renderer,u=n.canvasContext.canvas.getContext("2d");i.setToPixelCoordinateSystem(n.enabledElement,u),e.each(f,function(e,i){i!==r.currentTarget&&l(u,n,r.currentTarget,i)})}}function n(n,a,s){s=s||t.referenceLines.renderActiveReferenceLine,t.addToolState(n,o,{synchronizationContext:a,renderer:s}),e(n).on("CornerstoneImageRendered",r),i.updateImage(n)}function a(t){e(t).off("CornerstoneImageRendered",r),i.updateImage(t)}var o="referenceLines";t.referenceLines.tool={enable:n,disable:a}}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,r,n,a){var o=i.getEnabledElement(n).image,s=i.getEnabledElement(a).image;if(o&&s){var f=t.metaData.get("imagePlane",o.imageId),l=t.metaData.get("imagePlane",s.imageId);if(f&&l&&f.frameOfReferenceUID===l.frameOfReferenceUID){var u=f.rowCosines.clone().cross(f.columnCosines),c=l.rowCosines.clone().cross(l.columnCosines),d=u.angleTo(c);if(d=Math.abs(d),!(d<.5)){var h=t.referenceLines.calculateReferenceLine(f,l);if(h){var m=i.pixelToCanvas(r.element,h.start),b=i.pixelToCanvas(r.element,h.end),v=t.toolColors.getActiveColor(),w=t.toolStyle.getToolWidth();e.setTransform(1,0,0,1,0,0),e.save(),e.beginPath(),e.strokeStyle=v,e.lineWidth=w,e.moveTo(m.x,m.y),e.lineTo(b.x,b.y),e.stroke(),e.restore()}}}}}t.referenceLines.renderActiveReferenceLine=r}($,cornerstone,cornerstoneTools),function(e,i){"use strict";function t(){function t(i,t,n,a,s,f){if(!r.hasOwnProperty(n))throw"Request type must be one of interaction, thumbnail, or prefetch";if(i&&t){var l={type:n,imageId:t,preventCache:a,doneCallback:s,failCallback:f},u=e.imageCache.getImagePromise(t);if(u)return void u.then(function(e){s(e)},function(e){f(e)});r[n].push(l),"interaction"===n&&(o=i)}}function l(e){if(!r.hasOwnProperty(e))throw"Request type must be one of interaction, thumbnail, or prefetch";r[e]=[]}function u(){s&&setTimeout(function(){var e=h();e&&c(e)},f)}function c(i){var t=i.type;n[t]++,s=!0;var r=i.imageId,a=i.doneCallback,o=i.failCallback,f=e.imageCache.getImagePromise(r);if(f)return void f.then(function(e){n[t]--,a(e),u()},function(e){n[t]--,o(e),u()});var l;l=i.preventCache===!0?e.loadImage(r):e.loadAndCacheImage(r),l.then(function(e){n[t]--,a(e),u()},function(e){n[t]--,o(e),u()})}function d(){if(!s){var e=i.getMaxSimultaneousRequests();a={interaction:Math.max(e,1),thumbnail:Math.max(e-2,1),prefetch:Math.max(e-1,1)};for(var t=0;t<e;t++){var r=h();r&&c(r)}}}function h(){return r.interaction.length&&n.interaction<a.interaction?r.interaction.shift():r.thumbnail.length&&n.thumbnail<a.thumbnail?r.thumbnail.shift():r.prefetch.length&&n.prefetch<a.prefetch?r.prefetch.shift():(r.interaction.length||r.thumbnail.length||r.prefetch.length||(s=!1),!1)}function m(){return r}var b={addRequest:t,clearRequestStack:l,startGrabbing:d,getRequestPool:m};return b}var r={interaction:[],thumbnail:[],prefetch:[]},n={interaction:0,thumbnail:0,prefetch:0},a={interaction:6,thumbnail:6,prefetch:5},o,s=!1,f=20;i.requestPoolManager=t()}(cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(r,n){if(void 0===r)throw"playClip: element must not be undefined";var o=t.getToolState(r,"stack");if(o&&o.data&&o.data.length){var s=o.data[0],f=t.getToolState(r,a),l;f&&f.data&&f.data.length?l=f.data[0]:(l={intervalId:void 0,framesPerSecond:30,lastFrameTimeStamp:void 0,frameRate:0,loop:!0},t.addToolState(r,a,l)),n&&(l.framesPerSecond=n),void 0===l.intervalId&&(l.intervalId=setInterval(function(){var n=s.currentImageIdIndex;if(l.framesPerSecond>0?n++:n--,!l.loop&&(n>=s.imageIds.length||n<0)){var a={element:r},o=e.Event("CornerstoneToolsClipStopped",a);return e(r).trigger(o,a),clearInterval(l.intervalId),void(l.intervalId=void 0)}if(n>=s.imageIds.length&&(n=0),n<0&&(n=s.imageIds.length-1),n!==s.currentImageIdIndex){var f=t.loadHandlerManager.getStartLoadHandler(),u=t.loadHandlerManager.getEndLoadHandler(),c=t.loadHandlerManager.getErrorLoadingHandler();f&&f(r);var d=i.getViewport(r),h;h=s.preventCache===!0?i.loadImage(s.imageIds[n]):i.loadAndCacheImage(s.imageIds[n]),h.then(function(e){s.currentImageIdIndex=n,i.displayImage(r,e,d),u&&u(r)},function(e){var i=s.imageIds[n];c&&c(r,i,e)})}},1e3/Math.abs(l.framesPerSecond)))}}function n(e){var i=t.getToolState(e,a);if(i&&i.data&&i.data.length){var r=i.data[0];clearInterval(r.intervalId),r.intervalId=void 0}}var a="playClip";t.playClip=r,t.stopClip=n}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,i){var r=i.element,a=i.enabledElement.canvas.width,o=i.enabledElement.canvas.height;if(!a||!o)return!1;var s=i.enabledElement.canvas.getContext("2d");s.setTransform(1,0,0,1,0,0),s.save();var f=t.scrollIndicator.getConfiguration();s.fillStyle=f.backgroundColor,s.fillRect(0,o-n,a,n);var l=t.getToolState(r,"stack");if(l&&l.data&&l.data.length){var u=l.data[0].imageIds,c=l.data[0].currentImageIdIndex,d=a/u.length,h=d*c;s.fillStyle=f.fillColor,s.fillRect(h,o-n,d,n),s.restore()}}var n=6,a={backgroundColor:"rgb(19, 63, 141)",fillColor:"white"};t.scrollIndicator=t.displayTool(r),t.scrollIndicator.setConfiguration(a)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,i){return e-i}function n(e,i){e=Math.round(e)||0,i=Math.round(i)||0;var t=[],r=i-e+1;if(r<=0)return t;for(;r--;)t[r]=i--;return t}function a(e,i){var t=[],r=[];return e.forEach(function(e){e<i?t.push(e):e>i&&r.push(e)}),{low:e.indexOf(g(t)),high:e.indexOf(k(r))}}function o(e){function n(e){var i=c.indicesToRequest.indexOf(e);i>-1&&c.indicesToRequest.splice(i,1)}function o(e){var i=l.imageIds.indexOf(e.imageId);n(i)}function s(i){console.log("prefetch errored: "+i),k&&k(e,w,i,"stackPrefetch")}var f=t.getToolState(e,"stack");if(f&&f.data&&f.data.length){var l=f.data[0],u=t.getToolState(e,m);if(u){var c=u.data[0];if(c&&c.indicesToRequest&&c.indicesToRequest.length||(c.enabled=!1),c.enabled!==!1){u.data[0].indicesToRequest.sort(r);var d=c.indicesToRequest.slice();if(d.forEach(function(e){var t=l.imageIds[e];if(t){var r=i.imageCache.getImagePromise(t);r&&"resolved"===r.state()&&n(e)}}),c.indicesToRequest.length){var h=t.requestPoolManager;h.clearRequestStack(b);for(var v=a(c.indicesToRequest,l.currentImageIdIndex),w,p,g=!1,k=t.loadHandlerManager.getErrorLoadingHandler(),_=v.low,y=v.high;_>0||y<c.indicesToRequest.length;)_>=0&&(p=c.indicesToRequest[_--],w=l.imageIds[p],h.addRequest(e,w,b,g,o,s)),y<c.indicesToRequest.length&&(p=c.indicesToRequest[y++],w=l.imageIds[p],h.addRequest(e,w,b,g,o,s));h.startGrabbing()}}}}}function s(e){var i=e.data.element,r=t.getToolState(i,m);r&&r.data&&r.data.length&&t.requestPoolManager.clearRequestStack(b)}function f(e,i){var r=e.data.element,n=t.getToolState(r,"stack");if(n&&n.data&&n.data.length){var a=n.data[0],o=a.imageIds.indexOf(i.imageId);if(!(o<0)){var s=t.getToolState(r,m);s&&s.data&&s.data.length&&s.data[0].indicesToRequest.push(o)}}}function l(e){clearTimeout(w),w=setTimeout(function(){var i=e.target;o(i)},p)}function u(r){var a=t.getToolState(r,m);a.data=[];var u=t.getToolState(r,"stack");if(u&&u.data&&u.data.length){var c=u.data[0];if(c.preventCache===!0)return void console.warn("A stack that should not be cached was given the stackPrefetch");var d={indicesToRequest:n(0,c.imageIds.length-1),enabled:!0,direction:1},h=d.indicesToRequest.indexOf(c.currentImageIdIndex);d.indicesToRequest.splice(h,1),t.addToolState(r,m,d),o(r),e(r).off("CornerstoneNewImage",l),e(r).on("CornerstoneNewImage",l),e(i).off("CornerstoneImageCacheFull",s),e(i).on("CornerstoneImageCacheFull",{element:r},s),e(i).off("CornerstoneImageCachePromiseRemoved",f),e(i).on("CornerstoneImageCachePromiseRemoved",{element:r},f)}}function c(r){clearTimeout(w),e(r).off("CornerstoneNewImage",l),e(i).off("CornerstoneImageCacheFull",s),e(i).off("CornerstoneImageCachePromiseRemoved",f);var n=t.getToolState(r,m);n&&n.data.length&&(n.data[0].enabled=!1,t.requestPoolManager.clearRequestStack(b))}function d(){return v}function h(e){v=e}var m="stackPrefetch",b="prefetch",v={},w,p,g=function(e){return Math.max.apply(null,e)},k=function(e){return Math.min.apply(null,e)};t.stackPrefetch={enable:u,disable:c,getConfiguration:d,setConfiguration:h}}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){e(t.element).off("CornerstoneToolsMouseDrag",o),e(t.element).off("CornerstoneToolsMouseUp",r),e(t.element).off("CornerstoneToolsMouseClick",r)}function n(i,n){if(t.isMouseButtonEnabled(n.which,i.data.mouseButtonMask)){var a={deltaY:0};return e(n.element).on("CornerstoneToolsMouseDrag",a,o),e(n.element).on("CornerstoneToolsMouseUp",r),e(n.element).on("CornerstoneToolsMouseClick",r),i.stopImmediatePropagation(),!1}}function a(e,i){var r=t.stackScroll.getConfiguration(),n=r.wheelDeltaPixelsPerImage||100,a=i.direction*Math.max(1,Math.round(Math.abs(i.wheelDeltaPixels)/n));t.scroll(i.element,a)}function o(i,r){var n=r.element,a=t.getToolState(n,"stack");if(a&&a.data&&a.data.length){var o=a.data[0],s=t.stackScroll.getConfiguration(),f=e(n).height()/Math.max(o.imageIds.length,8);if(s&&s.stackScrollSpeed&&(f=s.stackScrollSpeed),i.data.deltaY=i.data.deltaY||0,i.data.deltaY+=r.deltaPoints.page.y,Math.abs(i.data.deltaY)>=f){var l=i.data.deltaY/f,u=Math.round(l),c=i.data.deltaY%f;i.data.deltaY=c,t.scroll(n,u)}return!1}}function s(e,i){var r=t.stackScrollMultiTouch.getConfiguration();r&&r.testPointers(i)&&o(e,i)}t.stackScroll=t.simpleMouseButtonTool(n),t.stackScrollWheel=t.mouseWheelTool(a);var f={wheelDeltaPixelsPerImage:100};t.stackScrollWheel.setConfiguration(f);var l={eventData:{deltaY:0}};t.stackScrollTouchDrag=t.touchDragTool(o,l);var u={testPointers:function(e){return e.numPointers>=3}};t.stackScrollMultiTouch=t.multiTouchDragTool(s,l),t.stackScrollMultiTouch.setConfiguration(u)}($,cornerstone,cornerstoneTools),function(e){"use strict";function i(i,r){var n=r.keyCode;if(n===t.UP||n===t.DOWN){var a=1;n===t.DOWN&&(a=-1),e.scroll(r.element,a)}}var t={UP:38,DOWN:40};e.stackScrollKeyboard=e.keyboardTool(i)}(cornerstoneTools),function(e,i,t){"use strict";function r(e){var r={imageIdToolState:t.globalImageIdSpecificToolStateManager.saveToolState(),elementToolState:{},elementViewport:{}};return e.forEach(function(e){var n=t.getElementToolStateManager(e);n!==t.globalImageIdSpecificToolStateManager&&(r.elementToolState[e.id]=n.saveToolState(),r.elementViewport[e.id]=i.getViewport(e))}),r}function n(e){if(e.hasOwnProperty("imageIdToolState")&&e.hasOwnProperty("elementToolState")&&e.hasOwnProperty("elementViewport"))return t.globalImageIdSpecificToolStateManager.restoreToolState(e.imageIdToolState),Object.keys(e.elementViewport).forEach(function(r){var n=document.getElementById(r);if(n&&e.elementToolState.hasOwnProperty(r)){var a=t.getElementToolStateManager(n);if(a!==t.globalImageIdSpecificToolStateManager){a.restoreToolState(e.elementToolState[r]);var o=e.elementViewport[r];i.setViewport(n,o),i.updateImage(n)}}}),e}t.appState={save:r,restore:n}}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(){function e(e,i,t){r.hasOwnProperty(e)===!1&&(r[e]={});var n=r[e];n.hasOwnProperty(i)===!1&&(n[i]={data:[]});var a=n[i];a.data.push(t)}function i(e,i){if(r.hasOwnProperty(e)!==!1){var t=r[e];if(t.hasOwnProperty(i)!==!1){var n=t[i];return n}}}function t(e,i,t){if(r.hasOwnProperty(e)!==!1){var n=r[e];if(n.hasOwnProperty(i)!==!1){for(var a=n[i],o=-1,s=0;s<a.data.length;s++)a.data[s]===t&&(o=s);o!==-1&&a.data.splice(o,1)}}}var r={},n={get:i,add:e,remove:t};return n}var n=r();t.newFrameOfReferenceSpecificToolStateManager=r,t.globalFrameOfReferenceSpecificToolStateManager=n}($,cornerstone,cornerstoneTools),function(e,i){"use strict";function t(){function i(e){return f[e]}function t(e,i){f[e]=i}function r(){return f}function n(e){f=e}function a(i,t,r){var n=e.getEnabledElement(i);n.image&&f.hasOwnProperty(n.image.imageId)!==!1||(f[n.image.imageId]={});var a=f[n.image.imageId];a.hasOwnProperty(t)===!1&&(a[t]={data:[]});var o=a[t];o.data.push(r)}function o(i,t){var r=e.getEnabledElement(i);if(r.image&&f.hasOwnProperty(r.image.imageId)!==!1){var n=f[r.image.imageId];if(n.hasOwnProperty(t)!==!1){var a=n[t];return a}}}function s(i){var t=e.getEnabledElement(i);t.image&&f.hasOwnProperty(t.image.imageId)!==!1&&delete f[t.image.imageId]}var f={},l={get:o,add:a,clear:s,saveImageIdToolState:i,restoreImageIdToolState:t,saveToolState:r,restoreToolState:n,toolState:f};return l}var r=t();i.newImageIdSpecificToolStateManager=t,i.globalImageIdSpecificToolStateManager=r}(cornerstone,cornerstoneTools),function(e){"use strict";function i(){function e(e){o=e}function i(){return o}function t(e){s=e}function r(){return s}function n(e){f=e}function a(){return f}var o,s,f,l={setStartLoadHandler:e,getStartLoadHandler:i,setEndLoadHandler:t,getEndLoadHandler:r,setErrorLoadingHandler:n,getErrorLoadingHandler:a};return l}e.loadHandlerManager=i()}(cornerstoneTools),function(e,i){"use strict";function t(e,i){function t(){return o}function r(e){o=e}function n(t,r,n){if(!(e.indexOf(r)>=0))return i.add(t,r,n);o.hasOwnProperty(r)===!1&&(o[r]={data:[]});var a=o[r];a.data.push(n)}function a(t,r){if(e.indexOf(r)>=0){o.hasOwnProperty(r)===!1&&(o[r]={data:[]});var n=o[r];return n}return i.get(t,r)}var o={},s={get:a,add:n,saveToolState:t,restoreToolState:r,toolState:o};return s}function r(e){var t=i.getElementToolStateManager(e);t||(t=i.globalImageIdSpecificToolStateManager);var r=["stack","stackPrefetch","playClip","volume","slab","referenceLines","crosshairs"],a=i.newStackSpecificToolStateManager(r,t);n.push(a),i.setElementToolStateManager(e,a)}var n=[];i.newStackSpecificToolStateManager=t,i.addStackStateManager=r}(cornerstone,cornerstoneTools),function(e){"use strict";function i(){function e(e){s=e}function i(){return s}function t(e){o=e}function r(){return o}function n(e){f=e}function a(){return f}var o=15,s=o+"px Arial",f="transparent",l={setFont:e,getFont:i,setFontSize:t,getFontSize:r,setBackgroundColor:n,getBackgroundColor:a};return l}e.textStyle=i()}(cornerstoneTools),function(e,i){"use strict";function t(e,i){function t(t,r,a){if(!(e.indexOf(r)>=0))return i.add(t,r,a);n.hasOwnProperty(r)===!1&&(n[r]={data:[]});var o=n[r];o.data.push(a)}function r(t,r){if(e.indexOf(r)>=0){n.hasOwnProperty(r)===!1&&(n[r]={data:[]});var a=n[r];return a}return i.get(t,r)}var n={},a={get:r,add:t};return a}function r(e,t){t=t||["timeSeries"];var r=i.getElementToolStateManager(e);void 0===r&&(r=i.globalImageIdSpecificToolStateManager);var a=i.newTimeSeriesSpecificToolStateManager(t,r);n.push(a),i.setElementToolStateManager(e,a)}var n=[];i.newTimeSeriesSpecificToolStateManager=t,i.addTimeSeriesStateManager=r}(cornerstone,cornerstoneTools),function(e){"use strict";function i(){function e(e){l=e}function i(){return l}function t(e){s=e}function r(){return s}function n(e){f=e}function a(){return f}function o(e){return e?f:s}var s="white",f="greenyellow",l="transparent",u={setFillColor:e,getFillColor:i,setToolColor:t,getToolColor:r,setActiveColor:n,getActiveColor:a,getColorIfActive:o};return u}e.toolColors=i()}(cornerstoneTools),function(e){"use strict";function i(){function e(e){t=e.currentPoints.canvas}function i(){return t}var t="",r={setCoords:e,getCoords:i};return r}e.toolCoordinates=i()}(cornerstoneTools),function(e,i){"use strict";function t(t){var r=e.getEnabledElement(t);return void 0===r.toolStateManager&&(r.toolStateManager=i.globalImageIdSpecificToolStateManager),r.toolStateManager}function r(e,i,r){var n=t(e);n.add(e,i,r);var a="CornerstoneToolsMeasurementAdded",o={toolType:i,element:e,measurementData:r};$(e).trigger(a,o)}function n(e,i){var r=t(e);return r.get(e,i)}function a(e,i,r){for(var n=t(e),a=n.get(e,i),o=-1,s=0;s<a.data.length;s++)a.data[s]===r&&(o=s);if(o!==-1){a.data.splice(o,1);var f="CornerstoneToolsMeasurementRemoved",l={toolType:i,element:e,measurementData:r};$(e).trigger(f,l)}}function o(e,i){var r=t(e),n=r.get(e,i);void 0!==n&&(n.data=[])}function s(i,t){var r=e.getEnabledElement(i);r.toolStateManager=t}i.addToolState=r,i.getToolState=n,i.removeToolState=a,i.clearToolState=o,i.setElementToolStateManager=s,i.getElementToolStateManager=t}(cornerstone,cornerstoneTools),function(e){"use strict";function i(){function e(e){n=e}function i(){return n}function t(e){a=e}function r(){return a}var n=1,a=2,o={setToolWidth:e,getToolWidth:i,setActiveWidth:t,getActiveWidth:r};return o}e.toolStyle=i()}(cornerstoneTools),function(e,i,t){"use strict";function r(e,t,r){if(r!==t){var n=i.getViewport(t),a=i.getViewport(r);a.scale===n.scale&&a.translation.x===n.translation.x&&a.translation.y===n.translation.y||(a.scale=n.scale,a.translation.x=n.translation.x,a.translation.y=n.translation.y,e.setViewport(r,a))}}t.panZoomSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,r,n){if(n!==r){var a=t.getToolState(r,"stack"),o=a.data[0],s=t.getToolState(n,"stack"),f=s.data[0],l=o.currentImageIdIndex;if(l=Math.min(Math.max(l,0),f.imageIds.length-1),l!==f.currentImageIdIndex){var u=t.loadHandlerManager.getStartLoadHandler(),c=t.loadHandlerManager.getEndLoadHandler(),d=t.loadHandlerManager.getErrorLoadingHandler();u&&u(n);var h;h=f.preventCache===!0?i.loadImage(f.imageIds[l]):i.loadAndCacheImage(f.imageIds[l]),h.then(function(t){var r=i.getViewport(n);f.currentImageIdIndex=l,e.displayImage(n,t,r),c&&c(n)},function(e){var i=f.imageIds[l];d&&d(n,i,e)})}}}t.stackImageIndexSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,r,n,a,o){if(n!==r){var s=i.getEnabledElement(r),f=t.metaData.get("imagePlane",s.image.imageId),l=f.imagePositionPatient,u=t.getToolState(n,"stack"),c=u.data[0],d=Number.MAX_VALUE,h=-1;if(o){var m=l.clone().add(o);if(c.imageIds.forEach(function(e,i){var r=t.metaData.get("imagePlane",e),n=r.imagePositionPatient,a=m.distanceToSquared(n);a<d&&(d=a,h=i)}),h!==c.currentImageIdIndex&&h!==-1){var b=t.loadHandlerManager.getStartLoadHandler(),v=t.loadHandlerManager.getEndLoadHandler(),w=t.loadHandlerManager.getErrorLoadingHandler();b&&b(n);var p;p=c.preventCache===!0?i.loadImage(c.imageIds[h]):i.loadAndCacheImage(c.imageIds[h]),p.then(function(t){var r=i.getViewport(n);c.currentImageIdIndex=h,e.displayImage(n,t,r),v&&v(n)},function(e){var i=c.imageIds[h];w&&w(n,i,e)})}}}}t.stackImagePositionOffsetSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(r,n,a){if(a!==n){var o=i.getEnabledElement(n).image,s=t.metaData.get("imagePlane",o.imageId),f=s.imagePositionPatient,l=t.getToolState(a,"stack"),u=l.data[0],c=Number.MAX_VALUE,d=-1;if(e.each(u.imageIds,function(e,i){var r=t.metaData.get("imagePlane",i),n=r.imagePositionPatient,a=n.distanceToSquared(f);a<c&&(c=a,d=e)}),d!==u.currentImageIdIndex){var h=t.loadHandlerManager.getStartLoadHandler(),m=t.loadHandlerManager.getEndLoadHandler(),b=t.loadHandlerManager.getErrorLoadingHandler();if(h&&h(a),d!==-1){var v;v=u.preventCache===!0?i.loadImage(u.imageIds[d]):i.loadAndCacheImage(u.imageIds[d]),v.then(function(e){var t=i.getViewport(a);u.currentImageIdIndex=d,r.displayImage(a,e,t),m&&m(a)},function(e){var i=u.imageIds[d];b&&b(a,i,e)})}}}}t.stackImagePositionSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,r,n,a){if(r!==n&&a&&a.direction){var o=t.getToolState(n,"stack"),s=o.data[0],f=s.currentImageIdIndex+a.direction;if(f=Math.min(Math.max(f,0),s.imageIds.length-1),s.currentImageIdIndex!==f){var l=t.loadHandlerManager.getStartLoadHandler(),u=t.loadHandlerManager.getEndLoadHandler(),c=t.loadHandlerManager.getErrorLoadingHandler();l&&l(n);var d;d=s.preventCache===!0?i.loadImage(s.imageIds[f]):i.loadAndCacheImage(s.imageIds[f]),d.then(function(t){var r=i.getViewport(n);s.currentImageIdIndex=f,e.displayImage(n,t,r),u&&u(n)},function(e){var i=s.imageIds[f];c&&c(n,i,e)})}}}t.stackScrollSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(r,n){function a(e,i){l.length&&u.length&&(c=!0,u.forEach(function(t){var r=u.indexOf(t);if(r!==-1){var n=d.imageIds.targetElements[r],a=l.indexOf(e);if(a!==-1){var o=d.imageIds.sourceElements[a],s;s=o===n?0:d.distances[o][n],h(f,e,t,i,s)}}}),c=!1)}function o(e,i){c!==!0&&a(e.currentTarget,i)}function s(e,i){var t=i.element;f.remove(t)}var f=this,l=[],u=[],c=!1,d={},h=n;this.setHandler=function(e){h=e},this.getHandler=function(){return h},this.getDistances=function(){l.length&&u.length&&(d.distances={},d.imageIds={sourceElements:[],targetElements:[]},l.forEach(function(e){var r=i.getEnabledElement(e);if(r&&r.image){var n=r.image.imageId,a=t.metaData.get("imagePlane",n);if(a&&a.imagePositionPatient){var o=a.imagePositionPatient;d.hasOwnProperty(r)||(d.distances[n]={},d.imageIds.sourceElements.push(n),u.forEach(function(r){var a=i.getEnabledElement(r);if(a&&a.image){var s=a.image.imageId;if(d.imageIds.targetElements.push(s),e!==r&&n!==s&&!d.distances[n].hasOwnProperty(s)){var f=t.metaData.get("imagePlane",s);if(f&&f.imagePositionPatient){var l=f.imagePositionPatient;d.distances[n][s]=l.clone().sub(o)}}}}),Object.keys(d.distances[n]).length||delete d.distances[n])}}}))},this.addSource=function(i){var t=l.indexOf(i);t===-1&&(l.push(i),e(i).on(r,o),f.getDistances(),f.updateDisableHandlers())},this.addTarget=function(e){var i=u.indexOf(e);i===-1&&(u.push(e),f.getDistances(),h(f,e,e,0),f.updateDisableHandlers())},this.add=function(e){f.addSource(e),f.addTarget(e)},this.removeSource=function(i){var t=l.indexOf(i);t!==-1&&(l.splice(t,1),e(i).off(r,o),f.getDistances(),a(i),f.updateDisableHandlers())},this.removeTarget=function(e){var i=u.indexOf(e);i!==-1&&(u.splice(i,1),f.getDistances(),h(f,e,e,0),f.updateDisableHandlers())},this.remove=function(e){f.removeTarget(e),f.removeSource(e)},this.getSourceElements=function(){return l},this.getTargetElements=function(){return u},this.displayImage=function(e,t,r){c=!0,i.displayImage(e,t,r),c=!1},this.setViewport=function(e,t){c=!0,i.setViewport(e,t),c=!1},this.updateDisableHandlers=function(){var i=e.unique(l.concat(u));i.forEach(function(i){e(i).off("CornerstoneElementDisabled",s),e(i).on("CornerstoneElementDisabled",s)})},this.destroy=function(){var i=e.unique(l.concat(u));i.forEach(function(e){f.remove(e)})}}t.Synchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,t,r){r!==t&&i.updateImage(r)}t.updateImageSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,t,r){if(r!==t){var n=i.getViewport(t),a=i.getViewport(r);a.voi.windowWidth===n.voi.windowWidth&&a.voi.windowCenter===n.voi.windowCenter&&a.invert===n.invert||(a.voi.windowWidth=n.voi.windowWidth,a.voi.windowCenter=n.voi.windowCenter,a.invert=n.invert,e.setViewport(r,a))}}t.wwwcSynchronizer=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e){var t=[];e.timeSeries.stacks.forEach(function(r){var n;n=r.preventCache===!0?i.loadImage(r.imageIds[e.imageIdIndex]):i.loadAndCacheImage(r.imageIds[e.imageIdIndex]),n.then(function(i){var r=Math.round(e.handles.end.x)+Math.round(e.handles.end.y)*i.width,n=i.getPixelData()[r];t.push(n)})}),e.lineSample.set(t)}function n(e){var i=t.getToolState(e.element,"timeSeries");if(void 0!==i&&void 0!==i.data&&0!==i.data.length){var n=i.data[0],a={timeSeries:n,lineSample:new t.LineSampleMeasurement,imageIdIndex:n.stacks[n.currentStackIndex].currentImageIdIndex,visible:!0,handles:{end:{x:e.currentPoints.image.x,y:e.currentPoints.image.y,highlight:!0,active:!0}}};return r(a),t.MeasurementManager.add(a),a}}function a(e,r){var n=t.getToolState(e.currentTarget,o);if(void 0!==n){var a=r.canvasContext.canvas.getContext("2d");i.setToPixelCoordinateSystem(r.enabledElement,a);for(var s="white",f=0;f<n.data.length;f++){a.save();var l=n.data[f];a.beginPath(),t.drawHandles(a,r,l.handles,s),a.stroke();var u=t.setContextToDisplayFontSize(r.enabledElement,r.canvasContext,15);a.font=""+u.fontSize+"px Arial";var c=Math.round(l.handles.end.x),d=Math.round(l.handles.end.y),h=l.handles.end.x+3,m=l.handles.end.y-3;a.fillStyle=s,a.fillText(""+c+","+d,h,m),a.restore()}}}var o="probe4D";t.probeTool4D=t.mouseButtonTool({createNewMeasurement:n,onImageRendered:a,toolType:o})}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,r,n){var a=t.getToolState(e,"timeSeries");if(void 0!==a&&void 0!==a.data&&0!==a.data.length){var o=a.data[0],s=o.stacks[o.currentStackIndex],f=s.currentImageIdIndex,l=o.currentStackIndex+r;if(n?(l>=o.stacks.length&&(l=0),l<0&&(l=o.stacks.length-1)):(l=Math.min(o.stacks.length-1,l),l=Math.max(0,l)),l!==o.currentStackIndex){var u=i.getViewport(e),c=o.stacks[l],d=t.loadHandlerManager.getStartLoadHandler(),h=t.loadHandlerManager.getEndLoadHandler(),m=t.loadHandlerManager.getErrorLoadingHandler();d&&d(e);var b;b=c.preventCache===!0?i.loadImage(c.imageIds[f]):i.loadAndCacheImage(c.imageIds[f]),b.then(function(t){o.currentImageIdIndex!==f&&(c.currentImageIdIndex=f,o.currentStackIndex=l,i.displayImage(e,t,u),h&&h(e))},function(i){var t=c.imageIds[f];m&&m(e,t,i)})}}}t.incrementTimePoint=r}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,i){if(void 0===e)throw"playClip: element must not be undefined";void 0===i&&(i=30);var r=t.getToolState(e,"timeSeries");if(void 0!==r&&void 0!==r.data&&0!==r.data.length){var n=t.getToolState(e,a),o;void 0===n||0===n.data.length?(o={intervalId:void 0,framesPerSecond:i,lastFrameTimeStamp:void 0,frameRate:0},t.addToolState(e,a,o)):(o=n.data[0],o.framesPerSecond=i),void 0===o.intervalId&&(o.intervalId=setInterval(function(){o.framesPerSecond>0?t.incrementTimePoint(e,1,!0):t.incrementTimePoint(e,-1,!0)},1e3/Math.abs(o.framesPerSecond)))}}function n(e){var i=t.getToolState(e,a),r;void 0!==i&&0!==i.data.length&&(r=i.data[0],clearInterval(r.intervalId),r.intervalId=void 0)}var a="timeSeriesPlayer";t.timeSeriesPlayer={start:r,stop:n}}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(i,t){e(t.element).off("CornerstoneToolsMouseDrag",a),e(t.element).off("CornerstoneToolsMouseUp",r),e(t.element).off("CornerstoneToolsMouseClick",r)}function n(i,n){if(t.isMouseButtonEnabled(n.which,i.data.mouseButtonMask)){var o={deltaY:0,options:i.data.options};return e(n.element).on("CornerstoneToolsMouseDrag",o,a),e(n.element).on("CornerstoneToolsMouseUp",r),e(n.element).on("CornerstoneToolsMouseClick",r),i.stopImmediatePropagation(),!1}}function a(i,r){i.data.deltaY+=r.deltaPoints.page.y;var n=t.getToolState(r.element,"timeSeries");if(void 0!==n&&void 0!==n.data&&0!==n.data.length){var a=n.data[0],o=e(r.element).height()/a.stacks.length;if(void 0!==i.data.options&&void 0!==i.data.options.timeSeriesScrollSpeed&&(o=i.data.options.timeSeriesScrollSpeed),i.data.deltaY>=o||i.data.deltaY<=-o){var s=Math.round(i.data.deltaY/o),f=i.data.deltaY%o;t.incrementTimePoint(r.element,s),i.data.deltaY=f}return!1}}function o(e,i){var r=-i.direction;t.incrementTimePoint(i.element,r)}function s(e){var i=e.originalEvent.detail,r={deltaY:0};r.deltaY+=i.deltaPoints.page.y;var n=t.getToolState(i.element,"stack");if(void 0!==n&&void 0!==n.data&&0!==n.data.length){if(r.deltaY>=3||r.deltaY<=-3){var a=r.deltaY/3,o=r.deltaY%3;t.setTimePoint(r.element,a),r.deltaY=o}return!1}}t.timeSeriesScroll=t.simpleMouseButtonTool(n),t.timeSeriesScrollWheel=t.mouseWheelTool(o),t.timeSeriesScrollTouchDrag=t.touchDragTool(s)}($,cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e,i){var t=Math.pow(10,i);return Math.round(e*t)/t}t.roundToDecimal=r}($,cornerstone,cornerstoneTools),function(e){"use strict";function i(e){return parseFloat("."+e)}function t(e,t){if(dicomParser&&void 0!==e.data&&"PT"===e.data.string("x00080060")){var r=t*e.slope+e.intercept,n=e.data.floatString("x00101030");if(void 0!==n){var a=e.data.elements.x00540016;if(void 0!==a){a=a.items[0].dataSet;var o=dicomParser.parseTM(a.string("x00181072")),s=a.floatString("x00181074"),f=a.floatString("x00181075"),l=dicomParser.parseTM(e.data.string("x00080031"));if(o&&s&&f&&l){var u=i(l.fractionalSeconds)+l.seconds+60*l.minutes+60*l.hours*60,c=i(o.fractionalSeconds)+o.seconds+60*o.minutes+60*o.hours*60,d=u-c,h=s*Math.exp(-d*Math.log(2)/f),m=r*n/h*1e3;return m}}}}}e.calculateSUV=t}(cornerstoneTools),function(e,i,t,r){"use strict";function n(e){var i=t.point.copy(e.page),r=t.point.copy(e.image),n=t.point.copy(e.client),a=t.point.copy(e.canvas);return{page:i,image:r,client:n,canvas:a}}r.copyPoints=n}($,cornerstone,cornerstoneMath,cornerstoneTools),function(e){"use strict";function i(e,i,t,r,n){var a=10,o=Math.atan2(t.y-i.y,t.x-i.x);e.beginPath(),e.moveTo(i.x,i.y),e.lineTo(t.x,t.y),e.strokeStyle=r,e.lineWidth=n,e.stroke(),e.beginPath(),e.moveTo(t.x,t.y),e.lineTo(t.x-a*Math.cos(o-Math.PI/7),t.y-a*Math.sin(o-Math.PI/7)),e.lineTo(t.x-a*Math.cos(o+Math.PI/7),t.y-a*Math.sin(o+Math.PI/7)),e.lineTo(t.x,t.y),
e.lineTo(t.x-a*Math.cos(o-Math.PI/7),t.y-a*Math.sin(o-Math.PI/7)),e.strokeStyle=r,e.lineWidth=n,e.stroke(),e.fillStyle=r,e.fill()}e.drawArrow=i}(cornerstoneTools),function(e){"use strict";function i(e,i,t,r){var n=6;e.beginPath(),e.strokeStyle=t,e.lineWidth=r,e.arc(i.x,i.y,n,0,2*Math.PI),e.stroke()}e.drawCircle=i}(cornerstoneTools),function(e){"use strict";function i(e,i,t,r,n){var a=.5522848,o=r/2*a,s=n/2*a,f=i+r,l=t+n,u=i+r/2,c=t+n/2;e.beginPath(),e.moveTo(i,c),e.bezierCurveTo(i,c-s,u-o,t,u,t),e.bezierCurveTo(u+o,t,f,c-s,f,c),e.bezierCurveTo(f,c+s,u+o,l,u,l),e.bezierCurveTo(u-o,l,i,c+s,i,c),e.closePath(),e.stroke()}e.drawEllipse=i}(cornerstoneTools),function(e){"use strict";function i(i,t,r,n,a,o){"[object Array]"!==Object.prototype.toString.call(t)&&(t=[t]);var s=5,f=e.textStyle.getFont(),l=e.textStyle.getFontSize(),u=e.textStyle.getBackgroundColor();i.save(),i.font=f,i.textBaseline="top",i.strokeStyle=a;var c=0;t.forEach(function(e){var t=i.measureText(e).width;c=Math.max(c,t)}),i.fillStyle=u;var d={width:c+2*s,height:s+t.length*(l+s)};return o&&o.centering&&o.centering.x===!0&&(r-=d.width/2),o&&o.centering&&o.centering.y===!0&&(n-=d.height/2),d.left=r,d.top=n,o&&o.debug===!0&&(i.fillStyle="#FF0000"),i.fillRect(d.left,d.top,d.width,d.height),t.forEach(function(e,t){i.fillStyle=a;var o;o=0===t?n+t*(l+s):n+t*(l+2*s),i.fillText(e,r+s,n+s+t*(l+s))}),i.restore(),d}e.drawTextBox=i}(cornerstoneTools),function(e,i){"use strict";function t(i,t,r,n,a){if(!i)throw"getLuminance: parameter element must not be undefined";t=Math.round(t),r=Math.round(r);var o=e.getEnabledElement(i),s=o.image,f=[],l=0,u=s.getPixelData(),c,d,h;if(s.color)for(d=0;d<a;d++)for(h=0;h<n;h++){c=4*((d+r)*s.columns+(h+t));var m=u[c],b=u[c+1],v=u[c+2];f[l++]=.2126*m+.7152*b+.0722*v}else for(d=0;d<a;d++)for(h=0;h<n;h++)c=(d+r)*s.columns+(h+t),f[l++]=u[c]*s.slope+s.intercept;return f}i.getLuminance=t}(cornerstone,cornerstoneTools),function(e,i){"use strict";function t(){var e=navigator.userAgent,i=e.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[],t;return/trident/i.test(i[1])?(t=/\brv[ :]+(\d+)/g.exec(e)||[],"IE "+(t[1]||"")):"Chrome"===i[1]&&(t=e.match(/\b(OPR|Edge)\/(\d+)/),null!==t)?t.slice(1).join(" ").replace("OPR","Opera"):(i=i[2]?[i[1],i[2]]:[navigator.appName,navigator.appVersion,"-?"],null!==(t=e.match(/version\/(\d+)/i))&&i.splice(1,1,t[1]),i.join(" "))}function r(){var e=i.stackPrefetch.getConfiguration();if(e.maxSimultaneousRequests)return e.maxSimultaneousRequests;var r=t(),n=r.split(" "),o=n[0],s=n[1],f=a[o];return f?f[s]?f[s]:f.default:a.default}function n(){var e=new RegExp("Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini");return!!e.test(navigator.userAgent)}var a={default:6,IE:{9:6,10:8,default:8},Firefox:{default:6},Opera:{10:8,11:6,12:6,default:6},Chrome:{default:6},Safari:{default:6}};i.getMaxSimultaneousRequests=r,i.getBrowserInfo=t,i.isMobileDevice=n}(cornerstone,cornerstoneTools),function(e,i){"use strict";function t(i,t,r,n,a){if(!i)throw"getRGBPixels: parameter element must not be undefined";t=Math.round(t),r=Math.round(r);var o=e.getEnabledElement(i),s=[],f=0,l=o.image.getPixelData(),u,c,d;if(o.image.color)for(c=0;c<a;c++)for(d=0;d<n;d++){u=4*((c+r)*o.image.columns+(d+t));var h=l[u],m=l[u+1],b=l[u+2],v=l[u+3];s[f++]=h,s[f++]=m,s[f++]=b,s[f++]=v}return s}i.getRGBPixels=t}(cornerstone,cornerstoneTools),function(e,i){"use strict";function t(e,i){var t=1<<e-1;return 0!==(i&t)}i.isMouseButtonEnabled=t}(cornerstone,cornerstoneTools),function(e,i,t){"use strict";function r(e){return e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault(),e.cancelBubble=!0,e.returnValue=!1,!1}t.pauseEvent=r}($,cornerstone,cornerstoneTools),function(e,i){"use strict";function t(i,t){if(i.boundingBox)return e.point.insideRect(t,i.boundingBox)}i.pointInsideBoundingBox=t}(cornerstoneMath,cornerstoneTools),function(e,i,t){"use strict";function r(e,i){var t=e.clone().sub(i.imagePositionPatient),r=i.rowCosines.dot(t)/i.columnPixelSpacing,n=i.columnCosines.dot(t)/i.rowPixelSpacing;return{x:r,y:n}}function n(e,i){var t=i.rowCosines.clone().multiplyScalar(e.x);t.multiplyScalar(i.columnPixelSpacing);var r=i.columnCosines.clone().multiplyScalar(e.y);r.multiplyScalar(i.rowPixelSpacing);var n=t.add(r);return n.add(i.imagePositionPatient),n}function a(e){var i=n({x:0,y:0},e),t=n({x:e.columns,y:0},e),r=n({x:0,y:e.rows},e),a=n({x:e.columns,y:e.rows},e),o={top:new cornerstoneMath.Line3(i,t),left:new cornerstoneMath.Line3(i,r),right:new cornerstoneMath.Line3(t,a),bottom:new cornerstoneMath.Line3(r,a)};return o}function o(e,i){var t=[];return Object.keys(i).forEach(function(r){var n=i[r],a=e.intersectLine(n);a&&t.push(a)}),t}function s(e,i){var t=e.rowCosines.clone().cross(e.columnCosines),r=new cornerstoneMath.Plane;r.setFromNormalAndCoplanarPoint(t,e.imagePositionPatient);var s=i.rowCosines.clone().cross(i.columnCosines),f=new cornerstoneMath.Plane;f.setFromNormalAndCoplanarPoint(s,i.imagePositionPatient);var l=f.clone().intersectPlane(r),u=l.origin,c=l.direction,d=n({x:i.columns,y:i.rows},i),h=i.imagePositionPatient.distanceTo(d),m=new cornerstoneMath.Line3;m.start=u,m.end=u.clone().add(c.multiplyScalar(h));var b=a(i),v=o(m,b);if(2===v.length){var w={start:v[0],end:v[1]};return w}}t.projectPatientPointToImagePlane=r,t.imagePointToPatientPoint=n,t.planePlaneIntersection=s}($,cornerstone,cornerstoneTools),function(e){"use strict";function i(e){window.setTimeout(e,1e3/60)}function t(e){return window.requestAnimationFrame(e)||window.webkitRequestAnimationFrame(e)||window.mozRequestAnimationFrame(e)||window.oRequestAnimationFrame(e)||window.msRequestAnimationFrame(e)||i(e)}e.requestAnimFrame=t}(cornerstoneTools),function(e,i){"use strict";function t(e,t){var r=i.getToolState(e,"stack");if(void 0!==r&&void 0!==r.data&&0!==r.data.length){var n=r.data[0],a=n.currentImageIdIndex+t;a=Math.min(n.imageIds.length-1,a),a=Math.max(0,a),i.scrollToIndex(e,a)}}i.scroll=t}(cornerstone,cornerstoneTools),function(e,i){"use strict";function t(e){return"number"==typeof e&&!isNaN(e)}function r(e){return e%1===0}function n(n,a){function o(i){if(l.currentImageIdIndex===a){try{e.getEnabledElement(n)}catch(e){return}e.displayImage(n,i,h),c&&c(n)}}function s(e){var i=l.imageIds[a];d&&d(n,i,e)}var f=i.getToolState(n,"stack");if(f&&f.data&&f.data.length){var l=f.data[0];if(!t(a))throw"scrollToIndex: index provided is not numeric: "+a;if(t(a)&&!r(a))throw"scrollToIndex: index provided is not an integer: "+a;a<0&&(a+=l.imageIds.length);var u=i.loadHandlerManager.getStartLoadHandler(),c=i.loadHandlerManager.getEndLoadHandler(),d=i.loadHandlerManager.getErrorLoadingHandler(),h=e.getViewport(n);if(a!==l.currentImageIdIndex){u&&u(n);var m={newImageIdIndex:a,direction:a-l.currentImageIdIndex};l.currentImageIdIndex=a;var b=l.imageIds[a],v=i.stackScroll.getConfiguration();if(v&&v.retryLoadOnScroll===!0){var w=e.imageCache.getImagePromise(b);w&&"rejected"===w.state()&&e.imageCache.removeImagePromise(b)}var p=i.requestPoolManager,g="interaction";p.clearRequestStack(g);var k=!!l.preventCache;p.addRequest(n,b,g,k,o,s),p.startGrabbing(),$(n).trigger("CornerstoneStackScroll",m)}}}i.scrollToIndex=n,i.loadHandlers={}}(cornerstone,cornerstoneTools),function(e,i){"use strict";function t(i,t,r){var n=.1;e.setToPixelCoordinateSystem(i,t,n);var a=r/i.viewport.scale/n,o=r/i.viewport.scale/n;return{fontSize:a,lineHeight:o,fontScale:n}}i.setContextToDisplayFontSize=t}(cornerstone,cornerstoneTools),function(e){"use strict";function i(e,i){e&&e.addEventListener?(s="addEventListener",f="removeEventListener"):(s="attachEvent",f="detachEvent",o="on"),l=i?"onwheel"in i.createElement("div")?"wheel":void 0!==i.onmousewheel?"mousewheel":"DOMMouseScroll":"wheel"}function t(e,t,r){i(window,document),a(e,l,t,r),"DOMMouseScroll"===l&&a(e,"MozMousePixelScroll",t,r)}function r(e,t,r){i(window,document),n(e,l,t,r),"DOMMouseScroll"===l&&n(e,"MozMousePixelScroll",t,r)}function n(e,i,t,r){e[f](o+i,t,r||!1)}function a(e,i,t,r){e[s](o+i,"wheel"===l?t:function(e){e||(e=window.event);var i={originalEvent:e,target:e.target||e.srcElement,type:"wheel",deltaMode:"MozMousePixelScroll"===e.type?0:1,deltaX:0,deltaY:0,deltaZ:0,preventDefault:function(){return!!e.preventDefault&&e.preventDefault()}};return"mousewheel"===l?(i.deltaY=-.025*e.wheelDelta,e.wheelDeltaX&&(i.deltaX=-.025*e.wheelDeltaX)):i.deltaY=e.detail,t(i)},r||!1)}var o="",s,f,l;e.addWheelListener=t,e.removeWheelListener=r}(cornerstoneTools),"undefined"==typeof cornerstone&&(cornerstone={}),"undefined"==typeof cornerstoneWADOImageLoader&&(cornerstoneWADOImageLoader={internal:{options:{beforeSend:function(e){},imageCreated:function(e){}}}}),function(e,i,t){"use strict";function r(e){e.decache=function(){var i=t.parseImageId(e.imageId);t.dataSetCacheManager.unload(i.url)}}function n(i,n,a,o){var s=e.Deferred();return i.then(function(e){var i=t.createImageObject(e,n,a,o);i.then(function(e){r(e),s.resolve(e)},function(e){s.reject(e)})},function(e){s.reject(e)}),s}function a(e){return"dicomweb"===e||"wadouri"===e?t.internal.xhrRequest:"dicomfile"===e?t.internal.loadFileRequest:void 0}function o(i){var o=t.parseImageId(i),s=a(o.scheme);if(t.dataSetCacheManager.isLoaded(o.url))return n(t.dataSetCacheManager.load(o.url,s),i,o.frame,o.url);if(void 0!==o.frame)return n(t.dataSetCacheManager.load(o.url,s),i,o.frame,o.url);var f=e.Deferred(),l=s(o.url,i);return l.then(function(e){var n=t.createImageObject(e,i,o.frame);n.then(function(e){r(e),f.resolve(e)},function(e){f.reject(e)})},function(e){f.reject(e)}),f}t.internal.loadImage=o}($,cornerstone,cornerstoneWADOImageLoader),function(e){"use strict";function i(i,t,r){var n=i.uint16("x00280006");0===n?e.convertRGBColorByPixel(t,r):e.convertRGBColorByPlane(t,r)}function t(i,t,r){var n=i.uint16("x00280006");0===n?e.convertYBRFullByPixel(t,r):e.convertYBRFullByPlane(t,r)}function r(r,n,a){var o=n.uint16("x00280010"),s=n.uint16("x00280011"),f=n.string("x00280004");r.height=o,r.width=s;var l=r.getContext("2d"),u=l.createImageData(s,o),c=$.Deferred();try{if("RGB"===f)i(n,a,u.data);else if("YBR_RCT"===f)i(n,a,u.data);else if("YBR_ICT"===f)i(n,a,u.data);else if("PALETTE COLOR"===f)e.convertPALETTECOLOR(a,u.data,n);else if("YBR_FULL_422"===f)t(n,a,u.data);else{if("YBR_FULL"!==f)throw"no color space conversion for photometric interpretation "+f;t(n,a,u.data)}return c.resolve(u),c.promise()}catch(e){return c.reject(e),c.promise()}}e.convertColorSpace=r}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e,i,t){var r=t.int16("x00281101",0);r||(r=65536);for(var n=t.int16("x00281101",1),a=t.int16("x00281101",2),o=8===a?0:8,s=t.byteArray.buffer,f=new Uint16Array(s,t.elements.x00281201.dataOffset,r),l=new Uint16Array(s,t.elements.x00281202.dataOffset,r),u=new Uint16Array(s,t.elements.x00281203.dataOffset,r),c=t.uint16("x00280010")*t.uint16("x00280011"),d=0,h=0,m=0;m<c;++m){var b=e[d++];b<n?b=0:b>n+r-1?b=r-1:b-=n,i[h++]=f[b]>>o,i[h++]=l[b]>>o,i[h++]=u[b]>>o,i[h++]=255}}e.convertPALETTECOLOR=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e,i){if(void 0===e)throw"decodeRGB: rgbBuffer must not be undefined";if(e.length%3!==0)throw"decodeRGB: rgbBuffer length must be divisible by 3";for(var t=e.length/3,r=0,n=0,a=0;a<t;a++)i[n++]=e[r++],i[n++]=e[r++],i[n++]=e[r++],i[n++]=255}e.convertRGBColorByPixel=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e,i){if(void 0===e)throw"decodeRGB: rgbBuffer must not be undefined";if(e.length%3!==0)throw"decodeRGB: rgbBuffer length must be divisible by 3";for(var t=e.length/3,r=0,n=0,a=t,o=2*t,s=0;s<t;s++)i[r++]=e[n++],i[r++]=e[a++],i[r++]=e[o++],i[r++]=255}e.convertRGBColorByPlane=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e,i){if(void 0===e)throw"decodeRGB: ybrBuffer must not be undefined";if(e.length%3!==0)throw"decodeRGB: ybrBuffer length must be divisble by 3";for(var t=e.length/3,r=0,n=0,a=0;a<t;a++){var o=e[r++],s=e[r++],f=e[r++];i[n++]=o+1.402*(f-128),i[n++]=o-.34414*(s-128)-.71414*(f-128),i[n++]=o+1.772*(s-128),i[n++]=255}}e.convertYBRFullByPixel=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e,i){if(void 0===e)throw"decodeRGB: ybrBuffer must not be undefined";if(e.length%3!==0)throw"decodeRGB: ybrBuffer length must be divisble by 3";for(var t=e.length/3,r=0,n=0,a=t,o=2*t,s=0;s<t;s++){var f=e[n++],l=e[a++],u=e[o++];i[r++]=f+1.402*(u-128),i[r++]=f-.34414*(l-128)-.71414*(u-128),i[r++]=f+1.772*(l-128),i[r++]=255}}e.convertYBRFullByPlane=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(i){e.internal.options=i}e.configure=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(i,t,r,n){void 0===r&&(r=0);var a=i.string("x00280004"),o=e.isColorImage(a);return o===!1?e.makeGrayscaleImage(t,i,r,n):e.makeColorImage(t,i,r,n)}e.createImageObject=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){return void 0!==a[e]}function t(e,i){if(a[e]){var t=$.Deferred();return a[e].cacheCount++,t.resolve(a[e].dataSet),t}if(o[e])return o[e];var r=i(e);return o[e]=r,r.then(function(i){a[e]={dataSet:i,cacheCount:1},delete o[e]},function(){}).always(function(){delete o[e]}),r}function r(e){a[e]&&(a[e].cacheCount--,0===a[e].cacheCount&&delete a[e])}function n(){a={},o={}}var a={},o={};e.dataSetCacheManager={isLoaded:i,load:t,unload:r,purge:n}}(cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(e,i){var r=e.uint16("x00280010"),n=e.uint16("x00280011"),a=t.getEncodedImageFrame(e,i),o=new JpxImage;o.parse(a);var s=o.width,f=o.height;if(s!==n)throw"JPEG2000 decoder returned width of "+s+", when "+n+" is expected";if(f!==r)throw"JPEG2000 decoder returned width of "+f+", when "+r+" is expected";var l=o.tiles.length;if(1!==l)throw"JPEG2000 decoder returned a tileCount of "+l+", when 1 is expected";var u=o.tiles[0],c=u.items;return c}function n(e,i,t){var r=s._malloc(e.length);s.writeArrayToMemory(e,r);var n=s._malloc(4),a=s._malloc(4),o=s._malloc(4),f=s._malloc(4),l=s._malloc(4),u=Date.now(),c=s.ccall("jp2_decode","number",["number","number","number","number","number","number","number"],[r,e.length,n,a,o,f,l]);if(0!==c)return console.log("[opj_decode] decoding failed!"),s._free(r),s._free(s.getValue(n,"*")),s._free(o),s._free(f),s._free(a),void s._free(l);var d=s.getValue(n,"*"),h={length:s.getValue(a,"i32"),sx:s.getValue(o,"i32"),sy:s.getValue(f,"i32"),nbChannels:s.getValue(l,"i32"),perf_timetodecode:void 0,pixelData:void 0},m=h.sx*h.sy*h.nbChannels,b=new Uint32Array(s.HEAP32.buffer,d,m);if(1===i)if(Uint8Array.from)h.pixelData=Uint8Array.from(b);else{h.pixelData=new Uint8Array(m);for(var v=0;v<m;v++)h.pixelData[v]=b[v]}else if(t)if(Int16Array.from)h.pixelData=Int16Array.from(b);else{h.pixelData=new Int16Array(m);for(var v=0;v<m;v++)h.pixelData[v]=b[v]}else if(Uint16Array.from)h.pixelData=Uint16Array.from(b);else{h.pixelData=new Uint16Array(m);for(var v=0;v<m;v++)h.pixelData[v]=b[v]}var w=Date.now();return h.perf_timetodecode=w-u,s._free(r),s._free(n),s._free(d),s._free(a),s._free(o),s._free(f),s._free(l),h}function a(e,i){var r=e.uint16("x00280010"),a=e.uint16("x00280011"),o=t.getEncodedImageFrame(e,i),s=e.uint16("x00280100")<=8?1:2,f=!!e.uint16("x00280103"),l=n(o,s,f),u=l.sx,c=l.sy;if(u!==a)throw"JPEG2000 decoder returned width of "+u+", when "+a+" is expected";if(c!==r)throw"JPEG2000 decoder returned width of "+c+", when "+r+" is expected";return l.pixelData}function o(e,i){if("undefined"!=typeof OpenJPEG&&!s&&(s=OpenJPEG(),!s||!s._jp2_decode))throw"OpenJPEG failed to initialize";if(s&&s._jp2_decode)return a(e,i);if("undefined"!=typeof JpxImage)return r(e,i);throw"No JPEG2000 decoder loaded"}var s;t.decodeJPEG2000=o}($,cornerstone,cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(e,i){var r=e.uint16("x00280010"),n=e.uint16("x00280011"),a=e.uint16("x00280100"),o=t.getEncodedImageFrame(e,i),s=new JpegImage;return s.parse(o),8===a?s.getData(n,r):16===a?s.getData16(n,r):void 0}t.decodeJPEGBaseline=r}($,cornerstone,cornerstoneWADOImageLoader),function(e){"use strict";function i(e){return t(String.fromCharCode.apply(null,Array.prototype.slice.apply(new Uint8Array(e))))}function t(e){var i;try{return decodeURIComponent(escape(e))}catch(t){if(i=t,i instanceof URIError)return e;throw i}}function r(t,r,n){var a=$.Deferred(),o=r.uint16("x00280010"),s=r.uint16("x00280011");t.height=o,t.width=s;var f=e.getEncodedImageFrame(r,n),l=new Blob([f],{type:"image/jpeg"}),u=new FileReader;return void 0===u.readAsBinaryString?u.readAsArrayBuffer(l):u.readAsBinaryString(l),u.onload=function(){var e=new Image;e.onload=function(){var e=t.getContext("2d");e.drawImage(this,0,0);var i=e.getImageData(0,0,s,o);a.resolve(i)},e.onerror=function(e){a.reject(e)},void 0===u.readAsBinaryString?e.src="data:image/jpeg;base64,"+window.btoa(i(u.result)):e.src="data:image/jpeg;base64,"+window.btoa(u.result)},a.promise()}function n(e){var i=e.string("x00020010"),t=e.uint16("x00280100");if(8===t&&"1.2.840.10008.1.2.4.50"===i)return!0}e.decodeJPEGBaseline8Bit=r,e.isJPEGBaseline8Bit=n}(cornerstoneWADOImageLoader),function(e){function i(e){var i=r._malloc(e.length);r.writeArrayToMemory(e,i);var t=r._malloc(4),n=r._malloc(4),a=r._malloc(4),o=r._malloc(4),s=r._malloc(4),f=r._malloc(4),l=r._malloc(4),u=r._malloc(4),c=r._malloc(4),d=r.ccall("jpegls_decode","number",["number","number","number","number","number","number","number","number","number","number","number"],[i,e.length,t,n,a,o,s,f,u,l,c]),h={result:d,width:r.getValue(a,"i32"),height:r.getValue(o,"i32"),bitsPerSample:r.getValue(s,"i32"),stride:r.getValue(f,"i32"),components:r.getValue(u,"i32"),allowedLossyError:r.getValue(l,"i32"),interleaveMode:r.getValue(c,"i32"),pixelData:void 0},m=r.getValue(t,"*");if(h.bitsPerSample<=8){h.pixelData=new Uint8Array(h.width*h.height*h.components);var b=new Uint8Array(r.HEAP8.buffer,m,h.pixelData.length);h.pixelData.set(b)}else{h.pixelData=new Int16Array(h.width*h.height*h.components);var v=new Int16Array(r.HEAP16.buffer,m,h.pixelData.length);h.pixelData.set(v)}return r._free(i),r._free(m),r._free(t),r._free(n),r._free(a),r._free(o),r._free(s),r._free(f),r._free(u),r._free(c),h}function t(t,n){if(CharLS&&!r&&(r=CharLS()),!r||!r._jpegls_decode)throw"No JPEG-LS decoder loaded";var a=t.uint16("x00280010"),o=t.uint16("x00280011"),s=e.getEncodedImageFrame(t,n),f=i(s);if(0!==f.result&&6!==f.result)throw"JPEG-LS decoder failed to decode frame (error code "+f.result+")";if(f.width!==o)throw"JPEG-LS decoder returned width of "+f.width+", when "+o+" is expected";if(f.height!==a)throw"JPEG-LS decoder returned width of "+f.height+", when "+a+" is expected";return f.pixelData}var r;e.decodeJPEGLS=t}(cornerstoneWADOImageLoader),function(e){function i(i,t){var r=i.uint16("x00280100"),n=i.uint16("x00280103"),a=e.getEncodedImageFrame(i,t),o=r<=8?1:2,s=new jpeg.lossless.Decoder,f=s.decode(a.buffer,a.byteOffset,a.length,o);return 0===n?2===o?new Uint16Array(f.buffer):new Uint8Array(f.buffer):new Int16Array(f.buffer)}e.decodeJPEGLossless=i}(cornerstoneWADOImageLoader),function(e){function i(i,n){var a=i.uint16("x00280010"),o=i.uint16("x00280011"),s=i.uint16("x00280002"),f=i.elements.x7fe00010,l=dicomParser.readEncapsulatedPixelDataFromFragments(i,f,n),u=e.getPixelFormat(i),c=o*a,d;return 1===u?(d=new ArrayBuffer(c*s),t(l,d,c,s),new Uint8Array(d)):2===u?(d=new ArrayBuffer(c*s*2),r(l,d,c),new Uint16Array(d)):3===u?(d=new ArrayBuffer(c*s*2),r(l,d,c),new Int16Array(d)):void 0}function t(e,i,t,r){for(var n=new DataView(e.buffer,e.byteOffset),a=new DataView(e.buffer,e.byteOffset),o=new DataView(i),s=0,f=n.getInt32(0,!0),l=0;l<f;++l){s=l;var u=n.getInt32(4*(l+1),!0),c=n.getInt32(4*(l+2),!0);0===c&&(c=e.length);for(var d=t*f;u<c;){var h=a.getInt8(u++);if(h>=0&&h<=127)for(var m=0;m<h+1&&s<d;++m)o.setInt8(s,a.getInt8(u++)),s+=r;else if(h<=-1&&h>=-127)for(var b=a.getInt8(u++),v=0;v<-h+1&&s<d;++v)o.setInt8(s,b),s+=r}}}function r(e,i,t){for(var r=new DataView(e.buffer,e.byteOffset),n=new DataView(e.buffer,e.byteOffset),a=new DataView(i),o=r.getInt32(0,!0),s=0;s<o;++s){var f=0,l=0===s?1:0,u=r.getInt32(4*(s+1),!0),c=r.getInt32(4*(s+2),!0);for(0===c&&(c=e.length);u<c;){var d=n.getInt8(u++);if(d>=0&&d<=127)for(var h=0;h<d+1&&f<t;++h)a.setInt8(2*f+l,n.getInt8(u++)),f++;else if(d<=-1&&d>=-127)for(var m=n.getInt8(u++),b=0;b<-d+1&&f<t;++b)a.setInt8(2*f+l,m),f++}}}e.decodeRLE=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(i,t){var r=i.string("x00020010");if("1.2.840.10008.1.2"===r)return e.extractUncompressedPixels(i,t);if("1.2.840.10008.1.2.1"===r)return e.extractUncompressedPixels(i,t);if("1.2.840.10008.1.2.2"===r)return e.extractUncompressedPixels(i,t,!0);if("1.2.840.10008.1.2.5"===r)return e.decodeRLE(i,t);if("1.2.840.10008.1.2.4.50"===r)return e.decodeJPEGBaseline(i,t);if("1.2.840.10008.1.2.4.51"===r)return e.decodeJPEGBaseline(i,t);if("1.2.840.10008.1.2.4.57"===r)return e.decodeJPEGLossless(i,t);if("1.2.840.10008.1.2.4.70"===r)return e.decodeJPEGLossless(i,t);if("1.2.840.10008.1.2.4.80"===r)return e.decodeJPEGLS(i,t);if("1.2.840.10008.1.2.4.81"===r)return e.decodeJPEGLS(i,t);if("1.2.840.10008.1.2.4.90"===r)return e.decodeJPEG2000(i,t);if("1.2.840.10008.1.2.4.91"===r)return e.decodeJPEG2000(i,t);throw console&&console.log&&console.log("Image cannot be decoded due to Unsupported transfer syntax "+r),"no decoder for transfer syntax "+r}e.decodeTransferSyntax=i}(cornerstoneWADOImageLoader);var ColorSpace={Unkown:0,Grayscale:1,AdobeRGB:2,RGB:3,CYMK:4},JpegImage=function e(){"use strict";function i(){}function t(e,i){for(var t=0,r=[],n,a,o=16;o>0&&!e[o-1];)o--;r.push({children:[],index:0});var s=r[0],f;for(n=0;n<o;n++){for(a=0;a<e[n];a++){for(s=r.pop(),s.children[s.index]=i[t];s.index>0;)s=r.pop();for(s.index++,r.push(s);r.length<=n;)r.push(f={children:[],index:0}),s.children[s.index]=f.children,s=f;t++}n+1<o&&(r.push(f={children:[],index:0}),s.children[s.index]=f.children,s=f)}return r[0].children}function r(e,i,t){return 64*((e.blocksPerLine+1)*i+t)}function n(e,i,t,n,a,o,s,l,u){function c(){if(I>0)return I--,P>>I&1;if(P=e[i++],255==P){var t=e[i++];if(t)throw"unexpected marker: "+(P<<8|t).toString(16)}return I=7,P>>>7}function d(e){for(var i=e,t;null!==(t=c());){if(i=i[t],"number"==typeof i)return i;if("object"!=typeof i)throw"invalid huffman sequence"}return null}function h(e){for(var i=0;e>0;){var t=c();if(null===t)return;i=i<<1|t,e--}return i}function m(e){var i=h(e);return i>=1<<e-1?i:i+(-1<<e)+1}function b(e,i){var t=d(e.huffmanTableDC),r=0===t?0:m(t);e.blockData[i]=e.pred+=r;for(var n=1;n<64;){var a=d(e.huffmanTableAC),o=15&a,s=a>>4;if(0!==o){n+=s;var l=f[n];e.blockData[i+l]=m(o),n++}else{if(s<15)break;n+=16}}}function v(e,i){var t=d(e.huffmanTableDC),r=0===t?0:m(t)<<u;e.blockData[i]=e.pred+=r}function w(e,i){e.blockData[i]|=c()<<u}function p(e,i){if(L>0)return void L--;for(var t=o,r=s;t<=r;){var n=d(e.huffmanTableAC),a=15&n,l=n>>4;if(0!==a){t+=l;var c=f[t];e.blockData[i+c]=m(a)*(1<<u),t++}else{if(l<15){L=h(l)+(1<<l)-1;break}t+=16}}}function g(e,i){for(var t=o,r=s,n=0;t<=r;){var a=f[t];switch(D){case 0:var l=d(e.huffmanTableAC),b=15&l;if(n=l>>4,0===b)n<15?(L=h(n)+(1<<n),D=4):(n=16,D=1);else{if(1!==b)throw"invalid ACn encoding";R=m(b),D=n?2:3}continue;case 1:case 2:e.blockData[i+a]?e.blockData[i+a]+=c()<<u:(n--,0===n&&(D=2==D?3:0));break;case 3:e.blockData[i+a]?e.blockData[i+a]+=c()<<u:(e.blockData[i+a]=R<<u,D=0);break;case 4:e.blockData[i+a]&&(e.blockData[i+a]+=c()<<u)}t++}4===D&&(L--,0===L&&(D=0))}function k(e,i,t,n,a){var o=t/C|0,s=t%C,f=o*e.v+n,l=s*e.h+a,u=r(e,f,l);i(e,u)}function _(e,i,t){var n=t/e.blocksPerLine|0,a=t%e.blocksPerLine,o=r(e,n,a);i(e,o)}var y=t.precision,T=t.samplesPerLine,M=t.scanLines,C=t.mcusPerLine,x=t.progressive,E=t.maxH,S=t.maxV,A=i,P=0,I=0,L=0,D=0,R,O=n.length,B,N,F,U,H,z;z=x?0===o?0===l?v:w:0===l?p:g:b;var j=0,Y,V;V=1==O?n[0].blocksPerLine*n[0].blocksPerColumn:C*t.mcusPerColumn,a||(a=V);for(var q,W;j<V;){for(N=0;N<O;N++)n[N].pred=0;if(L=0,1==O)for(B=n[0],H=0;H<a;H++)_(B,z,j),j++;else for(H=0;H<a;H++){for(N=0;N<O;N++)for(B=n[N],q=B.h,W=B.v,F=0;F<W;F++)for(U=0;U<q;U++)k(B,z,j,F,U);j++}if(I=0,Y=e[i]<<8|e[i+1],Y<=65280)throw"marker was not found";if(!(Y>=65488&&Y<=65495))break;i+=2}return i-A}function a(e,i,t){var r=e.quantizationTable,n,a,o,s,f,w,p,g,k,_;for(_=0;_<64;_++)t[_]=e.blockData[i+_]*r[_];for(_=0;_<8;++_){var y=8*_;0!==t[1+y]||0!==t[2+y]||0!==t[3+y]||0!==t[4+y]||0!==t[5+y]||0!==t[6+y]||0!==t[7+y]?(n=b*t[0+y]+128>>8,a=b*t[4+y]+128>>8,o=t[2+y],s=t[6+y],f=v*(t[1+y]-t[7+y])+128>>8,g=v*(t[1+y]+t[7+y])+128>>8,w=t[3+y]<<4,p=t[5+y]<<4,k=n-a+1>>1,n=n+a+1>>1,a=k,k=o*m+s*h+128>>8,o=o*h-s*m+128>>8,s=k,k=f-p+1>>1,f=f+p+1>>1,p=k,k=g+w+1>>1,w=g-w+1>>1,g=k,k=n-s+1>>1,n=n+s+1>>1,s=k,k=a-o+1>>1,a=a+o+1>>1,o=k,k=f*d+g*c+2048>>12,f=f*c-g*d+2048>>12,g=k,k=w*u+p*l+2048>>12,w=w*l-p*u+2048>>12,p=k,t[0+y]=n+g,t[7+y]=n-g,t[1+y]=a+p,t[6+y]=a-p,t[2+y]=o+w,t[5+y]=o-w,t[3+y]=s+f,t[4+y]=s-f):(k=b*t[0+y]+512>>10,t[0+y]=k,t[1+y]=k,t[2+y]=k,t[3+y]=k,t[4+y]=k,t[5+y]=k,t[6+y]=k,t[7+y]=k)}for(_=0;_<8;++_){var T=_;0!==t[8+T]||0!==t[16+T]||0!==t[24+T]||0!==t[32+T]||0!==t[40+T]||0!==t[48+T]||0!==t[56+T]?(n=b*t[0+T]+2048>>12,a=b*t[32+T]+2048>>12,o=t[16+T],s=t[48+T],f=v*(t[8+T]-t[56+T])+2048>>12,g=v*(t[8+T]+t[56+T])+2048>>12,w=t[24+T],p=t[40+T],k=n-a+1>>1,n=n+a+1>>1,a=k,k=o*m+s*h+2048>>12,o=o*h-s*m+2048>>12,s=k,k=f-p+1>>1,f=f+p+1>>1,p=k,k=g+w+1>>1,w=g-w+1>>1,g=k,k=n-s+1>>1,n=n+s+1>>1,s=k,k=a-o+1>>1,a=a+o+1>>1,o=k,k=f*d+g*c+2048>>12,f=f*c-g*d+2048>>12,g=k,k=w*u+p*l+2048>>12,w=w*l-p*u+2048>>12,p=k,t[0+T]=n+g,t[56+T]=n-g,t[8+T]=a+p,t[48+T]=a-p,t[16+T]=o+w,t[40+T]=o-w,t[24+T]=s+f,t[32+T]=s-f):(k=b*t[_+0]+8192>>14,t[0+T]=k,t[8+T]=k,t[16+T]=k,t[24+T]=k,t[32+T]=k,t[40+T]=k,t[48+T]=k,t[56+T]=k)}for(_=0;_<64;++_){var M=i+_,C=t[_];C=C<=-2056/e.bitConversion?0:C>=2024/e.bitConversion?255/e.bitConversion:C+2056/e.bitConversion>>4,e.blockData[M]=C}}function o(e,i){for(var t=[],n=i.blocksPerLine,o=i.blocksPerColumn,s=n<<3,f=new Int32Array(64),l,u,c=0,d=0;d<o;d++)for(var h=0;h<n;h++){var m=r(i,d,h);a(i,m,f)}return i.blockData}function s(e){return e<=0?0:e>=255?255:0|e}var f=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),l=4017,u=799,c=3406,d=2276,h=1567,m=3784,b=5793,v=2896;return i.prototype={load:function e(i){var t=function(e){this.parse(e),this.onload&&this.onload()}.bind(this);if(i.indexOf("data:")>-1){for(var r=i.indexOf("base64,")+7,n=atob(i.substring(r)),a=new Uint8Array(n.length),o=n.length-1;o>=0;o--)a[o]=n.charCodeAt(o);t(n)}else{var s=new XMLHttpRequest;s.open("GET",i,!0),s.responseType="arraybuffer",s.onload=function(){var e=new Uint8Array(s.response);t(e)}.bind(this),s.send(null)}},parse:function e(i){function r(){var e=i[l]<<8|i[l+1];return l+=2,e}function a(){var e=r(),t=i.subarray(l,l+e-2);return l+=t.length,t}function s(e){for(var i=Math.ceil(e.samplesPerLine/8/e.maxH),t=Math.ceil(e.scanLines/8/e.maxV),r=0;r<e.components.length;r++){q=e.components[r];var n=Math.ceil(Math.ceil(e.samplesPerLine/8)*q.h/e.maxH),a=Math.ceil(Math.ceil(e.scanLines/8)*q.v/e.maxV),o=i*q.h,s=t*q.v,f=64*s*(o+1);q.blockData=new Int16Array(f),q.blocksPerLine=n,q.blocksPerColumn=a}e.mcusPerLine=i,e.mcusPerColumn=t}var l=0,u=i.length,c=null,d=null,h=null,m,b,v=[],w=[],p=[],g=r();if(65496!=g)throw"SOI not found";for(g=r();65497!=g;){var k,_,y;switch(g){case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:var T=a();65504===g&&74===T[0]&&70===T[1]&&73===T[2]&&70===T[3]&&0===T[4]&&(c={version:{major:T[5],minor:T[6]},densityUnits:T[7],xDensity:T[8]<<8|T[9],yDensity:T[10]<<8|T[11],thumbWidth:T[12],thumbHeight:T[13],thumbData:T.subarray(14,14+3*T[12]*T[13])}),65518===g&&65===T[0]&&100===T[1]&&111===T[2]&&98===T[3]&&101===T[4]&&0===T[5]&&(d={version:T[6],flags0:T[7]<<8|T[8],flags1:T[9]<<8|T[10],transformCode:T[11]});break;case 65499:for(var M=r(),C=M+l-2;l<C;){var x=i[l++],E=new Int32Array(64);if(x>>4===0)for(_=0;_<64;_++){var S=f[_];E[S]=i[l++]}else{if(x>>4!==1)throw"DQT: invalid table spec";for(_=0;_<64;_++){var A=f[_];E[A]=r()}}v[15&x]=E}break;case 65472:case 65473:case 65474:if(m)throw"Only single frame JPEGs supported";r(),m={},m.extended=65473===g,m.progressive=65474===g,m.precision=i[l++],m.scanLines=r(),m.samplesPerLine=r(),m.components=[],m.componentIds={};var P=i[l++],I,L=0,D=0;for(k=0;k<P;k++){I=i[l];var R=i[l+1]>>4,O=15&i[l+1];L<R&&(L=R),D<O&&(D=O);var B=i[l+2];y=m.components.push({h:R,v:O,quantizationTable:v[B],quantizationTableId:B,bitConversion:255/((1<<m.precision)-1)}),m.componentIds[I]=y-1,l+=3}m.maxH=L,m.maxV=D,s(m);break;case 65476:var N=r();for(k=2;k<N;){var F=i[l++],U=new Uint8Array(16),H=0;for(_=0;_<16;_++,l++)H+=U[_]=i[l];var z=new Uint8Array(H);for(_=0;_<H;_++,l++)z[_]=i[l];k+=17+H,(F>>4===0?p:w)[15&F]=t(U,z)}break;case 65501:r(),b=r();break;case 65498:var j=r(),Y=i[l++],V=[],q;for(k=0;k<Y;k++){var W=m.componentIds[i[l++]];q=m.components[W];var G=i[l++];q.huffmanTableDC=p[G>>4],q.huffmanTableAC=w[15&G],V.push(q)}var X=i[l++],K=i[l++],$=i[l++],J=n(i,l,m,V,b,X,K,$>>4,15&$);l+=J;break;default:if(255==i[l-3]&&i[l-2]>=192&&i[l-2]<=254){l-=3;break}throw"unknown JPEG marker "+g.toString(16)}g=r()}switch(this.width=m.samplesPerLine,this.height=m.scanLines,this.jfif=c,this.adobe=d,this.components=[],m.components.length){case 1:this.colorspace=ColorSpace.Grayscale;break;case 3:this.adobe?this.colorspace=ColorSpace.AdobeRGB:this.colorspace=ColorSpace.RGB;break;case 4:this.colorspace=ColorSpace.CYMK;break;default:this.colorspace=ColorSpace.Unknown}for(var k=0;k<m.components.length;k++){var q=m.components[k];q.quantizationTable||null===q.quantizationTableId||(q.quantizationTable=v[q.quantizationTableId]),this.components.push({output:o(m,q),scaleX:q.h/m.maxH,scaleY:q.v/m.maxV,blocksPerLine:q.blocksPerLine,blocksPerColumn:q.blocksPerColumn,bitConversion:q.bitConversion})}},getData16:function e(i,t){if(1!==this.components.length)throw"Unsupported color mode";var n=this.width/i,a=this.height/t,o,s,f,l,u,c,d=0,h=this.components.length,m=i*t*h,b=new Uint16Array(m),v,w=new Uint16Array((this.components[0].blocksPerLine<<3)*this.components[0].blocksPerColumn*8);for(c=0;c<h;c++){o=this.components[c];for(var p=o.blocksPerLine,g=o.blocksPerColumn,k=p<<3,_,y,T=0,M=0,C=0;C<g;C++)for(var x=C<<3,E=0;E<p;E++){var S=r(o,C,E),d=0,A=E<<3;for(_=0;_<8;_++){var M=(x+_)*k;for(y=0;y<8;y++)w[M+A+y]=o.output[S+d++]}}s=o.scaleX*n,f=o.scaleY*a,d=c;var P,I,L;for(u=0;u<t;u++)for(l=0;l<i;l++)I=0|u*f,P=0|l*s,L=I*k+P,b[d]=w[L],d+=h}return b},getData:function e(i,t){var n=this.width/i,a=this.height/t,o,f,l,u,c,d,h=0,m,b,v,w,p,g,k,_,y,T,M,C=this.components.length,x=i*t*C,E=new Uint8Array(x),S,A=new Uint8Array((this.components[0].blocksPerLine<<3)*this.components[0].blocksPerColumn*8);for(d=0;d<C;d++){o=this.components[d];for(var P=o.blocksPerLine,I=o.blocksPerColumn,L=P<<3,D,R,O=0,B=0,N=0;N<I;N++)for(var F=N<<3,U=0;U<P;U++){var H=r(o,N,U),h=0,z=U<<3;for(D=0;D<8;D++){var B=(F+D)*L;for(R=0;R<8;R++)A[B+z+R]=o.output[H+h++]*o.bitConversion}}f=o.scaleX*n,l=o.scaleY*a,h=d;var j,Y,V;for(c=0;c<t;c++)for(u=0;u<i;u++)Y=0|c*l,j=0|u*f,V=Y*L+j,E[h]=A[V],h+=C}switch(C){case 1:case 2:break;case 3:if(M=!0,this.adobe&&this.adobe.transformCode?M=!0:"undefined"!=typeof this.colorTransform&&(M=!!this.colorTransform),M)for(d=0;d<x;d+=C)m=E[d],b=E[d+1],v=E[d+2],_=s(m-179.456+1.402*v),y=s(m+135.459-.344*b-.714*v),T=s(m-226.816+1.772*b),E[d]=_,E[d+1]=y,E[d+2]=T;break;case 4:if(!this.adobe)throw"Unsupported color mode (4 components)";if(M=!1,this.adobe&&this.adobe.transformCode?M=!0:"undefined"!=typeof this.colorTransform&&(M=!!this.colorTransform),M)for(d=0;d<x;d+=C)m=E[d],b=E[d+1],v=E[d+2],p=s(434.456-m-1.402*v),g=s(119.541-m+.344*b+.714*v),m=s(481.816-m-1.772*b),E[d]=p,E[d+1]=g,E[d+2]=m;break;default:throw"Unsupported color mode"}return E}},i}();!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{
var i;i="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,i.jpeg=e()}}(function(){var e,i,t;return function e(i,t,r){function n(o,s){if(!t[o]){if(!i[o]){var f="function"==typeof require&&require;if(!s&&f)return f(o,!0);if(a)return a(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var u=t[o]={exports:{}};i[o][0].call(u.exports,function(e){var t=i[o][1][e];return n(t?t:e)},u,u.exports,e,i,t,r)}return t[o].exports}for(var a="function"==typeof require&&require,o=0;o<r.length;o++)n(r[o]);return n}({1:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.ComponentSpec=r.lossless.ComponentSpec||function(){this.hSamp=0,this.quantTableSel=0,this.vSamp=0};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.ComponentSpec)},{}],2:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.DataStream=r.lossless.DataStream||function(e,i,t){this.buffer=new DataView(e,i,t),this.index=0},r.lossless.DataStream.prototype.get16=function(){var e=this.buffer.getUint16(this.index,!1);return this.index+=2,e},r.lossless.DataStream.prototype.get8=function(){var e=this.buffer.getUint8(this.index);return this.index+=1,e};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.DataStream)},{}],3:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.DataStream=r.lossless.DataStream||("undefined"!=typeof e?e("./data-stream.js"):null),r.lossless.HuffmanTable=r.lossless.HuffmanTable||("undefined"!=typeof e?e("./huffman-table.js"):null),r.lossless.QuantizationTable=r.lossless.QuantizationTable||("undefined"!=typeof e?e("./quantization-table.js"):null),r.lossless.ScanHeader=r.lossless.ScanHeader||("undefined"!=typeof e?e("./scan-header.js"):null),r.lossless.FrameHeader=r.lossless.FrameHeader||("undefined"!=typeof e?e("./frame-header.js"):null),r.lossless.Utils=r.lossless.Utils||("undefined"!=typeof e?e("./utils.js"):null),r.lossless.Decoder=r.lossless.Decoder||function(e,i){this.buffer=e,this.frame=new r.lossless.FrameHeader,this.huffTable=new r.lossless.HuffmanTable,this.quantTable=new r.lossless.QuantizationTable,this.scan=new r.lossless.ScanHeader,this.DU=r.lossless.Utils.createArray(10,4,64),this.HuffTab=r.lossless.Utils.createArray(4,2,12800),this.IDCT_Source=[],this.nBlock=[],this.acTab=r.lossless.Utils.createArray(10,1),this.dcTab=r.lossless.Utils.createArray(10,1),this.qTab=r.lossless.Utils.createArray(10,1),this.marker=0,this.markerIndex=0,this.numComp=0,this.restartInterval=0,this.selection=0,this.xDim=0,this.yDim=0,this.xLoc=0,this.yLoc=0,this.numBytes=0,this.outputData=null,this.restarting=!1,this.mask=0,"undefined"!=typeof i&&(this.numBytes=i)},r.lossless.Decoder.IDCT_P=[0,5,40,16,45,2,7,42,21,56,8,61,18,47,1,4,41,23,58,13,32,24,37,10,63,17,44,3,6,43,20,57,15,34,29,48,53,26,39,9,60,19,46,22,59,12,33,31,50,55,25,36,11,62,14,35,28,49,52,27,38,30,51,54],r.lossless.Decoder.TABLE=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],r.lossless.Decoder.MAX_HUFFMAN_SUBTREE=50,r.lossless.Decoder.MSB=2147483648,r.lossless.Decoder.RESTART_MARKER_BEGIN=65488,r.lossless.Decoder.RESTART_MARKER_END=65495,r.lossless.Decoder.prototype.decompress=function(e,i,t){return this.decode(e,i,t).buffer},r.lossless.Decoder.prototype.decode=function(e,i,t,n){var a,o=0,s=[],f,l,u=[],c=[],d;if("undefined"!=typeof e&&(this.buffer=e),"undefined"!=typeof n&&(this.numBytes=n),this.stream=new r.lossless.DataStream(this.buffer,i,t),this.buffer=null,this.xLoc=0,this.yLoc=0,a=this.stream.get16(),65496!==a)throw new Error("Not a JPEG file");for(a=this.stream.get16();a>>4!==4092||65476===a;){switch(a){case 65476:this.huffTable.read(this.stream,this.HuffTab);break;case 65484:throw new Error("Program doesn't support arithmetic coding. (format throw new IOException)");case 65499:this.quantTable.read(this.stream,r.lossless.Decoder.TABLE);break;case 65501:this.restartInterval=this.readNumber();break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:this.readApp();break;case 65534:this.readComment();break;default:if(a>>8!==255)throw new Error("ERROR: format throw new IOException! (decode)")}a=this.stream.get16()}if(a<65472||a>65479)throw new Error("ERROR: could not handle arithmetic code!");this.frame.read(this.stream),a=this.stream.get16();do{for(;65498!==a;){switch(a){case 65476:this.huffTable.read(this.stream,this.HuffTab);break;case 65484:throw new Error("Program doesn't support arithmetic coding. (format throw new IOException)");case 65499:this.quantTable.read(this.stream,r.lossless.Decoder.TABLE);break;case 65501:this.restartInterval=this.readNumber();break;case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:this.readApp();break;case 65534:this.readComment();break;default:if(a>>8!==255)throw new Error("ERROR: format throw new IOException! (Parser.decode)")}a=this.stream.get16()}switch(this.precision=this.frame.precision,this.components=this.frame.components,this.numBytes||(this.numBytes=parseInt(Math.ceil(this.precision/8))),1==this.numBytes?this.mask=255:this.mask=65535,this.scan.read(this.stream),this.numComp=this.scan.numComp,this.selection=this.scan.selection,1===this.numBytes?3===this.numComp?(this.getter=this.getValueRGB,this.setter=this.setValueRGB,this.output=this.outputRGB):(this.getter=this.getValue8,this.setter=this.setValue8,this.output=this.outputSingle):(this.getter=this.getValue16,this.setter=this.setValue16,this.output=this.outputSingle),this.selection){case 2:this.selector=this.select2;break;case 3:this.selector=this.select3;break;case 4:this.selector=this.select4;break;case 5:this.selector=this.select5;break;case 6:this.selector=this.select6;break;case 7:this.selector=this.select7;break;default:this.selector=this.select1}for(this.scanComps=this.scan.components,this.quantTables=this.quantTable.quantTables,f=0;f<this.numComp;f+=1)l=this.scanComps[f].scanCompSel,this.qTab[f]=this.quantTables[this.components[l].quantTableSel],this.nBlock[f]=this.components[l].vSamp*this.components[l].hSamp,this.dcTab[f]=this.HuffTab[this.scanComps[f].dcTabSel][0],this.acTab[f]=this.HuffTab[this.scanComps[f].acTabSel][1];for(this.xDim=this.frame.dimX,this.yDim=this.frame.dimY,this.outputData=new DataView(new ArrayBuffer(this.xDim*this.yDim*this.numBytes*this.numComp)),o+=1;;){for(u[0]=0,c[0]=0,f=0;f<10;f+=1)s[f]=1<<this.precision-1;if(0===this.restartInterval){for(a=this.decodeUnit(s,u,c);0===a&&this.xLoc<this.xDim&&this.yLoc<this.yDim;)this.output(s),a=this.decodeUnit(s,u,c);break}for(d=0;d<this.restartInterval&&(this.restarting=0==d,a=this.decodeUnit(s,u,c),this.output(s),0===a);d+=1);if(0===a&&(0!==this.markerIndex?(a=65280|this.marker,this.markerIndex=0):a=this.stream.get16()),!(a>=r.lossless.Decoder.RESTART_MARKER_BEGIN&&a<=r.lossless.Decoder.RESTART_MARKER_END))break}65500===a&&1===o&&(this.readNumber(),a=this.stream.get16())}while(65497!==a&&this.xLoc<this.xDim&&this.yLoc<this.yDim&&0===o);return this.outputData},r.lossless.Decoder.prototype.decodeUnit=function(e,i,t){return 1==this.numComp?this.decodeSingle(e,i,t):3==this.numComp?this.decodeRGB(e,i,t):-1},r.lossless.Decoder.prototype.select1=function(e){return this.getPreviousX(e)},r.lossless.Decoder.prototype.select2=function(e){return this.getPreviousY(e)},r.lossless.Decoder.prototype.select3=function(e){return this.getPreviousXY(e)},r.lossless.Decoder.prototype.select4=function(e){return this.getPreviousX(e)+this.getPreviousY(e)-this.getPreviousXY(e)},r.lossless.Decoder.prototype.select5=function(e){return this.getPreviousX(e)+(this.getPreviousY(e)-this.getPreviousXY(e)>>1)},r.lossless.Decoder.prototype.select6=function(e){return this.getPreviousY(e)+(this.getPreviousX(e)-this.getPreviousXY(e)>>1)},r.lossless.Decoder.prototype.select7=function(e){return(this.getPreviousX(e)+this.getPreviousY(e))/2},r.lossless.Decoder.prototype.decodeRGB=function(e,i,t){var n,a,o,s,f,l,u,c;for(e[0]=this.selector(0),e[1]=this.selector(1),e[2]=this.selector(2),f=0;f<this.numComp;f+=1)for(s=this.qTab[f],a=this.acTab[f],o=this.dcTab[f],l=0;l<this.nBlock[f];l+=1){for(u=0;u<this.IDCT_Source.length;u+=1)this.IDCT_Source[u]=0;if(n=this.getHuffmanValue(o,i,t),n>=65280)return n;for(e[f]=this.IDCT_Source[0]=e[f]+this.getn(t,n,i,t),this.IDCT_Source[0]*=s[0],c=1;c<64;c+=1){if(n=this.getHuffmanValue(a,i,t),n>=65280)return n;if(c+=n>>4,0===(15&n)){if(n>>4===0)break}else this.IDCT_Source[r.lossless.Decoder.IDCT_P[c]]=this.getn(t,15&n,i,t)*s[c]}}return 0},r.lossless.Decoder.prototype.decodeSingle=function(e,i,t){var n,a,o,s;for(this.restarting?(this.restarting=!1,e[0]=1<<this.frame.precision-1):e[0]=this.selector(),a=0;a<this.nBlock[0];a+=1){if(n=this.getHuffmanValue(this.dcTab[0],i,t),n>=65280)return n;if(o=this.getn(e,n,i,t),s=o>>8,s>=r.lossless.Decoder.RESTART_MARKER_BEGIN&&s<=r.lossless.Decoder.RESTART_MARKER_END)return s;e[0]+=o}return 0},r.lossless.Decoder.prototype.getHuffmanValue=function(e,i,t){var n,a,o;if(o=65535,t[0]<8?(i[0]<<=8,a=this.stream.get8(),255===a&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),i[0]|=a):t[0]-=8,n=e[i[0]>>t[0]],0!==(n&r.lossless.Decoder.MSB)){if(0!==this.markerIndex)return this.markerIndex=0,65280|this.marker;i[0]&=o>>16-t[0],i[0]<<=8,a=this.stream.get8(),255===a&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),i[0]|=a,n=e[256*(255&n)+(i[0]>>t[0])],t[0]+=8}if(t[0]+=8-(n>>8),t[0]<0)throw new Error("index="+t[0]+" temp="+i[0]+" code="+n+" in HuffmanValue()");return t[0]<this.markerIndex?(this.markerIndex=0,65280|this.marker):(i[0]&=o>>16-t[0],255&n)},r.lossless.Decoder.prototype.getn=function(e,i,t,r){var n,a,o,s,f;if(a=1,o=-1,s=65535,0===i)return 0;if(16===i)return e[0]>=0?-32768:32768;if(r[0]-=i,r[0]>=0){if(r[0]<this.markerIndex&&!this.isLastPixel())return this.markerIndex=0,(65280|this.marker)<<8;n=t[0]>>r[0],t[0]&=s>>16-r[0]}else{if(t[0]<<=8,f=this.stream.get8(),255===f&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),t[0]|=f,r[0]+=8,r[0]<0){if(0!==this.markerIndex)return this.markerIndex=0,(65280|this.marker)<<8;t[0]<<=8,f=this.stream.get8(),255===f&&(this.marker=this.stream.get8(),0!==this.marker&&(this.markerIndex=9)),t[0]|=f,r[0]+=8}if(r[0]<0)throw new Error("index="+r[0]+" in getn()");if(r[0]<this.markerIndex)return this.markerIndex=0,(65280|this.marker)<<8;n=t[0]>>r[0],t[0]&=s>>16-r[0]}return n<a<<i-1&&(n+=(o<<i)+1),n},r.lossless.Decoder.prototype.getPreviousX=function(e){return this.xLoc>0?this.getter(this.yLoc*this.xDim+this.xLoc-1,e):this.yLoc>0?this.getPreviousY(e):1<<this.frame.precision-1},r.lossless.Decoder.prototype.getPreviousXY=function(e){return this.xLoc>0&&this.yLoc>0?this.getter((this.yLoc-1)*this.xDim+this.xLoc-1,e):this.getPreviousY(e)},r.lossless.Decoder.prototype.getPreviousY=function(e){return this.yLoc>0?this.getter((this.yLoc-1)*this.xDim+this.xLoc,e):this.getPreviousX(e)},r.lossless.Decoder.prototype.isLastPixel=function(){return this.xLoc===this.xDim-1&&this.yLoc===this.yDim-1},r.lossless.Decoder.prototype.outputSingle=function(e){this.xLoc<this.xDim&&this.yLoc<this.yDim&&(this.setter(this.yLoc*this.xDim+this.xLoc,this.mask&e[0]),this.xLoc+=1,this.xLoc>=this.xDim&&(this.yLoc+=1,this.xLoc=0))},r.lossless.Decoder.prototype.outputRGB=function(e){var i=this.yLoc*this.xDim+this.xLoc;this.xLoc<this.xDim&&this.yLoc<this.yDim&&(this.setter(i,e[0],0),this.setter(i,e[1],1),this.setter(i,e[2],2),this.xLoc+=1,this.xLoc>=this.xDim&&(this.yLoc+=1,this.xLoc=0))},r.lossless.Decoder.prototype.setValue16=function(e,i){this.outputData.setInt16(2*e,i,!0)},r.lossless.Decoder.prototype.getValue16=function(e){return this.outputData.getInt16(2*e,!0)&this.mask},r.lossless.Decoder.prototype.setValue8=function(e,i){this.outputData.setInt8(e,i)},r.lossless.Decoder.prototype.getValue8=function(e){return this.outputData.getInt8(e)&this.mask},r.lossless.Decoder.prototype.setValueRGB=function(e,i,t){this.outputData.setUint8(3*e+t,i)},r.lossless.Decoder.prototype.getValueRGB=function(e,i){return this.outputData.getUint8(3*e+i)},r.lossless.Decoder.prototype.readApp=function(){var e=0,i=this.stream.get16();for(e+=2;e<i;)this.stream.get8(),e+=1;return i},r.lossless.Decoder.prototype.readComment=function(){var e="",i=0,t;for(t=this.stream.get16(),i+=2;i<t;)e+=this.stream.get8(),i+=1;return e},r.lossless.Decoder.prototype.readNumber=function(){var e=this.stream.get16();if(4!==e)throw new Error("ERROR: Define number format throw new IOException [Ld!=4]");return this.stream.get16()};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.Decoder)},{"./data-stream.js":2,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-header.js":9,"./utils.js":10}],4:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.ComponentSpec=r.lossless.ComponentSpec||("undefined"!=typeof e?e("./component-spec.js"):null),r.lossless.DataStream=r.lossless.DataStream||("undefined"!=typeof e?e("./data-stream.js"):null),r.lossless.FrameHeader=r.lossless.FrameHeader||function(){this.components=[],this.dimX=0,this.dimY=0,this.numComp=0,this.precision=0},r.lossless.FrameHeader.prototype.read=function(e){var i=0,t,n,a,o;for(t=e.get16(),i+=2,this.precision=e.get8(),i+=1,this.dimY=e.get16(),i+=2,this.dimX=e.get16(),i+=2,this.numComp=e.get8(),i+=1,n=1;n<=this.numComp;n+=1){if(i>t)throw new Error("ERROR: frame format error");if(a=e.get8(),i+=1,i>=t)throw new Error("ERROR: frame format error [c>=Lf]");o=e.get8(),i+=1,this.components[a]||(this.components[a]=new r.lossless.ComponentSpec),this.components[a].hSamp=o>>4,this.components[a].vSamp=15&o,this.components[a].quantTableSel=e.get8(),i+=1}if(i!==t)throw new Error("ERROR: frame format error [Lf!=count]");return 1};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.FrameHeader)},{"./component-spec.js":1,"./data-stream.js":2}],5:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.DataStream=r.lossless.DataStream||("undefined"!=typeof e?e("./data-stream.js"):null),r.lossless.Utils=r.lossless.Utils||("undefined"!=typeof e?e("./utils.js"):null),r.lossless.HuffmanTable=r.lossless.HuffmanTable||function(){this.l=r.lossless.Utils.createArray(4,2,16),this.th=[],this.v=r.lossless.Utils.createArray(4,2,16,200),this.tc=r.lossless.Utils.createArray(4,2),this.tc[0][0]=0,this.tc[1][0]=0,this.tc[2][0]=0,this.tc[3][0]=0,this.tc[0][1]=0,this.tc[1][1]=0,this.tc[2][1]=0,this.tc[3][1]=0,this.th[0]=0,this.th[1]=0,this.th[2]=0,this.th[3]=0},r.lossless.HuffmanTable.MSB=2147483648,r.lossless.HuffmanTable.prototype.read=function(e,i){var t=0,r,n,a,o,s,f;for(r=e.get16(),t+=2;t<r;){if(n=e.get8(),t+=1,a=15&n,a>3)throw new Error("ERROR: Huffman table ID > 3");if(o=n>>4,o>2)throw new Error("ERROR: Huffman table [Table class > 2 ]");for(this.th[a]=1,this.tc[a][o]=1,s=0;s<16;s+=1)this.l[a][o][s]=e.get8(),t+=1;for(s=0;s<16;s+=1)for(f=0;f<this.l[a][o][s];f+=1){if(t>r)throw new Error("ERROR: Huffman table format error [count>Lh]");this.v[a][o][s][f]=e.get8(),t+=1}}if(t!==r)throw new Error("ERROR: Huffman table format error [count!=Lf]");for(s=0;s<4;s+=1)for(f=0;f<2;f+=1)0!==this.tc[s][f]&&this.buildHuffTable(i[s][f],this.l[s][f],this.v[s][f]);return 1},r.lossless.HuffmanTable.prototype.buildHuffTable=function(e,i,t){var n,a,o,s,f,l;for(a=256,o=0,s=0;s<8;s+=1)for(f=0;f<i[s];f+=1)for(l=0;l<a>>s+1;l+=1)e[o]=t[s][f]|s+1<<8,o+=1;for(s=1;o<256;s+=1,o+=1)e[o]=s|r.lossless.HuffmanTable.MSB;for(n=1,o=0,s=8;s<16;s+=1)for(f=0;f<i[s];f+=1){for(l=0;l<a>>s-7;l+=1)e[256*n+o]=t[s][f]|s+1<<8,o+=1;if(o>=256){if(o>256)throw new Error("ERROR: Huffman table error(1)!");o=0,n+=1}}};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.HuffmanTable)},{"./data-stream.js":2,"./utils.js":10}],6:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.ComponentSpec=r.lossless.ComponentSpec||("undefined"!=typeof e?e("./component-spec.js"):null),r.lossless.DataStream=r.lossless.DataStream||("undefined"!=typeof e?e("./data-stream.js"):null),r.lossless.Decoder=r.lossless.Decoder||("undefined"!=typeof e?e("./decoder.js"):null),r.lossless.FrameHeader=r.lossless.FrameHeader||("undefined"!=typeof e?e("./frame-header.js"):null),r.lossless.HuffmanTable=r.lossless.HuffmanTable||("undefined"!=typeof e?e("./huffman-table.js"):null),r.lossless.QuantizationTable=r.lossless.QuantizationTable||("undefined"!=typeof e?e("./quantization-table.js"):null),r.lossless.ScanComponent=r.lossless.ScanComponent||("undefined"!=typeof e?e("./scan-component.js"):null),r.lossless.ScanHeader=r.lossless.ScanHeader||("undefined"!=typeof e?e("./scan-header.js"):null),r.lossless.Utils=r.lossless.Utils||("undefined"!=typeof e?e("./utils.js"):null);var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r)},{"./component-spec.js":1,"./data-stream.js":2,"./decoder.js":3,"./frame-header.js":4,"./huffman-table.js":5,"./quantization-table.js":7,"./scan-component.js":8,"./scan-header.js":9,"./utils.js":10}],7:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.DataStream=r.lossless.DataStream||("undefined"!=typeof e?e("./data-stream.js"):null),r.lossless.Utils=r.lossless.Utils||("undefined"!=typeof e?e("./utils.js"):null),r.lossless.QuantizationTable=r.lossless.QuantizationTable||function(){this.precision=[],this.tq=[],this.quantTables=r.lossless.Utils.createArray(4,64),this.tq[0]=0,this.tq[1]=0,this.tq[2]=0,this.tq[3]=0},r.lossless.QuantizationTable.enhanceQuantizationTable=function(e,i){var t;for(t=0;t<8;t+=1)e[i[0+t]]*=90,e[i[32+t]]*=90,e[i[16+t]]*=118,e[i[48+t]]*=49,e[i[40+t]]*=71,e[i[8+t]]*=126,e[i[56+t]]*=25,e[i[24+t]]*=106;for(t=0;t<8;t+=1)e[i[0+8*t]]*=90,e[i[4+8*t]]*=90,e[i[2+8*t]]*=118,e[i[6+8*t]]*=49,e[i[5+8*t]]*=71,e[i[1+8*t]]*=126,e[i[7+8*t]]*=25,e[i[3+8*t]]*=106;for(t=0;t<64;t+=1)e[t]>>=6},r.lossless.QuantizationTable.prototype.read=function(e,i){var t=0,n,a,o,s;for(n=e.get16(),t+=2;t<n;){if(a=e.get8(),t+=1,o=15&a,o>3)throw new Error("ERROR: Quantization table ID > 3");if(this.precision[o]=a>>4,0===this.precision[o])this.precision[o]=8;else{if(1!==this.precision[o])throw new Error("ERROR: Quantization table precision error");this.precision[o]=16}if(this.tq[o]=1,8===this.precision[o]){for(s=0;s<64;s+=1){if(t>n)throw new Error("ERROR: Quantization table format error");this.quantTables[o][s]=e.get8(),t+=1}r.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[o],i)}else{for(s=0;s<64;s+=1){if(t>n)throw new Error("ERROR: Quantization table format error");this.quantTables[o][s]=e.get16(),t+=2}r.lossless.QuantizationTable.enhanceQuantizationTable(this.quantTables[o],i)}}if(t!==n)throw new Error("ERROR: Quantization table error [count!=Lq]");return 1};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.QuantizationTable)},{"./data-stream.js":2,"./utils.js":10}],8:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.ScanComponent=r.lossless.ScanComponent||function(){this.acTabSel=0,this.dcTabSel=0,this.scanCompSel=0};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.ScanComponent)},{}],9:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.DataStream=r.lossless.DataStream||("undefined"!=typeof e?e("./data-stream.js"):null),r.lossless.ScanComponent=r.lossless.ScanComponent||("undefined"!=typeof e?e("./scan-component.js"):null),r.lossless.ScanHeader=r.lossless.ScanHeader||function(){this.ah=0,this.al=0,this.numComp=0,this.selection=0,this.spectralEnd=0,this.components=[]},r.lossless.ScanHeader.prototype.read=function(e){var i=0,t,n,a;for(t=e.get16(),i+=2,this.numComp=e.get8(),i+=1,n=0;n<this.numComp;n+=1){if(this.components[n]=new r.lossless.ScanComponent,i>t)throw new Error("ERROR: scan header format error");this.components[n].scanCompSel=e.get8(),i+=1,a=e.get8(),i+=1,this.components[n].dcTabSel=a>>4,this.components[n].acTabSel=15&a}if(this.selection=e.get8(),i+=1,this.spectralEnd=e.get8(),i+=1,a=e.get8(),this.ah=a>>4,this.al=15&a,i+=1,i!==t)throw new Error("ERROR: scan header format error [count!=Ns]");return 1};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.ScanHeader)},{"./data-stream.js":2,"./scan-component.js":8}],10:[function(e,i,t){"use strict";var r=r||{};r.lossless=r.lossless||{},r.lossless.Utils=r.lossless.Utils||{},r.lossless.Utils.createArray=function(e){var i=new Array(e||0),t=e;if(arguments.length>1)for(var n=Array.prototype.slice.call(arguments,1);t--;)i[e-1-t]=r.lossless.Utils.createArray.apply(this,n);return i},r.lossless.Utils.makeCRCTable=function(){for(var e,i=[],t=0;t<256;t++){e=t;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;i[t]=e}return i},r.lossless.Utils.crc32=function(e){for(var i=r.lossless.Utils.crcTable||(r.lossless.Utils.crcTable=r.lossless.Utils.makeCRCTable()),t=-1,n=0;n<e.byteLength;n++)t=t>>>8^i[255&(t^e.getUint8(n))];return(t^-1)>>>0};var n=typeof i;"undefined"!==n&&i.exports&&(i.exports=r.lossless.Utils)},{}]},{},[6])(6)}),function(e,i,t){"use strict";function r(e){return(255&e)<<8|e>>8&255}function n(e,i,n){var o=t.getPixelFormat(e),s=a(e,i,o);if(n&&(2===o||3===o))for(var f=0;f<s.length;f++)s[f]=r(s[f]);return s}function a(e,i,t){var r=e.elements.x7fe00010,n=e.uint16("x00280010"),a=e.uint16("x00280011"),o=e.uint16("x00280002"),s=r.dataOffset,f=a*n*o;if(!f)throw"Sanity check failed when calculating the number of pixels";var l=0;if(1===t){if(l=s+i*f,l>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Uint8Array(e.byteArray.buffer,l,f)}if(2===t){if(l=s+i*f*2,l>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Uint16Array(e.byteArray.buffer,l,f)}if(3===t){if(l=s+i*f*2,l>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Int16Array(e.byteArray.buffer,l,f)}throw"Unknown pixel format"}t.extractUncompressedPixels=n}($,cornerstone,cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(e){var i=e.intString("x00280008");return i>1}function n(e){var i=e.intString("x00280008"),t=e.elements.x7fe00010;if(i!=t.fragments.length)return!0}function a(e,i){var t=e.elements.x7fe00010;if(r(e)){if(n(e))throw"multi-frame sop instance with no basic offset table is not currently supported";return dicomParser.readEncapsulatedPixelDataFromFragments(e,t,i)}var a=0,o=t.fragments.length;return dicomParser.readEncapsulatedPixelDataFromFragments(e,t,a,o)}function o(e,i){return e.elements.x7fe00010.basicOffsetTable.length?dicomParser.readEncapsulatedImageFrame(e,e.elements.x7fe00010,i):a(e,i)}t.getEncodedImageFrame=o}($,cornerstone,cornerstoneWADOImageLoader),function(e){"use strict";function i(e){for(var i=65535,t=-32768,r=e.length,n=e,a=0;a<r;a++){var o=n[a];i=Math.min(i,o),t=Math.max(t,o)}return{min:i,max:t}}e.getMinMax=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i=e.uint16("x00280103"),t=e.uint16("x00280100");return 0===i&&8===t?1:0===i&&16===t?2:1===i&&16===t?3:void 0}e.getPixelFormat=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i=e.string("x00280030");if(i&&i.length>0){var t=i.split("\\");if(parseFloat(t[0])&&parseFloat(t[1]))return{row:parseFloat(t[0]),column:parseFloat(t[1])}}return{row:void 0,column:void 0}}e.getPixelSpacing=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i={intercept:0,slope:1};return e.elements.x00281052&&e.elements.x00281053&&(i.intercept=e.floatString("x00281052")||i.intercept,i.slope=e.floatString("x00281053")||i.slope),i}e.getRescaleSlopeAndIntercept=i}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i={windowCenter:void 0,windowWidth:void 0};return e.elements.x00281050&&e.elements.x00281051&&(i.windowCenter=e.floatString("x00281050"),i.windowWidth=e.floatString("x00281051")),i}e.getWindowWidthAndCenter=i}(cornerstoneWADOImageLoader),function(e,i,t){"use strict";i.registerImageLoader("dicomfile",t.internal.loadImage)}($,cornerstone,cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i=a.push(e);return"dicomfile:"+(i-1)}function t(e){return a[e]}function r(e){a[e]=void 0}function n(){a=[]}var a=[];e.fileManager={add:i,get:t,remove:r,purge:n}}(cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(i){var r=t.parseImageId(i),n=parseInt(r.url),a=t.fileManager.get(n),o=e.Deferred(),s=new FileReader;return s.onload=function(e){var i=e.target.result,t=new Uint8Array(i),r=dicomParser.parseDicom(t);o.resolve(r)},s.readAsArrayBuffer(a),o.promise()}t.internal.loadFileRequest=r}($,cornerstone,cornerstoneWADOImageLoader),function(e){function i(e,i,t){if(t+e.length>i.length)return!1;for(var r=t,n=0;n<e.length;n++)if(e[n]!==i[r++])return!1;return!0}function t(e){for(var i=new Uint8Array(e.length),t=0,r=e.length;t<r;t++)i[t]=e.charCodeAt(t);return i}function r(e,r,n){n=n||0;for(var a=t(r),o=n;o<e.length;o++)if(a[0]===e[o]&&i(a,e,o))return o;return-1}e.internal.findIndexOfString=r}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){for(var i=0;i<e.length;i++)if("--"===e[i].substr(0,2))return e[i]}function t(e){for(var i=0;i<e.length;i++)if("Content-Type:"===e[i].substr(0,13))return e[i].substr(13).trim()}function r(e,i,t){i=i||0,t=t||e.length-i;for(var r="",n=i;n<i+t;n++)r+=String.fromCharCode(e[n]);return r}e.internal.getImageFrame=function(n,a){a=a||"application/octet-stream";var o=$.Deferred(),s=new XMLHttpRequest;return s.responseType="arraybuffer",s.open("get",n,!0),s.setRequestHeader("Accept","multipart/related;type="+a),s.onreadystatechange=function(n){if(4===s.readyState)if(200===s.status){var a=s.response,f=new Uint8Array(s.response),l=e.internal.findIndexOfString(f,"\n\r\n");l===-1&&o.reject("invalid response - no multipart mime header");var u=r(f,0,l),c=u.split("\r\n"),d=i(c);d||o.reject("invalid response - no boundary marker");var h=l+4,m=e.internal.findIndexOfString(f,d,h);m===-1&&o.reject("invalid response - terminating boundary not found");var b=m-h-1;o.resolve({contentType:t(c),arrayBuffer:a,offset:h,length:b})}else o.reject(s.response)},s.send(),o.promise()}}(cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i=a.push(e);return"wadors:"+(i-1)}function t(e){return a[e]}function r(e){a[e]=void 0}function n(){a=[]}var a=[];e.imageManager={add:i,get:t,remove:r,purge:n}}(cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(r){var n=e.Deferred(),a=r.substring(7),o=t.imageManager.get(a);if(void 0===o)return n.reject("unknown imageId"),n.promise();var s;return t.internal.getImageFrame(o.uri,s).then(function(e){var a;16===o.instance.bitsAllocated?a=0===o.instance.pixelRepresentation?new Uint16Array(e.arrayBuffer,e.offset,e.length/2):new Int16Array(e.arrayBuffer,e.offset,e.length/2):8===o.instance.bitsAllocated&&(a=new Uint8Array(e.arrayBuffer,e.offset,e.length));var s=t.getMinMax(a);o.imageId=r,o.minPixelValue=s.min,o.maxPixelValue=s.max,o.render=i.renderGrayscaleImage,o.getPixelData=function(){return a},n.resolve(o)}).fail(function(e){n.reject(e)}),n.promise()}i.registerImageLoader("wadors",r)}($,cornerstone,cornerstoneWADOImageLoader),function(e,i,t){"use strict";i.registerImageLoader("dicomweb",t.internal.loadImage),i.registerImageLoader("wadouri",t.internal.loadImage)}($,cornerstone,cornerstoneWADOImageLoader),function(e){"use strict";function i(e){r=e}function t(e){return"RGB"===e||"PALETTE COLOR"===e||"YBR_FULL"===e||"YBR_FULL_422"===e||"YBR_PARTIAL_422"===e||"YBR_PARTIAL_420"===e||"YBR_RCT"===e||"YBR_ICT"===e}var r={beforeSend:function(e){}};e.isColorImage=t}(cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(e,i){if(t.isJPEGBaseline8Bit(e)===!0)return t.decodeJPEGBaseline8Bit(a,e,i);var r=t.decodeTransferSyntax(e,i);return t.convertColorSpace(a,e,r)}function n(n,s,f,l){var u=t.getPixelSpacing(s),c=s.uint16("x00280010"),d=s.uint16("x00280011"),h=t.getRescaleSlopeAndIntercept(s),m=4,b=c*d,v=s.byteArray.length,w=t.getWindowWidthAndCenter(s);o=void 0;var p=e.Deferred(),g;try{g=r(s,f)}catch(e){return p.reject(e),p.promise()}return g.then(function(e){function r(){return e.data}function f(){return e}function m(){if(o===n)return a;a.height=c,a.width=d;var i=a.getContext("2d");return i.putImageData(e,0,0),o=n,a}var b={imageId:n,minPixelValue:0,maxPixelValue:255,slope:h.slope,intercept:h.intercept,windowCenter:w.windowCenter,windowWidth:w.windowWidth,render:i.renderColorImage,getPixelData:r,getImageData:f,getCanvas:m,rows:c,columns:d,height:c,width:d,color:!0,columnPixelSpacing:u.column,rowPixelSpacing:u.row,data:s,invert:!1,sizeInBytes:v,sharedCacheKey:l};(void 0===b.windowCenter||isNaN(b.windowCenter)||void 0===b.windowWidth||isNaN(b.windowWidth))&&(b.windowWidth=255,b.windowCenter=128),t.internal.options.imageCreated&&t.internal.options.imageCreated(b),p.resolve(b)},function(e){p.reject(e)}),p.promise()}var a=document.createElement("canvas"),o="";t.makeColorImage=n}($,cornerstone,cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(e){var i=t.getPixelFormat(e);if(1===i)return 1;if(2===i||3===i)return 2;throw"unknown pixel format"}function n(e,i,t){var r=t.uint16("x00283002",0);0===r&&(r=65535);var n=0;n=0===i?t.uint16("x00283002",1):t.int16("x00283002",1);for(var a=t.uint16("x00283002",2),o={id:"1",firstValueMapped:n,numBitsPerEntry:a,lut:[]},s=0;s<r;s++)0===i?o.lut[s]=t.uint16("x00283006",s):o.lut[s]=t.int16("x00283006",s);return o}function a(e){var i=e.string("x00080016");return"1.2.840.10008.5.1.4.1.1.12.1"!==i&&"1.2.840.10008.5.1.4.1.1.12.2.1\t"!==i}function o(o,s,f,l){function u(){return y}var c=e.Deferred(),d=t.getPixelSpacing(s),h=s.uint16("x00280010"),m=s.uint16("x00280011"),b=t.getRescaleSlopeAndIntercept(s),v;try{v=r(s)}catch(e){return c.reject(e),c.promise()}var w=h*m,p=s.byteArray.length,g=s.string("x00280004"),k="MONOCHROME1"===g,_=t.getWindowWidthAndCenter(s),y;try{y=t.decodeTransferSyntax(s,f)}catch(e){return c.reject(e),c.promise()}var T=t.getMinMax(y),M={imageId:o,minPixelValue:T.min,maxPixelValue:T.max,slope:b.slope,intercept:b.intercept,windowCenter:_.windowCenter,windowWidth:_.windowWidth,render:i.renderGrayscaleImage,getPixelData:u,rows:h,columns:m,height:h,width:m,color:!1,columnPixelSpacing:d.column,rowPixelSpacing:d.row,data:s,invert:k,sizeInBytes:p,sharedCacheKey:l},C=s.uint16("x00280103");if(s.elements.x00283000&&a(s)&&(M.modalityLUT=n(M,C,s.elements.x00283000.items[0].dataSet)),s.elements.x00283010&&(C=0,M.minPixelValue*M.slope+M.intercept<0&&(C=1),M.voiLUT=n(M,C,s.elements.x00283010.items[0].dataSet)),void 0===M.windowCenter||isNaN(M.windowCenter)||void 0===M.windowWidth||isNaN(M.windowWidth)){var x=M.maxPixelValue*M.slope+M.intercept,E=M.minPixelValue*M.slope+M.intercept;M.windowWidth=x-E,M.windowCenter=(x+E)/2}return t.internal.options.imageCreated&&t.internal.options.imageCreated(M),c.resolve(M),c.promise()}t.makeGrayscaleImage=o}($,cornerstone,cornerstoneWADOImageLoader),function(e){"use strict";function i(e){var i=e.indexOf(":"),t=e.substring(i+1),r=t.indexOf("frame="),n;if(r!==-1){var a=t.substr(r+6);n=parseInt(a),t=t.substr(0,r-1)}return{scheme:e.substr(0,i),url:t,frame:n}}e.parseImageId=i}(cornerstoneWADOImageLoader),function(e){"use strict";e.version="0.13.3"}(cornerstoneWADOImageLoader),function(e,i,t){"use strict";function r(r,n){var a=e.Deferred(),o=new XMLHttpRequest;return o.open("get",r,!0),o.responseType="arraybuffer",t.internal.options.beforeSend(o),o.onreadystatechange=function(e){if(4===o.readyState)if(200===o.status){var i=o.response,t=new Uint8Array(i),r=dicomParser.parseDicom(t);a.resolve(r)}else a.reject(o)},o.onprogress=function(t){if(t.lengthComputable){var r=t.loaded,a=t.total,o=Math.round(r/a*100);e(i).trigger("CornerstoneImageLoadProgress",{imageId:n,loaded:r,total:a,percentComplete:o})}},o.send(),a.promise()}t.internal.xhrRequest=r;
}($,cornerstone,cornerstoneWADOImageLoader);var OpenJPEG=function(Module){function globalEval(e){eval.call(null,e)}function assert(e,i){e||abort("Assertion failed: "+i)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,t,r){switch(t=t||"i8","*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":HEAP8[e>>0]=i;break;case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+t)}}function getValue(e,i,t){switch(i=i||"i8","*"===i.charAt(i.length-1)&&(i="i32"),i){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}function allocate(e,i,t,r){var n,a;"number"==typeof e?(n=!0,a=e):(n=!1,a=e.length);var o="string"==typeof i?i:null,s;if(s=t==ALLOC_NONE?r:[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===t?ALLOC_STATIC:t](Math.max(a,o?1:i.length)),n){var r=s,f;for(assert(0==(3&s)),f=s+(a&-4);r<f;r+=4)HEAP32[r>>2]=0;for(f=s+a;r<f;)HEAP8[r++>>0]=0;return s}if("i8"===o)return e.subarray||e.slice?HEAPU8.set(e,s):HEAPU8.set(new Uint8Array(e),s),s;for(var l=0,u,c,d;l<a;){var h=e[l];"function"==typeof h&&(h=Runtime.getFunctionIndex(h)),u=o||i[l],0!==u?("i64"==u&&(u="i32"),setValue(s+l,h,u),d!==u&&(c=Runtime.getNativeTypeSize(u),d=u),l+=c):l++}return s}function getMemory(e){return staticSealed?"undefined"!=typeof _sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var t=0,r,n=0;;){if(r=HEAPU8[e+n>>0],t|=r,0==r&&!i)break;if(n++,i&&n==i)break}i||(i=n);var a="";if(t<128){for(var o=1024,s;i>0;)s=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,o))),a=a?a+s:s,e+=o,i-=o;return a}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var t=HEAP8[e++>>0];if(!t)return i;i+=String.fromCharCode(t)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var t,r,n,a,o,s,f="";;){if(t=e[i++],!t)return f;if(128&t)if(r=63&e[i++],192!=(224&t))if(n=63&e[i++],224==(240&t)?t=(15&t)<<12|r<<6|n:(a=63&e[i++],240==(248&t)?t=(7&t)<<18|r<<12|n<<6|a:(o=63&e[i++],248==(252&t)?t=(3&t)<<24|r<<18|n<<12|a<<6|o:(s=63&e[i++],t=(1&t)<<30|r<<24|n<<18|a<<12|o<<6|s))),t<65536)f+=String.fromCharCode(t);else{var l=t-65536;f+=String.fromCharCode(55296|l>>10,56320|1023&l)}else f+=String.fromCharCode((31&t)<<6|r);else f+=String.fromCharCode(t)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,t,r){if(!(r>0))return 0;for(var n=t,a=t+r-1,o=0;o<e.length;++o){var s=e.charCodeAt(o);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),s<=127){if(t>=a)break;i[t++]=s}else if(s<=2047){if(t+1>=a)break;i[t++]=192|s>>6,i[t++]=128|63&s}else if(s<=65535){if(t+2>=a)break;i[t++]=224|s>>12,i[t++]=128|s>>6&63,i[t++]=128|63&s}else if(s<=2097151){if(t+3>=a)break;i[t++]=240|s>>18,i[t++]=128|s>>12&63,i[t++]=128|s>>6&63,i[t++]=128|63&s}else if(s<=67108863){if(t+4>=a)break;i[t++]=248|s>>24,i[t++]=128|s>>18&63,i[t++]=128|s>>12&63,i[t++]=128|s>>6&63,i[t++]=128|63&s}else{if(t+5>=a)break;i[t++]=252|s>>30,i[t++]=128|s>>24&63,i[t++]=128|s>>18&63,i[t++]=128|s>>12&63,i[t++]=128|s>>6&63,i[t++]=128|63&s}}return i[t]=0,t-n}function stringToUTF8(e,i,t){return stringToUTF8Array(e,HEAPU8,i,t)}function lengthBytesUTF8(e){for(var i=0,t=0;t<e.length;++t){var r=e.charCodeAt(t);r>=55296&&r<=57343&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++t)),r<=127?++i:i+=r<=2047?2:r<=65535?3:r<=2097151?4:r<=67108863?5:6}return i}function UTF16ToString(e){for(var i=0,t="";;){var r=HEAP16[e+2*i>>1];if(0==r)return t;++i,t+=String.fromCharCode(r)}}function stringToUTF16(e,i,t){if(void 0===t&&(t=2147483647),t<2)return 0;t-=2;for(var r=i,n=t<2*e.length?t/2:e.length,a=0;a<n;++a){var o=e.charCodeAt(a);HEAP16[i>>1]=o,i+=2}return HEAP16[i>>1]=0,i-r}function lengthBytesUTF16(e){return 2*e.length}function UTF32ToString(e){for(var i=0,t="";;){var r=HEAP32[e+4*i>>2];if(0==r)return t;if(++i,r>=65536){var n=r-65536;t+=String.fromCharCode(55296|n>>10,56320|1023&n)}else t+=String.fromCharCode(r)}}function stringToUTF32(e,i,t){if(void 0===t&&(t=2147483647),t<4)return 0;for(var r=i,n=r+t-4,a=0;a<e.length;++a){var o=e.charCodeAt(a);if(o>=55296&&o<=57343){var s=e.charCodeAt(++a);o=65536+((1023&o)<<10)|1023&s}if(HEAP32[i>>2]=o,i+=4,i+4>n)break}return HEAP32[i>>2]=0,i-r}function lengthBytesUTF32(e){for(var i=0,t=0;t<e.length;++t){var r=e.charCodeAt(t);r>=55296&&r<=57343&&++t,i+=4}return i}function demangle(e){function i(i){i&&Module.print(i),Module.print(e);for(var t="",r=0;r<f;r++)t+=" ";Module.print(t+"^")}function t(){f++,"K"===e[f]&&f++;for(var i=[];"E"!==e[f];)if("S"!==e[f])if("C"!==e[f]){var t=parseInt(e.substr(f)),r=t.toString().length;if(!t||!r){f--;break}var n=e.substr(f+r,t);i.push(n),u.push(n),f+=r+t}else i.push(i[i.length-1]),f+=2;else{f++;var a=e.indexOf("_",f),o=e.substring(f,a)||0;i.push(u[o]||"?"),f=a+1}return f++,i}function r(i,n,a){function o(){return"("+u.join(", ")+")"}n=n||1/0;var s="",u=[],d;if("N"===e[f]){if(d=t().join("::"),n--,0===n)return i?[d]:d}else{("K"===e[f]||c&&"L"===e[f])&&f++;var h=parseInt(e.substr(f));if(h){var m=h.toString().length;d=e.substr(f+m,h),f+=m+h}}if(c=!1,"I"===e[f]){f++;var b=r(!0),v=r(!0,1,!0);s+=v[0]+" "+d+"<"+b.join(", ")+">"}else s=d;e:for(;f<e.length&&n-- >0;){var w=e[f++];if(w in l)u.push(l[w]);else switch(w){case"P":u.push(r(!0,1,!0)[0]+"*");break;case"R":u.push(r(!0,1,!0)[0]+"&");break;case"L":f++;var p=e.indexOf("E",f),h=p-f;u.push(e.substr(f,h)),f+=h+2;break;case"A":var h=parseInt(e.substr(f));if(f+=h.toString().length,"_"!==e[f])throw"?";f++,u.push(r(!0,1,!0)[0]+" ["+h+"]");break;case"E":break e;default:s+="?"+w;break e}}return a||1!==u.length||"void"!==u[0]||(u=[]),i?(s&&u.push(s+"?"),u):s+o()}var n=!!Module.___cxa_demangle;if(n)try{var a=_malloc(e.length);writeStringToMemory(e.substr(1),a);var o=_malloc(4),s=Module.___cxa_demangle(a,0,0,o);if(0===getValue(o,"i32")&&s)return Pointer_stringify(s)}catch(e){}finally{a&&_free(a),o&&_free(o),s&&_free(s)}var f=3,l={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},u=[],c=!0,d=e;try{if("Object._main"==e||"_main"==e)return"main()";if("number"==typeof e&&(e=Pointer_stringify(e)),"_"!==e[0])return e;if("_"!==e[1])return e;if("Z"!==e[2])return e;switch(e[3]){case"n":return"operator new()";case"d":return"operator delete()"}d=r()}catch(e){d+="?"}return d.indexOf("?")>=0&&!n&&Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),d}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(i){e=i}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}function alignMemoryPage(e){return e%4096>0&&(e+=4096-e%4096),e}function enlargeMemory(){var e=TOTAL_MEMORY,i=Math.pow(2,31);if(DYNAMICTOP>=i)return!1;for(;TOTAL_MEMORY<=DYNAMICTOP;)if(TOTAL_MEMORY<i/2)TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY);else{var t=TOTAL_MEMORY;if(TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+i)/4),TOTAL_MEMORY<=t)return!1}if(TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16777216),TOTAL_MEMORY>=i)return!1;try{if(ArrayBuffer.transfer)buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY);else{var r=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return!1}var n=_emscripten_replace_memory(buffer);return!!n&&(Module.buffer=buffer,Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer),ArrayBuffer.transfer||HEAP8.set(r),!0)}function callRuntimeCallbacks(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var t=i.func;"number"==typeof t?void 0===i.arg?Runtime.dynCall("v",t):Runtime.dynCall("vi",t,[i.arg]):t(void 0===i.arg?null:i.arg)}else i()}}function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,t){var r=t>0?t:lengthBytesUTF8(e)+1,n=new Array(r),a=stringToUTF8Array(e,n,0,n.length);return i&&(n.length=a),n}function intArrayToString(e){for(var i=[],t=0;t<e.length;t++){var r=e[t];r>255&&(r&=255),i.push(String.fromCharCode(r))}return i.join("")}function writeStringToMemory(e,i,t){for(var r=intArrayFromString(e,t),n=0;n<r.length;){var a=r[n];HEAP8[i+n>>0]=a,n+=1}}function writeArrayToMemory(e,i){for(var t=0;t<e.length;t++)HEAP8[i++>>0]=e[t]}function writeAsciiToMemory(e,i,t){for(var r=0;r<e.length;++r)HEAP8[i++>>0]=e.charCodeAt(r);t||(HEAP8[i>>0]=0)}function unSign(e,i,t){return e>=0?e:i<=32?2*Math.abs(1<<i-1)+e:Math.pow(2,i)+e}function reSign(e,i,t){if(e<=0)return e;var r=i<=32?Math.abs(1<<i-1):Math.pow(2,i-1);return e>=r&&(i<=32||e>r)&&(e=-2*r+e),e}function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}function copyTempFloat(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3]}function copyTempDouble(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3],HEAP8[tempDoublePtr+4]=HEAP8[e+4],HEAP8[tempDoublePtr+5]=HEAP8[e+5],HEAP8[tempDoublePtr+6]=HEAP8[e+6],HEAP8[tempDoublePtr+7]=HEAP8[e+7]}function _abort(){Module.abort()}function ___lock(){}function ___unlock(){}function _emscripten_set_main_loop_timing(e,i){function t(e){e.source===window&&e.data===n&&(e.stopPropagation(),r.shift()())}if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=i,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function e(){setTimeout(Browser.mainLoop.runner,i)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function e(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var r=[],n="__emcc";window.addEventListener("message",t,!0),window.setImmediate=function e(i){r.push(i),window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function e(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(e,i,t,r,n){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=r;var a=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function i(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var t=Date.now(),n=Browser.mainLoop.queue.shift();if(n.func(n.arg),Browser.mainLoop.remainingBlockers){var o=Browser.mainLoop.remainingBlockers,s=o%1==0?o-1:Math.floor(o);n.counted?Browser.mainLoop.remainingBlockers=s:(s+=.5,Browser.mainLoop.remainingBlockers=(8*o+s)/9)}return console.log('main loop blocker "'+n.name+'" took '+(Date.now()-t)+" ms"),Browser.mainLoop.updateStatus(),void setTimeout(Browser.mainLoop.runner,0)}if(!(a<Browser.mainLoop.currentlyRunningMainloop)){if(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,1==Browser.mainLoop.timingMode&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0)return void Browser.mainLoop.scheduler();"timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(function(){"undefined"!=typeof r?Runtime.dynCall("vi",e,[r]):Runtime.dynCall("v",e)}),a<Browser.mainLoop.currentlyRunningMainloop||("object"==typeof SDL&&SDL.audio&&SDL.audio.queueNewAudioData&&SDL.audio.queueNewAudioData(),Browser.mainLoop.scheduler())}}},n||(i&&i>0?_emscripten_set_main_loop_timing(0,1e3/i):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),t)throw"SimulateInfiniteLoop"}function ___syscall54(e,i){SYSCALLS.varargs=i;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator?navigator.hardwareConcurrency||1:1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}function _pthread_cleanup_push(e,i){__ATEXIT__.push(function(){Runtime.dynCall("vi",e,[i])}),_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function ___syscall5(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStr(),r=SYSCALLS.get(),n=SYSCALLS.get(),a=FS.open(t,r,n);return a.fd}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _emscripten_memcpy_big(e,i,t){return HEAPU8.set(HEAPU8.subarray(i,i+t),e),e}function ___syscall6(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD();return FS.close(t),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var t=DYNAMICTOP;if(0!=e){var r=i.alloc(e);if(!r)return-1>>>0}return t}function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD(),r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),s=n;return assert(0===r),FS.llseek(t,s,o),HEAP32[a>>2]=t.position,t.getdents&&0===s&&0===o&&(t.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.get(),r=SYSCALLS.get(),n=SYSCALLS.get(),a=0;___syscall146.buffer||(___syscall146.buffer=[]);for(var o=___syscall146.buffer,s=0;s<n;s++){for(var f=HEAP32[r+8*s>>2],l=HEAP32[r+(8*s+4)>>2],u=0;u<l;u++){var c=HEAPU8[f+u];0===c||10===c?(Module.print(UTF8ArrayToString(o,0)),o.length=0):o.push(c)}a+=l}return a}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall221(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD(),r=SYSCALLS.get();switch(r){case 0:var n=SYSCALLS.get();if(n<0)return-ERRNO_CODES.EINVAL;var a;return a=FS.open(t.path,t.flags,0,n),a.fd;case 1:case 2:return 0;case 3:return t.flags;case 4:var n=SYSCALLS.get();return t.flags|=n,0;case 12:case 12:var n=SYSCALLS.get(),o=0;return HEAP16[n+o>>1]=2,0;case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:return ___setErrNo(ERRNO_CODES.EINVAL),-1;default:return-ERRNO_CODES.EINVAL}}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD(),r=SYSCALLS.get(),n=SYSCALLS.get();return SYSCALLS.doReadv(t,r,n)}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function invoke_iiiiiiii(e,i,t,r,n,a,o,s){try{return Module.dynCall_iiiiiiii(e,i,t,r,n,a,o,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,t,r){try{return Module.dynCall_iiii(e,i,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_di(e,i){try{return Module.dynCall_di(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,t){try{Module.dynCall_vii(e,i,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,t,r,n,a,o){try{return Module.dynCall_iiiiiii(e,i,t,r,n,a,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,t,r){try{Module.dynCall_viii(e,i,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u,c){try{return Module.dynCall_iiiiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u,c)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,t,r,n){try{return Module.dynCall_iiiii(e,i,t,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,t){try{return Module.dynCall_iii(e,i,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,t,r,n,a){try{return Module.dynCall_iiiiii(e,i,t,r,n,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,t,r,n){try{Module.dynCall_viiii(e,i,t,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),i()},1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?(process.stdout.once("drain",function(){process.exit(e)}),console.log(" "),setTimeout(function(){process.exit(e)},500)):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}function abort(e){void 0!==e?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var i="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.",t="abort("+e+") at "+stackTrace()+i;throw abortDecorators&&abortDecorators.forEach(function(i){t=i(t,e)}),t}Module=Module||{};var Module;Module||(Module=("undefined"!=typeof OpenJPEG?OpenJPEG:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=function e(i){process.stdout.write(i+"\n")}),Module.printErr||(Module.printErr=function e(i){process.stderr.write(i+"\n")});var nodeFS=require("fs"),nodePath=require("path");Module.read=function e(i,t){i=nodePath.normalize(i);var r=nodeFS.readFileSync(i);return r||i==nodePath.resolve(i)||(i=path.join(__dirname,"..","src",i),r=nodeFS.readFileSync(i)),r&&!t&&(r=r.toString()),r},Module.readBinary=function e(i){var t=Module.read(i,!0);return t.buffer||(t=new Uint8Array(t)),assert(t.buffer),t},Module.load=function e(i){globalEval(read(i))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function e(){throw"no read() available (jsc?)"},Module.readBinary=function e(i){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(i));var t=read(i,"binary");return assert("object"==typeof t),t},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:"undefined"!=typeof arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function e(i){var t=new XMLHttpRequest;return t.open("GET",i,!1),t.send(null),t.responseText},"undefined"!=typeof arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function e(i){console.log(i)}),Module.printErr||(Module.printErr=function e(i){console.log(i)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),"undefined"==typeof Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}!Module.load&&Module.read&&(Module.load=function e(i){globalEval(Module.read(i))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var i=parseInt(e.substr(1));return assert(i%8===0),i/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4===(7&e)),e+=4):assert(0===(3&e)),e},getAlignSize:function(e,i,t){return t||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,t){return t&&t.length?(t.splice||(t=Array.prototype.slice.call(t)),t.splice(0,0,i),Module["dynCall_"+e].apply(null,t)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var t=Runtime.funcWrappers[i];return t[e]||(t[e]=function t(){return Runtime.dynCall(i,e,arguments)}),t[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=STACKTOP+e|0,STACKTOP=STACKTOP+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=STATICTOP+e|0,STATICTOP=STATICTOP+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if(DYNAMICTOP=DYNAMICTOP+e|0,DYNAMICTOP=DYNAMICTOP+15&-16,DYNAMICTOP>=TOTAL_MEMORY){var t=enlargeMemory();if(!t)return DYNAMICTOP=i,0}return i},alignMemory:function(e,i){var t=e=Math.ceil(e/(i?i:16))*(i?i:16);return t},makeBigInt:function(e,i,t){var r=t?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i);return r},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var __THREW__=0,ABORT=!1,EXITSTATUS=0,undef=0,tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat,tempI64,tempI64b,tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9,globalScope=this,cwrap,ccall;!function(){function parseJSFunc(e){var i=e.toString().match(sourceRegex).slice(1);return{arguments:i[0],body:i[1],returnValue:i[2]}}var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!==e&&void 0!==e&&0!==e&&(i=Runtime.stackAlloc((e.length<<2)+1),writeStringToMemory(e,i)),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function e(i,t,r,n,a){var o=getCFunc(i),s=[],f=0;if(n)for(var l=0;l<n.length;l++){var u=toC[r[l]];u?(0===f&&(f=Runtime.stackSave()),s[l]=u(n[l])):s[l]=n[l]}var c=o.apply(null,s);if("string"===t&&(c=Pointer_stringify(c)),0!==f){if(a&&a.async)return void EmterpreterAsync.asyncFinalizers.push(function(){Runtime.stackRestore(f)});Runtime.stackRestore(f)}return c};var sourceRegex=/^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/,JSsource={};for(var fun in JSfuncs)JSfuncs.hasOwnProperty(fun)&&(JSsource[fun]=parseJSFunc(JSfuncs[fun]));cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every(function(e){return"number"===e}),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map(function(e,i){return"$"+i}),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"="+convertCode.returnValue+";"}}}var cfuncname=parseJSFunc(function(){return cfunc}).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc(function(){return Pointer_stringify}).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.UTF16ToString=UTF16ToString,Module.stringToUTF16=stringToUTF16,Module.lengthBytesUTF16=lengthBytesUTF16,Module.UTF32ToString=UTF32ToString,Module.stringToUTF32=stringToUTF32,Module.lengthBytesUTF32=lengthBytesUTF32,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0,byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),byteLength(new ArrayBuffer(4))}catch(e){byteLength=function(e){return e.byteLength}}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||16777216,totalMemory=65536;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;
totalMemory=Math.max(totalMemory,16777216),totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&!!new Int32Array(1).subarray&&!!new Int32Array(1).set,"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY),HEAP8=new Int8Array(buffer),HEAP16=new Int16Array(buffer),HEAP32=new Int32Array(buffer),HEAPU8=new Uint8Array(buffer),HEAPU16=new Uint16Array(buffer),HEAPU32=new Uint32Array(buffer),HEAPF32=new Float32Array(buffer),HEAPF64=new Float64Array(buffer),HEAP32[0]=255,assert(255===HEAPU8[0]&&0===HEAPU8[3],"Typed arrays 2 must be run on a little-endian system"),Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&Math.imul(4294967295,5)===-5||(Math.imul=function e(i,t){var r=i>>>16,n=65535&i,a=t>>>16,o=65535&t;return n*o+(r*o+n*a<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var memoryInitializer=null,ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+25680,__ATINIT__.push(),allocate([131,192,202,161,69,182,251,63,127,251,58,112,206,136,234,63,127,251,58,112,206,136,234,63,131,192,202,161,69,182,251,63,225,122,20,174,71,225,252,63,94,186,73,12,2,43,249,63,0,0,0,0,0,0,240,63,0,0,0,0,0,0,248,63,0,0,0,0,0,0,6,64,0,0,0,0,0,128,21,64,92,143,194,245,40,92,37,64,215,163,112,61,10,87,53,64,246,40,92,143,194,85,69,64,133,235,81,184,30,85,85,64,102,102,102,102,102,86,101,64,205,204,204,204,204,84,117,64,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,207,247,83,227,165,155,240,63,70,182,243,253,212,120,249,63,39,49,8,172,28,90,7,64,29,90,100,59,223,207,22,64,41,92,143,194,245,168,38,64,164,112,61,10,215,163,54,64,0,0,0,0,0,160,70,64,31,133,235,81,184,158,86,64,205,204,204,204,204,156,102,64,0,0,0,0,0,0,0,0,173,250,92,109,197,254,230,63,86,125,174,182,98,127,237,63,199,75,55,137,65,96,249,63,242,210,77,98,16,88,8,64,250,126,106,188,116,19,24,64,133,235,81,184,30,5,40,64,0,0,0,0,0,0,56,64,92,143,194,245,40,252,71,64,236,81,184,30,133,251,87,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,63,113,61,10,215,163,112,255,63,104,145,237,124,63,181,16,64,117,147,24,4,86,206,32,64,102,102,102,102,102,230,48,64,236,81,184,30,133,235,64,64,92,143,194,245,40,236,80,64,154,153,153,153,153,233,96,64,154,153,153,153,153,233,112,64,51,51,51,51,51,231,128,64,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,147,24,4,86,14,45,0,64,182,243,253,212,120,233,15,64,246,40,92,143,194,181,32,64,10,215,163,112,61,10,49,64,195,245,40,92,143,34,65,64,184,30,133,235,81,40,81,64,154,153,153,153,153,41,97,64,154,153,153,153,153,41,113,64,0,0,0,0,0,40,129,64,0,0,0,0,0,0,0,0,164,112,61,10,215,163,0,64,236,81,184,30,133,235,14,64,119,190,159,26,47,157,32,64,174,71,225,122,20,46,49,64,123,20,174,71,225,90,65,64,246,40,92,143,194,101,81,64,154,153,153,153,153,105,97,64,154,153,153,153,153,105,113,64,154,153,153,153,153,105,129,64,0,0,0,0,0,0,0,0,4,0,0,0,67,80,82,76,0,0,0,0,0,0,0,0,76,82,67,80,0,0,0,0,3,0,0,0,80,67,82,76,0,0,0,0,1,0,0,0,82,76,67,80,0,0,0,0,2,0,0,0,82,80,67,76,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,144,255,0,0,12,0,0,0,1,0,0,0,82,255,0,0,20,0,0,0,2,0,0,0,83,255,0,0,20,0,0,0,3,0,0,0,94,255,0,0,20,0,0,0,4,0,0,0,92,255,0,0,20,0,0,0,5,0,0,0,93,255,0,0,20,0,0,0,6,0,0,0,95,255,0,0,20,0,0,0,7,0,0,0,81,255,0,0,2,0,0,0,8,0,0,0,85,255,0,0,4,0,0,0,9,0,0,0,87,255,0,0,4,0,0,0,10,0,0,0,88,255,0,0,16,0,0,0,11,0,0,0,96,255,0,0,4,0,0,0,12,0,0,0,97,255,0,0,16,0,0,0,13,0,0,0,145,255,0,0,0,0,0,0,0,0,0,0,99,255,0,0,4,0,0,0,14,0,0,0,100,255,0,0,20,0,0,0,15,0,0,0,116,255,0,0,20,0,0,0,16,0,0,0,120,255,0,0,4,0,0,0,17,0,0,0,117,255,0,0,20,0,0,0,18,0,0,0,119,255,0,0,20,0,0,0,19,0,0,0,0,0,0,0,20,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,4,0,0,0,8,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,32,32,80,106,20,0,0,0,112,121,116,102,21,0,0,0,104,50,112,106,22,0,0,0,114,100,104,105,23,0,0,0,114,108,111,99,24,0,0,0,99,99,112,98,25,0,0,0,114,108,99,112,26,0,0,0,112,97,109,99,27,0,0,0,102,101,100,99,28,0,0,0,1,86,0,0,0,0,0,0,164,4,0,0,180,4,0,0,1,86,0,0,1,0,0,0,180,4,0,0,164,4,0,0,1,52,0,0,0,0,0,0,196,4,0,0,68,5,0,0,1,52,0,0,1,0,0,0,212,4,0,0,84,5,0,0,1,24,0,0,0,0,0,0,228,4,0,0,164,5,0,0,1,24,0,0,1,0,0,0,244,4,0,0,180,5,0,0,193,10,0,0,0,0,0,0,4,5,0,0,4,6,0,0,193,10,0,0,1,0,0,0,20,5,0,0,20,6,0,0,33,5,0,0,0,0,0,0,36,5,0,0,36,8,0,0,33,5,0,0,1,0,0,0,52,5,0,0,52,8,0,0,33,2,0,0,0,0,0,0,68,9,0,0,164,8,0,0,33,2,0,0,1,0,0,0,84,9,0,0,180,8,0,0,1,86,0,0,0,0,0,0,100,5,0,0,84,5,0,0,1,86,0,0,1,0,0,0,116,5,0,0,68,5,0,0,1,84,0,0,0,0,0,0,132,5,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,5,0,0,84,6,0,0,1,72,0,0,0,0,0,0,164,5,0,0,68,6,0,0,1,72,0,0,1,0,0,0,180,5,0,0,84,6,0,0,1,56,0,0,0,0,0,0,196,5,0,0,68,6,0,0,1,56,0,0,1,0,0,0,212,5,0,0,84,6,0,0,1,48,0,0,0,0,0,0,228,5,0,0,164,6,0,0,1,48,0,0,1,0,0,0,244,5,0,0,180,6,0,0,1,36,0,0,0,0,0,0,4,6,0,0,196,6,0,0,1,36,0,0,1,0,0,0,20,6,0,0,212,6,0,0,1,28,0,0,0,0,0,0,36,6,0,0,4,7,0,0,1,28,0,0,1,0,0,0,52,6,0,0,20,7,0,0,1,22,0,0,0,0,0,0,36,8,0,0,36,7,0,0,1,22,0,0,1,0,0,0,52,8,0,0,52,7,0,0,1,86,0,0,0,0,0,0,100,6,0,0,84,6,0,0,1,86,0,0,1,0,0,0,116,6,0,0,68,6,0,0,1,84,0,0,0,0,0,0,132,6,0,0,68,6,0,0,1,84,0,0,1,0,0,0,148,6,0,0,84,6,0,0,1,81,0,0,0,0,0,0,164,6,0,0,100,6,0,0,1,81,0,0,1,0,0,0,180,6,0,0,116,6,0,0,1,72,0,0,0,0,0,0,196,6,0,0,132,6,0,0,1,72,0,0,1,0,0,0,212,6,0,0,148,6,0,0,1,56,0,0,0,0,0,0,228,6,0,0,164,6,0,0,1,56,0,0,1,0,0,0,244,6,0,0,180,6,0,0,1,52,0,0,0,0,0,0,4,7,0,0,196,6,0,0,1,52,0,0,1,0,0,0,20,7,0,0,212,6,0,0,1,48,0,0,0,0,0,0,36,7,0,0,228,6,0,0,1,48,0,0,1,0,0,0,52,7,0,0,244,6,0,0,1,40,0,0,0,0,0,0,68,7,0,0,228,6,0,0,1,40,0,0,1,0,0,0,84,7,0,0,244,6,0,0,1,36,0,0,0,0,0,0,100,7,0,0,4,7,0,0,1,36,0,0,1,0,0,0,116,7,0,0,20,7,0,0,1,34,0,0,0,0,0,0,132,7,0,0,36,7,0,0,1,34,0,0,1,0,0,0,148,7,0,0,52,7,0,0,1,28,0,0,0,0,0,0,164,7,0,0,68,7,0,0,1,28,0,0,1,0,0,0,180,7,0,0,84,7,0,0,1,24,0,0,0,0,0,0,196,7,0,0,100,7,0,0,1,24,0,0,1,0,0,0,212,7,0,0,116,7,0,0,1,22,0,0,0,0,0,0,228,7,0,0,132,7,0,0,1,22,0,0,1,0,0,0,244,7,0,0,148,7,0,0,1,20,0,0,0,0,0,0,4,8,0,0,164,7,0,0,1,20,0,0,1,0,0,0,20,8,0,0,180,7,0,0,1,18,0,0,0,0,0,0,36,8,0,0,196,7,0,0,1,18,0,0,1,0,0,0,52,8,0,0,212,7,0,0,1,17,0,0,0,0,0,0,68,8,0,0,228,7,0,0,1,17,0,0,1,0,0,0,84,8,0,0,244,7,0,0,193,10,0,0,0,0,0,0,100,8,0,0,4,8,0,0,193,10,0,0,1,0,0,0,116,8,0,0,20,8,0,0,193,9,0,0,0,0,0,0,132,8,0,0,36,8,0,0,193,9,0,0,1,0,0,0,148,8,0,0,52,8,0,0,161,8,0,0,0,0,0,0,164,8,0,0,68,8,0,0,161,8,0,0,1,0,0,0,180,8,0,0,84,8,0,0,33,5,0,0,0,0,0,0,196,8,0,0,100,8,0,0,33,5,0,0,1,0,0,0,212,8,0,0,116,8,0,0,65,4,0,0,0,0,0,0,228,8,0,0,132,8,0,0,65,4,0,0,1,0,0,0,244,8,0,0,148,8,0,0,161,2,0,0,0,0,0,0,4,9,0,0,164,8,0,0,161,2,0,0,1,0,0,0,20,9,0,0,180,8,0,0,33,2,0,0,0,0,0,0,36,9,0,0,196,8,0,0,33,2,0,0,1,0,0,0,52,9,0,0,212,8,0,0,65,1,0,0,0,0,0,0,68,9,0,0,228,8,0,0,65,1,0,0,1,0,0,0,84,9,0,0,244,8,0,0,17,1,0,0,0,0,0,0,100,9,0,0,4,9,0,0,17,1,0,0,1,0,0,0,116,9,0,0,20,9,0,0,133,0,0,0,0,0,0,0,132,9,0,0,36,9,0,0,133,0,0,0,1,0,0,0,148,9,0,0,52,9,0,0,73,0,0,0,0,0,0,0,164,9,0,0,68,9,0,0,73,0,0,0,1,0,0,0,180,9,0,0,84,9,0,0,37,0,0,0,0,0,0,0,196,9,0,0,100,9,0,0,37,0,0,0,1,0,0,0,212,9,0,0,116,9,0,0,21,0,0,0,0,0,0,0,228,9,0,0,132,9,0,0,21,0,0,0,1,0,0,0,244,9,0,0,148,9,0,0,9,0,0,0,0,0,0,0,4,10,0,0,164,9,0,0,9,0,0,0,1,0,0,0,20,10,0,0,180,9,0,0,5,0,0,0,0,0,0,0,36,10,0,0,196,9,0,0,5,0,0,0,1,0,0,0,52,10,0,0,212,9,0,0,1,0,0,0,0,0,0,0,36,10,0,0,228,9,0,0,1,0,0,0,1,0,0,0,52,10,0,0,244,9,0,0,1,86,0,0,0,0,0,0,68,10,0,0,68,10,0,0,1,86,0,0,1,0,0,0,84,10,0,0,84,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,11,0,0,12,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,57,94,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,64,4,32,0,32,2,128,0,128,8,16,0,16,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,1,0,3,128,4,0,6,128,7,0,9,128,10,0,12,128,13,0,15,128,16,0,18,128,19,0,21,128,22,0,24,128,25,0,27,128,28,0,30,128,31,0,33,128,34,0,36,128,37,0,39,128,40,0,42,128,43,0,45,128,46,0,48,128,49,0,51,128,52,0,54,128,55,0,57,128,58,0,60,128,61,0,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,0,81,128,82,0,84,128,85,0,87,128,88,0,90,128,91,0,93,128,94,0,96,128,97,0,99,128,100,0,102,128,103,0,105,128,106,0,108,128,109,0,111,128,112,0,114,128,115,0,117,128,118,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,0,32,0,33,0,34,0,35,0,36,0,37,128,38,128,39,128,40,128,41,0,43,0,44,0,45,128,46,128,47,0,49,0,50,128,51,128,52,0,54,0,55,128,56,0,58,0,59,128,60,0,62,128,63,128,64,0,66,128,67,0,69,128,70,0,72,128,73,0,75,128,76,0,78,128,79,128,81,0,83,128,84,0,86,0,88,128,89,0,91,0,93,128,94,128,96,0,98,0,100,128,101,128,103,0,105,0,107,0,109,128,110,128,112,128,114,128,116,0,118,0,120,0,122,0,124,0,126,0,24,128,23,0,23,128,22,0,22,128,21,0,21,128,20,0,20,128,19,0,19,128,18,0,18,128,17,0,17,128,16,0,16,128,15,0,15,128,14,0,14,128,13,0,13,128,12,0,12,128,11,0,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,0,5,128,4,0,4,128,3,0,3,128,2,0,2,128,1,0,1,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,0,1,128,1,0,2,128,2,0,3,128,3,0,4,128,4,0,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,0,11,128,11,0,12,128,12,0,13,128,13,0,14,128,14,0,15,128,15,0,16,128,16,0,17,128,17,0,18,128,18,0,19,128,19,0,20,128,20,0,21,128,21,0,22,128,22,0,23,128,23,0,32,0,31,0,30,0,29,0,28,0,27,128,26,128,25,128,24,128,23,0,23,0,22,0,21,128,20,128,19,0,19,0,18,128,17,128,16,0,16,0,15,128,14,0,14,0,13,128,12,0,12,128,11,128,10,0,10,128,9,0,9,128,8,0,8,128,7,0,7,128,6,0,6,128,5,128,5,0,5,128,4,0,4,0,4,128,3,0,3,0,3,128,2,128,2,0,2,0,2,128,1,128,1,0,1,0,1,0,1,128,0,128,0,128,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,0,128,0,128,0,128,0,0,1,0,1,0,1,128,1,128,1,0,2,0,2,128,2,128,2,0,3,0,3,128,3,0,4,0,4,128,4,0,5,128,5,128,5,0,6,128,6,0,7,128,7,0,8,128,8,0,9,128,9,0,10,128,10,128,11,0,12,128,12,0,13,0,14,128,14,0,15,0,16,128,16,128,17,0,18,0,19,128,19,128,20,0,21,0,22,0,23,128,23,128,24,128,25,128,26,0,27,0,28,0,29,0,30,0,31,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,116,104,101,32,100,101,99,111,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,104,101,97,100,101,114,0,91,69,82,82,79,82,93,32,111,112,106,95,100,101,99,111,109,112,114,101,115,115,58,32,102,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,33,0,98,112,112,32,61,37,100,10,0,115,103,110,100,32,61,37,100,10,0,91,69,82,82,79,82,93,32,37,115,0,83,116,114,101,97,109,32,114,101,97,99,104,101,100,32,105,116,115,32,101,110,100,32,33,10,0,69,114,114,111,114,32,111,110,32,119,114,105,116,105,110,103,32,115,116,114,101,97,109,33,10,0,83,116,114,101,97,109,32,101,114,114,111,114,33,10,0,50,46,49,46,48,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,115,101,116,117,112,95,100,101,99,111,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,67,111,100,101,99,32,112,114,111,118,105,100,101,100,32,116,111,32,116,104,101,32,111,112,106,95,114,101,97,100,95,104,101,97,100,101,114,32,102,117,110,99,116,105,111,110,32,105,115,32,110,111,116,32,97,32,100,101,99,111,109,112,114,101,115,115,111,114,32,104,97,110,100,108,101,114,46,10,0,119,98,0,114,98,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,44,37,100,93,10,0,68,101,112,114,101,99,97,116,101,100,32,102,105,101,108,100,115,32,99,112,95,99,105,110,101,109,97,32,111,114,32,99,112,95,114,115,105,122,32,97,114,101,32,117,115,101,100,10,80,108,101,97,115,101,32,99,111,110,115,105,100,101,114,32,117,115,105,110,103,32,111,110,108,121,32,116,104,101,32,114,115,105,122,32,102,105,101,108,100,10,83,101,101,32,111,112,101,110,106,112,101,103,46,104,32,100,111,99,117,109,101,110,116,97,116,105,111,110,32,102,111,114,32,109,111,114,101,32,100,101,116,97,105,108,115,10,0,84,104,101,32,100,101,115,105,114,101,100,32,109,97,120,105,109,117,109,32,99,111,100,101,115,116,114,101,97,109,32,115,105,122,101,32,104,97,115,32,108,105,109,105,116,101,100,10,97,116,32,108,101,97,115,116,32,111,110,101,32,111,102,32,116,104,101,32,100,101,115,105,114,101,100,32,113,117,97,108,105,116,121,32,108,97,121,101,114,115,10,0,74,80,69,71,32,50,48,48,48,32,83,99,97,108,97,98,108,101,32,68,105,103,105,116,97,108,32,67,105,110,101,109,97,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,49,32,115,105,110,103,108,101,32,113,117,97,108,105,116,121,32,108,97,121,101,114,45,62,32,78,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,45,62,32,82,97,116,101,32,111,102,32,116,104,101,32,108,97,115,116,32,108,97,121,101,114,32,40,37,51,46,49,102,41,32,119,105,108,108,32,98,101,32,117,115,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,60,61,32,53,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,53,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,49,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,62,61,32,49,32,38,38,32,60,61,32,54,10,45,62,32,78,117,109,98,101,114,32,111,102,32,100,101,99,111,109,112,111,115,105,116,105,111,110,32,108,101,118,101,108,115,32,102,111,114,99,101,100,32,116,111,32,54,32,40,114,97,116,104,101,114,32,116,104,97,110,32,37,100,41,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,51,48,50,48,56,51,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,51,48,50,48,56,51,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,65,115,32,110,111,32,114,97,116,101,32,104,97,115,32,98,101,101,110,32,103,105,118,101,110,44,32,116,104,105,115,32,108,105,109,105,116,32,119,105,108,108,32,98,101,32,117,115,101,100,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,97,110,100,32,52,32,40,50,107,47,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,77,97,120,105,109,117,109,32,49,48,52,49,54,54,54,32,99,111,109,112,114,101,115,115,101,100,32,98,121,116,101,115,32,64,32,50,52,102,112,115,10,45,62,32,83,112,101,99,105,102,105,101,100,32,114,97,116,101,32,101,120,99,101,101,100,115,32,116,104,105,115,32,108,105,109,105,116,46,32,82,97,116,101,32,119,105,108,108,32,98,101,32,102,111,114,99,101,100,32,116,111,32,49,48,52,49,54,54,54,32,98,121,116,101,115,46,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,51,32,99,111,109,112,111,110,101,110,116,115,45,62,32,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,115,105,103,110,101,100,0,117,110,115,105,103,110,101,100,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,80,114,101,99,105,115,105,111,110,32,111,102,32,101,97,99,104,32,99,111,109,112,111,110,101,110,116,32,115,104,97,108,108,32,98,101,32,49,50,32,98,105,116,115,32,117,110,115,105,103,110,101,100,45,62,32,65,116,32,108,101,97,115,116,32,99,111,109,112,111,110,101,110,116,32,37,100,32,111,102,32,105,110,112,117,116,32,105,109,97,103,101,32,40,37,100,32,98,105,116,115,44,32,37,115,41,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,51,32,40,50,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,50,48,52,56,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,49,48,56,48,10,45,62,32,73,110,112,117,116,32,105,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,51,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,114,111,102,105,108,101,45,52,32,40,52,107,32,100,99,32,112,114,111,102,105,108,101,41,32,114,101,113,117,105,114,101,115,58,10,119,105,100,116,104,32,60,61,32,52,48,57,54,32,97,110,100,32,104,101,105,103,104,116,32,60,61,32,50,49,54,48,10,45,62,32,73,109,97,103,101,32,115,105,122,101,32,37,100,32,120,32,37,100,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,10,45,62,32,78,111,110,45,112,114,111,102,105,108,101,45,52,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,98,101,32,103,101,110,101,114,97,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,76,111,110,103,32,84,101,114,109,32,83,116,111,114,97,103,101,32,112,114,111,102,105,108,101,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,66,114,111,97,100,99,97,115,116,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,73,77,70,32,112,114,111,102,105,108,101,115,32,110,111,116,32,121,101,116,32,115,117,112,112,111,114,116,101,100,10,0,74,80,69,71,32,50,48,48,48,32,80,97,114,116,45,50,32,112,114,111,102,105,108,101,32,100,101,102,105,110,101,100,10,98,117,116,32,110,111,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,46,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,85,110,115,117,112,112,111,114,116,101,100,32,80,97,114,116,45,50,32,101,120,116,101,110,115,105,111,110,32,101,110,97,98,108,101,100,10,80,114,111,102,105,108,101,32,115,101,116,32,116,111,32,78,79,78,69,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,117,115,101,114,32,101,110,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,112,121,32,111,102,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,99,111,109,109,101,110,116,32,115,116,114,105,110,103,10,0,37,115,37,115,0,67,114,101,97,116,101,100,32,98,121,32,79,112,101,110,74,80,69,71,32,118,101,114,115,105,111,110,32,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,104,101,99,107,105,110,103,32,116,104,101,32,112,111,99,32,118,97,108,117,101,115,46,10,0,77,105,115,115,105,110,103,32,112,97,99,107,101,116,115,32,112,111,115,115,105,98,108,101,32,108,111,115,115,32,111,102,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,99,111,100,105,110,103,32,112,97,114,97,109,101,116,101,114,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,116,101,109,112,32,98,117,102,102,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,70,97,105,108,101,100,32,116,111,32,105,110,118,101,114,115,101,32,101,110,99,111,100,101,114,32,77,67,84,32,100,101,99,111,100,105,110,103,32,109,97,116,114,105,120,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,108,108,111,99,97,116,101,32,101,110,99,111,100,101,114,32,77,67,84,32,110,111,114,109,115,32,10,0,70,97,105,108,101,100,32,116,111,32,115,101,116,117,112,32,106,50,107,32,109,99,116,32,101,110,99,111,100,105,110,103,10,0,67,97,110,110,111,116,32,112,101,114,102,111,114,109,32,77,67,84,32,111,110,32,99,111,109,112,111,110,101,110,116,115,32,119,105,116,104,32,100,105,102,102,101,114,101,110,116,32,115,105,122,101,115,46,32,68,105,115,97,98,108,105,110,103,32,77,67,84,46,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,10,0,73,110,99,111,110,115,105,115,116,101,110,116,32,109,97,114,107,101,114,32,115,105,122,101,10,0,77,97,114,107,101,114,32,105,115,32,110,111,116,32,99,111,109,112,108,105,97,110,116,32,119,105,116,104,32,105,116,115,32,112,111,115,105,116,105,111,110,10,0,77,97,114,107,101,114,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,104,101,97,100,101,114,10,0,78,111,116,32,115,117,114,101,32,104,111,119,32,116,104,97,116,32,104,97,112,112,101,110,101,100,46,10,0,70,97,105,108,32,116,111,32,114,101,97,100,32,116,104,101,32,99,117,114,114,101,110,116,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,32,40,37,35,120,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,116,108,32,109,97,114,107,101,114,10,0,84,105,108,101,32,112,97,114,116,32,108,101,110,103,116,104,32,115,105,122,101,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,115,116,114,101,97,109,32,108,101,110,103,116,104,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,79,84,32,109,97,114,107,101,114,10,0,111,112,106,95,106,50,107,95,97,112,112,108,121,95,110,98,95,116,105,108,101,95,112,97,114,116,115,95,99,111,114,114,101,99,116,105,111,110,32,101,114,114,111,114,10,0,78,111,110,32,99,111,110,102,111,114,109,97,110,116,32,99,111,100,101,115,116,114,101,97,109,32,84,80,115,111,116,61,61,84,78,115,111,116,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,84,32,109,97,114,107,101,114,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,84,32,100,97,116,97,10,0,67,97,110,110,111,116,32,100,101,99,111,100,101,32,116,105,108,101,44,32,109,101,109,111,114,121,32,101,114,114,111,114,10,0,72,101,97,100,101,114,32,111,102,32,116,105,108,101,32,37,100,32,47,32,37,100,32,104,97,115,32,98,101,101,110,32,114,101,97,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,46,10,0,78,111,32,69,79,67,32,109,97,114,107,101,114,46,32,80,111,115,115,105,98,108,121,32,97,32,116,114,117,110,99,97,116,101,100,32,115,116,114,101,97,109,10,0,83,116,114,101,97,109,32,100,111,101,115,32,110,111,116,32,101,110,100,32,119,105,116,104,32,69,79,67,10,0,83,116,114,101,97,109,32,116,111,111,32,115,104,111,114,116,44,32,101,120,112,101,99,116,101,100,32,83,79,84,10,0,78,101,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,98,101,102,111,114,101,32,98,101,103,105,110,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,99,111,100,101,115,116,114,101,97,109,0,78,111,32,100,101,99,111,100,101,100,32,97,114,101,97,32,112,97,114,97,109,101,116,101,114,115,44,32,115,101,116,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,116,111,32,116,104,101,32,119,104,111,108,101,32,105,109,97,103,101,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,76,101,102,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,85,112,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,48,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,79,115,105,122,61,37,100,41,46,10,0,82,105,103,104,116,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,120,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,88,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,79,115,105,122,61,37,100,41,46,10,0,66,111,116,116,111,109,32,112,111,115,105,116,105,111,110,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,97,114,101,97,32,40,114,101,103,105,111,110,95,121,49,61,37,100,41,32,105,115,32,111,117,116,115,105,100,101,32,116,104,101,32,105,109,97,103,101,32,97,114,101,97,32,40,89,115,105,122,61,37,100,41,46,10,0,83,105,122,101,32,120,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,119,61,37,100,41,46,10,0,83,105,122,101,32,121,32,111,102,32,116,104,101,32,100,101,99,111,100,101,100,32,99,111,109,112,111,110,101,110,116,32,105,109,97,103,101,32,105,115,32,105,110,99,111,114,114,101,99,116,32,40,99,111,109,112,91,37,100,93,46,104,61,37,100,41,46,10,0,83,101,116,116,105,110,103,32,100,101,99,111,100,105,110,103,32,97,114,101,97,32,116,111,32,37,100,44,37,100,44,37,100,44,37,100,10,0,87,114,111,110,103,32,102,108,97,103,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,102,111,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,116,120,48,61,37,100,44,32,116,121,48,61,37,100,10,0,9,32,116,100,120,61,37,100,44,32,116,100,121,61,37,100,10,0,9,32,116,119,61,37,100,44,32,116,104,61,37,100,10,0,125,10,0,67,111,100,101,115,116,114,101,97,109,32,105,110,100,101,120,32,102,114,111,109,32,109,97,105,110,32,104,101,97,100,101,114,58,32,123,10,0,9,32,77,97,105,110,32,104,101,97,100,101,114,32,115,116,97,114,116,32,112,111,115,105],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),
allocate([116,105,111,110,61,37,108,108,105,10,9,32,77,97,105,110,32,104,101,97,100,101,114,32,101,110,100,32,112,111,115,105,116,105,111,110,61,37,108,108,105,10,0,9,32,77,97,114,107,101,114,32,108,105,115,116,58,32,123,10,0,9,9,32,116,121,112,101,61,37,35,120,44,32,112,111,115,61,37,108,108,105,44,32,108,101,110,61,37,100,10,0,9,32,125,10,0,9,32,84,105,108,101,32,105,110,100,101,120,58,32,123,10,0,9,9,32,110,98,32,111,102,32,116,105,108,101,45,112,97,114,116,32,105,110,32,116,105,108,101,32,91,37,100,93,61,37,100,10,0,9,9,9,32,116,105,108,101,45,112,97,114,116,91,37,100,93,58,32,115,116,97,114,95,112,111,115,61,37,108,108,105,44,32,101,110,100,95,104,101,97,100,101,114,61,37,108,108,105,44,32,101,110,100,95,112,111,115,61,37,108,108,105,46,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,73,109,97,103,101,32,105,110,102,111,32,123,10,0,37,115,32,120,48,61,37,100,44,32,121,48,61,37,100,10,0,37,115,32,120,49,61,37,100,44,32,121,49,61,37,100,10,0,37,115,32,110,117,109,99,111,109,112,115,61,37,100,10,0,37,115,9,32,99,111,109,112,111,110,101,110,116,32,37,100,32,123,10,0,37,115,125,10,0,91,68,69,86,93,32,68,117,109,112,32,97,110,32,105,109,97,103,101,95,99,111,109,112,95,104,101,97,100,101,114,32,115,116,114,117,99,116,32,123,10,0,37,115,32,100,120,61,37,100,44,32,100,121,61,37,100,10,0,37,115,32,112,114,101,99,61,37,100,10,0,37,115,32,115,103,110,100,61,37,100,10,0,87,101,32,110,101,101,100,32,97,110,32,105,109,97,103,101,32,112,114,101,118,105,111,117,115,108,121,32,99,114,101,97,116,101,100,46,10,0,84,105,108,101,32,105,110,100,101,120,32,112,114,111,118,105,100,101,100,32,98,121,32,116,104,101,32,117,115,101,114,32,105,115,32,105,110,99,111,114,114,101,99,116,32,37,100,32,40,109,97,120,32,61,32,37,100,41,32,10,0,82,101,115,111,108,117,116,105,111,110,32,102,97,99,116,111,114,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,116,104,101,32,109,97,120,105,109,117,109,32,114,101,115,111,108,117,116,105,111,110,32,105,110,32,116,104,101,32,99,111,109,112,111,110,101,110,116,46,10,0,84,104,101,32,103,105,118,101,110,32,116,105,108,101,32,105,110,100,101,120,32,100,111,101,115,32,110,111,116,32,109,97,116,99,104,46,0,116,105,108,101,32,110,117,109,98,101,114,32,37,100,32,47,32,37,100,10,0,69,114,114,111,114,32,97,108,108,111,99,97,116,105,110,103,32,116,105,108,101,32,99,111,109,112,111,110,101,110,116,32,100,97,116,97,46,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,101,110,99,111,100,101,32,97,108,108,32,116,105,108,101,115,10,0,83,105,122,101,32,109,105,115,109,97,116,99,104,32,98,101,116,119,101,101,110,32,116,105,108,101,32,100,97,116,97,32,97,110,100,32,115,101,110,116,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,97,108,108,111,99,97,116,101,32,105,109,97,103,101,32,104,101,97,100,101,114,46,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,114,101,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,69,114,114,111,114,32,119,104,105,108,101,32,111,112,106,95,106,50,107,95,112,111,115,116,95,119,114,105,116,101,95,116,105,108,101,32,119,105,116,104,32,116,105,108,101,32,105,110,100,101,120,32,61,32,37,100,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,105,108,101,32,67,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,66,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,84,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,77,67,79,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,116,104,101,32,67,79,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,80,79,67,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,84,76,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,81,99,100,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,119,114,105,116,101,32,67,79,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,114,105,116,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,104,101,32,83,73,90,32,109,97,114,107,101,114,10,0,78,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,105,115,32,116,111,111,32,104,105,103,104,32,105,110,32,99,111,109,112,97,114,105,115,111,110,32,116,111,32,116,104,101,32,115,105,122,101,32,111,102,32,116,105,108,101,115,10,0,67,97,110,110,111,116,32,101,110,99,111,100,101,32,116,105,108,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,111,110,101,32,116,105,108,101,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,101,101,107,32,102,117,110,99,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,84,105,108,101,32,37,100,47,37,100,32,104,97,115,32,98,101,101,110,32,100,101,99,111,100,101,100,46,10,0,73,109,97,103,101,32,100,97,116,97,32,104,97,115,32,98,101,101,110,32,117,112,100,97,116,101,100,32,119,105,116,104,32,116,105,108,101,32,37,100,46,10,10,0,84,105,108,101,32,114,101,97,100,44,32,100,101,99,111,100,101,100,32,97,110,100,32,117,112,100,97,116,101,100,32,105,115,32,110,111,116,32,116,104,101,32,100,101,115,105,114,101,100,32,111,110,101,32,40,37,100,32,118,115,32,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,115,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,105,108,101,32,37,100,47,37,100,10,0,9,32,100,101,102,97,117,108,116,32,116,105,108,101,32,123,10,0,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,32,112,114,103,61,37,35,120,10,0,9,9,32,110,117,109,108,97,121,101,114,115,61,37,100,10,0,9,9,32,109,99,116,61,37,120,10,0,9,9,32,99,111,109,112,32,37,100,32,123,10,0,9,9,9,32,99,115,116,121,61,37,35,120,10,0,9,9,9,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,61,37,100,10,0,9,9,9,32,99,98,108,107,119,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,104,61,50,94,37,100,10,0,9,9,9,32,99,98,108,107,115,116,121,61,37,35,120,10,0,9,9,9,32,113,109,102,98,105,100,61,37,100,10,0,9,9,9,32,112,114,101,99,99,105,110,116,115,105,122,101,32,40,119,44,104,41,61,0,40,37,100,44,37,100,41,32,0,9,9,9,32,113,110,116,115,116,121,61,37,100,10,0,9,9,9,32,110,117,109,103,98,105,116,115,61,37,100,10,0,9,9,9,32,115,116,101,112,115,105,122,101,115,32,40,109,44,101,41,61,0,9,9,9,32,114,111,105,115,104,105,102,116,61,37,100,10,0,9,9,32,125,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,79,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,115,116,97,103,101,115,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,100,97,116,97,32,115,112,97,110,110,105,110,103,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,67,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,99,111,108,108,101,99,116,105,111,110,115,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,111,116,104,101,114,32,116,104,97,110,32,97,114,114,97,121,32,100,101,99,111,114,114,101,108,97,116,105,111,110,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,32,105,110,100,105,120,32,115,104,117,102,102,108,101,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,99,111,108,108,101,99,116,105,111,110,115,32,119,105,116,104,111,117,116,32,115,97,109,101,32,110,117,109,98,101,114,32,111,102,32,105,110,100,105,120,101,115,10,0,67,114,114,111,114,32,114,101,97,100,105,110,103,32,67,66,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,99,116,32,100,97,116,97,32,119,105,116,104,105,110,32,109,117,108,116,105,112,108,101,32,77,67,84,32,114,101,99,111,114,100,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,77,67,84,32,109,97,114,107,101,114,10,0,67,97,110,110,111,116,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,109,117,108,116,105,112,108,101,32,77,67,84,32,109,97,114,107,101,114,115,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,82,71,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,84,32,109,97,114,107,101,114,58,32,112,97,99,107,101,116,32,104,101,97,100,101,114,32,104,97,118,101,32,98,101,101,110,32,112,114,101,118,105,111,117,115,108,121,32,102,111,117,110,100,32,105,110,32,116,104,101,32,109,97,105,110,32,104,101,97,100,101,114,32,40,80,80,77,32,109,97,114,107,101,114,41,46,10,0,90,112,112,116,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,80,77,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,80,80,77,32,109,97,114,107,101,114,10,0,90,112,112,109,32,37,117,32,97,108,114,101,97,100,121,32,114,101,97,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,84,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,84,76,77,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,105,108,108,101,103,97,108,32,45,62,32,37,100,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,32,105,115,32,110,111,116,32,99,111,109,112,97,116,105,98,108,101,32,119,105,116,104,32,116,104,101,32,114,101,109,97,105,110,105,110,103,32,110,117,109,98,101,114,32,111,102,32,112,97,114,97,109,101,116,101,114,115,32,40,32,37,100,32,118,115,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,110,101,103,97,116,105,118,101,32,111,114,32,122,101,114,111,32,105,109,97,103,101,32,115,105,122,101,32,40,37,100,32,120,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,110,118,97,108,105,100,32,116,105,108,101,32,115,105,122,101,32,40,116,100,120,58,32,37,100,44,32,116,100,121,58,32,37,100,41,10,0,80,114,101,118,101,110,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,32,40,120,49,58,32,37,100,44,32,121,49,58,32,37,100,41,10,0,69,114,114,111,114,32,119,105,116,104,32,83,73,90,32,109,97,114,107,101,114,58,32,105,108,108,101,103,97,108,32,116,105,108,101,32,111,102,102,115,101,116,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,116,97,107,101,32,105,110,32,99,104,97,114,103,101,32,83,73,90,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,115,32,102,111,114,32,99,111,109,112,32,61,32,37,100,32,58,32,100,120,61,37,117,32,100,121,61,37,117,10,32,40,115,104,111,117,108,100,32,98,101,32,98,101,116,119,101,101,110,32,49,32,97,110,100,32,50,53,53,32,97,99,99,111,114,100,105,110,103,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,41,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,115,32,58,32,37,117,32,120,32,37,117,32,40,109,97,120,105,109,117,109,32,102,105,120,101,100,32,98,121,32,106,112,101,103,50,48,48,48,32,110,111,114,109,32,105,115,32,54,53,53,51,53,32,116,105,108,101,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,80,79,67,32,109,97,114,107,101,114,10,0,84,111,111,32,109,97,110,121,32,80,79,67,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,67,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,58,32,37,100,44,32,114,101,103,97,114,100,105,110,103,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,37,100,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,81,99,100,32,111,114,32,83,81,99,99,32,101,108,101,109,101,110,116,10,0,87,104,105,108,101,32,114,101,97,100,105,110,103,32,67,67,80,95,81,78,84,83,84,89,32,101,108,101,109,101,110,116,32,105,110,115,105,100,101,32,81,67,68,32,111,114,32,81,67,67,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,44,32,110,117,109,98,101,114,32,111,102,32,115,117,98,98,97,110,100,115,32,40,37,100,41,32,105,115,32,103,114,101,97,116,101,114,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,46,32,83,111,32,119,101,32,108,105,109,105,116,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,101,108,101,109,101,110,116,115,32,115,116,111,114,101,100,32,116,111,32,79,80,74,95,74,50,75,95,77,65,88,66,65,78,68,83,32,40,37,100,41,32,97,110,100,32,115,107,105,112,32,116,104,101,32,114,101,115,116,46,32,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,81,67,68,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,82,71,78,32,109,97,114,107,101,114,10,0,98,97,100,32,99,111,109,112,111,110,101,110,116,32,110,117,109,98,101,114,32,105,110,32,82,71,78,32,40,37,100,32,119,104,101,110,32,116,104,101,114,101,32,97,114,101,32,111,110,108,121,32,37,100,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,67,32,109,97,114,107,101,114,32,40,98,97,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,41,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,10,0,73,110,118,97,108,105,100,32,118,97,108,117,101,32,102,111,114,32,110,117,109,114,101,115,111,108,117,116,105,111,110,115,32,58,32,37,100,44,32,109,97,120,32,118,97,108,117,101,32,105,115,32,115,101,116,32,105,110,32,111,112,101,110,106,112,101,103,46,104,32,97,116,32,37,100,10,0,69,114,114,111,114,32,100,101,99,111,100,105,110,103,32,99,111,109,112,111,110,101,110,116,32,37,100,46,10,84,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,116,111,32,114,101,109,111,118,101,32,105,115,32,104,105,103,104,101,114,32,116,104,97,110,32,116,104,101,32,110,117,109,98,101,114,32,111,102,32,114,101,115,111,108,117,116,105,111,110,115,32,111,102,32,116,104,105,115,32,99,111,109,112,111,110,101,110,116,10,77,111,100,105,102,121,32,116,104,101,32,99,112,95,114,101,100,117,99,101,32,112,97,114,97,109,101,116,101,114,46,10,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,83,80,67,111,100,32,83,80,67,111,99,32,101,108,101,109,101,110,116,44,32,73,110,118,97,108,105,100,32,99,98,108,107,119,47,99,98,108,107,104,32,99,111,109,98,105,110,97,116,105,111,110,10,0,73,110,118,97,108,105,100,32,112,114,101,99,105,110,99,116,32,115,105,122,101,10,0,67,79,68,32,109,97,114,107,101,114,32,97,108,114,101,97,100,121,32,114,101,97,100,46,32,78,111,32,109,111,114,101,32,116,104,97,110,32,111,110,101,32,67,79,68,32,109,97,114,107,101,114,32,112,101,114,32,116,105,108,101,46,10,0,69,114,114,111,114,32,114,101,97,100,105,110,103,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,83,99,111,100,32,118,97,108,117,101,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,110,32,112,114,111,103,114,101,115,115,105,111,110,32,111,114,100,101,114,32,105,110,32,67,79,68,32,109,97,114,107,101,114,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,108,97,121,101,114,115,32,105,110,32,67,79,68,32,109,97,114,107,101,114,32,58,32,37,100,32,110,111,116,32,105,110,32,114,97,110,103,101,32,91,49,45,54,53,53,51,53,93,10,0,73,110,118,97,108,105,100,32,116,105,108,101,32,110,117,109,98,101,114,32,37,100,10,0,69,109,112,116,121,32,83,79,84,32,109,97,114,107,101,114,32,100,101,116,101,99,116,101,100,58,32,80,115,111,116,61,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,105,115,32,110,111,116,32,99,111,114,114,101,99,116,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,74,80,69,71,50,48,48,48,32,110,111,114,109,58,32,37,100,46,10,0,80,115,111,116,32,118,97,108,117,101,32,111,102,32,116,104,101,32,99,117,114,114,101,110,116,32,116,105,108,101,45,112,97,114,116,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,44,32,119,101,32,97,115,115,117,109,105,110,103,32,105,116,32,105,115,32,116,104,101,32,108,97,115,116,32,116,105,108,101,45,112,97,114,116,32,111,102,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,46,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,73,110,32,83,79,84,32,109,97,114,107,101,114,44,32,84,80,83,111,116,32,40,37,100,41,32,105,115,32,110,111,116,32,118,97,108,105,100,32,114,101,103,97,114,100,115,32,116,111,32,116,104,101,32,99,117,114,114,101,110,116,32,110,117,109,98,101,114,32,111,102,32,116,105,108,101,45,112,97,114,116,32,40,104,101,97,100,101,114,41,32,40,37,100,41,44,32,103,105,118,105,110,103,32,117,112,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,97,100,32,83,79,84,32,109,97,114,107,101,114,46,32,84,105,108,101,32,105,110,100,101,120,32,97,108,108,111,99,97,116,105,111,110,32,102,97,105,108,101,100,10,0,83,116,97,114,116,32,116,111,32,114,101,97,100,32,106,50,107,32,109,97,105,110,32,104,101,97,100,101,114,32,40,37,100,41,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,109,104,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,97,32,83,79,67,32,109,97,114,107,101,114,32,10,0,65,32,109,97,114,107,101,114,32,73,68,32,119,97,115,32,101,120,112,101,99,116,101,100,32,40,48,120,102,102,45,45,41,32,105,110,115,116,101,97,100,32,111,102,32,37,46,56,120,10,0,85,110,107,110,111,119,110,32,109,97,114,107,101,114,10,0,85,110,107,110,111,119,32,109,97,114,107,101,114,32,104,97,118,101,32,98,101,101,110,32,100,101,116,101,99,116,101,100,32,97,110,100,32,103,101,110,101,114,97,116,101,100,32,101,114,114,111,114,46,10,0,77,97,114,107,101,114,32,104,97,110,100,108,101,114,32,102,117,110,99,116,105,111,110,32,102,97,105,108,101,100,32,116,111,32,114,101,97,100,32,116,104,101,32,109,97,114,107,101,114,32,115,101,103,109,101,110,116,10,0,114,101,113,117,105,114,101,100,32,83,73,90,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,67,79,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,114,101,113,117,105,114,101,100,32,81,67,68,32,109,97,114,107,101,114,32,110,111,116,32,102,111,117,110,100,32,105,110,32,109,97,105,110,32,104,101,97,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,98,121,116,101,115,32,116,111,32,114,101,97,100,32,78,112,112,109,10,0,67,111,114,114,117,112,116,101,100,32,80,80,77,32,109,97,114,107,101,114,115,10,0,70,97,105,108,101,100,32,116,111,32,109,101,114,103,101,32,80,80,77,32,100,97,116,97,10,0,77,97,105,110,32,104,101,97,100,101,114,32,104,97,115,32,98,101,101,110,32,99,111,114,114,101,99,116,108,121,32,100,101,99,111,100,101,100,46,10,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,105,110,32,116,104,101,32,74,80,50,32,102,105,108,101,10,0,73,110,118,97,108,105,100,32,110,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,115,112,101,99,105,102,105,101,100,32,119,104,105,108,101,32,115,101,116,116,105,110,103,32,117,112,32,74,80,50,32,101,110,99,111,100,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,104,101,110,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,117,110,107,110,111,119,110,32,101,110,117,109,99,115,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,115,112,101,99,105,102,105,101,100,32,98,117,116,32,110,111,116,32,101,110,111,117,103,104,32,105,109,97,103,101,32,99,111,109,112,111,110,101,110,116,115,32,102,111,114,32,97,110,32,97,117,116,111,109,97,116,105,99,32,99,100,101,102,32,98,111,120,32,99,114,101,97,116,105,111,110,46,10,0,65,108,112,104,97,32,99,104,97,110,110,101,108,32,112,111,115,105,116,105,111,110,32,99,111,110,102,108,105,99,116,115,32,119,105,116,104,32,99,111,108,111,114,32,99,104,97,110,110,101,108,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,77,117,108,116,105,112,108,101,32,97,108,112,104,97,32,99,104,97,110,110,101,108,115,32,115,112,101,99,105,102,105,101,100,46,32,78,111,32,99,100,101,102,32,98,111,120,32,119,105,108,108,32,98,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,115,101,116,117,112,32,116,104,101,32,74,80,50,32,101,110,99,111,100,101,114,10,0,74,80,50,32,98,111,120,32,119,104,105,99,104,32,97,114,101,32,97,102,116,101,114,32,116,104,101,32,99,111,100,101,115,116,114,101,97,109,32,119,105,108,108,32,110,111,116,32,98,101,32,114,101,97,100,32,98,121,32,116,104,105,115,32,102,117,110,99,116,105,111,110,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,111,108,100,32,74,80,50,32,72,101,97,100,101,114,32,100,97,116,97,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,102,116,121,112,32,100,97,116,97,10,0,69,114,114,111,114,32,119,104,105,108,101,32,119,114,105,116,105,110,103,32,102,116,121,112,32,100,97,116,97,32,116,111,32,115,116,114,101,97,109,10,0,70,97,105,108,101,100,32,116,111,32,115,101,101,107,32,105,110,32,116,104,101,32,115,116,114,101,97,109,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,102,105,108,101,32,104,101,97,100,101,114,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,115,105,122,101,115,32,104,105,103,104,101,114,32,116,104,97,110,32,50,94,51,50,10,0,98,97,100,32,112,108,97,99,101,100,32,106,112,101,103,32,99,111,100,101,115,116,114,101,97,109,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,117,110,100,101,102,105,110,101,100,32,115,105,122,101,115,10,0,105,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,40,37,120,41,10,0,70,111,117,110,100,32,97,32,109,105,115,112,108,97,99,101,100,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,111,117,116,115,105,100,101,32,106,112,50,104,32,98,111,120,10,0,74,80,69,71,50,48,48,48,32,72,101,97,100,101,114,32,98,111,120,32,110,111,116,32,114,101,97,100,32,121,101,116,44,32,39,37,99,37,99,37,99,37,99,39,32,98,111,120,32,119,105,108,108,32,98,101,32,105,103,110,111,114,101,100,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,115,107,105,112,112,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,73,110,118,97,108,105,100,32,98,111,120,32,115,105,122,101,32,37,100,32,102,111,114,32,98,111,120,32,39,37,99,37,99,37,99,37,99,39,46,32,78,101,101,100,32,37,100,32,98,121,116,101,115,44,32,37,100,32,98,121,116,101,115,32,114,101,109,97,105,110,105,110,103,32,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,106,112,101,103,50,48,48,48,32,98,111,120,10,0,80,114,111,98,108,101,109,32,119,105,116,104,32,114,101,97,100,105,110,103,32,74,80,69,71,50,48,48,48,32,98,111,120,44,32,115,116,114,101,97,109,32,101,114,114,111,114,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,102,105,114,115,116,32,98,111,120,32,109,117,115,116,32,98,101,32,74,80,69,71,32,50,48,48,48,32,115,105,103,110,97,116,117,114,101,32,98,111,120,10,0,77,97,108,102,111,114,109,101,100,32,74,80,50,32,102,105,108,101,32,102,111,114,109,97,116,58,32,115,101,99,111,110,100,32,98,111,120,32,109,117,115,116,32,98,101,32,102,105,108,101,32,116,121,112,101,32,98,111,120,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,68,69,70,32,98,111,120,46,10,0,78,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,32,100,101,115,99,114,105,112,116,105,111,110,32,105,115,32,101,113,117,97,108,32,116,111,32,122,101,114,111,32,105,110,32,67,68,69,70,32,98,111,120,46,10,0,78,101,101,100,32,116,111,32,114,101,97,100,32,97,32,80,67,76,82,32,98,111,120,32,98,101,102,111,114,101,32,116,104,101,32,67,77,65,80,32,98,111,120,46,10,0,79,110,108,121,32,111,110,101,32,67,77,65,80,32,98,111,120,32,105,115,32,97,108,108,111,119,101,100,46,10,0,73,110,115,117,102,102,105,99,105,101,110,116,32,100,97,116,97,32,102,111,114,32,67,77,65,80,32,98,111,120,46,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,37,100,32,101,110,116,114,105,101,115,10,0,73,110,118,97,108,105,100,32,80,67,76,82,32,98,111,120,46,32,82,101,112,111,114,116,115,32,48,32,112,97,108,101,116,116,101,32,99,111,108,117,109,110,115,10,0,65,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,105,115,32,97,118,97,105,108,97,98,108,101,32,97,108,116,104,111,117,103,104,32,66,80,67,32,103,105,118,101,110,32,98,121,32,116,104,101,32,73,72,68,82,32,98,111,120,32,40,37,100,41,32,105,110,100,105,99,97,116,101,32,99,111,109,112,111,110,101,110,116,115,32,98,105,116,32,100,101,112,116,104,32,105,115,32,99,111,110,115,116,97,110,116,10,0,66,97,100,32,66,80,67,67,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,65,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,114,101,97,100,101,114,32,115,104,97,108,108,32,105,103,110,111,114,101,32,97,108,108,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,101,115,32,97,102,116,101,114,32,116,104,101,32,102,105,114,115,116,44,32,115,111,32,119,101,32,105,103,110,111,114,101,32,116,104,105,115,32,111,110,101,46,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,66,97,100,32,67,79,76,82,32,104,101,97,100,101,114,32,98,111,120,32,40,67,73,69,76,97,98,44,32,98,97,100,32,115,105,122,101,58,32,37,100,41,10,0,67,79,76,82,32,66,79,88,32,109,101,116,104,32,118,97,108,117,101,32,105,115,32,110,111,116,32,97,32,114,101,103,117,108,97,114,32,118,97,108,117,101,32,40,37,100,41,44,32,115,111,32,119,101,32,119,105,108,108,32,105,103,110,111,114,101,32,116,104,101,32,101,110,116,105,114,101,32,67,111,108,111,117,114,32,83,112,101,99,105,102,105,99,97,116,105,111,110,32,98,111,120,46,32,10,0,66,97,100,32,105,109,97,103,101,32,104,101,97,100,101,114,32,98,111,120,32,40,98,97,100,32,115,105,122,101,41,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,105,109,97,103,101,32,104,101,97,100,101,114,32,40,105,104,100,114,41,10,0,74,80,50,32,73,72,68,82,32,98,111,120,58,32,99,111,109,112,114,101,115,115,105,111,110,32,116,121,112,101,32,105,110,100,105,99,97,116,101,32,116,104,97,116,32,116,104,101,32,102,105,108,101,32,105,115,32,110,111,116,32,97,32,99,111,110,102,111,114,109,105,110,103,32,74,80,50,32,102,105,108,101,32,40,37,100,41,32,10,0,84,104,101,32,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,56,32,98,121,116,101,115,10,0,67,97,110,110,111,116,32,104,97,110,100,108,101,32,88,76,32,98,111,120,32,111,102,32,108,101,115,115,32,116,104,97,110,32,49,54,32,98,121,116,101,115,10,0,66,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,98,111,120,32,108,101,110,103,116,104,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,10,0,83,116,114,101,97,109,32,101,114,114,111,114,32,119,104,105,108,101,32,114,101,97,100,105,110,103,32,74,80,50,32,72,101,97,100,101,114,32,98,111,120,58,32,110,111,32,39,105,104,100,114,39,32,98,111,120,46,10,0,84,104,101,32,102,116,121,112,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,115,101,99,111,110,100,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,70,84,89,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,119,105,116,104,32,70,84,89,80,32,66,111,120,10,0,84,104,101,32,115,105,103,110,97,116,117,114,101,32,98,111,120,32,109,117,115,116,32,98,101,32,116,104,101,32,102,105,114,115,116,32,98,111,120,32,105,110,32,116,104,101,32,102,105,108,101,46,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,115,105,103,110,97,116,117,114,101,32,66,111,120,32,115,105,122,101,10,0,69,114,114,111,114,32,119,105,116,104,32,74,80,32,83,105,103,110,97,116,117,114,101,32,58,32,98,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,111,112,106,95,106,112,50,95,97,112,112,108,121,95,99,100,101,102,58,32,97,99,110,61,37,100,44,32,110,117,109,99,111,109,112,115,61,37,100,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,32,105,110,100,101,120,32,37,100,32,40,62,61,32,37,100,41,46,10,0,73,110,99,111,109,112,108,101,116,101,32,99,104,97,110,110,101,108,32,100,101,102,105,110,105,116,105,111,110,115,46,10,0,85,110,101,120,112,101,99,116,101,100,32,79,79,77,46,10,0,73,110,118,97,108,105,100,32,99,111,109,112,111,110,101,110,116,47,112,97,108,101,116,116,101,32,105,110,100,101,120,32,102,111,114,32,100,105,114,101,99,116,32,109,97,112,112,105,110,103,32,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,105,115,32,109,97,112,112,101,100,32,116,119,105,99,101,46,10,0,68,105,114,101,99,116,32,117,115,101,32,97,116,32,35,37,100,32,104,111,119,101,118,101,114,32,112,99,111,108,61,37,100,46,10,0,67,111,109,112,111,110,101,110,116,32,37,100,32,100,111,101,115,110,39,116,32,104,97,118,101,32,97,32,109,97,112,112,105,110,103,46,10,0,67,111,109,112,111,110,101,110,116,32,109,97,112,112,105,110,103,32,115,101,101,109,115,32,119,114,111,110,103,46,32,84,114,121,105,110,103,32,116,111,32,99,111,114,114,101,99,116,46,10,0,84,105,108,101,115,32,100,111,110,39,116,32,97,108,108,32,104,97,118,101,32,116,104,101,32,115,97,109,101,32,100,105,109,101,110,115,105,111,110,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,78,117,109,98,101,114,32,111,102,32,99,111,109,112,111,110,101,110,116,115,32,40,37,100,41,32,105,115,32,105,110,99,111,110,115,105,115,116,101,110,116,32,119,105,116,104,32,97,32,77,67,84,46,32,83,107,105,112,32,116,104,101,32,77,67,84,32,115,116,101,112,46,10,0,116,105,108,101,115,32,114,101,113,117,105,114,101,32,97,116,32,108,101,97,115,116,32,111,110,101,32,114,101,115,111,108,117,116,105,111,110,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,100,97,116,97,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,116,105,108,101,32,114,101,115,111,108,117,116,105,111,110,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,104,97,110,100,108,101,32,98,97,110,100,32,112,114,101,99,105,110,116,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,102,111,114,32,99,117,114,114,101,110,116,32,112,114,101,99,105,110,99,116,32,99,111,100,101,98,108,111,99,107,32,101,108,101,109,101,110,116,10,0,78,111,32,105,110,99,108,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,32,105,109,115,98,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,10,0,116,103,116,95,99,114,101,97,116,101,32,116,114,101,101,45,62,110,117,109,110,111,100,101,115,32,61,61,32,48,44,32,110,111,32,116,114,101,101,32,99,114,101,97,116,101,100,46,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,99,114,101,97,116,101,32,84,97,103,45,116,114,101,101,32,110,111,100,101,115,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,114,101,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,116,97,103,32,116,114,101,101,10,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,116,111,32,97,100,100,32,97,32,110,101,119,32,118,97,108,105,100,97,116,105,111,110,32,112,114,111,99,101,100,117,114,101,10,0,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240),
allocate([7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,1,1,2,1,2,2,2,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,3,3,6,3,6,6,8,3,6,6,8,6,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,1,4,4,7,4,7,7,8,4,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,2,5,5,7,5,7,7,8,5,7,7,8,7,8,8,8,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,13,10,10,13,13,12,11,9,10,11,11,10,10,9,10,12,11,10,9,13,12,12,13,9,10,11,12,10,9,9,10,12,11,10,10,11,11,12,11,12,11,11,11,11,11,9,10,12,13,10,9,11,12,12,13,12,13,11,12,11,12,9,10,12,13,10,9,11,12,12,11,9,10,13,12,10,9,9,10,12,11,10,10,11,11,12,13,9,10,13,13,10,10,9,10,12,11,10,9,13,12,12,11,12,11,13,12,13,12,9,10,12,13,10,10,13,13,12,13,12,13,13,13,13,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,1,0,0,1,1,1,1,1,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,0,1,1,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,114,101,97,100,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,99,117,114,114,101,110,116,32,115,105,122,101,32,40,37,100,32,62,32,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,115,107,105,112,58,32,115,101,103,109,101,110,116,32,116,111,111,32,108,111,110,103,32,40,37,100,41,32,119,105,116,104,32,109,97,120,32,40,37,100,41,32,102,111,114,32,99,111,100,101,98,108,111,99,107,32,37,100,32,40,112,61,37,100,44,32,98,61,37,100,44,32,114,61,37,100,44,32,99,61,37,100,41,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,83,79,80,32,109,97,114,107,101,114,10,0,78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,32,102,111,114,32,101,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,69,120,112,101,99,116,101,100,32,69,80,72,32,109,97,114,107,101,114,10,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,114,119,97],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480),allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+25137);var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0),Module._i64Subtract=_i64Subtract;var _floorf=Math_floor;Module._bitshift64Ashr=_bitshift64Ashr;var _SItoF=!0;Module._memset=_memset;var _BDtoILow=!0,_ceilf=Math_ceil;Module._bitshift64Shl=_bitshift64Shl,Module._i64Add=_i64Add;var _floor=Math_floor,_sqrt=Math_sqrt,PATH=void 0,Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,i=Browser.mainLoop.timingValue,t=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(t,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,i),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",i=Browser.mainLoop.remainingBlockers,t=Browser.mainLoop.expectedBlockers;i?i<t?Module.setStatus(e+" ("+(t-i)+"/"+t+")"):Module.setStatus(e):Module.setStatus("")}},runIter:function(e){if(!ABORT){if(Module.preMainLoop){var i=Module.preMainLoop();if(i===!1)return}try{e()}catch(e){if(e instanceof ExitStatus)return;throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}Module.postMainLoop&&Module.postMainLoop()}}},isFullScreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init:function(){function e(){Browser.pointerLock=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r||document.msPointerLockElement===r}if(Module.preloadPlugins||(Module.preloadPlugins=[]),!Browser.initted){Browser.initted=!0;try{new Blob,Browser.hasBlobConstructor=!0}catch(e){Browser.hasBlobConstructor=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Browser.hasBlobConstructor?null:console.log("warning: no BlobBuilder"),Browser.URLObject="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0,Module.noImageDecoding||"undefined"!=typeof Browser.URLObject||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var i={};i.canHandle=function e(i){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(i)},i.handle=function e(i,t,r,n){var a=null;if(Browser.hasBlobConstructor)try{a=new Blob([i],{type:Browser.getMimetype(t)}),a.size!==i.length&&(a=new Blob([new Uint8Array(i).buffer],{type:Browser.getMimetype(t)}))}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}if(!a){var o=new Browser.BlobBuilder;o.append(new Uint8Array(i).buffer),a=o.getBlob()}var s=Browser.URLObject.createObjectURL(a),f=new Image;f.onload=function e(){assert(f.complete,"Image "+t+" could not be decoded");var n=document.createElement("canvas");n.width=f.width,n.height=f.height;var a=n.getContext("2d");a.drawImage(f,0,0),Module.preloadedImages[t]=n,Browser.URLObject.revokeObjectURL(s),r&&r(i)},f.onerror=function e(i){console.log("Image "+s+" could not be decoded"),n&&n()},f.src=s},Module.preloadPlugins.push(i);var t={};t.canHandle=function e(i){return!Module.noAudioDecoding&&i.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function e(i,t,r,n){function a(e){s||(s=!0,Module.preloadedAudios[t]=e,r&&r(i))}function o(){s||(s=!0,Module.preloadedAudios[t]=new Audio,n&&n())}var s=!1;if(!Browser.hasBlobConstructor)return o();try{var f=new Blob([i],{type:Browser.getMimetype(t)})}catch(e){return o()}var l=Browser.URLObject.createObjectURL(f),u=new Audio;u.addEventListener("canplaythrough",function(){a(u)},!1),u.onerror=function e(r){function n(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t="=",r="",n=0,a=0,o=0;o<e.length;o++)for(n=n<<8|e[o],a+=8;a>=6;){var s=n>>a-6&63;a-=6,r+=i[s]}return 2==a?(r+=i[(3&n)<<4],r+=t+t):4==a&&(r+=i[(15&n)<<2],r+=t),r}s||(console.log("warning: browser could not fully decode audio "+t+", trying slower base64 approach"),u.src="data:audio/x-"+t.substr(-3)+";base64,"+n(i),a(u))},u.src=l,Browser.safeSetTimeout(function(){a(u)},1e4)},Module.preloadPlugins.push(t);var r=Module.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",e,!1),document.addEventListener("mozpointerlockchange",e,!1),document.addEventListener("webkitpointerlockchange",e,!1),document.addEventListener("mspointerlockchange",e,!1),Module.elementPointerLock&&r.addEventListener("click",function(e){!Browser.pointerLock&&r.requestPointerLock&&(r.requestPointerLock(),e.preventDefault())},!1))}},createContext:function(e,i,t,r){if(i&&Module.ctx&&e==Module.canvas)return Module.ctx;var n,a;if(i){var o={antialias:!1,alpha:!1};if(r)for(var s in r)o[s]=r[s];a=GL.createContext(e,o),a&&(n=GL.getContext(a).GLctx),e.style.backgroundColor="black"}else n=e.getContext("2d");return n?(t&&(i||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=n,i&&GL.makeContextCurrent(a),Module.useWebGL=i,Browser.moduleContextCreatedCallbacks.forEach(function(e){e()}),Browser.init()),n):null},destroyContext:function(e,i,t){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(e,i,t){function r(){Browser.isFullScreen=!1;var e=n.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e?(n.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},n.cancelFullScreen=n.cancelFullScreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullScreen=!0,Browser.resizeCanvas&&Browser.setFullScreenCanvasSize()):(e.parentNode.insertBefore(n,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullScreen),Browser.updateCanvasDimensions(n)}Browser.lockPointer=e,Browser.resizeCanvas=i,Browser.vrDevice=t,"undefined"==typeof Browser.lockPointer&&(Browser.lockPointer=!0),"undefined"==typeof Browser.resizeCanvas&&(Browser.resizeCanvas=!1),"undefined"==typeof Browser.vrDevice&&(Browser.vrDevice=null);var n=Module.canvas;Browser.fullScreenHandlersInstalled||(Browser.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",r,!1),document.addEventListener("mozfullscreenchange",r,!1),document.addEventListener("webkitfullscreenchange",r,!1),document.addEventListener("MSFullscreenChange",r,!1));var a=document.createElement("div");n.parentNode.insertBefore(a,n),a.appendChild(n),a.requestFullScreen=a.requestFullScreen||a.mozRequestFullScreen||a.msRequestFullscreen||(a.webkitRequestFullScreen?function(){a.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),t?a.requestFullScreen({vrDisplay:t}):a.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(e){var i=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=i+1e3/60;else for(;i+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var t=Math.max(Browser.nextRAF-i,0);setTimeout(e,t)},requestAnimationFrame:function e(i){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(i):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(i))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(e){e()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,i){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},i)},safeSetInterval:function(e,i){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},i)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var i=0;switch(e.type){case"DOMMouseScroll":i=e.detail;break;case"mousewheel":i=e.wheelDelta;break;case"wheel":i=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return i},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var i=Module.canvas.getBoundingClientRect(),t=Module.canvas.width,r=Module.canvas.height,n="undefined"!=typeof window.scrollX?window.scrollX:window.pageXOffset,a="undefined"!=typeof window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var o=e.touch;if(void 0===o)return;var s=o.pageX-(n+i.left),f=o.pageY-(a+i.top);s*=t/i.width,f*=r/i.height;var l={x:s,y:f};if("touchstart"===e.type)Browser.lastTouches[o.identifier]=l,Browser.touches[o.identifier]=l;else if("touchend"===e.type||"touchmove"===e.type){var u=Browser.touches[o.identifier];u||(u=l),Browser.lastTouches[o.identifier]=u,Browser.touches[o.identifier]=l}return}var c=e.pageX-(n+i.left),d=e.pageY-(a+i.top);c*=t/i.width,d*=r/i.height,Browser.mouseMovementX=c-Browser.mouseX,Browser.mouseMovementY=d-Browser.mouseY,Browser.mouseX=c,Browser.mouseY=d}},xhrLoad:function(e,i,t){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function e(){200==r.status||0==r.status&&r.response?i(r.response):t()},r.onerror=t,r.send(null)},asyncLoad:function(e,i,t,r){Browser.xhrLoad(e,function(t){assert(t,'Loading data file "'+e+'" failed (no arrayBuffer).'),i(new Uint8Array(t)),r||removeRunDependency("al "+e)},function(i){if(!t)throw'Loading data file "'+e+'" failed.';t()}),r||addRunDependency("al "+e)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(i){i(e.width,e.height)})},setCanvasSize:function(e,i,t){var r=Module.canvas;Browser.updateCanvasDimensions(r,e,i),t||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e=8388608|e,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,i,t){i&&t?(e.widthNative=i,e.heightNative=t):(i=e.widthNative,t=e.heightNative);var r=i,n=t;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(r/n<Module.forcedAspectRatio?r=Math.round(n*Module.forcedAspectRatio):n=Math.round(r/Module.forcedAspectRatio)),(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var a=Math.min(screen.width/r,screen.height/n);r=Math.round(r*a),n=Math.round(n*a)}Browser.resizeCanvas?(e.width!=r&&(e.width=r),e.height!=n&&(e.height=n),"undefined"!=typeof e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=i&&(e.width=i),e.height!=t&&(e.height=t),"undefined"!=typeof e.style&&(r!=i||n!=t?(e.style.setProperty("width",r+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))},wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function(){var e=Browser.nextWgetRequestHandle;return Browser.nextWgetRequestHandle++,e}},SYSCALLS={varargs:0,get:function(e){SYSCALLS.varargs+=4;var i=HEAP32[SYSCALLS.varargs-4>>2];return i},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(e>=0?0===i:i===-1),e},getZero:function(){assert(0===SYSCALLS.get())}},ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};Module._bitshift64Lshr=_bitshift64Lshr;var _BDtoIHigh=!0;Module._memcpy=_memcpy;var _llvm_pow_f64=Math_pow,_BItoD=!0;Module.requestFullScreen=function e(i,t,r){Browser.requestFullScreen(i,t,r)},Module.requestAnimationFrame=function e(i){Browser.requestAnimationFrame(i)},Module.setCanvasSize=function e(i,t,r){Browser.setCanvasSize(i,t,r)},Module.pauseMainLoop=function e(){Browser.mainLoop.pause()},Module.resumeMainLoop=function e(){Browser.mainLoop.resume()},Module.getUserMedia=function e(){Browser.getUserMedia()},Module.createContext=function e(i,t,r,n){return Browser.createContext(i,t,r,n)},STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX),assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0,byteLength:byteLength},Module.asmLibraryArg={abort:abort,assert:assert,invoke_iiiiiiii:invoke_iiiiiiii,invoke_iiii:invoke_iiii,invoke_di:invoke_di,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_viii:invoke_viii,invoke_iiiiiiiiiiii:invoke_iiiiiiiiiiii,invoke_iiiii:invoke_iiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_viiii:invoke_viiii,_pthread_cleanup_pop:_pthread_cleanup_pop,___syscall221:___syscall221,_llvm_pow_f64:_llvm_pow_f64,_abort:_abort,_pthread_cleanup_push:_pthread_cleanup_push,_ceilf:_ceilf,_emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,_sbrk:_sbrk,_emscripten_memcpy_big:_emscripten_memcpy_big,_sysconf:_sysconf,___setErrNo:___setErrNo,_floor:_floor,_pthread_self:_pthread_self,_sqrt:_sqrt,_floorf:_floorf,___syscall54:___syscall54,___unlock:___unlock,_emscripten_set_main_loop:_emscripten_set_main_loop,___lock:___lock,___syscall6:___syscall6,___syscall5:___syscall5,_time:_time,___syscall140:___syscall140,___syscall145:___syscall145,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8};var asm=function(e,i,t){"use asm";var r=e.Int8Array;var n=e.Int16Array;var a=e.Int32Array;var o=e.Uint8Array;var s=e.Uint16Array;var f=e.Uint32Array;var l=e.Float32Array;var u=e.Float64Array;var c=new r(t);var d=new n(t);var h=new a(t);var m=new o(t);var b=new s(t);var v=new f(t);var w=new l(t);var p=new u(t);var g=e.byteLength;var k=i.STACKTOP|0;var _=i.STACK_MAX|0;var y=i.tempDoublePtr|0;var T=i.ABORT|0;var M=i.cttz_i8|0;var C=0;var x=0;var E=0;var S=0;var A=e.NaN,P=e.Infinity;var I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0;var H=0;var z=0;var j=0;var Y=0;var V=0;var q=0;var W=0;var G=0;var X=0;var K=0;var $=e.Math.floor;var J=e.Math.abs;var Q=e.Math.sqrt;var Z=e.Math.pow;var ee=e.Math.cos;var ie=e.Math.sin;var te=e.Math.tan;var re=e.Math.acos;var ne=e.Math.asin;var ae=e.Math.atan;var oe=e.Math.atan2;var se=e.Math.exp;var fe=e.Math.log;var le=e.Math.ceil;var ue=e.Math.imul;var ce=e.Math.min;var de=e.Math.clz32;var he=i.abort;var me=i.assert;var be=i.invoke_iiiiiiii;var ve=i.invoke_iiii;var we=i.invoke_di;var pe=i.invoke_vi;var ge=i.invoke_vii;var ke=i.invoke_iiiiiii;var _e=i.invoke_ii;var ye=i.invoke_viii;var Te=i.invoke_iiiiiiiiiiii;var Me=i.invoke_iiiii;var Ce=i.invoke_iii;var xe=i.invoke_iiiiii;var Ee=i.invoke_viiii;var Se=i._pthread_cleanup_pop;var Ae=i.___syscall221;var Pe=i._llvm_pow_f64;
var Ie=i._abort;var Le=i._pthread_cleanup_push;var De=i._ceilf;var Re=i._emscripten_set_main_loop_timing;var Oe=i._sbrk;var Be=i._emscripten_memcpy_big;var Ne=i._sysconf;var Fe=i.___setErrNo;var Ue=i._floor;var He=i._pthread_self;var ze=i._sqrt;var je=i._floorf;var Ye=i.___syscall54;var Ve=i.___unlock;var qe=i._emscripten_set_main_loop;var We=i.___lock;var Ge=i.___syscall6;var Xe=i.___syscall5;var Ke=i._time;var $e=i.___syscall140;var Je=i.___syscall145;var Qe=i.___syscall146;var Ze=0;function ei(e){if(g(e)&16777215||g(e)<=16777215||g(e)>2147483648)return false;c=new r(e);d=new n(e);h=new a(e);m=new o(e);b=new s(e);v=new f(e);w=new l(e);p=new u(e);t=e;return true}function ii(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+48|0;n=u+32|0;l=u+28|0;h[n>>2]=t;if((h[e+8>>2]|0)==16)f=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else f=h[e+12>>2]|0;a=(h[e+80>>2]|0)+16|0;o=(h[a>>2]|0)>>>0<257?1:2;s=o+1|0;if(s>>>0>t>>>0){Jr(r,1,14604,u)|0;r=0;k=u;return r|0}h[n>>2]=t-s;_r(i,l,o);t=h[l>>2]|0;if(t>>>0>=(h[a>>2]|0)>>>0){Jr(r,1,14630,u+8|0)|0;r=0;k=u;return r|0}_r(i+o|0,(h[f+5584>>2]|0)+(t*1080|0)|0,1);if(!(Ei(e,h[l>>2]|0,i+s|0,n,r)|0)){Jr(r,1,14604,u+16|0)|0;r=0;k=u;return r|0}if(!(h[n>>2]|0)){r=1;k=u;return r|0}Jr(r,1,14604,u+24|0)|0;r=0;k=u;return r|0}function ti(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+32|0;s=f+8|0;n=f+20|0;o=h[(h[e+80>>2]|0)+16>>2]|0;a=o>>>0<257?1:2;if((a+2|0)!=(t|0)){Jr(r,1,14521,f)|0;s=0;k=f;return s|0}if((h[e+8>>2]|0)==16)e=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else e=h[e+12>>2]|0;_r(i,n,a);_r(i+a|0,f+16|0,1);t=h[n>>2]|0;if(t>>>0<o>>>0){_r(i+(a+1)|0,(h[e+5584>>2]|0)+(t*1080|0)+808|0,1);s=1;k=f;return s|0}else{h[s>>2]=t;h[s+4>>2]=o;Jr(r,1,14547,s)|0;s=0;k=f;return s|0}return 0}function ri(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0;o=k;k=k+16|0;n=o+12|0;h[n>>2]=t;if(!(xi(e,0,i,n,r)|0)){Jr(r,1,14495,o)|0;a=0;k=o;return a|0}if(h[n>>2]|0){Jr(r,1,14495,o+8|0)|0;a=0;k=o;return a|0}if((h[e+8>>2]|0)==16)n=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else n=h[e+12>>2]|0;n=h[n+5584>>2]|0;t=e+80|0;if((h[(h[t>>2]|0)+16>>2]|0)>>>0<=1){a=1;k=o;return a|0}r=n+24|0;e=n+804|0;a=n+28|0;i=1;while(1){h[n+1104>>2]=h[r>>2];h[n+1884>>2]=h[e>>2];Xf(n+1108|0,a|0,776)|0;i=i+1|0;if(i>>>0>=(h[(h[t>>2]|0)+16>>2]|0)>>>0){n=1;break}else n=n+1080|0}k=o;return n|0}function ni(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;d=k;k=k+48|0;c=d+32|0;u=d+24|0;l=d+16|0;a=d+8|0;n=d;f=d+40|0;o=d+36|0;h[f>>2]=t;s=e+80|0;do if((h[(h[s>>2]|0)+16>>2]|0)>>>0<257){if(t){_r(i,o,1);a=i+1|0;i=t+-1|0;break}Jr(r,1,14148,n)|0;c=0;k=d;return c|0}else{if(t>>>0>=2){_r(i,o,2);a=i+2|0;i=t+-2|0;break}Jr(r,1,14148,a)|0;c=0;k=d;return c|0}while(0);h[f>>2]=i;n=h[o>>2]|0;i=h[(h[s>>2]|0)+16>>2]|0;if(n>>>0>=i>>>0){h[l>>2]=n;h[l+4>>2]=i;Jr(r,1,14174,l)|0;c=0;k=d;return c|0}if(!(xi(e,n,a,f,r)|0)){Jr(r,1,14148,u)|0;c=0;k=d;return c|0}if(!(h[f>>2]|0)){c=1;k=d;return c|0}Jr(r,1,14148,c)|0;c=0;k=d;return c|0}function ai(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0;p=k;k=k+16|0;a=p+8|0;w=p+12|0;v=h[(h[e+80>>2]|0)+16>>2]|0;b=v>>>0<257?1:2;m=(b<<1)+5|0;n=(t>>>0)/(m>>>0)|0;if((n|0)==0|((t>>>0)%(m>>>0)|0|0)!=0){Jr(r,1,14104,p)|0;w=0;k=p;return w|0}if((h[e+8>>2]|0)==16)m=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else m=h[e+12>>2]|0;t=m+5636|0;e=c[t>>0]|0;if(!(e&4))d=0;else d=(h[m+420>>2]|0)+1|0;u=d+n|0;if(u>>>0>31){h[a>>2]=u;Jr(r,1,14130,a)|0;w=0;k=p;return w|0}c[t>>0]=e|4;if(d>>>0<u>>>0){r=b+1|0;l=m+8|0;a=b+3|0;o=b|4;s=o+b|0;f=s+1|0;e=i;n=d;t=m+424+(d*148|0)|0;while(1){_r(e,t,1);_r(e+1|0,t+4|0,b);i=t+8|0;_r(e+r|0,i,2);g=h[i>>2]|0;d=h[l>>2]|0;h[i>>2]=g>>>0<d>>>0?g:d;_r(e+a|0,t+12|0,1);i=t+16|0;_r(e+o|0,i,b);_r(e+s|0,w,1);h[t+36>>2]=h[w>>2];d=h[i>>2]|0;h[i>>2]=d>>>0<v>>>0?d:v;n=n+1|0;if(n>>>0>=u>>>0)break;else{e=e+f|0;t=t+148|0}}}h[m+420>>2]=u+-1;g=1;k=p;return g|0}function oi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0;N=k;k=k+144|0;B=N+128|0;L=N+120|0;I=N+112|0;P=N+104|0;A=N+96|0;S=N+88|0;x=N+72|0;p=N+64|0;v=N+56|0;b=N+48|0;m=N+40|0;w=N+32|0;s=N+24|0;a=N+16|0;n=N+136|0;y=N+132|0;R=h[e+80>>2]|0;O=e+88|0;if(t>>>0<36){Jr(r,1,13459,N)|0;r=0;k=N;return r|0}D=t+-36|0;u=(D>>>0)/3|0;if((D>>>0)%3|0){Jr(r,1,13459,N+8|0)|0;r=0;k=N;return r|0}_r(i,n,2);d[O>>1]=h[n>>2];T=R+8|0;_r(i+2|0,T,4);E=R+12|0;_r(i+6|0,E,4);_r(i+10|0,R,4);l=R+4|0;_r(i+14|0,l,4);_=e+100|0;_r(i+18|0,_,4);C=e+104|0;_r(i+22|0,C,4);g=e+92|0;_r(i+26|0,g,4);M=e+96|0;_r(i+30|0,M,4);_r(i+34|0,n,2);o=i+36|0;t=h[n>>2]|0;if(t>>>0>=16385){h[a>>2]=t;Jr(r,1,13487,a)|0;r=0;k=N;return r|0}t=t&65535;D=R+16|0;h[D>>2]=t;if((t|0)!=(u|0)){h[s>>2]=t;h[s+4>>2]=u;Jr(r,1,13548,s)|0;r=0;k=N;return r|0}s=h[R>>2]|0;f=h[T>>2]|0;if(f>>>0>s>>>0){t=h[l>>2]|0;i=h[E>>2]|0;if(t>>>0<i>>>0){n=h[_>>2]|0;a=h[C>>2]|0;if(!(ue(a,n)|0)){h[m>>2]=n;h[m+4>>2]=a;Jr(r,1,13724,m)|0;r=0;k=N;return r|0}w=Zf(i|0,0,f|0,0)|0;if(!((w|0)==(ue(i,f)|0)&(H|0)==0)){h[b>>2]=f;h[b+4>>2]=i;Jr(r,1,13785,b)|0;r=0;k=N;return r|0}f=h[g>>2]|0;m=Wf(f|0,0,n|0,0)|0;b=H;l=h[M>>2]|0;w=Wf(l|0,0,a|0,0)|0;if(f>>>0<=s>>>0?l>>>0<=t>>>0&(m|0-b)>>>0>s>>>0&(w|0-H)>>>0>t>>>0:0){i=Xn(u,52)|0;u=R+24|0;h[u>>2]=i;if(!i){h[D>>2]=0;Jr(r,1,13871,p)|0;r=0;k=N;return r|0}e:do if(h[D>>2]|0){s=e+168|0;t=0;a=i;while(1){_r(o,y,1);h[a+24>>2]=(h[y>>2]&127)+1;h[a+32>>2]=(h[y>>2]|0)>>>7;_r(o+1|0,y,1);h[a>>2]=h[y>>2];_r(o+2|0,y,1);n=h[y>>2]|0;h[a+4>>2]=n;i=h[a>>2]|0;if((n+-1|0)>>>0>254|(i+-1|0)>>>0>254)break;h[a+36>>2]=0;h[a+40>>2]=h[s>>2];t=t+1|0;if(t>>>0>=(h[D>>2]|0)>>>0)break e;else{o=o+3|0;a=a+52|0}}h[x>>2]=t;h[x+4>>2]=i;h[x+8>>2]=n;Jr(r,1,13919,x)|0;r=0;k=N;return r|0}while(0);f=h[g>>2]|0;s=h[_>>2]|0;o=((h[T>>2]|0)+-1-f+s|0)/(s|0)|0;h[e+112>>2]=o;a=h[M>>2]|0;n=h[C>>2]|0;i=((h[E>>2]|0)+-1-a+n|0)/(n|0)|0;h[e+116>>2]=i;if(!((i|0)==0|(o|0)==0)?o>>>0<=(65535/(i>>>0)|0)>>>0:0){l=ue(o,i)|0;t=e+28|0;if(!(c[e+76>>0]&2)){h[t>>2]=0;h[e+32>>2]=0;h[e+36>>2]=o;h[e+40>>2]=i}else{h[t>>2]=(((h[t>>2]|0)-f|0)>>>0)/(s>>>0)|0;S=e+32|0;h[S>>2]=(((h[S>>2]|0)-a|0)>>>0)/(n>>>0)|0;S=e+36|0;h[S>>2]=((h[S>>2]|0)+-1-f+s|0)/(s|0)|0;S=e+40|0;h[S>>2]=((h[S>>2]|0)+-1-a+n|0)/(n|0)|0}S=Xn(l,5640)|0;o=e+164|0;h[o>>2]=S;if(!S){Jr(r,1,13871,A)|0;r=0;k=N;return r|0}A=Xn(h[D>>2]|0,1080)|0;i=e+12|0;h[(h[i>>2]|0)+5584>>2]=A;if(!A){Jr(r,1,13871,P)|0;r=0;k=N;return r|0}P=Xn(10,20)|0;t=h[i>>2]|0;h[t+5612>>2]=P;if(!P){Jr(r,1,13871,I)|0;r=0;k=N;return r|0}h[t+5620>>2]=10;I=Xn(10,20)|0;t=h[i>>2]|0;h[t+5624>>2]=I;if(!I){Jr(r,1,13871,L)|0;r=0;k=N;return r|0}h[t+5632>>2]=10;a=h[D>>2]|0;if(a){n=h[u>>2]|0;t=t+5584|0;i=0;do{if(!(h[n+(i*52|0)+32>>2]|0))h[(h[t>>2]|0)+(i*1080|0)+1076>>2]=1<<(h[n+(i*52|0)+24>>2]|0)+-1;i=i+1|0}while(i>>>0<a>>>0)}e:do if(l){t=h[o>>2]|0;L=Xn(a,1080)|0;h[t+5584>>2]=L;if(L){i=0;while(1){i=i+1|0;if(i>>>0>=l>>>0)break e;L=Xn(h[D>>2]|0,1080)|0;h[t+11224>>2]=L;if(!L)break;else t=t+5640|0}}Jr(r,1,13871,B)|0;r=0;k=N;return r|0}while(0);h[e+8>>2]=4;nn(R,O);r=1;k=N;return r|0}h[S>>2]=o;h[S+4>>2]=i;Jr(r,1,14021,S)|0;r=0;k=N;return r|0}Jr(r,1,13827,v)|0;r=0;k=N;return r|0}}else{i=h[E>>2]|0;t=h[l>>2]|0}h[w>>2]=f-s;h[w+4>>2]=i-t;Jr(r,1,13662,w)|0;r=0;k=N;return r|0}function si(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=k;k=k+32|0;e=n+12|0;if(t>>>0<2){Jr(r,1,13433,n)|0;r=0;k=n;return r|0}_r(i,n+16|0,1);_r(i+1|0,e,1);i=h[e>>2]|0;if(!(((t+-2|0)>>>0)%(((i>>>5&2)+2+(i>>>4&3)|0)>>>0)|0)){r=1;k=n;return r|0}Jr(r,1,13433,n+8|0)|0;r=0;k=n;return r|0}function fi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;e=k;k=k+16|0;if(!t){Jr(r,1,13407,e)|0;i=0}else i=1;k=e;return i|0}function li(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+32|0;s=f+8|0;o=f+12|0;if(!t){Jr(r,1,13381,f)|0;r=0;k=f;return r|0}_r(i,f+16|0,1);n=t+-1|0;if(!n){r=1;k=f;return r|0}else{a=0;e=0}do{i=i+1|0;_r(i,o,1);t=h[o>>2]|0;if(!(t&128))e=0;else e=(t&127|e)<<7;a=a+1|0}while((a|0)!=(n|0));if(!e){r=1;k=f;return r|0}Jr(r,1,13381,s)|0;r=0;k=f;return r|0}function ui(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;m=k;k=k+48|0;d=m+32|0;f=m+24|0;a=m+16|0;n=m+8|0;u=m+36|0;if(t>>>0<2){Jr(r,1,13295,m)|0;d=0;k=m;return d|0}l=e+184|0;c[l>>0]=c[l>>0]|1;_r(i,u,1);l=i+1|0;s=t+-1|0;o=e+124|0;t=h[o>>2]|0;do if(t){n=e+120|0;i=h[u>>2]|0;if((h[n>>2]|0)>>>0<=i>>>0){e=i+1|0;i=Jn(t,e<<3)|0;if(i){h[o>>2]=i;t=h[n>>2]|0;Vf(i+(t<<3)|0,0,e-t<<3|0)|0;h[n>>2]=e;t=h[o>>2]|0;break}Jr(r,1,13321,a)|0;d=0;k=m;return d|0}}else{i=(h[u>>2]|0)+1|0;t=Xn(i,8)|0;h[o>>2]=t;if(t){h[e+120>>2]=i;break}Jr(r,1,13321,n)|0;d=0;k=m;return d|0}while(0);i=h[u>>2]|0;if(h[t+(i<<3)>>2]|0){h[f>>2]=i;Jr(r,1,13359,f)|0;d=0;k=m;return d|0}f=Gn(s)|0;t=h[u>>2]|0;i=h[o>>2]|0;h[i+(t<<3)>>2]=f;if(!f){Jr(r,1,13321,d)|0;d=0;k=m;return d|0}else{h[i+(t<<3)+4>>2]=s;Xf(h[i+(h[u>>2]<<3)>>2]|0,l|0,s|0)|0;d=1;k=m;return d|0}return 0}function ci(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;v=k;k=k+48|0;b=v+40|0;d=v+32|0;s=v+24|0;o=v+16|0;m=v+44|0;if(t>>>0<2){Jr(r,1,13146,v)|0;b=0;k=v;return b|0}if(c[e+184>>0]&1){Jr(r,1,13172,v+8|0)|0;b=0;k=v;return b|0}a=h[e+200>>2]|0;n=h[e+164>>2]|0;u=n+(a*5640|0)+5636|0;c[u>>0]=c[u>>0]|2;_r(i,m,1);u=i+1|0;l=t+-1|0;f=n+(a*5640|0)+5164|0;i=h[f>>2]|0;do if(i){n=n+(a*5640|0)+5160|0;e=h[m>>2]|0;if((h[n>>2]|0)>>>0<=e>>>0){t=e+1|0;e=Jn(i,t<<3)|0;if(e){h[f>>2]=e;i=h[n>>2]|0;Vf(e+(i<<3)|0,0,t-i<<3|0)|0;h[n>>2]=t;i=h[f>>2]|0;break}Jr(r,1,8794,s)|0;b=0;k=v;return b|0}}else{e=(h[m>>2]|0)+1|0;i=Xn(e,8)|0;h[f>>2]=i;if(i){h[n+(a*5640|0)+5160>>2]=e;break}Jr(r,1,8794,o)|0;b=0;k=v;return b|0}while(0);e=h[m>>2]|0;if(h[i+(e<<3)>>2]|0){h[d>>2]=e;Jr(r,1,13273,d)|0;b=0;k=v;return b|0}d=Gn(l)|0;i=h[m>>2]|0;e=h[f>>2]|0;h[e+(i<<3)>>2]=d;if(!d){Jr(r,1,8794,b)|0;b=0;k=v;return b|0}else{h[e+(i<<3)+4>>2]=l;Xf(h[e+(h[m>>2]<<3)>>2]|0,u|0,l|0)|0;b=1;k=v;return b|0}return 0}function di(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;i=k;k=k+16|0;if((h[(h[e+80>>2]|0)+16>>2]<<2|0)==(t|0)){r=1;k=i;return r|0}Jr(r,1,13120,i)|0;r=0;k=i;return r|0}function hi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return 1}function mi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+48|0;v=w+40|0;b=w+32|0;l=w+24|0;m=w+44|0;if((h[e+8>>2]|0)==16)s=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else s=h[e+12>>2]|0;if(t>>>0<2){Jr(r,1,12952,w)|0;v=0;k=w;return v|0}_r(i,m,2);if(h[m>>2]|0){Jr(r,2,12978,w+8|0)|0;v=1;k=w;return v|0}if(t>>>0<7){Jr(r,1,12952,w+16|0)|0;v=0;k=w;return v|0}_r(i+2|0,m,2);c=i+4|0;d=h[m>>2]&255;f=s+5612|0;n=h[f>>2]|0;u=s+5616|0;e=h[u>>2]|0;e:do if(!e){a=0;o=n}else{a=0;o=n;do{if((h[o+8>>2]|0)==(d|0))break e;o=o+20|0;a=a+1|0}while(a>>>0<e>>>0)}while(0);if((a|0)==(e|0)){a=s+5620|0;do if((e|0)==(h[a>>2]|0)){e=e+10|0;h[a>>2]=e;e=Jn(n,e*20|0)|0;if(e){h[f>>2]=e;n=h[u>>2]|0;Vf(e+(n*20|0)|0,0,((h[a>>2]|0)-n|0)*20|0)|0;n=h[f>>2]|0;e=h[u>>2]|0;break}Qn(h[f>>2]|0);h[f>>2]=0;h[a>>2]=0;h[u>>2]=0;Jr(r,1,13038,l)|0;v=0;k=w;return v|0}while(0);h[u>>2]=e+1;o=n+(e*20|0)|0}a=o+12|0;e=h[a>>2]|0;if(e){Qn(e);h[a>>2]=0}h[o+8>>2]=d;d=h[m>>2]|0;h[o+4>>2]=d>>>8&3;h[o>>2]=d>>>10&3;_r(c,m,2);if(h[m>>2]|0){Jr(r,2,13076,b)|0;v=1;k=w;return v|0}e=t+-6|0;n=Gn(e)|0;h[a>>2]=n;if(!n){Jr(r,1,12952,v)|0;v=0;k=w;return v|0}else{Xf(n|0,i+6|0,e|0)|0;h[o+16>>2]=e;v=1;k=w;return v|0}return 0}function bi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+32|0;n=s+16|0;o=s+12|0;e=e+80|0;a=h[(h[e>>2]|0)+16>>2]|0;if((a+2|0)!=(t|0)){Jr(r,1,12926,s)|0;o=0;k=s;return o|0}_r(i,n,2);if((h[n>>2]|0)!=(a|0)){Jr(r,1,12926,s+8|0)|0;o=0;k=s;return o|0}if(!a){o=1;k=s;return o|0}n=i+2|0;i=0;e=h[(h[e>>2]|0)+24>>2]|0;while(1){_r(n,o,1);h[e+32>>2]=(h[o>>2]|0)>>>7&1;h[e+24>>2]=(h[o>>2]&127)+1;i=i+1|0;if((i|0)==(a|0)){e=1;break}else{n=n+1|0;e=e+52|0}}k=s;return e|0}function vi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0;O=k;k=k+144|0;R=O+120|0;D=O+112|0;L=O+104|0;I=O+96|0;P=O+88|0;A=O+80|0;S=O+72|0;E=O+64|0;x=O+56|0;C=O+48|0;m=O+40|0;d=O+32|0;l=O+24|0;T=O+136|0;g=O+132|0;_=O+128|0;y=O+124|0;if((h[e+8>>2]|0)==16)b=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else b=h[e+12>>2]|0;if(t>>>0<2){Jr(r,1,12586,O)|0;R=0;k=O;return R|0}_r(i,T,2);if(h[T>>2]|0){Jr(r,2,12612,O+8|0)|0;R=1;k=O;return R|0}if(t>>>0<7){Jr(r,1,12586,O+16|0)|0;R=0;k=O;return R|0}_r(i+2|0,g,1);u=i+3|0;f=b+5624|0;n=h[f>>2]|0;M=b+5628|0;e=h[M>>2]|0;e:do if(!e){o=0;a=n}else{s=h[g>>2]|0;o=0;a=n;do{if((h[a>>2]|0)==(s|0))break e;a=a+20|0;o=o+1|0}while(o>>>0<e>>>0)}while(0);if((o|0)==(e|0)){a=b+5632|0;do if((e|0)==(h[a>>2]|0)){e=e+10|0;h[a>>2]=e;e=Jn(n,e*20|0)|0;if(e){h[f>>2]=e;n=h[M>>2]|0;Vf(e+(n*20|0)|0,0,((h[a>>2]|0)-n|0)*20|0)|0;n=h[f>>2]|0;e=h[M>>2]|0;break}Qn(h[f>>2]|0);h[f>>2]=0;h[a>>2]=0;h[M>>2]=0;Jr(r,1,12658,l)|0;R=0;k=O;return R|0}while(0);a=n+(e*20|0)|0}h[a>>2]=h[g>>2];_r(u,T,2);if(h[T>>2]|0){Jr(r,2,12612,d)|0;R=1;k=O;return R|0}_r(i+5|0,_,2);n=h[_>>2]|0;if(n>>>0>1){Jr(r,2,12696,m)|0;R=1;k=O;return R|0}e=t+-7|0;e:do if(n){v=a+4|0;w=a+16|0;p=a+8|0;t=a+12|0;m=b+5612|0;d=b+5616|0;l=i+7|0;u=0;i:while(1){if(e>>>0<3){n=27;break}_r(l,T,1);if((h[T>>2]|0)!=1){n=29;break}_r(l+1|0,y,2);n=e+-3|0;o=h[y>>2]|0;s=(o>>>15)+1|0;o=o&32767;h[v>>2]=o;a=(ue(s,o)|0)+2|0;if(n>>>0<a>>>0){n=31;break}e=l+3|0;f=n-a|0;if(o){n=0;do{_r(e,T,s);if((h[T>>2]|0)!=(n|0)){n=34;break i}e=e+s|0;n=n+1|0}while(n>>>0<(h[v>>2]|0)>>>0)}_r(e,y,2);n=e+2|0;a=h[y>>2]|0;o=(a>>>15)+1|0;a=a&32767;h[y>>2]=a;if((a|0)!=(h[v>>2]|0)){n=37;break}e=(ue(o,a)|0)+3|0;if(f>>>0<e>>>0){n=39;break}e=f-e|0;if(a){a=0;do{_r(n,T,o);if((h[T>>2]|0)!=(a|0)){n=42;break i}n=n+o|0;a=a+1|0}while(a>>>0<(h[v>>2]|0)>>>0)}_r(n,T,3);l=n+3|0;c[w>>0]=((h[T>>2]|0)>>>16^1)&1|c[w>>0]&-2;h[p>>2]=0;h[t>>2]=0;f=h[T>>2]|0;a=f&255;h[g>>2]=a;if(a){o=h[d>>2]|0;if(!o){n=50;break}s=0;n=h[m>>2]|0;while(1){if((h[n+8>>2]|0)==(a|0))break;s=s+1|0;if(s>>>0>=o>>>0){n=50;break i}else n=n+20|0}h[p>>2]=n}a=f>>>8&255;h[g>>2]=a;if(a){o=h[d>>2]|0;if(!o){n=57;break}s=0;n=h[m>>2]|0;while(1){if((h[n+8>>2]|0)==(a|0))break;s=s+1|0;if(s>>>0>=o>>>0){n=57;break i}else n=n+20|0}h[t>>2]=n}u=u+1|0;if(u>>>0>=(h[_>>2]|0)>>>0)break e}if((n|0)==27){Jr(r,1,12586,C)|0;R=0;k=O;return R|0}else if((n|0)==29){Jr(r,2,12740,x)|0;R=1;k=O;return R|0}else if((n|0)==31){Jr(r,1,12586,E)|0;R=0;k=O;return R|0}else if((n|0)==34){Jr(r,2,12806,S)|0;R=1;k=O;return R|0}else if((n|0)==37){Jr(r,2,12860,A)|0;R=1;k=O;return R|0}else if((n|0)==39){Jr(r,1,12586,P)|0;R=0;k=O;return R|0}else if((n|0)==42){Jr(r,2,12806,I)|0;R=1;k=O;return R|0}else if((n|0)==50){Jr(r,1,12586,L)|0;R=0;k=O;return R|0}else if((n|0)==57){Jr(r,1,12586,D)|0;R=0;k=O;return R|0}}while(0);if(!e){h[M>>2]=(h[M>>2]|0)+1;R=1;k=O;return R|0}else{Jr(r,1,12586,R)|0;R=0;k=O;return R|0}return 0}function wi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+32|0;v=w+24|0;b=w+20|0;c=e+80|0;n=h[c>>2]|0;if((h[e+8>>2]|0)==16)a=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else a=h[e+12>>2]|0;if(!t){Jr(r,1,12505,w)|0;v=0;k=w;return v|0}_r(i,b,1);e=h[b>>2]|0;if(e>>>0>1){Jr(r,2,12531,w+8|0)|0;v=1;k=w;return v|0}if((e+1|0)!=(t|0)){Jr(r,2,12505,w+16|0)|0;v=0;k=w;return v|0}u=a+5584|0;e=h[n+16>>2]|0;if(e){t=0;r=h[u>>2]|0;while(1){h[r+1076>>2]=0;t=t+1|0;if(t>>>0>=e>>>0)break;else r=r+1080|0}}l=a+5604|0;e=h[l>>2]|0;if(e){Qn(e);h[l>>2]=0}if(!(h[b>>2]|0)){v=1;k=w;return v|0}f=a+5624|0;o=a+5628|0;s=0;while(1){i=i+1|0;_r(i,v,1);e=h[c>>2]|0;n=h[f>>2]|0;a=h[o>>2]|0;if(((a|0)!=0?!((a|0)==0?1:(h[n>>2]|0)!=(h[v>>2]|0)):0)?(d=h[n+4>>2]|0,m=e+16|0,(d|0)==(h[m>>2]|0)):0){e=h[n+8>>2]|0;if(e){t=ue(d,d)|0;a=ue(h[1036+(h[e>>2]<<2)>>2]|0,t)|0;if((h[e+16>>2]|0)!=(a|0)){e=0;t=32;break}r=Gn(t<<2)|0;h[l>>2]=r;if(!r){e=0;t=32;break}Bl[h[1052+(h[e>>2]<<2)>>2]&15](h[e+12>>2]|0,r,t)}e=h[n+12>>2]|0;if(e){t=h[m>>2]|0;a=ue(t,h[1036+(h[e>>2]<<2)>>2]|0)|0;if((h[e+16>>2]|0)!=(a|0)){e=0;t=32;break}a=Gn(t<<2)|0;if(!a){e=0;t=32;break}Bl[h[1068+(h[e>>2]<<2)>>2]&15](h[e+12>>2]|0,a,t);e=h[m>>2]|0;if(e){t=0;r=a;n=h[u>>2]|0;while(1){h[n+1076>>2]=h[r>>2];t=t+1|0;if((t|0)==(e|0))break;else{r=r+4|0;n=n+1080|0}}}Qn(a)}}s=s+1|0;if(s>>>0>=(h[b>>2]|0)>>>0){e=1;t=32;break}}if((t|0)==32){k=w;return e|0}return 0}function pi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){_r(e,n,2);h[i>>2]=h[n>>2];r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+2|0}}k=a;return}function gi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){_r(e,n,4);h[i>>2]=h[n>>2];r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+4|0}}k=a;return}function ki(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){Cr(e,n);h[i>>2]=~~+w[n>>2];r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+4|0}}k=a;return}function _i(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){Tr(e,n);h[i>>2]=~~+p[n>>3];r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+8|0}}k=a;return}function yi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){_r(e,n,2);w[i>>2]=+((h[n>>2]|0)>>>0);r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+2|0}}k=a;return}function Ti(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){_r(e,n,4);w[i>>2]=+((h[n>>2]|0)>>>0);r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+4|0}}k=a;return}function Mi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){Cr(e,n);h[i>>2]=h[n>>2];r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+4|0}}k=a;return}function Ci(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;if(!t){k=a;return}r=0;while(1){Tr(e,n);w[i>>2]=+p[n>>3];r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+8|0}}k=a;return}function xi(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0;c=k;k=k+32|0;o=c+8|0;f=c+20|0;if((h[e+8>>2]|0)==16)e=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else e=h[e+12>>2]|0;u=h[e+5584>>2]|0;e=h[r>>2]|0;if(!e){Jr(n,1,14243,c)|0;i=0;k=c;return i|0}h[r>>2]=e+-1;_r(t,f,1);t=t+1|0;a=h[f>>2]&31;s=u+(i*1080|0)+24|0;h[s>>2]=a;h[u+(i*1080|0)+804>>2]=(h[f>>2]|0)>>>5;do if((a|0)==1){e=1;l=8}else{e=(h[r>>2]|0)>>>((a|0)!=0&1);if(e>>>0>97){h[o>>2]=e;h[o+4>>2]=97;h[o+8>>2]=97;Jr(n,2,14279,o)|0;a=h[s>>2]|0}n=(e|0)==0;if(a)if(n){e=0;l=20;break}else{l=8;break}if(!n){a=0;while(1){_r(t,f,1);if(a>>>0<97){h[u+(i*1080|0)+28+(a<<3)>>2]=(h[f>>2]|0)>>>3;h[u+(i*1080|0)+28+(a<<3)+4>>2]=0}a=a+1|0;if((a|0)==(e|0))break;else t=t+1|0}}e=(h[r>>2]|0)-e|0}while(0);if((l|0)==8){a=0;while(1){_r(t,f,2);if(a>>>0<97){h[u+(i*1080|0)+28+(a<<3)>>2]=(h[f>>2]|0)>>>11;h[u+(i*1080|0)+28+(a<<3)+4>>2]=h[f>>2]&2047}a=a+1|0;if((a|0)==(e|0)){l=20;break}else t=t+2|0}}if((l|0)==20)e=(h[r>>2]|0)-(e<<1)|0;h[r>>2]=e;if((h[s>>2]|0)!=1){i=1;k=c;return i|0}e=u+(i*1080|0)+28|0;t=u+(i*1080|0)+32|0;a=1;do{r=(h[e>>2]|0)-(((a+-1|0)>>>0)/3|0)|0;h[u+(i*1080|0)+28+(a<<3)>>2]=(r|0)>0?r:0;h[u+(i*1080|0)+28+(a<<3)+4>>2]=h[t>>2];a=a+1|0}while((a|0)!=97);e=1;k=c;return e|0}function Ei(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;v=k;k=k+48|0;m=v+40|0;l=v+32|0;f=v+16|0;s=v+8|0;d=v+44|0;o=e+8|0;if((h[o>>2]|0)==16)a=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else a=h[e+12>>2]|0;u=h[a+5584>>2]|0;if((h[r>>2]|0)>>>0<5){Jr(n,1,14683,v)|0;r=0;k=v;return r|0}c=u+(i*1080|0)+4|0;_r(t,c,1);a=(h[c>>2]|0)+1|0;h[c>>2]=a;if(a>>>0>33){h[s>>2]=a;h[s+4>>2]=33;Jr(n,1,14718,s)|0;r=0;k=v;return r|0}if((h[e+168>>2]|0)>>>0>=a>>>0){h[f>>2]=i;Jr(n,1,14795,f)|0;h[o>>2]=h[o>>2]|32768;r=0;k=v;return r|0}s=u+(i*1080|0)+8|0;_r(t+1|0,s,1);h[s>>2]=(h[s>>2]|0)+2;e=u+(i*1080|0)+12|0;_r(t+2|0,e,1);f=(h[e>>2]|0)+2|0;h[e>>2]=f;s=h[s>>2]|0;if(s>>>0>10|f>>>0>10|(s+f|0)>>>0>12){Jr(n,1,14953,v+24|0)|0;r=0;k=v;return r|0}_r(t+3|0,u+(i*1080|0)+16|0,1);_r(t+4|0,u+(i*1080|0)+20|0,1);o=(h[r>>2]|0)+-5|0;h[r>>2]=o;a=h[c>>2]|0;if(!(h[u+(i*1080|0)>>2]&1)){if(!a){r=1;k=v;return r|0}else a=0;do{h[u+(i*1080|0)+812+(a<<2)>>2]=15;h[u+(i*1080|0)+944+(a<<2)>>2]=15;a=a+1|0}while(a>>>0<(h[c>>2]|0)>>>0);a=1;k=v;return a|0}if(o>>>0<a>>>0){Jr(n,1,14683,l)|0;r=0;k=v;return r|0}do if(!a)a=0;else{e=0;o=t+5|0;while(1){_r(o,d,1);o=o+1|0;a=h[d>>2]|0;if((e|0)!=0?a>>>0<16|(a&15|0)==0:0)break;h[u+(i*1080|0)+812+(e<<2)>>2]=a&15;h[u+(i*1080|0)+944+(e<<2)>>2]=(h[d>>2]|0)>>>4;e=e+1|0;a=h[c>>2]|0;if(e>>>0>=a>>>0){b=22;break}}if((b|0)==22){o=h[r>>2]|0;break}Jr(n,1,15021,m)|0;r=0;k=v;return r|0}while(0);h[r>>2]=o-a;r=1;k=v;return r|0}function Si(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(!t)return;r=0;while(1){kr(i,~~+w[e>>2]>>>0,2);r=r+1|0;if((r|0)==(t|0))break;else{i=i+2|0;e=e+4|0}}return}function Ai(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(!t)return;r=0;while(1){kr(i,~~+w[e>>2]>>>0,4);r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+4|0}}return}function Pi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(!t)return;r=0;while(1){Mr(i,+w[e>>2]);r=r+1|0;if((r|0)==(t|0))break;else{i=i+4|0;e=e+4|0}}return}function Ii(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(!t)return;r=0;while(1){yr(i,+w[e>>2]);r=r+1|0;if((r|0)==(t|0))break;else{i=i+8|0;e=e+4|0}}return}function Li(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+16|0;if(!t){t=0;k=s;return t|0}if(!(wa(h[e>>2]|0,i,t,r)|0)){Jr(r,1,16322,s)|0;t=0;k=s;return t|0}if(h[e+128>>2]|0){t=1;k=s;return t|0}o=e+108|0;if(!(Ji(t,o,r)|0)){t=0;k=s;return t|0}i=h[e+48>>2]|0;e:do switch(i|0){case 16:{h[t+20>>2]=1;break}case 17:{h[t+20>>2]=2;break}case 18:{h[t+20>>2]=3;break}case 24:{h[t+20>>2]=4;break}default:{n=t+20|0;if((i|0)==12){h[n>>2]=5;break e}else{h[n>>2]=-1;break e}}}while(0);a=e+120|0;i=h[a>>2]|0;do if(i){if(h[i+12>>2]|0){Qi(t,o);break}Qn(h[i+4>>2]|0);Qn(h[(h[a>>2]|0)+8>>2]|0);Qn(h[h[a>>2]>>2]|0);i=h[a>>2]|0;n=h[i+12>>2]|0;if(n){Qn(n);i=h[a>>2]|0}Qn(i);h[a>>2]=0}while(0);if(h[e+116>>2]|0)Zi(t,o,r);i=h[o>>2]|0;if(!i){t=1;k=s;return t|0}h[t+28>>2]=i;h[t+32>>2]=h[e+112>>2];h[o>>2]=0;t=1;k=s;return t|0}function Di(e,i){e=e|0;i=i|0;ea(h[e>>2]|0,i);c[e+124>>0]=0;h[e+128>>2]=h[i+8248>>2]&1;return}function Ri(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;y=k;k=k+80|0;_=y+64|0;w=y+56|0;c=y+48|0;v=y+40|0;b=y+32|0;m=y+24|0;if(!((e|0)!=0&(i|0)!=0&(t|0)!=0)){i=0;k=y;return i|0}p=t+16|0;if(((h[p>>2]|0)+-1|0)>>>0>16383){Jr(r,1,16371,y)|0;i=0;k=y;return i|0}if(!(ra(h[e>>2]|0,i,t,r)|0)){i=0;k=y;return i|0}h[e+56>>2]=1785737760;h[e+60>>2]=0;h[e+64>>2]=1;n=Gn(4)|0;a=e+68|0;h[a>>2]=n;if(!n){h[a>>2]=0;Jr(r,1,16440,y+8|0)|0;i=0;k=y;return i|0}h[n>>2]=1785737760;f=h[p>>2]|0;h[e+20>>2]=f;f=Gn(f*12|0)|0;n=e+72|0;h[n>>2]=f;if(!f){h[n>>2]=0;Jr(r,1,16440,y+16|0)|0;i=0;k=y;return i|0}h[e+16>>2]=(h[t+12>>2]|0)-(h[t+4>>2]|0);h[e+12>>2]=(h[t+8>>2]|0)-(h[t>>2]|0);g=t+24|0;l=h[g>>2]|0;o=h[l+24>>2]|0;s=h[l+32>>2]|0;n=e+24|0;h[n>>2]=o+-1+(s<<7);u=h[p>>2]|0;if(u>>>0>1){a=1;do{if((o|0)!=(h[l+(a*52|0)+24>>2]|0))h[n>>2]=255;a=a+1|0}while(a>>>0<u>>>0)}h[e+28>>2]=7;h[e+32>>2]=0;h[e+36>>2]=0;a=(u|0)==0;if(!a?(h[f+8>>2]=o+-1+(s<<7),u>>>0>1):0){n=1;do{h[f+(n*12|0)+8>>2]=(h[l+(n*52|0)+24>>2]|0)+-1+(h[l+(n*52|0)+32>>2]<<7);n=n+1|0}while(n>>>0<u>>>0)}n=e+40|0;e:do if(!(h[t+32>>2]|0)){h[n>>2]=1;switch(h[t+20>>2]|0){case 1:{h[e+48>>2]=16;break e}case 2:{h[e+48>>2]=17;break e}case 3:{h[e+48>>2]=18;break e}default:break e}}else{h[n>>2]=2;h[e+48>>2]=0}while(0);e:do if(!a){a=0;n=0;o=0;do{t=(d[l+(o*52|0)+48>>1]|0)==0;n=(t&1^1)+n|0;a=t?a:o;o=o+1|0}while(o>>>0<u>>>0);o=a;if((n|0)!=1){if(n>>>0<=1)break;Jr(r,2,16736,c)|0;break}switch(h[e+48>>2]|0){case 18:case 16:{a=3;break}case 17:{a=1;break}default:{Jr(r,2,16486,m)|0;break e}}if(u>>>0<(a+1|0)>>>0){Jr(r,2,16560,b)|0;break}if(o>>>0<a>>>0){Jr(r,2,16653,v)|0;break}v=Gn(8)|0;n=e+116|0;h[n>>2]=v;if(!v){Jr(r,1,16801,w)|0;i=0;k=y;return i|0}w=Gn((h[p>>2]|0)*6|0)|0;t=h[n>>2]|0;h[t>>2]=w;if(!w){Jr(r,1,16801,_)|0;i=0;k=y;return i|0}f=h[p>>2]|0;d[t+4>>1]=f;s=h[t>>2]|0;n=0;do{d[s+(n*6|0)>>1]=n;d[s+(n*6|0)+2>>1]=0;_=n;n=n+1|0;d[s+(_*6|0)+4>>1]=n}while((n|0)!=(a|0));if(a>>>0<f>>>0){o=h[g>>2]|0;do{_=(d[o+(a*52|0)+48>>1]|0)==0;d[s+(a*6|0)>>1]=a;n=s+(a*6|0)+2|0;if(_){d[n>>1]=-1;d[s+(a*6|0)+4>>1]=-1}else{d[n>>1]=1;d[(h[t>>2]|0)+(a*6|0)+4>>1]=0}a=a+1|0}while(a>>>0<f>>>0)}}while(0);h[e+52>>2]=0;h[e+44>>2]=0;h[e+96>>2]=h[i+18692>>2];i=1;k=y;return i|0}function Oi(e,i,t){e=e|0;i=i|0;t=t|0;return ka(h[e>>2]|0,i,t)|0}function Bi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;r=e+8|0;if(!(go(h[r>>2]|0,52,t)|0)){t=0;return t|0}a=h[r>>2]|0;o=ko(a)|0;r=_o(a)|0;if(o){s=0;n=1;while(1){if(!n)n=0;else n=(Pl[h[r>>2]&63](e,i,t)|0)!=0;s=s+1|0;if((s|0)==(o|0))break;else{r=r+4|0;n=n&1}}yo(a);if(!n){t=0;return t|0}}else yo(a);t=aa(h[e>>2]|0,i,t)|0;return t|0}function Ni(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;r=e+8|0;if(!(go(h[r>>2]|0,53,t)|0)){t=0;return t|0}if(!(_a(h[e>>2]|0,i,t)|0)){t=0;return t|0}s=h[r>>2]|0;a=ko(s)|0;r=_o(s)|0;if(!a)r=1;else{o=0;n=r;r=1;while(1){if(!r)r=0;else r=(Pl[h[n>>2]&63](e,i,t)|0)!=0;r=r&1;o=o+1|0;if((o|0)==(a|0))break;else n=n+4|0}}yo(s);t=r;return t|0}function Fi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+4|0;if(!(go(h[n>>2]|0,54,r)|0)){i=0;return i|0}o=h[n>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](e,i,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){i=0;return i|0}}else yo(o);n=e+8|0;if(!(go(h[n>>2]|0,55,r)|0)){i=0;return i|0}if(!(go(h[n>>2]|0,56,r)|0)){i=0;return i|0}if(!(go(h[n>>2]|0,57,r)|0)){i=0;return i|0}if((h[e+96>>2]|0)!=0?(go(h[n>>2]|0,58,r)|0)==0:0){i=0;return i|0}if(!(go(h[n>>2]|0,59,r)|0)){i=0;return i|0}o=h[n>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](e,i,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){i=0;return i|0}}else yo(o);i=ya(h[e>>2]|0,i,t,r)|0;return i|0}function Ui(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;l=i+8|0;if(!(go(h[l>>2]|0,52,r)|0)){e=0;return e|0}o=h[i+4>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](i,e,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){e=0;return e|0}}else yo(o);o=h[l>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](i,e,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){e=0;return e|0}}else yo(o);e=oa(e,h[i>>2]|0,t,r)|0;return e|0}function Hi(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;return fa(h[e>>2]|0,i,t,r,n,a,o,s,f,l,u)|0}function zi(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;return Ta(h[e>>2]|0,i,t,r,n,a)|0}function ji(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;return la(h[e>>2]|0,i,t,r,n,a)|0}function Yi(e){e=e|0;var i=0,t=0,r=0;if(!e)return;ta(h[e>>2]|0);h[e>>2]=0;i=e+72|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+68|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+108|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}r=e+116|0;i=h[r>>2]|0;if(i){t=h[i>>2]|0;if(t){Qn(t);i=h[r>>2]|0;h[i>>2]=0}Qn(i);h[r>>2]=0}r=e+120|0;i=h[r>>2]|0;if(i){t=h[i+12>>2]|0;if(t){Qn(t);i=h[r>>2]|0;h[i+12>>2]=0}t=h[i+4>>2]|0;if(t){Qn(t);i=h[r>>2]|0;h[i+4>>2]=0}t=h[i+8>>2]|0;if(t){Qn(t);i=h[r>>2]|0;h[i+8>>2]=0}t=h[i>>2]|0;if(t){Qn(t);i=h[r>>2]|0;h[i>>2]=0}Qn(i);h[r>>2]=0}i=e+4|0;t=h[i>>2]|0;if(t){po(t);h[i>>2]=0}i=e+8|0;t=h[i>>2]|0;if(t){po(t);h[i>>2]=0}Qn(e);return}function Vi(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;return ua(h[e>>2]|0,i,t,r,n,a,o)|0}function qi(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;s=k;k=k+16|0;if(!t){e=0;k=s;return e|0}Jr(r,2,16845,s)|0;if(!(pa(h[e>>2]|0,i,t,r,n)|0)){Jr(r,1,16322,s+8|0)|0;e=0;k=s;return e|0}o=e+108|0;if(!(Ji(t,o,r)|0)){e=0;k=s;return e|0}n=h[e+48>>2]|0;e:do switch(n|0){case 16:{h[t+20>>2]=1;break}case 17:{h[t+20>>2]=2;break}case 18:{h[t+20>>2]=3;break}case 24:{h[t+20>>2]=4;break}default:{i=t+20|0;if((n|0)==12){h[i>>2]=5;break e}else{h[i>>2]=-1;break e}}}while(0);a=e+120|0;i=h[a>>2]|0;do if(i){if(h[i+12>>2]|0){Qi(t,o);break}Qn(h[i+4>>2]|0);Qn(h[(h[a>>2]|0)+8>>2]|0);Qn(h[h[a>>2]>>2]|0);i=h[a>>2]|0;n=h[i+12>>2]|0;if(n){Qn(n);i=h[a>>2]|0}Qn(i);h[a>>2]=0}while(0);if(h[e+116>>2]|0)Zi(t,o,r);i=h[o>>2]|0;if(!i){e=1;k=s;return e|0}h[t+28>>2]=i;h[t+32>>2]=h[e+112>>2];h[o>>2]=0;e=1;k=s;return e|0}function Wi(e){e=e|0;var i=0;i=Xn(1,136)|0;if(!i)return i|0;if(!e){e=ia()|0;h[i>>2]=e}else{e=ca()|0;h[i>>2]=e}if(!e){Yi(i);i=0;return i|0}e=i+108|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;c[e+16>>0]=0;e=wo()|0;h[i+4>>2]=e;if(!e){Yi(i);i=0;return i|0}e=wo()|0;h[i+8>>2]=e;if(e)return i|0;Yi(i);i=0;return i|0}function Gi(e,i,t){e=e|0;i=i|0;t=t|0;da(h[e>>2]|0,i,t);return}function Xi(e){e=e|0;return va(h[e>>2]|0)|0}function Ki(e){e=e|0;return ba(h[e>>2]|0)|0}function $i(e,i,t){e=e|0;i=i|0;t=t|0;return ga(h[e>>2]|0,i,t)|0}function Ji(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0;E=k;k=k+80|0;x=E+72|0;C=E+64|0;M=E+56|0;T=E+48|0;y=E+40|0;_=E+32|0;g=E+24|0;w=E+16|0;f=E+8|0;s=E;r=h[i+8>>2]|0;e:do if(r){v=h[r>>2]|0;u=d[r+4>>1]|0;r=h[e+16>>2]|0;l=h[i+12>>2]|0;if((l|0)!=0?(h[l+12>>2]|0)!=0:0)i=m[l+18>>0]|0;else i=r;o=u<<16>>16==0;i:do if(!o){a=0;t:while(1){n=a&65535;r=b[v+(n*6|0)>>1]|0;if(r>>>0>=i>>>0){n=15;break}r=d[v+(n*6|0)+4>>1]|0;switch(r<<16>>16){case 0:case-1:break;default:{r=(r&65535)+-1|0;if(r>>>0>=i>>>0){n=18;break t}}}a=a+1<<16>>16;if((a&65535)>=(u&65535))break i}if((n|0)==15){h[s>>2]=r;h[s+4>>2]=i;Jr(t,1,19362,s)|0;t=0;k=E;return t|0}else if((n|0)==18){h[f>>2]=r;h[f+4>>2]=i;Jr(t,1,19362,f)|0;t=0;k=E;return t|0}}while(0);if(!i)r=l;else{i:do if(!o)while(1){i=i+-1|0;r=0;do{if((b[v+((r&65535)*6|0)>>1]|0)==(i|0))break;r=r+1<<16>>16}while((r&65535)<(u&65535));if(r<<16>>16==u<<16>>16)break i;if(!i){r=l;break e}}while(0);Jr(t,1,19399,w)|0;t=0;k=E;return t|0}}else r=h[i+12>>2]|0;while(0);if(!r){t=1;k=E;return t|0}p=h[r+12>>2]|0;if(!p){t=1;k=E;return t|0}l=c[r+18>>0]|0;w=l&255;v=l<<24>>24==0;if(v)r=1;else{a=e+16|0;i=0;o=0;r=1;do{i=b[p+(i<<2)>>1]|0;n=h[a>>2]|0;if(i>>>0>=n>>>0){h[g>>2]=i;h[g+4>>2]=n;Jr(t,1,19362,g)|0;r=0}o=o+1<<16>>16;i=o&65535}while(i>>>0<w>>>0)}u=Xn(w,4)|0;if(!u){Jr(t,1,19432,_)|0;t=0;k=E;return t|0}if(!v){s=0;f=0;do{n=c[p+(s<<2)+3>>0]|0;a=n&255;do if((n&255)<(l&255)){o=u+(a<<2)|0;i=c[p+(s<<2)+2>>0]|0;if((h[o>>2]|0)!=0&i<<24>>24==1){h[T>>2]=a;Jr(t,1,19505,T)|0;r=0;break}if(i<<24>>24!=0|n<<24>>24==0){h[o>>2]=1;break}else{h[M>>2]=s;h[M+4>>2]=a;Jr(t,1,19536,M)|0;r=0;break}}else{h[y>>2]=a;Jr(t,1,19449,y)|0;r=0}while(0);f=f+1<<16>>16;s=f&65535}while(s>>>0<w>>>0);if(!v){i=0;n=0;do{if((h[u+(i<<2)>>2]|0)==0?(c[p+(i<<2)+2>>0]|0)!=0:0){h[C>>2]=i;Jr(t,1,19572,C)|0;r=0}n=n+1<<16>>16;i=n&65535}while(i>>>0<w>>>0)}}if(!r){Qn(u);t=0;k=E;return t|0}e:do if(!((h[e+16>>2]|0)!=1|v)){r=0;i=0;while(1){i=i+1<<16>>16;if(!(h[u+(r<<2)>>2]|0))break;r=i&65535;if(r>>>0>=w>>>0)break e}h[x>>2]=r;Jr(t,2,19610,x)|0;if(!v){r=0;i=0;do{c[p+(r<<2)+2>>0]=1;c[p+(r<<2)+3>>0]=i;i=i+1<<16>>16;r=i&65535}while(r>>>0<w>>>0)}}while(0);Qn(u);t=1;k=E;return t|0}function Qi(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0;y=i+12|0;i=h[y>>2]|0;s=h[i+8>>2]|0;l=h[i+4>>2]|0;v=h[i>>2]|0;w=h[i+12>>2]|0;i=c[i+18>>0]|0;p=e+24|0;g=h[p>>2]|0;k=i&255;_=Gn(k*52|0)|0;if(!_)return;f=i<<24>>24==0;if(!f){a=0;o=0;do{i=d[w+(a<<2)>>1]|0;if(!(c[w+(a<<2)+2>>0]|0)){i=i&65535;t=_+(a*52|0)|0;r=g+(i*52|0)|0;n=t+52|0;do{h[t>>2]=h[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(n|0))}else{i=i&65535;t=_+((m[w+(a<<2)+3>>0]|0)*52|0)|0;r=g+(i*52|0)|0;n=t+52|0;do{h[t>>2]=h[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(n|0))}n=Gn(ue(h[g+(i*52|0)+8>>2]<<2,h[g+(i*52|0)+12>>2]|0)|0)|0;h[_+(a*52|0)+44>>2]=n;if(!n){u=7;break}h[_+(a*52|0)+24>>2]=m[s+a>>0];h[_+(a*52|0)+32>>2]=m[l+a>>0];o=o+1<<16>>16;a=o&65535}while(a>>>0<k>>>0);if((u|0)==7){Qn(_);return}s=(b[(h[y>>2]|0)+16>>1]|0)+-1|0;if(!f){i=0;o=0;do{n=h[g+((b[w+(i<<2)>>1]|0)*52|0)+44>>2]|0;r=m[w+(i<<2)+3>>0]|0;a=ue(h[_+(r*52|0)+12>>2]|0,h[_+(r*52|0)+8>>2]|0)|0;if(!(c[w+(i<<2)+2>>0]|0)){i=h[_+(i*52|0)+44>>2]|0;if(a){t=0;do{h[i+(t<<2)>>2]=h[n+(t<<2)>>2];t=t+1|0}while((t|0)!=(a|0))}}else{i=h[_+(r*52|0)+44>>2]|0;if(a){t=0;do{u=h[n+(t<<2)>>2]|0;u=v+((ue((u|0)<0?0:(u|0)>(s|0)?s:u,k)|0)+r<<2)|0;h[i+(t<<2)>>2]=h[u>>2];t=t+1|0}while((t|0)!=(a|0))}}o=o+1<<16>>16;i=o&65535}while(i>>>0<k>>>0);
}}t=e+16|0;r=h[t>>2]|0;if(r){i=0;n=0;do{i=h[g+(i*52|0)+44>>2]|0;if(i)Qn(i);n=n+1<<16>>16;i=n&65535}while(i>>>0<r>>>0)}Qn(g);h[p>>2]=_;h[t>>2]=k;Qn(h[(h[y>>2]|0)+4>>2]|0);Qn(h[(h[y>>2]|0)+8>>2]|0);Qn(h[h[y>>2]>>2]|0);i=h[y>>2]|0;t=h[i+12>>2]|0;if(t){Qn(t);i=h[y>>2]|0}Qn(i);h[y>>2]=0;return}function Zi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0;M=k;k=k+80|0;y=M+8|0;_=M;g=M+16|0;T=i+8|0;r=h[T>>2]|0;i=h[r>>2]|0;p=d[r+4>>1]|0;if(p<<16>>16){w=e+16|0;c=e+24|0;b=1;v=0;while(1){m=d[i+(v*6|0)>>1]|0;u=m&65535;e=h[w>>2]|0;e:do if(u>>>0<e>>>0){r=d[i+(v*6|0)+4>>1]|0;switch(r<<16>>16){case-1:case 0:{d[(h[c>>2]|0)+(u*52|0)+48>>1]=d[i+(v*6|0)+2>>1]|0;break e}default:{}}s=(r&65535)+65535|0;l=s&65535;s=s&65535;if(s>>>0>=e>>>0){h[y>>2]=s;h[y+4>>2]=e;Jr(t,2,19321,y)|0;break}f=i+(v*6|0)+2|0;if((u|0)!=(s|0)?(d[f>>1]|0)==0:0){r=h[c>>2]|0;e=r+(u*52|0)|0;n=g;a=e;o=n+52|0;do{h[n>>2]=h[a>>2];n=n+4|0;a=a+4|0}while((n|0)<(o|0));n=e;a=r+(s*52|0)|0;o=n+52|0;do{h[n>>2]=h[a>>2];n=n+4|0;a=a+4|0}while((n|0)<(o|0));n=(h[c>>2]|0)+(s*52|0)|0;a=g;o=n+52|0;do{h[n>>2]=h[a>>2];n=n+4|0;a=a+4|0}while((n|0)<(o|0));if((v+1&65535)<(p&65535)){n=b;do{r=i+(n*6|0)|0;e=d[r>>1]|0;if(e<<16>>16!=m<<16>>16){if(e<<16>>16==l<<16>>16)d[r>>1]=m}else d[r>>1]=l;n=n+1|0}while((n&65535)<<16>>16!=p<<16>>16)}}d[(h[c>>2]|0)+(u*52|0)+48>>1]=d[f>>1]|0}else{h[_>>2]=u;h[_+4>>2]=e;Jr(t,2,19281,_)|0}while(0);v=v+1|0;if((v&65535)<<16>>16==p<<16>>16)break;else b=b+1|0}i=h[T>>2]|0;r=i;i=h[i>>2]|0}if(!i){y=r;Qn(y);h[T>>2]=0;k=M;return}else{Qn(i);y=h[T>>2]|0;Qn(y);h[T>>2]=0;k=M;return}}function et(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0;D=k;k=k+192|0;M=D+152|0;T=D+144|0;y=D+136|0;_=D+128|0;g=D+120|0;A=D+88|0;w=D+80|0;b=D+64|0;m=D+48|0;I=D+40|0;C=D+32|0;P=D+24|0;p=D+16|0;v=D+8|0;c=D+176|0;d=D+168|0;S=D+156|0;r=Xn(1,1024)|0;if(!r){Jr(t,1,17117,D)|0;L=0;k=D;return L|0}u=c+4|0;x=S+4|0;E=e+100|0;l=1024;e:while(1){if((Yr(i,c,8,t)|0)!=8)break;while(1){_r(c,S,4);_r(u,x,4);switch(h[S>>2]|0){case 0:{n=Gr(i)|0;f=H;if((f|0)>0|(f|0)==0&n>>>0>4294967287){L=6;break e}h[S>>2]=n+8;s=8;break}case 1:{if((Yr(i,c,8,t)|0)!=8)break e;_r(c,d,4);if(h[d>>2]|0){L=10;break e}_r(u,S,4);s=16;break}default:s=8}a=h[x>>2]|0;if((a|0)==1785737827){L=13;break e}n=h[S>>2]|0;if(!n){L=17;break e}if(n>>>0<s>>>0){L=19;break e}if((a|0)==1783636e3){o=1084;a=s;L=22;break}if((a|0)==1718909296){o=1092;a=s;L=22;break}f=(a|0)==1785737832;i:do if((a|0)!=1768449138)if((a|0)!=1668246642)if((a|0)!=1651532643)if((a|0)!=1885564018)if((a|0)!=1668112752){o=(a|0)==1667523942?1148:0;n=n-s|0;if((a|0)<1785737832)switch(a|0){case 1667523942:{L=30;break i}default:{}}else switch(a|0){case 1785737832:{L=30;break i}default:{}}a=h[E>>2]|0;if(!(a&1)){L=45;break e}if(!(a&2)){L=47;break e}h[E>>2]=a|2147483647;f=Xr(i,n,0,t)|0;if(!((f|0)==(n|0)&(H|0)==0)){L=50;break e}}else{o=1140;L=28}else{o=1132;L=28}else{o=1124;L=28}else{o=1116;L=28}else{o=1108;L=28}while(0);if((L|0)==28){n=n-s|0;L=30}if((L|0)==30){L=0;if(f){o=1100;break}h[m>>2]=a>>>24;h[m+4>>2]=a>>>16&255;h[m+8>>2]=a>>>8&255;h[m+12>>2]=a&255;Jr(t,2,17301,m)|0;if(h[E>>2]&4)break;f=h[x>>2]|0;h[b>>2]=f>>>24;h[b+4>>2]=f>>>16&255;h[b+8>>2]=f>>>8&255;h[b+12>>2]=f&255;Jr(t,2,17352,b)|0;h[E>>2]=h[E>>2]|2147483647;f=Xr(i,n,0,t)|0;if(!((f|0)==(n|0)&(H|0)==0)){L=33;break e}}if((Yr(i,c,8,t)|0)!=8)break e}if((L|0)==22){L=0;n=n-a|0}f=Gr(i)|0;s=H;if(0>(s|0)|0==(s|0)&n>>>0>f>>>0){L=35;break}if(n>>>0>l>>>0){a=Jn(r,n)|0;if(!a){L=38;break}else{r=a;a=n}}else a=l;if((Yr(i,r,n,t)|0)!=(n|0)){L=40;break}if(!(Fl[h[o+4>>2]&63](e,r,n,t)|0)){L=43;break}else l=a}switch(L|0){case 6:{Jr(t,1,17167,v)|0;break}case 10:{Jr(t,1,17167,p)|0;break}case 13:{n=h[E>>2]|0;if(!(n&4)){Jr(t,1,17209,P)|0;Qn(r);L=0;k=D;return L|0}else{h[E>>2]=n|8;Qn(r);L=1;k=D;return L|0}}case 17:{Jr(t,1,17237,C)|0;Qn(r);L=0;k=D;return L|0}case 19:{h[I>>2]=n;h[I+4>>2]=a;Jr(t,1,17275,I)|0;Qn(r);L=0;k=D;return L|0}case 33:{Jr(t,1,17418,w)|0;Qn(r);L=0;k=D;return L|0}case 35:{P=h[S>>2]|0;I=h[x>>2]|0;L=Gr(i)|0;h[A>>2]=P;h[A+4>>2]=I>>>24;h[A+8>>2]=I>>>16&255;h[A+12>>2]=I>>>8&255;h[A+16>>2]=I&255;h[A+20>>2]=n;h[A+24>>2]=L;Jr(t,1,17468,A)|0;Qn(r);L=0;k=D;return L|0}case 38:{Qn(r);Jr(t,1,17544,g)|0;L=0;k=D;return L|0}case 40:{Jr(t,1,17586,_)|0;Qn(r);L=0;k=D;return L|0}case 43:{Qn(r);L=0;k=D;return L|0}case 45:{Jr(t,1,17635,y)|0;Qn(r);L=0;k=D;return L|0}case 47:{Jr(t,1,17705,T)|0;Qn(r);L=0;k=D;return L|0}case 50:{Jr(t,1,17418,M)|0;Qn(r);L=0;k=D;return L|0}}Qn(r);L=1;k=D;return L|0}function it(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;o=k;k=k+32|0;a=o+24|0;r=Wr(i)|0;n=H;e=e+80|0;s=e;s=jf(r|0,n|0,h[s>>2]|0,h[s+4>>2]|0)|0;kr(a,s,4);kr(a+4|0,1785737827,4);if(!(Kr(i,h[e>>2]|0,h[e+4>>2]|0,t)|0)){Jr(t,1,17086,o)|0;s=0;k=o;return s|0}if((Vr(i,a,8,t)|0)!=8){Jr(t,1,17086,o+8|0)|0;s=0;k=o;return s|0}if(Kr(i,r,n,t)|0){s=1;k=o;return s|0}Jr(t,1,17086,o+16|0)|0;s=0;k=o;return s|0}function tt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;t=((h[e>>2]|0)!=0?(h[e+104>>2]|h[e+100>>2]|0)==0:0)&(h[e+8>>2]|0)!=0&(h[e+4>>2]|0)!=0&(h[e+64>>2]|0)!=0&(h[e+16>>2]|0)!=0&(h[e+12>>2]|0)!=0&1;r=h[e+20>>2]|0;if(!r){a=t;e=e+40|0;e=h[e>>2]|0;e=e+-1|0;e=e>>>0<2;e=e&1;i=$r(i)|0;i=i&a;e=i&e;return e|0}n=h[e+72>>2]|0;a=0;do{t=(h[n+(a*12|0)+8>>2]&126)>>>0<38&t;a=a+1|0}while(a>>>0<r>>>0);e=e+40|0;e=h[e>>2]|0;e=e+-1|0;e=e>>>0<2;e=e&1;i=$r(i)|0;i=i&t;e=i&e;return e|0}function rt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;e=k;k=k+16|0;r=e;kr(r,12,4);kr(r+4|0,1783636e3,4);kr(r+8|0,218793738,4);t=(Vr(i,r,12,t)|0)==12&1;k=e;return t|0}function nt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+16|0;f=l+8|0;n=e+64|0;o=(h[n>>2]<<2)+16|0;s=Xn(1,o)|0;if(!s){Jr(t,1,17006,l)|0;f=0;k=l;return f|0}kr(s,o,4);kr(s+4|0,1718909296,4);kr(s+8|0,h[e+56>>2]|0,4);kr(s+12|0,h[e+60>>2]|0,4);a=s+16|0;if(h[n>>2]|0){e=e+68|0;r=0;do{kr(a,h[(h[e>>2]|0)+(r<<2)>>2]|0,4);r=r+1|0}while(r>>>0<(h[n>>2]|0)>>>0)}e=(Vr(i,s,o,t)|0)==(o|0);if(!e)Jr(t,1,17045,f)|0;Qn(s);f=e&1;k=l;return f|0}function at(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;b=k;k=k+80|0;d=b+16|0;u=b+8|0;f=b;n=b+24|0;l=b+72|0;r=n;a=r+48|0;do{h[r>>2]=0;r=r+4|0}while((r|0)<(a|0));m=(h[e+24>>2]|0)==255;h[n>>2]=2;r=n+12|0;if(m){h[r>>2]=3;h[n+24>>2]=4;r=3}else{h[r>>2]=4;r=2}if(!(h[e+116>>2]|0))m=r;else{h[n+(r*12|0)>>2]=5;m=r+1|0}kr(l+4|0,1785737832,4);o=0;s=n;r=8;while(1){a=s+8|0;v=Ul[h[s>>2]&7](e,a)|0;h[s+4>>2]=v;if(!v){c=8;break}r=(h[a>>2]|0)+r|0;o=o+1|0;if((o|0)>=(m|0))break;else s=s+12|0}if((c|0)==8){Jr(t,1,16920,f)|0;a=0;while(1){r=h[n+4>>2]|0;if(r)Qn(r);a=a+1|0;if((a|0)>=(m|0)){r=0;break}else n=n+12|0}k=b;return r|0}kr(l,r,4);e:do if((Vr(i,l,8,t)|0)==8){r=0;a=n;while(1){v=a+8|0;c=Vr(i,h[a+4>>2]|0,h[v>>2]|0,t)|0;if((c|0)!=(h[v>>2]|0))break;r=r+1|0;if((r|0)>=(m|0)){r=1;break e}else a=a+12|0}Jr(t,1,16963,d)|0;r=0}else{Jr(t,1,16963,u)|0;r=0}while(0);o=0;while(1){a=h[n+4>>2]|0;if(a)Qn(a);o=o+1|0;if((o|0)>=(m|0))break;else n=n+12|0}k=b;return r|0}function ot(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;r=Wr(i)|0;e=e+88|0;h[e>>2]=r;h[e+4>>2]=H;i=Xr(i,24,0,t)|0;return(i|0)==24&(H|0)==0&1|0}function st(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;r=Wr(i)|0;e=e+80|0;h[e>>2]=r;h[e+4>>2]=H;i=Xr(i,8,0,t)|0;return(i|0)==8&(H|0)==0&1|0}function ft(e,i){e=e|0;i=i|0;var t=0;t=Xn(1,22)|0;if(!t){i=0;return i|0}kr(t,22,4);kr(t+4|0,1768449138,4);kr(t+8|0,h[e+16>>2]|0,4);kr(t+12|0,h[e+12>>2]|0,4);kr(t+16|0,h[e+20>>2]|0,2);kr(t+18|0,h[e+24>>2]|0,1);kr(t+19|0,h[e+28>>2]|0,1);kr(t+20|0,h[e+32>>2]|0,1);kr(t+21|0,h[e+36>>2]|0,1);h[i>>2]=22;i=t;return i|0}function lt(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0;n=e+20|0;a=(h[n>>2]|0)+8|0;o=Xn(1,a)|0;if(!o){i=0;return i|0}kr(o,a,4);kr(o+4|0,1651532643,4);if(h[n>>2]|0){e=e+72|0;t=0;r=o+8|0;while(1){kr(r,h[(h[e>>2]|0)+(t*12|0)+8>>2]|0,1);t=t+1|0;if(t>>>0>=(h[n>>2]|0)>>>0)break;else r=r+1|0}}h[i>>2]=a;i=o;return i|0}function ut(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;t=e+40|0;switch(h[t>>2]|0){case 1:{s=15;break}case 2:{s=(h[e+112>>2]|0)+11|0;break}default:{i=0;return i|0}}o=Xn(1,s)|0;if(!o){i=0;return i|0}kr(o,s,4);kr(o+4|0,1668246642,4);kr(o+8|0,h[t>>2]|0,1);kr(o+9|0,h[e+52>>2]|0,1);kr(o+10|0,h[e+44>>2]|0,1);n=o+11|0;switch(h[t>>2]|0){case 1:{kr(n,h[e+48>>2]|0,4);break}case 2:{a=e+112|0;if(h[a>>2]|0){e=e+108|0;r=0;t=n;while(1){kr(t,m[(h[e>>2]|0)+r>>0]|0,1);r=r+1|0;if(r>>>0>=(h[a>>2]|0)>>>0)break;else t=t+1|0}}break}default:{}}h[i>>2]=s;i=o;return i|0}function ct(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;a=e+116|0;o=((b[(h[a>>2]|0)+4>>1]|0)*6|0)+10|0;s=Gn(o)|0;if(!s){i=0;return i|0}kr(s,o,4);kr(s+4|0,1667523942,4);kr(s+8|0,b[(h[a>>2]|0)+4>>1]|0,2);e=h[a>>2]|0;if(d[e+4>>1]|0){r=0;t=0;n=s+10|0;while(1){kr(n,b[(h[e>>2]|0)+(r*6|0)>>1]|0,2);kr(n+2|0,b[(h[h[a>>2]>>2]|0)+(r*6|0)+2>>1]|0,2);kr(n+4|0,b[(h[h[a>>2]>>2]|0)+(r*6|0)+4>>1]|0,2);t=t+1<<16>>16;e=h[a>>2]|0;if((t&65535)>=(b[e+4>>1]|0))break;else{r=t&65535;n=n+6|0}}}h[i>>2]=o;i=s;return i|0}function dt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;a=k;k=k+32|0;n=a+16|0;if((t|0)!=14){Jr(r,1,18526,a)|0;n=0;k=a;return n|0}_r(i,e+16|0,4);_r(i+4|0,e+12|0,4);t=e+20|0;_r(i+8|0,t,2);t=Xn(h[t>>2]|0,12)|0;h[e+72>>2]=t;if(!t){Jr(r,1,18559,a+8|0)|0;n=0;k=a;return n|0}_r(i+10|0,e+24|0,1);t=e+28|0;_r(i+11|0,t,1);t=h[t>>2]|0;if((t|0)!=7){h[n>>2]=t;Jr(r,4,18608,n)|0}_r(i+12|0,e+32|0,1);_r(i+13|0,e+36|0,1);n=1;k=a;return n|0}function ht(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;T=k;k=k+80|0;o=T+40|0;p=T+32|0;f=T+24|0;s=T+16|0;g=T+72|0;w=T+68|0;m=T+64|0;b=T+60|0;u=T+56|0;v=T+52|0;d=T+48|0;l=T+44|0;if(t>>>0<3){Jr(r,1,18199,T)|0;y=0;k=T;return y|0}_=e+108|0;y=e+124|0;if(c[y>>0]|0){Jr(r,4,18231,T+8|0)|0;y=1;k=T;return y|0}a=e+40|0;_r(i,a,1);_r(i+1|0,e+52|0,1);_r(i+2|0,e+44|0,1);n=i+3|0;a=h[a>>2]|0;switch(a|0){case 1:{if(t>>>0<7){h[s>>2]=t;Jr(r,1,18340,s)|0;y=0;k=T;return y|0}a=e+48|0;if(t>>>0>7?(h[a>>2]|0)!=14:0){h[f>>2]=t;Jr(r,2,18340,f)|0}_r(n,a,4);if((h[a>>2]|0)==14){n=Gn(36)|0;h[n>>2]=14;h[d>>2]=0;h[u>>2]=0;h[m>>2]=0;h[v>>2]=0;h[b>>2]=0;h[w>>2]=0;h[l>>2]=4470064;a=n+4|0;h[a>>2]=1145390592;switch(t|0){case 35:{_r(i+7|0,w,4);_r(i+11|0,m,4);_r(i+15|0,b,4);_r(i+19|0,u,4);_r(i+23|0,v,4);_r(i+27|0,d,4);_r(i+31|0,l,4);h[a>>2]=0;break}case 7:break;default:{h[p>>2]=t;Jr(r,2,18376,p)|0}}h[n+8>>2]=h[w>>2];h[n+16>>2]=h[b>>2];h[n+24>>2]=h[v>>2];h[n+12>>2]=h[m>>2];h[n+20>>2]=h[u>>2];h[n+28>>2]=h[d>>2];h[n+32>>2]=h[l>>2];h[_>>2]=n;h[e+112>>2]=0}c[y>>0]=1;y=1;k=T;return y|0}case 2:{o=t+-3|0;a=e+112|0;h[a>>2]=o;e=Xn(1,o)|0;h[_>>2]=e;if(!e){h[a>>2]=0;y=0;k=T;return y|0}if((t|0)>3){a=0;while(1){_r(n,g,1);c[(h[_>>2]|0)+a>>0]=h[g>>2];a=a+1|0;if((a|0)==(o|0))break;else n=n+1|0}}c[y>>0]=1;y=1;k=T;return y|0}default:{if(a>>>0<=2){y=1;k=T;return y|0}h[o>>2]=a;Jr(r,4,18420,o)|0;y=1;k=T;return y|0}}return 0}function mt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+16|0;a=s;n=h[e+24>>2]|0;if((n|0)!=255){h[a>>2]=n;Jr(r,2,18053,a)|0}o=e+20|0;if((h[o>>2]|0)!=(t|0)){Jr(r,1,18167,s+8|0)|0;o=0;k=s;return o|0}if(!t){o=1;k=s;return o|0}a=e+72|0;n=0;while(1){_r(i,(h[a>>2]|0)+(n*12|0)+8|0,1);n=n+1|0;if(n>>>0>=(h[o>>2]|0)>>>0){i=1;break}else i=i+1|0}k=s;return i|0}function bt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,b=0,v=0;v=k;k=k+16|0;n=v;b=v+12|0;a=e+120|0;if(t>>>0<3|(h[a>>2]|0)!=0){t=0;k=v;return t|0}_r(i,b,2);o=h[b>>2]|0;u=o&65535;if((u+-1|0)>>>0>1023){h[n>>2]=u;Jr(r,1,17970,n)|0;t=0;k=v;return t|0}_r(i+2|0,b,1);l=h[b>>2]&65535;if(!l){Jr(r,1,18008,v+8|0)|0;t=0;k=v;return t|0}if((l+3|0)>>>0>t>>>0){t=0;k=v;return t|0}n=Gn(ue(u<<2,l)|0)|0;if(!n){t=0;k=v;return t|0}f=Gn(l)|0;if(!f){Qn(n);t=0;k=v;return t|0}s=Gn(l)|0;if(!s){Qn(n);Qn(f);t=0;k=v;return t|0}e=Gn(20)|0;if(!e){Qn(n);Qn(f);Qn(s);t=0;k=v;return t|0}h[e+4>>2]=s;h[e+8>>2]=f;h[e>>2]=n;d[e+16>>1]=o;c[e+18>>0]=h[b>>2];h[e+12>>2]=0;h[a>>2]=e;e=i+3|0;r=0;a=0;do{_r(e,b,1);e=e+1|0;c[f+r>>0]=(h[b>>2]&127)+1;c[s+r>>0]=(h[b>>2]|0)>>>7&1;a=a+1<<16>>16;r=a&65535}while(r>>>0<l>>>0);if(!u){t=1;k=v;return t|0}r=0;e:while(1){o=0;a=n;s=0;while(1){n=((m[f+o>>0]|0)+7|0)>>>3;n=n>>>0>4?4:n;if((e-i+n|0)>(t|0)){e=0;n=22;break e}_r(e,b,n);e=e+n|0;h[a>>2]=h[b>>2];n=a+4|0;s=s+1<<16>>16;o=s&65535;if(o>>>0>=l>>>0)break;else a=n}r=r+1<<16>>16;if((r&65535)>>>0>=u>>>0){e=1;n=22;break}}if((n|0)==22){k=v;return e|0}return 0}function vt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+32|0;o=s+20|0;a=e+120|0;e=h[a>>2]|0;if(!e){Jr(r,1,17860,s)|0;o=0;k=s;return o|0}if(h[e+12>>2]|0){Jr(r,1,17906,s+8|0)|0;o=0;k=s;return o|0}n=c[e+18>>0]|0;e=(n&255)<<2;if(e>>>0>t>>>0){Jr(r,1,17937,s+16|0)|0;o=0;k=s;return o|0}r=Gn(e)|0;if(!r){o=0;k=s;return o|0}if(n<<24>>24){e=i;t=0;while(1){_r(e,o,2);d[r+(t<<2)>>1]=h[o>>2];_r(e+2|0,o,1);c[r+(t<<2)+2>>0]=h[o>>2];_r(e+3|0,o,1);c[r+(t<<2)+3>>0]=h[o>>2];t=t+1|0;if((t&255)<<24>>24==n<<24>>24)break;else e=e+4|0}}h[(h[a>>2]|0)+12>>2]=r;o=1;k=s;return o|0}function wt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+32|0;o=s+20|0;a=e+116|0;if(h[a>>2]|0){o=0;k=s;return o|0}if(t>>>0<2){Jr(r,1,17766,s)|0;o=0;k=s;return o|0}_r(i,o,2);e=h[o>>2]|0;n=e&65535;if(!n){Jr(r,1,17799,s+8|0)|0;o=0;k=s;return o|0}if(((n*6|0)+2|0)>>>0>t>>>0){Jr(r,1,17766,s+16|0)|0;o=0;k=s;return o|0}t=Gn(e*6|0)|0;if(!t){o=0;k=s;return o|0}e=Gn(8)|0;h[a>>2]=e;if(!e){Qn(t);o=0;k=s;return o|0}h[e>>2]=t;r=h[o>>2]&65535;d[e+4>>1]=r;if(!(r<<16>>16)){o=1;k=s;return o|0}else{n=0;e=i}do{i=n&65535;_r(e+2|0,o,2);d[t+(i*6|0)>>1]=h[o>>2];_r(e+4|0,o,2);e=e+6|0;d[t+(i*6|0)+2>>1]=h[o>>2];_r(e,o,2);d[t+(i*6|0)+4>>1]=h[o>>2];n=n+1<<16>>16}while((n&65535)<(b[(h[a>>2]|0)+4>>1]|0));e=1;k=s;return e|0}function pt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;a=k;k=k+32|0;n=a+20|0;e=e+100|0;if(h[e>>2]|0){Jr(r,1,19149,a)|0;r=0;k=a;return r|0}if((t|0)!=4){Jr(r,1,19203,a+8|0)|0;r=0;k=a;return r|0}_r(i,n,4);if((h[n>>2]|0)==218793738){h[e>>2]=h[e>>2]|1;r=1;k=a;return r|0}else{Jr(r,1,19237,a+16|0)|0;r=0;k=a;return r|0}return 0}function gt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+32|0;a=s+24|0;o=e+100|0;if((h[o>>2]|0)!=1){Jr(r,1,19030,s)|0;o=0;k=s;return o|0}if(t>>>0<8){Jr(r,1,19080,s+8|0)|0;o=0;k=s;return o|0}_r(i,e+56|0,4);_r(i+4|0,e+60|0,4);i=i+8|0;t=t+-8|0;if(t&3){Jr(r,1,19080,s+16|0)|0;o=0;k=s;return o|0}t=t>>>2;n=e+64|0;h[n>>2]=t;if(t){t=Xn(t,4)|0;h[e+68>>2]=t;if(!t){Jr(r,1,19116,a)|0;o=0;k=s;return o|0}if(h[n>>2]|0){e=e+68|0;t=0;while(1){_r(i,(h[e>>2]|0)+(t<<2)|0,4);t=t+1|0;if(t>>>0>=(h[n>>2]|0)>>>0)break;else i=i+4|0}}}h[o>>2]=h[o>>2]|2;o=1;k=s;return o|0}function kt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0;x=k;k=k+96|0;M=x+72|0;w=x+64|0;v=x+56|0;b=x+48|0;y=x+40|0;_=x+32|0;g=x+24|0;p=x+16|0;m=x+8|0;c=x+80|0;d=x+76|0;T=e+100|0;if(!(h[T>>2]&2)){Jr(r,1,18698,x)|0;C=0;k=x;return C|0}u=e+104|0;h[u>>2]=0;do if(t){f=i;i=0;e:while(1){if(t>>>0<8){C=6;break}_r(f,c,4);n=h[c>>2]|0;_r(f+4|0,c,4);s=h[c>>2]|0;switch(n|0){case 0:{C=14;break e}case 1:{if(t>>>0<16){C=9;break e}_r(f+8|0,d,4);if(h[d>>2]|0){C=11;break e}_r(f+12|0,c,4);n=h[c>>2]|0;if(!n){C=13;break e}else a=16;break}default:a=8}if(n>>>0<a>>>0){C=16;break}if(t>>>0<n>>>0){C=19;break}o=(s|0)==1768449138;if(!o)if((s|0)!=1668246642)if((s|0)!=1651532643)if((s|0)!=1885564018)if((s|0)!=1668112752)if((s|0)==1667523942){l=1148;C=26}else h[u>>2]=h[u>>2]|2147483647;else{l=1140;C=26}else{l=1132;C=26}else{l=1124;C=26}else{l=1116;C=26}else{l=1108;C=26}if((C|0)==26?(C=0,(Fl[h[l+4>>2]&63](e,f+a|0,n-a|0,r)|0)==0):0){i=0;C=32;break}i=o?1:i;if((t|0)==(n|0)){C=29;break}else{f=f+n|0;t=t-n|0}}if((C|0)==6)Jr(r,1,18743,m)|0;else if((C|0)==9)Jr(r,1,18783,p)|0;else if((C|0)==11)Jr(r,1,17167,g)|0;else if((C|0)==13)Jr(r,1,17237,_)|0;else if((C|0)==14)Jr(r,1,17237,y)|0;else if((C|0)==16)Jr(r,1,18827,b)|0;else if((C|0)==19){Jr(r,1,18899,w)|0;C=0;k=x;return C|0}else if((C|0)==29){if(!i)break;h[T>>2]=h[T>>2]|4;C=1;k=x;return C|0}else if((C|0)==32){k=x;return i|0}Jr(r,1,18856,v)|0;C=0;k=x;return C|0}while(0);Jr(r,1,18971,M)|0;C=0;k=x;return C|0}function _t(){return 8}function yt(){return 32}function Tt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;if(!r)return;else n=0;do{u=e+(n<<2)|0;s=h[u>>2]|0;f=i+(n<<2)|0;o=h[f>>2]|0;a=t+(n<<2)|0;l=h[a>>2]|0;h[u>>2]=(o<<1)+s+l>>2;h[f>>2]=l-o;h[a>>2]=s-o;n=n+1|0}while((n|0)!=(r|0));return}function Mt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;if(!r)return;else n=0;do{l=e+(n<<2)|0;f=i+(n<<2)|0;o=h[f>>2]|0;a=t+(n<<2)|0;u=h[a>>2]|0;s=(h[l>>2]|0)-(u+o>>2)|0;h[l>>2]=s+u;h[f>>2]=s;h[a>>2]=s+o;n=n+1|0}while((n|0)!=(r|0));return}function Ct(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0;if(!r)return;else n=0;do{m=e+(n<<2)|0;k=h[m>>2]|0;l=i+(n<<2)|0;g=h[l>>2]|0;a=t+(n<<2)|0;p=h[a>>2]|0;f=((k|0)<0)<<31>>31;v=Zf(k|0,f|0,2449,0)|0;v=Wf(v|0,H|0,4096,0)|0;v=Gf(v|0,H|0,13)|0;s=((g|0)<0)<<31>>31;w=Zf(g|0,s|0,4809,0)|0;w=Wf(w|0,H|0,4096,0)|0;w=Gf(w|0,H|0,13)|0;o=((p|0)<0)<<31>>31;b=Zf(p|0,o|0,934,0)|0;b=Wf(b|0,H|0,4096,0)|0;b=Gf(b|0,H|0,13)|0;u=Zf(k|0,f|0,1382,0)|0;u=Wf(u|0,H|0,4096,0)|0;u=Gf(u|0,H|0,13)|0;c=Zf(g|0,s|0,2714,0)|0;c=Wf(c|0,H|0,4096,0)|0;c=Gf(c|0,H|0,13)|0;d=qf(p|0,o|0,12)|0;d=Wf(d|0,H|0,4096,0)|0;d=Gf(d|0,H|0,13)|0;f=qf(k|0,f|0,12)|0;f=Wf(f|0,H|0,4096,0)|0;f=Gf(f|0,H|0,13)|0;s=Zf(g|0,s|0,3430,0)|0;s=Wf(s|0,H|0,4096,0)|0;s=Gf(s|0,H|0,13)|0;o=Zf(p|0,o|0,666,0)|0;o=Wf(o|0,H|0,4096,0)|0;o=Gf(o|0,H|0,13)|0;h[m>>2]=w+v+b;h[l>>2]=d-(c+u);h[a>>2]=f-s-o;n=n+1|0}while((n|0)!=(r|0));return}function xt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;if(!r)return;else n=0;do{u=e+(n<<2)|0;s=+w[u>>2];f=i+(n<<2)|0;o=+w[f>>2];a=t+(n<<2)|0;l=+w[a>>2];w[u>>2]=s+l*1.4019999504089355;w[f>>2]=s-o*.3441300094127655-l*.714139997959137;w[a>>2]=s+o*1.7719999551773071;n=n+1|0}while((n|0)!=(r|0));return}function Et(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;a=ue(r,r)|0;d=Gn(a+r<<2)|0;if(!d){r=0;return r|0}if(a){o=0;n=e;while(1){h[d+(o+r<<2)>>2]=~~(+w[n>>2]*8192);o=o+1|0;if((o|0)==(a|0))break;else n=n+4|0}}if(i){u=(r|0)==0;c=0;do{if(!u){n=0;do{h[d+(n<<2)>>2]=h[h[t+(n<<2)>>2]>>2];n=n+1|0}while((n|0)!=(r|0));if(!u){e=0;f=d;do{f=f+(r<<2)|0;a=t+(e<<2)|0;n=h[a>>2]|0;h[n>>2]=0;o=0;s=0;l=f;while(1){m=h[l>>2]|0;b=h[d+(s<<2)>>2]|0;m=Zf(b|0,((b|0)<0)<<31>>31|0,m|0,((m|0)<0)<<31>>31|0)|0;m=Wf(m|0,H|0,4096,0)|0;m=Gf(m|0,H|0,13)|0;o=m+o|0;h[n>>2]=o;s=s+1|0;if((s|0)==(r|0))break;else l=l+4|0}h[a>>2]=n+4;e=e+1|0}while((e|0)!=(r|0))}}c=c+1|0}while((c|0)!=(i|0))}Qn(d);b=1;return b|0}function St(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;u=Gn(r<<3)|0;if(!u){r=0;return r|0}if(i){c=(r|0)==0;d=0;do{if(!c){n=0;do{h[u+(n<<2)>>2]=h[h[t+(n<<2)>>2]>>2];n=n+1|0}while((n|0)!=(r|0));if(!c){f=0;l=e;while(1){n=u+(f+r<<2)|0;w[n>>2]=0;a=0;o=0;s=l;while(1){a=a+ +w[s>>2]*+w[u+(o<<2)>>2];w[n>>2]=a;o=o+1|0;if((o|0)==(r|0))break;else s=s+4|0}o=t+(f<<2)|0;s=h[o>>2]|0;h[o>>2]=s+4;w[s>>2]=a;f=f+1|0;if((f|0)==(r|0))break;else l=l+(r<<2)|0}}}d=d+1|0}while((d|0)!=(i|0))}Qn(u);r=1;return r|0}function At(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;if(!i)return;else s=0;do{o=e+(s<<3)|0;p[o>>3]=0;r=0;n=0;a=s;while(1){f=+w[t+(a<<2)>>2];r=r+f*f;n=n+1|0;if((n|0)==(i|0))break;else a=a+i|0}f=+Q(+r);p[o>>3]=f;s=s+1|0}while((s|0)!=(i|0));return}function Pt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0;I=k;k=k+32|0;E=I+28|0;y=I+24|0;T=I+20|0;M=I+16|0;C=I+12|0;x=I+8|0;s=I+4|0;f=I;r=i+76|0;A=h[r>>2]|0;S=A+(t*5640|0)+420|0;P=(h[S>>2]|0)+1|0;l=e+16|0;_=Gn((h[l>>2]|0)*528|0)|0;if(!_){P=0;k=I;return P|0}g=Gn(h[l>>2]<<2)|0;if(!g){Qn(_);P=0;k=I;return P|0}r=Bt(e,h[r>>2]|0,t)|0;if(!r){Qn(_);Qn(g);P=0;k=I;return P|0}n=h[l>>2]|0;if(n){a=0;o=_;while(1){h[g+(a<<2)>>2]=o;a=a+1|0;if(a>>>0>=n>>>0)break;else o=o+528|0}}Nt(e,i,t,T,M,C,x,s,f,y,E,g);w=h[y>>2]|0;b=ue(h[l>>2]|0,w)|0;v=ue(h[E>>2]|0,b)|0;p=A+(t*5640|0)+8|0;m=Xn(ue((h[p>>2]|0)+1|0,v)|0,2)|0;a=r+4|0;h[a>>2]=m;if(!m){Qn(_);Qn(g);n=h[a>>2]|0;if(n){Qn(n);h[a>>2]=0}if(P){e=r;u=0;while(1){l=e+196|0;n=h[l>>2]|0;if(n){i=e+192|0;a=h[i>>2]|0;if(a){f=0;while(1){o=n+12|0;s=h[o>>2]|0;if(s){Qn(s);h[o>>2]=0;a=h[i>>2]|0}f=f+1|0;if(f>>>0>=a>>>0)break;else n=n+16|0}n=h[l>>2]|0}Qn(n);h[l>>2]=0}u=u+1|0;if((u|0)==(P|0))break;else e=e+232|0}}Qn(r);P=0;k=I;return P|0}n=h[r+196>>2]|0;m=h[e+24>>2]|0;h[r+200>>2]=h[T>>2];h[r+204>>2]=h[C>>2];h[r+208>>2]=h[M>>2];h[r+212>>2]=h[x>>2];h[r+20>>2]=1;h[r+16>>2]=w;h[r+12>>2]=b;h[r+8>>2]=v;l=h[r+192>>2]|0;if(l){e=0;i=m;while(1){o=h[n+12>>2]|0;a=h[g+(e<<2)>>2]|0;h[n>>2]=h[i>>2];h[n+4>>2]=h[i+4>>2];f=h[n+8>>2]|0;if(f){s=0;while(1){h[o>>2]=h[a>>2];h[o+4>>2]=h[a+4>>2];h[o+8>>2]=h[a+8>>2];h[o+12>>2]=h[a+12>>2];s=s+1|0;if(s>>>0>=f>>>0)break;else{a=a+16|0;o=o+16|0}}}e=e+1|0;if(e>>>0>=l>>>0)break;else{n=n+16|0;i=i+52|0}}}if(P>>>0>1){l=r;d=1;do{n=h[l+428>>2]|0;h[l+432>>2]=h[T>>2];h[l+436>>2]=h[C>>2];h[l+440>>2]=h[M>>2];h[l+444>>2]=h[x>>2];h[l+252>>2]=1;h[l+248>>2]=w;h[l+244>>2]=b;h[l+240>>2]=v;e=h[l+424>>2]|0;if(e){u=0;i=m;while(1){o=h[n+12>>2]|0;a=h[g+(u<<2)>>2]|0;h[n>>2]=h[i>>2];h[n+4>>2]=h[i+4>>2];f=h[n+8>>2]|0;if(f){s=0;while(1){h[o>>2]=h[a>>2];h[o+4>>2]=h[a+4>>2];h[o+8>>2]=h[a+8>>2];h[o+12>>2]=h[a+12>>2];s=s+1|0;if(s>>>0>=f>>>0)break;else{a=a+16|0;o=o+16|0}}}u=u+1|0;if(u>>>0>=e>>>0)break;else{n=n+16|0;i=i+52|0}}}h[l+236>>2]=h[l+4>>2];l=l+232|0;d=d+1|0}while((d|0)!=(P|0))}Qn(_);Qn(g);l=h[y>>2]|0;if(!(c[A+(t*5640|0)+5636>>0]&4)){i=h[E>>2]|0;f=(h[S>>2]|0)+1|0;if(!f){P=r;k=I;return P|0}s=h[A+(t*5640|0)+4>>2]|0;n=h[p>>2]|0;a=r;o=0;while(1){h[a+80>>2]=s;h[a+40>>2]=1;h[a+44>>2]=0;h[a+48>>2]=0;h[a+64>>2]=0;h[a+68>>2]=0;h[a+56>>2]=i;h[a+60>>2]=h[a+192>>2];h[a+52>>2]=n;h[a+72>>2]=l;o=o+1|0;if((o|0)==(f|0))break;else a=a+232|0}k=I;return r|0}else{o=(h[S>>2]|0)+1|0;if(!o){P=r;k=I;return P|0}s=r;n=A+(t*5640|0)+424|0;a=0;while(1){h[s+80>>2]=h[n+36>>2];h[s+40>>2]=1;h[s+44>>2]=h[n>>2];h[s+48>>2]=h[n+4>>2];h[s+64>>2]=0;h[s+68>>2]=0;h[s+56>>2]=h[n+12>>2];h[s+60>>2]=h[n+16>>2];h[s+52>>2]=h[n+8>>2];h[s+72>>2]=l;a=a+1|0;if((a|0)==(o|0))break;else{s=s+232|0;n=n+148|0}}k=I;return r|0}return 0}function It(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;if(!e)return;t=e+4|0;r=h[t>>2]|0;if(r){Qn(r);h[t>>2]=0}if(i){l=e;u=0;while(1){f=l+196|0;t=h[f>>2]|0;if(t){s=l+192|0;r=h[s>>2]|0;if(r){o=0;while(1){n=t+12|0;a=h[n>>2]|0;if(a){Qn(a);h[n>>2]=0;r=h[s>>2]|0}o=o+1|0;if(o>>>0>=r>>>0)break;else t=t+16|0}t=h[f>>2]|0}Qn(t);h[f>>2]=0}u=u+1|0;if((u|0)==(i|0))break;else l=l+232|0}}Qn(e);return}function Lt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0;N=k;k=k+32|0;L=N+28|0;I=N+24|0;E=N+20|0;S=N+16|0;A=N+12|0;P=N+8|0;D=N+4|0;R=N;O=i+76|0;T=h[O>>2]|0;B=(h[T+(t*5640|0)+420>>2]|0)+1|0;x=e+16|0;C=Gn((h[x>>2]|0)*528|0)|0;if(!C){t=0;k=N;return t|0}M=Gn(h[x>>2]<<2)|0;if(!M){Qn(C);t=0;k=N;return t|0}n=Bt(e,h[O>>2]|0,t)|0;if(!n){Qn(C);Qn(M);t=0;k=N;return t|0}a=h[x>>2]|0;if(a){o=0;s=C;while(1){h[M+(o<<2)>>2]=s;o=o+1|0;if(o>>>0>=a>>>0)break;else s=s+528|0}}Nt(e,i,t,E,S,A,P,D,R,I,L,M);g=h[I>>2]|0;_=ue(h[x>>2]|0,g)|0;y=ue(h[L>>2]|0,_)|0;c[n>>0]=(m[i+93>>0]|0)>>>3&1;p=Xn(ue(h[T+(t*5640|0)+8>>2]|0,y)|0,2)|0;o=n+4|0;h[o>>2]=p;if(!p){Qn(C);Qn(M);a=h[o>>2]|0;if(a){Qn(a);h[o>>2]=0}if(B){b=n;v=0;while(1){u=b+196|0;a=h[u>>2]|0;if(a){l=b+192|0;o=h[l>>2]|0;if(o){f=0;while(1){s=a+12|0;e=h[s>>2]|0;if(e){Qn(e);h[s>>2]=0;o=h[l>>2]|0}f=f+1|0;if(f>>>0>=o>>>0)break;else a=a+16|0}a=h[u>>2]|0}Qn(a);h[u>>2]=0}v=v+1|0;if((v|0)==(B|0))break;else b=b+232|0}}Qn(n);t=0;k=N;return t|0}a=h[n+196>>2]|0;p=h[e+24>>2]|0;h[n+200>>2]=h[E>>2];h[n+204>>2]=h[A>>2];h[n+208>>2]=h[S>>2];h[n+212>>2]=h[P>>2];h[n+224>>2]=h[D>>2];h[n+228>>2]=h[R>>2];h[n+20>>2]=1;h[n+16>>2]=g;h[n+12>>2]=_;h[n+8>>2]=y;u=h[n+192>>2]|0;if(u){b=0;l=p;while(1){s=h[a+12>>2]|0;o=h[M+(b<<2)>>2]|0;h[a>>2]=h[l>>2];h[a+4>>2]=h[l+4>>2];f=h[a+8>>2]|0;if(f){e=0;while(1){h[s>>2]=h[o>>2];h[s+4>>2]=h[o+4>>2];h[s+8>>2]=h[o+8>>2];h[s+12>>2]=h[o+12>>2];e=e+1|0;if(e>>>0>=f>>>0)break;else{o=o+16|0;s=s+16|0}}}b=b+1|0;if(b>>>0>=u>>>0)break;else{a=a+16|0;l=l+52|0}}}if(B>>>0>1){u=n;w=1;do{a=h[u+428>>2]|0;h[u+432>>2]=h[E>>2];h[u+436>>2]=h[A>>2];h[u+440>>2]=h[S>>2];h[u+444>>2]=h[P>>2];h[u+456>>2]=h[D>>2];h[u+460>>2]=h[R>>2];h[u+252>>2]=1;h[u+248>>2]=g;h[u+244>>2]=_;h[u+240>>2]=y;b=h[u+424>>2]|0;if(b){v=0;l=p;while(1){s=h[a+12>>2]|0;o=h[M+(v<<2)>>2]|0;h[a>>2]=h[l>>2];h[a+4>>2]=h[l+4>>2];f=h[a+8>>2]|0;if(f){e=0;while(1){h[s>>2]=h[o>>2];h[s+4>>2]=h[o+4>>2];h[s+8>>2]=h[o+8>>2];h[s+12>>2]=h[o+12>>2];e=e+1|0;if(e>>>0>=f>>>0)break;else{o=o+16|0;s=s+16|0}}}v=v+1|0;if(v>>>0>=b>>>0)break;else{a=a+16|0;l=l+52|0}}}h[u+236>>2]=h[u+4>>2];u=u+232|0;w=w+1|0}while((w|0)!=(B|0))}Qn(C);Qn(M);do if(c[T+(t*5640|0)+5636>>0]&4){a=d[i>>1]|0;if((a&65535)>2){if(!((r|0)==1|(a&65535)<7))break}else if((r|0)!=1)break;Ft(h[O>>2]|0,t,h[E>>2]|0,h[S>>2]|0,h[A>>2]|0,h[P>>2]|0,h[I>>2]|0,h[D>>2]|0,h[R>>2]|0);t=n;k=N;return t|0}while(0);y=h[x>>2]|0;_=h[E>>2]|0;g=h[S>>2]|0;p=h[A>>2]|0;w=h[P>>2]|0;v=h[I>>2]|0;b=h[L>>2]|0;u=h[D>>2]|0;l=h[R>>2]|0;a=h[O>>2]|0;s=(h[a+(t*5640|0)+420>>2]|0)+1|0;if(!s){t=n;k=N;return t|0}e=h[a+(t*5640|0)+8>>2]|0;f=h[a+(t*5640|0)+4>>2]|0;a=a+(t*5640|0)+424|0;o=0;while(1){h[a+76>>2]=0;h[a+92>>2]=y;h[a+72>>2]=0;h[a+88>>2]=b;h[a+68>>2]=0;h[a+84>>2]=e;h[a+36>>2]=f;h[a+80>>2]=0;h[a+96>>2]=v;h[a+100>>2]=_;h[a+104>>2]=g;h[a+108>>2]=p;h[a+112>>2]=w;h[a+116>>2]=u;h[a+120>>2]=l;o=o+1|0;if((o|0)==(s|0))break;else a=a+148|0}k=N;return n|0}function Dt(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0;j=h[i+76>>2]|0;Y=j+(t*5640|0)+424+(r*148|0)+36|0;V=Zn(h[Y>>2]|0)|0;h[e+(r*232|0)+40>>2]=1;q=e+(r*232|0)+44|0;h[e+(r*232|0)+80>>2]=h[Y>>2];do if(c[i+93>>0]&8){s=d[i>>1]|0;if((s&65535)>2){if(!((o|0)==1&(s&65535)>6|(s+-3&65535)<4))break}else if(!((o|0)==1|(s+-3&65535)<4))break;s=a+1|0;e:do if((s|0)<4){o=j+(t*5640|0)+424+(r*148|0)+72|0;f=j+(t*5640|0)+424+(r*148|0)+88|0;l=e+(r*232|0)+56|0;u=j+(t*5640|0)+424+(r*148|0)+76|0;m=e+(r*232|0)+48|0;b=j+(t*5640|0)+424+(r*148|0)+92|0;v=e+(r*232|0)+60|0;w=j+(t*5640|0)+424+(r*148|0)+68|0;p=e+(r*232|0)+64|0;g=j+(t*5640|0)+424+(r*148|0)+84|0;k=e+(r*232|0)+52|0;_=j+(t*5640|0)+424+(r*148|0)+80|0;y=e+(r*232|0)+68|0;T=j+(t*5640|0)+424+(r*148|0)+96|0;M=e+(r*232|0)+72|0;C=j+(t*5640|0)+424+(r*148|0)+100|0;x=e+(r*232|0)+96|0;E=j+(t*5640|0)+424+(r*148|0)+108|0;S=e+(r*232|0)+104|0;A=j+(t*5640|0)+424+(r*148|0)+104|0;P=e+(r*232|0)+100|0;I=j+(t*5640|0)+424+(r*148|0)+112|0;L=e+(r*232|0)+108|0;while(1){i:do switch(c[V+s>>0]|0){case 82:{h[q>>2]=h[o>>2];h[l>>2]=h[f>>2];break}case 67:{h[m>>2]=h[u>>2];h[v>>2]=h[b>>2];break}case 76:{h[p>>2]=h[w>>2];h[k>>2]=h[g>>2];break}case 80:if((h[Y>>2]|0)>>>0<2){h[y>>2]=h[_>>2];h[M>>2]=h[T>>2];break i}else{h[x>>2]=h[C>>2];h[S>>2]=h[E>>2];h[P>>2]=h[A>>2];h[L>>2]=h[I>>2];break i}default:{}}while(0);s=s+1|0;if((s|0)==4)break e}}while(0);s=(a|0)>-1;if(!n){if(!s)return;l=j+(t*5640|0)+424+(r*148|0)+76|0;u=j+(t*5640|0)+424+(r*148|0)+132|0;m=e+(r*232|0)+48|0;b=e+(r*232|0)+60|0;v=j+(t*5640|0)+424+(r*148|0)+72|0;w=j+(t*5640|0)+424+(r*148|0)+128|0;p=e+(r*232|0)+56|0;g=j+(t*5640|0)+424+(r*148|0)+68|0;k=j+(t*5640|0)+424+(r*148|0)+124|0;_=e+(r*232|0)+64|0;y=e+(r*232|0)+52|0;T=j+(t*5640|0)+424+(r*148|0)+80|0;M=j+(t*5640|0)+424+(r*148|0)+136|0;C=e+(r*232|0)+68|0;x=e+(r*232|0)+72|0;E=j+(t*5640|0)+424+(r*148|0)+100|0;S=j+(t*5640|0)+424+(r*148|0)+140|0;A=j+(t*5640|0)+424+(r*148|0)+108|0;P=j+(t*5640|0)+424+(r*148|0)+144|0;I=e+(r*232|0)+96|0;L=j+(t*5640|0)+424+(r*148|0)+116|0;n=e+(r*232|0)+100|0;D=e+(r*232|0)+104|0;f=j+(t*5640|0)+424+(r*148|0)+120|0;o=e+(r*232|0)+108|0;s=a;while(1){e:do switch(c[V+s>>0]|0){case 67:{r=h[l>>2]|0;h[m>>2]=r;r=r+1|0;h[b>>2]=r;h[u>>2]=r;break}case 82:{r=h[v>>2]|0;h[q>>2]=r;r=r+1|0;h[p>>2]=r;h[w>>2]=r;break}case 76:{r=h[g>>2]|0;h[_>>2]=r;r=r+1|0;h[y>>2]=r;h[k>>2]=r;break}case 80:if((h[Y>>2]|0)>>>0<2){r=h[T>>2]|0;h[C>>2]=r;r=r+1|0;h[x>>2]=r;h[M>>2]=r;break e}else{r=h[E>>2]|0;a=h[A>>2]|0;h[I>>2]=r;t=h[L>>2]|0;t=t+r-((r>>>0)%(t>>>0)|0)|0;h[n>>2]=t;h[D>>2]=a;r=h[f>>2]|0;r=r+a-((a>>>0)%(r>>>0)|0)|0;h[o>>2]=r;h[S>>2]=t;h[P>>2]=r;break e}default:{}}while(0);if((s|0)>0)s=s+-1|0;else break}return}if(!s)return;N=j+(t*5640|0)+424+(r*148|0)+128|0;F=j+(t*5640|0)+424+(r*148|0)+88|0;U=j+(t*5640|0)+424+(r*148|0)+72|0;H=e+(r*232|0)+56|0;z=j+(t*5640|0)+424+(r*148|0)+132|0;b=j+(t*5640|0)+424+(r*148|0)+92|0;v=j+(t*5640|0)+424+(r*148|0)+76|0;w=e+(r*232|0)+48|0;p=e+(r*232|0)+60|0;g=j+(t*5640|0)+424+(r*148|0)+124|0;k=j+(t*5640|0)+424+(r*148|0)+84|0;_=j+(t*5640|0)+424+(r*148|0)+68|0;y=e+(r*232|0)+64|0;T=e+(r*232|0)+52|0;M=j+(t*5640|0)+424+(r*148|0)+136|0;C=j+(t*5640|0)+424+(r*148|0)+96|0;x=j+(t*5640|0)+424+(r*148|0)+80|0;E=e+(r*232|0)+68|0;S=e+(r*232|0)+72|0;A=j+(t*5640|0)+424+(r*148|0)+140|0;P=j+(t*5640|0)+424+(r*148|0)+104|0;I=e+(r*232|0)+96|0;L=j+(t*5640|0)+424+(r*148|0)+116|0;n=e+(r*232|0)+100|0;D=j+(t*5640|0)+424+(r*148|0)+144|0;R=j+(t*5640|0)+424+(r*148|0)+112|0;O=e+(r*232|0)+104|0;B=j+(t*5640|0)+424+(r*148|0)+120|0;u=e+(r*232|0)+108|0;m=j+(t*5640|0)+424+(r*148|0)+100|0;l=j+(t*5640|0)+424+(r*148|0)+108|0;f=a;s=1;while(1){o=V+f|0;e:do switch(c[o>>0]|0){case 67:{a=h[z>>2]|0;h[w>>2]=a+-1;h[p>>2]=a;break}case 82:{a=h[N>>2]|0;h[q>>2]=a+-1;h[H>>2]=a;break}case 76:{a=h[g>>2]|0;h[y>>2]=a+-1;h[T>>2]=a;break}case 80:if((h[Y>>2]|0)>>>0<2){a=h[M>>2]|0;h[E>>2]=a+-1;h[S>>2]=a;break e}else{a=h[A>>2]|0;j=h[L>>2]|0;h[I>>2]=a-j-((a>>>0)%(j>>>0)|0);h[n>>2]=a;a=h[D>>2]|0;j=h[B>>2]|0;h[O>>2]=a-j-((a>>>0)%(j>>>0)|0);h[u>>2]=a;break e}default:{}}while(0);e:do if((s|0)==1)switch(c[o>>0]|0){case 82:{s=h[N>>2]|0;if((s|0)!=(h[F>>2]|0)){h[q>>2]=s;s=s+1|0;h[H>>2]=s;h[N>>2]=s;s=0;break e}if(!(Ut(f+-1|0,i,t,r,V)|0)){s=0;break e}s=h[U>>2]|0;h[q>>2]=s;s=s+1|0;h[H>>2]=s;h[N>>2]=s;s=1;break e}case 67:{s=h[z>>2]|0;if((s|0)!=(h[b>>2]|0)){h[w>>2]=s;s=s+1|0;h[p>>2]=s;h[z>>2]=s;s=0;break e}if(!(Ut(f+-1|0,i,t,r,V)|0)){s=0;break e}s=h[v>>2]|0;h[w>>2]=s;s=s+1|0;h[p>>2]=s;h[z>>2]=s;s=1;break e}case 76:{s=h[g>>2]|0;if((s|0)!=(h[k>>2]|0)){h[y>>2]=s;s=s+1|0;h[T>>2]=s;h[g>>2]=s;s=0;break e}if(!(Ut(f+-1|0,i,t,r,V)|0)){s=0;break e}s=h[_>>2]|0;h[y>>2]=s;s=s+1|0;h[T>>2]=s;h[g>>2]=s;s=1;break e}case 80:{if((h[Y>>2]|0)>>>0<2){s=h[M>>2]|0;if((s|0)!=(h[C>>2]|0)){h[E>>2]=s;s=s+1|0;h[S>>2]=s;h[M>>2]=s;s=0;break e}if(!(Ut(f+-1|0,i,t,r,V)|0)){s=0;break e}s=h[x>>2]|0;h[E>>2]=s;s=s+1|0;h[S>>2]=s;h[M>>2]=s;s=1;break e}s=h[A>>2]|0;if(s>>>0<(h[P>>2]|0)>>>0){h[I>>2]=s;a=h[L>>2]|0;s=a+s-((s>>>0)%(a>>>0)|0)|0;h[n>>2]=s;h[A>>2]=s;s=0;break e}o=h[D>>2]|0;if(o>>>0<(h[R>>2]|0)>>>0){h[O>>2]=o;a=h[B>>2]|0;s=0;o=a+o-((o>>>0)%(a>>>0)|0)|0}else{if(!(Ut(f+-1|0,i,t,r,V)|0)){s=0;break e}a=h[l>>2]|0;h[D>>2]=a;h[O>>2]=a;o=h[B>>2]|0;s=1;o=o+a-((a>>>0)%(o>>>0)|0)|0}h[u>>2]=o;h[D>>2]=o;j=h[m>>2]|0;h[I>>2]=j;a=h[L>>2]|0;a=a+j-((j>>>0)%(a>>>0)|0)|0;h[n>>2]=a;h[A>>2]=a;break e}default:{s=1;break e}}while(0);if((f|0)>0)f=f+-1|0;else break}return}while(0);h[q>>2]=h[j+(t*5640|0)+424+(r*148|0)+72>>2];h[e+(r*232|0)+56>>2]=h[j+(t*5640|0)+424+(r*148|0)+88>>2];h[e+(r*232|0)+48>>2]=h[j+(t*5640|0)+424+(r*148|0)+76>>2];h[e+(r*232|0)+60>>2]=h[j+(t*5640|0)+424+(r*148|0)+92>>2];h[e+(r*232|0)+64>>2]=h[j+(t*5640|0)+424+(r*148|0)+68>>2];h[e+(r*232|0)+52>>2]=h[j+(t*5640|0)+424+(r*148|0)+84>>2];h[e+(r*232|0)+68>>2]=h[j+(t*5640|0)+424+(r*148|0)+80>>2];h[e+(r*232|0)+72>>2]=h[j+(t*5640|0)+424+(r*148|0)+96>>2];h[e+(r*232|0)+96>>2]=h[j+(t*5640|0)+424+(r*148|0)+100>>2];h[e+(r*232|0)+104>>2]=h[j+(t*5640|0)+424+(r*148|0)+108>>2];h[e+(r*232|0)+100>>2]=h[j+(t*5640|0)+424+(r*148|0)+104>>2];h[e+(r*232|0)+108>>2]=h[j+(t*5640|0)+424+(r*148|0)+112>>2];return}function Rt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0;D=h[i+76>>2]|0;O=h[i+24>>2]|0;F=(t>>>0)%(O>>>0)|0;O=(t>>>0)/(O>>>0)|0;B=h[i+4>>2]|0;L=h[i+12>>2]|0;I=(ue(L,F)|0)+B|0;
N=h[e>>2]|0;N=(I|0)>(N|0)?I:N;B=(ue(L,F+1|0)|0)+B|0;F=h[e+8>>2]|0;F=(B|0)<(F|0)?B:F;B=h[i+8>>2]|0;L=h[i+16>>2]|0;I=(ue(L,O)|0)+B|0;R=h[e+4>>2]|0;R=(I|0)>(R|0)?I:R;B=(ue(L,O+1|0)|0)+B|0;O=h[e+12>>2]|0;O=(B|0)<(O|0)?B:O;B=h[e+16>>2]|0;if(!B){l=0;f=2147483647;s=2147483647;o=0}else{S=O+-1|0;A=F+-1|0;P=R+-1|0;I=N+-1|0;l=0;f=2147483647;s=2147483647;o=0;L=0;x=h[e+24>>2]|0;E=h[D+(t*5640|0)+5584>>2]|0;while(1){T=h[x>>2]|0;M=h[x+4>>2]|0;C=h[E+4>>2]|0;o=C>>>0>o>>>0?C:o;if(C){_=(S+M|0)/(M|0)|0;g=(A+T|0)/(T|0)|0;w=(P+M|0)/(M|0)|0;b=(I+T|0)/(T|0)|0;b=Wf(b|0,((b|0)<0)<<31>>31|0,-1,-1)|0;v=H;w=Wf(w|0,((w|0)<0)<<31>>31|0,-1,-1)|0;p=H;g=Wf(g|0,((g|0)<0)<<31>>31|0,-1,-1)|0;k=H;_=Wf(_|0,((_|0)<0)<<31>>31|0,-1,-1)|0;y=H;i=0;m=0;while(1){u=h[E+812+(m<<2)>>2]|0;d=h[E+944+(m<<2)>>2]|0;n=i+-1+C|0;a=T<<n+u;U=M<<d+n;f=f>>>0<a>>>0?f:a;s=s>>>0<U>>>0?s:U;U=qf(1,0,n|0)|0;a=H;i=Wf(b|0,v|0,U|0,a|0)|0;i=Yf(i|0,H|0,n|0)|0;r=Wf(w|0,p|0,U|0,a|0)|0;r=Yf(r|0,H|0,n|0)|0;e=Wf(g|0,k|0,U|0,a|0)|0;e=Yf(e|0,H|0,n|0)|0;a=Wf(_|0,y|0,U|0,a|0)|0;n=Yf(a|0,H|0,n|0)|0;a=qf(1,0,d|0)|0;a=Wf(a|0,H|0,-1,-1)|0;a=Wf(a|0,H|0,n|0,((n|0)<0)<<31>>31|0)|0;a=Yf(a|0,H|0,d|0)|0;if((i|0)==(e|0))i=0;else{U=qf(1,0,u|0)|0;U=Wf(U|0,H|0,-1,-1)|0;U=Wf(U|0,H|0,e|0,((e|0)<0)<<31>>31|0)|0;U=Yf(U|0,H|0,u|0)|0;i=(U<<u)-(i>>u<<u)>>u}e=ue(i,(r|0)==(n|0)?0:(a<<d)-(r>>d<<d)>>d)|0;l=e>>>0>l>>>0?e:l;e=m+1|0;if(e>>>0<C>>>0){i=~m;m=e}else break}}L=L+1|0;if(L>>>0>=B>>>0)break;else{x=x+52|0;E=E+1080|0}}}if(c[D+(t*5640|0)+5636>>0]&4){Ft(D,t,N,F,R,O,l,f,s);return}r=(h[D+(t*5640|0)+420>>2]|0)+1|0;if(!r)return;n=h[D+(t*5640|0)+8>>2]|0;a=h[D+(t*5640|0)+4>>2]|0;i=D+(t*5640|0)+424|0;e=0;while(1){h[i+76>>2]=0;h[i+92>>2]=B;h[i+72>>2]=0;h[i+88>>2]=o;h[i+68>>2]=0;h[i+84>>2]=n;h[i+36>>2]=a;h[i+80>>2]=0;h[i+96>>2]=l;h[i+100>>2]=N;h[i+104>>2]=F;h[i+108>>2]=R;h[i+112>>2]=O;h[i+116>>2]=f;h[i+120>>2]=s;e=e+1|0;if((e|0)==(r|0))break;else i=i+148|0}return}function Ot(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ce=0,de=0,he=0,me=0,be=0,ve=0,we=0,pe=0,ge=0,ke=0,_e=0,ye=0,Te=0,Me=0,Ce=0,xe=0,Ee=0,Se=0,Ae=0,Pe=0,Ie=0,Le=0,De=0,Re=0,Oe=0,Be=0,Ne=0,Fe=0,Ue=0,He=0,ze=0,je=0,Ye=0,Ve=0,qe=0,We=0,Ge=0,Xe=0,Ke=0,$e=0,Je=0,Qe=0,Ze=0,ei=0,ii=0,ti=0,ri=0,ni=0,ai=0,oi=0,si=0,fi=0,li=0,ui=0,ci=0,di=0,hi=0;switch(h[e+80>>2]|0){case 0:{i=e+40|0;if(!(h[i>>2]|0)){P=e+32|0;f=P;P=h[P>>2]|0;t=18}else{h[i>>2]=0;g=h[e+64>>2]|0;h[e+36>>2]=g;t=5}while(1){if((t|0)==5){if(g>>>0>=(h[e+52>>2]|0)>>>0){hi=0;t=153;break}C=h[e+44>>2]|0;h[e+28>>2]=C;t=7}else if((t|0)==18){o=P+1|0;h[f>>2]=o;n=f;t=14}while(1){if((t|0)==7){t=0;if(C>>>0>=(h[e+56>>2]|0)>>>0){t=21;break}x=h[e+48>>2]|0;b=e+24|0;h[b>>2]=x}else if((t|0)==14){if(o>>>0<(h[e+72>>2]|0)>>>0){t=16;break}I=e+24|0;u=I;I=h[I>>2]|0;t=19}while(1){if((t|0)==19){t=0;x=I+1|0;h[u>>2]=x;b=u}if(x>>>0>=(h[e+60>>2]|0)>>>0){t=20;break}E=h[e+196>>2]|0;S=h[e+28>>2]|0;if(S>>>0<(h[E+(x<<4)+8>>2]|0)>>>0)break;else{u=b;I=x;t=19}}if((t|0)==20){t=e+28|0;C=(h[t>>2]|0)+1|0;h[t>>2]=C;t=7;continue}i=h[E+(x<<4)+12>>2]|0;if(!(c[e>>0]|0)){di=ue(h[i+(S<<4)+12>>2]|0,h[i+(S<<4)+8>>2]|0)|0;h[e+72>>2]=di}o=h[e+68>>2]|0;n=e+32|0;h[n>>2]=o;t=14}if((t|0)==16){t=0;A=ue(h[e+8>>2]|0,h[e+36>>2]|0)|0;A=(ue(h[e+12>>2]|0,h[e+28>>2]|0)|0)+A|0;A=A+(ue(h[e+16>>2]|0,h[e+24>>2]|0)|0)|0;A=A+(ue(h[e+20>>2]|0,o)|0)|0;A=(h[e+4>>2]|0)+(A<<1)|0;if(!(d[A>>1]|0))break;else{f=n;P=o;t=18;continue}}else if((t|0)==21){t=e+36|0;g=(h[t>>2]|0)+1|0;h[t>>2]=g;t=5;continue}}if((t|0)==153)return hi|0;d[A>>1]=1;e=1;return e|0}case 1:{i=e+40|0;if(!(h[i>>2]|0)){T=e+32|0;s=T;T=h[T>>2]|0;t=38}else{h[i>>2]=0;L=h[e+44>>2]|0;h[e+28>>2]=L;t=25}while(1){if((t|0)==25){if(L>>>0>=(h[e+56>>2]|0)>>>0){hi=0;t=153;break}w=h[e+64>>2]|0;h[e+36>>2]=w;t=27}else if((t|0)==38){a=T+1|0;h[s>>2]=a;r=s;t=34}while(1){if((t|0)==27){t=0;if(w>>>0>=(h[e+52>>2]|0)>>>0){t=41;break}p=h[e+48>>2]|0;m=e+24|0;h[m>>2]=p}else if((t|0)==34){if(a>>>0<(h[e+72>>2]|0)>>>0){t=36;break}M=e+24|0;l=M;M=h[M>>2]|0;t=39}while(1){if((t|0)==39){t=0;p=M+1|0;h[l>>2]=p;m=l}if(p>>>0>=(h[e+60>>2]|0)>>>0){t=40;break}k=h[e+196>>2]|0;_=h[e+28>>2]|0;if(_>>>0<(h[k+(p<<4)+8>>2]|0)>>>0)break;else{l=m;M=p;t=39}}if((t|0)==40){t=e+36|0;w=(h[t>>2]|0)+1|0;h[t>>2]=w;t=27;continue}i=h[k+(p<<4)+12>>2]|0;if(!(c[e>>0]|0)){di=ue(h[i+(_<<4)+12>>2]|0,h[i+(_<<4)+8>>2]|0)|0;h[e+72>>2]=di}a=h[e+68>>2]|0;r=e+32|0;h[r>>2]=a;t=34}if((t|0)==36){t=0;y=ue(h[e+8>>2]|0,h[e+36>>2]|0)|0;y=(ue(h[e+12>>2]|0,h[e+28>>2]|0)|0)+y|0;y=y+(ue(h[e+16>>2]|0,h[e+24>>2]|0)|0)|0;y=y+(ue(h[e+20>>2]|0,a)|0)|0;y=(h[e+4>>2]|0)+(y<<1)|0;if(!(d[y>>1]|0))break;else{s=r;T=a;t=38;continue}}else if((t|0)==41){t=e+28|0;L=(h[t>>2]|0)+1|0;h[t>>2]=L;t=25;continue}}if((t|0)==153)return hi|0;d[y>>1]=1;e=1;return e|0}case 2:{i=e+40|0;if(!(h[i>>2]|0)){ci=e+36|0;qe=ci;ci=h[ci>>2]|0;t=75}else{h[i>>2]=0;m=e+224|0;h[m>>2]=0;b=e+228|0;h[b>>2]=0;v=h[e+192>>2]|0;if(v){w=h[e+196>>2]|0;i=0;t=0;p=0;do{o=h[w+(p<<4)+8>>2]|0;if(o){s=h[w+(p<<4)+12>>2]|0;f=h[w+(p<<4)>>2]|0;l=h[w+(p<<4)+4>>2]|0;u=o+-1|0;r=0;a=0;while(1){n=u+r|0;Ve=f<<n+(h[s+(a<<4)>>2]|0);n=l<<(h[s+(a<<4)+4>>2]|0)+n;i=(i|0)==0?Ve:i>>>0<Ve>>>0?i:Ve;t=(t|0)==0?n:t>>>0<n>>>0?t:n;n=a+1|0;if((n|0)==(o|0))break;else{r=~a;a=n}}h[m>>2]=i;h[b>>2]=t}p=p+1|0}while((p|0)!=(v|0))}if(!(c[e>>0]|0)){h[e+104>>2]=h[e+204>>2];h[e+96>>2]=h[e+200>>2];h[e+108>>2]=h[e+212>>2];h[e+100>>2]=h[e+208>>2]}O=h[e+44>>2]|0;h[e+28>>2]=O;t=54}while(1){if((t|0)==54){if(O>>>0>=(h[e+56>>2]|0)>>>0){hi=0;t=153;break}Ke=h[e+104>>2]|0;h[e+220>>2]=Ke;t=56}else if((t|0)==75){li=ci+1|0;h[qe>>2]=li;We=qe;t=71}while(1){if((t|0)==56){if((Ke|0)>=(h[e+108>>2]|0)){t=79;break}$e=h[e+96>>2]|0;h[e+216>>2]=$e;t=58}else if((t|0)==71){if(li>>>0<(h[e+52>>2]|0)>>>0){t=73;break}di=e+24|0;Ge=di;di=h[di>>2]|0;t=76}while(1){if((t|0)==58){if(($e|0)>=(h[e+100>>2]|0)){t=78;break}Je=h[e+48>>2]|0;Xe=e+24|0;h[Xe>>2]=Je}else if((t|0)==76){Je=di+1|0;h[Ge>>2]=Je;Xe=Ge}if(Je>>>0>=(h[e+60>>2]|0)>>>0){$e=h[e+224>>2]|0;t=e+216|0;Ve=h[t>>2]|0;$e=Ve+$e-((Ve|0)%($e|0)|0)|0;h[t>>2]=$e;t=58;continue}t=h[e+196>>2]|0;l=h[e+28>>2]|0;i=h[t+(Je<<4)+8>>2]|0;if(l>>>0>=i>>>0){Ge=Xe;di=Je;t=76;continue}u=h[t+(Je<<4)+12>>2]|0;a=i+~l|0;o=h[e+200>>2]|0;s=h[t+(Je<<4)>>2]|0;Qe=s<<a;Ze=(o+-1+Qe|0)/(Qe|0)|0;f=h[e+204>>2]|0;Ve=h[t+(Je<<4)+4>>2]|0;ei=Ve<<a;ii=(f+-1+ei|0)/(ei|0)|0;ti=Qe+-1|0;i=(ti+(h[e+208>>2]|0)|0)/(Qe|0)|0;ri=ei+-1|0;t=(ri+(h[e+212>>2]|0)|0)/(ei|0)|0;ni=h[u+(l<<4)>>2]|0;r=ni+a|0;ai=h[u+(l<<4)+4>>2]|0;n=ai+a|0;oi=h[e+220>>2]|0;if((oi|0)%(Ve<<n|0)|0){if((oi|0)!=(f|0)){Ge=Xe;di=Je;t=76;continue}if(!((ii<<a|0)%(1<<n|0)|0)){Ge=Xe;di=Je;t=76;continue}}si=h[e+216>>2]|0;if((si|0)%(s<<r|0)|0){if((si|0)!=(o|0)){Ge=Xe;di=Je;t=76;continue}if(!((Ze<<a|0)%(1<<r|0)|0)){Ge=Xe;di=Je;t=76;continue}}fi=h[u+(l<<4)+8>>2]|0;if(!fi){Ge=Xe;di=Je;t=76;continue}if((ii|0)==(t|0)|((Ze|0)==(i|0)?1:(h[u+(l<<4)+12>>2]|0)==0)){Ge=Xe;di=Je;t=76}else{t=70;break}}if((t|0)==70){li=(((ti+si|0)/(Qe|0)|0)>>ni)-(Ze>>ni)+(ue((((ri+oi|0)/(ei|0)|0)>>ai)-(ii>>ai)|0,fi)|0)|0;h[e+32>>2]=li;li=h[e+64>>2]|0;We=e+36|0;h[We>>2]=li;t=71;continue}else if((t|0)==78){Ke=h[e+228>>2]|0;t=e+220|0;Ve=h[t>>2]|0;Ke=Ve+Ke-((Ve|0)%(Ke|0)|0)|0;h[t>>2]=Ke;t=56;continue}}if((t|0)==73){t=0;ui=ue(h[e+8>>2]|0,li)|0;ui=(ue(h[e+12>>2]|0,h[e+28>>2]|0)|0)+ui|0;ui=ui+(ue(h[e+16>>2]|0,h[e+24>>2]|0)|0)|0;ui=ui+(ue(h[e+20>>2]|0,h[e+32>>2]|0)|0)|0;ui=(h[e+4>>2]|0)+(ui<<1)|0;if(!(d[ui>>1]|0))break;else{qe=We;ci=li;t=75;continue}}else if((t|0)==79){t=e+28|0;O=(h[t>>2]|0)+1|0;h[t>>2]=O;t=54;continue}}if((t|0)==153)return hi|0;d[ui>>1]=1;e=1;return e|0}case 3:{t=e+40|0;if(!(h[t>>2]|0)){Ye=h[e+24>>2]|0;Be=e+36|0;be=Be;Be=h[Be>>2]|0;Ue=Ye;Ye=(h[e+196>>2]|0)+(Ye<<4)|0;t=113}else{h[t>>2]=0;m=e+224|0;h[m>>2]=0;b=e+228|0;h[b>>2]=0;v=h[e+192>>2]|0;if(v){w=h[e+196>>2]|0;i=0;t=0;p=0;do{o=h[w+(p<<4)+8>>2]|0;if(o){s=h[w+(p<<4)+12>>2]|0;f=h[w+(p<<4)>>2]|0;l=h[w+(p<<4)+4>>2]|0;u=o+-1|0;r=0;a=0;while(1){n=u+r|0;di=f<<n+(h[s+(a<<4)>>2]|0);n=l<<(h[s+(a<<4)+4>>2]|0)+n;i=(i|0)==0?di:i>>>0<di>>>0?i:di;t=(t|0)==0?n:t>>>0<n>>>0?t:n;n=a+1|0;if((n|0)==(o|0))break;else{r=~a;a=n}}h[m>>2]=i;h[b>>2]=t}p=p+1|0}while((p|0)!=(v|0))}if(!(c[e>>0]|0)){i=h[e+204>>2]|0;h[e+104>>2]=i;h[e+96>>2]=h[e+200>>2];h[e+108>>2]=h[e+212>>2];h[e+100>>2]=h[e+208>>2]}else i=h[e+104>>2]|0;h[e+220>>2]=i;t=93}while(1){if((t|0)==93){if((i|0)>=(h[e+108>>2]|0)){hi=0;t=153;break}ge=h[e+96>>2]|0;h[e+216>>2]=ge;t=95}else if((t|0)==113){De=Be+1|0;h[be>>2]=De;ve=be;Re=Ue;je=Ye;t=109}while(1){if((t|0)==95){if((ge|0)>=(h[e+100>>2]|0)){t=117;break}ke=h[e+48>>2]|0;h[e+24>>2]=ke;t=97}else if((t|0)==109){if(De>>>0<(h[e+52>>2]|0)>>>0){t=111;break}Ne=e+28|0;we=Ne;Ne=h[Ne>>2]|0;He=Re;Ve=je;t=114}while(1){if((t|0)==97){if(ke>>>0>=(h[e+60>>2]|0)>>>0){t=116;break}ze=(h[e+196>>2]|0)+(ke<<4)|0;_e=h[e+44>>2]|0;pe=e+28|0;h[pe>>2]=_e;Fe=ke}else if((t|0)==114){_e=Ne+1|0;h[we>>2]=_e;pe=we;Fe=He;ze=Ve}di=h[e+56>>2]|0;t=h[ze+8>>2]|0;if(_e>>>0>=(di>>>0<t>>>0?di:t)>>>0){ke=Fe+1|0;h[e+24>>2]=ke;t=97;continue}u=h[ze+12>>2]|0;t=t+~_e|0;r=h[e+200>>2]|0;n=h[ze>>2]|0;ye=n<<t;Te=(r+-1+ye|0)/(ye|0)|0;a=h[e+204>>2]|0;di=h[ze+4>>2]|0;Me=di<<t;Ce=(a+-1+Me|0)/(Me|0)|0;xe=ye+-1|0;o=(xe+(h[e+208>>2]|0)|0)/(ye|0)|0;Ee=Me+-1|0;s=(Ee+(h[e+212>>2]|0)|0)/(Me|0)|0;Se=h[u+(_e<<4)>>2]|0;f=Se+t|0;Ae=h[u+(_e<<4)+4>>2]|0;l=Ae+t|0;Pe=h[e+220>>2]|0;if((Pe|0)%(di<<l|0)|0){if((Pe|0)!=(a|0)){we=pe;Ne=_e;He=Fe;Ve=ze;t=114;continue}if(!((Ce<<t|0)%(1<<l|0)|0)){we=pe;Ne=_e;He=Fe;Ve=ze;t=114;continue}}Ie=h[e+216>>2]|0;if((Ie|0)%(n<<f|0)|0){if((Ie|0)!=(r|0)){we=pe;Ne=_e;He=Fe;Ve=ze;t=114;continue}if(!((Te<<t|0)%(1<<f|0)|0)){we=pe;Ne=_e;He=Fe;Ve=ze;t=114;continue}}Le=h[u+(_e<<4)+8>>2]|0;if(!Le){we=pe;Ne=_e;He=Fe;Ve=ze;t=114;continue}if((Ce|0)==(s|0)|((Te|0)==(o|0)?1:(h[u+(_e<<4)+12>>2]|0)==0)){we=pe;Ne=_e;He=Fe;Ve=ze;t=114}else{t=108;break}}if((t|0)==108){De=(((xe+Ie|0)/(ye|0)|0)>>Se)-(Te>>Se)+(ue((((Ee+Pe|0)/(Me|0)|0)>>Ae)-(Ce>>Ae)|0,Le)|0)|0;h[e+32>>2]=De;De=h[e+64>>2]|0;ve=e+36|0;h[ve>>2]=De;Re=Fe;je=ze;t=109;continue}else if((t|0)==116){ge=h[e+224>>2]|0;t=e+216|0;di=h[t>>2]|0;ge=di+ge-((di|0)%(ge|0)|0)|0;h[t>>2]=ge;t=95;continue}}if((t|0)==111){t=0;Oe=ue(h[e+8>>2]|0,De)|0;Oe=(ue(h[e+12>>2]|0,h[e+28>>2]|0)|0)+Oe|0;Oe=Oe+(ue(h[e+16>>2]|0,Re)|0)|0;Oe=Oe+(ue(h[e+20>>2]|0,h[e+32>>2]|0)|0)|0;Oe=(h[e+4>>2]|0)+(Oe<<1)|0;if(!(d[Oe>>1]|0))break;else{be=ve;Be=De;Ue=Re;Ye=je;t=113;continue}}else if((t|0)==117){i=h[e+228>>2]|0;t=e+220|0;di=h[t>>2]|0;i=di+i-((di|0)%(i|0)|0)|0;h[t>>2]=i;t=93;continue}}if((t|0)==153)return hi|0;d[Oe>>1]=1;e=1;return e|0}case 4:{i=e+40|0;if(!(h[i>>2]|0)){he=h[e+24>>2]|0;re=e+36|0;B=re;re=h[re>>2]|0;ae=he;he=(h[e+196>>2]|0)+(he<<4)|0;t=148}else{h[i>>2]=0;H=h[e+48>>2]|0;h[e+24>>2]=H;t=121}while(1){if((t|0)==121){if(H>>>0>=(h[e+60>>2]|0)>>>0){hi=0;t=153;break}i=h[e+196>>2]|0;v=i+(H<<4)|0;m=e+224|0;h[m>>2]=0;b=e+228|0;h[b>>2]=0;f=h[i+(H<<4)+8>>2]|0;if(f){l=h[i+(H<<4)+12>>2]|0;u=h[v>>2]|0;n=h[i+(H<<4)+4>>2]|0;a=f+-1|0;t=0;i=0;r=0;s=0;while(1){o=a+r|0;di=u<<o+(h[l+(s<<4)>>2]|0);o=n<<(h[l+(s<<4)+4>>2]|0)+o;t=(t|0)==0?di:t>>>0<di>>>0?t:di;i=(i|0)==0?o:i>>>0<o>>>0?i:o;o=s+1|0;if((o|0)==(f|0))break;else{r=~s;s=o}}h[m>>2]=t;h[b>>2]=i}if(!(c[e>>0]|0)){i=h[e+204>>2]|0;h[e+104>>2]=i;h[e+96>>2]=h[e+200>>2];h[e+108>>2]=h[e+212>>2];h[e+100>>2]=h[e+208>>2]}else i=h[e+104>>2]|0;h[e+220>>2]=i;D=i;R=H;t=130}else if((t|0)==148){ee=re+1|0;h[B>>2]=ee;N=B;ie=ae;de=he;t=144}while(1){if((t|0)==130){if((D|0)>=(h[e+108>>2]|0)){t=152;break}z=h[e+96>>2]|0;h[e+216>>2]=z;oe=R;le=v;t=132}else if((t|0)==144){if(ee>>>0<(h[e+52>>2]|0)>>>0){t=146;break}ne=e+28|0;F=ne;ne=h[ne>>2]|0;fe=ie;me=de;t=149}while(1){if((t|0)==132){if((z|0)>=(h[e+100>>2]|0)){t=151;break}j=h[e+44>>2]|0;U=e+28|0;h[U>>2]=j;se=oe;ce=le}else if((t|0)==149){j=ne+1|0;h[F>>2]=j;U=F;se=fe;ce=me}di=h[e+56>>2]|0;i=h[ce+8>>2]|0;if(j>>>0>=(di>>>0<i>>>0?di:i)>>>0){z=h[e+224>>2]|0;oe=e+216|0;le=h[oe>>2]|0;z=le+z-((le|0)%(z|0)|0)|0;h[oe>>2]=z;oe=se;le=ce;t=132;continue}l=h[ce+12>>2]|0;i=i+~j|0;t=h[e+200>>2]|0;r=h[ce>>2]|0;Y=r<<i;V=(t+-1+Y|0)/(Y|0)|0;n=h[e+204>>2]|0;di=h[ce+4>>2]|0;q=di<<i;W=(n+-1+q|0)/(q|0)|0;G=Y+-1|0;a=(G+(h[e+208>>2]|0)|0)/(Y|0)|0;X=q+-1|0;o=(X+(h[e+212>>2]|0)|0)/(q|0)|0;K=h[l+(j<<4)>>2]|0;s=K+i|0;$=h[l+(j<<4)+4>>2]|0;f=$+i|0;J=h[e+220>>2]|0;if((J|0)%(di<<f|0)|0){if((J|0)!=(n|0)){F=U;ne=j;fe=se;me=ce;t=149;continue}if(!((W<<i|0)%(1<<f|0)|0)){F=U;ne=j;fe=se;me=ce;t=149;continue}}Q=h[e+216>>2]|0;if((Q|0)%(r<<s|0)|0){if((Q|0)!=(t|0)){F=U;ne=j;fe=se;me=ce;t=149;continue}if(!((V<<i|0)%(1<<s|0)|0)){F=U;ne=j;fe=se;me=ce;t=149;continue}}Z=h[l+(j<<4)+8>>2]|0;if(!Z){F=U;ne=j;fe=se;me=ce;t=149;continue}if((W|0)==(o|0)|((V|0)==(a|0)?1:(h[l+(j<<4)+12>>2]|0)==0)){F=U;ne=j;fe=se;me=ce;t=149}else{t=143;break}}if((t|0)==143){ee=(((G+Q|0)/(Y|0)|0)>>K)-(V>>K)+(ue((((X+J|0)/(q|0)|0)>>$)-(W>>$)|0,Z)|0)|0;h[e+32>>2]=ee;ee=h[e+64>>2]|0;N=e+36|0;h[N>>2]=ee;ie=se;de=ce;t=144;continue}else if((t|0)==151){D=h[e+228>>2]|0;R=e+220|0;v=h[R>>2]|0;D=v+D-((v|0)%(D|0)|0)|0;h[R>>2]=D;R=oe;v=le;t=130;continue}}if((t|0)==146){t=0;te=ue(h[e+8>>2]|0,ee)|0;te=(ue(h[e+12>>2]|0,h[e+28>>2]|0)|0)+te|0;te=te+(ue(h[e+16>>2]|0,ie)|0)|0;te=te+(ue(h[e+20>>2]|0,h[e+32>>2]|0)|0)|0;te=(h[e+4>>2]|0)+(te<<1)|0;if(!(d[te>>1]|0))break;else{B=N;re=ee;ae=ie;he=de;t=148;continue}}else if((t|0)==152){H=R+1|0;h[e+24>>2]=H;t=121;continue}}if((t|0)==153)return hi|0;d[te>>1]=1;e=1;return e|0}default:{e=0;return e|0}}return 0}function Bt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=(h[i+(t*5640|0)+420>>2]|0)+1|0;r=Xn(u,232)|0;if(!r){u=0;return u|0}if(!u){u=r;return u|0}f=e+16|0;a=i+(t*5640|0)+5584|0;e=h[f>>2]|0;o=r;s=0;e:while(1){i=Xn(e,16)|0;n=o+196|0;h[n>>2]=i;if(!i){e=5;break}l=h[f>>2]|0;h[o+192>>2]=l;i:do if(!l)e=0;else{e=(h[a>>2]|0)+4|0;l=Xn(h[e>>2]|0,16)|0;h[i+12>>2]=l;if(!l){e=18;break e}else t=0;while(1){h[i+(t<<4)+8>>2]=h[e>>2];t=t+1|0;e=h[f>>2]|0;if(t>>>0>=e>>>0)break i;i=h[n>>2]|0;e=(h[a>>2]|0)+(t*1080|0)+4|0;l=Xn(h[e>>2]|0,16)|0;h[i+(t<<4)+12>>2]=l;if(!l){e=18;break e}}}while(0);s=s+1|0;if(s>>>0>=u>>>0){e=32;break}else o=o+232|0}if((e|0)==5){e=r+4|0;i=h[e>>2]|0;if(!i){f=r;l=0}else{Qn(i);h[e>>2]=0;f=r;l=0}while(1){s=f+196|0;e=h[s>>2]|0;if(e){o=f+192|0;i=h[o>>2]|0;if(i){a=0;while(1){t=e+12|0;n=h[t>>2]|0;if(n){Qn(n);h[t>>2]=0;i=h[o>>2]|0}a=a+1|0;if(a>>>0>=i>>>0)break;else e=e+16|0}e=h[s>>2]|0}Qn(e);h[s>>2]=0}l=l+1|0;if((l|0)==(u|0))break;else f=f+232|0}Qn(r);u=0;return u|0}else if((e|0)==18){e=r+4|0;i=h[e>>2]|0;if(!i){f=r;l=0}else{Qn(i);h[e>>2]=0;f=r;l=0}while(1){s=f+196|0;e=h[s>>2]|0;if(e){o=f+192|0;i=h[o>>2]|0;if(i){a=0;while(1){t=e+12|0;n=h[t>>2]|0;if(n){Qn(n);h[t>>2]=0;i=h[o>>2]|0}a=a+1|0;if(a>>>0>=i>>>0)break;else e=e+16|0}e=h[s>>2]|0}Qn(e);h[s>>2]=0}l=l+1|0;if((l|0)==(u|0))break;else f=f+232|0}Qn(r);u=0;return u|0}else if((e|0)==32)return r|0;return 0}function Nt(e,i,t,r,n,a,o,s,f,l,u,c){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;c=c|0;var d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0;m=h[(h[i+76>>2]|0)+(t*5640|0)+5584>>2]|0;d=h[e+24>>2]|0;D=h[i+24>>2]|0;L=i+12|0;I=(ue(h[L>>2]|0,(t>>>0)%(D>>>0)|0)|0)+(h[i+4>>2]|0)|0;P=h[e>>2]|0;h[r>>2]=I>>>0>P>>>0?I:P;I=Wf(h[L>>2]|0,0,I|0,0)|0;I=I|0-H;L=h[e+8>>2]|0;h[n>>2]=I>>>0<L>>>0?I:L;L=i+16|0;D=(ue(h[L>>2]|0,(t>>>0)/(D>>>0)|0)|0)+(h[i+8>>2]|0)|0;I=h[e+4>>2]|0;h[a>>2]=D>>>0>I>>>0?D:I;D=Wf(h[L>>2]|0,0,D|0,0)|0;D=D|0-H;L=h[e+12>>2]|0;h[o>>2]=D>>>0<L>>>0?D:L;h[l>>2]=0;h[u>>2]=0;h[s>>2]=2147483647;h[f>>2]=2147483647;L=e+16|0;if(!(h[L>>2]|0))return;else D=0;while(1){w=h[c+(D<<2)>>2]|0;b=h[d>>2]|0;e=((h[r>>2]|0)+-1+b|0)/(b|0)|0;P=d+4|0;v=h[P>>2]|0;t=((h[a>>2]|0)+-1+v|0)/(v|0)|0;b=(b+-1+(h[n>>2]|0)|0)/(b|0)|0;v=(v+-1+(h[o>>2]|0)|0)/(v|0)|0;I=m+4|0;i=h[I>>2]|0;if(i>>>0>(h[u>>2]|0)>>>0){h[u>>2]=i;i=h[I>>2]|0}if(i){S=Wf(e|0,((e|0)<0)<<31>>31|0,-1,-1)|0;A=H;x=Wf(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;E=H;M=Wf(b|0,((b|0)<0)<<31>>31|0,-1,-1)|0;C=H;y=Wf(v|0,((v|0)<0)<<31>>31|0,-1,-1)|0;T=H;_=0;while(1){i=i+-1|0;b=h[m+812+(_<<2)>>2]|0;k=h[m+944+(_<<2)>>2]|0;h[w>>2]=b;h[w+4>>2]=k;p=h[d>>2]<<b+i;R=h[P>>2]<<k+i;e=h[s>>2]|0;h[s>>2]=(e|0)<(p|0)?e:p;p=h[f>>2]|0;h[f>>2]=(p|0)<(R|0)?p:R;R=qf(1,0,i|0)|0;p=H;e=Wf(S|0,A|0,R|0,p|0)|0;e=Yf(e|0,H|0,i|0)|0;v=Wf(x|0,E|0,R|0,p|0)|0;v=Yf(v|0,H|0,i|0)|0;t=Wf(M|0,C|0,R|0,p|0)|0;t=Yf(t|0,H|0,i|0)|0;p=Wf(y|0,T|0,R|0,p|0)|0;p=Yf(p|0,H|0,i|0)|0;R=qf(1,0,k|0)|0;g=H;O=Wf(p|0,((p|0)<0)<<31>>31|0,-1,-1)|0;g=Wf(O|0,H|0,R|0,g|0)|0;g=Yf(g|0,H|0,k|0)|0;if((e|0)==(t|0))e=0;else{t=Wf(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;R=H;O=qf(1,0,b|0)|0;O=Wf(t|0,R|0,O|0,H|0)|0;O=Yf(O|0,H|0,b|0)|0;e=(O<<b)-(e>>b<<b)>>b}O=(v|0)==(p|0)?0:(g<<k)-(v>>k<<k)>>k;h[w+8>>2]=e;h[w+12>>2]=O;e=ue(e,O)|0;if(e>>>0>(h[l>>2]|0)>>>0)h[l>>2]=e;_=_+1|0;if(_>>>0>=(h[I>>2]|0)>>>0)break;else w=w+16|0}}D=D+1|0;if(D>>>0>=(h[L>>2]|0)>>>0)break;else{d=d+52|0;m=m+1080|0}}return}function Ft(e,i,t,r,n,a,o,s,f){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;var l=0,u=0;l=(h[e+(i*5640|0)+420>>2]|0)+1|0;h[e+(i*5640|0)+500>>2]=h[e+(i*5640|0)+428>>2];h[e+(i*5640|0)+516>>2]=h[e+(i*5640|0)+440>>2];h[e+(i*5640|0)+496>>2]=h[e+(i*5640|0)+424>>2];h[e+(i*5640|0)+512>>2]=h[e+(i*5640|0)+436>>2];h[e+(i*5640|0)+508>>2]=h[e+(i*5640|0)+432>>2];h[e+(i*5640|0)+492>>2]=0;h[e+(i*5640|0)+460>>2]=h[e+(i*5640|0)+456>>2];h[e+(i*5640|0)+504>>2]=0;h[e+(i*5640|0)+520>>2]=o;h[e+(i*5640|0)+524>>2]=t;h[e+(i*5640|0)+528>>2]=r;h[e+(i*5640|0)+532>>2]=n;h[e+(i*5640|0)+536>>2]=a;h[e+(i*5640|0)+540>>2]=s;h[e+(i*5640|0)+544>>2]=f;if(l>>>0<=1)return;e=e+(i*5640|0)+572|0;i=1;while(1){h[e+76>>2]=h[e+4>>2];h[e+92>>2]=h[e+16>>2];h[e+72>>2]=h[e>>2];h[e+88>>2]=h[e+12>>2];u=h[e+8>>2]|0;h[e+84>>2]=u;h[e+36>>2]=h[e+32>>2];h[e+80>>2]=0;h[e+68>>2]=u>>>0>(h[e+-64>>2]|0)>>>0?u:0;h[e+96>>2]=o;h[e+100>>2]=t;h[e+104>>2]=r;h[e+108>>2]=n;h[e+112>>2]=a;h[e+116>>2]=s;h[e+120>>2]=f;i=i+1|0;if((i|0)==(l|0))break;else e=e+148|0}return}function Ut(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;s=h[i+76>>2]|0;if((e|0)>-1)a=e;else{t=0;return t|0}e:while(1){switch(c[n+a>>0]|0){case 82:{o=3;break e}case 67:{o=5;break e}case 76:{o=7;break e}case 80:{o=9;break e}default:{}}a=a+-1|0}if((o|0)==3)if((h[s+(t*5640|0)+424+(r*148|0)+128>>2]|0)==(h[s+(t*5640|0)+424+(r*148|0)+88>>2]|0))return(Ut(e+-1|0,i,t,r,n)|0)!=0|0;else{t=1;return t|0}else if((o|0)==5)if((h[s+(t*5640|0)+424+(r*148|0)+132>>2]|0)==(h[s+(t*5640|0)+424+(r*148|0)+92>>2]|0))return(Ut(e+-1|0,i,t,r,n)|0)!=0|0;else{t=1;return t|0}else if((o|0)==7)if((h[s+(t*5640|0)+424+(r*148|0)+124>>2]|0)==(h[s+(t*5640|0)+424+(r*148|0)+84>>2]|0))return(Ut(e+-1|0,i,t,r,n)|0)!=0|0;else{t=1;return t|0}else if((o|0)==9){if((h[s+(t*5640|0)+424+(r*148|0)+36>>2]|0)>>>0<2)if((h[s+(t*5640|0)+424+(r*148|0)+136>>2]|0)==(h[s+(t*5640|0)+424+(r*148|0)+96>>2]|0))return(Ut(a+-1|0,i,t,r,n)|0)!=0|0;else{t=1;return t|0}if((h[s+(t*5640|0)+424+(r*148|0)+140>>2]|0)!=(h[s+(t*5640|0)+424+(r*148|0)+104>>2]|0)){t=1;return t|0}if((h[s+(t*5640|0)+424+(r*148|0)+144>>2]|0)==(h[s+(t*5640|0)+424+(r*148|0)+112>>2]|0))return(Ut(a+-1|0,i,t,r,n)|0)!=0|0;else{t=1;return t|0}}return 0}function Ht(e){e=e|0;var i=0,t=0;i=Xn(1,44)|0;if(!i){e=0;return e|0}t=i+40|0;c[t>>0]=c[t>>0]&-2|(e|0)!=0;e=Xn(1,4)|0;h[i+20>>2]=e;if(e){t=i;return t|0}Qn(i);t=0;return t|0}function zt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0;H=k;k=k+1200|0;U=H;r=h[h[e+20>>2]>>2]|0;F=r+16|0;n=h[F>>2]|0;if(!n){k=H;return}O=r+20|0;B=(h[e+32>>2]|0)+8|0;N=(h[e+28>>2]|0)+88|0;D=e+24|0;R=(i|0)==0;I=(t|0)==0;L=i+-1|0;r=n;P=0;do{s=h[O>>2]|0;f=h[B>>2]|0;S=h[s+(P*52|0)+16>>2]|0;if(f){if(S){e=h[N>>2]|0;a=+((h[(h[(h[D>>2]|0)+24>>2]|0)+(P*52|0)+24>>2]|0)>>>0)*.0625;n=0;do{t=ue(S,n)|0;o=0;do{A=(t+o|0)*3|0;h[U+(n*120|0)+(o*12|0)>>2]=~~(+(h[e+(A<<2)>>2]|0)*a);h[U+(n*120|0)+(o*12|0)+4>>2]=~~(+(h[e+(A+1<<2)>>2]|0)*a);h[U+(n*120|0)+(o*12|0)+8>>2]=~~(+(h[e+(A+2<<2)>>2]|0)*a);o=o+1|0}while(o>>>0<S>>>0);n=n+1|0}while(n>>>0<f>>>0);A=9}}else A=9;if((A|0)==9){A=0;if(S){y=s+(P*52|0)+24|0;E=0;do{T=h[y>>2]|0;M=T+(E*136|0)+24|0;r=h[M>>2]|0;if(r){C=T+(E*136|0)+16|0;x=T+(E*136|0)+20|0;e=h[x>>2]|0;t=h[C>>2]|0;_=0;do{if(ue(e,t)|0){w=T+(E*136|0)+28+(_*36|0)+20|0;p=U+(i*120|0)+(E*12|0)+(_<<2)|0;g=U+(L*120|0)+(E*12|0)+(_<<2)|0;v=0;do{r=h[w>>2]|0;b=ue(h[r+(v*40|0)+20>>2]|0,h[r+(v*40|0)+16>>2]|0)|0;if(b){u=r+(v*40|0)+24|0;c=h[p>>2]|0;m=0;do{f=h[u>>2]|0;l=f+(m*52|0)|0;d=h[f+(m*52|0)+4>>2]|0;r=(h[(h[(h[D>>2]|0)+24>>2]|0)+(P*52|0)+24>>2]|0)-(h[f+(m*52|0)+28>>2]|0)|0;if(!R){e=h[g>>2]|0;t=c-e|0;if((e|0)<=(r|0)){t=t+(e-r)|0;t=(t|0)<0?0:t}}else{h[f+(m*52|0)+44>>2]=0;t=(c|0)>(r|0)?c-r|0:0}s=f+(m*52|0)+44|0;n=h[s>>2]|0;o=(n|0)==0;if(o)if(!t)t=0;else t=(t*3|0)+-2|0;else t=(t*3|0)+n|0;h[d+(i*24|0)>>2]=t-n;do if((t|0)!=(n|0)){e=h[f+(m*52|0)+8>>2]|0;r=h[e+((t+-1|0)*24|0)>>2]|0;if(o)h[d+(i*24|0)+16>>2]=h[l>>2];else{f=h[e+((n+-1|0)*24|0)>>2]|0;h[d+(i*24|0)+16>>2]=(h[l>>2]|0)+f;r=r-f|0}h[d+(i*24|0)+4>>2]=r;if(I)break;h[s>>2]=t}while(0);m=m+1|0}while(m>>>0<b>>>0);e=h[x>>2]|0;t=h[C>>2]|0}v=v+1|0}while(v>>>0<(ue(e,t)|0)>>>0);r=h[M>>2]|0}_=_+1|0}while(_>>>0<r>>>0)}E=E+1|0}while(E>>>0<S>>>0);r=h[F>>2]|0}}P=P+1|0}while(P>>>0<r>>>0);k=H;return}function jt(e,i,t,r){e=e|0;i=i|0;t=+t;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0;e=h[h[e+20>>2]>>2]|0;L=e+40+(i<<3)|0;p[L>>3]=0;D=e+16|0;n=h[D>>2]|0;if(!n)return;P=e+20|0;I=(i|0)==0;A=(r|0)==0;e=n;S=0;do{n=h[P>>2]|0;E=h[n+(S*52|0)+16>>2]|0;if(E){_=n+(S*52|0)+24|0;x=0;do{y=h[_>>2]|0;T=y+(x*136|0)+24|0;e=h[T>>2]|0;if(e){M=y+(x*136|0)+16|0;C=y+(x*136|0)+20|0;n=h[C>>2]|0;r=h[M>>2]|0;k=0;do{if(ue(n,r)|0){g=y+(x*136|0)+28+(k*36|0)+20|0;w=0;do{e=h[g>>2]|0;v=ue(h[e+(w*40|0)+20>>2]|0,h[e+(w*40|0)+16>>2]|0)|0;if(v){c=e+(w*40|0)+24|0;b=0;do{f=h[c>>2]|0;l=f+(b*52|0)|0;d=h[f+(b*52|0)+4>>2]|0;m=f+(b*52|0)+44|0;if(I){h[m>>2]=0;u=0}else u=h[m>>2]|0;r=h[f+(b*52|0)+48>>2]|0;if(u>>>0<r>>>0){o=h[f+(b*52|0)+8>>2]|0;e=u;s=u;do{n=h[o+(s*24|0)>>2]|0;a=+p[o+(s*24|0)+8>>3];if(e){O=e+-1|0;a=a-+p[o+(O*24|0)+8>>3];n=n-(h[o+(O*24|0)>>2]|0)|0}do if(!n){if(!(a!=0))break;e=s+1|0}else{if(!(t-a/+(n>>>0)<2.220446049250313e-16))break;e=s+1|0}while(0);s=s+1|0}while(s>>>0<r>>>0);o=e;h[d+(i*24|0)>>2]=o-u;if((o|0)!=(u|0)){r=o+-1|0;n=h[f+(b*52|0)+8>>2]|0;e=h[n+(r*24|0)>>2]|0;if(!u){h[d+(i*24|0)+16>>2]=h[l>>2];a=+p[n+(r*24|0)+8>>3]}else{u=u+-1|0;O=h[n+(u*24|0)>>2]|0;h[d+(i*24|0)+16>>2]=(h[l>>2]|0)+O;a=+p[n+(r*24|0)+8>>3]-+p[n+(u*24|0)+8>>3];e=e-O|0}h[d+(i*24|0)+4>>2]=e;p[d+(i*24|0)+8>>3]=a;p[L>>3]=a+ +p[L>>3];if(!A)h[m>>2]=o}else R=26}else{h[d+(i*24|0)>>2]=0;R=26}if((R|0)==26){R=0;p[d+(i*24|0)+8>>3]=0}b=b+1|0}while(b>>>0<v>>>0);n=h[C>>2]|0;r=h[M>>2]|0}w=w+1|0}while(w>>>0<(ue(n,r)|0)>>>0);e=h[T>>2]|0}k=k+1|0}while(k>>>0<e>>>0)}x=x+1|0}while(x>>>0<E>>>0);e=h[D>>2]|0}S=S+1|0}while(S>>>0<e>>>0);return}function Yt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0;G=k;k=k+800|0;W=G;Y=h[e+28>>2]|0;V=h[h[e+20>>2]>>2]|0;q=h[e+32>>2]|0;H=V+24|0;h[H>>2]=0;z=h[V+16>>2]|0;if(!z){a=0;O=0;s=0;l=1.7976931348623157e308}else{F=h[V+20>>2]|0;U=h[(h[e+24>>2]|0)+24>>2]|0;a=0;j=0;f=0;s=0;l=1.7976931348623157e308;do{R=F+(j*52|0)+48|0;h[R>>2]=0;B=h[F+(j*52|0)+16>>2]|0;if(!B)o=0;else{N=h[F+(j*52|0)+24>>2]|0;o=0;D=0;do{P=h[N+(D*136|0)+24>>2]|0;if(P){I=ue(h[N+(D*136|0)+20>>2]|0,h[N+(D*136|0)+16>>2]|0)|0;L=(I|0)==0;A=0;do{if(!L){S=h[N+(D*136|0)+28+(A*36|0)+20>>2]|0;E=0;do{C=ue(h[S+(E*40|0)+20>>2]|0,h[S+(E*40|0)+16>>2]|0)|0;if(C){x=h[S+(E*40|0)+24>>2]|0;M=0;do{_=h[x+(M*52|0)+48>>2]|0;if(_){y=h[x+(M*52|0)+8>>2]|0;g=0;do{v=h[y+(g*24|0)>>2]|0;u=+p[y+(g*24|0)+8>>3];if(g){X=g+-1|0;u=u-+p[y+(X*24|0)+8>>3];v=v-(h[y+(X*24|0)>>2]|0)|0}do if(v){u=u/+(v|0);l=u<l?u:l;if(!(u>f))break;f=u}while(0);g=g+1|0}while(g>>>0<_>>>0)}X=ue((h[x+(M*52|0)+24>>2]|0)-(h[x+(M*52|0)+16>>2]|0)|0,(h[x+(M*52|0)+20>>2]|0)-(h[x+(M*52|0)+12>>2]|0)|0)|0;a=X+a|0;o=X+o|0;M=M+1|0}while(M>>>0<C>>>0);h[H>>2]=a;h[R>>2]=o}E=E+1|0}while(E>>>0<I>>>0)}A=A+1|0}while(A>>>0<P>>>0)}D=D+1|0}while(D>>>0<B>>>0)}O=+(1<<h[U+(j*52|0)+24>>2]|0)+-1;s=s+ +(o|0)*(O*O);j=j+1|0}while(j>>>0<z>>>0);O=f}R=(n|0)!=0;if(R){j=h[e+36>>2]|0;z=h[n+88>>2]|0;h[z+(j*592|0)+552>>2]=a;p[z+(j*592|0)+560>>3]=+p[V+32>>3];a=q+8|0;X=Gn(h[a>>2]<<3)|0;h[z+(j*592|0)>>2]=X;if(!X){X=0;k=G;return X|0}}else a=q+8|0;if(!(h[a>>2]|0)){X=1;k=G;return X|0}C=V+32|0;x=Y+93|0;E=e+36|0;S=n+88|0;A=V+40|0;P=e+24|0;I=e+8|0;L=e+16|0;D=0;while(1){f=+w[q+20+(D<<2)>>2];if(f!=0){y=~~+le(+f)>>>0;y=y>>>0<r>>>0?y:r}else y=r;b=+w[q+5184+(D<<2)>>2];T=+p[C>>3]-s/+Z(10,+(b/10));X=c[x>>0]|0;if(!((X&1)!=0&f>0)?!((X&4)!=0&b>0):0)f=l;else{M=ns(h[P>>2]|0,Y)|0;if(!M){a=0;o=57;break}_=D+1|0;o=W+(D+-1<<3)|0;v=V+40+(D<<3)|0;if(!D){m=O;o=0;b=l;u=0;do{f=(b+m)*.5;jt(e,0,f,0);do if(c[x>>0]&4){if(((d[Y>>1]|0)+-3&65535)>=4){X=+p[A>>3]<T;m=X?f:m;b=X?b:f;u=X?f:u;break}if(!(ts(M,h[E>>2]|0,V,_,i,t,y,n,h[I>>2]|0,h[e>>2]|0,h[L>>2]|0,0)|0))b=f;else{X=+p[A>>3]<T;m=X?f:m;b=X?b:f;u=X?f:u}}else{X=(ts(M,h[E>>2]|0,V,_,i,t,y,n,h[I>>2]|0,h[e>>2]|0,h[L>>2]|0,0)|0)==0;m=X?m:f;b=X?f:b;u=X?u:f}while(0);o=o+1|0}while((o|0)!=128)}else{m=O;g=0;b=l;u=0;do{f=(b+m)*.5;jt(e,D,f,0);do if(c[x>>0]&4){if(((d[Y>>1]|0)+-3&65535)>=4){X=+p[o>>3]+ +p[v>>3]<T;m=X?f:m;b=X?b:f;u=X?f:u;break}if(!(ts(M,h[E>>2]|0,V,_,i,t,y,n,h[I>>2]|0,h[e>>2]|0,h[L>>2]|0,0)|0))b=f;else{X=+p[o>>3]+ +p[v>>3]<T;m=X?f:m;b=X?b:f;u=X?f:u}}else{X=(ts(M,h[E>>2]|0,V,_,i,t,y,n,h[I>>2]|0,h[e>>2]|0,h[L>>2]|0,0)|0)==0;m=X?m:f;b=X?f:b;u=X?u:f}while(0);g=g+1|0}while((g|0)!=128)}as(M);f=u==0?f:u}if(R)p[(h[(h[S>>2]|0)+((h[E>>2]|0)*592|0)>>2]|0)+(D<<3)>>3]=f;jt(e,D,f,1);if(!D)f=+p[A>>3];else f=+p[W+(D+-1<<3)>>3]+ +p[V+40+(D<<3)>>3];p[W+(D<<3)>>3]=f;D=D+1|0;if(D>>>0>=(h[a>>2]|0)>>>0){a=1;o=57;break}}if((o|0)==57){k=G;return a|0}return 0}function Vt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;h[e+24>>2]=i;h[e+28>>2]=t;n=Xn(1,848)|0;r=e+20|0;h[h[r>>2]>>2]=n;if(!n){e=0;return e|0}n=i+16|0;a=Xn(h[n>>2]|0,52)|0;i=h[h[r>>2]>>2]|0;h[i+20>>2]=a;if(!a){a=0;return a|0}h[i+16>>2]=h[n>>2];h[e>>2]=h[t+84>>2];a=1;return a|0}function qt(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0;if(!e)return;p=e+20|0;i=h[p>>2]|0;do if(i){w=(c[e+40>>0]&1)==0?3:4;t=h[i>>2]|0;if(t){m=t+20|0;f=t+16|0;if(h[f>>2]|0){u=0;d=h[m>>2]|0;while(1){l=d+24|0;i=h[l>>2]|0;if(i){o=h[d+28>>2]|0;s=(o>>>0)/136|0;if(o>>>0>135){o=0;while(1){a=i+48|0;t=h[a>>2]|0;if(t){r=h[i+52>>2]|0;n=(r>>>0)/40|0;if(r>>>0>39){r=0;while(1){g=t+32|0;ho(h[g>>2]|0);h[g>>2]=0;g=t+36|0;ho(h[g>>2]|0);h[g>>2]=0;Ll[w&7](t);r=r+1|0;if(r>>>0>=n>>>0)break;else t=t+40|0}t=h[a>>2]|0}Qn(t);h[a>>2]=0}a=i+84|0;t=h[a>>2]|0;if(t){g=h[i+88>>2]|0;n=(g>>>0)/40|0;if(g>>>0>39){r=0;while(1){g=t+32|0;ho(h[g>>2]|0);h[g>>2]=0;g=t+36|0;ho(h[g>>2]|0);h[g>>2]=0;Ll[w&7](t);r=r+1|0;if(r>>>0>=n>>>0)break;else t=t+40|0}t=h[a>>2]|0}Qn(t);h[a>>2]=0}a=i+120|0;t=h[a>>2]|0;if(t){g=h[i+124>>2]|0;n=(g>>>0)/40|0;if(g>>>0>39){r=0;while(1){g=t+32|0;ho(h[g>>2]|0);h[g>>2]=0;g=t+36|0;ho(h[g>>2]|0);h[g>>2]=0;Ll[w&7](t);r=r+1|0;if(r>>>0>=n>>>0)break;else t=t+40|0}t=h[a>>2]|0}Qn(t);h[a>>2]=0}o=o+1|0;if(o>>>0>=s>>>0)break;else i=i+136|0}i=h[l>>2]|0}Qn(i);h[l>>2]=0}if((h[d+36>>2]|0)!=0?(b=d+32|0,v=h[b>>2]|0,(v|0)!=0):0){$n(v);h[b>>2]=0;h[b+4>>2]=0;h[b+8>>2]=0;h[b+12>>2]=0}u=u+1|0;if(u>>>0>=(h[f>>2]|0)>>>0)break;else d=d+52|0}}Qn(h[m>>2]|0);h[m>>2]=0;Qn(h[h[p>>2]>>2]|0);i=h[p>>2]|0;h[i>>2]=0;if(!i)break}Qn(i);h[p>>2]=0}while(0);Qn(e);return}function Wt(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;r=e+32|0;n=h[r>>2]|0;i=e+40|0;t=h[i>>2]|0;if(n){a=e+44|0;if(t>>>0<=(h[a>>2]|0)>>>0){e=1;return e|0}if(h[e+36>>2]|0){$n(n);n=Kn(h[i>>2]|0)|0;h[r>>2]=n;if(!n){h[a>>2]=0;h[i>>2]=0;h[e+36>>2]=0;e=0;return e|0}else{h[a>>2]=h[i>>2];h[e+36>>2]=1;e=1;return e|0}}}a=Kn(t)|0;h[r>>2]=a;if(!a){e=0;return e|0}h[e+44>>2]=h[i>>2];h[e+36>>2]=1;e=1;return e|0}function Gt(e,i,t){e=e|0;i=i|0;t=t|0;return rr(e,i,1,1,52,t)|0}function Xt(e,i,t){e=e|0;i=i|0;t=t|0;return rr(e,i,0,.5,56,t)|0}function Kt(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0;t=h[e+24>>2]|0;n=h[t+16>>2]|0;if(!n){a=0;return a|0}a=0;i=0;r=h[t+24>>2]|0;t=h[(h[h[e+20>>2]>>2]|0)+20>>2]|0;while(1){s=h[r+24>>2]|0;s=((s&7|0)!=0&1)+(s>>>3)|0;o=h[t+24>>2]|0;e=(h[t+20>>2]|0)+-1|0;i=(ue(ue((s|0)==3?4:s,(h[o+(e*136|0)+8>>2]|0)-(h[o+(e*136|0)>>2]|0)|0)|0,(h[o+(e*136|0)+12>>2]|0)-(h[o+(e*136|0)+4>>2]|0)|0)|0)+i|0;a=a+1|0;if(a>>>0>=n>>>0)break;else{r=r+52|0;t=t+52|0}}return i|0}function $t(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0;M=k;k=k+16|0;y=M;if(!(h[e+8>>2]|0)){h[e+36>>2]=i;g=e+28|0;o=h[(h[g>>2]|0)+76>>2]|0;T=e+32|0;h[T>>2]=o+(i*5640|0);_=(a|0)==0;p=e+20|0;if(!_){s=h[(h[h[p>>2]>>2]|0)+20>>2]|0;d=h[o+(i*5640|0)+5584>>2]|0;m=s+16|0;if(!(h[m>>2]|0)){s=a+88|0;o=0}else{f=h[s+24>>2]|0;s=a+88|0;l=h[s>>2]|0;u=0;o=0;do{w=f+(u*136|0)+16|0;h[l+(i*592|0)+20+(u<<2)>>2]=h[w>>2];v=f+(u*136|0)+20|0;h[l+(i*592|0)+152+(u<<2)>>2]=h[v>>2];o=(ue(h[v>>2]|0,h[w>>2]|0)|0)+o|0;h[l+(i*592|0)+284+(u<<2)>>2]=h[d+812+(u<<2)>>2];h[l+(i*592|0)+416+(u<<2)>>2]=h[d+944+(u<<2)>>2];u=u+1|0}while(u>>>0<(h[m>>2]|0)>>>0)}w=Xn(ue(ue(h[a+52>>2]|0,o)|0,h[a+56>>2]|0)|0,32)|0;h[(h[s>>2]|0)+(i*592|0)+548>>2]=w;if(!w){e=0;k=M;return e|0}}o=h[h[p>>2]>>2]|0;w=o+16|0;if(!(h[w>>2]|0)){u=h[T>>2]|0;f=0;s=h[o+20>>2]|0}else{u=h[T>>2]|0;s=h[o+20>>2]|0;i=0;b=h[u+5584>>2]|0;v=s;while(1){d=h[v+32>>2]|0;m=ue((h[v+12>>2]|0)-(h[v+4>>2]|0)|0,(h[v+8>>2]|0)-(h[v>>2]|0)|0)|0;o=(m|0)==0;if((h[b+20>>2]|0)==1){if(!o){f=b+1076|0;l=0;o=d;while(1){h[o>>2]=(h[o>>2]|0)-(h[f>>2]|0);l=l+1|0;if((l|0)==(m|0))break;else o=o+4|0}}}else if(!o){f=b+1076|0;l=0;o=d;while(1){h[o>>2]=(h[o>>2]|0)-(h[f>>2]|0)<<11;l=l+1|0;if((l|0)==(m|0))break;else o=o+4|0}}i=i+1|0;f=h[w>>2]|0;if(i>>>0>=f>>>0)break;else{b=b+1080|0;v=v+52|0}}}d=ue((h[s+12>>2]|0)-(h[s+4>>2]|0)|0,(h[s+8>>2]|0)-(h[s>>2]|0)|0)|0;e:do switch(h[u+16>>2]|0){case 0:break;case 2:{if(h[u+5608>>2]|0){l=Gn(f<<2)|0;if(!l){e=0;k=M;return e|0}o=h[w>>2]|0;if(!o)o=0;else{f=0;while(1){h[l+(f<<2)>>2]=h[s+32>>2];f=f+1|0;if((f|0)==(o|0))break;else s=s+52|0}}w=(Et(h[(h[T>>2]|0)+5608>>2]|0,d,l,o,h[(h[(h[e+24>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Qn(l);if(w){e=0;k=M;return e|0}}break}default:{f=h[s+32>>2]|0;l=h[s+84>>2]|0;o=h[s+136>>2]|0;if(!(h[(h[u+5584>>2]|0)+20>>2]|0)){Ct(f,l,o,d);break e}else{Tt(f,l,o,d);break e}}}while(0);o=h[h[p>>2]>>2]|0;s=o+16|0;e:do if(h[s>>2]|0){f=0;l=h[(h[T>>2]|0)+5584>>2]|0;o=h[o+20>>2]|0;i:while(1){switch(h[l+20>>2]|0){case 1:{if(!(Lo(o)|0)){o=0;s=54;break i}break}case 0:{if(!(Bo(o)|0)){o=0;s=54;break i}break}default:{}}f=f+1|0;if(f>>>0>=(h[s>>2]|0)>>>0)break e;else{l=l+1080|0;o=o+52|0}}if((s|0)==54){k=M;return o|0}}while(0);o=h[T>>2]|0;s=Ko(1)|0;if(!s){e=0;k=M;return e|0}do if((h[o+16>>2]|0)==1)if(!(h[(h[o+5584>>2]|0)+20>>2]|0)){f=yt()|0;l=3;break}else{f=_t()|0;l=3;break}else{f=h[o+5600>>2]|0;l=h[(h[e+24>>2]|0)+16>>2]|0}while(0);p=Qo(s,h[h[p>>2]>>2]|0,o,f,l)|0;$o(s);if(!p){e=0;k=M;return e|0}o=h[g>>2]|0;h[y>>2]=0;if(!_)h[a+12>>2]=0;if(!(c[o+93>>0]&5)){if(h[(h[T>>2]|0)+8>>2]|0){o=0;do{zt(e,o,1);o=o+1|0}while(o>>>0<(h[(h[T>>2]|0)+8>>2]|0)>>>0)}}else if(!(Yt(e,t,y,n,a)|0)){e=0;k=M;return e|0}}if(a)h[a+12>>2]=1;o=ns(h[e+24>>2]|0,h[e+28>>2]|0)|0;if(!o)o=1;else{e=ts(o,h[e+36>>2]|0,h[h[e+20>>2]>>2]|0,h[(h[e+32>>2]|0)+8>>2]|0,t,r,n,a,h[e+4>>2]|0,h[e>>2]|0,h[e+16>>2]|0,1)|0;as(o);o=(e|0)==0}e=o&1^1;k=M;return e|0}function Jt(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,p=0,g=0;g=k;k=k+16|0;l=g+8|0;f=g;s=g+12|0;o=e+36|0;h[o>>2]=r;p=h[e+28>>2]|0;d=e+32|0;h[d>>2]=(h[p+76>>2]|0)+(r*5640|0);h[s>>2]=0;c=e+24|0;r=ns(h[c>>2]|0,p)|0;if(!r){p=0;k=g;return p|0}u=e+20|0;p=rs(r,h[o>>2]|0,h[h[u>>2]>>2]|0,i,s,t,n,a)|0;as(r);if(!p){p=0;k=g;return p|0}r=h[h[u>>2]>>2]|0;e=h[(h[d>>2]|0)+5584>>2]|0;o=h[r+20>>2]|0;t=Ko(0)|0;if(!t){p=0;k=g;return p|0}s=r+16|0;e:do if(h[s>>2]|0){n=0;r=o;while(1){if(!(Jo(t,r,e)|0))break;n=n+1|0;if(n>>>0>=(h[s>>2]|0)>>>0)break e;else{e=e+1080|0;r=r+52|0}}$o(t);p=0;k=g;return p|0}while(0);
$o(t);r=h[h[u>>2]>>2]|0;o=r+16|0;do if(h[o>>2]|0){s=0;n=h[(h[c>>2]|0)+24>>2]|0;t=h[(h[d>>2]|0)+5584>>2]|0;e=h[r+20>>2]|0;while(1){r=(h[n+36>>2]|0)+1|0;if((h[t+20>>2]|0)==1){if(!(Do(e,r)|0)){r=0;e=49;break}}else if(!(Ho(e,r)|0)){r=0;e=49;break}s=s+1|0;if(s>>>0>=(h[o>>2]|0)>>>0){e=14;break}else{n=n+52|0;t=t+1080|0;e=e+52|0}}if((e|0)==14){r=h[h[u>>2]>>2]|0;break}else if((e|0)==49){k=g;return r|0}}while(0);s=h[d>>2]|0;e=h[r+20>>2]|0;o=h[s+16>>2]|0;do if(o){i=ue((h[e+12>>2]|0)-(h[e+4>>2]|0)|0,(h[e+8>>2]|0)-(h[e>>2]|0)|0)|0;t=r+16|0;r=h[t>>2]|0;if(r>>>0<=2){h[l>>2]=r;Jr(a,1,19722,l)|0;break}if((ue((h[e+64>>2]|0)-(h[e+56>>2]|0)|0,(h[e+60>>2]|0)-(h[e+52>>2]|0)|0)|0)>=(i|0)?(ue((h[e+116>>2]|0)-(h[e+108>>2]|0)|0,(h[e+112>>2]|0)-(h[e+104>>2]|0)|0)|0)>=(i|0):0){if((o|0)!=2){r=h[e+32>>2]|0;if((h[(h[s+5584>>2]|0)+20>>2]|0)==1){Mt(r,h[e+84>>2]|0,h[e+136>>2]|0,i);break}else{xt(r,h[e+84>>2]|0,h[e+136>>2]|0,i);break}}n=s+5604|0;if(!(h[n>>2]|0))break;s=Gn(r<<2)|0;if(!s){p=0;k=g;return p|0}r=h[t>>2]|0;if(!r)r=0;else{o=0;while(1){h[s+(o<<2)>>2]=h[e+32>>2];o=o+1|0;if((o|0)==(r|0))break;else e=e+52|0}}p=(St(h[n>>2]|0,i,s,r,h[(h[(h[c>>2]|0)+24>>2]|0)+32>>2]|0)|0)==0;Qn(s);if(p)r=0;else break;k=g;return r|0}Jr(a,1,19661,f)|0;p=0;k=g;return p|0}while(0);r=h[h[u>>2]>>2]|0;v=r+16|0;if(!(h[v>>2]|0)){p=1;k=g;return p|0}p=0;b=h[(h[c>>2]|0)+24>>2]|0;m=h[(h[d>>2]|0)+5584>>2]|0;d=h[r+20>>2]|0;while(1){c=h[d+24>>2]|0;a=h[b+36>>2]|0;o=h[c+(a*136|0)+8>>2]|0;s=h[c+(a*136|0)>>2]|0;u=o-s|0;n=h[c+(a*136|0)+12>>2]|0;a=h[c+(a*136|0)+4>>2]|0;c=(h[d+8>>2]|0)-(h[d>>2]|0)-u|0;r=h[b+24>>2]|0;if(!(h[b+32>>2]|0)){r=1<<r;l=0}else{l=1<<r+-1;r=l;l=0-l|0}f=r+-1|0;r=h[d+32>>2]|0;e=(n|0)==(a|0);if((h[m+20>>2]|0)==1){if(!e){t=(o|0)==(s|0);i=m+1076|0;s=n-a|0;n=0;while(1){if(!t){e=0;o=r;while(1){a=(h[i>>2]|0)+(h[o>>2]|0)|0;h[o>>2]=(a|0)<(l|0)?l:(a|0)>(f|0)?f:a;e=e+1|0;if((e|0)==(u|0))break;else o=o+4|0}r=r+(u<<2)|0}n=n+1|0;if((n|0)==(s|0))break;else r=r+(c<<2)|0}}}else if(!e){t=(o|0)==(s|0);i=m+1076|0;s=n-a|0;n=0;while(1){if(!t){e=0;o=r;while(1){a=Rs(+w[o>>2])|0;a=(h[i>>2]|0)+a|0;h[o>>2]=(a|0)<(l|0)?l:(a|0)>(f|0)?f:a;e=e+1|0;if((e|0)==(u|0))break;else o=o+4|0}r=r+(u<<2)|0}n=n+1|0;if((n|0)==(s|0))break;else r=r+(c<<2)|0}}p=p+1|0;if(p>>>0>=(h[v>>2]|0)>>>0){r=1;break}else{b=b+52|0;m=m+1080|0;d=d+52|0}}k=g;return r|0}function Qt(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;v=e+24|0;l=h[v>>2]|0;n=h[l+16>>2]|0;f=(n|0)==0;if(f){v=1;return v|0}a=0;r=0;o=h[l+24>>2]|0;s=h[(h[h[e+20>>2]>>2]|0)+20>>2]|0;while(1){u=h[o+24>>2]|0;u=((u&7|0)!=0&1)+(u>>>3)|0;m=h[s+24>>2]|0;b=(h[s+20>>2]|0)+-1|0;r=(ue(ue((u|0)==3?4:u,(h[m+(b*136|0)+8>>2]|0)-(h[m+(b*136|0)>>2]|0)|0)|0,(h[m+(b*136|0)+12>>2]|0)-(h[m+(b*136|0)+4>>2]|0)|0)|0)+r|0;a=a+1|0;if((a|0)==(n|0))break;else{o=o+52|0;s=s+52|0}}r=r>>>0>t>>>0;if(r|f){v=r&1^1;return v|0}b=0;m=h[l+24>>2]|0;u=h[(h[h[e+20>>2]>>2]|0)+20>>2]|0;while(1){f=h[m+24>>2]|0;e=h[u+24>>2]|0;t=h[m+36>>2]|0;a=h[e+(t*136|0)+8>>2]|0;o=h[e+(t*136|0)>>2]|0;l=a-o|0;s=h[e+(t*136|0)+12>>2]|0;t=h[e+(t*136|0)+4>>2]|0;e=(h[u+8>>2]|0)-(h[u>>2]|0)-l|0;f=((f&7|0)!=0&1)+(f>>>3)|0;e:do switch(((f|0)==3?4:f)|0){case 1:{r=h[u+32>>2]|0;n=(s|0)==(t|0);if(!(h[m+32>>2]|0)){if(n)break e;f=(a|0)==(o|0);s=s-t|0;t=0;while(1){if(!f){o=i+l|0;a=0;n=r;while(1){c[i>>0]=h[n>>2];a=a+1|0;if((a|0)==(l|0))break;else{i=i+1|0;n=n+4|0}}i=o;r=r+(l<<2)|0}t=t+1|0;if((t|0)==(s|0))break;else r=r+(e<<2)|0}}else{if(n)break e;f=(a|0)==(o|0);s=s-t|0;t=0;while(1){if(!f){o=i+l|0;a=0;n=r;while(1){c[i>>0]=h[n>>2];a=a+1|0;if((a|0)==(l|0))break;else{i=i+1|0;n=n+4|0}}i=o;r=r+(l<<2)|0}t=t+1|0;if((t|0)==(s|0))break;else r=r+(e<<2)|0}}break}case 2:{r=h[u+32>>2]|0;n=(s|0)==(t|0);if(!(h[m+32>>2]|0)){if(!n){f=(a|0)==(o|0);s=s-t|0;t=0;while(1){if(!f){o=i+(l<<1)|0;a=0;n=r;while(1){d[i>>1]=h[n>>2];a=a+1|0;if((a|0)==(l|0))break;else{i=i+2|0;n=n+4|0}}i=o;r=r+(l<<2)|0}t=t+1|0;if((t|0)==(s|0))break;else r=r+(e<<2)|0}}}else if(!n){f=(a|0)==(o|0);s=s-t|0;t=0;while(1){if(!f){o=i+(l<<1)|0;a=0;n=r;while(1){d[i>>1]=h[n>>2];a=a+1|0;if((a|0)==(l|0))break;else{i=i+2|0;n=n+4|0}}i=o;r=r+(l<<2)|0}t=t+1|0;if((t|0)==(s|0))break;else r=r+(e<<2)|0}}break}case 4:{if((s|0)!=(t|0)){f=(a|0)==(o|0);s=s-t|0;t=0;r=h[u+32>>2]|0;while(1){if(!f){o=i+(l<<2)|0;a=0;n=r;while(1){h[i>>2]=h[n>>2];a=a+1|0;if((a|0)==(l|0))break;else{i=i+4|0;n=n+4|0}}i=o;r=r+(l<<2)|0}t=t+1|0;if((t|0)==(s|0))break;else r=r+(e<<2)|0}}break}default:{}}while(0);b=b+1|0;if(b>>>0>=(h[(h[v>>2]|0)+16>>2]|0)>>>0){i=1;break}else{m=m+52|0;u=u+52|0}}return i|0}function Zt(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;t=h[e+24>>2]|0;n=h[t+16>>2]|0;if(!n){a=0;return a|0}a=0;i=0;r=h[t+24>>2]|0;t=h[(h[h[e+20>>2]>>2]|0)+20>>2]|0;while(1){e=h[r+24>>2]|0;e=((e&7|0)!=0&1)+(e>>>3)|0;i=(ue(ue((h[t+12>>2]|0)-(h[t+4>>2]|0)|0,(h[t+8>>2]|0)-(h[t>>2]|0)|0)|0,(e|0)==3?4:e)|0)+i|0;a=a+1|0;if(a>>>0>=n>>>0)break;else{r=r+52|0;t=t+52|0}}return i|0}function er(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,v=0;l=h[e+24>>2]|0;v=l+16|0;n=h[v>>2]|0;f=(n|0)==0;if(f)r=0;else{a=0;r=0;o=h[l+24>>2]|0;s=h[(h[h[e+20>>2]>>2]|0)+20>>2]|0;while(1){u=h[o+24>>2]|0;u=((u&7|0)!=0&1)+(u>>>3)|0;r=(ue(ue((h[s+12>>2]|0)-(h[s+4>>2]|0)|0,(h[s+8>>2]|0)-(h[s>>2]|0)|0)|0,(u|0)==3?4:u)|0)+r|0;a=a+1|0;if((a|0)==(n|0))break;else{o=o+52|0;s=s+52|0}}}r=(r|0)!=(t|0);if(r|f){v=r&1^1;return v|0}u=0;f=h[l+24>>2]|0;t=h[(h[h[e+20>>2]>>2]|0)+20>>2]|0;while(1){e=h[f+24>>2]|0;r=(h[t+8>>2]|0)-(h[t>>2]|0)|0;n=(h[t+12>>2]|0)-(h[t+4>>2]|0)|0;s=ue(n,r)|0;e=((e&7|0)!=0&1)+(e>>>3)|0;e:do switch(((e|0)==3?4:e)|0){case 1:{n=h[t+32>>2]|0;r=(s|0)==0;if(!(h[f+32>>2]|0)){if(r)break e;else{a=0;r=n;n=i}while(1){h[r>>2]=m[n>>0];a=a+1|0;if((a|0)==(s|0))break;else{r=r+4|0;n=n+1|0}}i=i+s|0;break e}else{if(r)break e;else{a=0;r=n;n=i}while(1){h[r>>2]=c[n>>0];a=a+1|0;if((a|0)==(s|0))break;else{r=r+4|0;n=n+1|0}}i=i+s|0;break e}}case 2:{o=h[t+32>>2]|0;a=(s|0)==0;if(!(h[f+32>>2]|0)){if(!a){a=i+(ue(n<<1,r)|0)|0;n=0;r=o;while(1){h[r>>2]=b[i>>1];n=n+1|0;if((n|0)==(s|0))break;else{r=r+4|0;i=i+2|0}}i=a}}else if(!a){a=i+(ue(n<<1,r)|0)|0;n=0;r=o;while(1){h[r>>2]=d[i>>1];n=n+1|0;if((n|0)==(s|0))break;else{r=r+4|0;i=i+2|0}}i=a}break}case 4:{if(s){a=i+(ue(n<<2,r)|0)|0;r=0;n=h[t+32>>2]|0;while(1){h[n>>2]=h[i>>2];r=r+1|0;if((r|0)==(s|0))break;else{n=n+4|0;i=i+4|0}}i=a}break}default:{}}while(0);u=u+1|0;if(u>>>0>=(h[v>>2]|0)>>>0){i=1;break}else{f=f+52|0;t=t+52|0}}return i|0}function ir(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;a=e+24|0;i=h[a>>2]|0;if(!i)return;n=h[e+28>>2]|0;r=(n>>>0)/52|0;if(n>>>0>51){n=0;while(1){e=h[i>>2]|0;if(e){Qn(e+-1|0);h[i>>2]=0}e=i+4|0;t=h[e>>2]|0;if(t){Qn(t);h[e>>2]=0}e=i+8|0;t=h[e>>2]|0;if(t){Qn(t);h[e>>2]=0}n=n+1|0;if(n>>>0>=r>>>0)break;else i=i+52|0}i=h[a>>2]|0}Qn(i);h[a>>2]=0;return}function tr(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;a=e+24|0;i=h[a>>2]|0;if(!i)return;n=h[e+28>>2]|0;r=(n>>>0)/56|0;if(n>>>0>55){n=0;while(1){e=h[i>>2]|0;if(e){Qn(e);h[i>>2]=0}t=i+4|0;e=h[t>>2]|0;if(e){Qn(e);h[t>>2]=0}n=n+1|0;if(n>>>0>=r>>>0)break;else i=i+56|0}i=h[a>>2]|0}Qn(i);h[a>>2]=0;return}function rr(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=+r;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ce=0,de=0,he=0,me=0,be=0,ve=0,we=0,pe=0,ge=0,ke=0,_e=0,ye=0,Te=0,Me=0,Ce=0,xe=0,Ee=0,Se=0,Ae=0,Pe=0,Ie=0,Le=0,De=0,Re=0,Oe=0,Be=0,Ne=0,Fe=0,Ue=0,He=0,ze=0,je=0,Ye=0,Ve=0,qe=0;Ve=k;k=k+80|0;Ne=Ve+64|0;Be=Ve+56|0;Ue=Ve+48|0;ze=Ve+40|0;He=Ve+32|0;je=Ve+24|0;Fe=Ve+16|0;Oe=Ve+8|0;o=h[e+28>>2]|0;Re=h[h[e+20>>2]>>2]|0;d=h[(h[o+76>>2]|0)+(i*5640|0)+5584>>2]|0;m=h[Re+20>>2]|0;l=h[e+24>>2]|0;u=h[l+24>>2]|0;Ie=h[o+24>>2]|0;f=h[o+12>>2]|0;De=(ue(f,(i>>>0)%(Ie>>>0)|0)|0)+(h[o+4>>2]|0)|0;s=h[l>>2]|0;s=De>>>0>s>>>0?De:s;h[Re>>2]=s;De=Wf(f|0,0,De|0,0)|0;De=De|0-H;f=h[l+8>>2]|0;f=De>>>0<f>>>0?De:f;De=Re+8|0;h[De>>2]=f;Le=h[o+16>>2]|0;Ie=(ue(Le,(i>>>0)/(Ie>>>0)|0)|0)+(h[o+8>>2]|0)|0;i=h[l+4>>2]|0;i=Ie>>>0>i>>>0?Ie:i;Pe=Re+4|0;h[Pe>>2]=i;Ie=Wf(Le|0,0,Ie|0,0)|0;Ie=Ie|0-H;l=h[l+12>>2]|0;l=Ie>>>0<l>>>0?Ie:l;Ie=Re+12|0;h[Ie>>2]=l;if(!(h[d+4>>2]|0)){Jr(a,1,19796,Ve)|0;Ye=0;k=Ve;return Ye|0}Le=Re+16|0;if(!(h[Le>>2]|0)){Ye=1;k=Ve;return Ye|0}Ae=o+80|0;Se=e+40|0;Ee=(t|0)==0;o=i;xe=0;e:while(1){h[u+36>>2]=0;_e=h[u>>2]|0;i=(s+-1+_e|0)/(_e|0)|0;h[m>>2]=i;ye=h[u+4>>2]|0;o=(o+-1+ye|0)/(ye|0)|0;Ce=m+4|0;h[Ce>>2]=o;_e=(f+-1+_e|0)/(_e|0)|0;Me=m+8|0;h[Me>>2]=_e;ye=(l+-1+ye|0)/(ye|0)|0;Te=m+12|0;h[Te>>2]=ye;i=_e-i|0;o=ye-o|0;if((4294967295/(i>>>0)|0)>>>0<o>>>0){Ye=6;break}i=ue(o,i)|0;if(i>>>0>1073741823){Ye=8;break}f=i<<2;_e=h[d+4>>2]|0;ye=m+16|0;h[ye>>2]=_e;e=h[Ae>>2]|0;h[m+20>>2]=_e>>>0<e>>>0?1:_e-e|0;e=m+40|0;h[e>>2]=f;do if(c[Se>>0]&1){t=m+32|0;s=h[t>>2]|0;if(s){o=m+44|0;if(f>>>0<=(h[o>>2]|0)>>>0)break;i=m+36|0;if(h[i>>2]|0){$n(s);_e=Kn(h[e>>2]|0)|0;h[t>>2]=_e;if(!_e){Ye=16;break e}h[o>>2]=h[e>>2];h[i>>2]=1;break}}_e=Kn(f)|0;h[t>>2]=_e;if(!_e)break e;h[m+44>>2]=h[e>>2];h[m+36>>2]=1}while(0);t=(h[ye>>2]|0)*136|0;o=m+24|0;e=h[o>>2]|0;if(e){i=m+28|0;if(t>>>0>(h[i>>2]|0)>>>0){e=Jn(e,t)|0;if(!e){Ye=24;break}h[o>>2]=e;_e=h[i>>2]|0;Vf(e+_e|0,0,t-_e|0)|0;h[i>>2]=t}}else{i=Gn(t)|0;h[o>>2]=i;if(!i){i=0;Ye=87;break}h[m+28>>2]=t;Vf(i|0,0,t|0)|0}i=h[ye>>2]|0;_e=(h[d+20>>2]|0)==0?7:8;if(i){we=d+8|0;pe=d+12|0;ge=u+24|0;ke=d+804|0;ve=h[o>>2]|0;o=d+28|0;e=0;while(1){me=i;be=i+-1|0;ce=h[m>>2]|0;de=qf(1,0,be|0)|0;de=Wf(de|0,H|0,-1,-1)|0;he=H;ce=Wf(de|0,he|0,ce|0,((ce|0)<0)<<31>>31|0)|0;ce=Yf(ce|0,H|0,be|0)|0;h[ve>>2]=ce;t=h[Ce>>2]|0;t=Wf(de|0,he|0,t|0,((t|0)<0)<<31>>31|0)|0;t=Yf(t|0,H|0,be|0)|0;h[ve+4>>2]=t;i=h[Me>>2]|0;i=Wf(de|0,he|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Yf(i|0,H|0,be|0)|0;h[ve+8>>2]=i;s=h[Te>>2]|0;s=Wf(de|0,he|0,s|0,((s|0)<0)<<31>>31|0)|0;s=Yf(s|0,H|0,be|0)|0;h[ve+12>>2]=s;b=h[d+812+(e<<2)>>2]|0;l=h[d+944+(e<<2)>>2]|0;v=ce>>b<<b;p=t>>l<<l;f=qf(1,0,l|0)|0;f=Wf(f|0,H|0,-1,-1)|0;f=Wf(f|0,H|0,s|0,((s|0)<0)<<31>>31|0)|0;f=Yf(f|0,H|0,l|0)|0;if((ce|0)==(i|0))i=0;else{ce=qf(1,0,b|0)|0;ce=Wf(ce|0,H|0,-1,-1)|0;i=Wf(ce|0,H|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Yf(i|0,H|0,b|0)|0;i=(i<<b)-v>>b}ce=ve+16|0;h[ce>>2]=i;se=(t|0)==(s|0)?0:(f<<l)-p>>l;h[ve+20>>2]=se;se=ue(se,i)|0;fe=se*40|0;le=(e|0)==0;if(le)i=1;else{v=Wf(v|0,((v|0)<0)<<31>>31|0,1,0)|0;v=Gf(v|0,H|0,1)|0;p=Wf(p|0,((p|0)<0)<<31>>31|0,1,0)|0;p=Gf(p|0,H|0,1)|0;i=3;l=l+-1|0;b=b+-1|0}oe=ve+24|0;h[oe>>2]=i;V=h[we>>2]|0;V=V>>>0<b>>>0?V:b;q=h[pe>>2]|0;q=q>>>0<l>>>0?q:l;W=(se|0)!=0;G=(se|0)==0;X=1<<b;K=1<<l;$=qf(1,0,V|0)|0;$=Wf($|0,H|0,-1,-1)|0;J=H;Q=qf(1,0,q|0)|0;Q=Wf(Q|0,H|0,-1,-1)|0;Z=H;ee=1<<V;ie=1<<q;te=qf(1,0,me|0)|0;te=Wf(te|0,H|0,-1,-1)|0;re=H;ne=0;ae=ve+28|0;Y=o;while(1){if(le){i=h[m>>2]|0;i=Wf(de|0,he|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Yf(i|0,H|0,be|0)|0;o=h[Ce>>2]|0;o=Wf(de|0,he|0,o|0,((o|0)<0)<<31>>31|0)|0;o=Yf(o|0,H|0,be|0)|0;t=h[Me>>2]|0;t=Wf(de|0,he|0,t|0,((t|0)<0)<<31>>31|0)|0;t=Yf(t|0,H|0,be|0)|0;f=h[Te>>2]|0;f=Wf(de|0,he|0,f|0,((f|0)<0)<<31>>31|0)|0;f=Yf(f|0,H|0,be|0)|0;s=0}else{s=ne+1|0;i=h[m>>2]|0;U=qf(s&1|0,0,be|0)|0;U=jf(te|0,re|0,U|0,H|0)|0;f=H;i=Wf(U|0,f|0,i|0,((i|0)<0)<<31>>31|0)|0;i=Yf(i|0,H|0,me|0)|0;o=h[Ce>>2]|0;z=qf(s>>>1|0,0,be|0)|0;z=jf(te|0,re|0,z|0,H|0)|0;j=H;o=Wf(z|0,j|0,o|0,((o|0)<0)<<31>>31|0)|0;o=Yf(o|0,H|0,me|0)|0;t=h[Me>>2]|0;t=Wf(U|0,f|0,t|0,((t|0)<0)<<31>>31|0)|0;t=Yf(t|0,H|0,me|0)|0;f=h[Te>>2]|0;f=Wf(z|0,j|0,f|0,((f|0)<0)<<31>>31|0)|0;f=Yf(f|0,H|0,me|0)|0}h[ae+16>>2]=s;h[ae>>2]=i;j=ae+4|0;h[j>>2]=o;z=ae+8|0;h[z>>2]=t;U=ae+12|0;h[U>>2]=f;o=Ol[_e&15](s)|0;qe=+(h[Y+4>>2]|0)*.00048828125+1;qe=+Ds(1,(h[ge>>2]|0)+o-(h[Y>>2]|0)|0)*qe*r;w[ae+32>>2]=qe;h[ae+28>>2]=(h[Y>>2]|0)+-1+(h[ke>>2]|0);o=ae+20|0;t=h[o>>2]|0;if(!(W&(t|0)==0)){i=ae+24|0;if((h[i>>2]|0)>>>0<fe>>>0){t=Jn(t,fe)|0;if(!t){Ye=41;break e}h[o>>2]=t;F=h[i>>2]|0;Vf(t+F|0,0,fe-F|0)|0;h[i>>2]=fe}}else{i=Gn(fe)|0;h[o>>2]=i;if(!i){i=0;Ye=87;break e}Vf(i|0,0,fe|0)|0;h[ae+24>>2]=fe}if(!G){N=h[o>>2]|0;F=0;while(1){P=h[ce>>2]|0;R=(((F>>>0)%(P>>>0)|0)<<b)+v|0;P=(((F>>>0)/(P>>>0)|0)<<l)+p|0;I=R+X|0;L=P+K|0;D=h[ae>>2]|0;D=(R|0)>(D|0)?R:D;h[N>>2]=D;R=h[j>>2]|0;R=(P|0)>(R|0)?P:R;P=N+4|0;h[P>>2]=R;B=h[z>>2]|0;B=(I|0)<(B|0)?I:B;I=N+8|0;h[I>>2]=B;s=h[U>>2]|0;s=(L|0)<(s|0)?L:s;L=N+12|0;h[L>>2]=s;D=D>>V<<V;R=R>>q<<q;B=Wf($|0,J|0,B|0,((B|0)<0)<<31>>31|0)|0;B=Yf(B|0,H|0,V|0)|0;s=Wf(Q|0,Z|0,s|0,((s|0)<0)<<31>>31|0)|0;s=Yf(s|0,H|0,q|0)|0;B=(B<<V)-D>>V;O=N+16|0;h[O>>2]=B;s=(s<<q)-R>>q;g=N+20|0;h[g>>2]=s;B=ue(s,B)|0;s=ue(B,n)|0;o=N+24|0;t=h[o>>2]|0;do if((t|0)==0&(B|0)!=0){i=Gn(s)|0;h[o>>2]=i;if(!i){i=0;Ye=87;break e}Vf(i|0,0,s|0)|0;h[N+28>>2]=s}else{i=N+28|0;if(s>>>0<=(h[i>>2]|0)>>>0)break;t=Jn(t,s)|0;if(!t){Ye=50;break e}h[o>>2]=t;A=h[i>>2]|0;Vf(t+A|0,0,s-A|0)|0;h[i>>2]=s}while(0);f=N+32|0;i=h[f>>2]|0;t=h[O>>2]|0;s=h[g>>2]|0;if(!i)i=nr(t,s,a)|0;else i=co(i,t,s,a)|0;h[f>>2]=i;if(!i)Jr(a,2,20009,Be)|0;f=N+36|0;t=h[f>>2]|0;s=h[O>>2]|0;i=h[g>>2]|0;if(!t)i=nr(s,i,a)|0;else i=co(t,s,i,a)|0;h[f>>2]=i;if(!i)Jr(a,2,20031,Ne)|0;if(B){A=0;do{x=h[O>>2]|0;C=(((A>>>0)%(x>>>0)|0)<<V)+D|0;x=(((A>>>0)/(x>>>0)|0)<<q)+R|0;E=C+ee|0;S=x+ie|0;do if(Ee){i=h[o>>2]|0;t=i+(A*56|0)|0;s=h[t>>2]|0;if(!s){M=Gn(8192)|0;h[t>>2]=M;if(!M){i=0;Ye=87;break e}h[i+(A*56|0)+32>>2]=8192;M=Xn(10,32)|0;h[i+(A*56|0)+4>>2]=M;if(!M){i=0;Ye=87;break e}h[i+(A*56|0)+52>>2]=10}else{f=i+(A*56|0)+32|0;g=h[f>>2]|0;_=i+(A*56|0)+4|0;y=h[_>>2]|0;T=t;M=T+52|0;do{h[T>>2]=0;T=T+4|0}while((T|0)<(M|0));h[t>>2]=s;h[f>>2]=g;h[_>>2]=y}M=h[N>>2]|0;h[i+(A*56|0)+8>>2]=(C|0)>(M|0)?C:M;C=h[P>>2]|0;h[i+(A*56|0)+12>>2]=(x|0)>(C|0)?x:C;x=h[I>>2]|0;h[i+(A*56|0)+16>>2]=(E|0)<(x|0)?E:x;E=h[L>>2]|0;h[i+(A*56|0)+20>>2]=(S|0)<(E|0)?S:E}else{t=h[o>>2]|0;i=t+(A*52|0)+4|0;if((h[i>>2]|0)==0?(M=Xn(100,24)|0,h[i>>2]=M,(M|0)==0):0){i=0;Ye=87;break e}i=t+(A*52|0)+8|0;if((h[i>>2]|0)==0?(M=Xn(100,24)|0,h[i>>2]=M,(M|0)==0):0){i=0;Ye=87;break e}f=h[N>>2]|0;f=(C|0)>(f|0)?C:f;h[t+(A*52|0)+12>>2]=f;i=h[P>>2]|0;x=(x|0)>(i|0)?x:i;h[t+(A*52|0)+16>>2]=x;i=h[I>>2]|0;i=(E|0)<(i|0)?E:i;h[t+(A*52|0)+20>>2]=i;E=h[L>>2]|0;S=(S|0)<(E|0)?S:E;h[t+(A*52|0)+24>>2]=S;f=ue(S-x|0,i-f<<2)|0;i=t+(A*52|0)+36|0;if(f>>>0<=(h[i>>2]|0)>>>0)break;s=t+(A*52|0)|0;t=h[s>>2]|0;if(t)Qn(t+-1|0);t=Gn(f|1)|0;h[s>>2]=t;if(!t){Ye=74;break e}h[i>>2]=f;c[t>>0]=0;h[s>>2]=(h[s>>2]|0)+1}while(0);A=A+1|0}while(A>>>0<B>>>0)}F=F+1|0;if(F>>>0>=se>>>0)break;else N=N+40|0}}o=Y+8|0;ne=ne+1|0;if(ne>>>0>=(h[oe>>2]|0)>>>0)break;else{ae=ae+36|0;Y=o}}e=e+1|0;if(e>>>0<(h[ye>>2]|0)>>>0){i=be;ve=ve+136|0}else break}}i=xe+1|0;if(i>>>0>=(h[Le>>2]|0)>>>0){i=1;Ye=87;break}s=h[Re>>2]|0;o=h[Pe>>2]|0;f=h[De>>2]|0;l=h[Ie>>2]|0;xe=i;u=u+52|0;d=d+1080|0;m=m+52|0}if((Ye|0)==6){Jr(a,1,19835,Oe)|0;Ye=0;k=Ve;return Ye|0}else if((Ye|0)==8){Jr(a,1,19835,Fe)|0;Ye=0;k=Ve;return Ye|0}else if((Ye|0)==16){h[o>>2]=0;h[e>>2]=0;h[i>>2]=0}else if((Ye|0)==24){Jr(a,1,19868,He)|0;Qn(h[o>>2]|0);h[o>>2]=0;h[i>>2]=0;Ye=0;k=Ve;return Ye|0}else if((Ye|0)==41){Jr(a,1,19908,ze)|0;Qn(h[o>>2]|0);h[o>>2]=0;h[i>>2]=0;Ye=0;k=Ve;return Ye|0}else if((Ye|0)==50){Qn(h[o>>2]|0);h[o>>2]=0;h[i>>2]=0;Jr(a,1,19951,Ue)|0;Ye=0;k=Ve;return Ye|0}else if((Ye|0)==74){h[i>>2]=0;Ye=0;k=Ve;return Ye|0}else if((Ye|0)==87){k=Ve;return i|0}Jr(a,1,19835,je)|0;Ye=0;k=Ve;return Ye|0}function nr(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0;_=k;k=k+288|0;l=_+16|0;s=_+8|0;p=_+152|0;g=_+24|0;r=Xn(1,20)|0;if(!r){Jr(t,1,20053,_)|0;g=0;k=_;return g|0}h[r>>2]=e;u=r+4|0;h[u>>2]=i;h[p>>2]=e;h[g>>2]=i;f=r+8|0;h[f>>2]=0;n=0;o=0;while(1){w=ue(i,e)|0;e=(e+1|0)/2|0;a=o+1|0;h[p+(a<<2)>>2]=e;i=(i+1|0)/2|0;h[g+(a<<2)>>2]=i;n=n+w|0;if(w>>>0<=1)break;else o=a}h[f>>2]=n;if(!n){Qn(r);Jr(t,2,20091,s)|0;g=0;k=_;return g|0}n=Xn(n,16)|0;h[r+12>>2]=n;if(!n){Jr(t,1,20141,l)|0;Qn(r);g=0;k=_;return g|0}w=h[f>>2]|0;h[r+16>>2]=w<<4;i=n+((ue(h[u>>2]|0,h[r>>2]|0)|0)<<4)|0;if(!o)i=n;else{v=0;a=i;e=i;i=n;do{m=h[g+(v<<2)>>2]|0;e:do if((m|0)>0){b=h[p+(v<<2)>>2]|0;if((b|0)<=0){f=m+-1|0;t=0;while(1){d=(t&1|0)!=0|(t|0)==(f|0);s=d?a:e;e=d?a:e+(b<<4)|0;t=t+1|0;if((t|0)>=(m|0)){a=s;break e}else a=s}}d=((b+2+((b|0)<2?~b:-3)|0)>>>1)+1|0;u=m+-1|0;c=0;do{t=b;l=a;while(1){h[i>>2]=l;s=i+16|0;f=t;t=t+-2|0;if((t|0)>-1){h[s>>2]=l;i=i+32|0}else i=s;if((f|0)<=2)break;else l=l+16|0}l=a+(d<<4)|0;t=(c&1|0)!=0|(c|0)==(u|0);a=t?l:e;e=t?l:e+(b<<4)|0;c=c+1|0}while((c|0)<(m|0))}while(0);v=v+1|0}while((v|0)!=(o|0))}h[i>>2]=0;if(!w){g=r;k=_;return g|0}else i=0;while(1){h[n+4>>2]=999;h[n+8>>2]=0;h[n+12>>2]=0;i=i+1|0;if((i|0)==(w|0))break;else n=n+16|0}k=_;return r|0}function ar(e){e=e|0;var i=0,t=0;if(!e)return;i=h[e+8>>2]|0;if(!i)return;t=0;e=h[e+12>>2]|0;while(1){h[e+4>>2]=999;h[e+8>>2]=0;h[e+12>>2]=0;t=t+1|0;if(t>>>0>=i>>>0)break;else e=e+16|0}return}function or(e){e=e|0;var i=0;i=k;k=k+e|0;k=k+15&-16;return i|0}function sr(){return k|0}function fr(e){e=e|0;k=e}function lr(e,i){e=e|0;i=i|0;k=e;_=i}function ur(e,i){e=e|0;i=i|0;if(!C){C=e;x=i}}function cr(e){e=e|0;c[y>>0]=c[e>>0];c[y+1>>0]=c[e+1>>0];c[y+2>>0]=c[e+2>>0];c[y+3>>0]=c[e+3>>0]}function dr(e){e=e|0;c[y>>0]=c[e>>0];c[y+1>>0]=c[e+1>>0];c[y+2>>0]=c[e+2>>0];c[y+3>>0]=c[e+3>>0];c[y+4>>0]=c[e+4>>0];c[y+5>>0]=c[e+5>>0];c[y+6>>0]=c[e+6>>0];c[y+7>>0]=c[e+7>>0]}function hr(e){e=e|0;H=e}function mr(){return H|0}function br(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;b=k;k=k+8288|0;u=b+8|0;l=b;f=b+28|0;d=b+24|0;s=b+12|0;h[d>>2]=0;if((h[e>>2]|0)==1375686655)m=dn(0)|0;else m=dn(2)|0;sn(m,1,0)|0;fn(m,2,0)|0;ln(m,3,0)|0;hn(f);h[s>>2]=e;h[s+4>>2]=e;h[s+8>>2]=i;c=un(s,1)|0;if(!(mn(m,f)|0)){mf(4476)|0;Br(c);In(m);a=1;k=b;return a|0}if(!(bn(c,m,d)|0)){mf(4528)|0;Br(c);In(m);rn(h[d>>2]|0);a=1;k=b;return a|0}if(!(kn(m,c,h[d>>2]|0,h[f+8228>>2]|0)|0)){mf(4578)|0;In(m);Br(c);rn(h[d>>2]|0);a=1;k=b;return a|0}h[l>>2]=h[(h[(h[d>>2]|0)+24>>2]|0)+28>>2];hf(4625,l)|0;h[u>>2]=h[(h[(h[d>>2]|0)+24>>2]|0)+32>>2];hf(4634,u)|0;s=h[d>>2]|0;h[n>>2]=h[s+8>>2];h[a>>2]=h[s+12>>2];e=h[s+16>>2]|0;h[o>>2]=e;e=ue(ue(e<<2,h[n>>2]|0)|0,h[a>>2]|0)|0;h[r>>2]=e;l=Df(e)|0;h[t>>2]=l;switch(h[o>>2]|0){case 1:{Xf(l|0,h[(h[s+24>>2]|0)+44>>2]|0,e|0)|0;break}case 3:{if((ue(h[a>>2]|0,h[n>>2]|0)|0)>0){i=h[s+24>>2]|0;s=h[i+44>>2]|0;e=h[i+96>>2]|0;i=h[i+148>>2]|0;f=0;do{o=f*3|0;h[l+(o<<2)>>2]=h[s+(f<<2)>>2];h[l+(o+1<<2)>>2]=h[e+(f<<2)>>2];h[l+(o+2<<2)>>2]=h[i+(f<<2)>>2];f=f+1|0}while((f|0)<(ue(h[a>>2]|0,h[n>>2]|0)|0))}break}default:{}}Br(c);In(m);rn(h[d>>2]|0);a=0;k=b;return a|0}function vr(){return cn()|0}function wr(e,i){e=e|0;i=i|0;return}function pr(e,i){e=e|0;i=i|0;return}function gr(e,i){e=e|0;i=i|0;var t=0;i=k;k=k+16|0;t=i;h[t>>2]=e;hf(4644,t)|0;k=i;return}function kr(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=k;k=k+16|0;n=a;h[n>>2]=i;if(!t){k=a;return}i=e;r=0;e=n+(t+-1)|0;while(1){c[i>>0]=c[e>>0]|0;r=r+1|0;if((r|0)==(t|0))break;else{i=i+1|0;e=e+-1|0}}k=a;return}function _r(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;h[i>>2]=0;if(!t)return;r=0;i=i+(t+-1)|0;while(1){c[i>>0]=c[e>>0]|0;r=r+1|0;if((r|0)==(t|0))break;else{e=e+1|0;i=i+-1|0}}return}function yr(e,i){e=e|0;i=+i;var t=0,r=0,n=0,a=0,o=0;t=k;k=k+16|0;a=t;p[a>>3]=i;a=a+8|0;p[y>>3]=i;r=h[y>>2]|0;n=h[y+4>>2]|0;o=Gf(r|0,n|0,56)|0;c[e>>0]=o;o=Gf(r|0,n|0,48)|0;c[e+1>>0]=o;o=Gf(r|0,n|0,40)|0;c[e+2>>0]=o;c[e+3>>0]=n;c[e+4>>0]=c[a+-5>>0]|0;c[e+5>>0]=c[a+-6>>0]|0;n=Gf(r|0,n|0,8)|0;c[e+6>>0]=n;c[e+7>>0]=r;k=t;return}function Tr(e,i){e=e|0;i=i|0;var t=0;t=i+8|0;c[t+-1>>0]=c[e>>0]|0;c[t+-2>>0]=c[e+1>>0]|0;c[t+-3>>0]=c[e+2>>0]|0;c[t+-4>>0]=c[e+3>>0]|0;c[t+-5>>0]=c[e+4>>0]|0;c[t+-6>>0]=c[e+5>>0]|0;c[t+-7>>0]=c[e+6>>0]|0;c[i>>0]=c[e+7>>0]|0;return}function Mr(e,i){e=e|0;i=+i;var t=0;t=(w[y>>2]=i,h[y>>2]|0);c[e>>0]=t>>>24;c[e+1>>0]=t>>>16;c[e+2>>0]=t>>>8;c[e+3>>0]=t;return}function Cr(e,i){e=e|0;i=i|0;var t=0;t=i+4|0;c[t+-1>>0]=c[e>>0]|0;c[t+-2>>0]=c[e+1>>0]|0;c[t+-3>>0]=c[e+2>>0]|0;c[i>>0]=c[e+3>>0]|0;return}function xr(e,i){e=e|0;i=i|0;var t=0,r=0;r=Xn(1,72)|0;if(!r){i=0;return i|0}h[r+64>>2]=e;e=Gn(e)|0;h[r+32>>2]=e;if(!e){Qn(r);i=0;return i|0}h[r+36>>2]=e;e=r+68|0;t=h[e>>2]|0;if(!i){h[e>>2]=t|1;h[r+40>>2]=31;h[r+44>>2]=32}else{h[e>>2]=t|2;h[r+40>>2]=29;h[r+44>>2]=30}h[r+16>>2]=4;h[r+20>>2]=5;h[r+24>>2]=6;h[r+28>>2]=7;i=r;return i|0}function Er(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0;c=k;k=k+16|0;u=c;n=e+48|0;a=h[n>>2]|0;if(a>>>0>=i>>>0){u=e+36|0;h[u>>2]=(h[u>>2]|0)+i;h[n>>2]=a-i;u=e+56|0;e=u;e=Wf(h[e>>2]|0,h[e+4>>2]|0,i|0,t|0)|0;h[u>>2]=e;h[u+4>>2]=H;u=t;e=i;H=u;k=c;return e|0}l=e+68|0;if(h[l>>2]&4){u=e+36|0;h[u>>2]=(h[u>>2]|0)+a;h[n>>2]=0;e=e+56|0;u=e;u=Wf(h[u>>2]|0,h[u+4>>2]|0,a|0,0)|0;h[e>>2]=u;h[e+4>>2]=H;e=(a|0)!=0;u=e?0:-1;e=e?a:-1;H=u;k=c;return e|0}if(!a){a=0;n=0}else{h[e+36>>2]=h[e+32>>2];i=jf(i|0,t|0,a|0,0)|0;h[n>>2]=0;n=0;t=H}e:do if((t|0)>0|(t|0)==0&i>>>0>0){f=e+24|0;while(1){o=Pl[h[f>>2]&63](i,t,h[e>>2]|0)|0;s=H;if((o|0)==-1&(s|0)==-1)break;i=jf(i|0,t|0,o|0,s|0)|0;t=H;a=Wf(o|0,s|0,a|0,n|0)|0;n=H;if(!((t|0)>0|(t|0)==0&i>>>0>0))break e}Jr(r,4,4655,u)|0;h[l>>2]=h[l>>2]|4;e=e+56|0;u=e;u=Wf(h[u>>2]|0,h[u+4>>2]|0,a|0,n|0)|0;h[e>>2]=u;h[e+4>>2]=H;e=(a|0)!=0|(n|0)!=0;u=e?n:-1;e=e?a:-1;H=u;k=c;return e|0}while(0);u=e+56|0;e=u;e=Wf(h[e>>2]|0,h[e+4>>2]|0,a|0,n|0)|0;h[u>>2]=e;h[u+4>>2]=H;u=n;e=a;H=u;k=c;return e|0}function Sr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;h[e+36>>2]=h[e+32>>2];h[e+48>>2]=0;a=(Pl[h[e+28>>2]&63](i,t,h[e>>2]|0)|0)==0;r=e+68|0;n=h[r>>2]|0;if(a){h[r>>2]=n|4;a=0;return a|0}else{h[r>>2]=n&-5;a=e+56|0;h[a>>2]=i;h[a+4>>2]=t;a=1;return a|0}return 0}function Ar(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0;v=k;k=k+16|0;b=v+8|0;u=v;m=e+68|0;if(h[m>>2]&8){b=-1;e=-1;H=b;k=v;return e|0}f=e+32|0;n=h[f>>2]|0;d=e+36|0;h[d>>2]=n;l=e+48|0;a=h[l>>2]|0;do if(a){s=e+20|0;while(1){o=Pl[h[s>>2]&63](n,a,h[e>>2]|0)|0;if((o|0)==-1)break;n=(h[d>>2]|0)+o|0;h[d>>2]=n;w=h[l>>2]|0;a=w-o|0;h[l>>2]=a;if((w|0)==(o|0)){c=6;break}}if((c|0)==6){n=h[f>>2]|0;break}h[m>>2]=h[m>>2]|8;Jr(r,4,4681,u)|0;h[m>>2]=h[m>>2]|8;h[l>>2]=0;e=-1;w=-1;H=e;k=v;return w|0}while(0);h[d>>2]=n;e:do if((t|0)>0|(t|0)==0&i>>>0>0){f=e+24|0;a=0;n=0;while(1){o=Pl[h[f>>2]&63](i,t,h[e>>2]|0)|0;s=H;if((o|0)==-1&(s|0)==-1)break;i=jf(i|0,t|0,o|0,s|0)|0;t=H;a=Wf(o|0,s|0,a|0,n|0)|0;n=H;if(!((t|0)>0|(t|0)==0&i>>>0>0))break e}Jr(r,4,4707,b)|0;h[m>>2]=h[m>>2]|8;w=e+56|0;e=w;e=Wf(h[e>>2]|0,h[e+4>>2]|0,a|0,n|0)|0;h[w>>2]=e;h[w+4>>2]=H;w=(a|0)!=0|(n|0)!=0;e=w?n:-1;w=w?a:-1;H=e;k=v;return w|0}else{a=0;n=0}while(0);e=e+56|0;w=e;w=Wf(h[w>>2]|0,h[w+4>>2]|0,a|0,n|0)|0;h[e>>2]=w;h[e+4>>2]=H;e=n;w=a;H=e;k=v;return w|0}function Pr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;m=k;k=k+16|0;f=m;u=e+32|0;n=h[u>>2]|0;c=e+36|0;h[c>>2]=n;d=e+48|0;a=h[d>>2]|0;do if(!a)a=e;else{s=e+20|0;while(1){o=Pl[h[s>>2]&63](n,a,h[e>>2]|0)|0;if((o|0)==-1)break;n=(h[c>>2]|0)+o|0;h[c>>2]=n;b=h[d>>2]|0;a=b-o|0;h[d>>2]=a;if((b|0)==(o|0)){l=6;break}}if((l|0)==6){a=e;n=h[u>>2]|0;break}b=e+68|0;h[b>>2]=h[b>>2]|8;Jr(r,4,4681,f)|0;h[b>>2]=h[b>>2]|8;b=0;k=m;return b|0}while(0);h[c>>2]=n;h[d>>2]=0;if(!(Pl[h[e+28>>2]&63](i,t,h[a>>2]|0)|0)){b=e+68|0;h[b>>2]=h[b>>2]|8;b=0;k=m;return b|0}else{b=e+56|0;h[b>>2]=i;h[b+4>>2]=t;b=1;k=m;return b|0}return 0}function Ir(e,i,t){e=e|0;i=i|0;t=t|0;return-1}function Lr(e,i,t){e=e|0;i=i|0;t=t|0;return-1}function Dr(e,i,t){e=e|0;i=i|0;t=t|0;H=-1;return-1}function Rr(e,i,t){e=e|0;i=i|0;t=t|0;return 0}function Or(e){e=e|0;var i=0,t=0,r=0;r=Xn(1,72)|0;if(!r){e=0;return e|0}h[r+64>>2]=1048576;i=Gn(1048576)|0;h[r+32>>2]=i;if(!i){Qn(r);e=0;return e|0}h[r+36>>2]=i;i=r+68|0;t=h[i>>2]|0;if(!e){h[i>>2]=t|1;h[r+40>>2]=31;h[r+44>>2]=32}else{h[i>>2]=t|2;h[r+40>>2]=29;h[r+44>>2]=30}h[r+16>>2]=4;h[r+20>>2]=5;h[r+24>>2]=6;h[r+28>>2]=7;e=r;return e|0}function Br(e){e=e|0;var i=0;if(!e)return;i=h[e+4>>2]|0;if(i)Ll[i&7](h[e>>2]|0);i=e+32|0;Qn(h[i>>2]|0);h[i>>2]=0;Qn(e);return}function Nr(e,i){e=e|0;i=i|0;if(!e)return;if(!(h[e+68>>2]&2))return;h[e+16>>2]=i;return}function Fr(e,i){e=e|0;i=i|0;if(!e)return;h[e+28>>2]=i;return}function Ur(e,i){e=e|0;i=i|0;if(!e)return;if(!(h[e+68>>2]&1))return;h[e+20>>2]=i;return}function Hr(e,i){e=e|0;i=i|0;if(!e)return;h[e+24>>2]=i;return}function zr(e,i,t){e=e|0;i=i|0;t=t|0;if(!e)return;h[e>>2]=i;h[e+4>>2]=t;return}function jr(e,i,t){e=e|0;i=i|0;t=t|0;if(!e)return;e=e+8|0;h[e>>2]=i;h[e+4>>2]=t;return}function Yr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;y=k;k=k+16|0;w=y+8|0;v=y;_=e+48|0;n=h[_>>2]|0;if(n>>>0>=t>>>0){g=e+36|0;Xf(i|0,h[g>>2]|0,t|0)|0;h[g>>2]=(h[g>>2]|0)+t;h[_>>2]=(h[_>>2]|0)-t;_=e+56|0;g=_;g=Wf(h[g>>2]|0,h[g+4>>2]|0,t|0,0)|0;h[_>>2]=g;h[_+4>>2]=H;_=t;k=y;return _|0}p=e+68|0;if(h[p>>2]&4){g=e+36|0;Xf(i|0,h[g>>2]|0,n|0)|0;r=h[_>>2]|0;h[g>>2]=(h[g>>2]|0)+r;g=e+56|0;p=g;r=Wf(h[p>>2]|0,h[p+4>>2]|0,r|0,0)|0;h[g>>2]=r;h[g+4>>2]=H;h[_>>2]=0;_=(n|0)!=0?n:-1;k=y;return _|0}if(!n){d=e+32|0;a=h[d>>2]|0;m=e+36|0;h[m>>2]=a;b=m;g=e+56|0;n=0}else{m=e+36|0;Xf(i|0,h[m>>2]|0,n|0)|0;d=e+32|0;a=h[d>>2]|0;h[m>>2]=a;b=h[_>>2]|0;g=e+56|0;u=g;u=Wf(h[u>>2]|0,h[u+4>>2]|0,b|0,0)|0;c=g;h[c>>2]=u;h[c+4>>2]=H;h[_>>2]=0;t=t-b|0;i=i+b|0;b=m}u=e+64|0;c=e+16|0;l=i;o=a;while(1){i=h[u>>2]|0;a=h[c>>2]|0;if(t>>>0<i>>>0){a=Pl[a&63](o,i,h[e>>2]|0)|0;h[_>>2]=a;if((a|0)==-1){a=11;break}if(a>>>0>=t>>>0){i=l;a=14;break}Xf(l|0,h[b>>2]|0,a|0)|0;o=h[d>>2]|0;h[m>>2]=o;i=h[_>>2]|0;s=g;s=Wf(h[s>>2]|0,h[s+4>>2]|0,i|0,0)|0;f=H;n=a+n|0}else{i=Pl[a&63](l,t,h[e>>2]|0)|0;h[_>>2]=i;if((i|0)==-1){a=16;break}n=i+n|0;if(i>>>0>=t>>>0){a=20;break}o=h[d>>2]|0;h[m>>2]=o;s=g;s=Wf(h[s>>2]|0,h[s+4>>2]|0,i|0,0)|0;f=H}a=g;h[a>>2]=s;h[a+4>>2]=f;h[_>>2]=0;t=t-i|0;l=l+i|0}if((a|0)==11){Jr(r,4,4655,v)|0;h[_>>2]=0;h[p>>2]=h[p>>2]|4;_=(n|0)!=0?n:-1;k=y;return _|0}else if((a|0)==14){Xf(i|0,h[b>>2]|0,t|0)|0;h[b>>2]=(h[b>>2]|0)+t;h[_>>2]=(h[_>>2]|0)-t;r=g;r=Wf(h[r>>2]|0,h[r+4>>2]|0,t|0,0)|0;_=g;h[_>>2]=r;h[_+4>>2]=H;_=n+t|0;k=y;return _|0}else if((a|0)==16){Jr(r,4,4655,w)|0;h[_>>2]=0;h[p>>2]=h[p>>2]|4;_=(n|0)!=0?n:-1;k=y;return _|0}else if((a|0)==20){r=g;r=Wf(h[r>>2]|0,h[r+4>>2]|0,i|0,0)|0;h[g>>2]=r;h[g+4>>2]=H;h[m>>2]=h[d>>2];h[_>>2]=0;_=n;k=y;return _|0}return 0}function Vr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0;g=k;k=k+16|0;v=g;c=e+68|0;if(h[c>>2]&8){p=-1;k=g;return p|0}b=e+64|0;n=h[b>>2]|0;p=e+48|0;f=h[p>>2]|0;a=n-f|0;do if(a>>>0<t>>>0){d=e+32|0;o=e+36|0;m=e+20|0;s=e+56|0;l=n;u=a;n=0;e:while(1){if((l|0)==(f|0))a=h[d>>2]|0;else{Xf(h[o>>2]|0,i|0,u|0)|0;a=h[d>>2]|0;h[o>>2]=a;f=(h[p>>2]|0)+u|0;h[p>>2]=f;_=s;_=Wf(h[_>>2]|0,h[_+4>>2]|0,u|0,0)|0;l=s;h[l>>2]=_;h[l+4>>2]=H;t=t-u|0;i=i+u|0;n=u+n|0}h[o>>2]=a;if(!f)f=0;else{do{l=Pl[h[m>>2]&63](a,f,h[e>>2]|0)|0;if((l|0)==-1)break e;a=(h[o>>2]|0)+l|0;h[o>>2]=a;_=h[p>>2]|0;f=_-l|0;h[p>>2]=f}while((_|0)!=(l|0));a=h[d>>2]|0}h[o>>2]=a;l=h[b>>2]|0;u=l-f|0;if(t>>>0<=u>>>0){w=5;break}}if((w|0)==5)break;h[c>>2]=h[c>>2]|8;Jr(r,4,4681,v)|0;_=-1;k=g;return _|0}else{a=e+36|0;s=e+56|0;o=a;a=h[a>>2]|0;n=0}while(0);Xf(a|0,i|0,t|0)|0;h[o>>2]=(h[o>>2]|0)+t;h[p>>2]=(h[p>>2]|0)+t;p=s;p=Wf(h[p>>2]|0,h[p+4>>2]|0,t|0,0)|0;_=s;h[_>>2]=p;h[_+4>>2]=H;_=n+t|0;k=g;return _|0}function qr(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;c=k;k=k+16|0;f=c;a=e+32|0;t=h[a>>2]|0;u=e+36|0;h[u>>2]=t;o=e+48|0;r=h[o>>2]|0;do if(r){s=e+20|0;while(1){n=Pl[h[s>>2]&63](t,r,h[e>>2]|0)|0;if((n|0)==-1)break;t=(h[u>>2]|0)+n|0;h[u>>2]=t;d=h[o>>2]|0;r=d-n|0;h[o>>2]=r;if((d|0)==(n|0)){l=6;break}}if((l|0)==6){t=h[a>>2]|0;break}d=e+68|0;h[d>>2]=h[d>>2]|8;Jr(i,4,4681,f)|0;d=0;k=c;return d|0}while(0);h[u>>2]=t;d=1;k=c;return d|0}function Wr(e){e=e|0;e=e+56|0;H=h[e+4>>2]|0;return h[e>>2]|0}function Gr(e){e=e|0;var i=0,t=0;t=e+8|0;i=h[t>>2]|0;t=h[t+4>>2]|0;if((i|0)==0&(t|0)==0){t=0;e=0;H=t;return e|0}e=e+56|0;e=jf(i|0,t|0,h[e>>2]|0,h[e+4>>2]|0)|0;t=H;H=t;return e|0}function Xr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;e=Fl[h[e+40>>2]&63](e,i,t,r)|0;return e|0}function Kr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return Fl[h[e+44>>2]&63](e,i,t,r)|0}function $r(e){e=e|0;return(h[e+28>>2]|0)!=7|0}function Jr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+528|0;a=s;o=s+16|0;e:do if(e){switch(i|0){case 1:{i=e;n=e+12|0;break}case 2:{i=e+4|0;n=e+16|0;break}case 4:{i=e+8|0;n=e+20|0;break}default:{i=0;break e}}e=h[i>>2]|0;i=h[n>>2]|0;if(i)if(!t)i=1;else{Vf(o|0,0,512)|0;h[a>>2]=r;wf(o,512,t,a)|0;Dl[i&7](o,e);i=1}else i=0}else i=0;while(0);k=s;return i|0}function Qr(e){e=e|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=4;h[e+20>>2]=4;h[e+16>>2]=4;return}function Zr(e,i){e=e|0;i=i|0;return}function en(){return Xn(1,36)|0}function tn(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;r=Xn(1,36)|0;if(!r){s=r;return s|0}h[r+20>>2]=t;o=r+16|0;h[o>>2]=e;t=Xn(1,e*52|0)|0;s=r+24|0;h[s>>2]=t;if(!t){t=h[r+28>>2]|0;if(t)Qn(t);Qn(r);s=0;return s|0}if(!e){s=r;return s|0}n=0;while(1){h[t+(n*52|0)>>2]=h[i+(n*36|0)>>2];h[t+(n*52|0)+4>>2]=h[i+(n*36|0)+4>>2];f=h[i+(n*36|0)+8>>2]|0;h[t+(n*52|0)+8>>2]=f;l=h[i+(n*36|0)+12>>2]|0;h[t+(n*52|0)+12>>2]=l;h[t+(n*52|0)+16>>2]=h[i+(n*36|0)+16>>2];h[t+(n*52|0)+20>>2]=h[i+(n*36|0)+20>>2];h[t+(n*52|0)+24>>2]=h[i+(n*36|0)+24>>2];h[t+(n*52|0)+28>>2]=h[i+(n*36|0)+28>>2];h[t+(n*52|0)+32>>2]=h[i+(n*36|0)+32>>2];f=Xn(ue(l,f)|0,4)|0;h[t+(n*52|0)+44>>2]=f;n=n+1|0;if(!f)break;if(n>>>0>=e>>>0){a=22;break}t=h[s>>2]|0}if((a|0)==22)return r|0;t=h[s>>2]|0;if(t){n=h[o>>2]|0;if(n){i=0;while(1){t=h[t+(i*52|0)+44>>2]|0;if(t){Qn(t);n=h[o>>2]|0}i=i+1|0;if(i>>>0>=n>>>0)break;t=h[s>>2]|0}t=h[s>>2]|0}Qn(t)}t=h[r+28>>2]|0;if(t)Qn(t);Qn(r);l=0;return l|0}function rn(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;if(!e)return;n=e+24|0;i=h[n>>2]|0;if(i){a=e+16|0;t=h[a>>2]|0;if(t){r=0;while(1){i=h[i+(r*52|0)+44>>2]|0;if(i){Qn(i);t=h[a>>2]|0}r=r+1|0;if(r>>>0>=t>>>0)break;i=h[n>>2]|0}i=h[n>>2]|0}Qn(i)}i=h[e+28>>2]|0;if(i)Qn(i);Qn(e);return}function nn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0;t=h[i+4>>2]|0;r=h[e>>2]|0;a=h[i+8>>2]|0;o=h[e+4>>2]|0;n=h[i+12>>2]|0;u=(ue((h[i+24>>2]|0)+-1|0,n)|0)+t|0;s=h[i+16>>2]|0;f=(ue((h[i+28>>2]|0)+-1|0,s)|0)+a|0;i=Wf(u|0,0,n|0,0)|0;i=i|0-H;n=h[e+8>>2]|0;s=Wf(f|0,0,s|0,0)|0;s=s|0-H;f=h[e+12>>2]|0;u=h[e+16>>2]|0;if(!u)return;l=(t>>>0>r>>>0?t:r)+-1|0;a=(a>>>0>o>>>0?a:o)+-1|0;n=(i>>>0<n>>>0?i:n)+-1|0;t=(s>>>0<f>>>0?s:f)+-1|0;r=0;i=h[e+24>>2]|0;while(1){o=h[i>>2]|0;f=((l+o|0)>>>0)/(o>>>0)|0;m=h[i+4>>2]|0;e=((a+m|0)>>>0)/(m>>>0)|0;s=h[i+40>>2]|0;d=qf(1,0,s|0)|0;c=H;o=Wf((((n+o|0)>>>0)/(o>>>0)|0)-f|0,0,-1,-1)|0;o=Wf(o|0,H|0,d|0,c|0)|0;o=Gf(o|0,H|0,s|0)|0;m=Wf((((t+m|0)>>>0)/(m>>>0)|0)-e|0,0,-1,-1)|0;c=Wf(m|0,H|0,d|0,c|0)|0;s=Gf(c|0,H|0,s|0)|0;h[i+8>>2]=o;h[i+12>>2]=s;h[i+16>>2]=f;h[i+20>>2]=e;r=r+1|0;if(r>>>0>=u>>>0)break;else i=i+52|0}return}function an(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;h[i>>2]=h[e>>2];h[i+4>>2]=h[e+4>>2];h[i+8>>2]=h[e+8>>2];h[i+12>>2]=h[e+12>>2];f=i+24|0;r=h[f>>2]|0;s=i+16|0;if(!r)t=f;else{t=h[s>>2]|0;if(!t)t=f;else{n=0;while(1){r=h[r+(n*52|0)+44>>2]|0;if(r){Qn(r);t=h[s>>2]|0}n=n+1|0;if(n>>>0>=t>>>0)break;r=h[f>>2]|0}t=f;r=h[f>>2]|0}Qn(r);h[f>>2]=0}r=h[e+16>>2]|0;h[s>>2]=r;r=Gn(r*52|0)|0;h[t>>2]=r;if(!r){h[f>>2]=0;h[s>>2]=0;return}if(h[s>>2]|0){o=e+24|0;a=0;do{t=r+(a*52|0)|0;r=(h[o>>2]|0)+(a*52|0)|0;n=t+52|0;do{h[t>>2]=h[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(n|0));r=h[f>>2]|0;h[r+(a*52|0)+44>>2]=0;a=a+1|0}while(a>>>0<(h[s>>2]|0)>>>0)}h[i+20>>2]=h[e+20>>2];n=e+32|0;t=h[n>>2]|0;a=i+32|0;h[a>>2]=t;if(!t){h[i+28>>2]=0;return}r=Gn(t)|0;t=i+28|0;h[t>>2]=r;if(!r){h[t>>2]=0;h[a>>2]=0;return}else{Xf(r|0,h[e+28>>2]|0,h[n>>2]|0)|0;return}}function on(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=Xn(1,36)|0;if(!r){e=r;return e|0}h[r+20>>2]=t;h[r+16>>2]=e;t=Xn(e,52)|0;h[r+24>>2]=t;if(!t){t=h[r+28>>2]|0;if(t)Qn(t);Qn(r);e=0;return e|0}else{if(!e){e=r;return e|0}else n=0;do{h[t+(n*52|0)>>2]=h[i+(n*36|0)>>2];h[t+(n*52|0)+4>>2]=h[i+(n*36|0)+4>>2];h[t+(n*52|0)+8>>2]=h[i+(n*36|0)+8>>2];h[t+(n*52|0)+12>>2]=h[i+(n*36|0)+12>>2];h[t+(n*52|0)+16>>2]=h[i+(n*36|0)+16>>2];h[t+(n*52|0)+20>>2]=h[i+(n*36|0)+20>>2];h[t+(n*52|0)+24>>2]=h[i+(n*36|0)+24>>2];h[t+(n*52|0)+32>>2]=h[i+(n*36|0)+32>>2];h[t+(n*52|0)+44>>2]=0;n=n+1|0}while((n|0)!=(e|0));return r|0}return 0}function sn(e,i,t){e=e|0;i=i|0;t=t|0;if(!e){t=0;return t|0}h[e+64>>2]=i;h[e+52>>2]=t;t=1;return t|0}function fn(e,i,t){e=e|0;i=i|0;t=t|0;if(!e){t=0;return t|0;
}h[e+60>>2]=i;h[e+48>>2]=t;t=1;return t|0}function ln(e,i,t){e=e|0;i=i|0;t=t|0;if(!e){t=0;return t|0}h[e+56>>2]=i;h[e+44>>2]=t;t=1;return t|0}function un(e,i){e=e|0;i=i|0;var t=0;if(!e){e=0;return e|0}t=Or(i)|0;if(!t){e=0;return e|0}zr(t,e,0);jr(t,h[e+8>>2]|0,0);if(!i)Ur(t,9);else Nr(t,8);Hr(t,1);Fr(t,10);e=t;return e|0}function cn(){return 4722}function dn(e){e=e|0;var i=0;i=Xn(1,84)|0;if(!i){e=0;return e|0}h[i+68>>2]=1;switch(e|0){case 0:{h[i+72>>2]=13;h[i+76>>2]=2;h[i+80>>2]=3;h[i+4>>2]=33;h[i+16>>2]=11;h[i>>2]=34;h[i+20>>2]=1;h[i+24>>2]=5;h[i+8>>2]=1;h[i+12>>2]=1;h[i+28>>2]=1;h[i+32>>2]=1;h[i+36>>2]=12;e=ca()|0;h[i+40>>2]=e;if(!e){Qn(i);e=0;return e|0}break}case 2:{h[i+72>>2]=14;h[i+76>>2]=4;h[i+80>>2]=5;h[i+4>>2]=35;h[i+16>>2]=13;h[i>>2]=36;h[i+8>>2]=2;h[i+12>>2]=2;h[i+20>>2]=2;h[i+24>>2]=6;h[i+28>>2]=2;h[i+32>>2]=2;h[i+36>>2]=14;e=Wi(1)|0;h[i+40>>2]=e;if(!e){Qn(i);e=0;return e|0}break}default:{Qn(i);e=0;return e|0}}Qr(i+44|0);e=i;return e|0}function hn(e){e=e|0;if(!e)return;Vf(e|0,0,8248)|0;h[e+8200>>2]=-1;h[e+8204>>2]=-1;h[e+8248>>2]=0;return}function mn(e,i){e=e|0;i=i|0;var t=0;t=k;k=k+16|0;if(!((e|0)!=0&(i|0)!=0)){i=0;k=t;return i|0}if(!(h[e+68>>2]|0)){Jr(e+44|0,1,4728,t)|0;i=0;k=t;return i|0}else{Dl[h[e+24>>2]&7](h[e+40>>2]|0,i);i=1;k=t;return i|0}return 0}function bn(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;r=k;k=k+16|0;if(!((e|0)!=0&(i|0)!=0)){e=0;k=r;return e|0}if(!(h[i+68>>2]|0)){Jr(i+44|0,1,4809,r)|0;e=0;k=r;return e|0}else{e=Fl[h[i>>2]&63](e,h[i+40>>2]|0,t,i+44|0)|0;k=r;return e|0}return 0}function vn(e,i,t){e=e|0;i=i|0;t=t|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(!(h[e+68>>2]|0)){i=0;return i|0}i=Fl[h[e+4>>2]&63](h[e+40>>2]|0,i,t,e+44|0)|0;return i|0}function wn(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;if(!e){r=0;return r|0}if(!(h[e+68>>2]|0)){r=0;return r|0}r=Al[h[e+28>>2]&3](h[e+40>>2]|0,i,t,r,n,a,e+44|0)|0;return r|0}function pn(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;if(!((t|0)!=0&((e|0)!=0&(i|0)!=0&(r|0)!=0))){s=0;return s|0}if(!(h[e+68>>2]|0)){s=0;return s|0}s=Nl[h[e+8>>2]&3](h[e+40>>2]|0,t,r,n,a,o,s,f,l,i,e+44|0)|0;return s|0}function gn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;if(!((e|0)!=0&(t|0)!=0&(n|0)!=0)){i=0;return i|0}if(!(h[e+68>>2]|0)){i=0;return i|0}i=Rl[h[e+12>>2]&7](h[e+40>>2]|0,i,t,r,n,e+44|0)|0;return i|0}function kn(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;if(!((e|0)!=0&(i|0)!=0)){r=0;return r|0}if(!(h[e+68>>2]|0)){r=0;return r|0}r=Hl[h[e+32>>2]&3](h[e+40>>2]|0,i,t,e+44|0,r)|0;return r|0}function _n(e,i){e=e|0;i=i|0;if(!e){i=0;return i|0}i=Pl[h[e+36>>2]&63](h[e+40>>2]|0,i,e+44|0)|0;return i|0}function yn(e){e=e|0;var i=0;i=Xn(1,84)|0;if(!i){e=0;return e|0}h[i+68>>2]=0;switch(e|0){case 0:{h[i+4>>2]=15;h[i+12>>2]=16;h[i>>2]=37;h[i+8>>2]=3;h[i+16>>2]=1;h[i+20>>2]=38;e=ia()|0;h[i+40>>2]=e;if(!e){Qn(i);e=0;return e|0}break}case 2:{h[i+4>>2]=17;h[i+12>>2]=18;h[i>>2]=39;h[i+8>>2]=4;h[i+16>>2]=2;h[i+20>>2]=40;e=Wi(0)|0;h[i+40>>2]=e;if(!e){Qn(i);e=0;return e|0}break}default:{Qn(i);e=0;return e|0}}Qr(i+44|0);e=i;return e|0}function Tn(e){e=e|0;if(!e)return;Vf(e|0,0,18708)|0;h[e+5592>>2]=6;h[e+18684>>2]=0;h[e+5596>>2]=64;h[e+5600>>2]=64;h[e+44>>2]=0;h[e+5612>>2]=-1;h[e+18188>>2]=1;h[e+18192>>2]=1;c[e+18688>>0]=0;h[e+18196>>2]=-1;h[e+18200>>2]=-1;w[e+4792>>2]=0;h[e+4788>>2]=0;h[e+20>>2]=0;h[e+24>>2]=0;h[e+28>>2]=0;h[e+18692>>2]=0;return}function Mn(e,i,t){e=e|0;i=i|0;t=t|0;if(!((e|0)!=0&(i|0)!=0&(t|0)!=0)){i=0;return i|0}if(h[e+68>>2]|0){i=0;return i|0}i=Fl[h[e+20>>2]&63](h[e+40>>2]|0,i,t,e+44|0)|0;return i|0}function Cn(e,i,t){e=e|0;i=i|0;t=t|0;if(!((e|0)!=0&(t|0)!=0)){t=0;return t|0}if(h[e+68>>2]|0){t=0;return t|0}t=Fl[h[e>>2]&63](h[e+40>>2]|0,t,i,e+44|0)|0;return t|0}function xn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(h[e+68>>2]|0){i=0;return i|0}i=Pl[h[e+4>>2]&63](h[e+40>>2]|0,i,e+44|0)|0;return i|0}function En(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(h[e+68>>2]|0){i=0;return i|0}i=Pl[h[e+12>>2]&63](h[e+40>>2]|0,i,e+44|0)|0;return i|0}function Sn(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0)){i=0;return i|0}if(!(h[e+68>>2]|0)){i=0;return i|0}i=Pl[h[e+16>>2]&63](h[e+40>>2]|0,i,e+44|0)|0;return i|0}function An(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0;o=r<<2;n=ue(o,r)|0;a=e+18704|0;r=b[a>>1]|0;d[a>>1]=(r&32768|0)==0?-32512:(r|256)&65535;h[e+5608>>2]=1;c[e+18690>>0]=2;a=Gn(n+o|0)|0;r=e+18696|0;h[r>>2]=a;if(!a){t=0;return t|0}Xf(a|0,i|0,n|0)|0;Xf((h[r>>2]|0)+n|0,t|0,o|0)|0;t=1;return t|0}function Pn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;if(!((t|0)!=0&((e|0)!=0&(n|0)!=0))){i=0;return i|0}if(h[e+68>>2]|0){i=0;return i|0}i=Rl[h[e+8>>2]&7](h[e+40>>2]|0,i,t,r,n,e+44|0)|0;return i|0}function In(e){e=e|0;var i=0,t=0;if(!e)return;i=e+40|0;t=h[i>>2]|0;if(!(h[e+68>>2]|0))Ll[h[e+16>>2]&7](t);else Ll[h[e+20>>2]&7](t);h[i>>2]=0;Qn(e);return}function Ln(e,i,t){e=e|0;i=i|0;t=t|0;if(!e)return;Bl[h[e+72>>2]&15](h[e+40>>2]|0,i,t);return}function Dn(e){e=e|0;if(!e){e=0;return e|0}e=Ol[h[e+76>>2]&15](h[e+40>>2]|0)|0;return e|0}function Rn(e){e=e|0;var i=0,t=0;if(!e)return;i=h[e>>2]|0;t=h[i+48>>2]|0;if(t){Qn(t);i=h[e>>2]|0}Qn(i);h[e>>2]=0;return}function On(e){e=e|0;if(!e){e=0;return e|0}e=Ol[h[e+80>>2]&15](h[e+40>>2]|0)|0;return e|0}function Bn(e){e=e|0;var i=0;i=h[e>>2]|0;if(!i)return;sa(i);h[e>>2]=0;return}function Nn(e,i){e=e|0;i=i|0;return Fn(e,1048576,i)|0}function Fn(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(!e){i=0;return i|0}r=Zs(e,(t|0)==0?4888:4891)|0;if(!r){i=0;return i|0}e=xr(i,t)|0;if(!e){Js(r)|0;i=0;return i|0}else{zr(e,r,6);sf(r,0,2)|0;i=uf(r)|0;sf(r,0,0)|0;jr(e,i,((i|0)<0)<<31>>31);Nr(e,19);Ur(e,20);Hr(e,21);Fr(e,22);i=e;return i|0}return 0}function Un(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;a=(h[t>>2]|0)+(h[t+8>>2]|0)|0;t=t+4|0;r=h[t>>2]|0;n=a-r|0;if((a|0)==(r|0)){a=-1;return a|0}a=n>>>0>i>>>0?i:n;Xf(e|0,r|0,a|0)|0;h[t>>2]=(h[t>>2]|0)+a;return a|0}function Hn(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=t+4|0;r=h[l>>2]|0;s=t+8|0;a=h[s>>2]|0;f=r-(h[t>>2]|0)|0;n=(a|0)==0?1:a;while(1)if((n-f|0)>>>0<i>>>0)n=n<<1;else{o=n;break}if((o|0)!=(a|0)){r=Gn(o)|0;if(!r){i=-1;return i|0}n=h[t>>2]|0;if(n){Xf(r|0,n|0,f|0)|0;Qn(h[t>>2]|0)}h[t>>2]=r;r=r+f|0;h[l>>2]=r;h[s>>2]=o}Xf(r|0,e|0,i|0)|0;h[l>>2]=(h[l>>2]|0)+i;return i|0}function zn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;n=(h[i>>2]|0)+(h[i+8>>2]|0)|0;i=i+4|0;t=h[i>>2]|0;r=n-t|0;if((n|0)==(t|0)){n=-1;return n|0}h[i>>2]=t+e;n=r>>>0>e>>>0?e:r;return n|0}function jn(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;r=h[t+8>>2]|0;h[t+4>>2]=(h[t>>2]|0)+(0>(i|0)|0==(i|0)&r>>>0>e>>>0?e:r);return 1}function Yn(e,i,t){e=e|0;i=i|0;t=t|0;i=nf(e,1,i,t)|0;return((i|0)!=0?i:-1)|0}function Vn(e,i,t){e=e|0;i=i|0;t=t|0;return df(e,1,i,t)|0}function qn(e,i,t){e=e|0;i=i|0;t=t|0;t=(sf(t,e,1)|0)==0;H=t?i:-1;return(t?e:-1)|0}function Wn(e,i,t){e=e|0;i=i|0;t=t|0;return(sf(t,e,0)|0)==0|0}function Gn(e){e=e|0;if(!e)e=0;else e=Df(e)|0;return e|0}function Xn(e,i){e=e|0;i=i|0;if(!i)e=0;else e=Of(e,i)|0;return e|0}function Kn(e){e=e|0;var i=0,t=0;t=k;k=k+16|0;i=t;do if(e)if(!(Nf(i,16,e)|0)){i=h[i>>2]|0;break}else{h[i>>2]=0;i=0;break}else i=0;while(0);k=t;return i|0}function $n(e){e=e|0;Rf(e);return}function Jn(e,i){e=e|0;i=i|0;if(!i)i=0;else i=Bf(e,i)|0;return i|0}function Qn(e){e=e|0;Rf(e);return}function Zn(e){e=e|0;var i=0,t=0;i=696;while(1){t=h[i>>2]|0;if((t|0)==-1|(t|0)==(e|0))break;else i=i+12|0}return i+4|0}function ea(e,i){e=e|0;i=i|0;if(!((e|0)!=0&(i|0)!=0))return;h[e+172>>2]=h[i+4>>2];h[e+168>>2]=h[i>>2];return}function ia(){var e=0,i=0;e=Xn(1,208)|0;if(!e){e=0;return e|0}h[e>>2]=0;i=e+184|0;c[i>>0]=c[i>>0]&-3;i=Gn(1e3)|0;h[e+44>>2]=i;if(!i){ta(e);i=0;return i|0}h[e+48>>2]=1e3;i=wo()|0;h[e+192>>2]=i;if(!i){ta(e);i=0;return i|0}i=wo()|0;h[e+188>>2]=i;if(i){i=e;return i|0}ta(e);i=0;return i|0}function ta(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;if(!e)return;if(!(h[e>>2]|0)){i=e+36|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+24|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0;h[e+28>>2]=0}i=e+44|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0;h[e+48>>2]=0}}else{i=e+12|0;t=h[i>>2]|0;if(t){Ma(t);Qn(h[i>>2]|0);h[i>>2]=0}i=e+16|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0;h[e+20>>2]=0}}qt(h[e+204>>2]|0);i=e+88|0;a=e+164|0;t=h[a>>2]|0;if(t){r=ue(h[e+112>>2]|0,h[e+116>>2]|0)|0;if(r){n=0;while(1){Ma(t);n=n+1|0;if((n|0)==(r|0))break;else t=t+5640|0}t=h[a>>2]|0}Qn(t);h[a>>2]=0}a=e+124|0;t=h[a>>2]|0;if(t){o=e+120|0;r=h[o>>2]|0;if(r){n=0;while(1){t=h[t+(n<<3)>>2]|0;if(t){Qn(t);r=h[o>>2]|0}n=n+1|0;if(n>>>0>=r>>>0)break;t=h[a>>2]|0}t=h[a>>2]|0}h[o>>2]=0;Qn(t);h[a>>2]=0}o=e+144|0;Qn(h[o>>2]|0);h[o>>2]=0;h[e+128>>2]=0;o=e+108|0;Qn(h[o>>2]|0);h[o>>2]=0;if(!(c[e+184>>0]&2)){o=e+176|0;Qn(h[o>>2]|0);h[o>>2]=0}t=i+100|0;do{h[i>>2]=0;i=i+4|0}while((i|0)<(t|0));o=e+188|0;po(h[o>>2]|0);h[o>>2]=0;po(h[e+192>>2]|0);h[o>>2]=0;o=e+196|0;sa(h[o>>2]|0);h[o>>2]=0;o=e+80|0;rn(h[o>>2]|0);h[o>>2]=0;o=e+84|0;rn(h[o>>2]|0);h[o>>2]=0;Qn(e);return}function ra(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ce=0;le=k;k=k+320|0;ne=le+296|0;re=le+288|0;fe=le+280|0;se=le+272|0;oe=le+264|0;ae=le+256|0;te=le+248|0;ie=le+240|0;G=le+232|0;q=le+224|0;V=le+216|0;Y=le+208|0;j=le+200|0;z=le+192|0;H=le+184|0;_=le+176|0;g=le+168|0;v=le+160|0;b=le+152|0;u=le+144|0;R=le+136|0;D=le+128|0;F=le+112|0;L=le+104|0;I=le+96|0;P=le+88|0;S=le+80|0;E=le+72|0;x=le+64|0;C=le+56|0;M=le+48|0;T=le+32|0;y=le+24|0;l=le+16|0;o=le+8|0;a=le;B=le+309|0;N=le+300|0;if(!((e|0)!=0&(i|0)!=0&(t|0)!=0)){r=0;k=le;return r|0}ee=i+5592|0;n=h[ee>>2]|0;if((n+-1|0)>>>0>32){h[a>>2]=n;h[a+4>>2]=33;Jr(r,1,4894,a)|0;r=0;k=le;return r|0}Q=e+112|0;h[Q>>2]=1;Z=e+116|0;h[Z>>2]=1;O=i+18704|0;do if(!(d[O>>1]|0)){switch(h[i+18676>>2]|0){case 1:{d[O>>1]=3;h[i+18700>>2]=1302083;h[i+18680>>2]=1041666;a=1;break}case 2:{d[O>>1]=3;h[i+18700>>2]=651041;h[i+18680>>2]=520833;a=1;break}case 3:{d[O>>1]=4;h[i+18700>>2]=1302083;h[i+18680>>2]=1041666;a=1;break}default:a=0}n=h[i+18684>>2]|0;e:do if((n|0)>=4)if((n|0)<33024){switch(n|0){case 4:break;default:{J=13;break e}}d[O>>1]=4;break}else{switch(n|0){case 33024:break;default:{J=13;break e}}d[O>>1]=-32512;break}else{switch(n|0){case 3:break;default:{J=13;break e}}d[O>>1]=3}while(0);if((J|0)==13?(a|0)==0:0)break;Jr(r,2,4950,o)|0}while(0);A=i+18700|0;n=h[A>>2]|0;do if((n|0)<1){m=+w[i+4792+((h[i+4788>>2]|0)+-1<<2)>>2];if(m>0){X=h[t+24>>2]|0;l=ue(h[X+8>>2]|0,h[t+16>>2]|0)|0;l=ue(l,h[X+12>>2]|0)|0;ce=+((ue(l,h[X+24>>2]|0)|0)>>>0);X=~~+$(+(ce/(m*8*+((h[X>>2]|0)>>>0)*+((h[X+4>>2]|0)>>>0))));h[A>>2]=X;break}else{h[A>>2]=0;break}}else{f=h[t+24>>2]|0;X=ue(h[f+8>>2]|0,h[t+16>>2]|0)|0;X=ue(X,h[f+12>>2]|0)|0;m=+((ue(X,h[f+24>>2]|0)|0)>>>0);n=ue(n<<3,h[f>>2]|0)|0;m=m/+((ue(n,h[f+4>>2]|0)|0)>>>0);f=i+4788|0;n=h[f>>2]|0;if(n){o=n;n=0;s=0;while(1){a=i+4792+(s<<2)|0;if(+w[a>>2]<m){w[a>>2]=m;a=h[f>>2]|0;n=1}else a=o;s=s+1|0;if(s>>>0>=a>>>0)break;else o=a}if(n)Jr(r,2,5087,l)|0}}while(0);n=d[O>>1]|0;e:do if((n+-3&65535)>=4){if(n<<16>>16==7){Jr(r,2,7247,u)|0;d[O>>1]=0;n=0;break}if((n+-256&65535)<524){Jr(r,2,7302,b)|0;d[O>>1]=0;n=0;break}if((n+-1024&65535)<1180){Jr(r,2,7350,v)|0;d[O>>1]=0;n=0;break}if(n<<16>>16<=-1)switch(n<<16>>16){case-32512:{n=-32512;break e}case-32768:{Jr(r,2,7392,g)|0;d[O>>1]=0;n=0;break e}default:{Jr(r,2,7480,_)|0;d[O>>1]=0;n=0;break e}}}else{if((n+-5&65535)<2){Jr(r,2,5179,y)|0;d[O>>1]=0;n=0;break}h[i>>2]=0;h[i+12>>2]=1;h[i+16>>2]=1;c[i+18689>>0]=67;c[i+18688>>0]=1;h[i+4>>2]=0;h[i+8>>2]=0;h[i+18180>>2]=0;h[i+18184>>2]=0;h[i+5596>>2]=32;h[i+5600>>2]=32;h[i+5604>>2]=0;h[i+5612>>2]=-1;h[i+18188>>2]=1;h[i+18192>>2]=1;h[i+5608>>2]=1;a=i+4788|0;o=h[a>>2]|0;if((o|0)>1){ce=+w[i+4792+(o+-1<<2)>>2];h[T>>2]=o;p[T+8>>3]=ce;Jr(r,2,5241,T)|0;h[i+4792>>2]=h[i+4792+((h[a>>2]|0)+-1<<2)>>2];h[a>>2]=1;n=d[O>>1]|0}i:do switch(n&65535|0){case 3:{n=h[ee>>2]|0;if((n|0)>6){h[M>>2]=n+1;Jr(r,2,5414,M)|0;h[ee>>2]=6;n=6}break}case 4:{n=h[ee>>2]|0;if((n|0)<2){h[C>>2]=n+1;Jr(r,2,5560,C)|0;h[ee>>2]=1;n=1;break i}if((n|0)>7){h[x>>2]=n+1;Jr(r,2,5714,x)|0;h[ee>>2]=7;n=7}break}default:n=h[ee>>2]|0}while(0);a=i+40|0;h[a>>2]=h[a>>2]|1;a=i+5620|0;h[a>>2]=n+-1;if((n|0)>1){n=0;do{h[i+5624+(n<<2)>>2]=256;h[i+5756+(n<<2)>>2]=256;n=n+1|0}while((n|0)<(h[a>>2]|0))}h[i+44>>2]=4;if((d[O>>1]|0)==4){n=h[ee>>2]|0;h[i+96>>2]=1;h[i+48>>2]=0;h[i+52>>2]=0;h[i+56>>2]=1;X=n+-1|0;h[i+60>>2]=X;h[i+64>>2]=3;h[i+80>>2]=4;h[i+244>>2]=1;h[i+196>>2]=X;h[i+200>>2]=0;h[i+204>>2]=1;h[i+208>>2]=n;h[i+212>>2]=3;h[i+228>>2]=4;n=2}else n=0;h[i+4784>>2]=n;h[i+20>>2]=1;n=h[A>>2]|0;if((n|0)>=1){if((n|0)>1302083){Jr(r,2,6017,S)|0;h[A>>2]=1302083}}else{h[A>>2]=1302083;Jr(r,2,5868,E)|0}n=i+18680|0;a=h[n>>2]|0;if((a|0)>=1){if((a|0)>1041666){Jr(r,2,6339,I)|0;h[n>>2]=1041666}}else{h[n>>2]=1041666;Jr(r,2,6190,P)|0}a=h[t+16>>2]|0;s=h[t+24>>2]|0;f=h[s+8>>2]|0;n=ue(f,a)|0;l=h[s+12>>2]|0;n=ue(n,l)|0;ce=+((ue(n,h[s+24>>2]|0)|0)>>>0);n=ue(h[A>>2]<<3,h[s>>2]|0)|0;ce=ce/+((ue(n,h[s+4>>2]|0)|0)>>>0);w[i+4792>>2]=ce;n=d[O>>1]|0;i:do if((a|0)==3){a=s+28|0;o=s+32|0;if(!((h[a>>2]|0)!=12|h[o>>2])){a=s+80|0;o=s+84|0;if(!((h[a>>2]|0)!=12|h[o>>2])){a=s+132|0;o=s+136|0;if(!((h[a>>2]|0)!=12|h[o>>2])){switch(n&65535|0){case 3:{if(l>>>0>1080|f>>>0>2048){h[D>>2]=f;h[D+4>>2]=l;Jr(r,2,6911,D)|0;break i}break}case 4:{if(l>>>0>2160|f>>>0>4096){h[R>>2]=f;h[R+4>>2]=l;Jr(r,2,7082,R)|0;break i}break}default:{}}break e}else{l=a;n=o;a=2}}else{l=a;n=o;a=1}}else{l=a;n=o;a=0}c[B>>0]=c[6678]|0;c[B+1>>0]=c[6679]|0;c[B+2>>0]=c[6680]|0;c[B+3>>0]=c[6681]|0;c[B+4>>0]=c[6682]|0;c[B+5>>0]=c[6683]|0;c[B+6>>0]=c[6684]|0;o=N;s=6685;f=o+9|0;do{c[o>>0]=c[s>>0]|0;o=o+1|0;s=s+1|0}while((o|0)<(f|0));X=(h[n>>2]|0)!=0?B:N;N=h[l>>2]|0;h[F>>2]=a;h[F+4>>2]=N;h[F+8>>2]=X;Jr(r,2,6694,F)|0}else{h[L>>2]=a;Jr(r,2,6512,L)|0}while(0);d[O>>1]=0;n=0}while(0);h[e+168>>2]=h[i+18680>>2];X=e+88|0;d[X>>1]=n;F=e+181|0;B=c[F>>0]&-2|h[i+20>>2]&1;c[F>>0]=B;N=i+24|0;B=(h[N>>2]&255)<<1&2|B&-3;c[F>>0]=B;c[F>>0]=B&-5|(h[i+28>>2]&255)<<2&4;do if((h[N>>2]|0)!=0?(U=i+32|0,(h[U>>2]|0)!=0):0){n=ue((h[i+4788>>2]|0)*12|0,h[ee>>2]|0)|0;a=Gn(n)|0;h[e+176>>2]=a;if(a){Xf(a|0,h[U>>2]|0,n|0)|0;break}Jr(r,1,7539,H)|0;r=0;k=le;return r|0}while(0);s=e+100|0;h[s>>2]=h[i+12>>2];f=e+104|0;h[f>>2]=h[i+16>>2];o=e+92|0;h[o>>2]=h[i+4>>2];l=e+96|0;h[l>>2]=h[i+8>>2];a=i+36|0;n=h[a>>2]|0;do if(!n){n=cn()|0;a=Gn((Mf(n)|0)+29|0)|0;h[e+108>>2]=a;if(a){h[Y>>2]=7716;h[Y+4>>2]=n;bf(a,7711,Y)|0;break}Jr(r,1,7665,j)|0;r=0;k=le;return r|0}else{n=Gn((Mf(n)|0)+1|0)|0;h[e+108>>2]=n;if(n){Tf(n,h[a>>2]|0)|0;break}Jr(r,1,7611,z)|0;r=0;k=le;return r|0}while(0);n=(h[t+8>>2]|0)-(h[o>>2]|0)|0;a=h[t+12>>2]|0;if(!(h[i>>2]|0)){h[s>>2]=n;h[f>>2]=a-(h[l>>2]|0)}else{Y=h[s>>2]|0;h[Q>>2]=(n+-1+Y|0)/(Y|0)|0;Y=h[f>>2]|0;h[Z>>2]=(a+-1-(h[l>>2]|0)+Y|0)/(Y|0)|0}if(c[i+18688>>0]|0){c[e+180>>0]=c[i+18689>>0]|0;c[F>>0]=c[F>>0]|8}Y=Xn(ue(h[Z>>2]|0,h[Q>>2]|0)|0,5640)|0;N=e+164|0;h[N>>2]=Y;if(!Y){Jr(r,1,7745,V)|0;r=0;k=le;return r|0}B=i+4784|0;x=h[B>>2]|0;do if(x){y=i+48|0;E=h[ee>>2]|0;S=h[t+16>>2]|0;A=h[i+4788>>2]|0;P=ue(S,E)|0;I=Xn(ue(P,A)|0,4)|0;if(!I){Jr(r,1,7799,q)|0;break}o=h[y>>2]|0;b=i+60|0;n=h[b>>2]|0;if(o>>>0<n>>>0){u=ue(o,S)|0;v=i+52|0;g=i+64|0;_=i+56|0;a=h[g>>2]|0;while(1){s=h[v>>2]|0;if(s>>>0<a>>>0){n=h[_>>2]|0;l=s;f=s+u|0;while(1){if(!n)n=0;else{a=f;s=0;while(1){h[I+(a<<2)>>2]=1;s=s+1|0;n=h[_>>2]|0;if(s>>>0>=n>>>0)break;else a=a+P|0}a=h[g>>2]|0}l=l+1|0;if(l>>>0>=a>>>0)break;else f=f+1|0}n=h[b>>2]|0}o=o+1|0;if(o>>>0>=n>>>0)break;else u=u+S|0}}if(x>>>0>1){C=1;do{n=y;y=y+148|0;_=h[n+8>>2]|0;g=n+156|0;s=h[g>>2]|0;_=s>>>0>_>>>0?_:0;f=h[y>>2]|0;T=n+160|0;a=h[T>>2]|0;if(f>>>0<a>>>0){u=ue(f,S)|0;M=n+152|0;b=n+164|0;v=ue(_,P)|0;o=h[b>>2]|0;n=s;while(1){s=h[M>>2]|0;if(s>>>0<o>>>0){l=s;s=s+u|0;while(1){if(_>>>0<n>>>0){a=s+v|0;o=_;while(1){h[I+(a<<2)>>2]=1;o=o+1|0;n=h[g>>2]|0;if(o>>>0>=n>>>0)break;else a=a+P|0}o=h[b>>2]|0}l=l+1|0;if(l>>>0>=o>>>0)break;else s=s+1|0}a=h[T>>2]|0}f=f+1|0;if(f>>>0>=a>>>0)break;else u=u+S|0}}C=C+1|0}while((C|0)!=(x|0))}if((A|0)!=0?(W=(S|0)==0,(E|0)!=0):0){a=0;u=0;n=0;do{if(!W){l=a;f=0;while(1){o=0;s=l;while(1){n=(h[I+(s<<2)>>2]|0)!=1|n;o=o+1|0;if((o|0)==(S|0))break;else s=s+1|0}f=f+1|0;if((f|0)==(E|0))break;else l=l+S|0}a=P+a|0}u=u+1|0}while((u|0)!=(A|0));if(n)Jr(r,1,7847,G)|0}Qn(I)}while(0);e:do if(ue(h[Z>>2]|0,h[Q>>2]|0)|0){y=i+4788|0;T=i+40|0;M=i+44|0;C=i+18690|0;x=t+16|0;a=i+18696|0;E=t+24|0;S=i+5596|0;A=i+5600|0;P=i+5604|0;I=i+5608|0;L=i+5612|0;D=i+5616|0;R=i+5620|0;O=0;i:while(1){u=h[N>>2]|0;b=u+(O*5640|0)|0;G=h[y>>2]|0;n=u+(O*5640|0)+8|0;h[n>>2]=G;if(G){o=((d[X>>1]|0)+-3&65535)<4;f=0;do{s=(c[F>>0]&4)==0;do if(!o)if(s){h[u+(O*5640|0)+20+(f<<2)>>2]=h[i+4792+(f<<2)>>2];break}else{h[u+(O*5640|0)+5184+(f<<2)>>2]=h[i+5192+(f<<2)>>2];break}else{if(!s)h[u+(O*5640|0)+5184+(f<<2)>>2]=h[i+5192+(f<<2)>>2];h[u+(O*5640|0)+20+(f<<2)>>2]=h[i+4792+(f<<2)>>2]}while(0);f=f+1|0}while(f>>>0<(h[n>>2]|0)>>>0)}h[b>>2]=h[T>>2];h[u+(O*5640|0)+4>>2]=h[M>>2];l=u+(O*5640|0)+16|0;h[l>>2]=c[C>>0];n=u+(O*5640|0)+5636|0;o=c[n>>0]|0;c[n>>0]=o&-5;if(!(h[B>>2]|0))h[u+(O*5640|0)+420>>2]=0;else{c[n>>0]=o|4;o=h[B>>2]|0;if(!o)n=0;else{s=O+1|0;f=0;n=0;do{if((s|0)==(h[i+48+(f*148|0)+48>>2]|0)){h[u+(O*5640|0)+424+(n*148|0)>>2]=h[i+48+(n*148|0)>>2];h[u+(O*5640|0)+424+(n*148|0)+4>>2]=h[i+48+(n*148|0)+4>>2];h[u+(O*5640|0)+424+(n*148|0)+8>>2]=h[i+48+(n*148|0)+8>>2];h[u+(O*5640|0)+424+(n*148|0)+12>>2]=h[i+48+(n*148|0)+12>>2];h[u+(O*5640|0)+424+(n*148|0)+16>>2]=h[i+48+(n*148|0)+16>>2];h[u+(O*5640|0)+424+(n*148|0)+32>>2]=h[i+48+(n*148|0)+32>>2];h[u+(O*5640|0)+424+(n*148|0)+48>>2]=h[i+48+(n*148|0)+48>>2];n=n+1|0}f=f+1|0}while(f>>>0<o>>>0)}h[u+(O*5640|0)+420>>2]=n+-1}G=Xn(h[x>>2]|0,1080)|0;_=u+(O*5640|0)+5584|0;h[_>>2]=G;if(!G){J=149;break}do if(!(h[a>>2]|0)){t:do if((h[l>>2]|0)==1){n=h[x>>2]|0;if(n>>>0<=2){s=n;break}o=h[E>>2]|0;n=h[o>>2]|0;do if((n|0)==(h[o+52>>2]|0)){if((n|0)!=(h[o+104>>2]|0))break;n=h[o+4>>2]|0;if((n|0)!=(h[o+56>>2]|0))break;if((n|0)==(h[o+108>>2]|0)){J=175;break t}}while(0);Jr(r,2,8243,ne)|0;h[l>>2]=0;J=175}else J=175;while(0);if((J|0)==175){J=0;s=h[x>>2]|0}if(!s)break;n=h[E>>2]|0;o=0;do{if(!(h[n+(o*52|0)+32>>2]|0))h[(h[_>>2]|0)+(o*1080|0)+1076>>2]=1<<(h[n+(o*52|0)+24>>2]|0)+-1;o=o+1|0}while(o>>>0<s>>>0);K=s;J=166}else{s=h[x>>2]|0;s=ue(s<<2,s)|0;n=Gn(s)|0;f=(h[a>>2]|0)+s|0;if(!n){J=152;break i}h[l>>2]=2;o=Gn(s)|0;h[u+(O*5640|0)+5608>>2]=o;if(!o){J=154;break i}Xf(o|0,h[a>>2]|0,s|0)|0;Xf(n|0,h[a>>2]|0,s|0)|0;o=Gn(s)|0;s=u+(O*5640|0)+5604|0;h[s>>2]=o;if(!o){J=156;break i}if(!(Xo(n,o,h[x>>2]|0)|0)){J=158;break i}o=Gn(h[x>>2]<<3)|0;h[u+(O*5640|0)+5600>>2]=o;if(!o){J=160;break i}At(o,h[x>>2]|0,h[s>>2]|0);Qn(n);n=h[x>>2]|0;if(n){o=h[_>>2]|0;s=0;do{h[o+(s*1080|0)+1076>>2]=h[f+(s<<2)>>2];s=s+1|0}while(s>>>0<n>>>0)}if(!(na(b,t)|0)){J=167;break i}K=h[x>>2]|0;J=166}while(0);if((J|0)==166?(J=0,(K|0)!=0):0){g=0;do{b=h[_>>2]|0;v=b+(g*1080|0)|0;h[v>>2]=h[T>>2]&1;s=h[ee>>2]|0;f=b+(g*1080|0)+4|0;h[f>>2]=s;n=h[S>>2]|0;if((n|0)>1){o=0;do{n=n>>1;o=o+1|0}while((n|0)>1);n=o}else n=0;h[b+(g*1080|0)+8>>2]=n;n=h[A>>2]|0;if((n|0)>1){o=0;do{n=n>>1;o=o+1|0}while((n|0)>1);n=o}else n=0;h[b+(g*1080|0)+12>>2]=n;h[b+(g*1080|0)+16>>2]=h[P>>2];G=h[I>>2]|0;h[b+(g*1080|0)+20>>2]=(G|0)==0&1;h[b+(g*1080|0)+24>>2]=(G|0)!=0?2:0;h[b+(g*1080|0)+804>>2]=2;if((g|0)==(h[L>>2]|0))n=h[D>>2]|0;else n=0;h[b+(g*1080|0)+808>>2]=n;do if(!(h[T>>2]&1)){if(!s)break;else n=0;do{h[b+(g*1080|0)+812+(n<<2)>>2]=15;h[b+(g*1080|0)+944+(n<<2)>>2]=15;n=n+1|0}while(n>>>0<(h[f>>2]|0)>>>0)}else{if((s|0)>0){f=s;u=0}else break;while(1){l=f;f=f+-1|0;n=h[R>>2]|0;do if((u|0)<(n|0)){n=h[i+5624+(u<<2)>>2]|0;if((n|0)<1)h[b+(g*1080|0)+812+(f<<2)>>2]=1;else{if((n|0)>1){o=0;do{n=n>>1;o=o+1|0}while((n|0)>1);n=o}else n=0;h[b+(g*1080|0)+812+(f<<2)>>2]=n}n=h[i+5756+(u<<2)>>2]|0;if((n|0)<1){h[b+(g*1080|0)+944+(f<<2)>>2]=1;break}if((n|0)>1){o=0;do{n=n>>1;o=o+1|0}while((n|0)>1);n=o}else n=0;h[b+(g*1080|0)+944+(f<<2)>>2]=n}else{G=n+-1|0;o=u-G|0;n=h[i+5624+(G<<2)>>2]>>o;o=h[i+5756+(G<<2)>>2]>>o;if((n|0)<1)h[b+(g*1080|0)+812+(f<<2)>>2]=1;else{if((n|0)>1){s=0;do{n=n>>1;s=s+1|0}while((n|0)>1);n=s}else n=0;h[b+(g*1080|0)+812+(f<<2)>>2]=n}if((o|0)<1){h[b+(g*1080|0)+944+(f<<2)>>2]=1;break}if((o|0)>1){n=0;do{o=o>>1;n=n+1|0}while((o|0)>1)}else n=0;h[b+(g*1080|0)+944+(f<<2)>>2]=n}while(0);if((l|0)<=1)break;else u=u+1|0}}while(0);Uo(v,h[(h[E>>2]|0)+(g*52|0)+24>>2]|0);g=g+1|0}while(g>>>0<(h[x>>2]|0)>>>0)}O=O+1|0;if(O>>>0>=(ue(h[Z>>2]|0,h[Q>>2]|0)|0)>>>0)break e}if((J|0)==149){Jr(r,1,7886,ie)|0;r=0;k=le;return r|0}else if((J|0)==152){Jr(r,1,7950,te)|0;r=0;k=le;return r|0}else if((J|0)==154){Qn(n);Jr(r,1,7993,ae)|0;r=0;k=le;return r|0}else if((J|0)==156){Qn(n);Jr(r,1,8051,oe)|0;r=0;k=le;return r|0}else if((J|0)==158){Qn(n);Jr(r,1,8111,se)|0;r=0;k=le;return r|0}else if((J|0)==160){Qn(n);Jr(r,1,8159,fe)|0;r=0;k=le;return r|0}else if((J|0)==167){Jr(r,1,8209,re)|0;r=0;k=le;return r|0}}else a=i+18696|0;while(0);n=h[a>>2]|0;if(!n){r=1;k=le;return r|0}Qn(n);h[a>>2]=0;r=1;k=le;return r|0}function na(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;if((h[e+16>>2]|0)!=2){e=1;return e|0}l=e+5604|0;v=e+5616|0;t=h[v>>2]|0;u=e+5620|0;do if(h[l>>2]|0){do if((t|0)==(h[u>>2]|0)){t=t+10|0;h[u>>2]=t;r=e+5612|0;t=Jn(h[r>>2]|0,t*20|0)|0;if(t){h[r>>2]=t;b=h[v>>2]|0;Vf(t+(b*20|0)|0,0,((h[u>>2]|0)-b|0)*20|0)|0;t=h[v>>2]|0;break}Qn(h[r>>2]|0);h[r>>2]=0;h[u>>2]=0;h[v>>2]=0;e=0;return e|0}else r=e+5612|0;while(0);s=h[r>>2]|0;a=s+(t*20|0)|0;f=s+(t*20|0)+12|0;r=h[f>>2]|0;if(r){Qn(r);h[f>>2]=0}h[s+(t*20|0)+8>>2]=1;h[s+(t*20|0)+4>>2]=1;h[a>>2]=2;r=h[i+16>>2]|0;r=ue(r,r)|0;n=r<<2;o=Gn(n)|0;h[f>>2]=o;if(!o){e=0;return e|0}else{Bl[h[768+(h[a>>2]<<2)>>2]&15](h[l>>2]|0,o,r);h[s+(t*20|0)+16>>2]=n;t=(h[v>>2]|0)+1|0;h[v>>2]=t;o=2;break}}else{o=1;a=0}while(0);do if((t|0)==(h[u>>2]|0)){r=t+10|0;h[u>>2]=r;t=e+5612|0;r=Jn(h[t>>2]|0,r*20|0)|0;if(!r){Qn(h[t>>2]|0);h[t>>2]=0;h[u>>2]=0;h[v>>2]=0;e=0;return e|0}else{h[t>>2]=r;n=h[v>>2]|0;Vf(r+(n*20|0)|0,0,((h[u>>2]|0)-n|0)*20|0)|0;if(!a){a=0;break}a=r+((n+-1|0)*20|0)|0;break}}else t=e+5612|0;while(0);l=h[t>>2]|0;u=h[v>>2]|0;b=l+(u*20|0)|0;d=l+(u*20|0)+12|0;t=h[d>>2]|0;if(t){Qn(t);h[d>>2]=0}m=o+1|0;h[l+(u*20|0)+8>>2]=o;h[l+(u*20|0)+4>>2]=2;h[b>>2]=2;i=i+16|0;t=h[i>>2]|0;r=t<<2;f=Gn(r)|0;h[d>>2]=f;if(!f){e=0;return e|0}n=Gn(r)|0;if(!n){Qn(h[d>>2]|0);h[d>>2]=0;e=0;return e|0}if(t){o=0;s=n;f=h[e+5584>>2]|0;while(1){w[s>>2]=+(h[f+1076>>2]|0);o=o+1|0;if((o|0)==(t|0))break;else{s=s+4|0;f=f+1080|0}}}Bl[h[768+(h[b>>2]<<2)>>2]&15](n,h[d>>2]|0,t);Qn(n);h[l+(u*20|0)+16>>2]=r;h[v>>2]=(h[v>>2]|0)+1;o=e+5628|0;t=h[o>>2]|0;n=e+5632|0;do if((t|0)==(h[n>>2]|0)){t=t+10|0;h[n>>2]=t;r=e+5624|0;t=Jn(h[r>>2]|0,t*20|0)|0;if(t){h[r>>2]=t;e=h[o>>2]|0;Vf(t+(e*20|0)|0,0,((h[n>>2]|0)-e|0)*20|0)|0;t=h[o>>2]|0;break}Qn(h[r>>2]|0);h[r>>2]=0;h[n>>2]=0;h[o>>2]=0;e=0;return e|0}else r=e+5624|0;while(0);e=h[r>>2]|0;h[e+(t*20|0)+8>>2]=a;v=e+(t*20|0)+16|0;c[v>>0]=c[v>>0]|1;h[e+(t*20|0)+4>>2]=h[i>>2];h[e+(t*20|0)>>2]=m;h[e+(t*20|0)+12>>2]=b;h[o>>2]=(h[o>>2]|0)+1;e=1;return e|0}function aa(e,i,t){e=e|0;i=i|0;t=t|0;return 1}function oa(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;f=en()|0;l=i+80|0;h[l>>2]=f;if(!f){l=0;return l|0}n=i+192|0;if((go(h[n>>2]|0,23,r)|0)!=0?(go(h[n>>2]|0,24,r)|0)!=0:0){o=h[n>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](i,e,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){rn(h[l>>2]|0);h[l>>2]=0;l=0;return l|0}}else yo(o);n=i+188|0;if((go(h[n>>2]|0,25,r)|0)!=0?(go(h[n>>2]|0,26,r)|0)!=0:0){o=h[n>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](i,e,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){rn(h[l>>2]|0);h[l>>2]=0;l=0;return l|0}}else yo(o);n=en()|0;h[t>>2]=n;if(!n){l=0;return l|0}an(h[l>>2]|0,n);n=ue(h[i+116>>2]|0,h[i+112>>2]|0)|0;s=i+196|0;h[(h[s>>2]|0)+36>>2]=n;n=Xn(n,40)|0;a=h[s>>2]|0;h[a+40>>2]=n;if(!n){l=0;return l|0}if(!(h[a+36>>2]|0)){l=1;return l|0}o=0;while(1){h[n+(o*40|0)+28>>2]=100;h[n+(o*40|0)+20>>2]=0;l=Xn(100,24)|0;a=h[s>>2]|0;n=h[a+40>>2]|0;h[n+(o*40|0)+24>>2]=l;o=o+1|0;if(!l){n=0;a=30;break}if(o>>>0>=(h[a+36>>2]|0)>>>0){n=1;a=30;break}}if((a|0)==30)return n|0}rn(h[l>>2]|0);h[l>>2]=0;l=0;return l|0}rn(h[l>>2]|0);h[l>>2]=0;l=0;return l|0}function sa(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;if(!e)return;i=e+28|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}o=e+40|0;i=h[o>>2]|0;if(i){a=e+36|0;if(h[a>>2]|0){t=i;n=0;do{r=h[t+(n*40|0)+36>>2]|0;if(r){Qn(r);i=h[o>>2]|0;h[i+(n*40|0)+36>>2]=0;t=i}r=h[t+(n*40|0)+16>>2]|0;if(r){Qn(r);i=h[o>>2]|0;h[i+(n*40|0)+16>>2]=0;t=i}r=h[t+(n*40|0)+24>>2]|0;if(r){Qn(r);t=h[o>>2]|0;h[t+(n*40|0)+24>>2]=0;i=t}n=n+1|0}while(n>>>0<(h[a>>2]|0)>>>0)}Qn(i);h[o>>2]=0}Qn(e);return}function fa(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;var m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ce=0,de=0,he=0,me=0,be=0,ve=0,we=0,pe=0,ge=0,ke=0,_e=0,ye=0,Te=0,Me=0,Ce=0,xe=0,Ee=0,Se=0,Ae=0;Ae=k;k=k+256|0;Se=Ae+200|0;Ee=Ae+192|0;Ce=Ae+184|0;Me=Ae+176|0;be=Ae+168|0;me=Ae+160|0;he=Ae+152|0;de=Ae+144|0;ce=Ae+136|0;le=Ae+128|0;se=Ae+120|0;oe=Ae+112|0;ye=Ae+104|0;ke=Ae+96|0;ae=Ae+88|0;ne=Ae+80|0;re=Ae+72|0;_e=Ae+64|0;te=Ae+56|0;ie=Ae+48|0;pe=Ae+40|0;we=Ae+32|0;ve=Ae+24|0;fe=Ae+16|0;ee=Ae+8|0;Z=Ae;G=Ae+240|0;q=Ae+236|0;K=Ae+232|0;J=Ae+228|0;Q=Ae+224|0;W=Ae+220|0;$=Ae+216|0;V=Ae+212|0;X=Ae+208|0;h[V>>2]=65424;xe=e+8|0;e:do switch(h[xe>>2]|0){case 256:{h[V>>2]=65497;m=e+76|0;Te=117;break}case 8:{ge=e+76|0;if(!(c[ge>>0]&1)){U=e+200|0;z=e+164|0;j=e+72|0;Y=e+24|0;E=e+196|0;S=e+112|0;A=e+116|0;I=G+2|0;L=G+6|0;D=G+7|0;R=e+16|0;O=e+20|0;B=e+64|0;m=65424;i:while(1){t:do if((m|0)!=65427){while(1){x=Gr(l)|0;if((x|0)==0&(H|0)==0){Te=7;break}if((Yr(l,h[R>>2]|0,2,u)|0)!=2){Te=9;break i}_r(h[R>>2]|0,X,2);if((h[X>>2]|0)>>>0<2){Te=11;break i}if((h[V>>2]|0)==32896?(x=Gr(l)|0,(x|0)==0&(H|0)==0):0){Te=14;break}w=h[xe>>2]|0;m=h[X>>2]|0;if(w&16)h[Y>>2]=-2-m+(h[Y>>2]|0);b=m+-2|0;h[X>>2]=b;m=h[V>>2]|0;v=784;while(1){x=h[v>>2]|0;if((x|0)==0|(x|0)==(m|0)){M=v;break}else v=v+12|0}if(!(h[v+4>>2]&w)){Te=20;break i}if(b>>>0>(h[O>>2]|0)>>>0){x=Gr(l)|0;C=H;if(0>(C|0)|0==(C|0)&b>>>0>x>>>0){Te=24;break i}m=Jn(h[R>>2]|0,h[X>>2]|0)|0;if(!m){Te=26;break i}h[R>>2]=m;b=h[X>>2]|0;h[O>>2]=b}else m=h[R>>2]|0;b=Yr(l,m,b,u)|0;if((b|0)!=(h[X>>2]|0)){Te=29;break i}m=h[v+8>>2]|0;if(!m){Te=31;break i}if(!(Fl[m&63](e,h[R>>2]|0,b,u)|0)){Te=33;break i}v=h[U>>2]|0;b=h[E>>2]|0;_=h[M>>2]|0;y=Wr(l)|0;T=h[X>>2]|0;y=y-T+-4|0;T=T+4|0;b=b+40|0;g=h[b>>2]|0;m=h[g+(v*40|0)+20>>2]|0;w=g+(v*40|0)+28|0;p=h[w>>2]|0;if((m+1|0)>>>0>p>>>0){p=~~(+(p>>>0)+100)>>>0;h[w>>2]=p;w=Jn(h[g+(v*40|0)+24>>2]|0,p*24|0)|0;p=h[b>>2]|0;m=p+(v*40|0)+24|0;if(!w){Te=41;break i}h[m>>2]=w;b=p;m=h[p+(v*40|0)+20>>2]|0}else{b=g;w=h[g+(v*40|0)+24>>2]|0}d[w+(m*24|0)>>1]=_;x=w+(m*24|0)+8|0;h[x>>2]=y;h[x+4>>2]=((y|0)<0)<<31>>31;h[w+(m*24|0)+16>>2]=T;h[b+(v*40|0)+20>>2]=m+1;if((_|0)==65424?(P=h[b+(v*40|0)+16>>2]|0,(P|0)!=0):0){x=P+((h[b+(v*40|0)+12>>2]|0)*24|0)|0;h[x>>2]=y;h[x+4>>2]=0}do if((h[M>>2]|0)==65424){m=Wr(l)|0;m=-4-(h[X>>2]|0)+m|0;x=B;C=h[x+4>>2]|0;if(!(0>(C|0)|(0==(C|0)?m>>>0>(h[x>>2]|0)>>>0:0)))break;x=B;h[x>>2]=m;h[x+4>>2]=0}while(0);if(c[ge>>0]&4){Te=46;break}if((Yr(l,h[R>>2]|0,2,u)|0)!=2){Te=50;break i}_r(h[R>>2]|0,V,2);if((h[V>>2]|0)==65427)break t}if((Te|0)==7){Te=0;h[xe>>2]=64;break}else if((Te|0)==14){Te=0;h[xe>>2]=64;break}else if((Te|0)==46){Te=0;x=Xr(l,h[Y>>2]|0,0,u)|0;if(!((H|0)==0?(x|0)==(h[Y>>2]|0):0)){Te=47;break i}h[V>>2]=65427;break}}while(0);x=Gr(l)|0;if((x|0)==0&(H|0)==0?(h[xe>>2]|0)==64:0){Te=115;break}m=c[ge>>0]|0;if(!(m&4)){b=h[U>>2]|0;v=h[z>>2]|0;if(!(h[j>>2]|0)){m=h[Y>>2]|0;if(m>>>0>1){w=m+-2|0;h[Y>>2]=w}else w=m}else{w=Gr(l)|0;w=Wf(w|0,H|0,-2,0)|0;h[Y>>2]=w}m=v+(b*5640|0)+5592|0;x=v+(b*5640|0)+5596|0;do if(!w)C=1;else{C=Gr(l)|0;M=H;if(0>(M|0)|0==(M|0)&w>>>0>C>>>0)Jr(u,2,8592,ae)|0;b=h[m>>2]|0;if(!b){C=Gn(h[Y>>2]|0)|0;h[m>>2]=C;if(!C)break i;else{C=0;break}}b=Jn(b,(h[Y>>2]|0)+(h[x>>2]|0)|0)|0;if(!b){Te=65;break i}h[m>>2]=b;C=0}while(0);b=h[E>>2]|0;if(b){y=Wr(l)|0;w=H;M=Wf(y|0,w|0,-2,-1)|0;v=h[U>>2]|0;b=b+40|0;g=h[b>>2]|0;_=h[g+(v*40|0)+12>>2]|0;p=h[g+(v*40|0)+16>>2]|0;T=p+(_*24|0)+8|0;h[T>>2]=M;h[T+4>>2]=H;T=h[Y>>2]|0;w=Wf(T|0,0,y|0,w|0)|0;_=p+(_*24|0)+16|0;h[_>>2]=w;h[_+4>>2]=H;T=T+2|0;_=h[g+(v*40|0)+20>>2]|0;w=g+(v*40|0)+28|0;p=h[w>>2]|0;if((_+1|0)>>>0>p>>>0){p=~~(+(p>>>0)+100)>>>0;h[w>>2]=p;w=Jn(h[g+(v*40|0)+24>>2]|0,p*24|0)|0;p=h[b>>2]|0;g=p+(v*40|0)+24|0;if(!w){m=g;Te=74;break}h[g>>2]=w;y=p;b=h[p+(v*40|0)+20>>2]|0}else{y=g;w=h[g+(v*40|0)+24>>2]|0;b=_}d[w+(b*24|0)>>1]=-109;_=Yf(0,M|0,32)|0;M=w+(b*24|0)+8|0;h[M>>2]=_;h[M+4>>2]=H;h[w+(b*24|0)+16>>2]=T;h[y+(v*40|0)+20>>2]=b+1}if(!C)m=Yr(l,(h[m>>2]|0)+(h[x>>2]|0)|0,h[Y>>2]|0,u)|0;else m=0;h[xe>>2]=(m|0)==(h[Y>>2]|0)?8:64;h[x>>2]=(h[x>>2]|0)+m;m=c[ge>>0]|0;if((m&9)==1){c[ge>>0]=m|8;b=h[U>>2]|0;do if(($r(l)|0)!=0?(N=Wr(l)|0,F=H,!((N|0)==-1&(F|0)==-1)):0){while(1){if((Yr(l,G,2,u)|0)!=2){Te=81;break}_r(G,q,2);if((h[q>>2]|0)!=65424){Te=83;break}if((Yr(l,G,2,u)|0)!=2){Te=85;break}_r(G,K,2);if((h[K>>2]|0)!=10){Te=87;break}h[K>>2]=8;m=Yr(l,G,8,u)|0;if((m|0)!=(h[K>>2]|0)){Te=89;break}if((m|0)!=8){Te=91;break}_r(G,J,2);_r(I,Q,4);_r(L,W,1);_r(D,$,1);if((h[J>>2]|0)==(b|0)){Te=97;break}m=h[Q>>2]|0;if(m>>>0<14){Te=94;break}Te=m+-12|0;h[Q>>2]=Te;Te=Xr(l,Te,0,u)|0;if(!((H|0)==0?(Te|0)==(h[Q>>2]|0):0)){Te=96;break}}if((Te|0)==81){Te=0;m=(Kr(l,N,F,u)|0)!=0&1;b=0;break}else if((Te|0)==83){Te=0;m=(Kr(l,N,F,u)|0)!=0&1;b=0;break}else if((Te|0)==85){Te=0;Jr(u,1,8314,oe)|0;m=0;b=0;break}else if((Te|0)==87){Te=0;Jr(u,1,8332,se)|0;m=0;b=0;break}else if((Te|0)==89){Te=0;Jr(u,1,8314,le)|0;m=0;b=0;break}else if((Te|0)==91){Te=0;Jr(u,1,8681,ce)|0;m=0;b=0;break}else if((Te|0)==94){Te=0;m=(Kr(l,N,F,u)|0)!=0&1;b=0;break}else if((Te|0)==96){Te=0;m=(Kr(l,N,F,u)|0)!=0&1;b=0;break}else if((Te|0)==97){Te=0;b=(h[W>>2]|0)==(h[$>>2]|0)&1;m=(Kr(l,N,F,u)|0)!=0&1;break}}else{m=1;b=0}while(0);if(!m){Te=99;break}if(b){m=ue(h[A>>2]|0,h[S>>2]|0)|0;c[ge>>0]=c[ge>>0]&-18|16;if(m){b=h[z>>2]|0;p=0;do{v=b+(p*5640|0)+5588|0;w=h[v>>2]|0;if(w)h[v>>2]=w+1;p=p+1|0}while((p|0)!=(m|0))}Jr(u,2,8753,he)|0}}if(!(c[ge>>0]&1)){if((Yr(l,h[R>>2]|0,2,u)|0)!=2){Te=109;break}_r(h[R>>2]|0,V,2)}}else{c[ge>>0]=m&-6;h[xe>>2]=8;if((Yr(l,h[R>>2]|0,2,u)|0)!=2){Te=113;break}_r(h[R>>2]|0,V,2)}m=h[V>>2]|0;if(!((m|0)!=65497&(c[ge>>0]&1)==0)){Te=116;break}}switch(Te|0){case 9:{Jr(u,1,8314,Z)|0;u=0;k=Ae;return u|0}case 11:{Jr(u,1,8332,ee)|0;u=0;k=Ae;return u|0}case 20:{Jr(u,1,8358,fe)|0;u=0;k=Ae;return u|0}case 24:{Jr(u,1,8401,ve)|0;u=0;k=Ae;return u|0}case 26:{Qn(h[R>>2]|0);h[R>>2]=0;h[O>>2]=0;Jr(u,1,8446,we)|0;u=0;k=Ae;return u|0}case 29:{Jr(u,1,8314,pe)|0;u=0;k=Ae;return u|0}case 31:{Jr(u,1,8480,ie)|0;u=0;k=Ae;return u|0}case 33:{h[te>>2]=h[V>>2];Jr(u,1,8509,te)|0;u=0;k=Ae;return u|0}case 41:{Qn(h[m>>2]|0);Se=h[b>>2]|0;h[Se+(v*40|0)+24>>2]=0;h[Se+(v*40|0)+28>>2]=0;h[Se+(v*40|0)+20>>2]=0;Jr(u,1,8556,_e)|0;u=0;k=Ae;return u|0}case 47:{Jr(u,1,8314,re)|0;u=0;k=Ae;return u|0}case 50:{Jr(u,1,8314,ne)|0;u=0;k=Ae;return u|0}case 65:{Qn(h[m>>2]|0);h[m>>2]=0;break}case 74:{Qn(h[m>>2]|0);Se=h[b>>2]|0;h[Se+(v*40|0)+24>>2]=0;h[Se+(v*40|0)+28>>2]=0;h[Se+(v*40|0)+20>>2]=0;Jr(u,1,8556,ye)|0;u=0;k=Ae;return u|0}case 99:{Jr(u,1,8707,de)|0;u=0;k=Ae;return u|0}case 109:{Jr(u,1,8314,me)|0;u=0;k=Ae;return u|0}case 113:{Jr(u,1,8314,be)|0;u=0;k=Ae;return u|0}case 115:{m=h[V>>2]|0;Te=116;break}}if((Te|0)==116)if((m|0)==65497){m=ge;Te=117;break e}else{m=ge;break e}Jr(u,1,8647,ke)|0;u=0;k=Ae;return u|0}else m=ge;break}default:{u=0;k=Ae;return u|0}}while(0);if((Te|0)==117)if((h[xe>>2]|0)!=256){h[e+200>>2]=0;h[xe>>2]=256}if(!(c[m>>0]&1)){w=ue(h[e+112>>2]|0,h[e+116>>2]|0)|0;p=e+200|0;b=h[p>>2]|0;e:do if(b>>>0<w>>>0){m=b;v=(h[e+164>>2]|0)+(b*5640|0)|0;while(1){if(h[v+5592>>2]|0){b=m;break e}b=m+1|0;h[p>>2]=b;if(b>>>0<w>>>0){m=b;v=v+5640|0}else break}}while(0);if((b|0)==(w|0)){h[f>>2]=0;u=1;k=Ae;return u|0}}else{b=e+200|0;p=b;b=h[b>>2]|0}x=h[e+164>>2]|0;if(c[x+(b*5640|0)+5636>>0]&2){
E=x+(b*5640|0)+5160|0;v=h[E>>2]|0;if(!v)m=0;else{w=h[x+(b*5640|0)+5164>>2]|0;g=0;m=0;do{m=(h[w+(g<<3)+4>>2]|0)+m|0;g=g+1|0}while((g|0)!=(v|0))}Te=Gn(m)|0;C=x+(b*5640|0)+5172|0;h[C>>2]=Te;if(!Te){Jr(u,1,8794,Me)|0;Jr(u,1,8832,Ce)|0;u=0;k=Ae;return u|0}M=x+(b*5640|0)+5180|0;h[M>>2]=m;v=h[E>>2]|0;T=x+(b*5640|0)+5164|0;if(!v)m=h[T>>2]|0;else{m=h[T>>2]|0;_=m;y=0;g=0;while(1){w=h[_+(y<<3)>>2]|0;if(!w)w=_;else{Xf((h[C>>2]|0)+g|0,w|0,h[_+(y<<3)+4>>2]|0)|0;w=h[T>>2]|0;g=(h[w+(y<<3)+4>>2]|0)+g|0;Qn(h[w+(y<<3)>>2]|0);w=h[T>>2]|0;h[w+(y<<3)>>2]=0;h[w+(y<<3)+4>>2]=0;v=h[E>>2]|0;m=w}y=y+1|0;if(y>>>0>=v>>>0)break;else _=w}}h[E>>2]=0;Qn(m);h[T>>2]=0;h[x+(b*5640|0)+5168>>2]=h[C>>2];h[x+(b*5640|0)+5176>>2]=h[M>>2];b=h[p>>2]|0}m=e+204|0;if(!(Xt(h[m>>2]|0,b,u)|0)){Jr(u,1,8858,Ee)|0;u=0;k=Ae;return u|0}else{Ee=ue(h[e+112>>2]|0,h[e+116>>2]|0)|0;h[Se>>2]=(h[p>>2]|0)+1;h[Se+4>>2]=Ee;Jr(u,4,8892,Se)|0;h[i>>2]=h[p>>2];h[f>>2]=1;u=Kt(h[m>>2]|0)|0;h[t>>2]=u;u=h[h[(h[m>>2]|0)+20>>2]>>2]|0;h[r>>2]=h[u>>2];h[n>>2]=h[u+4>>2];h[a>>2]=h[u+8>>2];h[o>>2]=h[u+12>>2];h[s>>2]=h[u+16>>2];h[xe>>2]=h[xe>>2]|128;u=1;k=Ae;return u|0}return 0}function la(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0;p=k;k=k+48|0;v=p+28|0;w=p+32|0;d=e+8|0;if(!(h[d>>2]&128)){n=0;k=p;return n|0}b=e+200|0;if((h[b>>2]|0)!=(i|0)){n=0;k=p;return n|0}o=h[e+164>>2]|0;u=o+(i*5640|0)|0;m=o+(i*5640|0)+5592|0;s=h[m>>2]|0;if(!s){Ma(u);n=0;k=p;return n|0}f=e+204|0;l=o+(i*5640|0)+5596|0;if(!(Jt(h[f>>2]|0,s,h[l>>2]|0,i,h[e+196>>2]|0,a)|0)){Ma(u);h[d>>2]=h[d>>2]|32768;Jr(a,1,8931,p)|0;n=0;k=p;return n|0}if(!(Qt(h[f>>2]|0,t,r)|0)){n=0;k=p;return n|0}o=h[m>>2]|0;if(o){Qn(o);h[m>>2]=0;h[l>>2]=0}m=e+76|0;c[m>>0]=c[m>>0]&-2;h[d>>2]=h[d>>2]&-129;m=Gr(n)|0;e=h[d>>2]|0;if((e|0)==256|(m|0)==0&(H|0)==0&(e|0)==64){n=1;k=p;return n|0}if((Yr(n,w,2,a)|0)!=2){Jr(a,2,8950,p+8|0)|0;n=1;k=p;return n|0}_r(w,v,2);switch(h[v>>2]|0){case 65497:{h[b>>2]=0;h[d>>2]=256;n=1;k=p;return n|0}case 65424:{n=1;k=p;return n|0}default:if((Gr(n)|0)==0&(H|0)==0){h[d>>2]=64;Jr(a,2,8994,p+16|0)|0;n=1;k=p;return n|0}else{Jr(a,1,9024,p+24|0)|0;n=0;k=p;return n|0}}return 0}function ua(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;C=k;k=k+112|0;M=C+96|0;T=C+88|0;y=C+80|0;_=C+72|0;g=C+64|0;w=C+56|0;v=C+48|0;d=C+40|0;u=C+32|0;l=C+24|0;f=C+16|0;m=h[e+80>>2]|0;if((h[e+8>>2]|0)!=8){Jr(o,1,9056,C)|0;o=0;k=C;return o|0}if(!(r|t|n|a)){Jr(o,4,9135,C+8|0)|0;h[e+28>>2]=0;h[e+32>>2]=0;h[e+36>>2]=h[e+112>>2];h[e+40>>2]=h[e+116>>2];o=1;k=C;return o|0}p=m+8|0;s=h[p>>2]|0;if(s>>>0<t>>>0){h[f>>2]=t;h[f+4>>2]=s;Jr(o,1,9204,f)|0;o=0;k=C;return o|0}s=h[m>>2]|0;if(s>>>0>t>>>0){h[l>>2]=t;h[l+4>>2]=s;Jr(o,2,9291,l)|0;s=0;t=h[m>>2]|0}else s=((t-(h[e+92>>2]|0)|0)>>>0)/((h[e+100>>2]|0)>>>0)|0;h[e+28>>2]=s;h[i>>2]=t;b=m+12|0;t=h[b>>2]|0;if(t>>>0<r>>>0){h[u>>2]=r;h[u+4>>2]=t;Jr(o,1,9379,u)|0;o=0;k=C;return o|0}f=m+4|0;t=h[f>>2]|0;if(t>>>0>r>>>0){h[d>>2]=r;h[d+4>>2]=t;Jr(o,2,9464,d)|0;t=0;r=h[f>>2]|0}else t=((r-(h[e+96>>2]|0)|0)>>>0)/((h[e+104>>2]|0)>>>0)|0;h[e+32>>2]=t;l=i+4|0;h[l>>2]=r;t=h[m>>2]|0;if(t>>>0>n>>>0){h[v>>2]=n;h[v+4>>2]=t;Jr(o,1,9550,v)|0;o=0;k=C;return o|0}t=h[p>>2]|0;if(t>>>0<n>>>0){h[w>>2]=n;h[w+4>>2]=t;Jr(o,2,9639,w)|0;t=h[e+112>>2]|0;n=h[p>>2]|0}else{t=h[e+100>>2]|0;t=(n+-1-(h[e+92>>2]|0)+t|0)/(t|0)|0}h[e+36>>2]=t;s=i+8|0;h[s>>2]=n;n=h[f>>2]|0;if(n>>>0>a>>>0){h[g>>2]=a;h[g+4>>2]=n;Jr(o,1,9727,g)|0;o=0;k=C;return o|0}n=h[b>>2]|0;if(n>>>0<a>>>0){h[_>>2]=a;h[_+4>>2]=n;Jr(o,2,9817,_)|0;t=h[b>>2]|0;n=h[e+116>>2]|0}else{n=h[e+104>>2]|0;t=a;n=(a+-1-(h[e+96>>2]|0)+n|0)/(n|0)|0}h[e+40>>2]=n;a=i+12|0;h[a>>2]=t;_=e+76|0;c[_>>0]=c[_>>0]|2;_=h[i+16>>2]|0;e=h[i>>2]|0;e:do if(_){r=h[l>>2]|0;p=r+-1|0;g=h[s>>2]|0;b=g+-1|0;v=e+-1|0;n=0;m=h[i+24>>2]|0;while(1){i=h[m>>2]|0;t=(v+i|0)/(i|0)|0;h[m+16>>2]=t;d=h[m+4>>2]|0;s=(p+d|0)/(d|0)|0;h[m+20>>2]=s;i=(b+i|0)/(i|0)|0;f=h[m+40>>2]|0;l=qf(1,0,f|0)|0;u=H;i=Wf(i|0,((i|0)<0)<<31>>31|0,-1,-1)|0;i=Wf(i|0,H|0,l|0,u|0)|0;i=Yf(i|0,H|0,f|0)|0;t=Wf(t|0,((t|0)<0)<<31>>31|0,-1,-1)|0;t=Wf(t|0,H|0,l|0,u|0)|0;t=Yf(t|0,H|0,f|0)|0;t=i-t|0;if((t|0)<0){s=29;break}w=h[a>>2]|0;i=(d+-1+w|0)/(d|0)|0;h[m+8>>2]=t;i=Wf(i|0,((i|0)<0)<<31>>31|0,-1,-1)|0;i=Wf(i|0,H|0,l|0,u|0)|0;i=Yf(i|0,H|0,f|0)|0;t=Wf(s|0,((s|0)<0)<<31>>31|0,-1,-1)|0;t=Wf(t|0,H|0,l|0,u|0)|0;t=Yf(t|0,H|0,f|0)|0;t=i-t|0;if((t|0)<0){s=31;break}h[m+12>>2]=t;n=n+1|0;if(n>>>0>=_>>>0){t=g;n=w;break e}else m=m+52|0}if((s|0)==29){h[y>>2]=n;h[y+4>>2]=t;Jr(o,1,9906,y)|0;o=0;k=C;return o|0}else if((s|0)==31){h[T>>2]=n;h[T+4>>2]=t;Jr(o,1,9975,T)|0;o=0;k=C;return o|0}}else{r=h[l>>2]|0;t=h[s>>2]|0;n=h[a>>2]|0}while(0);h[M>>2]=e;h[M+4>>2]=r;h[M+8>>2]=t;h[M+12>>2]=n;Jr(o,4,10044,M)|0;o=1;k=C;return o|0}function ca(){var e=0,i=0,t=0;e=Xn(1,208)|0;if(!e){i=0;return i|0}h[e>>2]=1;i=e+184|0;c[i>>0]=c[i>>0]|2;i=Xn(1,5640)|0;h[e+12>>2]=i;if(!i){ta(e);i=0;return i|0}i=Xn(1,1e3)|0;h[e+16>>2]=i;if(!i){ta(e);i=0;return i|0}h[e+20>>2]=1e3;h[e+60>>2]=-1;i=e+64|0;h[i>>2]=0;h[i+4>>2]=0;i=Xn(1,48)|0;do if(i){h[i+32>>2]=100;h[i+24>>2]=0;t=Xn(100,24)|0;h[i+28>>2]=t;if(!t){Qn(i);break}h[i+40>>2]=0;h[e+196>>2]=i;t=wo()|0;h[e+192>>2]=t;if(!t){ta(e);t=0;return t|0}t=wo()|0;h[e+188>>2]=t;if(t){t=e;return t|0}ta(e);t=0;return t|0}while(0);h[e+196>>2]=0;ta(e);t=0;return t|0}function da(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,v=0,w=0,p=0,g=0;p=k;k=k+128|0;w=p+104|0;v=p+72|0;m=p+64|0;u=p+40|0;f=p+24|0;o=p+16|0;a=p+8|0;n=p;if(i&384){df(10082,11,1,t)|0;k=p;return}if((i&1|0)!=0?(r=h[e+80>>2]|0,(r|0)!=0):0)ha(r,0,t);if(i&2){df(10094,36,1,t)|0;r=h[e+96>>2]|0;h[n>>2]=h[e+92>>2];h[n+4>>2]=r;ef(t,10131,n)|0;n=h[e+104>>2]|0;h[a>>2]=h[e+100>>2];h[a+4>>2]=n;ef(t,10149,a)|0;a=h[e+116>>2]|0;h[o>>2]=h[e+112>>2];h[o+4>>2]=a;ef(t,10167,o)|0;Aa(h[e+12>>2]|0,h[(h[e+80>>2]|0)+16>>2]|0,t);df(10183,2,1,t)|0}if((i&8|0)!=0?(s=ue(h[e+112>>2]|0,h[e+116>>2]|0)|0,(s|0)!=0):0){r=e+80|0;n=0;a=h[e+164>>2]|0;while(1){Aa(a,h[(h[r>>2]|0)+16>>2]|0,t);n=n+1|0;if((n|0)==(s|0))break;else a=a+5640|0}}if(!(i&16)){k=p;return}o=h[e+196>>2]|0;df(10186,37,1,t)|0;s=o;i=h[s+4>>2]|0;r=o+8|0;e=h[r>>2]|0;r=h[r+4>>2]|0;a=f;h[a>>2]=h[s>>2];h[a+4>>2]=i;a=f+8|0;h[a>>2]=e;h[a+4>>2]=r;ef(t,10224,f)|0;df(10291,17,1,t)|0;a=o+28|0;r=h[a>>2]|0;e:do if((r|0)!=0?(l=o+24|0,(h[l>>2]|0)!=0):0){n=0;while(1){i=r+(n*24|0)+8|0;s=h[i>>2]|0;i=h[i+4>>2]|0;f=h[r+(n*24|0)+16>>2]|0;h[u>>2]=b[r+(n*24|0)>>1];e=u+8|0;h[e>>2]=s;h[e+4>>2]=i;h[u+16>>2]=f;ef(t,10309,u)|0;n=n+1|0;if(n>>>0>=(h[l>>2]|0)>>>0)break e;r=h[a>>2]|0}}while(0);df(10340,4,1,t)|0;i=o+40|0;a=h[i>>2]|0;if((a|0)!=0?(d=o+36|0,c=h[d>>2]|0,(c|0)!=0):0){n=0;r=0;do{r=(h[a+(n*40|0)+4>>2]|0)+r|0;n=n+1|0}while((n|0)!=(c|0));if(r){df(10345,16,1,t)|0;if(h[d>>2]|0){r=h[i>>2]|0;s=0;do{o=h[r+(s*40|0)+4>>2]|0;h[m>>2]=s;h[m+4>>2]=o;ef(t,10362,m)|0;r=h[i>>2]|0;n=h[r+(s*40|0)+16>>2]|0;e:do if(!((o|0)==0|(n|0)==0)){r=0;while(1){e=n+(r*24|0)|0;g=h[e>>2]|0;e=h[e+4>>2]|0;l=n+(r*24|0)+8|0;f=h[l>>2]|0;l=h[l+4>>2]|0;c=n+(r*24|0)+16|0;u=h[c>>2]|0;c=h[c+4>>2]|0;h[v>>2]=r;a=v+8|0;h[a>>2]=g;h[a+4>>2]=e;a=v+16|0;h[a>>2]=f;h[a+4>>2]=l;a=v+24|0;h[a>>2]=u;h[a+4>>2]=c;ef(t,10398,v)|0;a=r+1|0;r=h[i>>2]|0;if((a|0)==(o|0))break e;n=h[r+(s*40|0)+16>>2]|0;r=a}}while(0);n=h[r+(s*40|0)+24>>2]|0;e:do if((n|0)!=0?(h[r+(s*40|0)+20>>2]|0)!=0:0){r=0;while(1){c=n+(r*24|0)+8|0;u=h[c>>2]|0;c=h[c+4>>2]|0;a=h[n+(r*24|0)+16>>2]|0;h[w>>2]=b[n+(r*24|0)>>1];g=w+8|0;h[g>>2]=u;h[g+4>>2]=c;h[w+16>>2]=a;ef(t,10309,w)|0;a=r+1|0;r=h[i>>2]|0;if(a>>>0>=(h[r+(s*40|0)+20>>2]|0)>>>0)break e;n=h[r+(s*40|0)+24>>2]|0;r=a}}while(0);s=s+1|0}while(s>>>0<(h[d>>2]|0)>>>0)}df(10340,4,1,t)|0}}df(10183,2,1,t)|0;k=p;return}function ha(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;u=k;k=k+64|0;l=u+48|0;f=u+40|0;o=u+32|0;a=u+16|0;n=u;s=u+52|0;if(!i){df(10501,13,1,t)|0;c[s+1>>0]=0;r=9}else{df(10464,36,1,h[676]|0)|0;r=0}c[s>>0]=r;d=h[e>>2]|0;r=h[e+4>>2]|0;h[n>>2]=s;h[n+4>>2]=d;h[n+8>>2]=r;ef(t,10515,n)|0;n=h[e+8>>2]|0;r=h[e+12>>2]|0;h[a>>2]=s;h[a+4>>2]=n;h[a+8>>2]=r;ef(t,10532,a)|0;a=e+16|0;r=h[a>>2]|0;h[o>>2]=s;h[o+4>>2]=r;ef(t,10549,o)|0;r=e+24|0;if(!(h[r>>2]|0)){df(10183,2,1,t)|0;k=u;return}if(!(h[a>>2]|0)){df(10183,2,1,t)|0;k=u;return}else n=0;do{h[f>>2]=s;h[f+4>>2]=n;ef(t,10565,f)|0;ma((h[r>>2]|0)+(n*52|0)|0,i,t);h[l>>2]=s;ef(t,10585,l)|0;n=n+1|0}while(n>>>0<(h[a>>2]|0)>>>0);df(10183,2,1,t)|0;k=u;return}function ma(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;f=k;k=k+48|0;s=f+24|0;o=f+16|0;a=f;n=f+32|0;r=(i|0)!=0;if(r){df(10590,41,1,h[676]|0)|0;i=0}else{c[n+1>>0]=9;c[n+2>>0]=0;i=9}c[n>>0]=i;l=h[e>>2]|0;i=h[e+4>>2]|0;h[a>>2]=n;h[a+4>>2]=l;h[a+8>>2]=i;ef(t,10632,a)|0;a=h[e+24>>2]|0;h[o>>2]=n;h[o+4>>2]=a;ef(t,10649,o)|0;o=h[e+32>>2]|0;h[s>>2]=n;h[s+4>>2]=o;ef(t,10661,s)|0;if(!r){k=f;return}df(10183,2,1,t)|0;k=f;return}function ba(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+16|0;r=u;i=e+80|0;f=h[(h[i>>2]|0)+16>>2]|0;t=Xn(1,56)|0;h[r>>2]=t;if(!t){l=0;k=u;return l|0}h[t+24>>2]=h[(h[i>>2]|0)+16>>2];h[t>>2]=h[e+92>>2];h[t+4>>2]=h[e+96>>2];h[t+8>>2]=h[e+100>>2];h[t+12>>2]=h[e+104>>2];h[t+16>>2]=h[e+112>>2];h[t+20>>2]=h[e+116>>2];h[t+52>>2]=0;t=h[e+12>>2]|0;i=h[r>>2]|0;h[i+32>>2]=h[t>>2];h[i+36>>2]=h[t+4>>2];h[i+40>>2]=h[t+8>>2];h[i+44>>2]=h[t+16>>2];s=Xn(h[i+24>>2]|0,1080)|0;h[i+48>>2]=s;i=h[r>>2]|0;s=i+48|0;e=h[s>>2]|0;if(!e){Rn(r);l=0;k=u;return l|0}if(!f){l=i;k=u;return l|0}o=t+5584|0;t=0;while(1){a=h[o>>2]|0;h[e+(t*1080|0)+4>>2]=h[a+(t*1080|0)>>2];r=a+(t*1080|0)+4|0;n=h[r>>2]|0;h[e+(t*1080|0)+8>>2]=n;h[e+(t*1080|0)+12>>2]=h[a+(t*1080|0)+8>>2];h[e+(t*1080|0)+16>>2]=h[a+(t*1080|0)+12>>2];h[e+(t*1080|0)+20>>2]=h[a+(t*1080|0)+16>>2];h[e+(t*1080|0)+24>>2]=h[a+(t*1080|0)+20>>2];if(n>>>0<33){Xf(e+(t*1080|0)+948|0,a+(t*1080|0)+944|0,n|0)|0;Xf(e+(t*1080|0)+816|0,a+(t*1080|0)+812|0,h[r>>2]|0)|0}n=h[a+(t*1080|0)+24>>2]|0;h[e+(t*1080|0)+28>>2]=n;h[e+(t*1080|0)+808>>2]=h[a+(t*1080|0)+804>>2];if((n|0)!=1){n=(h[r>>2]|0)*3|0;r=n+-2|0;if((r|0)<97&(n|0)>2)l=10}else{r=1;l=10}if((l|0)==10){l=0;n=0;do{h[e+(t*1080|0)+32+(n<<2)>>2]=h[a+(t*1080|0)+28+(n<<3)+4>>2];h[e+(t*1080|0)+420+(n<<2)>>2]=h[a+(t*1080|0)+28+(n<<3)>>2];n=n+1|0}while((n|0)!=(r|0))}h[e+(t*1080|0)+812>>2]=h[a+(t*1080|0)+808>>2];t=t+1|0;if((t|0)==(f|0))break;e=h[s>>2]|0}k=u;return i|0}function va(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;i=Xn(1,48)|0;if(!i){l=0;return l|0}o=e+196|0;t=h[o>>2]|0;s=t;l=h[s+4>>2]|0;e=i;h[e>>2]=h[s>>2];h[e+4>>2]=l;e=t+8|0;l=h[e+4>>2]|0;s=i+8|0;h[s>>2]=h[e>>2];h[s+4>>2]=l;s=t+16|0;l=h[s+4>>2]|0;e=i+16|0;h[e>>2]=h[s>>2];h[e+4>>2]=l;t=h[t+24>>2]|0;e=i+24|0;h[e>>2]=t;t=Gn(t*24|0)|0;l=i+28|0;h[l>>2]=t;if(!t){Qn(i);l=0;return l|0}r=h[(h[o>>2]|0)+28>>2]|0;if(!r){Qn(t);h[l>>2]=0}else Xf(t|0,r|0,(h[e>>2]|0)*24|0)|0;e=h[(h[o>>2]|0)+36>>2]|0;a=i+36|0;h[a>>2]=e;e=Xn(e,40)|0;s=i+40|0;h[s>>2]=e;if(!e){Qn(h[l>>2]|0);Qn(i);l=0;return l|0}t=h[(h[o>>2]|0)+40>>2]|0;if(!t){Qn(e);h[s>>2]=0;l=i;return l|0}if(!(h[a>>2]|0)){l=i;return l|0}t=h[t+20>>2]|0;h[e+20>>2]=t;t=Gn(t*24|0)|0;e=h[s>>2]|0;h[e+24>>2]=t;e:do if(!t)t=0;else{n=t;t=0;while(1){r=h[(h[(h[o>>2]|0)+40>>2]|0)+(t*40|0)+24>>2]|0;if(!r){Qn(n);e=h[s>>2]|0;h[e+(t*40|0)+24>>2]=0}else{Xf(n|0,r|0,(h[e+(t*40|0)+20>>2]|0)*24|0)|0;e=h[s>>2]|0}r=h[(h[(h[o>>2]|0)+40>>2]|0)+(t*40|0)+4>>2]|0;h[e+(t*40|0)+4>>2]=r;r=Gn(r*24|0)|0;e=h[s>>2]|0;h[e+(t*40|0)+16>>2]=r;if(!r)break;n=h[(h[(h[o>>2]|0)+40>>2]|0)+(t*40|0)+16>>2]|0;if(!n){Qn(r);e=h[s>>2]|0;h[e+(t*40|0)+16>>2]=0}else{Xf(r|0,n|0,(h[e+(t*40|0)+4>>2]|0)*24|0)|0;e=h[s>>2]|0}h[e+(t*40|0)+32>>2]=0;h[e+(t*40|0)+36>>2]=0;t=t+1|0;if(t>>>0>=(h[a>>2]|0)>>>0){f=32;break}n=h[(h[(h[o>>2]|0)+40>>2]|0)+(t*40|0)+20>>2]|0;h[e+(t*40|0)+20>>2]=n;n=Gn(n*24|0)|0;e=h[s>>2]|0;h[e+(t*40|0)+24>>2]=n;if(!n)break e}if((f|0)==32)return i|0;if(t){Qn(h[e+24>>2]|0);Qn(h[(h[s>>2]|0)+16>>2]|0);if((t|0)!=1){e=1;do{Qn(h[(h[s>>2]|0)+(e*40|0)+24>>2]|0);Qn(h[(h[s>>2]|0)+(e*40|0)+16>>2]|0);e=e+1|0}while((e|0)!=(t|0))}e=h[s>>2]|0}Qn(e);Qn(h[l>>2]|0);Qn(i);l=0;return l|0}while(0);if(t){Qn(h[e+24>>2]|0);if((t|0)!=1){e=1;do{Qn(h[(h[s>>2]|0)+(e*40|0)+24>>2]|0);e=e+1|0}while((e|0)!=(t|0))}e=h[s>>2]|0}Qn(e);Qn(h[l>>2]|0);Qn(i);l=0;return l|0}function wa(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;if(!t){t=0;return t|0}n=en()|0;l=e+84|0;h[l>>2]=n;if(!n){t=0;return t|0}an(t,n);o=e+188|0;go(h[o>>2]|0,27,r)|0;o=h[o>>2]|0;s=ko(o)|0;n=_o(o)|0;if(s){f=0;a=1;while(1){if(!a)a=0;else a=(Pl[h[n>>2]&63](e,i,r)|0)!=0;f=f+1|0;if((f|0)==(s|0))break;else{n=n+4|0;a=a&1}}yo(o);if(!a){t=e+80|0;rn(h[t>>2]|0);h[t>>2]=0;t=0;return t|0}}else yo(o);s=h[t+16>>2]|0;if(!s){t=1;return t|0}o=h[(h[l>>2]|0)+24>>2]|0;n=h[t+24>>2]|0;a=0;do{h[n+(a*52|0)+36>>2]=h[o+(a*52|0)+36>>2];t=o+(a*52|0)+44|0;h[n+(a*52|0)+44>>2]=h[t>>2];h[t>>2]=0;a=a+1|0}while(a>>>0<s>>>0);n=1;return n|0}function pa(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;p=k;k=k+16|0;s=p+8|0;if(!t){Jr(r,1,10673,p)|0;w=0;k=p;return w|0}a=h[e+112>>2]|0;o=ue(h[e+116>>2]|0,a)|0;if(o>>>0<=n>>>0){h[s>>2]=n;h[s+4>>2]=o+-1;Jr(r,1,10711,s)|0;w=0;k=p;return w|0}w=(n>>>0)%(a>>>0)|0;v=(n>>>0)/(a>>>0)|0;s=h[e+100>>2]|0;o=ue(s,w)|0;f=h[e+92>>2]|0;o=o+f|0;h[t>>2]=o;b=e+80|0;a=h[b>>2]|0;l=h[a>>2]|0;o=o>>>0<l>>>0?l:o;h[t>>2]=o;f=(ue(s,w+1|0)|0)+f|0;w=t+8|0;h[w>>2]=f;s=h[a+8>>2]|0;f=f>>>0>s>>>0?s:f;h[w>>2]=f;w=h[e+104>>2]|0;s=ue(w,v)|0;l=h[e+96>>2]|0;s=s+l|0;m=t+4|0;h[m>>2]=s;d=h[a+4>>2]|0;s=s>>>0<d>>>0?d:s;h[m>>2]=s;l=(ue(w,v+1|0)|0)+l|0;v=t+12|0;h[v>>2]=l;w=h[a+12>>2]|0;l=l>>>0>w>>>0?w:l;h[v>>2]=l;v=t+24|0;w=t+16|0;m=h[w>>2]|0;if(m){d=h[a+24>>2]|0;c=o+-1|0;u=s+-1|0;f=f+-1|0;a=l+-1|0;o=0;s=h[v>>2]|0;while(1){l=h[d+(o*52|0)+40>>2]|0;h[s+40>>2]=l;C=h[s>>2]|0;M=(c+C|0)/(C|0)|0;h[s+16>>2]=M;g=h[s+4>>2]|0;T=(u+g|0)/(g|0)|0;h[s+20>>2]=T;C=(f+C|0)/(C|0)|0;g=(a+g|0)/(g|0)|0;y=qf(1,0,l|0)|0;_=H;C=Wf(C|0,((C|0)<0)<<31>>31|0,-1,-1)|0;C=Wf(C|0,H|0,y|0,_|0)|0;C=Yf(C|0,H|0,l|0)|0;M=Wf(M|0,((M|0)<0)<<31>>31|0,-1,-1)|0;M=Wf(M|0,H|0,y|0,_|0)|0;M=Yf(M|0,H|0,l|0)|0;h[s+8>>2]=C-M;g=Wf(g|0,((g|0)<0)<<31>>31|0,-1,-1)|0;g=Wf(g|0,H|0,y|0,_|0)|0;g=Yf(g|0,H|0,l|0)|0;T=Wf(T|0,((T|0)<0)<<31>>31|0,-1,-1)|0;_=Wf(T|0,H|0,y|0,_|0)|0;l=Yf(_|0,H|0,l|0)|0;h[s+12>>2]=g-l;o=o+1|0;if(o>>>0>=m>>>0)break;else s=s+52|0}}u=e+84|0;a=h[u>>2]|0;if(a)rn(a);a=en()|0;h[u>>2]=a;if(!a){C=0;k=p;return C|0}an(t,a);h[e+60>>2]=n;s=e+188|0;go(h[s>>2]|0,28,r)|0;s=h[s>>2]|0;f=ko(s)|0;a=_o(s)|0;if(f){l=0;o=1;while(1){if(!o)o=0;else o=(Pl[h[a>>2]&63](e,i,r)|0)!=0;l=l+1|0;if((l|0)==(f|0))break;else{a=a+4|0;o=o&1}}yo(s);if(!o){rn(h[b>>2]|0);h[b>>2]=0;C=0;k=p;return C|0}}else yo(s);a=h[w>>2]|0;if(!a){C=1;k=p;return C|0}f=h[(h[u>>2]|0)+24>>2]|0;s=h[v>>2]|0;l=0;while(1){h[s+(l*52|0)+36>>2]=h[f+(l*52|0)+36>>2];o=h[s+(l*52|0)+44>>2]|0;if(!o)o=f;else{Qn(o);o=h[(h[u>>2]|0)+24>>2]|0;s=h[v>>2]|0;a=h[w>>2]|0}C=o+(l*52|0)+44|0;h[s+(l*52|0)+44>>2]=h[C>>2];h[C>>2]=0;l=l+1|0;if(l>>>0>=a>>>0){a=1;break}else f=o}k=p;return a|0}function ga(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;h[e+168>>2]=i;r=h[e+80>>2]|0;e:do if((((r|0)!=0?(o=h[r+24>>2]|0,(o|0)!=0):0)?(n=h[e+12>>2]|0,(n|0)!=0):0)?(a=h[n+5584>>2]|0,(a|0)!=0):0){r=h[r+16>>2]|0;if(!r)r=1;else{n=0;while(1){if((h[a+(n*1080|0)+4>>2]|0)>>>0<=i>>>0)break;h[o+(n*52|0)+40>>2]=i;n=n+1|0;if(n>>>0>=r>>>0){r=1;break e}}Jr(t,1,10772,s)|0;r=0}}else r=0;while(0);k=f;return r|0}function ka(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0;j=k;k=k+48|0;H=j+32|0;U=j+24|0;F=j+16|0;B=j+8|0;N=j;x=e+204|0;r=h[x>>2]|0;I=e+116|0;L=e+112|0;D=ue(h[L>>2]|0,h[I>>2]|0)|0;R=(D|0)==1;if(!D){z=1;k=j;return z|0}O=e+200|0;E=e+12|0;S=e+164|0;A=e+8|0;P=r+20|0;M=r+24|0;C=0;r=0;s=0;e:while(1){if((h[O>>2]|0)!=(C|0)){z=5;break}y=C;C=C+1|0;T=ue(h[I>>2]|0,h[L>>2]|0)|0;h[B>>2]=C;h[B+4>>2]=T;Jr(t,4,10885,B)|0;h[E>>2]=0;T=h[x>>2]|0;h[T+12>>2]=h[(h[S>>2]|0)+(y*5640|0)+5588>>2];h[A>>2]=0;if(!(Gt(T,h[O>>2]|0,t)|0))break;n=h[x>>2]|0;if(h[(h[n+24>>2]|0)+16>>2]|0){o=0;do{a=h[(h[h[P>>2]>>2]|0)+20>>2]|0;if(R){h[a+(o*52|0)+32>>2]=h[(h[(h[M>>2]|0)+24>>2]|0)+(o*52|0)+44>>2];h[a+(o*52|0)+36>>2]=0}else{if(!(Wt(a+(o*52|0)|0)|0)){z=14;break e}n=h[x>>2]|0}o=o+1|0}while(o>>>0<(h[(h[n+24>>2]|0)+16>>2]|0)>>>0)}T=Zt(n)|0;if(!R){if(T>>>0>s>>>0){n=Jn(r,T)|0;if(!n){z=20;break}else{r=n;n=T}}else n=s;a=h[x>>2]|0;y=a+24|0;o=h[y>>2]|0;if(h[o+16>>2]|0){_=a+20|0;a=r;g=0;do{v=h[(h[h[_>>2]>>2]|0)+20>>2]|0;f=h[o+24>>2]|0;b=h[f+(g*52|0)+24>>2]|0;b=((b&7|0)!=0&1)+(b>>>3)|0;l=h[v+(g*52|0)+8>>2]|0;u=h[v+(g*52|0)>>2]|0;p=l-u|0;m=h[v+(g*52|0)+12>>2]|0;v=h[v+(g*52|0)+4>>2]|0;q=h[o>>2]|0;V=h[f+(g*52|0)>>2]|0;s=h[f+(g*52|0)+4>>2]|0;Y=(V+~q+(h[o+8>>2]|0)|0)/(V|0)|0;w=Y-p|0;o=u-((q+-1+V|0)/(V|0)|0)+(ue(Y,v-(((h[o+4>>2]|0)+-1+s|0)/(s|0)|0)|0)|0)|0;o=(h[f+(g*52|0)+44>>2]|0)+(o<<2)|0;i:do switch(((b|0)==3?4:b)|0){case 1:{s=(m|0)==(v|0);if(!(h[f+(g*52|0)+32>>2]|0)){if(s)break i;b=(l|0)==(u|0);u=m-v|0;m=0;while(1){if(!b){s=0;f=a;l=o;while(1){c[f>>0]=h[l>>2];s=s+1|0;if((s|0)==(p|0))break;else{f=f+1|0;l=l+4|0}}a=a+p|0;o=o+(p<<2)|0}m=m+1|0;if((m|0)==(u|0))break;else o=o+(w<<2)|0}}else{if(s)break i;b=(l|0)==(u|0);u=m-v|0;m=0;while(1){if(!b){s=0;f=a;l=o;while(1){c[f>>0]=h[l>>2];s=s+1|0;if((s|0)==(p|0))break;else{f=f+1|0;l=l+4|0}}a=a+p|0;o=o+(p<<2)|0}m=m+1|0;if((m|0)==(u|0))break;else o=o+(w<<2)|0}}break}case 2:{s=(m|0)==(v|0);if(!(h[f+(g*52|0)+32>>2]|0)){if(!s){b=(l|0)==(u|0);u=m-v|0;m=0;while(1){if(!b){s=0;f=a;l=o;while(1){d[f>>1]=h[l>>2];s=s+1|0;if((s|0)==(p|0))break;else{f=f+2|0;l=l+4|0}}a=a+(p<<1)|0;o=o+(p<<2)|0}m=m+1|0;if((m|0)==(u|0))break;else o=o+(w<<2)|0}}}else if(!s){b=(l|0)==(u|0);u=m-v|0;m=0;while(1){if(!b){s=0;f=a;l=o;while(1){d[f>>1]=h[l>>2];s=s+1|0;if((s|0)==(p|0))break;else{f=f+2|0;l=l+4|0}}a=a+(p<<1)|0;o=o+(p<<2)|0}m=m+1|0;if((m|0)==(u|0))break;else o=o+(w<<2)|0}}break}case 4:{if((m|0)!=(v|0)){b=(l|0)==(u|0);u=m-v|0;m=0;while(1){if(!b){s=0;f=a;l=o;while(1){h[f>>2]=h[l>>2];s=s+1|0;if((s|0)==(p|0))break;else{f=f+4|0;l=l+4|0}}a=a+(p<<2)|0;o=o+(p<<2)|0}m=m+1|0;if((m|0)==(u|0))break;else o=o+(w<<2)|0}}break}default:{}}while(0);g=g+1|0;o=h[y>>2]|0}while(g>>>0<(h[o+16>>2]|0)>>>0);a=h[x>>2]|0}if(!(er(a,r,T)|0)){z=63;break}}else n=s;if(!(La(e,i,t)|0)){z=65;break}if(C>>>0>=D>>>0){z=67;break}else s=n}if((z|0)==5)Jr(t,1,10848,N)|0;else if((z|0)==14){Jr(t,1,10906,F)|0;if(!r){q=0;k=j;return q|0}Qn(r);q=0;k=j;return q|0}else if((z|0)==20){if(r)Qn(r);Jr(t,1,10944,U)|0;q=0;k=j;return q|0}else if((z|0)==63){Jr(t,1,10983,H)|0;Qn(r);q=0;k=j;return q|0}else if((z|0)==65){if(!r){q=0;k=j;return q|0}Qn(r);q=0;k=j;return q|0}else if((z|0)==67){if(!r){q=1;k=j;return q|0}Qn(r);q=1;k=j;return q|0}if(!r){q=0;k=j;return q|0}Qn(r);q=0;k=j;return q|0}function _a(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;r=e+188|0;if(!(go(h[r>>2]|0,29,t)|0)){i=0;return i|0}if(((d[e+88>>1]|0)+-3&65535)<4?(go(h[r>>2]|0,30,t)|0)==0:0){i=0;return i|0}if(!(go(h[r>>2]|0,31,t)|0)){i=0;return i|0}if(!(go(h[r>>2]|0,32,t)|0)){i=0;return i|0}if(!(go(h[r>>2]|0,33,t)|0)){i=0;return i|0}s=h[r>>2]|0;a=ko(s)|0;r=_o(s)|0;if(!a)r=1;else{o=0;n=r;r=1;while(1){if(!r)r=0;else r=(Pl[h[n>>2]&63](e,i,t)|0)!=0;r=r&1;o=o+1|0;if((o|0)==(a|0))break;else n=n+4|0}}yo(s);i=r;return i|0}function ya(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+16|0;n=en()|0;s=e+80|0;h[s>>2]=n;if(!n){Jr(r,1,11030,l)|0;i=0;k=l;return i|0}an(t,n);o=h[t+24>>2]|0;if((o|0)!=0?(f=h[t+16>>2]|0,(f|0)!=0):0){a=0;do{t=o+(a*52|0)+44|0;n=h[t>>2]|0;if(n){h[(h[(h[s>>2]|0)+24>>2]|0)+(a*52|0)+44>>2]=n;h[t>>2]=0}a=a+1|0}while(a>>>0<f>>>0)}n=e+192|0;if(!(go(h[n>>2]|0,34,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,35,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,36,r)|0)){i=0;k=l;return i|0}a=h[n>>2]|0;o=ko(a)|0;n=_o(a)|0;if(o){s=0;t=1;while(1){if(!t)t=0;else t=(Pl[h[n>>2]&63](e,i,r)|0)!=0;s=s+1|0;if((s|0)==(o|0))break;else{n=n+4|0;t=t&1}}yo(a);if(!t){i=0;k=l;return i|0}}else yo(a);n=e+188|0;if(!(go(h[n>>2]|0,37,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,38,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,39,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,40,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,41,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,42,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,43,r)|0)){i=0;k=l;return i|0}t=e+88|0;if(((d[t>>1]|0)+-3&65535)<4){if(!(go(h[n>>2]|0,44,r)|0)){i=0;k=l;return i|0}if((d[t>>1]|0)==4?(go(h[n>>2]|0,45,r)|0)==0:0){i=0;k=l;return i|0}}if(!(go(h[n>>2]|0,46,r)|0)){i=0;k=l;return i|0}if((h[e+108>>2]|0)!=0?(go(h[n>>2]|0,47,r)|0)==0:0){i=0;k=l;return i|0}if((d[t>>1]&256)!=0?(go(h[n>>2]|0,48,r)|0)==0:0){i=0;k=l;return i|0}if((h[e+196>>2]|0)!=0?(go(h[n>>2]|0,49,r)|0)==0:0){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,50,r)|0)){i=0;k=l;return i|0}if(!(go(h[n>>2]|0,51,r)|0)){i=0;k=l;return i|0}s=h[n>>2]|0;a=ko(s)|0;n=_o(s)|0;if(!a)n=1;else{o=0;t=n;n=1;while(1){if(!n)n=0;else n=(Pl[h[t>>2]&63](e,i,r)|0)!=0;n=n&1;o=o+1|0;if((o|0)==(a|0))break;else t=t+4|0}}yo(s);i=n;k=l;return i|0}function Ta(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;b=k;k=k+48|0;d=b+40|0;m=b+32|0;c=b+24|0;l=b+16|0;s=b+8|0;o=b;f=e+200|0;if((h[f>>2]|0)==(i|0)){u=ue(h[e+116>>2]|0,h[e+112>>2]|0)|0;h[s>>2]=i+1;h[s+4>>2]=u;Jr(a,4,10885,s)|0;h[e+12>>2]=0;u=e+204|0;s=h[u>>2]|0;h[s+12>>2]=h[(h[e+164>>2]|0)+(i*5640|0)+5588>>2];h[e+8>>2]=0;if(Gt(s,h[f>>2]|0,a)|0){o=h[u>>2]|0;e:do if(h[(h[o+24>>2]|0)+16>>2]|0){s=0;while(1){if(!(Wt((h[(h[h[o+20>>2]>>2]|0)+20>>2]|0)+(s*52|0)|0)|0))break;s=s+1|0;o=h[u>>2]|0;if(s>>>0>=(h[(h[o+24>>2]|0)+16>>2]|0)>>>0)break e}Jr(a,1,10906,c)|0;m=0;k=b;return m|0}while(0);if(!(er(o,t,r)|0)){Jr(a,1,10983,m)|0;m=0;k=b;return m|0}if(La(e,n,a)|0){m=1;k=b;return m|0}h[d>>2]=i;Jr(a,1,11120,d)|0;m=0;k=b;return m|0}}else Jr(a,1,10848,o)|0;h[l>>2]=i;Jr(a,1,11063,l)|0;m=0;k=b;return m|0}function Ma(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0;if(!e)return;n=e+5164|0;i=h[n>>2]|0;if(i){a=e+5160|0;t=h[a>>2]|0;if(t){r=0;while(1){i=h[i+(r<<3)>>2]|0;if(i){Qn(i);t=h[a>>2]|0}r=r+1|0;if(r>>>0>=t>>>0)break;i=h[n>>2]|0}i=h[n>>2]|0}h[a>>2]=0;Qn(i);h[n>>2]=0}i=e+5172|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+5584|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+5608|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+5604|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+5624|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0;h[e+5632>>2]=0;h[e+5628>>2]=0}s=e+5612|0;i=h[s>>2]|0;if(i){o=e+5616|0;t=h[o>>2]|0;if(t){a=0;while(1){r=i+12|0;n=h[r>>2]|0;if(n){Qn(n);h[r>>2]=0;t=h[o>>2]|0}a=a+1|0;if(a>>>0>=t>>>0)break;else i=i+20|0}i=h[s>>2]|0}Qn(i);h[s>>2]=0}i=e+5600|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}i=e+5592|0;t=h[i>>2]|0;if(!t)return;Qn(t);h[i>>2]=0;h[e+5596>>2]=0;return}function Ca(e,i,t){e=e|0;i=i|0;t=t|0;return 1}function xa(e,i,t){e=e|0;i=i|0;t=t|0;return(h[e+8>>2]|0)==0&(h[e+188>>2]|0)!=0&(h[e+192>>2]|0)!=0&1|0}function Ea(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0;$=k;k=k+224|0;K=$+200|0;W=$+192|0;q=$+184|0;j=$+176|0;z=$+168|0;U=$+160|0;N=$+152|0;B=$+144|0;O=$+136|0;A=$+128|0;R=$+120|0;S=$+112|0;E=$+104|0;x=$+96|0;C=$+88|0;M=$+80|0;D=$+72|0;L=$+64|0;T=$+56|0;y=$+48|0;_=$+40|0;P=$+32|0;m=$+24|0;f=$+16|0;s=$+8|0;F=$;V=$+216|0;r=$+204|0;I=$+212|0;g=$+208|0;X=e+8|0;h[X>>2]=1;e:do if((Yr(i,V,2,t)|0)==2?(_r(V,r,2),(h[r>>2]|0)==65359):0){h[X>>2]=2;u=Wr(i)|0;u=Wf(u|0,H|0,-2,-1)|0;l=H;G=e+196|0;n=h[G>>2]|0;h[n>>2]=u;h[n+4>>2]=l;n=F;h[n>>2]=u;h[n+4>>2]=l;Jr(t,4,15785,F)|0;n=h[G>>2]|0;l=h[n>>2]|0;u=n+24|0;r=h[u>>2]|0;o=n+32|0;a=h[o>>2]|0;do if((r+1|0)>>>0>a>>>0){p=~~(+(a>>>0)+100)>>>0;h[o>>2]=p;r=n+28|0;n=Jn(h[r>>2]|0,p*24|0)|0;if(!n){Qn(h[r>>2]|0);h[r>>2]=0;h[o>>2]=0;h[u>>2]=0;Jr(t,1,15822,s)|0;break e}else{h[r>>2]=n;r=h[u>>2]|0;break}}else n=h[n+28>>2]|0;while(0);d[n+(r*24|0)>>1]=-177;w=Yf(0,l|0,32)|0;p=n+(r*24|0)+8|0;h[p>>2]=w;h[p+4>>2]=H;h[n+(r*24|0)+16>>2]=2;h[u>>2]=r+1;p=e+16|0;if((Yr(i,h[p>>2]|0,2,t)|0)!=2){Jr(t,1,8314,m)|0;t=0;k=$;return t|0}_r(h[p>>2]|0,I,2);r=h[I>>2]|0;if((r|0)!=65424){w=e+20|0;b=0;a=0;v=0;i:while(1){if(r>>>0<65280){Y=14;break}else s=784;while(1){n=h[s>>2]|0;o=(n|0)==0;if(o|(n|0)==(r|0))break;else s=s+12|0}if(o){Jr(t,2,15933,_)|0;f=2;t:while(1){do{if((Yr(i,h[p>>2]|0,2,t)|0)!=2){Y=20;break i}_r(h[p>>2]|0,F,2);r=h[F>>2]|0}while(r>>>0<65280);s=784;while(1){n=h[s>>2]|0;if((n|0)==0|(n|0)==(r|0)){o=s;r=s;break}else s=s+12|0}if(!(h[r+4>>2]&h[X>>2])){Y=25;break i}if((n|0)>=65424){Y=100;break}switch(n|0){case 0:break;default:{m=o;u=f;break t}}f=f+2|0}if((Y|0)==100){Y=0;switch(n|0){case 65424:{n=b;r=v;Y=27;break i}default:{m=o;u=f}}}s=h[G>>2]|0;l=Wr(i)|0;l=l-u|0;o=s+24|0;r=h[o>>2]|0;n=s+32|0;f=h[n>>2]|0;if((r+1|0)>>>0>f>>>0){r=~~(+(f>>>0)+100)>>>0;h[n>>2]=r;s=s+28|0;r=Jn(h[s>>2]|0,r*24|0)|0;if(!r){a=s;r=s;Y=32;break}h[s>>2]=r;n=r;r=h[o>>2]|0}else n=h[s+28>>2]|0;d[n+(r*24|0)>>1]=0;f=n+(r*24|0)+8|0;h[f>>2]=l;h[f+4>>2]=((l|0)<0)<<31>>31;h[n+(r*24|0)+16>>2]=u;h[o>>2]=r+1;r=h[m>>2]|0;h[I>>2]=r;if((r|0)==65424){n=b;r=v;break}else o=784;while(1){n=h[o>>2]|0;if((n|0)==0|(n|0)==(r|0))break;else o=o+12|0}}else o=s;v=(n|0)==65361?1:v;b=(n|0)==65362?1:b;a=(n|0)==65372?1:a;if(!(h[o+4>>2]&h[X>>2])){Y=38;break}if((Yr(i,h[p>>2]|0,2,t)|0)!=2){Y=40;break}_r(h[p>>2]|0,g,2);n=(h[g>>2]|0)+-2|0;h[g>>2]=n;r=h[p>>2]|0;if(n>>>0>(h[w>>2]|0)>>>0){r=Jn(r,n)|0;if(!r){Y=43;break}h[p>>2]=r;n=h[g>>2]|0;h[w>>2]=n}r=Yr(i,r,n,t)|0;if((r|0)!=(h[g>>2]|0)){Y=46;break}if(!(Fl[h[o+8>>2]&63](e,h[p>>2]|0,r,t)|0)){Y=48;break}f=h[G>>2]|0;l=h[o>>2]|0;u=Wr(i)|0;m=h[g>>2]|0;u=-4-m+u|0;m=m+4|0;o=f+24|0;r=h[o>>2]|0;n=f+32|0;s=h[n>>2]|0;if((r+1|0)>>>0>s>>>0){r=~~(+(s>>>0)+100)>>>0;h[n>>2]=r;s=f+28|0;r=Jn(h[s>>2]|0,r*24|0)|0;if(!r){a=s;r=s;Y=53;break}h[s>>2]=r;n=r;r=h[o>>2]|0}else n=h[f+28>>2]|0;d[n+(r*24|0)>>1]=l;l=n+(r*24|0)+8|0;h[l>>2]=u;h[l+4>>2]=((u|0)<0)<<31>>31;h[n+(r*24|0)+16>>2]=m;h[o>>2]=r+1;if((Yr(i,h[p>>2]|0,2,t)|0)!=2){Y=55;break}_r(h[p>>2]|0,I,2);r=h[I>>2]|0;if((r|0)==65424){n=b;r=v;break}}switch(Y|0){case 14:{h[P>>2]=r;Jr(t,1,15882,P)|0;t=0;k=$;return t|0}case 20:{Jr(t,1,8314,y)|0;Y=34;break}case 25:{Jr(t,1,8358,T)|0;Y=34;break}case 27:{h[I>>2]=65424;break}case 32:{Qn(h[r>>2]|0);h[a>>2]=0;h[n>>2]=0;h[o>>2]=0;Jr(t,1,15822,L)|0;Y=34;break}case 38:{Jr(t,1,8358,M)|0;t=0;k=$;return t|0}case 40:{Jr(t,1,8314,C)|0;t=0;k=$;return t|0}case 43:{Qn(h[p>>2]|0);h[p>>2]=0;h[w>>2]=0;Jr(t,1,8446,x)|0;t=0;k=$;return t|0}case 46:{Jr(t,1,8314,E)|0;t=0;k=$;return t|0}case 48:{Jr(t,1,16004,S)|0;t=0;k=$;return t|0}case 53:{Qn(h[r>>2]|0);h[a>>2]=0;h[n>>2]=0;h[o>>2]=0;Jr(t,1,15822,R)|0;t=0;k=$;return t|0}case 55:{Jr(t,1,8314,A)|0;t=0;k=$;return t|0}}if((Y|0)==34){Jr(t,1,15949,D)|0;t=0;k=$;return t|0}if(r){if(!n){Jr(t,1,16109,B)|0;t=0;k=$;return t|0}if(!a){Jr(t,1,16155,N)|0;t=0;k=$;return t|0}i:do if(c[e+184>>0]&1){w=e+120|0;do if(h[w>>2]|0){l=e+124|0;u=0;r=0;n=0;t:do{a=h[l>>2]|0;o=h[a+(u<<3)>>2]|0;r:do if(o){s=h[a+(u<<3)+4>>2]|0;a=r>>>0<s>>>0;f=a?0:r-s|0;if((s|0)==(r|0)|a^1)r=f;else{o=a?o+r|0:o;r=s-r|0;while(1){if(r>>>0<4){Y=70;break t}_r(o,F,4);a=r+-4|0;r=h[F>>2]|0;n=r+n|0;if(a>>>0<r>>>0)break;if((a|0)==(r|0)){r=f;break r}else{o=o+(r+4)|0;r=a-r|0}}r=r-a|0}}while(0);u=u+1|0}while(u>>>0<(h[w>>2]|0)>>>0);if((Y|0)==70){Jr(t,1,16201,U)|0;break}if(!r)Y=77;else Jr(t,1,16232,z)|0}else{n=0;Y=77}while(0);t:do if((Y|0)==77){a=Gn(n)|0;m=e+144|0;h[m>>2]=a;if(!a){Jr(t,1,13321,j)|0;break}b=e+132|0;h[b>>2]=n;o=h[w>>2]|0;v=e+124|0;do if(o){r=h[v>>2]|0;a=r;u=0;l=0;n=0;r:while(1){s=h[a+(u<<3)>>2]|0;if(!s)s=l;else{a=h[a+(u<<3)+4>>2]|0;r=(h[m>>2]|0)+n|0;n:do if(l>>>0<a>>>0){Xf(r|0,s|0,l|0)|0;n=n+l|0;if((a|0)==(l|0)){s=0;break}f=s+l|0;r=a-l|0;while(1){if(r>>>0<4){Y=88;break r}_r(f,V,4);s=f+4|0;o=r+-4|0;a=h[V>>2]|0;r=(h[m>>2]|0)+n|0;if(o>>>0<a>>>0){a=s;break}Xf(r|0,s|0,a|0)|0;r=h[V>>2]|0;n=r+n|0;if((o|0)==(r|0)){s=0;break n}else{f=f+(r+4)|0;r=o-r|0}}Xf(r|0,a|0,o|0)|0;s=(h[V>>2]|0)-o|0;n=o+n|0}else{Xf(r|0,s|0,a|0)|0;s=l-a|0;n=a+n|0}while(0);Qn(h[(h[v>>2]|0)+(u<<3)>>2]|0);a=h[v>>2]|0;h[a+(u<<3)>>2]=0;h[a+(u<<3)+4>>2]=0;o=h[w>>2]|0;r=a}u=u+1|0;if(u>>>0>=o>>>0){Y=94;break}else l=s}if((Y|0)==88){Jr(t,1,16201,q)|0;break t}else if((Y|0)==94){a=h[m>>2]|0;n=h[b>>2]|0;break}}else r=h[v>>2]|0;while(0);h[e+128>>2]=a;h[e+152>>2]=n;h[w>>2]=0;Qn(r);h[v>>2]=0;break i}while(0);Jr(t,1,16255,W)|0;t=0;k=$;return t|0}while(0);Jr(t,4,16281,K)|0;K=Wr(i)|0;t=(h[G>>2]|0)+8|0;h[t>>2]=K+-2;h[t+4>>2]=0;h[X>>2]=8;t=1;k=$;return t|0}}Jr(t,1,16063,O)|0;t=0;k=$;return t|0}while(0);Jr(t,1,15858,f)|0;t=0;k=$;return t|0}function Sa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0;L=k;k=k+16|0;I=L;A=h[e+80>>2]|0;P=e+88|0;x=ue(h[e+112>>2]|0,h[e+116>>2]|0)|0;b=h[A+16>>2]|0;d=b*1080|0;m=h[e+12>>2]|0;b=ue(b<<2,b)|0;e:do if(x){v=m+5604|0;w=m+5620|0;p=m+5612|0;g=m+5616|0;_=m+5632|0;y=m+5624|0;T=m+5584|0;E=0;S=h[e+164>>2]|0;i:while(1){s=S+5584|0;M=h[s>>2]|0;Xf(S|0,m|0,5640)|0;i=S+5636|0;c[i>>0]=c[i>>0]&-4;h[S+5168>>2]=0;i=S+5604|0;h[i>>2]=0;f=S+5620|0;h[f>>2]=0;C=S+5612|0;h[C>>2]=0;l=S+5632|0;h[l>>2]=0;u=S+5624|0;h[u>>2]=0;h[s>>2]=M;if(h[v>>2]|0){r=Gn(b)|0;h[i>>2]=r;if(!r){i=0;r=25;break}Xf(r|0,h[v>>2]|0,b|0)|0}i=(h[w>>2]|0)*20|0;r=Gn(i)|0;h[C>>2]=r;if(!r){i=0;r=25;break}Xf(r|0,h[p>>2]|0,i|0)|0;i=h[g>>2]|0;if(i){a=0;o=h[C>>2]|0;s=h[p>>2]|0;while(1){n=s+12|0;if(h[n>>2]|0){i=s+16|0;r=Gn(h[i>>2]|0)|0;h[o+12>>2]=r;if(!r){i=0;r=25;break i}Xf(r|0,h[n>>2]|0,h[i>>2]|0)|0;i=h[g>>2]|0}h[f>>2]=(h[f>>2]|0)+1;a=a+1|0;if(a>>>0>=i>>>0)break;else{o=o+20|0;s=s+20|0}}}i=(h[_>>2]|0)*20|0;r=Gn(i)|0;h[u>>2]=r;if(!r){i=0;r=25;break}Xf(r|0,h[y>>2]|0,i|0)|0;h[l>>2]=h[_>>2];a=h[_>>2]|0;if(a){o=0;r=h[u>>2]|0;n=h[y>>2]|0;while(1){i=h[n+8>>2]|0;if(i)h[r+8>>2]=(h[C>>2]|0)+(((i-(h[p>>2]|0)|0)/20|0)*20|0);i=h[n+12>>2]|0;if(i)h[r+12>>2]=(h[C>>2]|0)+(((i-(h[p>>2]|0)|0)/20|0)*20|0);o=o+1|0;if(o>>>0>=a>>>0)break;else{r=r+20|0;n=n+20|0}}}Xf(M|0,h[T>>2]|0,d|0)|0;E=E+1|0;if(E>>>0>=x>>>0)break e;else S=S+5640|0}if((r|0)==25){k=L;return i|0}}while(0);r=Ht(1)|0;i=e+204|0;h[i>>2]=r;if(!r){t=0;k=L;return t|0}if(Vt(r,A,P)|0){t=1;k=L;return t|0}qt(h[i>>2]|0);h[i>>2]=0;Jr(t,1,8858,I)|0;t=0;k=L;return t|0}function Aa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;y=k;k=k+128|0;g=y+120|0;p=y+112|0;w=y+104|0;v=y+96|0;b=y+88|0;m=y+80|0;d=y+72|0;c=y+64|0;u=y+56|0;l=y+48|0;f=y+40|0;s=y+32|0;o=y+24|0;a=y+16|0;n=y+8|0;r=y;if(!e){k=y;return}df(12210,17,1,t)|0;h[r>>2]=h[e>>2];ef(t,12228,r)|0;h[n>>2]=h[e+4>>2];ef(t,12241,n)|0;h[a>>2]=h[e+8>>2];ef(t,12253,a)|0;h[o>>2]=h[e+16>>2];ef(t,12270,o)|0;if((i|0)>0){a=e+5584|0;o=0;do{n=h[a>>2]|0;h[s>>2]=o;ef(t,12281,s)|0;h[f>>2]=h[n+(o*1080|0)>>2];ef(t,12295,f)|0;e=n+(o*1080|0)+4|0;h[l>>2]=h[e>>2];ef(t,12309,l)|0;h[u>>2]=h[n+(o*1080|0)+8>>2];ef(t,12332,u)|0;h[c>>2]=h[n+(o*1080|0)+12>>2];ef(t,12348,c)|0;h[d>>2]=h[n+(o*1080|0)+16>>2];ef(t,12364,d)|0;h[m>>2]=h[n+(o*1080|0)+20>>2];ef(t,12381,m)|0;df(12396,23,1,t)|0;if(h[e>>2]|0){r=0;do{T=h[n+(o*1080|0)+944+(r<<2)>>2]|0;h[b>>2]=h[n+(o*1080|0)+812+(r<<2)>>2];h[b+4>>2]=T;ef(t,12420,b)|0;r=r+1|0}while(r>>>0<(h[e>>2]|0)>>>0)}tf(10,t)|0;T=n+(o*1080|0)+24|0;h[v>>2]=h[T>>2];ef(t,12429,v)|0;h[w>>2]=h[n+(o*1080|0)+804>>2];ef(t,12444,w)|0;df(12461,20,1,t)|0;if((h[T>>2]|0)!=1){e=(h[e>>2]|0)*3|0;if((e|0)>2){e=e+-2|0;_=8}}else{e=1;_=8}if((_|0)==8){_=0;r=0;do{T=h[n+(o*1080|0)+28+(r<<3)>>2]|0;h[p>>2]=h[n+(o*1080|0)+28+(r<<3)+4>>2];h[p+4>>2]=T;ef(t,12420,p)|0;r=r+1|0}while((r|0)!=(e|0))}tf(10,t)|0;h[g>>2]=h[n+(o*1080|0)+808>>2];ef(t,12482,g)|0;df(12499,5,1,t)|0;o=o+1|0}while((o|0)!=(i|0))}df(10340,4,1,t)|0;k=y;return}function Pa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0;E=k;k=k+80|0;g=E+32|0;_=E+24|0;M=E+16|0;T=E+8|0;d=E+64|0;y=E+60|0;c=E+56|0;b=E+52|0;w=E+48|0;v=E+44|0;p=E+40|0;m=E+36|0;h[d>>2]=1;r=Gn(1e3)|0;if(!r){Jr(t,1,12146,E)|0;t=0;k=E;return t|0}C=e+116|0;x=e+112|0;f=e+204|0;l=e+84|0;u=e+8|0;n=1e3;s=0;while(1){if(!(fa(e,y,c,b,w,v,p,m,d,i,t)|0)){a=5;break}if(!(h[d>>2]|0)){a=17;break}o=h[c>>2]|0;if(o>>>0>n>>>0){n=Jn(r,o)|0;if(!n){a=9;break}else{r=n;a=o;
}}else a=n;n=h[y>>2]|0;if(!(la(e,n,r,o,i,t)|0)){a=11;break}n=n+1|0;o=ue(h[x>>2]|0,h[C>>2]|0)|0;h[_>>2]=n;h[_+4>>2]=o;Jr(t,4,12005,_)|0;o=h[f>>2]|0;if(!(fo(h[(h[h[o+20>>2]>>2]|0)+20>>2]|0,h[o+24>>2]|0,r,h[(h[l>>2]|0)+24>>2]|0)|0)){a=13;break}h[g>>2]=n;Jr(t,4,12035,g)|0;o=Gr(i)|0;if((o|0)==0&(H|0)==0?(h[u>>2]|0)==64:0){a=17;break}s=s+1|0;if((s|0)==(ue(h[x>>2]|0,h[C>>2]|0)|0)){a=17;break}else n=a}if((a|0)==5){Qn(r);t=0;k=E;return t|0}else if((a|0)==9){Qn(r);x=ue(h[x>>2]|0,h[C>>2]|0)|0;h[T>>2]=(h[y>>2]|0)+1;h[T+4>>2]=x;Jr(t,1,11965,T)|0;t=0;k=E;return t|0}else if((a|0)==11){Qn(r);x=ue(h[x>>2]|0,h[C>>2]|0)|0;h[M>>2]=n+1;h[M+4>>2]=x;Jr(t,1,12181,M)|0;t=0;k=E;return t|0}else if((a|0)==13){Qn(r);t=0;k=E;return t|0}else if((a|0)==17){Qn(r);t=1;k=E;return t|0}return 0}function Ia(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0;I=k;k=k+96|0;M=I+56|0;S=I+48|0;T=I+40|0;C=I+32|0;A=I+24|0;f=I+16|0;s=I+8|0;v=I+92|0;E=I+88|0;b=I+84|0;p=I+80|0;_=I+76|0;g=I+72|0;y=I+68|0;w=I+64|0;h[v>>2]=1;r=Gn(1e3)|0;if(!r){Jr(t,1,11899,I)|0;P=0;k=I;return P|0}x=e+196|0;a=h[x>>2]|0;n=h[a+40>>2]|0;e:do if(!n){n=ue(h[e+116>>2]|0,h[e+112>>2]|0)|0;h[a+36>>2]=n;n=Xn(n,40)|0;a=h[x>>2]|0;h[a+40>>2]=n;i:do if(n){if(h[a+36>>2]|0){o=0;do{h[n+(o*40|0)+28>>2]=100;h[n+(o*40|0)+20>>2]=0;m=Xn(100,24)|0;a=h[x>>2]|0;n=h[a+40>>2]|0;h[n+(o*40|0)+24>>2]=m;o=o+1|0;if(!m)break i}while(o>>>0<(h[a+36>>2]|0)>>>0)}a=h[e+60>>2]|0;if(!n)break e;else{P=12;break e}}while(0);Qn(r);P=0;k=I;return P|0}else{a=h[e+60>>2]|0;P=12}while(0);if((P|0)==12)if(h[n+16>>2]|0){if(!(h[n+(a*40|0)+4>>2]|0)){m=e+64|0;m=Wf(h[m>>2]|0,h[m+4>>2]|0,2,0)|0;if(!(Sr(i,m,H,t)|0)){Jr(t,1,11937,s)|0;Qn(r);P=0;k=I;return P|0}}else{m=h[n+(a*40|0)+16>>2]|0;m=Wf(h[m>>2]|0,h[m+4>>2]|0,2,0)|0;if(!(Sr(i,m,H,t)|0)){Jr(t,1,11937,f)|0;Qn(r);P=0;k=I;return P|0}}n=e+8|0;if((h[n>>2]|0)==256)h[n>>2]=8}e:do if(fa(e,E,b,p,_,g,y,w,v,i,t)|0){d=e+116|0;m=e+112|0;l=e+204|0;u=e+84|0;c=a+1|0;n=1e3;while(1){if(!(h[v>>2]|0))break;f=h[b>>2]|0;if(f>>>0>n>>>0){n=Jn(r,f)|0;if(!n){P=26;break}else{r=n;s=f}}else s=n;o=h[E>>2]|0;if(!(la(e,o,r,f,i,t)|0)){P=28;break}n=o+1|0;f=ue(h[m>>2]|0,h[d>>2]|0)|0;h[C>>2]=n;h[C+4>>2]=f;Jr(t,4,12005,C)|0;f=h[l>>2]|0;if(!(fo(h[(h[h[f+20>>2]>>2]|0)+20>>2]|0,h[f+24>>2]|0,r,h[(h[u>>2]|0)+24>>2]|0)|0)){P=30;break}h[T>>2]=n;Jr(t,4,12035,T)|0;if((o|0)==(a|0)){P=32;break}h[M>>2]=n;h[M+4>>2]=c;Jr(t,2,12079,M)|0;if(!(fa(e,E,b,p,_,g,y,w,v,i,t)|0))break e;else n=s}if((P|0)==26){Qn(r);P=ue(h[m>>2]|0,h[d>>2]|0)|0;h[A>>2]=(h[E>>2]|0)+1;h[A+4>>2]=P;Jr(t,1,11965,A)|0;P=0;k=I;return P|0}else if((P|0)==28){Qn(r);P=0;k=I;return P|0}else if((P|0)==30){Qn(r);P=0;k=I;return P|0}else if((P|0)==32){P=(h[x>>2]|0)+8|0;P=Wf(h[P>>2]|0,h[P+4>>2]|0,2,0)|0;if(!(Sr(i,P,H,t)|0)){Jr(t,1,11937,S)|0;Qn(r);P=0;k=I;return P|0}}Qn(r);P=1;k=I;return P|0}while(0);Qn(r);P=0;k=I;return P|0}function La(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0;D=k;k=k+32|0;A=D+16|0;p=D+8|0;f=D;S=D+20|0;P=h[e+40>>2]|0;L=e+36|0;u=h[L>>2]|0;c=e+204|0;s=h[c>>2]|0;h[s+16>>2]=0;E=e+8|0;h[E>>2]=0;h[S>>2]=0;kr(u,65424,2);kr(u+2|0,10,2);I=e+200|0;kr(u+4|0,h[I>>2]|0,2);C=e+12|0;kr(u+10|0,h[C>>2]|0,1);x=e+164|0;kr(u+11|0,h[(h[x>>2]|0)+((h[I>>2]|0)*5640|0)+5588>>2]|0,1);h[S>>2]=12;a=u+12|0;r=P+-12|0;l=e+88|0;if(((d[l>>1]|0)+-3&65535)>=4?(n=h[I>>2]|0,o=h[x>>2]|0,(h[o+(n*5640|0)+420>>2]|0)!=0):0){h[S>>2]=0;no(h[(h[e+80>>2]|0)+16>>2]|0,o,n,a,S);M=h[S>>2]|0;n=M+12|0;a=u+n|0;r=r-M|0}else n=12;h[S>>2]=0;kr(a,65427,2);h[s+4>>2]=h[E>>2];M=h[C>>2]|0;h[s+8>>2]=M;if(!M)h[(h[h[s+20>>2]>>2]|0)+840>>2]=0;h[S>>2]=0;if(!($t(s,h[I>>2]|0,a+2|0,S,r+-4|0,0)|0)){Jr(t,1,11879,f)|0;i=0;k=D;return i|0}r=(h[S>>2]|0)+2|0;h[S>>2]=r;r=r+n|0;kr(u+6|0,r,4);if(((d[l>>1]|0)+-3&65535)<4){M=e+28|0;kr(h[M>>2]|0,h[I>>2]|0,1);T=(h[M>>2]|0)+1|0;h[M>>2]=T;kr(T,r,4);h[M>>2]=(h[M>>2]|0)+4}n=u+r|0;M=P-r|0;_=h[c>>2]|0;y=e+88|0;v=h[x>>2]|0;w=h[I>>2]|0;l=so(y,0,w)|0;T=e+8|0;h[C>>2]=(h[C>>2]|0)+1;e:do if(l>>>0>1){u=_+4|0;c=_+8|0;m=_+20|0;b=e+28|0;o=n;n=M;r=0;f=1;while(1){h[T>>2]=f;h[S>>2]=0;kr(o,65424,2);kr(o+2|0,10,2);kr(o+4|0,h[I>>2]|0,2);kr(o+10|0,h[C>>2]|0,1);kr(o+11|0,h[(h[x>>2]|0)+((h[I>>2]|0)*5640|0)+5588>>2]|0,1);h[S>>2]=0;kr(o+12|0,65427,2);h[u>>2]=h[E>>2];s=h[C>>2]|0;h[c>>2]=s;if(!s)h[(h[h[m>>2]>>2]|0)+840>>2]=0;h[S>>2]=0;if(!($t(_,h[I>>2]|0,o+14|0,S,n+-16|0,0)|0))break;R=h[S>>2]|0;O=R+2|0;h[S>>2]=O;s=R+14|0;a=o+s|0;r=r+12+O|0;n=n+-12+(-2-R)|0;kr(o+6|0,s,4);if(((d[y>>1]|0)+-3&65535)<4){kr(h[b>>2]|0,h[I>>2]|0,1);O=(h[b>>2]|0)+1|0;h[b>>2]=O;kr(O,s,4);h[b>>2]=(h[b>>2]|0)+4}h[C>>2]=(h[C>>2]|0)+1;f=f+1|0;if(f>>>0>=l>>>0){g=12;break e}else o=a}Jr(t,1,11879,p)|0}else{a=n;n=M;r=0;g=12}while(0);e:do if((g|0)==12){m=v+(w*5640|0)+420|0;i:do if(h[m>>2]|0){b=_+16|0;v=_+4|0;w=_+8|0;p=_+20|0;c=e+28|0;u=1;t:while(1){h[b>>2]=u;l=so(y,u,h[I>>2]|0)|0;if(l){f=0;while(1){h[T>>2]=f;h[S>>2]=0;kr(a,65424,2);kr(a+2|0,10,2);kr(a+4|0,h[I>>2]|0,2);kr(a+10|0,h[C>>2]|0,1);kr(a+11|0,h[(h[x>>2]|0)+((h[I>>2]|0)*5640|0)+5588>>2]|0,1);h[S>>2]=0;kr(a+12|0,65427,2);h[v>>2]=h[E>>2];O=h[C>>2]|0;h[w>>2]=O;if(!O)h[(h[h[p>>2]>>2]|0)+840>>2]=0;h[S>>2]=0;if(!($t(_,h[I>>2]|0,a+14|0,S,n+-16|0,0)|0))break t;O=h[S>>2]|0;o=O+2|0;h[S>>2]=o;r=r+12+o|0;o=O+14|0;s=a+o|0;n=n+-12+(-2-O)|0;kr(a+6|0,o,4);if(((d[y>>1]|0)+-3&65535)<4){kr(h[c>>2]|0,h[I>>2]|0,1);O=(h[c>>2]|0)+1|0;h[c>>2]=O;kr(O,o,4);h[c>>2]=(h[c>>2]|0)+4}h[C>>2]=(h[C>>2]|0)+1;f=f+1|0;if(f>>>0>=l>>>0){a=s;break}else a=s}}u=u+1|0;if(u>>>0>(h[m>>2]|0)>>>0)break i}Jr(t,1,11879,A)|0;break e}while(0);O=r-M+P|0;if((Vr(i,h[L>>2]|0,O,t)|0)!=(O|0)){O=0;k=D;return O|0}h[I>>2]=(h[I>>2]|0)+1;O=1;k=D;return O|0}while(0);O=0;k=D;return O|0}function Da(e,i,t){e=e|0;i=i|0;t=t|0;e=e+44|0;kr(h[e>>2]|0,65497,2);if((Vr(i,h[e>>2]|0,2,t)|0)!=2){i=0;return i|0}i=(qr(i,t)|0)!=0&1;return i|0}function Ra(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;a=(h[e+32>>2]|0)*5|0;s=e+16|0;s=Wf(h[s>>2]|0,h[s+4>>2]|0,6,0)|0;o=H;r=Wr(i)|0;n=H;if(!(Kr(i,s,o,t)|0)){s=0;return s|0}if((Vr(i,h[e+24>>2]|0,a,t)|0)!=(a|0)){s=0;return s|0}s=(Kr(i,r,n,t)|0)!=0&1;return s|0}function Oa(e,i,t){e=e|0;i=i|0;t=t|0;e=h[e+196>>2]|0;if(!e)return 1;i=Wr(i)|0;t=e;t=jf(i|0,H|0,h[t>>2]|0,h[t+4>>2]|0)|0;i=e+16|0;h[i>>2]=t;h[i+4>>2]=H;return 1}function Ba(e,i,t){e=e|0;i=i|0;t=t|0;t=e+204|0;qt(h[t>>2]|0);h[t>>2]=0;t=e+24|0;i=h[t>>2]|0;if(i){Qn(i);h[t>>2]=0;h[e+28>>2]=0}t=e+36|0;i=h[t>>2]|0;if(!i){e=e+40|0;h[e>>2]=0;return 1}Qn(i);h[t>>2]=0;e=e+40|0;h[e>>2]=0;return 1}function Na(e,i,t){e=e|0;i=i|0;t=t|0;t=e+44|0;i=h[t>>2]|0;if(i){Qn(i);h[t>>2]=0}h[e+48>>2]=0;return 1}function Fa(e,i,t){e=e|0;i=i|0;t=t|0;return 1}function Ua(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=k;k=k+32|0;r=(h[e+8>>2]|0)==0&(h[e+188>>2]|0)!=0&(h[e+192>>2]|0)!=0&1;i=(h[(h[(h[e+164>>2]|0)+5584>>2]|0)+4>>2]|0)+-1|0;if(i>>>0>31){Jr(t,1,11809,n)|0;t=0;k=n;return t|0}i=1<<i;if((h[e+100>>2]|0)>>>0<i>>>0){Jr(t,1,11809,n+8|0)|0;t=0;k=n;return t|0}if((h[e+104>>2]|0)>>>0>=i>>>0){t=r;k=n;return t|0}Jr(t,1,11809,n+16|0)|0;t=0;k=n;return t|0}function Ha(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;if((d[e+88>>1]&-32256)<<16>>16!=-32256){s=1;return s|0}o=ue(h[e+112>>2]|0,h[e+116>>2]|0)|0;if(!o){s=1;return s|0}a=e+80|0;s=0;t=1;n=h[e+164>>2]|0;while(1){if((h[n+16>>2]|0)==2){t=(h[n+5608>>2]|0)!=0&t;e=h[(h[a>>2]|0)+16>>2]|0;if(e){r=0;i=h[n+5584>>2]|0;while(1){t=(h[i+20>>2]&1^1)&t;r=r+1|0;if(r>>>0>=e>>>0)break;else i=i+1080|0}}}s=s+1|0;if((s|0)==(o|0))break;else n=n+5640|0}return t|0}function za(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;a=e+88|0;o=e+32|0;s=h[e+80>>2]|0;f=ue(h[e+116>>2]|0,h[e+112>>2]|0)|0;h[o>>2]=0;if(!f)return 1;r=h[e+164>>2]|0;n=0;while(1){Rt(s,a,n);i=r+420|0;t=0;e=0;do{l=so(a,e,n)|0;h[o>>2]=(h[o>>2]|0)+l;t=l+t|0;e=e+1|0}while(e>>>0<=(h[i>>2]|0)>>>0);h[r+5588>>2]=t;n=n+1|0;if((n|0)==(f|0))break;else r=r+5640|0}return 1}function ja(e,i,t){e=e|0;i=i|0;t=t|0;e=h[e+44>>2]|0;kr(e,65359,2);return(Vr(i,e,2,t)|0)==2|0}function Ya(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;d=k;k=k+16|0;o=d;s=h[e+80>>2]|0;u=s+16|0;f=(h[u>>2]|0)*3|0;c=f+40|0;r=h[s+24>>2]|0;a=e+48|0;l=e+44|0;n=h[l>>2]|0;do if(c>>>0>(h[a>>2]|0)>>>0){n=Jn(n,c)|0;if(n){h[l>>2]=n;h[a>>2]=c;break}Qn(h[l>>2]|0);h[l>>2]=0;h[a>>2]=0;Jr(t,1,11771,o)|0;i=0;k=d;return i|0}while(0);kr(n,65361,2);kr(n+2|0,f+38|0,2);kr(n+4|0,b[e+88>>1]|0,2);kr(n+6|0,h[s+8>>2]|0,4);kr(n+10|0,h[s+12>>2]|0,4);kr(n+14|0,h[s>>2]|0,4);kr(n+18|0,h[s+4>>2]|0,4);kr(n+22|0,h[e+100>>2]|0,4);kr(n+26|0,h[e+104>>2]|0,4);kr(n+30|0,h[e+92>>2]|0,4);kr(n+34|0,h[e+96>>2]|0,4);kr(n+38|0,h[u>>2]|0,2);if(h[u>>2]|0){a=0;n=n+40|0;while(1){kr(n,(h[r+24>>2]|0)+-1+(h[r+32>>2]<<7)|0,1);kr(n+1|0,h[r>>2]|0,1);kr(n+2|0,h[r+4>>2]|0,1);a=a+1|0;if(a>>>0>=(h[u>>2]|0)>>>0)break;else{n=n+3|0;r=r+52|0}}}i=(Vr(i,h[l>>2]|0,c,t)|0)==(c|0)&1;k=d;return i|0}function Va(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;v=k;k=k+32|0;b=v+16|0;m=v+8|0;s=v;d=v+20|0;f=e+200|0;l=h[f>>2]|0;u=e+164|0;c=h[u>>2]|0;r=h[c+(l*5640|0)+5584>>2]|0;if(!(h[r>>2]&1))a=5;else a=(h[r+4>>2]|0)+5|0;o=a+9|0;h[d>>2]=o;n=e+48|0;e=e+44|0;r=h[e>>2]|0;do if(o>>>0>(h[n>>2]|0)>>>0){r=Jn(r,o)|0;if(r){h[e>>2]=r;h[n>>2]=o;break}Qn(h[e>>2]|0);h[e>>2]=0;h[n>>2]=0;Jr(t,1,11706,s)|0;b=0;k=v;return b|0}while(0);kr(r,65362,2);kr(r+2|0,a+7|0,2);kr(r+4|0,h[c+(l*5640|0)>>2]|0,1);kr(r+5|0,h[c+(l*5640|0)+4>>2]|0,1);kr(r+6|0,h[c+(l*5640|0)+8>>2]|0,2);kr(r+8|0,h[c+(l*5640|0)+16>>2]|0,1);h[d>>2]=a;if(!(oo(h[u>>2]|0,h[f>>2]|0,r+9|0,d,t)|0)){Jr(t,1,11745,m)|0;b=0;k=v;return b|0}if(!(h[d>>2]|0)){b=(Vr(i,h[e>>2]|0,o,t)|0)==(o|0)&1;k=v;return b|0}else{Jr(t,1,11745,b)|0;b=0;k=v;return b|0}return 0}function qa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0;m=k;k=k+32|0;d=m+16|0;c=m+8|0;s=m;l=m+20|0;f=e+200|0;u=e+164|0;r=h[(h[u>>2]|0)+((h[f>>2]|0)*5640|0)+5584>>2]|0;n=h[r+24>>2]|0;if((n|0)==1)r=1;else r=((h[r+4>>2]|0)*3|0)+-2|0;a=(n|0)==0?r+1|0:r<<1|1;o=a+4|0;h[l>>2]=o;n=e+48|0;e=e+44|0;r=h[e>>2]|0;do if(o>>>0>(h[n>>2]|0)>>>0){r=Jn(r,o)|0;if(r){h[e>>2]=r;h[n>>2]=o;break}Qn(h[e>>2]|0);h[e>>2]=0;h[n>>2]=0;Jr(t,1,11641,s)|0;d=0;k=m;return d|0}while(0);kr(r,65372,2);kr(r+2|0,a+2|0,2);h[l>>2]=a;if(!(ao(h[u>>2]|0,h[f>>2]|0,0,r+4|0,l,t)|0)){Jr(t,1,11680,c)|0;d=0;k=m;return d|0}if(!(h[l>>2]|0)){d=(Vr(i,h[e>>2]|0,o,t)|0)==(o|0)&1;k=m;return d|0}else{Jr(t,1,11680,d)|0;d=0;k=m;return d|0}return 0}function Wa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;y=k;k=k+16|0;g=y;v=y+4|0;d=e+80|0;r=h[(h[d>>2]|0)+16>>2]|0;if(r>>>0<=1){_=1;k=y;return _|0}w=e+164|0;p=e+200|0;b=e+48|0;c=e+44|0;u=1;while(1){o=h[w>>2]|0;f=h[p>>2]|0;a=h[o+(f*5640|0)+5584>>2]|0;s=h[a+(u*1080|0)>>2]|0;e:do if((((((h[a>>2]|0)==(s|0)?(m=h[a+4>>2]|0,(m|0)==(h[a+(u*1080|0)+4>>2]|0)):0)?(h[a+8>>2]|0)==(h[a+(u*1080|0)+8>>2]|0):0)?(h[a+12>>2]|0)==(h[a+(u*1080|0)+12>>2]|0):0)?(h[a+16>>2]|0)==(h[a+(u*1080|0)+16>>2]|0):0)?(h[a+20>>2]|0)==(h[a+(u*1080|0)+20>>2]|0):0){if(m){e=0;do{if((h[a+812+(e<<2)>>2]|0)!=(h[a+(u*1080|0)+812+(e<<2)>>2]|0)){_=13;break e}if((h[a+944+(e<<2)>>2]|0)!=(h[a+(u*1080|0)+944+(e<<2)>>2]|0)){_=13;break e}e=e+1|0}while(e>>>0<m>>>0)}}else _=13;while(0);if((_|0)==13){_=0;if(!(s&1))e=5;else e=(h[a+(u*1080|0)+4>>2]|0)+5|0;l=e+(r>>>0<257?6:7)|0;n=h[c>>2]|0;if(l>>>0>(h[b>>2]|0)>>>0){e=Jn(n,l)|0;if(!e){_=17;break}h[c>>2]=e;h[b>>2]=l;f=h[p>>2]|0;o=h[w>>2]|0;a=h[o+(f*5640|0)+5584>>2]|0;r=h[(h[d>>2]|0)+16>>2]|0;s=h[a+(u*1080|0)>>2]|0;n=e}r=r>>>0<257?1:2;if(!(s&1))e=5;else e=(h[a+(u*1080|0)+4>>2]|0)+5|0;kr(n,65363,2);kr(n+2|0,r+3+e|0,2);kr(n+4|0,u,r);s=r|4;kr(n+s|0,h[(h[o+(f*5640|0)+5584>>2]|0)+(u*1080|0)>>2]|0,1);h[v>>2]=e;oo(h[w>>2]|0,h[p>>2]|0,n+(s+1)|0,v,t)|0;if((Vr(i,h[c>>2]|0,l,t)|0)!=(l|0)){e=0;_=24;break}r=h[(h[d>>2]|0)+16>>2]|0}u=u+1|0;if(u>>>0>=r>>>0){e=1;_=24;break}}if((_|0)==17){Qn(h[c>>2]|0);h[c>>2]=0;h[b>>2]=0;Jr(t,1,11567,g)|0;_=0;k=y;return _|0}else if((_|0)==24){k=y;return e|0}return 0}function Ga(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0;p=k;k=k+16|0;v=p;d=p+4|0;u=e+80|0;r=h[(h[u>>2]|0)+16>>2]|0;if(r>>>0<=1){w=1;k=p;return w|0}m=e+164|0;b=e+200|0;c=e+48|0;l=e+44|0;f=1;while(1){s=h[(h[m>>2]|0)+((h[b>>2]|0)*5640|0)+5584>>2]|0;a=h[s+24>>2]|0;o=h[s+(f*1080|0)+24>>2]|0;e:do if((a|0)==(o|0)?(h[s+804>>2]|0)==(h[s+(f*1080|0)+804>>2]|0):0){if((a|0)!=1){n=(h[s+4>>2]|0)*3|0;e=n+-2|0;if((n|0)!=((h[s+(f*1080|0)+4>>2]|0)*3|0)){w=14;break}if(!e)break}else e=1;n=0;do{if((h[s+28+(n<<3)>>2]|0)!=(h[s+(f*1080|0)+28+(n<<3)>>2]|0)){w=14;break e}n=n+1|0}while(n>>>0<e>>>0);if(a){n=0;do{if((h[s+28+(n<<3)+4>>2]|0)!=(h[s+(f*1080|0)+28+(n<<3)+4>>2]|0)){w=14;break e}n=n+1|0}while(n>>>0<e>>>0)}}else w=14;while(0);if((w|0)==14){w=0;if((o|0)==1)e=1;else e=((h[s+(f*1080|0)+4>>2]|0)*3|0)+-2|0;a=((o|0)==0?e+1|0:e<<1|1)+5+(r>>>0>256&1)|0;e=h[l>>2]|0;if(a>>>0>(h[c>>2]|0)>>>0){e=Jn(e,a)|0;if(!e){w=18;break}h[l>>2]=e;h[c>>2]=a;r=h[(h[m>>2]|0)+((h[b>>2]|0)*5640|0)+5584>>2]|0;n=h[r+(f*1080|0)+24>>2]|0}else{n=o;r=s}if((n|0)==1)r=1;else r=((h[r+(f*1080|0)+4>>2]|0)*3|0)+-2|0;n=(n|0)==0?r+1|0:r<<1|1;h[d>>2]=n+6;kr(e,65373,2);r=e+2|0;if((h[(h[u>>2]|0)+16>>2]|0)>>>0<257){kr(r,n+3|0,2);kr(e+4|0,f,1);e=e+5|0}else{kr(r,n+4|0,2);kr(e+4|0,f,2);e=e+6|0}h[d>>2]=n;ao(h[m>>2]|0,h[b>>2]|0,f,e,d,t)|0;if((Vr(i,h[l>>2]|0,a,t)|0)!=(a|0)){e=0;w=28;break}r=h[(h[u>>2]|0)+16>>2]|0}f=f+1|0;if(f>>>0>=r>>>0){e=1;w=28;break}}if((w|0)==18){Qn(h[l>>2]|0);h[l>>2]=0;h[c>>2]=0;Jr(t,1,11495,v)|0;w=0;k=p;return w|0}else if((w|0)==28){k=p;return e|0}return 0}function Xa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+16|0;a=l;o=(h[e+32>>2]|0)*5|0;s=o+6|0;n=e+48|0;f=e+44|0;r=h[f>>2]|0;do if(s>>>0>(h[n>>2]|0)>>>0){r=Jn(r,s)|0;if(r){h[f>>2]=r;h[n>>2]=s;break}Qn(h[f>>2]|0);h[f>>2]=0;h[n>>2]=0;Jr(t,1,11456,a)|0;i=0;k=l;return i|0}while(0);a=Wr(i)|0;e=e+16|0;h[e>>2]=a;h[e+4>>2]=H;kr(r,65365,2);kr(r+2|0,o+4|0,2);kr(r+4|0,0,1);kr(r+5|0,80,1);i=(Vr(i,h[f>>2]|0,s,t)|0)==(s|0)&1;k=l;return i|0}function Ka(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;b=k;k=k+16|0;s=b;m=b+4|0;h[m>>2]=0;u=e+200|0;r=h[u>>2]|0;l=e+164|0;n=h[l>>2]|0;f=e+80|0;o=h[(h[f>>2]|0)+16>>2]|0;d=(ue(o>>>0<257?7:9,(h[n+(r*5640|0)+420>>2]|0)+1|0)|0)+4|0;a=e+48|0;c=e+44|0;e=h[c>>2]|0;do if(d>>>0>(h[a>>2]|0)>>>0){r=Jn(e,d)|0;if(r){h[c>>2]=r;h[a>>2]=d;a=r;e=h[(h[f>>2]|0)+16>>2]|0;n=h[l>>2]|0;r=h[u>>2]|0;break}Qn(h[c>>2]|0);h[c>>2]=0;h[a>>2]=0;Jr(t,1,11417,s)|0;i=0;k=b;return i|0}else{a=e;e=o}while(0);no(e,n,r,a,m);i=(Vr(i,h[c>>2]|0,d,t)|0)==(d|0)&1;k=b;return i|0}function $a(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0;s=e+164|0;f=e+80|0;n=h[f>>2]|0;r=h[n+16>>2]|0;if(!r){i=1;return i|0}o=e+44|0;e=0;a=h[(h[s>>2]|0)+5584>>2]|0;while(1){if(h[a+808>>2]|0){l=h[(h[s>>2]|0)+5584>>2]|0;c=r>>>0<257?1:2;n=c+6|0;u=h[o>>2]|0;kr(u,65374,2);r=c|4;kr(u+2|0,r,2);kr(u+4|0,e,c);kr(u+r|0,0,1);kr(u+(r+1)|0,h[l+(e*1080|0)+808>>2]|0,1);if((Vr(i,h[o>>2]|0,n,t)|0)!=(n|0)){e=0;r=7;break}n=h[f>>2]|0}e=e+1|0;r=h[n+16>>2]|0;if(e>>>0>=r>>>0){e=1;r=7;break}else a=a+1080|0}if((r|0)==7)return e|0;return 0}function Ja(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+16|0;a=l;o=h[e+108>>2]|0;s=Mf(o)|0;f=s+6|0;r=e+48|0;n=e+44|0;e=h[n>>2]|0;do if(f>>>0>(h[r>>2]|0)>>>0){e=Jn(e,f)|0;if(e){h[n>>2]=e;h[r>>2]=f;break}Qn(h[n>>2]|0);h[n>>2]=0;h[r>>2]=0;Jr(t,1,11374,a)|0;i=0;k=l;return i|0}while(0);kr(e,65380,2);kr(e+2|0,s+4|0,2);kr(e+4|0,1,2);Xf(e+6|0,o|0,s|0)|0;i=(Vr(i,h[n>>2]|0,f,t)|0)==(f|0)&1;k=l;return i|0}function Qa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0;x=k;k=k+32|0;y=x+24|0;p=x+16|0;d=x+8|0;n=x;o=h[e+80>>2]|0;s=o+16|0;a=h[s>>2]|0;f=a+6|0;_=e+48|0;C=e+44|0;r=h[C>>2]|0;do if(f>>>0>(h[_>>2]|0)>>>0){r=Jn(r,f)|0;if(r){h[C>>2]=r;h[_>>2]=f;break}Qn(h[C>>2]|0);h[C>>2]=0;h[_>>2]=0;Jr(t,1,11218,n)|0;i=0;k=x;return i|0}while(0);kr(r,65400,2);kr(r+2|0,a+4|0,2);kr(r+4|0,h[s>>2]|0,2);if(h[s>>2]|0){a=0;n=h[o+24>>2]|0;r=r+6|0;while(1){kr(r,(h[n+24>>2]|0)+-1|h[n+32>>2]<<7,1);a=a+1|0;if(a>>>0>=(h[s>>2]|0)>>>0)break;else{n=n+52|0;r=r+1|0}}}if((Vr(i,h[C>>2]|0,f,t)|0)!=(f|0)){i=0;k=x;return i|0}b=e+200|0;u=h[b>>2]|0;v=e+164|0;l=h[v>>2]|0;n=l+(u*5640|0)+5616|0;e:do if(h[n>>2]|0){f=0;e=h[l+(u*5640|0)+5612>>2]|0;while(1){a=e+16|0;o=h[a>>2]|0;s=o+10|0;r=h[C>>2]|0;if(s>>>0>(h[_>>2]|0)>>>0){r=Jn(r,s)|0;if(!r)break;h[C>>2]=r;h[_>>2]=s}kr(r,65396,2);kr(r+2|0,o+8|0,2);kr(r+4|0,0,2);kr(r+6|0,h[e+4>>2]<<8|h[e+8>>2]&255|h[e>>2]<<10,2);kr(r+8|0,0,2);Xf(r+10|0,h[e+12>>2]|0,h[a>>2]|0)|0;if((Vr(i,h[C>>2]|0,s,t)|0)!=(s|0)){w=0;T=42;break}f=f+1|0;if(f>>>0>=(h[n>>2]|0)>>>0)break e;else e=e+20|0}if((T|0)==42){k=x;return w|0}Qn(h[C>>2]|0);h[C>>2]=0;h[_>>2]=0;Jr(t,1,11257,d)|0;i=0;k=x;return i|0}while(0);d=l+(u*5640|0)+5628|0;e:do if(h[d>>2]|0){m=0;l=h[l+(u*5640|0)+5624>>2]|0;while(1){f=l+4|0;n=h[f>>2]|0;o=n>>>0>255;s=o?2:1;o=o?32768:0;n=ue(s,n<<1)|0;e=n+19|0;r=h[C>>2]|0;if(e>>>0>(h[_>>2]|0)>>>0){r=Jn(r,e)|0;if(!r)break;h[C>>2]=r;h[_>>2]=e}kr(r,65397,2);kr(r+2|0,n+17|0,2);kr(r+4|0,0,2);kr(r+6|0,h[l>>2]|0,1);kr(r+7|0,0,2);kr(r+9|0,1,2);kr(r+11|0,1,1);kr(r+12|0,h[f>>2]|o,2);r=r+14|0;if(!(h[f>>2]|0))n=0;else{a=0;do{kr(r,a,s);r=r+s|0;a=a+1|0;n=h[f>>2]|0}while(a>>>0<n>>>0)}kr(r,n|o,2);r=r+2|0;if(!(h[f>>2]|0))a=r;else{n=0;do{kr(r,n,s);r=r+s|0;n=n+1|0}while(n>>>0<(h[f>>2]|0)>>>0);a=r}r=((c[l+16>>0]^1)&255)<<16&65536;n=h[l+8>>2]|0;if(n)r=h[n+8>>2]|r;n=h[l+12>>2]|0;if(n)r=h[n+8>>2]<<8|r;kr(a,r,3);if((Vr(i,h[C>>2]|0,e,t)|0)!=(e|0)){w=0;T=42;break}m=m+1|0;if(m>>>0>=(h[d>>2]|0)>>>0)break e;else l=l+20|0}if((T|0)==42){k=x;return w|0}Qn(h[C>>2]|0);h[C>>2]=0;h[_>>2]=0;Jr(t,1,11296,p)|0;i=0;k=x;return i|0}while(0);s=h[b>>2]|0;o=h[v>>2]|0;f=o+(s*5640|0)+5628|0;n=h[f>>2]|0;e=n+5|0;r=h[C>>2]|0;do if(e>>>0>(h[_>>2]|0)>>>0){r=Jn(r,e)|0;if(!r){Qn(h[C>>2]|0);h[C>>2]=0;h[_>>2]=0;Jr(t,1,11335,y)|0;g=1;break}else{h[C>>2]=r;h[_>>2]=e;M=r;T=37;break}}else{M=r;T=37}while(0);if((T|0)==37){kr(M,65399,2);kr(M+2|0,n+3|0,2);kr(M+4|0,h[f>>2]|0,1);if(h[f>>2]|0){a=0;n=M+5|0;r=h[o+(s*5640|0)+5624>>2]|0;while(1){kr(n,h[r>>2]|0,1);a=a+1|0;if(a>>>0>=(h[f>>2]|0)>>>0)break;else{n=n+1|0;r=r+20|0}}}g=(Vr(i,h[C>>2]|0,e,t)|0)!=(e|0)}i=g&1^1;k=x;return i|0}function Za(e,i,t){e=e|0;i=i|0;t=t|0;t=Wr(i)|0;i=(h[e+196>>2]|0)+8|0;h[i>>2]=t;h[i+4>>2]=H;return 1}function eo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=k;k=k+16|0;i=Ht(0)|0;r=e+204|0;h[r>>2]=i;if(!i){Jr(t,1,11178,n)|0;t=0;k=n;return t|0}if(Vt(i,h[e+80>>2]|0,e+88|0)|0){t=1;k=n;return t|0}qt(h[r>>2]|0);h[r>>2]=0;t=0;k=n;return t|0}function io(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,z=0,j=0,Y=0;U=e+80|0;A=h[U>>2]|0;z=e+164|0;n=h[z>>2]|0;F=A+24|0;P=h[F>>2]|0;t=h[P>>2]|0;r=h[P+4>>2]|0;N=A+16|0;P=ue(h[P+24>>2]|0,h[N>>2]|0)|0;S=Wr(i)|0;b=e+116|0;s=h[b>>2]|0;v=e+112|0;i=h[v>>2]|0;I=(+(S>>>0)+4294967296*+(H|0))/+((ue(i,s)|0)>>>0);S=(c[e+181>>0]&8)==0?1:2;if(s){p=e+92|0;k=e+100|0;_=e+96|0;M=e+104|0;C=A+4|0;x=A+8|0;E=A+12|0;T=+((ue(t<<3,r)|0)>>>0);f=i;t=i;m=0;i=n;do{u=m;m=m+1|0;if(!t)t=0;else{f=0;do{y=+Il[S&3](i);s=h[i+8>>2]|0;y=y/+(s>>>0);j=h[p>>2]|0;n=h[k>>2]|0;o=(ue(n,f)|0)+j|0;t=h[A>>2]|0;t=(o|0)>(t|0)?o:t;o=h[_>>2]|0;a=h[M>>2]|0;Y=(ue(a,u)|0)+o|0;r=h[C>>2]|0;r=(Y|0)>(r|0)?Y:r;f=f+1|0;j=(ue(n,f)|0)+j|0;n=h[x>>2]|0;n=(j|0)<(n|0)?j:n;o=(ue(a,m)|0)+o|0;a=h[E>>2]|0;a=(o|0)<(a|0)?o:a;o=i+20|0;l=+w[o>>2];if(l!=0){g=+((ue(ue(n-t|0,P)|0,a-r|0)|0)>>>0)/(T*l)-y;w[o>>2]=g}if(s>>>0>1){l=+((ue(ue(n-t|0,P)|0,a-r|0)|0)>>>0);t=1;r=i+24|0;while(1){g=+w[r>>2];if(g!=0)w[r>>2]=l/(T*g)-y;t=t+1|0;if(t>>>0>=s>>>0)break;else r=r+4|0}}i=i+5640|0;t=h[v>>2]|0}while(f>>>0<t>>>0);s=h[b>>2]|0;f=t}}while(m>>>0<s>>>0);if(!s)s=0;else{p=(f|0)==0;g=I+2;_=f>>>0>1?f:1;k=0;t=h[z>>2]|0;do{if(!p){m=t+16|0;b=0;v=t;while(1){i=v+20|0;l=+w[i>>2];if(l!=0?(T=l-I,w[i>>2]=T,T<30):0)w[i>>2]=30;a=v+24|0;i=h[v+8>>2]|0;u=i+-1|0;l=+w[a>>2];r=l!=0;if(u>>>0>1){o=m+(i<<2)|0;n=1;i=a;do{if(r?(T=l-I,w[i>>2]=T,D=+w[i+-4>>2],T<D+10):0)w[i>>2]=D+20;i=i+4|0;n=n+1|0;l=+w[i>>2];r=l!=0}while((n|0)!=(u|0));if(r){L=l;O=o;B=29}}else if(r){L=l;O=a;B=29}if((B|0)==29?(B=0,T=L-g,w[O>>2]=T,R=+w[O+-4>>2],T<R+10):0)w[O>>2]=R+20;b=b+1|0;if(b>>>0>=f>>>0)break;else{m=m+5640|0;v=v+5640|0}}t=t+(_*5640|0)|0}k=k+1|0}while(k>>>0<s>>>0)}}else{f=i;s=0}r=h[N>>2]|0;if(!r)k=0;else{n=(h[e+100>>2]|0)+-1|0;a=(h[e+104>>2]|0)+-1|0;o=0;i=h[F>>2]|0;t=0;while(1){Y=h[i>>2]|0;j=h[i+4>>2]|0;Y=ue(((a+j|0)>>>0)/(j>>>0)|0,((n+Y|0)>>>0)/(Y>>>0)|0)|0;t=(ue(Y,h[i+24>>2]|0)|0)+t|0;o=o+1|0;if(o>>>0>=r>>>0)break;else i=i+52|0}k=~~(+(t>>>0)*.1625)>>>0}u=h[(h[U>>2]|0)+16>>2]|0;b=u+-1|0;p=ue(s,f)|0;m=(p|0)==0;if(m)n=0;else{i=0;t=0;r=h[z>>2]|0;while(1){Y=h[r+5588>>2]|0;t=t>>>0>Y>>>0?t:Y;i=i+1|0;if((i|0)==(p|0))break;else r=r+5640|0}n=t*12|0}v=e+88|0;if(((d[v>>1]|0)+-3&65535)>=4){if(m){i=0;t=0}else{f=(u|0)==0;o=0;t=0;do{if(!f){r=h[(h[z>>2]|0)+(o*5640|0)+5584>>2]|0;a=0;do{if(!(h[r+(a*1080|0)>>2]&1))i=5;else i=(h[r+(a*1080|0)+4>>2]|0)+5|0;t=t>>>0>i>>>0?t:i;a=a+1|0}while((a|0)!=(u|0))}o=o+1|0}while((o|0)!=(p|0));s=0;i=0;do{if(!f){a=h[(h[z>>2]|0)+(s*5640|0)+5584>>2]|0;o=0;do{if(!(h[a+(o*1080|0)>>2]&1))r=5;else r=(h[a+(o*1080|0)+4>>2]|0)+5|0;i=i>>>0>r>>>0?i:r;o=o+1|0}while((o|0)!=(u|0))}s=s+1|0}while((s|0)!=(p|0))}n=(ue(t+12+i|0,b)|0)+n|0}if(m)t=13;else{r=0;t=0;i=h[z>>2]|0;while(1){Y=h[i+420>>2]|0;t=t>>>0>Y>>>0?t:Y;r=r+1|0;if((r|0)==(p|0))break;else i=i+5640|0}t=(t*9|0)+13|0}Y=n+k+t|0;h[e+40>>2]=Y;Y=Gn(Y)|0;h[e+36>>2]=Y;if(!Y){Y=0;return Y|0}if(((d[v>>1]|0)+-3&65535)>=4){Y=1;return Y|0}t=Gn((h[e+32>>2]|0)*5|0)|0;h[e+24>>2]=t;if(!t){Y=0;return Y|0}h[e+28>>2]=t;Y=1;return Y|0}function to(e){e=e|0;return 0}function ro(e){e=e|0;return+ +((((h[e+5588>>2]|0)*14|0)+-14|0)>>>0)}function no(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0;a=h[i+(t*5640|0)+5584>>2]|0;v=(h[i+(t*5640|0)+420>>2]|0)+1|0;f=e>>>0<257?1:2;b=ue(v,(f<<1)+5|0)|0;w=b+4|0;kr(r,65375,2);kr(r+2|0,b+2|0,2);if(!v){h[n>>2]=w;return}l=f+1|0;u=f+3|0;c=f|4;d=c+f|0;m=d+1|0;b=i+(t*5640|0)+8|0;o=a+4|0;s=0;r=r+4|0;a=i+(t*5640|0)+424|0;while(1){kr(r,h[a>>2]|0,1);kr(r+1|0,h[a+4>>2]|0,f);g=a+8|0;kr(r+l|0,h[g>>2]|0,2);i=a+12|0;kr(r+u|0,h[i>>2]|0,1);t=a+16|0;kr(r+c|0,h[t>>2]|0,f);kr(r+d|0,h[a+36>>2]|0,1);k=h[g>>2]|0;p=h[b>>2]|0;h[g>>2]=(k|0)<(p|0)?k:p;g=h[i>>2]|0;p=h[o>>2]|0;h[i>>2]=(g|0)<(p|0)?g:p;i=h[t>>2]|0;h[t>>2]=(i|0)<(e|0)?i:e;s=s+1|0;if((s|0)==(v|0))break;else{r=r+m|0;a=a+148|0}}h[n>>2]=w;return}function ao(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0;c=k;k=k+16|0;f=c+8|0;s=c;l=h[e+(i*5640|0)+5584>>2]|0;i=h[l+(t*1080|0)+24>>2]|0;do if((i|0)!=1){e=(h[l+(t*1080|0)+4>>2]|0)*3|0;o=e+-2|0;if(!i){e=e+-1|0;if((h[n>>2]|0)>>>0<e>>>0){Jr(a,1,11534,s)|0;n=0;k=c;return n|0}else{kr(r,h[l+(t*1080|0)+804>>2]<<5,1);if(!o)break;else i=0;do{r=r+1|0;kr(r,h[l+(t*1080|0)+28+(i<<3)>>2]<<3,1);i=i+1|0}while((i|0)!=(o|0))}}else u=7}else{o=1;i=1;u=7}while(0);if((u|0)==7){e=o<<1|1;if((h[n>>2]|0)>>>0<e>>>0){Jr(a,1,11534,f)|0;n=0;k=c;return n|0}kr(r,(h[l+(t*1080|0)+804>>2]<<5)+i|0,1);if(o){r=r+1|0;i=0;while(1){kr(r,(h[l+(t*1080|0)+28+(i<<3)>>2]<<11)+(h[l+(t*1080|0)+28+(i<<3)+4>>2]|0)|0,2);i=i+1|0;if((i|0)==(o|0))break;else r=r+2|0}}}h[n>>2]=(h[n>>2]|0)-e;n=1;k=c;return n|0}function oo(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;s=k;k=k+16|0;a=h[e+(i*5640|0)+5584>>2]|0;if((h[r>>2]|0)>>>0<5){Jr(n,1,11606,s)|0;r=0;k=s;return r|0}o=a+4|0;kr(t,(h[o>>2]|0)+-1|0,1);kr(t+1|0,(h[a+8>>2]|0)+-2|0,1);kr(t+2|0,(h[a+12>>2]|0)+-2|0,1);kr(t+3|0,h[a+16>>2]|0,1);kr(t+4|0,h[a+20>>2]|0,1);i=(h[r>>2]|0)+-5|0;h[r>>2]=i;if(!(h[a>>2]&1)){r=1;k=s;return r|0}e=h[o>>2]|0;if(i>>>0<e>>>0){Jr(n,1,11606,s+8|0)|0;r=0;k=s;return r|0}if(!e)e=0;else{i=t+5|0;t=0;while(1){kr(i,(h[a+944+(t<<2)>>2]<<4)+(h[a+812+(t<<2)>>2]|0)|0,1);t=t+1|0;e=h[o>>2]|0;if(t>>>0>=e>>>0)break;else i=i+1|0}i=h[r>>2]|0}h[r>>2]=i-e;r=1;k=s;return r|0}function so(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;a=h[e+76>>2]|0;r=h[a+(t*5640|0)+4>>2]|0;n=696;while(1){l=h[n>>2]|0;if((l|0)==-1|(l|0)==(r|0))break;else n=n+12|0}if(!(c[e+93>>0]&8)){e=1;return e|0}l=m[e+92>>0]|0;o=a+(t*5640|0)+424+(i*148|0)+92|0;s=a+(t*5640|0)+424+(i*148|0)+88|0;f=a+(t*5640|0)+424+(i*148|0)+96|0;i=a+(t*5640|0)+424+(i*148|0)+84|0;a=c[n+4>>0]|0;switch(a|0){case 67:{r=h[o>>2]|0;break}case 82:{r=h[s>>2]|0;break}case 80:{r=h[f>>2]|0;break}case 76:{r=h[i>>2]|0;break}default:r=1}if((l|0)!=(a|0)){a=c[n+5>>0]|0;switch(a|0){case 67:{r=ue(h[o>>2]|0,r)|0;break}case 82:{r=ue(h[s>>2]|0,r)|0;break}case 80:{r=ue(h[f>>2]|0,r)|0;break}case 76:{r=ue(h[i>>2]|0,r)|0;break}default:{}}if((l|0)!=(a|0)){a=c[n+6>>0]|0;switch(a|0){case 67:{r=ue(h[o>>2]|0,r)|0;break}case 82:{r=ue(h[s>>2]|0,r)|0;break}case 80:{r=ue(h[f>>2]|0,r)|0;break}case 76:{r=ue(h[i>>2]|0,r)|0;break}default:{}}if((l|0)!=(a|0)){n=c[n+7>>0]|0;switch(n|0){case 67:{r=ue(h[o>>2]|0,r)|0;break}case 82:{r=ue(h[s>>2]|0,r)|0;break}case 80:{r=ue(h[f>>2]|0,r)|0;break}case 76:{r=ue(h[i>>2]|0,r)|0;break}default:{}}if((l|0)==(n|0))n=3;else{e=r;return e|0}}else n=2}else n=1}else n=0;h[e+84>>2]=n;e=r;return e|0}function fo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0;E=i+16|0;if(!(h[E>>2]|0)){E=1;return E|0}x=0;C=h[i+24>>2]|0;while(1){a=r+44|0;n=h[a>>2]|0;o=r+8|0;if(!n){i=r+12|0;n=Xn(ue(h[i>>2]|0,h[o>>2]|0)|0,4)|0;h[a>>2]=n;if(!n){t=0;r=61;break}}else i=r+12|0;v=C+36|0;h[r+36>>2]=h[v>>2];T=h[C+24>>2]|0;g=h[e+24>>2]|0;v=h[v>>2]|0;T=((T&7|0)!=0&1)+(T>>>3)|0;T=(T|0)==3?4:T;f=h[g+(v*136|0)+8>>2]|0;s=h[g+(v*136|0)>>2]|0;_=f-s|0;p=h[g+(v*136|0)+12>>2]|0;v=h[g+(v*136|0)+4>>2]|0;g=p-v|0;a=h[r+16>>2]|0;u=h[r+40>>2]|0;l=qf(1,0,u|0)|0;y=H;a=Wf(a|0,0,-1,-1)|0;a=Wf(a|0,H|0,l|0,y|0)|0;a=Gf(a|0,H|0,u|0)|0;w=Wf(h[r+20>>2]|0,0,-1,-1)|0;y=Wf(w|0,H|0,l|0,y|0)|0;u=Gf(y|0,H|0,u|0)|0;y=h[o>>2]|0;o=a+y|0;l=h[i>>2]|0;w=u+l|0;do if(a>>>0<s>>>0){i=s-a|0;if(f>>>0>o>>>0){M=o-s|0;k=0;s=_-M|0;f=i}else{k=0;s=0;f=i;M=_}}else{i=a-s|0;if(f>>>0>o>>>0){k=i;s=f-o|0;f=0;M=y;break}else{k=i;s=0;f=0;M=_-i|0;break}}while(0);do if(u>>>0<v>>>0){o=v-u|0;if(p>>>0>w>>>0){a=w-v|0;l=a;i=0;a=g-a|0}else{l=g;i=0;a=0}}else{i=u-v|0;if(p>>>0>w>>>0){a=p-w|0;o=0;break}else{l=g-i|0;a=0;o=0;break}}while(0);if((k|s|M|a|i|l|0)<0){t=0;r=61;break}i=(ue(i,_)|0)+k|0;v=k+s|0;w=(ue(a,_)|0)-k|0;u=y-M|0;n=n+((ue(y,o)|0)+f<<2)|0;switch(T|0){case 1:{t=t+i|0;i=(l|0)==0;if(!(h[C+32>>2]|0)){if(!i){s=(M|0)==0;f=0;i=n;while(1){if(!s){o=i+(M<<2)|0;a=0;n=t;while(1){h[i>>2]=m[n>>0];a=a+1|0;if((a|0)==(M|0))break;else{i=i+4|0;n=n+1|0}}i=o;t=t+M|0}t=t+v|0;f=f+1|0;if((f|0)==(l|0))break;else i=i+(u<<2)|0}}}else if(!i){s=(M|0)==0;f=0;i=n;while(1){if(!s){o=i+(M<<2)|0;a=0;n=t;while(1){h[i>>2]=c[n>>0];a=a+1|0;if((a|0)==(M|0))break;else{i=i+4|0;n=n+1|0}}i=o;t=t+M|0}t=t+v|0;f=f+1|0;if((f|0)==(l|0))break;else i=i+(u<<2)|0}}t=t+w|0;break}case 2:{t=t+(i<<1)|0;i=(l|0)==0;if(!(h[C+32>>2]|0)){if(!i){s=(M|0)==0;f=0;i=n;while(1){if(!s){o=i+(M<<2)|0;a=0;n=t;while(1){h[i>>2]=b[n>>1];a=a+1|0;if((a|0)==(M|0))break;else{i=i+4|0;n=n+2|0}}i=o;t=t+(M<<1)|0}t=t+(v<<1)|0;f=f+1|0;if((f|0)==(l|0))break;else i=i+(u<<2)|0}}}else if(!i){s=(M|0)==0;f=0;i=n;while(1){if(!s){o=i+(M<<2)|0;a=0;n=t;while(1){h[i>>2]=d[n>>1];a=a+1|0;if((a|0)==(M|0))break;else{i=i+4|0;n=n+2|0}}i=o;t=t+(M<<1)|0}t=t+(v<<1)|0;f=f+1|0;if((f|0)==(l|0))break;else i=i+(u<<2)|0}}t=t+(w<<1)|0;break}case 4:{t=t+(i<<2)|0;if(l){s=(M|0)==0;f=0;i=n;while(1){if(!s){o=i+(M<<2)|0;a=0;n=t;while(1){h[i>>2]=h[n>>2];a=a+1|0;if((a|0)==(M|0))break;else{i=i+4|0;n=n+4|0}}i=o;t=t+(M<<2)|0}t=t+(v<<2)|0;f=f+1|0;if((f|0)==(l|0))break;else i=i+(u<<2)|0}}t=t+(w<<2)|0;break}default:{}}x=x+1|0;if(x>>>0>=(h[E>>2]|0)>>>0){t=1;r=61;break}else{r=r+52|0;C=C+52|0;e=e+52|0}}if((r|0)==61)return t|0;return 0}function lo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;C=k;k=k+112|0;T=C+88|0;g=C+80|0;_=C+72|0;p=C+64|0;b=C+56|0;d=C+48|0;f=C+40|0;o=C+32|0;a=C+24|0;n=C+16|0;v=C+100|0;w=C+96|0;y=C+92|0;h[w>>2]=0;M=e+200|0;if((t|0)!=8){Jr(r,1,8681,C)|0;Jr(r,1,8681,C+8|0)|0;r=0;k=C;return r|0}_r(i,M,2);_r(i+2|0,v,4);_r(i+6|0,y,1);_r(i+7|0,w,1);s=h[M>>2]|0;i=h[e+112>>2]|0;if(s>>>0>=(ue(h[e+116>>2]|0,i)|0)>>>0){h[n>>2]=s;Jr(r,1,15277,n)|0;r=0;k=C;return r|0}t=h[e+164>>2]|0;u=(s>>>0)%(i>>>0)|0;l=(s>>>0)/(i>>>0)|0;i=h[v>>2]|0;do if((i+-1|0)>>>0<13){if((i|0)==12){h[a>>2]=12;Jr(r,2,15301,a)|0;i=h[v>>2]|0;break}h[o>>2]=i;Jr(r,1,15338,o)|0;r=0;k=C;return r|0}while(0);if(!i){Jr(r,4,15399,f)|0;h[e+72>>2]=1}i=h[w>>2]|0;do if(!i)i=h[t+(s*5640|0)+5588>>2]|0;else{i=((m[e+76>>0]|0)>>>4&1)+i|0;h[w>>2]=i;n=t+(s*5640|0)+5588|0;a=h[n>>2]|0;t=h[y>>2]|0;if((a+-1|0)>>>0<t>>>0){h[d>>2]=t;h[d+4>>2]=a;Jr(r,1,15510,d)|0;h[e+72>>2]=1;r=0;k=C;return r|0}if(t>>>0<i>>>0){h[n>>2]=i;break}h[b>>2]=t;h[b+4>>2]=i;Jr(r,1,15609,b)|0;h[e+72>>2]=1;r=0;k=C;return r|0}while(0);if((i|0)!=0?(i|0)==((h[y>>2]|0)+1|0):0){b=e+76|0;c[b>>0]=c[b>>0]|1}h[e+24>>2]=(h[e+72>>2]|0)==0?(h[v>>2]|0)+-12|0:0;h[e+8>>2]=16;i=h[e+60>>2]|0;if((i|0)==-1){if((u>>>0>=(h[e+28>>2]|0)>>>0?u>>>0<(h[e+36>>2]|0)>>>0:0)?l>>>0>=(h[e+32>>2]|0)>>>0:0)i=(l>>>0>=(h[e+40>>2]|0)>>>0&1)<<2&255;else i=4;v=e+76|0;c[v>>0]=c[v>>0]&-5|i}else{v=e+76|0;c[v>>0]=((h[M>>2]|0)!=(i|0)&1)<<2&255|c[v>>0]&-5}o=e+196|0;i=h[o>>2]|0;if(!i){r=1;k=C;return r|0}a=h[M>>2]|0;i=h[i+40>>2]|0;h[i+(a*40|0)>>2]=a;h[i+(a*40|0)+12>>2]=h[y>>2];t=h[w>>2]|0;if(t){h[i+(a*40|0)+4>>2]=t;h[i+(a*40|0)+8>>2]=h[w>>2];i=h[i+(a*40|0)+16>>2]|0;if(!i){T=Xn(h[w>>2]|0,24)|0;h[(h[(h[o>>2]|0)+40>>2]|0)+((h[M>>2]|0)*40|0)+16>>2]=T;if(T){r=1;k=C;return r|0}Jr(r,1,15717,p)|0;r=0;k=C;return r|0}i=Jn(i,(h[w>>2]|0)*24|0)|0;t=(h[(h[o>>2]|0)+40>>2]|0)+((h[M>>2]|0)*40|0)+16|0;if(!i){Qn(h[t>>2]|0);h[(h[(h[o>>2]|0)+40>>2]|0)+((h[M>>2]|0)*40|0)+16>>2]=0;Jr(r,1,15717,_)|0;r=0;k=C;return r|0}else{h[t>>2]=i;r=1;k=C;return r|0}}if(!(h[i+(a*40|0)+16>>2]|0)){h[i+(a*40|0)+8>>2]=10;_=Xn(10,24)|0;t=h[M>>2]|0;i=h[(h[o>>2]|0)+40>>2]|0;h[i+(t*40|0)+16>>2]=_;if(!_){h[i+(t*40|0)+8>>2]=0;Jr(r,1,15717,g)|0;r=0;k=C;return r|0}else a=t}t=h[y>>2]|0;n=i+(a*40|0)+8|0;if(t>>>0<(h[n>>2]|0)>>>0){r=1;k=C;return r|0}t=t+1|0;h[n>>2]=t;i=Jn(h[i+(a*40|0)+16>>2]|0,t*24|0)|0;t=(h[(h[o>>2]|0)+40>>2]|0)+((h[M>>2]|0)*40|0)+16|0;if(!i){Qn(h[t>>2]|0);M=h[M>>2]|0;y=h[(h[o>>2]|0)+40>>2]|0;h[y+(M*40|0)+16>>2]=0;h[y+(M*40|0)+8>>2]=0;Jr(r,1,15717,T)|0;r=0;k=C;return r|0}else{h[t>>2]=i;r=1;k=C;return r|0}return 0}function uo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+64|0;m=w+48|0;b=w+40|0;s=w+32|0;u=w+56|0;o=w+52|0;h[u>>2]=t;v=e+80|0;f=h[v>>2]|0;d=e+8|0;if((h[d>>2]|0)==16)l=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else l=h[e+12>>2]|0;n=l+5636|0;a=c[n>>0]|0;if(a&1){Jr(r,1,15044,w)|0;v=0;k=w;return v|0}c[n>>0]=a|1;if(t>>>0<5){Jr(r,1,15108,w+8|0)|0;v=0;k=w;return v|0}_r(i,l,1);if((h[l>>2]|0)>>>0>7){Jr(r,1,15134,w+16|0)|0;v=0;k=w;return v|0}_r(i+1|0,o,1);o=h[o>>2]|0;n=l+4|0;h[n>>2]=o;if((o|0)>4){Jr(r,1,15168,w+24|0)|0;h[n>>2]=-1}n=l+8|0;_r(i+2|0,n,2);n=h[n>>2]|0;if((n+-1|0)>>>0>65534){h[s>>2]=n;Jr(r,1,15209,s)|0;v=0;k=w;return v|0}s=h[e+172>>2]|0;h[l+12>>2]=(s|0)==0?n:s;_r(i+4|0,l+16|0,1);s=i+5|0;h[u>>2]=t+-5;o=h[f+16>>2]|0;if(o){i=h[l>>2]&1;n=h[l+5584>>2]|0;a=0;do{h[n+(a*1080|0)>>2]=i;a=a+1|0}while(a>>>0<o>>>0)}if(!(Ei(e,0,s,u,r)|0)){Jr(r,1,15108,b)|0;v=0;k=w;return v|0}if(h[u>>2]|0){Jr(r,1,15108,m)|0;v=0;k=w;return v|0}if((h[d>>2]|0)==16)n=(h[e+164>>2]|0)+((h[e+200>>2]|0)*5640|0)|0;else n=h[e+12>>2]|0;n=h[n+5584>>2]|0;t=n+4|0;a=h[t>>2]|0;l=a<<2;if((h[(h[v>>2]|0)+16>>2]|0)>>>0<=1){v=1;k=w;return v|0}u=n+8|0;d=n+12|0;e=n+16|0;r=n+20|0;m=n+812|0;b=n+944|0;h[n+1084>>2]=a;o=h[u>>2]|0;h[n+1088>>2]=o;i=h[d>>2]|0;h[n+1092>>2]=i;s=h[e>>2]|0;h[n+1096>>2]=s;f=h[r>>2]|0;h[n+1100>>2]=f;Xf(n+1892|0,m|0,l|0)|0;Xf(n+2024|0,b|0,l|0)|0;if((h[(h[v>>2]|0)+16>>2]|0)>>>0<=2){v=1;k=w;return v|0}h[n+2164>>2]=a;h[n+2168>>2]=o;h[n+2172>>2]=i;h[n+2176>>2]=s;h[n+2180>>2]=f;Xf(n+2972|0,m|0,l|0)|0;Xf(n+3104|0,b|0,l|0)|0;if((h[(h[v>>2]|0)+16>>2]|0)>>>0>3)a=3;else{v=1;k=w;return v|0;
}while(1){o=h[u>>2]|0;i=h[d>>2]|0;s=h[e>>2]|0;f=h[r>>2]|0;h[n+3244>>2]=h[t>>2];h[n+3248>>2]=o;h[n+3252>>2]=i;h[n+3256>>2]=s;h[n+3260>>2]=f;Xf(n+4052|0,m|0,l|0)|0;Xf(n+4184|0,b|0,l|0)|0;a=a+1|0;if(a>>>0>=(h[(h[v>>2]|0)+16>>2]|0)>>>0){n=1;break}else n=n+1080|0}k=w;return n|0}function co(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0;g=k;k=k+272|0;c=g;w=g+136|0;p=g+8|0;if(!e){p=0;k=g;return p|0}u=e+4|0;if((h[e>>2]|0)==(i|0)?(h[u>>2]|0)==(t|0):0)n=e+8|0;else{h[e>>2]=i;h[u>>2]=t;h[w>>2]=i;h[p>>2]=t;n=e+8|0;h[n>>2]=0;a=0;s=t;f=i;l=0;while(1){v=ue(s,f)|0;f=(f+1|0)/2|0;o=l+1|0;h[w+(o<<2)>>2]=f;s=(s+1|0)/2|0;h[p+(o<<2)>>2]=s;a=a+v|0;if(v>>>0<=1)break;else l=o}h[n>>2]=a;if(!a){n=e+12|0;a=h[n>>2]|0;if(a){Qn(a);h[n>>2]=0}Qn(e);p=0;k=g;return p|0}o=a<<4;s=e+16|0;f=e+12|0;do if(o>>>0>(h[s>>2]|0)>>>0){a=Jn(h[f>>2]|0,o)|0;if(a){h[f>>2]=a;t=h[s>>2]|0;Vf(a+t|0,0,o-t|0)|0;h[s>>2]=o;t=h[u>>2]|0;i=h[e>>2]|0;break}Jr(r,1,20185,c)|0;n=h[f>>2]|0;if(n){Qn(n);h[f>>2]=0}Qn(e);p=0;k=g;return p|0}while(0);a=h[f>>2]|0;i=a+((ue(t,i)|0)<<4)|0;if(l){v=0;t=i;do{m=h[p+(v<<2)>>2]|0;e:do if((m|0)>0){b=h[w+(v<<2)>>2]|0;if((b|0)<=0){o=m+-1|0;s=0;while(1){d=(s&1|0)!=0|(s|0)==(o|0);f=d?t:i+(b<<4)|0;t=d?t:i;s=s+1|0;if((s|0)>=(m|0)){i=f;break e}else i=f}}d=((b+2+((b|0)<2?~b:-3)|0)>>>1)+1|0;r=m+-1|0;c=0;while(1){u=b;f=t;while(1){h[a>>2]=f;o=a+16|0;s=u;u=u+-2|0;if((u|0)>-1){h[o>>2]=f;a=a+32|0}else a=o;if((s|0)<=2)break;else f=f+16|0}t=t+(d<<4)|0;u=(c&1|0)!=0|(c|0)==(r|0);o=u?t:i+(b<<4)|0;t=u?t:i;c=c+1|0;if((c|0)>=(m|0)){i=o;break}else i=o}}while(0);v=v+1|0}while((v|0)!=(l|0))}h[a>>2]=0}n=h[n>>2]|0;if(!n){p=e;k=g;return p|0}a=0;i=h[e+12>>2]|0;while(1){h[i+4>>2]=999;h[i+8>>2]=0;h[i+12>>2]=0;a=a+1|0;if((a|0)==(n|0))break;else i=i+16|0}k=g;return e|0}function ho(e){e=e|0;var i=0,t=0;if(!e)return;i=e+12|0;t=h[i>>2]|0;if(t){Qn(t);h[i>>2]=0}Qn(e);return}function mo(e,i,t){e=e|0;i=i|0;t=t|0;i=(h[e+12>>2]|0)+(i<<4)|0;if(!i)return;while(1){e=i+4|0;if((h[e>>2]|0)<=(t|0)){i=4;break}h[e>>2]=t;i=h[i>>2]|0;if(!i){i=4;break}}if((i|0)==4)return}function bo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+128|0;s=f;t=(h[i+12>>2]|0)+(t<<4)|0;if(!(h[t>>2]|0)){n=0;a=s}else{n=t;i=s;while(1){a=i+4|0;h[i>>2]=t;t=h[n>>2]|0;if(!(h[t>>2]|0)){n=0;break}else{n=t;i=a}}}while(1){o=t+8|0;i=h[o>>2]|0;if((n|0)>(i|0)){h[o>>2]=n;i=n}e:do if((i|0)<(r|0)){n=t+4|0;while(1){if((i|0)>=(h[n>>2]|0))break;So(e,0,1);i=i+1|0;if((i|0)>=(r|0)){t=i;break e}}t=t+12|0;if(!(h[t>>2]|0)){So(e,1,1);h[t>>2]=1;t=i}else t=i}else t=i;while(0);h[o>>2]=t;if((a|0)==(s|0))break;o=a+-4|0;n=t;t=h[o>>2]|0;a=o}k=f;return}function vo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+128|0;s=f;t=(h[i+12>>2]|0)+(t<<4)|0;if(!(h[t>>2]|0)){i=0;a=s}else{n=t;i=s;while(1){a=i+4|0;h[i>>2]=t;t=h[n>>2]|0;if(!(h[t>>2]|0)){i=0;break}else{n=t;i=a}}}while(1){o=t+8|0;n=h[o>>2]|0;if((i|0)>(n|0))h[o>>2]=i;else i=n;t=t+4|0;e:do if((i|0)<(r|0)){while(1){if((i|0)>=(h[t>>2]|0))break e;if(Ao(e,1)|0)break;i=i+1|0;if((i|0)>=(r|0))break e}h[t>>2]=i}while(0);h[o>>2]=i;if((a|0)==(s|0))break;o=a+-4|0;t=h[o>>2]|0;a=o}k=f;return(h[t>>2]|0)<(r|0)|0}function wo(){var e=0,i=0;e=Xn(1,12)|0;if(!e){e=0;return e|0}h[e+4>>2]=10;i=Xn(10,4)|0;h[e+8>>2]=i;if(i){i=e;return i|0}Qn(e);i=0;return i|0}function po(e){e=e|0;var i=0;if(!e)return;i=h[e+8>>2]|0;if(i)Qn(i);Qn(e);return}function go(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;s=k;k=k+16|0;o=s;a=e+4|0;n=h[a>>2]|0;r=h[e>>2]|0;do if((n|0)==(r|0)){n=n+10|0;h[a>>2]=n;r=e+8|0;n=Jn(h[r>>2]|0,n<<2)|0;if(n){h[r>>2]=n;r=h[e>>2]|0;break}Qn(h[r>>2]|0);h[a>>2]=0;h[e>>2]=0;Jr(t,1,20233,o)|0;e=0;k=s;return e|0}else n=h[e+8>>2]|0;while(0);h[n+(r<<2)>>2]=i;h[e>>2]=r+1;e=1;k=s;return e|0}function ko(e){e=e|0;return h[e>>2]|0}function _o(e){e=e|0;return h[e+8>>2]|0}function yo(e){e=e|0;h[e>>2]=0;return}function To(){return Gn(20)|0}function Mo(e){e=e|0;if(!e)return;Qn(e);return}function Co(e){e=e|0;return(h[e+8>>2]|0)-(h[e>>2]|0)|0}function xo(e,i,t){e=e|0;i=i|0;t=t|0;h[e>>2]=i;h[e+4>>2]=i+t;h[e+8>>2]=i;h[e+12>>2]=0;h[e+16>>2]=8;return}function Eo(e,i,t){e=e|0;i=i|0;t=t|0;h[e>>2]=i;h[e+4>>2]=i+t;h[e+8>>2]=i;h[e+12>>2]=0;h[e+16>>2]=0;return}function So(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;if(!t)return;f=e+16|0;l=e+12|0;u=e+8|0;a=e+4|0;e=h[f>>2]|0;s=t+-1|0;do{o=i>>>s&1;if(!e){n=h[l>>2]|0;e=n<<8&65280;h[l>>2]=e;e=(e|0)==65280?7:8;h[f>>2]=e;r=h[u>>2]|0;if(r>>>0<(h[a>>2]|0)>>>0){h[u>>2]=r+1;c[r>>0]=n;e=h[f>>2]|0}}e=e+-1|0;h[f>>2]=e;h[l>>2]=o<<e|h[l>>2];s=s+-1|0}while(s>>>0<t>>>0);return}function Ao(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;if(!i){i=0;return i|0}s=e+16|0;f=e+12|0;l=e+8|0;a=e+4|0;t=h[s>>2]|0;r=h[f>>2]|0;o=i+-1|0;e=0;do{if(!t){n=r<<8&65280;h[f>>2]=n;t=(n|0)==65280?7:8;h[s>>2]=t;r=h[l>>2]|0;if(r>>>0<(h[a>>2]|0)>>>0){h[l>>2]=r+1;r=m[r>>0]|0|n;h[f>>2]=r}else r=n}t=t+-1|0;h[s>>2]=t;e=((r>>>t&1)<<o)+e|0;o=o+-1|0}while(o>>>0<i>>>0);return e|0}function Po(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;r=e+12|0;i=h[r>>2]|0;o=i<<8&65280;h[r>>2]=o;n=e+16|0;h[n>>2]=(o|0)==65280?7:8;o=e+8|0;t=h[o>>2]|0;a=e+4|0;if(t>>>0>=(h[a>>2]|0)>>>0){o=0;return o|0}h[o>>2]=t+1;c[t>>0]=i;if((h[n>>2]|0)!=7){o=1;return o|0}i=h[r>>2]|0;e=i<<8&65280;h[r>>2]=e;h[n>>2]=(e|0)==65280?7:8;e=h[o>>2]|0;if(e>>>0>=(h[a>>2]|0)>>>0){o=0;return o|0}h[o>>2]=e+1;c[e>>0]=i;o=1;return o|0}function Io(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;a=e+12|0;i=h[a>>2]|0;do if((i&255|0)==255){r=i<<8&65280;h[a>>2]=r;i=e+16|0;h[i>>2]=(r|0)==65280?7:8;n=e+8|0;t=h[n>>2]|0;if(t>>>0<(h[e+4>>2]|0)>>>0){h[n>>2]=t+1;h[a>>2]=m[t>>0]|0|r;break}else{e=0;return e|0}}else i=e+16|0;while(0);h[i>>2]=0;e=1;return e|0}function Lo(e){e=e|0;return jo(e,1)|0}function Do(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0;A=k;k=k+32|0;E=A+16|0;S=A;f=h[e+24>>2]|0;s=(h[f+8>>2]|0)-(h[f>>2]|0)|0;o=(h[f+12>>2]|0)-(h[f+4>>2]|0)|0;x=(h[e+8>>2]|0)-(h[e>>2]|0)|0;if((i|0)==1){S=1;k=A;return S|0}a=i+-1|0;n=(a|0)==0;if(n)i=0;else{t=f;r=a;i=0;do{C=t;t=t+136|0;M=(h[C+144>>2]|0)-(h[t>>2]|0)|0;i=i>>>0<M>>>0?M:i;C=(h[C+148>>2]|0)-(h[C+140>>2]|0)|0;i=i>>>0<C>>>0?C:i;r=r+-1|0}while((r|0)!=0);i=i<<2}C=Kn(i)|0;h[E>>2]=C;if(!C){S=0;k=A;return S|0}h[S>>2]=C;if(!n){w=e+32|0;p=E+8|0;g=S+8|0;_=E+4|0;y=E+12|0;T=S+4|0;M=S+12|0;do{b=h[w>>2]|0;c=f;f=f+136|0;h[p>>2]=s;h[g>>2]=o;d=h[c+144>>2]|0;m=h[f>>2]|0;r=s;s=d-m|0;i=h[c+148>>2]|0;c=c+140|0;v=h[c>>2]|0;t=o;o=i-v|0;h[_>>2]=s-r;h[y>>2]=(m|0)%2|0;v=(i|0)==(v|0);if(!v){u=s<<2;i=0;while(1){e=ue(i,x)|0;l=b+(e<<2)|0;if(r){t=l;n=C+(h[y>>2]<<2)|0;while(1){r=r+-1|0;h[n>>2]=h[t>>2];if(!r)break;else{t=t+4|0;n=n+8|0}}}t=h[_>>2]|0;if(t){r=b+((h[p>>2]|0)+e<<2)|0;n=C+(1-(h[y>>2]|0)<<2)|0;while(1){t=t+-1|0;h[n>>2]=h[r>>2];if(!t)break;else{r=r+4|0;n=n+8|0}}}Yo(E);Xf(l|0,C|0,u|0)|0;i=i+1|0;if((i|0)==(o|0))break;r=h[p>>2]|0}t=h[g>>2]|0;i=h[c>>2]|0}h[T>>2]=o-t;h[M>>2]=(i|0)%2|0;e:do if((d|0)!=(m|0)){i=0;while(1){if(t){r=b+(i<<2)|0;n=C+(h[M>>2]<<2)|0;while(1){t=t+-1|0;h[n>>2]=h[r>>2];if(!t)break;else{r=r+(x<<2)|0;n=n+8|0}}}t=h[T>>2]|0;if(t){r=b+((ue(h[g>>2]|0,x)|0)+i<<2)|0;n=C+(1-(h[M>>2]|0)<<2)|0;while(1){t=t+-1|0;h[n>>2]=h[r>>2];if(!t)break;else{r=r+(x<<2)|0;n=n+8|0}}}Yo(S);if(!v){t=0;do{m=b+((ue(t,x)|0)+i<<2)|0;h[m>>2]=h[C+(t<<2)>>2];t=t+1|0}while((t|0)!=(o|0))}i=i+1|0;if((i|0)==(s|0))break e;t=h[g>>2]|0}}while(0);a=a+-1|0}while((a|0)!=0)}$n(C);S=1;k=A;return S|0}function Ro(e){e=e|0;if(!e){e=0;return e|0}e=(e+-1|0)>>>0<2?1:2;return e|0}function Oo(e,i){e=e|0;i=i|0;return+ +p[56+(i*80|0)+(e<<3)>>3]}function Bo(e){e=e|0;return jo(e,2)|0}function No(e){e=e|0;return 0}function Fo(e,i){e=e|0;i=i|0;return+ +p[376+(i*80|0)+(e<<3)>>3]}function Uo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;f=e+4|0;l=((h[f>>2]|0)*3|0)+-2|0;if(!l)return;u=e+20|0;c=e+24|0;d=0;do{if(!d){r=0;n=0}else{n=d+-1|0;r=((n>>>0)/3|0)+1|0;n=((n>>>0)%3|0)+1|0}if((n|0)==0|(h[u>>2]|0)==0)a=0;else a=(n+-1|0)>>>0<2?1:2;if(!(h[c>>2]|0))t=1;else t=+(1<<a|0)/+p[376+(n*80|0)+((h[f>>2]|0)+~r<<3)>>3];s=~~+$(+(t*8192));o=a+i|0;if((s|0)>1){r=s;n=0;while(1){r=r>>1;if((r|0)<=1)break;else n=n+1|0}a=s;r=0;do{a=a>>1;r=r+1|0}while((a|0)>1);n=n+-12|0}else{n=-13;r=0}a=11-r|0;h[e+28+(d<<3)+4>>2]=((a|0)<0?s>>0-a:s<<a)&2047;h[e+28+(d<<3)>>2]=o-n;d=d+1|0}while((d|0)!=(l|0));return}function Ho(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0;q=k;k=k+32|0;j=q+16|0;Y=q;u=h[e+24>>2]|0;c=h[u+8>>2]|0;d=h[u>>2]|0;f=h[u+12>>2]|0;l=h[u+4>>2]|0;z=e+8|0;o=h[z>>2]|0;s=h[e>>2]|0;H=o-s|0;a=i+-1|0;n=(a|0)==0;if(n)i=80;else{t=u;r=a;i=0;do{U=t;t=t+136|0;F=(h[U+144>>2]|0)-(h[t>>2]|0)|0;i=i>>>0<F>>>0?F:i;U=(h[U+148>>2]|0)-(h[U+140>>2]|0)|0;i=i>>>0<U>>>0?U:i;r=r+-1|0}while((r|0)!=0);i=(i<<4)+80|0}U=Kn(i)|0;h[j>>2]=U;if(!U){V=0;k=q;return V|0}h[Y>>2]=U;e:do if(!n){M=e+32|0;C=e+12|0;x=e+4|0;E=j+8|0;S=Y+8|0;A=j+4|0;P=j+12|0;I=Y+4|0;L=Y+12|0;D=H<<1;R=H<<2;O=H*3|0;N=s<<2;F=o<<2;B=N-F|0;N=F-N|0;F=o-s<<2;i=a;t=U;a=o;r=s;v=f-l|0;n=u;o=c-d|0;while(1){w=h[M>>2]|0;r=ue((h[C>>2]|0)-(h[x>>2]|0)|0,a-r|0)|0;h[E>>2]=o;h[S>>2]=v;y=n+136|0;m=h[n+144>>2]|0;b=h[y>>2]|0;T=m-b|0;g=h[n+148>>2]|0;c=n+140|0;p=h[c>>2]|0;_=g-p|0;h[A>>2]=T-o;h[P>>2]=(b|0)%2|0;if((_|0)>3){a=(T|0)>0;o=(g+-4-p|0)>>>2;u=ue(B,o)|0;o=w+(N+(ue(F,o)|0)<<2)|0;s=w;f=r;l=_;while(1){qo(j,s,H,f);Wo(j);if(a){n=T;do{d=n;n=n+-1|0;h[s+(n<<2)>>2]=h[U+(n<<4)>>2];h[s+(n+H<<2)>>2]=h[U+(n<<4)+4>>2];h[s+(n+D<<2)>>2]=h[U+(n<<4)+8>>2];h[s+(n+O<<2)>>2]=h[U+(n<<4)+12>>2]}while((d|0)>1)}l=l+-4|0;if((l|0)<=3)break;else{s=s+(R<<2)|0;f=f-R|0}}r=B+r+u|0}else o=w;a=_&3;i:do if(!a)V=21;else{qo(j,o,H,r);Wo(j);if((T|0)>0)r=T;else{f=_-v|0;h[I>>2]=f;a=(h[c>>2]|0)%2|0;h[L>>2]=a;l=v;s=w;break}while(1){n=r;r=r+-1|0;switch(a|0){case 3:{h[o+(r+D<<2)>>2]=h[U+(r<<4)+8>>2];V=18;break}case 2:{V=18;break}case 1:{V=19;break}default:{}}if((V|0)==18){h[o+(r+H<<2)>>2]=h[U+(r<<4)+4>>2];V=19}if((V|0)==19){V=0;h[o+(r<<2)>>2]=h[U+(r<<4)>>2]}if((n|0)<=1){V=21;break i}}}while(0);if((V|0)==21){V=0;f=_-v|0;h[I>>2]=f;a=(h[c>>2]|0)%2|0;h[L>>2]=a;if((T|0)>3){d=(g|0)==(p|0);m=m+-4-b|0;c=h[S>>2]|0;l=(c|0)>0;s=1-a|0;u=(f|0)>0;n=w;o=T;while(1){if(l){r=0;do{v=t+((r<<1)+a<<4)|0;b=n+((ue(r,H)|0)<<2)|0;h[v>>2]=h[b>>2];h[v+4>>2]=h[b+4>>2];h[v+8>>2]=h[b+8>>2];h[v+12>>2]=h[b+12>>2];r=r+1|0}while((r|0)!=(c|0))}if(u){r=0;do{v=t+(s+(r<<1)<<4)|0;b=n+((ue(r+c|0,H)|0)<<2)|0;h[v>>2]=h[b>>2];h[v+4>>2]=h[b+4>>2];h[v+8>>2]=h[b+8>>2];h[v+12>>2]=h[b+12>>2];r=r+1|0}while((r|0)!=(f|0))}Wo(Y);if(!d){t=h[Y>>2]|0;r=0;do{v=n+((ue(r,H)|0)<<2)|0;b=t+(r<<4)|0;h[v>>2]=h[b>>2];h[v+4>>2]=h[b+4>>2];h[v+8>>2]=h[b+8>>2];h[v+12>>2]=h[b+12>>2];r=r+1|0}while((r|0)!=(_|0))}o=o+-4|0;if((o|0)<=3)break;else n=n+16|0}l=c;s=w+((m+4&-4)<<2)|0}else{l=v;s=w}}o=T&3;if(o){t=h[Y>>2]|0;if((l|0)>0){r=o<<2;n=0;do{Xf(t+((n<<1)+a<<4)|0,s+((ue(n,H)|0)<<2)|0,r|0)|0;n=n+1|0}while((n|0)!=(l|0))}r=1-a|0;if((f|0)>0){n=o<<2;a=0;do{Xf(t+(r+(a<<1)<<4)|0,s+((ue(a+l|0,H)|0)<<2)|0,n|0)|0;a=a+1|0}while((a|0)!=(f|0))}Wo(Y);if((g|0)!=(p|0)){r=o<<2;n=0;do{Xf(s+((ue(n,H)|0)<<2)|0,t+(n<<4)|0,r|0)|0;n=n+1|0}while((n|0)!=(_|0))}}i=i+-1|0;if(!i)break e;a=h[z>>2]|0;r=h[e>>2]|0;v=_;n=y;o=T}}while(0);$n(U);V=1;k=q;return V|0}function zo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;if(!r){r=(i|0)>0;if(!(r|(t|0)>1))return;if(r){r=e+((t<<1)+-2<<2)|0;n=0;do{f=n;n=n+1|0;l=e+((f<<1|1)<<2)|0;h[l>>2]=(h[l>>2]|0)-((h[((n|0)<(t|0)?e+(n<<1<<2)|0:r)>>2]|0)+(h[((f|0)<(t|0)?e+(f<<1<<2)|0:r)>>2]|0)>>1)}while((n|0)!=(i|0))}if((t|0)<=0)return;n=e+4|0;a=(i<<1)+-1|0;o=0;do{if((o|0)<1)r=n;else r=e+((((o|0)>(i|0)?i:o)<<1)+-1<<2)|0;l=e+(o<<1<<2)|0;h[l>>2]=((h[r>>2]|0)+2+(h[e+(((o|0)<(i|0)?o<<1|1:a)<<2)>>2]|0)>>2)+(h[l>>2]|0);o=o+1|0}while((o|0)!=(t|0));return}if((i|0)==1&(t|0)==0){h[e>>2]=h[e>>2]<<1;return}if((i|0)>0){n=e+4|0;a=(t<<1)+-1|0;o=e+(a<<2)|0;l=0;do{s=l<<1;f=h[e+(((l|0)<(t|0)?s|1:a)<<2)>>2]|0;if((l|0)>=1)if((l|0)>(t|0))r=o;else r=e+(s+-1<<2)|0;else r=n;s=e+(s<<2)|0;h[s>>2]=(h[s>>2]|0)-((h[r>>2]|0)+f>>1);l=l+1|0}while((l|0)!=(i|0))}if((t|0)<=0)return;r=e+((i<<1)+-2<<2)|0;n=0;do{f=n;n=n+1|0;l=e+((f<<1|1)<<2)|0;h[l>>2]=((h[((f|0)<(i|0)?e+(f<<1<<2)|0:r)>>2]|0)+2+(h[((n|0)<(i|0)?e+(n<<1<<2)|0:r)>>2]|0)>>2)+(h[l>>2]|0)}while((n|0)!=(t|0));return}function jo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0;y=(h[e+8>>2]|0)-(h[e>>2]|0)|0;a=h[e+16>>2]|0;s=a+-1|0;T=h[e+32>>2]|0;o=h[e+24>>2]|0;n=(s|0)==0;if(n)e=0;else{t=o;r=s;e=0;do{_=t;t=t+136|0;k=(h[_+144>>2]|0)-(h[t>>2]|0)|0;e=e>>>0<k>>>0?k:e;_=(h[_+148>>2]|0)-(h[_+140>>2]|0)|0;e=e>>>0<_>>>0?_:e;r=r+-1|0}while((r|0)!=0);e=e<<2}_=Gn(e)|0;if(!((e|0)==0|(_|0)!=0)){i=0;return i|0}if(!n){g=a+-2|0;k=g;e=o+(s*136|0)|0;g=o+(g*136|0)|0;while(1){v=h[e>>2]|0;p=(h[e+8>>2]|0)-v|0;c=h[e+4>>2]|0;m=(h[e+12>>2]|0)-c|0;b=(h[g+8>>2]|0)-(h[g>>2]|0)|0;e=h[g+12>>2]|0;t=h[g+4>>2]|0;u=e-t|0;v=v&1;c=c&1;d=m-u|0;w=(p|0)>0;e:do if(w){n=(e|0)==(t|0);s=(m|0)==(u|0);f=_+((c^1)<<2)|0;l=ue(u,y)|0;o=_+(c<<2)|0;if((m|0)>0){a=0;while(1){t=T+(a<<2)|0;e=0;do{r=T+((ue(e,y)|0)+a<<2)|0;h[_+(e<<2)>>2]=h[r>>2];e=e+1|0}while((e|0)!=(m|0));zl[i&3](_,d,u,c);if(!n){r=u;e=o;while(1){r=r+-1|0;h[t>>2]=h[e>>2];if(!r)break;else{t=t+(y<<2)|0;e=e+8|0}}}if(!s){e=d;t=T+(a+l<<2)|0;r=f;while(1){e=e+-1|0;h[t>>2]=h[r>>2];if(!e)break;else{t=t+(y<<2)|0;r=r+8|0}}}a=a+1|0;if((a|0)==(p|0))break e}}if(n){t=0;while(1){zl[i&3](_,d,u,c);if(!s){e=d;r=T+(t+l<<2)|0;n=f;while(1){e=e+-1|0;h[r>>2]=h[n>>2];if(!e)break;else{r=r+(y<<2)|0;n=n+8|0}}}t=t+1|0;if((t|0)==(p|0))break e}}else n=0;do{zl[i&3](_,d,u,c);e=u;t=T+(n<<2)|0;r=o;while(1){e=e+-1|0;h[t>>2]=h[r>>2];if(!e)break;else{t=t+(y<<2)|0;r=r+8|0}}if(!s){e=d;t=T+(n+l<<2)|0;r=f;while(1){e=e+-1|0;h[t>>2]=h[r>>2];if(!e)break;else{t=t+(y<<2)|0;r=r+8|0}}}n=n+1|0}while((n|0)!=(p|0))}while(0);a=p-b|0;if((m|0)>0){o=(b|0)>0;s=_+(v<<2)|0;f=(a|0)>0;l=_+((v^1)<<2)|0;u=0;do{n=ue(u,y)|0;t=T+(n<<2)|0;if(w){e=0;do{h[_+(e<<2)>>2]=h[T+(e+n<<2)>>2];e=e+1|0}while((e|0)!=(p|0))}zl[i&3](_,a,b,v);if(o){r=0;e=s;while(1){h[t>>2]=h[e>>2];r=r+1|0;if((r|0)==(b|0))break;else{t=t+4|0;e=e+8|0}}}if(f){r=0;e=T+(n+b<<2)|0;t=l;while(1){h[e>>2]=h[t>>2];r=r+1|0;if((r|0)==(a|0))break;else{e=e+4|0;t=t+8|0}}}u=u+1|0}while((u|0)!=(m|0))}if(!k)break;else{e=g;k=k+-1|0;g=g+-136|0}}}Qn(_);i=1;return i|0}function Yo(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;s=h[e>>2]|0;f=h[e+4>>2]|0;l=h[e+8>>2]|0;if(!(h[e+12>>2]|0)){r=(f|0)>0;if(!(r|(l|0)>1))return;if((l|0)>0){i=s+4|0;t=(f<<1)+-1|0;n=0;do{if((n|0)<1)e=i;else e=s+((((n|0)>(f|0)?f:n)<<1)+-1<<2)|0;a=n<<1;o=s+(a<<2)|0;h[o>>2]=(h[o>>2]|0)-((h[e>>2]|0)+2+(h[s+(((n|0)<(f|0)?a|1:t)<<2)>>2]|0)>>2);n=n+1|0}while((n|0)!=(l|0))}if(!r)return;e=s+((l<<1)+-2<<2)|0;i=0;do{a=i<<1;n=i;i=i+1|0;o=s+((a|1)<<2)|0;h[o>>2]=((h[((i|0)<(l|0)?s+(i<<1<<2)|0:e)>>2]|0)+(h[((n|0)<(l|0)?s+(a<<2)|0:e)>>2]|0)>>1)+(h[o>>2]|0)}while((i|0)!=(f|0));return}if((f|0)==1&(l|0)==0){h[s>>2]=(h[s>>2]|0)/2|0;return}if((l|0)>0){e=s+((f<<1)+-2<<2)|0;i=0;do{a=i<<1;n=i;i=i+1|0;o=s+((a|1)<<2)|0;h[o>>2]=(h[o>>2]|0)-((h[((n|0)<(f|0)?s+(a<<2)|0:e)>>2]|0)+2+(h[((i|0)<(f|0)?s+(i<<1<<2)|0:e)>>2]|0)>>2)}while((i|0)!=(l|0))}if((f|0)<=0)return;i=s+4|0;t=(l<<1)+-1|0;r=s+(t<<2)|0;o=0;do{n=o<<1;a=h[s+(((o|0)<(l|0)?n|1:t)<<2)>>2]|0;if((o|0)>=1)if((o|0)>(l|0))e=r;else e=s+(n+-1<<2)|0;else e=i;n=s+(n<<2)|0;h[n>>2]=((h[e>>2]|0)+a>>1)+(h[n>>2]|0);o=o+1|0}while((o|0)!=(f|0));return}function Vo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0;if(!r){f=(i|0)>0;if(!(f|(t|0)>1))return;if(f){r=e+((t<<1)+-2<<2)|0;n=0;do{c=n;n=n+1|0;u=(h[((n|0)<(t|0)?e+(n<<1<<2)|0:r)>>2]|0)+(h[((c|0)<(t|0)?e+(c<<1<<2)|0:r)>>2]|0)|0;u=Zf(u|0,((u|0)<0)<<31>>31|0,12993,0)|0;u=Wf(u|0,H|0,4096,0)|0;u=Gf(u|0,H|0,13)|0;c=e+((c<<1|1)<<2)|0;h[c>>2]=(h[c>>2]|0)-u}while((n|0)!=(i|0))}s=(t|0)>0;if(s){n=e+4|0;a=(i<<1)+-1|0;o=0;do{if((o|0)<1)r=n;else r=e+((((o|0)>(i|0)?i:o)<<1)+-1<<2)|0;u=(h[e+(((o|0)<(i|0)?o<<1|1:a)<<2)>>2]|0)+(h[r>>2]|0)|0;u=Zf(u|0,((u|0)<0)<<31>>31|0,434,0)|0;u=Wf(u|0,H|0,4096,0)|0;u=Gf(u|0,H|0,13)|0;c=e+(o<<1<<2)|0;h[c>>2]=(h[c>>2]|0)-u;o=o+1|0}while((o|0)!=(t|0))}if(f){r=e+((t<<1)+-2<<2)|0;n=0;do{c=n;n=n+1|0;u=(h[((n|0)<(t|0)?e+(n<<1<<2)|0:r)>>2]|0)+(h[((c|0)<(t|0)?e+(c<<1<<2)|0:r)>>2]|0)|0;u=Zf(u|0,((u|0)<0)<<31>>31|0,7233,0)|0;u=Wf(u|0,H|0,4096,0)|0;u=Gf(u|0,H|0,13)|0;c=e+((c<<1|1)<<2)|0;h[c>>2]=u+(h[c>>2]|0)}while((n|0)!=(i|0))}if(s){n=e+4|0;a=(i<<1)+-1|0;o=0;do{if((o|0)<1)r=n;else r=e+((((o|0)>(i|0)?i:o)<<1)+-1<<2)|0;u=(h[e+(((o|0)<(i|0)?o<<1|1:a)<<2)>>2]|0)+(h[r>>2]|0)|0;u=Zf(u|0,((u|0)<0)<<31>>31|0,3633,0)|0;u=Wf(u|0,H|0,4096,0)|0;u=Gf(u|0,H|0,13)|0;c=e+(o<<1<<2)|0;h[c>>2]=u+(h[c>>2]|0);o=o+1|0}while((o|0)!=(t|0))}if(f){r=0;do{c=e+((r<<1|1)<<2)|0;u=h[c>>2]|0;u=Zf(u|0,((u|0)<0)<<31>>31|0,5038,0)|0;u=Wf(u|0,H|0,4096,0)|0;u=Gf(u|0,H|0,13)|0;h[c>>2]=u;r=r+1|0}while((r|0)!=(i|0))}if(s)r=0;else return;do{i=e+(r<<1<<2)|0;c=h[i>>2]|0;c=Zf(c|0,((c|0)<0)<<31>>31|0,6659,0)|0;c=Wf(c|0,H|0,4096,0)|0;c=Gf(c|0,H|0,13)|0;h[i>>2]=c;r=r+1|0}while((r|0)!=(t|0));return}c=(t|0)>0;if(!((i|0)>1|c))return;u=(i|0)>0;if(u){n=e+4|0;a=(t<<1)+-1|0;o=e+(a<<2)|0;l=0;do{s=l<<1;f=h[e+(((l|0)<(t|0)?s|1:a)<<2)>>2]|0;if((l|0)>=1)if((l|0)>(t|0))r=o;else r=e+(s+-1<<2)|0;else r=n;r=(h[r>>2]|0)+f|0;r=Zf(r|0,((r|0)<0)<<31>>31|0,12993,0)|0;r=Wf(r|0,H|0,4096,0)|0;r=Gf(r|0,H|0,13)|0;f=e+(s<<2)|0;h[f>>2]=(h[f>>2]|0)-r;l=l+1|0}while((l|0)!=(i|0))}if(c){r=e+((i<<1)+-2<<2)|0;n=0;do{l=n;n=n+1|0;f=(h[((n|0)<(i|0)?e+(n<<1<<2)|0:r)>>2]|0)+(h[((l|0)<(i|0)?e+(l<<1<<2)|0:r)>>2]|0)|0;f=Zf(f|0,((f|0)<0)<<31>>31|0,434,0)|0;f=Wf(f|0,H|0,4096,0)|0;f=Gf(f|0,H|0,13)|0;l=e+((l<<1|1)<<2)|0;h[l>>2]=(h[l>>2]|0)-f}while((n|0)!=(t|0))}if(u){n=e+4|0;a=(t<<1)+-1|0;o=e+(a<<2)|0;l=0;do{s=l<<1;f=h[e+(((l|0)<(t|0)?s|1:a)<<2)>>2]|0;if((l|0)>=1)if((l|0)>(t|0))r=o;else r=e+(s+-1<<2)|0;else r=n;r=(h[r>>2]|0)+f|0;r=Zf(r|0,((r|0)<0)<<31>>31|0,7233,0)|0;r=Wf(r|0,H|0,4096,0)|0;r=Gf(r|0,H|0,13)|0;f=e+(s<<2)|0;h[f>>2]=r+(h[f>>2]|0);l=l+1|0}while((l|0)!=(i|0))}if(c){r=e+((i<<1)+-2<<2)|0;n=0;do{l=n;n=n+1|0;f=(h[((n|0)<(i|0)?e+(n<<1<<2)|0:r)>>2]|0)+(h[((l|0)<(i|0)?e+(l<<1<<2)|0:r)>>2]|0)|0;f=Zf(f|0,((f|0)<0)<<31>>31|0,3633,0)|0;f=Wf(f|0,H|0,4096,0)|0;f=Gf(f|0,H|0,13)|0;l=e+((l<<1|1)<<2)|0;h[l>>2]=f+(h[l>>2]|0)}while((n|0)!=(t|0))}if(u){r=0;do{u=e+(r<<1<<2)|0;l=h[u>>2]|0;l=Zf(l|0,((l|0)<0)<<31>>31|0,5038,0)|0;l=Wf(l|0,H|0,4096,0)|0;l=Gf(l|0,H|0,13)|0;h[u>>2]=l;r=r+1|0}while((r|0)!=(i|0))}if(c)r=0;else return;do{i=e+((r<<1|1)<<2)|0;c=h[i>>2]|0;c=Zf(c|0,((c|0)<0)<<31>>31|0,6659,0)|0;c=Wf(c|0,H|0,4096,0)|0;c=Gf(c|0,H|0,13)|0;h[i>>2]=c;r=r+1|0}while((r|0)!=(t|0));return}function qo(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0;c=h[e>>2]|0;s=h[e+12>>2]|0;v=h[e+8>>2]|0;d=t*3|0;u=1-s|0;l=e+4|0;f=v;e=0;while(1){o=c+(s<<4)|0;if(((f+d|0)<(r|0)?(i&15|0)==0:0)?((o|t)&15|0)==0:0){if((f|0)>0){n=0;do{o=n<<3;h[c+(s<<4)+(o<<2)>>2]=h[i+(n<<2)>>2];a=n+t|0;h[c+(s<<4)+((o|1)<<2)>>2]=h[i+(a<<2)>>2];a=a+t|0;h[c+(s<<4)+((o|2)<<2)>>2]=h[i+(a<<2)>>2];h[c+(s<<4)+((o|3)<<2)>>2]=h[i+(a+t<<2)>>2];n=n+1|0}while((n|0)!=(f|0))}}else w=3;if((w|0)==3?(w=0,(f|0)>0):0){o=0;do{n=o<<3;h[c+(s<<4)+(n<<2)>>2]=h[i+(o<<2)>>2];a=o+t|0;if(((a|0)<(r|0)?(h[c+(s<<4)+((n|1)<<2)>>2]=h[i+(a<<2)>>2],m=a+t|0,(m|0)<(r|0)):0)?(h[c+(s<<4)+((n|2)<<2)>>2]=h[i+(m<<2)>>2],b=m+t|0,(b|0)<(r|0)):0)h[c+(s<<4)+((n|3)<<2)>>2]=h[i+(b<<2)>>2];o=o+1|0}while((o|0)!=(f|0))}e=e+1|0;if((e|0)==2)break;else{i=i+(v<<2)|0;r=r-v|0;s=u;f=h[l>>2]|0}}return}function Wo(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0;do if(!(h[e+12>>2]|0)){t=h[e+8>>2]|0;if((h[e+4>>2]|0)>0){i=h[e>>2]|0;if((t|0)>0){o=0;n=1;s=9;break}else{o=0;a=1;break}}if((t|0)>1){r=0;n=1;s=7}else return}else{t=h[e+8>>2]|0;if((t|0)<=0)if((h[e+4>>2]|0)>1){i=h[e>>2]|0;o=1;a=0;break}else return;else{r=1;n=0;s=7}}while(0);if((s|0)==7){i=h[e>>2]|0;o=r;s=9}if((s|0)==9){r=0;do{s=r<<3;d=i+(o<<4)+(s<<2)|0;u=i+(o<<4)+((s|1)<<2)|0;c=+w[u>>2];a=i+(o<<4)+((s|2)<<2)|0;l=+w[a>>2];s=i+(o<<4)+((s|3)<<2)|0;f=+w[s>>2];w[d>>2]=+w[d>>2]*1.2301740646362305;w[u>>2]=c*1.2301740646362305;w[a>>2]=l*1.2301740646362305;w[s>>2]=f*1.2301740646362305;r=r+1|0}while((r|0)!=(t|0));a=n}r=h[e+4>>2]|0;if((r|0)>0){n=0;do{d=n<<3;s=i+(a<<4)+(d<<2)|0;e=i+(a<<4)+((d|1)<<2)|0;f=+w[e>>2];u=i+(a<<4)+((d|2)<<2)|0;l=+w[u>>2];d=i+(a<<4)+((d|3)<<2)|0;c=+w[d>>2];w[s>>2]=+w[s>>2]*1.625732421875;w[e>>2]=f*1.625732421875;w[u>>2]=l*1.625732421875;w[d>>2]=c*1.625732421875;n=n+1|0}while((n|0)!=(r|0))}m=i+(a<<4)|0;n=i+(o+1<<4)|0;s=r-o|0;s=(t|0)<(s|0)?t:s;Go(m,n,t,s,-.4435068666934967);e=i+(o<<4)|0;u=i+(a+1<<4)|0;d=t-a|0;d=(r|0)<(d|0)?r:d;Go(e,u,r,d,-.8829110860824585);Go(m,n,t,s,.05298011749982834);Go(e,u,r,d,1.5861343145370483);return}function Go(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=+n;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,h=0,m=0,b=0,v=0,p=0,g=0,k=0,_=0,y=0,T=0;if((r|0)>0){c=r<<1;u=c+-2|0;o=+w[e>>2];s=+w[e+4>>2];f=+w[e+8>>2];a=+w[e+12>>2];e=i;l=0;while(1){y=e+-16|0;g=e+-12|0;_=+w[g>>2];b=e+-8|0;p=+w[b>>2];d=e+-4|0;m=+w[d>>2];T=o;o=+w[e>>2];k=s;s=+w[e+4>>2];v=f;f=+w[e+8>>2];h=a;a=+w[e+12>>2];w[y>>2]=+w[y>>2]+(T+o)*n;w[g>>2]=_+(k+s)*n;w[b>>2]=p+(v+f)*n;w[d>>2]=m+(h+a)*n;l=l+1|0;if((l|0)==(r|0))break;else e=e+32|0}e=i+(u<<4)|0;i=i+(c<<4)|0}if((r|0)>=(t|0))return;a=n+n;o=a*+w[e>>2];s=a*+w[e+4>>2];f=a*+w[e+8>>2];a=a*+w[e+12>>2];while(1){d=i+-16|0;b=i+-12|0;k=+w[b>>2];g=i+-8|0;_=+w[g>>2];y=i+-4|0;T=+w[y>>2];w[d>>2]=o+ +w[d>>2];w[b>>2]=s+k;w[g>>2]=f+_;w[y>>2]=a+T;r=r+1|0;if((r|0)==(t|0))break;else i=i+32|0}return}function Xo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0;T=t<<2;M=Gn(t<<4)|0;if(!M){e=0;return e|0}C=M+T|0;Vf(M|0,0,T|0)|0;_=t+-1|0;k=(t|0)==0;if(!k){r=0;n=M;while(1){h[n>>2]=r;r=r+1|0;if((r|0)==(t|0))break;else n=n+4|0}}e:do if(_){b=_;s=0;r=0;v=e;p=1;g=M;while(1){f=v+(s<<2)|0;if(s>>>0<t>>>0){o=s;n=f;a=0}else break;while(1){d=+w[n>>2];d=d>0?d:-d;y=d>a;r=y?o:r;a=y?d:a;o=o+1|0;if((o|0)==(t|0))break;else n=n+(t<<2)|0}if(a==0)break;if((r|0)!=(s|0)){y=r-s|0;m=g+(y<<2)|0;c=h[g>>2]|0;h[g>>2]=h[m>>2];h[m>>2]=c;y=v+((ue(y,t)|0)<<2)|0;Xf(C|0,y|0,T|0)|0;Xf(y|0,v|0,T|0)|0;Xf(v|0,C|0,T|0)|0}n=s;m=s+1|0;d=+w[f>>2];if(p>>>0<t>>>0){l=v+(m<<2)|0;c=m+b|0;u=p;o=v+(n+t<<2)|0;while(1){a=+w[o>>2]/d;w[o>>2]=a;n=p;s=o;f=l;while(1){s=s+4|0;w[s>>2]=+w[s>>2]-a*+w[f>>2];n=n+1|0;if((n|0)==(t|0))break;else f=f+4|0}u=u+1|0;if((u|0)==(t|0))break;else o=o+(c<<2)|0}}if(m>>>0<_>>>0){b=b+-1|0;s=m;v=v+(t<<2)|0;p=p+1|0;g=g+4|0}else break e}Qn(M);e=0;return e|0}while(0);r=t<<1;y=C+(r<<2)|0;if(!k){k=C+(_+t<<2)|0;b=C+(r+_<<2)|0;v=e+((ue(t,t)|0)+-1<<2)|0;p=~t;g=0;m=i;while(1){Vf(C|0,0,T|0)|0;w[C+(g<<2)>>2]=1;s=0;f=1;l=M;u=y;c=e;while(1){if(!s)a=0;else{r=1;n=y;o=c;a=0;while(1){a=a+ +w[o>>2]*+w[n>>2];r=r+1|0;if((r|0)==(f|0))break;else{n=n+4|0;o=o+4|0}}}w[u>>2]=+w[C+(h[l>>2]<<2)>>2]-a;s=s+1|0;if((s|0)==(t|0)){s=t;f=k;l=y;u=b;c=v;break}else{f=f+1|0;l=l+4|0;u=u+4|0;c=c+(t<<2)|0}}while(1){r=s;s=s+-1|0;d=+w[c>>2];if(r>>>0<t>>>0){n=l;o=c;a=0;while(1){o=o+4|0;a=a+ +w[o>>2]*+w[n>>2];r=r+1|0;if((r|0)==(t|0))break;else n=n+4|0}}else a=0;l=l+-4|0;w[f>>2]=(+w[u>>2]-a)/d;if(!s){r=0;n=m;break}else{f=f+-4|0;u=u+-4|0;c=c+(p<<2)|0}}while(1){h[n>>2]=h[C+(r+t<<2)>>2];r=r+1|0;if((r|0)==(t|0))break;else n=n+(t<<2)|0}g=g+1|0;if((g|0)==(t|0))break;else m=m+4|0}}Qn(M);e=1;return e|0}function Ko(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;a=Xn(1,44)|0;if(!a){a=0;return a|0}o=fs()|0;h[a>>2]=o;if(!o){ls(0);h[a>>2]=0;o=a+4|0;Cs(h[o>>2]|0);h[o>>2]=0;if((h[a+40>>2]|0)==0?(t=a+8|0,i=h[t>>2]|0,(i|0)!=0):0){$n(i);h[t>>2]=0}i=a+12|0;t=h[i>>2]|0;if(t){$n(t);h[i>>2]=0}Qn(a);o=0;return o|0}o=Ms()|0;i=a+4|0;h[i>>2]=o;if(o){h[a+40>>2]=e;o=a;return o|0}ls(h[a>>2]|0);h[a>>2]=0;Cs(h[i>>2]|0);h[i>>2]=0;if((h[a+40>>2]|0)==0?(r=a+8|0,n=h[r>>2]|0,(n|0)!=0):0){$n(n);h[r>>2]=0}i=a+12|0;t=h[i>>2]|0;if(t){$n(t);h[i>>2]=0}Qn(a);o=0;return o|0}function $o(e){e=e|0;var i=0,t=0,r=0;if(!e)return;ls(h[e>>2]|0);h[e>>2]=0;r=e+4|0;Cs(h[r>>2]|0);h[r>>2]=0;if((h[e+40>>2]|0)==0?(i=e+8|0,t=h[i>>2]|0,(t|0)!=0):0){$n(t);h[i>>2]=0}i=e+12|0;t=h[i>>2]|0;if(t){$n(t);h[i>>2]=0}Qn(e);return}function Jo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,v=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ce=0,de=0,he=0,me=0,be=0,ve=0,we=0,pe=0,ge=0,ke=0,_e=0,ye=0,Te=0,Me=0,Ce=0,xe=0,Ee=0,Se=0,Ae=0;Me=(h[i+8>>2]|0)-(h[i>>2]|0)|0;Ce=i+20|0;r=h[Ce>>2]|0;if(!r){e=1;return e|0}xe=i+24|0;Ee=t+808|0;Se=t+16|0;ge=e+4|0;_e=e+8|0;ye=e+16|0;Te=e+20|0;pe=t+20|0;be=i+32|0;ve=e+32|0;we=e+12|0;t=r;me=0;e:while(1){de=h[xe>>2]|0;he=de+(me*136|0)+24|0;i=h[he>>2]|0;if(i){fe=de+(me*136|0)+16|0;le=de+(me*136|0)+20|0;ce=me+-1|0;t=h[le>>2]|0;r=h[fe>>2]|0;se=0;do{if(ue(t,r)|0){te=de+(me*136|0)+28+(se*36|0)+20|0;re=de+(me*136|0)+28+(se*36|0)+16|0;ne=de+(me*136|0)+28+(se*36|0)|0;ae=de+(me*136|0)+28+(se*36|0)+4|0;oe=de+(me*136|0)+28+(se*36|0)+32|0;ie=0;do{i=h[te>>2]|0;Z=i+(ie*40|0)+16|0;ee=i+(ie*40|0)+20|0;if(ue(h[ee>>2]|0,h[Z>>2]|0)|0){J=i+(ie*40|0)+24|0;Q=0;do{t=h[J>>2]|0;V=h[re>>2]|0;n=h[Ee>>2]|0;i=h[Se>>2]|0;q=h[ge>>2]|0;W=h[e>>2]|0;G=t+(Q*56|0)+8|0;$=t+(Q*56|0)+12|0;if(!(Zo(e,(h[t+(Q*56|0)+16>>2]|0)-(h[G>>2]|0)|0,(h[t+(Q*56|0)+20>>2]|0)-(h[$>>2]|0)|0)|0)){t=0;L=201;break e}X=t+(Q*56|0)+24|0;a=h[X>>2]|0;ws(W);ps(W,18,0,46);ps(W,17,0,3);ps(W,0,0,4);K=t+(Q*56|0)+48|0;r=h[K>>2]|0;if(r){U=t+(Q*56|0)+4|0;H=(i&1|0)!=0;z=(i&2|0)==0;j=(i&8|0)==0;Y=V<<8;F=(i&32|0)==0;i=a+n|0;t=2;N=0;do{a=h[U>>2]|0;B=H&(t>>>0<2?(i|0)<=((h[X>>2]|0)+-4|0):0);n=h[a+(N<<5)>>2]|0;if(n){r=(h[n>>2]|0)+(h[a+(N<<5)+4>>2]|0)|0;n=h[a+(N<<5)+16>>2]|0;if(!B){if(!(ys(W,r,n)|0)){t=0;L=201;break e}}else xs(q,r,n);R=a+(N<<5)+12|0;i:do if(h[R>>2]|0){O=z|B;D=0;while(1){t:do switch(t|0){case 0:{if(B){y=1<<i;y=y>>1|y;n=h[Te>>2]|0;if(!n)break t;_=0-y|0;r=h[ye>>2]|0;k=0;while(1){g=k;k=k+4|0;if(!r)r=0;else{c=(g|0)==-4;v=g|3;p=0;do{r:do if(!c)if(j){l=g;do{if(l>>>0>=(h[Te>>2]|0)>>>0)break r;s=l;l=l+1|0;r=(ue(h[ve>>2]|0,l)|0)+p|0;n=r+1|0;a=h[we>>2]|0;o=a+(n<<1)|0;s=(ue(h[ye>>2]|0,s)|0)+p|0;s=(h[_e>>2]|0)+(s<<2)|0;f=h[ge>>2]|0;L=d[o>>1]|0;if((L&255|0)!=0&(L&20480|0)==0){if(Es(f)|0){A=Es(f)|0;h[s>>2]=(A|0)!=0?_:y;I=h[ve>>2]|0;L=a+(n-I<<1)|0;P=a+(I+n<<1)|0;S=a+(n+~I<<1)|0;d[S>>1]=b[S>>1]|2;d[L>>1]=d[L>>1]|d[3436+(A<<1)>>1];L=r+2|0;S=a+(L-I<<1)|0;d[S>>1]=b[S>>1]|4;S=a+(r<<1)|0;d[S>>1]=d[S>>1]|d[3436+(A+2<<1)>>1];d[o>>1]=b[o>>1]|4096;S=a+(L<<1)|0;d[S>>1]=d[S>>1]|d[3436+(A+4<<1)>>1];S=a+(I+r<<1)|0;d[S>>1]=b[S>>1]|1;d[P>>1]=d[P>>1]|d[3436+(A+6<<1)>>1];L=a+(I+L<<1)|0;d[L>>1]=b[L>>1]|8}d[o>>1]=b[o>>1]|16384}}while(l>>>0<k>>>0)}else{u=g;do{r=h[Te>>2]|0;if(u>>>0>=r>>>0)break r;I=u;u=u+1|0;n=(ue(h[ve>>2]|0,u)|0)+p|0;a=n+1|0;o=h[we>>2]|0;s=o+(a<<1)|0;f=(ue(h[ye>>2]|0,I)|0)+p|0;f=(h[_e>>2]|0)+(f<<2)|0;l=h[ge>>2]|0;L=d[s>>1]|0;L=(I|0)==(v|0)|(I|0)==(r+-1|0)?L&-1095:L;if((L&255|0)!=0&(L&20480|0)==0){if(Es(l)|0){A=Es(l)|0;h[f>>2]=(A|0)!=0?_:y;I=h[ve>>2]|0;L=o+(a-I<<1)|0;P=o+(I+a<<1)|0;S=o+(a+~I<<1)|0;d[S>>1]=b[S>>1]|2;d[L>>1]=d[L>>1]|d[3436+(A<<1)>>1];L=n+2|0;S=o+(L-I<<1)|0;d[S>>1]=b[S>>1]|4;S=o+(n<<1)|0;d[S>>1]=d[S>>1]|d[3436+(A+2<<1)>>1];d[s>>1]=b[s>>1]|4096;S=o+(L<<1)|0;d[S>>1]=d[S>>1]|d[3436+(A+4<<1)>>1];S=o+(I+n<<1)|0;d[S>>1]=b[S>>1]|1;d[P>>1]=d[P>>1]|d[3436+(A+6<<1)>>1];L=o+(I+L<<1)|0;d[L>>1]=b[L>>1]|8}d[s>>1]=b[s>>1]|16384}}while(u>>>0<k>>>0)}while(0);p=p+1|0;r=h[ye>>2]|0}while(p>>>0<r>>>0);n=h[Te>>2]|0}if(k>>>0>=n>>>0){L=163;break t}}}if(j){a=h[_e>>2]|0;o=(h[we>>2]|0)+2|0;v=1<<i;v=v>>1|v;r=h[Te>>2]|0;n=h[ye>>2]|0;if(r>>>0>3){l=n;f=0;while(1){if(!n){n=l;s=0}else{n=0;do{L=(h[ve>>2]|0)+n|0;es(e,o+(L<<1)|0,a+(n<<2)|0,V,v);r=(h[ye>>2]|0)+n|0;L=(h[ve>>2]|0)+L|0;es(e,o+(L<<1)|0,a+(r<<2)|0,V,v);r=(h[ye>>2]|0)+r|0;L=(h[ve>>2]|0)+L|0;es(e,o+(L<<1)|0,a+(r<<2)|0,V,v);es(e,o+((h[ve>>2]|0)+L<<1)|0,a+((h[ye>>2]|0)+r<<2)|0,V,v);n=n+1|0;r=h[ye>>2]|0}while(n>>>0<r>>>0);n=r;s=r;r=h[Te>>2]|0}a=a+(s<<2<<2)|0;o=o+(h[ve>>2]<<2<<1)|0;f=f+4|0;if(f>>>0<(r&-4)>>>0){l=n;n=s}else{c=o;u=f;break}}}else{c=o;u=0}if(!n){L=163;break t}else l=0;while(1){if(u>>>0<r>>>0){o=a+(l<<2)|0;s=c+(l<<1)|0;f=u;while(1){s=s+(h[ve>>2]<<1)|0;es(e,s,o,V,v);n=h[ye>>2]|0;f=f+1|0;r=h[Te>>2]|0;if(f>>>0>=r>>>0)break;else o=o+(n<<2)|0}}l=l+1|0;if(l>>>0>=n>>>0){L=163;break t}}}y=1<<i;y=y>>1|y;r=h[Te>>2]|0;if(!r){L=163;break t}T=0-y|0;n=h[ye>>2]|0;o=n;_=0;while(1){k=_;_=_+4|0;do if(!n){a=o;n=0}else{g=k|3;if((k|0)==-4){a=o;n=o;break}else p=0;do{v=k;do{r=h[Te>>2]|0;if(v>>>0>=r>>>0)break;L=v;v=v+1|0;o=(ue(h[ve>>2]|0,v)|0)+p|0;s=o+1|0;f=h[we>>2]|0;l=f+(s<<1)|0;u=(ue(h[ye>>2]|0,L)|0)+p|0;u=(h[_e>>2]|0)+(u<<2)|0;c=h[e>>2]|0;n=d[l>>1]|0;r=(L|0)==(g|0)|(L|0)==(r+-1|0)?n&-1095:n;n=r&255;if((n|0)!=0&(r&20480|0)==0){a=c+100|0;h[a>>2]=c+24+(m[20286+(n|Y)>>0]<<2);if(Ts(c)|0){I=r>>>4&255;h[a>>2]=c+24+(m[21310+I>>0]<<2);L=Ts(c)|0;I=m[21566+I>>0]|0;A=I^L;h[u>>2]=(L|0)!=(I|0)?T:y;I=h[ve>>2]|0;L=f+(s-I<<1)|0;P=f+(I+s<<1)|0;S=f+(s+~I<<1)|0;d[S>>1]=b[S>>1]|2;d[L>>1]=d[L>>1]|d[3436+(A<<1)>>1];L=o+2|0;S=f+(L-I<<1)|0;d[S>>1]=b[S>>1]|4;S=f+(o<<1)|0;d[S>>1]=d[S>>1]|d[3436+(A+2<<1)>>1];d[l>>1]=b[l>>1]|4096;S=f+(L<<1)|0;d[S>>1]=d[S>>1]|d[3436+(A+4<<1)>>1];S=f+(I+o<<1)|0;d[S>>1]=b[S>>1]|1;d[P>>1]=d[P>>1]|d[3436+(A+6<<1)>>1];L=f+(I+L<<1)|0;d[L>>1]=b[L>>1]|8}d[l>>1]=b[l>>1]|16384}}while(v>>>0<_>>>0);p=p+1|0;r=h[ye>>2]|0}while(p>>>0<r>>>0);a=r;n=r;r=h[Te>>2]|0}while(0);if(_>>>0>=r>>>0){L=163;break}else o=a}break}case 1:{if(B){c=1<<i>>1;v=(i|0)>0?0-c|0:-1;n=h[Te>>2]|0;if(!n)break t;a=h[ye>>2]|0;r=a;u=0;while(1){l=u;u=u+4|0;if(!a){o=r;a=0}else{f=(l|0)==-4;s=0;do{o=s;s=s+1|0;if(!f){a=l;do{if(a>>>0>=(h[Te>>2]|0)>>>0)break;n=a;a=a+1|0;r=(ue(h[ve>>2]|0,a)|0)+s|0;r=(h[we>>2]|0)+(r<<1)|0;n=(ue(h[ye>>2]|0,n)|0)+o|0;n=(h[_e>>2]|0)+(n<<2)|0;if((d[r>>1]&20480)==4096){I=(Es(h[ge>>2]|0)|0)!=0;I=I?c:v;L=h[n>>2]|0;h[n>>2]=((L|0)<0?0-I|0:I)+L;d[r>>1]=b[r>>1]|8192}}while(a>>>0<u>>>0);r=h[ye>>2]|0}}while(s>>>0<r>>>0);o=r;a=r;n=h[Te>>2]|0}if(u>>>0>=n>>>0){L=163;break t}else r=o}}if(!j){g=1<<i>>1;k=(i|0)>0?0-g|0:-1;r=h[Te>>2]|0;if(!r){L=163;break t}n=h[ye>>2]|0;a=n;p=0;while(1){v=p;p=p+4|0;if(!n)n=0;else{u=(v|0)==-4;c=v|3;r=a;l=0;do{f=l;l=l+1|0;if(!u){o=v;do{r=h[Te>>2]|0;if(o>>>0>=r>>>0)break;I=o;o=o+1|0;n=(ue(h[ve>>2]|0,o)|0)+l|0;n=(h[we>>2]|0)+(n<<1)|0;a=(ue(h[ye>>2]|0,I)|0)+f|0;a=(h[_e>>2]|0)+(a<<2)|0;s=h[e>>2]|0;L=d[n>>1]|0;r=(I|0)==(c|0)|(I|0)==(r+-1|0)?L&-1095:L;if((r&20480|0)==4096){h[s+100>>2]=s+24+(((r&8192|0)!=0?16:(r&255|0)!=0?15:14)<<2);I=(Ts(s)|0)!=0;I=I?g:k;L=h[a>>2]|0;h[a>>2]=((L|0)<0?0-I|0:I)+L;d[n>>1]=b[n>>1]|8192}}while(o>>>0<p>>>0);r=h[ye>>2]|0}}while(l>>>0<r>>>0);a=r;n=r;r=h[Te>>2]|0}if(p>>>0>=r>>>0){L=163;break t}}}a=h[_e>>2]|0;o=(h[we>>2]|0)+2|0;_=1<<i>>1;y=(i|0)>0?0-_|0:-1;r=h[Te>>2]|0;n=h[ye>>2]|0;if(r>>>0>3){f=n;g=o;k=0;while(1){if(!n){n=f;s=0}else{r=f;p=0;do{n=a+(p<<2)|0;f=h[ve>>2]|0;u=f+p|0;o=g+(u<<1)|0;l=h[e>>2]|0;s=d[o>>1]|0;if((s&20480|0)==4096){h[l+100>>2]=l+24+(((s&8192|0)!=0?16:(s&255|0)!=0?15:14)<<2);f=(Ts(l)|0)!=0;f=f?_:y;r=h[n>>2]|0;h[n>>2]=((r|0)<0?0-f|0:f)+r;d[o>>1]=b[o>>1]|8192;r=h[ye>>2]|0;n=h[ve>>2]|0;f=h[e>>2]|0}else{n=f;f=l}c=r+p|0;l=a+(c<<2)|0;v=n+u|0;o=g+(v<<1)|0;s=d[o>>1]|0;if((s&20480|0)==4096){h[f+100>>2]=f+24+(((s&8192|0)!=0?16:(s&255|0)!=0?15:14)<<2);n=(Ts(f)|0)!=0;n=n?_:y;r=h[l>>2]|0;h[l>>2]=((r|0)<0?0-n|0:n)+r;d[o>>1]=b[o>>1]|8192;r=h[ye>>2]|0;n=h[ve>>2]|0;f=h[e>>2]|0}u=r+c|0;l=a+(u<<2)|0;c=n+v|0;o=g+(c<<1)|0;s=d[o>>1]|0;if((s&20480|0)==4096){h[f+100>>2]=f+24+(((s&8192|0)!=0?16:(s&255|0)!=0?15:14)<<2);n=(Ts(f)|0)!=0;n=n?_:y;r=h[l>>2]|0;h[l>>2]=((r|0)<0?0-n|0:n)+r;d[o>>1]=b[o>>1]|8192;r=h[ye>>2]|0;n=h[ve>>2]|0;f=h[e>>2]|0}s=a+(r+u<<2)|0;n=g+(n+c<<1)|0;o=d[n>>1]|0;if((o&20480|0)==4096){h[f+100>>2]=f+24+(((o&8192|0)!=0?16:(o&255|0)!=0?15:14)<<2);L=(Ts(f)|0)!=0;L=L?_:y;r=h[s>>2]|0;h[s>>2]=((r|0)<0?0-L|0:L)+r;d[n>>1]=b[n>>1]|8192;r=h[ye>>2]|0}p=p+1|0}while(p>>>0<r>>>0);n=r;s=r;r=h[Te>>2]|0}a=a+(s<<2<<2)|0;o=g+(h[ve>>2]<<2<<1)|0;l=k+4|0;if(l>>>0<(r&-4)>>>0){f=n;n=s;g=o;k=l}else{p=l;break}}}else p=0;if(!n){L=163;break t}else v=0;do{if(p>>>0<r>>>0){l=a+(v<<2)|0;u=o+(v<<1)|0;c=p;while(1){u=u+(h[ve>>2]<<1)|0;f=h[e>>2]|0;
s=d[u>>1]|0;if((s&20480|0)==4096){h[f+100>>2]=f+24+(((s&8192|0)!=0?16:(s&255|0)!=0?15:14)<<2);r=(Ts(f)|0)!=0;r=r?_:y;s=h[l>>2]|0;h[l>>2]=((s|0)<0?0-r|0:r)+s;d[u>>1]=b[u>>1]|8192;s=h[ye>>2]|0;r=h[Te>>2]|0}else s=n;c=c+1|0;if(c>>>0>=r>>>0){n=s;break}else{n=s;l=l+(s<<2)|0}}}v=v+1|0}while(v>>>0<n>>>0);L=163;break}case 2:{P=h[e>>2]|0;I=1<<i;I=I>>1|I;do if(j){a=h[_e>>2]|0;o=(h[we>>2]|0)+2|0;n=h[Te>>2]|0;if(n>>>0>3){y=P+92|0;T=P+100|0;M=P+96|0;C=0-I|0;s=h[ye>>2]|0;r=s;l=0;while(1){if(!s)s=0;else{v=l|1;p=v+1|0;g=l|3;k=v+3|0;_=0;do{r=h[ve>>2]|0;n=_;_=_+1|0;S=(ue(r,v)|0)+_|0;E=h[we>>2]|0;x=E+((ue(r,p)|0)+_<<1)|0;A=E+((ue(r,g)|0)+_<<1)|0;L=E+((ue(r,k)|0)+_<<1)|0;r:do if(!((d[x>>1]|d[E+(S<<1)>>1]|d[A>>1]|d[L>>1])&20735)){h[T>>2]=y;if(!(Ts(P)|0))break;h[T>>2]=M;u=(Ts(P)|0)<<1;u=u|(Ts(P)|0);if(u>>>0>=4)break;c=a+((ue(h[ye>>2]|0,u)|0)+n<<2)|0;n=o+((ue(h[ve>>2]|0,u)|0)+n<<1)|0;f=u;while(1){if(f>>>0>=(h[Te>>2]|0)>>>0)break r;r=h[ve>>2]|0;s=n;n=n+(r<<1)|0;if((f|0)==(u|0)){L=h[e>>2]|0;A=(b[n>>1]|0)>>>4&255;h[L+100>>2]=L+24+(m[21310+A>>0]<<2);L=Ts(L)|0;A=m[21566+A>>0]|0;E=A^L;h[c>>2]=(L|0)!=(A|0)?C:I;A=h[ve>>2]|0;L=s+(r-A<<1)|0;S=s+(A+r<<1)|0;x=s+(r+~A<<1)|0;d[x>>1]=b[x>>1]|2;d[L>>1]=d[L>>1]|d[3436+(E<<1)>>1];L=r+1|0;x=s+(L-A<<1)|0;d[x>>1]=b[x>>1]|4;x=r+-1|0;r=s+(x<<1)|0;d[r>>1]=d[r>>1]|d[3436+(E+2<<1)>>1];d[n>>1]=b[n>>1]|4096;r=s+(L<<1)|0;d[r>>1]=d[r>>1]|d[3436+(E+4<<1)>>1];x=s+(A+x<<1)|0;d[x>>1]=b[x>>1]|1;d[S>>1]=d[S>>1]|d[3436+(E+6<<1)>>1];L=s+(A+L<<1)|0;d[L>>1]=b[L>>1]|8;d[n>>1]=b[n>>1]&49151}else is(e,n,c,V,I);f=f+1|0;if(f>>>0>=4)break;else c=c+(h[ye>>2]<<2)|0}}else{A=r+n|0;is(e,o+(A<<1)|0,a+(n<<2)|0,V,I);L=(h[ye>>2]|0)+n|0;A=(h[ve>>2]|0)+A|0;is(e,o+(A<<1)|0,a+(L<<2)|0,V,I);L=(h[ye>>2]|0)+L|0;A=(h[ve>>2]|0)+A|0;is(e,o+(A<<1)|0,a+(L<<2)|0,V,I);is(e,o+((h[ve>>2]|0)+A<<1)|0,a+((h[ye>>2]|0)+L<<2)|0,V,I)}while(0);r=h[ye>>2]|0}while(_>>>0<r>>>0);s=r;n=h[Te>>2]|0}a=a+(s<<2<<2)|0;o=o+(h[ve>>2]<<2<<1)|0;l=l+4|0;if(l>>>0>=(n&-4)>>>0){c=a;u=o;break}}}else{r=h[ye>>2]|0;c=a;u=o;l=0}if(!r)break;else f=0;do{if(l>>>0<n>>>0){a=c+(f<<2)|0;o=u+(f<<1)|0;s=l;while(1){o=o+(h[ve>>2]<<1)|0;is(e,o,a,V,I);r=h[ye>>2]|0;s=s+1|0;n=h[Te>>2]|0;if(s>>>0>=n>>>0)break;else a=a+(r<<2)|0}}f=f+1|0}while(f>>>0<r>>>0)}else{r=h[Te>>2]|0;if(!r)break;x=P+92|0;E=P+100|0;S=P+96|0;A=0-I|0;n=h[ye>>2]|0;C=0;while(1){if(!n){a=C+4|0;n=0}else{_=C|3;y=C|1;T=y+1|0;M=y+3|0;a=C+4|0;k=0;while(1){do if(_>>>0<r>>>0){r=h[ve>>2]|0;o=k+1|0;g=(ue(r,y)|0)+o|0;n=h[we>>2]|0;if(d[n+(g<<1)>>1]&20735){g=0;r=0;L=127;break}g=n+((ue(r,T)|0)+o<<1)|0;if(d[g>>1]&20735){g=0;r=0;L=127;break}g=n+((ue(r,_)|0)+o<<1)|0;if(d[g>>1]&20735){g=0;r=0;L=127;break}g=n+((ue(r,M)|0)+o<<1)|0;if(d[g>>1]&20665){g=0;r=0;L=127;break}h[E>>2]=x;if(!(Ts(P)|0))break;h[E>>2]=S;r=(Ts(P)|0)<<1;g=1;r=r|(Ts(P)|0);L=127}else{g=0;r=0;L=127}while(0);if((L|0)==127){L=0;o=r+C|0;r:do if(o>>>0<a>>>0){p=o;do{r=h[Te>>2]|0;if(p>>>0>=r>>>0)break r;Ae=p;p=p+1|0;s=(ue(h[ve>>2]|0,p)|0)+k|0;f=s+1|0;l=h[we>>2]|0;u=l+(f<<1)|0;c=(ue(h[ye>>2]|0,Ae)|0)+k|0;c=(h[_e>>2]|0)+(c<<2)|0;v=h[e>>2]|0;n=d[u>>1]|0;n=(Ae|0)==(_|0)|(Ae|0)==(r+-1|0)?n&-1095:n;do if(!(g&(Ae|0)==(o|0))){if(n&20480)break;r=v+100|0;h[r>>2]=v+24+(m[20286+(n&255|Y)>>0]<<2);if(Ts(v)|0)L=133}else{r=v+100|0;L=133}while(0);if((L|0)==133){L=0;n=n>>>4&255;h[r>>2]=v+24+(m[21310+n>>0]<<2);Ae=Ts(v)|0;v=m[21566+n>>0]|0;n=v^Ae;h[c>>2]=(Ae|0)!=(v|0)?A:I;v=h[ve>>2]|0;Ae=l+(f-v<<1)|0;c=l+(v+f<<1)|0;f=l+(f+~v<<1)|0;d[f>>1]=b[f>>1]|2;d[Ae>>1]=d[Ae>>1]|d[3436+(n<<1)>>1];Ae=s+2|0;f=l+(Ae-v<<1)|0;d[f>>1]=b[f>>1]|4;f=l+(s<<1)|0;d[f>>1]=d[f>>1]|d[3436+(n+2<<1)>>1];d[u>>1]=b[u>>1]|4096;f=l+(Ae<<1)|0;d[f>>1]=d[f>>1]|d[3436+(n+4<<1)>>1];f=l+(v+s<<1)|0;d[f>>1]=b[f>>1]|1;d[c>>1]=d[c>>1]|d[3436+(n+6<<1)>>1];Ae=l+(v+Ae<<1)|0;d[Ae>>1]=b[Ae>>1]|8}d[u>>1]=b[u>>1]&49151}while(p>>>0<a>>>0)}while(0);o=k+1|0}n=h[ye>>2]|0;r=h[Te>>2]|0;if(o>>>0<n>>>0)k=o;else break}}if(a>>>0<r>>>0)C=a;else break}}while(0);if(F){L=163;break t}h[P+100>>2]=P+96;Ts(P)|0;Ts(P)|0;Ts(P)|0;Ts(P)|0;L=163;break}default:L=163}while(0);do if((L|0)==163){L=0;if(O)break;ws(W);ps(W,18,0,46);ps(W,17,0,3);ps(W,0,0,4)}while(0);t=t+1|0;Ae=(t|0)==3;i=(Ae<<31>>31)+i|0;t=Ae?0:t;D=D+1|0;if(D>>>0>=(h[R>>2]|0)>>>0)break i}}while(0);r=h[K>>2]|0}N=N+1|0}while(N>>>0<r>>>0)}t=(h[G>>2]|0)-(h[ne>>2]|0)|0;i=(h[$>>2]|0)-(h[ae>>2]|0)|0;r=h[re>>2]|0;if(r&1){Ae=h[xe>>2]|0;t=(h[Ae+(ce*136|0)+8>>2]|0)+t-(h[Ae+(ce*136|0)>>2]|0)|0}if(r&2){Ae=h[xe>>2]|0;i=(h[Ae+(ce*136|0)+12>>2]|0)+i-(h[Ae+(ce*136|0)+4>>2]|0)|0}u=h[_e>>2]|0;c=h[ye>>2]|0;v=h[Te>>2]|0;r=h[Ee>>2]|0;if((r|0)!=0?(ke=1<<r,(v|0)!=0):0){r=(c|0)==0;l=0;do{if(!r){n=ue(l,c)|0;f=0;do{a=u+(f+n<<2)|0;o=h[a>>2]|0;s=(o|0)>-1?o:0-o|0;if((s|0)>=(ke|0)){Ae=s>>h[Ee>>2];h[a>>2]=(o|0)<0?0-Ae|0:Ae}f=f+1|0}while((f|0)!=(c|0))}l=l+1|0}while((l|0)!=(v|0))}f=(ue(i,Me)|0)+t|0;l=h[be>>2]|0;t=(v|0)==0;if((h[pe>>2]|0)==1){if(!t){t=(c|0)==0;a=0;do{if(!t){i=ue(a,c)|0;r=(ue(a,Me)|0)+f|0;n=0;do{h[l+(r+n<<2)>>2]=(h[u+(n+i<<2)>>2]|0)/2|0;n=n+1|0}while((n|0)!=(c|0))}a=a+1|0}while((a|0)!=(v|0))}}else if(!t){s=(c|0)==0;t=u;o=0;a=l+(f<<2)|0;while(1){if(!s){i=t;r=0;n=a;while(1){w[n>>2]=+(h[i>>2]|0)*+w[oe>>2];r=r+1|0;if((r|0)==(c|0))break;else{i=i+4|0;n=n+4|0}}t=t+(c<<2)|0}o=o+1|0;if((o|0)==(v|0))break;else a=a+(Me<<2)|0}}Q=Q+1|0}while(Q>>>0<(ue(h[ee>>2]|0,h[Z>>2]|0)|0)>>>0);t=h[le>>2]|0;r=h[fe>>2]|0}ie=ie+1|0}while(ie>>>0<(ue(t,r)|0)>>>0);i=h[he>>2]|0}se=se+1|0}while(se>>>0<i>>>0);t=h[Ce>>2]|0}me=me+1|0;if(me>>>0>=t>>>0){t=1;L=201;break}}if((L|0)==201)return t|0;return 0}function Qo(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,v=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ce=0,de=0,he=0,me=0,be=0,ve=0,we=0,pe=0,ge=0,ke=0,_e=0,ye=0,Te=0,Me=0,Ce=0,xe=0,Ee=0,Se=0,Ae=0,Pe=0,Ie=0,Le=0,De=0,Re=0,Oe=0,Be=0,Ne=0,Fe=0,Ue=0,He=0,ze=0,je=0,Ye=0,Ve=0,qe=0,We=0,Ge=0,Xe=0,Ke=0,$e=0,Je=0,Qe=0,Ze=0;$e=i+32|0;p[$e>>3]=0;Je=i+16|0;a=h[Je>>2]|0;if(!a){Qe=1;return Qe|0}Ke=i+20|0;Ve=t+5584|0;qe=e+16|0;We=e+20|0;Ge=e+8|0;Xe=e+36|0;ze=(r|0)!=0;je=e+32|0;Ye=e+12|0;i=a;He=0;e:while(1){t=h[Ke>>2]|0;a=h[Ve>>2]|0;Fe=(h[t+(He*52|0)+8>>2]|0)-(h[t+(He*52|0)>>2]|0)|0;Ue=t+(He*52|0)+16|0;o=h[Ue>>2]|0;if(o){Ne=t+(He*52|0)+24|0;Oe=t+(He*52|0)+32|0;Be=a+(He*1080|0)+20|0;Le=a+(He*1080|0)+16|0;Re=ze&He>>>0<n>>>0;De=r+(He<<3)|0;i=o;Ie=0;do{Ae=h[Ne>>2]|0;Pe=Ae+(Ie*136|0)+24|0;t=h[Pe>>2]|0;if(t){Ce=Ae+(Ie*136|0)+16|0;xe=Ae+(Ie*136|0)+20|0;Ee=~Ie;Se=Ie+-1|0;i=h[xe>>2]|0;a=h[Ce>>2]|0;Me=0;do{Te=Ae+(Ie*136|0)+28+(Me*36|0)+32|0;if(ue(i,a)|0){we=67108864/(~~+$(+(+w[Te>>2]*8192))|0)|0;pe=Ae+(Ie*136|0)+28+(Me*36|0)+20|0;ge=Ae+(Ie*136|0)+28+(Me*36|0)|0;ke=Ae+(Ie*136|0)+28+(Me*36|0)+4|0;_e=Ae+(Ie*136|0)+28+(Me*36|0)+16|0;ye=((we|0)<0)<<31>>31;ve=0;do{t=h[pe>>2]|0;me=t+(ve*40|0)+16|0;be=t+(ve*40|0)+20|0;if(ue(h[be>>2]|0,h[me>>2]|0)|0){de=t+(ve*40|0)+24|0;he=0;do{ce=h[de>>2]|0;o=h[ce+(he*52|0)+12>>2]|0;i=o-(h[ge>>2]|0)|0;s=h[ce+(he*52|0)+16>>2]|0;t=s-(h[ke>>2]|0)|0;a=h[_e>>2]|0;if(a&1){le=h[Ne>>2]|0;i=(h[le+(Se*136|0)+8>>2]|0)+i-(h[le+(Se*136|0)>>2]|0)|0}if(a&2){le=h[Ne>>2]|0;t=(h[le+(Se*136|0)+12>>2]|0)+t-(h[le+(Se*136|0)+4>>2]|0)|0}if(!(Zo(e,(h[ce+(he*52|0)+20>>2]|0)-o|0,(h[ce+(he*52|0)+24>>2]|0)-s|0)|0)){i=0;Qe=173;break e}f=h[qe>>2]|0;l=h[We>>2]|0;u=Fe-f|0;k=(ue(t,Fe)|0)+i|0;_=h[Oe>>2]|0;h[Ge>>2]=_+(k<<2);h[Xe>>2]=Fe;i=(l|0)==0;if((h[Be>>2]|0)==1){if(!i){o=(f|0)==0;s=0;i=0;while(1){if(!o){t=0;a=i;while(1){le=_+(a+k<<2)|0;h[le>>2]=h[le>>2]<<6;t=t+1|0;if((t|0)==(f|0))break;else a=a+1|0}i=f+i|0}s=s+1|0;if((s|0)==(l|0))break;else i=i+u|0}}}else if(!i){o=(f|0)==0;s=0;i=0;while(1){if(!o){t=0;a=i;while(1){le=_+(a+k<<2)|0;fe=h[le>>2]|0;fe=Zf(fe|0,((fe|0)<0)<<31>>31|0,we|0,ye|0)|0;fe=Wf(fe|0,H|0,4096,0)|0;fe=Gf(fe|0,H|0,18)|0;h[le>>2]=fe;t=t+1|0;if((t|0)==(f|0))break;else a=a+1|0}i=f+i|0}s=s+1|0;if((s|0)==(l|0))break;else i=i+u|0}}ae=h[_e>>2]|0;oe=(h[Ue>>2]|0)+Ee|0;u=h[Be>>2]|0;se=+w[Te>>2];fe=h[Le>>2]|0;le=h[e>>2]|0;o=h[qe>>2]|0;do if(!o)i=0;else{s=h[We>>2]|0;f=(s|0)==0;l=0;i=0;do{if(!f){t=h[Xe>>2]|0;a=0;do{ne=_+(k+((ue(a,t)|0)+l)<<2)|0;ne=h[ne>>2]|0;ne=(ne|0)>-1?ne:0-ne|0;i=(i|0)>(ne|0)?i:ne;a=a+1|0}while((a|0)!=(s|0))}l=l+1|0}while((l|0)!=(o|0));if(!i){i=0;break}if((i|0)>1){t=i;i=0}else{i=-5;break}while(1){t=t>>1;if((t|0)<=1)break;else i=i+1|0}i=i+-4|0}while(0);re=ce+(he*52|0)+28|0;h[re>>2]=i;i=i+-1|0;ws(le);ps(le,18,0,46);ps(le,17,0,3);ps(le,0,0,4);ne=ce+(he*52|0)|0;cs(le,h[ne>>2]|0);i:do if((i|0)>-1){ie=ce+(he*52|0)+8|0;G=fe&1;te=(G|0)!=0;X=(u|0)==1;K=(fe&4|0)==0;G=(G|0)==0;J=(fe&2|0)==0;Q=(fe&8|0)==0;Z=ae<<8;ee=(fe&32|0)==0;t=0;V=i;q=0;i=0;W=2;while(1){Y=h[ie>>2]|0;D=te&(W>>>0<2?(V|0)<((h[re>>2]|0)+-4|0):0);t:do switch(W|0){case 0:{I=1<<V+6;t=h[We>>2]|0;if(!t){o=0;break t}L=(V|0)==0;s=h[qe>>2]|0;a=s;o=0;P=0;do{A=P;P=P+4|0;if(!a)a=0;else{E=(A|0)==-4;S=A|3;a=s;x=0;do{if(!E){C=A;do{t=h[We>>2]|0;if(C>>>0>=t>>>0)break;do if(Q)t=0;else{if((C|0)==(S|0)){t=1;break}t=(C|0)==(t+-1|0)}while(0);f=C;C=C+1|0;k=(ue(h[je>>2]|0,C)|0)+x|0;_=k+1|0;y=h[Ye>>2]|0;M=y+(_<<1)|0;f=(ue(h[Xe>>2]|0,f)|0)+x|0;f=(h[Ge>>2]|0)+(f<<2)|0;T=h[e>>2]|0;l=d[M>>1]|0;l=t?l&-1095:l;t=l&255;if((t|0)!=0&(l&20480|0)==0){a=h[f>>2]|0;a=(((a|0)<0?0-a|0:a)&I|0)!=0;s=a&1;u=T+100|0;h[u>>2]=T+24+(m[20286+(t|Z)>>0]<<2);if(D)bs(T,s);else ds(T,s);if(a){t=h[f>>2]|0;a=t>>>31;t=(t|0)<0?0-t|0:t;if(L)t=3708+((t&127)<<1)|0;else t=3452+((t>>>V&127)<<1)|0;o=(d[t>>1]|0)+o|0;t=l>>>4&255;h[u>>2]=T+24+(m[21310+t>>0]<<2);if(D)bs(T,a);else ds(T,m[21566+t>>0]^a);z=h[je>>2]|0;j=y+(_-z<<1)|0;U=y+(z+_<<1)|0;F=y+(_+~z<<1)|0;d[F>>1]=b[F>>1]|2;d[j>>1]=d[j>>1]|d[3436+(a<<1)>>1];j=k+2|0;F=y+(j-z<<1)|0;d[F>>1]=b[F>>1]|4;F=y+(k<<1)|0;d[F>>1]=d[F>>1]|d[3436+((a|2)<<1)>>1];d[M>>1]=b[M>>1]|4096;F=y+(j<<1)|0;d[F>>1]=d[F>>1]|d[3436+((a|4)<<1)>>1];F=y+(z+k<<1)|0;d[F>>1]=b[F>>1]|1;d[U>>1]=d[U>>1]|d[3436+((a|6)<<1)>>1];j=y+(z+j<<1)|0;d[j>>1]=b[j>>1]|8}d[M>>1]=b[M>>1]|16384}}while(C>>>0<P>>>0);a=h[qe>>2]|0}x=x+1|0}while(x>>>0<a>>>0);t=h[We>>2]|0;s=a}}while(P>>>0<t>>>0);break}case 1:{x=1<<V+6;t=h[We>>2]|0;if(!t){o=0;break t}E=(V|0)==0;s=h[qe>>2]|0;a=s;o=0;C=0;do{M=C;C=C+4|0;if(!a)a=0;else{y=(M|0)==-4;T=M|3;a=s;_=0;do{k=_;_=_+1|0;if(!y){u=M;do{t=h[We>>2]|0;if(u>>>0>=t>>>0)break;do if(Q)t=0;else{if((u|0)==(T|0)){t=1;break}t=(u|0)==(t+-1|0)}while(0);a=u;u=u+1|0;f=(ue(h[je>>2]|0,u)|0)+_|0;f=(h[Ye>>2]|0)+(f<<1)|0;l=h[e>>2]|0;s=d[f>>1]|0;s=t?s&-1095:s;if((s&20480|0)==4096){a=(h[Ge>>2]|0)+((ue(h[Xe>>2]|0,a)|0)+k<<2)|0;a=h[a>>2]|0;a=(a|0)<0?0-a|0:a;if(E)t=4220+((a&127)<<1)|0;else t=3964+((a>>>V&127)<<1)|0;o=(d[t>>1]|0)+o|0;t=(a&x|0)!=0&1;h[l+100>>2]=l+24+(((s&8192|0)!=0?16:(s&255|0)!=0?15:14)<<2);if(D)bs(l,t);else ds(l,t);d[f>>1]=b[f>>1]|8192}}while(u>>>0<C>>>0);a=h[qe>>2]|0}}while(_>>>0<a>>>0);t=h[We>>2]|0;s=a}}while(C>>>0<t>>>0);break}case 2:{B=h[e>>2]|0;N=1<<V+6;a=h[We>>2]|0;if(!a)t=0;else{F=B+92|0;U=B+100|0;z=B+96|0;j=(V|0)==0;o=h[qe>>2]|0;t=0;O=0;while(1){if(!o){s=O+4|0;o=0}else{S=O|3;A=O|1;P=A+1|0;I=A+3|0;s=O+4|0;L=O+1|0;D=O+2|0;R=O+3|0;E=0;while(1){do if(S>>>0<a>>>0){a=h[je>>2]|0;l=E+1|0;f=(ue(a,A)|0)+l|0;o=h[Ye>>2]|0;f=d[o+(f<<1)>>1]|0;if(Q){C=o+((ue(a,P)|0)+l<<1)|0;x=o+((ue(a,S)|0)+l<<1)|0;a=o+((ue(a,I)|0)+l<<1)|0;a=((d[C>>1]|f|d[x>>1]|d[a>>1])&20735)==0&1}else{do if(!(f&20735)){x=o+((ue(a,P)|0)+l<<1)|0;if(d[x>>1]&20735){a=1;break}x=o+((ue(a,S)|0)+l<<1)|0;if(d[x>>1]&20735){a=1;break}a=o+((ue(a,I)|0)+l<<1)|0;a=(d[a>>1]&20665)!=0}else a=1;while(0);a=a&1^1}if(!a){x=0;a=0;Qe=109;break}a=h[Xe>>2]|0;o=h[Ge>>2]|0;x=o+((ue(a,O)|0)+E<<2)|0;x=h[x>>2]|0;do if(!(((x|0)<0?0-x|0:x)&N)){x=o+((ue(a,L)|0)+E<<2)|0;x=h[x>>2]|0;if(((x|0)<0?0-x|0:x)&N){a=1;break}x=o+((ue(a,D)|0)+E<<2)|0;x=h[x>>2]|0;if(((x|0)<0?0-x|0:x)&N){a=2;break}a=o+((ue(a,R)|0)+E<<2)|0;a=h[a>>2]|0;a=(((a|0)<0?0-a|0:a)&N|0)==0?4:3}else a=0;while(0);h[U>>2]=F;ds(B,(a|0)!=4&1);if((a|0)==4){f=l;break}h[U>>2]=z;ds(B,a>>>1);ds(B,a&1);x=1;Qe=109}else{x=0;a=0;Qe=109}while(0);if((Qe|0)==109){Qe=0;C=a+O|0;r:do if(C>>>0<s>>>0){M=C;do{a=h[We>>2]|0;if(M>>>0>=a>>>0)break r;do if(Q)a=0;else{if((M|0)==(S|0)){a=1;break}a=(M|0)==(a+-1|0)}while(0);Ze=M;M=M+1|0;u=(ue(h[je>>2]|0,M)|0)+E|0;k=u+1|0;_=h[Ye>>2]|0;T=_+(k<<1)|0;o=(ue(h[Xe>>2]|0,Ze)|0)+E|0;o=(h[Ge>>2]|0)+(o<<2)|0;y=h[e>>2]|0;f=d[T>>1]|0;l=a?f&-1095:f;do if(!(x&(Ze|0)==(C|0))){if(f&20480)break;h[y+100>>2]=y+24+(m[20286+(l&255|Z)>>0]<<2);Ze=h[o>>2]|0;Ze=(((Ze|0)<0?0-Ze|0:Ze)&N|0)!=0;ds(y,Ze&1);if(Ze)Qe=117}else Qe=117;while(0);if((Qe|0)==117){Qe=0;o=h[o>>2]|0;a=(o|0)<0?0-o|0:o;if(j)a=3708+((a&127)<<1)|0;else a=3452+((a>>>V&127)<<1)|0;t=(d[a>>1]|0)+t|0;Ze=l>>>4&255;h[y+100>>2]=y+24+(m[21310+Ze>>0]<<2);f=o>>>31;ds(y,m[21566+Ze>>0]^f);y=h[je>>2]|0;Ze=_+(k-y<<1)|0;l=_+(y+k<<1)|0;k=_+(k+~y<<1)|0;d[k>>1]=b[k>>1]|2;d[Ze>>1]=d[Ze>>1]|d[3436+(f<<1)>>1];Ze=u+2|0;k=_+(Ze-y<<1)|0;d[k>>1]=b[k>>1]|4;k=_+(u<<1)|0;d[k>>1]=d[k>>1]|d[3436+((f|2)<<1)>>1];d[T>>1]=b[T>>1]|4096;k=_+(Ze<<1)|0;d[k>>1]=d[k>>1]|d[3436+((f|4)<<1)>>1];k=_+(y+u<<1)|0;d[k>>1]=b[k>>1]|1;d[l>>1]=d[l>>1]|d[3436+((f|6)<<1)>>1];Ze=_+(y+Ze<<1)|0;d[Ze>>1]=b[Ze>>1]|8}d[T>>1]=b[T>>1]&49151}while(M>>>0<s>>>0)}while(0);f=E+1|0}o=h[qe>>2]|0;a=h[We>>2]|0;if(f>>>0<o>>>0)E=f;else break}}if(s>>>0<a>>>0)O=s;else break}}if(ee){o=t;break t}_s(le);o=t;break}default:o=t}while(0);if(Re)v=+p[De>>3];else v=1;if(X)g=+Oo(oe,ae);else g=+Fo(oe,ae);g=+(1<<V|0)*(se*(v*g));g=g*(+(o|0)*g*.0001220703125);q=q+g;p[$e>>3]=+p[$e>>3]+g;do if(K)Qe=137;else{if((V|0)<1&(W|0)==2){Qe=137;break}hs(le);a=Y+(i*24|0)+20|0;t=c[a>>0]|1;c[a>>0]=t;a=1}while(0);do if((Qe|0)==137){t=(h[re>>2]|0)+-4|0;if((W|0)!=0&(V|0)<(t|0))if(G)Qe=141;else Qe=140;else if(G|((W|0)!=2|(V|0)!=(t|0)))Qe=141;else Qe=140;if((Qe|0)==140){Qe=0;hs(le);a=Y+(i*24|0)+20|0;t=c[a>>0]|1;c[a>>0]=t;a=1;break}else if((Qe|0)==141){Qe=0;a=Y+(i*24|0)+20|0;t=c[a>>0]&-2;c[a>>0]=t;a=3;break}}while(0);j=W+1|0;Ze=(j|0)==3;W=Ze?0:j;V=(Ze<<31>>31)+V|0;do if((V|0)>0&(t&1)!=0)if(te&(W>>>0<2?(V|0)<((h[re>>2]|0)+-4|0):0)){ms(le);break}else{gs(le);break}while(0);p[Y+(i*24|0)+8>>3]=q;Ze=(us(le)|0)+a|0;h[Y+(i*24|0)>>2]=Ze;if(!J)vs(le);i=i+1|0;if((V|0)<=-1)break i;else t=o}}else i=0;while(0);do if(!(fe&16)){if(fe&1)break;hs(le)}else ks(le);while(0);l=ce+(he*52|0)+48|0;h[l>>2]=i;if(i){o=ce+(he*52|0)+8|0;f=0;do{s=h[o>>2]|0;t=s+(f*24|0)|0;Ze=h[t>>2]|0;if(Ze>>>0>(us(le)|0)>>>0){i=us(le)|0;h[t>>2]=i}else i=h[t>>2]|0;do if(i>>>0>1){a=i+-1|0;if((c[(h[ne>>2]|0)+a>>0]|0)!=-1)break;h[t>>2]=a;i=a}while(0);if(!f)t=0;else t=h[(h[o>>2]|0)+((f+-1|0)*24|0)>>2]|0;h[s+(f*24|0)+16>>2]=i-t;f=f+1|0}while(f>>>0<(h[l>>2]|0)>>>0)}he=he+1|0}while(he>>>0<(ue(h[be>>2]|0,h[me>>2]|0)|0)>>>0);i=h[xe>>2]|0;a=h[Ce>>2]|0}ve=ve+1|0}while(ve>>>0<(ue(i,a)|0)>>>0);t=h[Pe>>2]|0}Me=Me+1|0}while(Me>>>0<t>>>0);i=h[Ue>>2]|0}Ie=Ie+1|0}while(Ie>>>0<i>>>0);i=h[Je>>2]|0}He=He+1|0;if(He>>>0>=i>>>0){i=1;Qe=173;break}}if((Qe|0)==173)return i|0;return 0}function Zo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;a=ue(t,i)|0;if(!(h[e+40>>2]|0)){o=e+24|0;s=e+8|0;r=h[s>>2]|0;do if(a>>>0>(h[o>>2]|0)>>>0){$n(r);n=a<<2;r=Kn(n)|0;h[s>>2]=r;if(!r){i=0;return i|0}else{h[o>>2]=a;break}}else n=a<<2;while(0);Vf(r|0,0,n|0)|0}a=i+2|0;h[e+32>>2]=a;a=ue(t+2|0,a)|0;o=e+28|0;s=e+12|0;r=h[s>>2]|0;do if(a>>>0>(h[o>>2]|0)>>>0){$n(r);n=a<<1;r=Kn(n)|0;h[s>>2]=r;if(!r){i=0;return i|0}else{h[o>>2]=a;break}}else n=a<<1;while(0);Vf(r|0,0,n|0)|0;h[e+16>>2]=i;h[e+20>>2]=t;i=1;return i|0}function es(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0;a=h[e>>2]|0;s=d[i>>1]|0;f=s&255;if(!((f|0)!=0&(s&20480|0)==0))return;o=a+100|0;h[o>>2]=a+24+(m[20286+(f|r<<8)>>0]<<2);if(Ts(a)|0){r=s>>>4&255;h[o>>2]=a+24+(m[21310+r>>0]<<2);s=Ts(a)|0;r=m[21566+r>>0]|0;f=r^s;h[t>>2]=(s|0)!=(r|0)?0-n|0:n;e=h[e+32>>2]|0;n=i+(0-e<<1)|0;r=i+(e<<1)|0;t=i+(~e<<1)|0;d[t>>1]=b[t>>1]|2;d[n>>1]=d[n>>1]|d[3436+(f<<1)>>1];n=i+(1-e<<1)|0;d[n>>1]=b[n>>1]|4;n=i+-2|0;d[n>>1]=d[n>>1]|d[3436+(f+2<<1)>>1];d[i>>1]=b[i>>1]|4096;n=i+2|0;d[n>>1]=d[n>>1]|d[3436+(f+4<<1)>>1];n=i+(e+-1<<1)|0;d[n>>1]=b[n>>1]|1;d[r>>1]=d[r>>1]|d[3436+(f+6<<1)>>1];e=i+(e+1<<1)|0;d[e>>1]=b[e>>1]|8}d[i>>1]=b[i>>1]|16384;return}function is(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;a=h[e>>2]|0;s=d[i>>1]|0;if(s&20480){e=d[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;d[i>>1]=e;return}o=a+100|0;h[o>>2]=a+24+(m[20286+(s&255|r<<8)>>0]<<2);if(!(Ts(a)|0)){e=d[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;d[i>>1]=e;return}r=s>>>4&255;h[o>>2]=a+24+(m[21310+r>>0]<<2);o=Ts(a)|0;r=m[21566+r>>0]|0;s=r^o;h[t>>2]=(o|0)!=(r|0)?0-n|0:n;e=h[e+32>>2]|0;n=i+(0-e<<1)|0;r=i+(e<<1)|0;t=i+(~e<<1)|0;d[t>>1]=b[t>>1]|2;d[n>>1]=d[n>>1]|d[3436+(s<<1)>>1];n=i+(1-e<<1)|0;d[n>>1]=b[n>>1]|4;n=i+-2|0;d[n>>1]=d[n>>1]|d[3436+(s+2<<1)>>1];d[i>>1]=b[i>>1]|4096;n=i+2|0;d[n>>1]=d[n>>1]|d[3436+(s+4<<1)>>1];n=i+(e+-1<<1)|0;d[n>>1]=b[n>>1]|1;d[r>>1]=d[r>>1]|d[3436+(s+6<<1)>>1];e=i+(e+1<<1)|0;d[e>>1]=b[e>>1]|8;e=d[i>>1]|0;e=e&65535;e=e&49151;e=e&65535;d[i>>1]=e;return}function ts(e,i,t,r,n,a,o,s,f,l,u,c){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;c=c|0;var b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0;D=k;k=k+16|0;L=D;h[L>>2]=0;b=h[e>>2]|0;S=h[e+4>>2]|0;e=h[S+76>>2]|0;P=e+(i*5640|0)|0;w=(d[S>>1]|0)==4?2:1;p=S+80|0;if(!(h[p>>2]|0))v=1;else v=h[b+16>>2]|0;I=(h[e+(i*5640|0)+420>>2]|0)+1|0;A=Lt(b,S,i,c)|0;if(!A){i=0;k=D;return i|0}h[a>>2]=0;e:do if(!c){if(v){e=0;i:while(1){c=0;u=A;b=0;while(1){Dt(A,S,i,b,e,l,0);if((h[u+80>>2]|0)==-1){e=9;break i}f=u+36|0;t:while(1){do if(!(Ot(u)|0))break t;while((h[f>>2]|0)>>>0>=r>>>0);h[L>>2]=0;if(!(os(i,t,P,u,n,L,o,s)|0)){e=13;break i}E=h[L>>2]|0;h[a>>2]=(h[a>>2]|0)+E;o=o-E|0;c=E+c|0;n=n+E|0}E=h[p>>2]|0;if((E|0)!=0&c>>>0>E>>>0){e=17;break i}b=b+1|0;if(b>>>0<w>>>0)u=u+232|0;else break}e=e+1|0;if(e>>>0>=v>>>0)break e}if((e|0)==9){It(A,I);i=0;k=D;return i|0}else if((e|0)==13){It(A,I);i=0;k=D;return i|0}else if((e|0)==17){It(A,I);i=0;k=D;return i|0}}}else{Dt(A,S,i,u,f,l,c);C=A+(u*232|0)|0;if((h[A+(u*232|0)+80>>2]|0)==-1){It(A,I);i=0;k=D;return i|0}l=A+(u*232|0)+36|0;g=(s|0)==0;_=t+840|0;y=s+12|0;T=s+8|0;M=s+88|0;p=S+93|0;w=e+(i*5640|0)+5636|0;while(1){do if(!(Ot(C)|0))break e;while((h[l>>2]|0)>>>0>=r>>>0);h[L>>2]=0;if(!(os(i,t,P,C,n,L,o,s)|0))break;v=h[L>>2]|0;n=n+v|0;o=o-v|0;h[a>>2]=(h[a>>2]|0)+v;if(!g){if(!(h[y>>2]|0))e=h[T>>2]|0;else{b=h[M>>2]|0;e=h[T>>2]|0;u=h[b+(i*592|0)+548>>2]|0;c=u+(e<<5)|0;if(!e){f=(h[b+(i*592|0)+12>>2]|0)+1|0;b=((f|0)<0)<<31>>31;S=c;h[S>>2]=f;h[S+4>>2]=b}else{if((((m[w>>0]|0)>>>2|(m[p>>0]|0)>>>3)&1)!=0?(E=c,x=h[E>>2]|0,E=h[E+4>>2]|0,!((x|0)==0&(E|0)==0)):0){f=x;b=E}else{f=u+(e+-1<<5)+16|0;f=Wf(h[f>>2]|0,h[f+4>>2]|0,1,0)|0;b=H}S=c;h[S>>2]=f;h[S+4>>2]=b}c=Wf(f|0,b|0,-1,-1)|0;f=H;v=Wf(c|0,f|0,v|0,0)|0;S=u+(e<<5)+16|0;h[S>>2]=v;h[S+4>>2]=H;S=u+(e<<5)+8|0;v=S;v=Wf(c|0,f|0,h[v>>2]|0,h[v+4>>2]|0)|0;h[S>>2]=v;h[S+4>>2]=H}h[T>>2]=e+1}h[_>>2]=(h[_>>2]|0)+1}It(A,I);i=0;k=D;return i|0}while(0);It(A,I);i=1;k=D;return i|0}function rs(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0;Q=k;k=k+112|0;X=Q+64|0;K=Q+32|0;V=Q;Y=Q+96|0;j=Q+92|0;f=h[e>>2]|0;F=e+4|0;J=h[F>>2]|0;o=h[J+76>>2]|0;H=o+(i*5640|0)|0;z=o+(i*5640|0)+420|0;$=(h[z>>2]|0)+1|0;J=Pt(f,J,i)|0;if(!J){Z=0;k=Q;return Z|0}U=f+16|0;N=o+(i*5640|0)+12|0;B=t+20|0;O=f+24|0;i=a;e=r;D=J;R=0;e:while(1){if((h[D+80>>2]|0)==-1){Z=4;break}o=Gn(h[U>>2]<<2)|0;if(!o){Z=6;break}Vf(o|0,1,h[U>>2]<<2|0)|0;if(Ot(D)|0){a=D+24|0;t=D+28|0;L=D+36|0;f=D+32|0;I=i;P=e;while(1){if((h[N>>2]|0)>>>0>(h[L>>2]|0)>>>0){i=h[a>>2]|0;e=h[B>>2]|0;if((h[t>>2]|0)>>>0<(h[e+(i*52|0)+20>>2]|0)>>>0){h[o+(i<<2)>>2]=0;A=h[F>>2]|0;h[j>>2]=0;if(!(ss(A,e,H,D,Y,P,j,I,s)|0)){Z=45;break e}S=h[j>>2]|0;if(!(h[Y>>2]|0))e=S;else{E=I-S|0;C=P+S|0;h[j>>2]=0;i=h[t>>2]|0;l=h[(h[B>>2]|0)+((h[a>>2]|0)*52|0)+24>>2]|0;T=l+(i*136|0)+24|0;e=h[T>>2]|0;i:do if(!e){e=C;Z=43}else{M=P+I|0;u=e;A=0;y=l+(i*136|0)+28|0;l=C;t:while(1){e=h[f>>2]|0;i=h[y+20>>2]|0;if(((h[y+8>>2]|0)!=(h[y>>2]|0)?(h[y+12>>2]|0)!=(h[y+4>>2]|0):0)?(G=ue(h[i+(e*40|0)+20>>2]|0,h[i+(e*40|0)+16>>2]|0)|0,(G|0)!=0):0){x=0;e=h[i+(e*40|0)+24>>2]|0;m=l;while(1){g=e+40|0;if(!(h[g>>2]|0))i=m;else{_=e+44|0;i=h[_>>2]|0;do if(!i){d=h[e+4>>2]|0;h[_>>2]=1;h[e+36>>2]=0}else{l=i+-1|0;u=h[e+4>>2]|0;if((h[u+(l<<5)+8>>2]|0)!=(h[u+(l<<5)+20>>2]|0)){d=u+(l<<5)|0;break}h[_>>2]=i+1;d=u+(i<<5)|0}while(0);p=e+36|0;i=e+32|0;w=m;c=d+28|0;l=h[c>>2]|0;if((l+w|0)>>>0<w>>>0|(m+l|0)>>>0>M>>>0){i=A;e=x;break t}u=h[p>>2]|0;w=m;v=d;while(1){d=l+u|0;if(d>>>0<u>>>0){i=A;e=x;Z=29;break e}m=h[e>>2]|0;if(d>>>0>(h[i>>2]|0)>>>0){l=Jn(m,d)|0;if(!l){Z=32;break e}u=h[p>>2]|0;b=h[c>>2]|0;h[i>>2]=b+u;h[e>>2]=l;m=l;l=b}Xf(m+u|0,w|0,l|0)|0;l=v+8|0;u=h[l>>2]|0;if(!u){h[v>>2]=e;d=h[p>>2]|0;h[v+4>>2]=d}else d=h[p>>2]|0;m=h[c>>2]|0;b=w;w=w+m|0;c=h[v+24>>2]|0;u=c+u|0;h[l>>2]=u;l=h[g>>2]|0;h[g>>2]=l-c;h[v+12>>2]=u;u=m+d|0;h[p>>2]=u;d=v+16|0;h[d>>2]=(h[d>>2]|0)+m;if((l|0)==(c|0)){i=w;break}h[_>>2]=(h[_>>2]|0)+1;d=w;c=v+60|0;l=h[c>>2]|0;if((l+d|0)>>>0<d>>>0?1:(b+(l+m)|0)>>>0>M>>>0){i=A;e=x;break t}else v=v+32|0}h[e+48>>2]=h[_>>2]}x=x+1|0;if(x>>>0>=G>>>0){e=i;break}else{e=e+56|0;m=i}}i=h[T>>2]|0}else{i=u;e=l}A=A+1|0;if(A>>>0>=i>>>0){Z=43;break i}else{u=i;y=y+36|0;l=e}}C=h[f>>2]|0;x=h[t>>2]|0;A=h[a>>2]|0;h[V>>2]=l;h[V+4>>2]=E;h[V+8>>2]=e;h[V+12>>2]=C;h[V+16>>2]=i;h[V+20>>2]=x;h[V+24>>2]=A;Jr(s,2,21822,V)|0;e=h[j>>2]|0}while(0);if((Z|0)==43){Z=0;e=e-C|0;h[j>>2]=e}e=e+S|0}l=h[a>>2]|0;S=h[t>>2]|0;i=(h[O>>2]|0)+(l*52|0)+36|0;A=h[i>>2]|0;h[i>>2]=S>>>0>A>>>0?S:A;i=e}else Z=47}else{e=h[B>>2]|0;Z=47}if((Z|0)==47){Z=0;A=h[F>>2]|0;h[j>>2]=0;if(!(ss(A,e,H,D,Y,P,j,I,s)|0)){Z=69;break e}g=h[j>>2]|0;if(!(h[Y>>2]|0))e=g;else{l=I-g|0;y=h[t>>2]|0;T=h[a>>2]|0;e=h[(h[B>>2]|0)+(T*52|0)+24>>2]|0;h[j>>2]=0;p=h[e+(y*136|0)+24>>2]|0;if(!p)e=0;else{_=h[f>>2]|0;i=0;w=e+(y*136|0)+28|0;while(1){u=h[w+20>>2]|0;if(((h[w+8>>2]|0)!=(h[w>>2]|0)?(h[w+12>>2]|0)!=(h[w+4>>2]|0):0)?(q=ue(h[u+(_*40|0)+20>>2]|0,h[u+(_*40|0)+16>>2]|0)|0,(q|0)!=0):0){e=0;v=h[u+(_*40|0)+24>>2]|0;while(1){m=v+40|0;i:do if(h[m>>2]|0){b=v+44|0;u=h[b>>2]|0;do if(!u){d=h[v+4>>2]|0;h[b>>2]=1;h[v+36>>2]=0}else{c=u+-1|0;d=h[v+4>>2]|0;if((h[d+(c<<5)+8>>2]|0)!=(h[d+(c<<5)+20>>2]|0)){d=d+(c<<5)|0;break}h[b>>2]=u+1;d=d+(u<<5)|0}while(0);A=h[j>>2]|0;u=h[d+28>>2]|0;c=u+A|0;if(c>>>0<A>>>0|c>>>0>l>>>0){a=_;t=y;f=T;Z=65;break e}while(1){h[j>>2]=c;A=h[d+24>>2]|0;S=d+8|0;h[S>>2]=(h[S>>2]|0)+A;S=h[m>>2]|0;h[m>>2]=S-A;if((S|0)==(A|0))break i;h[b>>2]=(h[b>>2]|0)+1;A=h[j>>2]|0;u=h[d+60>>2]|0;c=u+A|0;if(c>>>0<A>>>0|c>>>0>l>>>0){a=_;t=y;f=T;Z=65;break e}else d=d+32|0}}while(0);e=e+1|0;if(e>>>0>=q>>>0)break;else v=v+56|0}}i=i+1|0;if(i>>>0>=p>>>0)break;else w=w+36|0}e=h[j>>2]|0}e=e+g|0}l=h[a>>2]|0;i=e}if((h[o+(l<<2)>>2]|0)!=0?(W=(h[O>>2]|0)+(l*52|0)+36|0,(h[W>>2]|0)==0):0)h[W>>2]=(h[(h[B>>2]|0)+(l*52|0)+20>>2]|0)+-1;e=P+i|0;i=I-i|0;if(!(Ot(D)|0))break;else{I=i;P=e}}}Qn(o);R=R+1|0;if(R>>>0>(h[z>>2]|0)>>>0){o=e;Z=75;break}else D=D+232|0}if((Z|0)==4){It(J,$);Z=0;k=Q;return Z|0}else if((Z|0)==6){It(J,$);Z=0;k=Q;return Z|0}else if((Z|0)==29){n=h[f>>2]|0;r=h[t>>2]|0;X=h[a>>2]|0;h[K>>2]=l;h[K+4>>2]=u;h[K+8>>2]=~l;h[K+12>>2]=e;h[K+16>>2]=n;h[K+20>>2]=i;h[K+24>>2]=r;h[K+28>>2]=X;Jr(s,1,21907,K)|0;Z=45}else if((Z|0)==32){Qn(h[e>>2]|0);h[e>>2]=0;h[i>>2]=0;Z=45}else if((Z|0)==65){h[X>>2]=u;h[X+4>>2]=l;h[X+8>>2]=e;h[X+12>>2]=a;h[X+16>>2]=i;h[X+20>>2]=t;h[X+24>>2]=f;Jr(s,1,22006,X)|0;Z=69}else if((Z|0)==75){It(J,$);h[n>>2]=o-r;Z=1;k=Q;return Z|0}if((Z|0)==45){It(J,$);Qn(o);Z=0;k=Q;return Z|0}else if((Z|0)==69){It(J,$);Qn(o);Z=0;k=Q;return Z|0}return 0}function ns(e,i){e=e|0;i=i|0;var t=0;t=Xn(1,8)|0;if(!t){e=0;return e|0}h[t>>2]=e;h[t+4>>2]=i;e=t;return e|0}function as(e){e=e|0;if(!e)return;Qn(e);return}function os(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0;w=h[r+28>>2]|0;O=h[r+32>>2]|0;B=h[r+36>>2]|0;v=h[(h[i+20>>2]|0)+((h[r+24>>2]|0)*52|0)+24>>2]|0;if(!(h[t>>2]&2))L=n;else{c[n>>0]=-1;c[n+1>>0]=-111;c[n+2>>0]=0;c[n+3>>0]=4;L=i+840|0;c[n+4>>0]=(h[L>>2]|0)>>>8;c[n+5>>0]=h[L>>2];o=o+-6|0;L=n+6|0}if((B|0)==0?(b=v+(w*136|0)+24|0,(h[b>>2]|0)!=0):0){d=v+(w*136|0)+28|0;m=0;while(1){r=h[d+20>>2]|0;ar(h[r+(O*40|0)+32>>2]|0);l=r+(O*40|0)+36|0;ar(h[l>>2]|0);u=ue(h[r+(O*40|0)+20>>2]|0,h[r+(O*40|0)+16>>2]|0)|0;if(u){r=r+(O*40|0)+24|0;i=d+28|0;f=0;do{D=h[r>>2]|0;h[D+(f*52|0)+40>>2]=0;mo(h[l>>2]|0,f,(h[i>>2]|0)-(h[D+(f*52|0)+28>>2]|0)|0);f=f+1|0}while((f|0)!=(u|0))}m=m+1|0;if(m>>>0>=(h[b>>2]|0)>>>0)break;else d=d+36|0}}P=To()|0;if(!P){a=0;return a|0}xo(P,L,o);So(P,1,1);I=v+(w*136|0)+28|0;D=v+(w*136|0)+24|0;if(h[D>>2]|0){x=B+1|0;S=I;A=0;while(1){u=h[S+20>>2]|0;E=ue(h[u+(O*40|0)+20>>2]|0,h[u+(O*40|0)+16>>2]|0)|0;d=u+(O*40|0)+24|0;r=(E|0)==0;if(!r){i=u+(O*40|0)+32|0;f=h[d>>2]|0;l=0;while(1){if((h[f+40>>2]|0)==0?(h[(h[f+4>>2]|0)+(B*24|0)>>2]|0)!=0:0)mo(h[i>>2]|0,l,B);l=l+1|0;if((l|0)==(E|0))break;else f=f+52|0}if(!r){C=u+(O*40|0)+32|0;M=u+(O*40|0)+36|0;y=h[d>>2]|0;T=0;while(1){r=(h[y+4>>2]|0)+(B*24|0)|0;_=y+40|0;if(!(h[_>>2]|0))bo(P,h[C>>2]|0,T,x);else So(P,(h[r>>2]|0)!=0&1,1);i=h[r>>2]|0;if(i){if(!(h[_>>2]|0)){h[y+32>>2]=3;bo(P,h[M>>2]|0,T,999);i=h[r>>2]|0}e:do switch(i|0){case 1:{So(P,0,1);break}case 2:{So(P,2,2);break}default:{if(i>>>0<6){So(P,i+-3|12,4);break e}if(i>>>0<37){So(P,i+-6|480,9);break e}if(i>>>0<165)So(P,i+-37|65408,16)}}while(0);d=h[_>>2]|0;i=h[r>>2]|0;k=i+d|0;g=y+8|0;if(d>>>0<k>>>0){w=y+32|0;b=d+-1+i|0;l=0;u=0;f=0;v=(h[g>>2]|0)+(d*24|0)|0;while(1){f=f+1|0;u=(h[v+16>>2]|0)+u|0;if((c[v+20>>0]&1)!=0|(d|0)==(b|0)){if((u|0)>1){i=0;do{u=u>>1;i=i+1|0}while((u|0)>1)}else i=0;m=h[w>>2]|0;if((f|0)>1){u=0;do{f=f>>1;u=u+1|0}while((f|0)>1);f=u}else f=0;u=i+1-m-f|0;l=(l|0)>(u|0)?l:u;u=0;f=0}d=d+1|0;if((d|0)==(k|0))break;else v=v+24|0}if((l|0)>0){i=l;while(1){So(P,1,1);if((i|0)>1)i=i+-1|0;else{i=u;break}}}else i=u}else{l=0;i=0;f=0}So(P,0,1);b=y+32|0;h[b>>2]=(h[b>>2]|0)+l;l=h[_>>2]|0;if(l>>>0<k>>>0){m=(h[g>>2]|0)+(l*24|0)|0;while(1){f=f+1|0;u=(h[m+16>>2]|0)+i|0;if((c[m+20>>0]&1)==0?(l|0)!=((h[_>>2]|0)+-1+(h[r>>2]|0)|0):0)i=u;else{d=h[b>>2]|0;if((f|0)>1){i=0;do{f=f>>1;i=i+1|0}while((f|0)>1)}else i=0;So(P,u,i+d|0);i=0;f=0}l=l+1|0;if((l|0)==(k|0))break;else m=m+24|0}}}T=T+1|0;if((T|0)==(E|0))break;else y=y+52|0}}}A=A+1|0;if(A>>>0>=(h[D>>2]|0)>>>0)break;else S=S+36|0}}if(!(Po(P)|0)){Mo(P);a=0;return a|0}i=Co(P)|0;r=L+i|0;o=o-i|0;Mo(P);if(h[t>>2]&4){c[r>>0]=-1;c[L+(i+1)>>0]=-110;o=o+-2|0;r=L+(i+2)|0}g=(s|0)!=0;if(g?(h[s+12>>2]|0)!=0:0){L=r-n|0;t=(h[(h[s+88>>2]|0)+(e*592|0)+548>>2]|0)+(h[s+8>>2]<<5)+8|0;h[t>>2]=L;h[t+4>>2]=((L|0)<0)<<31>>31}i=h[D>>2]|0;e:do if(i){k=s+12|0;_=s+8|0;y=s+88|0;v=I;w=0;i:while(1){f=h[v+20>>2]|0;b=ue(h[f+(O*40|0)+20>>2]|0,h[f+(O*40|0)+16>>2]|0)|0;f=h[f+(O*40|0)+24>>2]|0;if(b){if(g){m=0;while(1){d=h[f+4>>2]|0;i=d+(B*24|0)|0;if(h[i>>2]|0){l=d+(B*24|0)+4|0;u=h[l>>2]|0;if(u>>>0>o>>>0){r=0;o=81;break i}Xf(r|0,h[d+(B*24|0)+16>>2]|0,u|0)|0;t=f+40|0;h[t>>2]=(h[t>>2]|0)+(h[i>>2]|0);t=h[l>>2]|0;r=r+t|0;o=o-t|0;if((h[k>>2]|0)!=0?(t=(h[(h[y>>2]|0)+(e*592|0)+548>>2]|0)+(h[_>>2]<<5)+24|0,R=+p[d+(B*24|0)+8>>3]+ +p[t>>3],p[t>>3]=R,+p[s>>3]<R):0)p[s>>3]=R}m=m+1|0;if(m>>>0>=b>>>0)break;else f=f+52|0}}else{m=0;while(1){i=h[f+4>>2]|0;l=i+(B*24|0)|0;if(h[l>>2]|0){u=i+(B*24|0)+4|0;d=h[u>>2]|0;if(d>>>0>o>>>0){r=0;o=81;break i}Xf(r|0,h[i+(B*24|0)+16>>2]|0,d|0)|0;t=f+40|0;h[t>>2]=(h[t>>2]|0)+(h[l>>2]|0);t=h[u>>2]|0;o=o-t|0;r=r+t|0}m=m+1|0;if(m>>>0>=b>>>0)break;else f=f+52|0}}i=h[D>>2]|0}w=w+1|0;if(w>>>0>=i>>>0)break e;else v=v+36|0}if((o|0)==81)return r|0}while(0);h[a>>2]=r-n+(h[a>>2]|0);a=1;return a|0}function ss(e,i,t,r,n,a,o,s,f){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;var l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0;U=k;k=k+64|0;N=U+40|0;B=U+32|0;T=U+24|0;y=U+16|0;g=U+8|0;p=U;_=U+48|0;F=U+44|0;h[F>>2]=a;C=h[r+28>>2]|0;O=r+24|0;M=h[i+((h[O>>2]|0)*52|0)+24>>2]|0;D=r+36|0;if((h[D>>2]|0)==0?(w=M+(C*136|0)+24|0,l=h[w>>2]|0,(l|0)!=0):0){v=r+32|0;m=0;b=M+(C*136|0)+28|0;while(1){i=h[v>>2]|0;u=h[b+20>>2]|0;if((h[b+8>>2]|0)!=(h[b>>2]|0)?(h[b+12>>2]|0)!=(h[b+4>>2]|0):0){ar(h[u+(i*40|0)+32>>2]|0);ar(h[u+(i*40|0)+36>>2]|0);l=ue(h[u+(i*40|0)+20>>2]|0,h[u+(i*40|0)+16>>2]|0)|0;if(l){d=0;i=h[u+(i*40|0)+24>>2]|0;while(1){h[i+44>>2]=0;h[i+48>>2]=0;d=d+1|0;if((d|0)==(l|0))break;else i=i+56|0}}l=h[w>>2]|0}m=m+1|0;if(m>>>0>=l>>>0)break;else b=b+36|0}}do if(h[t>>2]&2){if(s>>>0<6){Jr(f,2,22091,p)|0;break}i=h[F>>2]|0;if((c[i>>0]|0)==-1?(c[i+1>>0]|0)==-111:0){h[F>>2]=i+6;break}Jr(f,2,22133,g)|0}while(0);L=To()|0;if(!L){a=0;k=U;return a|0}do if(!(c[e+96>>0]&1))if(!(c[t+5636>>0]&2)){P=h[F>>2]|0;h[_>>2]=a+s-P;I=F;break}else{I=t+5168|0;P=h[I>>2]|0;_=t+5180|0;break}else{I=e+40|0;P=h[I>>2]|0;_=e+44|0}while(0);Eo(L,P,h[_>>2]|0);if(!(Ao(L,1)|0)){Io(L)|0;l=Co(L)|0;i=P+l|0;Mo(L);do if(h[t>>2]&4){if(((h[_>>2]|0)-i+(h[I>>2]|0)|0)>>>0<2){Jr(f,2,22154,y)|0;break}if((c[i>>0]|0)==-1?(c[P+(l+1)>>0]|0)==-110:0){i=P+(l+2)|0;break}Jr(f,2,22196,T)|0}while(0);h[_>>2]=(h[_>>2]|0)+((h[I>>2]|0)-i);h[I>>2]=i;h[n>>2]=0;h[o>>2]=(h[F>>2]|0)-a;a=1;k=U;return a|0}A=M+(C*136|0)+24|0;i=h[A>>2]|0;e:do if(i){E=r+32|0;S=t+5584|0;x=0;M=M+(C*136|0)+28|0;i:while(1){l=h[E>>2]|0;u=h[M+20>>2]|0;if(((h[M+8>>2]|0)!=(h[M>>2]|0)?(h[M+12>>2]|0)!=(h[M+4>>2]|0):0)?(R=ue(h[u+(l*40|0)+20>>2]|0,h[u+(l*40|0)+16>>2]|0)|0,(R|0)!=0):0){e=u+(l*40|0)+32|0;r=u+(l*40|0)+36|0;y=M+28|0;T=0;s=h[u+(l*40|0)+24>>2]|0;while(1){l=s+44|0;if(!(h[l>>2]|0))i=vo(L,h[e>>2]|0,T,(h[D>>2]|0)+1|0)|0;else i=Ao(L,1)|0;t:do if(!i)h[s+40>>2]=0;else{if(!(h[l>>2]|0)){i=0;while(1)if(!(vo(L,h[r>>2]|0,T,i)|0))i=i+1|0;else break;h[s+24>>2]=1-i+(h[y>>2]|0);h[s+28>>2]=3}do if(Ao(L,1)|0)if(Ao(L,1)|0){i=Ao(L,2)|0;if((i|0)!=3){i=i+3|0;break}i=Ao(L,5)|0;if((i|0)==31){i=(Ao(L,7)|0)+37|0;break}else{i=i+6|0;break}}else i=2;else i=1;while(0);p=s+40|0;h[p>>2]=i;i=0;while(1)if(!(Ao(L,1)|0))break;else i=i+1|0;g=s+28|0;h[g>>2]=(h[g>>2]|0)+i;l=h[l>>2]|0;do if(!l){u=h[(h[S>>2]|0)+((h[O>>2]|0)*1080|0)+16>>2]|0;i=s+52|0;if(!(h[i>>2]|0)){h[i>>2]=10;d=s+4|0;l=Jn(h[d>>2]|0,320)|0;if(!l){l=i;u=d;i=d;d=66;break i}h[d>>2]=l}else l=h[s+4>>2]|0;h[l>>2]=0;h[l+4>>2]=0;h[l+8>>2]=0;h[l+12>>2]=0;h[l+16>>2]=0;h[l+20>>2]=0;h[l+24>>2]=0;h[l+28>>2]=0;if(u&4){h[l+20>>2]=1;l=0;break}l=l+20|0;if(!(u&1)){h[l>>2]=109;l=0;break}else{h[l>>2]=10;l=0;break}}else{b=l+-1|0;v=s+4|0;u=h[v>>2]|0;if((h[u+(b<<5)+8>>2]|0)!=(h[u+(b<<5)+20>>2]|0)){i=s+52|0;l=b;break}m=h[(h[S>>2]|0)+((h[O>>2]|0)*1080|0)+16>>2]|0;i=s+52|0;d=h[i>>2]|0;if((l+1|0)>>>0>d>>>0){C=d+10|0;h[i>>2]=C;u=Jn(u,C<<5)|0;if(!u){u=v;l=i;i=v;d=77;break i}h[v>>2]=u}C=u+(l<<5)|0;h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;h[C+12>>2]=0;h[C+16>>2]=0;h[C+20>>2]=0;h[C+24>>2]=0;h[C+28>>2]=0;if(m&4){h[u+(l<<5)+20>>2]=1;break}if(!(m&1)){h[u+(l<<5)+20>>2]=109;break}else{C=h[u+(b<<5)+20>>2]|0;h[u+(l<<5)+20>>2]=(C|0)==1|(C|0)==10?2:1;break}}while(0);w=s+4|0;b=h[p>>2]|0;while(1){m=h[w>>2]|0;u=(h[m+(l<<5)+20>>2]|0)-(h[m+(l<<5)+8>>2]|0)|0;u=(u|0)<(b|0)?u:b;h[m+(l<<5)+24>>2]=u;m=h[g>>2]|0;if(u>>>0>1){d=0;while(1){d=d+1|0;if(u>>>0>3)u=u>>>1;else{u=d;break}}}else u=0;m=Ao(L,u+m|0)|0;u=h[w>>2]|0;h[u+(l<<5)+28>>2]=m;m=b-(h[u+(l<<5)+24>>2]|0)|0;if((m|0)<=0)break t;b=l+1|0;v=h[(h[S>>2]|0)+((h[O>>2]|0)*1080|0)+16>>2]|0;d=h[i>>2]|0;if((l+2|0)>>>0>d>>>0){C=d+10|0;h[i>>2]=C;u=Jn(u,C<<5)|0;if(!u){u=w;l=w;d=90;break i}h[w>>2]=u}C=u+(b<<5)|0;h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;h[C+12>>2]=0;h[C+16>>2]=0;h[C+20>>2]=0;h[C+24>>2]=0;h[C+28>>2]=0;if(v&4){h[u+(b<<5)+20>>2]=1;l=b;b=m;continue}if(!(v&1)){h[u+(b<<5)+20>>2]=109;l=b;b=m;continue}else{C=h[u+(l<<5)+20>>2]|0;h[u+(b<<5)+20>>2]=(C|0)==1|(C|0)==10?2:1;l=b;b=m;continue}}}while(0);T=T+1|0;if(T>>>0>=R>>>0)break;else s=s+56|0}i=h[A>>2]|0}x=x+1|0;if(x>>>0>=i>>>0)break e;else M=M+36|0}if((d|0)==66){Qn(h[i>>2]|0);h[u>>2]=0;h[l>>2]=0;Mo(L);a=0;k=U;return a|0}else if((d|0)==77){Qn(h[i>>2]|0);h[u>>2]=0;h[l>>2]=0;Mo(L);a=0;k=U;return a|0}else if((d|0)==90){Qn(h[l>>2]|0);h[u>>2]=0;h[i>>2]=0;Mo(L);a=0;k=U;return a|0}}while(0);if(!(Io(L)|0)){Mo(L);a=0;k=U;return a|0}l=Co(L)|0;i=P+l|0;Mo(L);do if(h[t>>2]&4){if(((h[_>>2]|0)-i+(h[I>>2]|0)|0)>>>0<2){Jr(f,2,22154,B)|0;break}if((c[i>>0]|0)==-1?(c[P+(l+1)>>0]|0)==-110:0){
i=P+(l+2)|0;break}Jr(f,2,22196,N)|0}while(0);h[_>>2]=(h[_>>2]|0)+((h[I>>2]|0)-i);h[I>>2]=i;h[n>>2]=1;h[o>>2]=(h[F>>2]|0)-a;a=1;k=U;return a|0}function fs(){return Gn(104)|0}function ls(e){e=e|0;if(!e)return;Qn(e);return}function us(e){e=e|0;return(h[e+12>>2]|0)-(h[e+16>>2]|0)|0}function cs(e,i){e=e|0;i=i|0;var t=0,r=0;h[e+100>>2]=e+24;h[e+4>>2]=32768;h[e>>2]=0;r=i+-1|0;h[e+12>>2]=r;t=e+8|0;h[t>>2]=12;h[t>>2]=(c[r>>0]|0)==-1?13:12;h[e+16>>2]=i;return}function ds(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;n=h[e+100>>2]|0;a=h[n>>2]|0;s=(h[a+4>>2]|0)==(i|0);r=h[a>>2]|0;f=e+4|0;i=(h[f>>2]|0)-r|0;h[f>>2]=i;if(!s){if(i>>>0<r>>>0){s=(h[e>>2]|0)+r|0;h[e>>2]=s;r=i;i=s;s=e}else{h[f>>2]=r;i=h[e>>2]|0;s=e}h[n>>2]=h[a+12>>2];o=e+8|0;a=e+12|0;n=i;i=h[o>>2]|0;while(1){r=r<<1;h[f>>2]=r;t=n<<1;h[s>>2]=t;i=i+-1|0;h[o>>2]=i;if(!i){i=h[a>>2]|0;r=c[i>>0]|0;do if(r<<24>>24!=-1){if(!(t&134217728)){t=i+1|0;h[a>>2]=t;c[t>>0]=n>>>18;t=h[s>>2]&524287;h[s>>2]=t;h[o>>2]=8;i=8;break}c[i>>0]=r+1<<24>>24;i=h[a>>2]|0;if((c[i>>0]|0)==-1){e=h[s>>2]&134217727;h[s>>2]=e;t=i+1|0;h[a>>2]=t;c[t>>0]=e>>>20;t=h[s>>2]&1048575;h[s>>2]=t;h[o>>2]=7;i=7;break}else{t=i+1|0;h[a>>2]=t;c[t>>0]=(h[s>>2]|0)>>>19;t=h[s>>2]&524287;h[s>>2]=t;h[o>>2]=8;i=8;break}}else{t=i+1|0;h[a>>2]=t;c[t>>0]=n>>>19;t=h[s>>2]&1048575;h[s>>2]=t;h[o>>2]=7;i=7}while(0);r=h[f>>2]|0}if(!(r&32768))n=t;else break}return}if(i&32768){h[e>>2]=(h[e>>2]|0)+r;return}if(i>>>0<r>>>0){h[f>>2]=r;t=h[e>>2]|0;s=e}else{t=(h[e>>2]|0)+r|0;h[e>>2]=t;r=i;s=e}h[n>>2]=h[a+8>>2];o=e+8|0;a=e+12|0;n=t;i=h[o>>2]|0;while(1){r=r<<1;h[f>>2]=r;t=n<<1;h[s>>2]=t;i=i+-1|0;h[o>>2]=i;if(!i){i=h[a>>2]|0;r=c[i>>0]|0;do if(r<<24>>24!=-1){if(!(t&134217728)){t=i+1|0;h[a>>2]=t;c[t>>0]=n>>>18;t=h[s>>2]&524287;h[s>>2]=t;h[o>>2]=8;i=8;break}c[i>>0]=r+1<<24>>24;i=h[a>>2]|0;if((c[i>>0]|0)==-1){e=h[s>>2]&134217727;h[s>>2]=e;t=i+1|0;h[a>>2]=t;c[t>>0]=e>>>20;t=h[s>>2]&1048575;h[s>>2]=t;h[o>>2]=7;i=7;break}else{t=i+1|0;h[a>>2]=t;c[t>>0]=(h[s>>2]|0)>>>19;t=h[s>>2]&524287;h[s>>2]=t;h[o>>2]=8;i=8;break}}else{t=i+1|0;h[a>>2]=t;c[t>>0]=n>>>19;t=h[s>>2]&1048575;h[s>>2]=t;h[o>>2]=7;i=7}while(0);r=h[f>>2]|0}if(!(r&32768))n=t;else break}return}function hs(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;a=h[e>>2]|0;r=a|65535;n=e+8|0;r=(r>>>0<((h[e+4>>2]|0)+a|0)>>>0?r:r+-32768|0)<<h[n>>2];h[e>>2]=r;a=e+12|0;i=h[a>>2]|0;t=c[i>>0]|0;do if(t<<24>>24!=-1){if(!(r&134217728)){i=i+1|0;h[a>>2]=i;c[i>>0]=r>>>19;i=h[e>>2]&524287;h[e>>2]=i;h[n>>2]=8;t=8;break}c[i>>0]=t+1<<24>>24;i=h[a>>2]|0;if((c[i>>0]|0)==-1){t=h[e>>2]&134217727;h[e>>2]=t;i=i+1|0;h[a>>2]=i;c[i>>0]=t>>>20;i=h[e>>2]&1048575;h[e>>2]=i;h[n>>2]=7;t=7;break}else{i=i+1|0;h[a>>2]=i;c[i>>0]=(h[e>>2]|0)>>>19;i=h[e>>2]&524287;h[e>>2]=i;h[n>>2]=8;t=8;break}}else{i=i+1|0;h[a>>2]=i;c[i>>0]=r>>>20;i=h[e>>2]&1048575;h[e>>2]=i;h[n>>2]=7;t=7}while(0);i=i<<t;h[e>>2]=i;t=h[a>>2]|0;r=c[t>>0]|0;do if(r<<24>>24!=-1){if(!(i&134217728)){r=t+1|0;h[a>>2]=r;c[r>>0]=i>>>19;h[e>>2]=h[e>>2]&524287;h[n>>2]=8;break}c[t>>0]=r+1<<24>>24;i=h[a>>2]|0;if((c[i>>0]|0)==-1){t=h[e>>2]&134217727;h[e>>2]=t;r=i+1|0;h[a>>2]=r;c[r>>0]=t>>>20;h[e>>2]=h[e>>2]&1048575;h[n>>2]=7;break}else{r=i+1|0;h[a>>2]=r;c[r>>0]=(h[e>>2]|0)>>>19;h[e>>2]=h[e>>2]&524287;h[n>>2]=8;break}}else{r=t+1|0;h[a>>2]=r;c[r>>0]=i>>>20;h[e>>2]=h[e>>2]&1048575;h[n>>2]=7}while(0);i=h[a>>2]|0;if((c[i>>0]|0)==-1)return;h[a>>2]=i+1;return}function ms(e){e=e|0;h[e>>2]=0;h[e+8>>2]=8;return}function bs(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;t=e+8|0;r=(h[t>>2]|0)+-1|0;h[t>>2]=r;i=(i<<r)+(h[e>>2]|0)|0;h[e>>2]=i;if(r)return;r=e+12|0;n=(h[r>>2]|0)+1|0;h[r>>2]=n;c[n>>0]=i;h[t>>2]=8;h[t>>2]=(c[h[r>>2]>>0]|0)==-1?7:8;h[e>>2]=0;return}function vs(e){e=e|0;h[e+28>>2]=1156;h[e+32>>2]=1156;h[e+36>>2]=1156;h[e+40>>2]=1156;h[e+44>>2]=1156;h[e+48>>2]=1156;h[e+52>>2]=1156;h[e+56>>2]=1156;h[e+60>>2]=1156;h[e+64>>2]=1156;h[e+68>>2]=1156;h[e+72>>2]=1156;h[e+76>>2]=1156;h[e+80>>2]=1156;h[e+84>>2]=1156;h[e+88>>2]=1156;h[e+96>>2]=2628;h[e+92>>2]=1252;h[e+24>>2]=1284;return}function ws(e){e=e|0;h[e+24>>2]=1156;h[e+28>>2]=1156;h[e+32>>2]=1156;h[e+36>>2]=1156;h[e+40>>2]=1156;h[e+44>>2]=1156;h[e+48>>2]=1156;h[e+52>>2]=1156;h[e+56>>2]=1156;h[e+60>>2]=1156;h[e+64>>2]=1156;h[e+68>>2]=1156;h[e+72>>2]=1156;h[e+76>>2]=1156;h[e+80>>2]=1156;h[e+84>>2]=1156;h[e+88>>2]=1156;h[e+92>>2]=1156;h[e+96>>2]=1156;return}function ps(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;h[e+24+(i<<2)>>2]=1156+((r<<1)+t<<4);return}function gs(e){e=e|0;var i=0,t=0;h[e+100>>2]=e+24;h[e+4>>2]=32768;h[e>>2]=0;i=e+8|0;h[i>>2]=12;t=e+12|0;e=(h[t>>2]|0)+-1|0;h[t>>2]=e;if((c[e>>0]|0)!=-1)return;h[i>>2]=13;return}function ks(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;o=e+8|0;i=h[o>>2]|0;r=12-i|0;if((r|0)>0){n=e+12|0;t=h[e>>2]|0;do{i=t<<i;h[e>>2]=i;h[o>>2]=0;t=h[n>>2]|0;a=c[t>>0]|0;do if(a<<24>>24!=-1){if(!(i&134217728)){t=t+1|0;h[n>>2]=t;c[t>>0]=i>>>19;t=h[e>>2]&524287;h[e>>2]=t;h[o>>2]=8;i=8;break}c[t>>0]=a+1<<24>>24;i=h[n>>2]|0;if((c[i>>0]|0)==-1){a=h[e>>2]&134217727;h[e>>2]=a;t=i+1|0;h[n>>2]=t;c[t>>0]=a>>>20;t=h[e>>2]&1048575;h[e>>2]=t;h[o>>2]=7;i=7;break}else{t=i+1|0;h[n>>2]=t;c[t>>0]=(h[e>>2]|0)>>>19;t=h[e>>2]&524287;h[e>>2]=t;h[o>>2]=8;i=8;break}}else{t=t+1|0;h[n>>2]=t;c[t>>0]=i>>>20;t=h[e>>2]&1048575;h[e>>2]=t;h[o>>2]=7;i=7}while(0);r=r-i|0}while((r|0)>0)}else n=e+12|0;i=h[n>>2]|0;t=c[i>>0]|0;if(t<<24>>24==-1)return;r=h[e>>2]|0;if(!(r&134217728)){a=i+1|0;h[n>>2]=a;c[a>>0]=r>>>19;h[e>>2]=h[e>>2]&524287;h[o>>2]=8;return}c[i>>0]=t+1<<24>>24;i=h[n>>2]|0;if((c[i>>0]|0)==-1){r=h[e>>2]&134217727;h[e>>2]=r;a=i+1|0;h[n>>2]=a;c[a>>0]=r>>>20;h[e>>2]=h[e>>2]&1048575;h[o>>2]=7;return}else{a=i+1|0;h[n>>2]=a;c[a>>0]=(h[e>>2]|0)>>>19;h[e>>2]=h[e>>2]&524287;h[o>>2]=8;return}}function _s(e){e=e|0;h[e+100>>2]=e+96;ds(e,1);ds(e,0);ds(e,1);ds(e,0);return}function ys(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;h[e+100>>2]=e+24;h[e+16>>2]=i;h[e+20>>2]=i+t;n=e+12|0;h[n>>2]=i;do if(t){a=m[i>>0]<<16;h[e>>2]=a;r=i+1|0;if((t|0)==1)t=255;else t=m[r>>0]|0;if((c[i>>0]|0)!=-1){h[n>>2]=r;r=a|t<<8;h[e>>2]=r;t=e+8|0;h[t>>2]=8;n=e;a=1;break}if(t>>>0>143){r=a|65280;h[e>>2]=r;t=e+8|0;h[t>>2]=8;n=e;a=1;break}else{h[n>>2]=r;r=a+(t<<9)|0;h[e>>2]=r;t=e+8|0;h[t>>2]=7;n=e;a=0;break}}else{h[e>>2]=16776960;t=e+8|0;h[t>>2]=8;r=16776960;n=e;a=1}while(0);h[n>>2]=r<<7;h[t>>2]=a;h[e+4>>2]=32768;return 1}function Ts(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;t=h[e+100>>2]|0;r=h[t>>2]|0;o=h[r>>2]|0;u=e+4|0;a=(h[u>>2]|0)-o|0;h[u>>2]=a;n=h[e>>2]|0;if(n>>>16>>>0<o>>>0){h[u>>2]=o;i=h[r+4>>2]|0;if(a>>>0<o>>>0)h[t>>2]=h[r+8>>2];else{h[t>>2]=h[r+12>>2];i=1-i|0}s=e+8|0;f=e+12|0;l=e+20|0;r=h[s>>2]|0;t=n;do{do if(!r){n=h[f>>2]|0;r=h[l>>2]|0;if((n|0)==(r|0)){t=t+65280|0;h[e>>2]=t;h[s>>2]=8;r=8;break}a=n+1|0;if((a|0)==(r|0))r=255;else r=m[a>>0]|0;if((c[n>>0]|0)!=-1){h[f>>2]=a;t=t+(r<<8)|0;h[e>>2]=t;h[s>>2]=8;r=8;break}if(r>>>0>143){t=t+65280|0;h[e>>2]=t;h[s>>2]=8;r=8;break}else{h[f>>2]=a;t=t+(r<<9)|0;h[e>>2]=t;h[s>>2]=7;r=7;break}}while(0);o=o<<1;h[u>>2]=o;t=t<<1;h[e>>2]=t;r=r+-1|0;h[s>>2]=r}while(o>>>0<32768);return i|0}n=n-(o<<16)|0;h[e>>2]=n;if(a&32768){e=h[r+4>>2]|0;return e|0}i=h[r+4>>2]|0;if(o>>>0>a>>>0){h[t>>2]=h[r+12>>2];i=1-i|0}else h[t>>2]=h[r+8>>2];s=e+8|0;f=e+12|0;l=e+20|0;r=h[s>>2]|0;t=n;o=a;do{do if(!r){n=h[f>>2]|0;r=h[l>>2]|0;if((n|0)==(r|0)){t=t+65280|0;h[e>>2]=t;h[s>>2]=8;r=8;break}a=n+1|0;if((a|0)==(r|0))r=255;else r=m[a>>0]|0;if((c[n>>0]|0)!=-1){h[f>>2]=a;t=t+(r<<8)|0;h[e>>2]=t;h[s>>2]=8;r=8;break}if(r>>>0>143){t=t+65280|0;h[e>>2]=t;h[s>>2]=8;r=8;break}else{h[f>>2]=a;t=t+(r<<9)|0;h[e>>2]=t;h[s>>2]=7;r=7;break}}while(0);o=o<<1;h[u>>2]=o;t=t<<1;h[e>>2]=t;r=r+-1|0;h[s>>2]=r}while(o>>>0<32768);return i|0}function Ms(){return Gn(28)|0}function Cs(e){e=e|0;if(!e)return;Qn(e);return}function xs(e,i,t){e=e|0;i=i|0;t=t|0;h[e+20>>2]=i;h[e+8>>2]=t;h[e+12>>2]=0;c[e>>0]=0;h[e+4>>2]=0;return}function Es(e){e=e|0;var i=0,t=0,r=0,n=0,a=0;n=e+4|0;i=h[n>>2]|0;do if(!i){h[n>>2]=8;t=e+12|0;r=h[t>>2]|0;if((r|0)==(h[e+8>>2]|0)){c[e>>0]=-1;i=8;t=-1;break}if((c[e>>0]|0)==-1){h[n>>2]=7;i=7}else i=8;a=c[(h[e+20>>2]|0)+r>>0]|0;c[e>>0]=a;h[t>>2]=r+1;t=a}else t=c[e>>0]|0;while(0);a=i+-1|0;h[n>>2]=a;return(t&255)>>>a&1|0}function Ss(){var e=0;if(!(h[665]|0))e=2712;else{e=(He()|0)+60|0;e=h[e>>2]|0}return e|0}function As(e){e=e|0;var i=0,t=0;i=0;while(1){if((m[22217+i>>0]|0)==(e|0)){t=2;break}i=i+1|0;if((i|0)==87){i=87;e=22305;t=5;break}}if((t|0)==2)if(!i)e=22305;else{e=22305;t=5}if((t|0)==5)while(1){t=e;while(1){e=t+1|0;if(!(c[t>>0]|0))break;else t=e}i=i+-1|0;if(!i)break;else t=5}return e|0}function Ps(e){e=e|0;var i=0;if(e>>>0>4294963200){i=Ss()|0;h[i>>2]=0-e;e=-1}return e|0}function Is(e,i){e=+e;i=i|0;var t=0,r=0,n=0;p[y>>3]=e;t=h[y>>2]|0;r=h[y+4>>2]|0;n=Gf(t|0,r|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0){e=+Is(e*0x10000000000000000,i);t=(h[i>>2]|0)+-64|0}else t=0;h[i>>2]=t;break}case 2047:break;default:{h[i>>2]=n+-1022;h[y>>2]=t;h[y+4>>2]=r&-2146435073|1071644672;e=+p[y>>3]}}return+e}function Ls(e,i){e=+e;i=i|0;return+ +Is(e,i)}function Ds(e,i){e=+e;i=i|0;return+ +Bs(e,i)}function Rs(e){e=+e;return~~+Os(e)|0}function Os(e){e=+e;var i=0;i=(w[y>>2]=e,h[y>>2]|0);if((i&2130706432)>>>0<=1249902592){i=(i|0)<0;e=i?e+-8388608+8388608:e+8388608+-8388608;if(e==0)e=i?-0:0}return+e}function Bs(e,i){e=+e;i=i|0;var t=0;if((i|0)>1023){e=e*8.98846567431158e307;t=i+-1023|0;if((t|0)>1023){t=i+-2046|0;t=(t|0)>1023?1023:t;e=e*8.98846567431158e307}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;t=i+1022|0;if((t|0)<-1022){t=i+2044|0;t=(t|0)<-1022?-1022:t;e=e*2.2250738585072014e-308}}else t=i;t=qf(t+1023|0,0,52)|0;i=H;h[y>>2]=t;h[y+4>>2]=i;return+(e*+p[y>>3])}function Ns(e,i,t){e=e|0;i=i|0;t=t|0;do if(e){if(i>>>0<128){c[e>>0]=i;e=1;break}if(i>>>0<2048){c[e>>0]=i>>>6|192;c[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){c[e>>0]=i>>>12|224;c[e+1>>0]=i>>>6&63|128;c[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){c[e>>0]=i>>>18|240;c[e+1>>0]=i>>>12&63|128;c[e+2>>0]=i>>>6&63|128;c[e+3>>0]=i&63|128;e=4;break}else{e=Ss()|0;h[e>>2]=84;e=-1;break}}else e=1;while(0);return e|0}function Fs(e,i){e=e|0;i=i|0;if(!e)e=0;else e=Ns(e,i,0)|0;return e|0}function Us(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;d=k;k=k+112|0;u=d+40|0;f=d+24|0;s=d+16|0;n=d;l=d+52|0;r=c[i>>0]|0;if(gf(24109,r<<24>>24,4)|0){t=Df(1144)|0;if(!t)t=0;else{a=t;o=a+112|0;do{h[a>>2]=0;a=a+4|0}while((a|0)<(o|0));if(!(_f(i,43)|0))h[t>>2]=r<<24>>24==114?8:4;if(_f(i,101)|0){h[n>>2]=e;h[n+4>>2]=2;h[n+8>>2]=1;Ae(221,n|0)|0;r=c[i>>0]|0}if(r<<24>>24==97){h[s>>2]=e;h[s+4>>2]=3;r=Ae(221,s|0)|0;if(!(r&1024)){h[f>>2]=e;h[f+4>>2]=4;h[f+8>>2]=r|1024;Ae(221,f|0)|0}i=h[t>>2]|128;h[t>>2]=i}else i=h[t>>2]|0;h[t+60>>2]=e;h[t+44>>2]=t+120;h[t+48>>2]=1024;r=t+75|0;c[r>>0]=-1;if((i&8|0)==0?(h[u>>2]=e,h[u+4>>2]=21505,h[u+8>>2]=l,(Ye(54,u|0)|0)==0):0)c[r>>0]=10;h[t+32>>2]=60;h[t+36>>2]=61;h[t+40>>2]=3;h[t+12>>2]=1;if(!(h[666]|0))h[t+76>>2]=-1;We(2688);r=h[671]|0;h[t+56>>2]=r;if(r)h[r+52>>2]=t;h[671]=t;Ve(2688)}}else{t=Ss()|0;h[t>>2]=22;t=0}k=d;return t|0}function Hs(e){e=e|0;var i=0,t=0,r=0;t=(_f(e,43)|0)==0;i=c[e>>0]|0;t=t?i<<24>>24!=114&1:2;r=(_f(e,120)|0)==0;t=r?t:t|128;e=(_f(e,101)|0)==0;e=e?t:t|524288;e=i<<24>>24==114?e:e|64;e=i<<24>>24==119?e|512:e;return(i<<24>>24==97?e|1024:e)|0}function zs(e){e=e|0;return 0}function js(e){e=e|0;return}function Ys(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;o=i&255;c[s>>0]=o;r=e+16|0;n=h[r>>2]|0;if(!n)if(!($s(e)|0)){n=h[r>>2]|0;a=4}else t=-1;else a=4;do if((a|0)==4){r=e+20|0;a=h[r>>2]|0;if(a>>>0<n>>>0?(t=i&255,(t|0)!=(c[e+75>>0]|0)):0){h[r>>2]=a+1;c[a>>0]=o;break}if((Pl[h[e+36>>2]&63](e,s,1)|0)==1)t=m[s>>0]|0;else t=-1}while(0);k=f;return t|0}function Vs(e){e=e|0;var i=0,t=0;i=k;k=k+16|0;t=i;h[t>>2]=h[e+60>>2];e=Ps(Ge(6,t|0)|0)|0;k=i;return e|0}function qs(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;l=k;k=k+48|0;a=l+16|0;n=l;r=l+32|0;h[r>>2]=i;o=r+4|0;f=e+48|0;u=h[f>>2]|0;h[o>>2]=t-((u|0)!=0&1);s=e+44|0;h[r+8>>2]=h[s>>2];h[r+12>>2]=u;if(!(h[665]|0)){h[a>>2]=h[e+60>>2];h[a+4>>2]=r;h[a+8>>2]=2;r=Ps(Je(145,a|0)|0)|0}else{Le(5,e|0);h[n>>2]=h[e+60>>2];h[n+4>>2]=r;h[n+8>>2]=2;r=Ps(Je(145,n|0)|0)|0;Se(0)}if((r|0)>=1){o=h[o>>2]|0;if(r>>>0>o>>>0){a=h[s>>2]|0;n=e+4|0;h[n>>2]=a;h[e+8>>2]=a+(r-o);if(!(h[f>>2]|0))r=t;else{h[n>>2]=a+1;c[i+(t+-1)>>0]=c[a>>0]|0;r=t}}}else{h[e>>2]=h[e>>2]|r&48^16;h[e+8>>2]=0;h[e+4>>2]=0}k=l;return r|0}function Ws(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+32|0;a=n;r=n+20|0;h[a>>2]=h[e+60>>2];h[a+4>>2]=0;h[a+8>>2]=i;h[a+12>>2]=r;h[a+16>>2]=t;if((Ps($e(140,a|0)|0)|0)<0){h[r>>2]=-1;e=-1}else e=h[r>>2]|0;k=n;return e|0}function Gs(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;b=k;k=k+48|0;c=b+16|0;u=b;r=b+32|0;d=e+28|0;n=h[d>>2]|0;h[r>>2]=n;m=e+20|0;n=(h[m>>2]|0)-n|0;h[r+4>>2]=n;h[r+8>>2]=i;h[r+12>>2]=t;f=e+60|0;l=e+44|0;i=2;n=n+t|0;while(1){if(!(h[665]|0)){h[c>>2]=h[f>>2];h[c+4>>2]=r;h[c+8>>2]=i;o=Ps(Qe(146,c|0)|0)|0}else{Le(6,e|0);h[u>>2]=h[f>>2];h[u+4>>2]=r;h[u+8>>2]=i;o=Ps(Qe(146,u|0)|0)|0;Se(0)}if((n|0)==(o|0)){n=6;break}if((o|0)<0){n=8;break}n=n-o|0;a=h[r+4>>2]|0;if(o>>>0<=a>>>0)if((i|0)==2){h[d>>2]=(h[d>>2]|0)+o;s=a;i=2}else s=a;else{s=h[l>>2]|0;h[d>>2]=s;h[m>>2]=s;s=h[r+12>>2]|0;o=o-a|0;r=r+8|0;i=i+-1|0}h[r>>2]=(h[r>>2]|0)+o;h[r+4>>2]=s-o}if((n|0)==6){c=h[l>>2]|0;h[e+16>>2]=c+(h[e+48>>2]|0);e=c;h[d>>2]=e;h[m>>2]=e}else if((n|0)==8){h[e+16>>2]=0;h[d>>2]=0;h[m>>2]=0;h[e>>2]=h[e>>2]|32;if((i|0)==2)t=0;else t=t-(h[r+4>>2]|0)|0}k=b;return t|0}function Xs(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=k;k=k+80|0;r=n;h[e+36>>2]=61;if((h[e>>2]&64|0)==0?(h[r>>2]=h[e+60>>2],h[r+4>>2]=21505,h[r+8>>2]=n+12,(Ye(54,r|0)|0)!=0):0)c[e+75>>0]=-1;r=Gs(e,i,t)|0;k=n;return r|0}function Ks(e){e=e|0;var i=0,t=0;i=e+74|0;t=c[i>>0]|0;c[i>>0]=t+255|t;i=e+20|0;t=e+44|0;if((h[i>>2]|0)>>>0>(h[t>>2]|0)>>>0)Pl[h[e+36>>2]&63](e,0,0)|0;h[e+16>>2]=0;h[e+28>>2]=0;h[i>>2]=0;i=h[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{h[e>>2]=i|32;i=-1}else{i=h[t>>2]|0;h[e+8>>2]=i;h[e+4>>2]=i;i=0}return i|0}function $s(e){e=e|0;var i=0,t=0;i=e+74|0;t=c[i>>0]|0;c[i>>0]=t+255|t;i=h[e>>2]|0;if(!(i&8)){h[e+8>>2]=0;h[e+4>>2]=0;i=h[e+44>>2]|0;h[e+28>>2]=i;h[e+20>>2]=i;h[e+16>>2]=i+(h[e+48>>2]|0);i=0}else{h[e>>2]=i|32;i=-1}return i|0}function Js(e){e=e|0;var i=0,t=0,r=0;r=(h[e>>2]&1|0)!=0;if(!r){We(2688);t=h[e+52>>2]|0;i=e+56|0;if(t)h[t+56>>2]=h[i>>2];i=h[i>>2]|0;if(i)h[i+52>>2]=t;if((h[671]|0)==(e|0))h[671]=i;Ve(2688)}i=Qs(e)|0;i=Ol[h[e+12>>2]&15](e)|0|i;t=h[e+92>>2]|0;if(t)Rf(t);if(!r)Rf(e);return i|0}function Qs(e){e=e|0;var i=0,t=0;do if(e){if((h[e+76>>2]|0)<=-1){i=Ef(e)|0;break}t=(zs(e)|0)==0;i=Ef(e)|0;if(!t)js(e)}else{if(!(h[677]|0))i=0;else i=Qs(h[677]|0)|0;We(2688);e=h[671]|0;if(e)do{if((h[e+76>>2]|0)>-1)t=zs(e)|0;else t=0;if((h[e+20>>2]|0)>>>0>(h[e+28>>2]|0)>>>0)i=Ef(e)|0|i;if(t)js(e);e=h[e+56>>2]|0}while((e|0)!=0);Ve(2688)}while(0);return i|0}function Zs(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;n=k;k=k+32|0;r=n+16|0;t=n;if(gf(24109,c[i>>0]|0,4)|0){a=Hs(i)|0|32768;h[t>>2]=e;h[t+4>>2]=a;h[t+8>>2]=438;t=Ps(Xe(5,t|0)|0)|0;if((t|0)>=0){e=Us(t,i)|0;if(!e){h[r>>2]=t;Ge(6,r|0)|0;e=0}}else e=0}else{e=Ss()|0;h[e>>2]=22;e=0}k=n;return e|0}function ef(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=k;k=k+16|0;n=r;h[n>>2]=t;t=vf(e,i,n)|0;k=r;return t|0}function tf(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0;if((h[i+76>>2]|0)>=0?(zs(i)|0)!=0:0){if((c[i+75>>0]|0)!=(e|0)?(r=i+20|0,n=h[r>>2]|0,n>>>0<(h[i+16>>2]|0)>>>0):0){h[r>>2]=n+1;c[n>>0]=e;t=e&255}else t=Ys(i,e)|0;js(i)}else o=3;do if((o|0)==3){if((c[i+75>>0]|0)!=(e|0)?(a=i+20|0,t=h[a>>2]|0,t>>>0<(h[i+16>>2]|0)>>>0):0){h[a>>2]=t+1;c[t>>0]=e;t=e&255;break}t=Ys(i,e)|0}while(0);return t|0}function rf(e,i){e=e|0;i=i|0;return(df(e,Mf(e)|0,1,i)|0)+-1|0}function nf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;s=ue(t,i)|0;if((h[r+76>>2]|0)>-1)f=zs(r)|0;else f=0;n=r+74|0;a=c[n>>0]|0;c[n>>0]=a+255|a;n=r+4|0;a=h[n>>2]|0;o=(h[r+8>>2]|0)-a|0;if((o|0)>0){o=o>>>0<s>>>0?o:s;Xf(e|0,a|0,o|0)|0;h[n>>2]=a+o;e=e+o|0;n=s-o|0}else n=s;e:do if(!n)l=13;else{o=r+32|0;a=n;while(1){if(Ks(r)|0){t=a;break}n=Pl[h[o>>2]&63](r,e,a)|0;if((n+1|0)>>>0<2){t=a;break}if((a|0)==(n|0)){l=13;break e}else{e=e+n|0;a=a-n|0}}if(f)js(r);t=((s-t|0)>>>0)/(i>>>0)|0}while(0);if((l|0)==13)if(f)js(r);return t|0}function af(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;if((t|0)==1)i=i-(h[e+8>>2]|0)+(h[e+4>>2]|0)|0;n=e+20|0;r=e+28|0;if((h[n>>2]|0)>>>0>(h[r>>2]|0)>>>0?(Pl[h[e+36>>2]&63](e,0,0)|0,(h[n>>2]|0)==0):0)i=-1;else{h[e+16>>2]=0;h[r>>2]=0;h[n>>2]=0;if((Pl[h[e+40>>2]&63](e,i,t)|0)<0)i=-1;else{h[e+8>>2]=0;h[e+4>>2]=0;h[e>>2]=h[e>>2]&-17;i=0}}return i|0}function of(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if((h[e+76>>2]|0)>-1){r=(zs(e)|0)==0;i=af(e,i,t)|0;if(!r)js(e)}else i=af(e,i,t)|0;return i|0}function sf(e,i,t){e=e|0;i=i|0;t=t|0;return of(e,i,t)|0}function ff(e){e=e|0;var i=0;if(!(h[e>>2]&128))i=1;else i=(h[e+20>>2]|0)>>>0>(h[e+28>>2]|0)>>>0?2:1;i=Pl[h[e+40>>2]&63](e,0,i)|0;if((i|0)>=0)i=i-(h[e+8>>2]|0)+(h[e+4>>2]|0)+(h[e+20>>2]|0)-(h[e+28>>2]|0)|0;return i|0}function lf(e){e=e|0;var i=0;if((h[e+76>>2]|0)>-1){i=(zs(e)|0)==0;e=ff(e)|0}else e=ff(e)|0;return e|0}function uf(e){e=e|0;return lf(e)|0}function cf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;r=t+16|0;n=h[r>>2]|0;if(!n)if(!($s(t)|0)){n=h[r>>2]|0;a=4}else r=0;else a=4;e:do if((a|0)==4){o=t+20|0;a=h[o>>2]|0;if((n-a|0)>>>0<i>>>0){r=Pl[h[t+36>>2]&63](t,e,i)|0;break}i:do if((c[t+75>>0]|0)>-1){r=i;while(1){if(!r){n=a;r=0;break i}n=r+-1|0;if((c[e+n>>0]|0)==10)break;else r=n}if((Pl[h[t+36>>2]&63](t,e,r)|0)>>>0<r>>>0)break e;i=i-r|0;e=e+r|0;n=h[o>>2]|0}else{n=a;r=0}while(0);Xf(n|0,e|0,i|0)|0;h[o>>2]=(h[o>>2]|0)+i;r=r+i|0}while(0);return r|0}function df(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=ue(t,i)|0;if((h[r+76>>2]|0)>-1){a=(zs(r)|0)==0;e=cf(e,n,r)|0;if(!a)js(r)}else e=cf(e,n,r)|0;if((e|0)!=(n|0))t=(e>>>0)/(i>>>0)|0;return t|0}function hf(e,i){e=e|0;i=i|0;var t=0,r=0;t=k;k=k+16|0;r=t;h[r>>2]=i;i=vf(h[676]|0,e,r)|0;k=t;return i|0}function mf(e){e=e|0;var i=0,t=0,r=0,n=0;r=h[676]|0;if((h[r+76>>2]|0)>-1)n=zs(r)|0;else n=0;do if((rf(e,r)|0)<0)i=1;else{if((c[r+75>>0]|0)!=10?(i=r+20|0,t=h[i>>2]|0,t>>>0<(h[r+16>>2]|0)>>>0):0){h[i>>2]=t+1;c[t>>0]=10;i=0;break}i=(Ys(r,10)|0)<0}while(0);if(n)js(r);return i<<31>>31|0}function bf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=k;k=k+16|0;n=r;h[n>>2]=t;t=pf(e,i,n)|0;k=r;return t|0}function vf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+224|0;d=w+80|0;v=w+96|0;b=w;m=w+136|0;r=v;n=r+40|0;do{h[r>>2]=0;r=r+4|0}while((r|0)<(n|0));h[d>>2]=h[t>>2];if((Sf(0,i,d,b,v)|0)<0)t=-1;else{if((h[e+76>>2]|0)>-1)l=zs(e)|0;else l=0;t=h[e>>2]|0;u=t&32;if((c[e+74>>0]|0)<1)h[e>>2]=t&-33;t=e+48|0;if(!(h[t>>2]|0)){n=e+44|0;a=h[n>>2]|0;h[n>>2]=m;o=e+28|0;h[o>>2]=m;s=e+20|0;h[s>>2]=m;h[t>>2]=80;f=e+16|0;h[f>>2]=m+80;r=Sf(e,i,d,b,v)|0;if(a){Pl[h[e+36>>2]&63](e,0,0)|0;r=(h[s>>2]|0)==0?-1:r;h[n>>2]=a;h[t>>2]=0;h[f>>2]=0;h[o>>2]=0;h[s>>2]=0}}else r=Sf(e,i,d,b,v)|0;t=h[e>>2]|0;h[e>>2]=t|u;if(l)js(e);t=(t&32|0)==0?r:-1}k=w;return t|0}function wf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+128|0;n=u+112|0;l=u;a=l;o=2716;s=a+112|0;do{h[a>>2]=h[o>>2];a=a+4|0;o=o+4|0}while((a|0)<(s|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;f=4}else{i=Ss()|0;h[i>>2]=75;i=-1}else{n=e;f=4}if((f|0)==4){f=-2-n|0;f=i>>>0>f>>>0?f:i;h[l+48>>2]=f;e=l+20|0;h[e>>2]=n;h[l+44>>2]=n;i=n+f|0;n=l+16|0;h[n>>2]=i;h[l+28>>2]=i;i=vf(l,t,r)|0;if(f){t=h[e>>2]|0;c[t+(((t|0)==(h[n>>2]|0))<<31>>31)>>0]=0}}k=u;return i|0}function pf(e,i,t){e=e|0;i=i|0;t=t|0;return wf(e,2147483647,i,t)|0}function gf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=i&255;r=(t|0)!=0;e:do if(r&(e&3|0)!=0){n=i&255;while(1){if((c[e>>0]|0)==n<<24>>24){o=6;break e}e=e+1|0;t=t+-1|0;r=(t|0)!=0;if(!(r&(e&3|0)!=0)){o=5;break}}}else o=5;while(0);if((o|0)==5)if(r)o=6;else t=0;e:do if((o|0)==6){n=i&255;if((c[e>>0]|0)!=n<<24>>24){r=ue(a,16843009)|0;i:do if(t>>>0>3)while(1){a=h[e>>2]^r;if((a&-2139062144^-2139062144)&a+-16843009)break;e=e+4|0;t=t+-4|0;if(t>>>0<=3){o=11;break i}}else o=11;while(0);if((o|0)==11)if(!t){t=0;break}while(1){if((c[e>>0]|0)==n<<24>>24)break e;e=e+1|0;t=t+-1|0;if(!t){t=0;break}}}}while(0);return((t|0)!=0?e:0)|0}function kf(e,i){e=e|0;i=i|0;var t=0,r=0;t=i;e:do if(!((t^e)&3)){if(t&3)do{t=c[i>>0]|0;c[e>>0]=t;if(!(t<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);t=h[i>>2]|0;if(!((t&-2139062144^-2139062144)&t+-16843009)){r=e;while(1){i=i+4|0;e=r+4|0;h[r>>2]=t;t=h[i>>2]|0;if((t&-2139062144^-2139062144)&t+-16843009)break;else r=e}}r=8}else r=8;while(0);if((r|0)==8){r=c[i>>0]|0;c[e>>0]=r;if(r<<24>>24)do{i=i+1|0;e=e+1|0;r=c[i>>0]|0;c[e>>0]=r}while(r<<24>>24!=0)}return e|0}function _f(e,i){e=e|0;i=i|0;e=yf(e,i)|0;return((c[e>>0]|0)==(i&255)<<24>>24?e:0)|0}function yf(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;r=i&255;e:do if(!r)e=e+(Mf(e)|0)|0;else{if(e&3){t=i&255;do{n=c[e>>0]|0;if(n<<24>>24==0?1:n<<24>>24==t<<24>>24)break e;e=e+1|0}while((e&3|0)!=0)}r=ue(r,16843009)|0;t=h[e>>2]|0;i:do if(!((t&-2139062144^-2139062144)&t+-16843009))do{n=t^r;if((n&-2139062144^-2139062144)&n+-16843009)break i;e=e+4|0;t=h[e>>2]|0}while(((t&-2139062144^-2139062144)&t+-16843009|0)==0);while(0);t=i&255;while(1){n=c[e>>0]|0;if(n<<24>>24==0?1:n<<24>>24==t<<24>>24)break;else e=e+1|0}}while(0);return e|0}function Tf(e,i){e=e|0;i=i|0;kf(e,i)|0;return e|0}function Mf(e){e=e|0;var i=0,t=0,r=0;r=e;e:do if(!(r&3))t=4;else{i=e;e=r;while(1){if(!(c[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;t=4;break}}}while(0);if((t|0)==4){while(1){i=h[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do e=e+1|0;while((c[e>>0]|0)!=0)}return e-r|0}function Cf(e){e=e|0;if(!(h[e+68>>2]|0))js(e);return}function xf(e){e=e|0;if(!(h[e+68>>2]|0))js(e);return}function Ef(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;i=e+20|0;a=e+28|0;if((h[i>>2]|0)>>>0>(h[a>>2]|0)>>>0?(Pl[h[e+36>>2]&63](e,0,0)|0,(h[i>>2]|0)==0):0)i=-1;else{o=e+4|0;t=h[o>>2]|0;r=e+8|0;n=h[r>>2]|0;if(t>>>0<n>>>0)Pl[h[e+40>>2]&63](e,t-n|0,1)|0;h[e+16>>2]=0;h[a>>2]=0;h[i>>2]=0;h[r>>2]=0;h[o>>2]=0;i=0}return i|0}function Sf(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,b=0,v=0,w=0,g=0,_=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0;oe=k;k=k+624|0;ie=oe+24|0;re=oe+16|0;te=oe+588|0;$=oe+576|0;ee=oe;G=oe+536|0;ae=oe+8|0;ne=oe+528|0;N=(e|0)!=0;F=G+40|0;W=F;G=G+39|0;X=ae+4|0;K=$+12|0;$=$+11|0;J=te;Q=K;Z=Q-J|0;U=-2-J|0;z=Q+2|0;j=ie+288|0;Y=te+9|0;V=Y;q=te+8|0;a=0;_=i;o=0;i=0;e:while(1){do if((a|0)>-1)if((o|0)>(2147483647-a|0)){a=Ss()|0;h[a>>2]=75;a=-1;break}else{a=o+a|0;break}while(0);o=c[_>>0]|0;if(!(o<<24>>24)){B=245;break}else s=_;i:while(1){switch(o<<24>>24){case 37:{o=s;B=9;break i}case 0:{o=s;break i}default:{}}O=s+1|0;o=c[O>>0]|0;s=O}i:do if((B|0)==9)while(1){B=0;if((c[o+1>>0]|0)!=37)break i;s=s+1|0;o=o+2|0;if((c[o>>0]|0)==37)B=9;else break}while(0);M=s-_|0;if(N?(h[e>>2]&32|0)==0:0)cf(_,M,e)|0;if((s|0)!=(_|0)){_=o;o=M;continue}u=o+1|0;s=c[u>>0]|0;f=(s<<24>>24)+-48|0;if(f>>>0<10){O=(c[o+2>>0]|0)==36;u=O?o+3|0:u;s=c[u>>0]|0;w=O?f:-1;i=O?1:i}else w=-1;o=s<<24>>24;i:do if((o&-32|0)==32){f=0;while(1){if(!(1<<o+-32&75913)){b=f;o=u;break i}f=1<<(s<<24>>24)+-32|f;u=u+1|0;s=c[u>>0]|0;o=s<<24>>24;if((o&-32|0)!=32){b=f;o=u;break}}}else{b=0;o=u}while(0);do if(s<<24>>24==42){f=o+1|0;s=(c[f>>0]|0)+-48|0;if(s>>>0<10?(c[o+2>>0]|0)==36:0){h[n+(s<<2)>>2]=10;i=1;o=o+3|0;s=h[r+((c[f>>0]|0)+-48<<3)>>2]|0}else{if(i){a=-1;break e}if(!N){T=b;o=f;i=0;O=0;break}i=(h[t>>2]|0)+(4-1)&~(4-1);s=h[i>>2]|0;h[t>>2]=i+4;i=0;o=f}if((s|0)<0){T=b|8192;O=0-s|0}else{T=b;O=s}}else{f=(s<<24>>24)+-48|0;if(f>>>0<10){s=0;do{s=(s*10|0)+f|0;o=o+1|0;f=(c[o>>0]|0)+-48|0}while(f>>>0<10);if((s|0)<0){a=-1;break e}else{T=b;O=s}}else{T=b;O=0}}while(0);i:do if((c[o>>0]|0)==46){f=o+1|0;s=c[f>>0]|0;if(s<<24>>24!=42){u=(s<<24>>24)+-48|0;if(u>>>0<10){o=f;s=0}else{o=f;u=0;break}while(1){s=(s*10|0)+u|0;o=o+1|0;u=(c[o>>0]|0)+-48|0;if(u>>>0>=10){u=s;break i}}}f=o+2|0;s=(c[f>>0]|0)+-48|0;if(s>>>0<10?(c[o+3>>0]|0)==36:0){h[n+(s<<2)>>2]=10;o=o+4|0;u=h[r+((c[f>>0]|0)+-48<<3)>>2]|0;break}if(i){a=-1;break e}if(N){o=(h[t>>2]|0)+(4-1)&~(4-1);u=h[o>>2]|0;h[t>>2]=o+4;o=f}else{o=f;u=0}}else u=-1;while(0);v=0;while(1){s=(c[o>>0]|0)+-65|0;if(s>>>0>57){a=-1;break e}f=o+1|0;s=c[25145+(v*58|0)+s>>0]|0;b=s&255;if((b+-1|0)>>>0<8){o=f;v=b}else{R=f;break}}if(!(s<<24>>24)){a=-1;break}f=(w|0)>-1;do if(s<<24>>24==19)if(f){a=-1;break e}else B=52;else{if(f){h[n+(w<<2)>>2]=b;L=r+(w<<3)|0;D=h[L+4>>2]|0;B=ee;h[B>>2]=h[L>>2];h[B+4>>2]=D;B=52;break}if(!N){a=0;break e}Pf(ee,b,t)}while(0);if((B|0)==52?(B=0,!N):0){_=R;o=M;continue}w=c[o>>0]|0;w=(v|0)!=0&(w&15|0)==3?w&-33:w;f=T&-65537;D=(T&8192|0)==0?T:f;i:do switch(w|0){case 110:switch(v|0){case 0:{h[h[ee>>2]>>2]=a;_=R;o=M;continue e}case 1:{h[h[ee>>2]>>2]=a;_=R;o=M;continue e}case 2:{_=h[ee>>2]|0;h[_>>2]=a;h[_+4>>2]=((a|0)<0)<<31>>31;_=R;o=M;continue e}case 3:{d[h[ee>>2]>>1]=a;_=R;o=M;continue e}case 4:{c[h[ee>>2]>>0]=a;_=R;o=M;continue e}case 6:{h[h[ee>>2]>>2]=a;_=R;o=M;continue e}case 7:{_=h[ee>>2]|0;h[_>>2]=a;h[_+4>>2]=((a|0)<0)<<31>>31;_=R;o=M;continue e}default:{_=R;o=M;continue e}}case 112:{v=D|8;u=u>>>0>8?u:8;w=120;B=64;break}case 88:case 120:{v=D;B=64;break}case 111:{f=ee;s=h[f>>2]|0;f=h[f+4>>2]|0;if((s|0)==0&(f|0)==0)o=F;else{o=F;do{o=o+-1|0;c[o>>0]=s&7|48;s=Gf(s|0,f|0,3)|0;f=H}while(!((s|0)==0&(f|0)==0))}if(!(D&8)){s=D;v=0;b=25625;B=77}else{v=W-o+1|0;s=D;u=(u|0)<(v|0)?v:u;v=0;b=25625;B=77}break}case 105:case 100:{s=ee;o=h[s>>2]|0;s=h[s+4>>2]|0;if((s|0)<0){o=jf(0,0,o|0,s|0)|0;s=H;f=ee;h[f>>2]=o;h[f+4>>2]=s;f=1;b=25625;B=76;break i}if(!(D&2048)){b=D&1;f=b;b=(b|0)==0?25625:25627;B=76}else{f=1;b=25626;B=76}break}case 117:{s=ee;o=h[s>>2]|0;s=h[s+4>>2]|0;f=0;b=25625;B=76;break}case 99:{c[G>>0]=h[ee>>2];_=G;s=1;v=0;w=25625;o=F;break}case 109:{o=Ss()|0;o=As(h[o>>2]|0)|0;B=82;break}case 115:{o=h[ee>>2]|0;o=(o|0)!=0?o:25635;B=82;break}case 67:{h[ae>>2]=h[ee>>2];h[X>>2]=0;h[ee>>2]=ae;u=-1;B=86;break}case 83:{if(!u){Lf(e,32,O,0,D);o=0;B=98}else B=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{l=+p[ee>>3];h[re>>2]=0;p[y>>3]=l;if((h[y+4>>2]|0)>=0)if(!(D&2048)){L=D&1;I=L;L=(L|0)==0?25643:25648}else{I=1;L=25645}else{l=-l;I=1;L=25642}p[y>>3]=l;P=h[y+4>>2]&2146435072;do if(P>>>0<2146435072|(P|0)==2146435072&0<0){g=+Ls(l,re)*2;s=g!=0;if(s)h[re>>2]=(h[re>>2]|0)+-1;S=w|32;if((S|0)==97){_=w&32;M=(_|0)==0?L:L+9|0;T=I|2;o=12-u|0;do if(!(u>>>0>11|(o|0)==0)){l=8;do{o=o+-1|0;l=l*16}while((o|0)!=0);if((c[M>>0]|0)==45){l=-(l+(-g-l));break}else{l=g+l-l;break}}else l=g;while(0);s=h[re>>2]|0;o=(s|0)<0?0-s|0:s;o=If(o,((o|0)<0)<<31>>31,K)|0;if((o|0)==(K|0)){c[$>>0]=48;o=$}c[o+-1>>0]=(s>>31&2)+43;v=o+-2|0;c[v>>0]=w+15;b=(u|0)<1;f=(D&8|0)==0;s=te;while(1){L=~~l;o=s+1|0;c[s>>0]=m[25609+L>>0]|_;l=(l-+(L|0))*16;do if((o-J|0)==1){if(f&(b&l==0))break;c[o>>0]=46;o=s+2|0}while(0);if(!(l!=0))break;else s=o}u=(u|0)!=0&(U+o|0)<(u|0)?z+u-v|0:Z-v+o|0;f=u+T|0;Lf(e,32,O,f,D);if(!(h[e>>2]&32))cf(M,T,e)|0;Lf(e,48,O,f,D^65536);o=o-J|0;if(!(h[e>>2]&32))cf(te,o,e)|0;s=Q-v|0;Lf(e,48,u-(o+s)|0,0,0);if(!(h[e>>2]&32))cf(v,s,e)|0;Lf(e,32,O,f,D^8192);o=(f|0)<(O|0)?O:f;break}o=(u|0)<0?6:u;if(s){s=(h[re>>2]|0)+-28|0;h[re>>2]=s;l=g*268435456}else{l=g;s=h[re>>2]|0}P=(s|0)<0?ie:j;A=P;s=P;do{E=~~l>>>0;h[s>>2]=E;s=s+4|0;l=(l-+(E>>>0))*1e9}while(l!=0);f=s;s=h[re>>2]|0;if((s|0)>0){b=P;while(1){v=(s|0)>29?29:s;u=f+-4|0;do if(u>>>0<b>>>0)u=b;else{s=0;do{E=qf(h[u>>2]|0,0,v|0)|0;E=Wf(E|0,H|0,s|0,0)|0;s=H;x=il(E|0,s|0,1e9,0)|0;h[u>>2]=x;s=el(E|0,s|0,1e9,0)|0;u=u+-4|0}while(u>>>0>=b>>>0);if(!s){u=b;break}u=b+-4|0;h[u>>2]=s}while(0);while(1){if(f>>>0<=u>>>0)break;s=f+-4|0;if(!(h[s>>2]|0))f=s;else break}s=(h[re>>2]|0)-v|0;h[re>>2]=s;if((s|0)>0)b=u;else break}}else u=P;if((s|0)<0){M=((o+25|0)/9|0)+1|0;C=(S|0)==102;_=u;while(1){T=0-s|0;T=(T|0)>9?9:T;do if(_>>>0<f>>>0){s=(1<<T)+-1|0;b=1e9>>>T;u=0;v=_;do{E=h[v>>2]|0;h[v>>2]=(E>>>T)+u;u=ue(E&s,b)|0;v=v+4|0}while(v>>>0<f>>>0);s=(h[_>>2]|0)==0?_+4|0:_;if(!u){u=s;break}h[f>>2]=u;u=s;f=f+4|0}else u=(h[_>>2]|0)==0?_+4|0:_;while(0);s=C?P:u;f=(f-s>>2|0)>(M|0)?s+(M<<2)|0:f;s=(h[re>>2]|0)+T|0;h[re>>2]=s;if((s|0)>=0){_=u;break}else _=u}}else _=u;do if(_>>>0<f>>>0){s=(A-_>>2)*9|0;b=h[_>>2]|0;if(b>>>0<10)break;else u=10;do{u=u*10|0;s=s+1|0}while(b>>>0>=u>>>0)}else s=0;while(0);x=(S|0)==103;E=(o|0)!=0;u=o-((S|0)!=102?s:0)+((E&x)<<31>>31)|0;if((u|0)<(((f-A>>2)*9|0)+-9|0)){v=u+9216|0;C=(v|0)/9|0;u=P+(C+-1023<<2)|0;v=((v|0)%9|0)+1|0;if((v|0)<9){b=10;do{b=b*10|0;v=v+1|0}while((v|0)!=9)}else b=10;T=h[u>>2]|0;M=(T>>>0)%(b>>>0)|0;if((M|0)==0?(P+(C+-1022<<2)|0)==(f|0):0)b=_;else B=163;do if((B|0)==163){B=0;g=(((T>>>0)/(b>>>0)|0)&1|0)==0?9007199254740992:9007199254740994;v=(b|0)/2|0;do if(M>>>0<v>>>0)l=.5;else{if((M|0)==(v|0)?(P+(C+-1022<<2)|0)==(f|0):0){l=1;break}l=1.5}while(0);do if(I){if((c[L>>0]|0)!=45)break;g=-g;l=-l}while(0);v=T-M|0;h[u>>2]=v;if(!(g+l!=g)){b=_;break}S=v+b|0;h[u>>2]=S;if(S>>>0>999999999){s=_;while(1){b=u+-4|0;h[u>>2]=0;if(b>>>0<s>>>0){s=s+-4|0;h[s>>2]=0}S=(h[b>>2]|0)+1|0;h[b>>2]=S;if(S>>>0>999999999)u=b;else{_=s;u=b;break}}}s=(A-_>>2)*9|0;v=h[_>>2]|0;if(v>>>0<10){b=_;break}else b=10;do{b=b*10|0;s=s+1|0}while(v>>>0>=b>>>0);b=_}while(0);S=u+4|0;_=b;f=f>>>0>S>>>0?S:f}M=0-s|0;while(1){if(f>>>0<=_>>>0){C=0;S=f;break}u=f+-4|0;if(!(h[u>>2]|0))f=u;else{C=1;S=f;break}}do if(x){o=(E&1^1)+o|0;if((o|0)>(s|0)&(s|0)>-5){w=w+-1|0;o=o+-1-s|0}else{w=w+-2|0;o=o+-1|0}f=D&8;if(f)break;do if(C){f=h[S+-4>>2]|0;if(!f){u=9;break}if(!((f>>>0)%10|0)){b=10;u=0}else{u=0;break}do{b=b*10|0;u=u+1|0}while(((f>>>0)%(b>>>0)|0|0)==0)}else u=9;while(0);f=((S-A>>2)*9|0)+-9|0;if((w|32|0)==102){f=f-u|0;f=(f|0)<0?0:f;o=(o|0)<(f|0)?o:f;f=0;break}else{f=f+s-u|0;f=(f|0)<0?0:f;o=(o|0)<(f|0)?o:f;f=0;break}}else f=D&8;while(0);T=o|f;b=(T|0)!=0&1;v=(w|32|0)==102;if(v){s=(s|0)>0?s:0;w=0}else{u=(s|0)<0?M:s;u=If(u,((u|0)<0)<<31>>31,K)|0;if((Q-u|0)<2)do{u=u+-1|0;c[u>>0]=48}while((Q-u|0)<2);c[u+-1>>0]=(s>>31&2)+43;A=u+-2|0;c[A>>0]=w;s=Q-A|0;w=A}M=I+1+o+b+s|0;Lf(e,32,O,M,D);if(!(h[e>>2]&32))cf(L,I,e)|0;Lf(e,48,O,M,D^65536);do if(v){u=_>>>0>P>>>0?P:_;s=u;do{f=If(h[s>>2]|0,0,Y)|0;do if((s|0)==(u|0)){if((f|0)!=(Y|0))break;c[q>>0]=48;f=q}else{if(f>>>0<=te>>>0)break;do{f=f+-1|0;c[f>>0]=48}while(f>>>0>te>>>0)}while(0);if(!(h[e>>2]&32))cf(f,V-f|0,e)|0;s=s+4|0}while(s>>>0<=P>>>0);do if(T){if(h[e>>2]&32)break;cf(25677,1,e)|0}while(0);if((o|0)>0&s>>>0<S>>>0){f=s;while(1){s=If(h[f>>2]|0,0,Y)|0;if(s>>>0>te>>>0)do{s=s+-1|0;c[s>>0]=48}while(s>>>0>te>>>0);if(!(h[e>>2]&32))cf(s,(o|0)>9?9:o,e)|0;f=f+4|0;s=o+-9|0;if(!((o|0)>9&f>>>0<S>>>0)){o=s;break}else o=s}}Lf(e,48,o+9|0,9,0)}else{v=C?S:_+4|0;if((o|0)>-1){b=(f|0)==0;u=_;do{s=If(h[u>>2]|0,0,Y)|0;if((s|0)==(Y|0)){c[q>>0]=48;s=q}do if((u|0)==(_|0)){f=s+1|0;if(!(h[e>>2]&32))cf(s,1,e)|0;if(b&(o|0)<1){s=f;break}if(h[e>>2]&32){s=f;break}cf(25677,1,e)|0;s=f}else{if(s>>>0<=te>>>0)break;do{s=s+-1|0;c[s>>0]=48}while(s>>>0>te>>>0)}while(0);f=V-s|0;if(!(h[e>>2]&32))cf(s,(o|0)>(f|0)?f:o,e)|0;o=o-f|0;u=u+4|0}while(u>>>0<v>>>0&(o|0)>-1)}Lf(e,48,o+18|0,18,0);if(h[e>>2]&32)break;cf(w,Q-w|0,e)|0}while(0);Lf(e,32,O,M,D^8192);o=(M|0)<(O|0)?O:M}else{v=(w&32|0)!=0;b=l!=l|0!=0;s=b?0:I;u=s+3|0;Lf(e,32,O,u,f);o=h[e>>2]|0;if(!(o&32)){cf(L,s,e)|0;o=h[e>>2]|0}if(!(o&32))cf(b?v?25669:25673:v?25661:25665,3,e)|0;Lf(e,32,O,u,D^8192);o=(u|0)<(O|0)?O:u}while(0);_=R;continue e}default:{f=D;s=u;v=0;w=25625;o=F}}while(0);i:do if((B|0)==64){f=ee;s=h[f>>2]|0;f=h[f+4>>2]|0;b=w&32;if(!((s|0)==0&(f|0)==0)){o=F;do{o=o+-1|0;c[o>>0]=m[25609+(s&15)>>0]|b;s=Gf(s|0,f|0,4)|0;f=H}while(!((s|0)==0&(f|0)==0));B=ee;if((v&8|0)==0|(h[B>>2]|0)==0&(h[B+4>>2]|0)==0){s=v;v=0;b=25625;B=77}else{s=v;v=2;b=25625+(w>>4)|0;B=77}}else{o=F;s=v;v=0;b=25625;B=77}}else if((B|0)==76){o=If(o,s,F)|0;s=D;v=f;B=77}else if((B|0)==82){B=0;D=gf(o,0,u)|0;L=(D|0)==0;_=o;s=L?u:D-o|0;v=0;w=25625;o=L?o+u|0:D}else if((B|0)==86){B=0;s=0;o=0;b=h[ee>>2]|0;while(1){f=h[b>>2]|0;if(!f)break;o=Fs(ne,f)|0;if((o|0)<0|o>>>0>(u-s|0)>>>0)break;s=o+s|0;if(u>>>0>s>>>0)b=b+4|0;else break}if((o|0)<0){a=-1;break e}Lf(e,32,O,s,D);if(!s){o=0;B=98}else{f=0;u=h[ee>>2]|0;while(1){o=h[u>>2]|0;if(!o){o=s;B=98;break i}o=Fs(ne,o)|0;f=o+f|0;if((f|0)>(s|0)){
o=s;B=98;break i}if(!(h[e>>2]&32))cf(ne,o,e)|0;if(f>>>0>=s>>>0){o=s;B=98;break}else u=u+4|0}}}while(0);if((B|0)==98){B=0;Lf(e,32,O,o,D^8192);_=R;o=(O|0)>(o|0)?O:o;continue}if((B|0)==77){B=0;f=(u|0)>-1?s&-65537:s;s=ee;s=(h[s>>2]|0)!=0|(h[s+4>>2]|0)!=0;if((u|0)!=0|s){s=(s&1^1)+(W-o)|0;_=o;s=(u|0)>(s|0)?u:s;w=b;o=F}else{_=F;s=0;w=b;o=F}}b=o-_|0;s=(s|0)<(b|0)?b:s;u=v+s|0;o=(O|0)<(u|0)?u:O;Lf(e,32,o,u,f);if(!(h[e>>2]&32))cf(w,v,e)|0;Lf(e,48,o,u,f^65536);Lf(e,48,s,b,0);if(!(h[e>>2]&32))cf(_,b,e)|0;Lf(e,32,o,u,f^8192);_=R}e:do if((B|0)==245)if(!e)if(i){a=1;while(1){i=h[n+(a<<2)>>2]|0;if(!i)break;Pf(r+(a<<3)|0,i,t);a=a+1|0;if((a|0)>=10){a=1;break e}}if((a|0)<10)while(1){if(h[n+(a<<2)>>2]|0){a=-1;break e}a=a+1|0;if((a|0)>=10){a=1;break}}else a=1}else a=0;while(0);k=oe;return a|0}function Af(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=e+20|0;n=h[r>>2]|0;e=(h[e+16>>2]|0)-n|0;e=e>>>0>t>>>0?t:e;Xf(n|0,i|0,e|0)|0;h[r>>2]=(h[r>>2]|0)+e;return t|0}function Pf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;e:do if(i>>>0<=20)do switch(i|0){case 9:{r=(h[t>>2]|0)+(4-1)&~(4-1);i=h[r>>2]|0;h[t>>2]=r+4;h[e>>2]=i;break e}case 10:{r=(h[t>>2]|0)+(4-1)&~(4-1);i=h[r>>2]|0;h[t>>2]=r+4;r=e;h[r>>2]=i;h[r+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{r=(h[t>>2]|0)+(4-1)&~(4-1);i=h[r>>2]|0;h[t>>2]=r+4;r=e;h[r>>2]=i;h[r+4>>2]=0;break e}case 12:{r=(h[t>>2]|0)+(8-1)&~(8-1);i=r;n=h[i>>2]|0;i=h[i+4>>2]|0;h[t>>2]=r+8;r=e;h[r>>2]=n;h[r+4>>2]=i;break e}case 13:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;r=(r&65535)<<16>>16;n=e;h[n>>2]=r;h[n+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;n=e;h[n>>2]=r&65535;h[n+4>>2]=0;break e}case 15:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;r=(r&255)<<24>>24;n=e;h[n>>2]=r;h[n+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;n=e;h[n>>2]=r&255;h[n+4>>2]=0;break e}case 17:{n=(h[t>>2]|0)+(8-1)&~(8-1);a=+p[n>>3];h[t>>2]=n+8;p[e>>3]=a;break e}case 18:{n=(h[t>>2]|0)+(8-1)&~(8-1);a=+p[n>>3];h[t>>2]=n+8;p[e>>3]=a;break e}default:break e}while(0);while(0);return}function If(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){r=il(e|0,i|0,10,0)|0;t=t+-1|0;c[t>>0]=r|48;r=el(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=r;i=H}else{e=r;break}}if(e)while(1){t=t+-1|0;c[t>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return t|0}function Lf(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;s=k;k=k+256|0;o=s;do if((t|0)>(r|0)&(n&73728|0)==0){n=t-r|0;Vf(o|0,i|0,(n>>>0>256?256:n)|0)|0;i=h[e>>2]|0;a=(i&32|0)==0;if(n>>>0>255){r=t-r|0;do{if(a){cf(o,256,e)|0;i=h[e>>2]|0}n=n+-256|0;a=(i&32|0)==0}while(n>>>0>255);if(a)n=r&255;else break}else if(!a)break;cf(o,n,e)|0}while(0);k=s;return}function Df(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0;do if(e>>>0<245){m=e>>>0<11?16:e+11&-8;e=m>>>3;s=h[735]|0;t=s>>>e;if(t&3){e=(t&1^1)+e|0;r=e<<1;t=2980+(r<<2)|0;r=2980+(r+2<<2)|0;n=h[r>>2]|0;a=n+8|0;o=h[a>>2]|0;do if((t|0)!=(o|0)){if(o>>>0<(h[739]|0)>>>0)Ie();i=o+12|0;if((h[i>>2]|0)==(n|0)){h[i>>2]=t;h[r>>2]=o;break}else Ie()}else h[735]=s&~(1<<e);while(0);F=e<<3;h[n+4>>2]=F|3;F=n+(F|4)|0;h[F>>2]=h[F>>2]|1;F=a;return F|0}o=h[737]|0;if(m>>>0>o>>>0){if(t){r=2<<e;r=t<<e&(r|0-r);r=(r&0-r)+-1|0;f=r>>>12&16;r=r>>>f;n=r>>>5&8;r=r>>>n;a=r>>>2&4;r=r>>>a;t=r>>>1&2;r=r>>>t;e=r>>>1&1;e=(n|f|a|t|e)+(r>>>e)|0;r=e<<1;t=2980+(r<<2)|0;r=2980+(r+2<<2)|0;a=h[r>>2]|0;f=a+8|0;n=h[f>>2]|0;do if((t|0)!=(n|0)){if(n>>>0<(h[739]|0)>>>0)Ie();i=n+12|0;if((h[i>>2]|0)==(a|0)){h[i>>2]=t;h[r>>2]=n;l=h[737]|0;break}else Ie()}else{h[735]=s&~(1<<e);l=o}while(0);F=e<<3;o=F-m|0;h[a+4>>2]=m|3;s=a+m|0;h[a+(m|4)>>2]=o|1;h[a+F>>2]=o;if(l){n=h[740]|0;t=l>>>3;i=t<<1;r=2980+(i<<2)|0;e=h[735]|0;t=1<<t;if(e&t){e=2980+(i+2<<2)|0;i=h[e>>2]|0;if(i>>>0<(h[739]|0)>>>0)Ie();else{u=e;c=i}}else{h[735]=e|t;u=2980+(i+2<<2)|0;c=r}h[u>>2]=n;h[c+12>>2]=n;h[n+8>>2]=c;h[n+12>>2]=r}h[737]=o;h[740]=s;F=f;return F|0}e=h[736]|0;if(e){t=(e&0-e)+-1|0;N=t>>>12&16;t=t>>>N;B=t>>>5&8;t=t>>>B;F=t>>>2&4;t=t>>>F;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=h[3244+((B|N|F|e|r)+(t>>>r)<<2)>>2]|0;t=(h[r+4>>2]&-8)-m|0;e=r;while(1){i=h[e+16>>2]|0;if(!i){i=h[e+20>>2]|0;if(!i){f=t;break}}e=(h[i+4>>2]&-8)-m|0;F=e>>>0<t>>>0;t=F?e:t;e=i;r=F?i:r}a=h[739]|0;if(r>>>0<a>>>0)Ie();s=r+m|0;if(r>>>0>=s>>>0)Ie();o=h[r+24>>2]|0;t=h[r+12>>2]|0;do if((t|0)==(r|0)){e=r+20|0;i=h[e>>2]|0;if(!i){e=r+16|0;i=h[e>>2]|0;if(!i){d=0;break}}while(1){t=i+20|0;n=h[t>>2]|0;if(n){i=n;e=t;continue}t=i+16|0;n=h[t>>2]|0;if(!n)break;else{i=n;e=t}}if(e>>>0<a>>>0)Ie();else{h[e>>2]=0;d=i;break}}else{n=h[r+8>>2]|0;if(n>>>0<a>>>0)Ie();i=n+12|0;if((h[i>>2]|0)!=(r|0))Ie();e=t+8|0;if((h[e>>2]|0)==(r|0)){h[i>>2]=t;h[e>>2]=n;d=t;break}else Ie()}while(0);do if(o){i=h[r+28>>2]|0;e=3244+(i<<2)|0;if((r|0)==(h[e>>2]|0)){h[e>>2]=d;if(!d){h[736]=h[736]&~(1<<i);break}}else{if(o>>>0<(h[739]|0)>>>0)Ie();i=o+16|0;if((h[i>>2]|0)==(r|0))h[i>>2]=d;else h[o+20>>2]=d;if(!d)break}e=h[739]|0;if(d>>>0<e>>>0)Ie();h[d+24>>2]=o;i=h[r+16>>2]|0;do if(i)if(i>>>0<e>>>0)Ie();else{h[d+16>>2]=i;h[i+24>>2]=d;break}while(0);i=h[r+20>>2]|0;if(i)if(i>>>0<(h[739]|0)>>>0)Ie();else{h[d+20>>2]=i;h[i+24>>2]=d;break}}while(0);if(f>>>0<16){F=f+m|0;h[r+4>>2]=F|3;F=r+(F+4)|0;h[F>>2]=h[F>>2]|1}else{h[r+4>>2]=m|3;h[r+(m|4)>>2]=f|1;h[r+(f+m)>>2]=f;i=h[737]|0;if(i){a=h[740]|0;t=i>>>3;i=t<<1;n=2980+(i<<2)|0;e=h[735]|0;t=1<<t;if(e&t){i=2980+(i+2<<2)|0;e=h[i>>2]|0;if(e>>>0<(h[739]|0)>>>0)Ie();else{b=i;v=e}}else{h[735]=e|t;b=2980+(i+2<<2)|0;v=n}h[b>>2]=a;h[v+12>>2]=a;h[a+8>>2]=v;h[a+12>>2]=n}h[737]=f;h[740]=s}F=r+8|0;return F|0}else v=m}else v=m}else if(e>>>0<=4294967231){e=e+11|0;c=e&-8;u=h[736]|0;if(u){t=0-c|0;e=e>>>8;if(e)if(c>>>0>16777215)l=31;else{v=(e+1048320|0)>>>16&8;_=e<<v;b=(_+520192|0)>>>16&4;_=_<<b;l=(_+245760|0)>>>16&2;l=14-(b|v|l)+(_<<l>>>15)|0;l=c>>>(l+7|0)&1|l<<1}else l=0;e=h[3244+(l<<2)>>2]|0;e:do if(!e){n=0;e=0;_=86}else{o=t;n=0;s=c<<((l|0)==31?0:25-(l>>>1)|0);f=e;e=0;while(1){a=h[f+4>>2]&-8;t=a-c|0;if(t>>>0<o>>>0)if((a|0)==(c|0)){a=f;e=f;_=90;break e}else e=f;else t=o;_=h[f+20>>2]|0;f=h[f+16+(s>>>31<<2)>>2]|0;n=(_|0)==0|(_|0)==(f|0)?n:_;if(!f){_=86;break}else{o=t;s=s<<1}}}while(0);if((_|0)==86){if((n|0)==0&(e|0)==0){e=2<<l;e=u&(e|0-e);if(!e){v=c;break}e=(e&0-e)+-1|0;d=e>>>12&16;e=e>>>d;u=e>>>5&8;e=e>>>u;b=e>>>2&4;e=e>>>b;v=e>>>1&2;e=e>>>v;n=e>>>1&1;n=h[3244+((u|d|b|v|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){s=t;f=e}else{a=n;_=90}}if((_|0)==90)while(1){_=0;v=(h[a+4>>2]&-8)-c|0;n=v>>>0<t>>>0;t=n?v:t;e=n?a:e;n=h[a+16>>2]|0;if(n){a=n;_=90;continue}a=h[a+20>>2]|0;if(!a){s=t;f=e;break}else _=90}if((f|0)!=0?s>>>0<((h[737]|0)-c|0)>>>0:0){n=h[739]|0;if(f>>>0<n>>>0)Ie();o=f+c|0;if(f>>>0>=o>>>0)Ie();a=h[f+24>>2]|0;t=h[f+12>>2]|0;do if((t|0)==(f|0)){e=f+20|0;i=h[e>>2]|0;if(!i){e=f+16|0;i=h[e>>2]|0;if(!i){m=0;break}}while(1){t=i+20|0;r=h[t>>2]|0;if(r){i=r;e=t;continue}t=i+16|0;r=h[t>>2]|0;if(!r)break;else{i=r;e=t}}if(e>>>0<n>>>0)Ie();else{h[e>>2]=0;m=i;break}}else{r=h[f+8>>2]|0;if(r>>>0<n>>>0)Ie();i=r+12|0;if((h[i>>2]|0)!=(f|0))Ie();e=t+8|0;if((h[e>>2]|0)==(f|0)){h[i>>2]=t;h[e>>2]=r;m=t;break}else Ie()}while(0);do if(a){i=h[f+28>>2]|0;e=3244+(i<<2)|0;if((f|0)==(h[e>>2]|0)){h[e>>2]=m;if(!m){h[736]=h[736]&~(1<<i);break}}else{if(a>>>0<(h[739]|0)>>>0)Ie();i=a+16|0;if((h[i>>2]|0)==(f|0))h[i>>2]=m;else h[a+20>>2]=m;if(!m)break}e=h[739]|0;if(m>>>0<e>>>0)Ie();h[m+24>>2]=a;i=h[f+16>>2]|0;do if(i)if(i>>>0<e>>>0)Ie();else{h[m+16>>2]=i;h[i+24>>2]=m;break}while(0);i=h[f+20>>2]|0;if(i)if(i>>>0<(h[739]|0)>>>0)Ie();else{h[m+20>>2]=i;h[i+24>>2]=m;break}}while(0);e:do if(s>>>0>=16){h[f+4>>2]=c|3;h[f+(c|4)>>2]=s|1;h[f+(s+c)>>2]=s;i=s>>>3;if(s>>>0<256){e=i<<1;r=2980+(e<<2)|0;t=h[735]|0;i=1<<i;if(t&i){i=2980+(e+2<<2)|0;e=h[i>>2]|0;if(e>>>0<(h[739]|0)>>>0)Ie();else{p=i;g=e}}else{h[735]=t|i;p=2980+(e+2<<2)|0;g=r}h[p>>2]=o;h[g+12>>2]=o;h[f+(c+8)>>2]=g;h[f+(c+12)>>2]=r;break}i=s>>>8;if(i)if(s>>>0>16777215)r=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;B=(F+520192|0)>>>16&4;F=F<<B;r=(F+245760|0)>>>16&2;r=14-(B|N|r)+(F<<r>>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;i=3244+(r<<2)|0;h[f+(c+28)>>2]=r;h[f+(c+20)>>2]=0;h[f+(c+16)>>2]=0;e=h[736]|0;t=1<<r;if(!(e&t)){h[736]=e|t;h[i>>2]=o;h[f+(c+24)>>2]=i;h[f+(c+12)>>2]=o;h[f+(c+8)>>2]=o;break}i=h[i>>2]|0;i:do if((h[i+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){e=i+16+(r>>>31<<2)|0;t=h[e>>2]|0;if(!t)break;if((h[t+4>>2]&-8|0)==(s|0)){M=t;break i}else{r=r<<1;i=t}}if(e>>>0<(h[739]|0)>>>0)Ie();else{h[e>>2]=o;h[f+(c+24)>>2]=i;h[f+(c+12)>>2]=o;h[f+(c+8)>>2]=o;break e}}else M=i;while(0);i=M+8|0;e=h[i>>2]|0;F=h[739]|0;if(e>>>0>=F>>>0&M>>>0>=F>>>0){h[e+12>>2]=o;h[i>>2]=o;h[f+(c+8)>>2]=e;h[f+(c+12)>>2]=M;h[f+(c+24)>>2]=0;break}else Ie()}else{F=s+c|0;h[f+4>>2]=F|3;F=f+(F+4)|0;h[F>>2]=h[F>>2]|1}while(0);F=f+8|0;return F|0}else v=c}else v=c}else v=-1;while(0);t=h[737]|0;if(t>>>0>=v>>>0){i=t-v|0;e=h[740]|0;if(i>>>0>15){h[740]=e+v;h[737]=i;h[e+(v+4)>>2]=i|1;h[e+t>>2]=i;h[e+4>>2]=v|3}else{h[737]=0;h[740]=0;h[e+4>>2]=t|3;F=e+(t+4)|0;h[F>>2]=h[F>>2]|1}F=e+8|0;return F|0}e=h[738]|0;if(e>>>0>v>>>0){N=e-v|0;h[738]=N;F=h[741]|0;h[741]=F+v;h[F+(v+4)>>2]=N|1;h[F+4>>2]=v|3;F=F+8|0;return F|0}do if(!(h[853]|0)){e=Ne(30)|0;if(!(e+-1&e)){h[855]=e;h[854]=e;h[856]=-1;h[857]=-1;h[858]=0;h[846]=0;M=(Ke(0)|0)&-16^1431655768;h[853]=M;break}else Ie()}while(0);f=v+48|0;s=h[855]|0;l=v+47|0;o=s+l|0;s=0-s|0;u=o&s;if(u>>>0<=v>>>0){F=0;return F|0}e=h[845]|0;if((e|0)!=0?(g=h[843]|0,M=g+u|0,M>>>0<=g>>>0|M>>>0>e>>>0):0){F=0;return F|0}e:do if(!(h[846]&4)){e=h[741]|0;i:do if(e){n=3388;while(1){t=h[n>>2]|0;if(t>>>0<=e>>>0?(w=n+4|0,(t+(h[w>>2]|0)|0)>>>0>e>>>0):0){a=n;e=w;break}n=h[n+8>>2]|0;if(!n){_=174;break i}}t=o-(h[738]|0)&s;if(t>>>0<2147483647){n=Oe(t|0)|0;M=(n|0)==((h[a>>2]|0)+(h[e>>2]|0)|0);e=M?t:0;if(M){if((n|0)!=(-1|0)){y=n;b=e;_=194;break e}}else _=184}else e=0}else _=174;while(0);do if((_|0)==174){a=Oe(0)|0;if((a|0)!=(-1|0)){e=a;t=h[854]|0;n=t+-1|0;if(!(n&e))t=u;else t=u-e+(n+e&0-t)|0;e=h[843]|0;n=e+t|0;if(t>>>0>v>>>0&t>>>0<2147483647){M=h[845]|0;if((M|0)!=0?n>>>0<=e>>>0|n>>>0>M>>>0:0){e=0;break}n=Oe(t|0)|0;M=(n|0)==(a|0);e=M?t:0;if(M){y=a;b=e;_=194;break e}else _=184}else e=0}else e=0}while(0);i:do if((_|0)==184){a=0-t|0;do if(f>>>0>t>>>0&(t>>>0<2147483647&(n|0)!=(-1|0))?(k=h[855]|0,k=l-t+k&0-k,k>>>0<2147483647):0)if((Oe(k|0)|0)==(-1|0)){Oe(a|0)|0;break i}else{t=k+t|0;break}while(0);if((n|0)!=(-1|0)){y=n;b=t;_=194;break e}}while(0);h[846]=h[846]|4;_=191}else{e=0;_=191}while(0);if((((_|0)==191?u>>>0<2147483647:0)?(y=Oe(u|0)|0,T=Oe(0)|0,y>>>0<T>>>0&((y|0)!=(-1|0)&(T|0)!=(-1|0))):0)?(C=T-y|0,x=C>>>0>(v+40|0)>>>0,x):0){b=x?C:e;_=194}if((_|0)==194){e=(h[843]|0)+b|0;h[843]=e;if(e>>>0>(h[844]|0)>>>0)h[844]=e;o=h[741]|0;e:do if(o){a=3388;do{e=h[a>>2]|0;t=a+4|0;n=h[t>>2]|0;if((y|0)==(e+n|0)){E=e;S=t;A=n;P=a;_=204;break}a=h[a+8>>2]|0}while((a|0)!=0);if(((_|0)==204?(h[P+12>>2]&8|0)==0:0)?o>>>0<y>>>0&o>>>0>=E>>>0:0){h[S>>2]=A+b;F=(h[738]|0)+b|0;N=o+8|0;N=(N&7|0)==0?0:0-N&7;B=F-N|0;h[741]=o+N;h[738]=B;h[o+(N+4)>>2]=B|1;h[o+(F+4)>>2]=40;h[742]=h[857];break}e=h[739]|0;if(y>>>0<e>>>0){h[739]=y;e=y}t=y+b|0;a=3388;while(1){if((h[a>>2]|0)==(t|0)){n=a;t=a;_=212;break}a=h[a+8>>2]|0;if(!a){t=3388;break}}if((_|0)==212)if(!(h[t+12>>2]&8)){h[n>>2]=y;d=t+4|0;h[d>>2]=(h[d>>2]|0)+b;d=y+8|0;d=(d&7|0)==0?0:0-d&7;l=y+(b+8)|0;l=(l&7|0)==0?0:0-l&7;i=y+(l+b)|0;c=d+v|0;m=y+c|0;u=i-(y+d)-v|0;h[y+(d+4)>>2]=v|3;i:do if((i|0)!=(o|0)){if((i|0)==(h[740]|0)){F=(h[737]|0)+u|0;h[737]=F;h[740]=m;h[y+(c+4)>>2]=F|1;h[y+(F+c)>>2]=F;break}s=b+4|0;t=h[y+(s+l)>>2]|0;if((t&3|0)==1){f=t&-8;a=t>>>3;t:do if(t>>>0>=256){o=h[y+((l|24)+b)>>2]|0;r=h[y+(b+12+l)>>2]|0;do if((r|0)==(i|0)){n=l|16;r=y+(s+n)|0;t=h[r>>2]|0;if(!t){r=y+(n+b)|0;t=h[r>>2]|0;if(!t){O=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<e>>>0)Ie();else{h[r>>2]=0;O=t;break}}else{n=h[y+((l|8)+b)>>2]|0;if(n>>>0<e>>>0)Ie();e=n+12|0;if((h[e>>2]|0)!=(i|0))Ie();t=r+8|0;if((h[t>>2]|0)==(i|0)){h[e>>2]=r;h[t>>2]=n;O=r;break}else Ie()}while(0);if(!o)break;e=h[y+(b+28+l)>>2]|0;t=3244+(e<<2)|0;do if((i|0)!=(h[t>>2]|0)){if(o>>>0<(h[739]|0)>>>0)Ie();e=o+16|0;if((h[e>>2]|0)==(i|0))h[e>>2]=O;else h[o+20>>2]=O;if(!O)break t}else{h[t>>2]=O;if(O)break;h[736]=h[736]&~(1<<e);break t}while(0);t=h[739]|0;if(O>>>0<t>>>0)Ie();h[O+24>>2]=o;i=l|16;e=h[y+(i+b)>>2]|0;do if(e)if(e>>>0<t>>>0)Ie();else{h[O+16>>2]=e;h[e+24>>2]=O;break}while(0);i=h[y+(s+i)>>2]|0;if(!i)break;if(i>>>0<(h[739]|0)>>>0)Ie();else{h[O+20>>2]=i;h[i+24>>2]=O;break}}else{r=h[y+((l|8)+b)>>2]|0;n=h[y+(b+12+l)>>2]|0;t=2980+(a<<1<<2)|0;do if((r|0)!=(t|0)){if(r>>>0<e>>>0)Ie();if((h[r+12>>2]|0)==(i|0))break;Ie()}while(0);if((n|0)==(r|0)){h[735]=h[735]&~(1<<a);break}do if((n|0)==(t|0))I=n+8|0;else{if(n>>>0<e>>>0)Ie();e=n+8|0;if((h[e>>2]|0)==(i|0)){I=e;break}Ie()}while(0);h[r+12>>2]=n;h[I>>2]=r}while(0);i=y+((f|l)+b)|0;n=f+u|0}else n=u;i=i+4|0;h[i>>2]=h[i>>2]&-2;h[y+(c+4)>>2]=n|1;h[y+(n+c)>>2]=n;i=n>>>3;if(n>>>0<256){e=i<<1;r=2980+(e<<2)|0;t=h[735]|0;i=1<<i;do if(!(t&i)){h[735]=t|i;B=2980+(e+2<<2)|0;N=r}else{i=2980+(e+2<<2)|0;e=h[i>>2]|0;if(e>>>0>=(h[739]|0)>>>0){B=i;N=e;break}Ie()}while(0);h[B>>2]=m;h[N+12>>2]=m;h[y+(c+8)>>2]=N;h[y+(c+12)>>2]=r;break}i=n>>>8;do if(!i)r=0;else{if(n>>>0>16777215){r=31;break}B=(i+1048320|0)>>>16&8;N=i<<B;O=(N+520192|0)>>>16&4;N=N<<O;r=(N+245760|0)>>>16&2;r=14-(O|B|r)+(N<<r>>>15)|0;r=n>>>(r+7|0)&1|r<<1}while(0);i=3244+(r<<2)|0;h[y+(c+28)>>2]=r;h[y+(c+20)>>2]=0;h[y+(c+16)>>2]=0;e=h[736]|0;t=1<<r;if(!(e&t)){h[736]=e|t;h[i>>2]=m;h[y+(c+24)>>2]=i;h[y+(c+12)>>2]=m;h[y+(c+8)>>2]=m;break}i=h[i>>2]|0;t:do if((h[i+4>>2]&-8|0)!=(n|0)){r=n<<((r|0)==31?0:25-(r>>>1)|0);while(1){e=i+16+(r>>>31<<2)|0;t=h[e>>2]|0;if(!t)break;if((h[t+4>>2]&-8|0)==(n|0)){F=t;break t}else{r=r<<1;i=t}}if(e>>>0<(h[739]|0)>>>0)Ie();else{h[e>>2]=m;h[y+(c+24)>>2]=i;h[y+(c+12)>>2]=m;h[y+(c+8)>>2]=m;break i}}else F=i;while(0);i=F+8|0;e=h[i>>2]|0;N=h[739]|0;if(e>>>0>=N>>>0&F>>>0>=N>>>0){h[e+12>>2]=m;h[i>>2]=m;h[y+(c+8)>>2]=e;h[y+(c+12)>>2]=F;h[y+(c+24)>>2]=0;break}else Ie()}else{F=(h[738]|0)+u|0;h[738]=F;h[741]=m;h[y+(c+4)>>2]=F|1}while(0);F=y+(d|8)|0;return F|0}else t=3388;while(1){e=h[t>>2]|0;if(e>>>0<=o>>>0?(i=h[t+4>>2]|0,r=e+i|0,r>>>0>o>>>0):0)break;t=h[t+8>>2]|0}n=e+(i+-39)|0;e=e+(i+-47+((n&7|0)==0?0:0-n&7))|0;n=o+16|0;e=e>>>0<n>>>0?o:e;i=e+8|0;t=y+8|0;t=(t&7|0)==0?0:0-t&7;F=b+-40-t|0;h[741]=y+t;h[738]=F;h[y+(t+4)>>2]=F|1;h[y+(b+-36)>>2]=40;h[742]=h[857];t=e+4|0;h[t>>2]=27;h[i>>2]=h[847];h[i+4>>2]=h[848];h[i+8>>2]=h[849];h[i+12>>2]=h[850];h[847]=y;h[848]=b;h[850]=0;h[849]=i;i=e+28|0;h[i>>2]=7;if((e+32|0)>>>0<r>>>0)do{F=i;i=i+4|0;h[i>>2]=7}while((F+8|0)>>>0<r>>>0);if((e|0)!=(o|0)){a=e-o|0;h[t>>2]=h[t>>2]&-2;h[o+4>>2]=a|1;h[e>>2]=a;i=a>>>3;if(a>>>0<256){e=i<<1;r=2980+(e<<2)|0;t=h[735]|0;i=1<<i;if(t&i){i=2980+(e+2<<2)|0;e=h[i>>2]|0;if(e>>>0<(h[739]|0)>>>0)Ie();else{L=i;D=e}}else{h[735]=t|i;L=2980+(e+2<<2)|0;D=r}h[L>>2]=o;h[D+12>>2]=o;h[o+8>>2]=D;h[o+12>>2]=r;break}i=a>>>8;if(i)if(a>>>0>16777215)r=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;B=(F+520192|0)>>>16&4;F=F<<B;r=(F+245760|0)>>>16&2;r=14-(B|N|r)+(F<<r>>>15)|0;r=a>>>(r+7|0)&1|r<<1}else r=0;t=3244+(r<<2)|0;h[o+28>>2]=r;h[o+20>>2]=0;h[n>>2]=0;i=h[736]|0;e=1<<r;if(!(i&e)){h[736]=i|e;h[t>>2]=o;h[o+24>>2]=t;h[o+12>>2]=o;h[o+8>>2]=o;break}i=h[t>>2]|0;i:do if((h[i+4>>2]&-8|0)!=(a|0)){r=a<<((r|0)==31?0:25-(r>>>1)|0);while(1){e=i+16+(r>>>31<<2)|0;t=h[e>>2]|0;if(!t)break;if((h[t+4>>2]&-8|0)==(a|0)){R=t;break i}else{r=r<<1;i=t}}if(e>>>0<(h[739]|0)>>>0)Ie();else{h[e>>2]=o;h[o+24>>2]=i;h[o+12>>2]=o;h[o+8>>2]=o;break e}}else R=i;while(0);i=R+8|0;e=h[i>>2]|0;F=h[739]|0;if(e>>>0>=F>>>0&R>>>0>=F>>>0){h[e+12>>2]=o;h[i>>2]=o;h[o+8>>2]=e;h[o+12>>2]=R;h[o+24>>2]=0;break}else Ie()}}else{F=h[739]|0;if((F|0)==0|y>>>0<F>>>0)h[739]=y;h[847]=y;h[848]=b;h[850]=0;h[744]=h[853];h[743]=-1;i=0;do{F=i<<1;N=2980+(F<<2)|0;h[2980+(F+3<<2)>>2]=N;h[2980+(F+2<<2)>>2]=N;i=i+1|0}while((i|0)!=32);F=y+8|0;F=(F&7|0)==0?0:0-F&7;N=b+-40-F|0;h[741]=y+F;h[738]=N;h[y+(F+4)>>2]=N|1;h[y+(b+-36)>>2]=40;h[742]=h[857]}while(0);i=h[738]|0;if(i>>>0>v>>>0){N=i-v|0;h[738]=N;F=h[741]|0;h[741]=F+v;h[F+(v+4)>>2]=N|1;h[F+4>>2]=v|3;F=F+8|0;return F|0}}F=Ss()|0;h[F>>2]=12;F=0;return F|0}function Rf(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0;if(!e)return;i=e+-8|0;s=h[739]|0;if(i>>>0<s>>>0)Ie();t=h[e+-4>>2]|0;r=t&3;if((r|0)==1)Ie();m=t&-8;v=e+(m+-8)|0;do if(!(t&1)){i=h[i>>2]|0;if(!r)return;f=-8-i|0;u=e+f|0;c=i+m|0;if(u>>>0<s>>>0)Ie();if((u|0)==(h[740]|0)){i=e+(m+-4)|0;t=h[i>>2]|0;if((t&3|0)!=3){k=u;a=c;break}h[737]=c;h[i>>2]=t&-2;h[e+(f+4)>>2]=c|1;h[v>>2]=c;return}n=i>>>3;if(i>>>0<256){r=h[e+(f+8)>>2]|0;t=h[e+(f+12)>>2]|0;i=2980+(n<<1<<2)|0;if((r|0)!=(i|0)){if(r>>>0<s>>>0)Ie();if((h[r+12>>2]|0)!=(u|0))Ie()}if((t|0)==(r|0)){h[735]=h[735]&~(1<<n);k=u;a=c;break}if((t|0)!=(i|0)){if(t>>>0<s>>>0)Ie();i=t+8|0;if((h[i>>2]|0)==(u|0))o=i;else Ie()}else o=t+8|0;h[r+12>>2]=t;h[o>>2]=r;k=u;a=c;break}o=h[e+(f+24)>>2]|0;r=h[e+(f+12)>>2]|0;do if((r|0)==(u|0)){t=e+(f+20)|0;i=h[t>>2]|0;if(!i){t=e+(f+16)|0;i=h[t>>2]|0;if(!i){l=0;break}}while(1){r=i+20|0;n=h[r>>2]|0;if(n){i=n;t=r;continue}r=i+16|0;n=h[r>>2]|0;if(!n)break;else{i=n;t=r}}if(t>>>0<s>>>0)Ie();else{h[t>>2]=0;l=i;break}}else{n=h[e+(f+8)>>2]|0;if(n>>>0<s>>>0)Ie();i=n+12|0;if((h[i>>2]|0)!=(u|0))Ie();t=r+8|0;if((h[t>>2]|0)==(u|0)){h[i>>2]=r;h[t>>2]=n;l=r;break}else Ie()}while(0);if(o){i=h[e+(f+28)>>2]|0;t=3244+(i<<2)|0;if((u|0)==(h[t>>2]|0)){h[t>>2]=l;if(!l){h[736]=h[736]&~(1<<i);k=u;a=c;break}}else{if(o>>>0<(h[739]|0)>>>0)Ie();i=o+16|0;if((h[i>>2]|0)==(u|0))h[i>>2]=l;else h[o+20>>2]=l;if(!l){k=u;a=c;break}}t=h[739]|0;if(l>>>0<t>>>0)Ie();h[l+24>>2]=o;i=h[e+(f+16)>>2]|0;do if(i)if(i>>>0<t>>>0)Ie();else{h[l+16>>2]=i;h[i+24>>2]=l;break}while(0);i=h[e+(f+20)>>2]|0;if(i)if(i>>>0<(h[739]|0)>>>0)Ie();else{h[l+20>>2]=i;h[i+24>>2]=l;k=u;a=c;break}else{k=u;a=c}}else{k=u;a=c}}else{k=i;a=m}while(0);if(k>>>0>=v>>>0)Ie();i=e+(m+-4)|0;t=h[i>>2]|0;if(!(t&1))Ie();if(!(t&2)){if((v|0)==(h[741]|0)){g=(h[738]|0)+a|0;h[738]=g;h[741]=k;h[k+4>>2]=g|1;if((k|0)!=(h[740]|0))return;h[740]=0;h[737]=0;return}if((v|0)==(h[740]|0)){g=(h[737]|0)+a|0;h[737]=g;h[740]=k;h[k+4>>2]=g|1;h[k+g>>2]=g;return}a=(t&-8)+a|0;n=t>>>3;do if(t>>>0>=256){o=h[e+(m+16)>>2]|0;i=h[e+(m|4)>>2]|0;do if((i|0)==(v|0)){t=e+(m+12)|0;i=h[t>>2]|0;if(!i){t=e+(m+8)|0;i=h[t>>2]|0;if(!i){b=0;break}}while(1){r=i+20|0;n=h[r>>2]|0;if(n){i=n;t=r;continue}r=i+16|0;n=h[r>>2]|0;if(!n)break;else{i=n;t=r}}if(t>>>0<(h[739]|0)>>>0)Ie();else{h[t>>2]=0;b=i;break}}else{t=h[e+m>>2]|0;if(t>>>0<(h[739]|0)>>>0)Ie();r=t+12|0;if((h[r>>2]|0)!=(v|0))Ie();n=i+8|0;if((h[n>>2]|0)==(v|0)){h[r>>2]=i;h[n>>2]=t;b=i;break}else Ie()}while(0);if(o){i=h[e+(m+20)>>2]|0;t=3244+(i<<2)|0;if((v|0)==(h[t>>2]|0)){h[t>>2]=b;if(!b){h[736]=h[736]&~(1<<i);break}}else{if(o>>>0<(h[739]|0)>>>0)Ie();i=o+16|0;if((h[i>>2]|0)==(v|0))h[i>>2]=b;else h[o+20>>2]=b;if(!b)break}t=h[739]|0;if(b>>>0<t>>>0)Ie();h[b+24>>2]=o;i=h[e+(m+8)>>2]|0;do if(i)if(i>>>0<t>>>0)Ie();else{h[b+16>>2]=i;h[i+24>>2]=b;break}while(0);i=h[e+(m+12)>>2]|0;if(i)if(i>>>0<(h[739]|0)>>>0)Ie();else{h[b+20>>2]=i;h[i+24>>2]=b;break}}}else{r=h[e+m>>2]|0;t=h[e+(m|4)>>2]|0;i=2980+(n<<1<<2)|0;if((r|0)!=(i|0)){if(r>>>0<(h[739]|0)>>>0)Ie();if((h[r+12>>2]|0)!=(v|0))Ie()}if((t|0)==(r|0)){h[735]=h[735]&~(1<<n);break}if((t|0)!=(i|0)){if(t>>>0<(h[739]|0)>>>0)Ie();i=t+8|0;if((h[i>>2]|0)==(v|0))d=i;else Ie()}else d=t+8|0;h[r+12>>2]=t;h[d>>2]=r}while(0);h[k+4>>2]=a|1;h[k+a>>2]=a;if((k|0)==(h[740]|0)){h[737]=a;return}}else{h[i>>2]=t&-2;h[k+4>>2]=a|1;h[k+a>>2]=a}i=a>>>3;if(a>>>0<256){t=i<<1;n=2980+(t<<2)|0;r=h[735]|0;i=1<<i;if(r&i){i=2980+(t+2<<2)|0;t=h[i>>2]|0;if(t>>>0<(h[739]|0)>>>0)Ie();else{w=i;p=t}}else{h[735]=r|i;w=2980+(t+2<<2)|0;p=n}h[w>>2]=k;h[p+12>>2]=k;h[k+8>>2]=p;h[k+12>>2]=n;return}i=a>>>8;if(i)if(a>>>0>16777215)n=31;else{w=(i+1048320|0)>>>16&8;p=i<<w;v=(p+520192|0)>>>16&4;p=p<<v;n=(p+245760|0)>>>16&2;n=14-(v|w|n)+(p<<n>>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;i=3244+(n<<2)|0;h[k+28>>2]=n;h[k+20>>2]=0;h[k+16>>2]=0;t=h[736]|0;r=1<<n;e:do if(t&r){i=h[i>>2]|0;i:do if((h[i+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){t=i+16+(n>>>31<<2)|0;r=h[t>>2]|0;if(!r)break;if((h[r+4>>2]&-8|0)==(a|0)){g=r;break i}else{n=n<<1;i=r}}if(t>>>0<(h[739]|0)>>>0)Ie();else{h[t>>2]=k;h[k+24>>2]=i;h[k+12>>2]=k;h[k+8>>2]=k;break e}}else g=i;while(0);i=g+8|0;t=h[i>>2]|0;p=h[739]|0;if(t>>>0>=p>>>0&g>>>0>=p>>>0){h[t+12>>2]=k;h[i>>2]=k;h[k+8>>2]=t;h[k+12>>2]=g;h[k+24>>2]=0;break}else Ie()}else{h[736]=t|r;h[i>>2]=k;h[k+24>>2]=i;h[k+12>>2]=k;h[k+8>>2]=k}while(0);k=(h[743]|0)+-1|0;h[743]=k;if(!k)i=3396;else return;while(1){i=h[i>>2]|0;if(!i)break;else i=i+8|0}h[743]=-1;return}function Of(e,i){e=e|0;i=i|0;var t=0;if(e){t=ue(i,e)|0;if((i|e)>>>0>65535)t=((t>>>0)/(e>>>0)|0|0)==(i|0)?t:-1}else t=0;i=Df(t)|0;if(!i)return i|0;if(!(h[i+-4>>2]&3))return i|0;Vf(i|0,0,t|0)|0;return i|0}function Bf(e,i){e=e|0;i=i|0;var t=0,r=0;if(!e){e=Df(i)|0;return e|0}if(i>>>0>4294967231){e=Ss()|0;h[e>>2]=12;e=0;return e|0}t=Ff(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(t){e=t+8|0;return e|0}t=Df(i)|0;if(!t){e=0;return e|0}r=h[e+-4>>2]|0;r=(r&-8)-((r&3|0)==0?8:4)|0;Xf(t|0,e|0,(r>>>0<i>>>0?r:i)|0)|0;Rf(e);e=t;return e|0}function Nf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;do if((i|0)!=8){r=i>>>2;if((i&3|0)!=0|(r|0)==0){e=22;return e|0}if(r+1073741823&r){e=22;return e|0}if((-64-i|0)>>>0<t>>>0){e=12;return e|0}else{r=Uf(i>>>0<16?16:i,t)|0;break}}else r=Df(t)|0;while(0);if(!r){e=12;return e|0}h[e>>2]=r;e=0;return e|0}function Ff(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;m=e+4|0;b=h[m>>2]|0;f=b&-8;u=e+f|0;s=h[739]|0;t=b&3;if(!((t|0)!=1&e>>>0>=s>>>0&e>>>0<u>>>0))Ie();r=e+(f|4)|0;n=h[r>>2]|0;if(!(n&1))Ie();if(!t){if(i>>>0<256){e=0;return e|0}if(f>>>0>=(i+4|0)>>>0?(f-i|0)>>>0<=h[855]<<1>>>0:0)return e|0;e=0;return e|0}if(f>>>0>=i>>>0){t=f-i|0;if(t>>>0<=15)return e|0;h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=t|3;h[r>>2]=h[r>>2]|1;Hf(e+i|0,t);return e|0}if((u|0)==(h[741]|0)){t=(h[738]|0)+f|0;if(t>>>0<=i>>>0){e=0;return e|0}d=t-i|0;h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=d|1;h[741]=e+i;h[738]=d;return e|0}if((u|0)==(h[740]|0)){r=(h[737]|0)+f|0;if(r>>>0<i>>>0){e=0;return e|0}t=r-i|0;if(t>>>0>15){h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=t|1;h[e+r>>2]=t;r=e+(r+4)|0;h[r>>2]=h[r>>2]&-2;r=e+i|0}else{h[m>>2]=b&1|r|2;r=e+(r+4)|0;h[r>>2]=h[r>>2]|1;r=0;t=0}h[737]=t;h[740]=r;return e|0}if(n&2){e=0;return e|0}c=(n&-8)+f|0;if(c>>>0<i>>>0){e=0;return e|0}d=c-i|0;a=n>>>3;do if(n>>>0>=256){o=h[e+(f+24)>>2]|0;a=h[e+(f+12)>>2]|0;do if((a|0)==(u|0)){r=e+(f+20)|0;t=h[r>>2]|0;if(!t){r=e+(f+16)|0;t=h[r>>2]|0;if(!t){l=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<s>>>0)Ie();else{h[r>>2]=0;l=t;break}}else{n=h[e+(f+8)>>2]|0;if(n>>>0<s>>>0)Ie();t=n+12|0;if((h[t>>2]|0)!=(u|0))Ie();r=a+8|0;if((h[r>>2]|0)==(u|0)){h[t>>2]=a;h[r>>2]=n;l=a;break}else Ie()}while(0);if(o){t=h[e+(f+28)>>2]|0;r=3244+(t<<2)|0;if((u|0)==(h[r>>2]|0)){h[r>>2]=l;if(!l){h[736]=h[736]&~(1<<t);break}}else{if(o>>>0<(h[739]|0)>>>0)Ie();t=o+16|0;if((h[t>>2]|0)==(u|0))h[t>>2]=l;else h[o+20>>2]=l;if(!l)break}r=h[739]|0;if(l>>>0<r>>>0)Ie();h[l+24>>2]=o;t=h[e+(f+16)>>2]|0;do if(t)if(t>>>0<r>>>0)Ie();else{h[l+16>>2]=t;h[t+24>>2]=l;break}while(0);t=h[e+(f+20)>>2]|0;if(t)if(t>>>0<(h[739]|0)>>>0)Ie();else{h[l+20>>2]=t;h[t+24>>2]=l;break}}}else{n=h[e+(f+8)>>2]|0;r=h[e+(f+12)>>2]|0;t=2980+(a<<1<<2)|0;if((n|0)!=(t|0)){if(n>>>0<s>>>0)Ie();if((h[n+12>>2]|0)!=(u|0))Ie()}if((r|0)==(n|0)){h[735]=h[735]&~(1<<a);break}if((r|0)!=(t|0)){if(r>>>0<s>>>0)Ie();t=r+8|0;if((h[t>>2]|0)==(u|0))o=t;else Ie()}else o=r+8|0;h[n+12>>2]=r;h[o>>2]=n}while(0);if(d>>>0<16){h[m>>2]=c|b&1|2;i=e+(c|4)|0;h[i>>2]=h[i>>2]|1;return e|0}else{h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=d|3;b=e+(c|4)|0;h[b>>2]=h[b>>2]|1;Hf(e+i|0,d);return e|0}return 0}function Uf(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;e=e>>>0<16?16:e;if(e+-1&e){t=16;while(1)if(t>>>0<e>>>0)t=t<<1;else{e=t;break}}if((-64-e|0)>>>0<=i>>>0){s=Ss()|0;h[s>>2]=12;s=0;return s|0}o=i>>>0<11?16:i+11&-8;r=Df(o+12+e|0)|0;if(!r){s=0;return s|0}i=r+-8|0;t=e+-1|0;do if(r&t){n=r+t&0-e;t=n+-8|0;a=i;n=(t-a|0)>>>0>15?t:n+(e+-8)|0;a=n-a|0;e=r+-4|0;r=h[e>>2]|0;t=(r&-8)-a|0;if(!(r&3)){h[n>>2]=(h[i>>2]|0)+a;h[n+4>>2]=t;i=n;break}else{r=n+4|0;h[r>>2]=t|h[r>>2]&1|2;t=n+(t+4)|0;h[t>>2]=h[t>>2]|1;h[e>>2]=a|h[e>>2]&1|2;h[r>>2]=h[r>>2]|1;Hf(i,a);i=n;break}}while(0);e=i+4|0;t=h[e>>2]|0;if((t&3|0)!=0?(s=t&-8,s>>>0>(o+16|0)>>>0):0){a=s-o|0;h[e>>2]=o|t&1|2;h[i+(o|4)>>2]=a|3;s=i+(s|4)|0;h[s>>2]=h[s>>2]|1;Hf(i+o|0,a)}s=i+8|0;return s|0}function Hf(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0;v=e+i|0;t=h[e+4>>2]|0;do if(!(t&1)){l=h[e>>2]|0;if(!(t&3))return;d=e+(0-l)|0;c=l+i|0;f=h[739]|0;if(d>>>0<f>>>0)Ie();if((d|0)==(h[740]|0)){r=e+(i+4)|0;t=h[r>>2]|0;if((t&3|0)!=3){g=d;o=c;break}h[737]=c;h[r>>2]=t&-2;h[e+(4-l)>>2]=c|1;h[v>>2]=c;return}a=l>>>3;if(l>>>0<256){n=h[e+(8-l)>>2]|0;r=h[e+(12-l)>>2]|0;t=2980+(a<<1<<2)|0;if((n|0)!=(t|0)){if(n>>>0<f>>>0)Ie();if((h[n+12>>2]|0)!=(d|0))Ie()}if((r|0)==(n|0)){h[735]=h[735]&~(1<<a);g=d;o=c;break}if((r|0)!=(t|0)){if(r>>>0<f>>>0)Ie();t=r+8|0;if((h[t>>2]|0)==(d|0))s=t;else Ie()}else s=r+8|0;h[n+12>>2]=r;h[s>>2]=n;g=d;o=c;break}s=h[e+(24-l)>>2]|0;n=h[e+(12-l)>>2]|0;do if((n|0)==(d|0)){n=16-l|0;r=e+(n+4)|0;t=h[r>>2]|0;if(!t){r=e+n|0;t=h[r>>2]|0;if(!t){u=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<f>>>0)Ie();else{h[r>>2]=0;u=t;break}}else{a=h[e+(8-l)>>2]|0;if(a>>>0<f>>>0)Ie();t=a+12|0;if((h[t>>2]|0)!=(d|0))Ie();r=n+8|0;if((h[r>>2]|0)==(d|0)){h[t>>2]=n;h[r>>2]=a;u=n;break}else Ie()}while(0);if(s){t=h[e+(28-l)>>2]|0;r=3244+(t<<2)|0;if((d|0)==(h[r>>2]|0)){h[r>>2]=u;if(!u){h[736]=h[736]&~(1<<t);g=d;o=c;break}}else{if(s>>>0<(h[739]|0)>>>0)Ie();t=s+16|0;if((h[t>>2]|0)==(d|0))h[t>>2]=u;else h[s+20>>2]=u;if(!u){g=d;o=c;break}}n=h[739]|0;if(u>>>0<n>>>0)Ie();h[u+24>>2]=s;t=16-l|0;r=h[e+t>>2]|0;do if(r)if(r>>>0<n>>>0)Ie();else{h[u+16>>2]=r;h[r+24>>2]=u;break}while(0);t=h[e+(t+4)>>2]|0;if(t)if(t>>>0<(h[739]|0)>>>0)Ie();else{h[u+20>>2]=t;h[t+24>>2]=u;g=d;o=c;break}else{g=d;o=c}}else{g=d;o=c}}else{g=e;o=i}while(0);f=h[739]|0;if(v>>>0<f>>>0)Ie();t=e+(i+4)|0;r=h[t>>2]|0;if(!(r&2)){if((v|0)==(h[741]|0)){p=(h[738]|0)+o|0;h[738]=p;h[741]=g;h[g+4>>2]=p|1;if((g|0)!=(h[740]|0))return;h[740]=0;h[737]=0;return}if((v|0)==(h[740]|0)){p=(h[737]|0)+o|0;h[737]=p;h[740]=g;h[g+4>>2]=p|1;h[g+p>>2]=p;return}o=(r&-8)+o|0;a=r>>>3;do if(r>>>0>=256){s=h[e+(i+24)>>2]|0;n=h[e+(i+12)>>2]|0;do if((n|0)==(v|0)){r=e+(i+20)|0;t=h[r>>2]|0;if(!t){r=e+(i+16)|0;t=h[r>>2]|0;if(!t){b=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<f>>>0)Ie();else{h[r>>2]=0;b=t;break}}else{a=h[e+(i+8)>>2]|0;if(a>>>0<f>>>0)Ie();t=a+12|0;if((h[t>>2]|0)!=(v|0))Ie();r=n+8|0;if((h[r>>2]|0)==(v|0)){h[t>>2]=n;h[r>>2]=a;b=n;break}else Ie()}while(0);if(s){t=h[e+(i+28)>>2]|0;r=3244+(t<<2)|0;if((v|0)==(h[r>>2]|0)){h[r>>2]=b;if(!b){h[736]=h[736]&~(1<<t);break}}else{if(s>>>0<(h[739]|0)>>>0)Ie();t=s+16|0;if((h[t>>2]|0)==(v|0))h[t>>2]=b;else h[s+20>>2]=b;if(!b)break}r=h[739]|0;if(b>>>0<r>>>0)Ie();h[b+24>>2]=s;t=h[e+(i+16)>>2]|0;do if(t)if(t>>>0<r>>>0)Ie();else{h[b+16>>2]=t;h[t+24>>2]=b;break}while(0);t=h[e+(i+20)>>2]|0;if(t)if(t>>>0<(h[739]|0)>>>0)Ie();else{h[b+20>>2]=t;h[t+24>>2]=b;break}}}else{n=h[e+(i+8)>>2]|0;r=h[e+(i+12)>>2]|0;t=2980+(a<<1<<2)|0;if((n|0)!=(t|0)){if(n>>>0<f>>>0)Ie();if((h[n+12>>2]|0)!=(v|0))Ie()}if((r|0)==(n|0)){h[735]=h[735]&~(1<<a);break}if((r|0)!=(t|0)){if(r>>>0<f>>>0)Ie();t=r+8|0;if((h[t>>2]|0)==(v|0))m=t;else Ie()}else m=r+8|0;h[n+12>>2]=r;h[m>>2]=n}while(0);h[g+4>>2]=o|1;h[g+o>>2]=o;if((g|0)==(h[740]|0)){h[737]=o;return}}else{h[t>>2]=r&-2;h[g+4>>2]=o|1;h[g+o>>2]=o}t=o>>>3;if(o>>>0<256){r=t<<1;a=2980+(r<<2)|0;n=h[735]|0;t=1<<t;if(n&t){t=2980+(r+2<<2)|0;r=h[t>>2]|0;if(r>>>0<(h[739]|0)>>>0)Ie();else{w=t;p=r}}else{h[735]=n|t;w=2980+(r+2<<2)|0;p=a}h[w>>2]=g;h[p+12>>2]=g;h[g+8>>2]=p;h[g+12>>2]=a;return}t=o>>>8;if(t)if(o>>>0>16777215)a=31;else{w=(t+1048320|0)>>>16&8;p=t<<w;v=(p+520192|0)>>>16&4;p=p<<v;a=(p+245760|0)>>>16&2;a=14-(v|w|a)+(p<<a>>>15)|0;a=o>>>(a+7|0)&1|a<<1}else a=0;t=3244+(a<<2)|0;h[g+28>>2]=a;h[g+20>>2]=0;h[g+16>>2]=0;r=h[736]|0;n=1<<a;if(!(r&n)){h[736]=r|n;h[t>>2]=g;h[g+24>>2]=t;h[g+12>>2]=g;h[g+8>>2]=g;return}t=h[t>>2]|0;e:do if((h[t+4>>2]&-8|0)!=(o|0)){a=o<<((a|0)==31?0:25-(a>>>1)|0);while(1){r=t+16+(a>>>31<<2)|0;n=h[r>>2]|0;if(!n)break;if((h[n+4>>2]&-8|0)==(o|0)){t=n;break e}else{a=a<<1;t=n}}if(r>>>0<(h[739]|0)>>>0)Ie();h[r>>2]=g;h[g+24>>2]=t;h[g+12>>2]=g;h[g+8>>2]=g;return}while(0);r=t+8|0;n=h[r>>2]|0;p=h[739]|0;if(!(n>>>0>=p>>>0&t>>>0>=p>>>0))Ie();h[n+12>>2]=g;h[r>>2]=g;h[g+8>>2]=n;h[g+12>>2]=t;h[g+24>>2]=0;return}function zf(){}function jf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;r=i-r-(t>>>0>e>>>0|0)>>>0;return(H=r,e-t>>>0|0)|0}function Yf(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)<32){H=i>>t;return e>>>t|(i&(1<<t)-1)<<32-t}H=(i|0)<0?-1:0;return i>>t-32|0}function Vf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;r=e+t|0;if((t|0)>=20){i=i&255;a=e&3;o=i|i<<8|i<<16|i<<24;n=r&~3;if(a){a=e+4-a|0;while((e|0)<(a|0)){c[e>>0]=i;e=e+1|0}}while((e|0)<(n|0)){h[e>>2]=o;e=e+4|0}}while((e|0)<(r|0)){c[e>>0]=i;e=e+1|0}return e-t|0}function qf(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)<32){H=i<<t|(e&(1<<t)-1<<32-t)>>>32-t;return e<<t}H=e<<t-32;return 0}function Wf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;t=e+t>>>0;return(H=i+r+(t>>>0<e>>>0|0)>>>0,t|0)|0}function Gf(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)<32){H=i>>>t;return e>>>t|(i&(1<<t)-1)<<32-t}H=0;return i>>>t-32|0}function Xf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if((t|0)>=4096)return Be(e|0,i|0,t|0)|0;r=e|0;if((e&3)==(i&3)){while(e&3){if(!t)return r|0;c[e>>0]=c[i>>0]|0;e=e+1|0;i=i+1|0;t=t-1|0}while((t|0)>=4){h[e>>2]=h[i>>2];e=e+4|0;i=i+4|0;t=t-4|0}}while((t|0)>0){c[e>>0]=c[i>>0]|0;e=e+1|0;i=i+1|0;t=t-1|0}return r|0}function Kf(e){e=e|0;var i=0;i=c[M+(e&255)>>0]|0;if((i|0)<8)return i|0;i=c[M+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=c[M+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(c[M+(e>>>24)>>0]|0)+24|0}function $f(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;a=e&65535;n=i&65535;t=ue(n,a)|0;r=e>>>16;e=(t>>>16)+(ue(n,r)|0)|0;n=i>>>16;i=ue(n,a)|0;return(H=(e>>>16)+(ue(n,r)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|t&65535|0)|0}function Jf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;l=i>>31|((i|0)<0?-1:0)<<1;f=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;a=r>>31|((r|0)<0?-1:0)<<1;n=((r|0)<0?-1:0)>>31|((r|0)<0?-1:0)<<1;s=jf(l^e,f^i,l,f)|0;o=H;e=a^l;i=n^f;return jf((tl(s,o,jf(a^t,n^r,a,n)|0,H,0)|0)^e,H^i,e,i)|0}function Qf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;n=k;k=k+16|0;s=n|0;o=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;l=r>>31|((r|0)<0?-1:0)<<1;f=((r|0)<0?-1:0)>>31|((r|0)<0?-1:0)<<1;e=jf(o^e,a^i,o,a)|0;i=H;tl(e,i,jf(l^t,f^r,l,f)|0,H,s)|0;r=jf(h[s>>2]^o,h[s+4>>2]^a,o,a)|0;t=H;k=n;return(H=t,r)|0}function Zf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=e;a=t;t=$f(n,a)|0;e=H;return(H=(ue(i,a)|0)+(ue(r,n)|0)+e|e&0,t|0|0)|0}function el(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return tl(e,i,t,r,0)|0}function il(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;a=k;k=k+16|0;n=a|0;tl(e,i,t,r,n)|0;k=a;return(H=h[n+4>>2]|0,h[n>>2]|0)|0}function tl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;u=e;f=i;l=f;o=t;d=r;s=d;if(!l){a=(n|0)!=0;if(!s){if(a){h[n>>2]=(u>>>0)%(o>>>0);h[n+4>>2]=0}d=0;n=(u>>>0)/(o>>>0)>>>0;return(H=d,n)|0}else{if(!a){d=0;n=0;return(H=d,n)|0}h[n>>2]=e|0;h[n+4>>2]=i&0;d=0;n=0;return(H=d,n)|0}}a=(s|0)==0;do if(o){if(!a){a=(de(s|0)|0)-(de(l|0)|0)|0;if(a>>>0<=31){c=a+1|0;s=31-a|0;i=a-31>>31;o=c;e=u>>>(c>>>0)&i|l<<s;i=l>>>(c>>>0)&i;a=0;s=u<<s;break}if(!n){d=0;n=0;return(H=d,n)|0}h[n>>2]=e|0;h[n+4>>2]=f|i&0;d=0;n=0;return(H=d,n)|0}a=o-1|0;if(a&o){s=(de(o|0)|0)+33-(de(l|0)|0)|0;b=64-s|0;c=32-s|0;f=c>>31;m=s-32|0;i=m>>31;o=s;e=c-1>>31&l>>>(m>>>0)|(l<<c|u>>>(s>>>0))&i;i=i&l>>>(s>>>0);a=u<<b&f;s=(l<<b|u>>>(m>>>0))&f|u<<c&s-33>>31;
break}if(n){h[n>>2]=a&u;h[n+4>>2]=0}if((o|0)==1){m=f|i&0;b=e|0|0;return(H=m,b)|0}else{b=Kf(o|0)|0;m=l>>>(b>>>0)|0;b=l<<32-b|u>>>(b>>>0)|0;return(H=m,b)|0}}else{if(a){if(n){h[n>>2]=(l>>>0)%(o>>>0);h[n+4>>2]=0}m=0;b=(l>>>0)/(o>>>0)>>>0;return(H=m,b)|0}if(!u){if(n){h[n>>2]=0;h[n+4>>2]=(l>>>0)%(s>>>0)}m=0;b=(l>>>0)/(s>>>0)>>>0;return(H=m,b)|0}a=s-1|0;if(!(a&s)){if(n){h[n>>2]=e|0;h[n+4>>2]=a&l|i&0}m=0;b=l>>>((Kf(s|0)|0)>>>0);return(H=m,b)|0}a=(de(s|0)|0)-(de(l|0)|0)|0;if(a>>>0<=30){i=a+1|0;s=31-a|0;o=i;e=l<<s|u>>>(i>>>0);i=l>>>(i>>>0);a=0;s=u<<s;break}if(!n){m=0;b=0;return(H=m,b)|0}h[n>>2]=e|0;h[n+4>>2]=f|i&0;m=0;b=0;return(H=m,b)|0}while(0);if(!o){l=s;f=0;s=0}else{c=t|0|0;u=d|r&0;l=Wf(c|0,u|0,-1,-1)|0;t=H;f=s;s=0;do{r=f;f=a>>>31|f<<1;a=s|a<<1;r=e<<1|r>>>31|0;d=e>>>31|i<<1|0;jf(l,t,r,d)|0;b=H;m=b>>31|((b|0)<0?-1:0)<<1;s=m&1;e=jf(r,d,m&c,(((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1)&u)|0;i=H;o=o-1|0}while((o|0)!=0);l=f;f=0}o=0;if(n){h[n>>2]=e;h[n+4>>2]=i}m=(a|0)>>>31|(l|o)<<1|(o<<1|a>>>31)&0|f;b=(a<<1|0>>>31)&-2|s;return(H=m,b)|0}function rl(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;return Al[e&3](i|0,t|0,r|0,n|0,a|0,o|0,s|0)|0}function nl(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return Pl[e&63](i|0,t|0,r|0)|0}function al(e,i){e=e|0;i=i|0;return+Il[e&3](i|0)}function ol(e,i){e=e|0;i=i|0;Ll[e&7](i|0)}function sl(e,i,t){e=e|0;i=i|0;t=t|0;Dl[e&7](i|0,t|0)}function fl(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;return Rl[e&7](i|0,t|0,r|0,n|0,a|0,o|0)|0}function ll(e,i){e=e|0;i=i|0;return Ol[e&15](i|0)|0}function ul(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;Bl[e&15](i|0,t|0,r|0)}function cl(e,i,t,r,n,a,o,s,f,l,u,c){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;c=c|0;return Nl[e&3](i|0,t|0,r|0,n|0,a|0,o|0,s|0,f|0,l|0,u|0,c|0)|0}function dl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;return Fl[e&63](i|0,t|0,r|0,n|0)|0}function hl(e,i,t){e=e|0;i=i|0;t=t|0;return Ul[e&7](i|0,t|0)|0}function ml(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;return Hl[e&3](i|0,t|0,r|0,n|0,a|0)|0}function bl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;zl[e&3](i|0,t|0,r|0,n|0)}function vl(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;he(0);return 0}function wl(e,i,t){e=e|0;i=i|0;t=t|0;he(1);return 0}function pl(e){e=e|0;he(2);return 0}function gl(e){e=e|0;he(3)}function kl(e,i){e=e|0;i=i|0;he(4)}function _l(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;he(5);return 0}function yl(e){e=e|0;he(6);return 0}function Tl(e,i,t){e=e|0;i=i|0;t=t|0;he(7)}function Ml(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;he(8);return 0}function Cl(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;he(9);return 0}function xl(e,i){e=e|0;i=i|0;he(10);return 0}function El(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;he(11);return 0}function Sl(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;he(12)}var Al=[vl,ua,Vi,vl];var Pl=[wl,Af,Xs,Ws,Ir,Lr,Dr,Rr,Un,Hn,jn,aa,ga,Bi,$i,ka,_a,Oi,Ni,Yn,Vn,qn,Wn,Ca,xa,Ea,Sa,Pa,Ia,Da,Ra,Oa,Ba,Na,Fa,Ua,Ha,za,ja,Ya,Va,qa,Wa,Ga,Xa,Ka,$a,Ja,Qa,Za,eo,io,et,it,tt,rt,nt,at,ot,st,qs,Gs,wl,wl];var Il=[pl,to,ro,pl];var Ll=[gl,ta,Yi,ir,tr,Cf,xf,gl];var Dl=[kl,wr,pr,gr,Zr,ea,Di,kl];var Rl=[_l,la,ji,Ta,zi,_l,_l,_l];var Ol=[yl,Vs,ba,va,Ki,Xi,Js,No,Ro,yl,yl,yl,yl,yl,yl,yl];var Bl=[Tl,Si,Ai,Pi,Ii,yi,Ti,Mi,Ci,pi,gi,ki,_i,da,Gi,Tl];var Nl=[Ml,fa,Hi,Ml];var Fl=[Cl,lo,uo,ii,ti,ri,ni,ai,oi,si,fi,li,ui,ci,di,hi,mi,bi,vi,wi,pt,gt,kt,dt,ht,mt,bt,vt,wt,Er,Sr,Ar,Pr,wa,oa,Li,Ui,ya,ra,Fi,Ri,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl,Cl];var Ul=[xl,zn,ft,lt,ut,ct,xl,xl];var Hl=[El,pa,qi,El];var zl=[Sl,zo,Vo,Sl];return{_opj_stream_destroy:Br,_opj_stream_set_read_function:Nr,_opj_read_tile_header:pn,_opj_set_warning_handler:fn,_opj_destroy_cstr_info:Rn,_opj_image_create:tn,_opj_set_error_handler:ln,_opj_stream_set_user_data:zr,_opj_end_decompress:Sn,_bitshift64Lshr:Gf,_opj_stream_set_seek_function:Fr,_opj_decode:vn,_opj_set_decoded_resolution_factor:_n,_i64Add:Wf,_opj_stream_create_default_file_stream:Nn,_opj_encode:xn,_bitshift64Ashr:Yf,_opj_get_decoded_tile:kn,_memset:Vf,_opj_version:cn,_memcpy:Xf,_opj_destroy_cstr_index:Bn,_opj_stream_set_user_data_length:jr,_opj_get_cstr_index:On,_opj_image_destroy:rn,_opj_stream_create_file_stream:Fn,_opj_setup_encoder:Mn,_opj_stream_default_create:Or,_bitshift64Shl:qf,_opj_stream_create:xr,_jp2_version:vr,_i64Subtract:jf,_opj_stream_set_skip_function:Hr,_opj_set_default_decoder_parameters:hn,_opj_read_header:bn,_opj_get_cstr_info:Dn,_opj_set_default_encoder_parameters:Tn,_opj_set_decode_area:wn,_opj_stream_set_write_function:Ur,_opj_dump_codec:Ln,_opj_create_decompress:dn,_opj_decode_tile_data:gn,_free:Rf,_opj_image_tile_create:on,_opj_set_MCT:An,_opj_set_info_handler:sn,_opj_start_compress:Cn,_opj_write_tile:Pn,_opj_setup_decoder:mn,_malloc:Df,_opj_end_compress:En,_opj_destroy_codec:In,_jp2_decode:br,_opj_stream_create_buffer_stream:un,_opj_create_compress:yn,runPostSets:zf,_emscripten_replace_memory:ei,stackAlloc:or,stackSave:sr,stackRestore:fr,establishStackSpace:lr,setThrew:ur,setTempRet0:hr,getTempRet0:mr,dynCall_iiiiiiii:rl,dynCall_iiii:nl,dynCall_di:al,dynCall_vi:ol,dynCall_vii:sl,dynCall_iiiiiii:fl,dynCall_ii:ll,dynCall_viii:ul,dynCall_iiiiiiiiiiii:cl,dynCall_iiiii:dl,dynCall_iii:hl,dynCall_iiiiii:ml,dynCall_viiii:bl}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),_opj_stream_destroy=Module._opj_stream_destroy=asm._opj_stream_destroy,_opj_stream_set_read_function=Module._opj_stream_set_read_function=asm._opj_stream_set_read_function,_opj_read_tile_header=Module._opj_read_tile_header=asm._opj_read_tile_header,_opj_set_warning_handler=Module._opj_set_warning_handler=asm._opj_set_warning_handler,_opj_destroy_cstr_info=Module._opj_destroy_cstr_info=asm._opj_destroy_cstr_info,_opj_image_create=Module._opj_image_create=asm._opj_image_create,_opj_set_error_handler=Module._opj_set_error_handler=asm._opj_set_error_handler,_opj_image_tile_create=Module._opj_image_tile_create=asm._opj_image_tile_create,_opj_end_decompress=Module._opj_end_decompress=asm._opj_end_decompress,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,_opj_stream_set_seek_function=Module._opj_stream_set_seek_function=asm._opj_stream_set_seek_function,_opj_decode=Module._opj_decode=asm._opj_decode,_opj_set_decoded_resolution_factor=Module._opj_set_decoded_resolution_factor=asm._opj_set_decoded_resolution_factor,_opj_stream_create_default_file_stream=Module._opj_stream_create_default_file_stream=asm._opj_stream_create_default_file_stream,_opj_set_default_decoder_parameters=Module._opj_set_default_decoder_parameters=asm._opj_set_default_decoder_parameters,_bitshift64Ashr=Module._bitshift64Ashr=asm._bitshift64Ashr,_opj_get_decoded_tile=Module._opj_get_decoded_tile=asm._opj_get_decoded_tile,_memset=Module._memset=asm._memset,_opj_version=Module._opj_version=asm._opj_version,_memcpy=Module._memcpy=asm._memcpy,_opj_destroy_cstr_index=Module._opj_destroy_cstr_index=asm._opj_destroy_cstr_index,_opj_stream_set_user_data_length=Module._opj_stream_set_user_data_length=asm._opj_stream_set_user_data_length,_opj_get_cstr_index=Module._opj_get_cstr_index=asm._opj_get_cstr_index,_opj_image_destroy=Module._opj_image_destroy=asm._opj_image_destroy,_opj_stream_create_file_stream=Module._opj_stream_create_file_stream=asm._opj_stream_create_file_stream,_opj_setup_encoder=Module._opj_setup_encoder=asm._opj_setup_encoder,_opj_stream_default_create=Module._opj_stream_default_create=asm._opj_stream_default_create,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,_opj_stream_create=Module._opj_stream_create=asm._opj_stream_create,_jp2_version=Module._jp2_version=asm._jp2_version,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_opj_stream_set_skip_function=Module._opj_stream_set_skip_function=asm._opj_stream_set_skip_function,_opj_encode=Module._opj_encode=asm._opj_encode,_i64Add=Module._i64Add=asm._i64Add,_opj_get_cstr_info=Module._opj_get_cstr_info=asm._opj_get_cstr_info,_opj_set_default_encoder_parameters=Module._opj_set_default_encoder_parameters=asm._opj_set_default_encoder_parameters,_opj_set_decode_area=Module._opj_set_decode_area=asm._opj_set_decode_area,_opj_stream_set_write_function=Module._opj_stream_set_write_function=asm._opj_stream_set_write_function,_opj_dump_codec=Module._opj_dump_codec=asm._opj_dump_codec,_opj_read_header=Module._opj_read_header=asm._opj_read_header,_opj_create_decompress=Module._opj_create_decompress=asm._opj_create_decompress,_opj_decode_tile_data=Module._opj_decode_tile_data=asm._opj_decode_tile_data,_opj_set_info_handler=Module._opj_set_info_handler=asm._opj_set_info_handler,_opj_stream_set_user_data=Module._opj_stream_set_user_data=asm._opj_stream_set_user_data,_opj_set_MCT=Module._opj_set_MCT=asm._opj_set_MCT,_free=Module._free=asm._free,runPostSets=Module.runPostSets=asm.runPostSets,_opj_start_compress=Module._opj_start_compress=asm._opj_start_compress,_opj_write_tile=Module._opj_write_tile=asm._opj_write_tile,_opj_setup_decoder=Module._opj_setup_decoder=asm._opj_setup_decoder,_malloc=Module._malloc=asm._malloc,_opj_end_compress=Module._opj_end_compress=asm._opj_end_compress,_opj_destroy_codec=Module._opj_destroy_codec=asm._opj_destroy_codec,_emscripten_replace_memory=Module._emscripten_replace_memory=asm._emscripten_replace_memory,_jp2_decode=Module._jp2_decode=asm._jp2_decode,_opj_stream_create_buffer_stream=Module._opj_stream_create_buffer_stream=asm._opj_stream_create_buffer_stream,_opj_create_compress=Module._opj_create_compress=asm._opj_create_compress,dynCall_iiiiiiii=Module.dynCall_iiiiiiii=asm.dynCall_iiiiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_di=Module.dynCall_di=asm.dynCall_di,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_iiiiiiiiiiii=Module.dynCall_iiiiiiiiiiii=asm.dynCall_iiiiiiiiiiii,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(i){function t(){for(var e=0;e<3;e++)n.push(0)}assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),i=i||[],ensureInitRuntime();var r=i.length+1,n=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];t();for(var a=0;a<r-1;a+=1)n.push(allocate(intArrayFromString(i[a]),"i8",ALLOC_NORMAL)),t();n.push(0),n=allocate(n,"i32",ALLOC_NORMAL);try{var o=Module._main(r,n,0);exit(o,!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),Module},CharLS=function(Module){function globalEval(e){eval.call(null,e)}function assert(e,i){e||abort("Assertion failed: "+i)}function getCFunc(ident){var func=Module["_"+ident];if(!func)try{func=eval("_"+ident)}catch(e){}return assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)"),func}function setValue(e,i,t,r){switch(t=t||"i8","*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":HEAP8[e>>0]=i;break;case"i8":HEAP8[e>>0]=i;break;case"i16":HEAP16[e>>1]=i;break;case"i32":HEAP32[e>>2]=i;break;case"i64":tempI64=[i>>>0,(tempDouble=i,+Math_abs(tempDouble)>=1?tempDouble>0?(0|Math_min(+Math_floor(tempDouble/4294967296),4294967295))>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[e>>2]=tempI64[0],HEAP32[e+4>>2]=tempI64[1];break;case"float":HEAPF32[e>>2]=i;break;case"double":HEAPF64[e>>3]=i;break;default:abort("invalid type for setValue: "+t)}}function getValue(e,i,t){switch(i=i||"i8","*"===i.charAt(i.length-1)&&(i="i32"),i){case"i1":return HEAP8[e>>0];case"i8":return HEAP8[e>>0];case"i16":return HEAP16[e>>1];case"i32":return HEAP32[e>>2];case"i64":return HEAP32[e>>2];case"float":return HEAPF32[e>>2];case"double":return HEAPF64[e>>3];default:abort("invalid type for setValue: "+i)}return null}function allocate(e,i,t,r){var n,a;"number"==typeof e?(n=!0,a=e):(n=!1,a=e.length);var o="string"==typeof i?i:null,s;if(s=t==ALLOC_NONE?r:[_malloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][void 0===t?ALLOC_STATIC:t](Math.max(a,o?1:i.length)),n){var r=s,f;for(assert(0==(3&s)),f=s+(a&-4);r<f;r+=4)HEAP32[r>>2]=0;for(f=s+a;r<f;)HEAP8[r++>>0]=0;return s}if("i8"===o)return e.subarray||e.slice?HEAPU8.set(e,s):HEAPU8.set(new Uint8Array(e),s),s;for(var l=0,u,c,d;l<a;){var h=e[l];"function"==typeof h&&(h=Runtime.getFunctionIndex(h)),u=o||i[l],0!==u?("i64"==u&&(u="i32"),setValue(s+l,h,u),d!==u&&(c=Runtime.getNativeTypeSize(u),d=u),l+=c):l++}return s}function getMemory(e){return staticSealed?"undefined"!=typeof _sbrk&&!_sbrk.called||!runtimeInitialized?Runtime.dynamicAlloc(e):_malloc(e):Runtime.staticAlloc(e)}function Pointer_stringify(e,i){if(0===i||!e)return"";for(var t=0,r,n=0;;){if(r=HEAPU8[e+n>>0],t|=r,0==r&&!i)break;if(n++,i&&n==i)break}i||(i=n);var a="";if(t<128){for(var o=1024,s;i>0;)s=String.fromCharCode.apply(String,HEAPU8.subarray(e,e+Math.min(i,o))),a=a?a+s:s,e+=o,i-=o;return a}return Module.UTF8ToString(e)}function AsciiToString(e){for(var i="";;){var t=HEAP8[e++>>0];if(!t)return i;i+=String.fromCharCode(t)}}function stringToAscii(e,i){return writeAsciiToMemory(e,i,!1)}function UTF8ArrayToString(e,i){for(var t,r,n,a,o,s,f="";;){if(t=e[i++],!t)return f;if(128&t)if(r=63&e[i++],192!=(224&t))if(n=63&e[i++],224==(240&t)?t=(15&t)<<12|r<<6|n:(a=63&e[i++],240==(248&t)?t=(7&t)<<18|r<<12|n<<6|a:(o=63&e[i++],248==(252&t)?t=(3&t)<<24|r<<18|n<<12|a<<6|o:(s=63&e[i++],t=(1&t)<<30|r<<24|n<<18|a<<12|o<<6|s))),t<65536)f+=String.fromCharCode(t);else{var l=t-65536;f+=String.fromCharCode(55296|l>>10,56320|1023&l)}else f+=String.fromCharCode((31&t)<<6|r);else f+=String.fromCharCode(t)}}function UTF8ToString(e){return UTF8ArrayToString(HEAPU8,e)}function stringToUTF8Array(e,i,t,r){if(!(r>0))return 0;for(var n=t,a=t+r-1,o=0;o<e.length;++o){var s=e.charCodeAt(o);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),s<=127){if(t>=a)break;i[t++]=s}else if(s<=2047){if(t+1>=a)break;i[t++]=192|s>>6,i[t++]=128|63&s}else if(s<=65535){if(t+2>=a)break;i[t++]=224|s>>12,i[t++]=128|s>>6&63,i[t++]=128|63&s}else if(s<=2097151){if(t+3>=a)break;i[t++]=240|s>>18,i[t++]=128|s>>12&63,i[t++]=128|s>>6&63,i[t++]=128|63&s}else if(s<=67108863){if(t+4>=a)break;i[t++]=248|s>>24,i[t++]=128|s>>18&63,i[t++]=128|s>>12&63,i[t++]=128|s>>6&63,i[t++]=128|63&s}else{if(t+5>=a)break;i[t++]=252|s>>30,i[t++]=128|s>>24&63,i[t++]=128|s>>18&63,i[t++]=128|s>>12&63,i[t++]=128|s>>6&63,i[t++]=128|63&s}}return i[t]=0,t-n}function stringToUTF8(e,i,t){return stringToUTF8Array(e,HEAPU8,i,t)}function lengthBytesUTF8(e){for(var i=0,t=0;t<e.length;++t){var r=e.charCodeAt(t);r>=55296&&r<=57343&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++t)),r<=127?++i:i+=r<=2047?2:r<=65535?3:r<=2097151?4:r<=67108863?5:6}return i}function UTF16ToString(e){for(var i=0,t="";;){var r=HEAP16[e+2*i>>1];if(0==r)return t;++i,t+=String.fromCharCode(r)}}function stringToUTF16(e,i,t){if(void 0===t&&(t=2147483647),t<2)return 0;t-=2;for(var r=i,n=t<2*e.length?t/2:e.length,a=0;a<n;++a){var o=e.charCodeAt(a);HEAP16[i>>1]=o,i+=2}return HEAP16[i>>1]=0,i-r}function lengthBytesUTF16(e){return 2*e.length}function UTF32ToString(e){for(var i=0,t="";;){var r=HEAP32[e+4*i>>2];if(0==r)return t;if(++i,r>=65536){var n=r-65536;t+=String.fromCharCode(55296|n>>10,56320|1023&n)}else t+=String.fromCharCode(r)}}function stringToUTF32(e,i,t){if(void 0===t&&(t=2147483647),t<4)return 0;for(var r=i,n=r+t-4,a=0;a<e.length;++a){var o=e.charCodeAt(a);if(o>=55296&&o<=57343){var s=e.charCodeAt(++a);o=65536+((1023&o)<<10)|1023&s}if(HEAP32[i>>2]=o,i+=4,i+4>n)break}return HEAP32[i>>2]=0,i-r}function lengthBytesUTF32(e){for(var i=0,t=0;t<e.length;++t){var r=e.charCodeAt(t);r>=55296&&r<=57343&&++t,i+=4}return i}function demangle(e){function i(i){i&&Module.print(i),Module.print(e);for(var t="",r=0;r<f;r++)t+=" ";Module.print(t+"^")}function t(){f++,"K"===e[f]&&f++;for(var i=[];"E"!==e[f];)if("S"!==e[f])if("C"!==e[f]){var t=parseInt(e.substr(f)),r=t.toString().length;if(!t||!r){f--;break}var n=e.substr(f+r,t);i.push(n),u.push(n),f+=r+t}else i.push(i[i.length-1]),f+=2;else{f++;var a=e.indexOf("_",f),o=e.substring(f,a)||0;i.push(u[o]||"?"),f=a+1}return f++,i}function r(i,n,a){function o(){return"("+u.join(", ")+")"}n=n||1/0;var s="",u=[],d;if("N"===e[f]){if(d=t().join("::"),n--,0===n)return i?[d]:d}else{("K"===e[f]||c&&"L"===e[f])&&f++;var h=parseInt(e.substr(f));if(h){var m=h.toString().length;d=e.substr(f+m,h),f+=m+h}}if(c=!1,"I"===e[f]){f++;var b=r(!0),v=r(!0,1,!0);s+=v[0]+" "+d+"<"+b.join(", ")+">"}else s=d;e:for(;f<e.length&&n-- >0;){var w=e[f++];if(w in l)u.push(l[w]);else switch(w){case"P":u.push(r(!0,1,!0)[0]+"*");break;case"R":u.push(r(!0,1,!0)[0]+"&");break;case"L":f++;var p=e.indexOf("E",f),h=p-f;u.push(e.substr(f,h)),f+=h+2;break;case"A":var h=parseInt(e.substr(f));if(f+=h.toString().length,"_"!==e[f])throw"?";f++,u.push(r(!0,1,!0)[0]+" ["+h+"]");break;case"E":break e;default:s+="?"+w;break e}}return a||1!==u.length||"void"!==u[0]||(u=[]),i?(s&&u.push(s+"?"),u):s+o()}var n=!!Module.___cxa_demangle;if(n)try{var a=_malloc(e.length);writeStringToMemory(e.substr(1),a);var o=_malloc(4),s=Module.___cxa_demangle(a,0,0,o);if(0===getValue(o,"i32")&&s)return Pointer_stringify(s)}catch(e){}finally{a&&_free(a),o&&_free(o),s&&_free(s)}var f=3,l={v:"void",b:"bool",c:"char",s:"short",i:"int",l:"long",f:"float",d:"double",w:"wchar_t",a:"signed char",h:"unsigned char",t:"unsigned short",j:"unsigned int",m:"unsigned long",x:"long long",y:"unsigned long long",z:"..."},u=[],c=!0,d=e;try{if("Object._main"==e||"_main"==e)return"main()";if("number"==typeof e&&(e=Pointer_stringify(e)),"_"!==e[0])return e;if("_"!==e[1])return e;if("Z"!==e[2])return e;switch(e[3]){case"n":return"operator new()";case"d":return"operator delete()"}d=r()}catch(e){d+="?"}return d.indexOf("?")>=0&&!n&&Runtime.warnOnce("warning: a problem occurred in builtin C++ name demangling; build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),d}function demangleAll(e){return e.replace(/__Z[\w\d_]+/g,function(e){var i=demangle(e);return e===i?e:e+" ["+i+"]"})}function jsStackTrace(){var e=new Error;if(!e.stack){try{throw new Error(0)}catch(i){e=i}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}function alignMemoryPage(e){return e%4096>0&&(e+=4096-e%4096),e}function enlargeMemory(){var e=TOTAL_MEMORY,i=Math.pow(2,31);if(DYNAMICTOP>=i)return!1;for(;TOTAL_MEMORY<=DYNAMICTOP;)if(TOTAL_MEMORY<i/2)TOTAL_MEMORY=alignMemoryPage(2*TOTAL_MEMORY);else{var t=TOTAL_MEMORY;if(TOTAL_MEMORY=alignMemoryPage((3*TOTAL_MEMORY+i)/4),TOTAL_MEMORY<=t)return!1}if(TOTAL_MEMORY=Math.max(TOTAL_MEMORY,16777216),TOTAL_MEMORY>=i)return!1;try{if(ArrayBuffer.transfer)buffer=ArrayBuffer.transfer(buffer,TOTAL_MEMORY);else{var r=HEAP8;buffer=new ArrayBuffer(TOTAL_MEMORY)}}catch(e){return!1}var n=_emscripten_replace_memory(buffer);return!!n&&(Module.buffer=buffer,Module.HEAP8=HEAP8=new Int8Array(buffer),Module.HEAP16=HEAP16=new Int16Array(buffer),Module.HEAP32=HEAP32=new Int32Array(buffer),Module.HEAPU8=HEAPU8=new Uint8Array(buffer),Module.HEAPU16=HEAPU16=new Uint16Array(buffer),Module.HEAPU32=HEAPU32=new Uint32Array(buffer),Module.HEAPF32=HEAPF32=new Float32Array(buffer),Module.HEAPF64=HEAPF64=new Float64Array(buffer),ArrayBuffer.transfer||HEAP8.set(r),!0)}function callRuntimeCallbacks(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var t=i.func;"number"==typeof t?void 0===i.arg?Runtime.dynCall("v",t):Runtime.dynCall("vi",t,[i.arg]):t(void 0===i.arg?null:i.arg)}else i()}}function preRun(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){runtimeInitialized||(runtimeInitialized=!0,callRuntimeCallbacks(__ATINIT__))}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__),runtimeExited=!0}function postRun(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}function intArrayFromString(e,i,t){var r=t>0?t:lengthBytesUTF8(e)+1,n=new Array(r),a=stringToUTF8Array(e,n,0,n.length);return i&&(n.length=a),n}function intArrayToString(e){for(var i=[],t=0;t<e.length;t++){var r=e[t];r>255&&(r&=255),i.push(String.fromCharCode(r))}return i.join("")}function writeStringToMemory(e,i,t){for(var r=intArrayFromString(e,t),n=0;n<r.length;){var a=r[n];HEAP8[i+n>>0]=a,n+=1}}function writeArrayToMemory(e,i){for(var t=0;t<e.length;t++)HEAP8[i++>>0]=e[t]}function writeAsciiToMemory(e,i,t){for(var r=0;r<e.length;++r)HEAP8[i++>>0]=e.charCodeAt(r);t||(HEAP8[i>>0]=0)}function unSign(e,i,t){return e>=0?e:i<=32?2*Math.abs(1<<i-1)+e:Math.pow(2,i)+e}function reSign(e,i,t){if(e<=0)return e;var r=i<=32?Math.abs(1<<i-1):Math.pow(2,i-1);return e>=r&&(i<=32||e>r)&&(e=-2*r+e),e}function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies&&Module.monitorRunDependencies(runDependencies),0==runDependencies&&(null!==runDependencyWatcher&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var i=dependenciesFulfilled;dependenciesFulfilled=null,i()}}function copyTempFloat(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3]}function copyTempDouble(e){HEAP8[tempDoublePtr]=HEAP8[e],HEAP8[tempDoublePtr+1]=HEAP8[e+1],HEAP8[tempDoublePtr+2]=HEAP8[e+2],HEAP8[tempDoublePtr+3]=HEAP8[e+3],HEAP8[tempDoublePtr+4]=HEAP8[e+4],HEAP8[tempDoublePtr+5]=HEAP8[e+5],HEAP8[tempDoublePtr+6]=HEAP8[e+6],HEAP8[tempDoublePtr+7]=HEAP8[e+7]}function _atexit(e,i){__ATEXIT__.unshift({func:e,arg:i})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}function ___assert_fail(e,i,t,r){throw ABORT=!0,"Assertion failed: "+Pointer_stringify(e)+", at: "+[i?Pointer_stringify(i):"unknown filename",t,r?Pointer_stringify(r):"unknown function"]+" at "+stackTrace()}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}function ___resumeException(e){throw EXCEPTIONS.last||(EXCEPTIONS.last=e),EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(e)),e}function ___cxa_find_matching_catch(){var e=EXCEPTIONS.last;if(!e)return 0|(asm.setTempRet0(0),0);var i=EXCEPTIONS.infos[e],t=i.type;if(!t)return 0|(asm.setTempRet0(0),e);var r=Array.prototype.slice.call(arguments),n=Module.___cxa_is_pointer_type(t);___cxa_find_matching_catch.buffer||(___cxa_find_matching_catch.buffer=_malloc(4)),HEAP32[___cxa_find_matching_catch.buffer>>2]=e,e=___cxa_find_matching_catch.buffer;for(var a=0;a<r.length;a++)if(r[a]&&Module.___cxa_can_catch(r[a],t,e))return e=HEAP32[e>>2],i.adjusted=e,0|(asm.setTempRet0(r[a]),e);return e=HEAP32[e>>2],0|(asm.setTempRet0(t),e)}function ___cxa_throw(e,i,t){throw EXCEPTIONS.infos[e]={ptr:e,adjusted:e,type:i,destructor:t,refcount:0},EXCEPTIONS.last=e,"uncaught_exception"in __ZSt18uncaught_exceptionv?__ZSt18uncaught_exceptionv.uncaught_exception++:__ZSt18uncaught_exceptionv.uncaught_exception=1,e}function ___gxx_personality_v0(){}function __isLeapYear(e){return e%4===0&&(e%100!==0||e%400===0)}function __arraySum(e,i){for(var t=0,r=0;r<=i;t+=e[r++]);return t}function __addDays(e,i){for(var t=new Date(e.getTime());i>0;){var r=__isLeapYear(t.getFullYear()),n=t.getMonth(),a=(r?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[n];if(!(i>a-t.getDate()))return t.setDate(t.getDate()+i),t;i-=a-t.getDate()+1,t.setDate(1),n<11?t.setMonth(n+1):(t.setMonth(0),t.setFullYear(t.getFullYear()+1))}return t}function _strftime(e,i,t,r){function n(e,i,t){for(var r="number"==typeof e?e.toString():e||"";r.length<i;)r=t[0]+r;return r}function a(e,i){return n(e,i,"0")}function o(e,i){function t(e){return e<0?-1:e>0?1:0}var r;return 0===(r=t(e.getFullYear()-i.getFullYear()))&&0===(r=t(e.getMonth()-i.getMonth()))&&(r=t(e.getDate()-i.getDate())),r}function s(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function f(e){var i=__addDays(new Date(e.tm_year+1900,0,1),e.tm_yday),t=new Date(i.getFullYear(),0,4),r=new Date(i.getFullYear()+1,0,4),n=s(t),a=s(r);return o(n,i)<=0?o(a,i)<=0?i.getFullYear()+1:i.getFullYear():i.getFullYear()-1}var l=HEAP32[r+40>>2],u={tm_sec:HEAP32[r>>2],tm_min:HEAP32[r+4>>2],tm_hour:HEAP32[r+8>>2],tm_mday:HEAP32[r+12>>2],tm_mon:HEAP32[r+16>>2],tm_year:HEAP32[r+20>>2],tm_wday:HEAP32[r+24>>2],tm_yday:HEAP32[r+28>>2],tm_isdst:HEAP32[r+32>>2],tm_gmtoff:HEAP32[r+36>>2],tm_zone:l?Pointer_stringify(l):""},c=Pointer_stringify(t),d={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var h in d)c=c.replace(new RegExp(h,"g"),d[h]);var m=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b=["January","February","March","April","May","June","July","August","September","October","November","December"],v={"%a":function(e){return m[e.tm_wday].substring(0,3)},"%A":function(e){return m[e.tm_wday]},"%b":function(e){return b[e.tm_mon].substring(0,3)},"%B":function(e){return b[e.tm_mon]},"%C":function(e){var i=e.tm_year+1900;return a(i/100|0,2)},"%d":function(e){return a(e.tm_mday,2)},"%e":function(e){return n(e.tm_mday,2," ")},"%g":function(e){return f(e).toString().substring(2)},"%G":function(e){return f(e)},"%H":function(e){return a(e.tm_hour,2)},"%I":function(e){return a(e.tm_hour<13?e.tm_hour:e.tm_hour-12,2)},"%j":function(e){return a(e.tm_mday+__arraySum(__isLeapYear(e.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,e.tm_mon-1),3)},"%m":function(e){return a(e.tm_mon+1,2)},"%M":function(e){return a(e.tm_min,2)},"%n":function(){return"\n"},"%p":function(e){return e.tm_hour>0&&e.tm_hour<13?"AM":"PM"},"%S":function(e){return a(e.tm_sec,2)},"%t":function(){return"\t"},"%u":function(e){var i=new Date(e.tm_year+1900,e.tm_mon+1,e.tm_mday,0,0,0,0);return i.getDay()||7},"%U":function(e){var i=new Date(e.tm_year+1900,0,1),t=0===i.getDay()?i:__addDays(i,7-i.getDay()),r=new Date(e.tm_year+1900,e.tm_mon,e.tm_mday);if(o(t,r)<0){var n=__arraySum(__isLeapYear(r.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,r.getMonth()-1)-31,s=31-t.getDate(),f=s+n+r.getDate();return a(Math.ceil(f/7),2)}return 0===o(t,i)?"01":"00"},"%V":function(e){var i=new Date(e.tm_year+1900,0,4),t=new Date(e.tm_year+1901,0,4),r=s(i),n=s(t),f=__addDays(new Date(e.tm_year+1900,0,1),e.tm_yday);if(o(f,r)<0)return"53";if(o(n,f)<=0)return"01";var l;return l=r.getFullYear()<e.tm_year+1900?e.tm_yday+32-r.getDate():e.tm_yday+1-r.getDate(),a(Math.ceil(l/7),2)},"%w":function(e){var i=new Date(e.tm_year+1900,e.tm_mon+1,e.tm_mday,0,0,0,0);return i.getDay()},"%W":function(e){var i=new Date(e.tm_year,0,1),t=1===i.getDay()?i:__addDays(i,0===i.getDay()?1:7-i.getDay()+1),r=new Date(e.tm_year+1900,e.tm_mon,e.tm_mday);if(o(t,r)<0){var n=__arraySum(__isLeapYear(r.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,r.getMonth()-1)-31,s=31-t.getDate(),f=s+n+r.getDate();return a(Math.ceil(f/7),2)}return 0===o(t,i)?"01":"00"},"%y":function(e){return(e.tm_year+1900).toString().substring(2)},"%Y":function(e){return e.tm_year+1900},"%z":function(e){var i=e.tm_gmtoff,t=i>=0;return i=Math.abs(i)/60,i=i/60*100+i%60,(t?"+":"-")+String("0000"+i).slice(-4)},"%Z":function(e){return e.tm_zone},"%%":function(){return"%"}};for(var h in v)c.indexOf(h)>=0&&(c=c.replace(new RegExp(h,"g"),v[h](u)));var w=intArrayFromString(c,!1);return w.length>i?0:(writeArrayToMemory(w,e),w.length-1)}function _strftime_l(e,i,t,r){return _strftime(e,i,t,r)}function _abort(){Module.abort()}function _free(){}function ___cxa_free_exception(e){try{return _free(e)}catch(e){}}function ___cxa_end_catch(){if(___cxa_end_catch.rethrown)return void(___cxa_end_catch.rethrown=!1);asm.setThrew(0);var e=EXCEPTIONS.caught.pop();e&&(EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(e)),EXCEPTIONS.last=0)}function _pthread_once(e,i){_pthread_once.seen||(_pthread_once.seen={}),e in _pthread_once.seen||(Runtime.dynCall("v",i),_pthread_once.seen[e]=1)}function ___lock(){}function ___unlock(){}function _pthread_getspecific(e){return PTHREAD_SPECIFIC[e]||0}function ___setErrNo(e){return Module.___errno_location&&(HEAP32[Module.___errno_location()>>2]=e),e}function _sysconf(e){switch(e){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator?navigator.hardwareConcurrency||1:1}return ___setErrNo(ERRNO_CODES.EINVAL),-1}function _pthread_key_create(e,i){return 0==e?ERRNO_CODES.EINVAL:(HEAP32[e>>2]=PTHREAD_SPECIFIC_NEXT_KEY,PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0,PTHREAD_SPECIFIC_NEXT_KEY++,0)}function _emscripten_set_main_loop_timing(e,i){function t(e){e.source===window&&e.data===n&&(e.stopPropagation(),r.shift()())}if(Browser.mainLoop.timingMode=e,
Browser.mainLoop.timingValue=i,!Browser.mainLoop.func)return 1;if(0==e)Browser.mainLoop.scheduler=function e(){setTimeout(Browser.mainLoop.runner,i)},Browser.mainLoop.method="timeout";else if(1==e)Browser.mainLoop.scheduler=function e(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(2==e){if(!window.setImmediate){var r=[],n="__emcc";window.addEventListener("message",t,!0),window.setImmediate=function e(i){r.push(i),window.postMessage(n,"*")}}Browser.mainLoop.scheduler=function e(){window.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(e,i,t,r,n){Module.noExitRuntime=!0,assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters."),Browser.mainLoop.func=e,Browser.mainLoop.arg=r;var a=Browser.mainLoop.currentlyRunningMainloop;if(Browser.mainLoop.runner=function i(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var t=Date.now(),n=Browser.mainLoop.queue.shift();if(n.func(n.arg),Browser.mainLoop.remainingBlockers){var o=Browser.mainLoop.remainingBlockers,s=o%1==0?o-1:Math.floor(o);n.counted?Browser.mainLoop.remainingBlockers=s:(s+=.5,Browser.mainLoop.remainingBlockers=(8*o+s)/9)}return console.log('main loop blocker "'+n.name+'" took '+(Date.now()-t)+" ms"),Browser.mainLoop.updateStatus(),void setTimeout(Browser.mainLoop.runner,0)}if(!(a<Browser.mainLoop.currentlyRunningMainloop)){if(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,1==Browser.mainLoop.timingMode&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0)return void Browser.mainLoop.scheduler();"timeout"===Browser.mainLoop.method&&Module.ctx&&(Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!"),Browser.mainLoop.method=""),Browser.mainLoop.runIter(function(){"undefined"!=typeof r?Runtime.dynCall("vi",e,[r]):Runtime.dynCall("v",e)}),a<Browser.mainLoop.currentlyRunningMainloop||("object"==typeof SDL&&SDL.audio&&SDL.audio.queueNewAudioData&&SDL.audio.queueNewAudioData(),Browser.mainLoop.scheduler())}}},n||(i&&i>0?_emscripten_set_main_loop_timing(0,1e3/i):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),t)throw"SimulateInfiniteLoop"}function _pthread_setspecific(e,i){return e in PTHREAD_SPECIFIC?(PTHREAD_SPECIFIC[e]=i,0):ERRNO_CODES.EINVAL}function _malloc(e){var i=Runtime.dynamicAlloc(e+8);return i+8&4294967288}function ___cxa_allocate_exception(e){return _malloc(e)}function ___syscall54(e,i){SYSCALLS.varargs=i;try{return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___cxa_pure_virtual(){throw ABORT=!0,"Pure virtual function called!"}function _pthread_cleanup_push(e,i){__ATEXIT__.push(function(){Runtime.dynCall("vi",e,[i])}),_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cond_broadcast(){return 0}function ___cxa_guard_acquire(e){return HEAP8[e>>0]?0:(HEAP8[e>>0]=1,1)}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!"),__ATEXIT__.pop(),_pthread_cleanup_push.level=__ATEXIT__.length}function ___cxa_guard_release(){}function ___cxa_begin_catch(e){return __ZSt18uncaught_exceptionv.uncaught_exception--,EXCEPTIONS.caught.push(e),EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(e)),e}function _llvm_eh_typeid_for(e){return e}function _emscripten_memcpy_big(e,i,t){return HEAPU8.set(HEAPU8.subarray(i,i+t),e),e}function ___syscall6(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD();return FS.close(t),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function _pthread_mutex_lock(){}function _sbrk(e){var i=_sbrk;i.called||(DYNAMICTOP=alignMemoryPage(DYNAMICTOP),i.called=!0,assert(Runtime.dynamicAlloc),i.alloc=Runtime.dynamicAlloc,Runtime.dynamicAlloc=function(){abort("cannot dynamically allocate, sbrk now has control")});var t=DYNAMICTOP;if(0!=e){var r=i.alloc(e);if(!r)return-1>>>0}return t}function ___cxa_guard_abort(){}function _pthread_cond_wait(){return 0}function ___cxa_rethrow(){___cxa_end_catch.rethrown=!0;var e=EXCEPTIONS.caught.pop();throw EXCEPTIONS.last=e,e}function _pthread_mutex_unlock(){}function _time(e){var i=Date.now()/1e3|0;return e&&(HEAP32[e>>2]=i),i}function _pthread_self(){return 0}function ___syscall140(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD(),r=SYSCALLS.get(),n=SYSCALLS.get(),a=SYSCALLS.get(),o=SYSCALLS.get(),s=n;return assert(0===r),FS.llseek(t,s,o),HEAP32[a>>2]=t.position,t.getdents&&0===s&&0===o&&(t.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall146(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.get(),r=SYSCALLS.get(),n=SYSCALLS.get(),a=0;___syscall146.buffer||(___syscall146.buffer=[]);for(var o=___syscall146.buffer,s=0;s<n;s++){for(var f=HEAP32[r+8*s>>2],l=HEAP32[r+(8*s+4)>>2],u=0;u<l;u++){var c=HEAPU8[f+u];0===c||10===c?(Module.print(UTF8ArrayToString(o,0)),o.length=0):o.push(c)}a+=l}return a}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function ___syscall145(e,i){SYSCALLS.varargs=i;try{var t=SYSCALLS.getStreamFromFD(),r=SYSCALLS.get(),n=SYSCALLS.get();return SYSCALLS.doReadv(t,r,n)}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||abort(e),-e.errno}}function invoke_iiiiiiii(e,i,t,r,n,a,o,s){try{return Module.dynCall_iiiiiiii(e,i,t,r,n,a,o,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiii(e,i,t,r,n,a){try{Module.dynCall_viiiii(e,i,t,r,n,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiid(e,i,t,r,n,a,o){try{return Module.dynCall_iiiiiid(e,i,t,r,n,a,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vi(e,i){try{Module.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_vii(e,i,t){try{Module.dynCall_vii(e,i,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiii(e,i,t,r,n,a,o){try{return Module.dynCall_iiiiiii(e,i,t,r,n,a,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_ii(e,i){try{return Module.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u,c){try{return Module.dynCall_iiiiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u,c)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiii(e,i,t,r){try{return Module.dynCall_iiii(e,i,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u,c,d,h,m,b){try{Module.dynCall_viiiiiiiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u,c,d,h,m,b)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiii(e,i,t,r,n,a,o){try{Module.dynCall_viiiiii(e,i,t,r,n,a,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiii(e,i,t,r,n,a,o,s){try{Module.dynCall_viiiiiii(e,i,t,r,n,a,o,s)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u){try{Module.dynCall_viiiiiiiiii(e,i,t,r,n,a,o,s,f,l,u)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iii(e,i,t){try{return Module.dynCall_iii(e,i,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiii(e,i,t,r,n,a){try{return Module.dynCall_iiiiii(e,i,t,r,n,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_diii(e,i,t,r){try{return Module.dynCall_diii(e,i,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_i(e){try{return Module.dynCall_i(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiii(e,i,t,r,n){try{return Module.dynCall_iiiii(e,i,t,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viii(e,i,t,r){try{Module.dynCall_viii(e,i,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_v(e){try{Module.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiiiiii(e,i,t,r,n,a,o,s,f){try{return Module.dynCall_iiiiiiiii(e,i,t,r,n,a,o,s,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_iiiiid(e,i,t,r,n,a){try{return Module.dynCall_iiiiid(e,i,t,r,n,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function invoke_viiii(e,i,t,r,n){try{Module.dynCall_viiii(e,i,t,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;asm.setThrew(1,0)}}function ExitStatus(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function run(e){function i(){Module.calledRun||(Module.calledRun=!0,ABORT||(ensureInitRuntime(),preMain(),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Module._main&&shouldRunNow&&Module.callMain(e),postRun()))}e=e||Module.arguments,null===preloadStartTime&&(preloadStartTime=Date.now()),runDependencies>0||(preRun(),runDependencies>0||Module.calledRun||(Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),i()},1)):i()))}function exit(e,i){if(!i||!Module.noExitRuntime)throw Module.noExitRuntime||(ABORT=!0,EXITSTATUS=e,STACKTOP=initialStackTop,exitRuntime(),Module.onExit&&Module.onExit(e)),ENVIRONMENT_IS_NODE?(process.stdout.once("drain",function(){process.exit(e)}),console.log(" "),setTimeout(function(){process.exit(e)},500)):ENVIRONMENT_IS_SHELL&&"function"==typeof quit&&quit(e),new ExitStatus(e)}function abort(e){void 0!==e?(Module.print(e),Module.printErr(e),e=JSON.stringify(e)):e="",ABORT=!0,EXITSTATUS=1;var i="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.",t="abort("+e+") at "+stackTrace()+i;throw abortDecorators&&abortDecorators.forEach(function(i){t=i(t,e)}),t}Module=Module||{};var Module;Module||(Module=("undefined"!=typeof CharLS?CharLS:null)||{});var moduleOverrides={};for(var key in Module)Module.hasOwnProperty(key)&&(moduleOverrides[key]=Module[key]);var ENVIRONMENT_IS_WEB="object"==typeof window,ENVIRONMENT_IS_WORKER="function"==typeof importScripts,ENVIRONMENT_IS_NODE="object"==typeof process&&"function"==typeof require&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER,ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){Module.print||(Module.print=function e(i){process.stdout.write(i+"\n")}),Module.printErr||(Module.printErr=function e(i){process.stderr.write(i+"\n")});var nodeFS=require("fs"),nodePath=require("path");Module.read=function e(i,t){i=nodePath.normalize(i);var r=nodeFS.readFileSync(i);return r||i==nodePath.resolve(i)||(i=path.join(__dirname,"..","src",i),r=nodeFS.readFileSync(i)),r&&!t&&(r=r.toString()),r},Module.readBinary=function e(i){var t=Module.read(i,!0);return t.buffer||(t=new Uint8Array(t)),assert(t.buffer),t},Module.load=function e(i){globalEval(read(i))},Module.thisProgram||(process.argv.length>1?Module.thisProgram=process.argv[1].replace(/\\/g,"/"):Module.thisProgram="unknown-program"),Module.arguments=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=Module),process.on("uncaughtException",function(e){if(!(e instanceof ExitStatus))throw e}),Module.inspect=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL)Module.print||(Module.print=print),"undefined"!=typeof printErr&&(Module.printErr=printErr),"undefined"!=typeof read?Module.read=read:Module.read=function e(){throw"no read() available (jsc?)"},Module.readBinary=function e(i){if("function"==typeof readbuffer)return new Uint8Array(readbuffer(i));var t=read(i,"binary");return assert("object"==typeof t),t},"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:"undefined"!=typeof arguments&&(Module.arguments=arguments);else{if(!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER)throw"Unknown runtime environment. Where are we?";if(Module.read=function e(i){var t=new XMLHttpRequest;return t.open("GET",i,!1),t.send(null),t.responseText},"undefined"!=typeof arguments&&(Module.arguments=arguments),"undefined"!=typeof console)Module.print||(Module.print=function e(i){console.log(i)}),Module.printErr||(Module.printErr=function e(i){console.log(i)});else{var TRY_USE_DUMP=!1;Module.print||(Module.print=TRY_USE_DUMP&&"undefined"!=typeof dump?function(e){dump(e)}:function(e){})}ENVIRONMENT_IS_WORKER&&(Module.load=importScripts),"undefined"==typeof Module.setWindowTitle&&(Module.setWindowTitle=function(e){document.title=e})}!Module.load&&Module.read&&(Module.load=function e(i){globalEval(Module.read(i))}),Module.print||(Module.print=function(){}),Module.printErr||(Module.printErr=Module.print),Module.arguments||(Module.arguments=[]),Module.thisProgram||(Module.thisProgram="./this.program"),Module.print=Module.print,Module.printErr=Module.printErr,Module.preRun=[],Module.postRun=[];for(var key in moduleOverrides)moduleOverrides.hasOwnProperty(key)&&(Module[key]=moduleOverrides[key]);var Runtime={setTempRet0:function(e){tempRet0=e},getTempRet0:function(){return tempRet0},stackSave:function(){return STACKTOP},stackRestore:function(e){STACKTOP=e},getNativeTypeSize:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:if("*"===e[e.length-1])return Runtime.QUANTUM_SIZE;if("i"===e[0]){var i=parseInt(e.substr(1));return assert(i%8===0),i/8}return 0}},getNativeFieldSize:function(e){return Math.max(Runtime.getNativeTypeSize(e),Runtime.QUANTUM_SIZE)},STACK_ALIGN:16,prepVararg:function(e,i){return"double"===i||"i64"===i?7&e&&(assert(4===(7&e)),e+=4):assert(0===(3&e)),e},getAlignSize:function(e,i,t){return t||"i64"!=e&&"double"!=e?e?Math.min(i||(e?Runtime.getNativeFieldSize(e):0),Runtime.QUANTUM_SIZE):Math.min(i,8):8},dynCall:function(e,i,t){return t&&t.length?(t.splice||(t=Array.prototype.slice.call(t)),t.splice(0,0,i),Module["dynCall_"+e].apply(null,t)):Module["dynCall_"+e].call(null,i)},functionPointers:[],addFunction:function(e){for(var i=0;i<Runtime.functionPointers.length;i++)if(!Runtime.functionPointers[i])return Runtime.functionPointers[i]=e,2*(1+i);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."},removeFunction:function(e){Runtime.functionPointers[(e-2)/2]=null},warnOnce:function(e){Runtime.warnOnce.shown||(Runtime.warnOnce.shown={}),Runtime.warnOnce.shown[e]||(Runtime.warnOnce.shown[e]=1,Module.printErr(e))},funcWrappers:{},getFuncWrapper:function(e,i){assert(i),Runtime.funcWrappers[i]||(Runtime.funcWrappers[i]={});var t=Runtime.funcWrappers[i];return t[e]||(t[e]=function t(){return Runtime.dynCall(i,e,arguments)}),t[e]},getCompilerSetting:function(e){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"},stackAlloc:function(e){var i=STACKTOP;return STACKTOP=STACKTOP+e|0,STACKTOP=STACKTOP+15&-16,i},staticAlloc:function(e){var i=STATICTOP;return STATICTOP=STATICTOP+e|0,STATICTOP=STATICTOP+15&-16,i},dynamicAlloc:function(e){var i=DYNAMICTOP;if(DYNAMICTOP=DYNAMICTOP+e|0,DYNAMICTOP=DYNAMICTOP+15&-16,DYNAMICTOP>=TOTAL_MEMORY){var t=enlargeMemory();if(!t)return DYNAMICTOP=i,0}return i},alignMemory:function(e,i){var t=e=Math.ceil(e/(i?i:16))*(i?i:16);return t},makeBigInt:function(e,i,t){var r=t?+(e>>>0)+4294967296*+(i>>>0):+(e>>>0)+4294967296*+(0|i);return r},GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module.Runtime=Runtime;var __THREW__=0,ABORT=!1,EXITSTATUS=0,undef=0,tempValue,tempInt,tempBigInt,tempInt2,tempBigInt2,tempPair,tempBigIntI,tempBigIntR,tempBigIntS,tempBigIntP,tempBigIntD,tempDouble,tempFloat,tempI64,tempI64b,tempRet0,tempRet1,tempRet2,tempRet3,tempRet4,tempRet5,tempRet6,tempRet7,tempRet8,tempRet9,globalScope=this,cwrap,ccall;!function(){function parseJSFunc(e){var i=e.toString().match(sourceRegex).slice(1);return{arguments:i[0],body:i[1],returnValue:i[2]}}var JSfuncs={stackSave:function(){Runtime.stackSave()},stackRestore:function(){Runtime.stackRestore()},arrayToC:function(e){var i=Runtime.stackAlloc(e.length);return writeArrayToMemory(e,i),i},stringToC:function(e){var i=0;return null!==e&&void 0!==e&&0!==e&&(i=Runtime.stackAlloc((e.length<<2)+1),writeStringToMemory(e,i)),i}},toC={string:JSfuncs.stringToC,array:JSfuncs.arrayToC};ccall=function e(i,t,r,n,a){var o=getCFunc(i),s=[],f=0;if(n)for(var l=0;l<n.length;l++){var u=toC[r[l]];u?(0===f&&(f=Runtime.stackSave()),s[l]=u(n[l])):s[l]=n[l]}var c=o.apply(null,s);if("string"===t&&(c=Pointer_stringify(c)),0!==f){if(a&&a.async)return void EmterpreterAsync.asyncFinalizers.push(function(){Runtime.stackRestore(f)});Runtime.stackRestore(f)}return c};var sourceRegex=/^function\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/,JSsource={};for(var fun in JSfuncs)JSfuncs.hasOwnProperty(fun)&&(JSsource[fun]=parseJSFunc(JSfuncs[fun]));cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident),numericArgs=argTypes.every(function(e){return"number"===e}),numericRet="string"!==returnType;if(numericRet&&numericArgs)return cfunc;var argNames=argTypes.map(function(e,i){return"$"+i}),funcstr="(function("+argNames.join(",")+") {",nargs=argTypes.length;if(!numericArgs){funcstr+="var stack = "+JSsource.stackSave.body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if("number"!==type){var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";",funcstr+=convertCode.body+";",funcstr+=arg+"="+convertCode.returnValue+";"}}}var cfuncname=parseJSFunc(function(){return cfunc}).returnValue;if(funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");",!numericRet){var strgfy=parseJSFunc(function(){return Pointer_stringify}).returnValue;funcstr+="ret = "+strgfy+"(ret);"}return numericArgs||(funcstr+=JSsource.stackRestore.body.replace("()","(stack)")+";"),funcstr+="return ret})",eval(funcstr)}}(),Module.ccall=ccall,Module.cwrap=cwrap,Module.setValue=setValue,Module.getValue=getValue;var ALLOC_NORMAL=0,ALLOC_STACK=1,ALLOC_STATIC=2,ALLOC_DYNAMIC=3,ALLOC_NONE=4;Module.ALLOC_NORMAL=ALLOC_NORMAL,Module.ALLOC_STACK=ALLOC_STACK,Module.ALLOC_STATIC=ALLOC_STATIC,Module.ALLOC_DYNAMIC=ALLOC_DYNAMIC,Module.ALLOC_NONE=ALLOC_NONE,Module.allocate=allocate,Module.getMemory=getMemory,Module.Pointer_stringify=Pointer_stringify,Module.AsciiToString=AsciiToString,Module.stringToAscii=stringToAscii,Module.UTF8ArrayToString=UTF8ArrayToString,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8Array=stringToUTF8Array,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,Module.UTF16ToString=UTF16ToString,Module.stringToUTF16=stringToUTF16,Module.lengthBytesUTF16=lengthBytesUTF16,Module.UTF32ToString=UTF32ToString,Module.stringToUTF32=stringToUTF32,Module.lengthBytesUTF32=lengthBytesUTF32,Module.stackTrace=stackTrace;var PAGE_SIZE=4096,HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64,STATIC_BASE=0,STATICTOP=0,staticSealed=!1,STACK_BASE=0,STACKTOP=0,STACK_MAX=0,DYNAMIC_BASE=0,DYNAMICTOP=0,byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),byteLength(new ArrayBuffer(4))}catch(e){byteLength=function(e){return e.byteLength}}for(var TOTAL_STACK=Module.TOTAL_STACK||5242880,TOTAL_MEMORY=Module.TOTAL_MEMORY||16777216,totalMemory=65536;totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK;)totalMemory<16777216?totalMemory*=2:totalMemory+=16777216;totalMemory=Math.max(totalMemory,16777216),totalMemory!==TOTAL_MEMORY&&(TOTAL_MEMORY=totalMemory),assert("undefined"!=typeof Int32Array&&"undefined"!=typeof Float64Array&&!!new Int32Array(1).subarray&&!!new Int32Array(1).set,"JS engine does not provide full typed array support");var buffer;buffer=new ArrayBuffer(TOTAL_MEMORY),HEAP8=new Int8Array(buffer),HEAP16=new Int16Array(buffer),HEAP32=new Int32Array(buffer),HEAPU8=new Uint8Array(buffer),HEAPU16=new Uint16Array(buffer),HEAPU32=new Uint32Array(buffer),HEAPF32=new Float32Array(buffer),HEAPF64=new Float64Array(buffer),HEAP32[0]=255,assert(255===HEAPU8[0]&&0===HEAPU8[3],"Typed arrays 2 must be run on a little-endian system"),Module.HEAP=HEAP,Module.buffer=buffer,Module.HEAP8=HEAP8,Module.HEAP16=HEAP16,Module.HEAP32=HEAP32,Module.HEAPU8=HEAPU8,Module.HEAPU16=HEAPU16,Module.HEAPU32=HEAPU32,Module.HEAPF32=HEAPF32,Module.HEAPF64=HEAPF64;var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],runtimeInitialized=!1,runtimeExited=!1;Module.addOnPreRun=addOnPreRun,Module.addOnInit=addOnInit,Module.addOnPreMain=addOnPreMain,Module.addOnExit=addOnExit,Module.addOnPostRun=addOnPostRun,Module.intArrayFromString=intArrayFromString,Module.intArrayToString=intArrayToString,Module.writeStringToMemory=writeStringToMemory,Module.writeArrayToMemory=writeArrayToMemory,Module.writeAsciiToMemory=writeAsciiToMemory,Math.imul&&Math.imul(4294967295,5)===-5||(Math.imul=function e(i,t){var r=i>>>16,n=65535&i,a=t>>>16,o=65535&t;return n*o+(r*o+n*a<<16)|0}),Math.imul=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var i=0;i<32;i++)if(e&1<<31-i)return i;return 32}),Math.clz32=Math.clz32;var Math_abs=Math.abs,Math_cos=Math.cos,Math_sin=Math.sin,Math_tan=Math.tan,Math_acos=Math.acos,Math_asin=Math.asin,Math_atan=Math.atan,Math_atan2=Math.atan2,Math_exp=Math.exp,Math_log=Math.log,Math_sqrt=Math.sqrt,Math_ceil=Math.ceil,Math_floor=Math.floor,Math_pow=Math.pow,Math_imul=Math.imul,Math_fround=Math.fround,Math_min=Math.min,Math_clz32=Math.clz32,runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.preloadedImages={},Module.preloadedAudios={};var memoryInitializer=null,ASM_CONSTS=[];STATIC_BASE=8,STATICTOP=STATIC_BASE+58208,__ATINIT__.push({func:function(){__GLOBAL__I_000101()}},{func:function(){__GLOBAL__sub_I_jpegls_cpp()}},{func:function(){__GLOBAL__sub_I_iostream_cpp()}}),allocate([0,0,0,0,0,0,0,0,128,142,0,0,34,188,0,0,32,0,0,0,0,0,0,0,88,142,0,0,94,188,0,0,128,142,0,0,108,188,0,0,32,0,0,0,0,0,0,0,128,142,0,0,168,188,0,0,32,0,0,0,0,0,0,0,128,142,0,0,228,188,0,0,232,2,0,0,0,0,0,0,128,142,0,0,38,189,0,0,40,3,0,0,0,0,0,0,128,142,0,0,108,189,0,0,32,0,0,0,0,0,0,0,128,142,0,0,148,189,0,0,32,0,0,0,0,0,0,0,128,142,0,0,188,189,0,0,32,0,0,0,0,0,0,0,128,142,0,0,228,189,0,0,32,0,0,0,0,0,0,0,128,142,0,0,13,190,0,0,32,0,0,0,0,0,0,0,128,142,0,0,38,190,0,0,32,0,0,0,0,0,0,0,128,142,0,0,66,190,0,0,32,0,0,0,0,0,0,0,128,142,0,0,106,190,0,0,32,0,0,0,0,0,0,0,128,142,0,0,146,190,0,0,32,0,0,0,0,0,0,0,128,142,0,0,186,190,0,0,32,0,0,0,0,0,0,0,128,142,0,0,245,190,0,0,24,1,0,0,0,0,0,0,88,142,0,0,227,190,0,0,128,142,0,0,38,191,0,0,24,1,0,0,0,0,0,0,128,142,0,0,97,191,0,0,24,1,0,0,0,0,0,0,128,142,0,0,156,191,0,0,24,1,0,0,0,0,0,0,128,142,0,0,210,191,0,0,24,1,0,0,0,0,0,0,128,142,0,0,8,192,0,0,24,1,0,0,0,0,0,0,128,142,0,0,61,192,0,0,24,1,0,0,0,0,0,0,128,142,0,0,124,192,0,0,24,1,0,0,0,0,0,0,128,142,0,0,193,192,0,0,152,2,0,0,0,0,0,0,128,142,0,0,104,193,0,0,176,1,0,0,0,0,0,0,88,142,0,0,117,193,0,0,128,142,0,0,130,193,0,0,176,1,0,0,0,0,0,0,88,142,0,0,148,193,0,0,128,142,0,0,161,193,0,0,176,1,0,0,0,0,0,0,128,142,0,0,173,193,0,0,200,1,0,0,0,0,0,0,128,142,0,0,206,193,0,0,224,1,0,0,0,0,0,0,128,142,0,0,20,194,0,0,224,1,0,0,0,0,0,0,128,142,0,0,240,193,0,0,0,2,0,0,0,0,0,0,128,142,0,0,54,194,0,0,240,1,0,0,0,0,0,0,128,142,0,0,91,194,0,0,240,1,0,0,0,0,0,0,128,142,0,0,174,215,0,0,240,2,0,0,0,0,0,0,128,142,0,0,237,215,0,0,240,2,0,0,0,0,0,0,128,142,0,0,5,216,0,0,232,2,0,0,0,0,0,0,128,142,0,0,30,216,0,0,232,2,0,0,0,0,0,0,88,142,0,0,54,216,0,0,128,142,0,0,79,216,0,0,184,1,0,0,0,0,0,0,88,142,0,0,102,216,0,0,128,142,0,0,127,216,0,0,152,2,0,0,0,0,0,0,128,142,0,0,153,216,0,0,136,2,0,0,0,0,0,0,88,142,0,0,179,216,0,0,128,142,0,0,197,216,0,0,192,2,0,0,0,0,0,0,128,142,0,0,239,216,0,0,192,2,0,0,0,0,0,0,88,142,0,0,25,217,0,0,88,142,0,0,74,217,0,0,168,142,0,0,123,217,0,0,0,0,0,0,1,0,0,0,200,2,0,0,3,244,255,255,168,142,0,0,170,217,0,0,0,0,0,0,1,0,0,0,216,2,0,0,3,244,255,255,168,142,0,0,217,217,0,0,0,0,0,0,1,0,0,0,200,2,0,0,3,244,255,255,168,142,0,0,8,218,0,0,0,0,0,0,1,0,0,0,216,2,0,0,3,244,255,255,128,142,0,0,55,218,0,0,160,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,142,0,0,179,218,0,0,128,2,0,0,0,0,0,0,168,142,0,0,201,218,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,144,9,0,0,2,0,0,0,168,142,0,0,219,218,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,152,9,0,0,2,0,0,0,168,142,0,0,253,218,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,152,9,0,0,2,0,0,0,168,142,0,0,32,219,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,152,9,0,0,2,0,0,0,128,142,0,0,67,219,0,0,224,3,0,0,0,0,0,0,128,142,0,0,101,219,0,0,224,3,0,0,0,0,0,0,168,142,0,0,136,219,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,152,9,0,0,2,0,0,0,128,142,0,0,170,219,0,0,112,3,0,0,0,0,0,0,128,142,0,0,192,219,0,0,112,3,0,0,0,0,0,0,128,142,0,0,212,219,0,0,112,3,0,0,0,0,0,0,168,142,0,0,232,219,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,144,9,0,0,2,0,0,0,128,142,0,0,250,219,0,0,112,3,0,0,0,0,0,0,128,142,0,0,15,220,0,0,112,3,0,0,0,0,0,0,168,142,0,0,36,220,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,160,9,0,0,0,0,0,0,168,142,0,0,104,220,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,184,9,0,0,0,0,0,0,168,142,0,0,172,220,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,208,9,0,0,0,0,0,0,168,142,0,0,240,220,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,232,9,0,0,0,0,0,0,168,142,0,0,52,221,0,0,0,0,0,0,3,0,0,0,112,3,0,0,2,0,0,0,0,10,0,0,2,0,0,0,8,10,0,0,0,8,0,0,168,142,0,0,121,221,0,0,0,0,0,0,3,0,0,0,112,3,0,0,2,0,0,0,0,10,0,0,2,0,0,0,16,10,0,0,0,8,0,0,168,142,0,0,190,221,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,24,10,0,0,0,8,0,0,168,142,0,0,3,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,24,10,0,0,0,8,0,0,168,142,0,0,72,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,32,10,0,0,2,0,0,0,168,142,0,0,100,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,32,10,0,0,2,0,0,0,168,142,0,0,128,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,32,10,0,0,2,0,0,0,168,142,0,0,156,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,32,10,0,0,2,0,0,0,168,142,0,0,184,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,40,10,0,0,0,0,0,0,168,142,0,0,254,222,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,48,10,0,0,0,0,0,0,168,142,0,0,68,223,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,56,10,0,0,0,0,0,0,168,142,0,0,138,223,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,64,10,0,0,0,0,0,0,168,142,0,0,208,223,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,72,10,0,0,2,0,0,0,168,142,0,0,229,223,0,0,0,0,0,0,2,0,0,0,112,3,0,0,2,0,0,0,72,10,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,142,0,0,65,227,0,0,88,142,0,0,42,227,0,0,168,142,0,0,20,227,0,0,0,0,0,0,1,0,0,0,88,10,0,0,0,0,0,0,168,142,0,0,229,226,0,0,0,0,0,0,1,0,0,0,88,10,0,0,0,0,0,0,168,142,0,0,207,226,0,0,0,0,0,0,1,0,0,0,80,10,0,0,0,0,0,0,168,142,0,0,160,226,0,0,0,0,0,0,1,0,0,0,80,10,0,0,0,0,0,0,88,142,0,0,141,226,0,0,88,142,0,0,107,226,0,0,88,142,0,0,73,226,0,0,88,142,0,0,52,226,0,0,88,142,0,0,31,226,0,0,88,142,0,0,6,226,0,0,88,142,0,0,237,225,0,0,88,142,0,0,212,225,0,0,88,142,0,0,187,225,0,0,88,142,0,0,163,225,0,0,88,142,0,0,182,226,0,0,88,142,0,0,251,226],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE),allocate([240,141,0,0,0,0,0,0,128,1,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,112,1,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,96,1,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,80,1,0,0,7,0,0,0,8,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,0,0,0,0,64,1,0,0,9,0,0,0,10,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,48,1,0,0,11,0,0,0,12,0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,0,0,0,0,32,1,0,0,13,0,0,0,14,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,0,0,0,0,8,1,0,0,15,0,0,0,16,0,0,0,8,0,0,0,8,0,0,0,8,0,0,0,0,0,0,0,184,0,0,0,17,0,0,0,18,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,168,0,0,0,17,0,0,0,19,0,0,0,3,0,0,0,4,0,0,0,56,0,0,0,0,0,0,0,40,3,0,0,20,0,0,0,21,0,0,0,200,255,255,255,200,255,255,255,40,3,0,0,22,0,0,0,23,0,0,0,56,0,0,0,0,0,0,0,88,0,0,0,24,0,0,0,25,0,0,0,200,255,255,255,200,255,255,255,88,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,72,0,0,0,28,0,0,0,29,0,0,0,9,0,0,0,1,0,0,0,1,0,0,0,5,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,9,0,0,0,3,0,0,0,10,0,0,0,216,139,0,0,176,139,0,0,196,139,0,0,236,139,0,0,0,0,0,0,16,0,0,0,30,0,0,0,31,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,40,0,0,0,32,0,0,0,33,0,0,0,8,0,0,0,9,0,0,0,0,0,0,0,56,0,0,0,34,0,0,0,35,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,104,0,0,0,36,0,0,0,37,0,0,0,12,0,0,0,13,0,0,0,0,0,0,0,120,0,0,0,38,0,0,0,39,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,136,0,0,0,40,0,0,0,41,0,0,0,16,0,0,0,17,0,0,0,0,0,0,0,152,0,0,0,42,0,0,0,43,0,0,0,18,0,0,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,0,0,0,0,200,0,0,0,44,0,0,0,45,0,0,0,20,0,0,0,21,0,0,0,0,0,0,0,216,0,0,0,46,0,0,0,47,0,0,0,22,0,0,0,23,0,0,0,0,0,0,0,232,0,0,0,48,0,0,0,49,0,0,0,24,0,0,0,25,0,0,0,0,0,0,0,248,0,0,0,50,0,0,0,51,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,24,1,0,0,52,0,0,0,53,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,144,1,0,0,54,0,0,0,55,0,0,0,5,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,160,1,0,0,56,0,0,0,57,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,184,1,0,0,58,0,0,0,59,0,0,0,7,0,0,0,0,0,0,0,208,1,0,0,60,0,0,0,61,0,0,0,8,0,0,0,0,0,0,0,240,1,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,6,0,0,0,2,0,0,0,9,0,0,0,28,0,0,0,0,0,0,0,32,2,0,0,62,0,0,0,66,0,0,0,64,0,0,0,65,0,0,0,6,0,0,0,3,0,0,0,10,0,0,0,29,0,0,0,0,0,0,0,48,2,0,0,62,0,0,0,67,0,0,0,64,0,0,0,65,0,0,0,6,0,0,0,4,0,0,0,11,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,249,196,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,132,144,0,0,244,144,0,0,100,145,0,0,100,145,0,0,164,185,0,0,212,153,0,0,212,147,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,9,0,0,0,151,213,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,9,0,0,0,143,209,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,9,0,0,0,135,205,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+35464),
allocate([1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+39376),allocate([64,2,0,0,68,0,0,0,69,0,0,0,10,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,11,0,0,0,14,0,0,0,12,0,0,0,0,0,0,0,80,2,0,0,68,0,0,0,70,0,0,0,11,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,15,0,0,0,16,0,0,0,13,0,0,0,15,0,0,0,14,0,0,0,0,0,0,0,96,2,0,0,71,0,0,0,72,0,0,0,12,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,17,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,15,0,0,0,16,0,0,0,16,0,0,0,0,0,0,0,112,2,0,0,71,0,0,0,73,0,0,0,13,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,19,0,0,0,20,0,0,0,17,0,0,0,3,0,0,0,18,0,0,0,0,0,0,0,136,2,0,0,74,0,0,0,75,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,2,0,0,71,0,0,0,76,0,0,0,9,0,0,0,1,0,0,0,6,0,0,0,32,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,18,0,0,0,4,0,0,0,15,0,0,0,3,0,0,0,18,0,0,0,0,0,0,0,240,2,0,0,68,0,0,0,77,0,0,0,14,0,0,0,12,0,0,0,5,0,0,0,31,0,0,0,14,0,0,0,11,0,0,0,13,0,0,0,12,0,0,0,13,0,0,0,11,0,0,0,15,0,0,0,14,0,0,0,8,0,0,0,0,0,0,0,248,2,0,0,78,0,0,0,79,0,0,0,248,255,255,255,248,255,255,255,248,2,0,0,80,0,0,0,81,0,0,0,8,0,0,0,0,0,0,0,16,3,0,0,82,0,0,0,83,0,0,0,248,255,255,255,248,255,255,255,16,3,0,0,84,0,0,0,85,0,0,0,4,0,0,0,0,0,0,0,40,3,0,0,20,0,0,0,21,0,0,0,252,255,255,255,252,255,255,255,40,3,0,0,22,0,0,0,23,0,0,0,4,0,0,0,0,0,0,0,64,3,0,0,86,0,0,0,87,0,0,0,252,255,255,255,252,255,255,255,64,3,0,0,88,0,0,0,89,0,0,0,0,0,0,0,176,2,0,0,90,0,0,0,91,0,0,0,7,0,0,0,0,0,0,0,192,2,0,0,92,0,0,0,93,0,0,0,0,0,0,0,88,3,0,0,54,0,0,0,94,0,0,0,21,0,0,0,1,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,80,4,0,0,95,0,0,0,96,0,0,0,97,0,0,0,1,0,0,0,33,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,4,0,0,98,0,0,0,99,0,0,0,97,0,0,0,2,0,0,0,34,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,4,0,0,100,0,0,0,101,0,0,0,97,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,4,0,0,102,0,0,0,103,0,0,0,97,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240,4,0,0,104,0,0,0,105,0,0,0,97,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,5,0,0,106,0,0,0,107,0,0,0,97,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,5,0,0,108,0,0,0,109,0,0,0,97,0,0,0,22,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,48,5,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,5,0,0,110,0,0,0,111,0,0,0,97,0,0,0,30,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,88,5,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,5,0,0,112,0,0,0,113,0,0,0,97,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,5,0,0,114,0,0,0,115,0,0,0,97,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,5,0,0,116,0,0,0,117,0,0,0,97,0,0,0,38,0,0,0,39,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,40,0,0,0,19,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,118,0,0,0,119,0,0,0,97,0,0,0,41,0,0,0,42,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,43,0,0,0,25,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,120,0,0,0,121,0,0,0,97,0,0,0,44,0,0,0,45,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,46,0,0,0,31,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,6,0,0,122,0,0,0,123,0,0,0,97,0,0,0,47,0,0,0,48,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,49,0,0,0,37,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,6,0,0,124,0,0,0,125,0,0,0,97,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,6,0,0,126,0,0,0,127,0,0,0,97,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,6,0,0,128,0,0,0,129,0,0,0,97,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,6,0,0,130,0,0,0,131,0,0,0,97,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,6,0,0,132,0,0,0,133,0,0,0,97,0,0,0,19,0,0,0,7,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,6,0,0,134,0,0,0,135,0,0,0,97,0,0,0,20,0,0,0,8,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,4,0,0,136,0,0,0,137,0,0,0,97,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,4,0,0,138,0,0,0,139,0,0,0,97,0,0,0,19,0,0,0,21,0,0,0,20,0,0,0,22,0,0,0,21,0,0,0,1,0,0,0,23,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,4,0,0,140,0,0,0,141,0,0,0,97,0,0,0,3,0,0,0,4,0,0,0,12,0,0,0,50,0,0,0,51,0,0,0,13,0,0,0,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,4,0,0,142,0,0,0,143,0,0,0,97,0,0,0,53,0,0,0,54,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,0,0,0,0,160,4,0,0,144,0,0,0,145,0,0,0,97,0,0,0,55,0,0,0,56,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,0,0,0,0,112,3,0,0,146,0,0,0,147,0,0,0,97,0,0,0,0,0,0,0,128,3,0,0,146,0,0,0,148,0,0,0,97,0,0,0,24,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,22,0,0,0,25,0,0,0,23,0,0,0,26,0,0,0,24,0,0,0,5,0,0,0,27,0,0,0,14,0,0,0,0,0,0,0,160,3,0,0,146,0,0,0,149,0,0,0,97,0,0,0,5,0,0,0,6,0,0,0,15,0,0,0,57,0,0,0,58,0,0,0,16,0,0,0,59,0,0,0,0,0,0,0,192,3,0,0,146,0,0,0,150,0,0,0,97,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,60,0,0,0,61,0,0,0,18,0,0,0,62,0,0,0,0,0,0,0,224,3,0,0,146,0,0,0,151,0,0,0,97,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,0,4,0,0,146,0,0,0,152,0,0,0,97,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,16,4,0,0,146,0,0,0,153,0,0,0,97,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,63,0,0,0,64,0,0,0,20,0,0,0,65,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,67,111,108,111,114,32,116,114,97,110,115,102,111,114,109,97,116,105,111,110,32,0,78,111,32,109,111,114,101,32,98,121,116,101,115,32,97,118,97,105,108,97,98,108,101,32,105,110,32,105,110,112,117,116,32,98,117,102,102,101,114,44,32,115,116,105,108,108,32,110,101,101,100,101,100,105,110,103,32,0,65,110,32,111,100,100,32,110,117,109,98,101,114,32,111,102,32,98,121,116,101,115,32,40,0,41,32,99,97,110,110,111,116,32,98,101,32,115,119,97,112,112,101,100,46,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,69,0,49,49,80,114,111,99,101,115,115,76,105,110,101,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,54,84,114,97,110,115,102,111,114,109,83,104,105,102,116,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,116,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,116,69,69,0,50,50,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,83,116,114,101,97,109,0,50,53,80,111,115,116,80,114,111,99,101,115,83,105,110,103,108,101,67,111,109,112,111,110,101,110,116,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,51,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,50,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,50,84,114,97,110,115,102,111,114,109,72,112,49,73,104,69,69,0,49,56,80,114,111,99,101,115,115,84,114,97,110,115,102,111,114,109,101,100,73,49,51,84,114,97,110,115,102,111,114,109,78,111,110,101,73,104,69,69,0,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,116,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,116,55,84,114,105,112,108,101,116,73,116,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,55,84,114,105,112,108,101,116,73,104,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,54,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,116,76,105,49,50,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,104,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,53,76,111,115,115,108,101,115,115,84,114,97,105,116,115,84,73,55,84,114,105,112,108,101,116,73,104,69,76,105,56,69,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,56,74,108,115,67,111,100,101,99,73,49,52,68,101,102,97,117,108,116,84,114,97,105,116,115,84,73,104,104,69,49,53,68,101,99,111,100,101,114,83,116,114,97,116,101,103,121,69,0,67,104,97,114,76,83,32,101,114,114,111,114,0,99,104,97,114,108,115,0,49,53,99,104,97,114,108,115,95,99,97,116,101,103,111,114,121,0,69,120,112,101,99,116,101,100,32,74,80,69,71,32,77,97,114,107,101,114,32,115,116,97,114,116,32,98,121,116,101,32,48,120,70,70,32,98,117,116,32,116,104,101,32,98,121,116,101,32,118,97,108,117,101,32,119,97,115,32,48,120,0,74,80,69,71,32,101,110,99,111,100,105,110,103,32,119,105,116,104,32,109,97,114,107,101,114,32,0,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,0,85,110,107,110,111,119,110,32,74,80,69,71,32,109,97,114,107,101,114,32,0,32,101,110,99,111,117,110,116,101,114,101,100,46,0,109,114,102,120,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,57,101,120,99,101,112,116,105,111,110,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,57,116,121,112,101,95,105,110,102,111,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,85,115,101,114,115,47,99,104,97,102,101,121,47,101,109,115,100,107,95,112,111,114,116,97,98,108,101,47,101,109,115,99,114,105,112,116,101,110,47,49,46,51,53,46,48,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,116,104,114,101,119,32,97,110,32,101,120,99,101,112,116,105,111,110,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+41928),allocate([110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,80,79,83,73,88],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+52168),allocate([17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,105,111,115,116,114,101,97,109,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,37,112,0,67,0,37,0,0,0,0,0,108,0,108,108,0,0,76,0,37,112,0,0,0,0,37,72,58,37,77,58,37,83,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,48,49,50,51,52,53,54,55,56,57,0,37,46,48,76,102,0,116,114,117,101,0,102,97,108,115,101,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,65,77,0,80,77,0,37,109,47,37,100,47,37,121,0,37,72,58,37,77,58,37,83,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,37,73,58,37,77,58,37,83,32,37,112,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+54671);
var tempDoublePtr=Runtime.alignMemory(allocate(12,"i8",ALLOC_STATIC),8);assert(tempDoublePtr%8==0),Module._i64Subtract=_i64Subtract;var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:function(e){if(!e||EXCEPTIONS.infos[e])return e;for(var i in EXCEPTIONS.infos){var t=EXCEPTIONS.infos[i];if(t.adjusted===e)return i}return e},addRef:function(e){if(e){var i=EXCEPTIONS.infos[e];i.refcount++}},decRef:function(e){if(e){var i=EXCEPTIONS.infos[e];assert(i.refcount>0),i.refcount--,0===i.refcount&&(i.destructor&&Runtime.dynCall("vi",i.destructor,[e]),delete EXCEPTIONS.infos[e],___cxa_free_exception(e))}},clearRef:function(e){if(e){var i=EXCEPTIONS.infos[e];i.refcount=0}}};Module._memset=_memset;var _BDtoILow=!0,_emscripten_resume=!0,_emscripten_landingpad=!0,__MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31],__MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];Module._free=_free;var PTHREAD_SPECIFIC={},ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86},_fabs=Math_abs,PTHREAD_SPECIFIC_NEXT_KEY=1,PATH=void 0,Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,i=Browser.mainLoop.timingValue,t=Browser.mainLoop.func;Browser.mainLoop.func=null,_emscripten_set_main_loop(t,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,i),Browser.mainLoop.scheduler()},updateStatus:function(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",i=Browser.mainLoop.remainingBlockers,t=Browser.mainLoop.expectedBlockers;i?i<t?Module.setStatus(e+" ("+(t-i)+"/"+t+")"):Module.setStatus(e):Module.setStatus("")}},runIter:function(e){if(!ABORT){if(Module.preMainLoop){var i=Module.preMainLoop();if(i===!1)return}try{e()}catch(e){if(e instanceof ExitStatus)return;throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}Module.postMainLoop&&Module.postMainLoop()}}},isFullScreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init:function(){function e(){Browser.pointerLock=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r||document.msPointerLockElement===r}if(Module.preloadPlugins||(Module.preloadPlugins=[]),!Browser.initted){Browser.initted=!0;try{new Blob,Browser.hasBlobConstructor=!0}catch(e){Browser.hasBlobConstructor=!1,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:Browser.hasBlobConstructor?null:console.log("warning: no BlobBuilder"),Browser.URLObject="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:void 0,Module.noImageDecoding||"undefined"!=typeof Browser.URLObject||(console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available."),Module.noImageDecoding=!0);var i={};i.canHandle=function e(i){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(i)},i.handle=function e(i,t,r,n){var a=null;if(Browser.hasBlobConstructor)try{a=new Blob([i],{type:Browser.getMimetype(t)}),a.size!==i.length&&(a=new Blob([new Uint8Array(i).buffer],{type:Browser.getMimetype(t)}))}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}if(!a){var o=new Browser.BlobBuilder;o.append(new Uint8Array(i).buffer),a=o.getBlob()}var s=Browser.URLObject.createObjectURL(a),f=new Image;f.onload=function e(){assert(f.complete,"Image "+t+" could not be decoded");var n=document.createElement("canvas");n.width=f.width,n.height=f.height;var a=n.getContext("2d");a.drawImage(f,0,0),Module.preloadedImages[t]=n,Browser.URLObject.revokeObjectURL(s),r&&r(i)},f.onerror=function e(i){console.log("Image "+s+" could not be decoded"),n&&n()},f.src=s},Module.preloadPlugins.push(i);var t={};t.canHandle=function e(i){return!Module.noAudioDecoding&&i.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function e(i,t,r,n){function a(e){s||(s=!0,Module.preloadedAudios[t]=e,r&&r(i))}function o(){s||(s=!0,Module.preloadedAudios[t]=new Audio,n&&n())}var s=!1;if(!Browser.hasBlobConstructor)return o();try{var f=new Blob([i],{type:Browser.getMimetype(t)})}catch(e){return o()}var l=Browser.URLObject.createObjectURL(f),u=new Audio;u.addEventListener("canplaythrough",function(){a(u)},!1),u.onerror=function e(r){function n(e){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t="=",r="",n=0,a=0,o=0;o<e.length;o++)for(n=n<<8|e[o],a+=8;a>=6;){var s=n>>a-6&63;a-=6,r+=i[s]}return 2==a?(r+=i[(3&n)<<4],r+=t+t):4==a&&(r+=i[(15&n)<<2],r+=t),r}s||(console.log("warning: browser could not fully decode audio "+t+", trying slower base64 approach"),u.src="data:audio/x-"+t.substr(-3)+";base64,"+n(i),a(u))},u.src=l,Browser.safeSetTimeout(function(){a(u)},1e4)},Module.preloadPlugins.push(t);var r=Module.canvas;r&&(r.requestPointerLock=r.requestPointerLock||r.mozRequestPointerLock||r.webkitRequestPointerLock||r.msRequestPointerLock||function(){},r.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||function(){},r.exitPointerLock=r.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",e,!1),document.addEventListener("mozpointerlockchange",e,!1),document.addEventListener("webkitpointerlockchange",e,!1),document.addEventListener("mspointerlockchange",e,!1),Module.elementPointerLock&&r.addEventListener("click",function(e){!Browser.pointerLock&&r.requestPointerLock&&(r.requestPointerLock(),e.preventDefault())},!1))}},createContext:function(e,i,t,r){if(i&&Module.ctx&&e==Module.canvas)return Module.ctx;var n,a;if(i){var o={antialias:!1,alpha:!1};if(r)for(var s in r)o[s]=r[s];a=GL.createContext(e,o),a&&(n=GL.getContext(a).GLctx),e.style.backgroundColor="black"}else n=e.getContext("2d");return n?(t&&(i||assert("undefined"==typeof GLctx,"cannot set in module if GLctx is used, but we are a non-GL context that would replace it"),Module.ctx=n,i&&GL.makeContextCurrent(a),Module.useWebGL=i,Browser.moduleContextCreatedCallbacks.forEach(function(e){e()}),Browser.init()),n):null},destroyContext:function(e,i,t){},fullScreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullScreen:function(e,i,t){function r(){Browser.isFullScreen=!1;var e=n.parentNode;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e?(n.cancelFullScreen=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen||document.msExitFullscreen||document.exitFullscreen||function(){},n.cancelFullScreen=n.cancelFullScreen.bind(document),Browser.lockPointer&&n.requestPointerLock(),Browser.isFullScreen=!0,Browser.resizeCanvas&&Browser.setFullScreenCanvasSize()):(e.parentNode.insertBefore(n,e),e.parentNode.removeChild(e),Browser.resizeCanvas&&Browser.setWindowedCanvasSize()),Module.onFullScreen&&Module.onFullScreen(Browser.isFullScreen),Browser.updateCanvasDimensions(n)}Browser.lockPointer=e,Browser.resizeCanvas=i,Browser.vrDevice=t,"undefined"==typeof Browser.lockPointer&&(Browser.lockPointer=!0),"undefined"==typeof Browser.resizeCanvas&&(Browser.resizeCanvas=!1),"undefined"==typeof Browser.vrDevice&&(Browser.vrDevice=null);var n=Module.canvas;Browser.fullScreenHandlersInstalled||(Browser.fullScreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",r,!1),document.addEventListener("mozfullscreenchange",r,!1),document.addEventListener("webkitfullscreenchange",r,!1),document.addEventListener("MSFullscreenChange",r,!1));var a=document.createElement("div");n.parentNode.insertBefore(a,n),a.appendChild(n),a.requestFullScreen=a.requestFullScreen||a.mozRequestFullScreen||a.msRequestFullscreen||(a.webkitRequestFullScreen?function(){a.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:null),t?a.requestFullScreen({vrDisplay:t}):a.requestFullScreen()},nextRAF:0,fakeRequestAnimationFrame:function(e){var i=Date.now();if(0===Browser.nextRAF)Browser.nextRAF=i+1e3/60;else for(;i+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var t=Math.max(Browser.nextRAF-i,0);setTimeout(e,t)},requestAnimationFrame:function e(i){"undefined"==typeof window?Browser.fakeRequestAnimationFrame(i):(window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||Browser.fakeRequestAnimationFrame),window.requestAnimationFrame(i))},safeCallback:function(e){return function(){if(!ABORT)return e.apply(null,arguments)}},allowAsyncCallbacks:!0,queuedAsyncCallbacks:[],pauseAsyncCallbacks:function(){Browser.allowAsyncCallbacks=!1},resumeAsyncCallbacks:function(){if(Browser.allowAsyncCallbacks=!0,Browser.queuedAsyncCallbacks.length>0){var e=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[],e.forEach(function(e){e()})}},safeRequestAnimationFrame:function(e){return Browser.requestAnimationFrame(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))})},safeSetTimeout:function(e,i){return Module.noExitRuntime=!0,setTimeout(function(){ABORT||(Browser.allowAsyncCallbacks?e():Browser.queuedAsyncCallbacks.push(e))},i)},safeSetInterval:function(e,i){return Module.noExitRuntime=!0,setInterval(function(){ABORT||Browser.allowAsyncCallbacks&&e()},i)},getMimetype:function(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia:function(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX:function(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY:function(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta:function(e){var i=0;switch(e.type){case"DOMMouseScroll":i=e.detail;break;case"mousewheel":i=e.wheelDelta;break;case"wheel":i=e.deltaY;break;default:throw"unrecognized mouse wheel event: "+e.type}return i},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(e){if(Browser.pointerLock)"mousemove"!=e.type&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),"undefined"!=typeof SDL?(Browser.mouseX=SDL.mouseX+Browser.mouseMovementX,Browser.mouseY=SDL.mouseY+Browser.mouseMovementY):(Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY);else{var i=Module.canvas.getBoundingClientRect(),t=Module.canvas.width,r=Module.canvas.height,n="undefined"!=typeof window.scrollX?window.scrollX:window.pageXOffset,a="undefined"!=typeof window.scrollY?window.scrollY:window.pageYOffset;if("touchstart"===e.type||"touchend"===e.type||"touchmove"===e.type){var o=e.touch;if(void 0===o)return;var s=o.pageX-(n+i.left),f=o.pageY-(a+i.top);s*=t/i.width,f*=r/i.height;var l={x:s,y:f};if("touchstart"===e.type)Browser.lastTouches[o.identifier]=l,Browser.touches[o.identifier]=l;else if("touchend"===e.type||"touchmove"===e.type){var u=Browser.touches[o.identifier];u||(u=l),Browser.lastTouches[o.identifier]=u,Browser.touches[o.identifier]=l}return}var c=e.pageX-(n+i.left),d=e.pageY-(a+i.top);c*=t/i.width,d*=r/i.height,Browser.mouseMovementX=c-Browser.mouseX,Browser.mouseMovementY=d-Browser.mouseY,Browser.mouseX=c,Browser.mouseY=d}},xhrLoad:function(e,i,t){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function e(){200==r.status||0==r.status&&r.response?i(r.response):t()},r.onerror=t,r.send(null)},asyncLoad:function(e,i,t,r){Browser.xhrLoad(e,function(t){assert(t,'Loading data file "'+e+'" failed (no arrayBuffer).'),i(new Uint8Array(t)),r||removeRunDependency("al "+e)},function(i){if(!t)throw'Loading data file "'+e+'" failed.';t()}),r||addRunDependency("al "+e)},resizeListeners:[],updateResizeListeners:function(){var e=Module.canvas;Browser.resizeListeners.forEach(function(i){i(e.width,e.height)})},setCanvasSize:function(e,i,t){var r=Module.canvas;Browser.updateCanvasDimensions(r,e,i),t||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e=8388608|e,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if("undefined"!=typeof SDL){var e=HEAPU32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2];e&=-8388609,HEAP32[SDL.screen+0*Runtime.QUANTUM_SIZE>>2]=e}Browser.updateResizeListeners()},updateCanvasDimensions:function(e,i,t){i&&t?(e.widthNative=i,e.heightNative=t):(i=e.widthNative,t=e.heightNative);var r=i,n=t;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(r/n<Module.forcedAspectRatio?r=Math.round(n*Module.forcedAspectRatio):n=Math.round(r/Module.forcedAspectRatio)),(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement||document.msFullScreenElement||document.msFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&"undefined"!=typeof screen){var a=Math.min(screen.width/r,screen.height/n);r=Math.round(r*a),n=Math.round(n*a)}Browser.resizeCanvas?(e.width!=r&&(e.width=r),e.height!=n&&(e.height=n),"undefined"!=typeof e.style&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=i&&(e.width=i),e.height!=t&&(e.height=t),"undefined"!=typeof e.style&&(r!=i||n!=t?(e.style.setProperty("width",r+"px","important"),e.style.setProperty("height",n+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))},wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:function(){var e=Browser.nextWgetRequestHandle;return Browser.nextWgetRequestHandle++,e}};Module._malloc=_malloc;var SYSCALLS={varargs:0,get:function(e){SYSCALLS.varargs+=4;var i=HEAP32[SYSCALLS.varargs-4>>2];return i},getStr:function(){var e=Pointer_stringify(SYSCALLS.get());return e},get64:function(){var e=SYSCALLS.get(),i=SYSCALLS.get();return assert(e>=0?0===i:i===-1),e},getZero:function(){assert(0===SYSCALLS.get())}};Module._i64Add=_i64Add,Module._bitshift64Lshr=_bitshift64Lshr;var _BDtoIHigh=!0;Module._memcpy=_memcpy;var _emscripten_postinvoke=!0;Module._bitshift64Shl=_bitshift64Shl,Module._memmove=_memmove;var _emscripten_preinvoke=!0,_BItoD=!0,___dso_handle=allocate(1,"i32*",ALLOC_STATIC);Module.requestFullScreen=function e(i,t,r){Browser.requestFullScreen(i,t,r)},Module.requestAnimationFrame=function e(i){Browser.requestAnimationFrame(i)},Module.setCanvasSize=function e(i,t,r){Browser.setCanvasSize(i,t,r)},Module.pauseMainLoop=function e(){Browser.mainLoop.pause()},Module.resumeMainLoop=function e(){Browser.mainLoop.resume()},Module.getUserMedia=function e(){Browser.getUserMedia()},Module.createContext=function e(i,t,r,n){return Browser.createContext(i,t,r,n)},STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP),staticSealed=!0,STACK_MAX=STACK_BASE+TOTAL_STACK,DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX),assert(DYNAMIC_BASE<TOTAL_MEMORY,"TOTAL_MEMORY not big enough for stack");var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);Module.asmGlobalArg={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0,byteLength:byteLength},Module.asmLibraryArg={abort:abort,assert:assert,invoke_iiiiiiii:invoke_iiiiiiii,invoke_viiiii:invoke_viiiii,invoke_iiiiiid:invoke_iiiiiid,invoke_vi:invoke_vi,invoke_vii:invoke_vii,invoke_iiiiiii:invoke_iiiiiii,invoke_ii:invoke_ii,invoke_iiiiiiiiiiii:invoke_iiiiiiiiiiii,invoke_iiii:invoke_iiii,invoke_viiiiiiiiiiiiiii:invoke_viiiiiiiiiiiiiii,invoke_viiiiii:invoke_viiiiii,invoke_viiiiiii:invoke_viiiiiii,invoke_viiiiiiiiii:invoke_viiiiiiiiii,invoke_iii:invoke_iii,invoke_iiiiii:invoke_iiiiii,invoke_diii:invoke_diii,invoke_i:invoke_i,invoke_iiiii:invoke_iiiii,invoke_viii:invoke_viii,invoke_v:invoke_v,invoke_iiiiiiiii:invoke_iiiiiiiii,invoke_iiiiid:invoke_iiiiid,invoke_viiii:invoke_viiii,_fabs:_fabs,_strftime:_strftime,_pthread_cond_wait:_pthread_cond_wait,___lock:___lock,_pthread_key_create:_pthread_key_create,_abort:_abort,___cxa_guard_acquire:___cxa_guard_acquire,___setErrNo:___setErrNo,___gxx_personality_v0:___gxx_personality_v0,___assert_fail:___assert_fail,___cxa_free_exception:___cxa_free_exception,___cxa_allocate_exception:___cxa_allocate_exception,___cxa_find_matching_catch:___cxa_find_matching_catch,__isLeapYear:__isLeapYear,___cxa_guard_release:___cxa_guard_release,__addDays:__addDays,_strftime_l:_strftime_l,_emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,_llvm_eh_typeid_for:_llvm_eh_typeid_for,_sbrk:_sbrk,___cxa_begin_catch:___cxa_begin_catch,_emscripten_memcpy_big:_emscripten_memcpy_big,___cxa_end_catch:___cxa_end_catch,___resumeException:___resumeException,__ZSt18uncaught_exceptionv:__ZSt18uncaught_exceptionv,_sysconf:_sysconf,_pthread_getspecific:_pthread_getspecific,__arraySum:__arraySum,_pthread_self:_pthread_self,_pthread_mutex_unlock:_pthread_mutex_unlock,_pthread_once:_pthread_once,___syscall54:___syscall54,___unlock:___unlock,_pthread_cleanup_pop:_pthread_cleanup_pop,_pthread_cond_broadcast:_pthread_cond_broadcast,_emscripten_set_main_loop:_emscripten_set_main_loop,_pthread_setspecific:_pthread_setspecific,___cxa_atexit:___cxa_atexit,___cxa_throw:___cxa_throw,___cxa_rethrow:___cxa_rethrow,___syscall6:___syscall6,_pthread_cleanup_push:_pthread_cleanup_push,___cxa_pure_virtual:___cxa_pure_virtual,_time:_time,_pthread_mutex_lock:_pthread_mutex_lock,___cxa_guard_abort:___cxa_guard_abort,_atexit:_atexit,___syscall140:___syscall140,___syscall145:___syscall145,___syscall146:___syscall146,STACKTOP:STACKTOP,STACK_MAX:STACK_MAX,tempDoublePtr:tempDoublePtr,ABORT:ABORT,cttz_i8:cttz_i8,___dso_handle:___dso_handle};var asm=function(e,i,t){"use asm";var r=e.Int8Array;var n=e.Int16Array;var a=e.Int32Array;var o=e.Uint8Array;var s=e.Uint16Array;var f=e.Uint32Array;var l=e.Float32Array;var u=e.Float64Array;var c=new r(t);var d=new n(t);var h=new a(t);var m=new o(t);var b=new s(t);var v=new f(t);var w=new l(t);var p=new u(t);var g=e.byteLength;var k=i.STACKTOP|0;var _=i.STACK_MAX|0;var y=i.tempDoublePtr|0;var T=i.ABORT|0;var M=i.cttz_i8|0;var C=i.___dso_handle|0;var x=0;var E=0;var S=0;var A=0;var P=e.NaN,I=e.Infinity;var L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0;var z=0;var j=0;var Y=0;var V=0;var q=0;var W=0;var G=0;var X=0;var K=0;var $=0;var J=e.Math.floor;var Q=e.Math.abs;var Z=e.Math.sqrt;var ee=e.Math.pow;var ie=e.Math.cos;var te=e.Math.sin;var re=e.Math.tan;var ne=e.Math.acos;var ae=e.Math.asin;var oe=e.Math.atan;var se=e.Math.atan2;var fe=e.Math.exp;var le=e.Math.log;var ue=e.Math.ceil;var ce=e.Math.imul;var de=e.Math.min;var he=e.Math.clz32;var me=i.abort;var be=i.assert;var ve=i.invoke_iiiiiiii;var we=i.invoke_viiiii;var pe=i.invoke_iiiiiid;var ge=i.invoke_vi;var ke=i.invoke_vii;var _e=i.invoke_iiiiiii;var ye=i.invoke_ii;var Te=i.invoke_iiiiiiiiiiii;var Me=i.invoke_iiii;var Ce=i.invoke_viiiiiiiiiiiiiii;var xe=i.invoke_viiiiii;var Ee=i.invoke_viiiiiii;var Se=i.invoke_viiiiiiiiii;var Ae=i.invoke_iii;var Pe=i.invoke_iiiiii;var Ie=i.invoke_diii;var Le=i.invoke_i;var De=i.invoke_iiiii;var Re=i.invoke_viii;var Oe=i.invoke_v;var Be=i.invoke_iiiiiiiii;var Ne=i.invoke_iiiiid;var Fe=i.invoke_viiii;var Ue=i._fabs;var He=i._strftime;var ze=i._pthread_cond_wait;var je=i.___lock;var Ye=i._pthread_key_create;var Ve=i._abort;var qe=i.___cxa_guard_acquire;var We=i.___setErrNo;var Ge=i.___gxx_personality_v0;var Xe=i.___assert_fail;var Ke=i.___cxa_free_exception;var $e=i.___cxa_allocate_exception;var Je=i.___cxa_find_matching_catch;var Qe=i.__isLeapYear;var Ze=i.___cxa_guard_release;var ei=i.__addDays;var ii=i._strftime_l;var ti=i._emscripten_set_main_loop_timing;var ri=i._llvm_eh_typeid_for;var ni=i._sbrk;var ai=i.___cxa_begin_catch;var oi=i._emscripten_memcpy_big;var si=i.___cxa_end_catch;var fi=i.___resumeException;var li=i.__ZSt18uncaught_exceptionv;var ui=i._sysconf;var ci=i._pthread_getspecific;var di=i.__arraySum;var hi=i._pthread_self;var mi=i._pthread_mutex_unlock;var bi=i._pthread_once;var vi=i.___syscall54;var wi=i.___unlock;var pi=i._pthread_cleanup_pop;var gi=i._pthread_cond_broadcast;var ki=i._emscripten_set_main_loop;var _i=i._pthread_setspecific;var yi=i.___cxa_atexit;var Ti=i.___cxa_throw;var Mi=i.___cxa_rethrow;var Ci=i.___syscall6;var xi=i._pthread_cleanup_push;var Ei=i.___cxa_pure_virtual;var Si=i._time;var Ai=i._pthread_mutex_lock;var Pi=i.___cxa_guard_abort;var Ii=i._atexit;var Li=i.___syscall140;var Di=i.___syscall145;var Ri=i.___syscall146;var Oi=0;function Bi(e){if(g(e)&16777215||g(e)<=16777215||g(e)>2147483648)return false;c=new r(e);d=new n(e);h=new a(e);m=new o(e);b=new s(e);v=new f(e);w=new l(e);p=new u(e);t=e;return true}function Ni(e){e=e|0;var i=0;i=k;k=k+e|0;k=k+15&-16;return i|0}function Fi(){return k|0}function Ui(e){e=e|0;k=e}function Hi(e,i){e=e|0;i=i|0;k=e;_=i}function zi(e,i){e=e|0;i=i|0;if(!x){x=e;E=i}}function ji(e){e=e|0;c[y>>0]=c[e>>0];c[y+1>>0]=c[e+1>>0];c[y+2>>0]=c[e+2>>0];c[y+3>>0]=c[e+3>>0]}function Yi(e){e=e|0;c[y>>0]=c[e>>0];c[y+1>>0]=c[e+1>>0];c[y+2>>0]=c[e+2>>0];c[y+3>>0]=c[e+3>>0];c[y+4>>0]=c[e+4>>0];c[y+5>>0]=c[e+5>>0];c[y+6>>0]=c[e+6>>0];c[y+7>>0]=c[e+7>>0]}function Vi(e){e=e|0;z=e}function qi(){return z|0}function Wi(e){e=e|0;ai(e|0)|0;rb()}function Gi(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+128|0;a=u+116|0;o=u;x=0;h[a>>2]=h[i>>2];h[a+4>>2]=h[i+4>>2];h[a+8>>2]=h[i+8>>2];ke(47,o|0,a|0);n=x;x=0;if(!(n&1)){if(t){n=o+16|0;i=n+84|0;do{h[n>>2]=h[t>>2];n=n+4|0;t=t+4|0}while((n|0)<(i|0))}x=0;h[a>>2]=h[e>>2];h[a+4>>2]=h[e+4>>2];h[a+8>>2]=h[e+8>>2];ke(48,o|0,a|0);o=x;x=0;if(!(o&1)){if(r)c[r>>0]=0;l=0;k=u;return l|0}}e=Je(648,0)|0;o=z;o=(o|0)==(ri(648)|0);e=ai(e|0)|0;i=(r|0)==0;if(!o){if(!i)c[r>>0]=0;si();l=14;k=u;return l|0}n=e+12|0;do if(!i){i=h[n>>2]|0;x=0;t=Le(1)|0;o=x;x=0;if(!(o&1))if((i|0)==(t|0)){ow(r,$k[h[(h[e>>2]|0)+8>>2]&127](e)|0)|0;l=10;break}else{c[r>>0]=0;l=10;break}}else l=10;while(0);if((l|0)==10?(s=h[n>>2]|0,x=0,f=Le(1)|0,l=x,x=0,!(l&1)):0){l=(s|0)==(f|0)?h[e+8>>2]|0:13;si();k=u;return l|0}i=Je()|0;x=0;Oe(3);u=x;x=0;if(u&1){u=Je(0)|0;Wi(u)}else fi(i|0);return 0}function Xi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0;f=k;k=k+128|0;n=f+116|0;r=f;x=0;h[n>>2]=h[e>>2];h[n+4>>2]=h[e+4>>2];h[n+8>>2]=h[e+8>>2];ke(47,r|0,n|0);n=x;x=0;if((!(n&1)?(x=0,ge(154,r|0),n=x,x=0,!(n&1)):0)?(x=0,ke(49,r|0,1),n=x,x=0,!(n&1)):0){e=r+16|0;r=i+84|0;do{h[i>>2]=h[e>>2];i=i+4|0;e=e+4|0}while((i|0)<(r|0));if(t)c[t>>0]=0;t=0;k=f;return t|0}n=Je(648,0)|0;i=z;i=(i|0)==(ri(648)|0);n=ai(n|0)|0;e=(t|0)==0;if(!i){if(!e)c[t>>0]=0;si();t=14;k=f;return t|0}i=n+12|0;do if(!e){e=h[i>>2]|0;x=0;r=Le(1)|0;l=x;x=0;if(!(l&1))if((e|0)==(r|0)){ow(t,$k[h[(h[n>>2]|0)+8>>2]&127](n)|0)|0;s=13;break}else{c[t>>0]=0;s=13;break}}else s=13;while(0);if((s|0)==13?(a=h[i>>2]|0,x=0,o=Le(1)|0,l=x,x=0,!(l&1)):0){l=(a|0)==(o|0)?h[n+8>>2]|0:13;si();k=f;return l|0}e=Je()|0;x=0;Oe(3);l=x;x=0;if(l&1){l=Je(0)|0;Wi(l)}else fi(e|0);return 0}function Ki(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;n=k;k=k+32|0;a=n+12|0;o=n;s=o;h[s>>2]=0;h[s+4>>2]=0;h[o+4>>2]=e;h[o+8>>2]=i;h[a>>2]=h[o>>2];h[a+4>>2]=h[o+4>>2];h[a+8>>2]=h[o+8>>2];t=Xi(a,t,r)|0;k=n;return t|0}function $i(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+48|0;s=o+36|0;f=o+24|0;u=o+12|0;l=o;h[u>>2]=0;h[u+4>>2]=e;h[u+8>>2]=i;h[l>>2]=0;h[l+4>>2]=t;h[l+8>>2]=r;h[f>>2]=h[u>>2];h[f+4>>2]=h[u+4>>2];h[f+8>>2]=h[u+8>>2];h[s>>2]=h[l>>2];h[s+4>>2]=h[l+4>>2];h[s+8>>2]=h[l+8>>2];r=Gi(f,s,n,a)|0;k=o;return r|0}function Ji(){if(c[8]|0)return 35472;if(!(qe(8)|0))return 35472;yi(54,35472,C|0)|0;Ze(8);return 35472}function Qi(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+32|0;f=u;oo(f,(1<<i)+-1|0,0);a=h[f>>2]|0;l=a+1|0;t=l<<1;h[e>>2]=0;o=e+4|0;h[o>>2]=0;h[e+8>>2]=0;e:do if(l){if(!((a|0)<-1?(x=0,ge(155,e|0),s=x,x=0,s&1):0))r=4;if((r|0)==4?(x=0,n=ye(66,t|0)|0,s=x,x=0,!(s&1)):0){h[o>>2]=n;h[e>>2]=n;h[e+8>>2]=n+t;i=n;while(1){c[i>>0]=0;i=(h[o>>2]|0)+1|0;h[o>>2]=i;t=t+-1|0;if(!t)break e}}t=Je()|0;i=h[e>>2]|0;if(!i)fi(t|0);if((h[o>>2]|0)!=(i|0))h[o>>2]=i;$m(i);fi(t|0)}while(0);i=~a;if((a|0)<(i|0)){k=u;return}o=f+12|0;s=f+8|0;a=f+4|0;n=i;do{i=h[o>>2]|0;if((n|0)>(0-i|0)){t=h[s>>2]|0;if((n|0)>(0-t|0)){r=h[a>>2]|0;if((n|0)>(0-r|0))if((n|0)>=0)if((n|0)>0)if((r|0)<=(n|0))if((t|0)>(n|0))i=2;else i=(i|0)>(n|0)?3:4;else i=1;else i=0;else i=-1;else i=-2}else i=-3}else i=-4;c[(h[e>>2]|0)+(n+l)>>0]=i;n=n+1|0}while((n|0)<(l|0));k=u;return}function Zi(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;b=h[t+16>>2]|0;switch(b|0){case 64:case 0:{x=0;e=Ae(25,e|0,i|0)|0;i=x;x=0;if(i&1)v=16;else r=e;break}default:{n=(1<<h[i+8>>2])+-1|0;m=h[i+20>>2]|0;u=m<<1;u=((u+n|0)/(u|1|0)|0)+1|0;e=0;while(1)if((1<<e|0)<(u|0))e=e+1|0;else break;r=0;while(1)if((1<<r|0)<(n|0))r=r+1|0;else{o=r;break}n=h[t>>2]|0;x=0;r=ye(66,4624)|0;l=x;x=0;if(l&1)v=16;else{a=((o|0)<8?8:o)+o<<1;s=r+4|0;f=i;l=s+84|0;do{h[s>>2]=h[f>>2];s=s+4|0;f=f+4|0}while((s|0)<(l|0));s=r+88|0;l=s+40|0;do{h[s>>2]=0;s=s+4|0}while((s|0)<(l|0));h[r>>2]=35484;h[r+128>>2]=n;h[r+132>>2]=u;h[r+136>>2]=m;h[r+140>>2]=e;h[r+144>>2]=o;h[r+148>>2]=a;h[r+152>>2]=b;e=r+156|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[r+172>>2]=h[i>>2];h[r+176>>2]=0;h[r+180>>2]=0;h[r+184>>2]=0;e=r+4568|0;n=r+188|0;do{h[n>>2]=0;h[n+4>>2]=0;d[n+8>>1]=0;d[n+10>>1]=1;n=n+12|0}while((n|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=r+4580|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=r+4592|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[r+28>>2]|0))h[r+20>>2]=1}}}if((v|0)==16){v=Je()|0;fi(v|0)}if(!r)return r|0;x=0;ke(h[(h[r>>2]|0)+12>>2]|0,r|0,t|0);v=x;x=0;if(!(v&1))return r|0;e=Je()|0;if(!r){v=e;fi(v|0)}Gk[h[(h[r>>2]|0)+4>>2]&255](r);v=e;fi(v|0);return 0}function et(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;t=(h[i+24>>2]|0)==2;if(t?(h[i+16>>2]|0)!=3:0){i=0;return i|0}u=h[i+20>>2]|0;e=h[i+8>>2]|0;e:do if(!u){if(t){if((e|0)!=8)break;r=Km(4600)|0;o=r+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=r+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[r>>2]=35512;e=r+132|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[r+148>>2]=h[i>>2];h[r+152>>2]=0;h[r+156>>2]=0;h[r+160>>2]=0;e=r+4544|0;t=r+164|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=r+4556|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=r+4568|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[r+28>>2]|0))h[r+20>>2]=1;i=r;return i|0}switch(e|0){case 8:{r=Km(4600)|0;o=r+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=r+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[r>>2]=35540;e=r+132|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[r+148>>2]=h[i>>2];h[r+152>>2]=0;h[r+156>>2]=0;h[r+160>>2]=0;e=r+4544|0;t=r+164|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=r+4556|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=r+4568|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[r+28>>2]|0))h[r+20>>2]=1;i=r;return i|0}case 12:{r=Km(4600)|0;o=r+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=r+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[r>>2]=35568;e=r+132|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[r+148>>2]=h[i>>2];h[r+152>>2]=0;h[r+156>>2]=0;h[r+160>>2]=0;e=r+4544|0;t=r+164|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=r+4556|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=r+4568|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[r+28>>2]|0))h[r+20>>2]=1;i=r;return i|0}case 16:{r=Km(4600)|0;o=r+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=r+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[r>>2]=35596;e=r+132|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[r+148>>2]=h[i>>2];h[r+152>>2]=0;h[r+156>>2]=0;h[r+160>>2]=0;e=r+4544|0;t=r+164|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=r+4556|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=r+4568|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[r+28>>2]|0))h[r+20>>2]=1;i=r;return i|0}default:break e}}while(0);l=(1<<e)+-1|0;if((e|0)<9){a=u<<1;a=((a+l|0)/(a|1|0)|0)+1|0;if(t){e=0;while(1)if((1<<e|0)<(a|0))e=e+1|0;else break;t=0;while(1)if((1<<t|0)<(l|0))t=t+1|0;else break;r=((t|0)<8?8:t)+t<<1;n=Km(4624)|0;o=n+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=n+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[n>>2]=35624;h[n+128>>2]=l;h[n+132>>2]=a;h[n+136>>2]=u;h[n+140>>2]=e;h[n+144>>2]=t;h[n+148>>2]=r;h[n+152>>2]=64;e=n+156|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[n+172>>2]=h[i>>2];h[n+176>>2]=0;h[n+180>>2]=0;h[n+184>>2]=0;e=n+4568|0;t=n+188|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;
c[e+10>>0]=0;i=n+4580|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=n+4592|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[n+28>>2]|0))h[n+20>>2]=1;i=n;return i|0}else{e=0;while(1)if((1<<e|0)<(a|0))e=e+1|0;else break;t=0;while(1)if((1<<t|0)<(l|0))t=t+1|0;else break;r=((t|0)<8?8:t)+t<<1;n=Km(4624)|0;o=n+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=n+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[n>>2]=35484;h[n+128>>2]=l;h[n+132>>2]=a;h[n+136>>2]=u;h[n+140>>2]=e;h[n+144>>2]=t;h[n+148>>2]=r;h[n+152>>2]=64;e=n+156|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[n+172>>2]=h[i>>2];h[n+176>>2]=0;h[n+180>>2]=0;h[n+184>>2]=0;e=n+4568|0;t=n+188|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=n+4580|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=n+4592|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[n+28>>2]|0))h[n+20>>2]=1;i=n;return i|0}}if((e|0)>=17){i=0;return i|0}a=u<<1;a=((a+l|0)/(a|1|0)|0)+1|0;if(t){e=0;while(1)if((1<<e|0)<(a|0))e=e+1|0;else break;t=0;while(1)if((1<<t|0)<(l|0))t=t+1|0;else break;r=((t|0)<8?8:t)+t<<1;n=Km(4624)|0;o=n+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=n+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[n>>2]=35652;h[n+128>>2]=l;h[n+132>>2]=a;h[n+136>>2]=u;h[n+140>>2]=e;h[n+144>>2]=t;h[n+148>>2]=r;h[n+152>>2]=64;e=n+156|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[n+172>>2]=h[i>>2];h[n+176>>2]=0;h[n+180>>2]=0;h[n+184>>2]=0;e=n+4568|0;t=n+188|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=n+4580|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=n+4592|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[n+28>>2]|0))h[n+20>>2]=1;i=n;return i|0}else{e=0;while(1)if((1<<e|0)<(a|0))e=e+1|0;else break;t=0;while(1)if((1<<t|0)<(l|0))t=t+1|0;else break;r=((t|0)<8?8:t)+t<<1;n=Km(4624)|0;o=n+4|0;s=i;f=o+84|0;do{h[o>>2]=h[s>>2];o=o+4|0;s=s+4|0}while((o|0)<(f|0));o=n+88|0;f=o+40|0;do{h[o>>2]=0;o=o+4|0}while((o|0)<(f|0));h[n>>2]=35680;h[n+128>>2]=l;h[n+132>>2]=a;h[n+136>>2]=u;h[n+140>>2]=e;h[n+144>>2]=t;h[n+148>>2]=r;h[n+152>>2]=64;e=n+156|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[n+172>>2]=h[i>>2];h[n+176>>2]=0;h[n+180>>2]=0;h[n+184>>2]=0;e=n+4568|0;t=n+188|0;do{h[t>>2]=0;h[t+4>>2]=0;d[t+8>>1]=0;d[t+10>>1]=1;t=t+12|0}while((t|0)!=(e|0));h[e>>2]=0;h[e+4>>2]=0;d[e+8>>1]=0;c[e+10>>0]=0;i=n+4580|0;h[i>>2]=0;h[i+4>>2]=0;d[i+8>>1]=0;c[i+10>>0]=0;i=n+4592|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[i+16>>2]=0;h[i+20>>2]=0;h[i+24>>2]=0;c[i+28>>0]=0;if(!(h[n+28>>2]|0))h[n+20>>2]=1;i=n;return i|0}return 0}function it(){var e=0,i=0,t=0,r=0,n=0,a=0,o=0;e=2656;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=4704);Pg(2656,0,2048)|0;e=0;do{o=2656+(e+128<<3)|0;h[o>>2]=0;h[o+4>>2]=1;e=e+1|0}while((e|0)!=128);e=2912;h[e>>2]=1;h[e+4>>2]=3;e=2920;h[e>>2]=1;h[e+4>>2]=3;e=2928;h[e>>2]=1;h[e+4>>2]=3;e=2936;h[e>>2]=1;h[e+4>>2]=3;e=2944;h[e>>2]=1;h[e+4>>2]=3;e=2952;h[e>>2]=1;h[e+4>>2]=3;e=2960;h[e>>2]=1;h[e+4>>2]=3;e=2968;h[e>>2]=1;h[e+4>>2]=3;e=2976;h[e>>2]=1;h[e+4>>2]=3;e=2984;h[e>>2]=1;h[e+4>>2]=3;e=2992;h[e>>2]=1;h[e+4>>2]=3;e=3e3;h[e>>2]=1;h[e+4>>2]=3;e=3008;h[e>>2]=1;h[e+4>>2]=3;e=3016;h[e>>2]=1;h[e+4>>2]=3;e=3024;h[e>>2]=1;h[e+4>>2]=3;e=3032;h[e>>2]=1;h[e+4>>2]=3;e=3040;h[e>>2]=1;h[e+4>>2]=3;e=3048;h[e>>2]=1;h[e+4>>2]=3;e=3056;h[e>>2]=1;h[e+4>>2]=3;e=3064;h[e>>2]=1;h[e+4>>2]=3;e=3072;h[e>>2]=1;h[e+4>>2]=3;e=3080;h[e>>2]=1;h[e+4>>2]=3;e=3088;h[e>>2]=1;h[e+4>>2]=3;e=3096;h[e>>2]=1;h[e+4>>2]=3;e=3104;h[e>>2]=1;h[e+4>>2]=3;e=3112;h[e>>2]=1;h[e+4>>2]=3;e=3120;h[e>>2]=1;h[e+4>>2]=3;e=3128;h[e>>2]=1;h[e+4>>2]=3;e=3136;h[e>>2]=1;h[e+4>>2]=3;e=3144;h[e>>2]=1;h[e+4>>2]=3;e=3152;h[e>>2]=1;h[e+4>>2]=3;e=3160;h[e>>2]=1;h[e+4>>2]=3;e=2720;h[e>>2]=2;h[e+4>>2]=5;e=2728;h[e>>2]=2;h[e+4>>2]=5;e=2736;h[e>>2]=2;h[e+4>>2]=5;e=2744;h[e>>2]=2;h[e+4>>2]=5;e=2752;h[e>>2]=2;h[e+4>>2]=5;e=2760;h[e>>2]=2;h[e+4>>2]=5;e=2768;h[e>>2]=2;h[e+4>>2]=5;e=2776;h[e>>2]=2;h[e+4>>2]=5;e=2672;h[e>>2]=3;h[e+4>>2]=7;e=2680;h[e>>2]=3;h[e+4>>2]=7;e=0;do{o=2656+(e+64<<3)|0;h[o>>2]=-1;h[o+4>>2]=2;e=e+1|0}while((e|0)!=64);e=2784;h[e>>2]=-2;h[e+4>>2]=4;e=2792;h[e>>2]=-2;h[e+4>>2]=4;e=2800;h[e>>2]=-2;h[e+4>>2]=4;e=2808;h[e>>2]=-2;h[e+4>>2]=4;e=2816;h[e>>2]=-2;h[e+4>>2]=4;e=2824;h[e>>2]=-2;h[e+4>>2]=4;e=2832;h[e>>2]=-2;h[e+4>>2]=4;e=2840;h[e>>2]=-2;h[e+4>>2]=4;e=2848;h[e>>2]=-2;h[e+4>>2]=4;e=2856;h[e>>2]=-2;h[e+4>>2]=4;e=2864;h[e>>2]=-2;h[e+4>>2]=4;e=2872;h[e>>2]=-2;h[e+4>>2]=4;e=2880;h[e>>2]=-2;h[e+4>>2]=4;e=2888;h[e>>2]=-2;h[e+4>>2]=4;e=2896;h[e>>2]=-2;h[e+4>>2]=4;e=2904;h[e>>2]=-2;h[e+4>>2]=4;e=2688;h[e>>2]=-3;h[e+4>>2]=6;e=2696;h[e>>2]=-3;h[e+4>>2]=6;e=2704;h[e>>2]=-3;h[e+4>>2]=6;e=2712;h[e>>2]=-3;h[e+4>>2]=6;e=2664;h[e>>2]=-4;h[e+4>>2]=8;e=4704;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=6752);Pg(4704,0,2048)|0;t=2;e=0;n=0;a=0;while(1){t=t<<16>>16;i=8-t|0;r=1<<i;if((i|0)!=31){e=(e&1|2)<<i;i=0;do{o=4704+(i+e<<3)|0;h[o>>2]=n;h[o+4>>2]=t;i=i+1|0}while((i|0)<(r|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==7){i=2;n=1;a=-1;o=-1;break}else{t=(e>>1)+2|0;n=i>>16}}while(1){t=i<<16>>16;e=8-t|0;r=1<<e;if((e|0)!=31){e=(n&1|2)<<e;i=0;do{n=4704+(i+e<<3)|0;h[n>>2]=a;h[n+4>>2]=t;i=i+1|0}while((i|0)<(r|0))}e=(o<<16)+-65536|0;n=e>>31^e>>15;i=(n>>1)+2|0;if((i|0)>8){e=6752;break}else{a=e>>16;o=o+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=8800);Pg(6752,0,2048)|0;n=3;e=0;r=0;a=0;while(1){i=8-n|0;t=1<<i;if((i|0)!=31){e=(e&3|4)<<i;i=0;do{o=6752+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==12){n=3;i=1;r=-1;a=-1;break}else{n=(e>>2)+3|0;r=i>>16}}while(1){e=8-n|0;t=1<<e;if((e|0)!=31){e=(i&3|4)<<e;i=0;do{o=6752+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>2)+3|0;if((n|0)>8){e=8800;break}else{r=e>>16;a=a+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=10848);Pg(8800,0,2048)|0;n=4;e=0;r=0;a=0;while(1){i=8-n|0;t=1<<i;if((i|0)!=31){e=(e&7|8)<<i;i=0;do{o=8800+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==20){n=4;i=1;r=-1;a=-1;break}else{n=(e>>3)+4|0;r=i>>16}}while(1){e=8-n|0;t=1<<e;if((e|0)!=31){e=(i&7|8)<<e;i=0;do{o=8800+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>3)+4|0;if((n|0)>8){e=10848;break}else{r=e>>16;a=a+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=12896);Pg(10848,0,2048)|0;n=5;e=0;r=0;a=0;while(1){i=8-n|0;t=1<<i;if((i|0)!=31){e=(e&15|16)<<i;i=0;do{o=10848+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==32){n=5;i=1;r=-1;a=-1;break}else{n=(e>>4)+5|0;r=i>>16}}while(1){e=8-n|0;t=1<<e;if((e|0)!=31){e=(i&15|16)<<e;i=0;do{o=10848+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>4)+5|0;if((n|0)>8){e=12896;break}else{r=e>>16;a=a+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=14944);Pg(12896,0,2048)|0;n=6;e=0;r=0;a=0;while(1){i=8-n|0;t=1<<i;if((i|0)!=31){e=(e&31|32)<<i;i=0;do{o=12896+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==48){n=6;i=1;r=-1;a=-1;break}else{n=(e>>5)+6|0;r=i>>16}}while(1){e=8-n|0;t=1<<e;if((e|0)!=31){e=(i&31|32)<<e;i=0;do{o=12896+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>5)+6|0;if((n|0)>8){e=14944;break}else{r=e>>16;a=a+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=16992);Pg(14944,0,2048)|0;n=7;e=0;r=0;a=0;while(1){i=8-n|0;t=1<<i;if((i|0)!=31){e=(e&63|64)<<i;i=0;do{o=14944+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==64){n=7;i=1;r=-1;a=-1;break}else{n=(e>>6)+7|0;r=i>>16}}while(1){e=8-n|0;t=1<<e;if((e|0)!=31){e=(i&63|64)<<e;i=0;do{o=14944+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}e=(a<<16)+-65536|0;i=e>>31^e>>15;n=(i>>6)+7|0;if((n|0)>8){e=16992;break}else{r=e>>16;a=a+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=19040);Pg(16992,0,2048)|0;n=8;e=0;r=0;a=0;while(1){i=8-n|0;t=1<<i;if((i|0)!=31){e=(e&127|128)<<i;i=0;do{o=16992+(i+e<<3)|0;h[o>>2]=r;h[o+4>>2]=n;i=i+1|0}while((i|0)<(t|0))}i=(a<<16)+65536|0;e=i>>31^i>>15;a=a+1|0;if((a|0)==64){a=8;r=1;n=-1;o=-1;break}else{n=(e>>7)+8|0;r=i>>16}}while(1){e=8-a|0;t=1<<e;if((e|0)!=31){e=(r&127|128)<<e;i=0;do{r=16992+(i+e<<3)|0;h[r>>2]=n;h[r+4>>2]=a;i=i+1|0}while((i|0)<(t|0))}i=(o<<16)+-65536|0;r=i>>31^i>>15;e=r>>7;if((e|0)>0){e=19040;break}else{a=e+8|0;n=i>>16;o=o+-1|0}}do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=21088);Pg(19040,0,2048)|0;e=21088;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=23136);Pg(21088,0,2048)|0;e=23136;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=25184);Pg(23136,0,2048)|0;e=25184;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=27232);Pg(25184,0,2048)|0;e=27232;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=29280);Pg(27232,0,2048)|0;e=29280;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=31328);Pg(29280,0,2048)|0;e=31328;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=33376);Pg(31328,0,2048)|0;e=33376;do{h[e>>2]=0;h[e+4>>2]=0;e=e+8|0}while((e|0)!=35424);Pg(33376,0,2048)|0;Qi(35424,8);yi(156,35424,C|0)|0;Qi(35436,10);yi(156,35436,C|0)|0;Qi(35448,12);yi(156,35448,C|0)|0;Qi(35460,16);yi(156,35460,C|0)|0;return}function tt(e){e=e|0;var i=0;i=h[e>>2]|0;if(!i)return;e=e+4|0;if((h[e>>2]|0)!=(i|0))h[e>>2]=i;$m(i);return}function rt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;h[e>>2]=36060;h[e+4>>2]=t;d=e+8|0;a=h[t>>2]|0;l=t+16|0;r=h[l>>2]|0;o=ce(r,a)|0;h[d>>2]=0;m=e+12|0;h[m>>2]=0;h[e+16>>2]=0;do if(o){if(!((o|0)<0?(x=0,ge(155,d|0),a=x,x=0,a&1):0))u=4;if((u|0)==4?(s=o<<1,x=0,f=ye(66,s|0)|0,a=x,x=0,!(a&1)):0){h[d>>2]=f;a=f+(o<<1)|0;h[e+16>>2]=a;Pg(f|0,0,s|0)|0;h[m>>2]=a;a=h[t>>2]|0;r=h[l>>2]|0;break}o=Je()|0;n=h[d>>2]|0;r=n;if(n){a=h[m>>2]|0;if((a|0)!=(n|0))h[m>>2]=a+(~((a+-2-r|0)>>>1)<<1);$m(n)}m=o;fi(m|0)}while(0);o=e+20|0;r=ce(a<<1,r)|0;h[o>>2]=0;s=e+24|0;h[s>>2]=0;h[e+28>>2]=0;if(!r){m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))u=13;if((u|0)==13?(x=0,n=ye(66,r|0)|0,u=x,x=0,!(u&1)):0){h[s>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[s>>2]|0)+1|0;h[s>>2]=n;r=r+-1|0}while((r|0)!=0);m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}a=Je()|0;n=h[o>>2]|0;if(n){if((h[s>>2]|0)!=(n|0))h[s>>2]=n;$m(n)}n=h[d>>2]|0;if(!n){m=a;fi(m|0)}r=h[m>>2]|0;if((r|0)!=(n|0))h[m>>2]=r+(~((r+-2-n|0)>>>1)<<1);$m(n);m=a;fi(m|0)}function nt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;h[e>>2]=36036;h[e+4>>2]=t;d=e+8|0;a=h[t>>2]|0;l=t+16|0;r=h[l>>2]|0;o=ce(r,a)|0;h[d>>2]=0;m=e+12|0;h[m>>2]=0;h[e+16>>2]=0;do if(o){if(!((o|0)<0?(x=0,ge(155,d|0),a=x,x=0,a&1):0))u=4;if((u|0)==4?(s=o<<1,x=0,f=ye(66,s|0)|0,a=x,x=0,!(a&1)):0){h[d>>2]=f;a=f+(o<<1)|0;h[e+16>>2]=a;Pg(f|0,0,s|0)|0;h[m>>2]=a;a=h[t>>2]|0;r=h[l>>2]|0;break}o=Je()|0;n=h[d>>2]|0;r=n;if(n){a=h[m>>2]|0;if((a|0)!=(n|0))h[m>>2]=a+(~((a+-2-r|0)>>>1)<<1);$m(n)}m=o;fi(m|0)}while(0);o=e+20|0;r=ce(a<<1,r)|0;h[o>>2]=0;s=e+24|0;h[s>>2]=0;h[e+28>>2]=0;if(!r){m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))u=13;if((u|0)==13?(x=0,n=ye(66,r|0)|0,u=x,x=0,!(u&1)):0){h[s>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[s>>2]|0)+1|0;h[s>>2]=n;r=r+-1|0}while((r|0)!=0);m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}a=Je()|0;n=h[o>>2]|0;if(n){if((h[s>>2]|0)!=(n|0))h[s>>2]=n;$m(n)}n=h[d>>2]|0;if(!n){m=a;fi(m|0)}r=h[m>>2]|0;if((r|0)!=(n|0))h[m>>2]=r+(~((r+-2-n|0)>>>1)<<1);$m(n);m=a;fi(m|0)}function at(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;h[e>>2]=36012;h[e+4>>2]=t;d=e+8|0;a=h[t>>2]|0;l=t+16|0;r=h[l>>2]|0;o=ce(r,a)|0;h[d>>2]=0;m=e+12|0;h[m>>2]=0;h[e+16>>2]=0;do if(o){if(!((o|0)<0?(x=0,ge(155,d|0),a=x,x=0,a&1):0))u=4;if((u|0)==4?(s=o<<1,x=0,f=ye(66,s|0)|0,a=x,x=0,!(a&1)):0){h[d>>2]=f;a=f+(o<<1)|0;h[e+16>>2]=a;Pg(f|0,0,s|0)|0;h[m>>2]=a;a=h[t>>2]|0;r=h[l>>2]|0;break}o=Je()|0;n=h[d>>2]|0;r=n;if(n){a=h[m>>2]|0;if((a|0)!=(n|0))h[m>>2]=a+(~((a+-2-r|0)>>>1)<<1);$m(n)}m=o;fi(m|0)}while(0);o=e+20|0;r=ce(a<<1,r)|0;h[o>>2]=0;s=e+24|0;h[s>>2]=0;h[e+28>>2]=0;if(!r){m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))u=13;if((u|0)==13?(x=0,n=ye(66,r|0)|0,u=x,x=0,!(u&1)):0){h[s>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[s>>2]|0)+1|0;h[s>>2]=n;r=r+-1|0}while((r|0)!=0);m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}a=Je()|0;n=h[o>>2]|0;if(n){if((h[s>>2]|0)!=(n|0))h[s>>2]=n;$m(n)}n=h[d>>2]|0;if(!n){m=a;fi(m|0)}r=h[m>>2]|0;if((r|0)!=(n|0))h[m>>2]=r+(~((r+-2-n|0)>>>1)<<1);$m(n);m=a;fi(m|0)}function ot(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;h[e>>2]=35988;h[e+4>>2]=t;d=e+8|0;a=h[t>>2]|0;l=t+16|0;r=h[l>>2]|0;o=ce(r,a)|0;h[d>>2]=0;m=e+12|0;h[m>>2]=0;h[e+16>>2]=0;do if(o){if(!((o|0)<0?(x=0,ge(155,d|0),a=x,x=0,a&1):0))u=4;if((u|0)==4?(s=o<<1,x=0,f=ye(66,s|0)|0,a=x,x=0,!(a&1)):0){h[d>>2]=f;a=f+(o<<1)|0;h[e+16>>2]=a;Pg(f|0,0,s|0)|0;h[m>>2]=a;a=h[t>>2]|0;r=h[l>>2]|0;break}o=Je()|0;n=h[d>>2]|0;r=n;if(n){a=h[m>>2]|0;if((a|0)!=(n|0))h[m>>2]=a+(~((a+-2-r|0)>>>1)<<1);$m(n)}m=o;fi(m|0)}while(0);o=e+20|0;r=ce(a<<1,r)|0;h[o>>2]=0;s=e+24|0;h[s>>2]=0;h[e+28>>2]=0;if(!r){m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))u=13;if((u|0)==13?(x=0,n=ye(66,r|0)|0,u=x,x=0,!(u&1)):0){h[s>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[s>>2]|0)+1|0;h[s>>2]=n;r=r+-1|0}while((r|0)!=0);m=e+36|0;h[m>>2]=h[i>>2];h[m+4>>2]=h[i+4>>2];h[m+8>>2]=h[i+8>>2];return}a=Je()|0;n=h[o>>2]|0;if(n){if((h[s>>2]|0)!=(n|0))h[s>>2]=n;$m(n)}n=h[d>>2]|0;if(!n){m=a;fi(m|0)}r=h[m>>2]|0;if((r|0)!=(n|0))h[m>>2]=r+(~((r+-2-n|0)>>>1)<<1);$m(n);m=a;fi(m|0)}function st(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;o=e+32|0;Ho(o,i)|0;a=e+44|0;h[a>>2]=0;s=e+48|0;n=h[s>>2]|0;if(n&8){i=c[o>>0]|0;if(!(i&1)){i=((i&255)>>>1)+(o+1)|0;h[a>>2]=i;t=o+1|0;r=o+1|0}else{i=(h[e+40>>2]|0)+(h[e+36>>2]|0)|0;h[a>>2]=i;r=h[e+40>>2]|0;t=r}h[e+8>>2]=t;h[e+12>>2]=r;h[e+16>>2]=i}if(!(n&16))return;i=c[o>>0]|0;if(!(i&1)){n=(i&255)>>>1;h[a>>2]=o+1+n;i=10;a=n}else{n=h[e+36>>2]|0;h[a>>2]=(h[e+40>>2]|0)+n;i=(h[o>>2]&-2)+-1|0;a=n}Yo(o,i,0);i=c[o>>0]|0;if(!(i&1)){n=o+1|0;r=(i&255)>>>1;t=o+1|0}else{t=h[e+40>>2]|0;n=t;r=h[e+36>>2]|0}i=e+24|0;h[i>>2]=t;h[e+20>>2]=t;h[e+28>>2]=n+r;if(!(h[s>>2]&3))return;h[i>>2]=t+a;return}function ft(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;m=k;k=k+32|0;o=m+16|0;d=m+8|0;s=m;x=0;ke(50,d|0,e|0);l=x;x=0;e:do if(l&1){t=Je(0)|0;r=e;n=e}else{do if(c[d>>0]|0){r=h[(h[e>>2]|0)+-12>>2]|0;h[s>>2]=h[e+(r+24)>>2];f=e+r|0;l=h[e+(r+4)>>2]|0;n=i+t|0;r=e+(r+76)|0;t=h[r>>2]|0;do if((t|0)==-1){x=0;t=ye(67,f|0)|0;b=x;x=0;if(b&1)u=13;else{h[o>>2]=t;x=0;t=Ae(26,o|0,43752)|0;b=x;x=0;if(!(b&1)?(x=0,a=Ae(h[(h[t>>2]|0)+28>>2]|0,t|0,32)|0,b=x,x=0,!(b&1)):0){Bd(o);t=a<<24>>24;h[r>>2]=t;u=9;break}t=Je(0)|0;Bd(o)}}else u=9;while(0);if((u|0)==9){x=0;h[o>>2]=h[s>>2];t=_e(39,o|0,i|0,((l&176|0)==32?n:i)|0,n|0,f|0,t&255|0)|0;b=x;x=0;if(!(b&1)){if(t)break;b=h[(h[e>>2]|0)+-12>>2]|0;x=0;ke(51,e+b|0,h[e+(b+16)>>2]|5|0);b=x;x=0;if(!(b&1))break;else u=13}else u=13}if((u|0)==13)t=Je(0)|0;cf(d);r=e;n=e;break e}while(0);cf(d);k=m;return e|0}while(0);ai(t|0)|0;x=0;ge(157,r+(h[(h[n>>2]|0)+-12>>2]|0)|0);b=x;x=0;if(!(b&1)){si();k=m;return e|0}t=Je()|0;x=0;Oe(3);b=x;x=0;if(b&1){b=Je(0)|0;Wi(b)}else fi(t|0);return 0}function lt(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;t=h[i+48>>2]|0;if(t&16){t=i+44|0;r=h[t>>2]|0;n=h[i+24>>2]|0;if(r>>>0<n>>>0)h[t>>2]=n;else n=r;r=h[i+20>>2]|0;a=n-r|0;if(a>>>0>4294967279)Wm(e);if(a>>>0<11){c[e>>0]=a<<1;t=e+1|0}else{i=a+16&-16;t=Km(i)|0;h[e+8>>2]=t;h[e>>2]=i|1;h[e+4>>2]=a}if((r|0)!=(n|0)){i=t;while(1){c[i>>0]=c[r>>0]|0;r=r+1|0;if((r|0)==(n|0))break;else i=i+1|0}t=t+a|0}c[t>>0]=0;return}if(!(t&8)){h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}r=h[i+8>>2]|0;i=h[i+16>>2]|0;a=i-r|0;if(a>>>0>4294967279)Wm(e);if(a>>>0<11){c[e>>0]=a<<1;t=e+1|0}else{n=a+16&-16;t=Km(n)|0;h[e+8>>2]=t;h[e>>2]=n|1;h[e+4>>2]=a}if((r|0)!=(i|0)){n=t;while(1){c[n>>0]=c[r>>0]|0;r=r+1|0;if((r|0)==(i|0))break;else n=n+1|0}t=t+a|0}c[t>>0]=0;return}function ut(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;h[e>>2]=35964;h[e+4>>2]=t;m=e+8|0;o=h[t>>2]|0;u=t+16|0;a=h[u>>2]|0;l=ce(a,o)|0;h[m>>2]=0;b=e+12|0;h[b>>2]=0;h[e+16>>2]=0;do if(l){if(!((l|0)<0?(x=0,ge(155,m|0),o=x,x=0,o&1):0))d=4;if((d|0)==4?(s=l<<1,x=0,f=ye(66,s|0)|0,o=x,x=0,!(o&1)):0){h[m>>2]=f;o=f+(l<<1)|0;h[e+16>>2]=o;Pg(f|0,0,s|0)|0;h[b>>2]=o;o=h[t>>2]|0;a=h[u>>2]|0;break}s=Je()|0;n=h[m>>2]|0;a=n;if(n){o=h[b>>2]|0;if((o|0)!=(n|0))h[b>>2]=o+(~((o+-2-a|0)>>>1)<<1);$m(n)}b=s;fi(b|0)}while(0);s=e+20|0;a=ce(o<<1,a)|0;h[s>>2]=0;f=e+24|0;h[f>>2]=0;h[e+28>>2]=0;if(!a){b=e+32|0;m=r;m=h[m>>2]|0;r=r+4|0;r=h[r>>2]|0;d=b;h[d>>2]=m;b=b+4|0;h[b>>2]=r;b=e+40|0;h[b>>2]=m;b=e+48|0;h[b>>2]=h[i>>2];h[b+4>>2]=h[i+4>>2];h[b+8>>2]=h[i+8>>2];return}if(!((a|0)<0?(x=0,ge(155,s|0),u=x,x=0,u&1):0))d=13;if((d|0)==13?(x=0,n=ye(66,a|0)|0,d=x,x=0,!(d&1)):0){h[f>>2]=n;h[s>>2]=n;h[e+28>>2]=n+a;do{c[n>>0]=0;n=(h[f>>2]|0)+1|0;h[f>>2]=n;a=a+-1|0}while((a|0)!=0);b=e+32|0;m=r;m=h[m>>2]|0;r=r+4|0;r=h[r>>2]|0;d=b;h[d>>2]=m;b=b+4|0;h[b>>2]=r;b=e+40|0;h[b>>2]=m;b=e+48|0;h[b>>2]=h[i>>2];h[b+4>>2]=h[i+4>>2];h[b+8>>2]=h[i+8>>2];return}o=Je()|0;n=h[s>>2]|0;if(n){if((h[f>>2]|0)!=(n|0))h[f>>2]=n;$m(n)}n=h[m>>2]|0;if(!n){b=o;fi(b|0)}a=h[b>>2]|0;if((a|0)!=(n|0))h[b>>2]=a+(~((a+-2-n|0)>>>1)<<1);$m(n);b=o;fi(b|0)}function ct(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;h[e>>2]=35940;h[e+4>>2]=t;m=e+8|0;o=h[t>>2]|0;u=t+16|0;a=h[u>>2]|0;l=ce(a,o)|0;h[m>>2]=0;b=e+12|0;h[b>>2]=0;h[e+16>>2]=0;do if(l){if(!((l|0)<0?(x=0,ge(155,m|0),o=x,x=0,o&1):0))d=4;if((d|0)==4?(s=l<<1,x=0,f=ye(66,s|0)|0,o=x,x=0,!(o&1)):0){h[m>>2]=f;o=f+(l<<1)|0;h[e+16>>2]=o;Pg(f|0,0,s|0)|0;h[b>>2]=o;o=h[t>>2]|0;a=h[u>>2]|0;break}s=Je()|0;n=h[m>>2]|0;a=n;if(n){o=h[b>>2]|0;if((o|0)!=(n|0))h[b>>2]=o+(~((o+-2-a|0)>>>1)<<1);$m(n)}b=s;fi(b|0)}while(0);s=e+20|0;a=ce(o<<1,a)|0;h[s>>2]=0;f=e+24|0;h[f>>2]=0;h[e+28>>2]=0;if(!a){b=e+32|0;m=r;m=h[m>>2]|0;r=r+4|0;r=h[r>>2]|0;d=b;h[d>>2]=m;b=b+4|0;h[b>>2]=r;b=e+40|0;h[b>>2]=m;b=e+48|0;h[b>>2]=h[i>>2];h[b+4>>2]=h[i+4>>2];h[b+8>>2]=h[i+8>>2];return}if(!((a|0)<0?(x=0,ge(155,s|0),u=x,x=0,u&1):0))d=13;if((d|0)==13?(x=0,n=ye(66,a|0)|0,d=x,x=0,!(d&1)):0){h[f>>2]=n;h[s>>2]=n;h[e+28>>2]=n+a;do{c[n>>0]=0;n=(h[f>>2]|0)+1|0;h[f>>2]=n;a=a+-1|0}while((a|0)!=0);b=e+32|0;m=r;m=h[m>>2]|0;r=r+4|0;r=h[r>>2]|0;d=b;h[d>>2]=m;b=b+4|0;h[b>>2]=r;b=e+40|0;h[b>>2]=m;b=e+48|0;h[b>>2]=h[i>>2];h[b+4>>2]=h[i+4>>2];h[b+8>>2]=h[i+8>>2];return}o=Je()|0;n=h[s>>2]|0;if(n){if((h[f>>2]|0)!=(n|0))h[f>>2]=n;$m(n)}n=h[m>>2]|0;if(!n){b=o;fi(b|0)}a=h[b>>2]|0;if((a|0)!=(n|0))h[b>>2]=a+(~((a+-2-n|0)>>>1)<<1);$m(n);b=o;fi(b|0)}function dt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;h[e>>2]=35916;h[e+4>>2]=t;m=e+8|0;o=h[t>>2]|0;u=t+16|0;a=h[u>>2]|0;l=ce(a,o)|0;h[m>>2]=0;b=e+12|0;h[b>>2]=0;h[e+16>>2]=0;do if(l){if(!((l|0)<0?(x=0,ge(155,m|0),o=x,x=0,o&1):0))d=4;if((d|0)==4?(s=l<<1,x=0,f=ye(66,s|0)|0,o=x,x=0,!(o&1)):0){h[m>>2]=f;o=f+(l<<1)|0;h[e+16>>2]=o;Pg(f|0,0,s|0)|0;h[b>>2]=o;o=h[t>>2]|0;a=h[u>>2]|0;break}s=Je()|0;n=h[m>>2]|0;a=n;if(n){o=h[b>>2]|0;if((o|0)!=(n|0))h[b>>2]=o+(~((o+-2-a|0)>>>1)<<1);$m(n)}b=s;fi(b|0)}while(0);s=e+20|0;a=ce(o<<1,a)|0;h[s>>2]=0;f=e+24|0;h[f>>2]=0;h[e+28>>2]=0;if(!a){b=e+32|0;m=r;m=h[m>>2]|0;r=r+4|0;r=h[r>>2]|0;d=b;h[d>>2]=m;b=b+4|0;h[b>>2]=r;b=e+40|0;h[b>>2]=m;b=e+48|0;h[b>>2]=h[i>>2];h[b+4>>2]=h[i+4>>2];h[b+8>>2]=h[i+8>>2];return}if(!((a|0)<0?(x=0,ge(155,s|0),u=x,x=0,u&1):0))d=13;if((d|0)==13?(x=0,n=ye(66,a|0)|0,d=x,x=0,!(d&1)):0){h[f>>2]=n;h[s>>2]=n;h[e+28>>2]=n+a;do{c[n>>0]=0;n=(h[f>>2]|0)+1|0;h[f>>2]=n;a=a+-1|0}while((a|0)!=0);b=e+32|0;m=r;m=h[m>>2]|0;r=r+4|0;r=h[r>>2]|0;d=b;h[d>>2]=m;b=b+4|0;h[b>>2]=r;b=e+40|0;h[b>>2]=m;b=e+48|0;h[b>>2]=h[i>>2];h[b+4>>2]=h[i+4>>2];h[b+8>>2]=h[i+8>>2];return}o=Je()|0;n=h[s>>2]|0;if(n){if((h[f>>2]|0)!=(n|0))h[f>>2]=n;$m(n)}n=h[m>>2]|0;if(!n){b=o;fi(b|0)}a=h[b>>2]|0;if((a|0)!=(n|0))h[b>>2]=a+(~((a+-2-n|0)>>>1)<<1);$m(n);b=o;fi(b|0)}function ht(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35916;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function mt(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35916;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function bt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+48|0;if(!(h[n>>2]|0)){s=e+52|0;kt(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;kt(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function vt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+48>>2]|0;if(!n){n=e+52|0;wt(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{pt(e,n,i,t,r);return}}function wt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0;f=e+4|0;a=h[f>>2]|0;do if(!(c[a+32>>0]|0))l=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*6|0)|0;a=h[f>>2]|0;s=h[a+16>>2]|0;if((r|0)<=0){l=h[o>>2]|0;break}i=h[o>>2]|0;a=i;o=0;while(1){l=a+4|0;u=d[a>>1]|0;d[a>>1]=d[l>>1]|0;d[l>>1]=u;o=o+1|0;if((o|0)==(r|0))break;else a=a+(s<<1)|0}l=i;a=h[f>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:if((h[a+24>>2]|0)==2){if((r|0)<=0)return;a=e+32|0;i=0;do{u=h[a>>2]|0;f=b[l+(i*6|0)+2>>1]<<u;n=32768-f|0;e=n+(b[l+(i*6|0)+4>>1]<<u)&65535;n=n+(b[l+(i*6|0)>>1]<<u)&65535;d[t+(i*6|0)>>1]=(f+49152+((e+n|0)>>>2)&65535)>>>u;d[t+(i*6|0)+2>>1]=e>>>u;d[t+(i*6|0)+4>>1]=n>>>u;i=i+1|0}while((i|0)!=(r|0));return}else{o=(n|0)<(r|0)?n:r;if((o|0)<=0)return;s=n<<1;a=h[e+32>>2]|0;i=0;do{r=b[l+(i*6|0)+2>>1]<<a;u=32768-r|0;e=u+(b[l+(i*6|0)+4>>1]<<a)&65535;u=u+(b[l+(i*6|0)>>1]<<a)&65535;d[t+(i<<1)>>1]=(r+49152+((e+u|0)>>>2)&65535)>>>a;d[t+(i+n<<1)>>1]=e>>>a;d[t+(i+s<<1)>>1]=u>>>a;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;o=(n|0)<(r|0)?n:r;if((o|0)<=0)return;s=n<<1;f=n*3|0;a=h[e+32>>2]|0;i=0;do{u=d[l+(i<<3)+6>>1]|0;m=b[l+(i<<3)+2>>1]<<a;e=32768-m|0;r=e+(b[l+(i<<3)+4>>1]<<a)&65535;e=e+(b[l+(i<<3)>>1]<<a)&65535;d[t+(i<<1)>>1]=(m+49152+((r+e|0)>>>2)&65535)>>>a;d[t+(i+n<<1)>>1]=r>>>a;d[t+(i+s<<1)>>1]=e>>>a;d[t+(i+f<<1)>>1]=u;i=i+1|0}while((i|0)!=(o|0));return}default:return}}function pt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;wt(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;wt(e,v,t,r,n);k=d;return}function gt(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;n=k;k=k+176|0;t=n+152|0;f=n+16|0;o=n;if(!(i&1)){t=(i|0)/4|0;if((i|0)>3){r=0;do{f=e+(r<<2)|0;s=h[f>>2]|0;h[f>>2]=s>>>8&16711935|s<<8&-16711936;r=r+1|0}while((r|0)<(t|0))}if(!(i&3)){k=n;return}o=e+(i+-2)|0;f=e+(i+-1)|0;s=c[o>>0]|0;c[o>>0]=c[f>>0]|0;c[f>>0]=s;k=n;return}s=f+56|0;a=f+4|0;h[f>>2]=35760;h[s>>2]=35780;x=0;ke(52,f+56|0,a|0);n=x;x=0;if(n&1){f=Je()|0;us(s);fi(f|0)}h[f+128>>2]=0;h[f+132>>2]=-1;h[f>>2]=35800;h[f+56>>2]=35820;x=0;ge(158,a|0);n=x;x=0;do if(n&1)t=Je()|0;else{h[a>>2]=35836;n=f+36|0;h[n>>2]=0;h[n+4>>2]=0;h[n+8>>2]=0;h[n+12>>2]=0;h[f+52>>2]=16;h[t>>2]=0;h[t+4>>2]=0;h[t+8>>2]=0;x=0;ke(53,a|0,t|0);e=x;x=0;if(e&1){f=Je()|0;Uo(t);Uo(n);ws(a);t=f;break}Uo(t);x=0;t=Me(28,f|0,48116,24)|0;e=x;x=0;if((!(e&1)?(x=0,r=Ae(27,t|0,i|0)|0,i=x,x=0,!(i&1)):0)?(x=0,Me(28,r|0,48141,20)|0,i=x,x=0,!(i&1)):0){e=$e(16)|0;x=0;ke(54,o|0,a|0);i=x;x=0;if(!(i&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,e|0,1,35472,o|0);i=x;x=0;if(i&1)r=1;else{x=0;Re(5,e|0,648,74);x=0;r=0}t=Je()|0;Uo(o);if(!r){o=t;h[f>>2]=35800;h[s>>2]=35820;h[a>>2]=35836;Uo(n);ws(a);us(s);fi(o|0)}}else t=Je()|0;Ke(e|0);o=t;h[f>>2]=35800;h[s>>2]=35820;h[a>>2]=35836;Uo(n);ws(a);us(s);fi(o|0)}o=Je()|0;h[f>>2]=35800;h[s>>2]=35820;h[a>>2]=35836;Uo(n);ws(a);us(s);fi(o|0)}while(0);f=t;us(s);fi(f|0)}function kt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0,g=0;l=e+4|0;a=h[l>>2]|0;e:do switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)<=0)break e;a=e+40|0;e=0;do{n=h[a>>2]|0;s=b[i+(e*6|0)+2>>1]<<n;o=b[i+(e*6|0)+4>>1]<<n;f=(b[i+(e*6|0)>>1]<<n)-(o+s>>2)+16384|0;d[t+(e*6|0)>>1]=(o+32768+f&65535)>>>n;d[t+(e*6|0)+2>>1]=(f&65535)>>>n;d[t+(e*6|0)+4>>1]=(s+32768+f&65535)>>>n;e=e+1|0}while((e|0)!=(r|0))}else{o=(r|0)<(n|0)?r:n;if((o|0)<=0)break e;s=n<<1;a=e+40|0;e=0;do{f=h[a>>2]|0;m=b[i+(e+n<<1)>>1]<<f;v=b[i+(e+s<<1)>>1]<<f;u=(b[i+(e<<1)>>1]<<f)-(v+m>>2)+16384|0;d[t+(e*6|0)>>1]=(v+32768+u&65535)>>>f;d[t+(e*6|0)+2>>1]=(u&65535)>>>f;d[t+(e*6|0)+4>>1]=(m+32768+u&65535)>>>f;e=e+1|0}while((e|0)!=(o|0))}break}case 4:{if((h[a+24>>2]|0)==1?(f=(r|0)<(n|0)?r:n,(f|0)>0):0){s=n<<1;a=e+40|0;e=n*3|0;o=0;do{v=h[a>>2]|0;m=b[i+(o+n<<1)>>1]<<v;p=b[i+(o+s<<1)>>1]<<v;u=(b[i+(o<<1)>>1]<<v)-(p+m>>2)+16384|0;w=d[i+(o+e<<1)>>1]|0;g=Rg((u&65535)>>>v&65535|0,0,16)|0;m=(m+32768+u&65535)>>>v|z;w=Rg(w&65535|0,0,48)|0;w=g|(p+32768+u&65535)>>>v&65535|w;m=m&65535|z;v=t+(o<<3)|0;u=v;d[u>>1]=w;d[u+2>>1]=w>>>16;v=v+4|0;d[v>>1]=m;d[v+2>>1]=m>>>16;o=o+1|0}while((o|0)!=(f|0))}break}default:{}}while(0);a=h[l>>2]|0;if(!(c[a+32>>0]|0))return;o=h[a+16>>2]|0;if((r|0)<=0)return;a=t;e=0;while(1){g=a+4|0;p=d[a>>1]|0;d[a>>1]=d[g>>1]|0;d[g>>1]=p;e=e+1|0;if((e|0)==(r|0))break;else a=a+(o<<1)|0}return}function _t(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35940;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function yt(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35940;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function Tt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+48|0;if(!(h[n>>2]|0)){s=e+52|0;Et(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;Et(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function Mt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+48>>2]|0;if(!n){n=e+52|0;Ct(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{xt(e,n,i,t,r);return}}function Ct(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0;f=e+4|0;a=h[f>>2]|0;do if(!(c[a+32>>0]|0))l=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*6|0)|0;a=h[f>>2]|0;s=h[a+16>>2]|0;if((r|0)<=0){l=h[o>>2]|0;break}i=h[o>>2]|0;a=i;o=0;while(1){l=a+4|0;u=d[a>>1]|0;d[a>>1]=d[l>>1]|0;d[l>>1]=u;o=o+1|0;if((o|0)==(r|0))break;else a=a+(s<<1)|0}l=i;a=h[f>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:if((h[a+24>>2]|0)==2){if((r|0)<=0)return;a=e+32|0;i=0;do{n=h[a>>2]|0;f=b[l+(i*6|0)>>1]<<n;e=b[l+(i*6|0)+2>>1]<<n;u=((b[l+(i*6|0)+4>>1]<<n)+32768-((e+f|0)>>>1)&65535)>>>n&65535;d[t+(i*6|0)>>1]=(f+32768-e&65535)>>>n;d[t+(i*6|0)+2>>1]=(e&65535)>>>n;d[t+(i*6|0)+4>>1]=u;i=i+1|0}while((i|0)!=(r|0));return}else{o=(n|0)<(r|0)?n:r;if((o|0)<=0)return;s=n<<1;a=h[e+32>>2]|0;i=0;do{r=b[l+(i*6|0)>>1]<<a;e=b[l+(i*6|0)+2>>1]<<a;u=((b[l+(i*6|0)+4>>1]<<a)+32768-((e+r|0)>>>1)&65535)>>>a&65535;d[t+(i<<1)>>1]=(r+32768-e&65535)>>>a;d[t+(i+n<<1)>>1]=(e&65535)>>>a;d[t+(i+s<<1)>>1]=u;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;o=(n|0)<(r|0)?n:r;if((o|0)<=0)return;s=n<<1;f=n*3|0;a=h[e+32>>2]|0;i=0;do{u=d[l+(i<<3)+6>>1]|0;m=b[l+(i<<3)>>1]<<a;r=b[l+(i<<3)+2>>1]<<a;e=((b[l+(i<<3)+4>>1]<<a)+32768-((r+m|0)>>>1)&65535)>>>a&65535;d[t+(i<<1)>>1]=(m+32768-r&65535)>>>a;d[t+(i+n<<1)>>1]=(r&65535)>>>a;d[t+(i+s<<1)>>1]=e;d[t+(i+f<<1)>>1]=u;i=i+1|0}while((i|0)!=(o|0));return}default:return}}function xt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;Ct(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;Ct(e,v,t,r,n);k=d;return}function Et(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0;l=e+4|0;a=h[l>>2]|0;e:do switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)<=0)break e;a=e+40|0;e=0;do{f=h[a>>2]|0;s=b[i+(e*6|0)+2>>1]<<f;o=(b[i+(e*6|0)>>1]<<f)+32768+s&65535;s=s&65535;n=((b[i+(e*6|0)+4>>1]<<f)+32768+((o+s|0)>>>1)&65535)>>>f&65535;d[t+(e*6|0)>>1]=o>>>f;d[t+(e*6|0)+2>>1]=s>>>f;d[t+(e*6|0)+4>>1]=n;e=e+1|0}while((e|0)!=(r|0))}else{
o=(r|0)<(n|0)?r:n;if((o|0)<=0)break e;s=n<<1;a=e+40|0;e=0;do{u=h[a>>2]|0;m=b[i+(e+n<<1)>>1]<<u;v=(b[i+(e<<1)>>1]<<u)+32768+m&65535;m=m&65535;f=((b[i+(e+s<<1)>>1]<<u)+32768+((v+m|0)>>>1)&65535)>>>u&65535;d[t+(e*6|0)>>1]=v>>>u;d[t+(e*6|0)+2>>1]=m>>>u;d[t+(e*6|0)+4>>1]=f;e=e+1|0}while((e|0)!=(o|0))}break}case 4:{if((h[a+24>>2]|0)==1?(f=(r|0)<(n|0)?r:n,(f|0)>0):0){s=n<<1;a=e+40|0;e=n*3|0;o=0;do{u=h[a>>2]|0;v=b[i+(o+n<<1)>>1]<<u;p=(b[i+(o<<1)>>1]<<u)+32768+v&65535;v=v&65535;m=((b[i+(o+s<<1)>>1]<<u)+32768+((p+v|0)>>>1)&65535)>>>u;w=d[i+(o+e<<1)>>1]|0;v=Rg(v>>>u&65535|0,0,16)|0;m=z|m;w=Rg(w&65535|0,0,48)|0;w=p>>>u&65535|v|w;m=m&65535|z;v=t+(o<<3)|0;u=v;d[u>>1]=w;d[u+2>>1]=w>>>16;v=v+4|0;d[v>>1]=m;d[v+2>>1]=m>>>16;o=o+1|0}while((o|0)!=(f|0))}break}default:{}}while(0);a=h[l>>2]|0;if(!(c[a+32>>0]|0))return;o=h[a+16>>2]|0;if((r|0)<=0)return;a=t;e=0;while(1){p=a+4|0;w=d[a>>1]|0;d[a>>1]=d[p>>1]|0;d[p>>1]=w;e=e+1|0;if((e|0)==(r|0))break;else a=a+(o<<1)|0}return}function St(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35964;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function At(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35964;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function Pt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+48|0;if(!(h[n>>2]|0)){s=e+52|0;Rt(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;Rt(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function It(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+48>>2]|0;if(!n){n=e+52|0;Lt(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{Dt(e,n,i,t,r);return}}function Lt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;f=e+4|0;a=h[f>>2]|0;do if(!(c[a+32>>0]|0))l=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*6|0)|0;a=h[f>>2]|0;s=h[a+16>>2]|0;if((r|0)<=0){l=h[o>>2]|0;break}i=h[o>>2]|0;a=i;o=0;while(1){l=a+4|0;u=d[a>>1]|0;d[a>>1]=d[l>>1]|0;d[l>>1]=u;o=o+1|0;if((o|0)==(r|0))break;else a=a+(s<<1)|0}l=i;a=h[f>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:if((h[a+24>>2]|0)==2){if((r|0)<=0)return;a=e+32|0;i=0;do{n=h[a>>2]|0;e=b[l+(i*6|0)+2>>1]<<n;u=(32768-e+(b[l+(i*6|0)+4>>1]<<n)&65535)>>>n&65535;d[t+(i*6|0)>>1]=((b[l+(i*6|0)>>1]<<n)+32768-e&65535)>>>n;d[t+(i*6|0)+2>>1]=(e&65535)>>>n;d[t+(i*6|0)+4>>1]=u;i=i+1|0}while((i|0)!=(r|0));return}else{o=(n|0)<(r|0)?n:r;if((o|0)<=0)return;s=n<<1;a=h[e+32>>2]|0;i=0;do{e=b[l+(i*6|0)+2>>1]<<a;u=(32768-e+(b[l+(i*6|0)+4>>1]<<a)&65535)>>>a&65535;d[t+(i<<1)>>1]=((b[l+(i*6|0)>>1]<<a)+32768-e&65535)>>>a;d[t+(i+n<<1)>>1]=(e&65535)>>>a;d[t+(i+s<<1)>>1]=u;i=i+1|0}while((i|0)!=(o|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;s=(n|0)<(r|0)?n:r;if((s|0)<=0)return;f=n<<1;o=n*3|0;a=h[e+32>>2]|0;i=0;do{u=d[l+(i<<3)+6>>1]|0;r=b[l+(i<<3)+2>>1]<<a;e=(32768-r+(b[l+(i<<3)+4>>1]<<a)&65535)>>>a&65535;d[t+(i<<1)>>1]=((b[l+(i<<3)>>1]<<a)+32768-r&65535)>>>a;d[t+(i+n<<1)>>1]=(r&65535)>>>a;d[t+(i+f<<1)>>1]=e;d[t+(i+o<<1)>>1]=u;i=i+1|0}while((i|0)!=(s|0));return}default:return}}function Dt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;Lt(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;Lt(e,v,t,r,n);k=d;return}function Rt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0;l=e+4|0;a=h[l>>2]|0;e:do switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)<=0)break e;a=e+40|0;e=0;do{f=h[a>>2]|0;s=b[i+(e*6|0)+2>>1]<<f;n=(s+32768+(b[i+(e*6|0)+4>>1]<<f)&65535)>>>f&65535;d[t+(e*6|0)>>1]=((b[i+(e*6|0)>>1]<<f)+32768+s&65535)>>>f;d[t+(e*6|0)+2>>1]=(s&65535)>>>f;d[t+(e*6|0)+4>>1]=n;e=e+1|0}while((e|0)!=(r|0))}else{o=(r|0)<(n|0)?r:n;if((o|0)<=0)break e;s=n<<1;a=e+40|0;e=0;do{u=h[a>>2]|0;m=b[i+(e+n<<1)>>1]<<u;f=(m+32768+(b[i+(e+s<<1)>>1]<<u)&65535)>>>u&65535;d[t+(e*6|0)>>1]=((b[i+(e<<1)>>1]<<u)+32768+m&65535)>>>u;d[t+(e*6|0)+2>>1]=(m&65535)>>>u;d[t+(e*6|0)+4>>1]=f;e=e+1|0}while((e|0)!=(o|0))}break}case 4:{if((h[a+24>>2]|0)==1?(f=(r|0)<(n|0)?r:n,(f|0)>0):0){s=n<<1;a=e+40|0;e=n*3|0;o=0;do{v=h[a>>2]|0;p=b[i+(o+n<<1)>>1]<<v;m=((b[i+(o<<1)>>1]<<v)+32768+p&65535)>>>v;u=(p+32768+(b[i+(o+s<<1)>>1]<<v)&65535)>>>v;w=d[i+(o+e<<1)>>1]|0;v=Rg((p&65535)>>>v&65535|0,0,16)|0;u=u|z;w=Rg(w&65535|0,0,48)|0;w=v|m&65535|w;u=u&65535|z;m=t+(o<<3)|0;v=m;d[v>>1]=w;d[v+2>>1]=w>>>16;m=m+4|0;d[m>>1]=u;d[m+2>>1]=u>>>16;o=o+1|0}while((o|0)!=(f|0))}break}default:{}}while(0);a=h[l>>2]|0;if(!(c[a+32>>0]|0))return;o=h[a+16>>2]|0;if((r|0)<=0)return;a=t;e=0;while(1){p=a+4|0;w=d[a>>1]|0;d[a>>1]=d[p>>1]|0;d[p>>1]=w;e=e+1|0;if((e|0)==(r|0))break;else a=a+(o<<1)|0}return}function Ot(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0;d=k;k=k+16|0;l=d;u=h[e>>2]|0;if(!u){e=0;k=d;return e|0}m=i;s=r-m|0;f=n+12|0;o=h[f>>2]|0;s=(o|0)>(s|0)?o-s|0:0;o=t;n=o-m|0;if((n|0)>0?(Qk[h[(h[u>>2]|0)+48>>2]&63](u,i,n)|0)!=(n|0):0){h[e>>2]=0;m=0;k=d;return m|0}do if((s|0)>0){Fo(l,s,a);x=0;n=Me(h[(h[u>>2]|0)+48>>2]|0,u|0,((c[l>>0]&1)==0?l+1|0:h[l+8>>2]|0)|0,s|0)|0;m=x;x=0;if(m&1){m=Je()|0;Uo(l);fi(m|0)}if((n|0)==(s|0)){Uo(l);break}h[e>>2]=0;Uo(l);m=0;k=d;return m|0}while(0);r=r-o|0;if((r|0)>0?(Qk[h[(h[u>>2]|0)+48>>2]&63](u,t,r)|0)!=(r|0):0){h[e>>2]=0;m=0;k=d;return m|0}h[f>>2]=0;m=u;k=d;return m|0}function Bt(e){e=e|0;h[e>>2]=35836;Uo(e+32|0);ws(e);return}function Nt(e){e=e|0;h[e>>2]=35836;Uo(e+32|0);ws(e);$m(e);return}function Ft(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=i+44|0;s=h[o>>2]|0;l=i+24|0;u=h[l>>2]|0;if(s>>>0<u>>>0){h[o>>2]=u;s=u}f=s;o=a&24;if(!o){i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}if((n|0)==1&(o|0)==24){i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}e:do switch(n|0){case 0:{o=0;n=0;break}case 1:if(!(a&8)){n=u-(h[i+20>>2]|0)|0;o=n;n=((n|0)<0)<<31>>31;break e}else{n=(h[i+12>>2]|0)-(h[i+8>>2]|0)|0;o=n;n=((n|0)<0)<<31>>31;break e}case 2:{o=i+32|0;if(!(c[o>>0]&1))o=o+1|0;else o=h[i+40>>2]|0;n=s-o|0;o=n;n=((n|0)<0)<<31>>31;break}default:{i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}}while(0);n=Ig(o|0,n|0,t|0,r|0)|0;t=z;if((t|0)>=0){o=i+32|0;if(!(c[o>>0]&1))o=o+1|0;else o=h[i+40>>2]|0;r=s-o|0;s=((r|0)<0)<<31>>31;if(!((s|0)<(t|0)|(s|0)==(t|0)&r>>>0<n>>>0)){o=a&8;if(!((n|0)==0&(t|0)==0)){if((o|0)!=0?(h[i+12>>2]|0)==0:0){i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}if((a&16|0)!=0&(u|0)==0){i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}}if(o){h[i+12>>2]=(h[i+8>>2]|0)+n;h[i+16>>2]=f}if(a&16)h[l>>2]=(h[i+20>>2]|0)+n;i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=n;h[i+4>>2]=t;return}}i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}function Ut(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;t=t+8|0;e_[h[(h[i>>2]|0)+16>>2]&15](e,i,h[t>>2]|0,h[t+4>>2]|0,0,r);return}function Ht(e){e=e|0;var i=0,t=0,r=0,n=0;i=e+44|0;t=h[i>>2]|0;r=h[e+24>>2]|0;if(t>>>0<r>>>0){h[i>>2]=r;t=r}if(!(h[e+48>>2]&8)){e=-1;return e|0}n=e+16|0;i=h[n>>2]|0;r=e+12|0;if(i>>>0<t>>>0){r=h[r>>2]|0;h[n>>2]=t;i=t}else r=h[r>>2]|0;if(r>>>0>=i>>>0){e=-1;return e|0}e=m[r>>0]|0;return e|0}function zt(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;r=e+44|0;t=h[r>>2]|0;n=h[e+24>>2]|0;if(t>>>0<n>>>0){h[r>>2]=n;t=n}s=e+8|0;r=h[s>>2]|0;f=e+12|0;a=h[f>>2]|0;o=r;if(r>>>0>=a>>>0){e=-1;return e|0}if((i|0)==-1){h[s>>2]=r;h[f>>2]=a+-1;h[e+16>>2]=t;e=0;return e|0}if(!(h[e+48>>2]&16)){n=i&255;r=a+-1|0;if(n<<24>>24!=(c[r>>0]|0)){e=-1;return e|0}}else{n=i&255;r=a+-1|0}h[s>>2]=o;h[f>>2]=r;h[e+16>>2]=t;c[r>>0]=n;e=i;return e|0}function jt(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0;w=k;k=k+16|0;u=w;if((i|0)==-1){e=0;k=w;return e|0}d=e+12|0;m=e+8|0;b=(h[d>>2]|0)-(h[m>>2]|0)|0;v=e+24|0;t=h[v>>2]|0;l=e+28|0;r=h[l>>2]|0;do if((t|0)==(r|0)){s=e+48|0;if(!(h[s>>2]&16)){e=-1;k=w;return e|0}f=e+20|0;o=h[f>>2]|0;n=t-o|0;a=e+44|0;o=(h[a>>2]|0)-o|0;r=e+32|0;x=0;ke(55,r|0,0);t=x;x=0;if(!(t&1)){if(!(c[r>>0]&1))t=10;else t=(h[r>>2]&-2)+-1|0;x=0;Re(6,r|0,t|0,0);t=x;x=0;if(!(t&1)){t=c[r>>0]|0;if(!(t&1)){r=r+1|0;t=(t&255)>>>1}else{r=h[e+40>>2]|0;t=h[e+36>>2]|0}p=r+t|0;h[f>>2]=r;h[l>>2]=p;f=r+n|0;h[v>>2]=f;t=r+o|0;h[a>>2]=t;r=p;break}}p=Je(0)|0;ai(p|0)|0;si();p=-1;k=w;return p|0}else{p=e+44|0;s=e+48|0;a=p;f=t;t=h[p>>2]|0}while(0);o=f+1|0;h[u>>2]=o;n=h[(o>>>0<t>>>0?a:u)>>2]|0;h[a>>2]=n;if(h[s>>2]&8){t=e+32|0;if(!(c[t>>0]&1))t=t+1|0;else t=h[e+40>>2]|0;h[m>>2]=t;h[d>>2]=t+b;h[e+16>>2]=n}if((f|0)==(r|0)){p=r_[h[(h[e>>2]|0)+52>>2]&63](e,i&255)|0;k=w;return p|0}else{h[v>>2]=o;c[f>>0]=i;p=i&255;k=w;return p|0}return 0}function Yt(e){e=e|0;var i=0,t=0;h[e>>2]=35800;i=e+56|0;h[i>>2]=35820;t=e+4|0;h[t>>2]=35836;Uo(e+36|0);ws(t);us(i);return}function Vt(e){e=e|0;var i=0,t=0;h[e>>2]=35800;i=e+56|0;h[i>>2]=35820;t=e+4|0;h[t>>2]=35836;Uo(e+36|0);ws(t);us(i);$m(e);return}function qt(e){e=e|0;var i=0,t=0,r=0,n=0;n=h[(h[e>>2]|0)+-12>>2]|0;i=e+n|0;h[i>>2]=35800;t=e+(n+56)|0;h[t>>2]=35820;r=e+(n+4)|0;h[r>>2]=35836;Uo(e+(n+36)|0);ws(r);us(t);$m(i);return}function Wt(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35988;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function Gt(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=35988;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function Xt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+36|0;if(!(h[n>>2]|0)){s=e+40|0;Qt(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;Qt(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function Kt(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;$t(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{Jt(e,n,i,t,r);return}}function $t(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;s=e+4|0;a=h[s>>2]|0;do if(!(c[a+32>>0]|0))f=i;else{e=e+8|0;Dg(h[e>>2]|0,i|0,r*6|0)|0;a=h[s>>2]|0;o=h[a+16>>2]|0;if((r|0)<=0){f=h[e>>2]|0;break}e=h[e>>2]|0;a=e;i=0;while(1){f=a+4|0;l=d[a>>1]|0;d[a>>1]=d[f>>1]|0;d[f>>1]=l;i=i+1|0;if((i|0)==(r|0))break;else a=a+(o<<1)|0}f=e;a=h[s>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{s=b[f+(a*6|0)+2>>1]|0;n=32768-s+(b[f+(a*6|0)+4>>1]|0)|0;l=(b[f+(a*6|0)>>1]|0)-s+32768|0;d[t+(a*6|0)>>1]=s+49152+(((n&65535)+(l&65535)|0)>>>2);d[t+(a*6|0)+2>>1]=n;d[t+(a*6|0)+4>>1]=l;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{s=b[f+(i*6|0)+2>>1]|0;r=32768-s+(b[f+(i*6|0)+4>>1]|0)|0;l=(b[f+(i*6|0)>>1]|0)-s+32768|0;d[t+(i<<1)>>1]=s+49152+(((r&65535)+(l&65535)|0)>>>2);d[t+(i+n<<1)>>1]=r;d[t+(i+e<<1)>>1]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{l=d[f+(o<<3)+6>>1]|0;u=b[f+(o<<3)+2>>1]|0;s=32768-u+(b[f+(o<<3)+4>>1]|0)|0;r=(b[f+(o<<3)>>1]|0)-u+32768|0;d[t+(o<<1)>>1]=u+49152+(((s&65535)+(r&65535)|0)>>>2);d[t+(o+n<<1)>>1]=s;d[t+(o+e<<1)>>1]=r;d[t+(o+i<<1)>>1]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function Jt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;$t(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;$t(e,v,t,r,n);k=d;return}function Qt(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){s=b[i+(e*6|0)+2>>1]|0;o=b[i+(e*6|0)+4>>1]|0;n=(b[i+(e*6|0)>>1]|0)-((o+s|0)>>>2)+16384|0;d[t+(e*6|0)>>1]=o+32768+n;d[t+(e*6|0)+2>>1]=n;d[t+(e*6|0)+4>>1]=s+32768+n;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{l=b[i+(o+n<<1)>>1]|0;u=b[i+(o+a<<1)>>1]|0;s=(b[i+(o<<1)>>1]|0)-((u+l|0)>>>2)+16384|0;d[t+(o*6|0)>>1]=u+32768+s;d[t+(o*6|0)+2>>1]=s;d[t+(o*6|0)+4>>1]=l+32768+s;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{l=b[i+(o+n<<1)>>1]|0;m=b[i+(o+e<<1)>>1]|0;u=(b[i+(o<<1)>>1]|0)-((m+l|0)>>>2)+16384|0;v=d[i+(o+a<<1)>>1]|0;w=Rg(u&65535|0,0,16)|0;l=l+32768+u|z;v=Rg(v&65535|0,0,48)|0;v=w|m+32768+u&65535|v;l=l&65535|z;u=t+(o<<3)|0;m=u;d[m>>1]=v;d[m+2>>1]=v>>>16;u=u+4|0;d[u>>1]=l;d[u+2>>1]=l>>>16;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)<=0)return;e=t;a=0;while(1){w=e+4|0;v=d[e>>1]|0;d[e>>1]=d[w>>1]|0;d[w>>1]=v;a=a+1|0;if((a|0)==(r|0))break;else e=e+(o<<1)|0}return}function Zt(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=36012;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function er(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=36012;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function ir(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+36|0;if(!(h[n>>2]|0)){s=e+40|0;ar(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;ar(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function tr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;rr(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{nr(e,n,i,t,r);return}}function rr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0;s=e+4|0;a=h[s>>2]|0;do if(!(c[a+32>>0]|0))f=i;else{e=e+8|0;Dg(h[e>>2]|0,i|0,r*6|0)|0;a=h[s>>2]|0;o=h[a+16>>2]|0;if((r|0)<=0){f=h[e>>2]|0;break}e=h[e>>2]|0;a=e;i=0;while(1){f=a+4|0;l=d[a>>1]|0;d[a>>1]=d[f>>1]|0;d[f>>1]=l;i=i+1|0;if((i|0)==(r|0))break;else a=a+(o<<1)|0}f=e;a=h[s>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{o=b[f+(a*6|0)>>1]|0;n=d[f+(a*6|0)+2>>1]|0;s=n&65535;l=(b[f+(a*6|0)+4>>1]|0)+32768-((s+o|0)>>>1)&65535;d[t+(a*6|0)>>1]=o+32768-s;d[t+(a*6|0)+2>>1]=n;d[t+(a*6|0)+4>>1]=l;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{r=d[f+(i*6|0)+2>>1]|0;o=b[f+(i*6|0)>>1]|0;s=r&65535;l=(b[f+(i*6|0)+4>>1]|0)+32768-((s+o|0)>>>1)&65535;d[t+(i<<1)>>1]=o+32768-s;d[t+(i+n<<1)>>1]=r;d[t+(i+e<<1)>>1]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{s=d[f+(o<<3)+2>>1]|0;l=d[f+(o<<3)+6>>1]|0;m=b[f+(o<<3)>>1]|0;u=s&65535;r=(b[f+(o<<3)+4>>1]|0)+32768-((u+m|0)>>>1)&65535;d[t+(o<<1)>>1]=m+32768-u;d[t+(o+n<<1)>>1]=s;d[t+(o+e<<1)>>1]=r;d[t+(o+i<<1)>>1]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function nr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;rr(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;rr(e,v,t,r,n);k=d;return}function ar(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){s=d[i+(e*6|0)+2>>1]|0;n=s&65535;o=(b[i+(e*6|0)>>1]|0)+32768+n|0;n=(b[i+(e*6|0)+4>>1]|0)+32768+(((o&65535)+n|0)>>>1)&65535;d[t+(e*6|0)>>1]=o;d[t+(e*6|0)+2>>1]=s;d[t+(e*6|0)+4>>1]=n;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{l=d[i+(o+n<<1)>>1]|0;s=l&65535;u=(b[i+(o<<1)>>1]|0)+32768+s|0;s=(b[i+(o+a<<1)>>1]|0)+32768+(((u&65535)+s|0)>>>1)&65535;d[t+(o*6|0)>>1]=u;d[t+(o*6|0)+2>>1]=l;d[t+(o*6|0)+4>>1]=s;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{u=d[i+(o+n<<1)>>1]|0;l=u&65535;m=(b[i+(o<<1)>>1]|0)+32768+l&65535;l=(b[i+(o+e<<1)>>1]|0)+32768+((m+l|0)>>>1)|0;v=d[i+(o+a<<1)>>1]|0;u=Rg(u&65535|0,0,16)|0;l=z|l;v=Rg(v&65535|0,0,48)|0;v=m|u|v;l=l&65535|z;u=t+(o<<3)|0;m=u;d[m>>1]=v;d[m+2>>1]=v>>>16;u=u+4|0;d[u>>1]=l;d[u+2>>1]=l>>>16;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)<=0)return;e=t;a=0;while(1){v=e+4|0;m=d[e>>1]|0;d[e>>1]=d[v>>1]|0;d[v>>1]=m;a=a+1|0;if((a|0)==(r|0))break;else e=e+(o<<1)|0}return}function or(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=36036;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function sr(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=36036;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function fr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+36|0;if(!(h[n>>2]|0)){s=e+40|0;dr(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;dr(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function lr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;ur(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{cr(e,n,i,t,r);return}}function ur(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;s=e+4|0;a=h[s>>2]|0;do if(!(c[a+32>>0]|0))f=i;else{e=e+8|0;Dg(h[e>>2]|0,i|0,r*6|0)|0;a=h[s>>2]|0;o=h[a+16>>2]|0;if((r|0)<=0){f=h[e>>2]|0;break}e=h[e>>2]|0;a=e;i=0;while(1){f=a+4|0;l=d[a>>1]|0;d[a>>1]=d[f>>1]|0;d[f>>1]=l;i=i+1|0;if((i|0)==(r|0))break;else a=a+(o<<1)|0}f=e;a=h[s>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{n=d[f+(a*6|0)+2>>1]|0;s=n&65535;l=32768-s+(b[f+(a*6|0)+4>>1]|0)&65535;d[t+(a*6|0)>>1]=(b[f+(a*6|0)>>1]|0)+32768-s;d[t+(a*6|0)+2>>1]=n;d[t+(a*6|0)+4>>1]=l;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{r=d[f+(i*6|0)+2>>1]|0;s=r&65535;l=32768-s+(b[f+(i*6|0)+4>>1]|0)&65535;d[t+(i<<1)>>1]=(b[f+(i*6|0)>>1]|0)+32768-s;d[t+(i+n<<1)>>1]=r;d[t+(i+e<<1)>>1]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{s=d[f+(o<<3)+2>>1]|0;l=d[f+(o<<3)+6>>1]|0;u=s&65535;r=32768-u+(b[f+(o<<3)+4>>1]|0)&65535;d[t+(o<<1)>>1]=(b[f+(o<<3)>>1]|0)+32768-u;d[t+(o+n<<1)>>1]=s;d[t+(o+e<<1)>>1]=r;d[t+(o+i<<1)>>1]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function cr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;ur(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;ur(e,v,t,r,n);k=d;return}function dr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){s=d[i+(e*6|0)+2>>1]|0;o=s&65535;n=o+32768+(b[i+(e*6|0)+4>>1]|0)&65535;d[t+(e*6|0)>>1]=(b[i+(e*6|0)>>1]|0)+32768+o;d[t+(e*6|0)+2>>1]=s;d[t+(e*6|0)+4>>1]=n;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{l=d[i+(o+n<<1)>>1]|0;u=l&65535;s=u+32768+(b[i+(o+a<<1)>>1]|0)&65535;d[t+(o*6|0)>>1]=(b[i+(o<<1)>>1]|0)+32768+u;d[t+(o*6|0)+2>>1]=l;d[t+(o*6|0)+4>>1]=s;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{u=d[i+(o+n<<1)>>1]|0;l=u&65535;m=(b[i+(o<<1)>>1]|0)+32768+l|0;l=l+32768+(b[i+(o+e<<1)>>1]|0)|0;v=d[i+(o+a<<1)>>1]|0;u=Rg(u&65535|0,0,16)|0;l=z|l;v=Rg(v&65535|0,0,48)|0;v=m&65535|u|v;l=l&65535|z;u=t+(o<<3)|0;m=u;d[m>>1]=v;d[m+2>>1]=v>>>16;u=u+4|0;d[u>>1]=l;d[u+2>>1]=l>>>16;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)<=0)return;e=t;a=0;while(1){v=e+4|0;m=d[e>>1]|0;d[e>>1]=d[v>>1]|0;d[v>>1]=m;a=a+1|0;if((a|0)==(r|0))break;else e=e+(o<<1)|0}return}function hr(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=36060;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r)return;i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);return}function mr(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=36060;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}r=h[e+8>>2]|0;if(!r){$m(e);return}i=e+12|0;t=h[i>>2]|0;if((t|0)!=(r|0))h[i>>2]=t+(~((t+-2-r|0)>>>1)<<1);$m(r);$m(e);return}function br(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;n=e+36|0;if(!(h[n>>2]|0)){s=e+40|0;gr(e,i,h[s>>2]|0,t,r);h[s>>2]=(h[s>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}f=e+4|0;a=t<<1;o=ce(a,h[(h[f>>2]|0)+16>>2]|0)|0;s=e+20|0;gr(e,i,h[s>>2]|0,t,r);i=h[f>>2]|0;if((h[i+28>>2]|0)==536870912)gt(h[s>>2]|0,ce(a,h[i+16>>2]|0)|0);f=h[n>>2]|0;if((Qk[h[(h[f>>2]|0)+48>>2]&63](f,h[s>>2]|0,o)|0)==(o|0))return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,3,35472);f=x;x=0;if(f&1){f=Je()|0;Ke(i|0);fi(f|0)}else Ti(i|0,648,74)}function vr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;wr(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{pr(e,n,i,t,r);return}}function wr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0;s=e+4|0;a=h[s>>2]|0;do if(!(c[a+32>>0]|0))f=i;else{e=e+8|0;Dg(h[e>>2]|0,i|0,r*6|0)|0;a=h[s>>2]|0;o=h[a+16>>2]|0;if((r|0)<=0){f=h[e>>2]|0;break}e=h[e>>2]|0;a=e;i=0;while(1){f=a+4|0;l=d[a>>1]|0;d[a>>1]=d[f>>1]|0;d[f>>1]=l;i=i+1|0;if((i|0)==(r|0))break;else a=a+(o<<1)|0}f=e;a=h[s>>2]|0}while(0);switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{n=d[f+(a*6|0)+2>>1]|0;l=d[f+(a*6|0)+4>>1]|0;d[t+(a*6|0)>>1]=d[f+(a*6|0)>>1]|0;d[t+(a*6|0)+2>>1]=n;d[t+(a*6|0)+4>>1]=l;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{r=d[f+(i*6|0)+2>>1]|0;l=d[f+(i*6|0)+4>>1]|0;d[t+(i<<1)>>1]=d[f+(i*6|0)>>1]|0;d[t+(i+n<<1)>>1]=r;d[t+(i+e<<1)>>1]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{s=d[f+(o<<3)+2>>1]|0;r=d[f+(o<<3)+4>>1]|0;l=d[f+(o<<3)+6>>1]|0;d[t+(o<<1)>>1]=d[f+(o<<3)>>1]|0;d[t+(o+n<<1)>>1]=s;d[t+(o+e<<1)>>1]=r;d[t+(o+i<<1)>>1]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function pr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;d=k;k=k+176|0;m=d+152|0;v=d+16|0;b=d;f=e+4|0;a=h[f>>2]|0;u=r<<1;o=ce(u,h[a+16>>2]|0)|0;do if(o){s=e+20|0;while(1){a=Qk[h[(h[i>>2]|0)+32>>2]&63](i,h[s>>2]|0,o)|0;if(!a)break;if((o|0)==(a|0)){l=26;break}else o=o-a|0}if((l|0)==26){a=h[f>>2]|0;break}l=v+56|0;f=v+4|0;h[v>>2]=35760;h[l>>2]=35780;x=0;ke(52,v+56|0,f|0);d=x;x=0;if(d&1){v=Je()|0;us(l);fi(v|0)}h[v+128>>2]=0;h[v+132>>2]=-1;h[v>>2]=35800;h[v+56>>2]=35820;x=0;ge(158,f|0);d=x;x=0;do if(d&1)a=Je()|0;else{h[f>>2]=35836;i=v+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[v+52>>2]=16;h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;x=0;ke(53,f|0,m|0);d=x;x=0;if(d&1){a=Je()|0;Uo(m);Uo(i);ws(f);break}Uo(m);x=0;a=Me(28,v|0,48058,57)|0;m=x;x=0;if(!(m&1)?(x=0,Ae(27,a|0,0)|0,m=x,x=0,!(m&1)):0){s=$e(16)|0;x=0;ke(54,b|0,f|0);m=x;x=0;if(!(m&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,b|0);m=x;x=0;if(m&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(b);if(!o){b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}}else a=Je()|0;Ke(s|0);b=a;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}b=Je()|0;h[v>>2]=35800;h[l>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(l);fi(b|0)}while(0);v=a;us(l);fi(v|0)}while(0);o=e+20|0;if((h[a+28>>2]|0)!=536870912){v=h[o>>2]|0;wr(e,v,t,r,n);k=d;return}gt(h[o>>2]|0,ce(u,h[a+16>>2]|0)|0);v=h[o>>2]|0;wr(e,v,t,r,n);k=d;return}function gr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){s=d[i+(e*6|0)+2>>1]|0;n=d[i+(e*6|0)+4>>1]|0;d[t+(e*6|0)>>1]=d[i+(e*6|0)>>1]|0;d[t+(e*6|0)+2>>1]=s;d[t+(e*6|0)+4>>1]=n;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{l=d[i+(o+n<<1)>>1]|0;s=d[i+(o+a<<1)>>1]|0;d[t+(o*6|0)>>1]=d[i+(o<<1)>>1]|0;d[t+(o*6|0)+2>>1]=l;d[t+(o*6|0)+4>>1]=s;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{l=d[i+(o<<1)>>1]|0;v=d[i+(o+a<<1)>>1]|0;u=b[i+(o+e<<1)>>1]|0;m=Rg(b[i+(o+n<<1)>>1]|0,0,16)|0;u=z|u;v=Rg(v&65535|0,0,48)|0;v=m|l&65535|v;u=u&65535|z;l=t+(o<<3)|0;m=l;d[m>>1]=v;d[m+2>>1]=v>>>16;l=l+4|0;d[l>>1]=u;d[l+2>>1]=u>>>16;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)<=0)return;e=t;a=0;while(1){v=e+4|0;m=d[e>>1]|0;d[e>>1]=d[v>>1]|0;d[v>>1]=m;a=a+1|0;if((a|0)==(r|0))break;else e=e+(o<<1)|0}return}function kr(e){e=e|0;return}function _r(e){e=e|0;$m(e);return}function yr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;t=ce(h[e+8>>2]|0,t)|0;e=h[e+4>>2]|0;if((Qk[h[(h[e>>2]|0)+48>>2]&63](e,i,t)|0)==(t|0))return;r=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,r|0,3,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(r|0);fi(e|0)}else Ti(r|0,648,74)}function Tr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+16|0;l=u;f=e+8|0;n=h[f>>2]|0;r=ce(n,t)|0;do if(r){o=e+4|0;a=r;while(1){n=h[o>>2]|0;n=Qk[h[(h[n>>2]|0)+32>>2]&63](n,i,a)|0;if(!n)break;r=a-n|0;if((a|0)==(n|0)){s=11;break}else a=r}if((s|0)==11){n=h[f>>2]|0;a=r;break}r=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,r|0,3,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(r|0);fi(e|0)}else Ti(r|0,648,74)}else a=0;while(0);
if((n|0)==2){gt(i,t<<1);n=h[f>>2]|0}r=h[e+12>>2]|0;if((r|0)<=(ce(n,t)|0)){k=u;return}e=h[e+4>>2]|0;e_[h[(h[e>>2]|0)+16>>2]&15](l,e,r-a|0,0,1,24);k=u;return}function Mr(e){e=e|0;$m(e);return}function Cr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;r=e+4|0;Dg(h[r>>2]|0,i|0,ce(h[e+8>>2]|0,t)|0)|0;h[r>>2]=(h[r>>2]|0)+(h[e+12>>2]|0);return}function xr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;r=e+4|0;Dg(i|0,h[r>>2]|0,ce(h[e+8>>2]|0,t)|0)|0;h[r>>2]=(h[r>>2]|0)+(h[e+12>>2]|0);return}function Er(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;h[e+112>>2]=0;h[e+108>>2]=0;l=h[i>>2]|0;n=l;do if(l){o=e+92|0;l=e+96|0;s=h[l>>2]|0;f=h[o>>2]|0;t=f;r=s-t|0;if(r>>>0>=4e4)if(r>>>0>4e4?(a=f+4e4|0,(s|0)!=(a|0)):0){h[l>>2]=a;a=t}else a=t;else{Sr(o,4e4-r|0);a=h[o>>2]|0;n=h[i>>2]|0}t=e+116|0;h[t>>2]=a;s=e+124|0;h[s>>2]=a;f=e+104|0;h[f>>2]=n;r=n;if(n){if((h[r+12>>2]|0)==(h[r+16>>2]|0)){i=($k[h[(h[n>>2]|0)+36>>2]&127](r)|0)==-1;r=h[s>>2]|0;if(i)break;n=h[t>>2]|0}else{r=a;n=a}o=r-n|0;if(o>>>0<=64){a=e+92|0;if((r|0)==(n|0))r=n;else{r=n;n=0;do{c[(h[a>>2]|0)+n>>0]=c[r+n>>0]|0;n=n+1|0;r=h[t>>2]|0}while(n>>>0<o>>>0);n=h[s>>2]|0}a=h[a>>2]|0;i=a;u=i-r|0;h[t>>2]=a;r=n+u|0;h[s>>2]=r;a=e+120|0;h[a>>2]=(h[a>>2]|0)+u;f=h[f>>2]|0;r=Qk[h[(h[f>>2]|0)+32>>2]&63](f,r,(h[l>>2]|0)-(i+o)|0)|0;r=(h[s>>2]|0)+r|0;h[s>>2]=r}}else r=a}else{h[e+104>>2]=0;r=h[i+4>>2]|0;t=e+116|0;h[t>>2]=r;r=r+(h[i+8>>2]|0)|0;h[e+124>>2]=r}while(0);t=h[t>>2]|0;if(t>>>0>=r>>>0){l=t;u=e+120|0;h[u>>2]=l;Ar(e);return}while(1){if((c[t>>0]|0)==-1){r=20;break}t=t+1|0;if(t>>>0>=r>>>0){r=20;break}}if((r|0)==20){u=e+120|0;h[u>>2]=t;Ar(e);return}}function Sr(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;f=e+8|0;n=h[f>>2]|0;l=e+4|0;t=h[l>>2]|0;r=t;if((n-r|0)>>>0>=i>>>0){do{c[t>>0]=0;t=(h[l>>2]|0)+1|0;h[l>>2]=t;i=i+-1|0}while((i|0)!=0);return}t=h[e>>2]|0;a=r-t+i|0;if((a|0)<0){Gm(e);n=h[f>>2]|0;t=h[e>>2]|0}r=n-t|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<a>>>0?a:r;t=(h[l>>2]|0)-t|0;if(!r){n=0;o=0;a=t}else s=8}else{r=2147483647;t=(h[l>>2]|0)-t|0;s=8}if((s|0)==8){n=r;o=Km(r)|0;a=t}t=o+a|0;n=o+n|0;r=t;do{c[r>>0]=0;r=t+1|0;t=r;i=i+-1|0}while((i|0)!=0);i=h[e>>2]|0;r=(h[l>>2]|0)-i|0;s=o+(a-r)|0;Dg(s|0,i|0,r|0)|0;h[e>>2]=s;h[l>>2]=t;h[f>>2]=n;if(!i)return;$m(i);return}function Ar(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;s=e+116|0;i=h[s>>2]|0;f=e+120|0;if(i>>>0<((h[f>>2]|0)+-3|0)>>>0){f=e+112|0;o=h[f>>2]|0;e=e+108|0;h[e>>2]=(m[i+1>>0]<<16|m[i>>0]<<24|m[i+2>>0]<<8|m[i+3>>0])>>>o|h[e>>2];e=32-o>>3;h[s>>2]=i+e;h[f>>2]=(e<<3)+o;return}o=e+104|0;t=h[o>>2]|0;do if(t){if((h[t+12>>2]|0)==(h[t+16>>2]|0)){if(($k[h[(h[t>>2]|0)+36>>2]&127](t)|0)==-1)break;i=h[s>>2]|0}n=e+124|0;t=h[n>>2]|0;a=t-i|0;if(a>>>0<=64){r=e+92|0;if((t|0)==(i|0))t=i;else{t=0;do{c[(h[r>>2]|0)+t>>0]=c[i+t>>0]|0;t=t+1|0;i=h[s>>2]|0}while(t>>>0<a>>>0);t=i;i=h[n>>2]|0}u=h[r>>2]|0;r=u;l=r-t|0;h[s>>2]=u;t=i+l|0;h[n>>2]=t;h[f>>2]=(h[f>>2]|0)+l;o=h[o>>2]|0;o=Qk[h[(h[o>>2]|0)+32>>2]&63](o,t,(h[e+96>>2]|0)-(r+a)|0)|0;h[n>>2]=(h[n>>2]|0)+o}}while(0);o=e+112|0;a=e+108|0;e=h[e+124>>2]|0;n=e+-1|0;i=h[s>>2]|0;while(1){if(i>>>0>=e>>>0){t=14;break}r=c[i>>0]|0;t=r&255;r=r<<24>>24==-1;if(r){if((i|0)==(n|0)){t=25;break}i=i+1|0;if((c[i>>0]|0)<0){t=25;break}}else i=i+1|0;u=h[o>>2]|0;h[a>>2]=t<<24-u|h[a>>2];h[s>>2]=i;u=u+(r?7:8)|0;h[o>>2]=u;if((u|0)>=24){t=33;break}}if((t|0)==14){if((h[o>>2]|0)>=1)return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,5,35472);u=x;x=0;if(!(u&1))Ti(i|0,648,74);u=Je()|0;Ke(i|0);fi(u|0)}else if((t|0)==25){if((h[o>>2]|0)>=1)return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,5,35472);u=x;x=0;if(!(u&1))Ti(i|0,648,74);u=Je()|0;Ke(i|0);fi(u|0)}else if((t|0)==33){e:do if(i>>>0<e>>>0)do{if((c[i>>0]|0)==-1)break e;i=i+1|0}while(i>>>0<e>>>0);while(0);h[f>>2]=i;return}}function Pr(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;f=e+8|0;n=h[f>>2]|0;l=e+4|0;t=h[l>>2]|0;r=t;if((n-r|0)>>>0>=i>>>0){do{c[t>>0]=0;t=(h[l>>2]|0)+1|0;h[l>>2]=t;i=i+-1|0}while((i|0)!=0);return}t=h[e>>2]|0;a=r-t+i|0;if((a|0)<0){Gm(e);n=h[f>>2]|0;t=h[e>>2]|0}r=n-t|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<a>>>0?a:r;t=(h[l>>2]|0)-t|0;if(!r){n=0;o=0;a=t}else s=8}else{r=2147483647;t=(h[l>>2]|0)-t|0;s=8}if((s|0)==8){n=r;o=Km(r)|0;a=t}t=o+a|0;n=o+n|0;r=t;do{c[r>>0]=0;r=t+1|0;t=r;i=i+-1|0}while((i|0)!=0);i=h[e>>2]|0;r=(h[l>>2]|0)-i|0;s=o+(a-r)|0;Dg(s|0,i|0,r|0)|0;h[e>>2]=s;h[l>>2]=t;h[f>>2]=n;if(!i)return;$m(i);return}function Ir(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;h[e>>2]=36284;h[e+4>>2]=t;u=e+8|0;r=h[t>>2]|0;f=t+16|0;o=h[f>>2]|0;a=ce(o,r)|0;h[u>>2]=0;d=e+12|0;h[d>>2]=0;h[e+16>>2]=0;do if(!a)a=o;else{if(!((a|0)<0?(x=0,ge(155,u|0),o=x,x=0,o&1):0))l=4;if((l|0)==4?(x=0,s=ye(66,a|0)|0,o=x,x=0,!(o&1)):0){h[d>>2]=s;h[u>>2]=s;h[e+16>>2]=s+a;r=s;do{c[r>>0]=0;r=(h[d>>2]|0)+1|0;h[d>>2]=r;a=a+-1|0}while((a|0)!=0);a=h[f>>2]|0;r=h[t>>2]|0;break}r=Je()|0;n=h[u>>2]|0;if(n){if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n)}d=r;fi(d|0)}while(0);o=e+20|0;r=ce(a,r)|0;h[o>>2]=0;a=e+24|0;h[a>>2]=0;h[e+28>>2]=0;if(!r){d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))l=15;if((l|0)==15?(x=0,n=ye(66,r|0)|0,l=x,x=0,!(l&1)):0){h[a>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[a>>2]|0)+1|0;h[a>>2]=n;r=r+-1|0}while((r|0)!=0);d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}r=Je()|0;n=h[o>>2]|0;if(n){if((h[a>>2]|0)!=(n|0))h[a>>2]=n;$m(n)}n=h[u>>2]|0;if(!n){d=r;fi(d|0)}if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n);d=r;fi(d|0)}function Lr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;h[e>>2]=36260;h[e+4>>2]=t;u=e+8|0;r=h[t>>2]|0;f=t+16|0;o=h[f>>2]|0;a=ce(o,r)|0;h[u>>2]=0;d=e+12|0;h[d>>2]=0;h[e+16>>2]=0;do if(!a)a=o;else{if(!((a|0)<0?(x=0,ge(155,u|0),o=x,x=0,o&1):0))l=4;if((l|0)==4?(x=0,s=ye(66,a|0)|0,o=x,x=0,!(o&1)):0){h[d>>2]=s;h[u>>2]=s;h[e+16>>2]=s+a;r=s;do{c[r>>0]=0;r=(h[d>>2]|0)+1|0;h[d>>2]=r;a=a+-1|0}while((a|0)!=0);a=h[f>>2]|0;r=h[t>>2]|0;break}r=Je()|0;n=h[u>>2]|0;if(n){if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n)}d=r;fi(d|0)}while(0);o=e+20|0;r=ce(a,r)|0;h[o>>2]=0;a=e+24|0;h[a>>2]=0;h[e+28>>2]=0;if(!r){d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))l=15;if((l|0)==15?(x=0,n=ye(66,r|0)|0,l=x,x=0,!(l&1)):0){h[a>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[a>>2]|0)+1|0;h[a>>2]=n;r=r+-1|0}while((r|0)!=0);d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}r=Je()|0;n=h[o>>2]|0;if(n){if((h[a>>2]|0)!=(n|0))h[a>>2]=n;$m(n)}n=h[u>>2]|0;if(!n){d=r;fi(d|0)}if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n);d=r;fi(d|0)}function Dr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;h[e>>2]=36236;h[e+4>>2]=t;u=e+8|0;r=h[t>>2]|0;f=t+16|0;o=h[f>>2]|0;a=ce(o,r)|0;h[u>>2]=0;d=e+12|0;h[d>>2]=0;h[e+16>>2]=0;do if(!a)a=o;else{if(!((a|0)<0?(x=0,ge(155,u|0),o=x,x=0,o&1):0))l=4;if((l|0)==4?(x=0,s=ye(66,a|0)|0,o=x,x=0,!(o&1)):0){h[d>>2]=s;h[u>>2]=s;h[e+16>>2]=s+a;r=s;do{c[r>>0]=0;r=(h[d>>2]|0)+1|0;h[d>>2]=r;a=a+-1|0}while((a|0)!=0);a=h[f>>2]|0;r=h[t>>2]|0;break}r=Je()|0;n=h[u>>2]|0;if(n){if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n)}d=r;fi(d|0)}while(0);o=e+20|0;r=ce(a,r)|0;h[o>>2]=0;a=e+24|0;h[a>>2]=0;h[e+28>>2]=0;if(!r){d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))l=15;if((l|0)==15?(x=0,n=ye(66,r|0)|0,l=x,x=0,!(l&1)):0){h[a>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[a>>2]|0)+1|0;h[a>>2]=n;r=r+-1|0}while((r|0)!=0);d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}r=Je()|0;n=h[o>>2]|0;if(n){if((h[a>>2]|0)!=(n|0))h[a>>2]=n;$m(n)}n=h[u>>2]|0;if(!n){d=r;fi(d|0)}if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n);d=r;fi(d|0)}function Rr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;h[e>>2]=36212;h[e+4>>2]=t;u=e+8|0;r=h[t>>2]|0;f=t+16|0;o=h[f>>2]|0;a=ce(o,r)|0;h[u>>2]=0;d=e+12|0;h[d>>2]=0;h[e+16>>2]=0;do if(!a)a=o;else{if(!((a|0)<0?(x=0,ge(155,u|0),o=x,x=0,o&1):0))l=4;if((l|0)==4?(x=0,s=ye(66,a|0)|0,o=x,x=0,!(o&1)):0){h[d>>2]=s;h[u>>2]=s;h[e+16>>2]=s+a;r=s;do{c[r>>0]=0;r=(h[d>>2]|0)+1|0;h[d>>2]=r;a=a+-1|0}while((a|0)!=0);a=h[f>>2]|0;r=h[t>>2]|0;break}r=Je()|0;n=h[u>>2]|0;if(n){if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n)}d=r;fi(d|0)}while(0);o=e+20|0;r=ce(a,r)|0;h[o>>2]=0;a=e+24|0;h[a>>2]=0;h[e+28>>2]=0;if(!r){d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}if(!((r|0)<0?(x=0,ge(155,o|0),t=x,x=0,t&1):0))l=15;if((l|0)==15?(x=0,n=ye(66,r|0)|0,l=x,x=0,!(l&1)):0){h[a>>2]=n;h[o>>2]=n;h[e+28>>2]=n+r;do{c[n>>0]=0;n=(h[a>>2]|0)+1|0;h[a>>2]=n;r=r+-1|0}while((r|0)!=0);d=e+36|0;h[d>>2]=h[i>>2];h[d+4>>2]=h[i+4>>2];h[d+8>>2]=h[i+8>>2];return}r=Je()|0;n=h[o>>2]|0;if(n){if((h[a>>2]|0)!=(n|0))h[a>>2]=n;$m(n)}n=h[u>>2]|0;if(!n){d=r;fi(d|0)}if((h[d>>2]|0)!=(n|0))h[d>>2]=n;$m(n);d=r;fi(d|0)}function Or(e){e=e|0;var i=0,t=0;h[e>>2]=36212;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=h[e+8>>2]|0;if(!t)return;i=e+12|0;if((h[i>>2]|0)!=(t|0))h[i>>2]=t;$m(t);return}function Br(e){e=e|0;var i=0,t=0;h[e>>2]=36212;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}i=h[e+8>>2]|0;if(!i){$m(e);return}t=e+12|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i);$m(e);return}function Nr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0;n=e+36|0;if(!(h[n>>2]|0)){n=e+40|0;zr(e,i,h[n>>2]|0,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}a=ce(h[(h[e+4>>2]|0)+16>>2]|0,t)|0;o=e+20|0;zr(e,i,h[o>>2]|0,t,r);e=h[n>>2]|0;if((Qk[h[(h[e>>2]|0)+48>>2]&63](e,h[o>>2]|0,a)|0)==(a|0))return;n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,3,35472);o=x;x=0;if(o&1){o=Je()|0;Ke(n|0);fi(o|0)}else Ti(n|0,648,74)}function Fr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;Ur(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{Hr(e,n,i,t,r);return}}function Ur(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;s=e+4|0;a=h[s>>2]|0;if(!(c[a+32>>0]|0))s=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*3|0)|0;a=h[s>>2]|0;i=h[a+16>>2]|0;if((r|0)>0){a=h[o>>2]|0;e=0;while(1){f=a+2|0;l=c[a>>0]|0;c[a>>0]=c[f>>0]|0;c[f>>0]=l;e=e+1|0;if((e|0)==(r|0))break;else a=a+i|0}a=h[s>>2]|0}s=h[o>>2]|0}switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{o=m[s+(a*3|0)+1>>0]|0;n=128-o+(m[s+(a*3|0)+2>>0]|0)|0;f=(m[s+(a*3|0)>>0]|0)-o+128|0;l=t+(a*3|0)|0;c[l>>0]=o+192+(((n&255)+(f&255)|0)>>>2);c[l+1>>0]=n;c[l+2>>0]=f;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{r=m[s+(i*3|0)+1>>0]|0;f=128-r+(m[s+(i*3|0)+2>>0]|0)|0;l=(m[s+(i*3|0)>>0]|0)-r+128|0;c[t+i>>0]=r+192+(((f&255)+(l&255)|0)>>>2);c[t+(i+n)>>0]=f;c[t+(i+e)>>0]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{l=c[s+(o<<2)+3>>0]|0;u=m[s+(o<<2)+1>>0]|0;r=128-u+(m[s+(o<<2)+2>>0]|0)|0;f=(m[s+(o<<2)>>0]|0)-u+128|0;c[t+o>>0]=u+192+(((r&255)+(f&255)|0)>>>2);c[t+(o+n)>>0]=r;c[t+(o+e)>>0]=f;c[t+(o+i)>>0]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function Hr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+176|0;d=u+152|0;b=u+16|0;m=u;o=ce(h[(h[e+4>>2]|0)+16>>2]|0,r)|0;f=e+20|0;a=h[f>>2]|0;if(!o){b=a;Ur(e,b,t,r,n);k=u;return}while(1){s=Qk[h[(h[i>>2]|0)+32>>2]&63](i,a,o)|0;if(!s)break;a=h[f>>2]|0;if((o|0)==(s|0)){l=26;break}else o=o-s|0}if((l|0)==26){Ur(e,a,t,r,n);k=u;return}t=b+56|0;f=b+4|0;h[b>>2]=35760;h[t>>2]=35780;x=0;ke(52,b+56|0,f|0);u=x;x=0;if(u&1){b=Je()|0;us(t);fi(b|0)}h[b+128>>2]=0;h[b+132>>2]=-1;h[b>>2]=35800;h[b+56>>2]=35820;x=0;ge(158,f|0);u=x;x=0;do if(u&1)a=Je()|0;else{h[f>>2]=35836;i=b+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[b+52>>2]=16;h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;x=0;ke(53,f|0,d|0);u=x;x=0;if(u&1){a=Je()|0;Uo(d);Uo(i);ws(f);break}Uo(d);x=0;a=Me(28,b|0,48058,57)|0;d=x;x=0;if(!(d&1)?(x=0,Ae(27,a|0,0)|0,d=x,x=0,!(d&1)):0){s=$e(16)|0;x=0;ke(54,m|0,f|0);d=x;x=0;if(!(d&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,m|0);d=x;x=0;if(d&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(m);if(!o){m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}}else a=Je()|0;Ke(s|0);m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}m=Je()|0;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}while(0);b=a;us(t);fi(b|0)}function zr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){o=m[i+(e*3|0)+1>>0]|0;a=m[i+(e*3|0)+2>>0]|0;s=(m[i+(e*3|0)>>0]|0)-((a+o|0)>>>2)+64|0;n=t+(e*3|0)|0;c[n>>0]=a+128+s;c[n+1>>0]=s;c[n+2>>0]=o+128+s;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{u=m[i+(o+n)>>0]|0;d=m[i+(o+a)>>0]|0;l=(m[i+o>>0]|0)-((d+u|0)>>>2)+64|0;s=t+(o*3|0)|0;c[s>>0]=d+128+l;c[s+1>>0]=l;c[s+2>>0]=u+128+l;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{l=m[i+(o+n)>>0]|0;b=m[i+(o+e)>>0]|0;u=(m[i+o>>0]|0)-((b+l|0)>>>2)+64|0;d=t+(o<<2)|0;u=u<<8&65280|m[i+(o+a)>>0]<<24|b+128+u&255|l+128+u<<16&16711680;c[d>>0]=u;c[d+1>>0]=u>>8;c[d+2>>0]=u>>16;c[d+3>>0]=u>>24;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)>0){e=t;a=0}else return;while(1){b=e+2|0;d=c[e>>0]|0;c[e>>0]=c[b>>0]|0;c[b>>0]=d;a=a+1|0;if((a|0)==(r|0))break;else e=e+o|0}return}function jr(e){e=e|0;var i=0,t=0;h[e>>2]=36236;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=h[e+8>>2]|0;if(!t)return;i=e+12|0;if((h[i>>2]|0)!=(t|0))h[i>>2]=t;$m(t);return}function Yr(e){e=e|0;var i=0,t=0;h[e>>2]=36236;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}i=h[e+8>>2]|0;if(!i){$m(e);return}t=e+12|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i);$m(e);return}function Vr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0;n=e+36|0;if(!(h[n>>2]|0)){n=e+40|0;Xr(e,i,h[n>>2]|0,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}a=ce(h[(h[e+4>>2]|0)+16>>2]|0,t)|0;o=e+20|0;Xr(e,i,h[o>>2]|0,t,r);e=h[n>>2]|0;if((Qk[h[(h[e>>2]|0)+48>>2]&63](e,h[o>>2]|0,a)|0)==(a|0))return;n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,3,35472);o=x;x=0;if(o&1){o=Je()|0;Ke(n|0);fi(o|0)}else Ti(n|0,648,74)}function qr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;Wr(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{Gr(e,n,i,t,r);return}}function Wr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0;s=e+4|0;a=h[s>>2]|0;if(!(c[a+32>>0]|0))s=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*3|0)|0;a=h[s>>2]|0;i=h[a+16>>2]|0;if((r|0)>0){a=h[o>>2]|0;e=0;while(1){f=a+2|0;l=c[a>>0]|0;c[a>>0]=c[f>>0]|0;c[f>>0]=l;e=e+1|0;if((e|0)==(r|0))break;else a=a+i|0}a=h[s>>2]|0}s=h[o>>2]|0}switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{i=m[s+(a*3|0)>>0]|0;n=c[s+(a*3|0)+1>>0]|0;o=n&255;f=(m[s+(a*3|0)+2>>0]|0)+128-((o+i|0)>>>1)&255;l=t+(a*3|0)|0;c[l>>0]=i+128-o;c[l+1>>0]=n;c[l+2>>0]=f;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{f=c[s+(i*3|0)+1>>0]|0;o=m[s+(i*3|0)>>0]|0;r=f&255;l=(m[s+(i*3|0)+2>>0]|0)+128-((r+o|0)>>>1)&255;c[t+i>>0]=o+128-r;c[t+(i+n)>>0]=f;c[t+(i+e)>>0]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{r=c[s+(o<<2)+1>>0]|0;l=c[s+(o<<2)+3>>0]|0;d=m[s+(o<<2)>>0]|0;u=r&255;f=(m[s+(o<<2)+2>>0]|0)+128-((u+d|0)>>>1)&255;c[t+o>>0]=d+128-u;c[t+(o+n)>>0]=r;c[t+(o+e)>>0]=f;c[t+(o+i)>>0]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function Gr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+176|0;d=u+152|0;b=u+16|0;m=u;o=ce(h[(h[e+4>>2]|0)+16>>2]|0,r)|0;f=e+20|0;a=h[f>>2]|0;if(!o){b=a;Wr(e,b,t,r,n);k=u;return}while(1){s=Qk[h[(h[i>>2]|0)+32>>2]&63](i,a,o)|0;if(!s)break;a=h[f>>2]|0;if((o|0)==(s|0)){l=26;break}else o=o-s|0}if((l|0)==26){Wr(e,a,t,r,n);k=u;return}t=b+56|0;f=b+4|0;h[b>>2]=35760;h[t>>2]=35780;x=0;ke(52,b+56|0,f|0);u=x;x=0;if(u&1){b=Je()|0;us(t);fi(b|0)}h[b+128>>2]=0;h[b+132>>2]=-1;h[b>>2]=35800;h[b+56>>2]=35820;x=0;ge(158,f|0);u=x;x=0;do if(u&1)a=Je()|0;else{h[f>>2]=35836;i=b+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[b+52>>2]=16;h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;x=0;ke(53,f|0,d|0);u=x;x=0;if(u&1){a=Je()|0;Uo(d);Uo(i);ws(f);break}Uo(d);x=0;a=Me(28,b|0,48058,57)|0;d=x;x=0;if(!(d&1)?(x=0,Ae(27,a|0,0)|0,d=x,x=0,!(d&1)):0){s=$e(16)|0;x=0;ke(54,m|0,f|0);d=x;x=0;if(!(d&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,m|0);d=x;x=0;if(d&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(m);if(!o){m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}}else a=Je()|0;Ke(s|0);m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}m=Je()|0;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}while(0);b=a;us(t);fi(b|0)}function Xr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){o=c[i+(e*3|0)+1>>0]|0;s=o&255;a=(m[i+(e*3|0)>>0]|0)+128+s|0;s=(m[i+(e*3|0)+2>>0]|0)+128+(((a&255)+s|0)>>>1)&255;n=t+(e*3|0)|0;c[n>>0]=a;c[n+1>>0]=o;c[n+2>>0]=s;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{u=c[i+(o+n)>>0]|0;l=u&255;d=(m[i+o>>0]|0)+128+l|0;l=(m[i+(o+a)>>0]|0)+128+(((d&255)+l|0)>>>1)&255;s=t+(o*3|0)|0;c[s>>0]=d;c[s+1>>0]=u;c[s+2>>0]=l;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{u=m[i+(o+n)>>0]|0;l=(m[i+o>>0]|0)+128+u&255;d=t+(o<<2)|0;u=l|u<<8|m[i+(o+a)>>0]<<24|(m[i+(o+e)>>0]|0)+128+((l+u|0)>>>1)<<16&16711680;c[d>>0]=u;c[d+1>>0]=u>>8;c[d+2>>0]=u>>16;c[d+3>>0]=u>>24;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)>0){e=t;a=0}else return;while(1){d=e+2|0;u=c[e>>0]|0;c[e>>0]=c[d>>0]|0;c[d>>0]=u;a=a+1|0;if((a|0)==(r|0))break;else e=e+o|0}return}function Kr(e){e=e|0;var i=0,t=0;h[e>>2]=36260;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=h[e+8>>2]|0;if(!t)return;i=e+12|0;if((h[i>>2]|0)!=(t|0))h[i>>2]=t;$m(t);return}function $r(e){e=e|0;var i=0,t=0;h[e>>2]=36260;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}i=h[e+8>>2]|0;if(!i){$m(e);return}t=e+12|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i);$m(e);return}function Jr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0;n=e+36|0;if(!(h[n>>2]|0)){n=e+40|0;tn(e,i,h[n>>2]|0,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}a=ce(h[(h[e+4>>2]|0)+16>>2]|0,t)|0;o=e+20|0;tn(e,i,h[o>>2]|0,t,r);e=h[n>>2]|0;if((Qk[h[(h[e>>2]|0)+48>>2]&63](e,h[o>>2]|0,a)|0)==(a|0))return;n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,3,35472);o=x;x=0;if(o&1){o=Je()|0;Ke(n|0);fi(o|0)}else Ti(n|0,648,74)}function Qr(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;Zr(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{en(e,n,i,t,r);return}}function Zr(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;s=e+4|0;a=h[s>>2]|0;if(!(c[a+32>>0]|0))s=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*3|0)|0;a=h[s>>2]|0;i=h[a+16>>2]|0;if((r|0)>0){a=h[o>>2]|0;e=0;while(1){f=a+2|0;l=c[a>>0]|0;c[a>>0]=c[f>>0]|0;c[f>>0]=l;e=e+1|0;if((e|0)==(r|0))break;else a=a+i|0}a=h[s>>2]|0}s=h[o>>2]|0}switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{n=c[s+(a*3|0)+1>>0]|0;o=n&255;f=128-o+(m[s+(a*3|0)+2>>0]|0)&255;l=t+(a*3|0)|0;c[l>>0]=(m[s+(a*3|0)>>0]|0)+128-o;c[l+1>>0]=n;c[l+2>>0]=f;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{f=c[s+(i*3|0)+1>>0]|0;r=f&255;l=128-r+(m[s+(i*3|0)+2>>0]|0)&255;c[t+i>>0]=(m[s+(i*3|0)>>0]|0)+128-r;c[t+(i+n)>>0]=f;c[t+(i+e)>>0]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{r=c[s+(o<<2)+1>>0]|0;l=c[s+(o<<2)+3>>0]|0;u=r&255;f=128-u+(m[s+(o<<2)+2>>0]|0)&255;c[t+o>>0]=(m[s+(o<<2)>>0]|0)+128-u;c[t+(o+n)>>0]=r;c[t+(o+e)>>0]=f;c[t+(o+i)>>0]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function en(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+176|0;d=u+152|0;b=u+16|0;m=u;o=ce(h[(h[e+4>>2]|0)+16>>2]|0,r)|0;f=e+20|0;a=h[f>>2]|0;if(!o){b=a;Zr(e,b,t,r,n);k=u;return}while(1){s=Qk[h[(h[i>>2]|0)+32>>2]&63](i,a,o)|0;if(!s)break;a=h[f>>2]|0;if((o|0)==(s|0)){l=26;break}else o=o-s|0}if((l|0)==26){Zr(e,a,t,r,n);k=u;return}t=b+56|0;f=b+4|0;h[b>>2]=35760;h[t>>2]=35780;x=0;ke(52,b+56|0,f|0);u=x;x=0;if(u&1){b=Je()|0;us(t);fi(b|0)}h[b+128>>2]=0;h[b+132>>2]=-1;h[b>>2]=35800;h[b+56>>2]=35820;x=0;ge(158,f|0);u=x;x=0;do if(u&1)a=Je()|0;else{h[f>>2]=35836;i=b+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[b+52>>2]=16;h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;x=0;ke(53,f|0,d|0);u=x;x=0;if(u&1){a=Je()|0;Uo(d);Uo(i);ws(f);break}Uo(d);x=0;a=Me(28,b|0,48058,57)|0;d=x;x=0;if(!(d&1)?(x=0,Ae(27,a|0,0)|0,d=x,x=0,!(d&1)):0){s=$e(16)|0;x=0;ke(54,m|0,f|0);d=x;x=0;if(!(d&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,m|0);d=x;x=0;if(d&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(m);if(!o){m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}}else a=Je()|0;Ke(s|0);m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}m=Je()|0;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}while(0);b=a;us(t);fi(b|0)}function tn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){o=c[i+(e*3|0)+1>>0]|0;a=o&255;s=a+128+(m[i+(e*3|0)+2>>0]|0)&255;n=t+(e*3|0)|0;c[n>>0]=(m[i+(e*3|0)>>0]|0)+128+a;c[n+1>>0]=o;c[n+2>>0]=s;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{u=c[i+(o+n)>>0]|0;d=u&255;l=d+128+(m[i+(o+a)>>0]|0)&255;s=t+(o*3|0)|0;c[s>>0]=(m[i+o>>0]|0)+128+d;c[s+1>>0]=u;c[s+2>>0]=l;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{u=m[i+(o+n)>>0]|0;d=t+(o<<2)|0;u=(m[i+o>>0]|0)+128+u&255|u<<8|m[i+(o+a)>>0]<<24|u+128+(m[i+(o+e)>>0]|0)<<16&16711680;c[d>>0]=u;c[d+1>>0]=u>>8;c[d+2>>0]=u>>16;c[d+3>>0]=u>>24;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)>0){e=t;a=0}else return;while(1){d=e+2|0;u=c[e>>0]|0;c[e>>0]=c[d>>0]|0;c[d>>0]=u;a=a+1|0;if((a|0)==(r|0))break;else e=e+o|0}return}function rn(e){e=e|0;var i=0,t=0;h[e>>2]=36284;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=h[e+8>>2]|0;if(!t)return;i=e+12|0;if((h[i>>2]|0)!=(t|0))h[i>>2]=t;$m(t);return}function nn(e){e=e|0;var i=0,t=0;h[e>>2]=36284;i=h[e+20>>2]|0;if(i){t=e+24|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}i=h[e+8>>2]|0;if(!i){$m(e);return}t=e+12|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i);$m(e);return}function an(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0;n=e+36|0;if(!(h[n>>2]|0)){n=e+40|0;ln(e,i,h[n>>2]|0,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}a=ce(h[(h[e+4>>2]|0)+16>>2]|0,t)|0;o=e+20|0;ln(e,i,h[o>>2]|0,t,r);e=h[n>>2]|0;if((Qk[h[(h[e>>2]|0)+48>>2]&63](e,h[o>>2]|0,a)|0)==(a|0))return;n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,3,35472);o=x;x=0;if(o&1){o=Je()|0;Ke(n|0);fi(o|0)}else Ti(n|0,648,74)}function on(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;n=h[e+36>>2]|0;if(!n){n=e+40|0;sn(e,h[n>>2]|0,i,t,r);h[n>>2]=(h[n>>2]|0)+(h[(h[e+4>>2]|0)+12>>2]|0);return}else{fn(e,n,i,t,r);return}}function sn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0;s=e+4|0;a=h[s>>2]|0;if(!(c[a+32>>0]|0))s=i;else{o=e+8|0;Dg(h[o>>2]|0,i|0,r*3|0)|0;a=h[s>>2]|0;i=h[a+16>>2]|0;if((r|0)>0){a=h[o>>2]|0;e=0;while(1){f=a+2|0;l=c[a>>0]|0;c[a>>0]=c[f>>0]|0;c[f>>0]=l;e=e+1|0;if((e|0)==(r|0))break;else a=a+i|0}a=h[s>>2]|0}s=h[o>>2]|0}switch(h[a+16>>2]|0){case 3:{if((h[a+24>>2]|0)==2){if((r|0)>0)a=0;else return;do{n=c[s+(a*3|0)+1>>0]|0;f=c[s+(a*3|0)+2>>0]|0;l=t+(a*3|0)|0;c[l>>0]=c[s+(a*3|0)>>0]|0;c[l+1>>0]=n;c[l+2>>0]=f;a=a+1|0}while((a|0)!=(r|0));return}a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=0;do{f=c[s+(i*3|0)+1>>0]|0;l=c[s+(i*3|0)+2>>0]|0;c[t+i>>0]=c[s+(i*3|0)>>0]|0;c[t+(i+n)>>0]=f;c[t+(i+e)>>0]=l;i=i+1|0}while((i|0)!=(a|0));return}case 4:{if((h[a+24>>2]|0)!=1)return;a=(n|0)<(r|0)?n:r;if((a|0)<=0)return;e=n<<1;i=n*3|0;o=0;do{r=c[s+(o<<2)+1>>0]|0;f=c[s+(o<<2)+2>>0]|0;l=c[s+(o<<2)+3>>0]|0;c[t+o>>0]=c[s+(o<<2)>>0]|0;c[t+(o+n)>>0]=r;c[t+(o+e)>>0]=f;c[t+(o+i)>>0]=l;o=o+1|0}while((o|0)!=(a|0));return}default:return}}function fn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+176|0;d=u+152|0;b=u+16|0;m=u;o=ce(h[(h[e+4>>2]|0)+16>>2]|0,r)|0;f=e+20|0;a=h[f>>2]|0;if(!o){b=a;sn(e,b,t,r,n);k=u;return}while(1){s=Qk[h[(h[i>>2]|0)+32>>2]&63](i,a,o)|0;if(!s)break;a=h[f>>2]|0;if((o|0)==(s|0)){l=26;break}else o=o-s|0}if((l|0)==26){sn(e,a,t,r,n);k=u;return}t=b+56|0;f=b+4|0;h[b>>2]=35760;h[t>>2]=35780;x=0;ke(52,b+56|0,f|0);u=x;x=0;if(u&1){b=Je()|0;us(t);fi(b|0)}h[b+128>>2]=0;h[b+132>>2]=-1;h[b>>2]=35800;h[b+56>>2]=35820;x=0;ge(158,f|0);u=x;x=0;do if(u&1)a=Je()|0;else{h[f>>2]=35836;i=b+36|0;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;h[i+12>>2]=0;h[b+52>>2]=16;h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;x=0;ke(53,f|0,d|0);u=x;x=0;if(u&1){a=Je()|0;Uo(d);Uo(i);ws(f);break}Uo(d);x=0;a=Me(28,b|0,48058,57)|0;d=x;x=0;if(!(d&1)?(x=0,Ae(27,a|0,0)|0,d=x,x=0,!(d&1)):0){s=$e(16)|0;x=0;ke(54,m|0,f|0);d=x;x=0;if(!(d&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,s|0,3,35472,m|0);d=x;x=0;if(d&1)o=1;else{x=0;Re(5,s|0,648,74);x=0;o=0}a=Je()|0;Uo(m);if(!o){m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}}else a=Je()|0;Ke(s|0);m=a;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}m=Je()|0;h[b>>2]=35800;h[t>>2]=35820;h[f>>2]=35836;Uo(i);ws(f);us(t);fi(m|0)}while(0);b=a;us(t);fi(b|0)}function ln(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;f=e+4|0;e=h[f>>2]|0;e:do switch(h[e+16>>2]|0){case 3:{if((h[e+24>>2]|0)==2){if((r|0)>0)e=0;else break e;while(1){o=c[i+(e*3|0)+1>>0]|0;s=c[i+(e*3|0)+2>>0]|0;n=t+(e*3|0)|0;c[n>>0]=c[i+(e*3|0)>>0]|0;c[n+1>>0]=o;c[n+2>>0]=s;e=e+1|0;if((e|0)==(r|0))break e}}e=(r|0)<(n|0)?r:n;if((e|0)>0){a=n<<1;o=0;do{u=c[i+(o+n)>>0]|0;l=c[i+(o+a)>>0]|0;s=t+(o*3|0)|0;c[s>>0]=c[i+o>>0]|0;c[s+1>>0]=u;c[s+2>>0]=l;o=o+1|0}while((o|0)!=(e|0))}break}case 4:{if((h[e+24>>2]|0)==1?(s=(r|0)<(n|0)?r:n,(s|0)>0):0){e=n<<1;a=n*3|0;o=0;do{u=t+(o<<2)|0;l=m[i+(o+n)>>0]<<8|m[i+o>>0]|m[i+(o+e)>>0]<<16|m[i+(o+a)>>0]<<24;c[u>>0]=l;c[u+1>>0]=l>>8;c[u+2>>0]=l>>16;c[u+3>>0]=l>>24;o=o+1|0}while((o|0)!=(s|0))}break}default:{}}while(0);e=h[f>>2]|0;if(!(c[e+32>>0]|0))return;o=h[e+16>>2]|0;if((r|0)>0){e=t;a=0}else return;while(1){u=e+2|0;l=c[e>>0]|0;c[e>>0]=c[u>>0]|0;c[u>>0]=l;a=a+1|0;if((a|0)==(r|0))break;else e=e+o|0}return}function un(e){e=e|0;var i=0,t=0;h[e>>2]=35680;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function cn(e){e=e|0;var i=0,t=0;h[e>>2]=35680;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function dn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(36,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==16)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(37,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(38,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(39,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=2;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=2;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function hn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;o=k;k=k+32|0;f=o;oo(f,h[e+128>>2]|0,h[e+136>>2]|0);s=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[f+8>>2]|0:a;n=h[i+12>>2]|0;n=(n|0)==0?h[f+12>>2]|0:n;t=h[i+16>>2]|0;
r=h[f+16>>2]|0;h[e+176>>2]=(s|0)==0?h[f+4>>2]|0:s;h[e+180>>2]=a;h[e+184>>2]=n;Mn(e);n=e+132|0;i=(h[n>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;a=0;do{h[e+188+(a*12|0)>>2]=i;h[e+188+(a*12|0)+4>>2]=0;d[e+188+(a*12|0)+8>>1]=0;d[e+188+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);s=(h[n>>2]|0)+32|0;s=(s|0)<128?2:(s|0)/64|0;f=((t|0)==0?r:t)&255;h[e+4568>>2]=s;h[e+4572>>2]=0;c[e+4576>>0]=f;c[e+4577>>0]=1;c[e+4578>>0]=0;h[e+4580>>2]=s;h[e+4584>>2]=1;c[e+4588>>0]=f;c[e+4589>>0]=1;c[e+4590>>0]=0;h[e+4592>>2]=0;k=o;return}function mn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4620>>0]=n&1;i=e+156|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);bn(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function bn(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+172|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;do if(i){if(!((i|0)<0?(x=0,ge(155,S|0),E=x,x=0,E&1):0))o=6;if((o|0)==6?(t=i<<1,x=0,r=ye(66,t|0)|0,E=x,x=0,!(E&1)):0){h[S>>2]=r;E=r+(i<<1)|0;h[S+8>>2]=E;Pg(r|0,0,t|0)|0;h[A>>2]=E;break}r=Je()|0;i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);fi(r|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)o=18;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))o=16;if((o|0)==16?(n=T<<2,x=0,a=ye(66,n|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=a;o=a+(T<<2)|0;h[M+8>>2]=o;Pg(a|0,0,n|0)|0;h[E>>2]=o;o=18;break}r=Je()|0;i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}while(0);if((o|0)==18){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4596|0;s=ce(T,y)|0;f=s+1|0;l=e+4600|0;u=(T|0)>0;c=e+160|0;m=e+168|0;b=e+164|0;v=e+156|0;w=e+88|0;p=e+4592|0;g=0;i:while(1){r=h[S>>2]|0;t=r+2|0;h[o>>2]=t;r=r+(f<<1)|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];n=h[_>>2]|0;d[t+(n<<1)>>1]=d[t+(n+-1<<1)>>1]|0;d[i+-2>>1]=d[t>>1]|0;x=0;ke(56,e|0,0);n=x;x=0;if(n&1){o=29;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+(y<<1)|0;h[o>>2]=t;i=(h[l>>2]|0)+(y<<1)|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[c>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+((h[v>>2]|0)-s<<1)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){o=30;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){o=42;break e}}if((o|0)==29){r=Je()|0;break}else if((o|0)==30){r=Je()|0;break}}else o=42;while(0);do if((o|0)==42){x=0;ge(159,e|0);e=x;x=0;if(e&1){r=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);k=C;return}while(0);i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);fi(r|0)}function vn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0,g=0,k=0;v=e+4596|0;t=h[v>>2]|0;k=e+172|0;i=h[k>>2]|0;if((i|0)<=0)return;w=e+4600|0;p=e+4604|0;g=e+4592|0;s=t;a=b[t+-2>>1]|0;t=b[t>>1]|0;m=0;while(1){l=h[w>>2]|0;o=d[l+(m+-1<<1)>>1]|0;u=o&65535;n=m+1|0;r=b[s+(n<<1)>>1]|0;f=h[p>>2]|0;s=t-a|0;a=a-u|0;f=((((c[f+(r-t)>>0]|0)*9|0)+(c[f+s>>0]|0)|0)*9|0)+(c[f+a>>0]|0)|0;l=l+(m<<1)|0;if(!f){i=gn(e,o,l,i-m|0)|0;t=i+m|0;if((t|0)!=(h[k>>2]|0)){u=kn(e,u,b[(h[v>>2]|0)+(t<<1)>>1]|0)|0;d[(h[w>>2]|0)+(t<<1)>>1]=u;u=h[g>>2]|0;h[g>>2]=(u|0)<1?0:u+-1|0;i=i+1|0}n=i+m|0;r=h[v>>2]|0;t=b[r+(n+-1<<1)>>1]|0;r=b[r+(n<<1)>>1]|0}else{i=t-u>>31;if((i^a|0)<0)i=t;else i=u+((i^s|0)<0?0:s)|0;u=pn(e,f,b[l>>1]|0,i,0)|0;d[(h[w>>2]|0)+(m<<1)>>1]=u}i=h[k>>2]|0;if((i|0)<=(n|0))break;s=h[v>>2]|0;a=t;t=r;m=n}return}function wn(e){e=e|0;var i=0,t=0,r=0,n=0;r=e+116|0;t=h[r>>2]|0;if((c[t>>0]|0)!=-1){n=e+112|0;i=h[n>>2]|0;if((i|0)<1){Ar(e);i=h[n>>2]|0;t=h[r>>2]|0}e=e+108|0;r=h[e>>2]|0;h[n>>2]=i+-1;i=r<<1;h[e>>2]=i;if((c[t>>0]|0)!=-1){i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,6,35472);e=x;x=0;if(!(e&1))Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}}else i=h[e+108>>2]|0;if(!i)return;i=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,i|0,6,35472);e=x;x=0;if(!(e&1))Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}function pn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0;w=i>>31;f=(w^i)-w|0;b=e+188+(f*12|0)+10|0;t=d[b>>1]|0;m=e+188+(f*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){i=5;while(1)if((t<<i|0)<(n|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;u=e+188+(f*12|0)+8|0;t=(d[u>>1]^w)-w+r|0;v=e+128|0;n=h[v>>2]|0;if((t&n|0)==(t|0))l=t;else l=n&~(t>>31);t=e+112|0;if((h[t>>2]|0)<8)Ar(e);n=e+108|0;r=h[n>>2]|0;a=r>>>24;o=h[2656+(i<<11)+(a<<3)+4>>2]|0;if(!o){s=h[e+148>>2]|0;n=h[e+140>>2]|0;t=yn(e)|0;if((t|0)<(s+-1-n|0)){if(i)t=(Tn(e,i)|0)+(t<<i)|0}else t=(Tn(e,n)|0)+1|0;t=t<<31>>31^t>>1;if((((t|0)>-1?t:0-t|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(t|0);fi(e|0)}else Ti(t|0,648,74)}}else{h[t>>2]=(h[t>>2]|0)-o;h[n>>2]=r<<o;t=h[2656+(i<<11)+(a<<3)>>2]|0}s=e+136|0;r=h[s>>2]|0;if(!i){if(!r)n=(h[e+188+(f*12|0)+4>>2]<<1)+-1+(d[b>>1]|0)>>31;else n=0;o=n^t}else o=t;i=h[e+152>>2]|0;n=(h[m>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=e+188+(f*12|0)+4|0;t=(h[a>>2]|0)+(ce(r<<1|1,o)|0)|0;r=d[b>>1]|0;if((r|0)==(i|0)){n=n>>1;t=t>>1;r=i>>1}h[m>>2]=n;i=r+1|0;d[b>>1]=i;n=i+t|0;if((n|0)>=1){if((t|0)>0){t=t-i|0;b=d[u>>1]|0;d[u>>1]=(b<<16>>16<127&1)+(b&65535);t=(t|0)>0?0:t}}else{t=d[u>>1]|0;d[u>>1]=(t&65535)-(t<<16>>16>-128&1);t=(n|0)>(~r|0)?n:0-r|0}h[a>>2]=t;i=h[s>>2]|0;r=i<<1|1;n=(ce(r,(o^w)-w|0)|0)+l|0;if((n|0)>=(0-i|0)){t=h[v>>2]|0;if((t+i|0)<(n|0))n=n-(ce(h[e+132>>2]|0,r)|0)|0}else{n=(ce(h[e+132>>2]|0,r)|0)+n|0;t=h[v>>2]|0}if((n&t|0)==(n|0)){e=n;e=e&65535;return e|0}e=t&~(n>>31);e=e&65535;return e|0}function gn(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0;s=e+112|0;f=e+108|0;l=e+4592|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;m=1<<h[36076+(o<<2)>>2];b=r-a|0;b=(m|0)<(b|0)?m:b;a=b+a|0;if((b|0)==(m|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);b=x;x=0;if(b&1){b=Je()|0;Ke(n|0);fi(b|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)>0)a=0;else return n|0;do{d[t+(a<<1)>>1]=i;a=a+1|0}while((a|0)!=(n|0));return n|0}function kn(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=i-t|0;o=e+128|0;r=e+136|0;if((((a|0)>-1?a:0-a|0)|0)>(h[r>>2]|0)){i=ce(_n(e,e+4568|0)|0,t-i>>31|1)|0;n=h[r>>2]|0;a=n<<1|1;i=(ce(i,a)|0)+t|0;if((i|0)>=(0-n|0)){r=h[o>>2]|0;if((r+n|0)<(i|0))i=i-(ce(h[e+132>>2]|0,a)|0)|0}else{i=(ce(h[e+132>>2]|0,a)|0)+i|0;r=h[o>>2]|0}if((i&r|0)==(i|0)){e=i;e=e&65535;return e|0}e=r&~(i>>31);e=e&65535;return e|0}else{t=_n(e,e+4580|0)|0;a=h[r>>2]|0;n=a<<1|1;i=(ce(n,t)|0)+i|0;if((i|0)>=(0-a|0)){r=h[o>>2]|0;if((r+a|0)<(i|0))i=i-(ce(h[e+132>>2]|0,n)|0)|0}else{i=(ce(h[e+132>>2]|0,n)|0)+i|0;r=h[o>>2]|0}if((i&r|0)==(i|0)){e=i;e=e&65535;return e|0}e=r&~(i>>31);e=e&65535;return e|0}return 0}function _n(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=i+9|0;t=m[l>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;o=h[e+148>>2]|0;s=h[36076+(h[e+4592>>2]<<2)>>2]|0;t=h[e+140>>2]|0;n=yn(e)|0;do if((n|0)<(o+-2-s-t|0))if(!r){r=h[a>>2]|0;e=r+n|0;t=e&1;e=(t+e|0)/2|0;f=8;break}else{s=(Tn(e,r)|0)+(n<<r)|0;r=h[a>>2]|0;n=s+r|0;o=n&1;t=o;a=1;n=(o+n|0)/2|0;break}else{n=(Tn(e,t)|0)+1|0;o=h[a>>2]|0;e=n+o|0;t=e&1;e=(t+e|0)/2|0;if(!r){r=o;f=8}else{s=n;a=1;n=e;r=o}}while(0);if((f|0)==8){s=n;a=m[i+10>>0]<<1>>>0>=(m[l>>0]|0)>>>0;n=e}n=(t|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(s+1-r>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[l>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){i=r;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[l>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;i=f;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}function yn(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;a=e+112|0;if((h[a>>2]|0)<16)Ar(e);o=e+108|0;t=h[o>>2]|0;if((t|0)>=0)if(!(t&1073741824))if(!(t&536870912))if(!(t&268435456))if(!(t&134217728))if(!(t&67108864))if(!(t&33554432))if(!(t&16777216))if(!(t&8388608))if(!(t&4194304))if(!(t&2097152))if(!(t&1048576))if(!(t&524288))if(!(t&262144))if(!(t&131072)){n=t>>>12&16;i=n+-1|0;if(!n){i=(h[a>>2]|0)+-15|0;h[a>>2]=i;r=t<<15;h[o>>2]=r;t=i;i=15;while(1){if((t|0)<1){Ar(e);n=h[o>>2]|0;t=h[a>>2]|0}else n=r;t=t+-1|0;h[a>>2]=t;r=n<<1;h[o>>2]=r;if((n|0)<0)break;else i=i+1|0}return i|0}}else i=14;else i=13;else i=12;else i=11;else i=10;else i=9;else i=8;else i=7;else i=6;else i=5;else i=4;else i=3;else i=2;else i=1;else i=0;e=i+1|0;h[a>>2]=(h[a>>2]|0)-e;h[o>>2]=t<<e;o=i;return o|0}function Tn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;r=e+112|0;t=h[r>>2]|0;if((t|0)<(i|0)){Ar(e);t=h[r>>2]|0;if((t|0)<(i|0)){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(t|0);fi(e|0)}else Ti(t|0,648,74)}}n=e+108|0;e=h[n>>2]|0;h[r>>2]=t-i;h[n>>2]=e<<i;return e>>>(32-i|0)|0}function Mn(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;m=k;k=k+32|0;r=m;d=e+136|0;e:do if(!(h[d>>2]|0)){t=h[e+128>>2]|0;i=e+144|0;if((((t|0)==((1<<h[i>>2])+-1|0)?(oo(r,t,0),(h[r+4>>2]|0)==(h[e+176>>2]|0)):0)?(h[r+8>>2]|0)==(h[e+180>>2]|0):0)?(h[r+12>>2]|0)==(h[e+184>>2]|0):0)switch(h[i>>2]|0){case 8:{d=h[8856]|0;h[e+4604>>2]=d+(((h[8857]|0)-d|0)>>>1);k=m;return}case 10:{d=h[8859]|0;h[e+4604>>2]=d+(((h[8860]|0)-d|0)>>>1);k=m;return}case 12:{d=h[8862]|0;h[e+4604>>2]=d+(((h[8863]|0)-d|0)>>>1);k=m;return}case 16:{d=h[8865]|0;h[e+4604>>2]=d+(((h[8866]|0)-d|0)>>>1);k=m;return}default:break e}}else i=e+144|0;while(0);u=1<<h[i>>2];t=e+4608|0;r=u<<1;n=e+4612|0;a=h[n>>2]|0;i=h[t>>2]|0;o=a-i|0;if(r>>>0<=o>>>0){if(r>>>0<o>>>0?(s=i+r|0,(a|0)!=(s|0)):0)h[n>>2]=s}else{Pr(t,r-o|0);i=h[t>>2]|0}l=e+4604|0;h[l>>2]=i+u;i=0-u|0;if((u|0)<=(i|0)){k=m;return}s=e+184|0;f=e+180|0;o=e+176|0;a=i;do{i=h[s>>2]|0;if((a|0)>(0-i|0)){t=h[f>>2]|0;if((a|0)>(0-t|0)){r=h[o>>2]|0;if((a|0)>(0-r|0)){n=h[d>>2]|0;if((a|0)>=(0-n|0))if((n|0)<(a|0))if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;c[(h[l>>2]|0)+a>>0]=i;a=a+1|0}while((a|0)!=(u|0));k=m;return}function Cn(e){e=e|0;var i=0,t=0;h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function xn(e){e=e|0;var i=0,t=0;h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function En(e){e=e|0;var i=0,t=0;h[e>>2]=35652;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function Sn(e){e=e|0;var i=0,t=0;h[e>>2]=35652;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function An(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(36,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==16)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(37,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(38,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(39,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=6;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=6;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function Pn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;o=k;k=k+32|0;f=o;oo(f,h[e+128>>2]|0,h[e+136>>2]|0);s=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[f+8>>2]|0:a;n=h[i+12>>2]|0;n=(n|0)==0?h[f+12>>2]|0:n;t=h[i+16>>2]|0;r=h[f+16>>2]|0;h[e+176>>2]=(s|0)==0?h[f+4>>2]|0:s;h[e+180>>2]=a;h[e+184>>2]=n;Fn(e);n=e+132|0;i=(h[n>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;a=0;do{h[e+188+(a*12|0)>>2]=i;h[e+188+(a*12|0)+4>>2]=0;d[e+188+(a*12|0)+8>>1]=0;d[e+188+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);s=(h[n>>2]|0)+32|0;s=(s|0)<128?2:(s|0)/64|0;f=((t|0)==0?r:t)&255;h[e+4568>>2]=s;h[e+4572>>2]=0;c[e+4576>>0]=f;c[e+4577>>0]=1;c[e+4578>>0]=0;h[e+4580>>2]=s;h[e+4584>>2]=1;c[e+4588>>0]=f;c[e+4589>>0]=1;c[e+4590>>0]=0;h[e+4592>>2]=0;k=o;return}function In(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4620>>0]=n&1;i=e+156|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);Ln(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function Ln(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+172|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;do if(i){if(!(i>>>0>715827882?(x=0,ge(155,S|0),E=x,x=0,E&1):0))o=6;if((o|0)==6?(x=0,t=ye(66,i*6|0)|0,E=x,x=0,!(E&1)):0){h[A>>2]=t;h[S>>2]=t;r=t+(i*6|0)|0;h[S+8>>2]=r;while(1){d[t>>1]=0;d[t+2>>1]=0;d[t+4>>1]=0;i=i+-1|0;if(!i)break;else t=t+6|0}h[A>>2]=r;break}r=Je()|0;i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-6-i|0)>>>0)/6|0)*6|0);$m(i);fi(r|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)o=20;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))o=18;if((o|0)==18?(n=T<<2,x=0,a=ye(66,n|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=a;o=a+(T<<2)|0;h[M+8>>2]=o;Pg(a|0,0,n|0)|0;h[E>>2]=o;o=20;break}r=Je()|0;i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}while(0);if((o|0)==20){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4596|0;s=ce(T,y)|0;f=s+1|0;l=e+4600|0;u=(T|0)>0;c=e+160|0;m=e+168|0;b=e+164|0;v=e+156|0;w=e+88|0;p=e+4592|0;g=0;i:while(1){r=h[S>>2]|0;t=r+6|0;h[o>>2]=t;r=r+(f*6|0)|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];i=h[_>>2]|0;n=t+(i*6|0)|0;t=t+((i+-1|0)*6|0)|0;d[n>>1]=d[t>>1]|0;d[n+2>>1]=d[t+2>>1]|0;d[n+4>>1]=d[t+4>>1]|0;n=(h[l>>2]|0)+-6|0;t=h[o>>2]|0;d[n>>1]=d[t>>1]|0;d[n+2>>1]=d[t+2>>1]|0;d[n+4>>1]=d[t+4>>1]|0;x=0;ke(57,e|0,0);n=x;x=0;if(n&1){o=31;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+(y*6|0)|0;h[o>>2]=t;i=(h[l>>2]|0)+(y*6|0)|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[c>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+(((h[v>>2]|0)-s|0)*6|0)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){o=32;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){o=44;break e}}if((o|0)==31){r=Je()|0;break}else if((o|0)==32){r=Je()|0;break}}else o=44;while(0);do if((o|0)==44){x=0;ge(159,e|0);e=x;x=0;if(e&1){r=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-6-i|0)>>>0)/6|0)*6|0);$m(i);k=C;return}while(0);i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-6-i|0)>>>0)/6|0)*6|0);$m(i);fi(r|0)}function Dn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0;U=k;k=k+32|0;A=U+24|0;F=U+18|0;N=U+12|0;P=U+6|0;I=U;L=e+172|0;i=h[L>>2]|0;if((i|0)<=0){k=U;return}D=e+4600|0;R=e+4596|0;O=e+4604|0;B=e+4592|0;S=0;while(1){r=S+-1|0;n=h[D>>2]|0;H=h[R>>2]|0;t=S+1|0;a=b[H+(S*6|0)>>1]|0;E=h[O>>2]|0;o=b[H+(r*6|0)>>1]|0;s=a-o|0;f=b[n+(r*6|0)>>1]|0;l=o-f|0;u=((((c[E+((b[H+(t*6|0)>>1]|0)-a)>>0]|0)*9|0)+(c[E+s>>0]|0)|0)*9|0)+(c[E+l>>0]|0)|0;m=b[H+(S*6|0)+2>>1]|0;v=b[H+(r*6|0)+2>>1]|0;w=m-v|0;p=b[n+(r*6|0)+2>>1]|0;g=v-p|0;_=((((c[E+((b[H+(t*6|0)+2>>1]|0)-m)>>0]|0)*9|0)+(c[E+w>>0]|0)|0)*9|0)+(c[E+g>>0]|0)|0;y=b[H+(S*6|0)+4>>1]|0;T=b[H+(r*6|0)+4>>1]|0;M=y-T|0;C=b[n+(r*6|0)+4>>1]|0;x=T-C|0;E=((((c[E+((b[H+(t*6|0)+4>>1]|0)-y)>>0]|0)*9|0)+(c[E+M>>0]|0)|0)*9|0)+(c[E+x>>0]|0)|0;if(!(_|u|E)){t=n+(r*6|0)|0;d[N>>1]=d[t>>1]|0;d[N+2>>1]=d[t+2>>1]|0;d[N+4>>1]=d[t+4>>1]|0;d[A>>1]=d[t>>1]|0;d[A+2>>1]=d[t+2>>1]|0;d[A+4>>1]=d[t+4>>1]|0;i=Rn(e,A,n+(S*6|0)|0,i-S|0)|0;t=i+S|0;if((t|0)!=(h[L>>2]|0)){H=(h[R>>2]|0)+(t*6|0)|0;d[I>>1]=d[H>>1]|0;d[I+2>>1]=d[H+2>>1]|0;d[I+4>>1]=d[H+4>>1]|0;H=(h[D>>2]|0)+(t*6|0)|0;d[F>>1]=d[N>>1]|0;d[F+2>>1]=d[N+2>>1]|0;d[F+4>>1]=d[N+4>>1]|0;d[A>>1]=d[I>>1]|0;d[A+2>>1]=d[I+2>>1]|0;d[A+4>>1]=d[I+4>>1]|0;On(P,e,F,A);d[H>>1]=d[P>>1]|0;d[H+2>>1]=d[P+2>>1]|0;d[H+4>>1]=d[P+4>>1]|0;H=h[B>>2]|0;h[B>>2]=(H|0)<1?0:H+-1|0;i=i+1|0}t=i+S|0}else{r=b[n+(S*6|0)>>1]|0;i=a-f>>31;if((i^l|0)>=0)if((i^s|0)<0)i=f;else i=f-o+a|0;else i=a;a=Bn(e,u,r,i,0)|0;r=b[(h[D>>2]|0)+(S*6|0)+2>>1]|0;i=m-p>>31;if((i^g|0)>=0)if((i^w|0)<0)i=p;else i=p-v+m|0;else i=m;r=Bn(e,_,r,i,0)|0;n=b[(h[D>>2]|0)+(S*6|0)+4>>1]|0;i=y-C>>31;if((i^x|0)>=0)if((i^M|0)<0)i=C;else i=C-T+y|0;else i=y;E=Bn(e,E,n,i,0)|0;H=h[D>>2]|0;d[H+(S*6|0)>>1]=a;d[H+(S*6|0)+2>>1]=r;d[H+(S*6|0)+4>>1]=E}i=h[L>>2]|0;if((t|0)>=(i|0))break;else S=t}k=U;return}function Rn(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0;s=e+112|0;f=e+108|0;l=e+4592|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;m=1<<h[36076+(o<<2)>>2];b=r-a|0;b=(m|0)<(b|0)?m:b;a=b+a|0;if((b|0)==(m|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);b=x;x=0;if(b&1){b=Je()|0;Ke(n|0);fi(b|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)<=0)return n|0;a=0;do{b=t+(a*6|0)|0;d[b>>1]=d[i>>1]|0;d[b+2>>1]=d[i+2>>1]|0;d[b+4>>1]=d[i+4>>1]|0;a=a+1|0}while((a|0)!=(n|0));return n|0}function On(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0;f=i+4568|0;c=Nn(i,f)|0;o=Nn(i,f)|0;f=Nn(i,f)|0;a=i+128|0;n=b[r>>1]|0;l=h[i+136>>2]|0;u=l<<1|1;n=(ce(ce(u,c)|0,n-(b[t>>1]|0)>>31|1)|0)+n|0;c=0-l|0;if((n|0)>=(c|0)){a=h[a>>2]|0;if((a+l|0)<(n|0))n=n-(ce(h[i+132>>2]|0,u)|0)|0}else{n=(ce(h[i+132>>2]|0,u)|0)+n|0;a=h[a>>2]|0}if((n&a|0)!=(n|0))n=a&~(n>>31);s=n&65535;n=b[r+2>>1]|0;n=(ce(ce(u,o)|0,n-(b[t+2>>1]|0)>>31|1)|0)+n|0;if((n|0)>=(c|0)){if((a+l|0)<(n|0))n=n-(ce(h[i+132>>2]|0,u)|0)|0}else n=(ce(h[i+132>>2]|0,u)|0)+n|0;if((n&a|0)!=(n|0))n=a&~(n>>31);o=n&65535;n=b[r+4>>1]|0;n=(ce(ce(u,f)|0,n-(b[t+4>>1]|0)>>31|1)|0)+n|0;if((n|0)>=(c|0)){if((a+l|0)<(n|0))n=n-(ce(h[i+132>>2]|0,u)|0)|0}else n=(ce(h[i+132>>2]|0,u)|0)+n|0;if((n&a|0)==(n|0)){i=n;i=i&65535;d[e>>1]=s;c=e+2|0;d[c>>1]=o;e=e+4|0;d[e>>1]=i;return}i=a&~(n>>31);i=i&65535;d[e>>1]=s;c=e+2|0;d[c>>1]=o;e=e+4|0;d[e>>1]=i;return}function Bn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0;w=i>>31;f=(w^i)-w|0;b=e+188+(f*12|0)+10|0;t=d[b>>1]|0;m=e+188+(f*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){i=5;while(1)if((t<<i|0)<(n|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;u=e+188+(f*12|0)+8|0;t=(d[u>>1]^w)-w+r|0;v=e+128|0;n=h[v>>2]|0;if((t&n|0)==(t|0))l=t;else l=n&~(t>>31);t=e+112|0;if((h[t>>2]|0)<8)Ar(e);n=e+108|0;r=h[n>>2]|0;a=r>>>24;o=h[2656+(i<<11)+(a<<3)+4>>2]|0;if(!o){s=h[e+148>>2]|0;n=h[e+140>>2]|0;t=yn(e)|0;if((t|0)<(s+-1-n|0)){if(i)t=(Tn(e,i)|0)+(t<<i)|0}else t=(Tn(e,n)|0)+1|0;t=t<<31>>31^t>>1;if((((t|0)>-1?t:0-t|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(t|0);fi(e|0)}else Ti(t|0,648,74)}}else{h[t>>2]=(h[t>>2]|0)-o;h[n>>2]=r<<o;t=h[2656+(i<<11)+(a<<3)>>2]|0}s=e+136|0;r=h[s>>2]|0;if(!i){if(!r)n=(h[e+188+(f*12|0)+4>>2]<<1)+-1+(d[b>>1]|0)>>31;else n=0;o=n^t}else o=t;i=h[e+152>>2]|0;n=(h[m>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=e+188+(f*12|0)+4|0;t=(h[a>>2]|0)+(ce(r<<1|1,o)|0)|0;r=d[b>>1]|0;if((r|0)==(i|0)){n=n>>1;t=t>>1;r=i>>1}h[m>>2]=n;i=r+1|0;d[b>>1]=i;n=i+t|0;if((n|0)>=1){if((t|0)>0){t=t-i|0;b=d[u>>1]|0;d[u>>1]=(b<<16>>16<127&1)+(b&65535);t=(t|0)>0?0:t}}else{t=d[u>>1]|0;d[u>>1]=(t&65535)-(t<<16>>16>-128&1);t=(n|0)>(~r|0)?n:0-r|0}h[a>>2]=t;i=h[s>>2]|0;r=i<<1|1;n=(ce(r,(o^w)-w|0)|0)+l|0;if((n|0)>=(0-i|0)){t=h[v>>2]|0;if((t+i|0)<(n|0))n=n-(ce(h[e+132>>2]|0,r)|0)|0}else{n=(ce(h[e+132>>2]|0,r)|0)+n|0;t=h[v>>2]|0}if((n&t|0)==(n|0)){e=n;e=e&65535;return e|0}e=t&~(n>>31);e=e&65535;return e|0}function Nn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=i+9|0;t=m[l>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;o=h[e+148>>2]|0;s=h[36076+(h[e+4592>>2]<<2)>>2]|0;t=h[e+140>>2]|0;n=yn(e)|0;do if((n|0)<(o+-2-s-t|0))if(!r){r=h[a>>2]|0;e=r+n|0;t=e&1;e=(t+e|0)/2|0;f=8;break}else{s=(Tn(e,r)|0)+(n<<r)|0;r=h[a>>2]|0;n=s+r|0;o=n&1;t=o;a=1;n=(o+n|0)/2|0;break}else{n=(Tn(e,t)|0)+1|0;o=h[a>>2]|0;e=n+o|0;t=e&1;e=(t+e|0)/2|0;if(!r){r=o;f=8}else{s=n;a=1;n=e;r=o}}while(0);if((f|0)==8){s=n;a=m[i+10>>0]<<1>>>0>=(m[l>>0]|0)>>>0;n=e}n=(t|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(s+1-r>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[l>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){i=r;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[l>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;i=f;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}function Fn(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;m=k;k=k+32|0;r=m;d=e+136|0;e:do if(!(h[d>>2]|0)){t=h[e+128>>2]|0;i=e+144|0;if((((t|0)==((1<<h[i>>2])+-1|0)?(oo(r,t,0),(h[r+4>>2]|0)==(h[e+176>>2]|0)):0)?(h[r+8>>2]|0)==(h[e+180>>2]|0):0)?(h[r+12>>2]|0)==(h[e+184>>2]|0):0)switch(h[i>>2]|0){case 8:{d=h[8856]|0;h[e+4604>>2]=d+(((h[8857]|0)-d|0)>>>1);k=m;return}case 10:{d=h[8859]|0;h[e+4604>>2]=d+(((h[8860]|0)-d|0)>>>1);k=m;return}case 12:{d=h[8862]|0;h[e+4604>>2]=d+(((h[8863]|0)-d|0)>>>1);k=m;return}case 16:{d=h[8865]|0;h[e+4604>>2]=d+(((h[8866]|0)-d|0)>>>1);k=m;return}default:break e}}else i=e+144|0;while(0);u=1<<h[i>>2];t=e+4608|0;r=u<<1;n=e+4612|0;a=h[n>>2]|0;i=h[t>>2]|0;o=a-i|0;if(r>>>0<=o>>>0){if(r>>>0<o>>>0?(s=i+r|0,(a|0)!=(s|0)):0)h[n>>2]=s}else{Pr(t,r-o|0);i=h[t>>2]|0}l=e+4604|0;h[l>>2]=i+u;i=0-u|0;if((u|0)<=(i|0)){k=m;return}s=e+184|0;f=e+180|0;o=e+176|0;a=i;do{i=h[s>>2]|0;if((a|0)>(0-i|0)){t=h[f>>2]|0;if((a|0)>(0-t|0)){r=h[o>>2]|0;if((a|0)>(0-r|0)){n=h[d>>2]|0;if((a|0)>=(0-n|0))if((n|0)<(a|0))if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;c[(h[l>>2]|0)+a>>0]=i;a=a+1|0}while((a|0)!=(u|0));k=m;return}function Un(e){e=e|0;var i=0,t=0;h[e>>2]=35624;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function Hn(e){e=e|0;var i=0,t=0;h[e>>2]=35624;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function zn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(43,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==8)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(44,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(45,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(46,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=3;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=3;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function jn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;o=k;k=k+32|0;f=o;oo(f,h[e+128>>2]|0,h[e+136>>2]|0);s=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[f+8>>2]|0:a;n=h[i+12>>2]|0;n=(n|0)==0?h[f+12>>2]|0:n;t=h[i+16>>2]|0;r=h[f+16>>2]|0;h[e+176>>2]=(s|0)==0?h[f+4>>2]|0:s;h[e+180>>2]=a;h[e+184>>2]=n;$n(e);n=e+132|0;i=(h[n>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;a=0;do{h[e+188+(a*12|0)>>2]=i;
h[e+188+(a*12|0)+4>>2]=0;d[e+188+(a*12|0)+8>>1]=0;d[e+188+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);s=(h[n>>2]|0)+32|0;s=(s|0)<128?2:(s|0)/64|0;f=((t|0)==0?r:t)&255;h[e+4568>>2]=s;h[e+4572>>2]=0;c[e+4576>>0]=f;c[e+4577>>0]=1;c[e+4578>>0]=0;h[e+4580>>2]=s;h[e+4584>>2]=1;c[e+4588>>0]=f;c[e+4589>>0]=1;c[e+4590>>0]=0;h[e+4592>>2]=0;k=o;return}function Yn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4620>>0]=n&1;i=e+156|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);Vn(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function Vn(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+172|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;e:do if(i){if(!(i>>>0>1431655765?(x=0,ge(155,S|0),E=x,x=0,E&1):0))a=6;if((a|0)==6?(x=0,t=ye(66,i*3|0)|0,E=x,x=0,!(E&1)):0){h[A>>2]=t;h[S>>2]=t;h[S+8>>2]=t+(i*3|0);while(1){c[t>>0]=0;c[t+1>>0]=0;c[t+2>>0]=0;t=(h[A>>2]|0)+3|0;h[A>>2]=t;i=i+-1|0;if(!i)break e}}r=Je()|0;i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-3-i|0)>>>0)/3|0)*3|0);$m(i);fi(r|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)a=19;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))a=17;if((a|0)==17?(r=T<<2,x=0,n=ye(66,r|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=n;a=n+(T<<2)|0;h[M+8>>2]=a;Pg(n|0,0,r|0)|0;h[E>>2]=a;a=19;break}r=Je()|0;i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}while(0);if((a|0)==19){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4596|0;s=ce(T,y)|0;f=s+1|0;l=e+4600|0;u=(T|0)>0;d=e+160|0;m=e+168|0;b=e+164|0;v=e+156|0;w=e+88|0;p=e+4592|0;g=0;i:while(1){r=h[S>>2]|0;t=r+3|0;h[o>>2]=t;r=r+(f*3|0)|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];i=h[_>>2]|0;n=t+(i*3|0)|0;t=t+((i+-1|0)*3|0)|0;c[n>>0]=c[t>>0]|0;c[n+1>>0]=c[t+1>>0]|0;c[n+2>>0]=c[t+2>>0]|0;t=h[o>>2]|0;n=(h[l>>2]|0)+-3|0;c[n>>0]=c[t>>0]|0;c[n+1>>0]=c[t+1>>0]|0;c[n+2>>0]=c[t+2>>0]|0;x=0;ke(58,e|0,0);n=x;x=0;if(n&1){a=30;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+(y*3|0)|0;h[o>>2]=t;i=(h[l>>2]|0)+(y*3|0)|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[d>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+(((h[v>>2]|0)-s|0)*3|0)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){a=31;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){a=43;break e}}if((a|0)==30){r=Je()|0;break}else if((a|0)==31){r=Je()|0;break}}else a=43;while(0);do if((a|0)==43){x=0;ge(159,e|0);e=x;x=0;if(e&1){r=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-3-i|0)>>>0)/3|0)*3|0);$m(i);k=C;return}while(0);i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-3-i|0)>>>0)/3|0)*3|0);$m(i);fi(r|0)}function qn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0;F=k;k=k+16|0;S=F+12|0;N=F+9|0;B=F+6|0;A=F+3|0;P=F;I=e+172|0;i=h[I>>2]|0;if((i|0)<=0){k=F;return}L=e+4600|0;D=e+4596|0;R=e+4604|0;O=e+4592|0;E=0;while(1){M=E+-1|0;r=h[L>>2]|0;n=r+(M*3|0)|0;U=h[D>>2]|0;t=E+1|0;a=m[U+(E*3|0)>>0]|0;x=h[R>>2]|0;o=m[U+(M*3|0)>>0]|0;s=a-o|0;f=m[n>>0]|0;l=o-f|0;u=((((c[x+((m[U+(t*3|0)>>0]|0)-a)>>0]|0)*9|0)+(c[x+s>>0]|0)|0)*9|0)+(c[x+l>>0]|0)|0;d=m[U+(E*3|0)+1>>0]|0;b=m[U+(M*3|0)+1>>0]|0;v=d-b|0;w=m[r+(M*3|0)+1>>0]|0;p=b-w|0;g=((((c[x+((m[U+(t*3|0)+1>>0]|0)-d)>>0]|0)*9|0)+(c[x+v>>0]|0)|0)*9|0)+(c[x+p>>0]|0)|0;_=m[U+(E*3|0)+2>>0]|0;y=m[U+(M*3|0)+2>>0]|0;T=_-y|0;M=m[r+(M*3|0)+2>>0]|0;C=y-M|0;x=((((c[x+((m[U+(t*3|0)+2>>0]|0)-_)>>0]|0)*9|0)+(c[x+T>>0]|0)|0)*9|0)+(c[x+C>>0]|0)|0;if(!(g|u|x)){c[B>>0]=c[n>>0]|0;c[B+1>>0]=c[n+1>>0]|0;c[B+2>>0]=c[n+2>>0]|0;c[S>>0]=c[n>>0]|0;c[S+1>>0]=c[n+1>>0]|0;c[S+2>>0]=c[n+2>>0]|0;i=Wn(e,S,r+(E*3|0)|0,i-E|0)|0;t=i+E|0;if((t|0)!=(h[I>>2]|0)){U=(h[D>>2]|0)+(t*3|0)|0;c[P>>0]=c[U>>0]|0;c[P+1>>0]=c[U+1>>0]|0;c[P+2>>0]=c[U+2>>0]|0;U=h[L>>2]|0;c[N>>0]=c[B>>0]|0;c[N+1>>0]=c[B+1>>0]|0;c[N+2>>0]=c[B+2>>0]|0;c[S>>0]=c[P>>0]|0;c[S+1>>0]=c[P+1>>0]|0;c[S+2>>0]=c[P+2>>0]|0;Gn(A,e,N,S);U=U+(t*3|0)|0;c[U>>0]=c[A>>0]|0;c[U+1>>0]=c[A+1>>0]|0;c[U+2>>0]=c[A+2>>0]|0;U=h[O>>2]|0;h[O>>2]=(U|0)<1?0:U+-1|0;i=i+1|0}t=i+E|0}else{r=m[r+(E*3|0)>>0]|0;i=a-f>>31;if((i^l|0)>=0)if((i^s|0)<0)i=f;else i=f-o+a|0;else i=a;a=Xn(e,u,r,i,0)|0;r=m[(h[L>>2]|0)+(E*3|0)+1>>0]|0;i=d-w>>31;if((i^p|0)>=0)if((i^v|0)<0)i=w;else i=w-b+d|0;else i=d;r=Xn(e,g,r,i,0)|0;n=m[(h[L>>2]|0)+(E*3|0)+2>>0]|0;i=_-M>>31;if((i^C|0)>=0)if((i^T|0)<0)i=M;else i=M-y+_|0;else i=_;x=Xn(e,x,n,i,0)|0;U=(h[L>>2]|0)+(E*3|0)|0;c[U>>0]=a;c[U+1>>0]=r;c[U+2>>0]=x}i=h[I>>2]|0;if((t|0)>=(i|0))break;else E=t}k=F;return}function Wn(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;s=e+112|0;f=e+108|0;l=e+4592|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;d=1<<h[36076+(o<<2)>>2];m=r-a|0;m=(d|0)<(m|0)?d:m;a=m+a|0;if((m|0)==(d|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);m=x;x=0;if(m&1){m=Je()|0;Ke(n|0);fi(m|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)<=0)return n|0;a=0;do{m=t+(a*3|0)|0;c[m>>0]=c[i>>0]|0;c[m+1>>0]=c[i+1>>0]|0;c[m+2>>0]=c[i+2>>0]|0;a=a+1|0}while((a|0)!=(n|0));return n|0}function Gn(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0;f=i+4568|0;d=Kn(i,f)|0;o=Kn(i,f)|0;f=Kn(i,f)|0;a=i+128|0;n=m[r>>0]|0;l=h[i+136>>2]|0;u=l<<1|1;n=(ce(ce(u,d)|0,n-(m[t>>0]|0)>>31|1)|0)+n|0;d=0-l|0;if((n|0)>=(d|0)){a=h[a>>2]|0;if((a+l|0)<(n|0))n=n-(ce(h[i+132>>2]|0,u)|0)|0}else{n=(ce(h[i+132>>2]|0,u)|0)+n|0;a=h[a>>2]|0}if((n&a|0)!=(n|0))n=a&~(n>>31);s=n&255;n=m[r+1>>0]|0;n=(ce(ce(u,o)|0,n-(m[t+1>>0]|0)>>31|1)|0)+n|0;if((n|0)>=(d|0)){if((a+l|0)<(n|0))n=n-(ce(h[i+132>>2]|0,u)|0)|0}else n=(ce(h[i+132>>2]|0,u)|0)+n|0;if((n&a|0)!=(n|0))n=a&~(n>>31);o=n&255;n=m[r+2>>0]|0;n=(ce(ce(u,f)|0,n-(m[t+2>>0]|0)>>31|1)|0)+n|0;if((n|0)>=(d|0)){if((a+l|0)<(n|0))n=n-(ce(h[i+132>>2]|0,u)|0)|0}else n=(ce(h[i+132>>2]|0,u)|0)+n|0;if((n&a|0)==(n|0)){i=n;i=i&255;c[e>>0]=s;d=e+1|0;c[d>>0]=o;e=e+2|0;c[e>>0]=i;return}i=a&~(n>>31);i=i&255;c[e>>0]=s;d=e+1|0;c[d>>0]=o;e=e+2|0;c[e>>0]=i;return}function Xn(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0;w=i>>31;f=(w^i)-w|0;b=e+188+(f*12|0)+10|0;t=d[b>>1]|0;m=e+188+(f*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){i=5;while(1)if((t<<i|0)<(n|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;u=e+188+(f*12|0)+8|0;t=(d[u>>1]^w)-w+r|0;v=e+128|0;n=h[v>>2]|0;if((t&n|0)==(t|0))l=t;else l=n&~(t>>31);t=e+112|0;if((h[t>>2]|0)<8)Ar(e);n=e+108|0;r=h[n>>2]|0;a=r>>>24;o=h[2656+(i<<11)+(a<<3)+4>>2]|0;if(!o){s=h[e+148>>2]|0;n=h[e+140>>2]|0;t=yn(e)|0;if((t|0)<(s+-1-n|0)){if(i)t=(Tn(e,i)|0)+(t<<i)|0}else t=(Tn(e,n)|0)+1|0;t=t<<31>>31^t>>1;if((((t|0)>-1?t:0-t|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(t|0);fi(e|0)}else Ti(t|0,648,74)}}else{h[t>>2]=(h[t>>2]|0)-o;h[n>>2]=r<<o;t=h[2656+(i<<11)+(a<<3)>>2]|0}s=e+136|0;r=h[s>>2]|0;if(!i){if(!r)n=(h[e+188+(f*12|0)+4>>2]<<1)+-1+(d[b>>1]|0)>>31;else n=0;o=n^t}else o=t;i=h[e+152>>2]|0;n=(h[m>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=e+188+(f*12|0)+4|0;t=(h[a>>2]|0)+(ce(r<<1|1,o)|0)|0;r=d[b>>1]|0;if((r|0)==(i|0)){n=n>>1;t=t>>1;r=i>>1}h[m>>2]=n;i=r+1|0;d[b>>1]=i;n=i+t|0;if((n|0)>=1){if((t|0)>0){t=t-i|0;b=d[u>>1]|0;d[u>>1]=(b<<16>>16<127&1)+(b&65535);t=(t|0)>0?0:t}}else{t=d[u>>1]|0;d[u>>1]=(t&65535)-(t<<16>>16>-128&1);t=(n|0)>(~r|0)?n:0-r|0}h[a>>2]=t;i=h[s>>2]|0;r=i<<1|1;n=(ce(r,(o^w)-w|0)|0)+l|0;if((n|0)>=(0-i|0)){t=h[v>>2]|0;if((t+i|0)<(n|0))n=n-(ce(h[e+132>>2]|0,r)|0)|0}else{n=(ce(h[e+132>>2]|0,r)|0)+n|0;t=h[v>>2]|0}if((n&t|0)==(n|0)){e=n;e=e&255;return e|0}e=t&~(n>>31);e=e&255;return e|0}function Kn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=i+9|0;t=m[l>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;o=h[e+148>>2]|0;s=h[36076+(h[e+4592>>2]<<2)>>2]|0;t=h[e+140>>2]|0;n=yn(e)|0;do if((n|0)<(o+-2-s-t|0))if(!r){r=h[a>>2]|0;e=r+n|0;t=e&1;e=(t+e|0)/2|0;f=8;break}else{s=(Tn(e,r)|0)+(n<<r)|0;r=h[a>>2]|0;n=s+r|0;o=n&1;t=o;a=1;n=(o+n|0)/2|0;break}else{n=(Tn(e,t)|0)+1|0;o=h[a>>2]|0;e=n+o|0;t=e&1;e=(t+e|0)/2|0;if(!r){r=o;f=8}else{s=n;a=1;n=e;r=o}}while(0);if((f|0)==8){s=n;a=m[i+10>>0]<<1>>>0>=(m[l>>0]|0)>>>0;n=e}n=(t|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(s+1-r>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[l>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){i=r;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[l>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;i=f;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}function $n(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;m=k;k=k+32|0;r=m;d=e+136|0;e:do if(!(h[d>>2]|0)){t=h[e+128>>2]|0;i=e+144|0;if((((t|0)==((1<<h[i>>2])+-1|0)?(oo(r,t,0),(h[r+4>>2]|0)==(h[e+176>>2]|0)):0)?(h[r+8>>2]|0)==(h[e+180>>2]|0):0)?(h[r+12>>2]|0)==(h[e+184>>2]|0):0)switch(h[i>>2]|0){case 8:{d=h[8856]|0;h[e+4604>>2]=d+(((h[8857]|0)-d|0)>>>1);k=m;return}case 10:{d=h[8859]|0;h[e+4604>>2]=d+(((h[8860]|0)-d|0)>>>1);k=m;return}case 12:{d=h[8862]|0;h[e+4604>>2]=d+(((h[8863]|0)-d|0)>>>1);k=m;return}case 16:{d=h[8865]|0;h[e+4604>>2]=d+(((h[8866]|0)-d|0)>>>1);k=m;return}default:break e}}else i=e+144|0;while(0);u=1<<h[i>>2];t=e+4608|0;r=u<<1;n=e+4612|0;a=h[n>>2]|0;i=h[t>>2]|0;o=a-i|0;if(r>>>0<=o>>>0){if(r>>>0<o>>>0?(s=i+r|0,(a|0)!=(s|0)):0)h[n>>2]=s}else{Pr(t,r-o|0);i=h[t>>2]|0}l=e+4604|0;h[l>>2]=i+u;i=0-u|0;if((u|0)<=(i|0)){k=m;return}s=e+184|0;f=e+180|0;o=e+176|0;a=i;do{i=h[s>>2]|0;if((a|0)>(0-i|0)){t=h[f>>2]|0;if((a|0)>(0-t|0)){r=h[o>>2]|0;if((a|0)>(0-r|0)){n=h[d>>2]|0;if((a|0)>=(0-n|0))if((n|0)<(a|0))if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;c[(h[l>>2]|0)+a>>0]=i;a=a+1|0}while((a|0)!=(u|0));k=m;return}function Jn(e){e=e|0;var i=0,t=0;h[e>>2]=35596;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function Qn(e){e=e|0;var i=0,t=0;h[e>>2]=35596;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function Zn(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(36,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==16)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(37,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(38,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(39,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=2;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=2;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function ea(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;n=k;k=k+32|0;s=n;oo(s,65535,0);o=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[s+8>>2]|0:a;r=h[i+12>>2]|0;r=(r|0)==0?h[s+12>>2]|0:r;i=h[i+16>>2]|0;t=h[s+16>>2]|0;h[e+152>>2]=(o|0)==0?h[s+4>>2]|0:o;h[e+156>>2]=a;h[e+160>>2]=r;fa(e);r=0;do{h[e+164+(r*12|0)>>2]=1024;h[e+164+(r*12|0)+4>>2]=0;d[e+164+(r*12|0)+8>>1]=0;d[e+164+(r*12|0)+10>>1]=1;r=r+1|0}while((r|0)!=365);s=((i|0)==0?t:i)&255;h[e+4544>>2]=1024;h[e+4548>>2]=0;c[e+4552>>0]=s;c[e+4553>>0]=1;c[e+4554>>0]=0;h[e+4556>>2]=1024;h[e+4560>>2]=1;c[e+4564>>0]=s;c[e+4565>>0]=1;c[e+4566>>0]=0;h[e+4568>>2]=0;k=n;return}function ia(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4596>>0]=n&1;i=e+132|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);ta(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function ta(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+148|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;do if(i){if(!((i|0)<0?(x=0,ge(155,S|0),E=x,x=0,E&1):0))o=6;if((o|0)==6?(t=i<<1,x=0,r=ye(66,t|0)|0,E=x,x=0,!(E&1)):0){h[S>>2]=r;E=r+(i<<1)|0;h[S+8>>2]=E;Pg(r|0,0,t|0)|0;h[A>>2]=E;break}r=Je()|0;i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);fi(r|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)o=18;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))o=16;if((o|0)==16?(n=T<<2,x=0,a=ye(66,n|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=a;o=a+(T<<2)|0;h[M+8>>2]=o;Pg(a|0,0,n|0)|0;h[E>>2]=o;o=18;break}r=Je()|0;i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}while(0);if((o|0)==18){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4572|0;s=ce(T,y)|0;f=s+1|0;l=e+4576|0;u=(T|0)>0;c=e+136|0;m=e+144|0;b=e+140|0;v=e+132|0;w=e+88|0;p=e+4568|0;g=0;i:while(1){r=h[S>>2]|0;t=r+2|0;h[o>>2]=t;r=r+(f<<1)|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];n=h[_>>2]|0;d[t+(n<<1)>>1]=d[t+(n+-1<<1)>>1]|0;d[i+-2>>1]=d[t>>1]|0;x=0;ke(59,e|0,0);n=x;x=0;if(n&1){o=29;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+(y<<1)|0;h[o>>2]=t;i=(h[l>>2]|0)+(y<<1)|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[c>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+((h[v>>2]|0)-s<<1)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){o=30;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){o=42;break e}}if((o|0)==29){r=Je()|0;break}else if((o|0)==30){r=Je()|0;break}}else o=42;while(0);do if((o|0)==42){x=0;ge(159,e|0);e=x;x=0;if(e&1){r=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);k=C;return}while(0);i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);fi(r|0)}function ra(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0;m=e+4572|0;i=h[m>>2]|0;p=e+148|0;if((h[p>>2]|0)<=0)return;v=e+4576|0;w=e+4580|0;n=i;a=b[i+-2>>1]|0;i=b[i>>1]|0;u=0;while(1){l=h[v>>2]|0;f=b[l+(u+-1<<1)>>1]|0;r=u+1|0;t=b[n+(r<<1)>>1]|0;s=h[w>>2]|0;o=i-a|0;n=a-f|0;s=((((c[s+(t-i)>>0]|0)*9|0)+(c[s+o>>0]|0)|0)*9|0)+(c[s+n>>0]|0)|0;if(!s){r=(aa(e,u,0)|0)+u|0;t=h[m>>2]|0;i=b[t+(r+-1<<1)>>1]|0;t=b[t+(r<<1)>>1]|0}else{a=i-f>>31;if((a^n|0)<0)n=i;else n=f+((a^o|0)<0?0:o)|0;l=na(e,s,b[l+(u<<1)>>1]|0,n,0)|0;d[(h[v>>2]|0)+(u<<1)>>1]=l}if((r|0)>=(h[p>>2]|0))break;n=h[m>>2]|0;a=i;i=t;u=r}return}function na(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;v=i>>31;l=(v^i)-v|0;b=e+164+(l*12|0)+10|0;t=d[b>>1]|0;m=e+164+(l*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){a=5;while(1)if((t<<a|0)<(n|0))a=a+1|0;else break}else a=4;else a=3;else a=2;else a=1;else a=0;u=e+164+(l*12|0)+8|0;t=(d[u>>1]^v)-v+r|0;if((t&65535|0)!=(t|0))t=t>>31&65535^65535;n=e+112|0;if((h[n>>2]|0)<8)Ar(e);r=e+108|0;o=h[r>>2]|0;s=o>>>24;f=h[2656+(a<<11)+(s<<3)+4>>2]|0;if(!f){n=yn(e)|0;if((n|0)<47){if(a)n=(Tn(e,a)|0)+(n<<a)|0}else n=(Tn(e,16)|0)+1|0;n=n<<31>>31^n>>1;if((((n|0)>-1?n:0-n|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);i=x;x=0;if(i&1){i=Je()|0;Ke(t|0);fi(i|0)}else Ti(t|0,648,74)}}else{h[n>>2]=(h[n>>2]|0)-f;h[r>>2]=o<<f;n=h[2656+(a<<11)+(s<<3)>>2]|0}f=e+164+(l*12|0)+4|0;r=h[f>>2]|0;if(!a){e=d[b>>1]|0;a=e;n=(r<<1)+-1+(e<<16>>16)>>31^n}else a=d[b>>1]|0;o=a<<16>>16==64;e=o&1;s=r+n>>e;o=o?32:a<<16>>16;h[m>>2]=((n|0)>-1?n:0-n|0)+(h[m>>2]|0)>>e;r=o+1|0;d[b>>1]=r;a=r+s|0;if((a|0)<1){b=d[u>>1]|0;d[u>>1]=(b&65535)-(b<<16>>16>-128&1);b=(a|0)>(~o|0)?a:0-o|0;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&65535;return i|0}if((s|0)<=0){b=s;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&65535;return i|0}b=s-r|0;m=d[u>>1]|0;d[u>>1]=(m<<16>>16<127&1)+(m&65535);b=(b|0)>0?0:b;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&65535;return i|0}function aa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=e+4576|0;n=h[a>>2]|0;t=d[n+(i+-1<<1)>>1]|0;o=e+148|0;n=oa(e,t,n+(i<<1)|0,(h[o>>2]|0)-i|0)|0;r=n+i|0;if((r|0)==(h[o>>2]|0)){o=n;return o|0}t=t&65535;i=b[(h[e+4572>>2]|0)+(r<<1)>>1]|0;o=t-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)t=(sa(e,e+4556|0)|0)+t|0;else t=(ce(sa(e,e+4544|0)|0,i-t>>31|1)|0)+i|0;d[(h[a>>2]|0)+(r<<1)>>1]=t;o=e+4568|0;e=h[o>>2]|0;h[o>>2]=(e|0)<1?0:e+-1|0;o=n+1|0;return o|0}function oa(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0;s=e+112|0;f=e+108|0;l=e+4568|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;m=1<<h[36076+(o<<2)>>2];b=r-a|0;b=(m|0)<(b|0)?m:b;a=b+a|0;if((b|0)==(m|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);b=x;x=0;if(b&1){b=Je()|0;Ke(n|0);fi(b|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)>0)a=0;else return n|0;do{d[t+(a<<1)>>1]=i;a=a+1|0}while((a|0)!=(n|0));return n|0}function sa(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;s=i+9|0;t=m[s>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;n=h[36076+(h[e+4568>>2]<<2)>>2]|0;t=yn(e)|0;do if((t|0)<(46-n|0))if(!r){e=h[a>>2]|0;n=e+t|0;r=n&1;n=(r+n|0)/2|0;o=8;break}else{t=(Tn(e,r)|0)+(t<<r)|0;e=h[a>>2]|0;n=t+e|0;f=n&1;r=f;a=1;n=(f+n|0)/2|0;break}else{t=(Tn(e,16)|0)+1|0;e=h[a>>2]|0;n=t+e|0;a=n&1;n=(a+n|0)/2|0;if(!r){r=a;o=8}else{r=a;a=1}}while(0);if((o|0)==8)a=m[i+10>>0]<<1>>>0>=(m[s>>0]|0)>>>0;n=(r|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(t+1-e>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[s>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){f=r;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[s>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}function fa(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;s=l;oo(s,65535,0);f=e+152|0;if(((h[s+4>>2]|0)==(h[f>>2]|0)?(h[s+8>>2]|0)==(h[e+156>>2]|0):0)?(h[s+12>>2]|0)==(h[e+160>>2]|0):0){f=h[8865]|0;h[e+4580>>2]=f+(((h[8866]|0)-f|0)>>>1);k=l;return}t=e+4584|0;r=e+4588|0;n=h[r>>2]|0;i=h[t>>2]|0;a=n-i|0;if(a>>>0>=131072){if(a>>>0>131072?(o=i+131072|0,(n|0)!=(o|0)):0)h[r>>2]=o}else{Pr(t,131072-a|0);i=h[t>>2]|0}s=e+4580|0;h[s>>2]=i+65536;o=e+160|0;n=e+156|0;a=-65536;while(1){i=h[o>>2]|0;if((a|0)>(0-i|0)){t=h[n>>2]|0;if((a|0)>(0-t|0)){r=h[f>>2]|0;if((a|0)>(0-r|0))if((a|0)>=0){if((a|0)<1){c[(h[s>>2]|0)+a>>0]=0;a=1;continue}if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;c[(h[s>>2]|0)+a>>0]=i;a=a+1|0;if((a|0)==65536)break}k=l;return}function la(e){e=e|0;var i=0,t=0;h[e>>2]=35568;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function ua(e){e=e|0;var i=0,t=0;h[e>>2]=35568;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function ca(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(36,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==16)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(37,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(38,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(39,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=2;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=2;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function da(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;n=k;k=k+32|0;s=n;oo(s,4095,0);o=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[s+8>>2]|0:a;r=h[i+12>>2]|0;r=(r|0)==0?h[s+12>>2]|0:r;i=h[i+16>>2]|0;t=h[s+16>>2]|0;h[e+152>>2]=(o|0)==0?h[s+4>>2]|0:o;h[e+156>>2]=a;h[e+160>>2]=r;ka(e);r=0;do{h[e+164+(r*12|0)>>2]=64;h[e+164+(r*12|0)+4>>2]=0;d[e+164+(r*12|0)+8>>1]=0;d[e+164+(r*12|0)+10>>1]=1;r=r+1|0}while((r|0)!=365);s=((i|0)==0?t:i)&255;h[e+4544>>2]=64;h[e+4548>>2]=0;c[e+4552>>0]=s;c[e+4553>>0]=1;c[e+4554>>0]=0;h[e+4556>>2]=64;h[e+4560>>2]=1;c[e+4564>>0]=s;c[e+4565>>0]=1;c[e+4566>>0]=0;h[e+4568>>2]=0;k=n;return}function ha(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4596>>0]=n&1;i=e+132|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);ma(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function ma(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+148|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;do if(i){if(!((i|0)<0?(x=0,ge(155,S|0),E=x,x=0,E&1):0))o=6;if((o|0)==6?(t=i<<1,x=0,r=ye(66,t|0)|0,E=x,x=0,!(E&1)):0){h[S>>2]=r;E=r+(i<<1)|0;h[S+8>>2]=E;Pg(r|0,0,t|0)|0;h[A>>2]=E;break}r=Je()|0;i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);fi(r|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)o=18;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))o=16;if((o|0)==16?(n=T<<2,x=0,a=ye(66,n|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=a;o=a+(T<<2)|0;h[M+8>>2]=o;Pg(a|0,0,n|0)|0;h[E>>2]=o;o=18;break}r=Je()|0;i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}while(0);if((o|0)==18){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4572|0;s=ce(T,y)|0;f=s+1|0;l=e+4576|0;u=(T|0)>0;c=e+136|0;m=e+144|0;b=e+140|0;v=e+132|0;w=e+88|0;p=e+4568|0;g=0;i:while(1){r=h[S>>2]|0;t=r+2|0;h[o>>2]=t;r=r+(f<<1)|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];n=h[_>>2]|0;d[t+(n<<1)>>1]=d[t+(n+-1<<1)>>1]|0;d[i+-2>>1]=d[t>>1]|0;x=0;ke(60,e|0,0);n=x;x=0;if(n&1){o=29;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+(y<<1)|0;h[o>>2]=t;i=(h[l>>2]|0)+(y<<1)|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[c>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+((h[v>>2]|0)-s<<1)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){o=30;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){o=42;break e}}if((o|0)==29){r=Je()|0;break}else if((o|0)==30){r=Je()|0;break}}else o=42;while(0);do if((o|0)==42){x=0;ge(159,e|0);e=x;x=0;if(e&1){r=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);k=C;return}while(0);i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~((t+-2-i|0)>>>1)<<1);$m(i);fi(r|0)}function ba(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,v=0,w=0,p=0;m=e+4572|0;i=h[m>>2]|0;p=e+148|0;if((h[p>>2]|0)<=0)return;v=e+4576|0;w=e+4580|0;n=i;a=b[i+-2>>1]|0;i=b[i>>1]|0;u=0;while(1){l=h[v>>2]|0;f=b[l+(u+-1<<1)>>1]|0;r=u+1|0;t=b[n+(r<<1)>>1]|0;s=h[w>>2]|0;o=i-a|0;n=a-f|0;s=((((c[s+(t-i)>>0]|0)*9|0)+(c[s+o>>0]|0)|0)*9|0)+(c[s+n>>0]|0)|0;if(!s){r=(wa(e,u,0)|0)+u|0;t=h[m>>2]|0;i=b[t+(r+-1<<1)>>1]|0;t=b[t+(r<<1)>>1]|0}else{a=i-f>>31;if((a^n|0)<0)n=i;else n=f+((a^o|0)<0?0:o)|0;l=va(e,s,b[l+(u<<1)>>1]|0,n,0)|0;
d[(h[v>>2]|0)+(u<<1)>>1]=l}if((r|0)>=(h[p>>2]|0))break;n=h[m>>2]|0;a=i;i=t;u=r}return}function va(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;v=i>>31;l=(v^i)-v|0;b=e+164+(l*12|0)+10|0;t=d[b>>1]|0;m=e+164+(l*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){a=5;while(1)if((t<<a|0)<(n|0))a=a+1|0;else break}else a=4;else a=3;else a=2;else a=1;else a=0;u=e+164+(l*12|0)+8|0;t=(d[u>>1]^v)-v+r|0;if((t&4095|0)!=(t|0))t=t>>31&4095^4095;n=e+112|0;if((h[n>>2]|0)<8)Ar(e);r=e+108|0;o=h[r>>2]|0;s=o>>>24;f=h[2656+(a<<11)+(s<<3)+4>>2]|0;if(!f){n=yn(e)|0;if((n|0)<35){if(a)n=(Tn(e,a)|0)+(n<<a)|0}else n=(Tn(e,12)|0)+1|0;n=n<<31>>31^n>>1;if((((n|0)>-1?n:0-n|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);i=x;x=0;if(i&1){i=Je()|0;Ke(t|0);fi(i|0)}else Ti(t|0,648,74)}}else{h[n>>2]=(h[n>>2]|0)-f;h[r>>2]=o<<f;n=h[2656+(a<<11)+(s<<3)>>2]|0}f=e+164+(l*12|0)+4|0;r=h[f>>2]|0;if(!a){e=d[b>>1]|0;a=e;n=(r<<1)+-1+(e<<16>>16)>>31^n}else a=d[b>>1]|0;o=a<<16>>16==64;e=o&1;s=r+n>>e;o=o?32:a<<16>>16;h[m>>2]=((n|0)>-1?n:0-n|0)+(h[m>>2]|0)>>e;r=o+1|0;d[b>>1]=r;a=r+s|0;if((a|0)<1){b=d[u>>1]|0;d[u>>1]=(b&65535)-(b<<16>>16>-128&1);b=(a|0)>(~o|0)?a:0-o|0;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&4095;i=i&65535;return i|0}if((s|0)<=0){b=s;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&4095;i=i&65535;return i|0}b=s-r|0;m=d[u>>1]|0;d[u>>1]=(m<<16>>16<127&1)+(m&65535);b=(b|0)>0?0:b;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&4095;i=i&65535;return i|0}function wa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=e+4576|0;n=h[a>>2]|0;t=d[n+(i+-1<<1)>>1]|0;o=e+148|0;n=pa(e,t,n+(i<<1)|0,(h[o>>2]|0)-i|0)|0;r=n+i|0;if((r|0)==(h[o>>2]|0)){o=n;return o|0}t=t&65535;i=b[(h[e+4572>>2]|0)+(r<<1)>>1]|0;o=t-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)t=(ga(e,e+4556|0)|0)+t|0;else t=(ce(ga(e,e+4544|0)|0,i-t>>31|1)|0)+i|0;d[(h[a>>2]|0)+(r<<1)>>1]=t&4095;o=e+4568|0;e=h[o>>2]|0;h[o>>2]=(e|0)<1?0:e+-1|0;o=n+1|0;return o|0}function pa(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0;s=e+112|0;f=e+108|0;l=e+4568|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;m=1<<h[36076+(o<<2)>>2];b=r-a|0;b=(m|0)<(b|0)?m:b;a=b+a|0;if((b|0)==(m|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);b=x;x=0;if(b&1){b=Je()|0;Ke(n|0);fi(b|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)>0)a=0;else return n|0;do{d[t+(a<<1)>>1]=i;a=a+1|0}while((a|0)!=(n|0));return n|0}function ga(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;s=i+9|0;t=m[s>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;n=h[36076+(h[e+4568>>2]<<2)>>2]|0;t=yn(e)|0;do if((t|0)<(34-n|0))if(!r){e=h[a>>2]|0;n=e+t|0;r=n&1;n=(r+n|0)/2|0;o=8;break}else{t=(Tn(e,r)|0)+(t<<r)|0;e=h[a>>2]|0;n=t+e|0;f=n&1;r=f;a=1;n=(f+n|0)/2|0;break}else{t=(Tn(e,12)|0)+1|0;e=h[a>>2]|0;n=t+e|0;a=n&1;n=(a+n|0)/2|0;if(!r){r=a;o=8}else{r=a;a=1}}while(0);if((o|0)==8)a=m[i+10>>0]<<1>>>0>=(m[s>>0]|0)>>>0;n=(r|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(t+1-e>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[s>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){f=r;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[s>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}function ka(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;s=l;oo(s,4095,0);f=e+152|0;if(((h[s+4>>2]|0)==(h[f>>2]|0)?(h[s+8>>2]|0)==(h[e+156>>2]|0):0)?(h[s+12>>2]|0)==(h[e+160>>2]|0):0){f=h[8862]|0;h[e+4580>>2]=f+(((h[8863]|0)-f|0)>>>1);k=l;return}t=e+4584|0;r=e+4588|0;n=h[r>>2]|0;i=h[t>>2]|0;a=n-i|0;if(a>>>0>=8192){if(a>>>0>8192?(o=i+8192|0,(n|0)!=(o|0)):0)h[r>>2]=o}else{Pr(t,8192-a|0);i=h[t>>2]|0}s=e+4580|0;h[s>>2]=i+4096;o=e+160|0;n=e+156|0;a=-4096;while(1){i=h[o>>2]|0;if((a|0)>(0-i|0)){t=h[n>>2]|0;if((a|0)>(0-t|0)){r=h[f>>2]|0;if((a|0)>(0-r|0))if((a|0)>=0){if((a|0)<1){c[(h[s>>2]|0)+a>>0]=0;a=1;continue}if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;c[(h[s>>2]|0)+a>>0]=i;a=a+1|0;if((a|0)==4096)break}k=l;return}function _a(e){e=e|0;var i=0,t=0;h[e>>2]=35540;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function ya(e){e=e|0;var i=0,t=0;h[e>>2]=35540;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function Ta(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(43,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==8)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(44,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(45,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(46,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=1;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=1;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function Ma(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;n=k;k=k+32|0;s=n;oo(s,255,0);o=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[s+8>>2]|0:a;r=h[i+12>>2]|0;r=(r|0)==0?h[s+12>>2]|0:r;i=h[i+16>>2]|0;t=h[s+16>>2]|0;h[e+152>>2]=(o|0)==0?h[s+4>>2]|0:o;h[e+156>>2]=a;h[e+160>>2]=r;La(e);r=0;do{h[e+164+(r*12|0)>>2]=4;h[e+164+(r*12|0)+4>>2]=0;d[e+164+(r*12|0)+8>>1]=0;d[e+164+(r*12|0)+10>>1]=1;r=r+1|0}while((r|0)!=365);s=((i|0)==0?t:i)&255;h[e+4544>>2]=4;h[e+4548>>2]=0;c[e+4552>>0]=s;c[e+4553>>0]=1;c[e+4554>>0]=0;h[e+4556>>2]=4;h[e+4560>>2]=1;c[e+4564>>0]=s;c[e+4565>>0]=1;c[e+4566>>0]=0;h[e+4568>>2]=0;k=n;return}function Ca(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4596>>0]=n&1;i=e+132|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);xa(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function xa(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+148|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;e:do if(i){if(!((i|0)<0?(x=0,ge(155,S|0),E=x,x=0,E&1):0))a=6;if((a|0)==6?(x=0,t=ye(66,i|0)|0,E=x,x=0,!(E&1)):0){h[A>>2]=t;h[S>>2]=t;h[S+8>>2]=t+i;while(1){c[t>>0]=0;t=(h[A>>2]|0)+1|0;h[A>>2]=t;i=i+-1|0;if(!i)break e}}t=Je()|0;i=h[S>>2]|0;if(!i)fi(t|0);if((h[A>>2]|0)!=(i|0))h[A>>2]=i;$m(i);fi(t|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)a=19;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))a=17;if((a|0)==17?(r=T<<2,x=0,n=ye(66,r|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=n;a=n+(T<<2)|0;h[M+8>>2]=a;Pg(n|0,0,r|0)|0;h[E>>2]=a;a=19;break}t=Je()|0;i=h[M>>2]|0;r=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-r|0)>>>2)<<2);$m(i)}}while(0);if((a|0)==19){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4572|0;s=ce(T,y)|0;f=s+1|0;l=e+4576|0;u=(T|0)>0;d=e+136|0;m=e+144|0;b=e+140|0;v=e+132|0;w=e+88|0;p=e+4568|0;g=0;i:while(1){r=h[S>>2]|0;t=r+1|0;h[o>>2]=t;r=r+f|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];n=h[_>>2]|0;c[t+n>>0]=c[t+(n+-1)>>0]|0;c[(h[l>>2]|0)+-1>>0]=c[h[o>>2]>>0]|0;x=0;ke(61,e|0,0);n=x;x=0;if(n&1){a=30;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+y|0;h[o>>2]=t;i=(h[l>>2]|0)+y|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[d>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+((h[v>>2]|0)-s)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){a=31;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){a=43;break e}}if((a|0)==30){t=Je()|0;break}else if((a|0)==31){t=Je()|0;break}}else a=43;while(0);do if((a|0)==43){x=0;ge(159,e|0);e=x;x=0;if(e&1){t=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}if((h[A>>2]|0)!=(i|0))h[A>>2]=i;$m(i);k=C;return}while(0);i=h[M>>2]|0;r=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-r|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(t|0);if((h[A>>2]|0)!=(i|0))h[A>>2]=i;$m(i);fi(t|0)}function Ea(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0;d=e+4572|0;i=h[d>>2]|0;w=e+148|0;if((h[w>>2]|0)<=0)return;b=e+4576|0;v=e+4580|0;n=i;a=m[i+-1>>0]|0;i=m[i>>0]|0;u=0;while(1){l=h[b>>2]|0;f=m[l+(u+-1)>>0]|0;r=u+1|0;t=m[n+r>>0]|0;s=h[v>>2]|0;o=i-a|0;n=a-f|0;s=((((c[s+(t-i)>>0]|0)*9|0)+(c[s+o>>0]|0)|0)*9|0)+(c[s+n>>0]|0)|0;if(!s){r=(Aa(e,u,0)|0)+u|0;t=h[d>>2]|0;i=m[t+(r+-1)>>0]|0;t=m[t+r>>0]|0}else{a=i-f>>31;if((a^n|0)<0)n=i;else n=f+((a^o|0)<0?0:o)|0;l=Sa(e,s,m[l+u>>0]|0,n,0)|0;c[(h[b>>2]|0)+u>>0]=l}if((r|0)>=(h[w>>2]|0))break;n=h[d>>2]|0;a=i;i=t;u=r}return}function Sa(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;v=i>>31;l=(v^i)-v|0;b=e+164+(l*12|0)+10|0;t=d[b>>1]|0;m=e+164+(l*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){a=5;while(1)if((t<<a|0)<(n|0))a=a+1|0;else break}else a=4;else a=3;else a=2;else a=1;else a=0;u=e+164+(l*12|0)+8|0;t=(d[u>>1]^v)-v+r|0;if((t&255|0)!=(t|0))t=t>>31&255^255;n=e+112|0;if((h[n>>2]|0)<8)Ar(e);r=e+108|0;o=h[r>>2]|0;s=o>>>24;f=h[2656+(a<<11)+(s<<3)+4>>2]|0;if(!f){n=yn(e)|0;if((n|0)<23){if(a)n=(Tn(e,a)|0)+(n<<a)|0}else n=(Tn(e,8)|0)+1|0;n=n<<31>>31^n>>1;if((((n|0)>-1?n:0-n|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);i=x;x=0;if(i&1){i=Je()|0;Ke(t|0);fi(i|0)}else Ti(t|0,648,74)}}else{h[n>>2]=(h[n>>2]|0)-f;h[r>>2]=o<<f;n=h[2656+(a<<11)+(s<<3)>>2]|0}f=e+164+(l*12|0)+4|0;r=h[f>>2]|0;if(!a){e=d[b>>1]|0;a=e;n=(r<<1)+-1+(e<<16>>16)>>31^n}else a=d[b>>1]|0;o=a<<16>>16==64;e=o&1;s=r+n>>e;o=o?32:a<<16>>16;h[m>>2]=((n|0)>-1?n:0-n|0)+(h[m>>2]|0)>>e;r=o+1|0;d[b>>1]=r;a=r+s|0;if((a|0)<1){b=d[u>>1]|0;d[u>>1]=(b&65535)-(b<<16>>16>-128&1);b=(a|0)>(~o|0)?a:0-o|0;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&255;return i|0}if((s|0)<=0){b=s;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&255;return i|0}b=s-r|0;m=d[u>>1]|0;d[u>>1]=(m<<16>>16<127&1)+(m&65535);b=(b|0)>0?0:b;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&255;return i|0}function Aa(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=e+4576|0;n=h[a>>2]|0;t=c[n+(i+-1)>>0]|0;o=e+148|0;n=Pa(e,t,n+i|0,(h[o>>2]|0)-i|0)|0;r=n+i|0;if((r|0)==(h[o>>2]|0)){o=n;return o|0}t=t&255;i=m[(h[e+4572>>2]|0)+r>>0]|0;o=t-i|0;if((((o|0)>-1?o:0-o|0)|0)<1)t=(Ia(e,e+4556|0)|0)+t|0;else t=(ce(Ia(e,e+4544|0)|0,i-t>>31|1)|0)+i|0;c[(h[a>>2]|0)+r>>0]=t;o=e+4568|0;e=h[o>>2]|0;h[o>>2]=(e|0)<1?0:e+-1|0;o=n+1|0;return o|0}function Pa(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;s=e+112|0;f=e+108|0;l=e+4568|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;d=1<<h[36076+(o<<2)>>2];m=r-a|0;m=(d|0)<(m|0)?d:m;a=m+a|0;if((m|0)==(d|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);m=x;x=0;if(m&1){m=Je()|0;Ke(n|0);fi(m|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)<=0)return n|0;Pg(t|0,i|0,n|0)|0;return n|0}function Ia(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;s=i+9|0;t=m[s>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;n=h[36076+(h[e+4568>>2]<<2)>>2]|0;t=yn(e)|0;do if((t|0)<(22-n|0))if(!r){e=h[a>>2]|0;n=e+t|0;r=n&1;n=(r+n|0)/2|0;o=8;break}else{t=(Tn(e,r)|0)+(t<<r)|0;e=h[a>>2]|0;n=t+e|0;f=n&1;r=f;a=1;n=(f+n|0)/2|0;break}else{t=(Tn(e,8)|0)+1|0;e=h[a>>2]|0;n=t+e|0;a=n&1;n=(a+n|0)/2|0;if(!r){r=a;o=8}else{r=a;a=1}}while(0);if((o|0)==8)a=m[i+10>>0]<<1>>>0>=(m[s>>0]|0)>>>0;n=(r|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(t+1-e>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[s>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){f=r;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[s>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}function La(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;s=l;oo(s,255,0);f=e+152|0;if(((h[s+4>>2]|0)==(h[f>>2]|0)?(h[s+8>>2]|0)==(h[e+156>>2]|0):0)?(h[s+12>>2]|0)==(h[e+160>>2]|0):0){f=h[8856]|0;h[e+4580>>2]=f+(((h[8857]|0)-f|0)>>>1);k=l;return}t=e+4584|0;r=e+4588|0;n=h[r>>2]|0;i=h[t>>2]|0;a=n-i|0;if(a>>>0>=512){if(a>>>0>512?(o=i+512|0,(n|0)!=(o|0)):0)h[r>>2]=o}else{Pr(t,512-a|0);i=h[t>>2]|0}s=e+4580|0;h[s>>2]=i+256;o=e+160|0;n=e+156|0;a=-256;while(1){i=h[o>>2]|0;if((a|0)>(0-i|0)){t=h[n>>2]|0;if((a|0)>(0-t|0)){r=h[f>>2]|0;if((a|0)>(0-r|0))if((a|0)>=0){if((a|0)<1){c[(h[s>>2]|0)+a>>0]=0;a=1;continue}if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;c[(h[s>>2]|0)+a>>0]=i;a=a+1|0;if((a|0)==256)break}k=l;return}function Da(e){e=e|0;var i=0,t=0;h[e>>2]=35512;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function Ra(e){e=e|0;var i=0,t=0;h[e>>2]=35512;i=h[e+4584>>2]|0;if(i){t=e+4588|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function Oa(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(43,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==8)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(44,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(45,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(46,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=3;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=3;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function Ba(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;n=k;k=k+32|0;s=n;oo(s,255,0);o=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[s+8>>2]|0:a;r=h[i+12>>2]|0;r=(r|0)==0?h[s+12>>2]|0:r;i=h[i+16>>2]|0;t=h[s+16>>2]|0;h[e+152>>2]=(o|0)==0?h[s+4>>2]|0:o;h[e+156>>2]=a;h[e+160>>2]=r;Va(e);r=0;do{h[e+164+(r*12|0)>>2]=4;h[e+164+(r*12|0)+4>>2]=0;d[e+164+(r*12|0)+8>>1]=0;d[e+164+(r*12|0)+10>>1]=1;r=r+1|0}while((r|0)!=365);s=((i|0)==0?t:i)&255;h[e+4544>>2]=4;h[e+4548>>2]=0;c[e+4552>>0]=s;c[e+4553>>0]=1;c[e+4554>>0]=0;h[e+4556>>2]=4;h[e+4560>>2]=1;c[e+4564>>0]=s;c[e+4565>>0]=1;c[e+4566>>0]=0;h[e+4568>>2]=0;k=n;return}function Na(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4596>>0]=n&1;i=e+132|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);Fa(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function Fa(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;_=e+148|0;y=(h[_>>2]|0)+4|0;if((h[e+28>>2]|0)==1)T=h[e+20>>2]|0;else T=1;i=ce(T<<1,y)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;e:do if(i){if(!(i>>>0>1431655765?(x=0,ge(155,S|0),E=x,x=0,E&1):0))a=6;if((a|0)==6?(x=0,t=ye(66,i*3|0)|0,E=x,x=0,!(E&1)):0){h[A>>2]=t;h[S>>2]=t;h[S+8>>2]=t+(i*3|0);while(1){c[t>>0]=0;c[t+1>>0]=0;c[t+2>>0]=0;t=(h[A>>2]|0)+3|0;h[A>>2]=t;i=i+-1|0;if(!i)break e}}r=Je()|0;i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-3-i|0)>>>0)/3|0)*3|0);$m(i);fi(r|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!T)a=19;else{if(!(T>>>0>1073741823?(x=0,ge(155,M|0),g=x,x=0,g&1):0))a=17;if((a|0)==17?(r=T<<2,x=0,n=ye(66,r|0)|0,g=x,x=0,!(g&1)):0){h[M>>2]=n;a=n+(T<<2)|0;h[M+8>>2]=a;Pg(n|0,0,r|0)|0;h[E>>2]=a;a=19;break}r=Je()|0;i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}while(0);if((a|0)==19){a=e+8|0;e:do if((h[a>>2]|0)>0){o=e+4572|0;s=ce(T,y)|0;f=s+1|0;l=e+4576|0;u=(T|0)>0;d=e+136|0;m=e+144|0;b=e+140|0;v=e+132|0;w=e+88|0;p=e+4568|0;g=0;i:while(1){r=h[S>>2]|0;t=r+3|0;h[o>>2]=t;r=r+(f*3|0)|0;h[l>>2]=r;if(!(g&1))i=r;else{h[o>>2]=r;h[l>>2]=t;i=t;t=r}if(u){n=h[M>>2]|0;r=0;do{h[p>>2]=h[n+(r<<2)>>2];i=h[_>>2]|0;n=t+(i*3|0)|0;t=t+((i+-1|0)*3|0)|0;c[n>>0]=c[t>>0]|0;c[n+1>>0]=c[t+1>>0]|0;c[n+2>>0]=c[t+2>>0]|0;t=h[o>>2]|0;n=(h[l>>2]|0)+-3|0;c[n>>0]=c[t>>0]|0;c[n+1>>0]=c[t+1>>0]|0;c[n+2>>0]=c[t+2>>0]|0;x=0;ke(62,e|0,0);n=x;x=0;if(n&1){a=30;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[p>>2];t=(h[o>>2]|0)+(y*3|0)|0;h[o>>2]=t;i=(h[l>>2]|0)+(y*3|0)|0;h[l>>2]=i;r=r+1|0}while((r|0)<(T|0))}n=h[d>>2]|0;if(((n|0)<=(g|0)?(g|0)<((h[m>>2]|0)+n|0):0)?(n=h[w>>2]|0,x=0,Fe(h[(h[n>>2]|0)+8>>2]|0,n|0,i+(((h[v>>2]|0)-s|0)*3|0)|0,h[b>>2]|0,y|0),n=x,x=0,n&1):0){a=31;break}g=g+1|0;if((g|0)>=(h[a>>2]|0)){a=43;break e}}if((a|0)==30){r=Je()|0;break}else if((a|0)==31){r=Je()|0;break}}else a=43;while(0);do if((a|0)==43){x=0;ge(159,e|0);e=x;x=0;if(e&1){r=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-3-i|0)>>>0)/3|0)*3|0);$m(i);k=C;return}while(0);i=h[M>>2]|0;t=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-t|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(r|0);t=h[A>>2]|0;if((t|0)!=(i|0))h[A>>2]=t+(~(((t+-3-i|0)>>>0)/3|0)*3|0);$m(i);fi(r|0)}function Ua(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0;x=e+148|0;if((h[x>>2]|0)<=0)return;E=e+4576|0;S=e+4572|0;A=e+4580|0;C=0;while(1){y=C+-1|0;a=h[E>>2]|0;o=h[S>>2]|0;i=C+1|0;n=m[o+(C*3|0)>>0]|0;M=h[A>>2]|0;s=m[o+(y*3|0)>>0]|0;f=n-s|0;l=m[a+(y*3|0)>>0]|0;u=s-l|0;d=((((c[M+((m[o+(i*3|0)>>0]|0)-n)>>0]|0)*9|0)+(c[M+f>>0]|0)|0)*9|0)+(c[M+u>>0]|0)|0;r=m[o+(C*3|0)+1>>0]|0;b=m[o+(y*3|0)+1>>0]|0;v=r-b|0;w=m[a+(y*3|0)+1>>0]|0;p=b-w|0;g=((((c[M+((m[o+(i*3|0)+1>>0]|0)-r)>>0]|0)*9|0)+(c[M+v>>0]|0)|0)*9|0)+(c[M+p>>0]|0)|0;t=m[o+(C*3|0)+2>>0]|0;k=m[o+(y*3|0)+2>>0]|0;_=t-k|0;y=m[a+(y*3|0)+2>>0]|0;T=k-y|0;M=((((c[M+((m[o+(i*3|0)+2>>0]|0)-t)>>0]|0)*9|0)+(c[M+_>>0]|0)|0)*9|0)+(c[M+T>>0]|0)|0;if(!(g|d|M))i=(Ha(e,C,0)|0)+C|0;else{o=m[a+(C*3|0)>>0]|0;a=n-l>>31;if((a^u|0)>=0)if((a^f|0)<0)n=l;else n=l-s+n|0;o=za(e,d,o,n,0)|0;a=m[(h[E>>2]|0)+(C*3|0)+1>>0]|0;n=r-w>>31;if((n^p|0)>=0)if((n^v|0)<0)r=w;else r=w-b+r|0;n=za(e,g,a,r,0)|0;a=m[(h[E>>2]|0)+(C*3|0)+2>>0]|0;r=t-y>>31;if((r^T|0)>=0)if((r^_|0)<0)t=y;else t=y-k+t|0;M=za(e,M,a,t,0)|0;C=(h[E>>2]|0)+(C*3|0)|0;c[C>>0]=o;c[C+1>>0]=n;c[C+2>>0]=M}if((i|0)<(h[x>>2]|0))C=i;else break}return}function Ha(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;f=k;k=k+16|0;u=f+3|0;d=f;a=e+4576|0;t=h[a>>2]|0;r=t+((i+-1|0)*3|0)|0;o=c[r>>0]|0;s=c[r+1>>0]|0;r=c[r+2>>0]|0;c[d>>0]=o;c[d+1>>0]=s;c[d+2>>0]=r;l=e+148|0;n=(h[l>>2]|0)-i|0;c[u>>0]=c[d>>0]|0;c[u+1>>0]=c[d+1>>0]|0;c[u+2>>0]=c[d+2>>0]|0;n=ja(e,u,t+(i*3|0)|0,n)|0;t=n+i|0;if((t|0)==(h[l>>2]|0)){d=n;k=f;return d|0}u=(h[e+4572>>2]|0)+(t*3|0)|0;i=c[u>>0]|0;l=c[u+1>>0]|0;u=c[u+2>>0]|0;d=h[a>>2]|0;a=e+4544|0;b=Ya(e,a)|0;m=Ya(e,a)|0;i=i&255;i=(ce(i-(o&255)>>31|1,b)|0)+i&255;l=l&255;l=(ce(l-(s&255)>>31|1,m)|0)+l&255;u=u&255;u=(ce(u-(r&255)>>31|1,Ya(e,a)|0)|0)+u&255;d=d+(t*3|0)|0;c[d>>0]=i;c[d+1>>0]=l;c[d+2>>0]=u;d=e+4568|0;u=h[d>>2]|0;h[d>>2]=(u|0)<1?0:u+-1|0;d=n+1|0;k=f;return d|0}function za(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;v=i>>31;l=(v^i)-v|0;b=e+164+(l*12|0)+10|0;t=d[b>>1]|0;m=e+164+(l*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){a=5;while(1)if((t<<a|0)<(n|0))a=a+1|0;else break}else a=4;else a=3;else a=2;else a=1;else a=0;u=e+164+(l*12|0)+8|0;t=(d[u>>1]^v)-v+r|0;if((t&255|0)!=(t|0))t=t>>31&255^255;n=e+112|0;if((h[n>>2]|0)<8)Ar(e);r=e+108|0;o=h[r>>2]|0;s=o>>>24;f=h[2656+(a<<11)+(s<<3)+4>>2]|0;if(!f){n=yn(e)|0;if((n|0)<23){if(a)n=(Tn(e,a)|0)+(n<<a)|0}else n=(Tn(e,8)|0)+1|0;n=n<<31>>31^n>>1;if((((n|0)>-1?n:0-n|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);i=x;x=0;if(i&1){i=Je()|0;Ke(t|0);fi(i|0)}else Ti(t|0,648,74)}}else{h[n>>2]=(h[n>>2]|0)-f;h[r>>2]=o<<f;n=h[2656+(a<<11)+(s<<3)>>2]|0}f=e+164+(l*12|0)+4|0;r=h[f>>2]|0;if(!a){e=d[b>>1]|0;a=e;n=(r<<1)+-1+(e<<16>>16)>>31^n}else a=d[b>>1]|0;o=a<<16>>16==64;e=o&1;s=r+n>>e;o=o?32:a<<16>>16;h[m>>2]=((n|0)>-1?n:0-n|0)+(h[m>>2]|0)>>e;r=o+1|0;d[b>>1]=r;a=r+s|0;if((a|0)<1){b=d[u>>1]|0;d[u>>1]=(b&65535)-(b<<16>>16>-128&1);b=(a|0)>(~o|0)?a:0-o|0;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&255;return i|0}if((s|0)<=0){b=s;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&255;return i|0}b=s-r|0;m=d[u>>1]|0;d[u>>1]=(m<<16>>16<127&1)+(m&65535);b=(b|0)>0?0:b;h[f>>2]=b;v=n^v;i=i>>>31;i=t+i|0;i=i+v|0;i=i&255;return i|0}function ja(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;s=e+112|0;f=e+108|0;l=e+4568|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;d=1<<h[36076+(o<<2)>>2];m=r-a|0;m=(d|0)<(m|0)?d:m;a=m+a|0;if((m|0)==(d|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);m=x;x=0;if(m&1){m=Je()|0;Ke(n|0);fi(m|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)<=0)return n|0;a=0;do{m=t+(a*3|0)|0;c[m>>0]=c[i>>0]|0;c[m+1>>0]=c[i+1>>0]|0;c[m+2>>0]=c[i+2>>0]|0;a=a+1|0}while((a|0)!=(n|0));return n|0}function Ya(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;s=i+9|0;t=m[s>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;n=h[36076+(h[e+4568>>2]<<2)>>2]|0;t=yn(e)|0;do if((t|0)<(22-n|0))if(!r){e=h[a>>2]|0;n=e+t|0;r=n&1;n=(r+n|0)/2|0;o=8;break}else{t=(Tn(e,r)|0)+(t<<r)|0;e=h[a>>2]|0;n=t+e|0;f=n&1;r=f;a=1;n=(f+n|0)/2|0;break}else{t=(Tn(e,8)|0)+1|0;e=h[a>>2]|0;n=t+e|0;a=n&1;n=(a+n|0)/2|0;if(!r){r=a;o=8}else{r=a;a=1}}while(0);if((o|0)==8)a=m[i+10>>0]<<1>>>0>=(m[s>>0]|0)>>>0;n=(r|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(t+1-e>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[s>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){f=r;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[s>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;f=f&255;f=f+1|0;f=f&255;c[s>>0]=f;return n|0}function Va(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;s=l;oo(s,255,0);f=e+152|0;if(((h[s+4>>2]|0)==(h[f>>2]|0)?(h[s+8>>2]|0)==(h[e+156>>2]|0):0)?(h[s+12>>2]|0)==(h[e+160>>2]|0):0){f=h[8856]|0;h[e+4580>>2]=f+(((h[8857]|0)-f|0)>>>1);k=l;return}t=e+4584|0;r=e+4588|0;n=h[r>>2]|0;i=h[t>>2]|0;a=n-i|0;if(a>>>0>=512){if(a>>>0>512?(o=i+512|0,(n|0)!=(o|0)):0)h[r>>2]=o}else{Pr(t,512-a|0);i=h[t>>2]|0}s=e+4580|0;h[s>>2]=i+256;o=e+160|0;n=e+156|0;a=-256;while(1){i=h[o>>2]|0;if((a|0)>(0-i|0)){t=h[n>>2]|0;if((a|0)>(0-t|0)){r=h[f>>2]|0;if((a|0)>(0-r|0))if((a|0)>=0){if((a|0)<1){c[(h[s>>2]|0)+a>>0]=0;a=1;continue}if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1}else i=-1;else i=-2}else i=-3}else i=-4;c[(h[s>>2]|0)+a>>0]=i;a=a+1|0;if((a|0)==256)break}k=l;return}function qa(e){e=e|0;var i=0,t=0;h[e>>2]=35484;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}e=e+88|0;i=h[e>>2]|0;h[e>>2]=0;if(!i)return;Gk[h[(h[i>>2]|0)+4>>2]&255](i);return}function Wa(e){e=e|0;var i=0,t=0;h[e>>2]=35484;i=h[e+4608>>2]|0;if(i){t=e+4612|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}h[e>>2]=36308;i=h[e+92>>2]|0;if(i){t=e+96|0;if((h[t>>2]|0)!=(i|0))h[t>>2]=i;$m(i)}t=e+88|0;i=h[t>>2]|0;h[t>>2]=0;if(!i){$m(e);return}Gk[h[(h[i>>2]|0)+4>>2]&255](i);$m(e);return}function Ga(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;g=k;k=k+352|0;_=g+328|0;y=g+192|0;t=g+343|0;r=g+342|0;n=g+341|0;a=g+340|0;m=g+176|0;s=g+168|0;f=g+160|0;l=g+152|0;p=g;v=g+136|0;if((h[e+28>>2]|0)!=0?(h[e+20>>2]|0)!=1:0){b=e+4|0;w=e+32|0;o=h[w>>2]|0;if(!o){e=Km(48)|0;
x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[t>>0]|0;Fe(43,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}e=h[e+12>>2]|0;if((e|0)==8)switch(o|0){case 1:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[r>>0]|0;Fe(44,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[n>>0]|0;Fe(45,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(48)|0;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];c[_>>0]=c[a>>0]|0;Fe(46,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=y+56|0;n=y+4|0;h[y>>2]=35760;h[o>>2]=35780;x=0;ke(52,y+56|0,n|0);g=x;x=0;if(g&1){T=Je()|0;us(o);fi(T|0)}h[y+128>>2]=0;h[y+132>>2]=-1;h[y>>2]=35800;h[y+56>>2]=35820;x=0;ge(158,n|0);g=x;x=0;do if(g&1)e=Je()|0;else{h[n>>2]=35836;a=y+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[y+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);g=x;x=0;if(g&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,y|0,48036,21)|0;_=x;x=0;do if((!(_&1)?(x=0,u=Ae(27,e|0,h[w>>2]|0)|0,_=x,x=0,!(_&1)):0)?(x=0,Me(28,u|0,49453,18)|0,_=x,x=0,!(_&1)):0){r=$e(16)|0;x=0;ke(54,m|0,n|0);_=x;x=0;if(!(_&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,m|0);_=x;x=0;if(_&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(m);if(!t)break}else e=Je()|0;Ke(r|0)}else T=34;while(0);if((T|0)==34)e=Je()|0;h[y>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}if((e|0)<=8){e=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,e|0,8,35472);T=x;x=0;if(!(T&1))Ti(e|0,648,74);T=Je()|0;Ke(e|0);fi(T|0)}t=16-e|0;switch(o|0){case 1:{e=Km(60)|0;h[s>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[s>>2];h[_+4>>2]=h[s+4>>2];Fe(40,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 2:{e=Km(60)|0;h[f>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[f>>2];h[_+4>>2]=h[f+4>>2];Fe(41,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}case 3:{e=Km(60)|0;h[l>>2]=t;x=0;h[y>>2]=h[i>>2];h[y+4>>2]=h[i+4>>2];h[y+8>>2]=h[i+8>>2];h[_>>2]=h[l>>2];h[_+4>>2]=h[l+4>>2];Fe(42,e|0,y|0,b|0,_|0);T=x;x=0;if(!(T&1)){T=e;k=g;return T|0}T=Je()|0;$m(e);fi(T|0)}default:{o=p+56|0;n=p+4|0;h[p>>2]=35760;h[o>>2]=35780;x=0;ke(52,p+56|0,n|0);y=x;x=0;if(y&1){T=Je()|0;us(o);fi(T|0)}h[p+128>>2]=0;h[p+132>>2]=-1;h[p>>2]=35800;h[p+56>>2]=35820;x=0;ge(158,n|0);y=x;x=0;do if(y&1)e=Je()|0;else{h[n>>2]=35836;a=p+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[p+52>>2]=16;h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;x=0;ke(53,n|0,_|0);y=x;x=0;if(y&1){e=Je()|0;Uo(_);Uo(a);ws(n);break}Uo(_);x=0;e=Me(28,p|0,48036,21)|0;y=x;x=0;do if((!(y&1)?(x=0,d=Ae(27,e|0,h[w>>2]|0)|0,y=x,x=0,!(y&1)):0)?(x=0,Me(28,d|0,49453,18)|0,y=x,x=0,!(y&1)):0){r=$e(16)|0;x=0;ke(54,v|0,n|0);y=x;x=0;if(!(y&1)){if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Fe(35,r|0,9,35472,v|0);y=x;x=0;if(y&1)t=1;else{x=0;Re(5,r|0,648,74);x=0;t=0}e=Je()|0;Uo(v);if(!t)break}else e=Je()|0;Ke(r|0)}else T=64;while(0);if((T|0)==64)e=Je()|0;h[p>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);T=e;fi(T|0)}while(0);T=e;us(o);fi(T|0)}}}t=h[i+4>>2]|0;r=Km(16)|0;e=h[e+16>>2]|0;if(!t){T=h[i>>2]|0;h[r>>2]=35732;h[r+4>>2]=T;h[r+8>>2]=1;h[r+12>>2]=e;T=r;k=g;return T|0}else{h[r>>2]=35708;h[r+4>>2]=t;h[r+8>>2]=1;h[r+12>>2]=e;T=r;k=g;return T|0}return 0}function Xa(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;o=k;k=k+32|0;f=o;oo(f,h[e+128>>2]|0,h[e+136>>2]|0);s=h[i+4>>2]|0;a=h[i+8>>2]|0;a=(a|0)==0?h[f+8>>2]|0:a;n=h[i+12>>2]|0;n=(n|0)==0?h[f+12>>2]|0:n;t=h[i+16>>2]|0;r=h[f+16>>2]|0;h[e+176>>2]=(s|0)==0?h[f+4>>2]|0:s;h[e+180>>2]=a;h[e+184>>2]=n;to(e);n=e+132|0;i=(h[n>>2]|0)+32|0;i=(i|0)<128?2:(i|0)/64|0;a=0;do{h[e+188+(a*12|0)>>2]=i;h[e+188+(a*12|0)+4>>2]=0;d[e+188+(a*12|0)+8>>1]=0;d[e+188+(a*12|0)+10>>1]=1;a=a+1|0}while((a|0)!=365);s=(h[n>>2]|0)+32|0;s=(s|0)<128?2:(s|0)/64|0;f=((t|0)==0?r:t)&255;h[e+4568>>2]=s;h[e+4572>>2]=0;c[e+4576>>0]=f;c[e+4577>>0]=1;c[e+4578>>0]=0;h[e+4580>>2]=s;h[e+4584>>2]=1;c[e+4588>>0]=f;c[e+4589>>0]=1;c[e+4590>>0]=0;h[e+4592>>2]=0;k=o;return}function Ka(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=e+88|0;a=h[i>>2]|0;h[i>>2]=0;i=h[o>>2]|0;h[o>>2]=a;if(i)Gk[h[(h[i>>2]|0)+4>>2]&255](i);o=r+4|0;a=h[o>>2]|0;c[e+4620>>0]=n&1;i=e+156|0;h[i>>2]=h[t>>2];h[i+4>>2]=h[t+4>>2];h[i+8>>2]=h[t+8>>2];h[i+12>>2]=h[t+12>>2];Er(e,r);$a(e);i=h[e+116>>2]|0;e=h[e+112>>2]|0;while(1){n=i+-1|0;t=(c[n>>0]|0)==-1?7:8;if((e|0)<(t|0))break;else{i=n;e=e-t|0}}i=i-a|0;n=h[o>>2]|0;if(!n)return;h[o>>2]=n+i;r=r+8|0;h[r>>2]=(h[r>>2]|0)-i;return}function $a(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;C=k;k=k+32|0;S=C+12|0;M=C;s=e+172|0;T=(h[s>>2]|0)+4|0;if((h[e+28>>2]|0)==1)f=h[e+20>>2]|0;else f=1;i=ce(f<<1,T)|0;h[S>>2]=0;A=S+4|0;h[A>>2]=0;h[S+8>>2]=0;e:do if(i){if(!((i|0)<0?(x=0,ge(155,S|0),E=x,x=0,E&1):0))y=6;if((y|0)==6?(x=0,t=ye(66,i|0)|0,E=x,x=0,!(E&1)):0){h[A>>2]=t;h[S>>2]=t;h[S+8>>2]=t+i;while(1){c[t>>0]=0;t=(h[A>>2]|0)+1|0;h[A>>2]=t;i=i+-1|0;if(!i)break e}}t=Je()|0;i=h[S>>2]|0;if(!i)fi(t|0);if((h[A>>2]|0)!=(i|0))h[A>>2]=i;$m(i);fi(t|0)}while(0);h[M>>2]=0;E=M+4|0;h[E>>2]=0;h[M+8>>2]=0;do if(!f)y=19;else{if(!(f>>>0>1073741823?(x=0,ge(155,M|0),_=x,x=0,_&1):0))y=17;if((y|0)==17?(r=f<<2,x=0,n=ye(66,r|0)|0,_=x,x=0,!(_&1)):0){h[M>>2]=n;y=n+(f<<2)|0;h[M+8>>2]=y;Pg(n|0,0,r|0)|0;h[E>>2]=y;y=19;break}t=Je()|0;i=h[M>>2]|0;r=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-r|0)>>>2)<<2);$m(i)}}while(0);if((y|0)==19){l=e+8|0;i=h[l>>2]|0;e:do if((i|0)>0){u=e+4596|0;d=ce(f,T)|0;m=d+1|0;b=e+4600|0;v=e+160|0;w=e+168|0;p=e+164|0;g=e+156|0;_=e+88|0;o=e+4592|0;if((f|0)>0)a=0;else{a=0;while(1){n=h[S>>2]|0;t=n+1|0;h[u>>2]=t;r=n+m|0;h[b>>2]=r;if(!(a&1))t=m;else{h[u>>2]=r;h[b>>2]=t;t=1}f=h[v>>2]|0;if((f|0)<=(a|0)?(a|0)<((h[w>>2]|0)+f|0):0){f=h[_>>2]|0;x=0;Fe(h[(h[f>>2]|0)+8>>2]|0,f|0,n+(t+((h[g>>2]|0)-d))|0,h[p>>2]|0,T|0);f=x;x=0;if(f&1)break;i=h[l>>2]|0}a=a+1|0;if((a|0)>=(i|0)){y=50;break e}}t=Je()|0;break}i:while(1){t=h[S>>2]|0;i=t+1|0;h[u>>2]=i;t=t+m|0;h[b>>2]=t;if(a&1){h[u>>2]=t;h[b>>2]=i;i=t}n=h[M>>2]|0;t=i;r=0;do{h[o>>2]=h[n+(r<<2)>>2];y=h[s>>2]|0;c[t+y>>0]=c[t+(y+-1)>>0]|0;c[(h[b>>2]|0)+-1>>0]=c[h[u>>2]>>0]|0;x=0;ke(63,e|0,0);y=x;x=0;if(y&1){y=38;break i}n=h[M>>2]|0;h[n+(r<<2)>>2]=h[o>>2];t=(h[u>>2]|0)+T|0;h[u>>2]=t;i=h[b>>2]|0;h[b>>2]=i+T;r=r+1|0}while((r|0)<(f|0));y=h[v>>2]|0;if(((y|0)<=(a|0)?(a|0)<((h[w>>2]|0)+y|0):0)?(y=h[_>>2]|0,x=0,Fe(h[(h[y>>2]|0)+8>>2]|0,y|0,i+(T+((h[g>>2]|0)-d))|0,h[p>>2]|0,T|0),y=x,x=0,y&1):0){y=30;break}a=a+1|0;if((a|0)>=(h[l>>2]|0)){y=50;break e}}if((y|0)==30){t=Je()|0;break}else if((y|0)==38){t=Je()|0;break}}else y=50;while(0);do if((y|0)==50){x=0;ge(159,e|0);e=x;x=0;if(e&1){t=Je()|0;break}i=h[M>>2]|0;t=i;if(i){r=h[E>>2]|0;if((r|0)!=(i|0))h[E>>2]=r+(~((r+-4-t|0)>>>2)<<2);$m(i)}i=h[S>>2]|0;if(!i){k=C;return}if((h[A>>2]|0)!=(i|0))h[A>>2]=i;$m(i);k=C;return}while(0);i=h[M>>2]|0;r=i;if(i){n=h[E>>2]|0;if((n|0)!=(i|0))h[E>>2]=n+(~((n+-4-r|0)>>>2)<<2);$m(i)}}i=h[S>>2]|0;if(!i)fi(t|0);if((h[A>>2]|0)!=(i|0))h[A>>2]=i;$m(i);fi(t|0)}function Ja(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0;b=e+4596|0;t=h[b>>2]|0;g=e+172|0;i=h[g>>2]|0;if((i|0)<=0)return;v=e+4600|0;w=e+4604|0;p=e+4592|0;s=t;a=m[t+-1>>0]|0;t=m[t>>0]|0;d=0;while(1){l=h[v>>2]|0;o=c[l+(d+-1)>>0]|0;u=o&255;n=d+1|0;r=m[s+n>>0]|0;f=h[w>>2]|0;s=t-a|0;a=a-u|0;f=((((c[f+(r-t)>>0]|0)*9|0)+(c[f+s>>0]|0)|0)*9|0)+(c[f+a>>0]|0)|0;l=l+d|0;if(!f){i=Za(e,o,l,i-d|0)|0;t=i+d|0;if((t|0)!=(h[g>>2]|0)){u=eo(e,u,m[(h[b>>2]|0)+t>>0]|0)|0;c[(h[v>>2]|0)+t>>0]=u;u=h[p>>2]|0;h[p>>2]=(u|0)<1?0:u+-1|0;i=i+1|0}n=i+d|0;r=h[b>>2]|0;t=m[r+(n+-1)>>0]|0;r=m[r+n>>0]|0}else{i=t-u>>31;if((i^a|0)<0)i=t;else i=u+((i^s|0)<0?0:s)|0;u=Qa(e,f,m[l>>0]|0,i,0)|0;c[(h[v>>2]|0)+d>>0]=u}i=h[g>>2]|0;if((i|0)<=(n|0))break;s=h[b>>2]|0;a=t;t=r;d=n}return}function Qa(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0;w=i>>31;f=(w^i)-w|0;b=e+188+(f*12|0)+10|0;t=d[b>>1]|0;m=e+188+(f*12|0)|0;n=h[m>>2]|0;if((t|0)<(n|0))if((t<<1|0)<(n|0))if((t<<2|0)<(n|0))if((t<<3|0)<(n|0))if((t<<4|0)<(n|0)){i=5;while(1)if((t<<i|0)<(n|0))i=i+1|0;else break}else i=4;else i=3;else i=2;else i=1;else i=0;u=e+188+(f*12|0)+8|0;t=(d[u>>1]^w)-w+r|0;v=e+128|0;n=h[v>>2]|0;if((t&n|0)==(t|0))l=t;else l=n&~(t>>31);t=e+112|0;if((h[t>>2]|0)<8)Ar(e);n=e+108|0;r=h[n>>2]|0;a=r>>>24;o=h[2656+(i<<11)+(a<<3)+4>>2]|0;if(!o){s=h[e+148>>2]|0;n=h[e+140>>2]|0;t=yn(e)|0;if((t|0)<(s+-1-n|0)){if(i)t=(Tn(e,i)|0)+(t<<i)|0}else t=(Tn(e,n)|0)+1|0;t=t<<31>>31^t>>1;if((((t|0)>-1?t:0-t|0)|0)>65535){t=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,t|0,5,35472);e=x;x=0;if(e&1){e=Je()|0;Ke(t|0);fi(e|0)}else Ti(t|0,648,74)}}else{h[t>>2]=(h[t>>2]|0)-o;h[n>>2]=r<<o;t=h[2656+(i<<11)+(a<<3)>>2]|0}s=e+136|0;r=h[s>>2]|0;if(!i){if(!r)n=(h[e+188+(f*12|0)+4>>2]<<1)+-1+(d[b>>1]|0)>>31;else n=0;o=n^t}else o=t;i=h[e+152>>2]|0;n=(h[m>>2]|0)+((o|0)>-1?o:0-o|0)|0;a=e+188+(f*12|0)+4|0;t=(h[a>>2]|0)+(ce(r<<1|1,o)|0)|0;r=d[b>>1]|0;if((r|0)==(i|0)){n=n>>1;t=t>>1;r=i>>1}h[m>>2]=n;i=r+1|0;d[b>>1]=i;n=i+t|0;if((n|0)>=1){if((t|0)>0){t=t-i|0;b=d[u>>1]|0;d[u>>1]=(b<<16>>16<127&1)+(b&65535);t=(t|0)>0?0:t}}else{t=d[u>>1]|0;d[u>>1]=(t&65535)-(t<<16>>16>-128&1);t=(n|0)>(~r|0)?n:0-r|0}h[a>>2]=t;i=h[s>>2]|0;r=i<<1|1;n=(ce(r,(o^w)-w|0)|0)+l|0;if((n|0)>=(0-i|0)){t=h[v>>2]|0;if((t+i|0)<(n|0))n=n-(ce(h[e+132>>2]|0,r)|0)|0}else{n=(ce(h[e+132>>2]|0,r)|0)+n|0;t=h[v>>2]|0}if((n&t|0)==(n|0)){e=n;e=e&255;return e|0}e=t&~(n>>31);e=e&255;return e|0}function Za(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;s=e+112|0;f=e+108|0;l=e+4592|0;n=h[s>>2]|0;a=0;while(1){if((n|0)<1){Ar(e);n=h[s>>2]|0}o=h[f>>2]|0;n=n+-1|0;h[s>>2]=n;h[f>>2]=o<<1;if((o|0)>=0){u=8;break}o=h[l>>2]|0;d=1<<h[36076+(o<<2)>>2];m=r-a|0;m=(d|0)<(m|0)?d:m;a=m+a|0;if((m|0)==(d|0))h[l>>2]=(o|0)>30?31:o+1|0;if((a|0)==(r|0)){n=r;break}}if((u|0)==8)if((a|0)!=(r|0)){n=h[l>>2]|0;if((n+-4|0)>>>0<28)n=Tn(e,h[36076+(n<<2)>>2]|0)|0;else n=0;n=n+a|0;if((n|0)>(r|0)){n=$e(16)|0;if((c[8]|0)==0?(qe(8)|0)!=0:0){yi(54,35472,C|0)|0;Ze(8)}x=0;Re(4,n|0,5,35472);m=x;x=0;if(m&1){m=Je()|0;Ke(n|0);fi(m|0)}else Ti(n|0,648,74)}}else n=r;if((n|0)<=0)return n|0;Pg(t|0,i|0,n|0)|0;return n|0}function eo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=i-t|0;o=e+128|0;r=e+136|0;if((((a|0)>-1?a:0-a|0)|0)>(h[r>>2]|0)){i=ce(io(e,e+4568|0)|0,t-i>>31|1)|0;n=h[r>>2]|0;a=n<<1|1;i=(ce(i,a)|0)+t|0;if((i|0)>=(0-n|0)){r=h[o>>2]|0;if((r+n|0)<(i|0))i=i-(ce(h[e+132>>2]|0,a)|0)|0}else{i=(ce(h[e+132>>2]|0,a)|0)+i|0;r=h[o>>2]|0}if((i&r|0)==(i|0)){e=i;e=e&255;return e|0}e=r&~(i>>31);e=e&255;return e|0}else{t=io(e,e+4580|0)|0;a=h[r>>2]|0;n=a<<1|1;i=(ce(n,t)|0)+i|0;if((i|0)>=(0-a|0)){r=h[o>>2]|0;if((r+a|0)<(i|0))i=i-(ce(h[e+132>>2]|0,n)|0)|0}else{i=(ce(h[e+132>>2]|0,n)|0)+i|0;r=h[o>>2]|0}if((i&r|0)==(i|0)){e=i;e=e&255;return e|0}e=r&~(i>>31);e=e&255;return e|0}return 0}function io(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=i+9|0;t=m[l>>0]|0;a=i+4|0;n=(ce(t>>>1,h[a>>2]|0)|0)+(h[i>>2]|0)|0;if((t|0)<(n|0)){r=0;do{t=t<<1;r=r+1|0}while((t|0)<(n|0))}else r=0;o=h[e+148>>2]|0;s=h[36076+(h[e+4592>>2]<<2)>>2]|0;t=h[e+140>>2]|0;n=yn(e)|0;do if((n|0)<(o+-2-s-t|0))if(!r){r=h[a>>2]|0;e=r+n|0;t=e&1;e=(t+e|0)/2|0;f=8;break}else{s=(Tn(e,r)|0)+(n<<r)|0;r=h[a>>2]|0;n=s+r|0;o=n&1;t=o;a=1;n=(o+n|0)/2|0;break}else{n=(Tn(e,t)|0)+1|0;o=h[a>>2]|0;e=n+o|0;t=e&1;e=(t+e|0)/2|0;if(!r){r=o;f=8}else{s=n;a=1;n=e;r=o}}while(0);if((f|0)==8){s=n;a=m[i+10>>0]<<1>>>0>=(m[l>>0]|0)>>>0;n=e}n=(t|0)!=0^a?n:0-n|0;if((n|0)<0){f=i+10|0;c[f>>0]=(m[f>>0]|0)+1}t=(s+1-r>>1)+(h[i>>2]|0)|0;h[i>>2]=t;r=c[l>>0]|0;if(r<<24>>24!=(c[i+8>>0]|0)){i=r;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}h[i>>2]=t>>1;f=(r&255)>>>1;c[l>>0]=f;i=i+10|0;c[i>>0]=(m[i>>0]|0)>>>1;i=f;i=i&255;i=i+1|0;i=i&255;c[l>>0]=i;return n|0}function to(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0;m=k;k=k+32|0;r=m;d=e+136|0;e:do if(!(h[d>>2]|0)){t=h[e+128>>2]|0;i=e+144|0;if((((t|0)==((1<<h[i>>2])+-1|0)?(oo(r,t,0),(h[r+4>>2]|0)==(h[e+176>>2]|0)):0)?(h[r+8>>2]|0)==(h[e+180>>2]|0):0)?(h[r+12>>2]|0)==(h[e+184>>2]|0):0)switch(h[i>>2]|0){case 8:{d=h[8856]|0;h[e+4604>>2]=d+(((h[8857]|0)-d|0)>>>1);k=m;return}case 10:{d=h[8859]|0;h[e+4604>>2]=d+(((h[8860]|0)-d|0)>>>1);k=m;return}case 12:{d=h[8862]|0;h[e+4604>>2]=d+(((h[8863]|0)-d|0)>>>1);k=m;return}case 16:{d=h[8865]|0;h[e+4604>>2]=d+(((h[8866]|0)-d|0)>>>1);k=m;return}default:break e}}else i=e+144|0;while(0);u=1<<h[i>>2];t=e+4608|0;r=u<<1;n=e+4612|0;a=h[n>>2]|0;i=h[t>>2]|0;o=a-i|0;if(r>>>0<=o>>>0){if(r>>>0<o>>>0?(s=i+r|0,(a|0)!=(s|0)):0)h[n>>2]=s}else{Pr(t,r-o|0);i=h[t>>2]|0}l=e+4604|0;h[l>>2]=i+u;i=0-u|0;if((u|0)<=(i|0)){k=m;return}s=e+184|0;f=e+180|0;o=e+176|0;a=i;do{i=h[s>>2]|0;if((a|0)>(0-i|0)){t=h[f>>2]|0;if((a|0)>(0-t|0)){r=h[o>>2]|0;if((a|0)>(0-r|0)){n=h[d>>2]|0;if((a|0)>=(0-n|0))if((n|0)<(a|0))if((r|0)<=(a|0))if((t|0)>(a|0))i=2;else i=(i|0)>(a|0)?3:4;else i=1;else i=0;else i=-1}else i=-2}else i=-3}else i=-4;c[(h[l>>2]|0)+a>>0]=i;a=a+1|0}while((a|0)!=(u|0));k=m;return}function ro(e){e=e|0;$m(e);return}function no(e){e=e|0;return 49338}function ao(e,i,t){e=e|0;i=i|0;t=t|0;No(e,49325,12);return}function oo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;n=(i|0)<4095?(i+128|0)/256|0:16;a=(t*3|0)+2+n|0;r=t+1|0;a=(a|0)<(r|0)|(a|0)>(i|0)?r:a;h[e+4>>2]=a;r=(n<<2|3)+(t*5|0)|0;r=(r|0)>(i|0)|(r|0)<(a|0)?a:r;h[e+8>>2]=r;t=(t*7|0)+4+(n*17|0)|0;h[e+12>>2]=(t|0)>(i|0)|(t|0)<(r|0)?r:t;h[e>>2]=i;h[e+16>>2]=64;return}function so(e,i){e=e|0;i=i|0;h[e>>2]=h[i>>2];h[e+4>>2]=h[i+4>>2];h[e+8>>2]=h[i+8>>2];c[e+12>>0]=0;i=e+16|0;e=i+100|0;do{h[i>>2]=0;i=i+4|0}while((i|0)<(e|0));return}function fo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;g=k;k=k+32|0;p=g+4|0;m=g+16|0;_=g;lo(e);b=e+16|0;n=h[e+24>>2]|0;e:do if((n+-2|0)>>>0<=14){v=e+40|0;t=h[v>>2]|0;if(t>>>0>2)t=5;else{w=e+32|0;a=h[w>>2]|0;switch(a|0){case 0:{t=1;break e}case 4:{if((t|0)==2){t=2;break e}break}case 3:break;default:if(t){t=2;break e}}d=e+100|0;t=e+108|0;r=h[t>>2]|0;if((r|0)<1){r=h[b>>2]|0;h[t>>2]=r;t=h[e+20>>2]|0;h[e+112>>2]=t}else t=h[e+112>>2]|0;f=zg(t|0,((t|0)<0)<<31>>31|0,r|0,((r|0)<0)<<31>>31|0)|0;s=(n+7|0)/8|0;s=zg(f|0,z|0,s|0,((s|0)<0)<<31>>31|0)|0;f=i+4|0;t=h[f>>2]|0;o=i+8|0;if((t|0)!=0?(l=h[o>>2]|0,u=zg(a|0,((a|0)<0)<<31>>31|0,s|0,z|0)|0,n=z,0<(n|0)|0==(n|0)&l>>>0<u>>>0):0){t=$e(16)|0;x=0;r=Le(1)|0;_=x;x=0;if(!(_&1)?(x=0,Re(4,t|0,3,r|0),_=x,x=0,!(_&1)):0)Ti(t|0,648,74);_=Je()|0;Ke(t|0);fi(_|0)}l=e+52|0;u=e+12|0;if((a|0)>0)a=0;else{k=g;return}while(1){uo(e,(a|0)==0);r=Zi(m,b,l)|0;n=h[(h[r>>2]|0)+8>>2]|0;x=0;h[p>>2]=h[i>>2];h[p+4>>2]=h[i+4>>2];h[p+8>>2]=h[i+8>>2];n=Ae(n|0,r|0,p|0)|0;y=x;x=0;if(y&1){n=32;break}y=h[(h[r>>2]|0)+16>>2]|0;h[_>>2]=n;x=0;we(y|0,r|0,_|0,d|0,e|0,(c[u>>0]|0)!=0|0);y=x;x=0;if(y&1){n=30;break}n=h[_>>2]|0;h[_>>2]=0;if(n)Gk[h[(h[n>>2]|0)+4>>2]&255](n);if(!t)t=0;else{t=t+s|0;h[f>>2]=t;h[o>>2]=(h[o>>2]|0)-s}n=(h[v>>2]|0)==0;a=(n&1)+a|0;if(r)Gk[h[(h[r>>2]|0)+4>>2]&255](r);if(!n){n=34;break}if((a|0)>=(h[w>>2]|0)){n=34;break}}if((n|0)==30){t=Je()|0;n=h[_>>2]|0;h[_>>2]=0;if(n)Gk[h[(h[n>>2]|0)+4>>2]&255](n)}else if((n|0)==32){t=Je()|0;if(!r){y=t;fi(y|0)}}else if((n|0)==34){k=g;return}Gk[h[(h[r>>2]|0)+4>>2]&255](r);y=t;fi(y|0)}}else t=2;while(0);r=$e(16)|0;x=0;n=Le(1)|0;y=x;x=0;if(!(y&1)?(x=0,Re(4,r|0,t|0,n|0),y=x,x=0,!(y&1)):0)Ti(r|0,648,74);y=Je()|0;Ke(r|0);fi(y|0)}function lo(e){e=e|0;var i=0,t=0,r=0,n=0;if((mo(e)|0)<<24>>24!=-40){i=$e(16)|0;x=0;t=Le(1)|0;n=x;x=0;if(!(n&1)?(x=0,Re(4,i|0,5,t|0),n=x,x=0,!(n&1)):0)Ti(i|0,648,74);n=Je()|0;Ke(i|0);fi(n|0)}i=mo(e)|0;if(i<<24>>24==-38)return;while(1){r=((ho(e)|0)&255)<<8;r=r|(ho(e)|0)&255;i=bo(e,i)|0;t=-2-i+r|0;if((t|0)<0)break;if((t|0)>0){i=r+-2-i|0;t=0;do{ho(e)|0;t=t+1|0}while((t|0)!=(i|0))}i=mo(e)|0;if(i<<24>>24==-38){n=8;break}}if((n|0)==8)return;i=$e(16)|0;x=0;t=Le(1)|0;n=x;x=0;if(!(n&1)?(x=0,Re(4,i|0,5,t|0),n=x,x=0,!(n&1)):0)Ti(i|0,648,74);n=Je()|0;Ke(i|0);fi(n|0)}function uo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;if(!i){if((ho(e)|0)<<24>>24!=-1){i=$e(16)|0;x=0;t=Le(1)|0;e=x;x=0;if(!(e&1)?(x=0,Re(4,i|0,12,t|0),e=x,x=0,!(e&1)):0)Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}if((ho(e)|0)<<24>>24!=-38){i=$e(16)|0;x=0;t=Le(1)|0;e=x;x=0;if(!(e&1)?(x=0,Re(4,i|0,5,t|0),e=x,x=0,!(e&1)):0)Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}}ho(e)|0;ho(e)|0;t=ho(e)|0;r=t&255;do if(t<<24>>24==1){ho(e)|0;t=0;n=20}else{if((r|0)==(h[e+32>>2]|0)){i=ho(e)|0;if(!(t<<24>>24))break;else{t=0;n=20;break}}i=$e(16)|0;x=0;t=Le(1)|0;e=x;x=0;if(!(e&1)?(x=0,Re(4,i|0,2,t|0),e=x,x=0,!(e&1)):0)Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}while(0);if((n|0)==20)while(1){ho(e)|0;t=t+1|0;i=ho(e)|0;if((t|0)==(r|0))break;else n=20}h[e+36>>2]=i&255;n=ho(e)|0;t=e+40|0;h[t>>2]=n&255;if((n&255)>=3){i=$e(16)|0;x=0;t=Le(1)|0;e=x;x=0;if(!(e&1)?(x=0,Re(4,i|0,5,t|0),e=x,x=0,!(e&1)):0)Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}if((ho(e)|0)<<24>>24){i=$e(16)|0;x=0;t=Le(1)|0;e=x;x=0;if(!(e&1)?(x=0,Re(4,i|0,5,t|0),e=x,x=0,!(e&1)):0)Ti(i|0,648,74);e=Je()|0;Ke(i|0);fi(e|0)}r=e+28|0;if(h[r>>2]|0)return;i=h[e+108>>2]|0;if(!i)i=h[e+16>>2]|0;if(!(h[t>>2]|0))t=1;else t=h[e+32>>2]|0;n=ce(t,i)|0;e=ce(n,((h[e+24>>2]|0)+7|0)/8|0)|0;h[r>>2]=e;return}function co(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;if((t|0)<=0)return;d=i+4|0;m=i+8|0;v=0;do{b=ho(e)|0;r=h[d>>2]|0;n=h[m>>2]|0;if(r>>>0>=n>>>0){a=h[i>>2]|0;o=a;s=r-o+1|0;if((s|0)<0){Gm(i);o=h[i>>2]|0;n=h[m>>2]|0;a=o}u=a;r=n-u|0;if(r>>>0<1073741823){r=r<<1;r=r>>>0<s>>>0?s:r;s=h[d>>2]|0;n=s-u|0;if(!r){l=0;f=0;r=s}else w=10}else{n=h[d>>2]|0;r=2147483647;s=n;n=n-u|0;w=10}if((w|0)==10){w=0;l=r;f=Km(r)|0;r=s}c[f+n>>0]=b;u=r-u|0;b=f+(n-u)|0;Dg(b|0,a|0,u|0)|0;h[i>>2]=b;h[d>>2]=f+(n+1);h[m>>2]=f+l;if(o)$m(o)}else{c[r>>0]=b;h[d>>2]=(h[d>>2]|0)+1}v=v+1|0}while((v|0)!=(t|0));return}function ho(e){e=e|0;var i=0,t=0,r=0,n=0;t=h[e>>2]|0;if(t){e=t+12|0;i=h[e>>2]|0;if((i|0)==(h[t+16>>2]|0))e=$k[h[(h[t>>2]|0)+40>>2]&127](t)|0;else{h[e>>2]=i+1;e=m[i>>0]|0}n=e&255;return n|0}r=e+8|0;n=h[r>>2]|0;if(n){e=e+4|0;i=h[e>>2]|0;t=c[i>>0]|0;if(!i){n=t;return n|0}h[e>>2]=i+1;h[r>>2]=n+-1;n=t;return n|0}e=$e(16)|0;x=0;i=Le(1)|0;n=x;x=0;if(n&1){n=Je()|0;Ke(e|0);fi(n|0)}x=0;Re(4,e|0,4,i|0);n=x;x=0;if(n&1){n=Je()|0;Ke(e|0);fi(n|0)}else Ti(e|0,648,74);return 0}function mo(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0;t=k;k=k+176|0;i=t+152|0;f=t+16|0;o=t;s=ho(e)|0;r=s&255;if(s<<24>>24==-1){do i=ho(e)|0;while(i<<24>>24==-1);k=t;return i|0}s=f+56|0;a=f+4|0;h[f>>2]=35760;h[s>>2]=35780;x=0;ke(52,f+56|0,a|0);n=x;x=0;if(n&1){f=Je()|0;us(s);fi(f|0)}h[f+128>>2]=0;h[f+132>>2]=-1;h[f>>2]=35800;h[f+56>>2]=35820;x=0;ge(158,a|0);n=x;x=0;do if(n&1)i=Je()|0;else{h[a>>2]=35836;n=f+36|0;h[n>>2]=0;h[n+4>>2]=0;h[n+8>>2]=0;h[n+12>>2]=0;h[f+52>>2]=16;h[i>>2]=0;h[i+4>>2]=0;h[i+8>>2]=0;x=0;ke(53,a|0,i|0);t=x;x=0;if(t&1){f=Je()|0;Uo(i);Uo(n);ws(a);i=f;break}Uo(i);h[f+((h[(h[f>>2]|0)+-12>>2]|0)+76)>>2]=48;x=0;i=Me(28,f|0,49363,62)|0;t=x;x=0;if(!(t&1)?(t=i+((h[(h[i>>2]|0)+-12>>2]|0)+4)|0,h[t>>2]=h[t>>2]&-75|8,t=i+((h[(h[i>>2]|0)+-12>>2]|0)+4)|0,h[t>>2]=h[t>>2]|16384,h[i+((h[(h[i>>2]|0)+-12>>2]|0)+12)>>2]=2,x=0,Ae(28,i|0,r|0)|0,r=x,x=0,!(r&1)):0){t=$e(16)|0;x=0;ke(54,o|0,a|0);r=x;x=0;if(!(r&1)){x=0;i=Le(1)|0;r=x;x=0;if(!(r&1)?(x=0,Fe(35,t|0,12,i|0,o|0),r=x,x=0,!(r&1)):0){x=0;Re(5,t|0,648,74);x=0;e=0}else e=1;i=Je()|0;Uo(o);if(!e){o=i;h[f>>2]=35800;h[s>>2]=35820;h[a>>2]=35836;Uo(n);ws(a);us(s);fi(o|0)}}else i=Je()|0;Ke(t|0);o=i;h[f>>2]=35800;h[s>>2]=35820;h[a>>2]=35836;Uo(n);ws(a);us(s);fi(o|0)}o=Je()|0;h[f>>2]=35800;h[s>>2]=35820;h[a>>2]=35836;Uo(n);ws(a);us(s);fi(o|0)}while(0);f=i;us(s);fi(f|0);return 0}function bo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;t=k;k=k+320|0;s=t+300|0;u=t+152|0;f=t+288|0;c=t+16|0;l=t;switch(i<<24>>24){case-9:{d=(ho(e)|0)&255;h[e+24>>2]=d;d=((ho(e)|0)&255)<<8|(ho(e)|0)&255;c=((ho(e)|0)&255)<<8|(ho(e)|0)&255;h[e+16>>2]=c;h[e+20>>2]=d;d=(ho(e)|0)&255;h[e+32>>2]=d;d=6;k=t;return d|0}case-8:{d=vo(e)|0;k=t;return d|0}case-24:{d=jm(e)|0;k=t;return d|0}case-53:case-54:case-55:case-57:case-58:case-59:case-61:case-62:case-63:case-64:{o=u+56|0;n=u+4|0;h[u>>2]=35760;h[o>>2]=35780;x=0;ke(52,u+56|0,n|0);c=x;x=0;if(c&1){d=Je()|0;us(o);fi(d|0)}h[u+128>>2]=0;h[u+132>>2]=-1;h[u>>2]=35800;h[u+56>>2]=35820;x=0;ge(158,n|0);c=x;x=0;do if(c&1)e=Je()|0;else{h[n>>2]=35836;a=u+36|0;h[a>>2]=0;h[a+4>>2]=0;h[a+8>>2]=0;h[a+12>>2]=0;h[u+52>>2]=16;h[s>>2]=0;h[s+4>>2]=0;h[s+8>>2]=0;x=0;ke(53,n|0,s|0);c=x;x=0;if(c&1){e=Je()|0;Uo(s);Uo(a);ws(n);break}Uo(s);x=0;e=Me(28,u|0,49426,26)|0;c=x;x=0;do if((!(c&1)?(x=0,r=Ae(28,e|0,i&255|0)|0,c=x,x=0,!(c&1)):0)?(x=0,Me(28,r|0,49453,18)|0,c=x,x=0,!(c&1)):0){r=$e(16)|0;x=0;ke(54,f|0,n|0);c=x;x=0;if(!(c&1)){x=0;e=Le(1)|0;c=x;x=0;if(!(c&1)?(x=0,Fe(35,r|0,10,e|0,f|0),c=x,x=0,!(c&1)):0){x=0;Re(5,r|0,648,74);x=0;t=0}else t=1;e=Je()|0;Uo(f);if(!t)break}else e=Je()|0;Ke(r|0)}else d=20;while(0);if((d|0)==20)e=Je()|0;h[u>>2]=35800;h[o>>2]=35820;h[n>>2]=35836;Uo(a);ws(n);us(o);d=e;fi(d|0)}while(0);d=e;us(o);fi(d|0)}case-25:case-32:case-2:{d=0;k=t;return d|0}default:{f=c+56|0;a=c+4|0;h[c>>2]=35760;h[f>>2]=35780;x=0;ke(52,c+56|0,a|0);u=x;x=0;if(u&1){d=Je()|0;us(f);fi(d|0)}h[c+128>>2]=0;h[c+132>>2]=-1;h[c>>2]=35800;h[c+56>>2]=35820;x=0;ge(158,a|0);u=x;x=0;do if(u&1)e=Je()|0;else{h[a>>2]=35836;o=c+36|0;h[o>>2]=0;h[o+4>>2]=0;h[o+8>>2]=0;h[o+12>>2]=0;h[c+52>>2]=16;h[s>>2]=0;h[s+4>>2]=0;h[s+8>>2]=0;x=0;ke(53,a|0,s|0);u=x;x=0;if(u&1){e=Je()|0;Uo(s);Uo(o);ws(a);break}Uo(s);x=0;e=Me(28,c|0,49472,20)|0;u=x;x=0;do if((!(u&1)?(x=0,n=Ae(28,e|0,i&255|0)|0,u=x,x=0,!(u&1)):0)?(x=0,Me(28,n|0,49493,13)|0,u=x,x=0,!(u&1)):0){r=$e(16)|0;x=0;ke(54,l|0,a|0);u=x;x=0;if(!(u&1)){x=0;e=Le(1)|0;u=x;x=0;if(!(u&1)?(x=0,Fe(35,r|0,11,e|0,l|0),u=x,x=0,!(u&1)):0){x=0;Re(5,r|0,648,74);x=0;t=0}else t=1;e=Je()|0;Uo(l);if(!t)break}else e=Je()|0;Ke(r|0)}else d=40;while(0);if((d|0)==40)e=Je()|0;h[c>>2]=35800;h[f>>2]=35820;h[a>>2]=35836;Uo(o);ws(a);us(f);d=e;fi(d|0)}while(0);d=e;us(f);fi(d|0)}}return 0}function vo(e){e=e|0;var i=0;if((ho(e)|0)<<24>>24!=1){e=1;return e|0}i=((ho(e)|0)&255)<<8;i=i|(ho(e)|0)&255;h[e+52>>2]=i;i=((ho(e)|0)&255)<<8;i=i|(ho(e)|0)&255;h[e+56>>2]=i;i=((ho(e)|0)&255)<<8;i=i|(ho(e)|0)&255;h[e+60>>2]=i;i=((ho(e)|0)&255)<<8;i=i|(ho(e)|0)&255;h[e+64>>2]=i;i=((ho(e)|0)&255)<<8;i=i|(ho(e)|0)&255;h[e+68>>2]=i;e=11;return e|0}function wo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0;w=k;k=k+32|0;v=w+16|0;b=w+8|0;l=w+4|0;u=w;n=e+52|0;e:do if(c[n>>0]|0){r=e+48|0;t=h[r>>2]|0;if(i){h[r>>2]=-1;c[n>>0]=0}}else{t=h[e+44>>2]|0;t=(t|0)>1?t:1;d=e+32|0;if((t|0)>0){n=0;do{r=qv(h[d>>2]|0)|0;if((r|0)==-1){t=-1;break e}c[v+n>>0]=r;n=n+1|0}while((n|0)<(t|0))}i:do if(!(c[e+53>>0]|0)){o=e+40|0;s=e+36|0;f=b+1|0;t:while(1){p=h[o>>2]|0;n=p;r=h[n>>2]|0;n=h[n+4>>2]|0;g=h[s>>2]|0;a=v+t|0;switch(u_[h[(h[g>>2]|0)+16>>2]&15](g,p,v,a,l,b,f,u)|0){case 2:{t=-1;break e}case 3:break t;case 1:break;default:break i}g=h[o>>2]|0;h[g>>2]=r;h[g+4>>2]=n;if((t|0)==8){t=-1;break e}r=qv(h[d>>2]|0)|0;if((r|0)==-1){t=-1;break e}c[a>>0]=r;t=t+1|0}c[b>>0]=c[v>>0]|0}else c[b>>0]=c[v>>0]|0;while(0);if(i){t=c[b>>0]|0;h[e+48>>2]=t&255}else{while(1){if((t|0)<=0)break;t=t+-1|0;if((Xv(m[v+t>>0]|0,h[d>>2]|0)|0)==-1){t=-1;break e}}t=c[b>>0]|0}t=t&255}while(0);k=w;return t|0}function po(e){e=e|0;return}function go(e){e=e|0;e=e+4|0;h[e>>2]=(h[e>>2]|0)+1;return}function ko(e){e=e|0;var i=0,t=0;t=e+4|0;i=h[t>>2]|0;h[t>>2]=i+-1;if(!i){Gk[h[(h[e>>2]|0)+8>>2]&255](e);e=1}else e=0;return e|0}function _o(e,i){e=e|0;i=i|0;h[e>>2]=36400;x=0;ke(65,e+4|0,((c[i>>0]&1)==0?i+1|0:h[i+8>>2]|0)|0);e=x;x=0;if(e&1){e=Je()|0;fi(e|0)}else return}function yo(e,i){e=e|0;i=i|0;h[e>>2]=36400;x=0;ke(65,e+4|0,i|0);e=x;x=0;if(e&1){e=Je()|0;fi(e|0)}else return}function To(e,i){e=e|0;i=i|0;var t=0,r=0;r=sw(i)|0;t=Km(r+13|0)|0;h[t>>2]=r;h[t+4>>2]=r;h[t+8>>2]=0;t=t+12|0;Dg(t|0,i|0,r+1|0)|0;h[e>>2]=t;return}function Mo(e,i,t){e=e|0;i=i|0;t=t|0;h[e>>2]=t;h[e+4>>2]=i;return}function Co(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=k;k=k+16|0;r=n;f_[h[(h[e>>2]|0)+12>>2]&15](r,e,i);if((h[r+4>>2]|0)==(h[t+4>>2]|0))r=(h[r>>2]|0)==(h[t>>2]|0);else r=0;k=n;return r|0}function xo(e,i,t){e=e|0;i=i|0;t=t|0;return((h[i>>2]|0)==(t|0)?(h[i+4>>2]|0)==(e|0):0)|0}function Eo(e,i,t){e=e|0;i=i|0;t=t|0;i=Jb(t)|0;No(e,i,sw(i)|0);return}function So(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;o=k;k=k+16|0;a=o;r=h[i>>2]|0;do if(r){n=c[t>>0]|0;if(!(n&1))n=(n&255)>>>1;else n=h[t+4>>2]|0;if(n){Wo(t,55446)|0;r=h[i>>2]|0}i=h[i+4>>2]|0;f_[h[(h[i>>2]|0)+24>>2]&15](a,i,r);i=c[a>>0]|0;n=(i&1)==0;x=0;Me(30,t|0,(n?a+1|0:h[a+8>>2]|0)|0,(n?(i&255)>>>1:h[a+4>>2]|0)|0)|0;i=x;x=0;if(i&1){o=Je()|0;Uo(a);fi(o|0)}else{Uo(a);break}}while(0);h[e>>2]=h[t>>2];h[e+4>>2]=h[t+4>>2];h[e+8>>2]=h[t+8>>2];h[t>>2]=0;h[t+4>>2]=0;h[t+8>>2]=0;k=o;return}function Ao(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+32|0;r=n+12|0;a=n;No(a,t,sw(t)|0);x=0;Re(8,r|0,i|0,a|0);t=x;x=0;do if(!(t&1)){x=0;ke(66,e|0,r|0);t=x;x=0;if(t&1){n=Je()|0;Uo(r);r=n;break}else{Uo(r);Uo(a);h[e>>2]=42196;t=h[i+4>>2]|0;a=e+8|0;h[a>>2]=h[i>>2];h[a+4>>2]=t;k=n;return}}else r=Je()|0;while(0);Uo(a);fi(r|0)}function Po(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;a=k;k=k+48|0;n=a+24|0;s=a+16|0;o=a;h[s>>2]=i;h[s+4>>2]=t;Bo(o,r);x=0;Re(8,n|0,s|0,o|0);r=x;x=0;do if(!(r&1)){x=0;ke(66,e|0,n|0);s=x;x=0;if(s&1){s=Je()|0;Uo(n);n=s;break}else{Uo(n);Uo(o);h[e>>2]=42196;h[e+8>>2]=i;h[e+12>>2]=t;k=a;return}}else n=Je()|0;while(0);Uo(o);fi(n|0)}function Io(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;n=k;k=k+48|0;r=n+24|0;o=n+16|0;a=n;h[o>>2]=i;h[o+4>>2]=t;No(a,57354,0);x=0;Re(8,r|0,o|0,a|0);o=x;x=0;do if(!(o&1)){x=0;ke(66,e|0,r|0);o=x;x=0;if(o&1){o=Je()|0;Uo(r);r=o;break}else{Uo(r);Uo(a);h[e>>2]=42196;h[e+8>>2]=i;h[e+12>>2]=t;k=n;return}}else r=Je()|0;while(0);Uo(a);fi(r|0)}function Lo(e){e=e|0;ob(e);return}function Do(e){e=e|0;ob(e);$m(e);return}function Ro(e){e=e|0;return}function Oo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;Ai(42208)|0;if((h[e>>2]|0)==1)do ze(42236,42208)|0;while((h[e>>2]|0)==1);do if(!(h[e>>2]|0)){h[e>>2]=1;x=0;ye(71,42208)|0;r=x;x=0;if((((!(r&1)?(x=0,ge(t|0,i|0),r=x,x=0,!(r&1)):0)?(x=0,ye(72,42208)|0,r=x,x=0,!(r&1)):0)?(h[e>>2]=-1,x=0,ye(71,42208)|0,r=x,x=0,!(r&1)):0)?(x=0,ye(73,42236)|0,r=x,x=0,!(r&1)):0)break;r=Je(0)|0;ai(r|0)|0;x=0;ye(72,42208)|0;r=x;x=0;if((!(r&1)?(h[e>>2]=0,x=0,ye(71,42208)|0,r=x,x=0,!(r&1)):0)?(x=0,ye(73,42236)|0,r=x,x=0,!(r&1)):0){x=0;Oe(5);x=0}i=Je()|0;x=0;Oe(3);r=x;x=0;if(r&1){r=Je(0)|0;Wi(r)}else fi(i|0)}else mi(42208)|0;while(0);return}function Bo(e,i){e=e|0;i=i|0;if(!(c[i>>0]&1)){h[e>>2]=h[i>>2];h[e+4>>2]=h[i+4>>2];h[e+8>>2]=h[i+8>>2]}else No(e,h[i+8>>2]|0,h[i+4>>2]|0);return}function No(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;if(t>>>0>4294967279)Wm(e);if(t>>>0<11){c[e>>0]=t<<1;e=e+1|0}else{n=t+16&-16;r=Km(n)|0;h[e+8>>2]=r;h[e>>2]=n|1;h[e+4>>2]=t;e=r}Dg(e|0,i|0,t|0)|0;c[e+t>>0]=0;return}function Fo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;if(i>>>0>4294967279)Wm(e);if(i>>>0<11){c[e>>0]=i<<1;e=e+1|0}else{n=i+16&-16;r=Km(n)|0;h[e+8>>2]=r;h[e>>2]=n|1;h[e+4>>2]=i;e=r}Pg(e|0,t|0,i|0)|0;c[e+i>>0]=0;return}function Uo(e){e=e|0;if(c[e>>0]&1)$m(h[e+8>>2]|0);return}function Ho(e,i){e=e|0;i=i|0;var t=0,r=0;if((e|0)!=(i|0)){t=c[i>>0]|0;r=(t&1)==0;jo(e,r?i+1|0:h[i+8>>2]|0,r?(t&255)>>>1:h[i+4>>2]|0)|0}return e|0}function zo(e,i){e=e|0;i=i|0;return jo(e,i,sw(i)|0)|0}function jo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;r=c[e>>0]|0;if(!(r&1))a=10;else{r=h[e>>2]|0;a=(r&-2)+-1|0;r=r&255}n=(r&1)==0;do if(a>>>0>=t>>>0){if(n)r=e+1|0;else r=h[e+8>>2]|0;Og(r|0,i|0,t|0)|0;c[r+t>>0]=0;if(!(c[e>>0]&1)){c[e>>0]=t<<1;break}else{h[e+4>>2]=t;break}}else{if(n)r=(r&255)>>>1;else r=h[e+4>>2]|0;Ko(e,a,t-a|0,r,0,r,t,i)}while(0);return e|0}function Yo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=c[e>>0]|0;n=(r&1)==0;if(n)r=(r&255)>>>1;else r=h[e+4>>2]|0;do if(r>>>0>=i>>>0)if(n){c[e+1+i>>0]=0;c[e>>0]=i<<1;break}else{c[(h[e+8>>2]|0)+i>>0]=0;h[e+4>>2]=i;break}else Vo(e,i-r|0,t)|0;while(0);return}function Vo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;if(i){r=c[e>>0]|0;if(!(r&1))n=10;else{r=h[e>>2]|0;n=(r&-2)+-1|0;r=r&255}if(!(r&1))a=(r&255)>>>1;else a=h[e+4>>2]|0;if((n-a|0)>>>0<i>>>0){$o(e,n,i-n+a|0,a,a,0,0);r=c[e>>0]|0}if(!(r&1))n=e+1|0;else n=h[e+8>>2]|0;Pg(n+a|0,t|0,i|0)|0;r=a+i|0;if(!(c[e>>0]&1))c[e>>0]=r<<1;else h[e+4>>2]=r;c[n+r>>0]=0}return e|0}function qo(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;if(i>>>0>4294967279)Wm(e);t=c[e>>0]|0;if(!(t&1))r=10;else{t=h[e>>2]|0;r=(t&-2)+-1|0;t=t&255}if(!(t&1))s=(t&255)>>>1;else s=h[e+4>>2]|0;i=s>>>0>i>>>0?s:i;if(i>>>0<11)o=10;else o=(i+16&-16)+-1|0;e:do if((o|0)!=(r|0)){do if((o|0)!=10){i=o+1|0;if(o>>>0<=r>>>0){x=0;i=ye(66,i|0)|0;a=x;x=0;if(a&1){e=Je(0)|0;ai(e|0)|0;si();break e}}else i=Km(i)|0;if(!(t&1)){r=1;n=e+1|0;a=0;break}else{r=1;n=h[e+8>>2]|0;a=1;break}}else{i=e+1|0;r=0;n=h[e+8>>2]|0;a=1}while(0);if(!(t&1))t=(t&255)>>>1;else t=h[e+4>>2]|0;Dg(i|0,n|0,t+1|0)|0;if(a)$m(n);if(r){h[e>>2]=o+1|1;h[e+4>>2]=s;h[e+8>>2]=i;break}else{c[e>>0]=s<<1;break}}while(0);return}function Wo(e,i){e=e|0;i=i|0;return Xo(e,i,sw(i)|0)|0}function Go(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;t=c[e>>0]|0;r=(t&1)!=0;if(r){n=(h[e>>2]&-2)+-1|0;a=h[e+4>>2]|0}else{n=10;a=(t&255)>>>1}if((a|0)==(n|0)){$o(e,n,1,n,n,0,0);if(!(c[e>>0]&1))n=7;else n=8}else if(r)n=8;else n=7;if((n|0)==7){c[e>>0]=(a<<1)+2;t=e+1|0;r=a+1|0}else if((n|0)==8){t=h[e+8>>2]|0;r=a+1|0;h[e+4>>2]=r}c[t+a>>0]=i;c[t+r>>0]=0;return}function Xo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;r=c[e>>0]|0;if(!(r&1))n=10;else{r=h[e>>2]|0;n=(r&-2)+-1|0;r=r&255}if(!(r&1))a=(r&255)>>>1;else a=h[e+4>>2]|0;if((n-a|0)>>>0>=t>>>0){if(t){if(!(r&1))n=e+1|0;else n=h[e+8>>2]|0;Dg(n+a|0,i|0,t|0)|0;r=a+t|0;if(!(c[e>>0]&1))c[e>>0]=r<<1;else h[e+4>>2]=r;c[n+r>>0]=0}}else Ko(e,n,t-n+a|0,a,a,0,t,i);return e|0}function Ko(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0;if((-18-i|0)>>>0<t>>>0)Wm(e);if(!(c[e>>0]&1))u=e+1|0;else u=h[e+8>>2]|0;if(i>>>0<2147483623){f=t+i|0;l=i<<1;f=f>>>0<l>>>0?l:f;f=f>>>0<11?11:f+16&-16}else f=-17;l=Km(f)|0;if(n)Dg(l|0,u|0,n|0)|0;if(o)Dg(l+n|0,s|0,o|0)|0;t=r-a|0;if((t|0)!=(n|0))Dg(l+(o+n)|0,u+(a+n)|0,t-n|0)|0;if((i|0)!=10)$m(u);h[e+8>>2]=l;h[e>>2]=f|1;i=t+o|0;h[e+4>>2]=i;c[l+i>>0]=0;return}function $o(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0;if((-17-i|0)>>>0<t>>>0)Wm(e);if(!(c[e>>0]&1))l=e+1|0;else l=h[e+8>>2]|0;if(i>>>0<2147483623){s=t+i|0;f=i<<1;s=s>>>0<f>>>0?f:s;s=s>>>0<11?11:s+16&-16}else s=-17;f=Km(s)|0;if(n)Dg(f|0,l|0,n|0)|0;t=r-a|0;if((t|0)!=(n|0))Dg(f+(o+n)|0,l+(a+n)|0,t-n|0)|0;if((i|0)!=10)$m(l);h[e+8>>2]=f;h[e>>2]=s|1;return}function Jo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;if(t>>>0>1073741807)Wm(e);if(t>>>0<2){c[e>>0]=t<<1;e=e+4|0}else{n=t+4&-4;r=Km(n<<2)|0;h[e+8>>2]=r;h[e>>2]=n|1;h[e+4>>2]=t;e=r}uw(e,i,t)|0;h[e+(t<<2)>>2]=0;return}function Qo(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;if(i>>>0>1073741807)Wm(e);if(i>>>0<2){c[e>>0]=i<<1;e=e+4|0}else{n=i+4&-4;r=Km(n<<2)|0;h[e+8>>2]=r;h[e>>2]=n|1;h[e+4>>2]=i;e=r}dw(e,t,i)|0;h[e+(i<<2)>>2]=0;return}function Zo(e){e=e|0;if(c[e>>0]&1)$m(h[e+8>>2]|0);return}function es(e,i){e=e|0;i=i|0;return is(e,i,lw(i)|0)|0}function is(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;r=c[e>>0]|0;if(!(r&1))a=1;else{r=h[e>>2]|0;a=(r&-2)+-1|0;r=r&255}n=(r&1)==0;do if(a>>>0>=t>>>0){if(n)r=e+4|0;else r=h[e+8>>2]|0;cw(r,i,t)|0;h[r+(t<<2)>>2]=0;if(!(c[e>>0]&1)){c[e>>0]=t<<1;break}else{h[e+4>>2]=t;break}}else{if(n)r=(r&255)>>>1;else r=h[e+4>>2]|0;ns(e,a,t-a|0,r,0,r,t,i)}while(0);return e|0}function ts(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;if(i>>>0>1073741807)Wm(e);t=c[e>>0]|0;if(!(t&1))r=1;else{t=h[e>>2]|0;r=(t&-2)+-1|0;t=t&255}if(!(t&1))s=(t&255)>>>1;else s=h[e+4>>2]|0;i=s>>>0>i>>>0?s:i;if(i>>>0<2)o=1;else o=(i+4&-4)+-1|0;
e:do if((o|0)!=(r|0)){do if((o|0)!=1){i=(o<<2)+4|0;if(o>>>0<=r>>>0){x=0;i=ye(66,i|0)|0;a=x;x=0;if(a&1){e=Je(0)|0;ai(e|0)|0;si();break e}}else i=Km(i)|0;if(!(t&1)){r=1;n=e+4|0;a=0;break}else{r=1;n=h[e+8>>2]|0;a=1;break}}else{i=e+4|0;r=0;n=h[e+8>>2]|0;a=1}while(0);if(!(t&1))t=(t&255)>>>1;else t=h[e+4>>2]|0;uw(i,n,t+1|0)|0;if(a)$m(n);if(r){h[e>>2]=o+1|1;h[e+4>>2]=s;h[e+8>>2]=i;break}else{c[e>>0]=s<<1;break}}while(0);return}function rs(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;t=c[e>>0]|0;r=(t&1)!=0;if(r){n=(h[e>>2]&-2)+-1|0;a=h[e+4>>2]|0}else{n=1;a=(t&255)>>>1}if((a|0)==(n|0)){as(e,n,1,n,n,0,0);if(!(c[e>>0]&1))n=7;else n=8}else if(r)n=8;else n=7;if((n|0)==7){c[e>>0]=(a<<1)+2;t=e+4|0;r=a+1|0}else if((n|0)==8){t=h[e+8>>2]|0;r=a+1|0;h[e+4>>2]=r}h[t+(a<<2)>>2]=i;h[t+(r<<2)>>2]=0;return}function ns(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0;if((1073741806-i|0)>>>0<t>>>0)Wm(e);if(!(c[e>>0]&1))u=e+4|0;else u=h[e+8>>2]|0;if(i>>>0<536870887){f=t+i|0;l=i<<1;f=f>>>0<l>>>0?l:f;f=f>>>0<2?2:f+4&-4}else f=1073741807;l=Km(f<<2)|0;if(n)uw(l,u,n)|0;if(o)uw(l+(n<<2)|0,s,o)|0;t=r-a|0;if((t|0)!=(n|0))uw(l+(o+n<<2)|0,u+(a+n<<2)|0,t-n|0)|0;if((i|0)!=1)$m(u);h[e+8>>2]=l;h[e>>2]=f|1;i=t+o|0;h[e+4>>2]=i;h[l+(i<<2)>>2]=0;return}function as(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0;if((1073741807-i|0)>>>0<t>>>0)Wm(e);if(!(c[e>>0]&1))l=e+4|0;else l=h[e+8>>2]|0;if(i>>>0<536870887){s=t+i|0;f=i<<1;s=s>>>0<f>>>0?f:s;s=s>>>0<2?2:s+4&-4}else s=1073741807;f=Km(s<<2)|0;if(n)uw(f,l,n)|0;t=r-a|0;if((t|0)!=(n|0))uw(f+(o+n<<2)|0,l+(a+n<<2)|0,t-n|0)|0;if((i|0)!=1)$m(l);h[e+8>>2]=f;h[e>>2]=s|1;return}function os(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;n=i;r=t-n|0;if(r>>>0>4294967279)Wm(e);if(r>>>0<11){c[e>>0]=r<<1;a=e+1|0}else{o=r+16&-16;a=Km(o)|0;h[e+8>>2]=a;h[e>>2]=o|1;h[e+4>>2]=r}e=t-n|0;if((i|0)!=(t|0)){r=a;while(1){c[r>>0]=c[i>>0]|0;i=i+1|0;if((i|0)==(t|0))break;else r=r+1|0}}c[a+e>>0]=0;return}function ss(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=i;r=t-a|0;n=r>>2;if(n>>>0>1073741807)Wm(e);if(n>>>0<2){c[e>>0]=r>>>1;e=e+4|0}else{o=n+4&-4;r=Km(o<<2)|0;h[e+8>>2]=r;h[e>>2]=o|1;h[e+4>>2]=n;e=r}n=(t-a|0)>>>2;if((i|0)!=(t|0)){r=e;while(1){h[r>>2]=h[i>>2];i=i+4|0;if((i|0)==(t|0))break;else r=r+4|0}}h[e+(n<<2)>>2]=0;return}function fs(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;t=k;k=k+16|0;r=t;n=(h[e+24>>2]|0)==0;h[e+16>>2]=n&1|i;if(!((n&1|i)&h[e+20>>2])){k=t;return}i=$e(16)|0;yf()|0;h[r>>2]=1;h[r+4>>2]=42644;x=0;Re(9,i|0,55893,r|0);n=x;x=0;if(n&1){n=Je()|0;Ke(i|0);fi(n|0)}else Ti(i|0,688,90)}function ls(e){e=e|0;var i=0;h[e>>2]=42600;x=0;ke(67,e|0,0);i=x;x=0;if(i&1){i=Je(0)|0;Wi(i)}else{Bd(e+28|0);xw(h[e+32>>2]|0);xw(h[e+36>>2]|0);xw(h[e+48>>2]|0);xw(h[e+60>>2]|0);return}}function us(e){e=e|0;ls(e);return}function cs(e){e=e|0;ls(e);$m(e);return}function ds(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;t=h[e+40>>2]|0;r=e+32|0;n=e+36|0;if(t)do{t=t+-1|0;f_[h[(h[r>>2]|0)+(t<<2)>>2]&15](i,e,h[(h[n>>2]|0)+(t<<2)>>2]|0)}while((t|0)!=0);return}function hs(e){e=e|0;var i=0,t=0;t=k;k=k+16|0;i=t;Od(i,e+28|0);k=t;return h[i>>2]|0}function ms(e,i){e=e|0;i=i|0;var t=0;h[e+24>>2]=i;h[e+16>>2]=(i|0)==0&1;h[e+20>>2]=0;h[e+4>>2]=4098;h[e+12>>2]=0;h[e+8>>2]=6;t=e+28|0;i=e+32|0;e=i+40|0;do{h[i>>2]=0;i=i+4|0}while((i|0)<(e|0));Rd(t);return}function bs(e){e=e|0;ls(e);return}function vs(e){e=e|0;ls(e);$m(e);return}function ws(e){e=e|0;h[e>>2]=42292;Bd(e+4|0);return}function ps(e){e=e|0;h[e>>2]=42292;Bd(e+4|0);$m(e);return}function gs(e){e=e|0;h[e>>2]=42292;Rd(e+4|0);e=e+8|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[e+16>>2]=0;h[e+20>>2]=0;return}function ks(e,i){e=e|0;i=i|0;return}function _s(e,i,t){e=e|0;i=i|0;t=t|0;return e|0}function ys(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}function Ts(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}function Ms(e){e=e|0;return 0}function Cs(e){e=e|0;return 0}function xs(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=e+12|0;o=e+16|0;e:do if((t|0)>0){n=i;i=0;while(1){r=h[a>>2]|0;if(r>>>0<(h[o>>2]|0)>>>0){h[a>>2]=r+1;r=c[r>>0]|0}else{r=$k[h[(h[e>>2]|0)+40>>2]&127](e)|0;if((r|0)==-1)break e;r=r&255}c[n>>0]=r;i=i+1|0;if((i|0)<(t|0))n=n+1|0;else break}}else i=0;while(0);return i|0}function Es(e){e=e|0;return-1}function Ss(e){e=e|0;var i=0;if(($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)==-1)e=-1;else{i=e+12|0;e=h[i>>2]|0;h[i>>2]=e+1;e=m[e>>0]|0}return e|0}function As(e,i){e=e|0;i=i|0;return-1}function Ps(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;a=e+24|0;o=e+28|0;e:do if((t|0)>0){n=i;i=0;while(1){r=h[a>>2]|0;if(r>>>0>=(h[o>>2]|0)>>>0){if((r_[h[(h[e>>2]|0)+52>>2]&63](e,m[n>>0]|0)|0)==-1)break e}else{s=c[n>>0]|0;h[a>>2]=r+1;c[r>>0]=s}i=i+1|0;if((i|0)<(t|0))n=n+1|0;else break}}else i=0;while(0);return i|0}function Is(e,i){e=e|0;i=i|0;return-1}function Ls(e){e=e|0;h[e>>2]=42356;Bd(e+4|0);return}function Ds(e){e=e|0;h[e>>2]=42356;Bd(e+4|0);$m(e);return}function Rs(e){e=e|0;h[e>>2]=42356;Rd(e+4|0);e=e+8|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[e+12>>2]=0;h[e+16>>2]=0;h[e+20>>2]=0;return}function Os(e,i){e=e|0;i=i|0;return}function Bs(e,i,t){e=e|0;i=i|0;t=t|0;return e|0}function Ns(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}function Fs(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;i=e;h[i>>2]=0;h[i+4>>2]=0;i=e+8|0;h[i>>2]=-1;h[i+4>>2]=-1;return}function Us(e){e=e|0;return 0}function Hs(e){e=e|0;return 0}function zs(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=e+12|0;o=e+16|0;e:do if((t|0)>0){n=i;i=0;while(1){r=h[a>>2]|0;if(r>>>0>=(h[o>>2]|0)>>>0){r=$k[h[(h[e>>2]|0)+40>>2]&127](e)|0;if((r|0)==-1)break e}else{h[a>>2]=r+4;r=h[r>>2]|0}h[n>>2]=r;i=i+1|0;if((i|0)<(t|0))n=n+4|0;else break}}else i=0;while(0);return i|0}function js(e){e=e|0;return-1}function Ys(e){e=e|0;var i=0;if(($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)==-1)e=-1;else{i=e+12|0;e=h[i>>2]|0;h[i>>2]=e+4;e=h[e>>2]|0}return e|0}function Vs(e,i){e=e|0;i=i|0;return-1}function qs(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;a=e+24|0;o=e+28|0;e:do if((t|0)>0){n=i;i=0;while(1){r=h[a>>2]|0;if(r>>>0>=(h[o>>2]|0)>>>0){if((r_[h[(h[e>>2]|0)+52>>2]&63](e,h[n>>2]|0)|0)==-1)break e}else{s=h[n>>2]|0;h[a>>2]=r+4;h[r>>2]=s}i=i+1|0;if((i|0)<(t|0))n=n+4|0;else break}}else i=0;while(0);return i|0}function Ws(e,i){e=e|0;i=i|0;return-1}function Gs(e){e=e|0;ls(e+8|0);return}function Xs(e){e=e|0;ls(e+((h[(h[e>>2]|0)+-12>>2]|0)+8)|0);return}function Ks(e){e=e|0;ls(e+8|0);$m(e);return}function $s(e){e=e|0;Ks(e+(h[(h[e>>2]|0)+-12>>2]|0)|0);return}function Js(e){e=e|0;var i=0,t=0,r=0,n=0;r=k;k=k+16|0;t=r;e:do if(h[e+((h[(h[e>>2]|0)+-12>>2]|0)+24)>>2]|0){x=0;ke(50,t|0,e|0);i=x;x=0;i:do if(i&1)i=Je(0)|0;else{do if(c[t>>0]|0){i=h[e+((h[(h[e>>2]|0)+-12>>2]|0)+24)>>2]|0;x=0;i=ye(h[(h[i>>2]|0)+24>>2]|0,i|0)|0;n=x;x=0;if(!(n&1)){if((i|0)!=-1)break;n=h[(h[e>>2]|0)+-12>>2]|0;x=0;ke(51,e+n|0,h[e+(n+16)>>2]|1|0);n=x;x=0;if(!(n&1))break}i=Je(0)|0;cf(t);break i}while(0);cf(t);break e}while(0);ai(i|0)|0;x=0;ge(157,e+(h[(h[e>>2]|0)+-12>>2]|0)|0);n=x;x=0;if(!(n&1)){si();break}i=Je()|0;x=0;Oe(3);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}else fi(i|0)}while(0);k=r;return e|0}function Qs(e){e=e|0;var i=0;i=e+16|0;h[i>>2]=h[i>>2]|1;if(!(h[e+20>>2]&1))return;else Mi()}function Zs(e){e=e|0;ls(e+8|0);return}function ef(e){e=e|0;ls(e+((h[(h[e>>2]|0)+-12>>2]|0)+8)|0);return}function tf(e){e=e|0;ls(e+8|0);$m(e);return}function rf(e){e=e|0;tf(e+(h[(h[e>>2]|0)+-12>>2]|0)|0);return}function nf(e){e=e|0;var i=0,t=0,r=0,n=0;r=k;k=k+16|0;t=r;e:do if(h[e+((h[(h[e>>2]|0)+-12>>2]|0)+24)>>2]|0){x=0;ke(68,t|0,e|0);i=x;x=0;i:do if(i&1)i=Je(0)|0;else{do if(c[t>>0]|0){i=h[e+((h[(h[e>>2]|0)+-12>>2]|0)+24)>>2]|0;x=0;i=ye(h[(h[i>>2]|0)+24>>2]|0,i|0)|0;n=x;x=0;if(!(n&1)){if((i|0)!=-1)break;n=h[(h[e>>2]|0)+-12>>2]|0;x=0;ke(51,e+n|0,h[e+(n+16)>>2]|1|0);n=x;x=0;if(!(n&1))break}i=Je(0)|0;gf(t);break i}while(0);gf(t);break e}while(0);ai(i|0)|0;x=0;ge(157,e+(h[(h[e>>2]|0)+-12>>2]|0)|0);n=x;x=0;if(!(n&1)){si();break}i=Je()|0;x=0;Oe(3);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}else fi(i|0)}while(0);k=r;return e|0}function af(e,i){e=e|0;i=i|0;return}function of(e){e=e|0;ls(e+4|0);return}function sf(e){e=e|0;ls(e+((h[(h[e>>2]|0)+-12>>2]|0)+4)|0);return}function ff(e){e=e|0;ls(e+4|0);$m(e);return}function lf(e){e=e|0;ff(e+(h[(h[e>>2]|0)+-12>>2]|0)|0);return}function uf(e,i){e=e|0;i=i|0;var t=0;c[e>>0]=0;h[e+4>>2]=i;t=h[(h[i>>2]|0)+-12>>2]|0;if(!(h[i+(t+16)>>2]|0)){t=h[i+(t+72)>>2]|0;if(t)Js(t)|0;c[e>>0]=1}return}function cf(e){e=e|0;var i=0,t=0;e=e+4|0;t=h[e>>2]|0;i=h[(h[t>>2]|0)+-12>>2]|0;do if((((h[t+(i+24)>>2]|0)!=0?(h[t+(i+16)>>2]|0)==0:0)?(h[t+(i+4)>>2]&8192|0)!=0:0)?!(li()|0):0){i=h[e>>2]|0;i=h[i+((h[(h[i>>2]|0)+-12>>2]|0)+24)>>2]|0;x=0;i=ye(h[(h[i>>2]|0)+24>>2]|0,i|0)|0;t=x;x=0;if(!(t&1)){if((i|0)!=-1)break;i=h[e>>2]|0;t=h[(h[i>>2]|0)+-12>>2]|0;x=0;ke(51,i+t|0,h[i+(t+16)>>2]|1|0);t=x;x=0;if(!(t&1))break}t=Je(0)|0;ai(t|0)|0;x=0;Oe(3);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}}while(0);return}function df(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;m=k;k=k+32|0;s=m+20|0;f=m+16|0;u=m+8|0;t=m;x=0;ke(50,u|0,e|0);l=x;x=0;e:do if(l&1){t=Je(0)|0;r=e;n=e;d=19}else{do if(c[u>>0]|0){l=hs(e+(h[(h[e>>2]|0)+-12>>2]|0)|0)|0;h[t>>2]=l;x=0;l=Ae(26,t|0,42924)|0;o=x;x=0;if(o&1){d=Je(0)|0;Bd(t);t=d}else{Bd(t);n=h[(h[e>>2]|0)+-12>>2]|0;o=h[e+(n+24)>>2]|0;r=e+n|0;n=e+(n+76)|0;t=h[n>>2]|0;do if((t|0)==-1){t=hs(r)|0;h[s>>2]=t;x=0;t=Ae(26,s|0,43752)|0;b=x;x=0;if(!(b&1)?(x=0,a=Ae(h[(h[t>>2]|0)+28>>2]|0,t|0,32)|0,b=x,x=0,!(b&1)):0){Bd(s);t=a<<24>>24;h[n>>2]=t;d=10;break}t=Je(0)|0;Bd(s)}else d=10;while(0);if((d|0)==10){b=h[(h[l>>2]|0)+16>>2]|0;h[f>>2]=o;x=0;h[s>>2]=h[f>>2];t=Pe(b|0,l|0,s|0,r|0,t&255|0,i|0)|0;b=x;x=0;if(!(b&1)){if(t)break;b=h[(h[e>>2]|0)+-12>>2]|0;x=0;ke(51,e+b|0,h[e+(b+16)>>2]|5|0);b=x;x=0;if(!(b&1))break}t=Je(0)|0}}cf(u);r=e;n=e;d=19;break e}while(0);cf(u)}while(0);do if((d|0)==19){ai(t|0)|0;x=0;ge(157,r+(h[(h[n>>2]|0)+-12>>2]|0)|0);b=x;x=0;if(!(b&1)){si();break}t=Je()|0;x=0;Oe(3);b=x;x=0;if(b&1){b=Je(0)|0;Wi(b)}else fi(t|0)}while(0);k=m;return e|0}function hf(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;m=k;k=k+32|0;s=m+20|0;f=m+16|0;u=m+8|0;t=m;x=0;ke(50,u|0,e|0);l=x;x=0;e:do if(l&1){t=Je(0)|0;r=e;n=e;d=19}else{do if(c[u>>0]|0){l=hs(e+(h[(h[e>>2]|0)+-12>>2]|0)|0)|0;h[t>>2]=l;x=0;l=Ae(26,t|0,42924)|0;o=x;x=0;if(o&1){d=Je(0)|0;Bd(t);t=d}else{Bd(t);n=h[(h[e>>2]|0)+-12>>2]|0;o=h[e+(n+24)>>2]|0;r=e+n|0;n=e+(n+76)|0;t=h[n>>2]|0;do if((t|0)==-1){t=hs(r)|0;h[s>>2]=t;x=0;t=Ae(26,s|0,43752)|0;b=x;x=0;if(!(b&1)?(x=0,a=Ae(h[(h[t>>2]|0)+28>>2]|0,t|0,32)|0,b=x,x=0,!(b&1)):0){Bd(s);t=a<<24>>24;h[n>>2]=t;d=10;break}t=Je(0)|0;Bd(s)}else d=10;while(0);if((d|0)==10){b=h[(h[l>>2]|0)+24>>2]|0;h[f>>2]=o;x=0;h[s>>2]=h[f>>2];t=Pe(b|0,l|0,s|0,r|0,t&255|0,i|0)|0;b=x;x=0;if(!(b&1)){if(t)break;b=h[(h[e>>2]|0)+-12>>2]|0;x=0;ke(51,e+b|0,h[e+(b+16)>>2]|5|0);b=x;x=0;if(!(b&1))break}t=Je(0)|0}}cf(u);r=e;n=e;d=19;break e}while(0);cf(u)}while(0);do if((d|0)==19){ai(t|0)|0;x=0;ge(157,r+(h[(h[n>>2]|0)+-12>>2]|0)|0);b=x;x=0;if(!(b&1)){si();break}t=Je()|0;x=0;Oe(3);b=x;x=0;if(b&1){b=Je(0)|0;Wi(b)}else fi(t|0)}while(0);k=m;return e|0}function mf(e){e=e|0;ls(e+4|0);return}function bf(e){e=e|0;ls(e+((h[(h[e>>2]|0)+-12>>2]|0)+4)|0);return}function vf(e){e=e|0;ls(e+4|0);$m(e);return}function wf(e){e=e|0;vf(e+(h[(h[e>>2]|0)+-12>>2]|0)|0);return}function pf(e,i){e=e|0;i=i|0;var t=0;c[e>>0]=0;h[e+4>>2]=i;t=h[(h[i>>2]|0)+-12>>2]|0;if(!(h[i+(t+16)>>2]|0)){t=h[i+(t+72)>>2]|0;if(t)nf(t)|0;c[e>>0]=1}return}function gf(e){e=e|0;var i=0,t=0;e=e+4|0;t=h[e>>2]|0;i=h[(h[t>>2]|0)+-12>>2]|0;do if((((h[t+(i+24)>>2]|0)!=0?(h[t+(i+16)>>2]|0)==0:0)?(h[t+(i+4)>>2]&8192|0)!=0:0)?!(li()|0):0){i=h[e>>2]|0;i=h[i+((h[(h[i>>2]|0)+-12>>2]|0)+24)>>2]|0;x=0;i=ye(h[(h[i>>2]|0)+24>>2]|0,i|0)|0;t=x;x=0;if(!(t&1)){if((i|0)!=-1)break;i=h[e>>2]|0;t=h[(h[i>>2]|0)+-12>>2]|0;x=0;ke(51,i+t|0,h[i+(t+16)>>2]|1|0);t=x;x=0;if(!(t&1))break}t=Je(0)|0;ai(t|0)|0;x=0;Oe(3);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}}while(0);return}function kf(e){e=e|0;return 55909}function _f(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)!=1&(t|0)<257)Eo(e,i,t);else No(e,55918,35);return}function yf(){if((c[872]|0)==0?(qe(872)|0)!=0:0){h[10661]=42616;yi(54,42644,C|0)|0;Ze(872)}return 42644}function Tf(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;r=k;k=k+16|0;n=r+8|0;a=r;s=t;o=h[s+4>>2]|0;t=a;h[t>>2]=h[s>>2];h[t+4>>2]=o;h[n>>2]=h[a>>2];h[n+4>>2]=h[a+4>>2];Ao(e,n,i);h[e>>2]=42580;k=r;return}function Mf(e){e=e|0;Lo(e);return}function Cf(e){e=e|0;Lo(e);$m(e);return}function xf(e){e=e|0;ls(e);$m(e);return}function Ef(e){e=e|0;$m(e);return}function Sf(e){e=e|0;return}function Af(e){e=e|0;return}function Pf(e){e=e|0;$m(e);return}function If(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;e:do if((r|0)==(n|0))o=6;else while(1){if((i|0)==(t|0)){i=-1;break e}e=c[i>>0]|0;a=c[r>>0]|0;if(e<<24>>24<a<<24>>24){i=-1;break e}if(a<<24>>24<e<<24>>24){i=1;break e}i=i+1|0;r=r+1|0;if((r|0)==(n|0)){o=6;break}}while(0);if((o|0)==6)i=(i|0)!=(t|0)&1;return i|0}function Lf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;os(e,t,r);return}function Df(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if((i|0)==(t|0))e=0;else{e=0;do{e=(c[i>>0]|0)+(e<<4)|0;r=e&-268435456;e=(r>>>24|r)^e;i=i+1|0}while((i|0)!=(t|0))}return e|0}function Rf(e){e=e|0;return}function Of(e){e=e|0;$m(e);return}function Bf(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;e:do if((r|0)==(n|0))o=6;else while(1){if((i|0)==(t|0)){i=-1;break e}e=h[i>>2]|0;a=h[r>>2]|0;if((e|0)<(a|0)){i=-1;break e}if((a|0)<(e|0)){i=1;break e}i=i+4|0;r=r+4|0;if((r|0)==(n|0)){o=6;break}}while(0);if((o|0)==6)i=(i|0)!=(t|0)&1;return i|0}function Nf(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;ss(e,t,r);return}function Ff(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if((i|0)==(t|0))e=0;else{e=0;do{e=(h[i>>2]|0)+(e<<4)|0;r=e&-268435456;e=(r>>>24|r)^e;i=i+4|0}while((i|0)!=(t|0))}return e|0}function Uf(e){e=e|0;return}function Hf(e){e=e|0;$m(e);return}function zf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;v=k;k=k+64|0;m=v+56|0;o=v+52|0;u=v+48|0;s=v+44|0;f=v+40|0;l=v+36|0;d=v+32|0;w=v+8|0;b=v;e:do if(!(h[r+4>>2]&1)){h[u>>2]=-1;w=h[(h[e>>2]|0)+16>>2]|0;h[s>>2]=h[i>>2];h[f>>2]=h[t>>2];h[o>>2]=h[s>>2];h[m>>2]=h[f>>2];o=Kk[w&63](e,o,m,r,n,u)|0;h[i>>2]=o;switch(h[u>>2]|0){case 0:{c[a>>0]=0;break e}case 1:{c[a>>0]=1;break e}default:{c[a>>0]=1;h[n>>2]=4;break e}}}else{o=hs(r)|0;h[l>>2]=o;x=0;e=Ae(26,l|0,43752)|0;u=x;x=0;do if(!(u&1)){ko(o)|0;o=hs(r)|0;h[d>>2]=o;x=0;f=Ae(26,d|0,43892)|0;d=x;x=0;if(d&1){w=Je()|0;ko(o)|0;o=w;break}ko(o)|0;x=0;ke(h[(h[f>>2]|0)+24>>2]|0,w|0,f|0);d=x;x=0;if(!(d&1)){s=w+12|0;x=0;ke(h[(h[f>>2]|0)+28>>2]|0,s|0,f|0);d=x;x=0;if(!(d&1)){h[b>>2]=h[t>>2];x=0;h[m>>2]=h[b>>2];o=ve(7,i|0,m|0,w|0,w+24|0,e|0,n|0,1)|0;n=x;x=0;if(n&1){o=Je()|0;Uo(w+12|0);Uo(w);break}else{c[a>>0]=(o|0)==(w|0)&1;o=h[i>>2]|0;Uo(w+12|0);Uo(w);break e}}}else s=w;o=Je()|0;f=z;if((w|0)!=(s|0))do{s=s+-12|0;Uo(s)}while((s|0)!=(w|0))}else{w=Je()|0;ko(o)|0;o=w}while(0);fi(o|0)}while(0);k=v;return o|0}function jf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Sm(e,f,s,r,n,a)|0;k=o;return e|0}function Yf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Am(e,f,s,r,n,a)|0;k=o;return e|0}function Vf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Pm(e,f,s,r,n,a)|0;k=o;return e|0}function qf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Im(e,f,s,r,n,a)|0;k=o;return e|0}function Wf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Lm(e,f,s,r,n,a)|0;k=o;return e|0}function Gf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Dm(e,f,s,r,n,a)|0;k=o;return e|0}function Xf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Rm(e,f,s,r,n,a)|0;k=o;return e|0}function Kf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Om(e,f,s,r,n,a)|0;k=o;return e|0}function $f(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Bm(e,f,s,r,n,a)|0;k=o;return e|0}function Jf(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0;S=k;k=k+240|0;y=S;v=S+208|0;P=S+32|0;e=S+28|0;A=S+16|0;_=S+12|0;p=S+48|0;g=S+8|0;w=S+4|0;h[P>>2]=0;h[P+4>>2]=0;h[P+8>>2]=0;x=0;r=ye(67,r|0)|0;b=x;x=0;do if(b&1)e=Je()|0;else{h[e>>2]=r;x=0;e=Ae(26,e|0,43752)|0;b=x;x=0;if(!(b&1)?(x=0,De(h[(h[e>>2]|0)+32>>2]|0,e|0,55954,55980,v|0)|0,b=x,x=0,!(b&1)):0){ko(r)|0;h[A>>2]=0;h[A+4>>2]=0;h[A+8>>2]=0;if(!(c[A>>0]&1))e=10;else e=(h[A>>2]&-2)+-1|0;x=0;Re(6,A|0,e|0,0);b=x;x=0;e:do if(!(b&1)){d=A+8|0;b=A+1|0;r=(c[A>>0]&1)==0?b:h[d>>2]|0;h[_>>2]=r;h[g>>2]=p;h[w>>2]=0;u=A+4|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){I=29;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;o=h[t>>2]|0;do if(o){if((h[o+12>>2]|0)!=(h[o+16>>2]|0))if(s)break;else break i;x=0;f=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){I=29;break i}if((f|0)!=-1)if(s)break;else break i;else{h[t>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(s){o=0;break}else o=0}s=c[A>>0]|0;s=(s&1)==0?(s&255)>>>1:h[u>>2]|0;if((h[_>>2]|0)==(r+s|0)){x=0;Re(6,A|0,s<<1|0,0);l=x;x=0;if(l&1){I=29;break}if(!(c[A>>0]&1))r=10;else r=(h[A>>2]&-2)+-1|0;x=0;Re(6,A|0,r|0,0);l=x;x=0;if(l&1){I=29;break}r=(c[A>>0]&1)==0?b:h[d>>2]|0;h[_>>2]=r+s}f=e+12|0;s=h[f>>2]|0;l=e+16|0;if((s|0)==(h[l>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;L=x;x=0;if(L&1){I=29;break}}else s=m[s>>0]|0;if(Qf(s&255,16,r,_,w,0,P,p,g,v)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;L=x;x=0;if(L&1){I=29;break}else continue}else{h[f>>2]=o+1;continue}}if((I|0)==29){e=Je()|0;break}x=0;Re(6,A|0,(h[_>>2]|0)-r|0,0);L=x;x=0;if((!(L&1)?(T=c[A>>0]|0,M=h[d>>2]|0,x=0,C=Le(3)|0,L=x,x=0,!(L&1)):0)?(x=0,h[y>>2]=a,E=De(6,((T&1)==0?b:M)|0,C|0,57338,y|0)|0,L=x,x=0,!(L&1)):0){if((E|0)!=1)h[n>>2]=4;if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;L=x;x=0;if(L&1){I=30;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;L=x;x=0;if(L&1){I=30;break e}if((e|0)==-1){h[t>>2]=0;I=55;break}}if(!r)I=56}else I=55;while(0);if((I|0)==55?r:0)I=56;if((I|0)==56)h[n>>2]=h[n>>2]|2;L=h[i>>2]|0;Uo(A);Uo(P);k=S;return L|0}else I=30}else I=30;while(0);if((I|0)==30)e=Je()|0;Uo(A);break}e=Je()|0;ko(r)|0}while(0);Uo(P);fi(e|0);return 0}function Qf(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;var u=0,d=0,m=0,b=0;m=h[r>>2]|0;b=(m|0)==(t|0);do if(b){u=(c[l+24>>0]|0)==e<<24>>24;if(!u?(c[l+25>>0]|0)!=e<<24>>24:0){d=5;break}h[r>>2]=t+1;c[t>>0]=u?43:45;h[n>>2]=0;u=0}else d=5;while(0);e:do if((d|0)==5){d=c[o>>0]|0;if(e<<24>>24==a<<24>>24?(((d&1)==0?(d&255)>>>1:h[o+4>>2]|0)|0)!=0:0){u=h[f>>2]|0;if((u-s|0)>=160){u=0;break}i=h[n>>2]|0;h[f>>2]=u+4;h[u>>2]=i;h[n>>2]=0;u=0;break}o=l+26|0;u=l;while(1){if((c[u>>0]|0)==e<<24>>24)break;u=u+1|0;if((u|0)==(o|0)){u=o;break}}u=u-l|0;if((u|0)>23)u=-1;else{switch(i|0){case 10:case 8:{if((u|0)>=(i|0)){u=-1;break e}break}case 16:{if((u|0)>=22){if(b){u=-1;break e}if((m-t|0)>=3){u=-1;break e}if((c[m+-1>>0]|0)!=48){u=-1;break e}h[n>>2]=0;u=c[55954+u>>0]|0;h[r>>2]=m+1;c[m>>0]=u;u=0;break e}break}default:{}}u=c[55954+u>>0]|0;h[r>>2]=m+1;c[m>>0]=u;h[n>>2]=(h[n>>2]|0)+1;u=0}}while(0);return u|0}function Zf(){var e=0,i=0;do if((c[1792]|0)==0?(qe(1792)|0)!=0:0){x=0;e=Me(31,2147483647,57341,0)|0;i=x;x=0;if(i&1){i=Je()|0;Pi(1792);fi(i|0)}else{h[11079]=e;Ze(1792);break}}while(0);return h[11079]|0}function el(e){e=e|0;return}function il(e){e=e|0;$m(e);return}function tl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;v=k;k=k+64|0;m=v+56|0;o=v+52|0;u=v+48|0;s=v+44|0;f=v+40|0;l=v+36|0;d=v+32|0;w=v+8|0;b=v;e:do if(!(h[r+4>>2]&1)){h[u>>2]=-1;w=h[(h[e>>2]|0)+16>>2]|0;h[s>>2]=h[i>>2];h[f>>2]=h[t>>2];h[o>>2]=h[s>>2];h[m>>2]=h[f>>2];o=Kk[w&63](e,o,m,r,n,u)|0;h[i>>2]=o;switch(h[u>>2]|0){case 0:{c[a>>0]=0;break e}case 1:{c[a>>0]=1;break e}default:{c[a>>0]=1;h[n>>2]=4;break e}}}else{o=hs(r)|0;h[l>>2]=o;x=0;e=Ae(26,l|0,43744)|0;u=x;x=0;do if(!(u&1)){ko(o)|0;o=hs(r)|0;h[d>>2]=o;x=0;f=Ae(26,d|0,43900)|0;d=x;x=0;if(d&1){w=Je()|0;ko(o)|0;o=w;break}ko(o)|0;x=0;ke(h[(h[f>>2]|0)+24>>2]|0,w|0,f|0);d=x;x=0;if(!(d&1)){s=w+12|0;x=0;ke(h[(h[f>>2]|0)+28>>2]|0,s|0,f|0);d=x;x=0;if(!(d&1)){h[b>>2]=h[t>>2];x=0;h[m>>2]=h[b>>2];o=ve(8,i|0,m|0,w|0,w+24|0,e|0,n|0,1)|0;n=x;x=0;if(n&1){o=Je()|0;Zo(w+12|0);Zo(w);break}else{c[a>>0]=(o|0)==(w|0)&1;o=h[i>>2]|0;Zo(w+12|0);Zo(w);break e}}}else s=w;o=Je()|0;f=z;if((w|0)!=(s|0))do{s=s+-12|0;Zo(s)}while((s|0)!=(w|0))}else{w=Je()|0;ko(o)|0;o=w}while(0);fi(o|0)}while(0);k=v;return o|0}function rl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Um(e,f,s,r,n,a)|0;k=o;return e|0}function nl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Hm(e,f,s,r,n,a)|0;k=o;return e|0}function al(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=zm(e,f,s,r,n,a)|0;k=o;return e|0}function ol(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=op(e,f,s,r,n,a)|0;k=o;return e|0}function sl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=sp(e,f,s,r,n,a)|0;k=o;return e|0}function fl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=fp(e,f,s,r,n,a)|0;k=o;return e|0}function ll(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=lp(e,f,s,r,n,a)|0;k=o;return e|0}function ul(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=up(e,f,s,r,n,a)|0;k=o;return e|0}function cl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=cp(e,f,s,r,n,a)|0;k=o;return e|0}function dl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0;E=k;k=k+320|0;_=E;b=E+208|0;A=E+32|0;e=E+28|0;S=E+16|0;g=E+12|0;w=E+48|0;p=E+8|0;v=E+4|0;h[A>>2]=0;h[A+4>>2]=0;h[A+8>>2]=0;x=0;r=ye(67,r|0)|0;m=x;x=0;do if(m&1)e=Je()|0;else{h[e>>2]=r;x=0;e=Ae(26,e|0,43744)|0;m=x;x=0;if(!(m&1)?(x=0,De(h[(h[e>>2]|0)+48>>2]|0,e|0,55954,55980,b|0)|0,m=x,x=0,!(m&1)):0){ko(r)|0;h[S>>2]=0;h[S+4>>2]=0;h[S+8>>2]=0;if(!(c[S>>0]&1))e=10;else e=(h[S>>2]&-2)+-1|0;x=0;Re(6,S|0,e|0,0);m=x;x=0;e:do if(!(m&1)){d=S+8|0;m=S+1|0;e=(c[S>>0]&1)==0?m:h[d>>2]|0;h[g>>2]=e;h[p>>2]=w;h[v>>2]=0;u=S+4|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){P=30;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;r=0;s=1}else{r=o;s=0}}else{r=0;s=1}f=h[t>>2]|0;do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0)){x=0;o=ye(h[(h[f>>2]|0)+36>>2]|0,f|0)|0;l=x;x=0;if(l&1){P=30;break i}}else o=h[o>>2]|0;if((o|0)!=-1)if(s){o=f;break}else{o=f;break i}else{h[t>>2]=0;P=20;break}}else P=20;while(0);if((P|0)==20){P=0;if(s){o=0;break}else o=0}s=c[S>>0]|0;s=(s&1)==0?(s&255)>>>1:h[u>>2]|0;if((h[g>>2]|0)==(e+s|0)){x=0;Re(6,S|0,s<<1|0,0);l=x;x=0;if(l&1){P=30;break}if(!(c[S>>0]&1))e=10;else e=(h[S>>2]&-2)+-1|0;x=0;Re(6,S|0,e|0,0);l=x;x=0;if(l&1){P=30;break}e=(c[S>>0]&1)==0?m:h[d>>2]|0;h[g>>2]=e+s}f=r+12|0;s=h[f>>2]|0;l=r+16|0;if((s|0)==(h[l>>2]|0)){x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;I=x;x=0;if(I&1){P=30;break}}else s=h[s>>2]|0;if(hl(s,16,e,g,v,0,A,w,p,b)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;I=x;x=0;if(I&1){P=30;break}else{o=r;continue}}else{h[f>>2]=o+4;o=r;continue}}if((P|0)==30){e=Je()|0;break}x=0;Re(6,S|0,(h[g>>2]|0)-e|0,0);I=x;x=0;if((!(I&1)?(y=c[S>>0]|0,T=h[d>>2]|0,x=0,M=Le(3)|0,I=x,x=0,!(I&1)):0)?(x=0,h[_>>2]=a,C=De(6,((y&1)==0?m:T)|0,M|0,57338,_|0)|0,I=x,x=0,!(I&1)):0){if((C|0)!=1)h[n>>2]=4;if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;I=x;x=0;if(I&1){P=31;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;I=x;x=0;if(I&1){P=31;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{P=59;break}else{h[t>>2]=0;P=57;break}}else P=57;while(0);if((P|0)==57?r:0)P=59;if((P|0)==59)h[n>>2]=h[n>>2]|2;I=h[i>>2]|0;Uo(S);Uo(A);k=E;return I|0}else P=31}else P=31;while(0);if((P|0)==31)e=Je()|0;Uo(S);break}e=Je()|0;ko(r)|0}while(0);Uo(A);fi(e|0);return 0}function hl(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;var u=0,d=0,m=0,b=0;m=h[r>>2]|0;b=(m|0)==(t|0);do if(b){u=(h[l+96>>2]|0)==(e|0);if(!u?(h[l+100>>2]|0)!=(e|0):0){d=5;break}h[r>>2]=t+1;c[t>>0]=u?43:45;h[n>>2]=0;u=0}else d=5;while(0);e:do if((d|0)==5){d=c[o>>0]|0;if((e|0)==(a|0)?(((d&1)==0?(d&255)>>>1:h[o+4>>2]|0)|0)!=0:0){u=h[f>>2]|0;if((u-s|0)>=160){u=0;break}i=h[n>>2]|0;h[f>>2]=u+4;h[u>>2]=i;h[n>>2]=0;u=0;break}o=l+104|0;u=l;while(1){if((h[u>>2]|0)==(e|0))break;u=u+4|0;if((u|0)==(o|0)){u=o;break}}u=u-l|0;o=u>>2;if((u|0)>92)u=-1;else{switch(i|0){case 10:case 8:{if((o|0)>=(i|0)){u=-1;break e}break}case 16:{if((u|0)>=88){if(b){u=-1;break e}if((m-t|0)>=3){u=-1;break e}if((c[m+-1>>0]|0)!=48){u=-1;break e}h[n>>2]=0;u=c[55954+o>>0]|0;h[r>>2]=m+1;c[m>>0]=u;u=0;break e}break}default:{}}u=c[55954+o>>0]|0;h[r>>2]=m+1;c[m>>0]=u;h[n>>2]=(h[n>>2]|0)+1;u=0}}while(0);return u|0}function ml(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;f=k;k=k+16|0;s=f;i=hs(i)|0;h[s>>2]=i;x=0;n=Ae(26,s|0,43752)|0;l=x;x=0;if((((!(l&1)?(x=0,De(h[(h[n>>2]|0)+32>>2]|0,n|0,55954,55980,t|0)|0,l=x,x=0,!(l&1)):0)?(x=0,o=Ae(26,s|0,43892)|0,l=x,x=0,!(l&1)):0)?(x=0,a=ye(h[(h[o>>2]|0)+16>>2]|0,o|0)|0,l=x,x=0,!(l&1)):0)?(c[r>>0]=a,x=0,ke(h[(h[o>>2]|0)+20>>2]|0,e|0,o|0),l=x,x=0,!(l&1)):0){ko(i)|0;k=f;return}l=Je()|0;ko(i)|0;fi(l|0)}function bl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0;u=k;k=k+16|0;l=u;i=hs(i)|0;h[l>>2]=i;x=0;a=Ae(26,l|0,43752)|0;d=x;x=0;if(((((!(d&1)?(x=0,De(h[(h[a>>2]|0)+32>>2]|0,a|0,55954,55986,t|0)|0,d=x,x=0,!(d&1)):0)?(x=0,f=Ae(26,l|0,43892)|0,d=x,x=0,!(d&1)):0)?(x=0,o=ye(h[(h[f>>2]|0)+12>>2]|0,f|0)|0,d=x,x=0,!(d&1)):0)?(c[r>>0]=o,x=0,s=ye(h[(h[f>>2]|0)+16>>2]|0,f|0)|0,d=x,x=0,!(d&1)):0)?(c[n>>0]=s,x=0,ke(h[(h[f>>2]|0)+20>>2]|0,e|0,f|0),d=x,x=0,!(d&1)):0){ko(i)|0;k=u;return}d=Je()|0;ko(i)|0;fi(d|0)}function vl(e,i,t,r,n,a,o,s,f,l,u,d){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;d=d|0;var b=0,v=0;e:do if(e<<24>>24==a<<24>>24)if(c[i>>0]|0){c[i>>0]=0;t=h[n>>2]|0;h[n>>2]=t+1;c[t>>0]=46;t=c[s>>0]|0;if((((t&1)==0?(t&255)>>>1:h[s+4>>2]|0)|0)!=0?(b=h[l>>2]|0,(b-f|0)<160):0){f=h[u>>2]|0;h[l>>2]=b+4;h[b>>2]=f;b=0}else b=0}else b=-1;else{if(e<<24>>24==o<<24>>24?(o=c[s>>0]|0,(((o&1)==0?(o&255)>>>1:h[s+4>>2]|0)|0)!=0):0){if(!(c[i>>0]|0)){b=-1;break}b=h[l>>2]|0;if((b-f|0)>=160){b=0;break}f=h[u>>2]|0;h[l>>2]=b+4;h[b>>2]=f;h[u>>2]=0;b=0;break}a=d+32|0;b=d;while(1){if((c[b>>0]|0)==e<<24>>24)break;b=b+1|0;if((b|0)==(a|0)){b=a;break}}a=b-d|0;if((a|0)>31)b=-1;else{o=c[55954+a>>0]|0;switch(a|0){case 24:case 25:{b=h[n>>2]|0;if((b|0)!=(r|0)?(m[b+-1>>0]&95|0)!=(m[t>>0]&127|0):0){b=-1;break e}h[n>>2]=b+1;c[b>>0]=o;b=0;break e}case 23:case 22:{c[t>>0]=80;b=h[n>>2]|0;h[n>>2]=b+1;c[b>>0]=o;b=0;break e}default:{b=o&95;if((((b|0)==(c[t>>0]|0)?(c[t>>0]=b|128,(c[i>>0]|0)!=0):0)?(c[i>>0]=0,t=c[s>>0]|0,(((t&1)==0?(t&255)>>>1:h[s+4>>2]|0)|0)!=0):0)?(v=h[l>>2]|0,(v-f|0)<160):0){f=h[u>>2]|0;h[l>>2]=v+4;h[v>>2]=f}l=h[n>>2]|0;h[n>>2]=l+1;c[l>>0]=o;if((a|0)>21){b=0;break e}h[u>>2]=(h[u>>2]|0)+1;b=0;break e}}}}while(0);return b|0}function wl(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;f=k;k=k+16|0;s=f;i=hs(i)|0;h[s>>2]=i;x=0;n=Ae(26,s|0,43744)|0;l=x;x=0;if((((!(l&1)?(x=0,De(h[(h[n>>2]|0)+48>>2]|0,n|0,55954,55980,t|0)|0,l=x,x=0,!(l&1)):0)?(x=0,o=Ae(26,s|0,43900)|0,l=x,x=0,!(l&1)):0)?(x=0,a=ye(h[(h[o>>2]|0)+16>>2]|0,o|0)|0,l=x,x=0,!(l&1)):0)?(h[r>>2]=a,x=0,ke(h[(h[o>>2]|0)+20>>2]|0,e|0,o|0),l=x,x=0,!(l&1)):0){ko(i)|0;k=f;return}l=Je()|0;ko(i)|0;fi(l|0)}function pl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0;u=k;k=k+16|0;l=u;i=hs(i)|0;h[l>>2]=i;x=0;a=Ae(26,l|0,43744)|0;c=x;x=0;if(((((!(c&1)?(x=0,De(h[(h[a>>2]|0)+48>>2]|0,a|0,55954,55986,t|0)|0,c=x,x=0,!(c&1)):0)?(x=0,f=Ae(26,l|0,43900)|0,c=x,x=0,!(c&1)):0)?(x=0,o=ye(h[(h[f>>2]|0)+12>>2]|0,f|0)|0,c=x,x=0,!(c&1)):0)?(h[r>>2]=o,x=0,s=ye(h[(h[f>>2]|0)+16>>2]|0,f|0)|0,c=x,x=0,!(c&1)):0)?(h[n>>2]=s,x=0,ke(h[(h[f>>2]|0)+20>>2]|0,e|0,f|0),c=x,x=0,!(c&1)):0){ko(i)|0;k=u;return}c=Je()|0;ko(i)|0;fi(c|0)}function gl(e,i,t,r,n,a,o,s,f,l,u,d){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;d=d|0;var b=0,v=0;e:do if((e|0)==(a|0))if(c[i>>0]|0){c[i>>0]=0;t=h[n>>2]|0;h[n>>2]=t+1;c[t>>0]=46;t=c[s>>0]|0;if((((t&1)==0?(t&255)>>>1:h[s+4>>2]|0)|0)!=0?(b=h[l>>2]|0,(b-f|0)<160):0){f=h[u>>2]|0;h[l>>2]=b+4;h[b>>2]=f;b=0}else b=0}else b=-1;else{if((e|0)==(o|0)?(o=c[s>>0]|0,(((o&1)==0?(o&255)>>>1:h[s+4>>2]|0)|0)!=0):0){if(!(c[i>>0]|0)){b=-1;break}b=h[l>>2]|0;if((b-f|0)>=160){b=0;break}f=h[u>>2]|0;h[l>>2]=b+4;h[b>>2]=f;h[u>>2]=0;b=0;break}a=d+128|0;b=d;while(1){if((h[b>>2]|0)==(e|0))break;b=b+4|0;if((b|0)==(a|0)){b=a;break}}a=b-d|0;b=a>>2;if((a|0)<=124){o=c[55954+b>>0]|0;switch(b|0){case 24:case 25:{b=h[n>>2]|0;if((b|0)!=(r|0)?(m[b+-1>>0]&95|0)!=(m[t>>0]&127|0):0){b=-1;break e}h[n>>2]=b+1;c[b>>0]=o;b=0;break e}case 23:case 22:{c[t>>0]=80;break}default:{b=o&95;if((((b|0)==(c[t>>0]|0)?(c[t>>0]=b|128,(c[i>>0]|0)!=0):0)?(c[i>>0]=0,t=c[s>>0]|0,(((t&1)==0?(t&255)>>>1:h[s+4>>2]|0)|0)!=0):0)?(v=h[l>>2]|0,(v-f|0)<160):0){f=h[u>>2]|0;h[l>>2]=v+4;h[v>>2]=f}}}l=h[n>>2]|0;h[n>>2]=l+1;c[l>>0]=o;if((a|0)>84)b=0;else{h[u>>2]=(h[u>>2]|0)+1;b=0}}else b=-1}while(0);return b|0}function kl(e){e=e|0;return}function _l(e){e=e|0;$m(e);return}function yl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+32|0;a=u+20|0;o=u+16|0;s=u+12|0;l=u;e:do if(!(h[t+4>>2]&1)){l=h[(h[e>>2]|0)+24>>2]|0;h[o>>2]=h[i>>2];h[a>>2]=h[o>>2];a=n_[l&31](e,a,t,r,n&1)|0;
}else{a=hs(t)|0;h[s>>2]=a;x=0;o=Ae(26,s|0,43892)|0;f=x;x=0;i:do if(f&1){u=Je()|0;ko(a)|0;a=u}else{ko(a)|0;a=h[o>>2]|0;if(n)Xk[h[a+24>>2]&127](l,o);else Xk[h[a+28>>2]&127](l,o);e=c[l>>0]|0;f=(e&1)==0;a=l+1|0;n=l+8|0;s=f?a:l+1|0;a=f?a:h[l+8>>2]|0;f=l+4|0;t=(e&1)==0;t:do if((a|0)!=((t?s:h[n>>2]|0)+(t?(e&255)>>>1:h[f>>2]|0)|0)){r:while(1){o=c[a>>0]|0;r=h[i>>2]|0;do if(r){t=r+24|0;e=h[t>>2]|0;if((e|0)!=(h[r+28>>2]|0)){h[t>>2]=e+1;c[e>>0]=o;break}x=0;o=Ae(h[(h[r>>2]|0)+52>>2]|0,r|0,o&255|0)|0;e=x;x=0;if(e&1)break r;if((o|0)==-1)h[i>>2]=0}while(0);a=a+1|0;e=c[l>>0]|0;t=(e&1)==0;if((a|0)==((t?s:h[n>>2]|0)+(t?(e&255)>>>1:h[f>>2]|0)|0))break t}a=Je()|0;Uo(l);break i}while(0);a=h[i>>2]|0;Uo(l);break e}while(0);fi(a|0)}while(0);k=u;return a|0}function Tl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+64|0;a=u;m=u+56|0;b=u+44|0;s=u+20|0;l=u+16|0;f=u+12|0;d=u+8|0;o=u+4|0;c[m>>0]=c[57343]|0;c[m+1>>0]=c[57344]|0;c[m+2>>0]=c[57345]|0;c[m+3>>0]=c[57346]|0;c[m+4>>0]=c[57347]|0;c[m+5>>0]=c[57348]|0;Ml(m+1|0,57349,1,h[t+4>>2]|0);e=Zf()|0;h[a>>2]=n;n=b+(dp(b,12,e,m,a)|0)|0;m=Cl(b,n,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(1,b|0,m|0,n|0,s|0,l|0,f|0,d|0);n=x;x=0;if(n&1){b=Je()|0;ko(e)|0;fi(b|0)}else{ko(e)|0;h[o>>2]=h[i>>2];m=h[l>>2]|0;b=h[f>>2]|0;h[a>>2]=h[o>>2];b=Ot(a,s,m,b,t,r)|0;k=u;return b|0}return 0}function Ml(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;if(r&2048){c[e>>0]=43;e=e+1|0}if(r&512){c[e>>0]=35;e=e+1|0}n=c[i>>0]|0;if(n<<24>>24){a=i;while(1){a=a+1|0;i=e+1|0;c[e>>0]=n;n=c[a>>0]|0;if(!(n<<24>>24)){e=i;break}else e=i}}e:do switch(r&74|0){case 64:{c[e>>0]=111;break}case 8:if(!(r&16384)){c[e>>0]=120;break e}else{c[e>>0]=88;break e}default:if(t){c[e>>0]=100;break e}else{c[e>>0]=117;break e}}while(0);return}function Cl(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;e:do switch(h[t+4>>2]&176|0){case 16:{t=c[e>>0]|0;switch(t<<24>>24){case 43:case 45:{e=e+1|0;break e}default:{}}if((i-e|0)>1&t<<24>>24==48){switch(c[e+1>>0]|0){case 88:case 120:break;default:{r=7;break e}}e=e+2|0}else r=7;break}case 32:{e=i;break}default:r=7}while(0);return e|0}function xl(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;g=k;k=k+16|0;_=g;w=Fd(o,43752)|0;l=Fd(o,43892)|0;Xk[h[(h[l>>2]|0)+20>>2]&127](_,l);b=c[_>>0]|0;v=_+4|0;e:do if(!(((b&1)==0?(b&255)>>>1:h[v>>2]|0)|0)){x=0;De(h[(h[w>>2]|0)+32>>2]|0,w|0,e|0,t|0,r|0)|0;p=x;x=0;if(p&1)p=5;else{o=r+(t-e)|0;h[a>>2]=o;p=29}}else{h[a>>2]=r;o=c[e>>0]|0;switch(o<<24>>24){case 43:case 45:{x=0;o=Ae(h[(h[w>>2]|0)+28>>2]|0,w|0,o|0)|0;b=x;x=0;if(b&1){p=5;break e}f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=o;f=e+1|0;break}default:f=e}i:do if((t-f|0)>1?(c[f>>0]|0)==48:0){o=f+1|0;switch(c[o>>0]|0){case 88:case 120:break;default:break i}x=0;s=Ae(h[(h[w>>2]|0)+28>>2]|0,w|0,48)|0;b=x;x=0;if(b&1){p=5;break e}b=h[a>>2]|0;h[a>>2]=b+1;c[b>>0]=s;x=0;o=Ae(h[(h[w>>2]|0)+28>>2]|0,w|0,c[o>>0]|0)|0;b=x;x=0;if(b&1){p=5;break e}b=h[a>>2]|0;h[a>>2]=b+1;c[b>>0]=o;f=f+2|0}while(0);if((f|0)!=(t|0)?(u=t+-1|0,f>>>0<u>>>0):0){s=f;o=u;do{b=c[s>>0]|0;c[s>>0]=c[o>>0]|0;c[o>>0]=b;s=s+1|0;o=o+-1|0}while(s>>>0<o>>>0)}x=0;u=ye(h[(h[l>>2]|0)+16>>2]|0,l|0)|0;b=x;x=0;if(!(b&1)){d=_+8|0;m=_+1|0;i:do if(f>>>0<t>>>0){o=0;s=0;b=f;while(1){l=c[((c[_>>0]&1)==0?m:h[d>>2]|0)+s>>0]|0;if(l<<24>>24!=0&(o|0)==(l<<24>>24|0)){o=h[a>>2]|0;h[a>>2]=o+1;c[o>>0]=u;o=c[_>>0]|0;l=0;s=(s>>>0<(((o&1)==0?(o&255)>>>1:h[v>>2]|0)+-1|0)>>>0&1)+s|0}else l=o;x=0;o=Ae(h[(h[w>>2]|0)+28>>2]|0,w|0,c[b>>0]|0)|0;y=x;x=0;if(y&1)break;y=h[a>>2]|0;h[a>>2]=y+1;c[y>>0]=o;b=b+1|0;if(b>>>0>=t>>>0)break i;else o=l+1|0}o=Je()|0;break e}while(0);s=e;o=r+(f-s)|0;e=h[a>>2]|0;if((o|0)==(e|0)){e=s;p=29}else{e=e+-1|0;if(o>>>0<e>>>0)do{y=c[o>>0]|0;c[o>>0]=c[e>>0]|0;c[e>>0]=y;o=o+1|0;e=e+-1|0}while(o>>>0<e>>>0);e=s;o=h[a>>2]|0;p=29}}else p=5}while(0);if((p|0)==5)o=Je()|0;else if((p|0)==29){h[n>>2]=(i|0)==(t|0)?o:r+(i-e)|0;Uo(_);k=g;return}Uo(_);fi(o|0)}function El(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;c=k;k=k+96|0;o=c+8|0;e=c;m=c+74|0;f=c+32|0;u=c+28|0;l=c+24|0;d=c+20|0;s=c+16|0;b=e;h[b>>2]=37;h[b+4>>2]=0;Ml(e+1|0,57351,1,h[t+4>>2]|0);b=Zf()|0;v=o;h[v>>2]=n;h[v+4>>2]=a;a=m+(dp(m,22,b,e,o)|0)|0;n=Cl(m,a,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(1,m|0,n|0,a|0,f|0,u|0,l|0,d|0);a=x;x=0;if(a&1){v=Je()|0;ko(e)|0;fi(v|0)}else{ko(e)|0;h[s>>2]=h[i>>2];b=h[u>>2]|0;v=h[l>>2]|0;h[o>>2]=h[s>>2];v=Ot(o,f,b,v,t,r)|0;k=c;return v|0}return 0}function Sl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+64|0;a=u;m=u+56|0;b=u+44|0;s=u+20|0;l=u+16|0;f=u+12|0;d=u+8|0;o=u+4|0;c[m>>0]=c[57343]|0;c[m+1>>0]=c[57344]|0;c[m+2>>0]=c[57345]|0;c[m+3>>0]=c[57346]|0;c[m+4>>0]=c[57347]|0;c[m+5>>0]=c[57348]|0;Ml(m+1|0,57349,0,h[t+4>>2]|0);e=Zf()|0;h[a>>2]=n;n=b+(dp(b,12,e,m,a)|0)|0;m=Cl(b,n,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(1,b|0,m|0,n|0,s|0,l|0,f|0,d|0);n=x;x=0;if(n&1){b=Je()|0;ko(e)|0;fi(b|0)}else{ko(e)|0;h[o>>2]=h[i>>2];m=h[l>>2]|0;b=h[f>>2]|0;h[a>>2]=h[o>>2];b=Ot(a,s,m,b,t,r)|0;k=u;return b|0}return 0}function Al(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;c=k;k=k+112|0;o=c+8|0;e=c;m=c+75|0;f=c+32|0;u=c+28|0;l=c+24|0;d=c+20|0;s=c+16|0;b=e;h[b>>2]=37;h[b+4>>2]=0;Ml(e+1|0,57351,0,h[t+4>>2]|0);b=Zf()|0;v=o;h[v>>2]=n;h[v+4>>2]=a;a=m+(dp(m,23,b,e,o)|0)|0;n=Cl(m,a,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(1,m|0,n|0,a|0,f|0,u|0,l|0,d|0);a=x;x=0;if(a&1){v=Je()|0;ko(e)|0;fi(v|0)}else{ko(e)|0;h[s>>2]=h[i>>2];b=h[u>>2]|0;v=h[l>>2]|0;h[o>>2]=h[s>>2];v=Ot(o,f,b,v,t,r)|0;k=c;return v|0}return 0}function Pl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=+n;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0;M=k;k=k+176|0;w=M+84|0;d=M+48|0;c=M+32|0;f=M+24|0;a=M+8|0;u=M;b=M+88|0;v=M+80|0;s=M+118|0;T=M+76|0;y=M+72|0;g=M+68|0;_=M+64|0;l=u;h[l>>2]=37;h[l+4>>2]=0;l=Il(u+1|0,57354,h[t+4>>2]|0)|0;h[v>>2]=b;e=Zf()|0;if(l){h[a>>2]=h[t+8>>2];p[a+8>>3]=n;a=dp(b,30,e,u,a)|0}else{p[f>>3]=n;a=dp(b,30,e,u,f)|0}e:do if((a|0)>29){x=0;e=Le(3)|0;a=x;x=0;a=a&1;if(l){if(!a?(x=0,h[c>>2]=h[t+8>>2],p[c+8>>3]=n,o=De(7,v|0,e|0,u|0,c|0)|0,m=x,x=0,!(m&1)):0)C=12}else if(!a?(x=0,h[d>>2]=h[t+8>>2],p[d+8>>3]=n,m=De(7,v|0,e|0,u|0,d|0)|0,d=x,x=0,!(d&1)):0){o=m;C=12}do if((C|0)==12){e=h[v>>2]|0;if(!e){x=0;Oe(6);m=x;x=0;if(m&1)break;a=h[v>>2]|0}else a=e;e=a;u=a;C=16;break e}while(0);e=Je()|0}else{e=h[v>>2]|0;u=0;o=a;C=16}while(0);if((C|0)==16){f=e+o|0;l=Cl(e,f,t)|0;do if((e|0)==(b|0)){e=b;a=0;C=22}else{o=Cw(o<<1)|0;if(!o){x=0;Oe(6);C=x;x=0;if(C&1){a=0;C=20;break}e=h[v>>2]|0}a=o;s=o;C=22}while(0);do if((C|0)==22){x=0;o=ye(67,t|0)|0;v=x;x=0;if(!(v&1)){h[g>>2]=o;x=0;Ee(2,e|0,l|0,f|0,s|0,T|0,y|0,g|0);g=x;x=0;if(g&1){e=Je()|0;ko(o)|0;break}ko(o)|0;h[_>>2]=h[i>>2];C=h[T>>2]|0;e=h[y>>2]|0;x=0;h[w>>2]=h[_>>2];e=_e(39,w|0,s|0,C|0,e|0,t|0,r|0)|0;C=x;x=0;if(!(C&1)){h[i>>2]=e;if(a)xw(a);if(u)xw(u);k=M;return e|0}else C=20}else C=20}while(0);if((C|0)==20)e=Je()|0;if(a)xw(a);if(u)xw(u)}fi(e|0);return 0}function Il(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;if(t&2048){c[e>>0]=43;e=e+1|0}if(t&1024){c[e>>0]=35;e=e+1|0}o=t&260;n=t>>>14;s=(o|0)==260;if(s)a=0;else{c[e>>0]=46;c[e+1>>0]=42;e=e+2|0;a=1}t=c[i>>0]|0;if(t<<24>>24){r=e;while(1){i=i+1|0;e=r+1|0;c[r>>0]=t;t=c[i>>0]|0;if(!(t<<24>>24))break;else r=e}}e:do switch(o|0){case 4:if(!(n&1)){c[e>>0]=102;break e}else{c[e>>0]=70;break e}case 256:if(!(n&1)){c[e>>0]=101;break e}else{c[e>>0]=69;break e}default:{t=(n&1|0)!=0;if(s)if(t){c[e>>0]=65;break e}else{c[e>>0]=97;break e}else if(t){c[e>>0]=71;break e}else{c[e>>0]=103;break e}}}while(0);return a|0}function Ll(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0;M=k;k=k+16|0;C=M;T=Fd(o,43752)|0;_=Fd(o,43892)|0;Xk[h[(h[_>>2]|0)+20>>2]&127](C,_);h[a>>2]=r;o=c[e>>0]|0;switch(o<<24>>24){case 43:case 45:{x=0;o=Ae(h[(h[T>>2]|0)+28>>2]|0,T|0,o|0)|0;y=x;x=0;if(y&1)g=8;else{u=h[a>>2]|0;h[a>>2]=u+1;c[u>>0]=o;u=e+1|0;g=10}break}default:{u=e;g=10}}e:do if((g|0)==10){y=t;i:do if((y-u|0)>1?(c[u>>0]|0)==48:0){f=u+1|0;switch(c[f>>0]|0){case 88:case 120:break;default:{g=11;break i}}x=0;o=Ae(h[(h[T>>2]|0)+28>>2]|0,T|0,48)|0;p=x;x=0;if(p&1){g=8;break e}p=h[a>>2]|0;h[a>>2]=p+1;c[p>>0]=o;u=u+2|0;x=0;o=Ae(h[(h[T>>2]|0)+28>>2]|0,T|0,c[f>>0]|0)|0;p=x;x=0;if(p&1){g=8;break e}p=h[a>>2]|0;h[a>>2]=p+1;c[p>>0]=o;if(u>>>0<t>>>0){o=u;while(1){f=c[o>>0]|0;x=0;l=Le(3)|0;p=x;x=0;if(p&1)break;x=0;f=Ae(29,f<<24>>24|0,l|0)|0;p=x;x=0;if(p&1)break;if(!f){p=u;break i}o=o+1|0;if(o>>>0>=t>>>0){p=u;break i}}o=Je()|0;break e}else{p=u;o=u}}else g=11;while(0);i:do if((g|0)==11)if(u>>>0<t>>>0){o=u;while(1){f=c[o>>0]|0;x=0;l=Le(3)|0;p=x;x=0;if(p&1)break;x=0;f=Ae(30,f<<24>>24|0,l|0)|0;p=x;x=0;if(p&1)break;if(!f){p=u;break i}o=o+1|0;if(o>>>0>=t>>>0){p=u;break i}}o=Je()|0;break e}else{p=u;o=u}while(0);v=c[C>>0]|0;w=C+4|0;if(((v&1)==0?(v&255)>>>1:h[w>>2]|0)|0){if((p|0)!=(o|0)?(d=o+-1|0,p>>>0<d>>>0):0){l=p;f=d;do{v=c[l>>0]|0;c[l>>0]=c[f>>0]|0;c[f>>0]=v;l=l+1|0;f=f+-1|0}while(l>>>0<f>>>0)}x=0;d=ye(h[(h[_>>2]|0)+16>>2]|0,_|0)|0;v=x;x=0;if(v&1){g=8;break}m=C+8|0;b=C+1|0;i:do if(p>>>0<o>>>0){f=0;l=0;v=p;while(1){u=c[((c[C>>0]&1)==0?b:h[m>>2]|0)+l>>0]|0;if(u<<24>>24>0&(f|0)==(u<<24>>24|0)){f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=d;f=c[C>>0]|0;u=0;l=(l>>>0<(((f&1)==0?(f&255)>>>1:h[w>>2]|0)+-1|0)>>>0&1)+l|0}else u=f;x=0;f=Ae(h[(h[T>>2]|0)+28>>2]|0,T|0,c[v>>0]|0)|0;E=x;x=0;if(E&1)break;E=h[a>>2]|0;h[a>>2]=E+1;c[E>>0]=f;v=v+1|0;if(v>>>0>=o>>>0)break i;else f=u+1|0}o=Je()|0;break e}while(0);f=r+(p-e)|0;l=h[a>>2]|0;if((f|0)!=(l|0)?(s=l+-1|0,f>>>0<s>>>0):0){do{E=c[f>>0]|0;c[f>>0]=c[s>>0]|0;c[s>>0]=E;f=f+1|0;s=s+-1|0}while(f>>>0<s>>>0);f=T}else f=T}else{x=0;De(h[(h[T>>2]|0)+32>>2]|0,T|0,p|0,o|0,h[a>>2]|0)|0;E=x;x=0;if(E&1){g=8;break}h[a>>2]=(h[a>>2]|0)+(o-p);f=T}i:do if(o>>>0<t>>>0){while(1){s=c[o>>0]|0;if(s<<24>>24==46)break;x=0;s=Ae(h[(h[f>>2]|0)+28>>2]|0,T|0,s|0)|0;E=x;x=0;if(E&1){g=4;break}E=h[a>>2]|0;h[a>>2]=E+1;c[E>>0]=s;o=o+1|0;if(o>>>0>=t>>>0)break i}if((g|0)==4){o=Je()|0;break e}x=0;s=ye(h[(h[_>>2]|0)+12>>2]|0,_|0)|0;E=x;x=0;if(E&1){g=8;break e}E=h[a>>2]|0;h[a>>2]=E+1;c[E>>0]=s;o=o+1|0}while(0);x=0;De(h[(h[T>>2]|0)+32>>2]|0,T|0,o|0,t|0,h[a>>2]|0)|0;E=x;x=0;if(E&1)g=8;else{E=(h[a>>2]|0)+(y-o)|0;h[a>>2]=E;h[n>>2]=(i|0)==(t|0)?E:r+(i-e)|0;Uo(C);k=M;return}}while(0);if((g|0)==8)o=Je()|0;Uo(C);fi(o|0)}function Dl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=+n;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0;M=k;k=k+176|0;w=M+76|0;d=M+48|0;c=M+32|0;f=M+24|0;a=M+8|0;u=M;b=M+80|0;v=M+72|0;s=M+110|0;T=M+68|0;y=M+64|0;g=M+60|0;_=M+56|0;l=u;h[l>>2]=37;h[l+4>>2]=0;l=Il(u+1|0,57355,h[t+4>>2]|0)|0;h[v>>2]=b;e=Zf()|0;if(l){h[a>>2]=h[t+8>>2];p[a+8>>3]=n;a=dp(b,30,e,u,a)|0}else{p[f>>3]=n;a=dp(b,30,e,u,f)|0}e:do if((a|0)>29){x=0;e=Le(3)|0;a=x;x=0;a=a&1;if(l){if(!a?(x=0,h[c>>2]=h[t+8>>2],p[c+8>>3]=n,o=De(7,v|0,e|0,u|0,c|0)|0,m=x,x=0,!(m&1)):0)C=12}else if(!a?(x=0,p[d>>3]=n,m=De(7,v|0,e|0,u|0,d|0)|0,d=x,x=0,!(d&1)):0){o=m;C=12}do if((C|0)==12){e=h[v>>2]|0;if(!e){x=0;Oe(6);m=x;x=0;if(m&1)break;a=h[v>>2]|0}else a=e;e=a;u=a;C=16;break e}while(0);e=Je()|0}else{e=h[v>>2]|0;u=0;o=a;C=16}while(0);if((C|0)==16){f=e+o|0;l=Cl(e,f,t)|0;do if((e|0)==(b|0)){e=b;a=0;C=22}else{o=Cw(o<<1)|0;if(!o){x=0;Oe(6);C=x;x=0;if(C&1){a=0;C=20;break}e=h[v>>2]|0}a=o;s=o;C=22}while(0);do if((C|0)==22){x=0;o=ye(67,t|0)|0;v=x;x=0;if(!(v&1)){h[g>>2]=o;x=0;Ee(2,e|0,l|0,f|0,s|0,T|0,y|0,g|0);g=x;x=0;if(g&1){e=Je()|0;ko(o)|0;break}ko(o)|0;h[_>>2]=h[i>>2];C=h[T>>2]|0;e=h[y>>2]|0;x=0;h[w>>2]=h[_>>2];e=_e(39,w|0,s|0,C|0,e|0,t|0,r|0)|0;C=x;x=0;if(!(C&1)){h[i>>2]=e;if(a)xw(a);if(u)xw(u);k=M;return e|0}else C=20}else C=20}while(0);if((C|0)==20)e=Je()|0;if(a)xw(a);if(u)xw(u)}fi(e|0);return 0}function Rl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;m=k;k=k+80|0;f=m;e=m+70|0;u=m+12|0;d=m+32|0;s=m+8|0;l=m+4|0;c[e>>0]=c[57357]|0;c[e+1>>0]=c[57358]|0;c[e+2>>0]=c[57359]|0;c[e+3>>0]=c[57360]|0;c[e+4>>0]=c[57361]|0;c[e+5>>0]=c[57362]|0;a=Zf()|0;h[f>>2]=n;e=dp(u,20,a,e,f)|0;n=u+e|0;a=Cl(u,n,t)|0;o=hs(t)|0;h[s>>2]=o;x=0;s=Ae(26,s|0,43752)|0;b=x;x=0;if(b&1){b=Je()|0;ko(o)|0;fi(b|0)}else{ko(o)|0;s_[h[(h[s>>2]|0)+32>>2]&31](s,u,n,d)|0;b=d+e|0;h[l>>2]=h[i>>2];h[f>>2]=h[l>>2];b=Ot(f,d,(a|0)==(n|0)?b:d+(a-u)|0,b,t,r)|0;k=m;return b|0}return 0}function Ol(e){e=e|0;return}function Bl(e){e=e|0;$m(e);return}function Nl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;a=l+20|0;o=l+16|0;s=l+12|0;f=l;e:do if(!(h[t+4>>2]&1)){f=h[(h[e>>2]|0)+24>>2]|0;h[o>>2]=h[i>>2];h[a>>2]=h[o>>2];a=n_[f&31](e,a,t,r,n&1)|0}else{a=hs(t)|0;h[s>>2]=a;x=0;o=Ae(26,s|0,43900)|0;s=x;x=0;i:do if(s&1){l=Je()|0;ko(a)|0;a=l}else{ko(a)|0;a=h[o>>2]|0;if(n)Xk[h[a+24>>2]&127](f,o);else Xk[h[a+28>>2]&127](f,o);e=c[f>>0]|0;t=(e&1)==0;a=f+4|0;n=f+8|0;s=t?a:f+4|0;a=t?a:h[f+8>>2]|0;t=(e&1)==0;t:do if((a|0)!=((t?s:h[n>>2]|0)+((t?(e&255)>>>1:h[s>>2]|0)<<2)|0)){while(1){o=h[a>>2]|0;r=h[i>>2]|0;if(r){t=r+24|0;e=h[t>>2]|0;if((e|0)==(h[r+28>>2]|0)){x=0;o=Ae(h[(h[r>>2]|0)+52>>2]|0,r|0,o|0)|0;e=x;x=0;if(e&1)break}else{h[t>>2]=e+4;h[e>>2]=o}if((o|0)==-1)h[i>>2]=0}a=a+4|0;e=c[f>>0]|0;t=(e&1)==0;if((a|0)==((t?s:h[n>>2]|0)+((t?(e&255)>>>1:h[s>>2]|0)<<2)|0))break t}a=Je()|0;Zo(f);break i}while(0);a=h[i>>2]|0;Zo(f);break e}while(0);fi(a|0)}while(0);k=l;return a|0}function Fl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+128|0;a=u;m=u+116|0;b=u+104|0;s=u+20|0;l=u+16|0;f=u+12|0;d=u+8|0;o=u+4|0;c[m>>0]=c[57343]|0;c[m+1>>0]=c[57344]|0;c[m+2>>0]=c[57345]|0;c[m+3>>0]=c[57346]|0;c[m+4>>0]=c[57347]|0;c[m+5>>0]=c[57348]|0;Ml(m+1|0,57349,1,h[t+4>>2]|0);e=Zf()|0;h[a>>2]=n;n=b+(dp(b,12,e,m,a)|0)|0;m=Cl(b,n,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(3,b|0,m|0,n|0,s|0,l|0,f|0,d|0);n=x;x=0;if(n&1){b=Je()|0;ko(e)|0;fi(b|0)}else{ko(e)|0;h[o>>2]=h[i>>2];m=h[l>>2]|0;b=h[f>>2]|0;h[a>>2]=h[o>>2];b=mp(a,s,m,b,t,r)|0;k=u;return b|0}return 0}function Ul(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;g=k;k=k+16|0;_=g;w=Fd(o,43744)|0;l=Fd(o,43900)|0;Xk[h[(h[l>>2]|0)+20>>2]&127](_,l);b=c[_>>0]|0;v=_+4|0;e:do if(!(((b&1)==0?(b&255)>>>1:h[v>>2]|0)|0)){x=0;De(h[(h[w>>2]|0)+48>>2]|0,w|0,e|0,t|0,r|0)|0;p=x;x=0;if(p&1)p=5;else{o=r+(t-e<<2)|0;h[a>>2]=o;p=28}}else{h[a>>2]=r;o=c[e>>0]|0;switch(o<<24>>24){case 43:case 45:{x=0;o=Ae(h[(h[w>>2]|0)+44>>2]|0,w|0,o|0)|0;b=x;x=0;if(b&1){p=5;break e}f=h[a>>2]|0;h[a>>2]=f+4;h[f>>2]=o;f=e+1|0;break}default:f=e}i:do if((t-f|0)>1?(c[f>>0]|0)==48:0){o=f+1|0;switch(c[o>>0]|0){case 88:case 120:break;default:{b=f;break i}}x=0;s=Ae(h[(h[w>>2]|0)+44>>2]|0,w|0,48)|0;b=x;x=0;if(b&1){p=5;break e}b=h[a>>2]|0;h[a>>2]=b+4;h[b>>2]=s;x=0;o=Ae(h[(h[w>>2]|0)+44>>2]|0,w|0,c[o>>0]|0)|0;b=x;x=0;if(b&1){p=5;break e}b=h[a>>2]|0;h[a>>2]=b+4;h[b>>2]=o;b=f+2|0}else b=f;while(0);if((b|0)!=(t|0)?(u=t+-1|0,b>>>0<u>>>0):0){s=b;o=u;do{m=c[s>>0]|0;c[s>>0]=c[o>>0]|0;c[o>>0]=m;s=s+1|0;o=o+-1|0}while(s>>>0<o>>>0)}x=0;l=ye(h[(h[l>>2]|0)+16>>2]|0,l|0)|0;m=x;x=0;if(!(m&1)){u=_+8|0;d=_+1|0;i:do if(b>>>0<t>>>0){o=0;s=0;m=b;while(1){f=c[((c[_>>0]&1)==0?d:h[u>>2]|0)+s>>0]|0;if(f<<24>>24!=0&(o|0)==(f<<24>>24|0)){o=h[a>>2]|0;h[a>>2]=o+4;h[o>>2]=l;o=c[_>>0]|0;f=0;s=(s>>>0<(((o&1)==0?(o&255)>>>1:h[v>>2]|0)+-1|0)>>>0&1)+s|0}else f=o;x=0;o=Ae(h[(h[w>>2]|0)+44>>2]|0,w|0,c[m>>0]|0)|0;y=x;x=0;if(y&1)break;y=h[a>>2]|0;h[a>>2]=y+4;h[y>>2]=o;m=m+1|0;if(m>>>0>=t>>>0)break i;else o=f+1|0}o=Je()|0;break e}while(0);f=e;o=r+(b-f<<2)|0;s=h[a>>2]|0;if((o|0)!=(s|0)){e=s+-4|0;if(o>>>0<e>>>0){do{y=h[o>>2]|0;h[o>>2]=h[e>>2];h[e>>2]=y;o=o+4|0;e=e+-4|0}while(o>>>0<e>>>0);e=f;o=s;p=28}else{e=f;o=s;p=28}}else{e=f;p=28}}else p=5}while(0);if((p|0)==5)o=Je()|0;else if((p|0)==28){h[n>>2]=(i|0)==(t|0)?o:r+(i-e<<2)|0;Uo(_);k=g;return}Uo(_);fi(o|0)}function Hl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;c=k;k=k+224|0;o=c+8|0;e=c;m=c+196|0;f=c+32|0;u=c+28|0;l=c+24|0;d=c+20|0;s=c+16|0;b=e;h[b>>2]=37;h[b+4>>2]=0;Ml(e+1|0,57351,1,h[t+4>>2]|0);b=Zf()|0;v=o;h[v>>2]=n;h[v+4>>2]=a;a=m+(dp(m,22,b,e,o)|0)|0;n=Cl(m,a,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(3,m|0,n|0,a|0,f|0,u|0,l|0,d|0);a=x;x=0;if(a&1){v=Je()|0;ko(e)|0;fi(v|0)}else{ko(e)|0;h[s>>2]=h[i>>2];b=h[u>>2]|0;v=h[l>>2]|0;h[o>>2]=h[s>>2];v=mp(o,f,b,v,t,r)|0;k=c;return v|0}return 0}function zl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;u=k;k=k+128|0;a=u;m=u+116|0;b=u+104|0;s=u+20|0;l=u+16|0;f=u+12|0;d=u+8|0;o=u+4|0;c[m>>0]=c[57343]|0;c[m+1>>0]=c[57344]|0;c[m+2>>0]=c[57345]|0;c[m+3>>0]=c[57346]|0;c[m+4>>0]=c[57347]|0;c[m+5>>0]=c[57348]|0;Ml(m+1|0,57349,0,h[t+4>>2]|0);e=Zf()|0;h[a>>2]=n;n=b+(dp(b,12,e,m,a)|0)|0;m=Cl(b,n,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(3,b|0,m|0,n|0,s|0,l|0,f|0,d|0);n=x;x=0;if(n&1){b=Je()|0;ko(e)|0;fi(b|0)}else{ko(e)|0;h[o>>2]=h[i>>2];m=h[l>>2]|0;b=h[f>>2]|0;h[a>>2]=h[o>>2];b=mp(a,s,m,b,t,r)|0;k=u;return b|0}return 0}function jl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0;c=k;k=k+240|0;o=c+8|0;e=c;m=c+204|0;f=c+32|0;u=c+28|0;l=c+24|0;d=c+20|0;s=c+16|0;b=e;h[b>>2]=37;h[b+4>>2]=0;Ml(e+1|0,57351,0,h[t+4>>2]|0);b=Zf()|0;v=o;h[v>>2]=n;h[v+4>>2]=a;a=m+(dp(m,23,b,e,o)|0)|0;n=Cl(m,a,t)|0;e=hs(t)|0;h[d>>2]=e;x=0;Ee(3,m|0,n|0,a|0,f|0,u|0,l|0,d|0);a=x;x=0;if(a&1){v=Je()|0;ko(e)|0;fi(v|0)}else{ko(e)|0;h[s>>2]=h[i>>2];b=h[u>>2]|0;v=h[l>>2]|0;h[o>>2]=h[s>>2];v=mp(o,f,b,v,t,r)|0;k=c;return v|0}return 0}function Yl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=+n;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0;M=k;k=k+352|0;w=M+312|0;d=M+48|0;c=M+32|0;f=M+24|0;a=M+8|0;u=M;b=M+316|0;v=M+80|0;s=M+84|0;T=M+76|0;y=M+72|0;g=M+68|0;_=M+64|0;l=u;h[l>>2]=37;h[l+4>>2]=0;l=Il(u+1|0,57354,h[t+4>>2]|0)|0;h[v>>2]=b;e=Zf()|0;if(l){h[a>>2]=h[t+8>>2];p[a+8>>3]=n;a=dp(b,30,e,u,a)|0}else{p[f>>3]=n;a=dp(b,30,e,u,f)|0}e:do if((a|0)>29){x=0;e=Le(3)|0;a=x;x=0;a=a&1;if(l){if(!a?(x=0,h[c>>2]=h[t+8>>2],p[c+8>>3]=n,o=De(7,v|0,e|0,u|0,c|0)|0,m=x,x=0,!(m&1)):0)C=12}else if(!a?(x=0,h[d>>2]=h[t+8>>2],p[d+8>>3]=n,m=De(7,v|0,e|0,u|0,d|0)|0,d=x,x=0,!(d&1)):0){o=m;C=12}do if((C|0)==12){e=h[v>>2]|0;if(!e){x=0;Oe(6);m=x;x=0;if(m&1)break;a=h[v>>2]|0}else a=e;e=a;u=a;C=16;break e}while(0);e=Je()|0}else{e=h[v>>2]|0;u=0;o=a;C=16}while(0);if((C|0)==16){f=e+o|0;l=Cl(e,f,t)|0;do if((e|0)==(b|0)){e=b;a=0;C=22}else{o=Cw(o<<3)|0;if(!o){x=0;Oe(6);C=x;x=0;if(C&1){a=0;C=20;break}e=h[v>>2]|0}a=o;s=o;C=22}while(0);do if((C|0)==22){x=0;o=ye(67,t|0)|0;v=x;x=0;if(!(v&1)){h[g>>2]=o;x=0;Ee(4,e|0,l|0,f|0,s|0,T|0,y|0,g|0);g=x;x=0;if(g&1){e=Je()|0;ko(o)|0;break}ko(o)|0;h[_>>2]=h[i>>2];C=h[T>>2]|0;e=h[y>>2]|0;x=0;h[w>>2]=h[_>>2];e=_e(40,w|0,s|0,C|0,e|0,t|0,r|0)|0;C=x;x=0;if(!(C&1)){h[i>>2]=e;if(a)xw(a);if(u)xw(u);k=M;return e|0}else C=20}else C=20}while(0);if((C|0)==20)e=Je()|0;if(a)xw(a);if(u)xw(u)}fi(e|0);return 0}function Vl(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;T=k;k=k+16|0;M=T;y=Fd(o,43744)|0;g=Fd(o,43900)|0;Xk[h[(h[g>>2]|0)+20>>2]&127](M,g);h[a>>2]=r;o=c[e>>0]|0;switch(o<<24>>24){case 43:case 45:{x=0;o=Ae(h[(h[y>>2]|0)+44>>2]|0,y|0,o|0)|0;_=x;x=0;if(_&1)p=8;else{l=h[a>>2]|0;h[a>>2]=l+4;h[l>>2]=o;l=e+1|0;p=10}break}default:{l=e;p=10}}e:do if((p|0)==10){_=t;i:do if((_-l|0)>1?(c[l>>0]|0)==48:0){s=l+1|0;switch(c[s>>0]|0){case 88:case 120:break;default:{p=11;break i}}x=0;o=Ae(h[(h[y>>2]|0)+44>>2]|0,y|0,48)|0;w=x;x=0;if(w&1){p=8;break e}w=h[a>>2]|0;h[a>>2]=w+4;h[w>>2]=o;l=l+2|0;x=0;o=Ae(h[(h[y>>2]|0)+44>>2]|0,y|0,c[s>>0]|0)|0;w=x;x=0;if(w&1){p=8;break e}w=h[a>>2]|0;h[a>>2]=w+4;h[w>>2]=o;if(l>>>0<t>>>0){o=l;while(1){s=c[o>>0]|0;x=0;f=Le(3)|0;w=x;x=0;if(w&1)break;x=0;s=Ae(29,s<<24>>24|0,f|0)|0;w=x;x=0;if(w&1)break;if(!s){w=l;break i}o=o+1|0;if(o>>>0>=t>>>0){w=l;break i}}o=Je()|0;break e}else{w=l;o=l}}else p=11;while(0);i:do if((p|0)==11)if(l>>>0<t>>>0){o=l;while(1){s=c[o>>0]|0;x=0;f=Le(3)|0;w=x;x=0;if(w&1)break;x=0;s=Ae(30,s<<24>>24|0,f|0)|0;w=x;x=0;if(w&1)break;if(!s){w=l;break i}o=o+1|0;if(o>>>0>=t>>>0){w=l;break i}}o=Je()|0;break e}else{w=l;o=l}while(0);b=c[M>>0]|0;v=M+4|0;if(((b&1)==0?(b&255)>>>1:h[v>>2]|0)|0){if((w|0)!=(o|0)?(u=o+-1|0,w>>>0<u>>>0):0){f=w;s=u;do{b=c[f>>0]|0;c[f>>0]=c[s>>0]|0;c[s>>0]=b;f=f+1|0;s=s+-1|0}while(f>>>0<s>>>0)}x=0;u=ye(h[(h[g>>2]|0)+16>>2]|0,g|0)|0;b=x;x=0;if(b&1){p=8;break}d=M+8|0;m=M+1|0;i:do if(w>>>0<o>>>0){s=0;f=0;b=w;while(1){l=c[((c[M>>0]&1)==0?m:h[d>>2]|0)+f>>0]|0;if(l<<24>>24>0&(s|0)==(l<<24>>24|0)){s=h[a>>2]|0;h[a>>2]=s+4;h[s>>2]=u;s=c[M>>0]|0;l=0;f=(f>>>0<(((s&1)==0?(s&255)>>>1:h[v>>2]|0)+-1|0)>>>0&1)+f|0}else l=s;x=0;s=Ae(h[(h[y>>2]|0)+44>>2]|0,y|0,c[b>>0]|0)|0;C=x;x=0;if(C&1)break;C=h[a>>2]|0;h[a>>2]=C+4;h[C>>2]=s;b=b+1|0;if(b>>>0>=o>>>0)break i;else s=l+1|0}o=Je()|0;break e}while(0);s=r+(w-e<<2)|0;l=h[a>>2]|0;if((s|0)!=(l|0)){f=l+-4|0;if(s>>>0<f>>>0){do{C=h[s>>2]|0;h[s>>2]=h[f>>2];h[f>>2]=C;s=s+4|0;f=f+-4|0}while(s>>>0<f>>>0);u=y;s=l}else{u=y;s=l}}else u=y}else{x=0;De(h[(h[y>>2]|0)+48>>2]|0,y|0,w|0,o|0,h[a>>2]|0)|0;C=x;x=0;if(C&1){p=8;break}s=(h[a>>2]|0)+(o-w<<2)|0;h[a>>2]=s;u=y}i:do if(o>>>0<t>>>0){while(1){s=c[o>>0]|0;if(s<<24>>24==46){f=o;break}x=0;f=Ae(h[(h[u>>2]|0)+44>>2]|0,y|0,s|0)|0;C=x;x=0;if(C&1){p=4;break}C=h[a>>2]|0;s=C+4|0;h[a>>2]=s;h[C>>2]=f;o=o+1|0;if(o>>>0>=t>>>0)break i}if((p|0)==4){o=Je()|0;break e}x=0;o=ye(h[(h[g>>2]|0)+12>>2]|0,g|0)|0;C=x;x=0;if(C&1){p=8;break e}C=h[a>>2]|0;s=C+4|0;h[a>>2]=s;h[C>>2]=o;o=f+1|0}while(0);x=0;De(h[(h[y>>2]|0)+48>>2]|0,y|0,o|0,t|0,s|0)|0;C=x;x=0;if(C&1)p=8;else{C=(h[a>>2]|0)+(_-o<<2)|0;h[a>>2]=C;h[n>>2]=(i|0)==(t|0)?C:r+(i-e<<2)|0;Uo(M);k=T;return}}while(0);if((p|0)==8)o=Je()|0;Uo(M);fi(o|0)}function ql(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=+n;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0;M=k;k=k+352|0;w=M+304|0;d=M+48|0;c=M+32|0;f=M+24|0;a=M+8|0;u=M;b=M+308|0;v=M+72|0;s=M+76|0;T=M+68|0;y=M+64|0;g=M+60|0;_=M+56|0;l=u;h[l>>2]=37;h[l+4>>2]=0;l=Il(u+1|0,57355,h[t+4>>2]|0)|0;h[v>>2]=b;e=Zf()|0;if(l){h[a>>2]=h[t+8>>2];p[a+8>>3]=n;a=dp(b,30,e,u,a)|0}else{p[f>>3]=n;a=dp(b,30,e,u,f)|0}e:do if((a|0)>29){x=0;e=Le(3)|0;a=x;x=0;a=a&1;if(l){if(!a?(x=0,h[c>>2]=h[t+8>>2],p[c+8>>3]=n,o=De(7,v|0,e|0,u|0,c|0)|0,m=x,x=0,!(m&1)):0)C=12}else if(!a?(x=0,p[d>>3]=n,m=De(7,v|0,e|0,u|0,d|0)|0,d=x,x=0,!(d&1)):0){o=m;C=12}do if((C|0)==12){e=h[v>>2]|0;if(!e){x=0;Oe(6);m=x;x=0;if(m&1)break;a=h[v>>2]|0}else a=e;e=a;u=a;C=16;break e}while(0);e=Je()|0}else{e=h[v>>2]|0;u=0;o=a;C=16}while(0);if((C|0)==16){f=e+o|0;l=Cl(e,f,t)|0;do if((e|0)==(b|0)){e=b;a=0;C=22}else{o=Cw(o<<3)|0;if(!o){x=0;Oe(6);C=x;x=0;if(C&1){a=0;C=20;break}e=h[v>>2]|0}a=o;s=o;C=22}while(0);do if((C|0)==22){x=0;o=ye(67,t|0)|0;v=x;x=0;if(!(v&1)){h[g>>2]=o;x=0;Ee(4,e|0,l|0,f|0,s|0,T|0,y|0,g|0);g=x;x=0;if(g&1){e=Je()|0;ko(o)|0;break}ko(o)|0;h[_>>2]=h[i>>2];C=h[T>>2]|0;e=h[y>>2]|0;x=0;h[w>>2]=h[_>>2];e=_e(40,w|0,s|0,C|0,e|0,t|0,r|0)|0;C=x;x=0;if(!(C&1)){h[i>>2]=e;if(a)xw(a);if(u)xw(u);k=M;return e|0}else C=20}else C=20}while(0);if((C|0)==20)e=Je()|0;if(a)xw(a);if(u)xw(u)}fi(e|0);return 0}function Wl(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;m=k;k=k+192|0;f=m;e=m+180|0;u=m+160|0;d=m+12|0;s=m+8|0;l=m+4|0;c[e>>0]=c[57357]|0;c[e+1>>0]=c[57358]|0;c[e+2>>0]=c[57359]|0;c[e+3>>0]=c[57360]|0;c[e+4>>0]=c[57361]|0;c[e+5>>0]=c[57362]|0;a=Zf()|0;h[f>>2]=n;e=dp(u,20,a,e,f)|0;n=u+e|0;a=Cl(u,n,t)|0;o=hs(t)|0;h[s>>2]=o;x=0;s=Ae(26,s|0,43744)|0;b=x;x=0;if(b&1){b=Je()|0;ko(o)|0;fi(b|0)}else{ko(o)|0;s_[h[(h[s>>2]|0)+48>>2]&31](s,u,n,d)|0;b=d+(e<<2)|0;h[l>>2]=h[i>>2];h[f>>2]=h[l>>2];b=mp(f,d,(a|0)==(n|0)?b:d+(a-u<<2)|0,b,t,r)|0;k=m;return b|0}return 0}function Gl(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0;S=k;k=k+32|0;_=S+16|0;g=S+12|0;M=S+8|0;y=S+4|0;T=S;f=hs(r)|0;h[M>>2]=f;x=0;M=Ae(26,M|0,43752)|0;p=x;x=0;if(p&1){S=Je()|0;ko(f)|0;fi(S|0)}ko(f)|0;h[n>>2]=0;p=M+8|0;f=h[i>>2]|0;e:do if((o|0)!=(s|0)){i:while(1){l=f;if(f){if((h[f+12>>2]|0)==(h[f+16>>2]|0)?($k[h[(h[f>>2]|0)+36>>2]&127](f)|0)==-1:0){h[i>>2]=0;f=0;l=0}}else f=0;v=(f|0)==0;b=h[t>>2]|0;u=b;do if(b){if((h[b+12>>2]|0)==(h[b+16>>2]|0)?($k[h[(h[b>>2]|0)+36>>2]&127](b)|0)==-1:0){h[t>>2]=0;u=0;E=12;break}if(!v){E=13;break i}}else E=12;while(0);if((E|0)==12){E=0;if(v){E=13;break}else b=0}t:do if((Qk[h[(h[M>>2]|0)+36>>2]&63](M,c[o>>0]|0,0)|0)<<24>>24==37){b=o+1|0;if((b|0)==(s|0)){E=17;break i}w=Qk[h[(h[M>>2]|0)+36>>2]&63](M,c[b>>0]|0,0)|0;switch(w<<24>>24){case 48:case 69:{v=o+2|0;if((v|0)==(s|0)){E=20;break i}o=b;b=Qk[h[(h[M>>2]|0)+36>>2]&63](M,c[v>>0]|0,0)|0;f=w;break}default:{b=w;f=0}}w=h[(h[e>>2]|0)+36>>2]|0;h[y>>2]=l;h[T>>2]=u;h[g>>2]=h[y>>2];h[_>>2]=h[T>>2];w=u_[w&15](e,g,_,r,n,a,b,f)|0;h[i>>2]=w;o=o+2|0}else{l=c[o>>0]|0;if(l<<24>>24>-1?(C=h[p>>2]|0,(d[C+(l<<24>>24<<1)>>1]&8192)!=0):0){do{o=o+1|0;if((o|0)==(s|0)){o=s;break}l=c[o>>0]|0;if(l<<24>>24<=-1)break}while((d[C+(l<<24>>24<<1)>>1]&8192)!=0);l=b;while(1){if(f){if((h[f+12>>2]|0)==(h[f+16>>2]|0)?($k[h[(h[f>>2]|0)+36>>2]&127](f)|0)==-1:0){h[i>>2]=0;f=0}}else f=0;u=(f|0)==0;do if(b){if((h[b+12>>2]|0)!=(h[b+16>>2]|0))if(u){w=l;break}else break t;if(($k[h[(h[b>>2]|0)+36>>2]&127](b)|0)!=-1)if(u^(l|0)==0){w=l;b=l;break}else break t;else{h[t>>2]=0;l=0;E=39;break}}else E=39;while(0);if((E|0)==39){E=0;if(u)break t;else{w=l;b=0}}u=f+12|0;l=h[u>>2]|0;v=f+16|0;if((l|0)==(h[v>>2]|0))l=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else l=m[l>>0]|0;if((l&255)<<24>>24<=-1)break t;if(!(d[(h[p>>2]|0)+(l<<24>>24<<1)>>1]&8192))break t;l=h[u>>2]|0;if((l|0)==(h[v>>2]|0)){$k[h[(h[f>>2]|0)+40>>2]&127](f)|0;l=w;continue}else{h[u>>2]=l+1;l=w;continue}}}u=f+12|0;l=h[u>>2]|0;b=f+16|0;if((l|0)==(h[b>>2]|0))l=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else l=m[l>>0]|0;w=r_[h[(h[M>>2]|0)+12>>2]&63](M,l&255)|0;if(w<<24>>24!=(r_[h[(h[M>>2]|0)+12>>2]&63](M,c[o>>0]|0)|0)<<24>>24){E=57;break i}l=h[u>>2]|0;if((l|0)==(h[b>>2]|0))$k[h[(h[f>>2]|0)+40>>2]&127](f)|0;else h[u>>2]=l+1;o=o+1|0}while(0);f=h[i>>2]|0;if(!((o|0)!=(s|0)&(h[n>>2]|0)==0))break e}if((E|0)==13){h[n>>2]=4;break}else if((E|0)==17){h[n>>2]=4;break}else if((E|0)==20){h[n>>2]=4;break}else if((E|0)==57){h[n>>2]=4;f=h[i>>2]|0;break}}while(0);if(f){if((h[f+12>>2]|0)==(h[f+16>>2]|0)?($k[h[(h[f>>2]|0)+36>>2]&127](f)|0)==-1:0){h[i>>2]=0;f=0}}else f=0;o=(f|0)==0;l=h[t>>2]|0;do if(l){if((h[l+12>>2]|0)==(h[l+16>>2]|0)?($k[h[(h[l>>2]|0)+36>>2]&127](l)|0)==-1:0){h[t>>2]=0;E=67;break}if(!o)E=68}else E=67;while(0);if((E|0)==67?o:0)E=68;if((E|0)==68)h[n>>2]=h[n>>2]|2;k=S;return f|0}function Xl(e){e=e|0;return}function Kl(e){e=e|0;$m(e);return}function $l(e){e=e|0;return 2}function Jl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Gl(e,f,s,r,n,a,57363,57371)|0;k=o;return e|0}function Ql(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;d=e+8|0;d=$k[h[(h[d>>2]|0)+20>>2]&127](d)|0;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];t=c[d>>0]|0;m=(t&1)==0;i=m?d+1|0:h[d+8>>2]|0;t=i+(m?(t&255)>>>1:h[d+4>>2]|0)|0;h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=Gl(e,f,s,r,n,a,i,t)|0;k=o;return e|0}function Zl(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l+4|0;f=l;r=hs(r)|0;h[o>>2]=r;x=0;o=Ae(26,o|0,43752)|0;u=x;x=0;if(u&1){u=Je()|0;ko(r)|0;fi(u|0)}else{ko(r)|0;h[f>>2]=h[t>>2];h[s>>2]=h[f>>2];eu(e,a+24|0,i,s,n,o);k=l;return h[i>>2]|0}return 0}function eu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0;o=k;k=k+16|0;s=o+4|0;f=o;e=e+8|0;e=$k[h[h[e>>2]>>2]&127](e)|0;h[f>>2]=h[r>>2];h[s>>2]=h[f>>2];t=(Em(t,s,e,e+168|0,a,n,0)|0)-e|0;if((t|0)<168)h[i>>2]=((t|0)/12|0|0)%7|0;k=o;return}function iu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l+4|0;f=l;r=hs(r)|0;h[o>>2]=r;x=0;o=Ae(26,o|0,43752)|0;u=x;x=0;if(u&1){u=Je()|0;ko(r)|0;fi(u|0)}else{ko(r)|0;h[f>>2]=h[t>>2];h[s>>2]=h[f>>2];tu(e,a+16|0,i,s,n,o);k=l;return h[i>>2]|0}return 0}function tu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0;o=k;k=k+16|0;s=o+4|0;f=o;e=e+8|0;e=$k[h[(h[e>>2]|0)+4>>2]&127](e)|0;h[f>>2]=h[r>>2];h[s>>2]=h[f>>2];t=(Em(t,s,e,e+288|0,a,n,0)|0)-e|0;if((t|0)<288)h[i>>2]=((t|0)/12|0|0)%12|0;k=o;return}function ru(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l+4|0;f=l;r=hs(r)|0;h[o>>2]=r;x=0;o=Ae(26,o|0,43752)|0;u=x;x=0;if(u&1){u=Je()|0;ko(r)|0;fi(u|0)}else{ko(r)|0;h[f>>2]=h[t>>2];h[s>>2]=h[f>>2];nu(e,a+20|0,i,s,n,o);k=l;return h[i>>2]|0}return 0}function nu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,4)|0;if(!(h[n>>2]&4)){if((e|0)<69)e=e+2e3|0;else e=(e+-69|0)>>>0<31?e+1900|0:e;h[i>>2]=e+-1900}k=o;return}function au(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0;W=k;k=k+144|0;f=W+132|0;s=W+116|0;U=W+128|0;y=W+124|0;R=W+120|0;H=W+112|0;z=W+108|0;j=W+104|0;Y=W+100|0;V=W+96|0;q=W+92|0;l=W+88|0;u=W+84|0;d=W+80|0;m=W+76|0;b=W+72|0;v=W+68|0;w=W+64|0;p=W+60|0;g=W+56|0;_=W+52|0;T=W+48|0;M=W+44|0;C=W+40|0;E=W+36|0;S=W+32|0;A=W+28|0;P=W+24|0;I=W+20|0;L=W+16|0;D=W+12|0;O=W+8|0;B=W+4|0;N=W;h[n>>2]=0;F=hs(r)|0;h[U>>2]=F;x=0;U=Ae(26,U|0,43752)|0;X=x;x=0;if(X&1){X=Je()|0;ko(F)|0;fi(X|0)}ko(F)|0;do switch(o<<24>>24|0){case 65:case 97:{h[y>>2]=h[t>>2];h[f>>2]=h[y>>2];eu(e,a+24|0,i,f,n,U);G=28;break}case 104:case 66:case 98:{h[R>>2]=h[t>>2];h[f>>2]=h[R>>2];tu(e,a+16|0,i,f,n,U);G=28;break}case 99:{G=e+8|0;G=$k[h[(h[G>>2]|0)+12>>2]&127](G)|0;h[H>>2]=h[i>>2];h[z>>2]=h[t>>2];o=c[G>>0]|0;t=(o&1)==0;X=t?G+1|0:h[G+8>>2]|0;G=X+(t?(o&255)>>>1:h[G+4>>2]|0)|0;h[s>>2]=h[H>>2];h[f>>2]=h[z>>2];G=Gl(e,s,f,r,n,a,X,G)|0;h[i>>2]=G;G=28;break}case 101:case 100:{h[j>>2]=h[t>>2];h[f>>2]=h[j>>2];ou(e,a+12|0,i,f,n,U);G=28;break}case 68:{h[Y>>2]=h[i>>2];h[V>>2]=h[t>>2];h[s>>2]=h[Y>>2];h[f>>2]=h[V>>2];G=Gl(e,s,f,r,n,a,57371,57379)|0;h[i>>2]=G;G=28;break}case 70:{h[q>>2]=h[i>>2];h[l>>2]=h[t>>2];h[s>>2]=h[q>>2];h[f>>2]=h[l>>2];G=Gl(e,s,f,r,n,a,57379,57387)|0;h[i>>2]=G;G=28;break}case 72:{h[u>>2]=h[t>>2];h[f>>2]=h[u>>2];su(e,a+8|0,i,f,n,U);G=28;break}case 73:{h[d>>2]=h[t>>2];h[f>>2]=h[d>>2];fu(e,a+8|0,i,f,n,U);G=28;break}case 106:{h[m>>2]=h[t>>2];h[f>>2]=h[m>>2];lu(e,a+28|0,i,f,n,U);G=28;break}case 109:{h[b>>2]=h[t>>2];h[f>>2]=h[b>>2];uu(e,a+16|0,i,f,n,U);G=28;break}case 77:{h[v>>2]=h[t>>2];h[f>>2]=h[v>>2];cu(e,a+4|0,i,f,n,U);G=28;break}case 116:case 110:{h[w>>2]=h[t>>2];h[f>>2]=h[w>>2];du(e,i,f,n,U);G=28;break}case 112:{h[p>>2]=h[t>>2];h[f>>2]=h[p>>2];hu(e,a+8|0,i,f,n,U);G=28;break}case 114:{h[g>>2]=h[i>>2];h[_>>2]=h[t>>2];h[s>>2]=h[g>>2];h[f>>2]=h[_>>2];G=Gl(e,s,f,r,n,a,57387,57398)|0;h[i>>2]=G;G=28;break}case 82:{h[T>>2]=h[i>>2];h[M>>2]=h[t>>2];h[s>>2]=h[T>>2];h[f>>2]=h[M>>2];G=Gl(e,s,f,r,n,a,57398,57403)|0;h[i>>2]=G;G=28;break}case 83:{h[C>>2]=h[t>>2];h[f>>2]=h[C>>2];mu(e,a,i,f,n,U);G=28;break}case 84:{h[E>>2]=h[i>>2];h[S>>2]=h[t>>2];h[s>>2]=h[E>>2];h[f>>2]=h[S>>2];G=Gl(e,s,f,r,n,a,57403,57411)|0;h[i>>2]=G;G=28;break}case 119:{h[A>>2]=h[t>>2];h[f>>2]=h[A>>2];bu(e,a+24|0,i,f,n,U);G=28;break}case 120:{X=h[(h[e>>2]|0)+20>>2]|0;h[P>>2]=h[i>>2];h[I>>2]=h[t>>2];h[s>>2]=h[P>>2];h[f>>2]=h[I>>2];s=Kk[X&63](e,s,f,r,n,a)|0;break}case 88:{G=e+8|0;G=$k[h[(h[G>>2]|0)+24>>2]&127](G)|0;h[L>>2]=h[i>>2];h[D>>2]=h[t>>2];o=c[G>>0]|0;t=(o&1)==0;X=t?G+1|0:h[G+8>>2]|0;G=X+(t?(o&255)>>>1:h[G+4>>2]|0)|0;h[s>>2]=h[L>>2];h[f>>2]=h[D>>2];G=Gl(e,s,f,r,n,a,X,G)|0;h[i>>2]=G;G=28;break}case 121:{h[O>>2]=h[t>>2];h[f>>2]=h[O>>2];nu(e,a+20|0,i,f,n,U);G=28;break}case 89:{h[B>>2]=h[t>>2];h[f>>2]=h[B>>2];vu(e,a+20|0,i,f,n,U);G=28;break}case 37:{h[N>>2]=h[t>>2];h[f>>2]=h[N>>2];wu(e,i,f,n,U);G=28;break}default:{h[n>>2]=h[n>>2]|4;G=28}}while(0);if((G|0)==28)s=h[i>>2]|0;k=W;return s|0}function ou(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;
var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e+-1|0)>>>0<31&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function su(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<24&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function fu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e+-1|0)>>>0<12&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function lu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,3)|0;t=h[n>>2]|0;if((e|0)<366&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function uu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<13&(t&4|0)==0)h[i>>2]=e+-1;else h[n>>2]=t|4;k=o;return}function cu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<60&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function du(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;o=n+8|0;e:while(1){n=h[i>>2]|0;do if(n){if((h[n+12>>2]|0)==(h[n+16>>2]|0))if(($k[h[(h[n>>2]|0)+36>>2]&127](n)|0)==-1){h[i>>2]=0;n=0;break}else{n=h[i>>2]|0;break}}else n=0;while(0);n=(n|0)==0;e=h[t>>2]|0;do if(e){if((h[e+12>>2]|0)!=(h[e+16>>2]|0))if(n)break;else break e;if(($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)!=-1)if(n)break;else break e;else{h[t>>2]=0;s=12;break}}else s=12;while(0);if((s|0)==12){s=0;if(n){e=0;break}else e=0}n=h[i>>2]|0;a=h[n+12>>2]|0;if((a|0)==(h[n+16>>2]|0))n=$k[h[(h[n>>2]|0)+36>>2]&127](n)|0;else n=m[a>>0]|0;if((n&255)<<24>>24<=-1)break;if(!(d[(h[o>>2]|0)+(n<<24>>24<<1)>>1]&8192))break;n=h[i>>2]|0;e=n+12|0;a=h[e>>2]|0;if((a|0)==(h[n+16>>2]|0)){$k[h[(h[n>>2]|0)+40>>2]&127](n)|0;continue}else{h[e>>2]=a+1;continue}}n=h[i>>2]|0;do if(n){if((h[n+12>>2]|0)==(h[n+16>>2]|0))if(($k[h[(h[n>>2]|0)+36>>2]&127](n)|0)==-1){h[i>>2]=0;n=0;break}else{n=h[i>>2]|0;break}}else n=0;while(0);n=(n|0)==0;do if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)?($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)==-1:0){h[t>>2]=0;s=32;break}if(!n)s=33}else s=32;while(0);if((s|0)==32?n:0)s=33;if((s|0)==33)h[r>>2]=h[r>>2]|2;return}function hu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;u=k;k=k+16|0;s=u+4|0;f=u;l=e+8|0;l=$k[h[(h[l>>2]|0)+8>>2]&127](l)|0;e=c[l>>0]|0;if(!(e&1))o=(e&255)>>>1;else o=h[l+4>>2]|0;e=c[l+12>>0]|0;if(!(e&1))e=(e&255)>>>1;else e=h[l+16>>2]|0;do if((o|0)!=(0-e|0)){h[f>>2]=h[r>>2];h[s>>2]=h[f>>2];e=Em(t,s,l,l+24|0,a,n,0)|0;o=h[i>>2]|0;if((e|0)==(l|0)&(o|0)==12){h[i>>2]=0;break}if((o|0)<12&(e-l|0)==12)h[i>>2]=o+12}else h[n>>2]=h[n>>2]|4;while(0);k=u;return}function mu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<61&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function bu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,1)|0;t=h[n>>2]|0;if((e|0)<7&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function vu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=bp(t,e,n,a,4)|0;if(!(h[n>>2]&4))h[i>>2]=e+-1900;k=o;return}function wu(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;e=h[i>>2]|0;do if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0))if(($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)==-1){h[i>>2]=0;e=0;break}else{e=h[i>>2]|0;break}}else e=0;while(0);a=(e|0)==0;e=h[t>>2]|0;do if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)?($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)==-1:0){h[t>>2]=0;s=11;break}if(a){o=e;s=13}else s=12}else s=11;while(0);if((s|0)==11)if(a)s=12;else{o=0;s=13}e:do if((s|0)==12)h[r>>2]=h[r>>2]|6;else if((s|0)==13){e=h[i>>2]|0;a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=m[a>>0]|0;if((Qk[h[(h[n>>2]|0)+36>>2]&63](n,e&255,0)|0)<<24>>24!=37){h[r>>2]=h[r>>2]|4;break}e=h[i>>2]|0;a=e+12|0;n=h[a>>2]|0;if((n|0)==(h[e+16>>2]|0)){$k[h[(h[e>>2]|0)+40>>2]&127](e)|0;e=h[i>>2]|0;if(!e)e=0;else s=21}else{h[a>>2]=n+1;s=21}do if((s|0)==21)if((h[e+12>>2]|0)==(h[e+16>>2]|0))if(($k[h[(h[e>>2]|0)+36>>2]&127](e)|0)==-1){h[i>>2]=0;e=0;break}else{e=h[i>>2]|0;break}while(0);e=(e|0)==0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0)?($k[h[(h[o>>2]|0)+36>>2]&127](o)|0)==-1:0){h[t>>2]=0;s=30;break}if(e)break e}else s=30;while(0);if((s|0)==30?!e:0)break;h[r>>2]=h[r>>2]|2}while(0);return}function pu(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0;y=k;k=k+32|0;v=y+16|0;b=y+12|0;g=y+8|0;w=y+4|0;p=y;f=hs(r)|0;h[g>>2]=f;x=0;g=Ae(26,g|0,43744)|0;m=x;x=0;if(m&1){y=Je()|0;ko(f)|0;fi(y|0)}ko(f)|0;h[n>>2]=0;f=h[i>>2]|0;e:do if((o|0)!=(s|0)){i:while(1){u=f;if(f){l=h[f+12>>2]|0;if((l|0)==(h[f+16>>2]|0))l=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else l=h[l>>2]|0;if((l|0)==-1){h[i>>2]=0;f=0;d=1;m=0}else{d=0;m=u}}else{f=0;d=1;m=u}c=h[t>>2]|0;l=c;do if(c){u=h[c+12>>2]|0;if((u|0)==(h[c+16>>2]|0))u=$k[h[(h[c>>2]|0)+36>>2]&127](c)|0;else u=h[u>>2]|0;if((u|0)!=-1)if(d)break;else{_=17;break i}else{h[t>>2]=0;l=0;_=15;break}}else _=15;while(0);if((_|0)==15){_=0;if(d){_=17;break}else c=0}t:do if((Qk[h[(h[g>>2]|0)+52>>2]&63](g,h[o>>2]|0,0)|0)<<24>>24==37){u=o+4|0;if((u|0)==(s|0)){_=21;break i}d=Qk[h[(h[g>>2]|0)+52>>2]&63](g,h[u>>2]|0,0)|0;switch(d<<24>>24){case 48:case 69:{c=o+8|0;if((c|0)==(s|0)){_=24;break i}o=u;u=Qk[h[(h[g>>2]|0)+52>>2]&63](g,h[c>>2]|0,0)|0;f=d;break}default:{u=d;f=0}}d=h[(h[e>>2]|0)+36>>2]|0;h[w>>2]=m;h[p>>2]=l;h[b>>2]=h[w>>2];h[v>>2]=h[p>>2];m=u_[d&15](e,b,v,r,n,a,u,f)|0;h[i>>2]=m;o=o+8|0}else{if(!(Qk[h[(h[g>>2]|0)+12>>2]&63](g,8192,h[o>>2]|0)|0)){u=f+12|0;l=h[u>>2]|0;c=f+16|0;if((l|0)==(h[c>>2]|0))l=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else l=h[l>>2]|0;m=r_[h[(h[g>>2]|0)+28>>2]&63](g,l)|0;if((m|0)!=(r_[h[(h[g>>2]|0)+28>>2]&63](g,h[o>>2]|0)|0)){_=61;break i}l=h[u>>2]|0;if((l|0)==(h[c>>2]|0))$k[h[(h[f>>2]|0)+40>>2]&127](f)|0;else h[u>>2]=l+4;o=o+4|0;break}do{o=o+4|0;if((o|0)==(s|0)){o=s;break}}while(Qk[h[(h[g>>2]|0)+12>>2]&63](g,8192,h[o>>2]|0)|0);l=c;d=c;while(1){if(f){u=h[f+12>>2]|0;if((u|0)==(h[f+16>>2]|0))u=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else u=h[u>>2]|0;if((u|0)==-1){h[i>>2]=0;c=1;f=0}else c=0}else{c=1;f=0}do if(d){u=h[d+12>>2]|0;if((u|0)==(h[d+16>>2]|0))u=$k[h[(h[d>>2]|0)+36>>2]&127](d)|0;else u=h[u>>2]|0;if((u|0)!=-1)if(c^(l|0)==0){m=l;d=l;break}else break t;else{h[t>>2]=0;l=0;_=44;break}}else _=44;while(0);if((_|0)==44){_=0;if(c)break t;else{m=l;d=0}}u=f+12|0;l=h[u>>2]|0;c=f+16|0;if((l|0)==(h[c>>2]|0))l=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else l=h[l>>2]|0;if(!(Qk[h[(h[g>>2]|0)+12>>2]&63](g,8192,l)|0))break t;l=h[u>>2]|0;if((l|0)==(h[c>>2]|0)){$k[h[(h[f>>2]|0)+40>>2]&127](f)|0;l=m;continue}else{h[u>>2]=l+4;l=m;continue}}}while(0);f=h[i>>2]|0;if(!((o|0)!=(s|0)&(h[n>>2]|0)==0))break e}if((_|0)==17){h[n>>2]=4;break}else if((_|0)==21){h[n>>2]=4;break}else if((_|0)==24){h[n>>2]=4;break}else if((_|0)==61){h[n>>2]=4;f=h[i>>2]|0;break}}while(0);if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0))o=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else o=h[o>>2]|0;if((o|0)==-1){h[i>>2]=0;f=0;u=1}else u=0}else{f=0;u=1}o=h[t>>2]|0;do if(o){l=h[o+12>>2]|0;if((l|0)==(h[o+16>>2]|0))o=$k[h[(h[o>>2]|0)+36>>2]&127](o)|0;else o=h[l>>2]|0;if((o|0)!=-1)if(u)break;else{_=76;break}else{h[t>>2]=0;_=74;break}}else _=74;while(0);if((_|0)==74?u:0)_=76;if((_|0)==76)h[n>>2]=h[n>>2]|2;k=y;return f|0}function gu(e){e=e|0;return}function ku(e){e=e|0;$m(e);return}function _u(e){e=e|0;return 2}function yu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=pu(e,f,s,r,n,a,44320,44352)|0;k=o;return e|0}function Tu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;o=k;k=k+16|0;s=o+12|0;f=o+8|0;u=o+4|0;l=o;b=e+8|0;b=$k[h[(h[b>>2]|0)+20>>2]&127](b)|0;h[u>>2]=h[i>>2];h[l>>2]=h[t>>2];d=c[b>>0]|0;m=(d&1)==0;t=b+4|0;i=m?t:h[b+8>>2]|0;t=i+((m?(d&255)>>>1:h[t>>2]|0)<<2)|0;h[f>>2]=h[u>>2];h[s>>2]=h[l>>2];e=pu(e,f,s,r,n,a,i,t)|0;k=o;return e|0}function Mu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l+4|0;f=l;r=hs(r)|0;h[o>>2]=r;x=0;o=Ae(26,o|0,43744)|0;u=x;x=0;if(u&1){u=Je()|0;ko(r)|0;fi(u|0)}else{ko(r)|0;h[f>>2]=h[t>>2];h[s>>2]=h[f>>2];Cu(e,a+24|0,i,s,n,o);k=l;return h[i>>2]|0}return 0}function Cu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0;o=k;k=k+16|0;s=o+4|0;f=o;e=e+8|0;e=$k[h[h[e>>2]>>2]&127](e)|0;h[f>>2]=h[r>>2];h[s>>2]=h[f>>2];t=(Fm(t,s,e,e+168|0,a,n,0)|0)-e|0;if((t|0)<168)h[i>>2]=((t|0)/12|0|0)%7|0;k=o;return}function xu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l+4|0;f=l;r=hs(r)|0;h[o>>2]=r;x=0;o=Ae(26,o|0,43744)|0;u=x;x=0;if(u&1){u=Je()|0;ko(r)|0;fi(u|0)}else{ko(r)|0;h[f>>2]=h[t>>2];h[s>>2]=h[f>>2];Eu(e,a+16|0,i,s,n,o);k=l;return h[i>>2]|0}return 0}function Eu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0;o=k;k=k+16|0;s=o+4|0;f=o;e=e+8|0;e=$k[h[(h[e>>2]|0)+4>>2]&127](e)|0;h[f>>2]=h[r>>2];h[s>>2]=h[f>>2];t=(Fm(t,s,e,e+288|0,a,n,0)|0)-e|0;if((t|0)<288)h[i>>2]=((t|0)/12|0|0)%12|0;k=o;return}function Su(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l+4|0;f=l;r=hs(r)|0;h[o>>2]=r;x=0;o=Ae(26,o|0,43744)|0;u=x;x=0;if(u&1){u=Je()|0;ko(r)|0;fi(u|0)}else{ko(r)|0;h[f>>2]=h[t>>2];h[s>>2]=h[f>>2];Au(e,a+20|0,i,s,n,o);k=l;return h[i>>2]|0}return 0}function Au(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,4)|0;if(!(h[n>>2]&4)){if((e|0)<69)e=e+2e3|0;else e=(e+-69|0)>>>0<31?e+1900|0:e;h[i>>2]=e+-1900}k=o;return}function Pu(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0;W=k;k=k+144|0;f=W+132|0;s=W+116|0;U=W+128|0;y=W+124|0;R=W+120|0;H=W+112|0;z=W+108|0;j=W+104|0;Y=W+100|0;V=W+96|0;q=W+92|0;l=W+88|0;u=W+84|0;d=W+80|0;m=W+76|0;b=W+72|0;v=W+68|0;w=W+64|0;p=W+60|0;g=W+56|0;_=W+52|0;T=W+48|0;M=W+44|0;C=W+40|0;E=W+36|0;S=W+32|0;A=W+28|0;P=W+24|0;I=W+20|0;L=W+16|0;D=W+12|0;O=W+8|0;B=W+4|0;N=W;h[n>>2]=0;F=hs(r)|0;h[U>>2]=F;x=0;U=Ae(26,U|0,43744)|0;X=x;x=0;if(X&1){X=Je()|0;ko(F)|0;fi(X|0)}ko(F)|0;do switch(o<<24>>24|0){case 65:case 97:{h[y>>2]=h[t>>2];h[f>>2]=h[y>>2];Cu(e,a+24|0,i,f,n,U);G=28;break}case 104:case 66:case 98:{h[R>>2]=h[t>>2];h[f>>2]=h[R>>2];Eu(e,a+16|0,i,f,n,U);G=28;break}case 99:{X=e+8|0;X=$k[h[(h[X>>2]|0)+12>>2]&127](X)|0;h[H>>2]=h[i>>2];h[z>>2]=h[t>>2];o=c[X>>0]|0;t=(o&1)==0;G=X+4|0;X=t?G:h[X+8>>2]|0;G=X+((t?(o&255)>>>1:h[G>>2]|0)<<2)|0;h[s>>2]=h[H>>2];h[f>>2]=h[z>>2];G=pu(e,s,f,r,n,a,X,G)|0;h[i>>2]=G;G=28;break}case 101:case 100:{h[j>>2]=h[t>>2];h[f>>2]=h[j>>2];Iu(e,a+12|0,i,f,n,U);G=28;break}case 68:{h[Y>>2]=h[i>>2];h[V>>2]=h[t>>2];h[s>>2]=h[Y>>2];h[f>>2]=h[V>>2];G=pu(e,s,f,r,n,a,44352,44384)|0;h[i>>2]=G;G=28;break}case 70:{h[q>>2]=h[i>>2];h[l>>2]=h[t>>2];h[s>>2]=h[q>>2];h[f>>2]=h[l>>2];G=pu(e,s,f,r,n,a,44384,44416)|0;h[i>>2]=G;G=28;break}case 72:{h[u>>2]=h[t>>2];h[f>>2]=h[u>>2];Lu(e,a+8|0,i,f,n,U);G=28;break}case 73:{h[d>>2]=h[t>>2];h[f>>2]=h[d>>2];Du(e,a+8|0,i,f,n,U);G=28;break}case 106:{h[m>>2]=h[t>>2];h[f>>2]=h[m>>2];Ru(e,a+28|0,i,f,n,U);G=28;break}case 109:{h[b>>2]=h[t>>2];h[f>>2]=h[b>>2];Ou(e,a+16|0,i,f,n,U);G=28;break}case 77:{h[v>>2]=h[t>>2];h[f>>2]=h[v>>2];Bu(e,a+4|0,i,f,n,U);G=28;break}case 116:case 110:{h[w>>2]=h[t>>2];h[f>>2]=h[w>>2];Nu(e,i,f,n,U);G=28;break}case 112:{h[p>>2]=h[t>>2];h[f>>2]=h[p>>2];Fu(e,a+8|0,i,f,n,U);G=28;break}case 114:{h[g>>2]=h[i>>2];h[_>>2]=h[t>>2];h[s>>2]=h[g>>2];h[f>>2]=h[_>>2];G=pu(e,s,f,r,n,a,44416,44460)|0;h[i>>2]=G;G=28;break}case 82:{h[T>>2]=h[i>>2];h[M>>2]=h[t>>2];h[s>>2]=h[T>>2];h[f>>2]=h[M>>2];G=pu(e,s,f,r,n,a,44460,44480)|0;h[i>>2]=G;G=28;break}case 83:{h[C>>2]=h[t>>2];h[f>>2]=h[C>>2];Uu(e,a,i,f,n,U);G=28;break}case 84:{h[E>>2]=h[i>>2];h[S>>2]=h[t>>2];h[s>>2]=h[E>>2];h[f>>2]=h[S>>2];G=pu(e,s,f,r,n,a,44480,44512)|0;h[i>>2]=G;G=28;break}case 119:{h[A>>2]=h[t>>2];h[f>>2]=h[A>>2];Hu(e,a+24|0,i,f,n,U);G=28;break}case 120:{X=h[(h[e>>2]|0)+20>>2]|0;h[P>>2]=h[i>>2];h[I>>2]=h[t>>2];h[s>>2]=h[P>>2];h[f>>2]=h[I>>2];s=Kk[X&63](e,s,f,r,n,a)|0;break}case 88:{X=e+8|0;X=$k[h[(h[X>>2]|0)+24>>2]&127](X)|0;h[L>>2]=h[i>>2];h[D>>2]=h[t>>2];o=c[X>>0]|0;t=(o&1)==0;G=X+4|0;X=t?G:h[X+8>>2]|0;G=X+((t?(o&255)>>>1:h[G>>2]|0)<<2)|0;h[s>>2]=h[L>>2];h[f>>2]=h[D>>2];G=pu(e,s,f,r,n,a,X,G)|0;h[i>>2]=G;G=28;break}case 121:{h[O>>2]=h[t>>2];h[f>>2]=h[O>>2];Au(e,a+20|0,i,f,n,U);G=28;break}case 89:{h[B>>2]=h[t>>2];h[f>>2]=h[B>>2];zu(e,a+20|0,i,f,n,U);G=28;break}case 37:{h[N>>2]=h[t>>2];h[f>>2]=h[N>>2];ju(e,i,f,n,U);G=28;break}default:{h[n>>2]=h[n>>2]|4;G=28}}while(0);if((G|0)==28)s=h[i>>2]|0;k=W;return s|0}function Iu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e+-1|0)>>>0<31&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function Lu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<24&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function Du(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e+-1|0)>>>0<12&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function Ru(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,3)|0;t=h[n>>2]|0;if((e|0)<366&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function Ou(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<13&(t&4|0)==0)h[i>>2]=e+-1;else h[n>>2]=t|4;k=o;return}function Bu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<60&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function Nu(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;e:while(1){e=h[i>>2]|0;do if(e){a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=h[a>>2]|0;if((e|0)==-1){h[i>>2]=0;o=1;break}else{o=(h[i>>2]|0)==0;break}}else o=1;while(0);a=h[t>>2]|0;do if(a){e=h[a+12>>2]|0;if((e|0)==(h[a+16>>2]|0))e=$k[h[(h[a>>2]|0)+36>>2]&127](a)|0;else e=h[e>>2]|0;if((e|0)!=-1)if(o){o=a;break}else{o=a;break e}else{h[t>>2]=0;s=15;break}}else s=15;while(0);if((s|0)==15){s=0;if(o){o=0;break}else o=0}e=h[i>>2]|0;a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=h[a>>2]|0;if(!(Qk[h[(h[n>>2]|0)+12>>2]&63](n,8192,e)|0))break;e=h[i>>2]|0;a=e+12|0;o=h[a>>2]|0;if((o|0)==(h[e+16>>2]|0)){$k[h[(h[e>>2]|0)+40>>2]&127](e)|0;continue}else{h[a>>2]=o+4;continue}}e=h[i>>2]|0;do if(e){a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=h[a>>2]|0;if((e|0)==-1){h[i>>2]=0;a=1;break}else{a=(h[i>>2]|0)==0;break}}else a=1;while(0);do if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0))e=$k[h[(h[o>>2]|0)+36>>2]&127](o)|0;else e=h[e>>2]|0;if((e|0)!=-1)if(a)break;else{s=39;break}else{h[t>>2]=0;s=37;break}}else s=37;while(0);if((s|0)==37?a:0)s=39;if((s|0)==39)h[r>>2]=h[r>>2]|2;return}function Fu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;u=k;k=k+16|0;s=u+4|0;f=u;l=e+8|0;l=$k[h[(h[l>>2]|0)+8>>2]&127](l)|0;e=c[l>>0]|0;if(!(e&1))o=(e&255)>>>1;else o=h[l+4>>2]|0;e=c[l+12>>0]|0;if(!(e&1))e=(e&255)>>>1;else e=h[l+16>>2]|0;do if((o|0)!=(0-e|0)){h[f>>2]=h[r>>2];h[s>>2]=h[f>>2];e=Fm(t,s,l,l+24|0,a,n,0)|0;o=h[i>>2]|0;if((e|0)==(l|0)&(o|0)==12){h[i>>2]=0;break}if((o|0)<12&(e-l|0)==12)h[i>>2]=o+12}else h[n>>2]=h[n>>2]|4;while(0);k=u;return}function Uu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,2)|0;t=h[n>>2]|0;if((e|0)<61&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function Hu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,1)|0;t=h[n>>2]|0;if((e|0)<7&(t&4|0)==0)h[i>>2]=e;else h[n>>2]=t|4;k=o;return}function zu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;o=k;k=k+16|0;e=o+4|0;s=o;h[s>>2]=h[r>>2];h[e>>2]=h[s>>2];e=vp(t,e,n,a,4)|0;if(!(h[n>>2]&4))h[i>>2]=e+-1900;k=o;return}function ju(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0;e=h[i>>2]|0;do if(e){a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=h[a>>2]|0;if((e|0)==-1){h[i>>2]=0;o=1;break}else{o=(h[i>>2]|0)==0;break}}else o=1;while(0);a=h[t>>2]|0;do if(a){e=h[a+12>>2]|0;if((e|0)==(h[a+16>>2]|0))e=$k[h[(h[a>>2]|0)+36>>2]&127](a)|0;else e=h[e>>2]|0;if((e|0)!=-1)if(o){s=a;f=17;break}else{f=16;break}else{h[t>>2]=0;f=14;break}}else f=14;while(0);if((f|0)==14)if(o)f=16;else{s=0;f=17}e:do if((f|0)==16)h[r>>2]=h[r>>2]|6;else if((f|0)==17){e=h[i>>2]|0;a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=h[a>>2]|0;if((Qk[h[(h[n>>2]|0)+52>>2]&63](n,e,0)|0)<<24>>24!=37){h[r>>2]=h[r>>2]|4;break}e=h[i>>2]|0;a=e+12|0;o=h[a>>2]|0;if((o|0)==(h[e+16>>2]|0)){$k[h[(h[e>>2]|0)+40>>2]&127](e)|0;e=h[i>>2]|0;if(!e)a=1;else f=25}else{h[a>>2]=o+4;f=25}do if((f|0)==25){a=h[e+12>>2]|0;if((a|0)==(h[e+16>>2]|0))e=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;else e=h[a>>2]|0;if((e|0)==-1){h[i>>2]=0;a=1;break}else{a=(h[i>>2]|0)==0;break}}while(0);do if(s){e=h[s+12>>2]|0;if((e|0)==(h[s+16>>2]|0))e=$k[h[(h[s>>2]|0)+36>>2]&127](s)|0;else e=h[e>>2]|0;if((e|0)!=-1)if(a)break e;else break;else{h[t>>2]=0;f=37;break}}else f=37;while(0);if((f|0)==37?!a:0)break;h[r>>2]=h[r>>2]|2}while(0);return}function Yu(e){e=e|0;Vu(e+8|0);return}function Vu(e){e=e|0;var i=0,t=0,r=0;i=h[e>>2]|0;x=0;t=Le(3)|0;r=x;x=0;do if(!(r&1)){if((i|0)!=(t|0)?(x=0,ge(164,h[e>>2]|0),r=x,x=0,r&1):0)break;return}while(0);r=Je(0)|0;Wi(r)}function qu(e){e=e|0;Vu(e+8|0);$m(e);return}function Wu(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0;f=k;k=k+112|0;s=f+4|0;t=f;h[t>>2]=s+100;Gu(e+8|0,s,t,n,a,o);n=h[t>>2]|0;t=h[i>>2]|0;if((s|0)!=(n|0))do{o=c[s>>0]|0;do if(t){r=t+24|0;a=h[r>>2]|0;if((a|0)==(h[t+28>>2]|0)){i=(r_[h[(h[t>>2]|0)+52>>2]&63](t,o&255)|0)==-1;t=i?0:t;break}else{h[r>>2]=a+1;c[a>>0]=o;break}}else t=0;while(0);s=s+1|0}while((s|0)!=(n|0));k=f;return t|0}function Gu(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0;l=k;k=k+16|0;f=l;c[f>>0]=37;o=f+1|0;c[o>>0]=n;s=f+2|0;c[s>>0]=a;c[f+3>>0]=0;if(a<<24>>24){c[o>>0]=a;c[s>>0]=n}e=i+(ii(i|0,(h[t>>2]|0)-i|0,f|0,r|0,h[e>>2]|0)|0)|0;h[t>>2]=e;k=l;return}function Xu(e){e=e|0;Vu(e+8|0);return}function Ku(e){e=e|0;Vu(e+8|0);$m(e);return}function $u(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0;s=k;k=k+416|0;r=s+8|0;t=s;h[t>>2]=r+400;Ju(e+8|0,r,t,n,a,o);e=h[t>>2]|0;t=h[i>>2]|0;if((r|0)!=(e|0)){n=r;do{r=h[n>>2]|0;if(!t)t=0;else{a=t+24|0;o=h[a>>2]|0;if((o|0)==(h[t+28>>2]|0))r=r_[h[(h[t>>2]|0)+52>>2]&63](t,r)|0;else{h[a>>2]=o+4;h[o>>2]=r}t=(r|0)==-1?0:t}n=n+4|0}while((n|0)!=(e|0))}k=s;return t|0}function Ju(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0;o=k;k=k+128|0;l=o+16|0;u=o+12|0;s=o;f=o+8|0;h[u>>2]=l+100;Gu(e,l,u,r,n,a);n=s;h[n>>2]=0;h[n+4>>2]=0;h[f>>2]=l;n=(h[t>>2]|0)-i>>2;a=uv(h[e>>2]|0)|0;x=0;n=De(8,i|0,f|0,n|0,s|0)|0;e=x;x=0;if(e&1){n=Je()|0;if((a|0)!=0?(x=0,ye(74,a|0)|0,u=x,x=0,u&1):0){u=Je(0)|0;Wi(u)}fi(n|0)}if((a|0)!=0?(x=0,ye(74,a|0)|0,u=x,x=0,u&1):0){u=Je(0)|0;Wi(u)}if((n|0)==-1)Gc(57411);else{h[t>>2]=i+(n<<2);k=o;return}}function Qu(e){e=e|0;return}function Zu(e){e=e|0;$m(e);return}function ec(e){e=e|0;return 127}function ic(e){e=e|0;return 127}function tc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function rc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function nc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function ac(e,i){e=e|0;i=i|0;Fo(e,1,45);return}function oc(e){e=e|0;return 0}function sc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function fc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function lc(e){e=e|0;return}function uc(e){e=e|0;$m(e);return}function cc(e){e=e|0;return 127}function dc(e){e=e|0;return 127}function hc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function mc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function bc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function vc(e,i){e=e|0;i=i|0;Fo(e,1,45);return}function wc(e){e=e|0;return 0}function pc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function gc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function kc(e){e=e|0;return}function _c(e){e=e|0;$m(e);return}function yc(e){e=e|0;return 2147483647}function Tc(e){e=e|0;return 2147483647}function Mc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function Cc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function xc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function Ec(e,i){e=e|0;i=i|0;Qo(e,1,45);return}function Sc(e){e=e|0;return 0}function Ac(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function Pc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function Ic(e){e=e|0;return}function Lc(e){e=e|0;$m(e);return}function Dc(e){e=e|0;return 2147483647}function Rc(e){e=e|0;return 2147483647}function Oc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function Bc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function Nc(e,i){e=e|0;i=i|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function Fc(e,i){e=e|0;i=i|0;Qo(e,1,45);return}function Uc(e){e=e|0;return 0}function Hc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function zc(e,i){e=e|0;i=i|0;c[e>>0]=2;c[e+1>>0]=3;c[e+2>>0]=0;c[e+3>>0]=4;return}function jc(e){e=e|0;return}function Yc(e){e=e|0;$m(e);return}function Vc(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0;E=k;k=k+240|0;M=E+24|0;C=E;e=E+136|0;A=E+16|0;T=E+12|0;S=E+8|0;d=E+134|0;f=E+4|0;y=E+124|0;h[A>>2]=e;P=A+4|0;h[P>>2]=165;l=e+100|0;x=0;s=ye(67,n|0)|0;_=x;x=0;if(!(_&1)){h[S>>2]=s;x=0;e=Ae(26,S|0,43752)|0;_=x;x=0;e:do if(!(_&1)?(c[d>>0]=0,h[f>>2]=h[t>>2],u=h[n+4>>2]|0,x=0,h[M>>2]=h[f>>2],u=Te(1,i|0,M|0,r|0,S|0,u|0,a|0,d|0,e|0,A|0,T|0,l|0)|0,_=x,x=0,!(_&1)):0){i:do if(u){x=0;De(h[(h[e>>2]|0)+32>>2]|0,e|0,57432,57442,y|0)|0;_=x;x=0;if(_&1){L=10;break e}f=h[T>>2]|0;l=h[A>>2]|0;e=f-l|0;if((e|0)>98){e=Cw(e+2|0)|0;s=e;if(!e){x=0;Oe(6);_=x;x=0;if(!(_&1)){e=0;L=13}}else L=13}else{s=0;e=M;L=13}do if((L|0)==13){if(c[d>>0]|0){c[e>>0]=45;e=e+1|0}g=y+10|0;_=y;if(l>>>0<f>>>0){u=y+1|0;r=u+1|0;n=r+1|0;d=n+1|0;m=d+1|0;b=m+1|0;v=b+1|0;w=v+1|0;p=w+1|0;do{f=c[l>>0]|0;do if((c[y>>0]|0)!=f<<24>>24)if((c[u>>0]|0)!=f<<24>>24)if((c[r>>0]|0)!=f<<24>>24)if((c[n>>0]|0)!=f<<24>>24)if((c[d>>0]|0)==f<<24>>24)f=d;else{if((c[m>>0]|0)==f<<24>>24){f=m;break}if((c[b>>0]|0)==f<<24>>24){f=b;break}if((c[v>>0]|0)==f<<24>>24){f=v;break}if((c[w>>0]|0)==f<<24>>24){f=w;break}f=(c[p>>0]|0)==f<<24>>24?p:g}else f=n;else f=r;else f=u;else f=y;while(0);c[e>>0]=c[57432+(f-_)>>0]|0;l=l+1|0;e=e+1|0}while(l>>>0<(h[T>>2]|0)>>>0)}c[e>>0]=0;h[C>>2]=o;if((Gv(M,57443,C)|0)!=1?(x=0,ge(166,57447),o=x,x=0,o&1):0)break;if(s)xw(s);break i}while(0);e=Je()|0;if(!s){f=e;s=A;break e}xw(s);f=e;s=A;break e}while(0);e=h[i>>2]|0;do if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;e=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;o=x;x=0;if(o&1){L=10;break e}if((e|0)==-1){h[i>>2]=0;e=0;break}else{e=h[i>>2]|0;break}}}else e=0;while(0);s=(e|0)==0;e=h[t>>2]|0;do if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;e=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;o=x;x=0;if(o&1){L=10;break e}if((e|0)==-1){h[t>>2]=0;L=37;break}}if(!s)L=38}else L=37;while(0);if((L|0)==37?s:0)L=38;if((L|0)==38)h[a>>2]=h[a>>2]|2;s=h[i>>2]|0;ko(h[S>>2]|0)|0;e=h[A>>2]|0;h[A>>2]=0;if((e|0)!=0?(x=0,ge(h[P>>2]|0,e|0),L=x,x=0,L&1):0){L=Je(0)|0;Wi(L)}k=E;return s|0}else L=10;while(0);if((L|0)==10){f=Je()|0;s=A}ko(h[S>>2]|0)|0;e=h[s>>2]|0;h[s>>2]=0;if(!e)I=f;else{s=h[P>>2]|0;L=45}}else{f=Je()|0;h[A>>2]=0;s=165;L=45}if((L|0)==45){x=0;ge(s|0,e|0);L=x;x=0;if(L&1){L=Je(0)|0;Wi(L)}else I=f}fi(I|0);return 0}function qc(e){e=e|0;return}function Wc(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;var b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0;ie=k;k=k+512|0;z=ie+88|0;p=ie+96|0;re=ie+80|0;q=ie+72|0;V=ie+68|0;W=ie+500|0;j=ie+497|0;G=ie+496|0;$=ie+56|0;ee=ie+44|0;Q=ie+32|0;J=ie+20|0;Z=ie+8|0;Y=ie+4|0;K=ie;h[z>>2]=u;h[re>>2]=p;te=re+4|0;h[te>>2]=165;h[q>>2]=p;h[V>>2]=p+400;h[$>>2]=0;h[$+4>>2]=0;h[$+8>>2]=0;h[ee>>2]=0;h[ee+4>>2]=0;h[ee+8>>2]=0;h[Q>>2]=0;h[Q+4>>2]=0;h[Q+8>>2]=0;h[J>>2]=0;h[J+4>>2]=0;h[J+8>>2]=0;h[Z>>2]=0;h[Z+4>>2]=0;h[Z+8>>2]=0;x=0;Se(1,t|0,r|0,W|0,j|0,G|0,$|0,ee|0,Q|0,J|0,Y|0);H=x;x=0;e:do if(H&1)s=Je()|0;else{h[l>>2]=h[f>>2];R=s+8|0;O=Q+4|0;B=J+4|0;N=J+8|0;F=J+1|0;U=Q+8|0;H=Q+1|0;M=(n&512|0)!=0;C=ee+8|0;E=ee+1|0;S=ee+4|0;A=Z+4|0;P=Z+8|0;I=Z+1|0;L=W+3|0;D=$+4|0;T=0;w=0;i:while(1){u=h[e>>2]|0;do if(u){if((h[u+12>>2]|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}if((u|0)==-1){h[e>>2]=0;u=0;break}else{u=h[e>>2]|0;break}}}else u=0;while(0);u=(u|0)==0;s=h[i>>2]|0;do if(s){if((h[s+12>>2]|0)!=(h[s+16>>2]|0))if(u){y=s;break}else{X=235;break i}x=0;t=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=24;break i}if((t|0)!=-1)if(u){y=s;break}else{X=235;break i}else{h[i>>2]=0;X=15;break}}else X=15;while(0);if((X|0)==15){X=0;if(u){X=235;break}else y=0}t:do switch(c[W+T>>0]|0){case 1:{if((T|0)!=3){u=h[e>>2]|0;s=h[u+12>>2]|0;if((s|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;X=x;x=0;if(X&1){X=24;break i}}else u=m[s>>0]|0;if((u&255)<<24>>24<=-1){X=40;break i}if(!(d[(h[R>>2]|0)+(u<<24>>24<<1)>>1]&8192)){X=40;break i}u=h[e>>2]|0;s=u+12|0;t=h[s>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;X=x;x=0;if(X&1){X=24;break i}}else{h[s>>2]=t+1;u=m[t>>0]|0}x=0;ke(55,Z|0,u&255|0);X=x;x=0;if(X&1){X=24;break i}else{u=y;r=y;X=42}}break}case 0:{if((T|0)!=3){u=y;r=y;X=42}break}case 3:{s=c[Q>>0]|0;u=(s&1)==0?(s&255)>>>1:h[O>>2]|0;t=c[J>>0]|0;r=(t&1)==0?(t&255)>>>1:h[B>>2]|0;if((u|0)!=(0-r|0)){if(!u){u=h[e>>2]|0;s=h[u+12>>2]|0;if((s|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}s=c[J>>0]|0}else{u=m[s>>0]|0;s=t}if((u&255)<<24>>24!=(c[((s&1)==0?F:h[N>>2]|0)>>0]|0))break t;u=h[e>>2]|0;s=u+12|0;t=h[s>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}}else h[s>>2]=t+1;c[o>>0]=1;y=c[J>>0]|0;w=((y&1)==0?(y&255)>>>1:h[B>>2]|0)>>>0>1?J:w;break t}n=h[e>>2]|0;b=h[n+12>>2]|0;t=h[n+16>>2]|0;u=(b|0)==(t|0);if(!r){if(u){x=0;u=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){X=24;break i}s=c[Q>>0]|0}else u=m[b>>0]|0;if((u&255)<<24>>24!=(c[((s&1)==0?H:h[U>>2]|0)>>0]|0)){c[o>>0]=1;break t}u=h[e>>2]|0;s=u+12|0;t=h[s>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}}else h[s>>2]=t+1;y=c[Q>>0]|0;w=((y&1)==0?(y&255)>>>1:h[O>>2]|0)>>>0>1?Q:w;break t}if(u){x=0;u=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){X=24;break i}t=h[e>>2]|0;s=c[Q>>0]|0;n=t;b=h[t+12>>2]|0;t=h[t+16>>2]|0}else u=m[b>>0]|0;r=n+12|0;t=(b|0)==(t|0);if((u&255)<<24>>24==(c[((s&1)==0?H:h[U>>2]|0)>>0]|0)){if(t){x=0;ye(h[(h[n>>2]|0)+40>>2]|0,n|0)|0;y=x;x=0;if(y&1){X=24;break i}}else h[r>>2]=b+1;y=c[Q>>0]|0;w=((y&1)==0?(y&255)>>>1:h[O>>2]|0)>>>0>1?Q:w;break t}if(t){x=0;u=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){X=24;break i}}else u=m[b>>0]|0;if((u&255)<<24>>24!=(c[((c[J>>0]&1)==0?F:h[N>>2]|0)>>0]|0)){X=104;break i}u=h[e>>2]|0;s=u+12|0;t=h[s>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}}else h[s>>2]=t+1;c[o>>0]=1;y=c[J>>0]|0;w=((y&1)==0?(y&255)>>>1:h[B>>2]|0)>>>0>1?J:w}break}case 2:{if(!(T>>>0<2|(w|0)!=0)?!(M|(T|0)==2&(c[L>>0]|0)!=0):0){w=0;break t}g=c[ee>>0]|0;u=(g&1)==0;_=h[C>>2]|0;t=u?E:_;v=t;r:do if((T|0)!=0?(m[W+(T+-1)>>0]|0)<2:0){b=u?(g&255)>>>1:h[S>>2]|0;r=t+b|0;n=h[R>>2]|0;n:do if(!b)s=v;else{b=t;s=v;do{u=c[b>>0]|0;if(u<<24>>24<=-1)break n;if(!(d[n+(u<<24>>24<<1)>>1]&8192))break n;b=b+1|0;s=b}while((b|0)!=(r|0))}while(0);r=s-v|0;n=c[Z>>0]|0;u=(n&1)==0;n=u?(n&255)>>>1:h[A>>2]|0;if(n>>>0>=r>>>0){u=u?I:h[P>>2]|0;b=u+n|0;if((s|0)!=(v|0)){u=u+(n-r)|0;while(1){if((c[u>>0]|0)!=(c[t>>0]|0)){s=v;break r}u=u+1|0;if((u|0)==(b|0))break;else t=t+1|0}}}else s=v}else s=v;while(0);u=(g&1)==0;u=(u?E:_)+(u?(g&255)>>>1:h[S>>2]|0)|0;r:do if((s|0)!=(u|0)){n=y;r=y;u=s;while(1){s=h[e>>2]|0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;s=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=21;break i}if((s|0)==-1){h[e>>2]=0;s=0;break}else{s=h[e>>2]|0;break}}}else s=0;while(0);t=(s|0)==0;do if(r){if((h[r+12>>2]|0)!=(h[r+16>>2]|0))if(t){s=n;b=r;break}else break r;x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){X=21;break i}if((s|0)!=-1)if(t^(n|0)==0){s=n;b=n;break}else break r;else{h[i>>2]=0;s=0;X=131;break}}else{s=n;X=131}while(0);if((X|0)==131){X=0;if(t)break r;else b=0}t=h[e>>2]|0;r=h[t+12>>2]|0;if((r|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){X=21;break i}}else t=m[r>>0]|0;if((t&255)<<24>>24!=(c[u>>0]|0))break r;t=h[e>>2]|0;r=t+12|0;n=h[r>>2]|0;if((n|0)==(h[t+16>>2]|0)){x=0;ye(h[(h[t>>2]|0)+40>>2]|0,t|0)|0;y=x;x=0;if(y&1){X=21;break i}}else h[r>>2]=n+1;u=u+1|0;t=c[ee>>0]|0;y=(t&1)==0;t=(y?E:h[C>>2]|0)+(y?(t&255)>>>1:h[S>>2]|0)|0;if((u|0)==(t|0)){u=t;break}else{n=s;r=b}}}while(0);if(M?(y=c[ee>>0]|0,_=(y&1)==0,(u|0)!=((_?E:h[C>>2]|0)+(_?(y&255)>>>1:h[S>>2]|0)|0)):0){X=143;break i}break}case 4:{v=c[G>>0]|0;s=y;n=y;u=0;r:while(1){t=h[e>>2]|0;do if(t){if((h[t+12>>2]|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){X=23;break i}if((t|0)==-1){h[e>>2]=0;t=0;break}else{t=h[e>>2]|0;break}}}else t=0;while(0);r=(t|0)==0;do if(n){if((h[n+12>>2]|0)!=(h[n+16>>2]|0))if(r){b=s;break}else{r=s;break r}x=0;t=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){X=23;break i}if((t|0)!=-1)if(r^(s|0)==0){b=s;n=s;break}else{r=s;break r}else{h[i>>2]=0;s=0;X=156;break}}else X=156;while(0);if((X|0)==156){X=0;if(r){r=s;break}else{b=s;n=0}}s=h[e>>2]|0;t=h[s+12>>2]|0;if((t|0)==(h[s+16>>2]|0)){x=0;s=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=23;break i}}else s=m[t>>0]|0;t=s&255;if(t<<24>>24>-1?(d[(h[R>>2]|0)+(s<<24>>24<<1)>>1]&2048)!=0:0){s=h[l>>2]|0;if((s|0)==(h[z>>2]|0)){x=0;Re(10,f|0,l|0,z|0);y=x;x=0;if(y&1){X=23;break i}s=h[l>>2]|0}h[l>>2]=s+1;c[s>>0]=t;u=u+1|0}else{y=c[$>>0]|0;if(!(t<<24>>24==v<<24>>24&((u|0)!=0?(((y&1)==0?(y&255)>>>1:h[D>>2]|0)|0)!=0:0))){r=b;break}if((p|0)==(h[V>>2]|0)){x=0;Re(11,re|0,q|0,V|0);y=x;x=0;if(y&1){X=23;break i}p=h[q>>2]|0}y=p+4|0;h[q>>2]=y;h[p>>2]=u;p=y;u=0}s=h[e>>2]|0;t=s+12|0;r=h[t>>2]|0;if((r|0)==(h[s+16>>2]|0)){x=0;ye(h[(h[s>>2]|0)+40>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=23;break i}else{s=b;continue}}else{h[t>>2]=r+1;s=b;continue}}if((u|0)!=0?(h[re>>2]|0)!=(p|0):0){if((p|0)==(h[V>>2]|0)){x=0;Re(11,re|0,q|0,V|0);y=x;x=0;if(y&1){X=24;break i}p=h[q>>2]|0}y=p+4|0;h[q>>2]=y;h[p>>2]=u;p=y}b=h[Y>>2]|0;if((b|0)>0){u=h[e>>2]|0;do if(u){if((h[u+12>>2]|0)==(h[u+16>>2]|0)){
x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}if((u|0)==-1){h[e>>2]=0;u=0;break}else{u=h[e>>2]|0;break}}}else u=0;while(0);u=(u|0)==0;do if(r){if((h[r+12>>2]|0)==(h[r+16>>2]|0)){x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){X=24;break i}if((s|0)==-1){h[i>>2]=0;X=193;break}}if(!u){X=198;break i}}else X=193;while(0);if((X|0)==193){X=0;if(u){X=198;break i}else r=0}u=h[e>>2]|0;s=h[u+12>>2]|0;if((s|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}}else u=m[s>>0]|0;if((u&255)<<24>>24!=(c[j>>0]|0)){X=198;break i}u=h[e>>2]|0;s=u+12|0;t=h[s>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=24;break i}}else h[s>>2]=t+1;if((b|0)>0){n=r;t=r;v=b;while(1){u=h[e>>2]|0;do if(u){if((h[u+12>>2]|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=22;break i}if((u|0)==-1){h[e>>2]=0;u=0;break}else{u=h[e>>2]|0;break}}}else u=0;while(0);s=(u|0)==0;do if(t){if((h[t+12>>2]|0)!=(h[t+16>>2]|0))if(s){u=n;b=t;break}else{X=222;break i}x=0;u=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){X=22;break i}if((u|0)!=-1)if(s^(n|0)==0){u=n;b=n;break}else{X=222;break i}else{h[i>>2]=0;u=0;X=215;break}}else{u=n;X=215}while(0);if((X|0)==215){X=0;if(s){X=222;break i}else b=0}s=h[e>>2]|0;t=h[s+12>>2]|0;if((t|0)==(h[s+16>>2]|0)){x=0;s=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=22;break i}}else s=m[t>>0]|0;if((s&255)<<24>>24<=-1){X=222;break i}if(!(d[(h[R>>2]|0)+(s<<24>>24<<1)>>1]&2048)){X=222;break i}if((h[l>>2]|0)==(h[z>>2]|0)?(x=0,Re(10,f|0,l|0,z|0),y=x,x=0,y&1):0){X=22;break i}s=h[e>>2]|0;t=h[s+12>>2]|0;if((t|0)==(h[s+16>>2]|0)){x=0;s=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=22;break i}}else s=m[t>>0]|0;t=h[l>>2]|0;h[l>>2]=t+1;c[t>>0]=s;s=v;v=v+-1|0;h[Y>>2]=v;t=h[e>>2]|0;r=t+12|0;n=h[r>>2]|0;if((n|0)==(h[t+16>>2]|0)){x=0;ye(h[(h[t>>2]|0)+40>>2]|0,t|0)|0;y=x;x=0;if(y&1){X=22;break i}}else h[r>>2]=n+1;if((s|0)<=1)break;else{n=u;t=b}}}}if((h[l>>2]|0)==(h[f>>2]|0)){X=233;break i}break}default:{}}while(0);t:do if((X|0)==42)while(1){X=0;s=h[e>>2]|0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;s=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;y=x;x=0;if(y&1){X=20;break i}if((s|0)==-1){h[e>>2]=0;s=0;break}else{s=h[e>>2]|0;break}}}else s=0;while(0);t=(s|0)==0;do if(r){if((h[r+12>>2]|0)!=(h[r+16>>2]|0))if(t){n=u;break}else break t;x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){X=20;break i}if((s|0)!=-1)if(t^(u|0)==0){n=u;r=u;break}else break t;else{h[i>>2]=0;u=0;X=54;break}}else X=54;while(0);if((X|0)==54){X=0;if(t)break t;else{n=u;r=0}}u=h[e>>2]|0;s=h[u+12>>2]|0;if((s|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){X=20;break i}}else u=m[s>>0]|0;if((u&255)<<24>>24<=-1)break t;if(!(d[(h[R>>2]|0)+(u<<24>>24<<1)>>1]&8192))break t;u=h[e>>2]|0;s=u+12|0;t=h[s>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;X=x;x=0;if(X&1){X=20;break i}}else{h[s>>2]=t+1;u=m[t>>0]|0}x=0;ke(55,Z|0,u&255|0);X=x;x=0;if(X&1){X=20;break i}else{u=n;X=42}}while(0);T=T+1|0;if(T>>>0>=4){X=235;break}}i:switch(X|0){case 20:{s=Je()|0;break e}case 21:{s=Je()|0;break e}case 22:{s=Je()|0;break e}case 23:{s=Je()|0;break e}case 24:{s=Je()|0;break e}case 40:{h[a>>2]=h[a>>2]|4;s=0;break}case 104:{h[a>>2]=h[a>>2]|4;s=0;break}case 143:{h[a>>2]=h[a>>2]|4;s=0;break}case 198:{h[a>>2]=h[a>>2]|4;s=0;break}case 222:{h[a>>2]=h[a>>2]|4;s=0;break}case 233:{h[a>>2]=h[a>>2]|4;s=0;break}case 235:{t:do if(w){n=w+1|0;b=w+8|0;v=w+4|0;t=1;r:while(1){u=c[w>>0]|0;if(!(u&1))u=(u&255)>>>1;else u=h[v>>2]|0;if(t>>>0>=u>>>0)break t;u=h[e>>2]|0;do if(u){if((h[u+12>>2]|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;l=x;x=0;if(l&1){X=19;break r}if((u|0)==-1){h[e>>2]=0;u=0;break}else{u=h[e>>2]|0;break}}}else u=0;while(0);s=(u|0)==0;u=h[i>>2]|0;do if(u){if((h[u+12>>2]|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;l=x;x=0;if(l&1){X=19;break r}if((u|0)==-1){h[i>>2]=0;X=253;break}}if(!s){X=260;break r}}else X=253;while(0);if((X|0)==253?(X=0,s):0){X=260;break}u=h[e>>2]|0;s=h[u+12>>2]|0;if((s|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;l=x;x=0;if(l&1){X=19;break}}else u=m[s>>0]|0;if(!(c[w>>0]&1))s=n;else s=h[b>>2]|0;if((u&255)<<24>>24!=(c[s+t>>0]|0)){X=260;break}u=t+1|0;s=h[e>>2]|0;t=s+12|0;r=h[t>>2]|0;if((r|0)==(h[s+16>>2]|0)){x=0;ye(h[(h[s>>2]|0)+40>>2]|0,s|0)|0;l=x;x=0;if(l&1){X=19;break}else{t=u;continue}}else{h[t>>2]=r+1;t=u;continue}}if((X|0)==19){s=Je()|0;break e}else if((X|0)==260){h[a>>2]=h[a>>2]|4;s=0;break i}}while(0);u=h[re>>2]|0;if((u|0)!=(p|0)?(h[K>>2]=0,$c($,u,p,K),(h[K>>2]|0)!=0):0){h[a>>2]=h[a>>2]|4;s=0}else s=1;break}}Uo(Z);Uo(J);Uo(Q);Uo(ee);Uo($);u=h[re>>2]|0;h[re>>2]=0;if((u|0)!=0?(x=0,ge(h[te>>2]|0,u|0),re=x,x=0,re&1):0){re=Je(0)|0;Wi(re)}k=ie;return s|0}while(0);Uo(Z);Uo(J);Uo(Q);Uo(ee);Uo($);u=h[re>>2]|0;h[re>>2]=0;if((u|0)!=0?(x=0,ge(h[te>>2]|0,u|0),re=x,x=0,re&1):0){re=Je(0)|0;Wi(re)}fi(s|0);return 0}function Gc(e){e=e|0;var i=0;i=$e(8)|0;x=0;ke(69,i|0,e|0);e=x;x=0;if(e&1){e=Je()|0;Ke(i|0);fi(e|0)}else Ti(i|0,440,58)}function Xc(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;_=k;k=k+144|0;s=_+24|0;e=_+32|0;y=_+16|0;v=_+8|0;d=_+4|0;m=_+28|0;f=_;h[y>>2]=e;C=y+4|0;h[C>>2]=165;l=e+100|0;x=0;g=ye(67,n|0)|0;u=x;x=0;if(!(u&1)){h[d>>2]=g;x=0;u=Ae(26,d|0,43752)|0;e=x;x=0;e:do if(!(e&1)?(c[m>>0]=0,w=h[t>>2]|0,h[f>>2]=w,b=h[n+4>>2]|0,p=w,x=0,h[s>>2]=h[f>>2],b=Te(1,i|0,s|0,r|0,d|0,b|0,a|0,m|0,u|0,y|0,v|0,l|0)|0,n=x,x=0,!(n&1)):0){if(b){if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}if(c[m>>0]|0){x=0;e=Ae(h[(h[u>>2]|0)+28>>2]|0,u|0,45)|0;n=x;x=0;if(n&1)break;x=0;ke(55,o|0,e|0);n=x;x=0;if(n&1)break}x=0;f=Ae(h[(h[u>>2]|0)+28>>2]|0,u|0,48)|0;n=x;x=0;if(n&1)break;e=h[y>>2]|0;l=h[v>>2]|0;s=l+-1|0;i:do if(e>>>0<s>>>0)do{if((c[e>>0]|0)!=f<<24>>24)break i;e=e+1|0}while(e>>>0<s>>>0);while(0);x=0;Me(32,o|0,e|0,l|0)|0;o=x;x=0;if(o&1)break}e=h[i>>2]|0;do if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;e=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;o=x;x=0;if(o&1)break e;if((e|0)==-1){h[i>>2]=0;e=0;break}else{e=h[i>>2]|0;break}}}else e=0;while(0);s=(e|0)==0;do if(w){if((h[p+12>>2]|0)==(h[p+16>>2]|0)){x=0;e=ye(h[(h[w>>2]|0)+36>>2]|0,p|0)|0;p=x;x=0;if(p&1)break e;if((e|0)==-1){h[t>>2]=0;M=29;break}}if(!s)M=30}else M=29;while(0);if((M|0)==29?s:0)M=30;if((M|0)==30)h[a>>2]=h[a>>2]|2;s=h[i>>2]|0;ko(g)|0;e=h[y>>2]|0;h[y>>2]=0;if((e|0)!=0?(x=0,ge(h[C>>2]|0,e|0),C=x,x=0,C&1):0){C=Je(0)|0;Wi(C)}k=_;return s|0}while(0);s=Je()|0;ko(g)|0;e=h[y>>2]|0;h[y>>2]=0;if(!e)T=s;else M=36}else{s=Je()|0;h[y>>2]=0;M=36}if((M|0)==36){x=0;ge(h[C>>2]|0,e|0);C=x;x=0;if(C&1){C=Je(0)|0;Wi(C)}else T=s}fi(T|0);return 0}function Kc(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;var u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0;M=k;k=k+112|0;u=M+100|0;d=M+88|0;m=M+76|0;b=M+64|0;v=M+52|0;w=M+48|0;p=M+36|0;g=M+24|0;_=M+12|0;y=M;do if(e){e=Fd(i,43360)|0;Xk[h[(h[e>>2]|0)+44>>2]&127](u,e);y=h[u>>2]|0;c[t>>0]=y;c[t+1>>0]=y>>8;c[t+2>>0]=y>>16;c[t+3>>0]=y>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](d,e);if(!(c[f>>0]&1)){c[f+1>>0]=0;c[f>>0]=0}else{c[h[f+8>>2]>>0]=0;h[f+4>>2]=0}x=0;ke(70,f|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[f>>2]=h[d>>2];h[f+4>>2]=h[d+4>>2];h[f+8>>2]=h[d+8>>2];h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;Uo(d);Xk[h[(h[e>>2]|0)+28>>2]&127](m,e);if(!(c[s>>0]&1)){c[s+1>>0]=0;c[s>>0]=0}else{c[h[s+8>>2]>>0]=0;h[s+4>>2]=0}x=0;ke(70,s|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[s>>2]=h[m>>2];h[s+4>>2]=h[m+4>>2];h[s+8>>2]=h[m+8>>2];h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;Uo(m);s=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;c[r>>0]=s;s=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;c[n>>0]=s;Xk[h[(h[e>>2]|0)+20>>2]&127](b,e);if(!(c[a>>0]&1)){c[a+1>>0]=0;c[a>>0]=0}else{c[h[a+8>>2]>>0]=0;h[a+4>>2]=0}x=0;ke(70,a|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}h[a>>2]=h[b>>2];h[a+4>>2]=h[b+4>>2];h[a+8>>2]=h[b+8>>2];h[b>>2]=0;h[b+4>>2]=0;h[b+8>>2]=0;Uo(b);Xk[h[(h[e>>2]|0)+24>>2]&127](v,e);if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}x=0;ke(70,o|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}else{h[o>>2]=h[v>>2];h[o+4>>2]=h[v+4>>2];h[o+8>>2]=h[v+8>>2];h[v>>2]=0;h[v+4>>2]=0;h[v+8>>2]=0;Uo(v);T=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Fd(i,43296)|0;Xk[h[(h[e>>2]|0)+44>>2]&127](w,e);w=h[w>>2]|0;c[t>>0]=w;c[t+1>>0]=w>>8;c[t+2>>0]=w>>16;c[t+3>>0]=w>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](p,e);if(!(c[f>>0]&1)){c[f+1>>0]=0;c[f>>0]=0}else{c[h[f+8>>2]>>0]=0;h[f+4>>2]=0}x=0;ke(70,f|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[f>>2]=h[p>>2];h[f+4>>2]=h[p+4>>2];h[f+8>>2]=h[p+8>>2];h[p>>2]=0;h[p+4>>2]=0;h[p+8>>2]=0;Uo(p);Xk[h[(h[e>>2]|0)+28>>2]&127](g,e);if(!(c[s>>0]&1)){c[s+1>>0]=0;c[s>>0]=0}else{c[h[s+8>>2]>>0]=0;h[s+4>>2]=0}x=0;ke(70,s|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[s>>2]=h[g>>2];h[s+4>>2]=h[g+4>>2];h[s+8>>2]=h[g+8>>2];h[g>>2]=0;h[g+4>>2]=0;h[g+8>>2]=0;Uo(g);s=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;c[r>>0]=s;s=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;c[n>>0]=s;Xk[h[(h[e>>2]|0)+20>>2]&127](_,e);if(!(c[a>>0]&1)){c[a+1>>0]=0;c[a>>0]=0}else{c[h[a+8>>2]>>0]=0;h[a+4>>2]=0}x=0;ke(70,a|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}h[a>>2]=h[_>>2];h[a+4>>2]=h[_+4>>2];h[a+8>>2]=h[_+8>>2];h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;Uo(_);Xk[h[(h[e>>2]|0)+24>>2]&127](y,e);if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}x=0;ke(70,o|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}else{h[o>>2]=h[y>>2];h[o+4>>2]=h[y+4>>2];h[o+8>>2]=h[y+8>>2];h[y>>2]=0;h[y+4>>2]=0;h[y+8>>2]=0;Uo(y);T=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}while(0);h[l>>2]=T;k=M;return}function $c(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;n=c[e>>0]|0;o=e+4|0;a=h[o>>2]|0;e:do if(((n&1)==0?(n&255)>>>1:a)|0){if((i|0)!=(t|0)){n=t+-4|0;if(n>>>0>i>>>0){a=i;do{s=h[a>>2]|0;h[a>>2]=h[n>>2];h[n>>2]=s;a=a+4|0;n=n+-4|0}while(a>>>0<n>>>0)}n=c[e>>0]|0;a=h[o>>2]|0}s=(n&1)==0;o=s?e+1|0:h[e+8>>2]|0;t=t+-4|0;e=o+(s?(n&255)>>>1:a)|0;a=c[o>>0]|0;n=a<<24>>24<1|a<<24>>24==127;i:do if(t>>>0>i>>>0){while(1){if(!n?(a<<24>>24|0)!=(h[i>>2]|0):0)break;o=(e-o|0)>1?o+1|0:o;i=i+4|0;a=c[o>>0]|0;n=a<<24>>24<1|a<<24>>24==127;if(i>>>0>=t>>>0)break i}h[r>>2]=4;break e}while(0);if(!n?((h[t>>2]|0)+-1|0)>>>0>=a<<24>>24>>>0:0)h[r>>2]=4}while(0);return}function Jc(e){e=e|0;return}function Qc(e){e=e|0;$m(e);return}function Zc(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0;E=k;k=k+576|0;y=E+424|0;C=E;e=E+24|0;A=E+16|0;T=E+12|0;S=E+8|0;d=E+464|0;f=E+4|0;M=E+468|0;h[A>>2]=e;I=A+4|0;h[I>>2]=165;l=e+400|0;x=0;s=ye(67,n|0)|0;_=x;x=0;if(!(_&1)){h[S>>2]=s;x=0;e=Ae(26,S|0,43744)|0;_=x;x=0;e:do if(!(_&1)?(c[d>>0]=0,h[f>>2]=h[t>>2],u=h[n+4>>2]|0,x=0,h[y>>2]=h[f>>2],u=Te(2,i|0,y|0,r|0,S|0,u|0,a|0,d|0,e|0,A|0,T|0,l|0)|0,_=x,x=0,!(_&1)):0){i:do if(u){x=0;De(h[(h[e>>2]|0)+48>>2]|0,e|0,57463,57473,y|0)|0;_=x;x=0;if(_&1){L=10;break e}f=h[T>>2]|0;l=h[A>>2]|0;e=f-l|0;if((e|0)>392){e=Cw((e>>2)+2|0)|0;s=e;if(!e){x=0;Oe(6);_=x;x=0;if(!(_&1)){e=0;L=13}}else L=13}else{s=0;e=M;L=13}do if((L|0)==13){if(c[d>>0]|0){c[e>>0]=45;e=e+1|0}g=y+40|0;_=y;if(l>>>0<f>>>0){u=y+4|0;r=u+4|0;n=r+4|0;d=n+4|0;m=d+4|0;b=m+4|0;v=b+4|0;w=v+4|0;p=w+4|0;do{f=h[l>>2]|0;do if((h[y>>2]|0)!=(f|0))if((h[u>>2]|0)!=(f|0))if((h[r>>2]|0)!=(f|0))if((h[n>>2]|0)!=(f|0))if((h[d>>2]|0)==(f|0))f=d;else{if((h[m>>2]|0)==(f|0)){f=m;break}if((h[b>>2]|0)==(f|0)){f=b;break}if((h[v>>2]|0)==(f|0)){f=v;break}if((h[w>>2]|0)==(f|0)){f=w;break}f=(h[p>>2]|0)==(f|0)?p:g}else f=n;else f=r;else f=u;else f=y;while(0);c[e>>0]=c[57463+(f-_>>2)>>0]|0;l=l+4|0;e=e+1|0}while(l>>>0<(h[T>>2]|0)>>>0)}c[e>>0]=0;h[C>>2]=o;if((Gv(M,57443,C)|0)!=1?(x=0,ge(166,57447),o=x,x=0,o&1):0)break;if(s)xw(s);break i}while(0);e=Je()|0;if(!s){f=e;s=A;break e}xw(s);f=e;s=A;break e}while(0);e=h[i>>2]|0;do if(e){s=h[e+12>>2]|0;if((s|0)==(h[e+16>>2]|0)){x=0;e=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;o=x;x=0;if(o&1){L=10;break e}}else e=h[s>>2]|0;if((e|0)==-1){h[i>>2]=0;f=1;break}else{f=(h[i>>2]|0)==0;break}}else f=1;while(0);e=h[t>>2]|0;do if(e){s=h[e+12>>2]|0;if((s|0)==(h[e+16>>2]|0)){x=0;e=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;o=x;x=0;if(o&1){L=10;break e}}else e=h[s>>2]|0;if((e|0)!=-1)if(f)break;else{L=40;break}else{h[t>>2]=0;L=38;break}}else L=38;while(0);if((L|0)==38?f:0)L=40;if((L|0)==40)h[a>>2]=h[a>>2]|2;s=h[i>>2]|0;ko(h[S>>2]|0)|0;e=h[A>>2]|0;h[A>>2]=0;if((e|0)!=0?(x=0,ge(h[I>>2]|0,e|0),L=x,x=0,L&1):0){L=Je(0)|0;Wi(L)}k=E;return s|0}else L=10;while(0);if((L|0)==10){f=Je()|0;s=A}ko(h[S>>2]|0)|0;e=h[s>>2]|0;h[s>>2]=0;if(!e)P=f;else{s=h[I>>2]|0;L=47}}else{f=Je()|0;h[A>>2]=0;s=165;L=47}if((L|0)==47){x=0;ge(s|0,e|0);L=x;x=0;if(L&1){L=Je(0)|0;Wi(L)}else P=f}fi(P|0);return 0}function ed(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;var d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0;$=k;k=k+512|0;B=$+96|0;d=$+104|0;Q=$+88|0;H=$+80|0;U=$+76|0;z=$+504|0;N=$+72|0;j=$+68|0;q=$+56|0;K=$+44|0;G=$+32|0;W=$+20|0;X=$+8|0;F=$+4|0;V=$;h[B>>2]=u;h[Q>>2]=d;J=Q+4|0;h[J>>2]=165;h[H>>2]=d;h[U>>2]=d+400;h[q>>2]=0;h[q+4>>2]=0;h[q+8>>2]=0;h[K>>2]=0;h[K+4>>2]=0;h[K+8>>2]=0;h[G>>2]=0;h[G+4>>2]=0;h[G+8>>2]=0;h[W>>2]=0;h[W+4>>2]=0;h[W+8>>2]=0;h[X>>2]=0;h[X+4>>2]=0;h[X+8>>2]=0;x=0;Se(2,t|0,r|0,z|0,N|0,j|0,q|0,K|0,G|0,W|0,F|0);O=x;x=0;e:do if(O&1)t=Je()|0;else{h[l>>2]=h[f>>2];L=G+4|0;D=W+4|0;R=W+8|0;O=G+8|0;M=(n&512|0)!=0;C=K+8|0;E=K+4|0;S=X+4|0;A=X+8|0;P=z+3|0;I=q+4|0;T=0;v=0;i:while(1){u=h[e>>2]|0;do if(u){t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else u=h[t>>2]|0;if((u|0)==-1){h[e>>2]=0;r=1;break}else{r=(h[e>>2]|0)==0;break}}else r=1;while(0);t=h[i>>2]|0;do if(t){u=h[t+12>>2]|0;if((u|0)==(h[t+16>>2]|0)){x=0;u=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else u=h[u>>2]|0;if((u|0)!=-1)if(r){y=t;break}else{w=d;Y=244;break i}else{h[i>>2]=0;Y=16;break}}else Y=16;while(0);if((Y|0)==16){Y=0;if(r){w=d;Y=244;break}else y=0}t:do switch(c[z+T>>0]|0){case 1:{if((T|0)!=3){u=h[e>>2]|0;t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;Y=x;x=0;if(Y&1){Y=26;break i}}else u=h[t>>2]|0;x=0;u=Me(h[(h[s>>2]|0)+12>>2]|0,s|0,8192,u|0)|0;Y=x;x=0;if(Y&1){Y=26;break i}if(!u){Y=42;break i}u=h[e>>2]|0;t=u+12|0;r=h[t>>2]|0;if((r|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;Y=x;x=0;if(Y&1){Y=26;break i}}else{h[t>>2]=r+4;u=h[r>>2]|0}x=0;ke(71,X|0,u|0);Y=x;x=0;if(Y&1){Y=26;break i}else{u=y;n=y;Y=44}}else u=d;break}case 0:{if((T|0)==3)u=d;else{u=y;n=y;Y=44}break}case 3:{t=c[G>>0]|0;u=(t&1)==0?(t&255)>>>1:h[L>>2]|0;r=c[W>>0]|0;n=(r&1)==0?(r&255)>>>1:h[D>>2]|0;if((u|0)==(0-n|0))u=d;else{if(!u){u=h[e>>2]|0;t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){Y=26;break i}t=c[W>>0]|0}else{u=h[t>>2]|0;t=r}if((u|0)!=(h[((t&1)==0?D:h[R>>2]|0)>>2]|0)){u=d;break t}u=h[e>>2]|0;t=u+12|0;r=h[t>>2]|0;if((r|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else h[t>>2]=r+4;c[o>>0]=1;y=c[W>>0]|0;u=d;v=((y&1)==0?(y&255)>>>1:h[D>>2]|0)>>>0>1?W:v;break t}b=h[e>>2]|0;w=h[b+12>>2]|0;r=h[b+16>>2]|0;u=(w|0)==(r|0);if(!n){if(u){x=0;u=ye(h[(h[b>>2]|0)+36>>2]|0,b|0)|0;y=x;x=0;if(y&1){Y=26;break i}t=c[G>>0]|0}else u=h[w>>2]|0;if((u|0)!=(h[((t&1)==0?L:h[O>>2]|0)>>2]|0)){c[o>>0]=1;u=d;break t}u=h[e>>2]|0;t=u+12|0;r=h[t>>2]|0;if((r|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else h[t>>2]=r+4;y=c[G>>0]|0;u=d;v=((y&1)==0?(y&255)>>>1:h[L>>2]|0)>>>0>1?G:v;break t}if(u){x=0;u=ye(h[(h[b>>2]|0)+36>>2]|0,b|0)|0;y=x;x=0;if(y&1){Y=26;break i}r=h[e>>2]|0;t=c[G>>0]|0;b=r;w=h[r+12>>2]|0;r=h[r+16>>2]|0}else u=h[w>>2]|0;n=b+12|0;r=(w|0)==(r|0);if((u|0)==(h[((t&1)==0?L:h[O>>2]|0)>>2]|0)){if(r){x=0;ye(h[(h[b>>2]|0)+40>>2]|0,b|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else h[n>>2]=w+4;y=c[G>>0]|0;u=d;v=((y&1)==0?(y&255)>>>1:h[L>>2]|0)>>>0>1?G:v;break t}if(r){x=0;u=ye(h[(h[b>>2]|0)+36>>2]|0,b|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else u=h[w>>2]|0;if((u|0)!=(h[((c[W>>0]&1)==0?D:h[R>>2]|0)>>2]|0)){Y=107;break i}u=h[e>>2]|0;t=u+12|0;r=h[t>>2]|0;if((r|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else h[t>>2]=r+4;c[o>>0]=1;y=c[W>>0]|0;u=d;v=((y&1)==0?(y&255)>>>1:h[D>>2]|0)>>>0>1?W:v}break}case 2:{if(!(T>>>0<2|(v|0)!=0)?!(M|(T|0)==2&(c[P>>0]|0)!=0):0){u=d;v=0;break t}n=c[K>>0]|0;r=h[C>>2]|0;t=(n&1)==0?E:r;u=t;r:do if((T|0)!=0?(m[z+(T+-1)>>0]|0)<2:0){_=(n&1)==0;n:do if((t|0)!=((_?E:r)+((_?(n&255)>>>1:h[E>>2]|0)<<2)|0)){n=t;while(1){x=0;t=Me(h[(h[s>>2]|0)+12>>2]|0,s|0,8192,h[n>>2]|0)|0;_=x;x=0;if(_&1){Y=23;break i}if(!t)break;n=n+4|0;u=n;t=c[K>>0]|0;r=h[C>>2]|0;_=(t&1)==0;if((n|0)==((_?E:r)+((_?(t&255)>>>1:h[E>>2]|0)<<2)|0)){n=t;break n}}n=c[K>>0]|0;r=h[C>>2]|0}while(0);w=(n&1)==0?E:r;t=w;p=u-t>>2;g=c[X>>0]|0;b=(g&1)==0;g=b?(g&255)>>>1:h[S>>2]|0;if(g>>>0>=p>>>0){b=b?S:h[A>>2]|0;_=b+(g<<2)|0;if(!p)t=u;else{b=b+(g-p<<2)|0;while(1){if((h[b>>2]|0)!=(h[w>>2]|0))break r;b=b+4|0;if((b|0)==(_|0)){t=u;break}else w=w+4|0}}}}else t=u;while(0);u=(n&1)==0;u=(u?E:r)+((u?(n&255)>>>1:h[E>>2]|0)<<2)|0;r:do if((t|0)!=(u|0)){b=y;n=y;u=t;while(1){t=h[e>>2]|0;do if(t){r=h[t+12>>2]|0;if((r|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=22;break i}}else t=h[r>>2]|0;if((t|0)==-1){h[e>>2]=0;r=1;break}else{r=(h[e>>2]|0)==0;break}}else r=1;while(0);do if(n){t=h[n+12>>2]|0;if((t|0)==(h[n+16>>2]|0)){x=0;t=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){Y=22;break i}}else t=h[t>>2]|0;if((t|0)!=-1)if(r^(b|0)==0){t=b;w=b;break}else break r;else{h[i>>2]=0;t=0;Y=136;break}}else{t=b;Y=136}while(0);if((Y|0)==136){Y=0;if(r)break r;else w=0}r=h[e>>2]|0;n=h[r+12>>2]|0;if((n|0)==(h[r+16>>2]|0)){x=0;r=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){Y=22;break i}}else r=h[n>>2]|0;if((r|0)!=(h[u>>2]|0))break r;r=h[e>>2]|0;n=r+12|0;b=h[n>>2]|0;if((b|0)==(h[r+16>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;y=x;x=0;if(y&1){Y=22;break i}}else h[n>>2]=b+4;u=u+4|0;r=c[K>>0]|0;y=(r&1)==0;r=(y?E:h[C>>2]|0)+((y?(r&255)>>>1:h[E>>2]|0)<<2)|0;if((u|0)==(r|0)){u=r;break}else{b=t;n=w}}}while(0);if(M?(y=c[K>>0]|0,_=(y&1)==0,(u|0)!=((_?E:h[C>>2]|0)+((_?(y&255)>>>1:h[E>>2]|0)<<2)|0)):0){Y=148;break i}else u=d;break}case 4:{g=h[j>>2]|0;p=y;b=y;u=d;t=0;r:while(1){r=h[e>>2]|0;do if(r){n=h[r+12>>2]|0;if((n|0)==(h[r+16>>2]|0)){x=0;r=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){Y=25;break i}}else r=h[n>>2]|0;if((r|0)==-1){h[e>>2]=0;n=1;break}else{n=(h[e>>2]|0)==0;break}}else n=1;while(0);do if(b){r=h[b+12>>2]|0;if((r|0)==(h[b+16>>2]|0)){x=0;r=ye(h[(h[b>>2]|0)+36>>2]|0,b|0)|0;y=x;x=0;if(y&1){Y=25;break i}}else r=h[r>>2]|0;if((r|0)!=-1)if(n^(p|0)==0){r=p;w=p;break}else{d=p;break r}else{h[i>>2]=0;r=0;Y=162;break}}else{r=p;Y=162}while(0);if((Y|0)==162){Y=0;if(n){d=r;break}else w=0}n=h[e>>2]|0;d=h[n+12>>2]|0;if((d|0)==(h[n+16>>2]|0)){x=0;n=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){Y=25;break i}}else n=h[d>>2]|0;x=0;d=Me(h[(h[s>>2]|0)+12>>2]|0,s|0,2048,n|0)|0;y=x;x=0;if(y&1){Y=25;break i}if(d){d=h[l>>2]|0;if((d|0)==(h[B>>2]|0)){x=0;Re(12,f|0,l|0,B|0);y=x;x=0;if(y&1){Y=25;break i}d=h[l>>2]|0}h[l>>2]=d+4;h[d>>2]=n;t=t+1|0}else{y=c[q>>0]|0;if(!((n|0)==(g|0)&((t|0)!=0?(((y&1)==0?(y&255)>>>1:h[I>>2]|0)|0)!=0:0))){d=r;break}if((u|0)==(h[U>>2]|0)){x=0;Re(11,Q|0,H|0,U|0);y=x;x=0;if(y&1){Y=25;break i}u=h[H>>2]|0}y=u+4|0;h[H>>2]=y;h[u>>2]=t;u=y;t=0}n=h[e>>2]|0;d=n+12|0;b=h[d>>2]|0;if((b|0)==(h[n+16>>2]|0)){x=0;ye(h[(h[n>>2]|0)+40>>2]|0,n|0)|0;y=x;x=0;if(y&1){Y=25;break i}else{p=r;b=w;continue}}else{h[d>>2]=b+4;p=r;b=w;continue}}if((t|0)!=0?(h[Q>>2]|0)!=(u|0):0){if((u|0)==(h[U>>2]|0)){x=0;Re(11,Q|0,H|0,U|0);y=x;x=0;if(y&1){Y=26;break i}u=h[H>>2]|0}y=u+4|0;h[H>>2]=y;h[u>>2]=t;u=y}w=h[F>>2]|0;if((w|0)>0){t=h[e>>2]|0;do if(t){r=h[t+12>>2]|0;if((r|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else t=h[r>>2]|0;if((t|0)==-1){h[e>>2]=0;r=1;break}else{r=(h[e>>2]|0)==0;break}}else r=1;while(0);do if(d){t=h[d+12>>2]|0;if((t|0)==(h[d+16>>2]|0)){x=0;t=ye(h[(h[d>>2]|0)+36>>2]|0,d|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else t=h[t>>2]|0;if((t|0)!=-1)if(r)break;else{Y=206;break i}else{h[i>>2]=0;Y=200;break}}else Y=200;while(0);if((Y|0)==200){Y=0;if(r){Y=206;break i}else d=0}t=h[e>>2]|0;r=h[t+12>>2]|0;if((r|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else t=h[r>>2]|0;if((t|0)!=(h[N>>2]|0)){Y=206;break i}t=h[e>>2]|0;r=t+12|0;n=h[r>>2]|0;if((n|0)==(h[t+16>>2]|0)){x=0;ye(h[(h[t>>2]|0)+40>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=26;break i}}else h[r>>2]=n+4;if((w|0)>0){b=d;n=d;p=w;while(1){t=h[e>>2]|0;do if(t){r=h[t+12>>2]|0;if((r|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=24;break i}}else t=h[r>>2]|0;if((t|0)==-1){h[e>>2]=0;r=1;break}else{r=(h[e>>2]|0)==0;break}}else r=1;while(0);do if(n){t=h[n+12>>2]|0;if((t|0)==(h[n+16>>2]|0)){x=0;t=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){Y=24;break i}}else t=h[t>>2]|0;if((t|0)!=-1)if(r^(b|0)==0){t=b;w=b;break}else{Y=231;break i}else{h[i>>2]=0;t=0;Y=224;break}}else{t=b;Y=224}while(0);if((Y|0)==224){Y=0;if(r){Y=231;break i}else w=0}r=h[e>>2]|0;n=h[r+12>>2]|0;if((n|0)==(h[r+16>>2]|0)){x=0;r=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){Y=24;break i}}else r=h[n>>2]|0;x=0;r=Me(h[(h[s>>2]|0)+12>>2]|0,s|0,2048,r|0)|0;y=x;x=0;if(y&1){Y=24;break i}if(!r){Y=231;break i}if((h[l>>2]|0)==(h[B>>2]|0)?(x=0,Re(12,f|0,l|0,B|0),y=x,x=0,y&1):0){Y=24;break i}r=h[e>>2]|0;n=h[r+12>>2]|0;if((n|0)==(h[r+16>>2]|0)){x=0;r=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;y=x;x=0;if(y&1){Y=24;break i}}else r=h[n>>2]|0;n=h[l>>2]|0;h[l>>2]=n+4;h[n>>2]=r;r=p;p=p+-1|0;h[F>>2]=p;n=h[e>>2]|0;d=n+12|0;b=h[d>>2]|0;if((b|0)==(h[n+16>>2]|0)){x=0;ye(h[(h[n>>2]|0)+40>>2]|0,n|0)|0;y=x;x=0;if(y&1){Y=24;break i}}else h[d>>2]=b+4;if((r|0)<=1)break;else{b=t;n=w}}}}if((h[l>>2]|0)==(h[f>>2]|0)){Y=242;break i}break}default:u=d}while(0);t:do if((Y|0)==44)while(1){Y=0;t=h[e>>2]|0;do if(t){r=h[t+12>>2]|0;if((r|0)==(h[t+16>>2]|0)){x=0;t=ye(h[(h[t>>2]|0)+36>>2]|0,t|0)|0;y=x;x=0;if(y&1){Y=21;break i}}else t=h[r>>2]|0;if((t|0)==-1){h[e>>2]=0;r=1;break}else{r=(h[e>>2]|0)==0;break}}else r=1;while(0);do if(n){t=h[n+12>>2]|0;if((t|0)==(h[n+16>>2]|0)){x=0;t=ye(h[(h[n>>2]|0)+36>>2]|0,n|0)|0;y=x;x=0;if(y&1){Y=21;break i}}else t=h[t>>2]|0;if((t|0)!=-1)if(r^(u|0)==0){b=u;n=u;break}else{u=d;break t}else{h[i>>2]=0;u=0;Y=57;break}}else Y=57;while(0);if((Y|0)==57){Y=0;if(r){u=d;break t}else{b=u;n=0}}u=h[e>>2]|0;t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;y=x;x=0;if(y&1){Y=21;break i}}else u=h[t>>2]|0;x=0;u=Me(h[(h[s>>2]|0)+12>>2]|0,s|0,8192,u|0)|0;y=x;x=0;if(y&1){Y=21;break i}if(!u){u=d;break t}u=h[e>>2]|0;t=u+12|0;r=h[t>>2]|0;if((r|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;Y=x;x=0;if(Y&1){Y=21;break i}}else{h[t>>2]=r+4;u=h[r>>2]|0}x=0;ke(71,X|0,u|0);Y=x;x=0;if(Y&1){Y=21;break i}else{u=b;Y=44}}while(0);T=T+1|0;if(T>>>0>=4){w=u;Y=244;break}else d=u}i:switch(Y|0){case 21:{t=Je()|0;break e}case 22:{t=Je()|0;break e}case 23:{t=Je()|0;break e}case 24:{t=Je()|0;break e}case 25:{t=Je()|0;break e}case 26:{t=Je()|0;break e}case 42:{h[a>>2]=h[a>>2]|4;t=0;break}case 107:{h[a>>2]=h[a>>2]|4;t=0;break}case 148:{h[a>>2]=h[a>>2]|4;t=0;break}case 206:{h[a>>2]=h[a>>2]|4;t=0;break}case 231:{h[a>>2]=h[a>>2]|4;t=0;break}case 242:{h[a>>2]=h[a>>2]|4;t=0;break}case 244:{t:do if(v){d=v+4|0;b=v+8|0;n=1;r:while(1){u=c[v>>0]|0;if(!(u&1))u=(u&255)>>>1;else u=h[d>>2]|0;if(n>>>0>=u>>>0)break t;u=h[e>>2]|0;do if(u){t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;l=x;x=0;if(l&1){Y=20;break r}}else u=h[t>>2]|0;if((u|0)==-1){h[e>>2]=0;r=1;break}else{r=(h[e>>2]|0)==0;break}}else r=1;while(0);u=h[i>>2]|0;do if(u){t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;l=x;x=0;if(l&1){Y=20;break r}}else u=h[t>>2]|0;if((u|0)!=-1)if(r)break;else{Y=271;break r}else{h[i>>2]=0;Y=263;break}}else Y=263;while(0);if((Y|0)==263?(Y=0,r):0){Y=271;break}u=h[e>>2]|0;t=h[u+12>>2]|0;if((t|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;l=x;x=0;if(l&1){Y=20;break}}else u=h[t>>2]|0;if(!(c[v>>0]&1))t=d;else t=h[b>>2]|0;if((u|0)!=(h[t+(n<<2)>>2]|0)){Y=271;break}u=n+1|0;t=h[e>>2]|0;r=t+12|0;n=h[r>>2]|0;if((n|0)==(h[t+16>>2]|0)){x=0;ye(h[(h[t>>2]|0)+40>>2]|0,t|0)|0;l=x;x=0;if(l&1){Y=20;break}else{n=u;continue}}else{h[r>>2]=n+4;n=u;continue}}if((Y|0)==20){t=Je()|0;break e}else if((Y|0)==271){h[a>>2]=h[a>>2]|4;t=0;break i}}while(0);u=h[Q>>2]|0;if((u|0)!=(w|0)?(h[V>>2]=0,$c(q,u,w,V),(h[V>>2]|0)!=0):0){h[a>>2]=h[a>>2]|4;t=0}else t=1;break}}Zo(X);Zo(W);Zo(G);Zo(K);Uo(q);u=h[Q>>2]|0;h[Q>>2]=0;if((u|0)!=0?(x=0,ge(h[J>>2]|0,u|0),Q=x,x=0,Q&1):0){Q=Je(0)|0;Wi(Q)}k=$;return t|0}while(0);Zo(X);Zo(W);Zo(G);Zo(K);Uo(q);u=h[Q>>2]|0;h[Q>>2]=0;if((u|0)!=0?(x=0,ge(h[J>>2]|0,u|0),Q=x,x=0,Q&1):0){Q=Je(0)|0;Wi(Q)}fi(t|0);return 0}function id(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;_=k;k=k+432|0;s=_+424|0;e=_+24|0;T=_+16|0;v=_+8|0;d=_+4|0;m=_+428|0;f=_;h[T>>2]=e;C=T+4|0;h[C>>2]=165;l=e+400|0;x=0;g=ye(67,n|0)|0;u=x;x=0;if(!(u&1)){h[d>>2]=g;x=0;u=Ae(26,d|0,43744)|0;e=x;x=0;e:do if(!(e&1)?(c[m>>0]=0,w=h[t>>2]|0,h[f>>2]=w,b=h[n+4>>2]|0,p=w,x=0,h[s>>2]=h[f>>2],b=Te(2,i|0,s|0,r|0,d|0,b|0,a|0,m|0,u|0,T|0,v|0,l|0)|0,n=x,x=0,!(n&1)):0){if(b){if(!(c[o>>0]&1))c[o>>0]=0;else h[h[o+8>>2]>>2]=0;h[o+4>>2]=0;if(c[m>>0]|0){x=0;e=Ae(h[(h[u>>2]|0)+44>>2]|0,u|0,45)|0;n=x;x=0;if(n&1)break;x=0;ke(71,o|0,e|0);n=x;x=0;if(n&1)break}x=0;f=Ae(h[(h[u>>2]|0)+44>>2]|0,u|0,48)|0;n=x;x=0;if(n&1)break;e=h[T>>2]|0;l=h[v>>2]|0;s=l+-4|0;i:do if(e>>>0<s>>>0)do{if((h[e>>2]|0)!=(f|0))break i;e=e+4|0}while(e>>>0<s>>>0);while(0);x=0;Me(33,o|0,e|0,l|0)|0;o=x;x=0;if(o&1)break}e=h[i>>2]|0;do if(e){s=h[e+12>>2]|0;if((s|0)==(h[e+16>>2]|0)){x=0;e=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;o=x;x=0;if(o&1)break e}else e=h[s>>2]|0;if((e|0)==-1){h[i>>2]=0;s=1;break}else{s=(h[i>>2]|0)==0;break}}else s=1;while(0);do if(w){e=h[p+12>>2]|0;if((e|0)==(h[p+16>>2]|0)){x=0;e=ye(h[(h[w>>2]|0)+36>>2]|0,p|0)|0;p=x;x=0;if(p&1)break e}else e=h[e>>2]|0;if((e|0)!=-1)if(s)break;else{M=32;break}else{h[t>>2]=0;M=30;break}}else M=30;while(0);if((M|0)==30?s:0)M=32;if((M|0)==32)h[a>>2]=h[a>>2]|2;s=h[i>>2]|0;ko(g)|0;e=h[T>>2]|0;h[T>>2]=0;if((e|0)!=0?(x=0,ge(h[C>>2]|0,e|0),C=x,x=0,C&1):0){C=Je(0)|0;Wi(C)}k=_;return s|0}while(0);s=Je()|0;ko(g)|0;e=h[T>>2]|0;h[T>>2]=0;if(!e)y=s;else M=38}else{s=Je()|0;h[T>>2]=0;M=38}if((M|0)==38){x=0;ge(h[C>>2]|0,e|0);C=x;x=0;if(C&1){C=Je(0)|0;Wi(C)}else y=s}fi(y|0);return 0}function td(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;var u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0;M=k;k=k+112|0;u=M+100|0;d=M+88|0;m=M+76|0;b=M+64|0;v=M+52|0;w=M+48|0;p=M+36|0;g=M+24|0;_=M+12|0;y=M;do if(e){e=Fd(i,43488)|0;Xk[h[(h[e>>2]|0)+44>>2]&127](u,e);y=h[u>>2]|0;c[t>>0]=y;c[t+1>>0]=y>>8;c[t+2>>0]=y>>16;c[t+3>>0]=y>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](d,e);if(!(c[f>>0]&1))c[f>>0]=0;else h[h[f+8>>2]>>2]=0;h[f+4>>2]=0;x=0;ke(72,f|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[f>>2]=h[d>>2];h[f+4>>2]=h[d+4>>2];h[f+8>>2]=h[d+8>>2];h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;Zo(d);Xk[h[(h[e>>2]|0)+28>>2]&127](m,e);if(!(c[s>>0]&1))c[s>>0]=0;else h[h[s+8>>2]>>2]=0;h[s+4>>2]=0;x=0;ke(72,s|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[s>>2]=h[m>>2];h[s+4>>2]=h[m+4>>2];h[s+8>>2]=h[m+8>>2];h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;Zo(m);s=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;h[r>>2]=s;s=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;h[n>>2]=s;Xk[h[(h[e>>2]|0)+20>>2]&127](b,e);if(!(c[a>>0]&1)){c[a+1>>0]=0;c[a>>0]=0}else{c[h[a+8>>2]>>0]=0;h[a+4>>2]=0}x=0;ke(70,a|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}h[a>>2]=h[b>>2];h[a+4>>2]=h[b+4>>2];h[a+8>>2]=h[b+8>>2];h[b>>2]=0;h[b+4>>2]=0;h[b+8>>2]=0;Uo(b);Xk[h[(h[e>>2]|0)+24>>2]&127](v,e);if(!(c[o>>0]&1))c[o>>0]=0;else h[h[o+8>>2]>>2]=0;h[o+4>>2]=0;x=0;ke(72,o|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}else{h[o>>2]=h[v>>2];h[o+4>>2]=h[v+4>>2];h[o+8>>2]=h[v+8>>2];h[v>>2]=0;h[v+4>>2]=0;h[v+8>>2]=0;Zo(v);T=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Fd(i,43424)|0;Xk[h[(h[e>>2]|0)+44>>2]&127](w,e);w=h[w>>2]|0;c[t>>0]=w;c[t+1>>0]=w>>8;c[t+2>>0]=w>>16;c[t+3>>0]=w>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](p,e);if(!(c[f>>0]&1))c[f>>0]=0;else h[h[f+8>>2]>>2]=0;h[f+4>>2]=0;x=0;ke(72,f|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[f>>2]=h[p>>2];h[f+4>>2]=h[p+4>>2];h[f+8>>2]=h[p+8>>2];h[p>>2]=0;h[p+4>>2]=0;h[p+8>>2]=0;Zo(p);Xk[h[(h[e>>2]|0)+28>>2]&127](g,e);if(!(c[s>>0]&1))c[s>>0]=0;else h[h[s+8>>2]>>2]=0;h[s+4>>2]=0;x=0;ke(72,s|0,0);t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}h[s>>2]=h[g>>2];h[s+4>>2]=h[g+4>>2];h[s+8>>2]=h[g+8>>2];h[g>>2]=0;h[g+4>>2]=0;h[g+8>>2]=0;Zo(g);s=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;h[r>>2]=s;s=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;h[n>>2]=s;Xk[h[(h[e>>2]|0)+20>>2]&127](_,e);if(!(c[a>>0]&1)){c[a+1>>0]=0;c[a>>0]=0}else{c[h[a+8>>2]>>0]=0;h[a+4>>2]=0}x=0;ke(70,a|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}h[a>>2]=h[_>>2];h[a+4>>2]=h[_+4>>2];h[a+8>>2]=h[_+8>>2];h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;Uo(_);Xk[h[(h[e>>2]|0)+24>>2]&127](y,e);if(!(c[o>>0]&1))c[o>>0]=0;else h[h[o+8>>2]>>2]=0;h[o+4>>2]=0;x=0;ke(72,o|0,0);n=x;x=0;if(n&1){n=Je(0)|0;Wi(n)}else{h[o>>2]=h[y>>2];h[o+4>>2]=h[y+4>>2];h[o+8>>2]=h[y+8>>2];h[y>>2]=0;h[y+4>>2]=0;h[y+8>>2]=0;Zo(y);T=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}while(0);h[l>>2]=T;k=M;return}function rd(e){e=e|0;return}function nd(e){e=e|0;$m(e);return}function ad(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=+a;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0;A=k;k=k+384|0;g=A+8|0;o=A;f=A+284|0;l=A+72|0;s=A+184|0;I=A+68|0;C=A+80|0;y=A+77|0;E=A+76|0;L=A+56|0;R=A+44|0;D=A+32|0;u=A+28|0;w=A+84|0;M=A+24|0;T=A+20|0;_=A+16|0;h[l>>2]=f;p[g>>3]=a;f=Wv(f,100,57474,g)|0;do if(f>>>0>99){x=0;e=Le(3)|0;S=x;x=0;if(!(S&1)?(x=0,p[o>>3]=a,b=De(7,l|0,e|0,57474,o|0)|0,S=x,x=0,!(S&1)):0){e=h[l>>2]|0;if(!e){x=0;Oe(6);S=x;x=0;if(S&1){e=0;o=0;S=7;break}e=h[l>>2]|0}s=Cw(b)|0;o=s;if(!s){x=0;Oe(6);S=x;x=0;if(S&1)S=7;else{v=0;S=10}}else{v=s;S=10}}else{e=0;o=0;S=7}}else{o=0;e=0;v=s;b=f;S=10}while(0);if((S|0)==10){x=0;s=ye(67,r|0)|0;m=x;x=0;if(m&1)S=7;else{h[I>>2]=s;x=0;m=Ae(26,I|0,43752)|0;d=x;x=0;if(!(d&1)?(d=h[l>>2]|0,x=0,De(h[(h[m>>2]|0)+32>>2]|0,m|0,d|0,d+b|0,v|0)|0,d=x,x=0,!(d&1)):0){if(!b)d=0;else d=(c[h[l>>2]>>0]|0)==45;h[L>>2]=0;h[L+4>>2]=0;h[L+8>>2]=0;h[R>>2]=0;h[R+4>>2]=0;h[R+8>>2]=0;h[D>>2]=0;h[D+4>>2]=0;h[D+8>>2]=0;x=0;Se(3,t|0,d|0,I|0,C|0,y|0,E|0,L|0,R|0,D|0,u|0);t=x;x=0;if(!(t&1)){u=h[u>>2]|0;if((b|0)>(u|0)){t=c[D>>0]|0;f=c[R>>0]|0;f=(b-u<<1|1)+u+((t&1)==0?(t&255)>>>1:h[D+4>>2]|0)+((f&1)==0?(f&255)>>>1:h[R+4>>2]|0)|0}else{t=c[D>>0]|0;f=c[R>>0]|0;f=u+2+((t&1)==0?(t&255)>>>1:h[D+4>>2]|0)+((f&1)==0?(f&255)>>>1:h[R+4>>2]|0)|0}if(f>>>0>100){f=Cw(f)|0;l=f;if(!f){x=0;Oe(6);w=x;x=0;if(!(w&1)){f=0;S=26}}else S=26}else{l=0;f=w;S=26}if((S|0)==26){x=0;Ce(1,f|0,M|0,T|0,h[r+4>>2]|0,v|0,v+b|0,m|0,d|0,C|0,c[y>>0]|0,c[E>>0]|0,L|0,R|0,D|0,u|0);E=x;x=0;if(!(E&1)?(h[_>>2]=h[i>>2],i=h[M>>2]|0,P=h[T>>2]|0,x=0,h[g>>2]=h[_>>2],P=_e(39,g|0,f|0,i|0,P|0,r|0,n|0)|0,i=x,x=0,!(i&1)):0){if(l){xw(l);s=h[I>>2]|0}Uo(D);Uo(R);Uo(L);ko(s)|0;if(o)xw(o);if(e)xw(e);k=A;return P|0}}f=Je()|0;if(l){xw(l);s=h[I>>2]|0}}else f=Je()|0;Uo(D);Uo(R);Uo(L)}else f=Je()|0;ko(s)|0}}if((S|0)==7)f=Je()|0;if(o)xw(o);if(e)xw(e);fi(f|0);return 0}function od(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;var u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;A=k;k=k+112|0;m=A+108|0;b=A+96|0;p=A+92|0;g=A+80|0;_=A+68|0;y=A+56|0;T=A+52|0;M=A+40|0;C=A+36|0;E=A+24|0;v=A+12|0;w=A;do if(e){e=Fd(t,43360)|0;t=h[e>>2]|0;do if(i){Xk[h[t+44>>2]&127](m,e);i=h[m>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](b,e);if(!(c[f>>0]&1)){c[f+1>>0]=0;c[f>>0]=0}else{c[h[f+8>>2]>>0]=0;h[f+4>>2]=0}x=0;ke(70,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[b>>2];h[f+4>>2]=h[b+4>>2];h[f+8>>2]=h[b+8>>2];h[b>>2]=0;h[b+4>>2]=0;h[b+8>>2]=0;Uo(b);
d=e;break}}else{Xk[h[t+40>>2]&127](p,e);i=h[p>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+28>>2]&127](g,e);if(!(c[f>>0]&1)){c[f+1>>0]=0;c[f>>0]=0}else{c[h[f+8>>2]>>0]=0;h[f+4>>2]=0}x=0;ke(70,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[g>>2];h[f+4>>2]=h[g+4>>2];h[f+8>>2]=h[g+8>>2];h[g>>2]=0;h[g+4>>2]=0;h[g+8>>2]=0;Uo(g);d=e;break}}while(0);f=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;c[n>>0]=f;f=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;c[a>>0]=f;Xk[h[(h[d>>2]|0)+20>>2]&127](_,e);if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}x=0;ke(70,o|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}h[o>>2]=h[_>>2];h[o+4>>2]=h[_+4>>2];h[o+8>>2]=h[_+8>>2];h[_>>2]=0;h[_+4>>2]=0;h[_+8>>2]=0;Uo(_);Xk[h[(h[d>>2]|0)+24>>2]&127](y,e);if(!(c[s>>0]&1)){c[s+1>>0]=0;c[s>>0]=0}else{c[h[s+8>>2]>>0]=0;h[s+4>>2]=0}x=0;ke(70,s|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}else{h[s>>2]=h[y>>2];h[s+4>>2]=h[y+4>>2];h[s+8>>2]=h[y+8>>2];h[y>>2]=0;h[y+4>>2]=0;h[y+8>>2]=0;Uo(y);S=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Fd(t,43296)|0;t=h[e>>2]|0;do if(i){Xk[h[t+44>>2]&127](T,e);i=h[T>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](M,e);if(!(c[f>>0]&1)){c[f+1>>0]=0;c[f>>0]=0}else{c[h[f+8>>2]>>0]=0;h[f+4>>2]=0}x=0;ke(70,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[M>>2];h[f+4>>2]=h[M+4>>2];h[f+8>>2]=h[M+8>>2];h[M>>2]=0;h[M+4>>2]=0;h[M+8>>2]=0;Uo(M);u=e;break}}else{Xk[h[t+40>>2]&127](C,e);i=h[C>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+28>>2]&127](E,e);if(!(c[f>>0]&1)){c[f+1>>0]=0;c[f>>0]=0}else{c[h[f+8>>2]>>0]=0;h[f+4>>2]=0}x=0;ke(70,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[E>>2];h[f+4>>2]=h[E+4>>2];h[f+8>>2]=h[E+8>>2];h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;Uo(E);u=e;break}}while(0);f=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;c[n>>0]=f;f=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;c[a>>0]=f;Xk[h[(h[u>>2]|0)+20>>2]&127](v,e);if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}x=0;ke(70,o|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}h[o>>2]=h[v>>2];h[o+4>>2]=h[v+4>>2];h[o+8>>2]=h[v+8>>2];h[v>>2]=0;h[v+4>>2]=0;h[v+8>>2]=0;Uo(v);Xk[h[(h[u>>2]|0)+24>>2]&127](w,e);if(!(c[s>>0]&1)){c[s+1>>0]=0;c[s>>0]=0}else{c[h[s+8>>2]>>0]=0;h[s+4>>2]=0}x=0;ke(70,s|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}else{h[s>>2]=h[w>>2];h[s+4>>2]=h[w+4>>2];h[s+8>>2]=h[w+8>>2];h[w>>2]=0;h[w+4>>2]=0;h[w+8>>2]=0;Uo(w);S=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}while(0);h[l>>2]=S;k=A;return}function sd(e,i,t,r,n,a,o,s,f,l,u,m,b,v,w){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;m=m|0;b=b|0;v=v|0;w=w|0;var p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,z=0;h[t>>2]=e;U=v+4|0;H=v+8|0;z=v+1|0;D=b+4|0;R=(r&512|0)==0;O=b+8|0;B=b+1|0;N=o+8|0;F=(w|0)>0;x=m+4|0;E=m+8|0;S=m+1|0;A=w+1|0;I=-2-w-((w|0)<0?~w:-1)|0;L=(w|0)>0;C=0;do{switch(c[f+C>>0]|0){case 0:{h[i>>2]=h[t>>2];break}case 1:{h[i>>2]=h[t>>2];T=r_[h[(h[o>>2]|0)+28>>2]&63](o,32)|0;M=h[t>>2]|0;h[t>>2]=M+1;c[M>>0]=T;break}case 3:{M=c[v>>0]|0;p=(M&1)==0;if((p?(M&255)>>>1:h[U>>2]|0)|0){T=c[(p?z:h[H>>2]|0)>>0]|0;M=h[t>>2]|0;h[t>>2]=M+1;c[M>>0]=T}break}case 2:{k=c[b>>0]|0;p=(k&1)==0;k=p?(k&255)>>>1:h[D>>2]|0;if(!(R|(k|0)==0)){g=p?B:h[O>>2]|0;_=g+k|0;p=h[t>>2]|0;if(k)do{c[p>>0]=c[g>>0]|0;g=g+1|0;p=p+1|0}while((g|0)!=(_|0));h[t>>2]=p}break}case 4:{p=h[t>>2]|0;n=s?n+1|0:n;y=n;_=h[N>>2]|0;e:do if(n>>>0<a>>>0){g=n;do{k=c[g>>0]|0;if(k<<24>>24<=-1)break e;if(!(d[_+(k<<24>>24<<1)>>1]&2048))break e;g=g+1|0}while(g>>>0<a>>>0)}else g=n;while(0);k=g;if(F){T=-2-k-~(k>>>0>y>>>0?y:k)|0;T=I>>>0>T>>>0?I:T;if(g>>>0>n>>>0&L){k=g;y=w;while(1){k=k+-1|0;M=c[k>>0]|0;_=h[t>>2]|0;h[t>>2]=_+1;c[_>>0]=M;_=(y|0)>1;if(!(k>>>0>n>>>0&_))break;else y=y+-1|0}}else _=L;M=A+T|0;k=g+(T+1)|0;if(_)y=r_[h[(h[o>>2]|0)+28>>2]&63](o,48)|0;else y=0;g=h[t>>2]|0;h[t>>2]=g+1;if((M|0)>0){_=M;while(1){c[g>>0]=y;g=h[t>>2]|0;h[t>>2]=g+1;if((_|0)>1)_=_+-1|0;else break}}c[g>>0]=l}else k=g;if((k|0)!=(n|0)){M=c[m>>0]|0;g=(M&1)==0;if(!((g?(M&255)>>>1:h[x>>2]|0)|0))g=-1;else g=c[(g?S:h[E>>2]|0)>>0]|0;if((k|0)!=(n|0)){_=0;y=0;while(1){if((y|0)==(g|0)){M=h[t>>2]|0;h[t>>2]=M+1;c[M>>0]=u;_=_+1|0;M=c[m>>0]|0;g=(M&1)==0;if(_>>>0<(g?(M&255)>>>1:h[x>>2]|0)>>>0){g=c[(g?S:h[E>>2]|0)+_>>0]|0;g=g<<24>>24==127?-1:g<<24>>24;y=0}else{g=y;y=0}}k=k+-1|0;T=c[k>>0]|0;M=h[t>>2]|0;h[t>>2]=M+1;c[M>>0]=T;if((k|0)==(n|0))break;else y=y+1|0}}}else{T=r_[h[(h[o>>2]|0)+28>>2]&63](o,48)|0;M=h[t>>2]|0;h[t>>2]=M+1;c[M>>0]=T}g=h[t>>2]|0;if((p|0)!=(g|0)?(P=g+-1|0,p>>>0<P>>>0):0){g=P;do{M=c[p>>0]|0;c[p>>0]=c[g>>0]|0;c[g>>0]=M;p=p+1|0;g=g+-1|0}while(p>>>0<g>>>0)}break}default:{}}C=C+1|0}while((C|0)!=4);g=c[v>>0]|0;n=(g&1)==0;g=n?(g&255)>>>1:h[U>>2]|0;if(g>>>0>1){p=n?z:h[H>>2]|0;k=p+g|0;n=h[t>>2]|0;if((g|0)!=1){p=p+1|0;do{c[n>>0]=c[p>>0]|0;n=n+1|0;p=p+1|0}while((p|0)!=(k|0))}h[t>>2]=n}switch(r&176|0){case 32:{h[i>>2]=h[t>>2];break}case 16:break;default:h[i>>2]=e}return}function fd(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0;M=k;k=k+176|0;b=M+56|0;E=M+52|0;y=M+64|0;p=M+61|0;T=M+60|0;S=M+40|0;P=M+28|0;A=M+16|0;l=M+12|0;m=M+68|0;_=M+8|0;g=M+4|0;v=M;e=hs(r)|0;h[E>>2]=e;x=0;w=Ae(26,E|0,43752)|0;d=x;x=0;do if(d&1)I=13;else{u=c[a>>0]|0;o=(u&1)==0;d=a+4|0;if(!((o?(u&255)>>>1:h[d>>2]|0)|0))u=0;else{o=c[(o?a+1|0:h[a+8>>2]|0)>>0]|0;x=0;s=Ae(h[(h[w>>2]|0)+28>>2]|0,w|0,45)|0;u=x;x=0;if(u&1){I=13;break}u=o<<24>>24==s<<24>>24}h[S>>2]=0;h[S+4>>2]=0;h[S+8>>2]=0;h[P>>2]=0;h[P+4>>2]=0;h[P+8>>2]=0;h[A>>2]=0;h[A+4>>2]=0;h[A+8>>2]=0;x=0;Se(3,t|0,u|0,E|0,y|0,p|0,T|0,S|0,P|0,A|0,l|0);f=x;x=0;if(!(f&1)){f=c[a>>0]|0;t=h[d>>2]|0;o=(f&1)==0?(f&255)>>>1:t;l=h[l>>2]|0;if((o|0)>(l|0)){L=c[A>>0]|0;s=c[P>>0]|0;o=(o-l<<1|1)+l+((L&1)==0?(L&255)>>>1:h[A+4>>2]|0)+((s&1)==0?(s&255)>>>1:h[P+4>>2]|0)|0}else{L=c[A>>0]|0;o=c[P>>0]|0;o=l+2+((L&1)==0?(L&255)>>>1:h[A+4>>2]|0)+((o&1)==0?(o&255)>>>1:h[P+4>>2]|0)|0}if(o>>>0>100){o=Cw(o)|0;s=o;if(!o){x=0;Oe(6);L=x;x=0;if(!(L&1)){f=c[a>>0]|0;t=h[d>>2]|0;o=0;I=17}}else I=17}else{s=0;o=m;I=17}if((I|0)==17){L=(f&1)==0;a=L?a+1|0:h[a+8>>2]|0;x=0;Ce(1,o|0,_|0,g|0,h[r+4>>2]|0,a|0,a+(L?(f&255)>>>1:t)|0,w|0,u|0,y|0,c[p>>0]|0,c[T>>0]|0,S|0,P|0,A|0,l|0);L=x;x=0;if(!(L&1)?(h[v>>2]=h[i>>2],L=h[_>>2]|0,C=h[g>>2]|0,x=0,h[b>>2]=h[v>>2],C=_e(39,b|0,o|0,L|0,C|0,r|0,n|0)|0,L=x,x=0,!(L&1)):0){if(s){xw(s);e=h[E>>2]|0}Uo(A);Uo(P);Uo(S);ko(e)|0;k=M;return C|0}}o=Je()|0;if(s){xw(s);e=h[E>>2]|0}}else o=Je()|0;Uo(A);Uo(P);Uo(S)}while(0);if((I|0)==13)o=Je()|0;ko(e)|0;fi(o|0);return 0}function ld(e){e=e|0;return}function ud(e){e=e|0;$m(e);return}function cd(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=+a;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0;A=k;k=k+992|0;g=A+8|0;o=A;f=A+888|0;l=A+880|0;s=A+480|0;I=A+76|0;C=A+884|0;y=A+72|0;E=A+68|0;L=A+56|0;R=A+44|0;D=A+32|0;u=A+28|0;w=A+80|0;M=A+24|0;T=A+20|0;_=A+16|0;h[l>>2]=f;p[g>>3]=a;f=Wv(f,100,57474,g)|0;do if(f>>>0>99){x=0;e=Le(3)|0;S=x;x=0;if(!(S&1)?(x=0,p[o>>3]=a,b=De(7,l|0,e|0,57474,o|0)|0,S=x,x=0,!(S&1)):0){e=h[l>>2]|0;if(!e){x=0;Oe(6);S=x;x=0;if(S&1){e=0;o=0;S=7;break}e=h[l>>2]|0}s=Cw(b<<2)|0;o=s;if(!s){x=0;Oe(6);S=x;x=0;if(S&1)S=7;else{v=0;S=10}}else{v=s;S=10}}else{e=0;o=0;S=7}}else{o=0;e=0;v=s;b=f;S=10}while(0);if((S|0)==10){x=0;s=ye(67,r|0)|0;m=x;x=0;if(m&1)S=7;else{h[I>>2]=s;x=0;m=Ae(26,I|0,43744)|0;d=x;x=0;if(!(d&1)?(d=h[l>>2]|0,x=0,De(h[(h[m>>2]|0)+48>>2]|0,m|0,d|0,d+b|0,v|0)|0,d=x,x=0,!(d&1)):0){if(!b)d=0;else d=(c[h[l>>2]>>0]|0)==45;h[L>>2]=0;h[L+4>>2]=0;h[L+8>>2]=0;h[R>>2]=0;h[R+4>>2]=0;h[R+8>>2]=0;h[D>>2]=0;h[D+4>>2]=0;h[D+8>>2]=0;x=0;Se(4,t|0,d|0,I|0,C|0,y|0,E|0,L|0,R|0,D|0,u|0);t=x;x=0;if(!(t&1)){u=h[u>>2]|0;if((b|0)>(u|0)){t=c[D>>0]|0;f=c[R>>0]|0;f=(b-u<<1|1)+u+((t&1)==0?(t&255)>>>1:h[D+4>>2]|0)+((f&1)==0?(f&255)>>>1:h[R+4>>2]|0)|0}else{t=c[D>>0]|0;f=c[R>>0]|0;f=u+2+((t&1)==0?(t&255)>>>1:h[D+4>>2]|0)+((f&1)==0?(f&255)>>>1:h[R+4>>2]|0)|0}if(f>>>0>100){f=Cw(f<<2)|0;l=f;if(!f){x=0;Oe(6);w=x;x=0;if(!(w&1)){f=0;S=26}}else S=26}else{l=0;f=w;S=26}if((S|0)==26){x=0;Ce(2,f|0,M|0,T|0,h[r+4>>2]|0,v|0,v+(b<<2)|0,m|0,d|0,C|0,h[y>>2]|0,h[E>>2]|0,L|0,R|0,D|0,u|0);E=x;x=0;if(!(E&1)?(h[_>>2]=h[i>>2],i=h[M>>2]|0,P=h[T>>2]|0,x=0,h[g>>2]=h[_>>2],P=_e(40,g|0,f|0,i|0,P|0,r|0,n|0)|0,i=x,x=0,!(i&1)):0){if(l){xw(l);s=h[I>>2]|0}Zo(D);Zo(R);Uo(L);ko(s)|0;if(o)xw(o);if(e)xw(e);k=A;return P|0}}f=Je()|0;if(l){xw(l);s=h[I>>2]|0}}else f=Je()|0;Zo(D);Zo(R);Uo(L)}else f=Je()|0;ko(s)|0}}if((S|0)==7)f=Je()|0;if(o)xw(o);if(e)xw(e);fi(f|0);return 0}function dd(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;var u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0;E=k;k=k+112|0;u=E+108|0;d=E+96|0;v=E+92|0;w=E+80|0;p=E+68|0;g=E+56|0;_=E+52|0;y=E+40|0;T=E+36|0;M=E+24|0;m=E+12|0;b=E;do if(e){e=Fd(t,43488)|0;t=h[e>>2]|0;do if(i){Xk[h[t+44>>2]&127](u,e);i=h[u>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](d,e);if(!(c[f>>0]&1))c[f>>0]=0;else h[h[f+8>>2]>>2]=0;h[f+4>>2]=0;x=0;ke(72,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[d>>2];h[f+4>>2]=h[d+4>>2];h[f+8>>2]=h[d+8>>2];h[d>>2]=0;h[d+4>>2]=0;h[d+8>>2]=0;Zo(d);break}}else{Xk[h[t+40>>2]&127](v,e);i=h[v>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+28>>2]&127](w,e);if(!(c[f>>0]&1))c[f>>0]=0;else h[h[f+8>>2]>>2]=0;h[f+4>>2]=0;x=0;ke(72,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[w>>2];h[f+4>>2]=h[w+4>>2];h[f+8>>2]=h[w+8>>2];h[w>>2]=0;h[w+4>>2]=0;h[w+8>>2]=0;Zo(w);break}}while(0);f=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;h[n>>2]=f;f=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;h[a>>2]=f;Xk[h[(h[e>>2]|0)+20>>2]&127](p,e);if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}x=0;ke(70,o|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}h[o>>2]=h[p>>2];h[o+4>>2]=h[p+4>>2];h[o+8>>2]=h[p+8>>2];h[p>>2]=0;h[p+4>>2]=0;h[p+8>>2]=0;Uo(p);Xk[h[(h[e>>2]|0)+24>>2]&127](g,e);if(!(c[s>>0]&1))c[s>>0]=0;else h[h[s+8>>2]>>2]=0;h[s+4>>2]=0;x=0;ke(72,s|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}else{h[s>>2]=h[g>>2];h[s+4>>2]=h[g+4>>2];h[s+8>>2]=h[g+8>>2];h[g>>2]=0;h[g+4>>2]=0;h[g+8>>2]=0;Zo(g);C=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}else{e=Fd(t,43424)|0;t=h[e>>2]|0;do if(i){Xk[h[t+44>>2]&127](_,e);i=h[_>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+32>>2]&127](y,e);if(!(c[f>>0]&1))c[f>>0]=0;else h[h[f+8>>2]>>2]=0;h[f+4>>2]=0;x=0;ke(72,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[y>>2];h[f+4>>2]=h[y+4>>2];h[f+8>>2]=h[y+8>>2];h[y>>2]=0;h[y+4>>2]=0;h[y+8>>2]=0;Zo(y);break}}else{Xk[h[t+40>>2]&127](T,e);i=h[T>>2]|0;c[r>>0]=i;c[r+1>>0]=i>>8;c[r+2>>0]=i>>16;c[r+3>>0]=i>>24;Xk[h[(h[e>>2]|0)+28>>2]&127](M,e);if(!(c[f>>0]&1))c[f>>0]=0;else h[h[f+8>>2]>>2]=0;h[f+4>>2]=0;x=0;ke(72,f|0,0);r=x;x=0;if(r&1){f=Je(0)|0;Wi(f)}else{h[f>>2]=h[M>>2];h[f+4>>2]=h[M+4>>2];h[f+8>>2]=h[M+8>>2];h[M>>2]=0;h[M+4>>2]=0;h[M+8>>2]=0;Zo(M);break}}while(0);f=$k[h[(h[e>>2]|0)+12>>2]&127](e)|0;h[n>>2]=f;f=$k[h[(h[e>>2]|0)+16>>2]&127](e)|0;h[a>>2]=f;Xk[h[(h[e>>2]|0)+20>>2]&127](m,e);if(!(c[o>>0]&1)){c[o+1>>0]=0;c[o>>0]=0}else{c[h[o+8>>2]>>0]=0;h[o+4>>2]=0}x=0;ke(70,o|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}h[o>>2]=h[m>>2];h[o+4>>2]=h[m+4>>2];h[o+8>>2]=h[m+8>>2];h[m>>2]=0;h[m+4>>2]=0;h[m+8>>2]=0;Uo(m);Xk[h[(h[e>>2]|0)+24>>2]&127](b,e);if(!(c[s>>0]&1))c[s>>0]=0;else h[h[s+8>>2]>>2]=0;h[s+4>>2]=0;x=0;ke(72,s|0,0);a=x;x=0;if(a&1){a=Je(0)|0;Wi(a)}else{h[s>>2]=h[b>>2];h[s+4>>2]=h[b+4>>2];h[s+8>>2]=h[b+8>>2];h[b>>2]=0;h[b+4>>2]=0;h[b+8>>2]=0;Zo(b);C=$k[h[(h[e>>2]|0)+36>>2]&127](e)|0;break}}while(0);h[l>>2]=C;k=E;return}function hd(e,i,t,r,n,a,o,s,f,l,u,d,m,b,v){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;d=d|0;m=m|0;b=b|0;v=v|0;var w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0;h[t>>2]=e;O=b+4|0;B=b+8|0;S=m+4|0;A=(r&512|0)==0;P=m+8|0;I=(v|0)>0;L=d+4|0;D=d+8|0;R=d+1|0;x=(v|0)>0;C=0;do{switch(c[f+C>>0]|0){case 0:{h[i>>2]=h[t>>2];break}case 1:{h[i>>2]=h[t>>2];T=r_[h[(h[o>>2]|0)+44>>2]&63](o,32)|0;M=h[t>>2]|0;h[t>>2]=M+4;h[M>>2]=T;break}case 3:{M=c[b>>0]|0;w=(M&1)==0;if((w?(M&255)>>>1:h[O>>2]|0)|0){T=h[(w?O:h[B>>2]|0)>>2]|0;M=h[t>>2]|0;h[t>>2]=M+4;h[M>>2]=T}break}case 2:{_=c[m>>0]|0;w=(_&1)==0;_=w?(_&255)>>>1:h[S>>2]|0;if(!(A|(_|0)==0)){w=w?S:h[P>>2]|0;g=w+(_<<2)|0;k=h[t>>2]|0;if(_){p=k;while(1){h[p>>2]=h[w>>2];w=w+4|0;if((w|0)==(g|0))break;else p=p+4|0}}h[t>>2]=k+(_<<2)}break}case 4:{w=h[t>>2]|0;n=s?n+4|0:n;e:do if(n>>>0<a>>>0){p=n;do{if(!(Qk[h[(h[o>>2]|0)+12>>2]&63](o,2048,h[p>>2]|0)|0))break e;p=p+4|0}while(p>>>0<a>>>0)}else p=n;while(0);if(I){if(p>>>0>n>>>0&x){_=h[t>>2]|0;k=v;while(1){p=p+-4|0;g=_+4|0;h[_>>2]=h[p>>2];y=k+-1|0;k=(k|0)>1;if(p>>>0>n>>>0&k){_=g;k=y}else{_=y;break}}h[t>>2]=g;g=_}else{k=x;g=v}if(k)y=r_[h[(h[o>>2]|0)+44>>2]&63](o,48)|0;else y=0;T=h[t>>2]|0;k=g+((g|0)<0?~g:-1)|0;if((g|0)>0){_=T;while(1){h[_>>2]=y;if((g|0)>1){_=_+4|0;g=g+-1|0}else break}}h[t>>2]=T+(k+2<<2);h[T+(k+1<<2)>>2]=l}if((p|0)==(n|0)){T=r_[h[(h[o>>2]|0)+44>>2]&63](o,48)|0;M=h[t>>2]|0;p=M+4|0;h[t>>2]=p;h[M>>2]=T}else{T=c[d>>0]|0;g=(T&1)==0;M=h[L>>2]|0;if(!((g?(T&255)>>>1:M)|0))g=-1;else g=c[(g?R:h[D>>2]|0)>>0]|0;if((p|0)!=(n|0)){y=0;T=0;while(1){k=h[t>>2]|0;if((T|0)==(g|0)){_=k+4|0;h[t>>2]=_;h[k>>2]=u;y=y+1|0;k=c[d>>0]|0;g=(k&1)==0;if(y>>>0<(g?(k&255)>>>1:M)>>>0){g=c[(g?R:h[D>>2]|0)+y>>0]|0;k=_;g=g<<24>>24==127?-1:g<<24>>24;_=0}else{k=_;g=T;_=0}}else _=T;p=p+-4|0;T=h[p>>2]|0;h[t>>2]=k+4;h[k>>2]=T;if((p|0)==(n|0))break;else T=_+1|0}}p=h[t>>2]|0}if((w|0)!=(p|0)?(E=p+-4|0,w>>>0<E>>>0):0){p=E;do{M=h[w>>2]|0;h[w>>2]=h[p>>2];h[p>>2]=M;w=w+4|0;p=p+-4|0}while(w>>>0<p>>>0)}break}default:{}}C=C+1|0}while((C|0)!=4);w=c[b>>0]|0;n=(w&1)==0;w=n?(w&255)>>>1:h[O>>2]|0;if(w>>>0>1){p=n?O:h[B>>2]|0;n=p+4|0;p=p+(w<<2)|0;g=h[t>>2]|0;k=p-n|0;if((w|0)!=1){w=g;while(1){h[w>>2]=h[n>>2];n=n+4|0;if((n|0)==(p|0))break;else w=w+4|0}}h[t>>2]=g+(k>>>2<<2)}switch(r&176|0){case 32:{h[i>>2]=h[t>>2];break}case 16:break;default:h[i>>2]=e}return}function md(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0;M=k;k=k+480|0;m=M+468|0;E=M+464|0;y=M+472|0;p=M+56|0;T=M+52|0;S=M+40|0;P=M+28|0;A=M+16|0;l=M+12|0;d=M+64|0;_=M+8|0;g=M+4|0;b=M;e=hs(r)|0;h[E>>2]=e;x=0;v=Ae(26,E|0,43744)|0;w=x;x=0;do if(w&1)I=13;else{u=c[a>>0]|0;o=(u&1)==0;w=a+4|0;if(!((o?(u&255)>>>1:h[w>>2]|0)|0))u=0;else{o=h[(o?w:h[a+8>>2]|0)>>2]|0;x=0;s=Ae(h[(h[v>>2]|0)+44>>2]|0,v|0,45)|0;u=x;x=0;if(u&1){I=13;break}u=(o|0)==(s|0)}h[S>>2]=0;h[S+4>>2]=0;h[S+8>>2]=0;h[P>>2]=0;h[P+4>>2]=0;h[P+8>>2]=0;h[A>>2]=0;h[A+4>>2]=0;h[A+8>>2]=0;x=0;Se(4,t|0,u|0,E|0,y|0,p|0,T|0,S|0,P|0,A|0,l|0);f=x;x=0;if(!(f&1)){f=c[a>>0]|0;t=h[w>>2]|0;o=(f&1)==0?(f&255)>>>1:t;l=h[l>>2]|0;if((o|0)>(l|0)){L=c[A>>0]|0;s=c[P>>0]|0;o=(o-l<<1|1)+l+((L&1)==0?(L&255)>>>1:h[A+4>>2]|0)+((s&1)==0?(s&255)>>>1:h[P+4>>2]|0)|0}else{L=c[A>>0]|0;o=c[P>>0]|0;o=l+2+((L&1)==0?(L&255)>>>1:h[A+4>>2]|0)+((o&1)==0?(o&255)>>>1:h[P+4>>2]|0)|0}if(o>>>0>100){o=Cw(o<<2)|0;s=o;if(!o){x=0;Oe(6);L=x;x=0;if(!(L&1)){f=c[a>>0]|0;t=h[w>>2]|0;o=0;I=17}}else I=17}else{s=0;o=d;I=17}if((I|0)==17){L=(f&1)==0;a=L?w:h[a+8>>2]|0;x=0;Ce(2,o|0,_|0,g|0,h[r+4>>2]|0,a|0,a+((L?(f&255)>>>1:t)<<2)|0,v|0,u|0,y|0,h[p>>2]|0,h[T>>2]|0,S|0,P|0,A|0,l|0);L=x;x=0;if(!(L&1)?(h[b>>2]=h[i>>2],L=h[_>>2]|0,C=h[g>>2]|0,x=0,h[m>>2]=h[b>>2],C=_e(40,m|0,o|0,L|0,C|0,r|0,n|0)|0,L=x,x=0,!(L&1)):0){if(s){xw(s);e=h[E>>2]|0}Zo(A);Zo(P);Uo(S);ko(e)|0;k=M;return C|0}}o=Je()|0;if(s){xw(s);e=h[E>>2]|0}}else o=Je()|0;Zo(A);Zo(P);Uo(S)}while(0);if((I|0)==13)o=Je()|0;ko(e)|0;fi(o|0);return 0}function bd(e){e=e|0;return}function vd(e){e=e|0;$m(e);return}function wd(e,i,t){e=e|0;i=i|0;t=t|0;e=av((c[i>>0]&1)==0?i+1|0:h[i+8>>2]|0,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function pd(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0;s=k;k=k+16|0;f=s;h[f>>2]=0;h[f+4>>2]=0;h[f+8>>2]=0;o=c[a>>0]|0;l=(o&1)==0;i=l?a+1|0:h[a+8>>2]|0;o=l?(o&255)>>>1:h[a+4>>2]|0;a=i+o|0;e:do if((o|0)>0){while(1){x=0;ke(55,f|0,c[i>>0]|0);l=x;x=0;if(l&1)break;i=i+1|0;if(i>>>0>=a>>>0){o=4;break e}}i=Je()|0;o=7}else o=4;while(0);e:do if((o|0)==4){x=0;i=De(9,((t|0)==-1?-1:t<<1)|0,r|0,n|0,((c[f>>0]&1)==0?f+1|0:h[f+8>>2]|0)|0)|0;l=x;x=0;if(l&1){i=Je()|0;o=7;break}h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;l=sw(i)|0;a=i+l|0;i:do if((l|0)>0){while(1){x=0;ke(55,e|0,c[i>>0]|0);l=x;x=0;if(l&1)break;i=i+1|0;if(i>>>0>=a>>>0)break i}i=Je()|0;Uo(e);break e}while(0);Uo(f);k=s;return}while(0);Uo(f);fi(i|0)}function gd(e,i){e=e|0;i=i|0;return}function kd(e){e=e|0;return}function _d(e){e=e|0;$m(e);return}function yd(e,i,t){e=e|0;i=i|0;t=t|0;e=av((c[i>>0]&1)==0?i+1|0:h[i+8>>2]|0,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function Td(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0;_=k;k=k+224|0;d=_+184|0;u=_+192|0;l=_+180|0;m=_+176|0;p=_+168|0;w=_+40|0;v=_+32|0;g=_+28|0;y=_+16|0;f=_+8|0;b=_;h[y>>2]=0;h[y+4>>2]=0;h[y+8>>2]=0;h[f+4>>2]=0;h[f>>2]=44228;s=c[a>>0]|0;T=(s&1)==0;o=a+4|0;i=T?o:h[a+8>>2]|0;a=T?(s&255)>>>1:h[o>>2]|0;o=i+(a<<2)|0;s=u+32|0;e:do if((a|0)>0){i:while(1){h[m>>2]=i;x=0;a=Be(h[(h[f>>2]|0)+12>>2]|0,f|0,d|0,i|0,o|0,m|0,u|0,s|0,l|0)|0;T=x;x=0;if(T&1){a=12;break}if((a|0)==2?1:(h[m>>2]|0)==(i|0)){a=5;break}if(u>>>0<(h[l>>2]|0)>>>0){i=u;do{x=0;ke(55,y|0,c[i>>0]|0);T=x;x=0;if(T&1){a=11;break i}i=i+1|0}while(i>>>0<(h[l>>2]|0)>>>0)}i=h[m>>2]|0;if(!((a|0)!=2&i>>>0<o>>>0)){a=9;break e}}if((a|0)==5){x=0;ge(166,57411);x=0;i=Je()|0}else if((a|0)==11)i=Je()|0;else if((a|0)==12)i=Je()|0}else a=9;while(0);e:do if((a|0)==9){x=0;i=De(9,((t|0)==-1?-1:t<<1)|0,r|0,n|0,((c[y>>0]&1)==0?y+1|0:h[y+8>>2]|0)|0)|0;T=x;x=0;if(T&1){i=Je()|0;break}h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;h[b+4>>2]=0;h[b>>2]=44276;T=sw(i)|0;o=i+T|0;s=o;f=w+128|0;i:do if((T|0)>0){t:while(1){h[g>>2]=i;x=0;a=Be(h[(h[b>>2]|0)+16>>2]|0,b|0,p|0,i|0,((s-i|0)>32?i+32|0:o)|0,g|0,w|0,f|0,v|0)|0;T=x;x=0;if(T&1){a=24;break}if((a|0)==2?1:(h[g>>2]|0)==(i|0)){a=18;break}if(w>>>0<(h[v>>2]|0)>>>0){i=w;do{x=0;ke(71,e|0,h[i>>2]|0);T=x;x=0;if(T&1){a=23;break t}i=i+4|0}while(i>>>0<(h[v>>2]|0)>>>0)}i=h[g>>2]|0;if(!((a|0)!=2&i>>>0<o>>>0))break i}if((a|0)==18){x=0;ge(166,57411);x=0;i=Je()|0}else if((a|0)==23)i=Je()|0;else if((a|0)==24)i=Je()|0;Zo(e);break e}while(0);Uo(y);k=_;return}while(0);Uo(y);fi(i|0)}function Md(e,i){e=e|0;i=i|0;return}function Cd(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0;h[e+4>>2]=i+-1;h[e>>2]=43728;a=e+8|0;x=0;ke(73,a|0,28);n=x;x=0;if(n&1)i=Je()|0;else{n=e+144|0;x=0;Re(13,n|0,57341,1);r=x;x=0;if(r&1)i=Je()|0;else{t=h[a>>2]|0;r=e+12|0;i=h[r>>2]|0;if((i|0)!=(t|0)){do i=i+-4|0;while((i|0)!=(t|0));h[r>>2]=i}h[451]=0;h[450]=42656;x=0;ke(74,e|0,1800);r=x;x=0;do if(((((((((((((!(r&1)?(h[453]=0,h[452]=42696,x=0,ke(75,e|0,1808),r=x,x=0,!(r&1)):0)?(h[455]=0,h[454]=43768,h[456]=0,c[1828]=0,r=Vd()|0,h[456]=r,x=0,ke(76,e|0,1816),r=x,x=0,!(r&1)):0)?(h[459]=0,h[458]=44016,x=0,ke(77,e|0,1832),r=x,x=0,!(r&1)):0)?(h[461]=0,h[460]=44084,x=0,ke(78,e|0,1840),r=x,x=0,!(r&1)):0)?(x=0,ke(79,1848,1),r=x,x=0,!(r&1)):0)?(x=0,ke(80,e|0,1848),r=x,x=0,!(r&1)):0)?(h[467]=0,h[466]=44132,x=0,ke(81,e|0,1864),r=x,x=0,!(r&1)):0)?(h[469]=0,h[468]=44180,x=0,ke(82,e|0,1872),r=x,x=0,!(r&1)):0)?(Kh(1880,1),x=0,ke(83,e|0,1880),r=x,x=0,!(r&1)):0)?($h(1904,1),x=0,ke(84,e|0,1904),r=x,x=0,!(r&1)):0)?(h[485]=0,h[484]=42736,x=0,ke(85,e|0,1936),r=x,x=0,!(r&1)):0)?(h[487]=0,h[486]=42808,x=0,ke(86,e|0,1944),r=x,x=0,!(r&1)):0)?(h[489]=0,h[488]=42880,x=0,ke(87,e|0,1952),r=x,x=0,!(r&1)):0){h[491]=0;h[490]=42940;x=0;ke(88,e|0,1960);r=x;x=0;if(r&1){o=42;break}h[493]=0;h[492]=43248;x=0;ke(89,e|0,1968);r=x;x=0;if(r&1){o=42;break}h[495]=0;h[494]=43312;x=0;ke(90,e|0,1976);r=x;x=0;if(r&1){o=42;break}h[497]=0;h[496]=43376;x=0;ke(91,e|0,1984);r=x;x=0;if(r&1){o=42;break}h[499]=0;h[498]=43440;x=0;ke(92,e|0,1992);r=x;x=0;if(r&1){o=42;break}h[501]=0;h[500]=43504;x=0;ke(93,e|0,2e3);r=x;x=0;if(r&1){o=42;break}h[503]=0;h[502]=43540;x=0;ke(94,e|0,2008);r=x;x=0;if(r&1){o=42;break}h[505]=0;h[504]=43576;x=0;ke(95,e|0,2016);r=x;x=0;if(r&1){o=42;break}h[507]=0;h[506]=43612;x=0;ke(96,e|0,2024);r=x;x=0;if(r&1){o=42;break}h[509]=0;h[508]=43e3;h[510]=43048;x=0;ke(97,e|0,2032);r=x;x=0;if(r&1){o=42;break}h[513]=0;h[512]=43092;h[514]=43140;x=0;ke(98,e|0,2048);r=x;x=0;if(r&1){o=42;break}h[517]=0;h[516]=43996;x=0;i=Le(3)|0;r=x;x=0;if(r&1){i=Je()|0;break}h[518]=i;h[516]=43184;x=0;ke(99,e|0,2064);r=x;x=0;if(r&1){o=42;break}h[521]=0;h[520]=43996;x=0;i=Le(3)|0;r=x;x=0;if(r&1){i=Je()|0;break}h[522]=i;h[520]=43216;x=0;ke(100,e|0,2080);o=x;x=0;if(o&1){o=42;break}h[525]=0;h[524]=43648;x=0;ke(101,e|0,2096);o=x;x=0;if(o&1){o=42;break}h[527]=0;h[526]=43688;x=0;ke(102,e|0,2104);o=x;x=0;if(o&1){o=42;break}return}else o=42;while(0);if((o|0)==42)i=Je()|0;Uo(n)}Jp(a)}fi(i|0)}function xd(){var e=0;do if((c[2112]|0)==0?(qe(2112)|0)!=0:0){x=0;Le(4)|0;e=x;x=0;if(e&1){e=Je()|0;Pi(2112);fi(e|0)}else{h[11129]=44512;Ze(2112);break}}while(0);return h[11129]|0}function Ed(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;go(i);n=e+8|0;r=h[n>>2]|0;do if((h[e+12>>2]|0)-r>>2>>>0<=t>>>0){x=0;ke(103,n|0,t+1|0);e=x;x=0;if(!(e&1)){r=h[n>>2]|0;break}r=Je()|0;if(i)ko(i)|0;fi(r|0)}while(0);e=h[r+(t<<2)>>2]|0;if(e){ko(e)|0;r=h[n>>2]|0}h[r+(t<<2)>>2]=i;return}function Sd(e){e=e|0;var i=0,t=0,r=0,n=0;h[e>>2]=43728;r=e+8|0;n=e+12|0;i=h[r>>2]|0;if((h[n>>2]|0)!=(i|0)){t=0;do{i=h[i+(t<<2)>>2]|0;if(i)ko(i)|0;t=t+1|0;i=h[r>>2]|0}while(t>>>0<(h[n>>2]|0)-i>>2>>>0)}Uo(e+144|0);Jp(r);return}function Ad(e){e=e|0;Sd(e);$m(e);return}function Pd(e,i){e=e|0;i=i|0;if(Zp(e,i)|0)return h[(h[e+8>>2]|0)+(i<<2)>>2]|0;else{e=$e(4)|0;ub(e);Ti(e|0,464,60)}return 0}function Id(){Cd(2120,1);h[11128]=2120;return 44512}function Ld(){var e=0;e=xd()|0;e=h[e>>2]|0;h[11130]=e;go(e);return 44520}function Dd(){var e=0;do if((c[2280]|0)==0?(qe(2280)|0)!=0:0){x=0;Le(5)|0;e=x;x=0;if(e&1){e=Je()|0;Pi(2280);fi(e|0)}else{h[11131]=44520;Ze(2280);break}}while(0);return h[11131]|0}function Rd(e){e=e|0;var i=0,t=0;x=0;i=Le(6)|0;t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}else{t=h[i>>2]|0;h[e>>2]=t;go(t);return}}function Od(e,i){e=e|0;i=i|0;i=h[i>>2]|0;h[e>>2]=i;go(i);return}function Bd(e){e=e|0;ko(h[e>>2]|0)|0;return}function Nd(e){e=e|0;var i=0,t=0;t=k;k=k+16|0;i=t;if((h[e>>2]|0)!=-1){h[i>>2]=e;h[i+4>>2]=167;h[i+8>>2]=0;Oo(e,i,168)}k=t;return(h[e+4>>2]|0)+-1|0}function Fd(e,i){e=e|0;i=i|0;e=h[e>>2]|0;return Pd(e,Nd(i)|0)|0}function Ud(e){e=e|0;$m(e);return}function Hd(e){e=e|0;if(e)Gk[h[(h[e>>2]|0)+4>>2]&255](e);return}function zd(e){e=e|0;var i=0;i=h[10935]|0;h[10935]=i+1;h[e+4>>2]=i+1;return}function jd(e){e=e|0;$m(e);return}function Yd(e,i,t){e=e|0;i=i|0;t=t|0;if(t>>>0<128){t=(Vd()|0)+(t<<1)|0;t=(d[t>>1]&i)<<16>>16!=0}else t=0;return t|0}function Vd(){var e=0,i=0;x=0;e=Le(7)|0;i=x;x=0;if(i&1){i=Je(0)|0;Wi(i)}else return h[e>>2]|0;return 0}function qd(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;a=(t-i|0)>>>2;if((i|0)!=(t|0)){n=i;while(1){e=h[n>>2]|0;if(e>>>0<128){e=(Vd()|0)+(e<<1)|0;e=b[e>>1]|0}else e=0;d[r>>1]=e;n=n+4|0;if((n|0)==(t|0))break;else r=r+2|0}}return i+(a<<2)|0}function Wd(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;e:do if((t|0)==(r|0))t=r;else while(1){e=h[t>>2]|0;if(e>>>0<128?(e=(Vd()|0)+(e<<1)|0,(d[e>>1]&i)<<16>>16!=0):0)break e;t=t+4|0;if((t|0)==(r|0)){t=r;break}}while(0);return t|0}function Gd(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;e:do if((t|0)==(r|0))t=r;else while(1){e=h[t>>2]|0;if(e>>>0>=128)break e;e=(Vd()|0)+(e<<1)|0;if(!((d[e>>1]&i)<<16>>16))break e;t=t+4|0;if((t|0)==(r|0)){t=r;break}}while(0);return t|0}function Xd(e,i){e=e|0;i=i|0;if(i>>>0<128){i=(Kd()|0)+(i<<2)|0;i=h[i>>2]|0}return i|0}function Kd(){var e=0,i=0;x=0;e=Le(8)|0;i=x;x=0;if(i&1){i=Je(0)|0;Wi(i)}else return h[e>>2]|0;return 0}function $d(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=(t-i|0)>>>2;if((i|0)!=(t|0)){r=i;do{e=h[r>>2]|0;if(e>>>0<128){e=(Kd()|0)+(e<<2)|0;e=h[e>>2]|0}h[r>>2]=e;r=r+4|0}while((r|0)!=(t|0))}return i+(n<<2)|0}function Jd(e,i){e=e|0;i=i|0;if(i>>>0<128){i=(Qd()|0)+(i<<2)|0;i=h[i>>2]|0}return i|0}function Qd(){var e=0,i=0;x=0;e=Le(9)|0;i=x;x=0;if(i&1){i=Je(0)|0;Wi(i)}else return h[e>>2]|0;return 0}function Zd(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=(t-i|0)>>>2;if((i|0)!=(t|0)){r=i;do{e=h[r>>2]|0;if(e>>>0<128){e=(Qd()|0)+(e<<2)|0;e=h[e>>2]|0}h[r>>2]=e;r=r+4|0}while((r|0)!=(t|0))}return i+(n<<2)|0}function eh(e,i){e=e|0;i=i|0;return i<<24>>24|0}function ih(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;if((i|0)!=(t|0))while(1){h[r>>2]=c[i>>0];i=i+1|0;if((i|0)==(t|0))break;else r=r+4|0}return t|0}function th(e,i,t){e=e|0;i=i|0;t=t|0;return(i>>>0<128?i&255:t)|0}function rh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=(t-i|0)>>>2;if((i|0)!=(t|0)){a=i;e=n;while(1){n=h[a>>2]|0;c[e>>0]=n>>>0<128?n&255:r;a=a+4|0;if((a|0)==(t|0))break;else e=e+1|0}}return i+(o<<2)|0}function nh(e){e=e|0;var i=0;h[e>>2]=43768;i=h[e+8>>2]|0;if((i|0)!=0?(c[e+12>>0]|0)!=0:0)Jm(i);return}function ah(e){e=e|0;nh(e);$m(e);return}function oh(e,i){e=e|0;i=i|0;if(i<<24>>24>-1){i=(Kd()|0)+((i&255)<<2)|0;i=h[i>>2]&255}return i|0}function sh(e,i,t){e=e|0;i=i|0;t=t|0;if((i|0)!=(t|0)){e=i;do{i=c[e>>0]|0;if(i<<24>>24>-1){i=(Kd()|0)+(i<<24>>24<<2)|0;i=h[i>>2]&255}c[e>>0]=i;e=e+1|0}while((e|0)!=(t|0))}return t|0}function fh(e,i){e=e|0;i=i|0;if(i<<24>>24>-1){i=(Qd()|0)+(i<<24>>24<<2)|0;i=h[i>>2]&255}return i|0}function lh(e,i,t){e=e|0;i=i|0;t=t|0;if((i|0)!=(t|0)){e=i;do{i=c[e>>0]|0;if(i<<24>>24>-1){i=(Qd()|0)+(i<<24>>24<<2)|0;i=h[i>>2]&255}c[e>>0]=i;e=e+1|0}while((e|0)!=(t|0))}return t|0}function uh(e,i){e=e|0;i=i|0;return i|0}function ch(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;if((i|0)!=(t|0))while(1){c[r>>0]=c[i>>0]|0;i=i+1|0;if((i|0)==(t|0))break;else r=r+1|0}return t|0}function dh(e,i,t){e=e|0;i=i|0;t=t|0;return(i<<24>>24>-1?i:t)|0}function hh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;if((i|0)!=(t|0))while(1){e=c[i>>0]|0;c[n>>0]=e<<24>>24>-1?e:r;i=i+1|0;if((i|0)==(t|0))break;else n=n+1|0}return t|0}function mh(e){e=e|0;$m(e);return}function bh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;h[n>>2]=t;h[s>>2]=a;return 3}function vh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;h[n>>2]=t;h[s>>2]=a;return 3}function wh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;h[n>>2]=t;return 3}function ph(e){e=e|0;return 1}function gh(e){e=e|0;return 1}function kh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;e=r-t|0;return(e>>>0<n>>>0?e:n)|0}function _h(e){e=e|0;return 1}function yh(e,i){e=e|0;i=i|0;var t=0;h[e+4>>2]=i+-1;h[e>>2]=43836;x=0;i=Le(3)|0;t=x;x=0;if(t&1){t=Je()|0;fi(t|0)}else{h[e+8>>2]=i;return}}function Th(e){e=e|0;xm(e);$m(e);return}function Mh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0;p=k;k=k+16|0;v=p;m=p+8|0;e:do if((t|0)==(r|0))f=r;else{f=t;while(1){if(!(h[f>>2]|0))break e;f=f+4|0;if((f|0)==(r|0)){f=r;break}}}while(0);h[s>>2]=a;h[n>>2]=t;u=o;b=e+8|0;e:do if(!((a|0)==(o|0)|(t|0)==(r|0))){e=a;l=f;i:while(1){_=i;a=h[_+4>>2]|0;f=v;h[f>>2]=h[_>>2];h[f+4>>2]=a;f=uv(h[b>>2]|0)|0;x=0;a=Pe(21,e|0,n|0,l-t>>2|0,u-e|0,i|0)|0;_=x;x=0;if(_&1){g=9;break}if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){g=8;break}switch(a|0){case 0:{d=1;break e}case-1:{f=e;g=14;break i}default:{}}f=(h[s>>2]|0)+a|0;h[s>>2]=f;if((f|0)==(o|0)){g=27;break}if((l|0)==(r|0)){t=h[n>>2]|0;e=f;f=r}else{f=uv(h[b>>2]|0)|0;x=0;t=Me(34,m|0,0,i|0)|0;_=x;x=0;if(_&1){g=35;break}if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){g=34;break}if((t|0)==-1){d=2;break e}if(t>>>0>(u-(h[s>>2]|0)|0)>>>0){d=1;break e}if(t){f=m;while(1){l=c[f>>0]|0;_=h[s>>2]|0;h[s>>2]=_+1;c[_>>0]=l;t=t+-1|0;if(!t)break;else f=f+1|0}}t=(h[n>>2]|0)+4|0;h[n>>2]=t;t:do if((t|0)==(r|0))f=r;else{f=t;while(1){if(!(h[f>>2]|0))break t;f=f+4|0;if((f|0)==(r|0)){f=r;break}}}while(0);e=h[s>>2]|0}if((e|0)==(o|0)|(t|0)==(r|0)){g=47;break e}else l=f}if((g|0)==8){_=Je(0)|0;Wi(_)}else if((g|0)==9){t=Je()|0;if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){_=Je(0)|0;Wi(_)}fi(t|0)}else if((g|0)==14){h[s>>2]=f;i:do if((t|0)!=(h[n>>2]|0)){while(1){_=h[t>>2]|0;e=uv(h[b>>2]|0)|0;x=0;f=Me(34,f|0,_|0,v|0)|0;_=x;x=0;if(_&1){w=e;break}if((e|0)!=0?(x=0,ye(74,e|0)|0,_=x,x=0,_&1):0){g=18;break}if((f|0)==-1)break i;f=(h[s>>2]|0)+f|0;h[s>>2]=f;t=t+4|0;if((t|0)==(h[n>>2]|0))break i}if((g|0)==18){_=Je(0)|0;Wi(_)}t=Je()|0;if((w|0)!=0?(x=0,ye(74,w|0)|0,_=x,x=0,_&1):0){_=Je(0)|0;Wi(_)}fi(t|0)}while(0);h[n>>2]=t;d=2;break}else if((g|0)==27){t=h[n>>2]|0;g=47;break}else if((g|0)==34){_=Je(0)|0;Wi(_)}else if((g|0)==35){t=Je()|0;if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){_=Je(0)|0;Wi(_)}fi(t|0)}}else g=47;while(0);if((g|0)==47)d=(t|0)!=(r|0)&1;k=p;return d|0}function Ch(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0;p=k;k=k+16|0;w=p;e:do if((t|0)==(r|0))f=r;else{f=t;while(1){if(!(c[f>>0]|0))break e;f=f+1|0;if((f|0)==(r|0)){f=r;break}}}while(0);h[s>>2]=a;h[n>>2]=t;d=o;b=e+8|0;e:do if(!((a|0)==(o|0)|(t|0)==(r|0))){e=a;u=f;i:while(1){l=i;f=h[l+4>>2]|0;a=w;h[a>>2]=h[l>>2];h[a+4>>2]=f;a=u;f=uv(h[b>>2]|0)|0;x=0;l=Pe(22,e|0,n|0,a-t|0,d-e>>2|0,i|0)|0;_=x;x=0;if(_&1){g=9;break}if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){g=8;break}switch(l|0){case 0:{m=2;break e}case-1:{f=e;g=14;break i}default:{}}e=(h[s>>2]|0)+(l<<2)|0;h[s>>2]=e;if((e|0)==(o|0)){g=31;break}t=h[n>>2]|0;if((u|0)==(r|0))f=r;else{f=uv(h[b>>2]|0)|0;x=0;t=De(10,e|0,t|0,1,i|0)|0;_=x;x=0;if(_&1){g=38;break}if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){g=37;break}if(t){m=2;break e}h[s>>2]=(h[s>>2]|0)+4;t=(h[n>>2]|0)+1|0;h[n>>2]=t;t:do if((t|0)==(r|0))f=r;else{f=t;while(1){if(!(c[f>>0]|0))break t;f=f+1|0;if((f|0)==(r|0)){f=r;break}}}while(0);e=h[s>>2]|0}if((e|0)==(o|0)|(t|0)==(r|0)){g=47;break e}else u=f}if((g|0)==8){_=Je(0)|0;Wi(_)}else if((g|0)==9){t=Je()|0;if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){_=Je(0)|0;Wi(_)}fi(t|0)}else if((g|0)==14){h[s>>2]=f;i:do if((t|0)!=(h[n>>2]|0)){e=f;t:while(1){f=uv(h[b>>2]|0)|0;x=0;e=De(10,e|0,t|0,a-t|0,w|0)|0;_=x;x=0;if(_&1){g=19;break}if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){g=18;break}switch(e|0){case-1:{g=25;break t}case-2:{g=26;break t}case 0:{t=t+1|0;break}default:t=t+e|0}e=(h[s>>2]|0)+4|0;h[s>>2]=e;if((t|0)==(h[n>>2]|0)){v=t;break i}}if((g|0)==18){_=Je(0)|0;Wi(_)}else if((g|0)==19){t=Je()|0;if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){_=Je(0)|0;Wi(_)}fi(t|0)}else if((g|0)==25){h[n>>2]=t;m=2;break e}else if((g|0)==26){h[n>>2]=t;m=1;break e}}else v=t;while(0);h[n>>2]=v;m=(v|0)!=(r|0)&1;break}else if((g|0)==31){t=h[n>>2]|0;g=47;break}else if((g|0)==37){_=Je(0)|0;Wi(_)}else if((g|0)==38){t=Je()|0;if((f|0)!=0?(x=0,ye(74,f|0)|0,_=x,x=0,_&1):0){_=Je(0)|0;Wi(_)}fi(t|0)}}else g=47;while(0);if((g|0)==47)m=(t|0)!=(r|0)&1;k=p;return m|0}function xh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=k;k=k+16|0;a=o;h[n>>2]=t;t=uv(h[e+8>>2]|0)|0;x=0;e=Me(34,a|0,0,i|0)|0;i=x;x=0;if(i&1){a=Je()|0;if((t|0)!=0?(x=0,ye(74,t|0)|0,o=x,x=0,o&1):0){o=Je(0)|0;Wi(o)}fi(a|0)}if((t|0)!=0?(x=0,ye(74,t|0)|0,i=x,x=0,i&1):0){i=Je(0)|0;Wi(i)}switch(e|0){case 0:case-1:{a=2;break}default:{e=e+-1|0;if(e>>>0<=(r-(h[n>>2]|0)|0)>>>0)if(!e)a=0;else while(1){i=c[a>>0]|0;r=h[n>>2]|0;h[n>>2]=r+1;c[r>>0]=i;e=e+-1|0;if(!e){a=0;break}else a=a+1|0}else a=1}}k=o;return a|0}function Eh(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;i=e+8|0;x=0;t=ye(74,h[i>>2]|0)|0;r=x;x=0;do if(r&1)n=16;else{x=0;r=Me(35,0,0,4)|0;e=x;x=0;if(e&1){e=Je(0)|0;if(!t)break;x=0;ye(74,t|0)|0;o=x;x=0;if(!(o&1))break;o=Je(0)|0;Wi(o)}if((t|0)!=0?(x=0,ye(74,t|0)|0,o=x,x=0,o&1):0){o=Je(0)|0;Wi(o)}if(!r){e=h[i>>2]|0;if(e){x=0;e=ye(74,e|0)|0;o=x;x=0;if(o&1){n=16;break}if((e|0)!=0?(x=0,ye(74,e|0)|0,o=x,x=0,o&1):0){o=Je(0)|0;Wi(o)}else a=0}else a=1}else a=-1;return a|0}while(0);if((n|0)==16)e=Je(0)|0;Wi(e);return 0}function Sh(e){e=e|0;return 0}function Ah(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;l=r;f=e+8|0;e:do if((t|0)==(r|0)|(n|0)==0)e=0;else{e=0;s=0;while(1){o=uv(h[f>>2]|0)|0;x=0;a=Me(36,t|0,l-t|0,i|0)|0;d=x;x=0;if(d&1){c=o;break}if((o|0)!=0?(x=0,ye(74,o|0)|0,d=x,x=0,d&1):0){u=5;break}switch(a|0){case-2:case-1:break e;case 0:{t=t+1|0;a=1;break}default:t=t+a|0}e=a+e|0;s=s+1|0;if((t|0)==(r|0)|s>>>0>=n>>>0)break e;
}if((u|0)==5){d=Je(0)|0;Wi(d)}e=Je()|0;if((c|0)!=0?(x=0,ye(74,c|0)|0,d=x,x=0,d&1):0){d=Je(0)|0;Wi(d)}fi(e|0)}while(0);return e|0}function Ph(e){e=e|0;var i=0,t=0;e=h[e+8>>2]|0;if(e){x=0;e=ye(74,e|0)|0;t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}if((e|0)!=0?(x=0,ye(74,e|0)|0,t=x,x=0,t&1):0){t=Je(0)|0;Wi(t)}else i=4}else i=1;return i|0}function Ih(e){e=e|0;$m(e);return}function Lh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0;e=k;k=k+16|0;f=e+4|0;i=e;h[f>>2]=t;h[i>>2]=a;o=ig(t,r,f,a,o,i,1114111,0)|0;h[n>>2]=h[f>>2];h[s>>2]=h[i>>2];k=e;return o|0}function Dh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0;e=k;k=k+16|0;f=e+4|0;i=e;h[f>>2]=t;h[i>>2]=a;o=tg(t,r,f,a,o,i,1114111,0)|0;h[n>>2]=h[f>>2];h[s>>2]=h[i>>2];k=e;return o|0}function Rh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;h[n>>2]=t;return 3}function Oh(e){e=e|0;return 0}function Bh(e){e=e|0;return 0}function Nh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;return rg(t,r,n,1114111,0)|0}function Fh(e){e=e|0;return 4}function Uh(e){e=e|0;$m(e);return}function Hh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0;e=k;k=k+16|0;f=e+4|0;i=e;h[f>>2]=t;h[i>>2]=a;o=ng(t,r,f,a,o,i,1114111,0)|0;h[n>>2]=h[f>>2];h[s>>2]=h[i>>2];k=e;return o|0}function zh(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0;e=k;k=k+16|0;f=e+4|0;i=e;h[f>>2]=t;h[i>>2]=a;o=ag(t,r,f,a,o,i,1114111,0)|0;h[n>>2]=h[f>>2];h[s>>2]=h[i>>2];k=e;return o|0}function jh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;h[n>>2]=t;return 3}function Yh(e){e=e|0;return 0}function Vh(e){e=e|0;return 0}function qh(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;return og(t,r,n,1114111,0)|0}function Wh(e){e=e|0;return 4}function Gh(e){e=e|0;$m(e);return}function Xh(e){e=e|0;$m(e);return}function Kh(e,i){e=e|0;i=i|0;h[e+4>>2]=i+-1;h[e>>2]=43916;c[e+8>>0]=46;c[e+9>>0]=44;e=e+12|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function $h(e,i){e=e|0;i=i|0;h[e+4>>2]=i+-1;h[e>>2]=43956;h[e+8>>2]=46;h[e+12>>2]=44;e=e+16|0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;return}function Jh(e){e=e|0;h[e>>2]=43916;Uo(e+12|0);return}function Qh(e){e=e|0;Jh(e);$m(e);return}function Zh(e){e=e|0;h[e>>2]=43956;Uo(e+16|0);return}function em(e){e=e|0;Zh(e);$m(e);return}function im(e){e=e|0;return c[e+8>>0]|0}function tm(e){e=e|0;return h[e+8>>2]|0}function rm(e){e=e|0;return c[e+9>>0]|0}function nm(e){e=e|0;return h[e+12>>2]|0}function am(e,i){e=e|0;i=i|0;Bo(e,i+12|0);return}function om(e,i){e=e|0;i=i|0;Bo(e,i+16|0);return}function sm(e,i){e=e|0;i=i|0;No(e,57480,4);return}function fm(e,i){e=e|0;i=i|0;Jo(e,44528,lw(44528)|0);return}function lm(e,i){e=e|0;i=i|0;No(e,57485,5);return}function um(e,i){e=e|0;i=i|0;Jo(e,44548,lw(44548)|0);return}function cm(e){e=e|0;switch(h[e+4>>2]&74|0){case 64:{e=8;break}case 8:{e=16;break}case 0:{e=0;break}default:e=10}return e|0}function dm(e){e=e|0;do if((c[2288]|0)==0?(qe(2288)|0)!=0:0){if((c[2296]|0)==0?(qe(2296)|0)!=0:0){e=44572;do{h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;e=e+12|0}while((e|0)!=44740);yi(169,0,C|0)|0;Ze(2296)}x=0;Ae(31,44572,57491)|0;e=x;x=0;if(((((((((((((!(e&1)?(x=0,Ae(31,44584,57498)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44596,57505)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44608,57513)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44620,57523)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44632,57532)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44644,57539)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44656,57548)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44668,57552)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44680,57556)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44692,57560)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44704,57564)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44716,57568)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,44728,57572)|0,e=x,x=0,!(e&1)):0){h[11185]=44572;Ze(2288);break}e=Je()|0;Pi(2288);fi(e|0)}while(0);return h[11185]|0}function hm(e){e=e|0;do if((c[2304]|0)==0?(qe(2304)|0)!=0:0){if((c[2312]|0)==0?(qe(2312)|0)!=0:0){e=44744;do{h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;e=e+12|0}while((e|0)!=44912);yi(170,0,C|0)|0;Ze(2312)}x=0;Ae(32,44744,44912)|0;e=x;x=0;if(((((((((((((!(e&1)?(x=0,Ae(32,44756,44940)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44768,44968)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44780,45e3)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44792,45040)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44804,45076)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44816,45104)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44828,45140)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44840,45156)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44852,45172)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44864,45188)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44876,45204)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44888,45220)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,44900,45236)|0,e=x,x=0,!(e&1)):0){h[11313]=44744;Ze(2304);break}e=Je()|0;Pi(2304);fi(e|0)}while(0);return h[11313]|0}function mm(e){e=e|0;e:do if((c[2320]|0)==0?(qe(2320)|0)!=0:0){if((c[2328]|0)==0?(qe(2328)|0)!=0:0){e=45256;do{h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;e=e+12|0}while((e|0)!=45544);yi(171,0,C|0)|0;Ze(2328)}x=0;Ae(31,45256,57576)|0;e=x;x=0;do if((((((((((((((!(e&1)?(x=0,Ae(31,45268,57584)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45280,57593)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45292,57599)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45304,57605)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45316,57609)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45328,57614)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45340,57619)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45352,57626)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45364,57636)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45376,57644)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45388,57653)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45400,57662)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45412,57666)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(31,45424,57670)|0,e=x,x=0,!(e&1)):0){x=0;Ae(31,45436,57674)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45448,57605)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45460,57678)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45472,57682)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45484,57686)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45496,57690)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45508,57694)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45520,57698)|0;e=x;x=0;if(e&1)break;x=0;Ae(31,45532,57702)|0;e=x;x=0;if(e&1)break;h[11386]=45256;Ze(2320);break e}while(0);e=Je()|0;Pi(2320);fi(e|0)}while(0);return h[11386]|0}function bm(e){e=e|0;e:do if((c[2336]|0)==0?(qe(2336)|0)!=0:0){if((c[2344]|0)==0?(qe(2344)|0)!=0:0){e=45548;do{h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;e=e+12|0}while((e|0)!=45836);yi(172,0,C|0)|0;Ze(2344)}x=0;Ae(32,45548,45836)|0;e=x;x=0;do if((((((((((((((!(e&1)?(x=0,Ae(32,45560,45868)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45572,45904)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45584,45928)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45596,45952)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45608,45968)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45620,45988)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45632,46008)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45644,46036)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45656,46076)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45668,46108)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45680,46144)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45692,46180)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45704,46196)|0,e=x,x=0,!(e&1)):0)?(x=0,Ae(32,45716,46212)|0,e=x,x=0,!(e&1)):0){x=0;Ae(32,45728,46228)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45740,45952)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45752,46244)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45764,46260)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45776,46276)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45788,46292)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45800,46308)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45812,46324)|0;e=x;x=0;if(e&1)break;x=0;Ae(32,45824,46340)|0;e=x;x=0;if(e&1)break;h[11589]=45548;Ze(2336);break e}while(0);e=Je()|0;Pi(2336);fi(e|0)}while(0);return h[11589]|0}function vm(e){e=e|0;do if((c[2352]|0)==0?(qe(2352)|0)!=0:0){if((c[2360]|0)==0?(qe(2360)|0)!=0:0){e=46360;do{h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;e=e+12|0}while((e|0)!=46648);yi(173,0,C|0)|0;Ze(2360)}x=0;Ae(31,46360,57706)|0;e=x;x=0;if(!(e&1)?(x=0,Ae(31,46372,57709)|0,e=x,x=0,!(e&1)):0){h[11662]=46360;Ze(2352);break}e=Je()|0;Pi(2352);fi(e|0)}while(0);return h[11662]|0}function wm(e){e=e|0;do if((c[2368]|0)==0?(qe(2368)|0)!=0:0){if((c[2376]|0)==0?(qe(2376)|0)!=0:0){e=46652;do{h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;e=e+12|0}while((e|0)!=46940);yi(174,0,C|0)|0;Ze(2376)}x=0;Ae(32,46652,46940)|0;e=x;x=0;if(!(e&1)?(x=0,Ae(32,46664,46952)|0,e=x,x=0,!(e&1)):0){h[11741]=46652;Ze(2368);break}e=Je()|0;Pi(2368);fi(e|0)}while(0);return h[11741]|0}function pm(e){e=e|0;do if((c[2384]|0)==0?(qe(2384)|0)!=0:0){x=0;Re(13,46968,57712,8);e=x;x=0;if(e&1){e=Je()|0;Pi(2384);fi(e|0)}else{yi(175,46968,C|0)|0;Ze(2384);break}}while(0);return 46968}function gm(e){e=e|0;var i=0;do if((c[2392]|0)==0?(qe(2392)|0)!=0:0){x=0;e=ye(75,46980)|0;i=x;x=0;if(!(i&1)?(x=0,Re(14,47016,46980,e|0),i=x,x=0,!(i&1)):0){yi(176,47016,C|0)|0;Ze(2392);break}i=Je()|0;Pi(2392);fi(i|0)}while(0);return 47016}function km(e){e=e|0;do if((c[2400]|0)==0?(qe(2400)|0)!=0:0){x=0;Re(13,47028,57721,8);e=x;x=0;if(e&1){e=Je()|0;Pi(2400);fi(e|0)}else{yi(175,47028,C|0)|0;Ze(2400);break}}while(0);return 47028}function _m(e){e=e|0;var i=0;do if((c[2408]|0)==0?(qe(2408)|0)!=0:0){x=0;e=ye(75,47040)|0;i=x;x=0;if(!(i&1)?(x=0,Re(14,47076,47040,e|0),i=x,x=0,!(i&1)):0){yi(176,47076,C|0)|0;Ze(2408);break}i=Je()|0;Pi(2408);fi(i|0)}while(0);return 47076}function ym(e){e=e|0;do if((c[2416]|0)==0?(qe(2416)|0)!=0:0){x=0;Re(13,47088,57730,20);e=x;x=0;if(e&1){e=Je()|0;Pi(2416);fi(e|0)}else{yi(175,47088,C|0)|0;Ze(2416);break}}while(0);return 47088}function Tm(e){e=e|0;var i=0;do if((c[2424]|0)==0?(qe(2424)|0)!=0:0){x=0;e=ye(75,47100)|0;i=x;x=0;if(!(i&1)?(x=0,Re(14,47184,47100,e|0),i=x,x=0,!(i&1)):0){yi(176,47184,C|0)|0;Ze(2424);break}i=Je()|0;Pi(2424);fi(i|0)}while(0);return 47184}function Mm(e){e=e|0;do if((c[2432]|0)==0?(qe(2432)|0)!=0:0){x=0;Re(13,47196,57751,11);e=x;x=0;if(e&1){e=Je()|0;Pi(2432);fi(e|0)}else{yi(175,47196,C|0)|0;Ze(2432);break}}while(0);return 47196}function Cm(e){e=e|0;var i=0;do if((c[2440]|0)==0?(qe(2440)|0)!=0:0){x=0;e=ye(75,47208)|0;i=x;x=0;if(!(i&1)?(x=0,Re(14,47256,47208,e|0),i=x,x=0,!(i&1)):0){yi(176,47256,C|0)|0;Ze(2440);break}i=Je()|0;Pi(2440);fi(i|0)}while(0);return 47256}function xm(e){e=e|0;var i=0,t=0,r=0;h[e>>2]=43836;e=e+8|0;i=h[e>>2]|0;x=0;t=Le(3)|0;r=x;x=0;do if(!(r&1)){if((i|0)!=(t|0)?(x=0,ge(164,h[e>>2]|0),r=x,x=0,r&1):0)break;return}while(0);r=Je(0)|0;Wi(r)}function Em(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0;M=k;k=k+112|0;f=M;u=(r-t|0)/12|0;do if(u>>>0>100){f=Cw(u)|0;if((f|0)==0?(x=0,Oe(6),T=x,x=0,T&1):0){s=0;v=6;break}s=f;v=11}else{s=0;v=11}while(0);e:do if((v|0)==11){if((t|0)==(r|0))l=0;else{v=t;d=0;b=f;while(1){l=c[v>>0]|0;if(!(l&1))l=(l&255)>>>1;else l=h[v+4>>2]|0;if(!l){c[b>>0]=2;l=d+1|0;u=u+-1|0}else{c[b>>0]=1;l=d}v=v+12|0;if((v|0)==(r|0))break;else{d=l;b=b+1|0}}}y=(t|0)==(r|0);T=(t|0)==(r|0);_=0;w=l;i:while(1){l=h[e>>2]|0;do if(l){if((h[l+12>>2]|0)==(h[l+16>>2]|0)){x=0;l=ye(h[(h[l>>2]|0)+36>>2]|0,l|0)|0;g=x;x=0;if(g&1){v=5;break i}if((l|0)==-1){h[e>>2]=0;l=0;break}else{l=h[e>>2]|0;break}}}else l=0;while(0);v=(l|0)==0;d=h[i>>2]|0;if(d){if((h[d+12>>2]|0)==(h[d+16>>2]|0)){x=0;l=ye(h[(h[d>>2]|0)+36>>2]|0,d|0)|0;g=x;x=0;if(g&1){v=5;break}if((l|0)==-1){h[i>>2]=0;d=0}}}else d=0;b=(d|0)==0;l=h[e>>2]|0;if(!((u|0)!=0&(v^b))){v=64;break}d=h[l+12>>2]|0;if((d|0)==(h[l+16>>2]|0)){x=0;l=ye(h[(h[l>>2]|0)+36>>2]|0,l|0)|0;g=x;x=0;if(g&1){v=5;break}}else l=m[d>>0]|0;l=l&255;if(!o){x=0;l=Ae(h[(h[n>>2]|0)+12>>2]|0,n|0,l|0)|0;g=x;x=0;if(g&1){v=5;break}}g=_+1|0;if(y){l=0;v=w}else{b=0;p=t;v=w;w=f;while(1){do if((c[w>>0]|0)==1){if(!(c[p>>0]&1))d=p+1|0;else d=h[p+8>>2]|0;d=c[d+_>>0]|0;if(!o){x=0;d=Ae(h[(h[n>>2]|0)+12>>2]|0,n|0,d|0)|0;C=x;x=0;if(C&1){v=4;break i}}if(l<<24>>24!=d<<24>>24){c[w>>0]=0;d=b;u=u+-1|0;break}d=c[p>>0]|0;if(!(d&1))d=(d&255)>>>1;else d=h[p+4>>2]|0;if((d|0)==(g|0)){c[w>>0]=2;d=1;v=v+1|0;u=u+-1|0}else d=1}else d=b;while(0);p=p+12|0;if((p|0)==(r|0)){l=d;break}else{b=d;w=w+1|0}}}if(!l){_=g;w=v;continue}l=h[e>>2]|0;d=l+12|0;b=h[d>>2]|0;if((b|0)==(h[l+16>>2]|0)){x=0;ye(h[(h[l>>2]|0)+40>>2]|0,l|0)|0;C=x;x=0;if(C&1){v=5;break}}else h[d>>2]=b+1;if((v+u|0)>>>0<2|T){_=g;w=v;continue}else{l=t;b=v;v=f}while(1){if((c[v>>0]|0)==2){d=c[l>>0]|0;if(!(d&1))d=(d&255)>>>1;else d=h[l+4>>2]|0;if((d|0)!=(g|0)){c[v>>0]=0;b=b+-1|0}}l=l+12|0;if((l|0)==(r|0)){_=g;w=b;continue i}else v=v+1|0}}if((v|0)==4){t=Je()|0;break}else if((v|0)==5){t=Je()|0;break}else if((v|0)==64){do if(l){if((h[l+12>>2]|0)==(h[l+16>>2]|0)){x=0;l=ye(h[(h[l>>2]|0)+36>>2]|0,l|0)|0;C=x;x=0;if(C&1){v=6;break e}if((l|0)==-1){h[e>>2]=0;l=0;break}else{l=h[e>>2]|0;break}}}else l=0;while(0);u=(l|0)==0;do if(!b){if((h[d+12>>2]|0)==(h[d+16>>2]|0)){x=0;l=ye(h[(h[d>>2]|0)+36>>2]|0,d|0)|0;C=x;x=0;if(C&1){v=6;break e}if((l|0)==-1){h[i>>2]=0;v=76;break}}if(!u)v=77}else v=76;while(0);if((v|0)==76?u:0)v=77;if((v|0)==77)h[a>>2]=h[a>>2]|2;i:do if((t|0)==(r|0))v=81;else while(1){if((c[f>>0]|0)==2)break i;t=t+12|0;if((t|0)==(r|0)){v=81;break}else f=f+1|0}while(0);if((v|0)==81){h[a>>2]=h[a>>2]|4;t=r}if(s)xw(s);k=M;return t|0}}while(0);if((v|0)==6)t=Je()|0;if(s)xw(s);fi(t|0);return 0}function Sm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0;C=k;k=k+240|0;w=C+202|0;o=C+200|0;S=C+24|0;E=C+12|0;g=C+8|0;T=C+40|0;M=C+4|0;_=C;p=cm(r)|0;ml(S,r,w,o);h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);v=x;x=0;e:do if(!(v&1)){d=E+8|0;b=E+1|0;r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r;h[M>>2]=T;h[_>>2]=0;v=E+4|0;u=c[o>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){A=24;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;o=h[t>>2]|0;do if(o){if((h[o+12>>2]|0)!=(h[o+16>>2]|0))if(s)break;else break i;x=0;f=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){A=24;break i}if((f|0)!=-1)if(s)break;else break i;else{h[t>>2]=0;A=16;break}}else A=16;while(0);if((A|0)==16){A=0;if(s){o=0;break}else o=0}s=c[E>>0]|0;s=(s&1)==0?(s&255)>>>1:h[v>>2]|0;if((h[g>>2]|0)==(r+s|0)){x=0;Re(6,E|0,s<<1|0,0);l=x;x=0;if(l&1){A=24;break}if(!(c[E>>0]&1))r=10;else r=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,r|0,0);l=x;x=0;if(l&1){A=24;break}r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r+s}f=e+12|0;s=h[f>>2]|0;l=e+16|0;if((s|0)==(h[l>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}}else s=m[s>>0]|0;if(Qf(s&255,p,r,g,_,u,S,T,M,w)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}else continue}else{h[f>>2]=o+1;continue}}if((A|0)==24){e=Je()|0;break}P=c[S>>0]|0;if((((P&1)==0?(P&255)>>>1:h[S+4>>2]|0)|0)!=0?(y=h[M>>2]|0,(y-T|0)<160):0){P=h[_>>2]|0;h[M>>2]=y+4;h[y>>2]=P}x=0;r=De(11,r|0,h[g>>2]|0,n|0,p|0)|0;P=x;x=0;if(!(P&1)){h[a>>2]=r;$c(S,T,h[M>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;P=x;x=0;if(P&1){A=25;break e}if((e|0)==-1){h[t>>2]=0;A=49;break}}if(!r)A=50}else A=49;while(0);if((A|0)==49?r:0)A=50;if((A|0)==50)h[n>>2]=h[n>>2]|2;P=h[i>>2]|0;Uo(E);Uo(S);k=C;return P|0}else A=25}else A=25;while(0);if((A|0)==25)e=Je()|0;Uo(E);Uo(S);fi(e|0);return 0}function Am(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0;C=k;k=k+240|0;w=C+202|0;o=C+200|0;S=C+24|0;E=C+12|0;g=C+8|0;T=C+40|0;M=C+4|0;_=C;p=cm(r)|0;ml(S,r,w,o);h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);v=x;x=0;e:do if(!(v&1)){d=E+8|0;b=E+1|0;r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r;h[M>>2]=T;h[_>>2]=0;v=E+4|0;u=c[o>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){A=24;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;o=(e|0)==0;s=h[t>>2]|0;do if(s){if((h[s+12>>2]|0)!=(h[s+16>>2]|0))if(o)break;else break i;x=0;f=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;l=x;x=0;if(l&1){A=24;break i}if((f|0)!=-1)if(o)break;else break i;else{h[t>>2]=0;A=16;break}}else A=16;while(0);if((A|0)==16){A=0;if(o){s=0;break}else s=0}o=c[E>>0]|0;o=(o&1)==0?(o&255)>>>1:h[v>>2]|0;if((h[g>>2]|0)==(r+o|0)){x=0;Re(6,E|0,o<<1|0,0);l=x;x=0;if(l&1){A=24;break}if(!(c[E>>0]&1))r=10;else r=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,r|0,0);l=x;x=0;if(l&1){A=24;break}r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r+o}f=e+12|0;o=h[f>>2]|0;l=e+16|0;if((o|0)==(h[l>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}}else o=m[o>>0]|0;if(Qf(o&255,p,r,g,_,u,S,T,M,w)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}else continue}else{h[f>>2]=o+1;continue}}if((A|0)==24){e=Je()|0;break}P=c[S>>0]|0;if((((P&1)==0?(P&255)>>>1:h[S+4>>2]|0)|0)!=0?(y=h[M>>2]|0,(y-T|0)<160):0){P=h[_>>2]|0;h[M>>2]=y+4;h[y>>2]=P}x=0;r=De(12,r|0,h[g>>2]|0,n|0,p|0)|0;o=z;P=x;x=0;if(!(P&1)){P=a;h[P>>2]=r;h[P+4>>2]=o;$c(S,T,h[M>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;P=x;x=0;if(P&1){A=25;break e}if((e|0)==-1){h[t>>2]=0;A=49;break}}if(!r)A=50}else A=49;while(0);if((A|0)==49?r:0)A=50;if((A|0)==50)h[n>>2]=h[n>>2]|2;P=h[i>>2]|0;Uo(E);Uo(S);k=C;return P|0}else A=25}else A=25;while(0);if((A|0)==25)e=Je()|0;Uo(E);Uo(S);fi(e|0);return 0}function Pm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0;E=k;k=k+240|0;p=E+202|0;o=E+200|0;A=E+24|0;S=E+12|0;_=E+8|0;M=E+40|0;C=E+4|0;y=E;g=cm(r)|0;ml(A,r,p,o);h[S>>2]=0;h[S+4>>2]=0;h[S+8>>2]=0;if(!(c[S>>0]&1))e=10;else e=(h[S>>2]&-2)+-1|0;x=0;Re(6,S|0,e|0,0);w=x;x=0;e:do if(!(w&1)){b=S+8|0;v=S+1|0;r=(c[S>>0]&1)==0?v:h[b>>2]|0;h[_>>2]=r;h[C>>2]=M;h[y>>2]=0;w=S+4|0;u=c[o>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){P=24;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;o=h[t>>2]|0;do if(o){if((h[o+12>>2]|0)!=(h[o+16>>2]|0))if(s)break;else break i;x=0;f=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){P=24;break i}if((f|0)!=-1)if(s)break;else break i;else{h[t>>2]=0;P=16;break}}else P=16;while(0);if((P|0)==16){P=0;if(s){o=0;break}else o=0}s=c[S>>0]|0;s=(s&1)==0?(s&255)>>>1:h[w>>2]|0;if((h[_>>2]|0)==(r+s|0)){x=0;Re(6,S|0,s<<1|0,0);l=x;x=0;if(l&1){P=24;break}if(!(c[S>>0]&1))r=10;else r=(h[S>>2]&-2)+-1|0;x=0;Re(6,S|0,r|0,0);l=x;x=0;if(l&1){P=24;break}r=(c[S>>0]&1)==0?v:h[b>>2]|0;h[_>>2]=r+s}f=e+12|0;s=h[f>>2]|0;l=e+16|0;if((s|0)==(h[l>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;I=x;x=0;if(I&1){P=24;break}}else s=m[s>>0]|0;if(Qf(s&255,g,r,_,y,u,A,M,C,p)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;I=x;x=0;if(I&1){P=24;break}else continue}else{h[f>>2]=o+1;continue}}if((P|0)==24){e=Je()|0;break}I=c[A>>0]|0;if((((I&1)==0?(I&255)>>>1:h[A+4>>2]|0)|0)!=0?(T=h[C>>2]|0,(T-M|0)<160):0){I=h[y>>2]|0;h[C>>2]=T+4;h[T>>2]=I}x=0;r=De(13,r|0,h[_>>2]|0,n|0,g|0)|0;I=x;x=0;if(!(I&1)){d[a>>1]=r;$c(A,M,h[C>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;I=x;x=0;if(I&1){P=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;I=x;x=0;if(I&1){P=25;break e}if((e|0)==-1){h[t>>2]=0;P=49;break}}if(!r)P=50}else P=49;while(0);if((P|0)==49?r:0)P=50;if((P|0)==50)h[n>>2]=h[n>>2]|2;I=h[i>>2]|0;Uo(S);Uo(A);k=E;return I|0}else P=25}else P=25;while(0);if((P|0)==25)e=Je()|0;Uo(S);Uo(A);fi(e|0);return 0}function Im(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0;C=k;k=k+240|0;w=C+202|0;o=C+200|0;S=C+24|0;E=C+12|0;g=C+8|0;T=C+40|0;M=C+4|0;_=C;p=cm(r)|0;ml(S,r,w,o);h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);v=x;x=0;e:do if(!(v&1)){d=E+8|0;b=E+1|0;r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r;h[M>>2]=T;h[_>>2]=0;v=E+4|0;u=c[o>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){A=24;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;o=h[t>>2]|0;do if(o){if((h[o+12>>2]|0)!=(h[o+16>>2]|0))if(s)break;else break i;x=0;f=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){A=24;break i}if((f|0)!=-1)if(s)break;else break i;else{h[t>>2]=0;A=16;break}}else A=16;while(0);if((A|0)==16){A=0;if(s){o=0;break}else o=0}s=c[E>>0]|0;s=(s&1)==0?(s&255)>>>1:h[v>>2]|0;if((h[g>>2]|0)==(r+s|0)){x=0;Re(6,E|0,s<<1|0,0);l=x;x=0;if(l&1){A=24;break}if(!(c[E>>0]&1))r=10;else r=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,r|0,0);l=x;x=0;if(l&1){A=24;break}r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r+s}f=e+12|0;s=h[f>>2]|0;l=e+16|0;if((s|0)==(h[l>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}}else s=m[s>>0]|0;if(Qf(s&255,p,r,g,_,u,S,T,M,w)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}else continue}else{h[f>>2]=o+1;continue}}if((A|0)==24){e=Je()|0;break}P=c[S>>0]|0;if((((P&1)==0?(P&255)>>>1:h[S+4>>2]|0)|0)!=0?(y=h[M>>2]|0,(y-T|0)<160):0){P=h[_>>2]|0;h[M>>2]=y+4;h[y>>2]=P}x=0;r=De(14,r|0,h[g>>2]|0,n|0,p|0)|0;P=x;x=0;if(!(P&1)){h[a>>2]=r;$c(S,T,h[M>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;P=x;x=0;if(P&1){A=25;break e}if((e|0)==-1){h[t>>2]=0;A=49;break}}if(!r)A=50}else A=49;while(0);if((A|0)==49?r:0)A=50;if((A|0)==50)h[n>>2]=h[n>>2]|2;P=h[i>>2]|0;Uo(E);Uo(S);k=C;return P|0}else A=25}else A=25;while(0);if((A|0)==25)e=Je()|0;Uo(E);Uo(S);fi(e|0);return 0}function Lm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0;C=k;k=k+240|0;w=C+202|0;o=C+200|0;S=C+24|0;E=C+12|0;g=C+8|0;T=C+40|0;M=C+4|0;_=C;p=cm(r)|0;ml(S,r,w,o);h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);v=x;x=0;e:do if(!(v&1)){d=E+8|0;b=E+1|0;r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r;h[M>>2]=T;h[_>>2]=0;v=E+4|0;u=c[o>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){A=24;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;s=(e|0)==0;o=h[t>>2]|0;do if(o){if((h[o+12>>2]|0)!=(h[o+16>>2]|0))if(s)break;else break i;x=0;f=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){A=24;break i}if((f|0)!=-1)if(s)break;else break i;else{h[t>>2]=0;A=16;break}}else A=16;while(0);if((A|0)==16){A=0;if(s){o=0;break}else o=0}s=c[E>>0]|0;s=(s&1)==0?(s&255)>>>1:h[v>>2]|0;if((h[g>>2]|0)==(r+s|0)){x=0;Re(6,E|0,s<<1|0,0);l=x;x=0;if(l&1){A=24;break}if(!(c[E>>0]&1))r=10;else r=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,r|0,0);l=x;x=0;if(l&1){A=24;break}r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r+s}f=e+12|0;s=h[f>>2]|0;l=e+16|0;if((s|0)==(h[l>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}}else s=m[s>>0]|0;if(Qf(s&255,p,r,g,_,u,S,T,M,w)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}else continue}else{h[f>>2]=o+1;continue}}if((A|0)==24){e=Je()|0;break}P=c[S>>0]|0;if((((P&1)==0?(P&255)>>>1:h[S+4>>2]|0)|0)!=0?(y=h[M>>2]|0,(y-T|0)<160):0){P=h[_>>2]|0;h[M>>2]=y+4;h[y>>2]=P}x=0;r=De(15,r|0,h[g>>2]|0,n|0,p|0)|0;P=x;x=0;if(!(P&1)){h[a>>2]=r;$c(S,T,h[M>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;P=x;x=0;if(P&1){A=25;break e}if((e|0)==-1){h[t>>2]=0;A=49;break}}if(!r)A=50}else A=49;while(0);if((A|0)==49?r:0)A=50;if((A|0)==50)h[n>>2]=h[n>>2]|2;P=h[i>>2]|0;Uo(E);Uo(S);k=C;return P|0}else A=25}else A=25;while(0);if((A|0)==25)e=Je()|0;Uo(E);Uo(S);fi(e|0);return 0}function Dm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0;C=k;k=k+240|0;w=C+202|0;o=C+200|0;S=C+24|0;E=C+12|0;g=C+8|0;T=C+40|0;M=C+4|0;_=C;p=cm(r)|0;ml(S,r,w,o);h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);v=x;x=0;e:do if(!(v&1)){d=E+8|0;b=E+1|0;r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r;h[M>>2]=T;h[_>>2]=0;v=E+4|0;u=c[o>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;l=x;x=0;if(l&1){A=24;break}if((o|0)==-1){h[i>>2]=0;e=0}}}else e=0;o=(e|0)==0;s=h[t>>2]|0;do if(s){if((h[s+12>>2]|0)!=(h[s+16>>2]|0))if(o)break;else break i;x=0;f=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;l=x;x=0;if(l&1){A=24;break i}if((f|0)!=-1)if(o)break;else break i;else{h[t>>2]=0;A=16;break}}else A=16;while(0);if((A|0)==16){A=0;if(o){s=0;break}else s=0}o=c[E>>0]|0;o=(o&1)==0?(o&255)>>>1:h[v>>2]|0;if((h[g>>2]|0)==(r+o|0)){x=0;Re(6,E|0,o<<1|0,0);l=x;x=0;if(l&1){A=24;break}if(!(c[E>>0]&1))r=10;else r=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,r|0,0);l=x;x=0;if(l&1){A=24;break}r=(c[E>>0]&1)==0?b:h[d>>2]|0;h[g>>2]=r+o}f=e+12|0;o=h[f>>2]|0;l=e+16|0;if((o|0)==(h[l>>2]|0)){x=0;o=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}}else o=m[o>>0]|0;if(Qf(o&255,p,r,g,_,u,S,T,M,w)|0)break;o=h[f>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=24;break}else continue}else{h[f>>2]=o+1;continue}}if((A|0)==24){e=Je()|0;break}P=c[S>>0]|0;if((((P&1)==0?(P&255)>>>1:h[S+4>>2]|0)|0)!=0?(y=h[M>>2]|0,(y-T|0)<160):0){P=h[_>>2]|0;h[M>>2]=y+4;h[y>>2]=P}x=0;r=De(16,r|0,h[g>>2]|0,n|0,p|0)|0;o=z;P=x;x=0;if(!(P&1)){P=a;h[P>>2]=r;h[P+4>>2]=o;$c(S,T,h[M>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;P=x;x=0;if(P&1){A=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;P=x;x=0;if(P&1){A=25;break e}if((e|0)==-1){h[t>>2]=0;A=49;break}}if(!r)A=50}else A=49;while(0);if((A|0)==49?r:0)A=50;if((A|0)==50)h[n>>2]=h[n>>2]|2;P=h[i>>2]|0;Uo(E);Uo(S);k=C;return P|0}else A=25}else A=25;while(0);if((A|0)==25)e=Je()|0;Uo(E);Uo(S);fi(e|0);return 0}function Rm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0;P=k;k=k+240|0;_=P+208|0;s=P+203|0;f=P+202|0;L=P+24|0;I=P+12|0;T=P+8|0;S=P+40|0;A=P+4|0;M=P;C=P+201|0;y=P+200|0;bl(L,r,_,s,f);h[I>>2]=0;h[I+4>>2]=0;h[I+8>>2]=0;if(!(c[I>>0]&1))e=10;else e=(h[I>>2]&-2)+-1|0;x=0;Re(6,I|0,e|0,0);g=x;x=0;e:do if(!(g&1)){v=I+8|0;p=I+1|0;r=(c[I>>0]&1)==0?p:h[v>>2]|0;h[T>>2]=r;h[A>>2]=S;h[M>>2]=0;c[C>>0]=1;c[y>>0]=69;g=I+4|0;b=c[s>>0]|0;d=c[f>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;u=x;x=0;if(u&1){D=24;break}if((s|0)==-1){h[i>>2]=0;e=0}}}else e=0;f=(e|0)==0;s=h[t>>2]|0;do if(s){if((h[s+12>>2]|0)!=(h[s+16>>2]|0))if(f)break;else break i;x=0;l=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;u=x;x=0;if(u&1){D=24;break i}if((l|0)!=-1)if(f)break;else break i;else{h[t>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(f){s=0;break}else s=0}f=c[I>>0]|0;f=(f&1)==0?(f&255)>>>1:h[g>>2]|0;if((h[T>>2]|0)==(r+f|0)){x=0;Re(6,I|0,f<<1|0,0);u=x;x=0;if(u&1){D=24;break}if(!(c[I>>0]&1))r=10;else r=(h[I>>2]&-2)+-1|0;x=0;Re(6,I|0,r|0,0);u=x;x=0;if(u&1){D=24;break}r=(c[I>>0]&1)==0?p:h[v>>2]|0;h[T>>2]=r+f}l=e+12|0;f=h[l>>2]|0;u=e+16|0;if((f|0)==(h[u>>2]|0)){x=0;f=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=24;break}}else f=m[f>>0]|0;if(vl(f&255,C,y,r,T,b,d,L,S,A,M,_)|0)break;s=h[l>>2]|0;if((s|0)==(h[u>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=24;break}else continue}else{h[l>>2]=s+1;continue}}if((D|0)==24){e=Je()|0;break}R=c[L>>0]|0;if(!((c[C>>0]|0)==0?1:(((R&1)==0?(R&255)>>>1:h[L+4>>2]|0)|0)==0)?(E=h[A>>2]|0,(E-S|0)<160):0){R=h[M>>2]|0;h[A>>2]=E+4;h[E>>2]=R}x=0;o=+Ie(1,r|0,h[T>>2]|0,n|0);R=x;x=0;if(!(R&1)){w[a>>2]=o;$c(L,S,h[A>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;R=x;x=0;if(R&1){D=25;break e}if((e|0)==-1){h[t>>2]=0;D=49;break}}if(!r)D=50}else D=49;while(0);if((D|0)==49?r:0)D=50;if((D|0)==50)h[n>>2]=h[n>>2]|2;R=h[i>>2]|0;Uo(I);Uo(L);k=P;return R|0}else D=25}else D=25;while(0);if((D|0)==25)e=Je()|0;Uo(I);Uo(L);fi(e|0);return 0}function Om(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0;P=k;k=k+240|0;_=P+208|0;s=P+203|0;f=P+202|0;L=P+24|0;I=P+12|0;T=P+8|0;S=P+40|0;A=P+4|0;M=P;C=P+201|0;y=P+200|0;bl(L,r,_,s,f);h[I>>2]=0;h[I+4>>2]=0;h[I+8>>2]=0;if(!(c[I>>0]&1))e=10;else e=(h[I>>2]&-2)+-1|0;x=0;Re(6,I|0,e|0,0);g=x;x=0;e:do if(!(g&1)){v=I+8|0;w=I+1|0;r=(c[I>>0]&1)==0?w:h[v>>2]|0;h[T>>2]=r;h[A>>2]=S;h[M>>2]=0;c[C>>0]=1;c[y>>0]=69;g=I+4|0;b=c[s>>0]|0;d=c[f>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;u=x;x=0;if(u&1){D=24;break}if((s|0)==-1){h[i>>2]=0;e=0}}}else e=0;f=(e|0)==0;s=h[t>>2]|0;do if(s){if((h[s+12>>2]|0)!=(h[s+16>>2]|0))if(f)break;else break i;x=0;l=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;u=x;x=0;if(u&1){D=24;break i}if((l|0)!=-1)if(f)break;else break i;else{h[t>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(f){s=0;break}else s=0}f=c[I>>0]|0;f=(f&1)==0?(f&255)>>>1:h[g>>2]|0;if((h[T>>2]|0)==(r+f|0)){x=0;Re(6,I|0,f<<1|0,0);u=x;x=0;if(u&1){D=24;break}if(!(c[I>>0]&1))r=10;else r=(h[I>>2]&-2)+-1|0;x=0;Re(6,I|0,r|0,0);u=x;x=0;if(u&1){D=24;break}r=(c[I>>0]&1)==0?w:h[v>>2]|0;h[T>>2]=r+f}l=e+12|0;f=h[l>>2]|0;u=e+16|0;if((f|0)==(h[u>>2]|0)){x=0;f=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=24;break}}else f=m[f>>0]|0;if(vl(f&255,C,y,r,T,b,d,L,S,A,M,_)|0)break;s=h[l>>2]|0;if((s|0)==(h[u>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=24;break}else continue}else{h[l>>2]=s+1;continue}}if((D|0)==24){e=Je()|0;break}R=c[L>>0]|0;if(!((c[C>>0]|0)==0?1:(((R&1)==0?(R&255)>>>1:h[L+4>>2]|0)|0)==0)?(E=h[A>>2]|0,(E-S|0)<160):0){R=h[M>>2]|0;h[A>>2]=E+4;h[E>>2]=R}x=0;o=+Ie(2,r|0,h[T>>2]|0,n|0);R=x;x=0;if(!(R&1)){p[a>>3]=o;$c(L,S,h[A>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;R=x;x=0;if(R&1){D=25;break e}if((e|0)==-1){h[t>>2]=0;D=49;break}}if(!r)D=50}else D=49;while(0);if((D|0)==49?r:0)D=50;if((D|0)==50)h[n>>2]=h[n>>2]|2;R=h[i>>2]|0;Uo(I);Uo(L);k=P;return R|0}else D=25}else D=25;while(0);if((D|0)==25)e=Je()|0;Uo(I);Uo(L);fi(e|0);return 0}function Bm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0;P=k;k=k+240|0;_=P+208|0;s=P+203|0;f=P+202|0;L=P+24|0;I=P+12|0;T=P+8|0;S=P+40|0;A=P+4|0;M=P;C=P+201|0;y=P+200|0;bl(L,r,_,s,f);h[I>>2]=0;h[I+4>>2]=0;h[I+8>>2]=0;if(!(c[I>>0]&1))e=10;else e=(h[I>>2]&-2)+-1|0;x=0;Re(6,I|0,e|0,0);g=x;x=0;e:do if(!(g&1)){v=I+8|0;w=I+1|0;r=(c[I>>0]&1)==0?w:h[v>>2]|0;h[T>>2]=r;h[A>>2]=S;h[M>>2]=0;c[C>>0]=1;c[y>>0]=69;g=I+4|0;b=c[s>>0]|0;d=c[f>>0]|0;e=h[i>>2]|0;i:while(1){if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;s=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;u=x;x=0;if(u&1){D=24;break}if((s|0)==-1){h[i>>2]=0;e=0}}}else e=0;f=(e|0)==0;s=h[t>>2]|0;do if(s){if((h[s+12>>2]|0)!=(h[s+16>>2]|0))if(f)break;else break i;x=0;l=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;u=x;x=0;if(u&1){D=24;break i}if((l|0)!=-1)if(f)break;else break i;else{h[t>>2]=0;D=16;break}}else D=16;while(0);if((D|0)==16){D=0;if(f){s=0;break}else s=0}f=c[I>>0]|0;f=(f&1)==0?(f&255)>>>1:h[g>>2]|0;if((h[T>>2]|0)==(r+f|0)){
x=0;Re(6,I|0,f<<1|0,0);u=x;x=0;if(u&1){D=24;break}if(!(c[I>>0]&1))r=10;else r=(h[I>>2]&-2)+-1|0;x=0;Re(6,I|0,r|0,0);u=x;x=0;if(u&1){D=24;break}r=(c[I>>0]&1)==0?w:h[v>>2]|0;h[T>>2]=r+f}l=e+12|0;f=h[l>>2]|0;u=e+16|0;if((f|0)==(h[u>>2]|0)){x=0;f=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=24;break}}else f=m[f>>0]|0;if(vl(f&255,C,y,r,T,b,d,L,S,A,M,_)|0)break;s=h[l>>2]|0;if((s|0)==(h[u>>2]|0)){x=0;ye(h[(h[e>>2]|0)+40>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=24;break}else continue}else{h[l>>2]=s+1;continue}}if((D|0)==24){e=Je()|0;break}R=c[L>>0]|0;if(!((c[C>>0]|0)==0?1:(((R&1)==0?(R&255)>>>1:h[L+4>>2]|0)|0)==0)?(E=h[A>>2]|0,(E-S|0)<160):0){R=h[M>>2]|0;h[A>>2]=E+4;h[E>>2]=R}x=0;o=+Ie(3,r|0,h[T>>2]|0,n|0);R=x;x=0;if(!(R&1)){p[a>>3]=o;$c(L,S,h[A>>2]|0,n);if(e){if((h[e+12>>2]|0)==(h[e+16>>2]|0)){x=0;r=ye(h[(h[e>>2]|0)+36>>2]|0,e|0)|0;R=x;x=0;if(R&1){D=25;break}if((r|0)==-1){h[i>>2]=0;e=0}}}else e=0;r=(e|0)==0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;R=x;x=0;if(R&1){D=25;break e}if((e|0)==-1){h[t>>2]=0;D=49;break}}if(!r)D=50}else D=49;while(0);if((D|0)==49?r:0)D=50;if((D|0)==50)h[n>>2]=h[n>>2]|2;R=h[i>>2]|0;Uo(I);Uo(L);k=P;return R|0}else D=25}else D=25;while(0);if((D|0)==25)e=Je()|0;Uo(I);Uo(L);fi(e|0);return 0}function Nm(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=k;k=k+16|0;a=n;h[a>>2]=r;r=uv(i)|0;i=Zv(e,t,a)|0;if((r|0)!=0?(x=0,ye(74,r|0)|0,a=x,x=0,a&1):0){a=Je(0)|0;Wi(a)}k=n;return i|0}function Fm(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;var s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0;T=k;k=k+112|0;f=T;u=(r-t|0)/12|0;do if(u>>>0>100){f=Cw(u)|0;if((f|0)==0?(x=0,Oe(6),y=x,x=0,y&1):0){s=0;m=6;break}s=f;m=11}else{s=0;m=11}while(0);e:do if((m|0)==11){if((t|0)==(r|0))l=0;else{b=t;d=0;m=f;while(1){l=c[b>>0]|0;if(!(l&1))l=(l&255)>>>1;else l=h[b+4>>2]|0;if(!l){c[m>>0]=2;l=d+1|0;u=u+-1|0}else{c[m>>0]=1;l=d}b=b+12|0;if((b|0)==(r|0))break;else{d=l;m=m+1|0}}}_=(t|0)==(r|0);y=(t|0)==(r|0);g=0;v=u;i:while(1){u=h[e>>2]|0;do if(u){d=h[u+12>>2]|0;if((d|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;p=x;x=0;if(p&1){m=5;break i}}else u=h[d>>2]|0;if((u|0)==-1){h[e>>2]=0;b=1;break}else{b=(h[e>>2]|0)==0;break}}else b=1;while(0);d=h[i>>2]|0;if(d){u=h[d+12>>2]|0;if((u|0)==(h[d+16>>2]|0)){x=0;u=ye(h[(h[d>>2]|0)+36>>2]|0,d|0)|0;p=x;x=0;if(p&1){m=5;break}}else u=h[u>>2]|0;if((u|0)==-1){h[i>>2]=0;d=0;m=1}else m=0}else{d=0;m=1}u=h[e>>2]|0;if(!((v|0)!=0&(b^m))){m=66;break}d=h[u+12>>2]|0;if((d|0)==(h[u+16>>2]|0)){x=0;u=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;p=x;x=0;if(p&1){m=5;break}}else u=h[d>>2]|0;if(!o){x=0;u=Ae(h[(h[n>>2]|0)+28>>2]|0,n|0,u|0)|0;p=x;x=0;if(p&1){m=5;break}}p=g+1|0;if(_){u=0;b=v}else{b=0;w=t;m=v;v=f;while(1){do if((c[v>>0]|0)==1){if(!(c[w>>0]&1))d=w+4|0;else d=h[w+8>>2]|0;d=h[d+(g<<2)>>2]|0;if(!o){x=0;d=Ae(h[(h[n>>2]|0)+28>>2]|0,n|0,d|0)|0;M=x;x=0;if(M&1){m=4;break i}}if((u|0)!=(d|0)){c[v>>0]=0;d=b;m=m+-1|0;break}d=c[w>>0]|0;if(!(d&1))d=(d&255)>>>1;else d=h[w+4>>2]|0;if((d|0)==(p|0)){c[v>>0]=2;d=1;l=l+1|0;m=m+-1|0}else d=1}else d=b;while(0);w=w+12|0;if((w|0)==(r|0)){u=d;b=m;break}else{b=d;v=v+1|0}}}if(!u){g=p;v=b;continue}u=h[e>>2]|0;d=u+12|0;m=h[d>>2]|0;if((m|0)==(h[u+16>>2]|0)){x=0;ye(h[(h[u>>2]|0)+40>>2]|0,u|0)|0;M=x;x=0;if(M&1){m=5;break}}else h[d>>2]=m+4;if((l+b|0)>>>0<2|y){g=p;v=b;continue}else{u=t;m=f}while(1){if((c[m>>0]|0)==2){d=c[u>>0]|0;if(!(d&1))d=(d&255)>>>1;else d=h[u+4>>2]|0;if((d|0)!=(p|0)){c[m>>0]=0;l=l+-1|0}}u=u+12|0;if((u|0)==(r|0)){g=p;v=b;continue i}else m=m+1|0}}if((m|0)==4){t=Je()|0;break}else if((m|0)==5){t=Je()|0;break}else if((m|0)==66){do if(u){l=h[u+12>>2]|0;if((l|0)==(h[u+16>>2]|0)){x=0;l=ye(h[(h[u>>2]|0)+36>>2]|0,u|0)|0;M=x;x=0;if(M&1){m=6;break e}}else l=h[l>>2]|0;if((l|0)==-1){h[e>>2]=0;u=1;break}else{u=(h[e>>2]|0)==0;break}}else u=1;while(0);do if(d){l=h[d+12>>2]|0;if((l|0)==(h[d+16>>2]|0)){x=0;l=ye(h[(h[d>>2]|0)+36>>2]|0,d|0)|0;M=x;x=0;if(M&1){m=6;break e}}else l=h[l>>2]|0;if((l|0)!=-1)if(u)break;else{m=81;break}else{h[i>>2]=0;m=79;break}}else m=79;while(0);if((m|0)==79?u:0)m=81;if((m|0)==81)h[a>>2]=h[a>>2]|2;i:do if((t|0)==(r|0))m=85;else while(1){if((c[f>>0]|0)==2)break i;t=t+12|0;if((t|0)==(r|0)){m=85;break}else f=f+1|0}while(0);if((m|0)==85){h[a>>2]=h[a>>2]|4;t=r}if(s)xw(s);k=T;return t|0}}while(0);if((m|0)==6)t=Je()|0;if(s)xw(s);fi(t|0);return 0}function Um(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;M=k;k=k+320|0;v=M+208|0;o=M+200|0;E=M+24|0;C=M+12|0;p=M+8|0;y=M+40|0;T=M+4|0;g=M;w=cm(r)|0;wl(E,r,v,o);h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);b=x;x=0;e:do if(!(b&1)){d=C+8|0;m=C+1|0;e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e;h[T>>2]=y;h[g>>2]=0;b=C+4|0;u=h[o>>2]|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){S=25;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;r=0;s=1}else{r=o;s=0}}else{r=0;s=1}f=h[t>>2]|0;do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0)){x=0;o=ye(h[(h[f>>2]|0)+36>>2]|0,f|0)|0;l=x;x=0;if(l&1){S=25;break i}}else o=h[o>>2]|0;if((o|0)!=-1)if(s)break;else{o=f;break i}else{h[t>>2]=0;S=17;break}}else S=17;while(0);if((S|0)==17){S=0;if(s){o=0;break}else f=0}o=c[C>>0]|0;o=(o&1)==0?(o&255)>>>1:h[b>>2]|0;if((h[p>>2]|0)==(e+o|0)){x=0;Re(6,C|0,o<<1|0,0);l=x;x=0;if(l&1){S=25;break}if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);l=x;x=0;if(l&1){S=25;break}e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e+o}s=r+12|0;o=h[s>>2]|0;l=r+16|0;if((o|0)==(h[l>>2]|0)){x=0;o=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=25;break}}else o=h[o>>2]|0;if(hl(o,w,e,p,g,u,E,y,T,v)|0){o=f;break}o=h[s>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=25;break}else{o=r;continue}}else{h[s>>2]=o+4;o=r;continue}}if((S|0)==25){e=Je()|0;break}A=c[E>>0]|0;if((((A&1)==0?(A&255)>>>1:h[E+4>>2]|0)|0)!=0?(_=h[T>>2]|0,(_-y|0)<160):0){A=h[g>>2]|0;h[T>>2]=_+4;h[_>>2]=A}x=0;e=De(11,e|0,h[p>>2]|0,n|0,w|0)|0;A=x;x=0;if(!(A&1)){h[a>>2]=e;$c(E,y,h[T>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{S=53;break}else{h[t>>2]=0;S=51;break}}else S=51;while(0);if((S|0)==51?r:0)S=53;if((S|0)==53)h[n>>2]=h[n>>2]|2;A=h[i>>2]|0;Uo(C);Uo(E);k=M;return A|0}else S=26}else S=26;while(0);if((S|0)==26)e=Je()|0;Uo(C);Uo(E);fi(e|0);return 0}function Hm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;M=k;k=k+320|0;v=M+208|0;o=M+200|0;E=M+24|0;C=M+12|0;p=M+8|0;y=M+40|0;T=M+4|0;g=M;w=cm(r)|0;wl(E,r,v,o);h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);b=x;x=0;e:do if(!(b&1)){d=C+8|0;m=C+1|0;e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e;h[T>>2]=y;h[g>>2]=0;b=C+4|0;u=h[o>>2]|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){S=25;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;o=0;f=1}else f=0}else{o=0;f=1}s=h[t>>2]|0;do if(s){r=h[s+12>>2]|0;if((r|0)==(h[s+16>>2]|0)){x=0;r=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;l=x;x=0;if(l&1){S=25;break i}}else r=h[r>>2]|0;if((r|0)!=-1)if(f)break;else break i;else{h[t>>2]=0;S=17;break}}else S=17;while(0);if((S|0)==17){S=0;if(f){s=0;break}else s=0}r=c[C>>0]|0;r=(r&1)==0?(r&255)>>>1:h[b>>2]|0;if((h[p>>2]|0)==(e+r|0)){x=0;Re(6,C|0,r<<1|0,0);l=x;x=0;if(l&1){S=25;break}if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);l=x;x=0;if(l&1){S=25;break}e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e+r}f=o+12|0;r=h[f>>2]|0;l=o+16|0;if((r|0)==(h[l>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=25;break}}else r=h[r>>2]|0;if(hl(r,w,e,p,g,u,E,y,T,v)|0)break;r=h[f>>2]|0;if((r|0)==(h[l>>2]|0)){x=0;ye(h[(h[o>>2]|0)+40>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=25;break}else continue}else{h[f>>2]=r+4;continue}}if((S|0)==25){e=Je()|0;break}A=c[E>>0]|0;if((((A&1)==0?(A&255)>>>1:h[E+4>>2]|0)|0)!=0?(_=h[T>>2]|0,(_-y|0)<160):0){A=h[g>>2]|0;h[T>>2]=_+4;h[_>>2]=A}x=0;e=De(12,e|0,h[p>>2]|0,n|0,w|0)|0;r=z;A=x;x=0;if(!(A&1)){A=a;h[A>>2]=e;h[A+4>>2]=r;$c(E,y,h[T>>2]|0,n);if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(s){e=h[s+12>>2]|0;if((e|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;A=x;x=0;if(A&1){S=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{S=53;break}else{h[t>>2]=0;S=51;break}}else S=51;while(0);if((S|0)==51?r:0)S=53;if((S|0)==53)h[n>>2]=h[n>>2]|2;A=h[i>>2]|0;Uo(C);Uo(E);k=M;return A|0}else S=26}else S=26;while(0);if((S|0)==26)e=Je()|0;Uo(C);Uo(E);fi(e|0);return 0}function zm(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0;C=k;k=k+320|0;w=C+208|0;o=C+200|0;S=C+24|0;E=C+12|0;g=C+8|0;T=C+40|0;M=C+4|0;_=C;p=cm(r)|0;wl(S,r,w,o);h[E>>2]=0;h[E+4>>2]=0;h[E+8>>2]=0;if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);v=x;x=0;e:do if(!(v&1)){m=E+8|0;b=E+1|0;e=(c[E>>0]&1)==0?b:h[m>>2]|0;h[g>>2]=e;h[M>>2]=T;h[_>>2]=0;v=E+4|0;u=h[o>>2]|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){A=25;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;r=0;s=1}else{r=o;s=0}}else{r=0;s=1}f=h[t>>2]|0;do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0)){x=0;o=ye(h[(h[f>>2]|0)+36>>2]|0,f|0)|0;l=x;x=0;if(l&1){A=25;break i}}else o=h[o>>2]|0;if((o|0)!=-1)if(s)break;else{o=f;break i}else{h[t>>2]=0;A=17;break}}else A=17;while(0);if((A|0)==17){A=0;if(s){o=0;break}else f=0}o=c[E>>0]|0;o=(o&1)==0?(o&255)>>>1:h[v>>2]|0;if((h[g>>2]|0)==(e+o|0)){x=0;Re(6,E|0,o<<1|0,0);l=x;x=0;if(l&1){A=25;break}if(!(c[E>>0]&1))e=10;else e=(h[E>>2]&-2)+-1|0;x=0;Re(6,E|0,e|0,0);l=x;x=0;if(l&1){A=25;break}e=(c[E>>0]&1)==0?b:h[m>>2]|0;h[g>>2]=e+o}s=r+12|0;o=h[s>>2]|0;l=r+16|0;if((o|0)==(h[l>>2]|0)){x=0;o=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;P=x;x=0;if(P&1){A=25;break}}else o=h[o>>2]|0;if(hl(o,p,e,g,_,u,S,T,M,w)|0){o=f;break}o=h[s>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;P=x;x=0;if(P&1){A=25;break}else{o=r;continue}}else{h[s>>2]=o+4;o=r;continue}}if((A|0)==25){e=Je()|0;break}P=c[S>>0]|0;if((((P&1)==0?(P&255)>>>1:h[S+4>>2]|0)|0)!=0?(y=h[M>>2]|0,(y-T|0)<160):0){P=h[_>>2]|0;h[M>>2]=y+4;h[y>>2]=P}x=0;e=De(13,e|0,h[g>>2]|0,n|0,p|0)|0;P=x;x=0;if(!(P&1)){d[a>>1]=e;$c(S,T,h[M>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;P=x;x=0;if(P&1){A=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;P=x;x=0;if(P&1){A=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{A=53;break}else{h[t>>2]=0;A=51;break}}else A=51;while(0);if((A|0)==51?r:0)A=53;if((A|0)==53)h[n>>2]=h[n>>2]|2;P=h[i>>2]|0;Uo(E);Uo(S);k=C;return P|0}else A=26}else A=26;while(0);if((A|0)==26)e=Je()|0;Uo(E);Uo(S);fi(e|0);return 0}function jm(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;t=k;k=k+16|0;n=t;h[n>>2]=0;a=n+4|0;h[a>>2]=0;h[n+8>>2]=0;x=0;Re(7,e|0,n|0,4);i=x;x=0;e:do if(i&1)r=3;else{i=h[n>>2]|0;i:do if(!(fw(i,49507,4)|0)){x=0;i=ye(68,e|0)|0;o=x;x=0;if(o&1){r=3;break e}i=i&255;switch(i|0){case 3:case 2:case 1:case 0:{h[e+44>>2]=i;e=5;i=h[n>>2]|0;break i}case 5:case 4:{i=$e(16)|0;x=0;e=Le(1)|0;o=x;x=0;if(!(o&1)?(x=0,Re(4,i|0,7,e|0),o=x,x=0,!(o&1)):0){x=0;Re(5,i|0,648,74);x=0;r=3;break e}e=Je()|0;Ke(i|0);break e}default:{i=$e(16)|0;x=0;e=Le(1)|0;o=x;x=0;if(!(o&1)?(x=0,Re(4,i|0,5,e|0),o=x,x=0,!(o&1)):0){x=0;Re(5,i|0,648,74);x=0;r=3;break e}e=Je()|0;Ke(i|0);break e}}}else e=4;while(0);if(!i){k=t;return e|0}if((h[a>>2]|0)!=(i|0))h[a>>2]=i;$m(i);k=t;return e|0}while(0);if((r|0)==3)e=Je()|0;i=h[n>>2]|0;if(!i)fi(e|0);if((h[a>>2]|0)!=(i|0))h[a>>2]=i;$m(i);fi(e|0);return 0}function Ym(e){e=e|0;var i=0,t=0,r=0;r=h[(h[e>>2]|0)+-12>>2]|0;h[e+r>>2]=35800;i=e+(r+56)|0;h[i>>2]=35820;t=e+(r+4)|0;h[t>>2]=35836;Uo(e+(r+36)|0);ws(t);us(i);return}function Vm(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;var d=0,m=0,b=0,v=0,w=0,p=0,g=0;b=k;k=k+96|0;m=b;d=Ki(e,i,m,0)|0;if(d){n=d;k=b;return n|0}c[m+32>>0]=0;w=h[m+8>>2]|0;g=h[m>>2]|0;p=h[m+4>>2]|0;d=ce(p,g)|0;v=h[m+16>>2]|0;d=ce(ce(d,(w|0)<9?1:2)|0,v)|0;h[r>>2]=d;d=Cw(d)|0;h[t>>2]=d;h[n>>2]=g;h[a>>2]=p;h[o>>2]=w;h[s>>2]=h[m+12>>2];h[f>>2]=v;h[l>>2]=h[m+20>>2];h[u>>2]=h[m+24>>2];n=$i(d,h[r>>2]|0,e,i,0,0)|0;k=b;return n|0}function qm(e,i){e=e|0;i=i|0;var t=0;t=k;k=k+16|0;h[t>>2]=i;i=h[9203]|0;$v(i,e,t)|0;jv(10,i)|0;Ve()}function Wm(e){e=e|0;Xe(49793,49822,1164,49898)}function Gm(e){e=e|0;Xe(49919,49942,303,49898)}function Xm(){var e=0,i=0;e=k;k=k+16|0;if(!(bi(36556,4)|0)){i=ci(h[9138]|0)|0;k=e;return i|0}else qm(50018,e);return 0}function Km(e){e=e|0;var i=0;i=(e|0)==0?1:e;e=Cw(i)|0;e:do if(!e){while(1){e=nb()|0;if(!e)break;l_[e&7]();e=Cw(i)|0;if(e)break e}i=$e(4)|0;h[i>>2]=36376;Ti(i|0,416,56)}while(0);return e|0}function $m(e){e=e|0;xw(e);return}function Jm(e){e=e|0;$m(e);return}function Qm(e){e=e|0;h[e>>2]=36376;return}function Zm(e){e=e|0;return}function eb(e){e=e|0;$m(e);return}function ib(e){e=e|0;return 50067}function tb(e){e=e|0;var i=0;i=k;k=k+16|0;x=0;Oe(e|0);e=x;x=0;if(!(e&1)){x=0;ke(64,50082,i|0);x=0}e=Je(0)|0;ai(e|0)|0;x=0;ke(64,50122,i+8|0);x=0;e=Je(0)|0;x=0;Oe(3);i=x;x=0;if(i&1){i=Je(0)|0;Wi(i)}else Wi(e)}function rb(){var e=0,i=0,t=0;x=0;e=Le(2)|0;t=x;x=0;if(t&1){t=Je(0)|0;Wi(t)}if(((e|0)!=0?(i=h[e>>2]|0,(i|0)!=0):0)?(t=i+48|0,(h[t>>2]&-256|0)==1126902528?(h[t+4>>2]|0)==1129074247:0):0)tb(h[i+12>>2]|0);t=h[9091]|0;h[9091]=t+0;tb(t)}function nb(){var e=0;e=h[9097]|0;h[9097]=e+0;return e|0}function ab(e){e=e|0;return}function ob(e){e=e|0;h[e>>2]=36400;zb(e+4|0);return}function sb(e){e=e|0;ob(e);$m(e);return}function fb(e){e=e|0;return h[e+4>>2]|0}function lb(e){e=e|0;return}function ub(e){e=e|0;h[e>>2]=36420;return}function cb(e){e=e|0;return}function db(e){e=e|0;$m(e);return}function hb(e){e=e|0;return 50172}function mb(e){e=e|0;return}function bb(e){e=e|0;return}function vb(e){e=e|0;return}function wb(e){e=e|0;$m(e);return}function pb(e){e=e|0;$m(e);return}function gb(e){e=e|0;$m(e);return}function kb(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;o=k;k=k+64|0;a=o;if((e|0)!=(i|0))if((i|0)!=0?(n=xb(i,480,496,0)|0,(n|0)!=0):0){i=a;r=i+56|0;do{h[i>>2]=0;i=i+4|0}while((i|0)<(r|0));h[a>>2]=n;h[a+8>>2]=e;h[a+12>>2]=-1;h[a+48>>2]=1;d_[h[(h[n>>2]|0)+28>>2]&63](n,a,h[t>>2]|0,1);if((h[a+24>>2]|0)==1){h[t>>2]=h[a+16>>2];i=1}else i=0}else i=0;else i=1;k=o;return i|0}function _b(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;e=i+16|0;n=h[e>>2]|0;do if(n){if((n|0)!=(t|0)){r=i+36|0;h[r>>2]=(h[r>>2]|0)+1;h[i+24>>2]=2;c[i+54>>0]=1;break}e=i+24|0;if((h[e>>2]|0)==2)h[e>>2]=r}else{h[e>>2]=t;h[i+24>>2]=r;h[i+36>>2]=1}while(0);return}function yb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;if((e|0)==(h[i+8>>2]|0))_b(0,i,t,r);return}function Tb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;if((e|0)==(h[i+8>>2]|0))_b(0,i,t,r);else{e=h[e+8>>2]|0;d_[h[(h[e>>2]|0)+28>>2]&63](e,i,t,r)}return}function Mb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;a=h[e+4>>2]|0;n=a>>8;if(a&1)n=h[(h[t>>2]|0)+n>>2]|0;e=h[e>>2]|0;d_[h[(h[e>>2]|0)+28>>2]&63](e,i,t+n|0,(a&2|0)!=0?r:2);return}function Cb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;e:do if((e|0)!=(h[i+8>>2]|0)){a=h[e+12>>2]|0;n=e+16+(a<<3)|0;Mb(e+16|0,i,t,r);if((a|0)>1){a=i+54|0;e=e+24|0;do{Mb(e,i,t,r);if(c[a>>0]|0)break e;e=e+8|0}while(e>>>0<n>>>0)}}else _b(0,i,t,r);while(0);return}function xb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0,m=0,b=0,v=0;v=k;k=k+64|0;b=v;m=h[e>>2]|0;u=e+(h[m+-8>>2]|0)|0;m=h[m+-4>>2]|0;h[b>>2]=t;h[b+4>>2]=e;h[b+8>>2]=i;h[b+12>>2]=r;r=b+16|0;e=b+20|0;i=b+24|0;n=b+28|0;a=b+32|0;o=b+40|0;s=(m|0)==(t|0);f=r;l=f+36|0;do{h[f>>2]=0;f=f+4|0}while((f|0)<(l|0));d[r+36>>1]=0;c[r+38>>0]=0;e:do if(s){h[b+48>>2]=1;e_[h[(h[t>>2]|0)+20>>2]&15](t,b,u,u,1,0);r=(h[i>>2]|0)==1?u:0}else{qk[h[(h[m>>2]|0)+24>>2]&15](m,b,u,1,0);switch(h[b+36>>2]|0){case 0:{r=(h[o>>2]|0)==1&(h[n>>2]|0)==1&(h[a>>2]|0)==1?h[e>>2]|0:0;break e}case 1:break;default:{r=0;break e}}if((h[i>>2]|0)!=1?!((h[o>>2]|0)==0&(h[n>>2]|0)==1&(h[a>>2]|0)==1):0){r=0;break}r=h[r>>2]|0}while(0);k=v;return r|0}function Eb(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;c[i+53>>0]=1;do if((h[i+4>>2]|0)==(r|0)){c[i+52>>0]=1;r=i+16|0;e=h[r>>2]|0;if(!e){h[r>>2]=t;h[i+24>>2]=n;h[i+36>>2]=1;if(!((n|0)==1?(h[i+48>>2]|0)==1:0))break;c[i+54>>0]=1;break}if((e|0)!=(t|0)){n=i+36|0;h[n>>2]=(h[n>>2]|0)+1;c[i+54>>0]=1;break}e=i+24|0;r=h[e>>2]|0;if((r|0)==2){h[e>>2]=n;r=n}if((r|0)==1?(h[i+48>>2]|0)==1:0)c[i+54>>0]=1}while(0);return}function Sb(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0;e:do if((e|0)==(h[i+8>>2]|0)){if((h[i+4>>2]|0)==(t|0)?(a=i+28|0,(h[a>>2]|0)!=1):0)h[a>>2]=r}else{if((e|0)!=(h[i>>2]|0)){v=h[e+12>>2]|0;s=e+16+(v<<3)|0;Pb(e+16|0,i,t,r,n);a=e+24|0;if((v|0)<=1)break;o=h[e+8>>2]|0;if((o&2|0)==0?(f=i+36|0,(h[f>>2]|0)!=1):0){if(!(o&1)){o=i+54|0;while(1){if(c[o>>0]|0)break e;if((h[f>>2]|0)==1)break e;Pb(a,i,t,r,n);a=a+8|0;if(a>>>0>=s>>>0)break e}}o=i+24|0;e=i+54|0;while(1){if(c[e>>0]|0)break e;if((h[f>>2]|0)==1?(h[o>>2]|0)==1:0)break e;Pb(a,i,t,r,n);a=a+8|0;if(a>>>0>=s>>>0)break e}}o=i+54|0;while(1){if(c[o>>0]|0)break e;Pb(a,i,t,r,n);a=a+8|0;if(a>>>0>=s>>>0)break e}}if((h[i+16>>2]|0)!=(t|0)?(b=i+20|0,(h[b>>2]|0)!=(t|0)):0){h[i+32>>2]=r;u=i+44|0;if((h[u>>2]|0)==4)break;o=h[e+12>>2]|0;s=e+16+(o<<3)|0;f=i+52|0;r=i+53|0;d=i+54|0;l=e+8|0;m=i+24|0;i:do if((o|0)>0){o=0;a=0;e=e+16|0;while(1){c[f>>0]=0;c[r>>0]=0;Ab(e,i,t,t,1,n);if(c[d>>0]|0){v=20;break i}do if(c[r>>0]|0){if(!(c[f>>0]|0))if(!(h[l>>2]&1)){a=1;v=20;break i}else{a=1;break}if((h[m>>2]|0)==1)break i;if(!(h[l>>2]&2))break i;else{o=1;a=1}}while(0);e=e+8|0;if(e>>>0>=s>>>0){v=20;break}}}else{o=0;a=0;v=20}while(0);do if((v|0)==20){if((!o?(h[b>>2]=t,t=i+40|0,h[t>>2]=(h[t>>2]|0)+1,(h[i+36>>2]|0)==1):0)?(h[m>>2]|0)==2:0){c[d>>0]=1;if(a)break}else v=24;if((v|0)==24?a:0)break;h[u>>2]=4;break e}while(0);h[u>>2]=3;break}if((r|0)==1)h[i+32>>2]=1}while(0);return}function Ab(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0;s=h[e+4>>2]|0;o=s>>8;if(s&1)o=h[(h[r>>2]|0)+o>>2]|0;e=h[e>>2]|0;e_[h[(h[e>>2]|0)+20>>2]&15](e,i,t,r+o|0,(s&2|0)!=0?n:2,a);return}function Pb(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;o=h[e+4>>2]|0;a=o>>8;if(o&1)a=h[(h[t>>2]|0)+a>>2]|0;e=h[e>>2]|0;qk[h[(h[e>>2]|0)+24>>2]&15](e,i,t+a|0,(o&2|0)!=0?r:2,n);return}function Ib(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0;e:do if((e|0)==(h[i+8>>2]|0)){if((h[i+4>>2]|0)==(t|0)?(a=i+28|0,(h[a>>2]|0)!=1):0)h[a>>2]=r}else{if((e|0)!=(h[i>>2]|0)){s=h[e+8>>2]|0;qk[h[(h[s>>2]|0)+24>>2]&15](s,i,t,r,n);break}if((h[i+16>>2]|0)!=(t|0)?(o=i+20|0,(h[o>>2]|0)!=(t|0)):0){h[i+32>>2]=r;r=i+44|0;if((h[r>>2]|0)==4)break;a=i+52|0;c[a>>0]=0;f=i+53|0;c[f>>0]=0;e=h[e+8>>2]|0;e_[h[(h[e>>2]|0)+20>>2]&15](e,i,t,t,1,n);if(c[f>>0]|0){if(!(c[a>>0]|0)){a=1;s=13}}else{a=0;s=13}do if((s|0)==13){h[o>>2]=t;f=i+40|0;h[f>>2]=(h[f>>2]|0)+1;if((h[i+36>>2]|0)==1?(h[i+24>>2]|0)==2:0){c[i+54>>0]=1;if(a)break}else s=16;if((s|0)==16?a:0)break;h[r>>2]=4;break e}while(0);h[r>>2]=3;break}if((r|0)==1)h[i+32>>2]=1}while(0);return}function Lb(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;do if((e|0)==(h[i+8>>2]|0)){if((h[i+4>>2]|0)==(t|0)?(o=i+28|0,(h[o>>2]|0)!=1):0)h[o>>2]=r}else if((e|0)==(h[i>>2]|0)){if((h[i+16>>2]|0)!=(t|0)?(a=i+20|0,(h[a>>2]|0)!=(t|0)):0){h[i+32>>2]=r;h[a>>2]=t;n=i+40|0;h[n>>2]=(h[n>>2]|0)+1;if((h[i+36>>2]|0)==1?(h[i+24>>2]|0)==2:0)c[i+54>>0]=1;h[i+44>>2]=4;break}if((r|0)==1)h[i+32>>2]=1}while(0);return}function Db(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0;if((e|0)==(h[i+8>>2]|0))Eb(0,i,t,r,n);else{u=i+52|0;d=c[u>>0]|0;m=i+53|0;b=c[m>>0]|0;l=h[e+12>>2]|0;o=e+16+(l<<3)|0;c[u>>0]=0;c[m>>0]=0;Ab(e+16|0,i,t,r,n,a);e:do if((l|0)>1){s=i+24|0;f=e+8|0;l=i+54|0;e=e+24|0;do{if(c[l>>0]|0)break e;if(!(c[u>>0]|0)){if((c[m>>0]|0)!=0?(h[f>>2]&1|0)==0:0)break e}else{if((h[s>>2]|0)==1)break e;if(!(h[f>>2]&2))break e}c[u>>0]=0;c[m>>0]=0;Ab(e,i,t,r,n,a);e=e+8|0}while(e>>>0<o>>>0)}while(0);c[u>>0]=d;c[m>>0]=b}return}function Rb(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;if((e|0)==(h[i+8>>2]|0))Eb(0,i,t,r,n);else{e=h[e+8>>2]|0;e_[h[(h[e>>2]|0)+20>>2]&15](e,i,t,r,n,a)}return}function Ob(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;if((e|0)==(h[i+8>>2]|0))Eb(0,i,t,r,n);return}function Bb(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=k;k=k+16|0;r=n;h[r>>2]=h[t>>2];e=Qk[h[(h[e>>2]|0)+16>>2]&63](e,i,r)|0;if(e)h[t>>2]=h[r>>2];k=n;return e&1|0}function Nb(e){e=e|0;if(!e)e=0;else e=(xb(e,480,528,0)|0)!=0;return e&1|0}function Fb(){var e=0;e=$e(4)|0;Qm(e);Ti(e|0,416,56)}function Ub(){var e=0,i=0,t=0,r=0,n=0,a=0,o=0,s=0;n=k;k=k+48|0;o=n+32|0;t=n+24|0;s=n+16|0;a=n;n=n+36|0;e=Xm()|0;if((e|0)!=0?(r=h[e>>2]|0,(r|0)!=0):0){e=r+48|0;i=h[e>>2]|0;e=h[e+4>>2]|0;if(!((i&-256|0)==1126902528&(e|0)==1129074247)){h[t>>2]=h[9140];qm(50375,t)}if((i|0)==1126902529&(e|0)==1129074247)e=h[r+44>>2]|0;else e=r+80|0;h[n>>2]=e;r=h[r>>2]|0;e=h[r+4>>2]|0;if(Qk[h[(h[432>>2]|0)+16>>2]&63](432,r,n)|0){s=h[n>>2]|0;n=h[9140]|0;s=$k[h[(h[s>>2]|0)+8>>2]&127](s)|0;h[a>>2]=n;h[a+4>>2]=e;h[a+8>>2]=s;qm(50289,a)}else{h[s>>2]=h[9140];h[s+4>>2]=e;qm(50334,s)}}qm(50413,o)}function Hb(){var e=0;e=k;k=k+16|0;if(!(Ye(36552,160)|0)){k=e;return}else qm(50186,e)}function zb(e){e=e|0;var i=0,t=0;t=(h[e>>2]|0)+-4|0;i=h[t>>2]|0;h[t>>2]=i+-1;if((i+-1|0)<0)$m((h[e>>2]|0)+-12|0);return}function jb(e){e=e|0;var i=0;i=k;k=k+16|0;xw(e);if(!(_i(h[9138]|0,0)|0)){k=i;return}else qm(50236,i)}function Yb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;e=iw(e,i,t)|0;return e|0}function Vb(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;e=tw(e,i,t)|0;return e|0}function qb(){return 36828}function Wb(){return 36832}function Gb(){return 36836}function Xb(e){e=e|0;return((e|0)==32|(e+-9|0)>>>0<5)&1|0}function Kb(e){e=e|0;if((e+-48|0)>>>0<10)e=1;else e=((e|32)+-97|0)>>>0<6;return e&1|0}function $b(){var e=0;if(!(h[9141]|0))e=36840;else{e=(hi()|0)+60|0;e=h[e>>2]|0}return e|0}function Jb(e){e=e|0;var i=0,t=0;i=0;while(1){if((m[50434+i>>0]|0)==(e|0)){t=2;break}i=i+1|0;if((i|0)==87){i=87;e=50522;t=5;break}}if((t|0)==2)if(!i)e=50522;else{e=50522;t=5}if((t|0)==5)while(1){t=e;while(1){e=t+1|0;if(!(c[t>>0]|0))break;else t=e}i=i+-1|0;if(!i)break;else t=5}return e|0}function Qb(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,L=0,D=0,R=0,O=0,B=0,N=0;B=k;k=k+512|0;L=B;switch(i|0){case 0:{O=24;R=-149;M=4;break}case 1:{O=53;R=-1074;M=4;break}case 2:{O=53;R=-1074;M=4;break}default:r=0}e:do if((M|0)==4){E=e+4|0;x=e+100|0;do{i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0}while((Xb(i)|0)!=0);i:do switch(i|0){case 43:case 45:{n=1-(((i|0)==45&1)<<1)|0;i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0;D=n;break i}else{i=iv(e)|0;D=n;break i}}default:D=1}while(0);n=i;i=0;do{if((n|32|0)!=(c[52326+i>>0]|0))break;do if(i>>>0<7){n=h[E>>2]|0;if(n>>>0<(h[x>>2]|0)>>>0){h[E>>2]=n+1;n=m[n>>0]|0;break}else{n=iv(e)|0;break}}while(0);i=i+1|0}while(i>>>0<8);i:do switch(i|0){case 8:break;case 3:{M=23;break}default:{o=(t|0)!=0;if(o&i>>>0>3)if((i|0)==8)break i;else{M=23;break i}t:do if(!i){i=0;do{if((n|32|0)!=(c[55203+i>>0]|0))break t;do if(i>>>0<2){n=h[E>>2]|0;if(n>>>0<(h[x>>2]|0)>>>0){h[E>>2]=n+1;n=m[n>>0]|0;break}else{n=iv(e)|0;break}}while(0);i=i+1|0}while(i>>>0<3)}while(0);switch(i|0){case 3:{i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if((i|0)==40)i=1;else{if(!(h[x>>2]|0)){r=P;break e}h[E>>2]=(h[E>>2]|0)+-1;r=P;break e}while(1){n=h[E>>2]|0;if(n>>>0<(h[x>>2]|0)>>>0){h[E>>2]=n+1;n=m[n>>0]|0}else n=iv(e)|0;if(!((n+-48|0)>>>0<10|(n+-65|0)>>>0<26)?!((n|0)==95|(n+-97|0)>>>0<26):0)break;i=i+1|0}if((n|0)==41){r=P;break e}n=(h[x>>2]|0)==0;if(!n)h[E>>2]=(h[E>>2]|0)+-1;if(!o){O=$b()|0;h[O>>2]=22;ev(e,0);r=0;break e}if(!i){r=P;break e}while(1){i=i+-1|0;if(!n)h[E>>2]=(h[E>>2]|0)+-1;if(!i){r=P;break e}}}case 0:{do if((n|0)==48){i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if((i|32|0)!=120){if(!(h[x>>2]|0)){i=48;break}h[E>>2]=(h[E>>2]|0)+-1;i=48;break}i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0;o=0}else{i=iv(e)|0;o=0}t:while(1){switch(i|0){case 46:{M=74;break t}case 48:break;default:{y=0;s=0;_=0;n=0;l=o;u=0;g=0;f=1;o=0;r=0;break t}}i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0;o=1;continue}else{i=iv(e)|0;o=1;continue}}if((M|0)==74){i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if((i|0)==48){o=0;n=0;do{i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;o=Ig(o|0,n|0,-1,-1)|0;n=z}while((i|0)==48);y=0;s=0;_=o;l=1;u=1;g=0;f=1;o=0;r=0}else{y=0;s=0;_=0;n=0;l=o;u=1;g=0;f=1;o=0;r=0}}while(1){w=i+-48|0;d=i|32;if(w>>>0>=10){p=(i|0)==46;if(!(p|(d+-97|0)>>>0<6)){d=_;w=y;break}if(p)if(!u){p=s;n=y;w=y;u=1;d=g;a=f}else{d=_;w=y;i=46;break}else M=86}else M=86;if((M|0)==86){M=0;i=(i|0)>57?d+-87|0:w;do if(!((y|0)<0|(y|0)==0&s>>>0<8)){if((y|0)<0|(y|0)==0&s>>>0<14){v=f*.0625;d=g;a=v;r=r+v*+(i|0);break}if((g|0)!=0|(i|0)==0){d=g;a=f}else{d=1;a=f;r=r+f*.5}}else{d=g;a=f;o=i+(o<<4)|0}while(0);s=Ig(s|0,y|0,1,0)|0;p=_;w=z;l=1}i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;y=w;_=p;i=m[i>>0]|0;g=d;f=a;continue}else{y=w;_=p;i=iv(e)|0;g=d;f=a;continue}}if(!l){i=(h[x>>2]|0)==0;if(!i)h[E>>2]=(h[E>>2]|0)+-1;if(t){if(!i?(T=h[E>>2]|0,h[E>>2]=T+-1,(u|0)!=0):0)h[E>>2]=T+-2}else ev(e,0);r=+(D|0)*0;break e}l=(u|0)==0;u=l?s:d;l=l?w:n;if((w|0)<0|(w|0)==0&s>>>0<8){n=w;do{o=o<<4;s=Ig(s|0,n|0,1,0)|0;n=z}while((n|0)<0|(n|0)==0&s>>>0<8)}if((i|32|0)==112){n=hw(e,t)|0;i=z;if((n|0)==0&(i|0)==-2147483648){if(!t){ev(e,0);r=0;break e}if(!(h[x>>2]|0)){n=0;i=0}else{h[E>>2]=(h[E>>2]|0)+-1;n=0;i=0}}}else if(!(h[x>>2]|0)){n=0;i=0}else{h[E>>2]=(h[E>>2]|0)+-1;n=0;i=0}L=Rg(u|0,l|0,2)|0;L=Ig(L|0,z|0,-32,-1)|0;i=Ig(L|0,z|0,n|0,i|0)|0;n=z;if(!o){r=+(D|0)*0;break e}if((n|0)>0|(n|0)==0&i>>>0>(0-R|0)>>>0){O=$b()|0;h[O>>2]=34;r=+(D|0)*1.7976931348623157e308*1.7976931348623157e308;break e}L=R+-106|0;A=((L|0)<0)<<31>>31;if((n|0)<(A|0)|(n|0)==(A|0)&i>>>0<L>>>0){O=$b()|0;h[O>>2]=34;r=+(D|0)*2.2250738585072014e-308*2.2250738585072014e-308;break e}if((o|0)>-1){do{A=!(r>=.5);L=A&1|o<<1;o=L^1;r=r+(A?r:r+-1);i=Ig(i|0,n|0,-1,-1)|0;n=z}while((L|0)>-1);s=i;f=r}else{s=i;f=r}i=Ag(32,0,R|0,((R|0)<0)<<31>>31|0)|0;i=Ig(s|0,n|0,i|0,z|0)|0;R=z;if(0>(R|0)|0==(R|0)&O>>>0>i>>>0)if((i|0)<0){i=0;M=127}else M=125;else{i=O;M=125}if((M|0)==125)if((i|0)<53)M=127;else{n=i;a=+(D|0);r=0}if((M|0)==127){r=+(D|0);n=i;a=r;r=+dv(+wv(1,84-i|0),r)}O=(o&1|0)==0&(f!=0&(n|0)<32);r=a*(O?0:f)+(r+a*+(((O&1)+o|0)>>>0))-r;if(!(r!=0)){O=$b()|0;h[O>>2]=34}r=+pv(r,s);break e}else i=n;while(0);S=R+O|0;A=0-S|0;o=0;t:while(1){switch(i|0){case 46:{M=138;break t}case 48:break;default:{n=0;d=0;u=0;break t}}i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0;o=1;continue}else{i=iv(e)|0;o=1;continue}}if((M|0)==138){i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if((i|0)==48){n=0;i=0;while(1){n=Ig(n|0,i|0,-1,-1)|0;o=z;i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if((i|0)==48)i=o;else{d=o;o=1;u=1;break}}}else{n=0;d=0;u=1}}h[L>>2]=0;l=i+-48|0;s=(i|0)==46;t:do if(s|l>>>0<10){C=L+496|0;y=0;p=0;g=s;M=d;w=o;T=u;o=0;s=0;u=0;r:while(1){do if(g)if(!T){n=y;d=p;T=1}else{d=M;i=y;l=p;break r}else{g=Ig(y|0,p|0,1,0)|0;p=z;_=(i|0)!=48;if((s|0)>=125){if(!_){d=M;y=g;break}h[C>>2]=h[C>>2]|1;d=M;y=g;break}d=L+(s<<2)|0;if(o)l=i+-48+((h[d>>2]|0)*10|0)|0;h[d>>2]=l;o=o+1|0;l=(o|0)==9;d=M;y=g;w=1;o=l?0:o;s=(l&1)+s|0;u=_?g:u}while(0);i=h[E>>2]|0;if(i>>>0<(h[x>>2]|0)>>>0){h[E>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;l=i+-48|0;g=(i|0)==46;if(!(g|l>>>0<10)){l=T;M=161;break t}else M=d}w=(w|0)!=0;M=169}else{y=0;p=0;w=o;l=u;o=0;s=0;u=0;M=161}while(0);do if((M|0)==161){C=(l|0)==0;n=C?y:n;d=C?p:d;w=(w|0)!=0;if(!((i|32|0)==101&w))if((i|0)>-1){i=y;l=p;M=169;break}else{i=y;l=p;M=171;break}l=hw(e,t)|0;i=z;if((l|0)==0&(i|0)==-2147483648){if(!t){ev(e,0);r=0;break}if(!(h[x>>2]|0)){l=0;i=0}else{h[E>>2]=(h[E>>2]|0)+-1;l=0;i=0}}n=Ig(l|0,i|0,n|0,d|0)|0;w=y;d=z;l=p;M=173}while(0);if((M|0)==169)if(h[x>>2]|0){h[E>>2]=(h[E>>2]|0)+-1;if(w){w=i;M=173}else M=172}else M=171;if((M|0)==171)if(w){w=i;M=173}else M=172;do if((M|0)==172){O=$b()|0;h[O>>2]=22;ev(e,0);r=0}else if((M|0)==173){i=h[L>>2]|0;if(!i){r=+(D|0)*0;break}if(((l|0)<0|(l|0)==0&w>>>0<10)&((n|0)==(w|0)&(d|0)==(l|0))?O>>>0>30|(i>>>O|0)==0:0){r=+(D|0)*+(i>>>0);break}e=(R|0)/-2|0;E=((e|0)<0)<<31>>31;if((d|0)>(E|0)|(d|0)==(E|0)&n>>>0>e>>>0){O=$b()|0;h[O>>2]=34;r=+(D|0)*1.7976931348623157e308*1.7976931348623157e308;break}e=R+-106|0;E=((e|0)<0)<<31>>31;if((d|0)<(E|0)|(d|0)==(E|0)&n>>>0<e>>>0){O=$b()|0;h[O>>2]=34;r=+(D|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(o){if((o|0)<9){l=L+(s<<2)|0;i=h[l>>2]|0;do{i=i*10|0;o=o+1|0}while((o|0)!=9);h[l>>2]=i}s=s+1|0}if((u|0)<9?(u|0)<=(n|0)&(n|0)<18:0){if((n|0)==9){r=+(D|0)*+((h[L>>2]|0)>>>0);break}if((n|0)<9){r=+(D|0)*+((h[L>>2]|0)>>>0)/+(h[36844+(8-n<<2)>>2]|0);break}e=O+27+(ce(n,-3)|0)|0;i=h[L>>2]|0;if((e|0)>30|(i>>>e|0)==0){r=+(D|0)*+(i>>>0)*+(h[36844+(n+-10<<2)>>2]|0);break}}i=(n|0)%9|0;if(!i){o=0;i=0}else{w=(n|0)>-1?i:i+9|0;l=h[36844+(8-w<<2)>>2]|0;if(s){u=1e9/(l|0)|0;o=0;i=0;d=0;do{x=L+(d<<2)|0;E=h[x>>2]|0;e=((E>>>0)/(l>>>0)|0)+i|0;h[x>>2]=e;i=ce((E>>>0)%(l>>>0)|0,u)|0;e=(d|0)==(o|0)&(e|0)==0;d=d+1|0;n=e?n+-9|0:n;o=e?d&127:o}while((d|0)!=(s|0));if(i){h[L+(s<<2)>>2]=i;s=s+1|0}}else{o=0;s=0}i=0;n=9-w+n|0}t:while(1){p=(n|0)<18;g=(n|0)==18;_=L+(o<<2)|0;do{if(!p){if(!g)break t;if((h[_>>2]|0)>>>0>=9007199){n=18;break t}}l=0;u=s+127|0;while(1){w=u&127;d=L+(w<<2)|0;u=Rg(h[d>>2]|0,0,29)|0;u=Ig(u|0,z|0,l|0,0)|0;l=z;if(l>>>0>0|(l|0)==0&u>>>0>1e9){e=jg(u|0,l|0,1e9,0)|0;u=Yg(u|0,l|0,1e9,0)|0;l=e}else l=0;h[d>>2]=u;e=(w|0)==(o|0);s=(w|0)!=(s+127&127|0)|e?s:(u|0)==0?w:s;if(e)break;else u=w+-1|0}i=i+-29|0}while((l|0)==0);o=o+127&127;if((o|0)==(s|0)){e=s+127&127;s=L+((s+126&127)<<2)|0;h[s>>2]=h[s>>2]|h[L+(e<<2)>>2];s=e}h[L+(o<<2)>>2]=l;n=n+9|0}t:while(1){y=s+1&127;_=L+((s+127&127)<<2)|0;while(1){p=(n|0)==18;g=(n|0)>27?9:1;w=p^1;while(1){u=o&127;d=(u|0)==(s|0);do if(!d){l=h[L+(u<<2)>>2]|0;if(l>>>0<9007199){M=219;break}if(l>>>0>9007199)break;l=o+1&127;if((l|0)==(s|0)){M=219;break}l=h[L+(l<<2)>>2]|0;if(l>>>0<254740991){M=219;break}if(!(l>>>0>254740991|w)){n=u;break t}}else M=219;while(0);if((M|0)==219?(M=0,p):0){M=220;break t}i=i+g|0;if((o|0)==(s|0))o=s;else break}w=(1<<g)+-1|0;p=1e9>>>g;u=o;l=0;d=o;while(1){E=L+(d<<2)|0;e=h[E>>2]|0;o=(e>>>g)+l|0;h[E>>2]=o;l=ce(e&w,p)|0;o=(d|0)==(u|0)&(o|0)==0;d=d+1&127;n=o?n+-9|0:n;o=o?d:u;if((d|0)==(s|0))break;else u=o}if(!l)continue;if((y|0)!=(o|0))break;h[_>>2]=h[_>>2]|1}h[L+(s<<2)>>2]=l;s=y}if((M|0)==220)if(d){h[L+(y+-1<<2)>>2]=0;n=s;s=y}else n=u;r=+((h[L+(n<<2)>>2]|0)>>>0);n=o+1&127;if((n|0)==(s|0)){s=o+2&127;h[L+(s+-1<<2)>>2]=0}v=+(D|0);a=v*(r*1e9+ +((h[L+(n<<2)>>2]|0)>>>0));p=i+53|0;d=p-R|0;w=(d|0)<(O|0);n=w&1;u=w?(d|0)<0?0:d:O;if((u|0)<53){N=+dv(+wv(1,105-u|0),a);f=+mv(a,+wv(1,53-u|0));b=N;r=f;f=N+(a-f)}else{b=0;r=0;f=a}l=o+2&127;do if((l|0)==(s|0))a=r;else{l=h[L+(l<<2)>>2]|0;do if(l>>>0>=5e8){if(l>>>0>5e8){r=v*.75+r;break}if((o+3&127|0)==(s|0)){r=v*.5+r;break}else{r=v*.75+r;break}}else{if((l|0)==0?(o+3&127|0)==(s|0):0)break;r=v*.25+r}while(0);if((53-u|0)<=1){a=r;break}if(+mv(r,1)!=0){a=r;break}a=r+1}while(0);r=f+a-b;do if((p&2147483647|0)>(-2-S|0)){if(+Q(+r)>=9007199254740992){n=w&(u|0)==(d|0)?0:n;i=i+1|0;r=r*.5}if((i+50|0)<=(A|0)?!(a!=0&(n|0)!=0):0)break;O=$b()|0;h[O>>2]=34}while(0);r=+pv(r,i)}while(0);break e}default:
{if(h[x>>2]|0)h[E>>2]=(h[E>>2]|0)+-1;O=$b()|0;h[O>>2]=22;ev(e,0);r=0;break e}}}}while(0);if((M|0)==23){n=(h[x>>2]|0)==0;if(!n)h[E>>2]=(h[E>>2]|0)+-1;if((t|0)!=0&i>>>0>3)do{if(!n)h[E>>2]=(h[E>>2]|0)+-1;i=i+-1|0}while(i>>>0>3)}r=+(D|0)*I}while(0);k=B;return+r}function Zb(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0,b=0,v=0,w=0;e:do if(i>>>0>36){n=$b()|0;h[n>>2]=22;n=0;r=0}else{w=e+4|0;v=e+100|0;do{a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0}while((Xb(a)|0)!=0);i:do switch(a|0){case 43:case 45:{o=((a|0)==45)<<31>>31;a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0;b=o;break i}else{a=iv(e)|0;b=o;break i}}default:b=0}while(0);o=(i|0)==0;do if((i&-17|0)==0&(a|0)==48){a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;if((a|32|0)!=120)if(o){i=8;u=46;break}else{u=32;break}i=h[w>>2]|0;if(i>>>0<(h[v>>2]|0)>>>0){h[w>>2]=i+1;a=m[i>>0]|0}else a=iv(e)|0;if((m[52335+(a+1)>>0]|0)>15){r=(h[v>>2]|0)==0;if(!r)h[w>>2]=(h[w>>2]|0)+-1;if(!t){ev(e,0);n=0;r=0;break e}if(r){n=0;r=0;break e}h[w>>2]=(h[w>>2]|0)+-1;n=0;r=0;break e}else{i=16;u=46}}else{i=o?10:i;if((m[52335+(a+1)>>0]|0)>>>0<i>>>0)u=32;else{if(h[v>>2]|0)h[w>>2]=(h[w>>2]|0)+-1;ev(e,0);n=$b()|0;h[n>>2]=22;n=0;r=0;break e}}while(0);if((u|0)==32)if((i|0)==10){i=a+-48|0;if(i>>>0<10){a=0;while(1){o=(a*10|0)+i|0;i=h[w>>2]|0;if(i>>>0<(h[v>>2]|0)>>>0){h[w>>2]=i+1;a=m[i>>0]|0}else a=iv(e)|0;i=a+-48|0;if(!(i>>>0<10&o>>>0<429496729)){i=o;break}else a=o}o=0}else{i=0;o=0}t=a+-48|0;if(t>>>0<10){while(1){s=zg(i|0,o|0,10,0)|0;f=z;l=((t|0)<0)<<31>>31;d=~l;if(f>>>0>d>>>0|(f|0)==(d|0)&s>>>0>~t>>>0){s=i;break}i=Ig(s|0,f|0,t|0,l|0)|0;o=z;a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;t=a+-48|0;if(!(t>>>0<10&(o>>>0<429496729|(o|0)==429496729&i>>>0<2576980378))){s=i;break}}if(t>>>0>9){a=s;i=b}else{i=10;u=72}}else{a=i;i=b}}else u=46;i:do if((u|0)==46){if(!(i+-1&i)){u=c[52592+((i*23|0)>>>5&7)>>0]|0;o=c[52335+(a+1)>>0]|0;t=o&255;if(t>>>0<i>>>0){a=0;while(1){s=t|a<<u;a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;o=c[52335+(a+1)>>0]|0;t=o&255;if(!(s>>>0<134217728&t>>>0<i>>>0))break;else a=s}t=0}else{t=0;s=0}f=Lg(-1,-1,u|0)|0;l=z;if((o&255)>>>0>=i>>>0|(t>>>0>l>>>0|(t|0)==(l|0)&s>>>0>f>>>0)){o=t;u=72;break}else a=t;while(1){s=Rg(s|0,a|0,u|0)|0;t=z;s=o&255|s;a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;o=c[52335+(a+1)>>0]|0;if((o&255)>>>0>=i>>>0|(t>>>0>l>>>0|(t|0)==(l|0)&s>>>0>f>>>0)){o=t;u=72;break i}else a=t}}o=c[52335+(a+1)>>0]|0;t=o&255;if(t>>>0<i>>>0){a=0;while(1){s=t+(ce(a,i)|0)|0;a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;o=c[52335+(a+1)>>0]|0;t=o&255;if(!(s>>>0<119304647&t>>>0<i>>>0))break;else a=s}t=0}else{s=0;t=0}if((o&255)>>>0<i>>>0){u=jg(-1,-1,i|0,0)|0;d=z;l=t;while(1){if(l>>>0>d>>>0|(l|0)==(d|0)&s>>>0>u>>>0){o=l;u=72;break i}t=zg(s|0,l|0,i|0,0)|0;f=z;o=o&255;if(f>>>0>4294967295|(f|0)==-1&t>>>0>~o>>>0){o=l;u=72;break i}s=Ig(o|0,0,t|0,f|0)|0;t=z;a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;o=c[52335+(a+1)>>0]|0;if((o&255)>>>0>=i>>>0){o=t;u=72;break}else l=t}}else{o=t;u=72}}while(0);if((u|0)==72)if((m[52335+(a+1)>>0]|0)>>>0<i>>>0){do{a=h[w>>2]|0;if(a>>>0<(h[v>>2]|0)>>>0){h[w>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0}while((m[52335+(a+1)>>0]|0)>>>0<i>>>0);o=$b()|0;h[o>>2]=34;o=n;a=r;i=(r&1|0)==0&0==0?b:0}else{a=s;i=b}if(h[v>>2]|0)h[w>>2]=(h[w>>2]|0)+-1;if(!(o>>>0<n>>>0|(o|0)==(n|0)&a>>>0<r>>>0)){if(!((r&1|0)!=0|0!=0|(i|0)!=0)){w=$b()|0;h[w>>2]=34;r=Ig(r|0,n|0,-1,-1)|0;n=z;break}if(o>>>0>n>>>0|(o|0)==(n|0)&a>>>0>r>>>0){w=$b()|0;h[w>>2]=34;break}}r=((i|0)<0)<<31>>31;r=Ag(a^i|0,o^r|0,i|0,r|0)|0;n=z}while(0);z=n;return r|0}function ev(e,i){e=e|0;i=i|0;var t=0,r=0,n=0;h[e+104>>2]=i;t=h[e+4>>2]|0;r=h[e+8>>2]|0;n=r-t|0;h[e+108>>2]=n;if((i|0)!=0&(n|0)>(i|0))h[e+100>>2]=t+i;else h[e+100>>2]=r;return}function iv(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;t=e+104|0;a=h[t>>2]|0;if((a|0)!=0?(h[e+108>>2]|0)>=(a|0):0)o=4;else{i=Hv(e)|0;if((i|0)>=0){n=h[t>>2]|0;t=e+8|0;if(n){r=h[t>>2]|0;a=h[e+4>>2]|0;t=r;n=n-(h[e+108>>2]|0)+-1|0;if((t-a|0)>(n|0))h[e+100>>2]=a+n;else o=9}else{r=h[t>>2]|0;t=r;o=9}if((o|0)==9)h[e+100>>2]=t;t=h[e+4>>2]|0;if(r){e=e+108|0;h[e>>2]=r+1-t+(h[e>>2]|0)}t=t+-1|0;if((m[t>>0]|0|0)!=(i|0))c[t>>0]=i}else o=4}if((o|0)==4){h[e+100>>2]=0;i=-1}return i|0}function tv(e){e=e|0;var i=0;if(e>>>0>4294963200){i=$b()|0;h[i>>2]=0-e;e=-1}return e|0}function rv(e){e=e|0;return 0}function nv(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return r|0}function av(e,i){e=e|0;i=i|0;return-1|0}function ov(e){e=e|0;xw(e);return}function sv(e,i){e=e|0;i=i|0;return(e+-48|0)>>>0<10|0}function fv(e,i){e=e|0;i=i|0;return Kb(e)|0}function lv(e,i,t){e=e|0;i=i|0;t=t|0;if(((c[i>>0]|0)!=0?(aw(i,57341)|0)!=0:0)?(aw(i,52601)|0)!=0:0)t=0;else if(!t)t=Ew(1,4)|0;return t|0}function uv(e){e=e|0;var i=0,t=0;i=(hi()|0)+176|0;t=h[i>>2]|0;if(e)h[i>>2]=e;return t|0}function cv(e,i){e=+e;i=+i;var t=0,r=0;p[y>>3]=e;r=h[y>>2]|0;t=h[y+4>>2]|0;p[y>>3]=i;t=h[y+4>>2]&-2147483648|t&2147483647;h[y>>2]=r;h[y+4>>2]=t;return+ +p[y>>3]}function dv(e,i){e=+e;i=+i;return+ +cv(e,i)}function hv(e,i){e=+e;i=+i;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0;p[y>>3]=e;t=h[y>>2]|0;l=h[y+4>>2]|0;p[y>>3]=i;u=h[y>>2]|0;c=h[y+4>>2]|0;r=Lg(t|0,l|0,52)|0;r=r&2047;s=Lg(u|0,c|0,52)|0;s=s&2047;d=l&-2147483648;o=Rg(u|0,c|0,1)|0;f=z;e:do if(!((o|0)==0&(f|0)==0)?(a=c&2147483647,!(a>>>0>2146435072|(a|0)==2146435072&u>>>0>0|(r|0)==2047)):0){n=Rg(t|0,l|0,1)|0;a=z;if(!(a>>>0>f>>>0|(a|0)==(f|0)&n>>>0>o>>>0))return+((n|0)==(o|0)&(a|0)==(f|0)?e*0:e);if(!r){r=Rg(t|0,l|0,12)|0;n=z;if((n|0)>-1|(n|0)==-1&r>>>0>4294967295){a=r;r=0;do{r=r+-1|0;a=Rg(a|0,n|0,1)|0;n=z}while((n|0)>-1|(n|0)==-1&a>>>0>4294967295)}else r=0;t=Rg(t|0,l|0,1-r|0)|0;n=z}else n=l&1048575|1048576;if(!s){a=Rg(u|0,c|0,12)|0;o=z;if((o|0)>-1|(o|0)==-1&a>>>0>4294967295){s=0;do{s=s+-1|0;a=Rg(a|0,o|0,1)|0;o=z}while((o|0)>-1|(o|0)==-1&a>>>0>4294967295)}else s=0;u=Rg(u|0,c|0,1-s|0)|0;l=z}else l=c&1048575|1048576;f=Ag(t|0,n|0,u|0,l|0)|0;o=z;a=(o|0)>-1|(o|0)==-1&f>>>0>4294967295;i:do if((r|0)>(s|0)){while(1){if(a)if((t|0)==(u|0)&(n|0)==(l|0))break;else{t=f;n=o}t=Rg(t|0,n|0,1)|0;n=z;r=r+-1|0;f=Ag(t|0,n|0,u|0,l|0)|0;o=z;a=(o|0)>-1|(o|0)==-1&f>>>0>4294967295;if((r|0)<=(s|0))break i}i=e*0;break e}while(0);if(a)if((t|0)==(u|0)&(n|0)==(l|0)){i=e*0;break}else{n=o;t=f}if(n>>>0<1048576|(n|0)==1048576&t>>>0<0)do{t=Rg(t|0,n|0,1)|0;n=z;r=r+-1|0}while(n>>>0<1048576|(n|0)==1048576&t>>>0<0);if((r|0)>0){c=Ig(t|0,n|0,0,-1048576)|0;t=z;r=Rg(r|0,0,52)|0;t=t|z;r=c|r}else{r=Lg(t|0,n|0,1-r|0)|0;t=z}h[y>>2]=r;h[y+4>>2]=t|d;i=+p[y>>3]}else m=3;while(0);if((m|0)==3){i=e*i;i=i/i}return+i}function mv(e,i){e=+e;i=+i;return+ +hv(e,i)}function bv(e,i){e=+e;i=i|0;var t=0,r=0,n=0;p[y>>3]=e;t=h[y>>2]|0;r=h[y+4>>2]|0;n=Lg(t|0,r|0,52)|0;n=n&2047;switch(n|0){case 0:{if(e!=0){e=+bv(e*0x10000000000000000,i);t=(h[i>>2]|0)+-64|0}else t=0;h[i>>2]=t;break}case 2047:break;default:{h[i>>2]=n+-1022;h[y>>2]=t;h[y+4>>2]=r&-2146435073|1071644672;e=+p[y>>3]}}return+e}function vv(e,i){e=+e;i=i|0;return+ +bv(e,i)}function wv(e,i){e=+e;i=i|0;var t=0;if((i|0)>1023){e=e*8.98846567431158e307;t=i+-1023|0;if((t|0)>1023){t=i+-2046|0;t=(t|0)>1023?1023:t;e=e*8.98846567431158e307}}else if((i|0)<-1022){e=e*2.2250738585072014e-308;t=i+1022|0;if((t|0)<-1022){t=i+2044|0;t=(t|0)<-1022?-1022:t;e=e*2.2250738585072014e-308}}else t=i;t=Rg(t+1023|0,0,52)|0;i=z;h[y>>2]=t;h[y+4>>2]=i;return+(e*+p[y>>3])}function pv(e,i){e=+e;i=i|0;return+ +wv(e,i)}function gv(e,i,t){e=e|0;i=i|0;t=t|0;return kv(0,e,i,(t|0)!=0?t:36876)|0}function kv(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;f=k;k=k+16|0;n=f;o=(r|0)==0?36880:r;r=h[o>>2]|0;e:do if(!i)if(!r)r=0;else s=15;else{a=(e|0)==0?n:e;if(!t)r=-2;else{if(!r){r=c[i>>0]|0;n=r&255;if(r<<24>>24>-1){h[a>>2]=n;r=r<<24>>24!=0&1;break}r=n+-194|0;if(r>>>0>50){s=15;break}r=h[36608+(r<<2)>>2]|0;n=t+-1|0;if(n){i=i+1|0;s=9}}else{n=t;s=9}i:do if((s|0)==9){e=c[i>>0]|0;l=(e&255)>>>3;if((l+-16|l+(r>>26))>>>0>7){s=15;break e}while(1){i=i+1|0;r=(e&255)+-128|r<<6;n=n+-1|0;if((r|0)>=0)break;if(!n)break i;e=c[i>>0]|0;if((e&-64)<<24>>24!=-128){s=15;break e}}h[o>>2]=0;h[a>>2]=r;r=t-n|0;break e}while(0);h[o>>2]=r;r=-2}}while(0);if((s|0)==15){h[o>>2]=0;r=$b()|0;h[r>>2]=84;r=-1}k=f;return r|0}function _v(e){e=e|0;if(!e)e=1;else e=(h[e>>2]|0)==0;return e&1|0}function yv(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0;d=k;k=k+1040|0;l=d+8|0;c=d;f=h[i>>2]|0;h[c>>2]=f;u=(e|0)!=0;r=u?r:256;e=u?e:l;a=f;e:do if((r|0)!=0&(f|0)!=0){s=r;f=a;r=0;while(1){a=t>>>2;o=a>>>0>=s>>>0;if(!(t>>>0>131|o)){a=f;break e}a=o?s:a;t=t-a|0;a=Tv(e,c,a,n)|0;if((a|0)==-1){r=t;break}m=(e|0)==(l|0);f=m?0:a;o=s-f|0;e=m?e:e+(a<<2)|0;r=a+r|0;a=h[c>>2]|0;if((s|0)!=(f|0)&(a|0)!=0){s=o;f=a}else{s=o;break e}}t=r;s=0;a=h[c>>2]|0;r=-1}else{s=r;r=0}while(0);e:do if((a|0)!=0?(s|0)!=0&(t|0)!=0:0){o=a;a=e;while(1){e=kv(a,o,t,n)|0;if((e+2|0)>>>0<3)break;o=(h[c>>2]|0)+e|0;h[c>>2]=o;s=s+-1|0;r=r+1|0;if(!((s|0)!=0&(t|0)!=(e|0)))break e;else{t=t-e|0;a=a+4|0}}switch(e|0){case-1:{r=-1;break e}case 0:{h[c>>2]=0;break e}default:{h[n>>2]=0;break e}}}while(0);if(u)h[i>>2]=h[c>>2];k=d;return r|0}function Tv(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;n=h[i>>2]|0;if((r|0)!=0?(a=h[r>>2]|0,(a|0)!=0):0)if(!e){r=t;o=n;l=16}else{h[r>>2]=0;f=e;r=t;s=a;l=37}else if(!e){r=t;l=7}else{a=e;r=t;l=6}e:while(1)if((l|0)==6){if(!r){l=26;break}else e=a;while(1){a=c[n>>0]|0;do if(((a&255)+-1|0)>>>0<127?r>>>0>4&(n&3|0)==0:0){o=n;while(1){n=h[o>>2]|0;if((n+-16843009|n)&-2139062144){a=n;n=o;l=32;break}h[e>>2]=n&255;h[e+4>>2]=m[o+1>>0];h[e+8>>2]=m[o+2>>0];n=o+4|0;a=e+16|0;h[e+12>>2]=m[o+3>>0];r=r+-4|0;if(r>>>0>4){e=a;o=n}else{l=31;break}}if((l|0)==31){e=a;a=c[n>>0]|0;break}else if((l|0)==32){a=a&255;break}}while(0);a=a&255;if((a+-1|0)>>>0>=127)break;n=n+1|0;h[e>>2]=a;r=r+-1|0;if(!r){l=26;break e}else e=e+4|0}a=a+-194|0;if(a>>>0>50){l=48;break}f=e;s=h[36608+(a<<2)>>2]|0;n=n+1|0;l=37;continue}else if((l|0)==7){a=c[n>>0]|0;if(((a&255)+-1|0)>>>0<127?(n&3|0)==0:0){a=h[n>>2]|0;if(!((a+-16843009|a)&-2139062144))do{n=n+4|0;r=r+-4|0;a=h[n>>2]|0}while(((a+-16843009|a)&-2139062144|0)==0);a=a&255}a=a&255;if((a+-1|0)>>>0<127){r=r+-1|0;n=n+1|0;l=7;continue}a=a+-194|0;if(a>>>0>50){l=48;break}a=h[36608+(a<<2)>>2]|0;o=n+1|0;l=16;continue}else if((l|0)==16){l=(m[o>>0]|0)>>>3;if((l+-16|l+(a>>26))>>>0>7){l=17;break}n=o+1|0;if(a&33554432){if((c[n>>0]&-64)<<24>>24!=-128){l=20;break}n=o+2|0;if(a&524288){if((c[n>>0]&-64)<<24>>24!=-128){l=23;break}n=o+3|0}}r=r+-1|0;l=7;continue}else if((l|0)==37){a=m[n>>0]|0;l=a>>>3;if((l+-16|l+(s>>26))>>>0>7){l=38;break}o=n+1|0;e=a+-128|s<<6;if((e|0)<0){a=m[o>>0]|0;if((a&192|0)!=128){l=41;break}o=n+2|0;e=a+-128|e<<6;if((e|0)<0){a=m[o>>0]|0;if((a&192|0)!=128){l=44;break}e=a+-128|e<<6;n=n+3|0}else n=o}else n=o;h[f>>2]=e;a=f+4|0;r=r+-1|0;l=6;continue}if((l|0)==17){n=o+-1|0;l=47}else if((l|0)==20){n=o+-1|0;l=47}else if((l|0)==23){n=o+-1|0;l=47}else if((l|0)==26)h[i>>2]=n;else if((l|0)==38){e=f;a=s;n=n+-1|0;l=47}else if((l|0)==41){r=f;t=n+-1|0;l=52}else if((l|0)==44){r=f;t=n+-1|0;l=52}if((l|0)==47)if(!a)l=48;else{r=e;t=n;l=52}if((l|0)==48)if(!(c[n>>0]|0)){if(e){h[e>>2]=0;h[i>>2]=0}t=t-r|0}else{r=e;t=n;l=52}if((l|0)==52){l=$b()|0;h[l>>2]=84;if(!r)t=-1;else{h[i>>2]=t;t=-1}}return t|0}function Mv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;o=k;k=k+16|0;r=o;e:do if(!i)r=0;else{do if(t){a=(e|0)==0?r:e;r=c[i>>0]|0;e=r&255;if(r<<24>>24>-1){h[a>>2]=e;r=r<<24>>24!=0&1;break e}r=e+-194|0;if(r>>>0<=50){e=i+1|0;n=h[36608+(r<<2)>>2]|0;if(t>>>0<4?(n&-2147483648>>>((t*6|0)+-6|0)|0)!=0:0)break;r=m[e>>0]|0;t=r>>>3;if((t+-16|t+(n>>26))>>>0<=7){r=r+-128|n<<6;if((r|0)>=0){h[a>>2]=r;r=2;break e}e=m[i+2>>0]|0;if((e&192|0)==128){e=e+-128|r<<6;if((e|0)>=0){h[a>>2]=e;r=3;break e}r=m[i+3>>0]|0;if((r&192|0)==128){h[a>>2]=r+-128|e<<6;r=4;break e}}}}}while(0);r=$b()|0;h[r>>2]=84;r=-1}while(0);k=o;return r|0}function Cv(e,i,t){e=e|0;i=i|0;t=t|0;do if(e){if(i>>>0<128){c[e>>0]=i;e=1;break}if(i>>>0<2048){c[e>>0]=i>>>6|192;c[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){c[e>>0]=i>>>12|224;c[e+1>>0]=i>>>6&63|128;c[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){c[e>>0]=i>>>18|240;c[e+1>>0]=i>>>12&63|128;c[e+2>>0]=i>>>6&63|128;c[e+3>>0]=i&63|128;e=4;break}else{e=$b()|0;h[e>>2]=84;e=-1;break}}else e=1;while(0);return e|0}function xv(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0;u=k;k=k+272|0;s=u+8|0;l=u;o=h[i>>2]|0;h[l>>2]=o;f=(e|0)!=0;n=f?r:256;r=f?e:s;e=o;e:do if((n|0)!=0&(o|0)!=0){o=n;a=e;n=0;while(1){e=t>>>0>=o>>>0;if(!(e|t>>>0>32)){e=a;break e}e=e?o:t;t=t-e|0;e=Ev(r,l,e,0)|0;if((e|0)==-1){n=t;break}d=(r|0)==(s|0);c=d?0:e;a=o-c|0;r=d?r:r+e|0;n=e+n|0;e=h[l>>2]|0;if((o|0)!=(c|0)&(e|0)!=0){o=a;a=e}else{o=a;break e}}t=n;o=0;e=h[l>>2]|0;n=-1}else{o=n;n=0}while(0);e:do if((e|0)!=0?(o|0)!=0&(t|0)!=0:0){a=e;e=r;while(1){r=Cv(e,h[a>>2]|0,0)|0;if((r+1|0)>>>0<2)break;a=(h[l>>2]|0)+4|0;h[l>>2]=a;t=t+-1|0;n=n+1|0;if(!((o|0)!=(r|0)&(t|0)!=0))break e;else{o=o-r|0;e=e+r|0}}if(!r)h[l>>2]=0;else n=-1}while(0);if(f)h[i>>2]=h[l>>2];k=u;return n|0}function Ev(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+16|0;o=s;e:do if(!e){e=h[i>>2]|0;r=h[e>>2]|0;if(!r)t=0;else{t=0;do{if(r>>>0>127){r=Cv(o,r,0)|0;if((r|0)==-1){t=-1;break e}}else r=1;t=r+t|0;e=e+4|0;r=h[e>>2]|0}while((r|0)!=0)}}else{i:do if(t>>>0>3){r=t;n=h[i>>2]|0;while(1){a=h[n>>2]|0;if((a+-1|0)>>>0>126){if(!a)break;a=Cv(e,a,0)|0;if((a|0)==-1){t=-1;break e}e=e+a|0;r=r-a|0}else{c[e>>0]=a;e=e+1|0;r=r+-1|0;n=h[i>>2]|0}n=n+4|0;h[i>>2]=n;if(r>>>0<=3)break i}c[e>>0]=0;h[i>>2]=0;t=t-r|0;break e}else r=t;while(0);if(r){n=h[i>>2]|0;while(1){a=h[n>>2]|0;if((a+-1|0)>>>0>126){if(!a){n=19;break}a=Cv(o,a,0)|0;if((a|0)==-1){t=-1;break e}if(r>>>0<a>>>0){n=22;break}Cv(e,h[n>>2]|0,0)|0;e=e+a|0;r=r-a|0}else{c[e>>0]=a;e=e+1|0;r=r+-1|0;n=h[i>>2]|0}n=n+4|0;h[i>>2]=n;if(!r)break e}if((n|0)==19){c[e>>0]=0;h[i>>2]=0;t=t-r|0;break}else if((n|0)==22){t=t-r|0;break}}}while(0);k=s;return t|0}function Sv(e,i){e=e|0;i=i|0;if(!e)e=0;else e=Cv(e,i,0)|0;return e|0}function Av(e){e=e|0;return 0}function Pv(e){e=e|0;return}function Iv(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;o=i&255;c[s>>0]=o;r=e+16|0;n=h[r>>2]|0;if(!n)if(!(Uv(e)|0)){n=h[r>>2]|0;a=4}else t=-1;else a=4;do if((a|0)==4){r=e+20|0;a=h[r>>2]|0;if(a>>>0<n>>>0?(t=i&255,(t|0)!=(c[e+75>>0]|0)):0){h[r>>2]=a+1;c[a>>0]=o;break}if((Qk[h[e+36>>2]&63](e,s,1)|0)==1)t=m[s>>0]|0;else t=-1}while(0);k=f;return t|0}function Lv(e){e=e|0;var i=0,t=0;i=k;k=k+16|0;t=i;h[t>>2]=h[e+60>>2];e=tv(Ci(6,t|0)|0)|0;k=i;return e|0}function Dv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;l=k;k=k+48|0;a=l+16|0;n=l;r=l+32|0;h[r>>2]=i;o=r+4|0;f=e+48|0;u=h[f>>2]|0;h[o>>2]=t-((u|0)!=0&1);s=e+44|0;h[r+8>>2]=h[s>>2];h[r+12>>2]=u;if(!(h[9141]|0)){h[a>>2]=h[e+60>>2];h[a+4>>2]=r;h[a+8>>2]=2;r=tv(Di(145,a|0)|0)|0}else{xi(161,e|0);h[n>>2]=h[e+60>>2];h[n+4>>2]=r;h[n+8>>2]=2;r=tv(Di(145,n|0)|0)|0;pi(0)}if((r|0)>=1){o=h[o>>2]|0;if(r>>>0>o>>>0){a=h[s>>2]|0;n=e+4|0;h[n>>2]=a;h[e+8>>2]=a+(r-o);if(!(h[f>>2]|0))r=t;else{h[n>>2]=a+1;c[i+(t+-1)>>0]=c[a>>0]|0;r=t}}}else{h[e>>2]=h[e>>2]|r&48^16;h[e+8>>2]=0;h[e+4>>2]=0}k=l;return r|0}function Rv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+32|0;a=n;r=n+20|0;h[a>>2]=h[e+60>>2];h[a+4>>2]=0;h[a+8>>2]=i;h[a+12>>2]=r;h[a+16>>2]=t;if((tv(Li(140,a|0)|0)|0)<0){h[r>>2]=-1;e=-1}else e=h[r>>2]|0;k=n;return e|0}function Ov(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;b=k;k=k+48|0;c=b+16|0;u=b;r=b+32|0;d=e+28|0;n=h[d>>2]|0;h[r>>2]=n;m=e+20|0;n=(h[m>>2]|0)-n|0;h[r+4>>2]=n;h[r+8>>2]=i;h[r+12>>2]=t;f=e+60|0;l=e+44|0;i=2;n=n+t|0;while(1){if(!(h[9141]|0)){h[c>>2]=h[f>>2];h[c+4>>2]=r;h[c+8>>2]=i;o=tv(Ri(146,c|0)|0)|0}else{xi(162,e|0);h[u>>2]=h[f>>2];h[u+4>>2]=r;h[u+8>>2]=i;o=tv(Ri(146,u|0)|0)|0;pi(0)}if((n|0)==(o|0)){n=6;break}if((o|0)<0){n=8;break}n=n-o|0;a=h[r+4>>2]|0;if(o>>>0<=a>>>0)if((i|0)==2){h[d>>2]=(h[d>>2]|0)+o;s=a;i=2}else s=a;else{s=h[l>>2]|0;h[d>>2]=s;h[m>>2]=s;s=h[r+12>>2]|0;o=o-a|0;r=r+8|0;i=i+-1|0}h[r>>2]=(h[r>>2]|0)+o;h[r+4>>2]=s-o}if((n|0)==6){c=h[l>>2]|0;h[e+16>>2]=c+(h[e+48>>2]|0);e=c;h[d>>2]=e;h[m>>2]=e}else if((n|0)==8){h[e+16>>2]=0;h[d>>2]=0;h[m>>2]=0;h[e>>2]=h[e>>2]|32;if((i|0)==2)t=0;else t=t-(h[r+4>>2]|0)|0}k=b;return t|0}function Bv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;n=k;k=k+80|0;r=n;h[e+36>>2]=8;if((h[e>>2]&64|0)==0?(h[r>>2]=h[e+60>>2],h[r+4>>2]=21505,h[r+8>>2]=n+12,(vi(54,r|0)|0)!=0):0)c[e+75>>0]=-1;r=Ov(e,i,t)|0;k=n;return r|0}function Nv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;r=e+84|0;a=h[r>>2]|0;o=t+256|0;n=rw(a,0,o)|0;n=(n|0)==0?o:n-a|0;t=n>>>0<t>>>0?n:t;Dg(i|0,a|0,t|0)|0;h[e+4>>2]=a+t;i=a+n|0;h[e+8>>2]=i;h[r>>2]=i;return t|0}function Fv(e){e=e|0;var i=0,t=0;i=e+74|0;t=c[i>>0]|0;c[i>>0]=t+255|t;i=e+20|0;t=e+44|0;if((h[i>>2]|0)>>>0>(h[t>>2]|0)>>>0)Qk[h[e+36>>2]&63](e,0,0)|0;h[e+16>>2]=0;h[e+28>>2]=0;h[i>>2]=0;i=h[e>>2]|0;if(i&20)if(!(i&4))i=-1;else{h[e>>2]=i|32;i=-1}else{i=h[t>>2]|0;h[e+8>>2]=i;h[e+4>>2]=i;i=0}return i|0}function Uv(e){e=e|0;var i=0,t=0;i=e+74|0;t=c[i>>0]|0;c[i>>0]=t+255|t;i=h[e>>2]|0;if(!(i&8)){h[e+8>>2]=0;h[e+4>>2]=0;i=h[e+44>>2]|0;h[e+28>>2]=i;h[e+20>>2]=i;h[e+16>>2]=i+(h[e+48>>2]|0);i=0}else{h[e>>2]=i|32;i=-1}return i|0}function Hv(e){e=e|0;var i=0,t=0;t=k;k=k+16|0;i=t;if((h[e+8>>2]|0)==0?(Fv(e)|0)!=0:0)i=-1;else if((Qk[h[e+32>>2]&63](e,i,1)|0)==1)i=m[i>>0]|0;else i=-1;k=t;return i|0}function zv(e){e=e|0;var i=0,t=0;do if(e){if((h[e+76>>2]|0)<=-1){i=vw(e)|0;break}t=(Av(e)|0)==0;i=vw(e)|0;if(!t)Pv(e)}else{if(!(h[9206]|0))i=0;else i=zv(h[9206]|0)|0;je(36592);e=h[9147]|0;if(e)do{if((h[e+76>>2]|0)>-1)t=Av(e)|0;else t=0;if((h[e+20>>2]|0)>>>0>(h[e+28>>2]|0)>>>0)i=vw(e)|0|i;if(t)Pv(e);e=h[e+56>>2]|0}while((e|0)!=0);wi(36592)}while(0);return i|0}function jv(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0;if((h[i+76>>2]|0)>=0?(Av(i)|0)!=0:0){if((c[i+75>>0]|0)!=(e|0)?(r=i+20|0,n=h[r>>2]|0,n>>>0<(h[i+16>>2]|0)>>>0):0){h[r>>2]=n+1;c[n>>0]=e;t=e&255}else t=Iv(i,e)|0;Pv(i)}else o=3;do if((o|0)==3){if((c[i+75>>0]|0)!=(e|0)?(a=i+20|0,t=h[a>>2]|0,t>>>0<(h[i+16>>2]|0)>>>0):0){h[a>>2]=t+1;c[t>>0]=e;t=e&255;break}t=Iv(i,e)|0}while(0);return t|0}function Yv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;r=t+16|0;n=h[r>>2]|0;if(!n)if(!(Uv(t)|0)){n=h[r>>2]|0;a=4}else r=0;else a=4;e:do if((a|0)==4){o=t+20|0;a=h[o>>2]|0;if((n-a|0)>>>0<i>>>0){r=Qk[h[t+36>>2]&63](t,e,i)|0;break}i:do if((c[t+75>>0]|0)>-1){r=i;while(1){if(!r){n=a;r=0;break i}n=r+-1|0;if((c[e+n>>0]|0)==10)break;else r=n}if((Qk[h[t+36>>2]&63](t,e,r)|0)>>>0<r>>>0)break e;i=i-r|0;e=e+r|0;n=h[o>>2]|0}else{n=a;r=0}while(0);Dg(n|0,e|0,i|0)|0;h[o>>2]=(h[o>>2]|0)+i;r=r+i|0}while(0);return r|0}function Vv(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=ce(t,i)|0;if((h[r+76>>2]|0)>-1){a=(Av(r)|0)==0;e=Yv(e,n,r)|0;if(!a)Pv(r)}else e=Yv(e,n,r)|0;if((e|0)!=(n|0))t=(e>>>0)/(i>>>0)|0;return t|0}function qv(e){e=e|0;var i=0,t=0,r=0;if((h[e+76>>2]|0)>=0?(Av(e)|0)!=0:0){i=e+4|0;t=h[i>>2]|0;if(t>>>0<(h[e+8>>2]|0)>>>0){h[i>>2]=t+1;i=m[t>>0]|0}else i=Hv(e)|0}else r=3;do if((r|0)==3){i=e+4|0;t=h[i>>2]|0;if(t>>>0<(h[e+8>>2]|0)>>>0){h[i>>2]=t+1;i=m[t>>0]|0;break}else{i=Hv(e)|0;break}}while(0);return i|0}function Wv(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=k;k=k+16|0;a=n;h[a>>2]=r;r=Qv(e,i,t,a)|0;k=n;return r|0}function Gv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=k;k=k+16|0;n=r;h[n>>2]=t;t=Zv(e,i,n)|0;k=r;return t|0}function Xv(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;do if((e|0)!=-1){if((h[i+76>>2]|0)>-1)n=Av(i)|0;else n=0;if(!((h[i+8>>2]|0)==0?(Fv(i)|0)!=0:0))a=6;if((a|0)==6?(t=i+4|0,r=h[t>>2]|0,r>>>0>((h[i+44>>2]|0)+-8|0)>>>0):0){a=r+-1|0;h[t>>2]=a;c[a>>0]=e;h[i>>2]=h[i>>2]&-17;if(!n)break;Pv(i);break}if(n){Pv(i);e=-1}else e=-1}else e=-1;while(0);return e|0}function Kv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;s=k;k=k+16|0;r=s;n=Cw(240)|0;do if(n){h[r>>2]=h[t>>2];r=Qv(n,240,i,r)|0;if(r>>>0<240){i=Sw(n,r+1|0)|0;h[e>>2]=(i|0)!=0?i:n;break}xw(n);if((r|0)>=0?(o=r+1|0,a=Cw(o)|0,h[e>>2]=a,(a|0)!=0):0)r=Qv(a,o,i,t)|0;else r=-1}else r=-1;while(0);k=s;return r|0}function $v(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+224|0;d=w+80|0;v=w+96|0;b=w;m=w+136|0;r=v;n=r+40|0;do{h[r>>2]=0;r=r+4|0}while((r|0)<(n|0));h[d>>2]=h[t>>2];if((ww(0,i,d,b,v)|0)<0)t=-1;else{if((h[e+76>>2]|0)>-1)l=Av(e)|0;else l=0;t=h[e>>2]|0;u=t&32;if((c[e+74>>0]|0)<1)h[e>>2]=t&-33;t=e+48|0;if(!(h[t>>2]|0)){n=e+44|0;a=h[n>>2]|0;h[n>>2]=m;o=e+28|0;h[o>>2]=m;s=e+20|0;h[s>>2]=m;h[t>>2]=80;f=e+16|0;h[f>>2]=m+80;r=ww(e,i,d,b,v)|0;if(a){Qk[h[e+36>>2]&63](e,0,0)|0;r=(h[s>>2]|0)==0?-1:r;h[n>>2]=a;h[t>>2]=0;h[f>>2]=0;h[o>>2]=0;h[s>>2]=0}}else r=ww(e,i,d,b,v)|0;t=h[e>>2]|0;h[e>>2]=t|u;if(l)Pv(e);t=(t&32|0)==0?r:-1}k=w;return t|0}function Jv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,b=0,v=0,g=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,j=0;H=k;k=k+304|0;L=H+16|0;R=H+8|0;D=H+33|0;O=H;M=H+32|0;if((h[e+76>>2]|0)>-1)U=Av(e)|0;else U=0;r=c[i>>0]|0;e:do if(r<<24>>24){B=e+4|0;N=e+100|0;I=e+108|0;C=e+8|0;x=D+10|0;E=D+33|0;S=R+4|0;A=D+46|0;P=D+94|0;a=r;r=0;o=i;b=0;n=0;i=0;i:while(1){t:do if(!(Xb(a&255)|0)){a=(c[o>>0]|0)==37;r:do if(a){l=o+1|0;s=c[l>>0]|0;n:do switch(s<<24>>24){case 37:break r;case 42:{T=0;s=o+2|0;break}default:{s=(s&255)+-48|0;if(s>>>0<10?(c[o+2>>0]|0)==36:0){h[L>>2]=h[t>>2];while(1){T=(h[L>>2]|0)+(4-1)&~(4-1);a=h[T>>2]|0;h[L>>2]=T+4;if(s>>>0>1)s=s+-1|0;else break}T=a;s=o+3|0;break n}s=(h[t>>2]|0)+(4-1)&~(4-1);T=h[s>>2]|0;h[t>>2]=s+4;s=l}}while(0);a=c[s>>0]|0;o=a&255;if((o+-48|0)>>>0<10){a=0;while(1){l=(a*10|0)+-48+o|0;s=s+1|0;a=c[s>>0]|0;o=a&255;if((o+-48|0)>>>0>=10)break;else a=l}}else l=0;if(a<<24>>24==109){s=s+1|0;u=c[s>>0]|0;a=(T|0)!=0&1;n=0;i=0}else{u=a;a=0}o=s+1|0;switch(u&255|0){case 104:{y=(c[o>>0]|0)==104;o=y?s+2|0:o;s=y?-2:-1;break}case 108:{y=(c[o>>0]|0)==108;o=y?s+2|0:o;s=y?3:1;break}case 106:{s=3;break}case 116:case 122:{s=1;break}case 76:{s=2;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{o=s;s=0;break}default:{F=152;break i}}u=m[o>>0]|0;v=(u&47|0)==3;u=v?u|32:u;v=v?1:s;switch(u|0){case 99:{y=b;_=(l|0)<1?1:l;break}case 91:{y=b;_=l;break}case 110:{if(!T){s=b;break t}switch(v|0){case-2:{c[T>>0]=b;s=b;break t}case-1:{d[T>>1]=b;s=b;break t}case 0:{h[T>>2]=b;s=b;break t}case 1:{h[T>>2]=b;s=b;break t}case 3:{s=T;h[s>>2]=b;h[s+4>>2]=((b|0)<0)<<31>>31;s=b;break t}default:{s=b;break t}}}default:{ev(e,0);do{s=h[B>>2]|0;if(s>>>0<(h[N>>2]|0)>>>0){h[B>>2]=s+1;s=m[s>>0]|0}else s=iv(e)|0}while((Xb(s)|0)!=0);s=h[B>>2]|0;if(h[N>>2]|0){s=s+-1|0;h[B>>2]=s}y=(h[I>>2]|0)+b+s-(h[C>>2]|0)|0;_=l}}ev(e,_);s=h[B>>2]|0;l=h[N>>2]|0;if(s>>>0<l>>>0)h[B>>2]=s+1;else{if((iv(e)|0)<0){F=152;break i}l=h[N>>2]|0}if(l)h[B>>2]=(h[B>>2]|0)+-1;n:do switch(u|0){case 91:case 99:case 115:{g=(u|0)==99;a:do if((u&239|0)==99){Pg(D|0,-1,257)|0;c[D>>0]=0;if((u|0)==115){c[E>>0]=0;c[x>>0]=0;c[x+1>>0]=0;c[x+2>>0]=0;c[x+3>>0]=0;c[x+4>>0]=0}}else{j=o+1|0;b=(c[j>>0]|0)==94;s=b&1;u=b?j:o;o=b?o+2|0:j;Pg(D|0,b&1|0,257)|0;c[D>>0]=0;switch(c[o>>0]|0){case 45:{b=(s^1)&255;c[A>>0]=b;o=u+2|0;break}case 93:{b=(s^1)&255;c[P>>0]=b;o=u+2|0;break}default:b=(s^1)&255}while(1){s=c[o>>0]|0;o:do switch(s<<24>>24){case 0:{F=152;break i}case 93:break a;case 45:{u=o+1|0;s=c[u>>0]|0;switch(s<<24>>24){case 93:case 0:{s=45;break o}default:{}}o=c[o+-1>>0]|0;if((o&255)<(s&255)){o=o&255;do{o=o+1|0;c[D+o>>0]=b;s=c[u>>0]|0}while((o|0)<(s&255|0));o=u}else o=u;break}default:{}}while(0);c[D+((s&255)+1)>>0]=b;o=o+1|0}}while(0);u=g?_+1|0:31;b=(v|0)==1;v=(a|0)!=0;a:do if(b){if(v){i=Cw(u<<2)|0;if(!i){n=0;F=152;break i}}else i=T;h[R>>2]=0;h[S>>2]=0;n=0;o:while(1){l=(i|0)==0;do{s:while(1){s=h[B>>2]|0;if(s>>>0<(h[N>>2]|0)>>>0){h[B>>2]=s+1;s=m[s>>0]|0}else s=iv(e)|0;if(!(c[D+(s+1)>>0]|0))break o;c[M>>0]=s;switch(kv(O,M,1,R)|0){case-1:{n=0;F=152;break i}case-2:break;default:break s}}if(!l){h[i+(n<<2)>>2]=h[O>>2];n=n+1|0}}while(!(v&(n|0)==(u|0)));n=u<<1|1;s=Sw(i,n<<2)|0;if(!s){n=0;F=152;break i}j=u;u=n;i=s;n=j}if(!(_v(R)|0)){n=0;F=152;break i}else{l=n;n=0}}else{if(v){n=Cw(u)|0;if(!n){n=0;i=0;F=152;break i}else s=0;while(1){do{i=h[B>>2]|0;if(i>>>0<(h[N>>2]|0)>>>0){h[B>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if(!(c[D+(i+1)>>0]|0)){l=s;i=0;break a}c[n+s>>0]=i;s=s+1|0}while((s|0)!=(u|0));i=u<<1|1;s=Sw(n,i)|0;if(!s){i=0;F=152;break i}else{j=u;u=i;n=s;s=j}}}if(!T){n=l;while(1){i=h[B>>2]|0;if(i>>>0<n>>>0){h[B>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if(!(c[D+(i+1)>>0]|0)){l=0;n=0;i=0;break a}n=h[N>>2]|0}}else{n=0;while(1){i=h[B>>2]|0;if(i>>>0<l>>>0){h[B>>2]=i+1;i=m[i>>0]|0}else i=iv(e)|0;if(!(c[D+(i+1)>>0]|0)){l=n;n=T;i=0;break a}c[T+n>>0]=i;l=h[N>>2]|0;n=n+1|0}}}while(0);s=h[B>>2]|0;if(h[N>>2]|0){s=s+-1|0;h[B>>2]=s}s=s-(h[C>>2]|0)+(h[I>>2]|0)|0;if(!s)break i;if(!((s|0)==(_|0)|g^1))break i;do if(v)if(b){h[T>>2]=i;break}else{h[T>>2]=n;break}while(0);if(!g){if(i)h[i+(l<<2)>>2]=0;if(!n){n=0;break n}c[n+l>>0]=0}break}case 120:case 88:case 112:{s=16;F=134;break}case 111:{s=8;F=134;break}case 117:case 100:{s=10;F=134;break}case 105:{s=0;F=134;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{f=+Qb(e,v,0);if((h[I>>2]|0)==((h[C>>2]|0)-(h[B>>2]|0)|0))break i;if(T)switch(v|0){case 0:{w[T>>2]=f;break n}case 1:{p[T>>3]=f;break n}case 2:{p[T>>3]=f;break n}default:break n}break}default:{}}while(0);n:do if((F|0)==134){F=0;s=Zb(e,s,0,-1,-1)|0;if((h[I>>2]|0)==((h[C>>2]|0)-(h[B>>2]|0)|0))break i;if((T|0)!=0&(u|0)==112){h[T>>2]=s;break}if(T)switch(v|0){case-2:{c[T>>0]=s;break n}case-1:{d[T>>1]=s;break n}case 0:{h[T>>2]=s;break n}case 1:{h[T>>2]=s;break n}case 3:{j=T;h[j>>2]=s;h[j+4>>2]=z;break n}default:break n}}while(0);r=((T|0)!=0&1)+r|0;s=(h[I>>2]|0)+y+(h[B>>2]|0)-(h[C>>2]|0)|0;break t}while(0);o=o+(a&1)|0;ev(e,0);a=h[B>>2]|0;if(a>>>0<(h[N>>2]|0)>>>0){h[B>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0;if((a|0)!=(m[o>>0]|0)){F=21;break i}s=b+1|0}else{while(1){a=o+1|0;if(!(Xb(m[a>>0]|0)|0))break;else o=a}ev(e,0);do{a=h[B>>2]|0;if(a>>>0<(h[N>>2]|0)>>>0){h[B>>2]=a+1;a=m[a>>0]|0}else a=iv(e)|0}while((Xb(a)|0)!=0);a=h[B>>2]|0;if(h[N>>2]|0){a=a+-1|0;h[B>>2]=a}s=(h[I>>2]|0)+b+a-(h[C>>2]|0)|0}while(0);o=o+1|0;a=c[o>>0]|0;if(!(a<<24>>24))break e;else b=s}if((F|0)==21){if(h[N>>2]|0)h[B>>2]=(h[B>>2]|0)+-1;if((r|0)!=0|(a|0)>-1)break;else{r=0;F=153}}else if((F|0)==152)if(!r){r=a;F=153}if((F|0)==153){a=r;r=-1}if(a){xw(n);xw(i)}}else r=0;while(0);if(U)Pv(e);k=H;return r|0}function Qv(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0,u=0;u=k;k=k+128|0;n=u+112|0;l=u;a=l;o=36884;s=a+112|0;do{h[a>>2]=h[o>>2];a=a+4|0;o=o+4|0}while((a|0)<(s|0));if((i+-1|0)>>>0>2147483646)if(!i){i=1;f=4}else{i=$b()|0;h[i>>2]=75;i=-1}else{n=e;f=4}if((f|0)==4){f=-2-n|0;f=i>>>0>f>>>0?f:i;h[l+48>>2]=f;e=l+20|0;h[e>>2]=n;h[l+44>>2]=n;i=n+f|0;n=l+16|0;h[n>>2]=i;h[l+28>>2]=i;i=$v(l,t,r)|0;if(f){t=h[e>>2]|0;c[t+(((t|0)==(h[n>>2]|0))<<31>>31)>>0]=0}}k=u;return i|0}function Zv(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=k;k=k+112|0;r=a;n=r;o=n+112|0;do{h[n>>2]=0;n=n+4|0}while((n|0)<(o|0));h[r+32>>2]=29;h[r+44>>2]=e;h[r+76>>2]=-1;h[r+84>>2]=e;o=Jv(r,i,t)|0;k=a;return o|0}function ew(e,i,t){e=e|0;i=i|0;t=t|0;return+ +gw(e,i,2)}function iw(e,i,t){e=e|0;i=i|0;t=t|0;e=kw(e,i,t,-1,-1)|0;return e|0}function tw(e,i,t){e=e|0;i=i|0;t=t|0;e=kw(e,i,t,0,-2147483648)|0;return e|0}function rw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;a=i&255;r=(t|0)!=0;e:do if(r&(e&3|0)!=0){n=i&255;while(1){if((c[e>>0]|0)==n<<24>>24){o=6;break e}e=e+1|0;t=t+-1|0;r=(t|0)!=0;if(!(r&(e&3|0)!=0)){o=5;break}}}else o=5;while(0);if((o|0)==5)if(r)o=6;else t=0;e:do if((o|0)==6){n=i&255;if((c[e>>0]|0)!=n<<24>>24){r=ce(a,16843009)|0;i:do if(t>>>0>3)while(1){a=h[e>>2]^r;if((a&-2139062144^-2139062144)&a+-16843009)break;e=e+4|0;t=t+-4|0;if(t>>>0<=3){o=11;break i}}else o=11;while(0);if((o|0)==11)if(!t){t=0;break}while(1){if((c[e>>0]|0)==n<<24>>24)break e;e=e+1|0;t=t+-1|0;if(!t){t=0;break}}}}while(0);return((t|0)!=0?e:0)|0}function nw(e,i){e=e|0;i=i|0;var t=0,r=0;t=i;e:do if(!((t^e)&3)){if(t&3)do{t=c[i>>0]|0;c[e>>0]=t;if(!(t<<24>>24))break e;i=i+1|0;e=e+1|0}while((i&3|0)!=0);t=h[i>>2]|0;if(!((t&-2139062144^-2139062144)&t+-16843009)){r=e;while(1){i=i+4|0;e=r+4|0;h[r>>2]=t;t=h[i>>2]|0;if((t&-2139062144^-2139062144)&t+-16843009)break;else r=e}}r=8}else r=8;while(0);if((r|0)==8){r=c[i>>0]|0;c[e>>0]=r;if(r<<24>>24)do{i=i+1|0;e=e+1|0;r=c[i>>0]|0;c[e>>0]=r}while(r<<24>>24!=0)}return e|0}function aw(e,i){e=e|0;i=i|0;var t=0,r=0;r=c[e>>0]|0;t=c[i>>0]|0;if(r<<24>>24==0?1:r<<24>>24!=t<<24>>24)i=r;else{do{e=e+1|0;i=i+1|0;r=c[e>>0]|0;t=c[i>>0]|0}while(!(r<<24>>24==0?1:r<<24>>24!=t<<24>>24));i=r}return(i&255)-(t&255)|0}function ow(e,i){e=e|0;i=i|0;nw(e,i)|0;return e|0}function sw(e){e=e|0;var i=0,t=0,r=0;r=e;e:do if(!(r&3))t=4;else{i=e;e=r;while(1){if(!(c[i>>0]|0))break e;i=i+1|0;e=i;if(!(e&3)){e=i;t=4;break}}}while(0);if((t|0)==4){while(1){i=h[e>>2]|0;if(!((i&-2139062144^-2139062144)&i+-16843009))e=e+4|0;else break}if((i&255)<<24>>24)do e=e+1|0;while((c[e>>0]|0)!=0)}return e-r|0}function fw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;if(!t)i=0;else{r=c[e>>0]|0;e:do if(!(r<<24>>24))r=0;else while(1){t=t+-1|0;n=c[i>>0]|0;if(!(r<<24>>24==n<<24>>24&((t|0)!=0&n<<24>>24!=0)))break e;e=e+1|0;i=i+1|0;r=c[e>>0]|0;if(!(r<<24>>24)){r=0;break}}while(0);i=(r&255)-(m[i>>0]|0)|0}return i|0}function lw(e){e=e|0;var i=0;i=e;while(1)if(!(h[i>>2]|0))break;else i=i+4|0;return i-e>>2|0}function uw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(t){r=e;while(1){t=t+-1|0;h[r>>2]=h[i>>2];if(!t)break;else{i=i+4|0;r=r+4|0}}}return e|0}function cw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;r=(t|0)==0;if(e-i>>2>>>0<t>>>0){if(!r)do{t=t+-1|0;h[e+(t<<2)>>2]=h[i+(t<<2)>>2]}while((t|0)!=0)}else if(!r){r=i;i=e;while(1){t=t+-1|0;h[i>>2]=h[r>>2];if(!t)break;else{r=r+4|0;i=i+4|0}}}return e|0}function dw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(t){r=e;while(1){t=t+-1|0;h[r>>2]=i;if(!t)break;else r=r+4|0}}return e|0}function hw(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0;o=e+4|0;t=h[o>>2]|0;s=e+100|0;if(t>>>0<(h[s>>2]|0)>>>0){h[o>>2]=t+1;t=m[t>>0]|0}else t=iv(e)|0;switch(t|0){case 43:case 45:{r=(t|0)==45&1;t=h[o>>2]|0;if(t>>>0<(h[s>>2]|0)>>>0){h[o>>2]=t+1;t=m[t>>0]|0}else t=iv(e)|0;if((i|0)!=0&(t+-48|0)>>>0>9?(h[s>>2]|0)!=0:0){h[o>>2]=(h[o>>2]|0)+-1;a=r}else a=r;break}default:a=0}if((t+-48|0)>>>0>9)if(!(h[s>>2]|0)){r=-2147483648;t=0}else{h[o>>2]=(h[o>>2]|0)+-1;r=-2147483648;t=0}else{r=0;do{r=t+-48+(r*10|0)|0;t=h[o>>2]|0;if(t>>>0<(h[s>>2]|0)>>>0){h[o>>2]=t+1;t=m[t>>0]|0}else t=iv(e)|0}while((t+-48|0)>>>0<10&(r|0)<214748364);i=((r|0)<0)<<31>>31;if((t+-48|0)>>>0<10){do{i=zg(r|0,i|0,10,0)|0;r=z;t=Ig(t|0,((t|0)<0)<<31>>31|0,-48,-1)|0;r=Ig(t|0,z|0,i|0,r|0)|0;i=z;t=h[o>>2]|0;if(t>>>0<(h[s>>2]|0)>>>0){h[o>>2]=t+1;t=m[t>>0]|0}else t=iv(e)|0}while((t+-48|0)>>>0<10&((i|0)<21474836|(i|0)==21474836&r>>>0<2061584302));n=r}else n=r;if((t+-48|0)>>>0<10)do{t=h[o>>2]|0;if(t>>>0<(h[s>>2]|0)>>>0){h[o>>2]=t+1;t=m[t>>0]|0}else t=iv(e)|0}while((t+-48|0)>>>0<10);if(h[s>>2]|0)h[o>>2]=(h[o>>2]|0)+-1;e=(a|0)!=0;t=Ag(0,0,n|0,i|0)|0;r=e?z:i;t=e?t:n}z=r;return t|0}function mw(e){e=e|0;if(!(h[e+68>>2]|0))Pv(e);return}function bw(e){e=e|0;if(!(h[e+68>>2]|0))Pv(e);return}function vw(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;i=e+20|0;a=e+28|0;if((h[i>>2]|0)>>>0>(h[a>>2]|0)>>>0?(Qk[h[e+36>>2]&63](e,0,0)|0,(h[i>>2]|0)==0):0)i=-1;else{o=e+4|0;t=h[o>>2]|0;r=e+8|0;n=h[r>>2]|0;if(t>>>0<n>>>0)Qk[h[e+40>>2]&63](e,t-n|0,1)|0;h[e+16>>2]=0;h[a>>2]=0;h[i>>2]=0;h[r>>2]=0;h[o>>2]=0;i=0}return i|0}function ww(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,b=0,v=0,w=0,g=0,_=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0,U=0,H=0,j=0,Y=0,V=0,q=0,W=0,G=0,X=0,K=0,$=0,J=0,Q=0,Z=0,ee=0,ie=0,te=0,re=0,ne=0,ae=0,oe=0;oe=k;k=k+624|0;ie=oe+24|0;re=oe+16|0;te=oe+588|0;$=oe+576|0;ee=oe;G=oe+536|0;ae=oe+8|0;ne=oe+528|0;N=(e|0)!=0;F=G+40|0;W=F;G=G+39|0;X=ae+4|0;K=$+12|0;$=$+11|0;J=te;Q=K;Z=Q-J|0;U=-2-J|0;H=Q+2|0;j=ie+288|0;
Y=te+9|0;V=Y;q=te+8|0;a=0;_=i;o=0;i=0;e:while(1){do if((a|0)>-1)if((o|0)>(2147483647-a|0)){a=$b()|0;h[a>>2]=75;a=-1;break}else{a=o+a|0;break}while(0);o=c[_>>0]|0;if(!(o<<24>>24)){B=245;break}else s=_;i:while(1){switch(o<<24>>24){case 37:{o=s;B=9;break i}case 0:{o=s;break i}default:{}}O=s+1|0;o=c[O>>0]|0;s=O}i:do if((B|0)==9)while(1){B=0;if((c[o+1>>0]|0)!=37)break i;s=s+1|0;o=o+2|0;if((c[o>>0]|0)==37)B=9;else break}while(0);M=s-_|0;if(N?(h[e>>2]&32|0)==0:0)Yv(_,M,e)|0;if((s|0)!=(_|0)){_=o;o=M;continue}u=o+1|0;s=c[u>>0]|0;f=(s<<24>>24)+-48|0;if(f>>>0<10){O=(c[o+2>>0]|0)==36;u=O?o+3|0:u;s=c[u>>0]|0;w=O?f:-1;i=O?1:i}else w=-1;o=s<<24>>24;i:do if((o&-32|0)==32){f=0;while(1){if(!(1<<o+-32&75913)){b=f;o=u;break i}f=1<<(s<<24>>24)+-32|f;u=u+1|0;s=c[u>>0]|0;o=s<<24>>24;if((o&-32|0)!=32){b=f;o=u;break}}}else{b=0;o=u}while(0);do if(s<<24>>24==42){f=o+1|0;s=(c[f>>0]|0)+-48|0;if(s>>>0<10?(c[o+2>>0]|0)==36:0){h[n+(s<<2)>>2]=10;i=1;o=o+3|0;s=h[r+((c[f>>0]|0)+-48<<3)>>2]|0}else{if(i){a=-1;break e}if(!N){T=b;o=f;i=0;O=0;break}i=(h[t>>2]|0)+(4-1)&~(4-1);s=h[i>>2]|0;h[t>>2]=i+4;i=0;o=f}if((s|0)<0){T=b|8192;O=0-s|0}else{T=b;O=s}}else{f=(s<<24>>24)+-48|0;if(f>>>0<10){s=0;do{s=(s*10|0)+f|0;o=o+1|0;f=(c[o>>0]|0)+-48|0}while(f>>>0<10);if((s|0)<0){a=-1;break e}else{T=b;O=s}}else{T=b;O=0}}while(0);i:do if((c[o>>0]|0)==46){f=o+1|0;s=c[f>>0]|0;if(s<<24>>24!=42){u=(s<<24>>24)+-48|0;if(u>>>0<10){o=f;s=0}else{o=f;u=0;break}while(1){s=(s*10|0)+u|0;o=o+1|0;u=(c[o>>0]|0)+-48|0;if(u>>>0>=10){u=s;break i}}}f=o+2|0;s=(c[f>>0]|0)+-48|0;if(s>>>0<10?(c[o+3>>0]|0)==36:0){h[n+(s<<2)>>2]=10;o=o+4|0;u=h[r+((c[f>>0]|0)+-48<<3)>>2]|0;break}if(i){a=-1;break e}if(N){o=(h[t>>2]|0)+(4-1)&~(4-1);u=h[o>>2]|0;h[t>>2]=o+4;o=f}else{o=f;u=0}}else u=-1;while(0);v=0;while(1){s=(c[o>>0]|0)+-65|0;if(s>>>0>57){a=-1;break e}f=o+1|0;s=c[54679+(v*58|0)+s>>0]|0;b=s&255;if((b+-1|0)>>>0<8){o=f;v=b}else{R=f;break}}if(!(s<<24>>24)){a=-1;break}f=(w|0)>-1;do if(s<<24>>24==19)if(f){a=-1;break e}else B=52;else{if(f){h[n+(w<<2)>>2]=b;L=r+(w<<3)|0;D=h[L+4>>2]|0;B=ee;h[B>>2]=h[L>>2];h[B+4>>2]=D;B=52;break}if(!N){a=0;break e}yw(ee,b,t)}while(0);if((B|0)==52?(B=0,!N):0){_=R;o=M;continue}w=c[o>>0]|0;w=(v|0)!=0&(w&15|0)==3?w&-33:w;f=T&-65537;D=(T&8192|0)==0?T:f;i:do switch(w|0){case 110:switch(v|0){case 0:{h[h[ee>>2]>>2]=a;_=R;o=M;continue e}case 1:{h[h[ee>>2]>>2]=a;_=R;o=M;continue e}case 2:{_=h[ee>>2]|0;h[_>>2]=a;h[_+4>>2]=((a|0)<0)<<31>>31;_=R;o=M;continue e}case 3:{d[h[ee>>2]>>1]=a;_=R;o=M;continue e}case 4:{c[h[ee>>2]>>0]=a;_=R;o=M;continue e}case 6:{h[h[ee>>2]>>2]=a;_=R;o=M;continue e}case 7:{_=h[ee>>2]|0;h[_>>2]=a;h[_+4>>2]=((a|0)<0)<<31>>31;_=R;o=M;continue e}default:{_=R;o=M;continue e}}case 112:{v=D|8;u=u>>>0>8?u:8;w=120;B=64;break}case 88:case 120:{v=D;B=64;break}case 111:{f=ee;s=h[f>>2]|0;f=h[f+4>>2]|0;if((s|0)==0&(f|0)==0)o=F;else{o=F;do{o=o+-1|0;c[o>>0]=s&7|48;s=Lg(s|0,f|0,3)|0;f=z}while(!((s|0)==0&(f|0)==0))}if(!(D&8)){s=D;v=0;b=55159;B=77}else{v=W-o+1|0;s=D;u=(u|0)<(v|0)?v:u;v=0;b=55159;B=77}break}case 105:case 100:{s=ee;o=h[s>>2]|0;s=h[s+4>>2]|0;if((s|0)<0){o=Ag(0,0,o|0,s|0)|0;s=z;f=ee;h[f>>2]=o;h[f+4>>2]=s;f=1;b=55159;B=76;break i}if(!(D&2048)){b=D&1;f=b;b=(b|0)==0?55159:55161;B=76}else{f=1;b=55160;B=76}break}case 117:{s=ee;o=h[s>>2]|0;s=h[s+4>>2]|0;f=0;b=55159;B=76;break}case 99:{c[G>>0]=h[ee>>2];_=G;s=1;v=0;w=55159;o=F;break}case 109:{o=$b()|0;o=Jb(h[o>>2]|0)|0;B=82;break}case 115:{o=h[ee>>2]|0;o=(o|0)!=0?o:55169;B=82;break}case 67:{h[ae>>2]=h[ee>>2];h[X>>2]=0;h[ee>>2]=ae;u=-1;B=86;break}case 83:{if(!u){Mw(e,32,O,0,D);o=0;B=98}else B=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{l=+p[ee>>3];h[re>>2]=0;p[y>>3]=l;if((h[y+4>>2]|0)>=0)if(!(D&2048)){L=D&1;I=L;L=(L|0)==0?55177:55182}else{I=1;L=55179}else{l=-l;I=1;L=55176}p[y>>3]=l;P=h[y+4>>2]&2146435072;do if(P>>>0<2146435072|(P|0)==2146435072&0<0){g=+vv(l,re)*2;s=g!=0;if(s)h[re>>2]=(h[re>>2]|0)+-1;S=w|32;if((S|0)==97){_=w&32;M=(_|0)==0?L:L+9|0;T=I|2;o=12-u|0;do if(!(u>>>0>11|(o|0)==0)){l=8;do{o=o+-1|0;l=l*16}while((o|0)!=0);if((c[M>>0]|0)==45){l=-(l+(-g-l));break}else{l=g+l-l;break}}else l=g;while(0);s=h[re>>2]|0;o=(s|0)<0?0-s|0:s;o=Tw(o,((o|0)<0)<<31>>31,K)|0;if((o|0)==(K|0)){c[$>>0]=48;o=$}c[o+-1>>0]=(s>>31&2)+43;v=o+-2|0;c[v>>0]=w+15;b=(u|0)<1;f=(D&8|0)==0;s=te;while(1){L=~~l;o=s+1|0;c[s>>0]=m[55143+L>>0]|_;l=(l-+(L|0))*16;do if((o-J|0)==1){if(f&(b&l==0))break;c[o>>0]=46;o=s+2|0}while(0);if(!(l!=0))break;else s=o}u=(u|0)!=0&(U+o|0)<(u|0)?H+u-v|0:Z-v+o|0;f=u+T|0;Mw(e,32,O,f,D);if(!(h[e>>2]&32))Yv(M,T,e)|0;Mw(e,48,O,f,D^65536);o=o-J|0;if(!(h[e>>2]&32))Yv(te,o,e)|0;s=Q-v|0;Mw(e,48,u-(o+s)|0,0,0);if(!(h[e>>2]&32))Yv(v,s,e)|0;Mw(e,32,O,f,D^8192);o=(f|0)<(O|0)?O:f;break}o=(u|0)<0?6:u;if(s){s=(h[re>>2]|0)+-28|0;h[re>>2]=s;l=g*268435456}else{l=g;s=h[re>>2]|0}P=(s|0)<0?ie:j;A=P;s=P;do{E=~~l>>>0;h[s>>2]=E;s=s+4|0;l=(l-+(E>>>0))*1e9}while(l!=0);f=s;s=h[re>>2]|0;if((s|0)>0){b=P;while(1){v=(s|0)>29?29:s;u=f+-4|0;do if(u>>>0<b>>>0)u=b;else{s=0;do{E=Rg(h[u>>2]|0,0,v|0)|0;E=Ig(E|0,z|0,s|0,0)|0;s=z;x=Yg(E|0,s|0,1e9,0)|0;h[u>>2]=x;s=jg(E|0,s|0,1e9,0)|0;u=u+-4|0}while(u>>>0>=b>>>0);if(!s){u=b;break}u=b+-4|0;h[u>>2]=s}while(0);while(1){if(f>>>0<=u>>>0)break;s=f+-4|0;if(!(h[s>>2]|0))f=s;else break}s=(h[re>>2]|0)-v|0;h[re>>2]=s;if((s|0)>0)b=u;else break}}else u=P;if((s|0)<0){M=((o+25|0)/9|0)+1|0;C=(S|0)==102;_=u;while(1){T=0-s|0;T=(T|0)>9?9:T;do if(_>>>0<f>>>0){s=(1<<T)+-1|0;b=1e9>>>T;u=0;v=_;do{E=h[v>>2]|0;h[v>>2]=(E>>>T)+u;u=ce(E&s,b)|0;v=v+4|0}while(v>>>0<f>>>0);s=(h[_>>2]|0)==0?_+4|0:_;if(!u){u=s;break}h[f>>2]=u;u=s;f=f+4|0}else u=(h[_>>2]|0)==0?_+4|0:_;while(0);s=C?P:u;f=(f-s>>2|0)>(M|0)?s+(M<<2)|0:f;s=(h[re>>2]|0)+T|0;h[re>>2]=s;if((s|0)>=0){_=u;break}else _=u}}else _=u;do if(_>>>0<f>>>0){s=(A-_>>2)*9|0;b=h[_>>2]|0;if(b>>>0<10)break;else u=10;do{u=u*10|0;s=s+1|0}while(b>>>0>=u>>>0)}else s=0;while(0);x=(S|0)==103;E=(o|0)!=0;u=o-((S|0)!=102?s:0)+((E&x)<<31>>31)|0;if((u|0)<(((f-A>>2)*9|0)+-9|0)){v=u+9216|0;C=(v|0)/9|0;u=P+(C+-1023<<2)|0;v=((v|0)%9|0)+1|0;if((v|0)<9){b=10;do{b=b*10|0;v=v+1|0}while((v|0)!=9)}else b=10;T=h[u>>2]|0;M=(T>>>0)%(b>>>0)|0;if((M|0)==0?(P+(C+-1022<<2)|0)==(f|0):0)b=_;else B=163;do if((B|0)==163){B=0;g=(((T>>>0)/(b>>>0)|0)&1|0)==0?9007199254740992:9007199254740994;v=(b|0)/2|0;do if(M>>>0<v>>>0)l=.5;else{if((M|0)==(v|0)?(P+(C+-1022<<2)|0)==(f|0):0){l=1;break}l=1.5}while(0);do if(I){if((c[L>>0]|0)!=45)break;g=-g;l=-l}while(0);v=T-M|0;h[u>>2]=v;if(!(g+l!=g)){b=_;break}S=v+b|0;h[u>>2]=S;if(S>>>0>999999999){s=_;while(1){b=u+-4|0;h[u>>2]=0;if(b>>>0<s>>>0){s=s+-4|0;h[s>>2]=0}S=(h[b>>2]|0)+1|0;h[b>>2]=S;if(S>>>0>999999999)u=b;else{_=s;u=b;break}}}s=(A-_>>2)*9|0;v=h[_>>2]|0;if(v>>>0<10){b=_;break}else b=10;do{b=b*10|0;s=s+1|0}while(v>>>0>=b>>>0);b=_}while(0);S=u+4|0;_=b;f=f>>>0>S>>>0?S:f}M=0-s|0;while(1){if(f>>>0<=_>>>0){C=0;S=f;break}u=f+-4|0;if(!(h[u>>2]|0))f=u;else{C=1;S=f;break}}do if(x){o=(E&1^1)+o|0;if((o|0)>(s|0)&(s|0)>-5){w=w+-1|0;o=o+-1-s|0}else{w=w+-2|0;o=o+-1|0}f=D&8;if(f)break;do if(C){f=h[S+-4>>2]|0;if(!f){u=9;break}if(!((f>>>0)%10|0)){b=10;u=0}else{u=0;break}do{b=b*10|0;u=u+1|0}while(((f>>>0)%(b>>>0)|0|0)==0)}else u=9;while(0);f=((S-A>>2)*9|0)+-9|0;if((w|32|0)==102){f=f-u|0;f=(f|0)<0?0:f;o=(o|0)<(f|0)?o:f;f=0;break}else{f=f+s-u|0;f=(f|0)<0?0:f;o=(o|0)<(f|0)?o:f;f=0;break}}else f=D&8;while(0);T=o|f;b=(T|0)!=0&1;v=(w|32|0)==102;if(v){s=(s|0)>0?s:0;w=0}else{u=(s|0)<0?M:s;u=Tw(u,((u|0)<0)<<31>>31,K)|0;if((Q-u|0)<2)do{u=u+-1|0;c[u>>0]=48}while((Q-u|0)<2);c[u+-1>>0]=(s>>31&2)+43;A=u+-2|0;c[A>>0]=w;s=Q-A|0;w=A}M=I+1+o+b+s|0;Mw(e,32,O,M,D);if(!(h[e>>2]&32))Yv(L,I,e)|0;Mw(e,48,O,M,D^65536);do if(v){u=_>>>0>P>>>0?P:_;s=u;do{f=Tw(h[s>>2]|0,0,Y)|0;do if((s|0)==(u|0)){if((f|0)!=(Y|0))break;c[q>>0]=48;f=q}else{if(f>>>0<=te>>>0)break;do{f=f+-1|0;c[f>>0]=48}while(f>>>0>te>>>0)}while(0);if(!(h[e>>2]&32))Yv(f,V-f|0,e)|0;s=s+4|0}while(s>>>0<=P>>>0);do if(T){if(h[e>>2]&32)break;Yv(55211,1,e)|0}while(0);if((o|0)>0&s>>>0<S>>>0){f=s;while(1){s=Tw(h[f>>2]|0,0,Y)|0;if(s>>>0>te>>>0)do{s=s+-1|0;c[s>>0]=48}while(s>>>0>te>>>0);if(!(h[e>>2]&32))Yv(s,(o|0)>9?9:o,e)|0;f=f+4|0;s=o+-9|0;if(!((o|0)>9&f>>>0<S>>>0)){o=s;break}else o=s}}Mw(e,48,o+9|0,9,0)}else{v=C?S:_+4|0;if((o|0)>-1){b=(f|0)==0;u=_;do{s=Tw(h[u>>2]|0,0,Y)|0;if((s|0)==(Y|0)){c[q>>0]=48;s=q}do if((u|0)==(_|0)){f=s+1|0;if(!(h[e>>2]&32))Yv(s,1,e)|0;if(b&(o|0)<1){s=f;break}if(h[e>>2]&32){s=f;break}Yv(55211,1,e)|0;s=f}else{if(s>>>0<=te>>>0)break;do{s=s+-1|0;c[s>>0]=48}while(s>>>0>te>>>0)}while(0);f=V-s|0;if(!(h[e>>2]&32))Yv(s,(o|0)>(f|0)?f:o,e)|0;o=o-f|0;u=u+4|0}while(u>>>0<v>>>0&(o|0)>-1)}Mw(e,48,o+18|0,18,0);if(h[e>>2]&32)break;Yv(w,Q-w|0,e)|0}while(0);Mw(e,32,O,M,D^8192);o=(M|0)<(O|0)?O:M}else{v=(w&32|0)!=0;b=l!=l|0!=0;s=b?0:I;u=s+3|0;Mw(e,32,O,u,f);o=h[e>>2]|0;if(!(o&32)){Yv(L,s,e)|0;o=h[e>>2]|0}if(!(o&32))Yv(b?v?55203:55207:v?55195:55199,3,e)|0;Mw(e,32,O,u,D^8192);o=(u|0)<(O|0)?O:u}while(0);_=R;continue e}default:{f=D;s=u;v=0;w=55159;o=F}}while(0);i:do if((B|0)==64){f=ee;s=h[f>>2]|0;f=h[f+4>>2]|0;b=w&32;if(!((s|0)==0&(f|0)==0)){o=F;do{o=o+-1|0;c[o>>0]=m[55143+(s&15)>>0]|b;s=Lg(s|0,f|0,4)|0;f=z}while(!((s|0)==0&(f|0)==0));B=ee;if((v&8|0)==0|(h[B>>2]|0)==0&(h[B+4>>2]|0)==0){s=v;v=0;b=55159;B=77}else{s=v;v=2;b=55159+(w>>4)|0;B=77}}else{o=F;s=v;v=0;b=55159;B=77}}else if((B|0)==76){o=Tw(o,s,F)|0;s=D;v=f;B=77}else if((B|0)==82){B=0;D=rw(o,0,u)|0;L=(D|0)==0;_=o;s=L?u:D-o|0;v=0;w=55159;o=L?o+u|0:D}else if((B|0)==86){B=0;s=0;o=0;b=h[ee>>2]|0;while(1){f=h[b>>2]|0;if(!f)break;o=Sv(ne,f)|0;if((o|0)<0|o>>>0>(u-s|0)>>>0)break;s=o+s|0;if(u>>>0>s>>>0)b=b+4|0;else break}if((o|0)<0){a=-1;break e}Mw(e,32,O,s,D);if(!s){o=0;B=98}else{f=0;u=h[ee>>2]|0;while(1){o=h[u>>2]|0;if(!o){o=s;B=98;break i}o=Sv(ne,o)|0;f=o+f|0;if((f|0)>(s|0)){o=s;B=98;break i}if(!(h[e>>2]&32))Yv(ne,o,e)|0;if(f>>>0>=s>>>0){o=s;B=98;break}else u=u+4|0}}}while(0);if((B|0)==98){B=0;Mw(e,32,O,o,D^8192);_=R;o=(O|0)>(o|0)?O:o;continue}if((B|0)==77){B=0;f=(u|0)>-1?s&-65537:s;s=ee;s=(h[s>>2]|0)!=0|(h[s+4>>2]|0)!=0;if((u|0)!=0|s){s=(s&1^1)+(W-o)|0;_=o;s=(u|0)>(s|0)?u:s;w=b;o=F}else{_=F;s=0;w=b;o=F}}b=o-_|0;s=(s|0)<(b|0)?b:s;u=v+s|0;o=(O|0)<(u|0)?u:O;Mw(e,32,o,u,f);if(!(h[e>>2]&32))Yv(w,v,e)|0;Mw(e,48,o,u,f^65536);Mw(e,48,s,b,0);if(!(h[e>>2]&32))Yv(_,b,e)|0;Mw(e,32,o,u,f^8192);_=R}e:do if((B|0)==245)if(!e)if(i){a=1;while(1){i=h[n+(a<<2)>>2]|0;if(!i)break;yw(r+(a<<3)|0,i,t);a=a+1|0;if((a|0)>=10){a=1;break e}}if((a|0)<10)while(1){if(h[n+(a<<2)>>2]|0){a=-1;break e}a=a+1|0;if((a|0)>=10){a=1;break}}else a=1}else a=0;while(0);k=oe;return a|0}function pw(e,i,t){e=e|0;i=i|0;t=t|0;return Nv(e,i,t)|0}function gw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;s=k;k=k+112|0;o=s;n=o;a=n+112|0;do{h[n>>2]=0;n=n+4|0}while((n|0)<(a|0));n=o+4|0;h[n>>2]=e;a=o+8|0;h[a>>2]=-1;h[o+44>>2]=e;h[o+76>>2]=-1;ev(o,0);r=+Qb(o,t,1);t=(h[n>>2]|0)-(h[a>>2]|0)+(h[o+108>>2]|0)|0;if(i)h[i>>2]=(t|0)!=0?e+t|0:e;k=s;return+r}function kw(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0;f=k;k=k+112|0;s=f;h[s>>2]=0;a=s+4|0;h[a>>2]=e;h[s+44>>2]=e;o=s+8|0;h[o>>2]=(e|0)<0?-1:e+2147483647|0;h[s+76>>2]=-1;ev(s,0);r=Zb(s,t,1,r,n)|0;if(i)h[i>>2]=e+((h[a>>2]|0)+(h[s+108>>2]|0)-(h[o>>2]|0));k=f;return r|0}function _w(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0;r=e+20|0;n=h[r>>2]|0;e=(h[e+16>>2]|0)-n|0;e=e>>>0>t>>>0?t:e;Dg(n|0,i|0,e|0)|0;h[r>>2]=(h[r>>2]|0)+e;return t|0}function yw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;e:do if(i>>>0<=20)do switch(i|0){case 9:{r=(h[t>>2]|0)+(4-1)&~(4-1);i=h[r>>2]|0;h[t>>2]=r+4;h[e>>2]=i;break e}case 10:{r=(h[t>>2]|0)+(4-1)&~(4-1);i=h[r>>2]|0;h[t>>2]=r+4;r=e;h[r>>2]=i;h[r+4>>2]=((i|0)<0)<<31>>31;break e}case 11:{r=(h[t>>2]|0)+(4-1)&~(4-1);i=h[r>>2]|0;h[t>>2]=r+4;r=e;h[r>>2]=i;h[r+4>>2]=0;break e}case 12:{r=(h[t>>2]|0)+(8-1)&~(8-1);i=r;n=h[i>>2]|0;i=h[i+4>>2]|0;h[t>>2]=r+8;r=e;h[r>>2]=n;h[r+4>>2]=i;break e}case 13:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;r=(r&65535)<<16>>16;n=e;h[n>>2]=r;h[n+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;n=e;h[n>>2]=r&65535;h[n+4>>2]=0;break e}case 15:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;r=(r&255)<<24>>24;n=e;h[n>>2]=r;h[n+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{n=(h[t>>2]|0)+(4-1)&~(4-1);r=h[n>>2]|0;h[t>>2]=n+4;n=e;h[n>>2]=r&255;h[n+4>>2]=0;break e}case 17:{n=(h[t>>2]|0)+(8-1)&~(8-1);a=+p[n>>3];h[t>>2]=n+8;p[e>>3]=a;break e}case 18:{n=(h[t>>2]|0)+(8-1)&~(8-1);a=+p[n>>3];h[t>>2]=n+8;p[e>>3]=a;break e}default:break e}while(0);while(0);return}function Tw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295)while(1){r=Yg(e|0,i|0,10,0)|0;t=t+-1|0;c[t>>0]=r|48;r=jg(e|0,i|0,10,0)|0;if(i>>>0>9|(i|0)==9&e>>>0>4294967295){e=r;i=z}else{e=r;break}}if(e)while(1){t=t+-1|0;c[t>>0]=(e>>>0)%10|0|48;if(e>>>0<10)break;else e=(e>>>0)/10|0}return t|0}function Mw(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0;s=k;k=k+256|0;o=s;do if((t|0)>(r|0)&(n&73728|0)==0){n=t-r|0;Pg(o|0,i|0,(n>>>0>256?256:n)|0)|0;i=h[e>>2]|0;a=(i&32|0)==0;if(n>>>0>255){r=t-r|0;do{if(a){Yv(o,256,e)|0;i=h[e>>2]|0}n=n+-256|0;a=(i&32|0)==0}while(n>>>0>255);if(a)n=r&255;else break}else if(!a)break;Yv(o,n,e)|0}while(0);k=s;return}function Cw(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0,_=0,y=0,T=0,M=0,C=0,x=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0,R=0,O=0,B=0,N=0,F=0;do if(e>>>0<245){m=e>>>0<11?16:e+11&-8;e=m>>>3;s=h[10101]|0;t=s>>>e;if(t&3){e=(t&1^1)+e|0;r=e<<1;t=40444+(r<<2)|0;r=40444+(r+2<<2)|0;n=h[r>>2]|0;a=n+8|0;o=h[a>>2]|0;do if((t|0)!=(o|0)){if(o>>>0<(h[10105]|0)>>>0)Ve();i=o+12|0;if((h[i>>2]|0)==(n|0)){h[i>>2]=t;h[r>>2]=o;break}else Ve()}else h[10101]=s&~(1<<e);while(0);F=e<<3;h[n+4>>2]=F|3;F=n+(F|4)|0;h[F>>2]=h[F>>2]|1;F=a;return F|0}o=h[10103]|0;if(m>>>0>o>>>0){if(t){r=2<<e;r=t<<e&(r|0-r);r=(r&0-r)+-1|0;f=r>>>12&16;r=r>>>f;n=r>>>5&8;r=r>>>n;a=r>>>2&4;r=r>>>a;t=r>>>1&2;r=r>>>t;e=r>>>1&1;e=(n|f|a|t|e)+(r>>>e)|0;r=e<<1;t=40444+(r<<2)|0;r=40444+(r+2<<2)|0;a=h[r>>2]|0;f=a+8|0;n=h[f>>2]|0;do if((t|0)!=(n|0)){if(n>>>0<(h[10105]|0)>>>0)Ve();i=n+12|0;if((h[i>>2]|0)==(a|0)){h[i>>2]=t;h[r>>2]=n;l=h[10103]|0;break}else Ve()}else{h[10101]=s&~(1<<e);l=o}while(0);F=e<<3;o=F-m|0;h[a+4>>2]=m|3;s=a+m|0;h[a+(m|4)>>2]=o|1;h[a+F>>2]=o;if(l){n=h[10106]|0;t=l>>>3;i=t<<1;r=40444+(i<<2)|0;e=h[10101]|0;t=1<<t;if(e&t){e=40444+(i+2<<2)|0;i=h[e>>2]|0;if(i>>>0<(h[10105]|0)>>>0)Ve();else{u=e;c=i}}else{h[10101]=e|t;u=40444+(i+2<<2)|0;c=r}h[u>>2]=n;h[c+12>>2]=n;h[n+8>>2]=c;h[n+12>>2]=r}h[10103]=o;h[10106]=s;F=f;return F|0}e=h[10102]|0;if(e){t=(e&0-e)+-1|0;N=t>>>12&16;t=t>>>N;B=t>>>5&8;t=t>>>B;F=t>>>2&4;t=t>>>F;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=h[40708+((B|N|F|e|r)+(t>>>r)<<2)>>2]|0;t=(h[r+4>>2]&-8)-m|0;e=r;while(1){i=h[e+16>>2]|0;if(!i){i=h[e+20>>2]|0;if(!i){f=t;break}}e=(h[i+4>>2]&-8)-m|0;F=e>>>0<t>>>0;t=F?e:t;e=i;r=F?i:r}a=h[10105]|0;if(r>>>0<a>>>0)Ve();s=r+m|0;if(r>>>0>=s>>>0)Ve();o=h[r+24>>2]|0;t=h[r+12>>2]|0;do if((t|0)==(r|0)){e=r+20|0;i=h[e>>2]|0;if(!i){e=r+16|0;i=h[e>>2]|0;if(!i){d=0;break}}while(1){t=i+20|0;n=h[t>>2]|0;if(n){i=n;e=t;continue}t=i+16|0;n=h[t>>2]|0;if(!n)break;else{i=n;e=t}}if(e>>>0<a>>>0)Ve();else{h[e>>2]=0;d=i;break}}else{n=h[r+8>>2]|0;if(n>>>0<a>>>0)Ve();i=n+12|0;if((h[i>>2]|0)!=(r|0))Ve();e=t+8|0;if((h[e>>2]|0)==(r|0)){h[i>>2]=t;h[e>>2]=n;d=t;break}else Ve()}while(0);do if(o){i=h[r+28>>2]|0;e=40708+(i<<2)|0;if((r|0)==(h[e>>2]|0)){h[e>>2]=d;if(!d){h[10102]=h[10102]&~(1<<i);break}}else{if(o>>>0<(h[10105]|0)>>>0)Ve();i=o+16|0;if((h[i>>2]|0)==(r|0))h[i>>2]=d;else h[o+20>>2]=d;if(!d)break}e=h[10105]|0;if(d>>>0<e>>>0)Ve();h[d+24>>2]=o;i=h[r+16>>2]|0;do if(i)if(i>>>0<e>>>0)Ve();else{h[d+16>>2]=i;h[i+24>>2]=d;break}while(0);i=h[r+20>>2]|0;if(i)if(i>>>0<(h[10105]|0)>>>0)Ve();else{h[d+20>>2]=i;h[i+24>>2]=d;break}}while(0);if(f>>>0<16){F=f+m|0;h[r+4>>2]=F|3;F=r+(F+4)|0;h[F>>2]=h[F>>2]|1}else{h[r+4>>2]=m|3;h[r+(m|4)>>2]=f|1;h[r+(f+m)>>2]=f;i=h[10103]|0;if(i){a=h[10106]|0;t=i>>>3;i=t<<1;n=40444+(i<<2)|0;e=h[10101]|0;t=1<<t;if(e&t){i=40444+(i+2<<2)|0;e=h[i>>2]|0;if(e>>>0<(h[10105]|0)>>>0)Ve();else{b=i;v=e}}else{h[10101]=e|t;b=40444+(i+2<<2)|0;v=n}h[b>>2]=a;h[v+12>>2]=a;h[a+8>>2]=v;h[a+12>>2]=n}h[10103]=f;h[10106]=s}F=r+8|0;return F|0}else v=m}else v=m}else if(e>>>0<=4294967231){e=e+11|0;c=e&-8;u=h[10102]|0;if(u){t=0-c|0;e=e>>>8;if(e)if(c>>>0>16777215)l=31;else{v=(e+1048320|0)>>>16&8;_=e<<v;b=(_+520192|0)>>>16&4;_=_<<b;l=(_+245760|0)>>>16&2;l=14-(b|v|l)+(_<<l>>>15)|0;l=c>>>(l+7|0)&1|l<<1}else l=0;e=h[40708+(l<<2)>>2]|0;e:do if(!e){n=0;e=0;_=86}else{o=t;n=0;s=c<<((l|0)==31?0:25-(l>>>1)|0);f=e;e=0;while(1){a=h[f+4>>2]&-8;t=a-c|0;if(t>>>0<o>>>0)if((a|0)==(c|0)){a=f;e=f;_=90;break e}else e=f;else t=o;_=h[f+20>>2]|0;f=h[f+16+(s>>>31<<2)>>2]|0;n=(_|0)==0|(_|0)==(f|0)?n:_;if(!f){_=86;break}else{o=t;s=s<<1}}}while(0);if((_|0)==86){if((n|0)==0&(e|0)==0){e=2<<l;e=u&(e|0-e);if(!e){v=c;break}e=(e&0-e)+-1|0;d=e>>>12&16;e=e>>>d;u=e>>>5&8;e=e>>>u;b=e>>>2&4;e=e>>>b;v=e>>>1&2;e=e>>>v;n=e>>>1&1;n=h[40708+((u|d|b|v|n)+(e>>>n)<<2)>>2]|0;e=0}if(!n){s=t;f=e}else{a=n;_=90}}if((_|0)==90)while(1){_=0;v=(h[a+4>>2]&-8)-c|0;n=v>>>0<t>>>0;t=n?v:t;e=n?a:e;n=h[a+16>>2]|0;if(n){a=n;_=90;continue}a=h[a+20>>2]|0;if(!a){s=t;f=e;break}else _=90}if((f|0)!=0?s>>>0<((h[10103]|0)-c|0)>>>0:0){n=h[10105]|0;if(f>>>0<n>>>0)Ve();o=f+c|0;if(f>>>0>=o>>>0)Ve();a=h[f+24>>2]|0;t=h[f+12>>2]|0;do if((t|0)==(f|0)){e=f+20|0;i=h[e>>2]|0;if(!i){e=f+16|0;i=h[e>>2]|0;if(!i){m=0;break}}while(1){t=i+20|0;r=h[t>>2]|0;if(r){i=r;e=t;continue}t=i+16|0;r=h[t>>2]|0;if(!r)break;else{i=r;e=t}}if(e>>>0<n>>>0)Ve();else{h[e>>2]=0;m=i;break}}else{r=h[f+8>>2]|0;if(r>>>0<n>>>0)Ve();i=r+12|0;if((h[i>>2]|0)!=(f|0))Ve();e=t+8|0;if((h[e>>2]|0)==(f|0)){h[i>>2]=t;h[e>>2]=r;m=t;break}else Ve()}while(0);do if(a){i=h[f+28>>2]|0;e=40708+(i<<2)|0;if((f|0)==(h[e>>2]|0)){h[e>>2]=m;if(!m){h[10102]=h[10102]&~(1<<i);break}}else{if(a>>>0<(h[10105]|0)>>>0)Ve();i=a+16|0;if((h[i>>2]|0)==(f|0))h[i>>2]=m;else h[a+20>>2]=m;if(!m)break}e=h[10105]|0;if(m>>>0<e>>>0)Ve();h[m+24>>2]=a;i=h[f+16>>2]|0;do if(i)if(i>>>0<e>>>0)Ve();else{h[m+16>>2]=i;h[i+24>>2]=m;break}while(0);i=h[f+20>>2]|0;if(i)if(i>>>0<(h[10105]|0)>>>0)Ve();else{h[m+20>>2]=i;h[i+24>>2]=m;break}}while(0);e:do if(s>>>0>=16){h[f+4>>2]=c|3;h[f+(c|4)>>2]=s|1;h[f+(s+c)>>2]=s;i=s>>>3;if(s>>>0<256){e=i<<1;r=40444+(e<<2)|0;t=h[10101]|0;i=1<<i;if(t&i){i=40444+(e+2<<2)|0;e=h[i>>2]|0;if(e>>>0<(h[10105]|0)>>>0)Ve();else{p=i;g=e}}else{h[10101]=t|i;p=40444+(e+2<<2)|0;g=r}h[p>>2]=o;h[g+12>>2]=o;h[f+(c+8)>>2]=g;h[f+(c+12)>>2]=r;break}i=s>>>8;if(i)if(s>>>0>16777215)r=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;B=(F+520192|0)>>>16&4;F=F<<B;r=(F+245760|0)>>>16&2;r=14-(B|N|r)+(F<<r>>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;i=40708+(r<<2)|0;h[f+(c+28)>>2]=r;h[f+(c+20)>>2]=0;h[f+(c+16)>>2]=0;e=h[10102]|0;t=1<<r;if(!(e&t)){h[10102]=e|t;h[i>>2]=o;h[f+(c+24)>>2]=i;h[f+(c+12)>>2]=o;h[f+(c+8)>>2]=o;break}i=h[i>>2]|0;i:do if((h[i+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){e=i+16+(r>>>31<<2)|0;t=h[e>>2]|0;if(!t)break;if((h[t+4>>2]&-8|0)==(s|0)){M=t;break i}else{r=r<<1;i=t}}if(e>>>0<(h[10105]|0)>>>0)Ve();else{h[e>>2]=o;h[f+(c+24)>>2]=i;h[f+(c+12)>>2]=o;h[f+(c+8)>>2]=o;break e}}else M=i;while(0);i=M+8|0;e=h[i>>2]|0;F=h[10105]|0;if(e>>>0>=F>>>0&M>>>0>=F>>>0){h[e+12>>2]=o;h[i>>2]=o;h[f+(c+8)>>2]=e;h[f+(c+12)>>2]=M;h[f+(c+24)>>2]=0;break}else Ve()}else{F=s+c|0;h[f+4>>2]=F|3;F=f+(F+4)|0;h[F>>2]=h[F>>2]|1}while(0);F=f+8|0;return F|0}else v=c}else v=c}else v=-1;while(0);t=h[10103]|0;if(t>>>0>=v>>>0){i=t-v|0;e=h[10106]|0;if(i>>>0>15){h[10106]=e+v;h[10103]=i;h[e+(v+4)>>2]=i|1;h[e+t>>2]=i;h[e+4>>2]=v|3}else{h[10103]=0;h[10106]=0;h[e+4>>2]=t|3;F=e+(t+4)|0;h[F>>2]=h[F>>2]|1}F=e+8|0;return F|0}e=h[10104]|0;if(e>>>0>v>>>0){N=e-v|0;h[10104]=N;F=h[10107]|0;h[10107]=F+v;h[F+(v+4)>>2]=N|1;h[F+4>>2]=v|3;F=F+8|0;return F|0}do if(!(h[10219]|0)){e=ui(30)|0;if(!(e+-1&e)){h[10221]=e;h[10220]=e;h[10222]=-1;h[10223]=-1;h[10224]=0;h[10212]=0;M=(Si(0)|0)&-16^1431655768;h[10219]=M;break}else Ve()}while(0);f=v+48|0;s=h[10221]|0;l=v+47|0;o=s+l|0;s=0-s|0;u=o&s;if(u>>>0<=v>>>0){F=0;return F|0}e=h[10211]|0;if((e|0)!=0?(g=h[10209]|0,M=g+u|0,M>>>0<=g>>>0|M>>>0>e>>>0):0){F=0;return F|0}e:do if(!(h[10212]&4)){e=h[10107]|0;i:do if(e){n=40852;while(1){t=h[n>>2]|0;if(t>>>0<=e>>>0?(w=n+4|0,(t+(h[w>>2]|0)|0)>>>0>e>>>0):0){a=n;e=w;break}n=h[n+8>>2]|0;if(!n){_=174;break i}}t=o-(h[10104]|0)&s;if(t>>>0<2147483647){n=ni(t|0)|0;M=(n|0)==((h[a>>2]|0)+(h[e>>2]|0)|0);e=M?t:0;if(M){if((n|0)!=(-1|0)){y=n;b=e;_=194;break e}}else _=184}else e=0}else _=174;while(0);do if((_|0)==174){a=ni(0)|0;if((a|0)!=(-1|0)){e=a;t=h[10220]|0;n=t+-1|0;if(!(n&e))t=u;else t=u-e+(n+e&0-t)|0;e=h[10209]|0;n=e+t|0;if(t>>>0>v>>>0&t>>>0<2147483647){M=h[10211]|0;if((M|0)!=0?n>>>0<=e>>>0|n>>>0>M>>>0:0){e=0;break}n=ni(t|0)|0;M=(n|0)==(a|0);e=M?t:0;if(M){y=a;b=e;_=194;break e}else _=184}else e=0}else e=0}while(0);i:do if((_|0)==184){a=0-t|0;do if(f>>>0>t>>>0&(t>>>0<2147483647&(n|0)!=(-1|0))?(k=h[10221]|0,k=l-t+k&0-k,k>>>0<2147483647):0)if((ni(k|0)|0)==(-1|0)){ni(a|0)|0;break i}else{t=k+t|0;break}while(0);if((n|0)!=(-1|0)){y=n;b=t;_=194;break e}}while(0);h[10212]=h[10212]|4;_=191}else{e=0;_=191}while(0);if((((_|0)==191?u>>>0<2147483647:0)?(y=ni(u|0)|0,T=ni(0)|0,y>>>0<T>>>0&((y|0)!=(-1|0)&(T|0)!=(-1|0))):0)?(C=T-y|0,x=C>>>0>(v+40|0)>>>0,x):0){b=x?C:e;_=194}if((_|0)==194){e=(h[10209]|0)+b|0;h[10209]=e;if(e>>>0>(h[10210]|0)>>>0)h[10210]=e;o=h[10107]|0;e:do if(o){a=40852;do{e=h[a>>2]|0;t=a+4|0;n=h[t>>2]|0;if((y|0)==(e+n|0)){E=e;S=t;A=n;P=a;_=204;break}a=h[a+8>>2]|0}while((a|0)!=0);if(((_|0)==204?(h[P+12>>2]&8|0)==0:0)?o>>>0<y>>>0&o>>>0>=E>>>0:0){h[S>>2]=A+b;F=(h[10104]|0)+b|0;N=o+8|0;N=(N&7|0)==0?0:0-N&7;B=F-N|0;h[10107]=o+N;h[10104]=B;h[o+(N+4)>>2]=B|1;h[o+(F+4)>>2]=40;h[10108]=h[10223];break}e=h[10105]|0;if(y>>>0<e>>>0){h[10105]=y;e=y}t=y+b|0;a=40852;while(1){if((h[a>>2]|0)==(t|0)){n=a;t=a;_=212;break}a=h[a+8>>2]|0;if(!a){t=40852;break}}if((_|0)==212)if(!(h[t+12>>2]&8)){h[n>>2]=y;d=t+4|0;h[d>>2]=(h[d>>2]|0)+b;d=y+8|0;d=(d&7|0)==0?0:0-d&7;l=y+(b+8)|0;l=(l&7|0)==0?0:0-l&7;i=y+(l+b)|0;c=d+v|0;m=y+c|0;u=i-(y+d)-v|0;h[y+(d+4)>>2]=v|3;i:do if((i|0)!=(o|0)){if((i|0)==(h[10106]|0)){F=(h[10103]|0)+u|0;h[10103]=F;h[10106]=m;h[y+(c+4)>>2]=F|1;h[y+(F+c)>>2]=F;break}s=b+4|0;t=h[y+(s+l)>>2]|0;if((t&3|0)==1){f=t&-8;a=t>>>3;t:do if(t>>>0>=256){o=h[y+((l|24)+b)>>2]|0;r=h[y+(b+12+l)>>2]|0;do if((r|0)==(i|0)){n=l|16;r=y+(s+n)|0;t=h[r>>2]|0;if(!t){r=y+(n+b)|0;t=h[r>>2]|0;if(!t){O=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<e>>>0)Ve();else{h[r>>2]=0;O=t;break}}else{n=h[y+((l|8)+b)>>2]|0;if(n>>>0<e>>>0)Ve();e=n+12|0;if((h[e>>2]|0)!=(i|0))Ve();t=r+8|0;if((h[t>>2]|0)==(i|0)){h[e>>2]=r;h[t>>2]=n;O=r;break}else Ve()}while(0);if(!o)break;e=h[y+(b+28+l)>>2]|0;t=40708+(e<<2)|0;do if((i|0)!=(h[t>>2]|0)){if(o>>>0<(h[10105]|0)>>>0)Ve();e=o+16|0;if((h[e>>2]|0)==(i|0))h[e>>2]=O;else h[o+20>>2]=O;if(!O)break t}else{h[t>>2]=O;if(O)break;h[10102]=h[10102]&~(1<<e);break t}while(0);t=h[10105]|0;if(O>>>0<t>>>0)Ve();h[O+24>>2]=o;i=l|16;e=h[y+(i+b)>>2]|0;do if(e)if(e>>>0<t>>>0)Ve();else{h[O+16>>2]=e;h[e+24>>2]=O;break}while(0);i=h[y+(s+i)>>2]|0;if(!i)break;if(i>>>0<(h[10105]|0)>>>0)Ve();else{h[O+20>>2]=i;h[i+24>>2]=O;break}}else{r=h[y+((l|8)+b)>>2]|0;n=h[y+(b+12+l)>>2]|0;t=40444+(a<<1<<2)|0;do if((r|0)!=(t|0)){if(r>>>0<e>>>0)Ve();if((h[r+12>>2]|0)==(i|0))break;Ve()}while(0);if((n|0)==(r|0)){h[10101]=h[10101]&~(1<<a);break}do if((n|0)==(t|0))I=n+8|0;else{if(n>>>0<e>>>0)Ve();e=n+8|0;if((h[e>>2]|0)==(i|0)){I=e;break}Ve()}while(0);h[r+12>>2]=n;h[I>>2]=r}while(0);i=y+((f|l)+b)|0;n=f+u|0}else n=u;i=i+4|0;h[i>>2]=h[i>>2]&-2;h[y+(c+4)>>2]=n|1;h[y+(n+c)>>2]=n;i=n>>>3;if(n>>>0<256){e=i<<1;r=40444+(e<<2)|0;t=h[10101]|0;i=1<<i;do if(!(t&i)){h[10101]=t|i;B=40444+(e+2<<2)|0;N=r}else{i=40444+(e+2<<2)|0;e=h[i>>2]|0;if(e>>>0>=(h[10105]|0)>>>0){B=i;N=e;break}Ve()}while(0);h[B>>2]=m;h[N+12>>2]=m;h[y+(c+8)>>2]=N;h[y+(c+12)>>2]=r;break}i=n>>>8;do if(!i)r=0;else{if(n>>>0>16777215){r=31;break}B=(i+1048320|0)>>>16&8;N=i<<B;O=(N+520192|0)>>>16&4;N=N<<O;r=(N+245760|0)>>>16&2;r=14-(O|B|r)+(N<<r>>>15)|0;r=n>>>(r+7|0)&1|r<<1}while(0);i=40708+(r<<2)|0;h[y+(c+28)>>2]=r;h[y+(c+20)>>2]=0;h[y+(c+16)>>2]=0;e=h[10102]|0;t=1<<r;if(!(e&t)){h[10102]=e|t;h[i>>2]=m;h[y+(c+24)>>2]=i;h[y+(c+12)>>2]=m;h[y+(c+8)>>2]=m;break}i=h[i>>2]|0;t:do if((h[i+4>>2]&-8|0)!=(n|0)){r=n<<((r|0)==31?0:25-(r>>>1)|0);while(1){e=i+16+(r>>>31<<2)|0;t=h[e>>2]|0;if(!t)break;if((h[t+4>>2]&-8|0)==(n|0)){F=t;break t}else{r=r<<1;i=t}}if(e>>>0<(h[10105]|0)>>>0)Ve();else{h[e>>2]=m;h[y+(c+24)>>2]=i;h[y+(c+12)>>2]=m;h[y+(c+8)>>2]=m;break i}}else F=i;while(0);i=F+8|0;e=h[i>>2]|0;N=h[10105]|0;if(e>>>0>=N>>>0&F>>>0>=N>>>0){h[e+12>>2]=m;h[i>>2]=m;h[y+(c+8)>>2]=e;h[y+(c+12)>>2]=F;h[y+(c+24)>>2]=0;break}else Ve()}else{F=(h[10104]|0)+u|0;h[10104]=F;h[10107]=m;h[y+(c+4)>>2]=F|1}while(0);F=y+(d|8)|0;return F|0}else t=40852;while(1){e=h[t>>2]|0;if(e>>>0<=o>>>0?(i=h[t+4>>2]|0,r=e+i|0,r>>>0>o>>>0):0)break;t=h[t+8>>2]|0}n=e+(i+-39)|0;e=e+(i+-47+((n&7|0)==0?0:0-n&7))|0;n=o+16|0;e=e>>>0<n>>>0?o:e;i=e+8|0;t=y+8|0;t=(t&7|0)==0?0:0-t&7;F=b+-40-t|0;h[10107]=y+t;h[10104]=F;h[y+(t+4)>>2]=F|1;h[y+(b+-36)>>2]=40;h[10108]=h[10223];t=e+4|0;h[t>>2]=27;h[i>>2]=h[10213];h[i+4>>2]=h[10214];h[i+8>>2]=h[10215];h[i+12>>2]=h[10216];h[10213]=y;h[10214]=b;h[10216]=0;h[10215]=i;i=e+28|0;h[i>>2]=7;if((e+32|0)>>>0<r>>>0)do{F=i;i=i+4|0;h[i>>2]=7}while((F+8|0)>>>0<r>>>0);if((e|0)!=(o|0)){a=e-o|0;h[t>>2]=h[t>>2]&-2;h[o+4>>2]=a|1;h[e>>2]=a;i=a>>>3;if(a>>>0<256){e=i<<1;r=40444+(e<<2)|0;t=h[10101]|0;i=1<<i;if(t&i){i=40444+(e+2<<2)|0;e=h[i>>2]|0;if(e>>>0<(h[10105]|0)>>>0)Ve();else{L=i;D=e}}else{h[10101]=t|i;L=40444+(e+2<<2)|0;D=r}h[L>>2]=o;h[D+12>>2]=o;h[o+8>>2]=D;h[o+12>>2]=r;break}i=a>>>8;if(i)if(a>>>0>16777215)r=31;else{N=(i+1048320|0)>>>16&8;F=i<<N;B=(F+520192|0)>>>16&4;F=F<<B;r=(F+245760|0)>>>16&2;r=14-(B|N|r)+(F<<r>>>15)|0;r=a>>>(r+7|0)&1|r<<1}else r=0;t=40708+(r<<2)|0;h[o+28>>2]=r;h[o+20>>2]=0;h[n>>2]=0;i=h[10102]|0;e=1<<r;if(!(i&e)){h[10102]=i|e;h[t>>2]=o;h[o+24>>2]=t;h[o+12>>2]=o;h[o+8>>2]=o;break}i=h[t>>2]|0;i:do if((h[i+4>>2]&-8|0)!=(a|0)){r=a<<((r|0)==31?0:25-(r>>>1)|0);while(1){e=i+16+(r>>>31<<2)|0;t=h[e>>2]|0;if(!t)break;if((h[t+4>>2]&-8|0)==(a|0)){R=t;break i}else{r=r<<1;i=t}}if(e>>>0<(h[10105]|0)>>>0)Ve();else{h[e>>2]=o;h[o+24>>2]=i;h[o+12>>2]=o;h[o+8>>2]=o;break e}}else R=i;while(0);i=R+8|0;e=h[i>>2]|0;F=h[10105]|0;if(e>>>0>=F>>>0&R>>>0>=F>>>0){h[e+12>>2]=o;h[i>>2]=o;h[o+8>>2]=e;h[o+12>>2]=R;h[o+24>>2]=0;break}else Ve()}}else{F=h[10105]|0;if((F|0)==0|y>>>0<F>>>0)h[10105]=y;h[10213]=y;h[10214]=b;h[10216]=0;h[10110]=h[10219];h[10109]=-1;i=0;do{F=i<<1;N=40444+(F<<2)|0;h[40444+(F+3<<2)>>2]=N;h[40444+(F+2<<2)>>2]=N;i=i+1|0}while((i|0)!=32);F=y+8|0;F=(F&7|0)==0?0:0-F&7;N=b+-40-F|0;h[10107]=y+F;h[10104]=N;h[y+(F+4)>>2]=N|1;h[y+(b+-36)>>2]=40;h[10108]=h[10223]}while(0);i=h[10104]|0;if(i>>>0>v>>>0){N=i-v|0;h[10104]=N;F=h[10107]|0;h[10107]=F+v;h[F+(v+4)>>2]=N|1;h[F+4>>2]=v|3;F=F+8|0;return F|0}}F=$b()|0;h[F>>2]=12;F=0;return F|0}function xw(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,k=0;if(!e)return;i=e+-8|0;s=h[10105]|0;if(i>>>0<s>>>0)Ve();t=h[e+-4>>2]|0;r=t&3;if((r|0)==1)Ve();m=t&-8;v=e+(m+-8)|0;do if(!(t&1)){i=h[i>>2]|0;if(!r)return;f=-8-i|0;u=e+f|0;c=i+m|0;if(u>>>0<s>>>0)Ve();if((u|0)==(h[10106]|0)){i=e+(m+-4)|0;t=h[i>>2]|0;if((t&3|0)!=3){k=u;a=c;break}h[10103]=c;h[i>>2]=t&-2;h[e+(f+4)>>2]=c|1;h[v>>2]=c;return}n=i>>>3;if(i>>>0<256){r=h[e+(f+8)>>2]|0;t=h[e+(f+12)>>2]|0;i=40444+(n<<1<<2)|0;if((r|0)!=(i|0)){if(r>>>0<s>>>0)Ve();if((h[r+12>>2]|0)!=(u|0))Ve()}if((t|0)==(r|0)){h[10101]=h[10101]&~(1<<n);k=u;a=c;break}if((t|0)!=(i|0)){if(t>>>0<s>>>0)Ve();i=t+8|0;if((h[i>>2]|0)==(u|0))o=i;else Ve()}else o=t+8|0;h[r+12>>2]=t;h[o>>2]=r;k=u;a=c;break}o=h[e+(f+24)>>2]|0;r=h[e+(f+12)>>2]|0;do if((r|0)==(u|0)){t=e+(f+20)|0;i=h[t>>2]|0;if(!i){t=e+(f+16)|0;i=h[t>>2]|0;if(!i){l=0;break}}while(1){r=i+20|0;n=h[r>>2]|0;if(n){i=n;t=r;continue}r=i+16|0;n=h[r>>2]|0;if(!n)break;else{i=n;t=r}}if(t>>>0<s>>>0)Ve();else{h[t>>2]=0;l=i;break}}else{n=h[e+(f+8)>>2]|0;if(n>>>0<s>>>0)Ve();i=n+12|0;if((h[i>>2]|0)!=(u|0))Ve();t=r+8|0;if((h[t>>2]|0)==(u|0)){h[i>>2]=r;h[t>>2]=n;l=r;break}else Ve()}while(0);if(o){i=h[e+(f+28)>>2]|0;t=40708+(i<<2)|0;if((u|0)==(h[t>>2]|0)){h[t>>2]=l;if(!l){h[10102]=h[10102]&~(1<<i);k=u;a=c;break}}else{if(o>>>0<(h[10105]|0)>>>0)Ve();i=o+16|0;if((h[i>>2]|0)==(u|0))h[i>>2]=l;else h[o+20>>2]=l;if(!l){k=u;a=c;break}}t=h[10105]|0;if(l>>>0<t>>>0)Ve();h[l+24>>2]=o;i=h[e+(f+16)>>2]|0;do if(i)if(i>>>0<t>>>0)Ve();else{h[l+16>>2]=i;h[i+24>>2]=l;break}while(0);i=h[e+(f+20)>>2]|0;if(i)if(i>>>0<(h[10105]|0)>>>0)Ve();else{h[l+20>>2]=i;h[i+24>>2]=l;k=u;a=c;break}else{k=u;a=c}}else{k=u;a=c}}else{k=i;a=m}while(0);if(k>>>0>=v>>>0)Ve();i=e+(m+-4)|0;t=h[i>>2]|0;if(!(t&1))Ve();if(!(t&2)){if((v|0)==(h[10107]|0)){g=(h[10104]|0)+a|0;h[10104]=g;h[10107]=k;h[k+4>>2]=g|1;if((k|0)!=(h[10106]|0))return;h[10106]=0;h[10103]=0;return}if((v|0)==(h[10106]|0)){g=(h[10103]|0)+a|0;h[10103]=g;h[10106]=k;h[k+4>>2]=g|1;h[k+g>>2]=g;return}a=(t&-8)+a|0;n=t>>>3;do if(t>>>0>=256){o=h[e+(m+16)>>2]|0;i=h[e+(m|4)>>2]|0;do if((i|0)==(v|0)){t=e+(m+12)|0;i=h[t>>2]|0;if(!i){t=e+(m+8)|0;i=h[t>>2]|0;if(!i){b=0;break}}while(1){r=i+20|0;n=h[r>>2]|0;if(n){i=n;t=r;continue}r=i+16|0;n=h[r>>2]|0;if(!n)break;else{i=n;t=r}}if(t>>>0<(h[10105]|0)>>>0)Ve();else{h[t>>2]=0;b=i;break}}else{t=h[e+m>>2]|0;if(t>>>0<(h[10105]|0)>>>0)Ve();r=t+12|0;if((h[r>>2]|0)!=(v|0))Ve();n=i+8|0;if((h[n>>2]|0)==(v|0)){h[r>>2]=i;h[n>>2]=t;b=i;break}else Ve()}while(0);if(o){i=h[e+(m+20)>>2]|0;t=40708+(i<<2)|0;if((v|0)==(h[t>>2]|0)){h[t>>2]=b;if(!b){h[10102]=h[10102]&~(1<<i);break}}else{if(o>>>0<(h[10105]|0)>>>0)Ve();i=o+16|0;if((h[i>>2]|0)==(v|0))h[i>>2]=b;else h[o+20>>2]=b;if(!b)break}t=h[10105]|0;if(b>>>0<t>>>0)Ve();h[b+24>>2]=o;i=h[e+(m+8)>>2]|0;do if(i)if(i>>>0<t>>>0)Ve();else{h[b+16>>2]=i;h[i+24>>2]=b;break}while(0);i=h[e+(m+12)>>2]|0;if(i)if(i>>>0<(h[10105]|0)>>>0)Ve();else{h[b+20>>2]=i;h[i+24>>2]=b;break}}}else{r=h[e+m>>2]|0;t=h[e+(m|4)>>2]|0;i=40444+(n<<1<<2)|0;if((r|0)!=(i|0)){if(r>>>0<(h[10105]|0)>>>0)Ve();if((h[r+12>>2]|0)!=(v|0))Ve()}if((t|0)==(r|0)){h[10101]=h[10101]&~(1<<n);break}if((t|0)!=(i|0)){if(t>>>0<(h[10105]|0)>>>0)Ve();i=t+8|0;if((h[i>>2]|0)==(v|0))d=i;else Ve()}else d=t+8|0;h[r+12>>2]=t;h[d>>2]=r}while(0);h[k+4>>2]=a|1;h[k+a>>2]=a;if((k|0)==(h[10106]|0)){h[10103]=a;return}}else{h[i>>2]=t&-2;h[k+4>>2]=a|1;h[k+a>>2]=a}i=a>>>3;if(a>>>0<256){t=i<<1;n=40444+(t<<2)|0;r=h[10101]|0;i=1<<i;if(r&i){i=40444+(t+2<<2)|0;t=h[i>>2]|0;if(t>>>0<(h[10105]|0)>>>0)Ve();else{w=i;p=t}}else{h[10101]=r|i;w=40444+(t+2<<2)|0;p=n}h[w>>2]=k;h[p+12>>2]=k;h[k+8>>2]=p;h[k+12>>2]=n;return}i=a>>>8;if(i)if(a>>>0>16777215)n=31;else{w=(i+1048320|0)>>>16&8;p=i<<w;v=(p+520192|0)>>>16&4;p=p<<v;n=(p+245760|0)>>>16&2;n=14-(v|w|n)+(p<<n>>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;i=40708+(n<<2)|0;h[k+28>>2]=n;h[k+20>>2]=0;h[k+16>>2]=0;t=h[10102]|0;r=1<<n;e:do if(t&r){i=h[i>>2]|0;i:do if((h[i+4>>2]&-8|0)!=(a|0)){n=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){t=i+16+(n>>>31<<2)|0;r=h[t>>2]|0;if(!r)break;if((h[r+4>>2]&-8|0)==(a|0)){g=r;break i}else{n=n<<1;i=r}}if(t>>>0<(h[10105]|0)>>>0)Ve();else{h[t>>2]=k;h[k+24>>2]=i;h[k+12>>2]=k;h[k+8>>2]=k;break e}}else g=i;while(0);i=g+8|0;t=h[i>>2]|0;p=h[10105]|0;if(t>>>0>=p>>>0&g>>>0>=p>>>0){h[t+12>>2]=k;h[i>>2]=k;h[k+8>>2]=t;h[k+12>>2]=g;h[k+24>>2]=0;break}else Ve()}else{h[10102]=t|r;h[i>>2]=k;h[k+24>>2]=i;h[k+12>>2]=k;h[k+8>>2]=k}while(0);k=(h[10109]|0)+-1|0;h[10109]=k;if(!k)i=40860;else return;while(1){i=h[i>>2]|0;if(!i)break;else i=i+8|0}h[10109]=-1;return}function Ew(e,i){e=e|0;i=i|0;var t=0;if(e){t=ce(i,e)|0;if((i|e)>>>0>65535)t=((t>>>0)/(e>>>0)|0|0)==(i|0)?t:-1}else t=0;i=Cw(t)|0;if(!i)return i|0;if(!(h[i+-4>>2]&3))return i|0;Pg(i|0,0,t|0)|0;return i|0}function Sw(e,i){e=e|0;i=i|0;var t=0,r=0;if(!e){e=Cw(i)|0;return e|0}if(i>>>0>4294967231){e=$b()|0;h[e>>2]=12;e=0;return e|0}t=Aw(e+-8|0,i>>>0<11?16:i+11&-8)|0;if(t){e=t+8|0;return e|0}t=Cw(i)|0;if(!t){e=0;return e|0}r=h[e+-4>>2]|0;r=(r&-8)-((r&3|0)==0?8:4)|0;Dg(t|0,e|0,(r>>>0<i>>>0?r:i)|0)|0;xw(e);e=t;return e|0}function Aw(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;m=e+4|0;b=h[m>>2]|0;
f=b&-8;u=e+f|0;s=h[10105]|0;t=b&3;if(!((t|0)!=1&e>>>0>=s>>>0&e>>>0<u>>>0))Ve();r=e+(f|4)|0;n=h[r>>2]|0;if(!(n&1))Ve();if(!t){if(i>>>0<256){e=0;return e|0}if(f>>>0>=(i+4|0)>>>0?(f-i|0)>>>0<=h[10221]<<1>>>0:0)return e|0;e=0;return e|0}if(f>>>0>=i>>>0){t=f-i|0;if(t>>>0<=15)return e|0;h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=t|3;h[r>>2]=h[r>>2]|1;Pw(e+i|0,t);return e|0}if((u|0)==(h[10107]|0)){t=(h[10104]|0)+f|0;if(t>>>0<=i>>>0){e=0;return e|0}d=t-i|0;h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=d|1;h[10107]=e+i;h[10104]=d;return e|0}if((u|0)==(h[10106]|0)){r=(h[10103]|0)+f|0;if(r>>>0<i>>>0){e=0;return e|0}t=r-i|0;if(t>>>0>15){h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=t|1;h[e+r>>2]=t;r=e+(r+4)|0;h[r>>2]=h[r>>2]&-2;r=e+i|0}else{h[m>>2]=b&1|r|2;r=e+(r+4)|0;h[r>>2]=h[r>>2]|1;r=0;t=0}h[10103]=t;h[10106]=r;return e|0}if(n&2){e=0;return e|0}c=(n&-8)+f|0;if(c>>>0<i>>>0){e=0;return e|0}d=c-i|0;a=n>>>3;do if(n>>>0>=256){o=h[e+(f+24)>>2]|0;a=h[e+(f+12)>>2]|0;do if((a|0)==(u|0)){r=e+(f+20)|0;t=h[r>>2]|0;if(!t){r=e+(f+16)|0;t=h[r>>2]|0;if(!t){l=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<s>>>0)Ve();else{h[r>>2]=0;l=t;break}}else{n=h[e+(f+8)>>2]|0;if(n>>>0<s>>>0)Ve();t=n+12|0;if((h[t>>2]|0)!=(u|0))Ve();r=a+8|0;if((h[r>>2]|0)==(u|0)){h[t>>2]=a;h[r>>2]=n;l=a;break}else Ve()}while(0);if(o){t=h[e+(f+28)>>2]|0;r=40708+(t<<2)|0;if((u|0)==(h[r>>2]|0)){h[r>>2]=l;if(!l){h[10102]=h[10102]&~(1<<t);break}}else{if(o>>>0<(h[10105]|0)>>>0)Ve();t=o+16|0;if((h[t>>2]|0)==(u|0))h[t>>2]=l;else h[o+20>>2]=l;if(!l)break}r=h[10105]|0;if(l>>>0<r>>>0)Ve();h[l+24>>2]=o;t=h[e+(f+16)>>2]|0;do if(t)if(t>>>0<r>>>0)Ve();else{h[l+16>>2]=t;h[t+24>>2]=l;break}while(0);t=h[e+(f+20)>>2]|0;if(t)if(t>>>0<(h[10105]|0)>>>0)Ve();else{h[l+20>>2]=t;h[t+24>>2]=l;break}}}else{n=h[e+(f+8)>>2]|0;r=h[e+(f+12)>>2]|0;t=40444+(a<<1<<2)|0;if((n|0)!=(t|0)){if(n>>>0<s>>>0)Ve();if((h[n+12>>2]|0)!=(u|0))Ve()}if((r|0)==(n|0)){h[10101]=h[10101]&~(1<<a);break}if((r|0)!=(t|0)){if(r>>>0<s>>>0)Ve();t=r+8|0;if((h[t>>2]|0)==(u|0))o=t;else Ve()}else o=r+8|0;h[n+12>>2]=r;h[o>>2]=n}while(0);if(d>>>0<16){h[m>>2]=c|b&1|2;i=e+(c|4)|0;h[i>>2]=h[i>>2]|1;return e|0}else{h[m>>2]=b&1|i|2;h[e+(i+4)>>2]=d|3;b=e+(c|4)|0;h[b>>2]=h[b>>2]|1;Pw(e+i|0,d);return e|0}return 0}function Pw(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0;v=e+i|0;t=h[e+4>>2]|0;do if(!(t&1)){l=h[e>>2]|0;if(!(t&3))return;d=e+(0-l)|0;c=l+i|0;f=h[10105]|0;if(d>>>0<f>>>0)Ve();if((d|0)==(h[10106]|0)){r=e+(i+4)|0;t=h[r>>2]|0;if((t&3|0)!=3){g=d;o=c;break}h[10103]=c;h[r>>2]=t&-2;h[e+(4-l)>>2]=c|1;h[v>>2]=c;return}a=l>>>3;if(l>>>0<256){n=h[e+(8-l)>>2]|0;r=h[e+(12-l)>>2]|0;t=40444+(a<<1<<2)|0;if((n|0)!=(t|0)){if(n>>>0<f>>>0)Ve();if((h[n+12>>2]|0)!=(d|0))Ve()}if((r|0)==(n|0)){h[10101]=h[10101]&~(1<<a);g=d;o=c;break}if((r|0)!=(t|0)){if(r>>>0<f>>>0)Ve();t=r+8|0;if((h[t>>2]|0)==(d|0))s=t;else Ve()}else s=r+8|0;h[n+12>>2]=r;h[s>>2]=n;g=d;o=c;break}s=h[e+(24-l)>>2]|0;n=h[e+(12-l)>>2]|0;do if((n|0)==(d|0)){n=16-l|0;r=e+(n+4)|0;t=h[r>>2]|0;if(!t){r=e+n|0;t=h[r>>2]|0;if(!t){u=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<f>>>0)Ve();else{h[r>>2]=0;u=t;break}}else{a=h[e+(8-l)>>2]|0;if(a>>>0<f>>>0)Ve();t=a+12|0;if((h[t>>2]|0)!=(d|0))Ve();r=n+8|0;if((h[r>>2]|0)==(d|0)){h[t>>2]=n;h[r>>2]=a;u=n;break}else Ve()}while(0);if(s){t=h[e+(28-l)>>2]|0;r=40708+(t<<2)|0;if((d|0)==(h[r>>2]|0)){h[r>>2]=u;if(!u){h[10102]=h[10102]&~(1<<t);g=d;o=c;break}}else{if(s>>>0<(h[10105]|0)>>>0)Ve();t=s+16|0;if((h[t>>2]|0)==(d|0))h[t>>2]=u;else h[s+20>>2]=u;if(!u){g=d;o=c;break}}n=h[10105]|0;if(u>>>0<n>>>0)Ve();h[u+24>>2]=s;t=16-l|0;r=h[e+t>>2]|0;do if(r)if(r>>>0<n>>>0)Ve();else{h[u+16>>2]=r;h[r+24>>2]=u;break}while(0);t=h[e+(t+4)>>2]|0;if(t)if(t>>>0<(h[10105]|0)>>>0)Ve();else{h[u+20>>2]=t;h[t+24>>2]=u;g=d;o=c;break}else{g=d;o=c}}else{g=d;o=c}}else{g=e;o=i}while(0);f=h[10105]|0;if(v>>>0<f>>>0)Ve();t=e+(i+4)|0;r=h[t>>2]|0;if(!(r&2)){if((v|0)==(h[10107]|0)){p=(h[10104]|0)+o|0;h[10104]=p;h[10107]=g;h[g+4>>2]=p|1;if((g|0)!=(h[10106]|0))return;h[10106]=0;h[10103]=0;return}if((v|0)==(h[10106]|0)){p=(h[10103]|0)+o|0;h[10103]=p;h[10106]=g;h[g+4>>2]=p|1;h[g+p>>2]=p;return}o=(r&-8)+o|0;a=r>>>3;do if(r>>>0>=256){s=h[e+(i+24)>>2]|0;n=h[e+(i+12)>>2]|0;do if((n|0)==(v|0)){r=e+(i+20)|0;t=h[r>>2]|0;if(!t){r=e+(i+16)|0;t=h[r>>2]|0;if(!t){b=0;break}}while(1){n=t+20|0;a=h[n>>2]|0;if(a){t=a;r=n;continue}n=t+16|0;a=h[n>>2]|0;if(!a)break;else{t=a;r=n}}if(r>>>0<f>>>0)Ve();else{h[r>>2]=0;b=t;break}}else{a=h[e+(i+8)>>2]|0;if(a>>>0<f>>>0)Ve();t=a+12|0;if((h[t>>2]|0)!=(v|0))Ve();r=n+8|0;if((h[r>>2]|0)==(v|0)){h[t>>2]=n;h[r>>2]=a;b=n;break}else Ve()}while(0);if(s){t=h[e+(i+28)>>2]|0;r=40708+(t<<2)|0;if((v|0)==(h[r>>2]|0)){h[r>>2]=b;if(!b){h[10102]=h[10102]&~(1<<t);break}}else{if(s>>>0<(h[10105]|0)>>>0)Ve();t=s+16|0;if((h[t>>2]|0)==(v|0))h[t>>2]=b;else h[s+20>>2]=b;if(!b)break}r=h[10105]|0;if(b>>>0<r>>>0)Ve();h[b+24>>2]=s;t=h[e+(i+16)>>2]|0;do if(t)if(t>>>0<r>>>0)Ve();else{h[b+16>>2]=t;h[t+24>>2]=b;break}while(0);t=h[e+(i+20)>>2]|0;if(t)if(t>>>0<(h[10105]|0)>>>0)Ve();else{h[b+20>>2]=t;h[t+24>>2]=b;break}}}else{n=h[e+(i+8)>>2]|0;r=h[e+(i+12)>>2]|0;t=40444+(a<<1<<2)|0;if((n|0)!=(t|0)){if(n>>>0<f>>>0)Ve();if((h[n+12>>2]|0)!=(v|0))Ve()}if((r|0)==(n|0)){h[10101]=h[10101]&~(1<<a);break}if((r|0)!=(t|0)){if(r>>>0<f>>>0)Ve();t=r+8|0;if((h[t>>2]|0)==(v|0))m=t;else Ve()}else m=r+8|0;h[n+12>>2]=r;h[m>>2]=n}while(0);h[g+4>>2]=o|1;h[g+o>>2]=o;if((g|0)==(h[10106]|0)){h[10103]=o;return}}else{h[t>>2]=r&-2;h[g+4>>2]=o|1;h[g+o>>2]=o}t=o>>>3;if(o>>>0<256){r=t<<1;a=40444+(r<<2)|0;n=h[10101]|0;t=1<<t;if(n&t){t=40444+(r+2<<2)|0;r=h[t>>2]|0;if(r>>>0<(h[10105]|0)>>>0)Ve();else{w=t;p=r}}else{h[10101]=n|t;w=40444+(r+2<<2)|0;p=a}h[w>>2]=g;h[p+12>>2]=g;h[g+8>>2]=p;h[g+12>>2]=a;return}t=o>>>8;if(t)if(o>>>0>16777215)a=31;else{w=(t+1048320|0)>>>16&8;p=t<<w;v=(p+520192|0)>>>16&4;p=p<<v;a=(p+245760|0)>>>16&2;a=14-(v|w|a)+(p<<a>>>15)|0;a=o>>>(a+7|0)&1|a<<1}else a=0;t=40708+(a<<2)|0;h[g+28>>2]=a;h[g+20>>2]=0;h[g+16>>2]=0;r=h[10102]|0;n=1<<a;if(!(r&n)){h[10102]=r|n;h[t>>2]=g;h[g+24>>2]=t;h[g+12>>2]=g;h[g+8>>2]=g;return}t=h[t>>2]|0;e:do if((h[t+4>>2]&-8|0)!=(o|0)){a=o<<((a|0)==31?0:25-(a>>>1)|0);while(1){r=t+16+(a>>>31<<2)|0;n=h[r>>2]|0;if(!n)break;if((h[n+4>>2]&-8|0)==(o|0)){t=n;break e}else{a=a<<1;t=n}}if(r>>>0<(h[10105]|0)>>>0)Ve();h[r>>2]=g;h[g+24>>2]=t;h[g+12>>2]=g;h[g+8>>2]=g;return}while(0);r=t+8|0;n=h[r>>2]|0;p=h[10105]|0;if(!(n>>>0>=p>>>0&t>>>0>=p>>>0))Ve();h[n+12>>2]=g;h[r>>2]=g;h[g+8>>2]=n;h[g+12>>2]=t;h[g+24>>2]=0;return}function Iw(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0;r=h[9204]|0;Ow(41580,r,41636);h[10225]=42424;h[10227]=42444;h[10226]=0;e=h[10603]|0;x=0;ke(52,40900+e|0,41580);a=x;x=0;if(a&1){a=Je()|0;us(40908);fi(a|0)}h[40900+(e+72)>>2]=0;h[40900+(e+76)>>2]=-1;n=h[9205]|0;Bw(41684,n,41644);h[10247]=42504;h[10248]=42524;t=h[10623]|0;x=0;ke(52,40988+t|0,41684);a=x;x=0;if(a&1){a=Je()|0;us(40992);fi(a|0)}e=t+72|0;h[40988+e>>2]=0;i=t+76|0;h[40988+i>>2]=-1;a=h[9203]|0;Bw(41732,a,41652);h[10268]=42504;h[10269]=42524;x=0;ke(52,41072+t|0,41732);o=x;x=0;if(o&1){o=Je()|0;us(41076);fi(o|0)}h[41072+e>>2]=0;h[41072+i>>2]=-1;o=h[41072+((h[(h[10268]|0)+-12>>2]|0)+24)>>2]|0;h[10289]=42504;h[10290]=42524;x=0;ke(52,41156+t|0,o|0);o=x;x=0;if(o&1){o=Je()|0;us(41160);fi(o|0)}h[41156+e>>2]=0;h[41156+i>>2]=-1;h[40900+((h[(h[10225]|0)+-12>>2]|0)+72)>>2]=40988;e=41072+((h[(h[10268]|0)+-12>>2]|0)+4)|0;h[e>>2]=h[e>>2]|8192;h[41072+((h[(h[10268]|0)+-12>>2]|0)+72)>>2]=40988;Nw(41780,r,41660);h[10310]=42464;h[10312]=42484;h[10311]=0;e=h[10613]|0;x=0;ke(52,41240+e|0,41780);o=x;x=0;if(o&1){o=Je()|0;bs(41248);fi(o|0)}h[41240+(e+72)>>2]=0;h[41240+(e+76)>>2]=-1;Fw(41836,n,41668);h[10332]=42544;h[10333]=42564;t=h[10633]|0;x=0;ke(52,41328+t|0,41836);o=x;x=0;if(o&1){o=Je()|0;bs(41332);fi(o|0)}e=t+72|0;h[41328+e>>2]=0;i=t+76|0;h[41328+i>>2]=-1;Fw(41884,a,41676);h[10353]=42544;h[10354]=42564;x=0;ke(52,41412+t|0,41884);o=x;x=0;if(o&1){o=Je()|0;bs(41416);fi(o|0)}h[41412+e>>2]=0;h[41412+i>>2]=-1;o=h[41412+((h[(h[10353]|0)+-12>>2]|0)+24)>>2]|0;h[10374]=42544;h[10375]=42564;x=0;ke(52,41496+t|0,o|0);o=x;x=0;if(o&1){o=Je()|0;bs(41500);fi(o|0)}else{h[41496+e>>2]=0;h[41496+i>>2]=-1;h[41240+((h[(h[10310]|0)+-12>>2]|0)+72)>>2]=41328;o=41412+((h[(h[10353]|0)+-12>>2]|0)+4)|0;h[o>>2]=h[o>>2]|8192;h[41412+((h[(h[10353]|0)+-12>>2]|0)+72)>>2]=41328;return}}function Lw(e){e=e|0;x=0;ye(69,40988)|0;e=x;x=0;if(((!(e&1)?(x=0,ye(69,41156)|0,e=x,x=0,!(e&1)):0)?(x=0,ye(70,41328)|0,e=x,x=0,!(e&1)):0)?(x=0,ye(70,41496)|0,e=x,x=0,!(e&1)):0)return;e=Je(0)|0;Wi(e)}function Dw(){Iw(0);yi(163,55213,C|0)|0;return}function Rw(){return}function Ow(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+16|0;a=n+4|0;r=n;gs(e);h[e>>2]=42132;h[e+32>>2]=i;h[e+40>>2]=t;h[e+48>>2]=-1;c[e+52>>0]=0;Od(a,e+4|0);h[r>>2]=h[a>>2];x=0;ke(13,e|0,r|0);t=x;x=0;if(t&1){a=Je()|0;Bd(r);ws(e);fi(a|0)}else{Bd(r);k=n;return}}function Bw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+16|0;a=n+4|0;r=n;gs(e);h[e>>2]=42068;h[e+32>>2]=i;Od(a,e+4|0);h[r>>2]=h[a>>2];x=0;i=Ae(26,r|0,43812)|0;a=x;x=0;if(a&1){a=Je()|0;Bd(r);ws(e);fi(a|0)}else{Bd(r);h[e+36>>2]=i;h[e+40>>2]=t;a=($k[h[(h[i>>2]|0)+28>>2]&127](i)|0)&1;c[e+44>>0]=a;k=n;return}}function Nw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+16|0;a=n+4|0;r=n;Rs(e);h[e>>2]=42004;h[e+32>>2]=i;h[e+40>>2]=t;h[e+48>>2]=-1;c[e+52>>0]=0;Od(a,e+4|0);h[r>>2]=h[a>>2];x=0;ke(11,e|0,r|0);t=x;x=0;if(t&1){a=Je()|0;Bd(r);Ls(e);fi(a|0)}else{Bd(r);k=n;return}}function Fw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0;n=k;k=k+16|0;a=n+4|0;r=n;Rs(e);h[e>>2]=41940;h[e+32>>2]=i;Od(a,e+4|0);h[r>>2]=h[a>>2];x=0;i=Ae(26,r|0,43820)|0;a=x;x=0;if(a&1){a=Je()|0;Bd(r);Ls(e);fi(a|0)}else{Bd(r);h[e+36>>2]=i;h[e+40>>2]=t;a=($k[h[(h[i>>2]|0)+28>>2]&127](i)|0)&1;c[e+44>>0]=a;k=n;return}}function Uw(e){e=e|0;Ls(e);$m(e);return}function Hw(e,i){e=e|0;i=i|0;$k[h[(h[e>>2]|0)+24>>2]&127](e)|0;i=Fd(i,43820)|0;h[e+36>>2]=i;i=($k[h[(h[i>>2]|0)+28>>2]&127](i)|0)&1;c[e+44>>0]=i;return}function zw(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l;t=e+36|0;r=e+40|0;n=s+8|0;a=s;i=e+32|0;e:while(1){e=h[t>>2]|0;e=n_[h[(h[e>>2]|0)+20>>2]&31](e,h[r>>2]|0,s,n,o)|0;u=(h[o>>2]|0)-a|0;if((Vv(s,1,u,h[i>>2]|0)|0)!=(u|0)){e=-1;break}switch(e|0){case 1:break;case 2:{e=-1;break e}default:{f=4;break e}}}if((f|0)==4)e=((zv(h[i>>2]|0)|0)!=0)<<31>>31;k=l;return e|0}function jw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;e:do if(!(c[e+44>>0]|0))if((t|0)>0){r=i;i=0;while(1){if((r_[h[(h[e>>2]|0)+52>>2]&63](e,h[r>>2]|0)|0)==-1)break e;i=i+1|0;if((i|0)<(t|0))r=r+4|0;else break}}else i=0;else i=Vv(i,4,t,h[e+32>>2]|0)|0;while(0);return i|0}function Yw(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+32|0;m=w+16|0;t=w+8|0;d=w+4|0;u=w;b=(i|0)==-1;e:do if(!b){h[t>>2]=i;if(c[e+44>>0]|0)if((Vv(t,4,1,h[e+32>>2]|0)|0)==1){v=11;break}else{t=-1;break}h[d>>2]=m;f=t+4|0;l=e+36|0;n=e+40|0;a=m+8|0;o=m;s=e+32|0;while(1){e=h[l>>2]|0;e=u_[h[(h[e>>2]|0)+12>>2]&15](e,h[n>>2]|0,t,f,u,m,a,d)|0;if((h[u>>2]|0)==(t|0)){t=-1;break e}if((e|0)==3)break;r=(e|0)==1;if(e>>>0>=2){t=-1;break e}e=(h[d>>2]|0)-o|0;if((Vv(m,1,e,h[s>>2]|0)|0)!=(e|0)){t=-1;break e}if(r)t=r?h[u>>2]|0:t;else{v=11;break e}}if((Vv(t,1,1,h[s>>2]|0)|0)!=1)t=-1;else v=11}else v=11;while(0);if((v|0)==11)t=b?0:i;k=w;return t|0}function Vw(e,i){e=e|0;i=i|0;var t=0,r=0;r=Fd(i,43820)|0;t=e+36|0;h[t>>2]=r;r=$k[h[(h[r>>2]|0)+24>>2]&127](r)|0;i=e+44|0;h[i>>2]=r;t=h[t>>2]|0;t=($k[h[(h[t>>2]|0)+28>>2]&127](t)|0)&1;c[e+53>>0]=t;if((h[i>>2]|0)>8)Gc(55239);return}function qw(e){e=e|0;Ls(e);$m(e);return}function Ww(e){e=e|0;return Kw(e,0)|0}function Gw(e){e=e|0;return Kw(e,1)|0}function Xw(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;f=l+16|0;s=l+8|0;r=l+4|0;n=l;a=e+52|0;t=(c[a>>0]|0)!=0;e:do if((i|0)==-1)if(t)i=-1;else{i=h[e+48>>2]|0;c[a>>0]=(i|0)!=-1&1}else{o=e+48|0;i:do if(t){h[r>>2]=h[o>>2];t=h[e+36>>2]|0;switch(u_[h[(h[t>>2]|0)+12>>2]&15](t,h[e+40>>2]|0,r,r+4|0,n,f,f+8|0,s)|0){case 1:case 2:{i=-1;break e}case 3:{c[f>>0]=h[o>>2];h[s>>2]=f+1;break}default:{}}t=e+32|0;while(1){r=h[s>>2]|0;if(r>>>0<=f>>>0)break i;e=r+-1|0;h[s>>2]=e;if((Xv(c[e>>0]|0,h[t>>2]|0)|0)==-1){i=-1;break e}}}while(0);h[o>>2]=i;c[a>>0]=1}while(0);k=l;return i|0}function Kw(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0;v=k;k=k+32|0;b=v+16|0;m=v+8|0;l=v+4|0;u=v;n=e+52|0;e:do if(c[n>>0]|0){r=e+48|0;t=h[r>>2]|0;if(i){h[r>>2]=-1;c[n>>0]=0}}else{t=h[e+44>>2]|0;t=(t|0)>1?t:1;d=e+32|0;if((t|0)>0){n=0;do{r=qv(h[d>>2]|0)|0;if((r|0)==-1){t=-1;break e}c[b+n>>0]=r;n=n+1|0}while((n|0)<(t|0))}i:do if(!(c[e+53>>0]|0)){o=e+40|0;s=e+36|0;f=m+4|0;t:while(1){w=h[o>>2]|0;n=w;r=h[n>>2]|0;n=h[n+4>>2]|0;p=h[s>>2]|0;a=b+t|0;switch(u_[h[(h[p>>2]|0)+16>>2]&15](p,w,b,a,l,m,f,u)|0){case 2:{t=-1;break e}case 3:break t;case 1:break;default:break i}p=h[o>>2]|0;h[p>>2]=r;h[p+4>>2]=n;if((t|0)==8){t=-1;break e}r=qv(h[d>>2]|0)|0;if((r|0)==-1){t=-1;break e}c[a>>0]=r;t=t+1|0}h[m>>2]=c[b>>0]}else h[m>>2]=c[b>>0];while(0);if(i){t=h[m>>2]|0;h[e+48>>2]=t;break}while(1){if((t|0)<=0)break;t=t+-1|0;if((Xv(c[b+t>>0]|0,h[d>>2]|0)|0)==-1){t=-1;break e}}t=h[m>>2]|0}while(0);k=v;return t|0}function $w(e){e=e|0;ws(e);$m(e);return}function Jw(e,i){e=e|0;i=i|0;$k[h[(h[e>>2]|0)+24>>2]&127](e)|0;i=Fd(i,43812)|0;h[e+36>>2]=i;i=($k[h[(h[i>>2]|0)+28>>2]&127](i)|0)&1;c[e+44>>0]=i;return}function Qw(e){e=e|0;var i=0,t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0;l=k;k=k+16|0;s=l+8|0;o=l;t=e+36|0;r=e+40|0;n=s+8|0;a=s;i=e+32|0;e:while(1){e=h[t>>2]|0;e=n_[h[(h[e>>2]|0)+20>>2]&31](e,h[r>>2]|0,s,n,o)|0;u=(h[o>>2]|0)-a|0;if((Vv(s,1,u,h[i>>2]|0)|0)!=(u|0)){e=-1;break}switch(e|0){case 1:break;case 2:{e=-1;break e}default:{f=4;break e}}}if((f|0)==4)e=((zv(h[i>>2]|0)|0)!=0)<<31>>31;k=l;return e|0}function Zw(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;e:do if(!(c[e+44>>0]|0))if((t|0)>0){r=i;i=0;while(1){if((r_[h[(h[e>>2]|0)+52>>2]&63](e,m[r>>0]|0)|0)==-1)break e;i=i+1|0;if((i|0)<(t|0))r=r+1|0;else break}}else i=0;else i=Vv(i,1,t,h[e+32>>2]|0)|0;while(0);return i|0}function ep(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0;w=k;k=k+32|0;m=w+16|0;t=w+8|0;d=w+4|0;u=w;b=(i|0)==-1;e:do if(!b){c[t>>0]=i;if(c[e+44>>0]|0)if((Vv(t,1,1,h[e+32>>2]|0)|0)==1){v=11;break}else{t=-1;break}h[d>>2]=m;l=t+1|0;n=e+36|0;a=e+40|0;o=m+8|0;s=m;f=e+32|0;while(1){e=h[n>>2]|0;e=u_[h[(h[e>>2]|0)+12>>2]&15](e,h[a>>2]|0,t,l,u,m,o,d)|0;if((h[u>>2]|0)==(t|0)){t=-1;break e}if((e|0)==3)break;r=(e|0)==1;if(e>>>0>=2){t=-1;break e}e=(h[d>>2]|0)-s|0;if((Vv(m,1,e,h[f>>2]|0)|0)!=(e|0)){t=-1;break e}if(r)t=r?h[u>>2]|0:t;else{v=11;break e}}if((Vv(t,1,1,h[f>>2]|0)|0)!=1)t=-1;else v=11}else v=11;while(0);if((v|0)==11)t=b?0:i;k=w;return t|0}function ip(e,i){e=e|0;i=i|0;var t=0,r=0;r=Fd(i,43812)|0;t=e+36|0;h[t>>2]=r;r=$k[h[(h[r>>2]|0)+24>>2]&127](r)|0;i=e+44|0;h[i>>2]=r;t=h[t>>2]|0;t=($k[h[(h[t>>2]|0)+28>>2]&127](t)|0)&1;c[e+53>>0]=t;if((h[i>>2]|0)>8)Gc(55239);return}function tp(e){e=e|0;ws(e);$m(e);return}function rp(e){e=e|0;return wo(e,0)|0}function np(e){e=e|0;return wo(e,1)|0}function ap(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0,l=0;l=k;k=k+32|0;f=l+16|0;s=l+4|0;r=l+8|0;n=l;a=e+52|0;t=(c[a>>0]|0)!=0;e:do if((i|0)==-1)if(t)i=-1;else{i=h[e+48>>2]|0;c[a>>0]=(i|0)!=-1&1}else{o=e+48|0;i:do if(t){c[r>>0]=h[o>>2];t=h[e+36>>2]|0;switch(u_[h[(h[t>>2]|0)+12>>2]&15](t,h[e+40>>2]|0,r,r+1|0,n,f,f+8|0,s)|0){case 1:case 2:{i=-1;break e}case 3:{c[f>>0]=h[o>>2];h[s>>2]=f+1;break}default:{}}t=e+32|0;while(1){r=h[s>>2]|0;if(r>>>0<=f>>>0)break i;e=r+-1|0;h[s>>2]=e;if((Xv(c[e>>0]|0,h[t>>2]|0)|0)==-1){i=-1;break e}}}while(0);h[o>>2]=i;c[a>>0]=1}while(0);k=l;return i|0}function op(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;M=k;k=k+320|0;v=M+208|0;o=M+200|0;E=M+24|0;C=M+12|0;p=M+8|0;y=M+40|0;T=M+4|0;g=M;w=cm(r)|0;wl(E,r,v,o);h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);b=x;x=0;e:do if(!(b&1)){d=C+8|0;m=C+1|0;e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e;h[T>>2]=y;h[g>>2]=0;b=C+4|0;u=h[o>>2]|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){S=25;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;r=0;s=1}else{r=o;s=0}}else{r=0;s=1}f=h[t>>2]|0;do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0)){x=0;o=ye(h[(h[f>>2]|0)+36>>2]|0,f|0)|0;l=x;x=0;if(l&1){S=25;break i}}else o=h[o>>2]|0;if((o|0)!=-1)if(s)break;else{o=f;break i}else{h[t>>2]=0;S=17;break}}else S=17;while(0);if((S|0)==17){S=0;if(s){o=0;break}else f=0}o=c[C>>0]|0;o=(o&1)==0?(o&255)>>>1:h[b>>2]|0;if((h[p>>2]|0)==(e+o|0)){x=0;Re(6,C|0,o<<1|0,0);l=x;x=0;if(l&1){S=25;break}if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);l=x;x=0;if(l&1){S=25;break}e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e+o}s=r+12|0;o=h[s>>2]|0;l=r+16|0;if((o|0)==(h[l>>2]|0)){x=0;o=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=25;break}}else o=h[o>>2]|0;if(hl(o,w,e,p,g,u,E,y,T,v)|0){o=f;break}o=h[s>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=25;break}else{o=r;continue}}else{h[s>>2]=o+4;o=r;continue}}if((S|0)==25){e=Je()|0;break}A=c[E>>0]|0;if((((A&1)==0?(A&255)>>>1:h[E+4>>2]|0)|0)!=0?(_=h[T>>2]|0,(_-y|0)<160):0){A=h[g>>2]|0;h[T>>2]=_+4;h[_>>2]=A}x=0;e=De(14,e|0,h[p>>2]|0,n|0,w|0)|0;A=x;x=0;if(!(A&1)){h[a>>2]=e;$c(E,y,h[T>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{S=53;break}else{h[t>>2]=0;S=51;break}}else S=51;while(0);if((S|0)==51?r:0)S=53;if((S|0)==53)h[n>>2]=h[n>>2]|2;A=h[i>>2]|0;Uo(C);Uo(E);k=M;return A|0}else S=26}else S=26;while(0);if((S|0)==26)e=Je()|0;Uo(C);Uo(E);fi(e|0);return 0}function sp(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;M=k;k=k+320|0;v=M+208|0;o=M+200|0;E=M+24|0;C=M+12|0;p=M+8|0;y=M+40|0;T=M+4|0;g=M;w=cm(r)|0;wl(E,r,v,o);h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);b=x;x=0;e:do if(!(b&1)){d=C+8|0;m=C+1|0;e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e;h[T>>2]=y;h[g>>2]=0;b=C+4|0;u=h[o>>2]|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){S=25;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;r=0;s=1}else{r=o;s=0}}else{r=0;s=1}f=h[t>>2]|0;do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0)){x=0;o=ye(h[(h[f>>2]|0)+36>>2]|0,f|0)|0;l=x;x=0;if(l&1){S=25;break i}}else o=h[o>>2]|0;if((o|0)!=-1)if(s)break;else{o=f;break i}else{h[t>>2]=0;S=17;break}}else S=17;while(0);if((S|0)==17){S=0;if(s){o=0;break}else f=0}o=c[C>>0]|0;o=(o&1)==0?(o&255)>>>1:h[b>>2]|0;if((h[p>>2]|0)==(e+o|0)){x=0;Re(6,C|0,o<<1|0,0);l=x;x=0;if(l&1){S=25;break}if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);l=x;x=0;if(l&1){S=25;break}e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e+o}s=r+12|0;o=h[s>>2]|0;l=r+16|0;if((o|0)==(h[l>>2]|0)){x=0;o=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=25;break}}else o=h[o>>2]|0;if(hl(o,w,e,p,g,u,E,y,T,v)|0){o=f;break}o=h[s>>2]|0;if((o|0)==(h[l>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=25;break}else{o=r;continue}}else{h[s>>2]=o+4;o=r;continue}}if((S|0)==25){e=Je()|0;break}A=c[E>>0]|0;if((((A&1)==0?(A&255)>>>1:h[E+4>>2]|0)|0)!=0?(_=h[T>>2]|0,(_-y|0)<160):0){A=h[g>>2]|0;h[T>>2]=_+4;h[_>>2]=A}x=0;e=De(15,e|0,h[p>>2]|0,n|0,w|0)|0;A=x;x=0;if(!(A&1)){h[a>>2]=e;$c(E,y,h[T>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;A=x;x=0;if(A&1){S=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{S=53;break}else{h[t>>2]=0;S=51;break}}else S=51;while(0);if((S|0)==51?r:0)S=53;if((S|0)==53)h[n>>2]=h[n>>2]|2;A=h[i>>2]|0;Uo(C);Uo(E);k=M;return A|0}else S=26}else S=26;while(0);if((S|0)==26)e=Je()|0;Uo(C);Uo(E);fi(e|0);return 0}function fp(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0;M=k;k=k+320|0;v=M+208|0;o=M+200|0;E=M+24|0;C=M+12|0;p=M+8|0;y=M+40|0;T=M+4|0;g=M;w=cm(r)|0;wl(E,r,v,o);h[C>>2]=0;h[C+4>>2]=0;h[C+8>>2]=0;if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);b=x;x=0;e:do if(!(b&1)){d=C+8|0;m=C+1|0;e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e;h[T>>2]=y;h[g>>2]=0;b=C+4|0;u=h[o>>2]|0;o=h[i>>2]|0;i:while(1){if(o){r=h[o+12>>2]|0;if((r|0)==(h[o+16>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;l=x;x=0;if(l&1){S=25;break}}else r=h[r>>2]|0;if((r|0)==-1){h[i>>2]=0;o=0;f=1}else f=0}else{o=0;f=1}s=h[t>>2]|0;do if(s){r=h[s+12>>2]|0;if((r|0)==(h[s+16>>2]|0)){x=0;r=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;l=x;x=0;if(l&1){S=25;break i}}else r=h[r>>2]|0;if((r|0)!=-1)if(f)break;else break i;else{h[t>>2]=0;S=17;break}}else S=17;while(0);if((S|0)==17){S=0;if(f){s=0;break}else s=0}r=c[C>>0]|0;r=(r&1)==0?(r&255)>>>1:h[b>>2]|0;if((h[p>>2]|0)==(e+r|0)){x=0;Re(6,C|0,r<<1|0,0);l=x;x=0;if(l&1){S=25;break}if(!(c[C>>0]&1))e=10;else e=(h[C>>2]&-2)+-1|0;x=0;Re(6,C|0,e|0,0);l=x;x=0;if(l&1){S=25;break}e=(c[C>>0]&1)==0?m:h[d>>2]|0;h[p>>2]=e+r}f=o+12|0;r=h[f>>2]|0;l=o+16|0;if((r|0)==(h[l>>2]|0)){x=0;r=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=25;break}}else r=h[r>>2]|0;if(hl(r,w,e,p,g,u,E,y,T,v)|0)break;r=h[f>>2]|0;if((r|0)==(h[l>>2]|0)){x=0;ye(h[(h[o>>2]|0)+40>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=25;break}else continue}else{h[f>>2]=r+4;continue}}if((S|0)==25){e=Je()|0;break}A=c[E>>0]|0;if((((A&1)==0?(A&255)>>>1:h[E+4>>2]|0)|0)!=0?(_=h[T>>2]|0,(_-y|0)<160):0){A=h[g>>2]|0;h[T>>2]=_+4;h[_>>2]=A}x=0;e=De(16,e|0,h[p>>2]|0,n|0,w|0)|0;r=z;A=x;x=0;if(!(A&1)){A=a;h[A>>2]=e;h[A+4>>2]=r;$c(E,y,h[T>>2]|0,n);if(o){e=h[o+12>>2]|0;if((e|0)==(h[o+16>>2]|0)){x=0;e=ye(h[(h[o>>2]|0)+36>>2]|0,o|0)|0;A=x;x=0;if(A&1){S=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(s){e=h[s+12>>2]|0;if((e|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;A=x;x=0;if(A&1){S=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{S=53;break}else{h[t>>2]=0;S=51;break}}else S=51;while(0);if((S|0)==51?r:0)S=53;if((S|0)==53)h[n>>2]=h[n>>2]|2;A=h[i>>2]|0;Uo(C);Uo(E);k=M;return A|0}else S=26}else S=26;while(0);if((S|0)==26)e=Je()|0;Uo(C);Uo(E);fi(e|0);return 0}function lp(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,p=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0;A=k;k=k+352|0;g=A+208|0;s=A+40|0;f=A+36|0;I=A+24|0;P=A+12|0;y=A+8|0;E=A+48|0;S=A+4|0;T=A;M=A+337|0;_=A+336|0;pl(I,r,g,s,f);h[P>>2]=0;h[P+4>>2]=0;h[P+8>>2]=0;if(!(c[P>>0]&1))e=10;else e=(h[P>>2]&-2)+-1|0;x=0;Re(6,P|0,e|0,0);p=x;x=0;e:do if(!(p&1)){b=P+8|0;v=P+1|0;e=(c[P>>0]&1)==0?v:h[b>>2]|0;h[y>>2]=e;h[S>>2]=E;h[T>>2]=0;c[M>>0]=1;c[_>>0]=69;p=P+4|0;m=h[s>>2]|0;d=h[f>>2]|0;r=h[i>>2]|0;i:while(1){if(r){s=h[r+12>>2]|0;if((s|0)==(h[r+16>>2]|0)){x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;u=x;x=0;if(u&1){L=25;break}}else s=h[s>>2]|0;if((s|0)==-1){h[i>>2]=0;r=0;l=1}else l=0}else{r=0;l=1}s=h[t>>2]|0;do if(s){f=h[s+12>>2]|0;if((f|0)==(h[s+16>>2]|0)){x=0;f=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;u=x;x=0;if(u&1){L=25;break i}}else f=h[f>>2]|0;if((f|0)!=-1)if(l)break;else break i;else{h[t>>2]=0;L=17;break}}else L=17;while(0);if((L|0)==17){L=0;if(l){s=0;break}else s=0}f=c[P>>0]|0;f=(f&1)==0?(f&255)>>>1:h[p>>2]|0;if((h[y>>2]|0)==(e+f|0)){x=0;Re(6,P|0,f<<1|0,0);u=x;x=0;if(u&1){L=25;break}if(!(c[P>>0]&1))e=10;else e=(h[P>>2]&-2)+-1|0;x=0;Re(6,P|0,e|0,0);u=x;x=0;if(u&1){L=25;break}e=(c[P>>0]&1)==0?v:h[b>>2]|0;h[y>>2]=e+f}l=r+12|0;f=h[l>>2]|0;u=r+16|0;if((f|0)==(h[u>>2]|0)){x=0;f=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=25;break}}else f=h[f>>2]|0;if(gl(f,M,_,e,y,m,d,I,E,S,T,g)|0)break;s=h[l>>2]|0;if((s|0)==(h[u>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=25;break}else continue}else{h[l>>2]=s+4;continue}}if((L|0)==25){e=Je()|0;break}D=c[I>>0]|0;if(!((c[M>>0]|0)==0?1:(((D&1)==0?(D&255)>>>1:h[I+4>>2]|0)|0)==0)?(C=h[S>>2]|0,(C-E|0)<160):0){D=h[T>>2]|0;h[S>>2]=C+4;h[C>>2]=D}x=0;o=+Ie(1,e|0,h[y>>2]|0,n|0);D=x;x=0;if(!(D&1)){w[a>>2]=o;$c(I,E,h[S>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(s){e=h[s+12>>2]|0;if((e|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;D=x;x=0;if(D&1){L=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{L=53;break}else{h[t>>2]=0;L=51;break}}else L=51;while(0);if((L|0)==51?r:0)L=53;if((L|0)==53)h[n>>2]=h[n>>2]|2;D=h[i>>2]|0;Uo(P);Uo(I);k=A;return D|0}else L=26}else L=26;while(0);if((L|0)==26)e=Je()|0;Uo(P);Uo(I);fi(e|0);return 0}function up(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0;A=k;k=k+352|0;g=A+208|0;s=A+40|0;f=A+36|0;I=A+24|0;P=A+12|0;y=A+8|0;E=A+48|0;S=A+4|0;T=A;M=A+337|0;_=A+336|0;pl(I,r,g,s,f);h[P>>2]=0;h[P+4>>2]=0;h[P+8>>2]=0;if(!(c[P>>0]&1))e=10;else e=(h[P>>2]&-2)+-1|0;x=0;Re(6,P|0,e|0,0);w=x;x=0;e:do if(!(w&1)){b=P+8|0;v=P+1|0;e=(c[P>>0]&1)==0?v:h[b>>2]|0;h[y>>2]=e;h[S>>2]=E;h[T>>2]=0;c[M>>0]=1;c[_>>0]=69;w=P+4|0;m=h[s>>2]|0;d=h[f>>2]|0;r=h[i>>2]|0;i:while(1){if(r){s=h[r+12>>2]|0;if((s|0)==(h[r+16>>2]|0)){x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;u=x;x=0;if(u&1){L=25;break}}else s=h[s>>2]|0;if((s|0)==-1){h[i>>2]=0;r=0;l=1}else l=0}else{r=0;l=1}s=h[t>>2]|0;do if(s){f=h[s+12>>2]|0;if((f|0)==(h[s+16>>2]|0)){x=0;f=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;u=x;x=0;if(u&1){L=25;break i}}else f=h[f>>2]|0;if((f|0)!=-1)if(l)break;else break i;else{h[t>>2]=0;L=17;break}}else L=17;while(0);if((L|0)==17){L=0;if(l){s=0;break}else s=0}f=c[P>>0]|0;f=(f&1)==0?(f&255)>>>1:h[w>>2]|0;if((h[y>>2]|0)==(e+f|0)){x=0;Re(6,P|0,f<<1|0,0);u=x;x=0;if(u&1){L=25;break}if(!(c[P>>0]&1))e=10;else e=(h[P>>2]&-2)+-1|0;x=0;Re(6,P|0,e|0,0);u=x;x=0;if(u&1){L=25;break}e=(c[P>>0]&1)==0?v:h[b>>2]|0;h[y>>2]=e+f}l=r+12|0;f=h[l>>2]|0;u=r+16|0;if((f|0)==(h[u>>2]|0)){x=0;f=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=25;break}}else f=h[f>>2]|0;if(gl(f,M,_,e,y,m,d,I,E,S,T,g)|0)break;s=h[l>>2]|0;if((s|0)==(h[u>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=25;break}else continue}else{h[l>>2]=s+4;continue}}if((L|0)==25){e=Je()|0;break}D=c[I>>0]|0;if(!((c[M>>0]|0)==0?1:(((D&1)==0?(D&255)>>>1:h[I+4>>2]|0)|0)==0)?(C=h[S>>2]|0,(C-E|0)<160):0){D=h[T>>2]|0;h[S>>2]=C+4;h[C>>2]=D}x=0;o=+Ie(2,e|0,h[y>>2]|0,n|0);D=x;x=0;if(!(D&1)){p[a>>3]=o;$c(I,E,h[S>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(s){e=h[s+12>>2]|0;if((e|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;D=x;x=0;if(D&1){L=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{L=53;break}else{h[t>>2]=0;L=51;break}}else L=51;while(0);if((L|0)==51?r:0)L=53;if((L|0)==53)h[n>>2]=h[n>>2]|2;D=h[i>>2]|0;Uo(P);Uo(I);k=A;return D|0}else L=26}else L=26;while(0);if((L|0)==26)e=Je()|0;Uo(P);Uo(I);fi(e|0);return 0}function cp(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0,b=0,v=0,w=0,g=0,_=0,y=0,T=0,M=0,C=0,E=0,S=0,A=0,P=0,I=0,L=0,D=0;A=k;k=k+352|0;g=A+208|0;s=A+40|0;f=A+36|0;I=A+24|0;P=A+12|0;y=A+8|0;E=A+48|0;S=A+4|0;T=A;M=A+337|0;_=A+336|0;pl(I,r,g,s,f);h[P>>2]=0;h[P+4>>2]=0;h[P+8>>2]=0;if(!(c[P>>0]&1))e=10;else e=(h[P>>2]&-2)+-1|0;x=0;Re(6,P|0,e|0,0);w=x;x=0;e:do if(!(w&1)){b=P+8|0;v=P+1|0;e=(c[P>>0]&1)==0?v:h[b>>2]|0;h[y>>2]=e;h[S>>2]=E;h[T>>2]=0;c[M>>0]=1;c[_>>0]=69;w=P+4|0;m=h[s>>2]|0;d=h[f>>2]|0;r=h[i>>2]|0;i:while(1){if(r){s=h[r+12>>2]|0;if((s|0)==(h[r+16>>2]|0)){x=0;s=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;u=x;x=0;if(u&1){L=25;break}}else s=h[s>>2]|0;if((s|0)==-1){h[i>>2]=0;r=0;l=1}else l=0}else{r=0;l=1}s=h[t>>2]|0;do if(s){f=h[s+12>>2]|0;if((f|0)==(h[s+16>>2]|0)){x=0;f=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;u=x;x=0;if(u&1){L=25;break i}}else f=h[f>>2]|0;if((f|0)!=-1)if(l)break;else break i;else{h[t>>2]=0;L=17;break}}else L=17;while(0);if((L|0)==17){L=0;if(l){s=0;break}else s=0}f=c[P>>0]|0;f=(f&1)==0?(f&255)>>>1:h[w>>2]|0;if((h[y>>2]|0)==(e+f|0)){x=0;Re(6,P|0,f<<1|0,0);u=x;x=0;if(u&1){L=25;break}if(!(c[P>>0]&1))e=10;else e=(h[P>>2]&-2)+-1|0;x=0;Re(6,P|0,e|0,0);u=x;x=0;if(u&1){L=25;break}e=(c[P>>0]&1)==0?v:h[b>>2]|0;h[y>>2]=e+f}l=r+12|0;f=h[l>>2]|0;u=r+16|0;if((f|0)==(h[u>>2]|0)){x=0;f=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=25;break}}else f=h[f>>2]|0;if(gl(f,M,_,e,y,m,d,I,E,S,T,g)|0)break;s=h[l>>2]|0;if((s|0)==(h[u>>2]|0)){x=0;ye(h[(h[r>>2]|0)+40>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=25;break}else continue}else{h[l>>2]=s+4;continue}}if((L|0)==25){e=Je()|0;break}D=c[I>>0]|0;if(!((c[M>>0]|0)==0?1:(((D&1)==0?(D&255)>>>1:h[I+4>>2]|0)|0)==0)?(C=h[S>>2]|0,(C-E|0)<160):0){D=h[T>>2]|0;h[S>>2]=C+4;h[C>>2]=D}x=0;o=+Ie(3,e|0,h[y>>2]|0,n|0);D=x;x=0;if(!(D&1)){p[a>>3]=o;$c(I,E,h[S>>2]|0,n);if(r){e=h[r+12>>2]|0;if((e|0)==(h[r+16>>2]|0)){x=0;e=ye(h[(h[r>>2]|0)+36>>2]|0,r|0)|0;D=x;x=0;if(D&1){L=26;break}}else e=h[e>>2]|0;if((e|0)==-1){h[i>>2]=0;r=1}else r=0}else r=1;do if(s){e=h[s+12>>2]|0;if((e|0)==(h[s+16>>2]|0)){x=0;e=ye(h[(h[s>>2]|0)+36>>2]|0,s|0)|0;D=x;x=0;if(D&1){L=26;break e}}else e=h[e>>2]|0;if((e|0)!=-1)if(r)break;else{L=53;break}else{h[t>>2]=0;L=51;break}}else L=51;while(0);if((L|0)==51?r:0)L=53;if((L|0)==53)h[n>>2]=h[n>>2]|2;D=h[i>>2]|0;Uo(P);Uo(I);k=A;return D|0}else L=26}else L=26;while(0);if((L|0)==26)e=Je()|0;Uo(P);Uo(I);fi(e|0);return 0}function dp(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0;a=k;k=k+16|0;o=a;h[o>>2]=n;n=uv(t)|0;t=Qv(e,i,r,o)|0;if((n|0)!=0?(x=0,ye(74,n|0)|0,o=x,x=0,o&1):0){o=Je(0)|0;Wi(o)}k=a;return t|0}function hp(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=k;k=k+16|0;a=n;h[a>>2]=r;r=uv(i)|0;x=0;i=Me(37,e|0,t|0,a|0)|0;e=x;x=0;if(e&1){i=Je()|0;if((r|0)!=0?(x=0,ye(74,r|0)|0,a=x,x=0,a&1):0){a=Je(0)|0;Wi(a)}fi(i|0)}else{if((r|0)!=0?(x=0,ye(74,r|0)|0,a=x,x=0,a&1):0){a=Je(0)|0;Wi(a)}k=n;return i|0}return 0}function mp(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;var o=0,s=0,f=0,l=0,u=0,d=0,m=0;d=k;k=k+16|0;u=d;o=h[e>>2]|0;e:do if(!o)o=0;else{m=i;f=r-m>>2;l=n+12|0;s=h[l>>2]|0;f=(s|0)>(f|0)?s-f|0:0;s=t;m=s-m|0;n=m>>2;if((m|0)>0?(Qk[h[(h[o>>2]|0)+48>>2]&63](o,i,n)|0)!=(n|0):0){h[e>>2]=0;o=0;break}do if((f|0)>0){Qo(u,f,a);x=0;n=Me(h[(h[o>>2]|0)+48>>2]|0,o|0,((c[u>>0]&1)==0?u+4|0:h[u+8>>2]|0)|0,f|0)|0;m=x;x=0;if(m&1){m=Je()|0;Zo(u);fi(m|0)}if((n|0)==(f|0)){Zo(u);break}else{h[e>>2]=0;Zo(u);o=0;break e}}while(0);m=r-s|0;r=m>>2;if((m|0)>0?(Qk[h[(h[o>>2]|0)+48>>2]&63](o,t,r)|0)!=(r|0):0){h[e>>2]=0;o=0;break}h[l>>2]=0}while(0);k=d;return o|0}function bp(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,b=0,v=0,w=0;a=h[e>>2]|0;do if(a){if((h[a+12>>2]|0)==(h[a+16>>2]|0))if(($k[h[(h[a>>2]|0)+36>>2]&127](a)|0)==-1){h[e>>2]=0;a=0;break}else{a=h[e>>2]|0;break}}else a=0;while(0);o=(a|0)==0;a=h[i>>2]|0;do if(a){if((h[a+12>>2]|0)==(h[a+16>>2]|0)?($k[h[(h[a>>2]|0)+36>>2]&127](a)|0)==-1:0){h[i>>2]=0;w=11;break}if(o)w=13;else w=12}else w=11;while(0);if((w|0)==11)if(o)w=12;else{a=0;w=13}e:do if((w|0)==12){h[t>>2]=h[t>>2]|6;a=0}else if((w|0)==13){o=h[e>>2]|0;s=h[o+12>>2]|0;if((s|0)==(h[o+16>>2]|0))o=$k[h[(h[o>>2]|0)+36>>2]&127](o)|0;else o=m[s>>0]|0;s=o&255;if(s<<24>>24>-1?(v=r+8|0,(d[(h[v>>2]|0)+(o<<24>>24<<1)>>1]&2048)!=0):0){l=(Qk[h[(h[r>>2]|0)+36>>2]&63](r,s,0)|0)<<24>>24;o=h[e>>2]|0;s=o+12|0;f=h[s>>2]|0;if((f|0)==(h[o+16>>2]|0)){$k[h[(h[o>>2]|0)+40>>2]&127](o)|0;c=n;u=a;n=a;a=l}else{h[s>>2]=f+1;c=n;u=a;n=a;a=l}while(1){a=a+-48|0;b=c+-1|0;o=h[e>>2]|0;do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0))if(($k[h[(h[o>>2]|0)+36>>2]&127](o)|0)==-1){
h[e>>2]=0;o=0;break}else{o=h[e>>2]|0;break}}else o=0;while(0);f=(o|0)==0;if(n)if((h[n+12>>2]|0)==(h[n+16>>2]|0))if(($k[h[(h[n>>2]|0)+36>>2]&127](n)|0)==-1){h[i>>2]=0;s=0;n=0}else{s=u;n=u}else s=u;else{s=u;n=0}o=h[e>>2]|0;if(!((c|0)>1&(f^(n|0)==0)))break;f=h[o+12>>2]|0;if((f|0)==(h[o+16>>2]|0))o=$k[h[(h[o>>2]|0)+36>>2]&127](o)|0;else o=m[f>>0]|0;f=o&255;if(f<<24>>24<=-1)break e;if(!(d[(h[v>>2]|0)+(o<<24>>24<<1)>>1]&2048))break e;a=((Qk[h[(h[r>>2]|0)+36>>2]&63](r,f,0)|0)<<24>>24)+(a*10|0)|0;o=h[e>>2]|0;f=o+12|0;l=h[f>>2]|0;if((l|0)==(h[o+16>>2]|0)){$k[h[(h[o>>2]|0)+40>>2]&127](o)|0;c=b;u=s;continue}else{h[f>>2]=l+1;c=b;u=s;continue}}do if(o){if((h[o+12>>2]|0)==(h[o+16>>2]|0))if(($k[h[(h[o>>2]|0)+36>>2]&127](o)|0)==-1){h[e>>2]=0;o=0;break}else{o=h[e>>2]|0;break}}else o=0;while(0);o=(o|0)==0;do if(s){if((h[s+12>>2]|0)==(h[s+16>>2]|0)?($k[h[(h[s>>2]|0)+36>>2]&127](s)|0)==-1:0){h[i>>2]=0;w=50;break}if(o)break e}else w=50;while(0);if((w|0)==50?!o:0)break;h[t>>2]=h[t>>2]|2;break}h[t>>2]=h[t>>2]|4;a=0}while(0);return a|0}function vp(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0;a=h[e>>2]|0;do if(a){o=h[a+12>>2]|0;if((o|0)==(h[a+16>>2]|0))a=$k[h[(h[a>>2]|0)+36>>2]&127](a)|0;else a=h[o>>2]|0;if((a|0)==-1){h[e>>2]=0;s=1;break}else{s=(h[e>>2]|0)==0;break}}else s=1;while(0);o=h[i>>2]|0;do if(o){a=h[o+12>>2]|0;if((a|0)==(h[o+16>>2]|0))a=$k[h[(h[o>>2]|0)+36>>2]&127](o)|0;else a=h[a>>2]|0;if((a|0)!=-1)if(s){m=17;break}else{m=16;break}else{h[i>>2]=0;m=14;break}}else m=14;while(0);if((m|0)==14)if(s)m=16;else{o=0;m=17}e:do if((m|0)==16){h[t>>2]=h[t>>2]|6;a=0}else if((m|0)==17){a=h[e>>2]|0;s=h[a+12>>2]|0;if((s|0)==(h[a+16>>2]|0))a=$k[h[(h[a>>2]|0)+36>>2]&127](a)|0;else a=h[s>>2]|0;if(!(Qk[h[(h[r>>2]|0)+12>>2]&63](r,2048,a)|0)){h[t>>2]=h[t>>2]|4;a=0;break}a=(Qk[h[(h[r>>2]|0)+52>>2]&63](r,a,0)|0)<<24>>24;s=h[e>>2]|0;f=s+12|0;l=h[f>>2]|0;if((l|0)==(h[s+16>>2]|0)){$k[h[(h[s>>2]|0)+40>>2]&127](s)|0;c=n;u=o;f=o}else{h[f>>2]=l+4;c=n;u=o;f=o}while(1){a=a+-48|0;d=c+-1|0;o=h[e>>2]|0;do if(o){s=h[o+12>>2]|0;if((s|0)==(h[o+16>>2]|0))o=$k[h[(h[o>>2]|0)+36>>2]&127](o)|0;else o=h[s>>2]|0;if((o|0)==-1){h[e>>2]=0;l=1;break}else{l=(h[e>>2]|0)==0;break}}else l=1;while(0);do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0))o=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else o=h[o>>2]|0;if((o|0)==-1){h[i>>2]=0;f=0;n=0;o=1;break}else{f=u;n=u;o=(u|0)==0;break}}else{f=u;n=0;o=1}while(0);s=h[e>>2]|0;if(!((c|0)>1&(l^o)))break;o=h[s+12>>2]|0;if((o|0)==(h[s+16>>2]|0))o=$k[h[(h[s>>2]|0)+36>>2]&127](s)|0;else o=h[o>>2]|0;if(!(Qk[h[(h[r>>2]|0)+12>>2]&63](r,2048,o)|0))break e;a=((Qk[h[(h[r>>2]|0)+52>>2]&63](r,o,0)|0)<<24>>24)+(a*10|0)|0;o=h[e>>2]|0;s=o+12|0;l=h[s>>2]|0;if((l|0)==(h[o+16>>2]|0)){$k[h[(h[o>>2]|0)+40>>2]&127](o)|0;c=d;u=f;f=n;continue}else{h[s>>2]=l+4;c=d;u=f;f=n;continue}}do if(s){o=h[s+12>>2]|0;if((o|0)==(h[s+16>>2]|0))o=$k[h[(h[s>>2]|0)+36>>2]&127](s)|0;else o=h[o>>2]|0;if((o|0)==-1){h[e>>2]=0;s=1;break}else{s=(h[e>>2]|0)==0;break}}else s=1;while(0);do if(f){o=h[f+12>>2]|0;if((o|0)==(h[f+16>>2]|0))o=$k[h[(h[f>>2]|0)+36>>2]&127](f)|0;else o=h[o>>2]|0;if((o|0)!=-1)if(s)break e;else break;else{h[i>>2]=0;m=60;break}}else m=60;while(0);if((m|0)==60?!s:0)break;h[t>>2]=h[t>>2]|2}while(0);return a|0}function wp(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;a=e+4|0;r=(h[a>>2]|0)!=165;s=h[e>>2]|0;o=s;n=(h[t>>2]|0)-o|0;n=n>>>0<2147483647?n<<1:-1;o=(h[i>>2]|0)-o|0;s=Sw(r?s:0,n)|0;if(!s)Fb();do if(!r){r=h[e>>2]|0;h[e>>2]=s;if(r){x=0;ge(h[a>>2]|0,r|0);s=x;x=0;if(s&1){s=Je(0)|0;Wi(s)}else{f=h[e>>2]|0;break}}else f=s}else{h[e>>2]=s;f=s}while(0);h[a>>2]=177;h[i>>2]=f+o;h[t>>2]=(h[e>>2]|0)+n;return}function pp(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;a=e+4|0;r=(h[a>>2]|0)!=165;s=h[e>>2]|0;o=s;n=(h[t>>2]|0)-o|0;n=n>>>0<2147483647?n<<1:-1;o=(h[i>>2]|0)-o>>2;s=Sw(r?s:0,n)|0;if(!s)Fb();do if(!r){r=h[e>>2]|0;h[e>>2]=s;if(r){x=0;ge(h[a>>2]|0,r|0);s=x;x=0;if(s&1){s=Je(0)|0;Wi(s)}else{f=h[e>>2]|0;break}}else f=s}else{h[e>>2]=s;f=s}while(0);h[a>>2]=177;h[i>>2]=f+(o<<2);h[t>>2]=(h[e>>2]|0)+(n>>>2<<2);return}function gp(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;a=i;r=c[e>>0]|0;if(!(r&1)){n=10;f=(r&255)>>>1}else{r=h[e>>2]|0;n=(r&-2)+-1|0;f=h[e+4>>2]|0;r=r&255}s=t-a|0;do if((t|0)!=(i|0)){if((n-f|0)>>>0<s>>>0){$o(e,n,f+s-n|0,f,f,0,0);r=c[e>>0]|0}if(!(r&1))o=e+1|0;else o=h[e+8>>2]|0;a=t+(f-a)|0;if((i|0)!=(t|0)){r=i;n=o+f|0;while(1){c[n>>0]=c[r>>0]|0;r=r+1|0;if((r|0)==(t|0))break;else n=n+1|0}}c[o+a>>0]=0;r=f+s|0;if(!(c[e>>0]&1)){c[e>>0]=r<<1;break}else{h[e+4>>2]=r;break}}while(0);return e|0}function kp(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;a=e+4|0;r=(h[a>>2]|0)!=165;s=h[e>>2]|0;o=s;n=(h[t>>2]|0)-o|0;n=n>>>0<2147483647?n<<1:-1;o=(h[i>>2]|0)-o>>2;s=Sw(r?s:0,n)|0;if(!s)Fb();do if(!r){r=h[e>>2]|0;h[e>>2]=s;if(r){x=0;ge(h[a>>2]|0,r|0);s=x;x=0;if(s&1){s=Je(0)|0;Wi(s)}else{f=h[e>>2]|0;break}}else f=s}else{h[e>>2]=s;f=s}while(0);h[a>>2]=177;h[i>>2]=f+(o<<2);h[t>>2]=(h[e>>2]|0)+(n>>>2<<2);return}function _p(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0,f=0;a=i;r=c[e>>0]|0;if(!(r&1)){n=1;f=(r&255)>>>1}else{r=h[e>>2]|0;n=(r&-2)+-1|0;f=h[e+4>>2]|0;r=r&255}s=t-a>>2;do if(s){if((n-f|0)>>>0<s>>>0){as(e,n,f+s-n|0,f,f,0,0);r=c[e>>0]|0}if(!(r&1))o=e+4|0;else o=h[e+8>>2]|0;a=f+((t-a|0)>>>2)|0;if((i|0)!=(t|0)){r=i;n=o+(f<<2)|0;while(1){h[n>>2]=h[r>>2];r=r+4|0;if((r|0)==(t|0))break;else n=n+4|0}}h[o+(a<<2)>>2]=0;r=f+s|0;if(!(c[e>>0]&1)){c[e>>0]=r<<1;break}else{h[e+4>>2]=r;break}}while(0);return e|0}function yp(e,i){e=e|0;i=i|0;var t=0;h[e>>2]=0;h[e+4>>2]=0;h[e+8>>2]=0;c[e+128>>0]=0;do if(i){x=0;ke(104,e|0,i|0);t=x;x=0;if(t&1){t=Je()|0;Jp(e);fi(t|0)}else{mg(e,i);break}}while(0);return}function Tp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(42680)|0);return}function Mp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(42720)|0);return}function Cp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43752)|0);return}function xp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43744)|0);return}function Ep(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43812)|0);return}function Sp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43820)|0);return}function Ap(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43876)|0);return}function Pp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43884)|0);return}function Ip(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43892)|0);return}function Lp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43900)|0);return}function Dp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(42792)|0);return}function Rp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(42864)|0);return}function Op(e,i){e=e|0;i=i|0;Ed(e,i,Nd(42924)|0);return}function Bp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(42984)|0);return}function Np(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43296)|0);return}function Fp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43360)|0);return}function Up(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43424)|0);return}function Hp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43488)|0);return}function zp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43524)|0);return}function jp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43560)|0);return}function Yp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43596)|0);return}function Vp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43632)|0);return}function qp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43076)|0);return}function Wp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43168)|0);return}function Gp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43200)|0);return}function Xp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43232)|0);return}function Kp(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43672)|0);return}function $p(e,i){e=e|0;i=i|0;Ed(e,i,Nd(43712)|0);return}function Jp(e){e=e|0;var i=0,t=0,r=0;t=h[e>>2]|0;do if(t){r=e+4|0;i=h[r>>2]|0;if((i|0)!=(t|0)){do i=i+-4|0;while((i|0)!=(t|0));h[r>>2]=i}if((e+16|0)==(t|0)){c[e+128>>0]=0;break}else{$m(t);break}}while(0);return}function Qp(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0;o=e+4|0;t=h[o>>2]|0;r=h[e>>2]|0;n=t-r>>2;if(n>>>0>=i>>>0){if(n>>>0>i>>>0?(a=r+(i<<2)|0,(t|0)!=(a|0)):0){do t=t+-4|0;while((t|0)!=(a|0));h[o>>2]=t}}else hg(e,i-n|0);return}function Zp(e,i){e=e|0;i=i|0;var t=0;t=h[e+8>>2]|0;if((h[e+12>>2]|0)-t>>2>>>0>i>>>0)t=(h[t+(i<<2)>>2]|0)!=0;else t=0;return t|0}function eg(e){e=e|0;var i=0,t=0;t=e+4|0;i=h[t>>2]|0;t=h[t+4>>2]|0;e=(h[e>>2]|0)+(t>>1)|0;if(t&1)i=h[(h[e>>2]|0)+i>>2]|0;Gk[i&255](e);return}function ig(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0;h[t>>2]=e;h[a>>2]=r;if(s&2)if((n-r|0)<3)e=1;else{h[a>>2]=r+1;c[r>>0]=-17;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=-69;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=-65;f=4}else f=4;e:do if((f|0)==4){l=i;e=h[t>>2]|0;if(e>>>0<i>>>0)while(1){s=d[e>>1]|0;f=s&65535;if(f>>>0>o>>>0){e=2;break e}do if((s&65535)<128){e=h[a>>2]|0;if((n-e|0)<1){e=1;break e}h[a>>2]=e+1;c[e>>0]=s}else{if((s&65535)<2048){e=h[a>>2]|0;if((n-e|0)<2){e=1;break e}h[a>>2]=e+1;c[e>>0]=f>>>6|192;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f&63|128;break}if((s&65535)<55296){e=h[a>>2]|0;if((n-e|0)<3){e=1;break e}h[a>>2]=e+1;c[e>>0]=f>>>12|224;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f>>>6&63|128;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f&63|128;break}if((s&65535)>=56320){if((s&65535)<57344){e=2;break e}e=h[a>>2]|0;if((n-e|0)<3){e=1;break e}h[a>>2]=e+1;c[e>>0]=f>>>12|224;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f>>>6&63|128;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f&63|128;break}if((l-e|0)<4){e=1;break e}e=e+2|0;s=b[e>>1]|0;if((s&64512|0)!=56320){e=2;break e}if((n-(h[a>>2]|0)|0)<4){e=1;break e}r=f&960;if(((r<<10)+65536|f<<10&64512|s&1023)>>>0>o>>>0){e=2;break e}h[t>>2]=e;e=(r>>>6)+1|0;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=e>>>2|240;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f>>>2&15|e<<4&48|128;r=h[a>>2]|0;h[a>>2]=r+1;c[r>>0]=f<<4&48|s>>>6&15|128;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s&63|128}while(0);e=(h[t>>2]|0)+2|0;h[t>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}while(0);return e|0}function tg(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,b=0,v=0,w=0;h[t>>2]=e;h[a>>2]=r;if(s&4){e=h[t>>2]|0;s=i;if((((s-e|0)>2?(c[e>>0]|0)==-17:0)?(c[e+1>>0]|0)==-69:0)?(c[e+2>>0]|0)==-65:0){h[t>>2]=e+3;f=h[a>>2]|0}else f=r}else{f=r;s=i}v=n;r=h[t>>2]|0;e=r>>>0<i>>>0;e:do if(e&f>>>0<n>>>0)while(1){e=c[r>>0]|0;u=e&255;if(u>>>0>o>>>0){e=2;break e}do if(e<<24>>24>-1){d[f>>1]=e&255;h[t>>2]=r+1}else{if((e&255)<194){e=2;break e}if((e&255)<224){if((s-r|0)<2){e=1;break e}e=m[r+1>>0]|0;if((e&192|0)!=128){e=2;break e}e=e&63|u<<6&1984;if(e>>>0>o>>>0){e=2;break e}d[f>>1]=e;h[t>>2]=r+2;break}if((e&255)<240){if((s-r|0)<3){e=1;break e}l=c[r+1>>0]|0;e=c[r+2>>0]|0;switch(u|0){case 224:{if((l&-32)<<24>>24!=-96){e=2;break e}break}case 237:{if((l&-32)<<24>>24!=-128){e=2;break e}break}default:if((l&-64)<<24>>24!=-128){e=2;break e}}e=e&255;if((e&192|0)!=128){e=2;break e}e=(l&255)<<6&4032|u<<12|e&63;if((e&65535)>>>0>o>>>0){e=2;break e}d[f>>1]=e;h[t>>2]=r+3;break}if((e&255)>=245){e=2;break e}if((s-r|0)<4){e=1;break e}l=c[r+1>>0]|0;e=c[r+2>>0]|0;r=c[r+3>>0]|0;switch(u|0){case 240:{if((l+112&255)>=48){e=2;break e}break}case 244:{if((l&-16)<<24>>24!=-128){e=2;break e}break}default:if((l&-64)<<24>>24!=-128){e=2;break e}}b=e&255;if((b&192|0)!=128){e=2;break e}e=r&255;if((e&192|0)!=128){e=2;break e}if((v-f|0)<4){e=1;break e}u=u&7;r=l&255;l=b<<6;e=e&63;if((r<<12&258048|u<<18|l&4032|e)>>>0>o>>>0){e=2;break e}d[f>>1]=r<<2&60|b>>>4&3|((r>>>4&3|u<<2)<<6)+16320|55296;b=f+2|0;h[a>>2]=b;d[b>>1]=e|l&960|56320;h[t>>2]=(h[t>>2]|0)+4}while(0);f=(h[a>>2]|0)+2|0;h[a>>2]=f;r=h[t>>2]|0;e=r>>>0<i>>>0;if(!(e&f>>>0<n>>>0)){w=39;break}}else w=39;while(0);if((w|0)==39)e=e&1;return e|0}function rg(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0;d=i;if((((n&4|0)!=0?(d-e|0)>2:0)?(c[e>>0]|0)==-17:0)?(c[e+1>>0]|0)==-69:0)n=(c[e+2>>0]|0)==-65?e+3|0:e;else n=e;e:do if((t|0)!=0&n>>>0<i>>>0){u=n;a=0;i:while(1){n=c[u>>0]|0;l=n&255;if(l>>>0>r>>>0){n=u;a=42;break e}do if(n<<24>>24>-1)n=u+1|0;else{if((n&255)<194){n=u;a=42;break e}if((n&255)<224){if((d-u|0)<2){n=u;a=42;break e}n=m[u+1>>0]|0;if((n&192|0)!=128){n=u;a=42;break e}if((n&63|l<<6&1984)>>>0>r>>>0){n=u;a=42;break e}n=u+2|0;break}if((n&255)<240){n=u;if((d-n|0)<3){n=u;a=42;break e}s=c[u+1>>0]|0;o=c[u+2>>0]|0;switch(l|0){case 224:{if((s&-32)<<24>>24!=-96){a=20;break i}break}case 237:{if((s&-32)<<24>>24!=-128){a=22;break i}break}default:if((s&-64)<<24>>24!=-128){a=24;break i}}n=o&255;if((n&192|0)!=128){n=u;a=42;break e}if(((s&255)<<6&4032|l<<12&61440|n&63)>>>0>r>>>0){n=u;a=42;break e}n=u+3|0;break}if((n&255)>=245){n=u;a=42;break e}n=u;if((t-a|0)>>>0<2|(d-n|0)<4){n=u;a=42;break e}f=c[u+1>>0]|0;o=c[u+2>>0]|0;s=c[u+3>>0]|0;switch(l|0){case 240:{if((f+112&255)>=48){a=32;break i}break}case 244:{if((f&-16)<<24>>24!=-128){a=34;break i}break}default:if((f&-64)<<24>>24!=-128){a=36;break i}}o=o&255;if((o&192|0)!=128){n=u;a=42;break e}n=s&255;if((n&192|0)!=128){n=u;a=42;break e}if(((f&255)<<12&258048|l<<18&1835008|o<<6&4032|n&63)>>>0>r>>>0){n=u;a=42;break e}n=u+4|0;a=a+1|0}while(0);a=a+1|0;if(!(a>>>0<t>>>0&n>>>0<i>>>0)){a=42;break e}else u=n}if((a|0)==20){n=n-e|0;break}else if((a|0)==22){n=n-e|0;break}else if((a|0)==24){n=n-e|0;break}else if((a|0)==32){n=n-e|0;break}else if((a|0)==34){n=n-e|0;break}else if((a|0)==36){n=n-e|0;break}}else a=42;while(0);if((a|0)==42)n=n-e|0;return n|0}function ng(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0;h[t>>2]=e;h[a>>2]=r;l=n;if(s&2)if((l-r|0)<3)e=1;else{h[a>>2]=r+1;c[r>>0]=-17;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=-69;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=-65;f=4}else f=4;e:do if((f|0)==4){e=h[t>>2]|0;if(e>>>0<i>>>0)while(1){s=h[e>>2]|0;if(s>>>0>o>>>0|(s&-2048|0)==55296){e=2;break e}do if(s>>>0>=128){if(s>>>0<2048){e=h[a>>2]|0;if((l-e|0)<2){e=1;break e}h[a>>2]=e+1;c[e>>0]=s>>>6|192;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s&63|128;break}e=h[a>>2]|0;n=l-e|0;if(s>>>0<65536){if((n|0)<3){e=1;break e}h[a>>2]=e+1;c[e>>0]=s>>>12|224;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s>>>6&63|128;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s&63|128;break}else{if((n|0)<4){e=1;break e}h[a>>2]=e+1;c[e>>0]=s>>>18|240;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s>>>12&63|128;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s>>>6&63|128;f=h[a>>2]|0;h[a>>2]=f+1;c[f>>0]=s&63|128;break}}else{e=h[a>>2]|0;if((l-e|0)<1){e=1;break e}h[a>>2]=e+1;c[e>>0]=s}while(0);e=(h[t>>2]|0)+4|0;h[t>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}while(0);return e|0}function ag(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;var f=0,l=0,u=0,d=0,b=0,v=0;h[t>>2]=e;h[a>>2]=r;if(s&4){e=h[t>>2]|0;s=i;if((((s-e|0)>2?(c[e>>0]|0)==-17:0)?(c[e+1>>0]|0)==-69:0)?(c[e+2>>0]|0)==-65:0){h[t>>2]=e+3;r=h[a>>2]|0;b=s}else b=s}else b=i;s=h[t>>2]|0;e=s>>>0<i>>>0;e:do if(e&r>>>0<n>>>0)while(1){e=c[s>>0]|0;d=e&255;do if(e<<24>>24>-1){if(d>>>0>o>>>0){e=2;break e}h[r>>2]=d;h[t>>2]=s+1}else{if((e&255)<194){e=2;break e}if((e&255)<224){if((b-s|0)<2){e=1;break e}e=m[s+1>>0]|0;if((e&192|0)!=128){e=2;break e}e=e&63|d<<6&1984;if(e>>>0>o>>>0){e=2;break e}h[r>>2]=e;h[t>>2]=s+2;break}if((e&255)<240){if((b-s|0)<3){e=1;break e}f=c[s+1>>0]|0;e=c[s+2>>0]|0;switch(d|0){case 224:{if((f&-32)<<24>>24!=-96){e=2;break e}break}case 237:{if((f&-32)<<24>>24!=-128){e=2;break e}break}default:if((f&-64)<<24>>24!=-128){e=2;break e}}e=e&255;if((e&192|0)!=128){e=2;break e}e=(f&255)<<6&4032|d<<12&61440|e&63;if(e>>>0>o>>>0){e=2;break e}h[r>>2]=e;h[t>>2]=s+3;break}if((e&255)>=245){e=2;break e}if((b-s|0)<4){e=1;break e}u=c[s+1>>0]|0;e=c[s+2>>0]|0;f=c[s+3>>0]|0;switch(d|0){case 240:{if((u+112&255)>=48){e=2;break e}break}case 244:{if((u&-16)<<24>>24!=-128){e=2;break e}break}default:if((u&-64)<<24>>24!=-128){e=2;break e}}l=e&255;if((l&192|0)!=128){e=2;break e}e=f&255;if((e&192|0)!=128){e=2;break e}e=(u&255)<<12&258048|d<<18&1835008|l<<6&4032|e&63;if(e>>>0>o>>>0){e=2;break e}h[r>>2]=e;h[t>>2]=s+4}while(0);r=(h[a>>2]|0)+4|0;h[a>>2]=r;s=h[t>>2]|0;e=s>>>0<i>>>0;if(!(e&r>>>0<n>>>0)){v=38;break}}else v=38;while(0);if((v|0)==38)e=e&1;return e|0}function og(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,d=0;d=i;if((((n&4|0)!=0?(d-e|0)>2:0)?(c[e>>0]|0)==-17:0)?(c[e+1>>0]|0)==-69:0)n=(c[e+2>>0]|0)==-65?e+3|0:e;else n=e;e:do if((t|0)!=0&n>>>0<i>>>0){l=n;u=0;i:while(1){n=c[l>>0]|0;f=n&255;do if(n<<24>>24>-1){if(f>>>0>r>>>0){n=l;a=42;break e}n=l+1|0}else{if((n&255)<194){n=l;a=42;break e}if((n&255)<224){if((d-l|0)<2){n=l;a=42;break e}n=m[l+1>>0]|0;if((n&192|0)!=128){n=l;a=42;break e}if((n&63|f<<6&1984)>>>0>r>>>0){n=l;a=42;break e}n=l+2|0;break}if((n&255)<240){n=l;if((d-n|0)<3){n=l;a=42;break e}o=c[l+1>>0]|0;a=c[l+2>>0]|0;switch(f|0){case 224:{if((o&-32)<<24>>24!=-96){a=20;break i}break}case 237:{if((o&-32)<<24>>24!=-128){a=22;break i}break}default:if((o&-64)<<24>>24!=-128){a=24;break i}}n=a&255;if((n&192|0)!=128){n=l;a=42;break e}if(((o&255)<<6&4032|f<<12&61440|n&63)>>>0>r>>>0){n=l;a=42;break e}n=l+3|0;break}if((n&255)>=245){n=l;a=42;break e}n=l;if((d-n|0)<4){n=l;a=42;break e}s=c[l+1>>0]|0;a=c[l+2>>0]|0;o=c[l+3>>0]|0;switch(f|0){case 240:{if((s+112&255)>=48){a=32;break i}break}case 244:{if((s&-16)<<24>>24!=-128){a=34;break i}break}default:if((s&-64)<<24>>24!=-128){a=36;break i}}a=a&255;if((a&192|0)!=128){n=l;a=42;break e}n=o&255;if((n&192|0)!=128){n=l;a=42;break e}if(((s&255)<<12&258048|f<<18&1835008|a<<6&4032|n&63)>>>0>r>>>0){n=l;a=42;break e}n=l+4|0}while(0);u=u+1|0;if(!(u>>>0<t>>>0&n>>>0<i>>>0)){a=42;break e}else l=n}if((a|0)==20){n=n-e|0;break}else if((a|0)==22){n=n-e|0;break}else if((a|0)==24){n=n-e|0;break}else if((a|0)==32){n=n-e|0;break}else if((a|0)==34){n=n-e|0;break}else if((a|0)==36){n=n-e|0;break}}else a=42;while(0);if((a|0)==42)n=n-e|0;return n|0}function sg(e){e=e|0;Uo(44728);Uo(44716);Uo(44704);Uo(44692);Uo(44680);Uo(44668);Uo(44656);Uo(44644);Uo(44632);Uo(44620);Uo(44608);Uo(44596);Uo(44584);Uo(44572);return}function fg(e){e=e|0;Zo(44900);Zo(44888);Zo(44876);Zo(44864);Zo(44852);Zo(44840);Zo(44828);Zo(44816);Zo(44804);Zo(44792);Zo(44780);Zo(44768);Zo(44756);Zo(44744);return}function lg(e){e=e|0;Uo(45532);Uo(45520);Uo(45508);Uo(45496);Uo(45484);Uo(45472);Uo(45460);Uo(45448);Uo(45436);Uo(45424);Uo(45412);Uo(45400);Uo(45388);Uo(45376);Uo(45364);Uo(45352);Uo(45340);Uo(45328);Uo(45316);Uo(45304);Uo(45292);Uo(45280);Uo(45268);Uo(45256);return}function ug(e){e=e|0;Zo(45824);Zo(45812);Zo(45800);Zo(45788);Zo(45776);Zo(45764);Zo(45752);Zo(45740);Zo(45728);Zo(45716);Zo(45704);Zo(45692);Zo(45680);Zo(45668);Zo(45656);Zo(45644);Zo(45632);Zo(45620);Zo(45608);Zo(45596);Zo(45584);Zo(45572);Zo(45560);Zo(45548);return}function cg(e){e=e|0;Uo(46636);Uo(46624);Uo(46612);Uo(46600);Uo(46588);Uo(46576);Uo(46564);Uo(46552);Uo(46540);Uo(46528);Uo(46516);Uo(46504);Uo(46492);Uo(46480);Uo(46468);Uo(46456);Uo(46444);Uo(46432);Uo(46420);Uo(46408);Uo(46396);Uo(46384);Uo(46372);Uo(46360);return}function dg(e){e=e|0;Zo(46928);Zo(46916);Zo(46904);Zo(46892);Zo(46880);Zo(46868);Zo(46856);Zo(46844);Zo(46832);Zo(46820);Zo(46808);Zo(46796);Zo(46784);Zo(46772);Zo(46760);Zo(46748);Zo(46736);Zo(46724);Zo(46712);Zo(46700);Zo(46688);Zo(46676);Zo(46664);Zo(46652);return}function hg(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0,s=0,f=0;f=k;k=k+32|0;s=f;a=h[e+8>>2]|0;t=h[e+4>>2]|0;if(a-t>>2>>>0<i>>>0){r=h[e>>2]|0;o=t-r>>2;n=o+i|0;if(n>>>0>1073741823)Gm(e);t=a-r|0;if(t>>2>>>0<536870911){t=t>>1;t=t>>>0<n>>>0?n:t}else t=1073741823;bg(s,t,o,e+16|0);o=s+8|0;a=h[o>>2]|0;Pg(a|0,0,i<<2|0)|0;h[o>>2]=a+(i<<2);vg(e,s);wg(s)}else mg(e,i);k=f;return}function mg(e,i){e=e|0;i=i|0;var t=0;t=e+4|0;e=i;i=h[t>>2]|0;do{h[i>>2]=0;i=(h[t>>2]|0)+4|0;h[t>>2]=i;e=e+-1|0}while((e|0)!=0);return}function bg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0;h[e+12>>2]=0;h[e+16>>2]=r;do if(i){n=r+112|0;if(i>>>0<29&(c[n>>0]|0)==0){c[n>>0]=1;break}else{r=Km(i<<2)|0;break}}else r=0;while(0);h[e>>2]=r;t=r+(t<<2)|0;h[e+8>>2]=t;h[e+4>>2]=t;h[e+12>>2]=r+(i<<2);return}function vg(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0,o=0;r=h[e>>2]|0;a=e+4|0;t=i+4|0;n=(h[a>>2]|0)-r|0;o=(h[t>>2]|0)+(0-(n>>2)<<2)|0;h[t>>2]=o;Dg(o|0,r|0,n|0)|0;n=h[e>>2]|0;h[e>>2]=h[t>>2];h[t>>2]=n;n=i+8|0;r=h[a>>2]|0;h[a>>2]=h[n>>2];h[n>>2]=r;n=e+8|0;e=i+12|0;r=h[n>>2]|0;h[n>>2]=h[e>>2];h[e>>2]=r;h[i>>2]=h[t>>2];return}function wg(e){e=e|0;var i=0,t=0,r=0;t=h[e+4>>2]|0;r=e+8|0;i=h[r>>2]|0;if((i|0)!=(t|0)){do i=i+-4|0;while((i|0)!=(t|0));h[r>>2]=i}t=h[e>>2]|0;do if(t){i=h[e+16>>2]|0;if((i|0)==(t|0)){c[i+112>>0]=0;break}else{$m(t);break}}while(0);return}function pg(e,i){e=e|0;i=i|0;var t=0;if(i>>>0>1073741823)Gm(e);t=e+128|0;if(i>>>0<29&(c[t>>0]|0)==0){c[t>>0]=1;t=e+16|0}else t=Km(i<<2)|0;h[e+4>>2]=t;h[e>>2]=t;h[e+8>>2]=t+(i<<2);return}function gg(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;s=k;k=k+16|0;o=s;do if((e|0)!=(i|0)){n=$b()|0;a=h[n>>2]|0;h[n>>2]=0;r=+ew(e,o,Zf()|0);e=h[n>>2]|0;if(!e)h[n>>2]=a;if((h[o>>2]|0)!=(i|0)){h[t>>2]=4;r=0;break}if((e|0)==34)h[t>>2]=4}else{h[t>>2]=4;r=0}while(0);k=s;return+r}function kg(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;s=k;k=k+16|0;o=s;do if((e|0)!=(i|0)){n=$b()|0;a=h[n>>2]|0;h[n>>2]=0;r=+ew(e,o,Zf()|0);e=h[n>>2]|0;if(!e)h[n>>2]=a;if((h[o>>2]|0)!=(i|0)){h[t>>2]=4;r=0;break}if((e|0)==34)h[t>>2]=4}else{h[t>>2]=4;r=0}while(0);k=s;return+r}function _g(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0,s=0;s=k;k=k+16|0;o=s;do if((e|0)==(i|0)){h[t>>2]=4;r=0}else{n=$b()|0;a=h[n>>2]|0;h[n>>2]=0;r=+ew(e,o,Zf()|0);e=h[n>>2]|0;if(!e)h[n>>2]=a;if((h[o>>2]|0)!=(i|0)){h[t>>2]=4;r=0;break}if((e|0)==34)h[t>>2]=4}while(0);k=s;return+r}function yg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0;s=k;k=k+16|0;o=s;do if((e|0)!=(i|0)){if((c[e>>0]|0)==45){h[t>>2]=4;r=0;e=0;break}n=$b()|0;a=h[n>>2]|0;h[n>>2]=0;e=Yb(e,o,r,Zf()|0)|0;r=h[n>>2]|0;if(!r)h[n>>2]=a;if((h[o>>2]|0)!=(i|0)){h[t>>2]=4;r=0;e=0;break}if((r|0)==34){h[t>>2]=4;r=-1;e=-1}else r=z}else{h[t>>2]=4;r=0;e=0}while(0);z=r;k=s;return e|0}function Tg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;do if((e|0)!=(i|0)){if((c[e>>0]|0)==45){h[t>>2]=4;e=0;break}a=$b()|0;o=h[a>>2]|0;h[a>>2]=0;e=Yb(e,s,r,Zf()|0)|0;r=z;n=h[a>>2]|0;if(!n)h[a>>2]=o;if((h[s>>2]|0)!=(i|0)){h[t>>2]=4;e=0;break}if(r>>>0>0|(r|0)==0&e>>>0>4294967295|(n|0)==34){h[t>>2]=4;e=-1;break}else break}else{h[t>>2]=4;e=0}while(0);k=f;return e|0}function Mg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;do if((e|0)!=(i|0)){if((c[e>>0]|0)==45){h[t>>2]=4;e=0;break}a=$b()|0;o=h[a>>2]|0;h[a>>2]=0;e=Yb(e,s,r,Zf()|0)|0;r=z;n=h[a>>2]|0;if(!n)h[a>>2]=o;if((h[s>>2]|0)!=(i|0)){h[t>>2]=4;e=0;break}if(r>>>0>0|(r|0)==0&e>>>0>4294967295|(n|0)==34){h[t>>2]=4;e=-1;break}else break}else{h[t>>2]=4;e=0}while(0);k=f;return e|0}function Cg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;do if((e|0)!=(i|0)){if((c[e>>0]|0)==45){h[t>>2]=4;e=0;break}a=$b()|0;o=h[a>>2]|0;h[a>>2]=0;e=Yb(e,s,r,Zf()|0)|0;r=z;n=h[a>>2]|0;if(!n)h[a>>2]=o;if((h[s>>2]|0)!=(i|0)){h[t>>2]=4;e=0;break}if(r>>>0>0|(r|0)==0&e>>>0>65535|(n|0)==34){h[t>>2]=4;e=-1;break}else{e=e&65535;break}}else{h[t>>2]=4;e=0}while(0);k=f;return e|0}function xg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;do if((e|0)!=(i|0)){a=$b()|0;o=h[a>>2]|0;h[a>>2]=0;e=Vb(e,s,r,Zf()|0)|0;r=z;n=h[a>>2]|0;if(!n)h[a>>2]=o;if((h[s>>2]|0)!=(i|0)){h[t>>2]=4;r=0;e=0;break}if((n|0)==34){h[t>>2]=4;s=(r|0)>0|(r|0)==0&e>>>0>0;z=s?2147483647:-2147483648;k=f;return(s?-1:0)|0}}else{h[t>>2]=4;r=0;e=0}while(0);z=r;k=f;return e|0}function Eg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0;f=k;k=k+16|0;s=f;e:do if((e|0)==(i|0)){h[t>>2]=4;e=0}else{a=$b()|0;o=h[a>>2]|0;h[a>>2]=0;e=Vb(e,s,r,Zf()|0)|0;r=z;n=h[a>>2]|0;if(!n)h[a>>2]=o;if((h[s>>2]|0)!=(i|0)){h[t>>2]=4;e=0;break}do if((n|0)==34){h[t>>2]=4;if((r|0)>0|(r|0)==0&e>>>0>0){e=2147483647;break e}}else{if((r|0)<-1|(r|0)==-1&e>>>0<2147483648){h[t>>2]=4;break}if((r|0)>0|(r|0)==0&e>>>0>2147483647){h[t>>2]=4;e=2147483647;break e}else break e}while(0);e=-2147483648}while(0);k=f;return e|0}function Sg(){}function Ag(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;r=i-r-(t>>>0>e>>>0|0)>>>0;return(z=r,e-t>>>0|0)|0}function Pg(e,i,t){e=e|0;i=i|0;t=t|0;var r=0,n=0,a=0,o=0;r=e+t|0;if((t|0)>=20){i=i&255;a=e&3;o=i|i<<8|i<<16|i<<24;n=r&~3;if(a){a=e+4-a|0;while((e|0)<(a|0)){c[e>>0]=i;e=e+1|0}}while((e|0)<(n|0)){h[e>>2]=o;e=e+4|0}}while((e|0)<(r|0)){c[e>>0]=i;e=e+1|0}return e-t|0}function Ig(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;t=e+t>>>0;return(z=i+r+(t>>>0<e>>>0|0)>>>0,t|0)|0}function Lg(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)<32){z=i>>>t;return e>>>t|(i&(1<<t)-1)<<32-t}z=0;return i>>>t-32|0}function Dg(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if((t|0)>=4096)return oi(e|0,i|0,t|0)|0;r=e|0;if((e&3)==(i&3)){while(e&3){if(!t)return r|0;c[e>>0]=c[i>>0]|0;e=e+1|0;i=i+1|0;t=t-1|0}while((t|0)>=4){h[e>>2]=h[i>>2];e=e+4|0;i=i+4|0;t=t-4|0}}while((t|0)>0){c[e>>0]=c[i>>0]|0;e=e+1|0;i=i+1|0;t=t-1|0}return r|0}function Rg(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)<32){z=i<<t|(e&(1<<t)-1<<32-t)>>>32-t;return e<<t}z=e<<t-32;return 0}function Og(e,i,t){e=e|0;i=i|0;t=t|0;var r=0;if((i|0)<(e|0)&(e|0)<(i+t|0)){r=e;i=i+t|0;e=e+t|0;while((t|0)>0){e=e-1|0;i=i-1|0;t=t-1|0;c[e>>0]=c[i>>0]|0}e=r}else Dg(e,i,t)|0;return e|0}function Bg(e,i,t){e=e|0;i=i|0;t=t|0;if((t|0)<32){z=i>>t;return e>>>t|(i&(1<<t)-1)<<32-t}z=(i|0)<0?-1:0;return i>>t-32|0}function Ng(e){e=e|0;var i=0;i=c[M+(e&255)>>0]|0;if((i|0)<8)return i|0;i=c[M+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=c[M+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(c[M+(e>>>24)>>0]|0)+24|0}function Fg(e,i){e=e|0;i=i|0;var t=0,r=0,n=0,a=0;a=e&65535;n=i&65535;t=ce(n,a)|0;r=e>>>16;e=(t>>>16)+(ce(n,r)|0)|0;n=i>>>16;i=ce(n,a)|0;return(z=(e>>>16)+(ce(n,r)|0)+(((e&65535)+i|0)>>>16)|0,e+i<<16|t&65535|0)|0}function Ug(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;l=i>>31|((i|0)<0?-1:0)<<1;f=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;a=r>>31|((r|0)<0?-1:0)<<1;n=((r|0)<0?-1:0)>>31|((r|0)<0?-1:0)<<1;s=Ag(l^e,f^i,l,f)|0;o=z;e=a^l;i=n^f;return Ag((Vg(s,o,Ag(a^t,n^r,a,n)|0,z,0)|0)^e,z^i,e,i)|0}function Hg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0,o=0,s=0,f=0,l=0;n=k;k=k+16|0;s=n|0;o=i>>31|((i|0)<0?-1:0)<<1;a=((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1;l=r>>31|((r|0)<0?-1:0)<<1;f=((r|0)<0?-1:0)>>31|((r|0)<0?-1:0)<<1;e=Ag(o^e,a^i,o,a)|0;i=z;Vg(e,i,Ag(l^t,f^r,l,f)|0,z,s)|0;r=Ag(h[s>>2]^o,h[s+4>>2]^a,o,a)|0;t=z;k=n;return(z=t,r)|0}function zg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;n=e;a=t;t=Fg(n,a)|0;e=z;return(z=(ce(i,a)|0)+(ce(r,n)|0)+e|e&0,t|0|0)|0}function jg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return Vg(e,i,t,r,0)|0}function Yg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;var n=0,a=0;a=k;k=k+16|0;n=a|0;Vg(e,i,t,r,n)|0;k=a;return(z=h[n+4>>2]|0,h[n>>2]|0)|0}function Vg(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;var a=0,o=0,s=0,f=0,l=0,u=0,c=0,d=0,m=0,b=0;u=e;f=i;l=f;o=t;d=r;s=d;if(!l){a=(n|0)!=0;if(!s){if(a){h[n>>2]=(u>>>0)%(o>>>0);h[n+4>>2]=0}d=0;n=(u>>>0)/(o>>>0)>>>0;return(z=d,n)|0}else{if(!a){d=0;n=0;return(z=d,n)|0}h[n>>2]=e|0;h[n+4>>2]=i&0;d=0;n=0;return(z=d,n)|0}}a=(s|0)==0;do if(o){if(!a){a=(he(s|0)|0)-(he(l|0)|0)|0;if(a>>>0<=31){c=a+1|0;s=31-a|0;i=a-31>>31;o=c;e=u>>>(c>>>0)&i|l<<s;i=l>>>(c>>>0)&i;a=0;s=u<<s;break}if(!n){d=0;n=0;return(z=d,n)|0}h[n>>2]=e|0;h[n+4>>2]=f|i&0;d=0;n=0;return(z=d,n)|0}a=o-1|0;if(a&o){s=(he(o|0)|0)+33-(he(l|0)|0)|0;b=64-s|0;c=32-s|0;f=c>>31;m=s-32|0;i=m>>31;o=s;e=c-1>>31&l>>>(m>>>0)|(l<<c|u>>>(s>>>0))&i;i=i&l>>>(s>>>0);a=u<<b&f;s=(l<<b|u>>>(m>>>0))&f|u<<c&s-33>>31;break}if(n){h[n>>2]=a&u;h[n+4>>2]=0}if((o|0)==1){m=f|i&0;b=e|0|0;return(z=m,b)|0}else{b=Ng(o|0)|0;m=l>>>(b>>>0)|0;b=l<<32-b|u>>>(b>>>0)|0;return(z=m,b)|0}}else{if(a){if(n){h[n>>2]=(l>>>0)%(o>>>0);h[n+4>>2]=0}m=0;b=(l>>>0)/(o>>>0)>>>0;return(z=m,b)|0}if(!u){if(n){h[n>>2]=0;h[n+4>>2]=(l>>>0)%(s>>>0)}m=0;b=(l>>>0)/(s>>>0)>>>0;return(z=m,b)|0}a=s-1|0;if(!(a&s)){if(n){h[n>>2]=e|0;h[n+4>>2]=a&l|i&0}m=0;b=l>>>((Ng(s|0)|0)>>>0);return(z=m,b)|0}a=(he(s|0)|0)-(he(l|0)|0)|0;if(a>>>0<=30){i=a+1|0;s=31-a|0;o=i;e=l<<s|u>>>(i>>>0);i=l>>>(i>>>0);a=0;s=u<<s;break}if(!n){m=0;b=0;return(z=m,b)|0}h[n>>2]=e|0;h[n+4>>2]=f|i&0;m=0;b=0;return(z=m,b)|0}while(0);if(!o){l=s;f=0;s=0}else{c=t|0|0;u=d|r&0;l=Ig(c|0,u|0,-1,-1)|0;t=z;f=s;s=0;do{r=f;f=a>>>31|f<<1;a=s|a<<1;r=e<<1|r>>>31|0;d=e>>>31|i<<1|0;Ag(l,t,r,d)|0;b=z;m=b>>31|((b|0)<0?-1:0)<<1;s=m&1;e=Ag(r,d,m&c,(((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1)&u)|0;i=z;o=o-1|0}while((o|0)!=0);l=f;f=0}o=0;if(n){h[n>>2]=e;h[n+4>>2]=i}m=(a|0)>>>31|(l|o)<<1|(o<<1|a>>>31)&0|f;b=(a<<1|0>>>31)&-2|s;return(z=m,b)|0}function qg(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;return Vk[e&15](i|0,t|0,r|0,n|0,a|0,o|0,s|0)|0}function Wg(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;qk[e&15](i|0,t|0,r|0,n|0,a|0)}function Gg(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=+o;return Wk[e&3](i|0,t|0,r|0,n|0,a|0,+o)|0}function Xg(e,i){e=e|0;i=i|0;Gk[e&255](i|0)}function Kg(e,i,t){e=e|0;i=i|0;t=t|0;Xk[e&127](i|0,t|0)}function $g(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;return Kk[e&63](i|0,t|0,r|0,n|0,a|0,o|0)|0}function Jg(e,i){e=e|0;i=i|0;return $k[e&127](i|0)|0}function Qg(e,i,t,r,n,a,o,s,f,l,u,c){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;c=c|0;return Jk[e&3](i|0,t|0,r|0,n|0,a|0,o|0,s|0,f|0,l|0,u|0,c|0)|0}function Zg(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return Qk[e&63](i|0,t|0,r|0)|0}function ek(e,i,t,r,n,a,o,s,f,l,u,c,d,h,m,b){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;c=c|0;d=d|0;h=h|0;m=m|0;b=b|0;Zk[e&3](i|0,t|0,r|0,n|0,a|0,o|0,s|0,f|0,l|0,u|0,c|0,d|0,h|0,m|0,b|0)}function ik(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;e_[e&15](i|0,t|0,r|0,n|0,a|0,o|0)}function tk(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;i_[e&7](i|0,t|0,r|0,n|0,a|0,o|0,s|0)}function rk(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;t_[e&7](i|0,t|0,r|0,n|0,a|0,o|0,s|0,f|0,l|0,u|0)}function nk(e,i,t){e=e|0;i=i|0;t=t|0;return r_[e&63](i|0,t|0)|0}function ak(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;return n_[e&31](i|0,t|0,r|0,n|0,a|0)|0}function ok(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;return+a_[e&3](i|0,t|0,r|0)}function sk(e){e=e|0;return o_[e&15]()|0}function fk(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;return s_[e&31](i|0,t|0,r|0,n|0)|0}function lk(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;f_[e&15](i|0,t|0,r|0)}function uk(e){e=e|0;l_[e&7]()}function ck(e,i,t,r,n,a,o,s,f){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;return u_[e&15](i|0,t|0,r|0,n|0,a|0,o|0,s|0,f|0)|0}function dk(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=+a;return c_[e&7](i|0,t|0,r|0,n|0,+a)|0}function hk(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;d_[e&63](i|0,t|0,r|0,n|0)}function mk(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;me(0);return 0}function bk(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;me(1)}function vk(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=+a;me(2);return 0}function wk(e){e=e|0;me(3)}function pk(e,i){e=e|0;i=i|0;me(4)}function gk(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;me(5);return 0}function kk(e){e=e|0;me(6);return 0}function _k(e){e=e|0;return mi(e|0)|0}function yk(e){e=e|0;return Ai(e|0)|0}function Tk(e){e=e|0;return gi(e|0)|0}function Mk(e,i,t,r,n,a,o,s,f,l,u){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;me(7);return 0}function Ck(e,i,t){e=e|0;i=i|0;t=t|0;me(8);return 0}function xk(e,i,t,r,n,a,o,s,f,l,u,c,d,h,m){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;u=u|0;c=c|0;d=d|0;h=h|0;m=m|0;me(9)}function Ek(e,i,t,r,n,a){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;me(10)}function Sk(e,i,t,r,n,a,o){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;me(11)}function Ak(e,i,t,r,n,a,o,s,f,l){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;f=f|0;l=l|0;me(12)}function Pk(e,i){e=e|0;i=i|0;me(13);return 0}function Ik(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;me(14);return 0}function Lk(e,i,t){e=e|0;i=i|0;t=t|0;me(15);return 0}function Dk(){me(16);return 0}function Rk(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;me(17);return 0}function Ok(e,i,t){e=e|0;i=i|0;t=t|0;me(18)}function Bk(e,i,t){e=e|0;i=i|0;t=t|0;Ti(e|0,i|0,t|0)}function Nk(){me(19)}function Fk(){Ei()}function Uk(){si()}function Hk(){Mi()}function zk(e,i,t,r,n,a,o,s){e=e|0;i=i|0;t=t|0;r=r|0;n=n|0;a=a|0;o=o|0;s=s|0;me(20);return 0}function jk(e,i,t,r,n){e=e|0;i=i|0;t=t|0;r=r|0;n=+n;me(21);return 0}function Yk(e,i,t,r){e=e|0;i=i|0;t=t|0;r=r|0;me(22)}var Vk=[mk,Wu,$u,Vc,Xc,Zc,id,Em,Fm,mk,mk,mk,mk,mk,mk,mk];var qk=[bk,Ka,Na,Ca,ha,ia,Yn,In,mn,Lb,Ib,Sb,bk,bk,bk,bk];var Wk=[vk,ad,cd,vk];var Gk=[wk,qa,Wa,Da,Ra,_a,ya,la,ua,Jn,Qn,Un,Hn,En,Sn,un,cn,kr,Mr,_r,of,ff,sf,lf,Yt,Vt,Ym,qt,Bt,Nt,ht,mt,_t,yt,St,At,Wt,Gt,Zt,er,or,sr,hr,mr,Or,Br,jr,Yr,Kr,$r,rn,nn,Cn,xn,Ro,ro,Zm,eb,ob,sb,cb,db,mb,wb,bb,vb,pb,gb,Ls,Uw,qw,ws,$w,tp,Lo,Do,ps,Ds,Gs,Ks,Xs,$s,Zs,tf,ef,rf,mf,vf,bf,wf,Mf,Cf,ls,xf,Ef,Sf,Pf,Hd,Rf,Of,Uf,Hf,el,il,kl,_l,Ol,Bl,Xl,Kl,gu,ku,Yu,qu,Xu,Ku,Qu,Zu,lc,uc,kc,_c,Ic,Lc,jc,Yc,Jc,Qc,rd,nd,ld,ud,bd,vd,kd,_d,Sd,Ad,nh,ah,xm,Th,Jh,Qh,Zh,em,Af,Ud,jd,mh,Ih,Uh,Gh,Xh,lo,Gm,tt,Qs,gs,wn,jb,mw,bw,Lw,ov,qc,Gc,zd,eg,sg,fg,lg,ug,cg,dg,Uo,Zo,xw,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk,wk];
var Xk=[pk,Xa,Ba,Ma,da,ea,jn,Pn,hn,ks,Hw,Vw,Jw,ip,Os,tc,rc,nc,ac,sc,fc,hc,mc,bc,vc,pc,gc,Mc,Cc,xc,Ec,Ac,Pc,Oc,Bc,Nc,Fc,Hc,zc,gd,Md,am,sm,lm,om,fm,um,so,fo,uo,uf,fs,ms,st,lt,Go,vn,Dn,qn,ra,ba,Ea,Ua,Ja,qm,To,_o,ds,pf,yo,qo,rs,ts,yp,Tp,Mp,Cp,xp,Ep,yh,Sp,Ap,Pp,Ip,Lp,Dp,Rp,Op,Bp,Np,Fp,Up,Hp,zp,jp,Yp,Vp,qp,Wp,Gp,Xp,Kp,$p,Qp,pg,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk,pk];var Kk=[gk,zf,jf,Yf,Vf,qf,Wf,Gf,Xf,Kf,$f,Jf,tl,rl,nl,al,ol,sl,fl,ll,ul,cl,dl,El,Al,Hl,jl,Jl,Ql,Zl,iu,ru,yu,Tu,Mu,xu,Su,fd,md,Ot,mp,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk,gk];var $k=[kk,Ms,Cs,Ht,Ss,no,ib,fb,hb,Lv,zw,Hs,js,Ys,Us,Ww,Gw,Qw,Es,rp,np,kf,$l,dm,mm,vm,ym,Mm,pm,km,_u,hm,bm,wm,Tm,Cm,gm,_m,ec,ic,oc,cc,dc,wc,yc,Tc,Sc,Dc,Rc,Uc,Eh,Sh,Ph,im,rm,tm,nm,ph,gh,_h,Oh,Bh,Fh,Yh,Vh,Wh,Km,hs,ho,Js,nf,_k,yk,Tk,uv,lw,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk,kk];var Jk=[Mk,Wc,ed,Mk];var Qk=[Ck,_s,xs,Ps,Co,xo,kb,_w,Ov,Rv,Dv,Bv,Bs,zs,jw,qs,Zw,Df,Ff,wd,yd,sh,lh,dh,Yd,$d,Zd,th,ft,pw,Xo,lv,gp,_p,Cv,Mv,gv,Kv,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck,Ck];var Zk=[xk,sd,hd,xk];var e_=[Ek,Ft,Ob,Rb,Db,Ns,ys,pd,Td,Ek,Ek,Ek,Ek,Ek,Ek,Ek];var i_=[Sk,xl,Ll,Ul,Vl,Sk,Sk,Sk];var t_=[Ak,Kc,td,od,dd,Ak,Ak,Ak];var r_=[Pk,Ga,Oa,Ta,ca,Zn,zn,An,dn,zt,jt,Vs,Yw,Xw,Ws,As,ep,ap,Is,oh,fh,uh,Xd,Jd,eh,et,Fd,df,hf,fv,sv,zo,es,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk,Pk];var n_=[Ik,If,Bf,yl,Tl,Sl,Rl,Nl,Fl,zl,Wl,hh,xh,Ah,rh,wh,kh,Rh,Nh,jh,qh,xv,yv,Ik,Ik,Ik,Ik,Ik,Ik,Ik,Ik,Ik];var a_=[Lk,_g,kg,gg];var o_=[Dk,Ji,Xm,Zf,Id,Ld,Dd,qb,Gb,Wb,Dk,Dk,Dk,Dk,Dk,Dk];var s_=[Rk,ch,qd,Wd,Gd,ih,Nm,hp,Tv,nv,kv,Eg,xg,Cg,Mg,Tg,yg,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk,Rk];var f_=[Ok,Mo,ao,_f,Io,Bk,Yo,co,So,Tf,wp,pp,kp,No,Jo,Ok];var l_=[Nk,Fk,Ub,Uk,Hb,Hk,Fb,Nk];var u_=[zk,au,Pu,Mh,Ch,bh,vh,Lh,Dh,Hh,zh,zk,zk,zk,zk,zk];var c_=[jk,Pl,Dl,Yl,ql,jk,jk,jk];var d_=[Yk,Cr,xr,yr,Tr,Ut,bt,vt,Tt,Mt,Pt,It,Xt,Kt,ir,tr,fr,lr,br,vr,Nr,Fr,Vr,qr,Jr,Qr,an,on,yb,Tb,Cb,Fs,Ts,Lf,Nf,Po,rt,nt,at,ot,ut,ct,dt,Ir,Lr,Dr,Rr,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk,Yk];return{___cxa_can_catch:Bb,_free:xw,_jpegls_decode:Vm,___cxa_is_pointer_type:Nb,_i64Add:Ig,_memmove:Og,_i64Subtract:Ag,_memset:Pg,_malloc:Cw,_memcpy:Dg,_bitshift64Lshr:Lg,_bitshift64Shl:Rg,__GLOBAL__I_000101:Dw,__GLOBAL__sub_I_jpegls_cpp:it,__GLOBAL__sub_I_iostream_cpp:Rw,runPostSets:Sg,_emscripten_replace_memory:Bi,stackAlloc:Ni,stackSave:Fi,stackRestore:Ui,establishStackSpace:Hi,setThrew:zi,setTempRet0:Vi,getTempRet0:qi,dynCall_iiiiiiii:qg,dynCall_viiiii:Wg,dynCall_iiiiiid:Gg,dynCall_vi:Xg,dynCall_vii:Kg,dynCall_iiiiiii:$g,dynCall_ii:Jg,dynCall_iiiiiiiiiiii:Qg,dynCall_iiii:Zg,dynCall_viiiiiiiiiiiiiii:ek,dynCall_viiiiii:ik,dynCall_viiiiiii:tk,dynCall_viiiiiiiiii:rk,dynCall_iii:nk,dynCall_iiiiii:ak,dynCall_diii:ok,dynCall_i:sk,dynCall_iiiii:fk,dynCall_viii:lk,dynCall_v:uk,dynCall_iiiiiiiii:ck,dynCall_iiiiid:dk,dynCall_viiii:hk}}(Module.asmGlobalArg,Module.asmLibraryArg,buffer),runPostSets=Module.runPostSets=asm.runPostSets,___cxa_can_catch=Module.___cxa_can_catch=asm.___cxa_can_catch,_free=Module._free=asm._free,_jpegls_decode=Module._jpegls_decode=asm._jpegls_decode,___cxa_is_pointer_type=Module.___cxa_is_pointer_type=asm.___cxa_is_pointer_type,_i64Add=Module._i64Add=asm._i64Add,_memmove=Module._memmove=asm._memmove,_i64Subtract=Module._i64Subtract=asm._i64Subtract,_memset=Module._memset=asm._memset,_malloc=Module._malloc=asm._malloc,_memcpy=Module._memcpy=asm._memcpy,_emscripten_replace_memory=Module._emscripten_replace_memory=asm._emscripten_replace_memory,__GLOBAL__sub_I_iostream_cpp=Module.__GLOBAL__sub_I_iostream_cpp=asm.__GLOBAL__sub_I_iostream_cpp,_bitshift64Lshr=Module._bitshift64Lshr=asm._bitshift64Lshr,__GLOBAL__sub_I_jpegls_cpp=Module.__GLOBAL__sub_I_jpegls_cpp=asm.__GLOBAL__sub_I_jpegls_cpp,__GLOBAL__I_000101=Module.__GLOBAL__I_000101=asm.__GLOBAL__I_000101,_bitshift64Shl=Module._bitshift64Shl=asm._bitshift64Shl,dynCall_iiiiiiii=Module.dynCall_iiiiiiii=asm.dynCall_iiiiiiii,dynCall_viiiii=Module.dynCall_viiiii=asm.dynCall_viiiii,dynCall_iiiiiid=Module.dynCall_iiiiiid=asm.dynCall_iiiiiid,dynCall_vi=Module.dynCall_vi=asm.dynCall_vi,dynCall_vii=Module.dynCall_vii=asm.dynCall_vii,dynCall_iiiiiii=Module.dynCall_iiiiiii=asm.dynCall_iiiiiii,dynCall_ii=Module.dynCall_ii=asm.dynCall_ii,dynCall_iiiiiiiiiiii=Module.dynCall_iiiiiiiiiiii=asm.dynCall_iiiiiiiiiiii,dynCall_iiii=Module.dynCall_iiii=asm.dynCall_iiii,dynCall_viiiiiiiiiiiiiii=Module.dynCall_viiiiiiiiiiiiiii=asm.dynCall_viiiiiiiiiiiiiii,dynCall_viiiiii=Module.dynCall_viiiiii=asm.dynCall_viiiiii,dynCall_viiiiiii=Module.dynCall_viiiiiii=asm.dynCall_viiiiiii,dynCall_viiiiiiiiii=Module.dynCall_viiiiiiiiii=asm.dynCall_viiiiiiiiii,dynCall_iii=Module.dynCall_iii=asm.dynCall_iii,dynCall_iiiiii=Module.dynCall_iiiiii=asm.dynCall_iiiiii,dynCall_diii=Module.dynCall_diii=asm.dynCall_diii,dynCall_i=Module.dynCall_i=asm.dynCall_i,dynCall_iiiii=Module.dynCall_iiiii=asm.dynCall_iiiii,dynCall_viii=Module.dynCall_viii=asm.dynCall_viii,dynCall_v=Module.dynCall_v=asm.dynCall_v,dynCall_iiiiiiiii=Module.dynCall_iiiiiiiii=asm.dynCall_iiiiiiiii,dynCall_iiiiid=Module.dynCall_iiiiid=asm.dynCall_iiiiid,dynCall_viiii=Module.dynCall_viiii=asm.dynCall_viiii;Runtime.stackAlloc=asm.stackAlloc,Runtime.stackSave=asm.stackSave,Runtime.stackRestore=asm.stackRestore,Runtime.establishStackSpace=asm.establishStackSpace,Runtime.setTempRet0=asm.setTempRet0,Runtime.getTempRet0=asm.getTempRet0,ExitStatus.prototype=new Error,ExitStatus.prototype.constructor=ExitStatus;var initialStackTop,preloadStartTime=null,calledMain=!1;dependenciesFulfilled=function e(){Module.calledRun||run(),Module.calledRun||(dependenciesFulfilled=e)},Module.callMain=Module.callMain=function e(i){function t(){for(var e=0;e<3;e++)n.push(0)}assert(0==runDependencies,"cannot call main when async dependencies remain! (listen on __ATMAIN__)"),assert(0==__ATPRERUN__.length,"cannot call main when preRun functions remain to be called"),i=i||[],ensureInitRuntime();var r=i.length+1,n=[allocate(intArrayFromString(Module.thisProgram),"i8",ALLOC_NORMAL)];t();for(var a=0;a<r-1;a+=1)n.push(allocate(intArrayFromString(i[a]),"i8",ALLOC_NORMAL)),t();n.push(0),n=allocate(n,"i32",ALLOC_NORMAL);try{var o=Module._main(r,n,0);exit(o,!0)}catch(e){if(e instanceof ExitStatus)return;if("SimulateInfiniteLoop"==e)return void(Module.noExitRuntime=!0);throw e&&"object"==typeof e&&e.stack&&Module.printErr("exception thrown: "+[e,e.stack]),e}finally{calledMain=!0}},Module.run=Module.run=run,Module.exit=Module.exit=exit;var abortDecorators=[];if(Module.abort=Module.abort=abort,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),Module};!function(e,i){"undefined"!=typeof module&&module.exports?module.exports=i():"function"==typeof define&&define.amd?define([],i):("undefined"==typeof cornerstone&&(dicomParser={},"undefined"!=typeof Package&&(e.dicomParser=dicomParser)),dicomParser=i())}(this,function(){var e=function(e){return void 0===e&&(e={}),e.parseDicom=function(i,t){function r(t){if(void 0===t.elements.x00020010)throw"dicomParser.parseDicom: missing required meta header attribute 0002,0010";var r=t.elements.x00020010;return e.readFixedString(i,r.dataOffset,r.length)}function n(e){return"1.2.840.10008.1.2"!==e}function a(r,n){if("1.2.840.10008.1.2.1.99"===r){if(t&&t.inflater){var a=t.inflater(i,n);return new e.ByteStream(e.littleEndianByteArrayParser,a,0)}if("undefined"!=typeof module&&this.module!==module){var o=require("zlib"),s=e.sharedCopy(i,n,i.length-n),f=o.inflateRawSync(s),l=e.alloc(i,f.length+n);return i.copy(l,0,0,n),f.copy(l,n),new e.ByteStream(e.littleEndianByteArrayParser,l,0)}if("undefined"!=typeof pako){var u=i.slice(n),c=pako.inflateRaw(u),d=e.alloc(i,c.length+n);return d.set(i.slice(0,n),0),d.set(c,n),new e.ByteStream(e.littleEndianByteArrayParser,d,0)}throw"dicomParser.parseDicom: no inflater available to handle deflate transfer syntax"}return"1.2.840.10008.1.2.2"===r?new e.ByteStream(e.bigEndianByteArrayParser,i,n):new e.ByteStream(e.littleEndianByteArrayParser,i,n)}function o(e,i){for(var t in e.elements)e.elements.hasOwnProperty(t)&&(i.elements[t]=e.elements[t]);return void 0!==e.warnings&&(i.warnings=e.warnings.concat(i.warnings)),i}function s(i){var o=r(i),s=n(o),f=a(o,i.position),l={},u=new e.DataSet(f.byteArrayParser,f.byteArray,l);u.warnings=f.warnings;try{s?e.parseDicomDataSetExplicit(u,f,f.byteArray.length,t):e.parseDicomDataSetImplicit(u,f,f.byteArray.length,t)}catch(e){var c={exception:e,dataSet:u};throw c}return u}function f(){var r=e.readPart10Header(i,t),n=s(r);return o(r,n)}if(void 0===i)throw"dicomParser.parseDicom: missing required parameter 'byteArray'";return f()},e}(e),e=function(e){"use strict";function i(e,i){return 255===e.byteArray[i]&&217===e.byteArray[i+1]}function t(e,i){return 255===e.byteArray[i]&&216===e.byteArray[i+1]}function r(e,i,r){var n=i.fragments[r];return!!t(e,n.position)}function n(e,t,r){var n=t.fragments[r];return!(!i(e,n.position+n.length-2)&&!i(e,n.position+n.length-3))}function a(e,i,t){for(var a=t;a<i.fragments.length;a++)if(n(e,i,a)&&(a===i.fragments.length-1||r(e,i,a+1)))return a}return void 0===e&&(e={}),e.createJPEGBasicOffsetTable=function(e,i,t){if(void 0===e)throw"dicomParser.createJPEGBasicOffsetTable: missing required parameter dataSet";if(void 0===i)throw"dicomParser.createJPEGBasicOffsetTable: missing required parameter pixelDataElement";if("x7fe00010"!==i.tag)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'pixelDataElement' refers to non pixel data tag (expected tag = x7fe00010'";if(i.encapsulatedPixelData!==!0)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(i.hadUndefinedLength!==!0)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(void 0===i.basicOffsetTable)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(void 0===i.fragments)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(i.fragments.length<=0)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(t&&t.length<=0)throw"dicomParser.createJPEGBasicOffsetTable: parameter 'fragments' must not be zero length";t=t||i.fragments;var n=[],o=0;if(!r(e,i,o))throw"first fragment does not have JPEG start of image marker";for(;;){n.push(i.fragments[o].offset);var s=a(e,i,o);if(void 0===s||s===i.fragments.length-1)return n;o=s+1}},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.explicitDataSetToJS=function(i,t){if(void 0===i)throw"dicomParser.explicitDataSetToJS: missing required parameter dataSet";t=t||{omitPrivateAttibutes:!0,maxElementLength:128};var r={};for(var n in i.elements){var a=i.elements[n];if(t.omitPrivateAttibutes!==!0||!e.isPrivateTag(n))if(a.items){for(var o=[],s=0;s<a.items.length;s++)o.push(e.explicitDataSetToJS(a.items[s].dataSet,t));r[n]=o}else{var f;f=void 0,a.length<t.maxElementLength&&(f=e.explicitElementToString(i,a)),void 0!==f?r[n]=f:r[n]={dataOffset:a.dataOffset,length:a.length}}}return r},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.explicitElementToString=function(i,t){function r(e,t){for(var r="",n=0;n<e;n++)0!==n&&(r+="/"),r+=t.call(i,a,n).toString();return r}if(void 0===i||void 0===t)throw"dicomParser.explicitElementToString: missing required parameters";if(void 0===t.vr)throw"dicomParser.explicitElementToString: cannot convert implicit element to string";var n=t.vr,a=t.tag,o;if(e.isStringVr(n)===!0)o=i.string(a);else{if("AT"==n){var s=i.uint32(a);if(void 0===s)return;return s<0&&(s=4294967295+s+1),"x"+s.toString(16).toUpperCase()}"US"==n?o=r(t.length/2,i.uint16):"SS"===n?o=r(t.length/2,i.int16):"UL"==n?o=r(t.length/4,i.uint32):"SL"===n?o=r(t.length/4,i.int32):"FD"==n?o=r(t.length/8,i.double):"FL"==n&&(o=r(t.length/4,i.float))}return o},e}(e),e=function(e){"use strict";function i(e,i){switch(e){case 2:return i%4==0&&i%100||i%400==0?29:28;case 9:case 4:case 6:case 11:return 30;default:return 31}}function t(e,t,r){return!isNaN(r)&&(t>0&&t<=12&&e>0&&e<=i(t,r))}return void 0===e&&(e={}),e.parseDA=function(e,i){if(e&&8===e.length){var r=parseInt(e.substring(0,4),10),n=parseInt(e.substring(4,6),10),a=parseInt(e.substring(6,8),10);if(i&&t(a,n,r)!==!0)throw"invalid DA '"+e+"'";return{year:r,month:n,day:a}}if(i)throw"invalid DA '"+e+"'"},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.parseTM=function(e,i){if(e.length>=2){var t=parseInt(e.substring(0,2),10),r=e.length>=4?parseInt(e.substring(2,4),10):void 0,n=e.length>=6?parseInt(e.substring(4,6),10):void 0,a=e.length>=8?parseInt(e.substring(7,13),10):void 0;if(i&&(isNaN(t)||void 0!==r&&isNaN(r)||void 0!==n&&isNaN(n)||void 0!==a&&isNaN(a)||t<0||t>23||r&&(r<0||r>59)||n&&(n<0||n>59)||a&&(a<0||a>999999)))throw"invalid TM '"+e+"'";return{hours:t,minutes:r,seconds:n,fractionalSeconds:a}}if(i)throw"invalid TM '"+e+"'"},e}(e),e=function(e){"use strict";void 0===e&&(e={});var i={AE:!0,AS:!0,AT:!1,CS:!0,DA:!0,DS:!0,DT:!0,FL:!1,FD:!1,IS:!0,LO:!0,LT:!0,OB:!1,OD:!1,OF:!1,OW:!1,PN:!0,SH:!0,SL:!1,SQ:!1,SS:!1,ST:!0,TM:!0,UI:!0,UL:!1,UN:void 0,UR:!0,US:!1,UT:!0};return e.isStringVr=function(e){return i[e]},e.isPrivateTag=function(e){var i=parseInt(e[4]),t=i%2===1;return t},e.parsePN=function(e){if(void 0!==e){var i=e.split("^");return{familyName:i[0],givenName:i[1],middleName:i[2],prefix:i[3],suffix:i[4]}}},e}(e),e=function(e){"use strict";void 0===e&&(e={});var i=!1;return e.readEncapsulatedPixelData=function(t,r,n){if(i||(i=!0,console&&console.log&&console.log("WARNING: dicomParser.readEncapsulatedPixelData() has been deprecated")),void 0===t)throw"dicomParser.readEncapsulatedPixelData: missing required parameter 'dataSet'";if(void 0===r)throw"dicomParser.readEncapsulatedPixelData: missing required parameter 'element'";if(void 0===n)throw"dicomParser.readEncapsulatedPixelData: missing required parameter 'frame'";if("x7fe00010"!==r.tag)throw"dicomParser.readEncapsulatedPixelData: parameter 'element' refers to non pixel data tag (expected tag = x7fe00010'";if(r.encapsulatedPixelData!==!0)throw"dicomParser.readEncapsulatedPixelData: parameter 'element' refers to pixel data element that does not have encapsulated pixel data";if(r.hadUndefinedLength!==!0)throw"dicomParser.readEncapsulatedPixelData: parameter 'element' refers to pixel data element that does not have encapsulated pixel data";if(void 0===r.basicOffsetTable)throw"dicomParser.readEncapsulatedPixelData: parameter 'element' refers to pixel data element that does not have encapsulated pixel data";if(void 0===r.fragments)throw"dicomParser.readEncapsulatedPixelData: parameter 'element' refers to pixel data element that does not have encapsulated pixel data";if(n<0)throw"dicomParser.readEncapsulatedPixelData: parameter 'frame' must be >= 0";return 0!==r.basicOffsetTable.length?e.readEncapsulatedImageFrame(t,r,n):e.readEncapsulatedPixelDataFromFragments(t,r,0,r.fragments.length)},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.alloc=function(e,i){if("undefined"!=typeof Buffer&&e instanceof Buffer)return Buffer.alloc(i);if(e instanceof Uint8Array)return new Uint8Array(i);throw"dicomParser.alloc: unknown type for byteArray"},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.bigEndianByteArrayParser={readUint16:function(e,i){if(i<0)throw"bigEndianByteArrayParser.readUint16: position cannot be less than 0";if(i+2>e.length)throw"bigEndianByteArrayParser.readUint16: attempt to read past end of buffer";return(e[i]<<8)+e[i+1]},readInt16:function(e,i){if(i<0)throw"bigEndianByteArrayParser.readInt16: position cannot be less than 0";if(i+2>e.length)throw"bigEndianByteArrayParser.readInt16: attempt to read past end of buffer";var t=(e[i]<<8)+e[i+1];return 32768&t&&(t=t-65535-1),t},readUint32:function(e,i){if(i<0)throw"bigEndianByteArrayParser.readUint32: position cannot be less than 0";if(i+4>e.length)throw"bigEndianByteArrayParser.readUint32: attempt to read past end of buffer";var t=256*(256*(256*e[i]+e[i+1])+e[i+2])+e[i+3];return t},readInt32:function(e,i){if(i<0)throw"bigEndianByteArrayParser.readInt32: position cannot be less than 0";if(i+4>e.length)throw"bigEndianByteArrayParser.readInt32: attempt to read past end of buffer";var t=(e[i]<<24)+(e[i+1]<<16)+(e[i+2]<<8)+e[i+3];return t},readFloat:function(e,i){if(i<0)throw"bigEndianByteArrayParser.readFloat: position cannot be less than 0";if(i+4>e.length)throw"bigEndianByteArrayParser.readFloat: attempt to read past end of buffer";var t=new Uint8Array(4);t[3]=e[i],t[2]=e[i+1],t[1]=e[i+2],t[0]=e[i+3];var r=new Float32Array(t.buffer);return r[0]},readDouble:function(e,i){if(i<0)throw"bigEndianByteArrayParser.readDouble: position cannot be less than 0";if(i+8>e.length)throw"bigEndianByteArrayParser.readDouble: attempt to read past end of buffer";var t=new Uint8Array(8);t[7]=e[i],t[6]=e[i+1],t[5]=e[i+2],t[4]=e[i+3],t[3]=e[i+4],t[2]=e[i+5],t[1]=e[i+6],t[0]=e[i+7];var r=new Float64Array(t.buffer);return r[0]}},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.readFixedString=function(e,i,t){if(t<0)throw"dicomParser.readFixedString - length cannot be less than 0";if(i+t>e.length)throw"dicomParser.readFixedString: attempt to read past end of buffer";for(var r="",n,a=0;a<t;a++){if(n=e[i+a],0===n)return i+=t,r;r+=String.fromCharCode(n)}return r},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.ByteStream=function(e,i,t){if(void 0===e)throw"dicomParser.ByteStream: missing required parameter 'byteArrayParser'";if(void 0===i)throw"dicomParser.ByteStream: missing required parameter 'byteArray'";if(i instanceof Uint8Array==!1&&i instanceof Buffer==!1)throw"dicomParser.ByteStream: parameter byteArray is not of type Uint8Array or Buffer";if(t<0)throw"dicomParser.ByteStream: parameter 'position' cannot be less than 0";if(t>=i.length)throw"dicomParser.ByteStream: parameter 'position' cannot be greater than or equal to 'byteArray' length";this.byteArrayParser=e,this.byteArray=i,this.position=t?t:0,this.warnings=[]},e.ByteStream.prototype.seek=function(e){if(this.position+e<0)throw"dicomParser.ByteStream.prototype.seek: cannot seek to position < 0";this.position+=e},e.ByteStream.prototype.readByteStream=function(i){if(this.position+i>this.byteArray.length)throw"dicomParser.ByteStream.prototype.readByteStream: readByteStream - buffer overread";var t=e.sharedCopy(this.byteArray,this.position,i);return this.position+=i,new e.ByteStream(this.byteArrayParser,t)},e.ByteStream.prototype.readUint16=function(){var e=this.byteArrayParser.readUint16(this.byteArray,this.position);return this.position+=2,e},e.ByteStream.prototype.readUint32=function(){var e=this.byteArrayParser.readUint32(this.byteArray,this.position);return this.position+=4,e},e.ByteStream.prototype.readFixedString=function(i){var t=e.readFixedString(this.byteArray,this.position,i);return this.position+=i,t},e}(e),e=function(e){"use strict";function i(e,i){return void 0!==e.parser?e.parser:i}return void 0===e&&(e={}),e.DataSet=function(e,i,t){this.byteArrayParser=e,this.byteArray=i,this.elements=t},e.DataSet.prototype.uint16=function(e,t){var r=this.elements[e];if(t=void 0!==t?t:0,r&&0!==r.length)return i(r,this.byteArrayParser).readUint16(this.byteArray,r.dataOffset+2*t)},e.DataSet.prototype.int16=function(e,t){var r=this.elements[e];if(t=void 0!==t?t:0,r&&0!==r.length)return i(r,this.byteArrayParser).readInt16(this.byteArray,r.dataOffset+2*t)},e.DataSet.prototype.uint32=function(e,t){var r=this.elements[e];if(t=void 0!==t?t:0,r&&0!==r.length)return i(r,this.byteArrayParser).readUint32(this.byteArray,r.dataOffset+4*t)},e.DataSet.prototype.int32=function(e,t){var r=this.elements[e];if(t=void 0!==t?t:0,r&&0!==r.length)return i(r,this.byteArrayParser).readInt32(this.byteArray,r.dataOffset+4*t)},e.DataSet.prototype.float=function(e,t){var r=this.elements[e];if(t=void 0!==t?t:0,r&&0!==r.length)return i(r,this.byteArrayParser).readFloat(this.byteArray,r.dataOffset+4*t)},e.DataSet.prototype.double=function(e,t){var r=this.elements[e];if(t=void 0!==t?t:0,r&&0!==r.length)return i(r,this.byteArrayParser).readDouble(this.byteArray,r.dataOffset+8*t)},e.DataSet.prototype.numStringValues=function(i){var t=this.elements[i];if(t&&t.length>0){var r=e.readFixedString(this.byteArray,t.dataOffset,t.length),n=r.match(/\\/g);return null===n?1:n.length+1}},e.DataSet.prototype.string=function(i,t){var r=this.elements[i];if(r&&r.length>0){var n=e.readFixedString(this.byteArray,r.dataOffset,r.length);if(t>=0){var a=n.split("\\");return a[t].trim()}return n.trim()}},e.DataSet.prototype.text=function(i,t){var r=this.elements[i];if(r&&r.length>0){var n=e.readFixedString(this.byteArray,r.dataOffset,r.length);if(t>=0){var a=n.split("\\");return a[t].replace(/ +$/,"")}return n.replace(/ +$/,"")}},e.DataSet.prototype.floatString=function(e,i){var t=this.elements[e];if(t&&t.length>0){i=void 0!==i?i:0;var r=this.string(e,i);if(void 0!==r)return parseFloat(r)}},e.DataSet.prototype.intString=function(e,i){var t=this.elements[e];if(t&&t.length>0){i=void 0!==i?i:0;var r=this.string(e,i);if(void 0!==r)return parseInt(r)}},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.findEndOfEncapsulatedElement=function(i,t,r){if(void 0===i)throw"dicomParser.findEndOfEncapsulatedElement: missing required parameter 'byteStream'";if(void 0===t)throw"dicomParser.findEndOfEncapsulatedElement: missing required parameter 'element'";t.encapsulatedPixelData=!0,t.basicOffsetTable=[],t.fragments=[];var n=e.readTag(i);if("xfffee000"!==n)throw"dicomParser.findEndOfEncapsulatedElement: basic offset table not found";for(var a=i.readUint32(),o=a/4,s=0;s<o;s++){var f=i.readUint32();t.basicOffsetTable.push(f)}for(var l=i.position;i.position<i.byteArray.length;){var u=e.readTag(i),c=i.readUint32();if("xfffee0dd"===u)return i.seek(c),void(t.length=i.position-t.dataOffset);if("xfffee000"!==u)return r&&r.push("unexpected tag "+u+" while searching for end of pixel data element with undefined length"),c>i.byteArray.length-i.position&&(c=i.byteArray.length-i.position),t.fragments.push({offset:i.position-l-8,position:i.position,length:c}),i.seek(c),void(t.length=i.position-t.dataOffset);t.fragments.push({offset:i.position-l-8,position:i.position,length:c}),i.seek(c)}r&&r.push("pixel data element "+t.tag+" missing sequence delimiter tag xfffee0dd")},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.findItemDelimitationItemAndSetElementLength=function(e,i){if(void 0===e)throw"dicomParser.readDicomElementImplicit: missing required parameter 'byteStream'";for(var t=8,r=e.byteArray.length-t;e.position<=r;){var n=e.readUint16();if(65534===n){var a=e.readUint16();if(57357===a){var o=e.readUint32();return 0!==o&&e.warnings("encountered non zero length following item delimiter at position"+e.position-4+" while reading element of undefined length with tag ' + element.tag"),void(i.length=e.position-i.dataOffset)}}}i.length=e.byteArray.length-i.dataOffset,e.seek(e.byteArray.length-e.position)},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.littleEndianByteArrayParser={readUint16:function(e,i){if(i<0)throw"littleEndianByteArrayParser.readUint16: position cannot be less than 0";if(i+2>e.length)throw"littleEndianByteArrayParser.readUint16: attempt to read past end of buffer";return e[i]+256*e[i+1]},readInt16:function(e,i){if(i<0)throw"littleEndianByteArrayParser.readInt16: position cannot be less than 0";if(i+2>e.length)throw"littleEndianByteArrayParser.readInt16: attempt to read past end of buffer";var t=e[i]+(e[i+1]<<8);return 32768&t&&(t=t-65535-1),t},readUint32:function(e,i){if(i<0)throw"littleEndianByteArrayParser.readUint32: position cannot be less than 0";if(i+4>e.length)throw"littleEndianByteArrayParser.readUint32: attempt to read past end of buffer";var t=e[i]+256*e[i+1]+256*e[i+2]*256+256*e[i+3]*256*256;return t},readInt32:function(e,i){if(i<0)throw"littleEndianByteArrayParser.readInt32: position cannot be less than 0";if(i+4>e.length)throw"littleEndianByteArrayParser.readInt32: attempt to read past end of buffer";var t=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24);return t},readFloat:function(e,i){if(i<0)throw"littleEndianByteArrayParser.readFloat: position cannot be less than 0";if(i+4>e.length)throw"littleEndianByteArrayParser.readFloat: attempt to read past end of buffer";var t=new Uint8Array(4);t[0]=e[i],t[1]=e[i+1],t[2]=e[i+2],t[3]=e[i+3];var r=new Float32Array(t.buffer);return r[0]},readDouble:function(e,i){if(i<0)throw"littleEndianByteArrayParser.readDouble: position cannot be less than 0";if(i+8>e.length)throw"littleEndianByteArrayParser.readDouble: attempt to read past end of buffer";var t=new Uint8Array(8);t[0]=e[i],t[1]=e[i+1],t[2]=e[i+2],t[3]=e[i+3],t[4]=e[i+4],t[5]=e[i+5],t[6]=e[i+6],t[7]=e[i+7];var r=new Float64Array(t.buffer);return r[0]}},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.parseDicomDataSetExplicit=function(i,t,r,n){if(r=void 0===r?t.byteArray.length:r,n=n||{},void 0===t)throw"dicomParser.parseDicomDataSetExplicit: missing required parameter 'byteStream'";if(r<t.position||r>t.byteArray.length)throw"dicomParser.parseDicomDataSetExplicit: invalid value for parameter 'maxPosition'";for(var a=i.elements;t.position<r;){var o=e.readDicomElementExplicit(t,i.warnings,n.untilTag);if(a[o.tag]=o,o.tag===n.untilTag)return}if(t.position>r)throw"dicomParser:parseDicomDataSetExplicit: buffer overrun"},e.parseDicomDataSetImplicit=function(i,t,r,n){if(r=void 0===r?i.byteArray.length:r,n=n||{},void 0===t)throw"dicomParser.parseDicomDataSetImplicit: missing required parameter 'byteStream'";if(r<t.position||r>t.byteArray.length)throw"dicomParser.parseDicomDataSetImplicit: invalid value for parameter 'maxPosition'";for(var a=i.elements;t.position<r;){var o=e.readDicomElementImplicit(t,n.untilTag,n.vrCallback);if(a[o.tag]=o,o.tag===n.untilTag)return}},e}(e),e=function(e){"use strict";function i(e){return"OB"===e||"OW"===e||"SQ"===e||"OF"===e||"UT"===e||"UN"===e?4:2}return void 0===e&&(e={}),e.readDicomElementExplicit=function(t,r,n){if(void 0===t)throw"dicomParser.readDicomElementExplicit: missing required parameter 'byteStream'";var a={tag:e.readTag(t),vr:t.readFixedString(2)},o=i(a.vr);return 2===o?(a.length=t.readUint16(),a.dataOffset=t.position):(t.seek(2),a.length=t.readUint32(),a.dataOffset=t.position),4294967295===a.length&&(a.hadUndefinedLength=!0),a.tag===n?a:"SQ"===a.vr?(e.readSequenceItemsExplicit(t,a,r),a):4294967295===a.length?"x7fe00010"===a.tag?(e.findEndOfEncapsulatedElement(t,a,r),a):(e.findItemDelimitationItemAndSetElementLength(t,a),a):(t.seek(a.length),a)},e}(e),e=function(e){"use strict";function i(i,t,r){if("undefined"!=typeof r)return"SQ"===r(i.tag);if(t.position+4<=t.byteArray.length){var n=e.readTag(t);return t.seek(-4),"xfffee000"===n||"xfffee0dd"===n}return t.warnings.push("eof encountered before finding sequence item tag or sequence delimiter tag in peeking to determine VR"),!1}return void 0===e&&(e={}),e.readDicomElementImplicit=function(t,r,n){if(void 0===t)throw"dicomParser.readDicomElementImplicit: missing required parameter 'byteStream'";var a={tag:e.readTag(t),length:t.readUint32(),dataOffset:t.position};return 4294967295===a.length&&(a.hadUndefinedLength=!0),a.tag===r?a:i(a,t,n)?(e.readSequenceItemsImplicit(t,a),a):a.hadUndefinedLength?(e.findItemDelimitationItemAndSetElementLength(t,a),a):(t.seek(a.length),a)},e}(e),e=function(e){"use strict";function i(e,i){for(var t=0;t<e.length;t++)if(e[t].offset===i)return t}function t(e,i,t,r){if(e===i.length-1)return t.length-r;for(var n=i[e+1],a=r+1;a<t.length;a++)if(t[a].offset===n)return a-r;throw"dicomParser.calculateNumberOfFragmentsForFrame: could not find fragment with offset matching basic offset table"}return void 0===e&&(e={}),e.readEncapsulatedImageFrame=function(r,n,a,o,s){if(o=o||n.basicOffsetTable,s=s||n.fragments,void 0===r)throw"dicomParser.readEncapsulatedImageFrame: missing required parameter 'dataSet'";if(void 0===n)throw"dicomParser.readEncapsulatedImageFrame: missing required parameter 'pixelDataElement'";if(void 0===a)throw"dicomParser.readEncapsulatedImageFrame: missing required parameter 'frameIndex'";if(void 0===o)throw"dicomParser.readEncapsulatedImageFrame: parameter 'pixelDataElement' does not have basicOffsetTable";if("x7fe00010"!==n.tag)throw"dicomParser.readEncapsulatedImageFrame: parameter 'pixelDataElement' refers to non pixel data tag (expected tag = x7fe00010'";if(n.encapsulatedPixelData!==!0)throw"dicomParser.readEncapsulatedImageFrame: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(n.hadUndefinedLength!==!0)throw"dicomParser.readEncapsulatedImageFrame: parameter 'pixelDataElement' refers to pixel data element that does not have undefined length";if(void 0===n.fragments)throw"dicomParser.readEncapsulatedImageFrame: parameter 'pixelDataElement' refers to pixel data element that does not have fragments";if(0===o.length)throw"dicomParser.readEncapsulatedImageFrame: basicOffsetTable has zero entries";if(a<0)throw"dicomParser.readEncapsulatedImageFrame: parameter 'frameIndex' must be >= 0";if(a>=o.length)throw"dicomParser.readEncapsulatedImageFrame: parameter 'frameIndex' must be < basicOffsetTable.length";var f=o[a],l=i(s,f);if(void 0===l)throw"dicomParser.readEncapsulatedImageFrame: unable to find fragment that matches basic offset table entry";var u=t(a,o,s,l);return e.readEncapsulatedPixelDataFromFragments(r,n,l,u,s)},e}(e),e=function(e){"use strict";function i(e,i,t){for(var r=0,n=i;n<i+t;n++)r+=e[n].length;return r}return void 0===e&&(e={}),e.readEncapsulatedPixelDataFromFragments=function(t,r,n,a,o){if(a=a||1,o=o||r.fragments,void 0===t)throw"dicomParser.readEncapsulatedPixelDataFromFragments: missing required parameter 'dataSet'";if(void 0===r)throw"dicomParser.readEncapsulatedPixelDataFromFragments: missing required parameter 'pixelDataElement'";if(void 0===n)throw"dicomParser.readEncapsulatedPixelDataFromFragments: missing required parameter 'startFragmentIndex'";if(void 0===a)throw"dicomParser.readEncapsulatedPixelDataFromFragments: missing required parameter 'numFragments'";if("x7fe00010"!==r.tag)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'pixelDataElement' refers to non pixel data tag (expected tag = x7fe00010'";if(r.encapsulatedPixelData!==!0)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(r.hadUndefinedLength!==!0)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(void 0===r.basicOffsetTable)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(void 0===r.fragments)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(r.fragments.length<=0)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'pixelDataElement' refers to pixel data element that does not have encapsulated pixel data";if(n<0)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'startFragmentIndex' must be >= 0";if(n>=r.fragments.length)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'startFragmentIndex' must be < number of fragments";
if(a<1)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'numFragments' must be > 0";if(n+a>r.fragments.length)throw"dicomParser.readEncapsulatedPixelDataFromFragments: parameter 'startFragment' + 'numFragments' < number of fragments";var s=new e.ByteStream(t.byteArrayParser,t.byteArray,r.dataOffset),f=e.readSequenceItem(s);if("xfffee000"!==f.tag)throw"dicomParser.readEncapsulatedPixelData: missing basic offset table xfffee000";s.seek(f.length);var l=s.position,u=8;if(1===a)return e.sharedCopy(s.byteArray,l+o[n].offset+u,o[n].length);for(var c=i(o,n,a),d=e.alloc(s.byteArray,c),h=0,m=n;m<n+a;m++)for(var b=l+o[m].offset+u,v=0;v<o[m].length;v++)d[h++]=s.byteArray[b++];return d},e}(e),e=function(e){return void 0===e&&(e={}),e.readPart10Header=function(i,t){function r(){a.seek(128);var e=a.readFixedString(4);if("DICM"!==e)throw"dicomParser.readPart10Header: DICM prefix not found at location 132 - this is not a valid DICOM P10 file."}function n(){r();for(var i=[],t={};a.position<a.byteArray.length;){var n=a.position,o=e.readDicomElementExplicit(a,i);if(o.tag>"x0002ffff"){a.position=n;break}o.parser=e.littleEndianByteArrayParser,t[o.tag]=o}var s=new e.DataSet(a.byteArrayParser,a.byteArray,t);return s.warnings=a.warnings,s.position=a.position,s}if(void 0===i)throw"dicomParser.readPart10Header: missing required parameter 'byteArray'";var a=new e.ByteStream(e.littleEndianByteArrayParser,i);return n()},e}(e),e=function(e){"use strict";function i(i,t){for(var r={};i.position<i.byteArray.length;){var n=e.readDicomElementExplicit(i,t);if(r[n.tag]=n,"xfffee00d"===n.tag)return new e.DataSet(i.byteArrayParser,i.byteArray,r)}return t.push("eof encountered before finding item delimiter tag while reading sequence item of undefined length"),new e.DataSet(i.byteArrayParser,i.byteArray,r)}function t(t,r){var n=e.readSequenceItem(t);return 4294967295===n.length?(n.hadUndefinedLength=!0,n.dataSet=i(t,r),n.length=t.position-n.dataOffset):(n.dataSet=new e.DataSet(t.byteArrayParser,t.byteArray,{}),e.parseDicomDataSetExplicit(n.dataSet,t,t.position+n.length)),n}function r(i,r,n){for(;i.position+4<=i.byteArray.length;){var a=e.readTag(i);if(i.seek(-4),"xfffee0dd"===a)return r.length=i.position-r.dataOffset,i.seek(8),r;var o=t(i,n);r.items.push(o)}n.push("eof encountered before finding sequence delimitation tag while reading sequence of undefined length"),r.length=i.position-r.dataOffset}function n(e,i,r){for(var n=i.dataOffset+i.length;e.position<n;){var a=t(e,r);i.items.push(a)}}return void 0===e&&(e={}),e.readSequenceItemsExplicit=function(e,i,t){if(void 0===e)throw"dicomParser.readSequenceItemsExplicit: missing required parameter 'byteStream'";if(void 0===i)throw"dicomParser.readSequenceItemsExplicit: missing required parameter 'element'";i.items=[],4294967295===i.length?r(e,i,t):n(e,i,t)},e}(e),e=function(e){"use strict";function i(i,t){for(var r={};i.position<i.byteArray.length;){var n=e.readDicomElementImplicit(i,void 0,t);if(r[n.tag]=n,"xfffee00d"===n.tag)return new e.DataSet(i.byteArrayParser,i.byteArray,r)}return i.warnings.push("eof encountered before finding sequence item delimiter in sequence item of undefined length"),new e.DataSet(i.byteArrayParser,i.byteArray,r)}function t(t,r){var n=e.readSequenceItem(t);return 4294967295===n.length?(n.hadUndefinedLength=!0,n.dataSet=i(t,r),n.length=t.position-n.dataOffset):(n.dataSet=new e.DataSet(t.byteArrayParser,t.byteArray,{}),e.parseDicomDataSetImplicit(n.dataSet,t,t.position+n.length,{vrCallback:r})),n}function r(i,r,n){for(;i.position+4<=i.byteArray.length;){var a=e.readTag(i);if(i.seek(-4),"xfffee0dd"===a)return r.length=i.position-r.dataOffset,i.seek(8),r;var o=t(i,n);r.items.push(o)}i.warnings.push("eof encountered before finding sequence delimiter in sequence of undefined length"),r.length=i.byteArray.length-r.dataOffset}function n(e,i,r){for(var n=i.dataOffset+i.length;e.position<n;){var a=t(e,r);i.items.push(a)}}return void 0===e&&(e={}),e.readSequenceItemsImplicit=function(e,i,t){if(void 0===e)throw"dicomParser.readSequenceItemsImplicit: missing required parameter 'byteStream'";if(void 0===i)throw"dicomParser.readSequenceItemsImplicit: missing required parameter 'element'";i.items=[],4294967295===i.length?r(e,i,t):n(e,i,t)},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.readSequenceItem=function(i){if(void 0===i)throw"dicomParser.readSequenceItem: missing required parameter 'byteStream'";var t={tag:e.readTag(i),length:i.readUint32(),dataOffset:i.position};if("xfffee000"!==t.tag){var r=i.position;throw"dicomParser.readSequenceItem: item tag (FFFE,E000) not found at offset "+r}return t},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.readTag=function(e){if(void 0===e)throw"dicomParser.readTag: missing required parameter 'byteStream'";var i=256*e.readUint16()*256,t=e.readUint16(),r="x"+("00000000"+(i+t).toString(16)).substr(-8);return r},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.sharedCopy=function(e,i,t){if("undefined"!=typeof Buffer&&e instanceof Buffer)return e.slice(i,i+t);if(e instanceof Uint8Array)return new Uint8Array(e.buffer,e.byteOffset+i,t);throw"dicomParser.from: unknown type for byteArray"},e}(e),e=function(e){"use strict";return void 0===e&&(e={}),e.version="1.7.1",e}(e);return e}),function(e,i,t,r){"use strict";function n(e,i,t){return setTimeout(l(e,t),i)}function a(e,i,t){return!!Array.isArray(e)&&(o(e,t[i],t),!0)}function o(e,i,t){var n;if(e)if(e.forEach)e.forEach(i,t);else if(e.length!==r)for(n=0;n<e.length;)i.call(t,e[n],n,e),n++;else for(n in e)e.hasOwnProperty(n)&&i.call(t,e[n],n,e)}function s(i,t,r){var n="DEPRECATED METHOD: "+t+"\n"+r+" AT \n";return function(){var t=new Error("get-stack-trace"),r=t&&t.stack?t.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",a=e.console&&(e.console.warn||e.console.log);return a&&a.call(e.console,n,r),i.apply(this,arguments)}}function f(e,i,t){var r=i.prototype,n;n=e.prototype=Object.create(r),n.constructor=e,n._super=r,t&&he(n,t)}function l(e,i){return function t(){return e.apply(i,arguments)}}function u(e,i){return typeof e==le?e.apply(i?i[0]||r:r,i):e}function c(e,i){return e===r?i:e}function d(e,i,t){o(v(i),function(i){e.addEventListener(i,t,!1)})}function h(e,i,t){o(v(i),function(i){e.removeEventListener(i,t,!1)})}function m(e,i){for(;e;){if(e==i)return!0;e=e.parentNode}return!1}function b(e,i){return e.indexOf(i)>-1}function v(e){return e.trim().split(/\s+/g)}function w(e,i,t){if(e.indexOf&&!t)return e.indexOf(i);for(var r=0;r<e.length;){if(t&&e[r][t]==i||!t&&e[r]===i)return r;r++}return-1}function p(e){return Array.prototype.slice.call(e,0)}function g(e,i,t){for(var r=[],n=[],a=0;a<e.length;){var o=i?e[a][i]:e[a];w(n,o)<0&&r.push(e[a]),n[a]=o,a++}return t&&(r=i?r.sort(function e(t,r){return t[i]>r[i]}):r.sort()),r}function k(e,i){for(var t,n,a=i[0].toUpperCase()+i.slice(1),o=0;o<se.length;){if(t=se[o],n=t?t+a:i,n in e)return n;o++}return r}function _(){return ve++}function y(i){var t=i.ownerDocument||i;return t.defaultView||t.parentWindow||e}function T(e,i){var t=this;this.manager=e,this.callback=i,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(i){u(e.options.enable,[e])&&t.handler(i)},this.init()}function M(e){var i,t=e.options.inputClass;return new(i=t?t:ge?F:ke?z:pe?Y:N)(e,C)}function C(e,i,t){var r=t.pointers.length,n=t.changedPointers.length,a=i&xe&&r-n===0,o=i&(Se|Ae)&&r-n===0;t.isFirst=!!a,t.isFinal=!!o,a&&(e.session={}),t.eventType=i,x(e,t),e.emit("hammer.input",t),e.recognize(t),e.session.prevInput=t}function x(e,i){var t=e.session,r=i.pointers,n=r.length;t.firstInput||(t.firstInput=A(i)),n>1&&!t.firstMultiple?t.firstMultiple=A(i):1===n&&(t.firstMultiple=!1);var a=t.firstInput,o=t.firstMultiple,s=o?o.center:a.center,f=i.center=P(r);i.timeStamp=de(),i.deltaTime=i.timeStamp-a.timeStamp,i.angle=R(s,f),i.distance=D(s,f),E(t,i),i.offsetDirection=L(i.deltaX,i.deltaY);var l=I(i.deltaTime,i.deltaX,i.deltaY);i.overallVelocityX=l.x,i.overallVelocityY=l.y,i.overallVelocity=ce(l.x)>ce(l.y)?l.x:l.y,i.scale=o?B(o.pointers,r):1,i.rotation=o?O(o.pointers,r):0,i.maxPointers=t.prevInput?i.pointers.length>t.prevInput.maxPointers?i.pointers.length:t.prevInput.maxPointers:i.pointers.length,S(t,i);var u=e.element;m(i.srcEvent.target,u)&&(u=i.srcEvent.target),i.target=u}function E(e,i){var t=i.center,r=e.offsetDelta||{},n=e.prevDelta||{},a=e.prevInput||{};i.eventType!==xe&&a.eventType!==Se||(n=e.prevDelta={x:a.deltaX||0,y:a.deltaY||0},r=e.offsetDelta={x:t.x,y:t.y}),i.deltaX=n.x+(t.x-r.x),i.deltaY=n.y+(t.y-r.y)}function S(e,i){var t=e.lastInterval||i,n=i.timeStamp-t.timeStamp,a,o,s,f;if(i.eventType!=Ae&&(n>Ce||t.velocity===r)){var l=i.deltaX-t.deltaX,u=i.deltaY-t.deltaY,c=I(n,l,u);o=c.x,s=c.y,a=ce(c.x)>ce(c.y)?c.x:c.y,f=L(l,u),e.lastInterval=i}else a=t.velocity,o=t.velocityX,s=t.velocityY,f=t.direction;i.velocity=a,i.velocityX=o,i.velocityY=s,i.direction=f}function A(e){for(var i=[],t=0;t<e.pointers.length;)i[t]={clientX:ue(e.pointers[t].clientX),clientY:ue(e.pointers[t].clientY)},t++;return{timeStamp:de(),pointers:i,center:P(i),deltaX:e.deltaX,deltaY:e.deltaY}}function P(e){var i=e.length;if(1===i)return{x:ue(e[0].clientX),y:ue(e[0].clientY)};for(var t=0,r=0,n=0;n<i;)t+=e[n].clientX,r+=e[n].clientY,n++;return{x:ue(t/i),y:ue(r/i)}}function I(e,i,t){return{x:i/e||0,y:t/e||0}}function L(e,i){return e===i?Pe:ce(e)>=ce(i)?e<0?Ie:Le:i<0?De:Re}function D(e,i,t){t||(t=Fe);var r=i[t[0]]-e[t[0]],n=i[t[1]]-e[t[1]];return Math.sqrt(r*r+n*n)}function R(e,i,t){t||(t=Fe);var r=i[t[0]]-e[t[0]],n=i[t[1]]-e[t[1]];return 180*Math.atan2(n,r)/Math.PI}function O(e,i){return R(i[1],i[0],Ue)+R(e[1],e[0],Ue)}function B(e,i){return D(i[0],i[1],Ue)/D(e[0],e[1],Ue)}function N(){this.evEl=ze,this.evWin=je,this.allow=!0,this.pressed=!1,T.apply(this,arguments)}function F(){this.evEl=qe,this.evWin=We,T.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function U(){this.evTarget=Xe,this.evWin=Ke,this.started=!1,T.apply(this,arguments)}function H(e,i){var t=p(e.touches),r=p(e.changedTouches);return i&(Se|Ae)&&(t=g(t.concat(r),"identifier",!0)),[t,r]}function z(){this.evTarget=Je,this.targetIds={},T.apply(this,arguments)}function j(e,i){var t=p(e.touches),r=this.targetIds;if(i&(xe|Ee)&&1===t.length)return r[t[0].identifier]=!0,[t,t];var n,a,o=p(e.changedTouches),s=[],f=this.target;if(a=t.filter(function(e){return m(e.target,f)}),i===xe)for(n=0;n<a.length;)r[a[n].identifier]=!0,n++;for(n=0;n<o.length;)r[o[n].identifier]&&s.push(o[n]),i&(Se|Ae)&&delete r[o[n].identifier],n++;return s.length?[g(a.concat(s),"identifier",!0),s]:void 0}function Y(){T.apply(this,arguments);var e=l(this.handler,this);this.touch=new z(this.manager,e),this.mouse=new N(this.manager,e)}function V(e,i){this.manager=e,this.set(i)}function q(e){if(b(e,ri))return ri;var i=b(e,ni),t=b(e,ai);return i&&t?ri:i||t?i?ni:ai:b(e,ti)?ti:ii}function W(e){this.options=he({},this.defaults,e||{}),this.id=_(),this.manager=null,this.options.enable=c(this.options.enable,!0),this.state=oi,this.simultaneous={},this.requireFail=[]}function G(e){return e&ci?"cancel":e&li?"end":e&fi?"move":e&si?"start":""}function X(e){return e==Re?"down":e==De?"up":e==Ie?"left":e==Le?"right":""}function K(e,i){var t=i.manager;return t?t.get(e):e}function $(){W.apply(this,arguments)}function J(){$.apply(this,arguments),this.pX=null,this.pY=null}function Q(){$.apply(this,arguments)}function Z(){W.apply(this,arguments),this._timer=null,this._input=null}function ee(){$.apply(this,arguments)}function ie(){$.apply(this,arguments)}function te(){W.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function re(e,i){return i=i||{},i.recognizers=c(i.recognizers,re.defaults.preset),new ne(e,i)}function ne(e,i){this.options=he({},re.defaults,i||{}),this.options.inputTarget=this.options.inputTarget||e,this.handlers={},this.session={},this.recognizers=[],this.element=e,this.input=M(this),this.touchAction=new V(this,this.options.touchAction),ae(this,!0),o(this.options.recognizers,function(e){var i=this.add(new e[0](e[1]));e[2]&&i.recognizeWith(e[2]),e[3]&&i.requireFailure(e[3])},this)}function ae(e,i){var t=e.element;t.style&&o(e.options.cssProps,function(e,r){t.style[k(t.style,r)]=i?e:""})}function oe(e,t){var r=i.createEvent("Event");r.initEvent(e,!0,!0),r.gesture=t,t.target.dispatchEvent(r)}var se=["","webkit","Moz","MS","ms","o"],fe=i.createElement("div"),le="function",ue=Math.round,ce=Math.abs,de=Date.now,he;he="function"!=typeof Object.assign?function e(i){if(i===r||null===i)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(i),n=1;n<arguments.length;n++){var a=arguments[n];if(a!==r&&null!==a)for(var o in a)a.hasOwnProperty(o)&&(t[o]=a[o])}return t}:Object.assign;var me=s(function e(i,t,n){for(var a=Object.keys(t),o=0;o<a.length;)(!n||n&&i[a[o]]===r)&&(i[a[o]]=t[a[o]]),o++;return i},"extend","Use `assign`."),be=s(function e(i,t){return me(i,t,!0)},"merge","Use `assign`."),ve=1,we=/mobile|tablet|ip(ad|hone|od)|android/i,pe="ontouchstart"in e,ge=k(e,"PointerEvent")!==r,ke=pe&&we.test(navigator.userAgent),_e="touch",ye="pen",Te="mouse",Me="kinect",Ce=25,xe=1,Ee=2,Se=4,Ae=8,Pe=1,Ie=2,Le=4,De=8,Re=16,Oe=Ie|Le,Be=De|Re,Ne=Oe|Be,Fe=["x","y"],Ue=["clientX","clientY"];T.prototype={handler:function(){},init:function(){this.evEl&&d(this.element,this.evEl,this.domHandler),this.evTarget&&d(this.target,this.evTarget,this.domHandler),this.evWin&&d(y(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&h(this.element,this.evEl,this.domHandler),this.evTarget&&h(this.target,this.evTarget,this.domHandler),this.evWin&&h(y(this.element),this.evWin,this.domHandler)}};var He={mousedown:xe,mousemove:Ee,mouseup:Se},ze="mousedown",je="mousemove mouseup";f(N,T,{handler:function e(i){var t=He[i.type];t&xe&&0===i.button&&(this.pressed=!0),t&Ee&&1!==i.which&&(t=Se),this.pressed&&this.allow&&(t&Se&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[i],changedPointers:[i],pointerType:Te,srcEvent:i}))}});var Ye={pointerdown:xe,pointermove:Ee,pointerup:Se,pointercancel:Ae,pointerout:Ae},Ve={2:_e,3:ye,4:Te,5:Me},qe="pointerdown",We="pointermove pointerup pointercancel";e.MSPointerEvent&&!e.PointerEvent&&(qe="MSPointerDown",We="MSPointerMove MSPointerUp MSPointerCancel"),f(F,T,{handler:function e(i){var t=this.store,r=!1,n=i.type.toLowerCase().replace("ms",""),a=Ye[n],o=Ve[i.pointerType]||i.pointerType,s=o==_e,f=w(t,i.pointerId,"pointerId");a&xe&&(0===i.button||s)?f<0&&(t.push(i),f=t.length-1):a&(Se|Ae)&&(r=!0),f<0||(t[f]=i,this.callback(this.manager,a,{pointers:t,changedPointers:[i],pointerType:o,srcEvent:i}),r&&t.splice(f,1))}});var Ge={touchstart:xe,touchmove:Ee,touchend:Se,touchcancel:Ae},Xe="touchstart",Ke="touchstart touchmove touchend touchcancel";f(U,T,{handler:function e(i){var t=Ge[i.type];if(t===xe&&(this.started=!0),this.started){var r=H.call(this,i,t);t&(Se|Ae)&&r[0].length-r[1].length===0&&(this.started=!1),this.callback(this.manager,t,{pointers:r[0],changedPointers:r[1],pointerType:_e,srcEvent:i})}}});var $e={touchstart:xe,touchmove:Ee,touchend:Se,touchcancel:Ae},Je="touchstart touchmove touchend touchcancel";f(z,T,{handler:function e(i){var t=$e[i.type],r=j.call(this,i,t);r&&this.callback(this.manager,t,{pointers:r[0],changedPointers:r[1],pointerType:_e,srcEvent:i})}}),f(Y,T,{handler:function e(i,t,r){var n=r.pointerType==_e,a=r.pointerType==Te;if(n)this.mouse.allow=!1;else if(a&&!this.mouse.allow)return;t&(Se|Ae)&&(this.mouse.allow=!0),this.callback(i,t,r)},destroy:function e(){this.touch.destroy(),this.mouse.destroy()}});var Qe=k(fe.style,"touchAction"),Ze=Qe!==r,ei="compute",ii="auto",ti="manipulation",ri="none",ni="pan-x",ai="pan-y";V.prototype={set:function(e){e==ei&&(e=this.compute()),Ze&&this.manager.element.style&&(this.manager.element.style[Qe]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return o(this.manager.recognizers,function(i){u(i.options.enable,[i])&&(e=e.concat(i.getTouchAction()))}),q(e.join(" "))},preventDefaults:function(e){if(!Ze){var i=e.srcEvent,t=e.offsetDirection;if(this.manager.session.prevented)return void i.preventDefault();var r=this.actions,n=b(r,ri),a=b(r,ai),o=b(r,ni);if(n){var s=1===e.pointers.length,f=e.distance<2,l=e.deltaTime<250;if(s&&f&&l)return}if(!o||!a)return n||a&&t&Oe||o&&t&Be?this.preventSrc(i):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var oi=1,si=2,fi=4,li=8,ui=li,ci=16,di=32;W.prototype={defaults:{},set:function(e){return he(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(a(e,"recognizeWith",this))return this;var i=this.simultaneous;return e=K(e,this),i[e.id]||(i[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return a(e,"dropRecognizeWith",this)?this:(e=K(e,this),delete this.simultaneous[e.id],this)},requireFailure:function(e){if(a(e,"requireFailure",this))return this;var i=this.requireFail;return e=K(e,this),w(i,e)===-1&&(i.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(a(e,"dropRequireFailure",this))return this;e=K(e,this);var i=w(this.requireFail,e);return i>-1&&this.requireFail.splice(i,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){function i(i){t.manager.emit(i,e)}var t=this,r=this.state;r<li&&i(t.options.event+G(r)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),r>=li&&i(t.options.event+G(r))},tryEmit:function(e){return this.canEmit()?this.emit(e):void(this.state=di)},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(this.requireFail[e].state&(di|oi)))return!1;e++}return!0},recognize:function(e){var i=he({},e);return u(this.options.enable,[this,i])?(this.state&(ui|ci|di)&&(this.state=oi),this.state=this.process(i),void(this.state&(si|fi|li|ci)&&this.tryEmit(i))):(this.reset(),void(this.state=di))},process:function(e){},getTouchAction:function(){},reset:function(){}},f($,W,{defaults:{pointers:1},attrTest:function(e){var i=this.options.pointers;return 0===i||e.pointers.length===i},process:function(e){var i=this.state,t=e.eventType,r=i&(si|fi),n=this.attrTest(e);return r&&(t&Ae||!n)?i|ci:r||n?t&Se?i|li:i&si?i|fi:si:di}}),f(J,$,{defaults:{event:"pan",threshold:10,pointers:1,direction:Ne},getTouchAction:function(){var e=this.options.direction,i=[];return e&Oe&&i.push(ai),e&Be&&i.push(ni),i},directionTest:function(e){var i=this.options,t=!0,r=e.distance,n=e.direction,a=e.deltaX,o=e.deltaY;return n&i.direction||(i.direction&Oe?(n=0===a?Pe:a<0?Ie:Le,t=a!=this.pX,r=Math.abs(e.deltaX)):(n=0===o?Pe:o<0?De:Re,t=o!=this.pY,r=Math.abs(e.deltaY))),e.direction=n,t&&r>i.threshold&&n&i.direction},attrTest:function(e){return $.prototype.attrTest.call(this,e)&&(this.state&si||!(this.state&si)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var i=X(e.direction);i&&(e.additionalEvent=this.options.event+i),this._super.emit.call(this,e)}}),f(Q,$,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ri]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&si)},emit:function(e){if(1!==e.scale){var i=e.scale<1?"in":"out";e.additionalEvent=this.options.event+i}this._super.emit.call(this,e)}}),f(Z,W,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[ii]},process:function(e){var i=this.options,t=e.pointers.length===i.pointers,r=e.distance<i.threshold,a=e.deltaTime>i.time;if(this._input=e,!r||!t||e.eventType&(Se|Ae)&&!a)this.reset();else if(e.eventType&xe)this.reset(),this._timer=n(function(){this.state=ui,this.tryEmit()},i.time,this);else if(e.eventType&Se)return ui;return di},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===ui&&(e&&e.eventType&Se?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=de(),this.manager.emit(this.options.event,this._input)))}}),f(ee,$,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ri]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&si)}}),f(ie,$,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:Oe|Be,pointers:1},getTouchAction:function(){return J.prototype.getTouchAction.call(this)},attrTest:function(e){var i=this.options.direction,t;return i&(Oe|Be)?t=e.overallVelocity:i&Oe?t=e.overallVelocityX:i&Be&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&i&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&ce(t)>this.options.velocity&&e.eventType&Se},emit:function(e){var i=X(e.offsetDirection);i&&this.manager.emit(this.options.event+i,e),this.manager.emit(this.options.event,e)}}),f(te,W,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[ti]},process:function(e){var i=this.options,t=e.pointers.length===i.pointers,r=e.distance<i.threshold,a=e.deltaTime<i.time;if(this.reset(),e.eventType&xe&&0===this.count)return this.failTimeout();if(r&&a&&t){if(e.eventType!=Se)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<i.interval,s=!this.pCenter||D(this.pCenter,e.center)<i.posThreshold;this.pTime=e.timeStamp,this.pCenter=e.center,s&&o?this.count+=1:this.count=1,this._input=e;var f=this.count%i.taps;if(0===f)return this.hasRequireFailures()?(this._timer=n(function(){this.state=ui,this.tryEmit()},i.interval,this),si):ui}return di},failTimeout:function(){return this._timer=n(function(){this.state=di},this.options.interval,this),di},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==ui&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),re.VERSION="2.0.6",re.defaults={domEvents:!1,touchAction:ei,enable:!0,inputTarget:null,inputClass:null,preset:[[ee,{enable:!1}],[Q,{enable:!1},["rotate"]],[ie,{direction:Oe}],[J,{direction:Oe},["swipe"]],[te],[te,{event:"doubletap",taps:2},["tap"]],[Z]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};var hi=1,mi=2;ne.prototype={set:function(e){return he(this.options,e),e.touchAction&&this.touchAction.update(),e.inputTarget&&(this.input.destroy(),this.input.target=e.inputTarget,this.input.init()),this},stop:function(e){this.session.stopped=e?mi:hi},recognize:function(e){var i=this.session;if(!i.stopped){this.touchAction.preventDefaults(e);var t,r=this.recognizers,n=i.curRecognizer;(!n||n&&n.state&ui)&&(n=i.curRecognizer=null);for(var a=0;a<r.length;)t=r[a],i.stopped===mi||n&&t!=n&&!t.canRecognizeWith(n)?t.reset():t.recognize(e),!n&&t.state&(si|fi|li)&&(n=i.curRecognizer=t),a++}},get:function(e){if(e instanceof W)return e;for(var i=this.recognizers,t=0;t<i.length;t++)if(i[t].options.event==e)return i[t];return null},add:function(e){if(a(e,"add",this))return this;var i=this.get(e.options.event);return i&&this.remove(i),this.recognizers.push(e),e.manager=this,this.touchAction.update(),e},remove:function(e){if(a(e,"remove",this))return this;if(e=this.get(e)){var i=this.recognizers,t=w(i,e);t!==-1&&(i.splice(t,1),this.touchAction.update())}return this},on:function(e,i){var t=this.handlers;return o(v(e),function(e){t[e]=t[e]||[],t[e].push(i)}),this},off:function(e,i){var t=this.handlers;return o(v(e),function(e){i?t[e]&&t[e].splice(w(t[e],i),1):delete t[e]}),this},emit:function(e,i){this.options.domEvents&&oe(e,i);var t=this.handlers[e]&&this.handlers[e].slice();if(t&&t.length){i.type=e,i.preventDefault=function(){i.srcEvent.preventDefault()};for(var r=0;r<t.length;)t[r](i),r++}},destroy:function(){this.element&&ae(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},he(re,{INPUT_START:xe,INPUT_MOVE:Ee,INPUT_END:Se,INPUT_CANCEL:Ae,STATE_POSSIBLE:oi,STATE_BEGAN:si,STATE_CHANGED:fi,STATE_ENDED:li,STATE_RECOGNIZED:ui,STATE_CANCELLED:ci,STATE_FAILED:di,DIRECTION_NONE:Pe,DIRECTION_LEFT:Ie,DIRECTION_RIGHT:Le,DIRECTION_UP:De,DIRECTION_DOWN:Re,DIRECTION_HORIZONTAL:Oe,DIRECTION_VERTICAL:Be,DIRECTION_ALL:Ne,Manager:ne,Input:T,TouchAction:V,TouchInput:z,MouseInput:N,PointerEventInput:F,TouchMouseInput:Y,SingleTouchInput:U,Recognizer:W,AttrRecognizer:$,Tap:te,Pan:J,Swipe:ie,Pinch:Q,Rotate:ee,Press:Z,on:d,off:h,each:o,merge:be,extend:me,assign:he,inherit:f,bindFn:l,prefixed:k});var bi="undefined"!=typeof e?e:"undefined"!=typeof self?self:{};bi.Hammer=re,"function"==typeof define&&define.amd?define(function(){return re}):"undefined"!=typeof module&&module.exports?module.exports=re:e[t]=re}(window,document,"Hammer"),function(e){"function"==typeof define&&define.amd?define(["jquery","hammerjs"],e):"object"==typeof exports?e(require("jquery"),require("hammerjs")):e(jQuery,Hammer)}(function(e,i){function t(t,r){var n=e(t);n.data("hammer")||n.data("hammer",new i(n[0],r))}e.fn.hammer=function(e){return this.each(function(){t(this,e)})},i.Manager.prototype.emit=function(i){return function(t,r){i.call(this,t,r),e(this.element).trigger({type:t,gesture:r})}}(i.Manager.prototype.emit)}),"undefined"==typeof Package&&(Package={}),function(e,i){for(var t in i)t in e||(e[t]=i[t])}(Package["ohif:cornerstone"]={},{cornerstone:cornerstone,cornerstoneMath:cornerstoneMath,cornerstoneTools:cornerstoneTools,cornerstoneWADOImageLoader:cornerstoneWADOImageLoader,dicomParser:dicomParser})}();
!function(){var e=Package.meteor.Meteor,n=Package.meteor.global,a=Package.meteor.meteorEnv,r=Package.underscore._,c,t;(function(){c={};var e=function(e){return encodeURIComponent(e).replace(/[!'()]/g,escape).replace(/\*/g,"%2A")};c._encodeParams=function(n){var a=[];return r.each(n,function(n,r){a.length&&a.push("&"),a.push(e(r),"=",e(n))}),a.join("").replace(/%20/g,"+")},t=function(e,n,a,r){var t=e,o=n?n.slice(1):null;if("string"==typeof a&&(o=String(a)),r){o=o||"";var u=c._encodeParams(r);o&&u&&(o+="&"),o+=u}var i=t;return null!==o&&(i+="?"+o),i}}).call(this),function(){c._constructUrl=function(e,n,a){var r=/^(.*?)(\?.*)?$/.exec(e);return t(r[1],r[2],n,a)}}.call(this),"undefined"==typeof Package&&(Package={}),function(e,n){for(var a in n)a in e||(e[a]=n[a])}(Package.url={},{URL:c})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a=Package.underscore._,r=Package.url.URL,o=Package.modules.meteorInstall,c=Package.modules.Buffer,s=Package.modules.process,i=Package["ecmascript-runtime"].Symbol,l=Package["ecmascript-runtime"].Map,p=Package["ecmascript-runtime"].Set,u=Package["babel-runtime"].meteorBabelHelpers,f=Package.promise.Promise,d,m,h,g=o({node_modules:{meteor:{http:{"httpcall_common.js":function(){function e(e,t){return e.length>t?e.slice(0,t)+"...":e}var t=500;d=function n(a,r){var o="failed ["+a+"]";if(r){var c="string"==typeof r?r:r.toString();o+=" "+e(c.replace(/\n/g," "),t)}return new Error(o)},m=function e(t){var n=(t.headers["content-type"]||";").split(";")[0];if(a.include(["application/json","text/javascript","application/javascript","application/x-javascript"],n))try{t.data=JSON.parse(t.content)}catch(e){t.data=null}else t.data=null},h={},h.get=function(){return h.call.apply(this,["GET"].concat(a.toArray(arguments)))},h.post=function(){return h.call.apply(this,["POST"].concat(a.toArray(arguments)))},h.put=function(){return h.call.apply(this,["PUT"].concat(a.toArray(arguments)))},h.del=function(){return h.call.apply(this,["DELETE"].concat(a.toArray(arguments)))},h.patch=function(){return h.call.apply(this,["PATCH"].concat(a.toArray(arguments)))}},"httpcall_client.js":function(t,n,o){h.call=function(t,n,o,c){if(c||"function"!=typeof o||(c=o,o=null),o=o||{},"function"!=typeof c)throw new Error("Can't make a blocking HTTP call from the client; callback required.");t=(t||"").toUpperCase();var s={},i=o.content;o.data&&(i=JSON.stringify(o.data),s["Content-Type"]="application/json");var l,p;if(i||"GET"===t||"HEAD"===t?l=o.params:p=o.params,n=r._constructUrl(n,o.query,l),o.followRedirects===!1)throw new Error("Option followRedirects:false not supported on client.");if(a.has(o,"npmRequestOptions"))throw new Error("Option npmRequestOptions not supported on client.");var f,h;if(o.auth){var g=o.auth.indexOf(":");if(g<0)throw new Error('auth option should be of the form "username:password"');f=o.auth.substring(0,g),h=o.auth.substring(g+1)}p&&(i=r._encodeParams(p)),a.extend(s,o.headers||{}),c=function(e){return function(t,n){t&&n&&(t.response=n),e(t,n)}}(c),c=a.once(c);try{var y;if("undefined"!=typeof XMLHttpRequest)y=new XMLHttpRequest;else{if("undefined"==typeof ActiveXObject)throw new Error("Can't create XMLHttpRequest");y=new ActiveXObject("Microsoft.XMLHttp")}y.open(t,n,!0,f,h);for(var v in u.sanitizeForInObject(s))y.setRequestHeader(v,s[v]);var P=!1,k;if(o.timeout&&(k=e.setTimeout(function(){P=!0,y.abort()},o.timeout)),y.onreadystatechange=function(t){if(4===y.readyState)if(k&&e.clearTimeout(k),P)c(new Error("timeout"));else if(y.status){var n={};n.statusCode=y.status,n.content=y.responseText,n.headers={};var r=y.getAllResponseHeaders();""===r&&y.getResponseHeader("content-type")&&(r="content-type: "+y.getResponseHeader("content-type"));var o=r.split(/\r?\n/);a.each(o,function(e){var t=/^(.*?):(?:\s+)(.*)$/.exec(e);t&&3===t.length&&(n.headers[t[1].toLowerCase()]=t[2])}),m(n);var s=null;n.statusCode>=400&&(s=d(n.statusCode,n.content)),c(s,n)}else c(new Error("network"))},o.beforeSend){var w=a.once(o.beforeSend);if(!1===w.call(null,y,o))return y.abort()}y.send(i)}catch(e){c(e)}}},"deprecated.js":function(){e.http=h}}}}},{extensions:[".js",".json"]});g("./node_modules/meteor/http/httpcall_common.js"),g("./node_modules/meteor/http/httpcall_client.js"),g("./node_modules/meteor/http/deprecated.js"),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package.http={},{HTTP:h})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,s;(function(){!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";function e(){return _s.apply(null,arguments)}function t(e){_s=e}function n(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function s(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function i(e){var t;for(t in e)return!1;return!0}function r(e){return"number"==typeof value||"[object Number]"===Object.prototype.toString.call(e)}function a(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function o(e,t){var n=[],s;for(s=0;s<e.length;++s)n.push(t(e[s],s));return n}function u(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function l(e,t){for(var n in t)u(t,n)&&(e[n]=t[n]);return u(t,"toString")&&(e.toString=t.toString),u(t,"valueOf")&&(e.valueOf=t.valueOf),e}function d(e,t,n,s){return gt(e,t,n,s,!0).utc()}function h(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null}}function c(e){return null==e._pf&&(e._pf=h()),e._pf}function f(e){if(null==e._isValid){var t=c(e),n=gs.call(t.parsedDateParts,function(e){return null!=e}),s=!isNaN(e._d.getTime())&&t.overflow<0&&!t.empty&&!t.invalidMonth&&!t.invalidWeekday&&!t.nullInput&&!t.invalidFormat&&!t.userInvalidated&&(!t.meridiem||t.meridiem&&n);if(e._strict&&(s=s&&0===t.charsLeftOver&&0===t.unusedTokens.length&&void 0===t.bigHour),null!=Object.isFrozen&&Object.isFrozen(e))return s;e._isValid=s}return e._isValid}function m(e){var t=d(NaN);return null!=e?l(c(t),e):c(t).userInvalidated=!0,t}function _(e){return void 0===e}function y(e,t){var n,s,i;if(_(t._isAMomentObject)||(e._isAMomentObject=t._isAMomentObject),_(t._i)||(e._i=t._i),_(t._f)||(e._f=t._f),_(t._l)||(e._l=t._l),_(t._strict)||(e._strict=t._strict),_(t._tzm)||(e._tzm=t._tzm),_(t._isUTC)||(e._isUTC=t._isUTC),_(t._offset)||(e._offset=t._offset),_(t._pf)||(e._pf=c(t)),_(t._locale)||(e._locale=t._locale),ps.length>0)for(n in ps)s=ps[n],i=t[s],_(i)||(e[s]=i);return e}function g(t){y(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),vs===!1&&(vs=!0,e.updateOffset(this),vs=!1)}function p(e){return e instanceof g||null!=e&&null!=e._isAMomentObject}function v(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function w(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=v(t)),n}function k(e,t,n){var s=Math.min(e.length,t.length),i=Math.abs(e.length-t.length),r=0,a;for(a=0;a<s;a++)(n&&e[a]!==t[a]||!n&&w(e[a])!==w(t[a]))&&r++;return r+i}function S(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function M(t,n){var s=!0;return l(function(){if(null!=e.deprecationHandler&&e.deprecationHandler(null,t),s){for(var i=[],r,a=0;a<arguments.length;a++){if(r="","object"==typeof arguments[a]){r+="\n["+a+"] ";for(var o in arguments[0])r+=o+": "+arguments[0][o]+", ";r=r.slice(0,-2)}else r=arguments[a];i.push(r)}S(t+"\nArguments: "+Array.prototype.slice.call(i).join("")+"\n"+(new Error).stack),s=!1}return n.apply(this,arguments)},n)}function D(t,n){null!=e.deprecationHandler&&e.deprecationHandler(t,n),ws[t]||(S(n),ws[t]=!0)}function Y(e){return e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}function O(e){var t,n;for(n in e)t=e[n],Y(t)?this[n]=t:this["_"+n]=t;this._config=e,this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function x(e,t){var n=l({},e),i;for(i in t)u(t,i)&&(s(e[i])&&s(t[i])?(n[i]={},l(n[i],e[i]),l(n[i],t[i])):null!=t[i]?n[i]=t[i]:delete n[i]);for(i in e)u(e,i)&&!u(t,i)&&s(e[i])&&(n[i]=l({},n[i]));return n}function T(e){null!=e&&this.set(e)}function b(e,t,n){var s=this._calendar[e]||this._calendar.sameElse;return Y(s)?s.call(t,n):s}function P(e){var t=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return t||!n?t:(this._longDateFormat[e]=n.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])}function W(){return this._invalidDate}function R(e){return this._ordinal.replace("%d",e)}function U(e,t,n,s){var i=this._relativeTime[n];return Y(i)?i(e,t,n,s):i.replace(/%d/i,e)}function C(e,t){var n=this._relativeTime[e>0?"future":"past"];return Y(n)?n(t):n.replace(/%s/i,t)}function F(e,t){var n=e.toLowerCase();bs[n]=bs[n+"s"]=bs[t]=e}function H(e){return"string"==typeof e?bs[e]||bs[e.toLowerCase()]:void 0}function L(e){var t={},n,s;for(s in e)u(e,s)&&(n=H(s),n&&(t[n]=e[s]));return t}function G(e,t){Ps[e]=t}function j(e){var t=[];for(var n in e)t.push({unit:n,priority:Ps[n]});return t.sort(function(e,t){return e.priority-t.priority}),t}function V(t,n){return function(s){return null!=s?(N(this,t,s),e.updateOffset(this,n),this):E(this,t)}}function E(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function N(e,t,n){e.isValid()&&e._d["set"+(e._isUTC?"UTC":"")+t](n)}function A(e){return e=H(e),Y(this[e])?this[e]():this}function I(e,t){if("object"==typeof e){e=L(e);for(var n=j(e),s=0;s<n.length;s++)this[n[s].unit](e[n[s].unit])}else if(e=H(e),Y(this[e]))return this[e](t);return this}function z(e,t,n){var s=""+Math.abs(e),i=t-s.length,r=e>=0;return(r?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+s}function Z(e,t,n,s){var i=s;"string"==typeof s&&(i=function(){return this[s]()}),e&&(Cs[e]=i),t&&(Cs[t[0]]=function(){return z(i.apply(this,arguments),t[1],t[2])}),n&&(Cs[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function $(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function q(e){var t=e.match(Ws),n,s;for(n=0,s=t.length;n<s;n++)Cs[t[n]]?t[n]=Cs[t[n]]:t[n]=$(t[n]);return function(n){var i="",r;for(r=0;r<s;r++)i+=t[r]instanceof Function?t[r].call(n,e):t[r];return i}}function B(e,t){return e.isValid()?(t=J(t,e.localeData()),Us[t]=Us[t]||q(t),Us[t](e)):e.localeData().invalidDate()}function J(e,t){function n(e){return t.longDateFormat(e)||e}var s=5;for(Rs.lastIndex=0;s>=0&&Rs.test(e);)e=e.replace(Rs,n),Rs.lastIndex=0,s-=1;return e}function Q(e,t,n){Xs[e]=Y(t)?t:function(e,s){return e&&n?n:t}}function X(e,t){return u(Xs,e)?Xs[e](t._strict,t._locale):new RegExp(K(e))}function K(e){return ee(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,s,i){return t||n||s||i}))}function ee(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function te(e,t){var n,s=t;for("string"==typeof e&&(e=[e]),r(t)&&(s=function(e,n){n[t]=w(e)}),n=0;n<e.length;n++)Ks[e[n]]=s}function ne(e,t){te(e,function(e,n,s,i){s._w=s._w||{},t(e,s._w,s,i)})}function se(e,t,n){null!=t&&u(Ks,e)&&Ks[e](t,n._a,n,e)}function ie(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}function re(e,t){return e?n(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||hi).test(t)?"format":"standalone"][e.month()]:this._months}function ae(e,t){return e?n(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[hi.test(t)?"format":"standalone"][e.month()]:this._monthsShort}function oe(e,t,n){var s,i,r,a=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],s=0;s<12;++s)r=d([2e3,s]),this._shortMonthsParse[s]=this.monthsShort(r,"").toLocaleLowerCase(),this._longMonthsParse[s]=this.months(r,"").toLocaleLowerCase();return n?"MMM"===t?(i=di.call(this._shortMonthsParse,a),i!==-1?i:null):(i=di.call(this._longMonthsParse,a),i!==-1?i:null):"MMM"===t?(i=di.call(this._shortMonthsParse,a),i!==-1?i:(i=di.call(this._longMonthsParse,a),i!==-1?i:null)):(i=di.call(this._longMonthsParse,a),i!==-1?i:(i=di.call(this._shortMonthsParse,a),i!==-1?i:null))}function ue(e,t,n){var s,i,r;if(this._monthsParseExact)return oe.call(this,e,t,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),s=0;s<12;s++){if(i=d([2e3,s]),n&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[s]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[s]||(r="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[s]=new RegExp(r.replace(".",""),"i")),n&&"MMMM"===t&&this._longMonthsParse[s].test(e))return s;if(n&&"MMM"===t&&this._shortMonthsParse[s].test(e))return s;if(!n&&this._monthsParse[s].test(e))return s}}function le(e,t){var n;if(!e.isValid())return e;if("string"==typeof t)if(/^\d+$/.test(t))t=w(t);else if(t=e.localeData().monthsParse(t),!r(t))return e;return n=Math.min(e.date(),ie(e.year(),t)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](t,n),e}function de(t){return null!=t?(le(this,t),e.updateOffset(this,!0),this):E(this,"Month")}function he(){return ie(this.year(),this.month())}function ce(e){return this._monthsParseExact?(u(this,"_monthsRegex")||me.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(u(this,"_monthsShortRegex")||(this._monthsShortRegex=mi),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)}function fe(e){return this._monthsParseExact?(u(this,"_monthsRegex")||me.call(this),e?this._monthsStrictRegex:this._monthsRegex):(u(this,"_monthsRegex")||(this._monthsRegex=_i),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)}function me(){function e(e,t){return t.length-e.length}var t=[],n=[],s=[],i,r;for(i=0;i<12;i++)r=d([2e3,i]),t.push(this.monthsShort(r,"")),n.push(this.months(r,"")),s.push(this.months(r,"")),s.push(this.monthsShort(r,""));for(t.sort(e),n.sort(e),s.sort(e),i=0;i<12;i++)t[i]=ee(t[i]),n[i]=ee(n[i]);for(i=0;i<24;i++)s[i]=ee(s[i]);this._monthsRegex=new RegExp("^("+s.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+t.join("|")+")","i")}function _e(e){return ye(e)?366:365}function ye(e){return e%4===0&&e%100!==0||e%400===0}function ge(){return ye(this.year())}function pe(e,t,n,s,i,r,a){var o=new Date(e,t,n,s,i,r,a);return e<100&&e>=0&&isFinite(o.getFullYear())&&o.setFullYear(e),o}function ve(e){var t=new Date(Date.UTC.apply(null,arguments));return e<100&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function we(e,t,n){var s=7+t-n,i=(7+ve(e,0,s).getUTCDay()-t)%7;return-i+s-1}function ke(e,t,n,s,i){var r=(7+n-s)%7,a=we(e,s,i),o=1+7*(t-1)+r+a,u,l;return o<=0?(u=e-1,l=_e(u)+o):o>_e(e)?(u=e+1,l=o-_e(e)):(u=e,l=o),{year:u,dayOfYear:l}}function Se(e,t,n){var s=we(e.year(),t,n),i=Math.floor((e.dayOfYear()-s-1)/7)+1,r,a;return i<1?(a=e.year()-1,r=i+Me(a,t,n)):i>Me(e.year(),t,n)?(r=i-Me(e.year(),t,n),a=e.year()+1):(a=e.year(),r=i),{week:r,year:a}}function Me(e,t,n){var s=we(e,t,n),i=we(e+1,t,n);return(_e(e)-s+i)/7}function De(e){return Se(e,this._week.dow,this._week.doy).week}function Ye(){return this._week.dow}function Oe(){return this._week.doy}function xe(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function Te(e){var t=Se(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function be(e,t){return"string"!=typeof e?e:isNaN(e)?(e=t.weekdaysParse(e),"number"==typeof e?e:null):parseInt(e,10)}function Pe(e,t){return"string"==typeof e?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function We(e,t){return e?n(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][e.day()]:this._weekdays}function Re(e){return e?this._weekdaysShort[e.day()]:this._weekdaysShort}function Ue(e){return e?this._weekdaysMin[e.day()]:this._weekdaysMin}function Ce(e,t,n){var s,i,r,a=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],s=0;s<7;++s)r=d([2e3,1]).day(s),this._minWeekdaysParse[s]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(r,"").toLocaleLowerCase();return n?"dddd"===t?(i=di.call(this._weekdaysParse,a),i!==-1?i:null):"ddd"===t?(i=di.call(this._shortWeekdaysParse,a),i!==-1?i:null):(i=di.call(this._minWeekdaysParse,a),i!==-1?i:null):"dddd"===t?(i=di.call(this._weekdaysParse,a),i!==-1?i:(i=di.call(this._shortWeekdaysParse,a),i!==-1?i:(i=di.call(this._minWeekdaysParse,a),i!==-1?i:null))):"ddd"===t?(i=di.call(this._shortWeekdaysParse,a),i!==-1?i:(i=di.call(this._weekdaysParse,a),i!==-1?i:(i=di.call(this._minWeekdaysParse,a),i!==-1?i:null))):(i=di.call(this._minWeekdaysParse,a),i!==-1?i:(i=di.call(this._weekdaysParse,a),i!==-1?i:(i=di.call(this._shortWeekdaysParse,a),i!==-1?i:null)))}function Fe(e,t,n){var s,i,r;if(this._weekdaysParseExact)return Ce.call(this,e,t,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),s=0;s<7;s++){if(i=d([2e3,1]).day(s),n&&!this._fullWeekdaysParse[s]&&(this._fullWeekdaysParse[s]=new RegExp("^"+this.weekdays(i,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[s]=new RegExp("^"+this.weekdaysShort(i,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[s]=new RegExp("^"+this.weekdaysMin(i,"").replace(".",".?")+"$","i")),this._weekdaysParse[s]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[s]=new RegExp(r.replace(".",""),"i")),n&&"dddd"===t&&this._fullWeekdaysParse[s].test(e))return s;if(n&&"ddd"===t&&this._shortWeekdaysParse[s].test(e))return s;if(n&&"dd"===t&&this._minWeekdaysParse[s].test(e))return s;if(!n&&this._weekdaysParse[s].test(e))return s}}function He(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=be(e,this.localeData()),this.add(e-t,"d")):t}function Le(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function Ge(e){if(!this.isValid())return null!=e?this:NaN;if(null!=e){var t=Pe(e,this.localeData());return this.day(this.day()%7?t:t-7)}return this.day()||7}function je(e){return this._weekdaysParseExact?(u(this,"_weekdaysRegex")||Ne.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(u(this,"_weekdaysRegex")||(this._weekdaysRegex=ki),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function Ve(e){return this._weekdaysParseExact?(u(this,"_weekdaysRegex")||Ne.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(u(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Si),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function Ee(e){return this._weekdaysParseExact?(u(this,"_weekdaysRegex")||Ne.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(u(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Mi),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Ne(){function e(e,t){return t.length-e.length}var t=[],n=[],s=[],i=[],r,a,o,u,l;for(r=0;r<7;r++)a=d([2e3,1]).day(r),o=this.weekdaysMin(a,""),u=this.weekdaysShort(a,""),l=this.weekdays(a,""),t.push(o),n.push(u),s.push(l),i.push(o),i.push(u),i.push(l);for(t.sort(e),n.sort(e),s.sort(e),i.sort(e),r=0;r<7;r++)n[r]=ee(n[r]),s[r]=ee(s[r]),i[r]=ee(i[r]);this._weekdaysRegex=new RegExp("^("+i.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function Ae(){return this.hours()%12||12}function Ie(){return this.hours()||24}function ze(e,t){Z(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ze(e,t){return t._meridiemParse}function $e(e){return"p"===(e+"").toLowerCase().charAt(0)}function qe(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"}function Be(e){return e?e.toLowerCase().replace("_","-"):e}function Je(e){for(var t=0,n,s,i,r;t<e.length;){for(r=Be(e[t]).split("-"),n=r.length,s=Be(e[t+1]),s=s?s.split("-"):null;n>0;){if(i=Qe(r.slice(0,n).join("-")))return i;if(s&&s.length>=n&&k(r,s,!0)>=n-1)break;n--}t++}return null}function Qe(e){var t=null;if(!xi[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=bi._abbr,require("./locale/"+e),Xe(t)}catch(e){}return xi[e]}function Xe(e,t){var n;return e&&(n=_(t)?tt(e):Ke(e,t),n&&(bi=n)),bi._abbr}function Ke(e,t){if(null!==t){var n=Oi;if(t.abbr=e,null!=xi[e])D("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),n=xi[e]._config;else if(null!=t.parentLocale){if(null==xi[t.parentLocale])return Ti[t.parentLocale]||(Ti[t.parentLocale]=[]),Ti[t.parentLocale].push({name:e,config:t}),null;n=xi[t.parentLocale]._config}return xi[e]=new T(x(n,t)),Ti[e]&&Ti[e].forEach(function(e){Ke(e.name,e.config)}),Xe(e),xi[e]}return delete xi[e],null}function et(e,t){if(null!=t){var n,s=Oi;null!=xi[e]&&(s=xi[e]._config),t=x(s,t),n=new T(t),n.parentLocale=xi[e],xi[e]=n,Xe(e)}else null!=xi[e]&&(null!=xi[e].parentLocale?xi[e]=xi[e].parentLocale:null!=xi[e]&&delete xi[e]);return xi[e]}function tt(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return bi;if(!n(e)){if(t=Qe(e))return t;e=[e]}return Je(e)}function nt(){return Ss(xi)}function st(e){var t,n=e._a;return n&&c(e).overflow===-2&&(t=n[ti]<0||n[ti]>11?ti:n[ni]<1||n[ni]>ie(n[ei],n[ti])?ni:n[si]<0||n[si]>24||24===n[si]&&(0!==n[ii]||0!==n[ri]||0!==n[ai])?si:n[ii]<0||n[ii]>59?ii:n[ri]<0||n[ri]>59?ri:n[ai]<0||n[ai]>999?ai:-1,c(e)._overflowDayOfYear&&(t<ei||t>ni)&&(t=ni),c(e)._overflowWeeks&&t===-1&&(t=oi),c(e)._overflowWeekday&&t===-1&&(t=ui),c(e).overflow=t),e}function it(e){var t,n,s=e._i,i=Pi.exec(s)||Wi.exec(s),r,a,o,u;if(i){for(c(e).iso=!0,t=0,n=Ui.length;t<n;t++)if(Ui[t][1].exec(i[1])){a=Ui[t][0],r=Ui[t][2]!==!1;break}if(null==a)return void(e._isValid=!1);if(i[3]){for(t=0,n=Ci.length;t<n;t++)if(Ci[t][1].exec(i[3])){o=(i[2]||" ")+Ci[t][0];break}if(null==o)return void(e._isValid=!1)}if(!r&&null!=o)return void(e._isValid=!1);if(i[4]){if(!Ri.exec(i[4]))return void(e._isValid=!1);u="Z"}e._f=a+(o||"")+(u||""),dt(e)}else e._isValid=!1}function rt(t){var n=Fi.exec(t._i);return null!==n?void(t._d=new Date((+n[1]))):(it(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function at(e,t,n){return null!=e?e:null!=t?t:n}function ot(t){var n=new Date(e.now());return t._useUTC?[n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()]:[n.getFullYear(),n.getMonth(),n.getDate()]}function ut(e){var t,n,s=[],i,r;if(!e._d){for(i=ot(e),e._w&&null==e._a[ni]&&null==e._a[ti]&&lt(e),e._dayOfYear&&(r=at(e._a[ei],i[ei]),e._dayOfYear>_e(r)&&(c(e)._overflowDayOfYear=!0),n=ve(r,0,e._dayOfYear),e._a[ti]=n.getUTCMonth(),e._a[ni]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=i[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[si]&&0===e._a[ii]&&0===e._a[ri]&&0===e._a[ai]&&(e._nextDay=!0,e._a[si]=0),e._d=(e._useUTC?ve:pe).apply(null,s),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[si]=24)}}function lt(e){var t,n,s,i,r,a,o,u;if(t=e._w,null!=t.GG||null!=t.W||null!=t.E)r=1,a=4,n=at(t.GG,e._a[ei],Se(pt(),1,4).year),s=at(t.W,1),i=at(t.E,1),(i<1||i>7)&&(u=!0);else{r=e._locale._week.dow,a=e._locale._week.doy;var l=Se(pt(),r,a);n=at(t.gg,e._a[ei],l.year),s=at(t.w,l.week),null!=t.d?(i=t.d,(i<0||i>6)&&(u=!0)):null!=t.e?(i=t.e+r,(t.e<0||t.e>6)&&(u=!0)):i=r}s<1||s>Me(n,r,a)?c(e)._overflowWeeks=!0:null!=u?c(e)._overflowWeekday=!0:(o=ke(n,s,i,r,a),e._a[ei]=o.year,e._dayOfYear=o.dayOfYear)}function dt(t){if(t._f===e.ISO_8601)return void it(t);t._a=[],c(t).empty=!0;var n=""+t._i,s,i,r,a,o,u=n.length,l=0;for(r=J(t._f,t._locale).match(Ws)||[],s=0;s<r.length;s++)a=r[s],i=(n.match(X(a,t))||[])[0],i&&(o=n.substr(0,n.indexOf(i)),o.length>0&&c(t).unusedInput.push(o),n=n.slice(n.indexOf(i)+i.length),l+=i.length),Cs[a]?(i?c(t).empty=!1:c(t).unusedTokens.push(a),se(a,i,t)):t._strict&&!i&&c(t).unusedTokens.push(a);c(t).charsLeftOver=u-l,n.length>0&&c(t).unusedInput.push(n),t._a[si]<=12&&c(t).bigHour===!0&&t._a[si]>0&&(c(t).bigHour=void 0),c(t).parsedDateParts=t._a.slice(0),c(t).meridiem=t._meridiem,t._a[si]=ht(t._locale,t._a[si],t._meridiem),ut(t),st(t)}function ht(e,t,n){var s;return null==n?t:null!=e.meridiemHour?e.meridiemHour(t,n):null!=e.isPM?(s=e.isPM(n),s&&t<12&&(t+=12),s||12!==t||(t=0),t):t}function ct(e){var t,n,s,i,r;if(0===e._f.length)return c(e).invalidFormat=!0,void(e._d=new Date(NaN));for(i=0;i<e._f.length;i++)r=0,t=y({},e),null!=e._useUTC&&(t._useUTC=e._useUTC),t._f=e._f[i],dt(t),f(t)&&(r+=c(t).charsLeftOver,r+=10*c(t).unusedTokens.length,c(t).score=r,(null==s||r<s)&&(s=r,n=t));l(e,n||t)}function ft(e){if(!e._d){var t=L(e._i);e._a=o([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(e){return e&&parseInt(e,10)}),ut(e)}}function mt(e){var t=new g(st(_t(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function _t(e){var t=e._i,s=e._f;return e._locale=e._locale||tt(e._l),null===t||void 0===s&&""===t?m({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),p(t)?new g(st(t)):(a(t)?e._d=t:n(s)?ct(e):s?dt(e):yt(e),f(e)||(e._d=null),e))}function yt(t){var s=t._i;void 0===s?t._d=new Date(e.now()):a(s)?t._d=new Date(s.valueOf()):"string"==typeof s?rt(t):n(s)?(t._a=o(s.slice(0),function(e){return parseInt(e,10)}),ut(t)):"object"==typeof s?ft(t):r(s)?t._d=new Date(s):e.createFromInputFallback(t)}function gt(e,t,r,a,o){var u={};return r!==!0&&r!==!1||(a=r,r=void 0),(s(e)&&i(e)||n(e)&&0===e.length)&&(e=void 0),u._isAMomentObject=!0,u._useUTC=u._isUTC=o,u._l=r,u._i=e,u._f=t,u._strict=a,mt(u)}function pt(e,t,n,s){return gt(e,t,n,s,!1)}function vt(e,t){var s,i;if(1===t.length&&n(t[0])&&(t=t[0]),!t.length)return pt();for(s=t[0],i=1;i<t.length;++i)t[i].isValid()&&!t[i][e](s)||(s=t[i]);return s}function wt(){var e=[].slice.call(arguments,0);return vt("isBefore",e)}function kt(){var e=[].slice.call(arguments,0);return vt("isAfter",e)}function St(e){var t=L(e),n=t.year||0,s=t.quarter||0,i=t.month||0,r=t.week||0,a=t.day||0,o=t.hour||0,u=t.minute||0,l=t.second||0,d=t.millisecond||0;this._milliseconds=+d+1e3*l+6e4*u+1e3*o*60*60,this._days=+a+7*r,this._months=+i+3*s+12*n,this._data={},this._locale=tt(),this._bubble()}function Mt(e){return e instanceof St}function Dt(e){return e<0?Math.round(-1*e)*-1:Math.round(e)}function Yt(e,t){Z(e,0,0,function(){var e=this.utcOffset(),n="+";return e<0&&(e=-e,n="-"),n+z(~~(e/60),2)+t+z(~~e%60,2)})}function Ot(e,t){var n=(t||"").match(e);if(null===n)return null;var s=n[n.length-1]||[],i=(s+"").match(ji)||["-",0,0],r=+(60*i[1])+w(i[2]);return 0===r?0:"+"===i[0]?r:-r}function xt(t,n){var s,i;return n._isUTC?(s=n.clone(),i=(p(t)||a(t)?t.valueOf():pt(t).valueOf())-s.valueOf(),s._d.setTime(s._d.valueOf()+i),e.updateOffset(s,!1),s):pt(t).local()}function Tt(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function bt(t,n){var s=this._offset||0,i;if(!this.isValid())return null!=t?this:NaN;if(null!=t){if("string"==typeof t){if(t=Ot(Bs,t),null===t)return this}else Math.abs(t)<16&&(t=60*t);return!this._isUTC&&n&&(i=Tt(this)),this._offset=t,this._isUTC=!0,null!=i&&this.add(i,"m"),s!==t&&(!n||this._changeInProgress?zt(this,Vt(t-s,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?s:Tt(this)}function Pt(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function Wt(e){return this.utcOffset(0,e)}function Rt(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Tt(this),"m")),this}function Ut(){if(null!=this._tzm)this.utcOffset(this._tzm);else if("string"==typeof this._i){var e=Ot(qs,this._i);null!=e?this.utcOffset(e):this.utcOffset(0,!0)}return this}function Ct(e){return!!this.isValid()&&(e=e?pt(e).utcOffset():0,(this.utcOffset()-e)%60===0)}function Ft(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Ht(){if(!_(this._isDSTShifted))return this._isDSTShifted;var e={};if(y(e,this),e=_t(e),e._a){var t=e._isUTC?d(e._a):pt(e._a);this._isDSTShifted=this.isValid()&&k(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Lt(){return!!this.isValid()&&!this._isUTC}function Gt(){return!!this.isValid()&&this._isUTC}function jt(){return!!this.isValid()&&(this._isUTC&&0===this._offset)}function Vt(e,t){var n=e,s=null,i,a,o;return Mt(e)?n={ms:e._milliseconds,d:e._days,M:e._months}:r(e)?(n={},t?n[t]=e:n.milliseconds=e):(s=Vi.exec(e))?(i="-"===s[1]?-1:1,n={y:0,d:w(s[ni])*i,h:w(s[si])*i,m:w(s[ii])*i,s:w(s[ri])*i,ms:w(Dt(1e3*s[ai]))*i}):(s=Ei.exec(e))?(i="-"===s[1]?-1:1,n={y:Et(s[2],i),M:Et(s[3],i),w:Et(s[4],i),d:Et(s[5],i),h:Et(s[6],i),m:Et(s[7],i),s:Et(s[8],i)}):null==n?n={}:"object"==typeof n&&("from"in n||"to"in n)&&(o=At(pt(n.from),pt(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),a=new St(n),Mt(e)&&u(e,"_locale")&&(a._locale=e._locale),a}function Et(e,t){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*t}function Nt(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function At(e,t){var n;return e.isValid()&&t.isValid()?(t=xt(t,e),e.isBefore(t)?n=Nt(e,t):(n=Nt(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function It(e,t){return function(n,s){var i,r;return null===s||isNaN(+s)||(D(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),r=n,n=s,s=r),n="string"==typeof n?+n:n,i=Vt(n,s),zt(this,i,e),this}}function zt(t,n,s,i){var r=n._milliseconds,a=Dt(n._days),o=Dt(n._months);t.isValid()&&(i=null==i||i,r&&t._d.setTime(t._d.valueOf()+r*s),a&&N(t,"Date",E(t,"Date")+a*s),o&&le(t,E(t,"Month")+o*s),i&&e.updateOffset(t,a||o))}function Zt(e,t){var n=e.diff(t,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"}function $t(t,n){var s=t||pt(),i=xt(s,this).startOf("day"),r=e.calendarFormat(this,i)||"sameElse",a=n&&(Y(n[r])?n[r].call(this,s):n[r]);return this.format(a||this.localeData().calendar(r,this,pt(s)))}function qt(){return new g(this)}function Bt(e,t){var n=p(e)?e:pt(e);return!(!this.isValid()||!n.isValid())&&(t=H(_(t)?"millisecond":t),"millisecond"===t?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(t).valueOf())}function Jt(e,t){var n=p(e)?e:pt(e);return!(!this.isValid()||!n.isValid())&&(t=H(_(t)?"millisecond":t),"millisecond"===t?this.valueOf()<n.valueOf():this.clone().endOf(t).valueOf()<n.valueOf())}function Qt(e,t,n,s){return s=s||"()",("("===s[0]?this.isAfter(e,n):!this.isBefore(e,n))&&(")"===s[1]?this.isBefore(t,n):!this.isAfter(t,n))}function Xt(e,t){var n=p(e)?e:pt(e),s;return!(!this.isValid()||!n.isValid())&&(t=H(t||"millisecond"),"millisecond"===t?this.valueOf()===n.valueOf():(s=n.valueOf(),this.clone().startOf(t).valueOf()<=s&&s<=this.clone().endOf(t).valueOf()))}function Kt(e,t){return this.isSame(e,t)||this.isAfter(e,t)}function en(e,t){return this.isSame(e,t)||this.isBefore(e,t)}function tn(e,t,n){var s,i,r,a;return this.isValid()?(s=xt(e,this),s.isValid()?(i=6e4*(s.utcOffset()-this.utcOffset()),t=H(t),"year"===t||"month"===t||"quarter"===t?(a=nn(this,s),"quarter"===t?a/=3:"year"===t&&(a/=12)):(r=this-s,a="second"===t?r/1e3:"minute"===t?r/6e4:"hour"===t?r/36e5:"day"===t?(r-i)/864e5:"week"===t?(r-i)/6048e5:r),n?a:v(a)):NaN):NaN}function nn(e,t){var n=12*(t.year()-e.year())+(t.month()-e.month()),s=e.clone().add(n,"months"),i,r;return t-s<0?(i=e.clone().add(n-1,"months"),r=(t-s)/(s-i)):(i=e.clone().add(n+1,"months"),r=(t-s)/(i-s)),-(n+r)||0}function sn(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function rn(){var e=this.clone().utc();return 0<e.year()&&e.year()<=9999?Y(Date.prototype.toISOString)?this.toDate().toISOString():B(e,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):B(e,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]")}function an(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="";this.isLocal()||(e=0===this.utcOffset()?"moment.utc":"moment.parseZone",t="Z");var n="["+e+'("]',s=0<this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i="-MM-DD[T]HH:mm:ss.SSS",r=t+'[")]';return this.format(n+s+i+r)}function on(t){t||(t=this.isUtc()?e.defaultFormatUtc:e.defaultFormat);var n=B(this,t);return this.localeData().postformat(n)}function un(e,t){return this.isValid()&&(p(e)&&e.isValid()||pt(e).isValid())?Vt({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function ln(e){return this.from(pt(),e)}function dn(e,t){return this.isValid()&&(p(e)&&e.isValid()||pt(e).isValid())?Vt({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function hn(e){return this.to(pt(),e)}function cn(e){var t;return void 0===e?this._locale._abbr:(t=tt(e),null!=t&&(this._locale=t),this)}function fn(){return this._locale}function mn(e){switch(e=H(e)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":case"date":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===e&&this.weekday(0),"isoWeek"===e&&this.isoWeekday(1),"quarter"===e&&this.month(3*Math.floor(this.month()/3)),this}function _n(e){return e=H(e),void 0===e||"millisecond"===e?this:("date"===e&&(e="day"),this.startOf(e).add(1,"isoWeek"===e?"week":e).subtract(1,"ms"))}function yn(){return this._d.valueOf()-6e4*(this._offset||0)}function gn(){return Math.floor(this.valueOf()/1e3)}function pn(){return new Date(this.valueOf())}function vn(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function wn(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function kn(){return this.isValid()?this.toISOString():null}function Sn(){return f(this)}function Mn(){return l({},c(this))}function Dn(){return c(this).overflow}function Yn(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}function On(e,t){Z(0,[e,e.length],0,t)}function xn(e){return Wn.call(this,e,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function Tn(e){return Wn.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)}function bn(){return Me(this.year(),1,4)}function Pn(){var e=this.localeData()._week;return Me(this.year(),e.dow,e.doy)}function Wn(e,t,n,s,i){var r;return null==e?Se(this,s,i).year:(r=Me(e,s,i),t>r&&(t=r),Rn.call(this,e,t,n,s,i))}function Rn(e,t,n,s,i){var r=ke(e,t,n,s,i),a=ve(r.year,0,r.dayOfYear);return this.year(a.getUTCFullYear()),this.month(a.getUTCMonth()),this.date(a.getUTCDate()),this}function Un(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}function Cn(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function Fn(e,t){t[ai]=w(1e3*("0."+e))}function Hn(){return this._isUTC?"UTC":""}function Ln(){return this._isUTC?"Coordinated Universal Time":""}function Gn(e){return pt(1e3*e)}function jn(){return pt.apply(null,arguments).parseZone()}function Vn(e){return e}function En(e,t,n,s){var i=tt(),r=d().set(s,t);return i[n](r,e)}function Nn(e,t,n){if(r(e)&&(t=e,e=void 0),e=e||"",null!=t)return En(e,t,n,"month");
var s,i=[];for(s=0;s<12;s++)i[s]=En(e,s,n,"month");return i}function An(e,t,n,s){"boolean"==typeof e?(r(t)&&(n=t,t=void 0),t=t||""):(t=e,n=t,e=!1,r(t)&&(n=t,t=void 0),t=t||"");var i=tt(),a=e?i._week.dow:0;if(null!=n)return En(t,(n+a)%7,s,"day");var o,u=[];for(o=0;o<7;o++)u[o]=En(t,(o+a)%7,s,"day");return u}function In(e,t){return Nn(e,t,"months")}function zn(e,t){return Nn(e,t,"monthsShort")}function Zn(e,t,n){return An(e,t,n,"weekdays")}function $n(e,t,n){return An(e,t,n,"weekdaysShort")}function qn(e,t,n){return An(e,t,n,"weekdaysMin")}function Bn(){var e=this._data;return this._milliseconds=Xi(this._milliseconds),this._days=Xi(this._days),this._months=Xi(this._months),e.milliseconds=Xi(e.milliseconds),e.seconds=Xi(e.seconds),e.minutes=Xi(e.minutes),e.hours=Xi(e.hours),e.months=Xi(e.months),e.years=Xi(e.years),this}function Jn(e,t,n,s){var i=Vt(t,n);return e._milliseconds+=s*i._milliseconds,e._days+=s*i._days,e._months+=s*i._months,e._bubble()}function Qn(e,t){return Jn(this,e,t,1)}function Xn(e,t){return Jn(this,e,t,-1)}function Kn(e){return e<0?Math.floor(e):Math.ceil(e)}function es(){var e=this._milliseconds,t=this._days,n=this._months,s=this._data,i,r,a,o,u;return e>=0&&t>=0&&n>=0||e<=0&&t<=0&&n<=0||(e+=864e5*Kn(ns(n)+t),t=0,n=0),s.milliseconds=e%1e3,i=v(e/1e3),s.seconds=i%60,r=v(i/60),s.minutes=r%60,a=v(r/60),s.hours=a%24,t+=v(a/24),u=v(ts(t)),n+=u,t-=Kn(ns(u)),o=v(n/12),n%=12,s.days=t,s.months=n,s.years=o,this}function ts(e){return 4800*e/146097}function ns(e){return 146097*e/4800}function ss(e){var t,n,s=this._milliseconds;if(e=H(e),"month"===e||"year"===e)return t=this._days+s/864e5,n=this._months+ts(t),"month"===e?n:n/12;switch(t=this._days+Math.round(ns(this._months)),e){case"week":return t/7+s/6048e5;case"day":return t+s/864e5;case"hour":return 24*t+s/36e5;case"minute":return 1440*t+s/6e4;case"second":return 86400*t+s/1e3;case"millisecond":return Math.floor(864e5*t)+s;default:throw new Error("Unknown unit "+e)}}function is(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12)}function rs(e){return function(){return this.as(e)}}function as(e){return e=H(e),this[e+"s"]()}function os(e){return function(){return this._data[e]}}function us(){return v(this.days()/7)}function ls(e,t,n,s,i){return i.relativeTime(t||1,!!n,e,s)}function ds(e,t,n){var s=Vt(e).abs(),i=mr(s.as("s")),r=mr(s.as("m")),a=mr(s.as("h")),o=mr(s.as("d")),u=mr(s.as("M")),l=mr(s.as("y")),d=i<_r.s&&["s",i]||r<=1&&["m"]||r<_r.m&&["mm",r]||a<=1&&["h"]||a<_r.h&&["hh",a]||o<=1&&["d"]||o<_r.d&&["dd",o]||u<=1&&["M"]||u<_r.M&&["MM",u]||l<=1&&["y"]||["yy",l];return d[2]=t,d[3]=+e>0,d[4]=n,ls.apply(null,d)}function hs(e){return void 0===e?mr:"function"==typeof e&&(mr=e,!0)}function cs(e,t){return void 0!==_r[e]&&(void 0===t?_r[e]:(_r[e]=t,!0))}function fs(e){var t=this.localeData(),n=ds(this,!e,t);return e&&(n=t.pastFuture(+this,n)),t.postformat(n)}function ms(){var e=yr(this._milliseconds)/1e3,t=yr(this._days),n=yr(this._months),s,i,r;s=v(e/60),i=v(s/60),e%=60,s%=60,r=v(n/12),n%=12;var a=r,o=n,u=t,l=i,d=s,h=e,c=this.asSeconds();return c?(c<0?"-":"")+"P"+(a?a+"Y":"")+(o?o+"M":"")+(u?u+"D":"")+(l||d||h?"T":"")+(l?l+"H":"")+(d?d+"M":"")+(h?h+"S":""):"P0D"}var _s,ys;ys=Array.prototype.some?Array.prototype.some:function(e){for(var t=Object(this),n=t.length>>>0,s=0;s<n;s++)if(s in t&&e.call(this,t[s],s,t))return!0;return!1};var gs=ys,ps=e.momentProperties=[],vs=!1,ws={};e.suppressDeprecationWarnings=!1,e.deprecationHandler=null;var ks;ks=Object.keys?Object.keys:function(e){var t,n=[];for(t in e)u(e,t)&&n.push(t);return n};var Ss=ks,Ms={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},Ds={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},Ys="Invalid date",Os="%d",xs=/\d{1,2}/,Ts={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},bs={},Ps={},Ws=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Rs=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Us={},Cs={},Fs=/\d/,Hs=/\d\d/,Ls=/\d{3}/,Gs=/\d{4}/,js=/[+-]?\d{6}/,Vs=/\d\d?/,Es=/\d\d\d\d?/,Ns=/\d\d\d\d\d\d?/,As=/\d{1,3}/,Is=/\d{1,4}/,zs=/[+-]?\d{1,6}/,Zs=/\d+/,$s=/[+-]?\d+/,qs=/Z|[+-]\d\d:?\d\d/gi,Bs=/Z|[+-]\d\d(?::?\d\d)?/gi,Js=/[+-]?\d+(\.\d{1,3})?/,Qs=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,Xs={},Ks={},ei=0,ti=1,ni=2,si=3,ii=4,ri=5,ai=6,oi=7,ui=8,li;li=Array.prototype.indexOf?Array.prototype.indexOf:function(e){var t;for(t=0;t<this.length;++t)if(this[t]===e)return t;return-1};var di=li;Z("M",["MM",2],"Mo",function(){return this.month()+1}),Z("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)}),Z("MMMM",0,0,function(e){return this.localeData().months(this,e)}),F("month","M"),G("month",8),Q("M",Vs),Q("MM",Vs,Hs),Q("MMM",function(e,t){return t.monthsShortRegex(e)}),Q("MMMM",function(e,t){return t.monthsRegex(e)}),te(["M","MM"],function(e,t){t[ti]=w(e)-1}),te(["MMM","MMMM"],function(e,t,n,s){var i=n._locale.monthsParse(e,s,n._strict);null!=i?t[ti]=i:c(n).invalidMonth=e});var hi=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ci="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),fi="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),mi=Qs,_i=Qs;Z("Y",0,0,function(){var e=this.year();return e<=9999?""+e:"+"+e}),Z(0,["YY",2],0,function(){return this.year()%100}),Z(0,["YYYY",4],0,"year"),Z(0,["YYYYY",5],0,"year"),Z(0,["YYYYYY",6,!0],0,"year"),F("year","y"),G("year",1),Q("Y",$s),Q("YY",Vs,Hs),Q("YYYY",Is,Gs),Q("YYYYY",zs,js),Q("YYYYYY",zs,js),te(["YYYYY","YYYYYY"],ei),te("YYYY",function(t,n){n[ei]=2===t.length?e.parseTwoDigitYear(t):w(t)}),te("YY",function(t,n){n[ei]=e.parseTwoDigitYear(t)}),te("Y",function(e,t){t[ei]=parseInt(e,10)}),e.parseTwoDigitYear=function(e){return w(e)+(w(e)>68?1900:2e3)};var yi=V("FullYear",!0);Z("w",["ww",2],"wo","week"),Z("W",["WW",2],"Wo","isoWeek"),F("week","w"),F("isoWeek","W"),G("week",5),G("isoWeek",5),Q("w",Vs),Q("ww",Vs,Hs),Q("W",Vs),Q("WW",Vs,Hs),ne(["w","ww","W","WW"],function(e,t,n,s){t[s.substr(0,1)]=w(e)});var gi={dow:0,doy:6};Z("d",0,"do","day"),Z("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),Z("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),Z("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),Z("e",0,0,"weekday"),Z("E",0,0,"isoWeekday"),F("day","d"),F("weekday","e"),F("isoWeekday","E"),G("day",11),G("weekday",11),G("isoWeekday",11),Q("d",Vs),Q("e",Vs),Q("E",Vs),Q("dd",function(e,t){return t.weekdaysMinRegex(e)}),Q("ddd",function(e,t){return t.weekdaysShortRegex(e)}),Q("dddd",function(e,t){return t.weekdaysRegex(e)}),ne(["dd","ddd","dddd"],function(e,t,n,s){var i=n._locale.weekdaysParse(e,s,n._strict);null!=i?t.d=i:c(n).invalidWeekday=e}),ne(["d","e","E"],function(e,t,n,s){t[s]=w(e)});var pi="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),vi="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),wi="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ki=Qs,Si=Qs,Mi=Qs;Z("H",["HH",2],0,"hour"),Z("h",["hh",2],0,Ae),Z("k",["kk",2],0,Ie),Z("hmm",0,0,function(){return""+Ae.apply(this)+z(this.minutes(),2)}),Z("hmmss",0,0,function(){return""+Ae.apply(this)+z(this.minutes(),2)+z(this.seconds(),2)}),Z("Hmm",0,0,function(){return""+this.hours()+z(this.minutes(),2)}),Z("Hmmss",0,0,function(){return""+this.hours()+z(this.minutes(),2)+z(this.seconds(),2)}),ze("a",!0),ze("A",!1),F("hour","h"),G("hour",13),Q("a",Ze),Q("A",Ze),Q("H",Vs),Q("h",Vs),Q("HH",Vs,Hs),Q("hh",Vs,Hs),Q("hmm",Es),Q("hmmss",Ns),Q("Hmm",Es),Q("Hmmss",Ns),te(["H","HH"],si),te(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),te(["h","hh"],function(e,t,n){t[si]=w(e),c(n).bigHour=!0}),te("hmm",function(e,t,n){var s=e.length-2;t[si]=w(e.substr(0,s)),t[ii]=w(e.substr(s)),c(n).bigHour=!0}),te("hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[si]=w(e.substr(0,s)),t[ii]=w(e.substr(s,2)),t[ri]=w(e.substr(i)),c(n).bigHour=!0}),te("Hmm",function(e,t,n){var s=e.length-2;t[si]=w(e.substr(0,s)),t[ii]=w(e.substr(s))}),te("Hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[si]=w(e.substr(0,s)),t[ii]=w(e.substr(s,2)),t[ri]=w(e.substr(i))});var Di=/[ap]\.?m?\.?/i,Yi=V("Hours",!0),Oi={calendar:Ms,longDateFormat:Ds,invalidDate:Ys,ordinal:Os,ordinalParse:xs,relativeTime:Ts,months:ci,monthsShort:fi,week:gi,weekdays:pi,weekdaysMin:wi,weekdaysShort:vi,meridiemParse:Di},xi={},Ti={},bi,Pi=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Wi=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Ri=/Z|[+-]\d\d(?::?\d\d)?/,Ui=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Ci=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Fi=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=M("value provided is not in a recognized ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),e.ISO_8601=function(){};var Hi=M("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=pt.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:m()}),Li=M("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=pt.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:m()}),Gi=function(){return Date.now?Date.now():+new Date};Yt("Z",":"),Yt("ZZ",""),Q("Z",Bs),Q("ZZ",Bs),te(["Z","ZZ"],function(e,t,n){n._useUTC=!0,n._tzm=Ot(Bs,e)});var ji=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Vi=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Ei=/^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/;Vt.fn=St.prototype;var Ni=It(1,"add"),Ai=It(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",e.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var Ii=M("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});Z(0,["gg",2],0,function(){return this.weekYear()%100}),Z(0,["GG",2],0,function(){return this.isoWeekYear()%100}),On("gggg","weekYear"),On("ggggg","weekYear"),On("GGGG","isoWeekYear"),On("GGGGG","isoWeekYear"),F("weekYear","gg"),F("isoWeekYear","GG"),G("weekYear",1),G("isoWeekYear",1),Q("G",$s),Q("g",$s),Q("GG",Vs,Hs),Q("gg",Vs,Hs),Q("GGGG",Is,Gs),Q("gggg",Is,Gs),Q("GGGGG",zs,js),Q("ggggg",zs,js),ne(["gggg","ggggg","GGGG","GGGGG"],function(e,t,n,s){t[s.substr(0,2)]=w(e)}),ne(["gg","GG"],function(t,n,s,i){n[i]=e.parseTwoDigitYear(t)}),Z("Q",0,"Qo","quarter"),F("quarter","Q"),G("quarter",7),Q("Q",Fs),te("Q",function(e,t){t[ti]=3*(w(e)-1)}),Z("D",["DD",2],"Do","date"),F("date","D"),G("date",9),Q("D",Vs),Q("DD",Vs,Hs),Q("Do",function(e,t){return e?t._ordinalParse:t._ordinalParseLenient}),te(["D","DD"],ni),te("Do",function(e,t){t[ni]=w(e.match(Vs)[0],10)});var zi=V("Date",!0);Z("DDD",["DDDD",3],"DDDo","dayOfYear"),F("dayOfYear","DDD"),G("dayOfYear",4),Q("DDD",As),Q("DDDD",Ls),te(["DDD","DDDD"],function(e,t,n){n._dayOfYear=w(e)}),Z("m",["mm",2],0,"minute"),F("minute","m"),G("minute",14),Q("m",Vs),Q("mm",Vs,Hs),te(["m","mm"],ii);var Zi=V("Minutes",!1);Z("s",["ss",2],0,"second"),F("second","s"),G("second",15),Q("s",Vs),Q("ss",Vs,Hs),te(["s","ss"],ri);var $i=V("Seconds",!1);Z("S",0,0,function(){return~~(this.millisecond()/100)}),Z(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Z(0,["SSS",3],0,"millisecond"),Z(0,["SSSS",4],0,function(){return 10*this.millisecond()}),Z(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),Z(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),Z(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),Z(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),Z(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),F("millisecond","ms"),G("millisecond",16),Q("S",As,Fs),Q("SS",As,Hs),Q("SSS",As,Ls);var qi;for(qi="SSSS";qi.length<=9;qi+="S")Q(qi,Zs);for(qi="S";qi.length<=9;qi+="S")te(qi,Fn);var Bi=V("Milliseconds",!1);Z("z",0,0,"zoneAbbr"),Z("zz",0,0,"zoneName");var Ji=g.prototype;Ji.add=Ni,Ji.calendar=$t,Ji.clone=qt,Ji.diff=tn,Ji.endOf=_n,Ji.format=on,Ji.from=un,Ji.fromNow=ln,Ji.to=dn,Ji.toNow=hn,Ji.get=A,Ji.invalidAt=Dn,Ji.isAfter=Bt,Ji.isBefore=Jt,Ji.isBetween=Qt,Ji.isSame=Xt,Ji.isSameOrAfter=Kt,Ji.isSameOrBefore=en,Ji.isValid=Sn,Ji.lang=Ii,Ji.locale=cn,Ji.localeData=fn,Ji.max=Li,Ji.min=Hi,Ji.parsingFlags=Mn,Ji.set=I,Ji.startOf=mn,Ji.subtract=Ai,Ji.toArray=vn,Ji.toObject=wn,Ji.toDate=pn,Ji.toISOString=rn,Ji.inspect=an,Ji.toJSON=kn,Ji.toString=sn,Ji.unix=gn,Ji.valueOf=yn,Ji.creationData=Yn,Ji.year=yi,Ji.isLeapYear=ge,Ji.weekYear=xn,Ji.isoWeekYear=Tn,Ji.quarter=Ji.quarters=Un,Ji.month=de,Ji.daysInMonth=he,Ji.week=Ji.weeks=xe,Ji.isoWeek=Ji.isoWeeks=Te,Ji.weeksInYear=Pn,Ji.isoWeeksInYear=bn,Ji.date=zi,Ji.day=Ji.days=He,Ji.weekday=Le,Ji.isoWeekday=Ge,Ji.dayOfYear=Cn,Ji.hour=Ji.hours=Yi,Ji.minute=Ji.minutes=Zi,Ji.second=Ji.seconds=$i,Ji.millisecond=Ji.milliseconds=Bi,Ji.utcOffset=bt,Ji.utc=Wt,Ji.local=Rt,Ji.parseZone=Ut,Ji.hasAlignedHourOffset=Ct,Ji.isDST=Ft,Ji.isLocal=Lt,Ji.isUtcOffset=Gt,Ji.isUtc=jt,Ji.isUTC=jt,Ji.zoneAbbr=Hn,Ji.zoneName=Ln,Ji.dates=M("dates accessor is deprecated. Use date instead.",zi),Ji.months=M("months accessor is deprecated. Use month instead",de),Ji.years=M("years accessor is deprecated. Use year instead",yi),Ji.zone=M("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",Pt),Ji.isDSTShifted=M("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",Ht);var Qi=T.prototype;Qi.calendar=b,Qi.longDateFormat=P,Qi.invalidDate=W,Qi.ordinal=R,Qi.preparse=Vn,Qi.postformat=Vn,Qi.relativeTime=U,Qi.pastFuture=C,Qi.set=O,Qi.months=re,Qi.monthsShort=ae,Qi.monthsParse=ue,Qi.monthsRegex=fe,Qi.monthsShortRegex=ce,Qi.week=De,Qi.firstDayOfYear=Oe,Qi.firstDayOfWeek=Ye,Qi.weekdays=We,Qi.weekdaysMin=Ue,Qi.weekdaysShort=Re,Qi.weekdaysParse=Fe,Qi.weekdaysRegex=je,Qi.weekdaysShortRegex=Ve,Qi.weekdaysMinRegex=Ee,Qi.isPM=$e,Qi.meridiem=qe,Xe("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,n=1===w(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}}),e.lang=M("moment.lang is deprecated. Use moment.locale instead.",Xe),e.langData=M("moment.langData is deprecated. Use moment.localeData instead.",tt);var Xi=Math.abs,Ki=rs("ms"),er=rs("s"),tr=rs("m"),nr=rs("h"),sr=rs("d"),ir=rs("w"),rr=rs("M"),ar=rs("y"),or=os("milliseconds"),ur=os("seconds"),lr=os("minutes"),dr=os("hours"),hr=os("days"),cr=os("months"),fr=os("years"),mr=Math.round,_r={s:45,m:45,h:22,d:26,M:11},yr=Math.abs,gr=St.prototype;return gr.abs=Bn,gr.add=Qn,gr.subtract=Xn,gr.as=ss,gr.asMilliseconds=Ki,gr.asSeconds=er,gr.asMinutes=tr,gr.asHours=nr,gr.asDays=sr,gr.asWeeks=ir,gr.asMonths=rr,gr.asYears=ar,gr.valueOf=is,gr._bubble=es,gr.get=as,gr.milliseconds=or,gr.seconds=ur,gr.minutes=lr,gr.hours=dr,gr.days=hr,gr.weeks=us,gr.months=cr,gr.years=fr,gr.humanize=fs,gr.toISOString=ms,gr.toString=ms,gr.toJSON=ms,gr.locale=cn,gr.localeData=fn,gr.toIsoString=M("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",ms),gr.lang=Ii,Z("X",0,0,"unix"),Z("x",0,0,"valueOf"),Q("x",$s),Q("X",Js),te("X",function(e,t,n){n._d=new Date(1e3*parseFloat(e,10))}),te("x",function(e,t,n){n._d=new Date(w(e))}),e.version="2.16.0",t(pt),e.fn=Ji,e.min=wt,e.max=kt,e.now=Gi,e.utc=d,e.unix=Gn,e.months=In,e.isDate=a,e.locale=Xe,e.invalid=m,e.duration=Vt,e.isMoment=p,e.weekdays=Zn,e.parseZone=jn,e.localeData=tt,e.isDuration=Mt,e.monthsShort=zn,e.weekdaysMin=qn,e.defineLocale=Ke,e.updateLocale=et,e.locales=nt,e.weekdaysShort=$n,e.normalizeUnits=H,e.relativeTimeRounding=hs,e.relativeTimeThreshold=cs,e.calendarFormat=Zt,e.prototype=Ji,e})}).call(this),function(){s=this.moment;try{delete this.moment}catch(e){}}.call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["momentjs:moment"]={},{moment:s})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.modules.meteorInstall,i=Package.modules.Buffer,o=Package.modules.process,u=Package["ecmascript-runtime"].Symbol,a=Package["ecmascript-runtime"].Map,s=Package["ecmascript-runtime"].Set,c=Package["babel-runtime"].meteorBabelHelpers,f=Package.promise.Promise,l,d=r({node_modules:{meteor:{validatejs:{lib:{"validate.js":["babel-runtime/helpers/typeof",function(t,e,n){var r;n.import("babel-runtime/helpers/typeof",{default:function(t){r=t}}),function(t,e,n){"use strict";var i=function t(e,n,r){r=o.extend({},o.options,r);var i=o.runValidations(e,n,r),u,a;for(u in c.sanitizeForInObject(i))for(a in c.sanitizeForInObject(i[u]))if(o.isPromise(i[u][a]))throw new Error("Use validate.async if you want support for promises");return t.processValidationResults(i,r)},o=i;o.extend=function(t){return[].slice.call(arguments,1).forEach(function(e){for(var n in c.sanitizeForInObject(e))t[n]=e[n]}),t},o.extend(i,{version:{major:0,minor:9,patch:0,metadata:"development",toString:function(){function t(){var t=o.format("%{major}.%{minor}.%{patch}",o.version);return o.isEmpty(o.version.metadata)||(t+="+"+o.version.metadata),t}return t}()},Promise:"undefined"!=typeof f?f:null,EMPTY_STRING_REGEXP:/^\s*$/,runValidations:function(){function t(t,e,n){var r=[],i,u,a,s,f,l,d;(o.isDomElement(t)||o.isJqueryElement(t))&&(t=o.collectFormValues(t));for(i in c.sanitizeForInObject(e)){a=o.getDeepObjectValue(t,i),s=o.result(e[i],a,t,i,n,e);for(u in c.sanitizeForInObject(s)){if(f=o.validators[u],!f)throw d=o.format("Unknown validator %{name}",{name:u}),new Error(d);l=s[u],l=o.result(l,a,t,i,n,e),l&&r.push({attribute:i,value:a,validator:u,globalOptions:n,attributes:t,options:l,error:f.call(f,a,l,i,t,n)})}}return r}return t}(),processValidationResults:function(){function t(t,e){var n;switch(t=o.pruneEmptyErrors(t,e),t=o.expandMultipleErrors(t,e),t=o.convertErrorMessages(t,e),e.format||"grouped"){case"detailed":break;case"flat":t=o.flattenErrorsToArray(t);break;case"grouped":t=o.groupErrorsByAttribute(t);for(n in c.sanitizeForInObject(t))t[n]=o.flattenErrorsToArray(t[n]);break;default:throw new Error(o.format("Unknown format %{format}",e))}return o.isEmpty(t)?void 0:t}return t}(),async:function(){function t(t,e,n){n=o.extend({},o.async.options,n);var r=n.wrapErrors||function(t){return t};n.cleanAttributes!==!1&&(t=o.cleanAttributes(t,e));var i=o.runValidations(t,e,n);return new o.Promise(function(u,a){o.waitForResults(i).then(function(){var s=o.processValidationResults(i,n);s?a(new r(s,n,t,e)):u(t)},function(t){a(t)})})}return t}(),single:function(){function t(t,e,n){return n=o.extend({},o.single.options,n,{format:"flat",fullMessages:!1}),o({single:t},{single:e},n)}return t}(),waitForResults:function(){function t(t){return t.reduce(function(t,e){return o.isPromise(e.error)?t.then(function(){return e.error.then(function(t){e.error=t||null},function(t){if(t instanceof Error)throw t;o.error("Rejecting promises with the result is deprecated. Please use the resolve callback instead."),e.error=t})}):t},new o.Promise(function(t){t()}))}return t}(),result:function(){function t(t){var e=[].slice.call(arguments,1);return"function"==typeof t&&(t=t.apply(null,e)),t}return t}(),isNumber:function(){function t(t){return"number"==typeof t&&!isNaN(t)}return t}(),isFunction:function(){function t(t){return"function"==typeof t}return t}(),isInteger:function(){function t(t){return o.isNumber(t)&&t%1===0}return t}(),isObject:function(){function t(t){return t===Object(t)}return t}(),isDate:function(){function t(t){return t instanceof Date}return t}(),isDefined:function(){function t(t){return null!==t&&void 0!==t}return t}(),isPromise:function(){function t(t){return!!t&&o.isFunction(t.then)}return t}(),isJqueryElement:function(){function t(t){return t&&o.isString(t.jquery)}return t}(),isDomElement:function(){function t(t){return!!t&&(!(!o.isFunction(t.querySelectorAll)||!o.isFunction(t.querySelector))&&(!(!o.isObject(document)||t!==document)||("object"===("undefined"==typeof HTMLElement?"undefined":r(HTMLElement))?t instanceof HTMLElement:t&&"object"===("undefined"==typeof t?"undefined":r(t))&&null!==t&&1===t.nodeType&&"string"==typeof t.nodeName)))}return t}(),isEmpty:function(){function t(t){var e;if(!o.isDefined(t))return!0;if(o.isFunction(t))return!1;if(o.isString(t))return o.EMPTY_STRING_REGEXP.test(t);if(o.isArray(t))return 0===t.length;if(o.isDate(t))return!1;if(o.isObject(t)){for(e in c.sanitizeForInObject(t))return!1;return!0}return!1}return t}(),format:o.extend(function(t,e){return o.isString(t)?t.replace(o.format.FORMAT_REGEXP,function(t,n,r){return"%"===n?"%{"+r+"}":String(e[r])}):t},{FORMAT_REGEXP:/(%?)%\{([^\}]+)\}/g}),prettify:function(){function t(t){return o.isNumber(t)?100*t%1===0?""+t:parseFloat(Math.round(100*t)/100).toFixed(2):o.isArray(t)?t.map(function(t){return o.prettify(t)}).join(", "):o.isObject(t)?t.toString():(t=""+t,t.replace(/([^\s])\.([^\s])/g,"$1 $2").replace(/\\+/g,"").replace(/[_-]/g," ").replace(/([a-z])([A-Z])/g,function(t,e,n){return""+e+" "+n.toLowerCase()}).toLowerCase())}return t}(),stringifyValue:function(){function t(t){return o.prettify(t)}return t}(),isString:function(){function t(t){return"string"==typeof t}return t}(),isArray:function(){function t(t){return"[object Array]"==={}.toString.call(t)}return t}(),contains:function(){function t(t,e){return!!o.isDefined(t)&&(o.isArray(t)?t.indexOf(e)!==-1:e in t)}return t}(),forEachKeyInKeypath:function(){function t(t,e,n){if(o.isString(e)){var r="",i,u=!1;for(i=0;i<e.length;++i)switch(e[i]){case".":u?(u=!1,r+="."):(t=n(t,r,!1),r="");break;case"\\":u?(u=!1,r+="\\"):u=!0;break;default:u=!1,r+=e[i]}return n(t,r,!0)}}return t}(),getDeepObjectValue:function(){function t(t,e){if(o.isObject(t))return o.forEachKeyInKeypath(t,e,function(t,e){if(o.isObject(t))return t[e]})}return t}(),collectFormValues:function(){function t(t,e){var n={},r,i,u,a;if(o.isJqueryElement(t)&&(t=t[0]),!t)return n;for(e=e||{},u=t.querySelectorAll("input[name], textarea[name]"),r=0;r<u.length;++r)i=u.item(r),o.isDefined(i.getAttribute("data-ignored"))||(a=o.sanitizeFormValue(i.value,e),"number"===i.type?a=a?+a:null:"checkbox"===i.type?i.attributes.value?i.checked||(a=n[i.name]||null):a=i.checked:"radio"===i.type&&(i.checked||(a=n[i.name]||null)),n[i.name]=a);for(u=t.querySelectorAll("select[name]"),r=0;r<u.length;++r)i=u.item(r),a=o.sanitizeFormValue(i.options[i.selectedIndex].value,e),n[i.name]=a;return n}return t}(),sanitizeFormValue:function(){function t(t,e){return e.trim&&o.isString(t)&&(t=t.trim()),e.nullify!==!1&&""===t?null:t}return t}(),capitalize:function(){function t(t){return o.isString(t)?t[0].toUpperCase()+t.slice(1):t}return t}(),pruneEmptyErrors:function(){function t(t){return t.filter(function(t){return!o.isEmpty(t.error)})}return t}(),expandMultipleErrors:function(){function t(t){var e=[];return t.forEach(function(t){o.isArray(t.error)?t.error.forEach(function(n){e.push(o.extend({},t,{error:n}))}):e.push(t)}),e}return t}(),convertErrorMessages:function(){function t(t,e){e=e||{};var n=[];return t.forEach(function(t){var r=o.result(t.error,t.value,t.attribute,t.options,t.attributes,t.globalOptions);return o.isString(r)?("^"===r[0]?r=r.slice(1):e.fullMessages!==!1&&(r=o.capitalize(o.prettify(t.attribute))+" "+r),r=r.replace(/\\\^/g,"^"),r=o.format(r,{value:o.stringifyValue(t.value)}),void n.push(o.extend({},t,{error:r}))):void n.push(t)}),n}return t}(),groupErrorsByAttribute:function(){function t(t){var e={};return t.forEach(function(t){var n=e[t.attribute];n?n.push(t):e[t.attribute]=[t]}),e}return t}(),flattenErrorsToArray:function(){function t(t){return t.map(function(t){return t.error})}return t}(),cleanAttributes:function(){function t(t,e){function n(t,e,n){return o.isObject(t[e])?t[e]:t[e]=!!n||{}}function r(t){var e={},r,i;for(i in c.sanitizeForInObject(t))t[i]&&o.forEachKeyInKeypath(e,i,n);return e}function i(t,e){if(!o.isObject(t))return t;var n=o.extend({},t),r,u;for(u in c.sanitizeForInObject(t))r=e[u],o.isObject(r)?n[u]=i(n[u],r):r||delete n[u];return n}return o.isObject(e)&&o.isObject(t)?(e=r(e),i(t,e)):{}}return t}(),exposeModule:function(){function t(t,e,n,r,i){n?(r&&r.exports&&(n=r.exports=t),n.validate=t):(e.validate=t,t.isFunction(i)&&i.amd&&i([],function(){return t}))}return t}(),warn:function(){function t(t){"undefined"!=typeof console&&console.warn&&console.warn("[validate.js] "+t)}return t}(),error:function(){function t(t){"undefined"!=typeof console&&console.error&&console.error("[validate.js] "+t)}return t}()}),i.validators={presence:function(){function t(t,e){if(e=o.extend({},this.options,e),o.isEmpty(t))return e.message||this.message||"can't be blank"}return t}(),length:function(){function t(t,e,n){if(!o.isEmpty(t)){e=o.extend({},this.options,e);var r=e.is,i=e.maximum,u=e.minimum,a=e.tokenizer||function(t){return t},s,c=[];t=a(t);var f=t.length;return o.isNumber(f)?(o.isNumber(r)&&f!==r&&(s=e.wrongLength||this.wrongLength||"is the wrong length (should be %{count} characters)",c.push(o.format(s,{count:r}))),o.isNumber(u)&&f<u&&(s=e.tooShort||this.tooShort||"is too short (minimum is %{count} characters)",c.push(o.format(s,{count:u}))),o.isNumber(i)&&f>i&&(s=e.tooLong||this.tooLong||"is too long (maximum is %{count} characters)",c.push(o.format(s,{count:i}))),c.length>0?e.message||c:void 0):(o.error(o.format("Attribute %{attr} has a non numeric value for `length`",{attr:n})),e.message||this.notValid||"has an incorrect length")}}return t}(),numericality:function(){function t(t,e){if(!o.isEmpty(t)){e=o.extend({},this.options,e);var n=[],r,i,u={greaterThan:function(){function t(t,e){return t>e}return t}(),greaterThanOrEqualTo:function(){function t(t,e){return t>=e}return t}(),equalTo:function(){function t(t,e){return t===e}return t}(),lessThan:function(){function t(t,e){return t<e}return t}(),lessThanOrEqualTo:function(){function t(t,e){return t<=e}return t}()};if(e.noStrings!==!0&&o.isString(t)&&(t=+t),!o.isNumber(t))return e.message||e.notValid||this.notValid||"is not a number";if(e.onlyInteger&&!o.isInteger(t))return e.message||e.notInteger||this.notInteger||"must be an integer";for(r in c.sanitizeForInObject(u))if(i=e[r],o.isNumber(i)&&!u[r](t,i)){var a="not"+o.capitalize(r),s=e[a]||this[a]||"must be %{type} %{count}";n.push(o.format(s,{count:i,type:o.prettify(r)}))}return e.odd&&t%2!==1&&n.push(e.notOdd||this.notOdd||"must be odd"),e.even&&t%2!==0&&n.push(e.notEven||this.notEven||"must be even"),n.length?e.message||n:void 0}}return t}(),datetime:o.extend(function(t,e){if(!o.isFunction(this.parse)||!o.isFunction(this.format))throw new Error("Both the parse and format functions needs to be set to use the datetime/date validator");if(!o.isEmpty(t)){e=o.extend({},this.options,e);var n,r=[],i=e.earliest?this.parse(e.earliest,e):NaN,u=e.latest?this.parse(e.latest,e):NaN;return t=this.parse(t,e),isNaN(t)||e.dateOnly&&t%864e5!==0?e.message||this.notValid||"must be a valid date":(!isNaN(i)&&t<i&&(n=this.tooEarly||"must be no earlier than %{date}",n=o.format(n,{date:this.format(i,e)}),r.push(n)),!isNaN(u)&&t>u&&(n=this.tooLate||"must be no later than %{date}",n=o.format(n,{date:this.format(u,e)}),r.push(n)),r.length?e.message||r:void 0)}},{parse:null,format:null}),date:function(){function t(t,e){return e=o.extend({},e,{dateOnly:!0}),o.validators.datetime.call(o.validators.datetime,t,e)}return t}(),format:function(){function t(t,e){(o.isString(e)||e instanceof RegExp)&&(e={pattern:e}),e=o.extend({},this.options,e);var n=e.message||this.message||"is invalid",r=e.pattern,i;if(!o.isEmpty(t))return o.isString(t)?(o.isString(r)&&(r=new RegExp(e.pattern,e.flags)),i=r.exec(t),i&&i[0].length==t.length?void 0:n):n}return t}(),inclusion:function(){function t(t,e){if(!o.isEmpty(t)&&(o.isArray(e)&&(e={within:e}),e=o.extend({},this.options,e),!o.contains(e.within,t))){var n=e.message||this.message||"^%{value} is not included in the list";return o.format(n,{value:t})}}return t}(),exclusion:function(){function t(t,e){if(!o.isEmpty(t)&&(o.isArray(e)&&(e={within:e}),e=o.extend({},this.options,e),o.contains(e.within,t))){var n=e.message||this.message||"^%{value} is restricted";return o.format(n,{value:t})}}return t}(),email:o.extend(function(t,e){e=o.extend({},this.options,e);var n=e.message||this.message||"is not a valid email";if(!o.isEmpty(t))return o.isString(t)&&this.PATTERN.exec(t)?void 0:n},{PATTERN:/^[a-z0-9\u007F-\uffff!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9\u007F-\uffff!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z]{2,}$/i}),equality:function(){function t(t,e,n,r){if(!o.isEmpty(t)){o.isString(e)&&(e={attribute:e}),e=o.extend({},this.options,e);var i=e.message||this.message||"is not equal to %{attribute}";if(o.isEmpty(e.attribute)||!o.isString(e.attribute))throw new Error("The attribute must be a non empty string");var u=o.getDeepObjectValue(r,e.attribute),a=e.comparator||function(t,e){return t===e};return a(t,u,e,n,r)?void 0:o.format(i,{attribute:o.prettify(e.attribute)})}}return t}(),url:function(){function t(t,e){if(!o.isEmpty(t)){e=o.extend({},this.options,e);var n=e.message||this.message||"is not a valid url",r=e.schemes||this.schemes||["http","https"],i=e.allowLocal||this.allowLocal||!1;if(!o.isString(t))return n;var u="^(?:(?:"+r.join("|")+"):\\/\\/)(?:\\S+(?::\\S*)?@)?";u+="(?:";var a="(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))";i?a="(?:localhost|"+a+")":u+="(?!10(?:\\.\\d{1,3}){3})(?!127(?:\\.\\d{1,3}){3})(?!169\\.254(?:\\.\\d{1,3}){2})(?!192\\.168(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})",u+="(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|"+a+"(?::\\d{2,5})?(?:\\/[^\\s]*)?$";var s=new RegExp(u,"i");return s.exec(t)?void 0:n}}return t}()},i.exposeModule(i,this,t,e,n)}.call(this,"undefined"!=typeof e?e:null,"undefined"!=typeof n?n:null,"undefined"!=typeof define?define:null)}]},"load.js":["./lib/validate.js",function(t,e,n){var r;n.import("./lib/validate.js",{validate:function(t){r=t}}),r.validators.equals=function(t,e,n,r){if(e&&t!==e.value)return n+"must equal "+e.value},r.validators.doesNotEqual=function(t,e,n){if(e&&t===e.value)return n+"cannot equal "+e.value},r.validators.contains=function(t,e,n){if(e&&t.indexOf&&t.indexOf(e.value)===-1)return n+"must contain "+e.value},r.validators.doesNotContain=function(t,e,n){if(e&&t.indexOf&&t.indexOf(e.value)!==-1)return n+"cannot contain "+e.value},l=r}]}}}},{extensions:[".js",".json"]});d("./node_modules/meteor/validatejs/lib/validate.js"),d("./node_modules/meteor/validatejs/load.js"),"undefined"==typeof Package&&(Package={}),function(t,e){for(var n in e)n in t||(t[n]=e[n])}(Package.validatejs={},{validate:l})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package.http.HTTP,i=Package.jquery.$,a=Package.jquery.jQuery,r=Package["momentjs:moment"].moment,s=Package.validatejs.validate,u=Package["ohif:cornerstone"].cornerstone,l=Package["ohif:cornerstone"].cornerstoneMath,c=Package["ohif:cornerstone"].cornerstoneTools,d=Package["ohif:cornerstone"].cornerstoneWADOImageLoader,m=Package["ohif:cornerstone"].dicomParser,f=Package.modules.meteorInstall,p=Package.modules.Buffer,g=Package.modules.process,h=Package["ecmascript-runtime"].Symbol,v=Package["ecmascript-runtime"].Map,w=Package["ecmascript-runtime"].Set,y=Package["babel-runtime"].meteorBabelHelpers,I=Package.promise.Promise,b=Package.webapp.WebApp,k=Package.logging.Log,S=Package.deps.Tracker,D=Package.deps.Deps,T=Package.session.Session,V=Package["ddp-client"].DDP,C=Package.mongo.Mongo,P=Package.ui.Blaze,x=Package.ui.UI,M=Package.ui.Handlebars,E=Package.spacebars.Spacebars,N=Package["templating-runtime"].Template,j=Package.check.check,L=Package.check.Match,R=Package.underscore._,_=Package.random.Random,A=Package.ejson.EJSON,B=Package["launch-screen"].LaunchScreen,O=Package.htmljs.HTML,U,F,H,W,z,q,X,$,Y,G,K,Q,Z,J,ee,te,ne,oe,ie,ae,re,se,ue,le,ce,de,me,fe,pe,ge,he,ve,we,ye,Ie,be,ke,Se,De,Te,Ve,Ce,Pe,xe,Me,Ee,Ne,je,Le,Re,_e,Ae,Be,Oe,Ue,Fe,He,We,ze,qe,Xe,$e,Ye=f({node_modules:{meteor:{"ohif:viewerbase":{client:{"collections.js":function(){U=new e.Collection(null),U._debugName="ViewerStudies",e.subscribe("studyImportStatus")},components:{basic:{layout:{"template.layout.js":function(){N.__checkName("layout"),N.layout=new N("Template.layout",function(){var e=this;return E.include(e.lookupTemplate("yield"))})}},loadingText:{"template.loadingText.js":function(){N.__checkName("loadingText"),N.loadingText=new N("Template.loadingText",function(){var e=this;return O.Raw('<div class="loadingTextDiv">\n Loading... <i class="fa fa-spin fa-circle-o-notch fa-fw"></i>\n </div>')})}},removableBackdrop:{"template.removableBackdrop.js":function(){N.__checkName("removableBackdrop"),N.removableBackdrop=new N("Template.removableBackdrop",function(){var e=this;return O.Raw('<div class="removableBackdrop noselect" oncontextmenu="return false;" unselectable="on" onselectstart="return false;">\n </div>')})}},aboutModal:{"template.aboutModal.js":function(){N.__checkName("aboutModal"),N.aboutModal=new N("Template.aboutModal",function(){var e=this;return O.DIV({class:"modal fade",id:"aboutModal",tabindex:"-1",role:"dialog","aria-labelledby":"aboutModalLabel"},"\n ",O.DIV({class:"modal-dialog modal-lg",role:"document"},"\n ",O.DIV({class:"modal-content"},"\n ",O.Raw('<div class="modal-header">\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">&times;</span>\n </button>\n <h4 class="modal-title" id="aboutModalLabel">\n About\n </h4>\n </div>'),"\n ",O.DIV({class:"modal-body"},"\n ",O.A({target:"_blank",class:"forkOnGithub",href:function(){return E.mustache(e.lookup("githubUrl"))}},"\n ",O.Raw('<img src="https://camo.githubusercontent.com/365986a132ccd6a44c23a9169022c0b5c890c387/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png">'),"\n "),"\n ",O.DIV({class:"logo p-x-3 p-y-3"},"\n ",O.SVG({class:"logoImage"},"\n ",O.USE({"xlink:href":"/packages/ohif_viewerbase/assets/icons.svg#icon-ohif-logo"}),"\n "),"\n ",O.Raw('<a class="logoText" target="_blank" href="http://ohif.org">\n Open Health Imaging Foundation DICOM Viewer\n </a>'),"\n "),"\n ",O.Raw('<div class="p-x-1 p-y-1 m-y-2">\n <a class="btn btn-default inline" target="_blank" href="https://groups.google.com/forum/#!forum/cornerstone-platform">\n Visit the forum\n </a>\n <a class="btn btn-default inline" target="_blank" href="https://github.com/OHIF/Viewers/issues">\n Report an issue\n </a>\n </div>'),"\n ",O.DIV({class:"p-y-1 p-x-1"},"\n ",O.Raw("<h3>Version Information</h3>"),"\n ",O.TABLE({class:"table table-responsive"},"\n ",O.THEAD("\n ",O.TR("\n ",O.TH("Name"),"\n ",O.TH("Value"),"\n "),"\n "),"\n ",O.TBODY("\n ",O.TR("\n ",O.TD("Repository URL"),"\n ",O.TD("\n ",O.A({target:"_blank",href:function(){return E.mustache(e.lookup("githubUrl"))}},P.View("lookup:githubUrl",function(){return E.mustache(e.lookup("githubUrl"))})),"\n "),"\n "),"\n ",O.TR("\n ",O.TD("Last Commit Hash"),"\n ",O.TD("\n ",O.A({target:"_blank",href:function(){return[E.mustache(e.lookup("githubUrl")),"/commit/",E.mustache(e.lookup("gitRev"),"long")]}},"\n ",P.View("lookup:gitRev",function(){return E.mustache(e.lookup("gitRev"),"long")}),"\n "),"\n "),"\n "),"\n ",O.TR("\n ",O.TD("Latest Tag"),"\n ",O.TD("\n ",O.A({target:"_blank",href:function(){return[E.mustache(e.lookup("githubUrl")),"/releases/tag/",E.mustache(e.lookup("gitRev"),"tag")]}},"\n ",P.View("lookup:gitRev",function(){return E.mustache(e.lookup("gitRev"),"tag")}),"\n "),"\n "),"\n "),"\n ",O.TR("\n ",O.TD("Branch"),"\n ",O.TD("\n ",O.A({target:"_blank",href:function(){return[E.mustache(e.lookup("githubUrl")),"/tree/",E.mustache(e.lookup("gitRev"),"branch")]}},"\n ",P.View("lookup:gitRev",function(){return E.mustache(e.lookup("gitRev"),"branch")}),"\n "),"\n "),"\n "),"\n "),"\n "),"\n "),"\n "),"\n "),"\n "),"\n ")})},"aboutModal.js":function(){N.aboutModal.helpers({githubUrl:function(){function e(){return"https://github.com/OHIF/Viewers"}return e}()})}}},studyBrowser:{studyBrowser:{"template.studyBrowser.js":function(){N.__checkName("studyBrowser"),N.studyBrowser=new N("Template.studyBrowser",function(){var e=this;return O.DIV({class:"studyBrowser"},"\n ",O.DIV({class:"scrollableStudyThumbnails"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("studies")),_variable:"study"}},function(){return["\n ",P.Each(function(){return{_sequence:E.dataMustache(e.lookup("sort"),E.dataMustache(e.lookup("studyThumbnails"),e.lookup("study")),e.lookup("thumbnailSortBy"),e.lookup("thumbnailSortType")),_variable:"thumbnail"}},function(){return["\n ",P._TemplateWith(function(){return{thumbnail:E.call(e.lookup("thumbnail"))}},function(){return E.include(e.lookupTemplate("thumbnailEntry"))}),"\n "]}),"\n "]}),"\n "),"\n ")})},"studyBrowser.js":function(){N.studyBrowser.helpers({studies:function(){function e(){return U.find({selected:!0})}return e}()})}},thumbnailEntry:{"template.thumbnailEntry.js":function(){N.__checkName("thumbnailEntry"),N.thumbnailEntry=new N("Template.thumbnailEntry",function(){var e=this;return P.Let({stack:function(){return E.call(E.dot(e.lookup("."),"thumbnail","stack"))}},function(){return["\n ",O.DIV({class:function(){return["thumbnailEntry noselect m-t-1 m-b-2 ",E.mustache(e.lookup("draggableClass"))," ",P.If(function(){return E.dataMustache(e.lookup("isDisplaySetActive"),E.dot(e.lookup("stack"),"displaySetInstanceUid"),e.lookup("viewportIndex"))},function(){return"active"})]}},"\n ",O.DIV({class:"p-x-1"},"\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("."))},function(){return E.include(e.lookupTemplate("imageThumbnail"))}),"\n "),"\n ",O.DIV({class:function(){return["seriesDetails clearfix m-x-1 ",P.Unless(function(){return E.call(E.dot(e.lookup("stack"),"seriesDescription"))},function(){return"info-only"})]}},"\n ",O.DIV({class:"seriesDescription"},"\n ",P.View("lookup:stack.seriesDescription",function(){return E.mustache(E.dot(e.lookup("stack"),"seriesDescription"))}),"\n "),"\n ",O.DIV({class:"seriesInformation"},"\n ",O.DIV({class:"item item-series clearfix"},"\n ",O.DIV({class:"icon"},"S:"),"\n ",O.DIV({class:"value"},P.View("lookup:stack.seriesNumber",function(){return E.mustache(E.dot(e.lookup("stack"),"seriesNumber"))})),"\n "),"\n ",P.Unless(function(){return E.dataMustache(e.lookup("isUndefined"),e.lookup("instanceNumber"))},function(){return["\n ",O.DIV({class:"item item-series clearfix"},"\n ",O.DIV({class:"icon"},"I:"),"\n ",O.DIV({class:"value"},P.View("lookup:instanceNumber",function(){return E.mustache(e.lookup("instanceNumber"))})),"\n "),"\n "]}),"\n ",O.DIV({class:"item item-frames clearfix"},"\n ",O.DIV({class:"icon"},O.DIV()),"\n ",O.DIV({class:"value"},P.View("lookup:stack.numImageFrames",function(){return E.mustache(E.dot(e.lookup("stack"),"numImageFrames"))})),"\n "),"\n "),"\n "),"\n "),"\n "]})})},"thumbnailEntry.js":function(){var e=function e(t,n){var o=t.cloneNode(!0),a=i(o).find("canvas");return a.each(function(e,n){var o=n.getContext("2d"),a=i(t).find("canvas").get(e);o.drawImage(a,0,0)}),o.id=n,o.style.visibility="hidden",o},t=function t(a,r){a.originalEvent.preventDefault();var s=a.currentTarget,u=i(s),l="DragClone",c=e(s,l),d=i(c);d.addClass("imageThumbnailClone"),c.style.pointerEvents="none",document.body.appendChild(c);var m=void 0,f=void 0;"touchstart"===a.type?(m=a.originalEvent.touches[0].pageX,f=a.originalEvent.touches[0].pageY):!function(){m=a.pageX,f=a.pageY;var e={};e.mousemove=function(e){return n(e)},e.mouseup=function(t){return o(t,r,e)},i(document).on("mousemove",e.mousemove),i(document).on("mouseup",e.mouseup)}();var p=u.offset(),g=p.left,h=p.top,v={x:m-g,y:f-h};d.data("diff",v),d.css({left:m-v.x,position:"fixed",top:f-v.y,visibility:"hidden","z-index":1e5})},n=function e(t){var n=void 0,o=void 0;"touchmove"===t.type?(n=t.originalEvent.changedTouches[0].pageX,o=t.originalEvent.changedTouches[0].pageY):(n=t.pageX,o=t.pageY);var a=i("#DragClone"),r=a.data("diff");a.css({left:n-r.x,position:"fixed",top:o-r.y,visibility:"visible","z-index":1e5});var s=document.elementFromPoint(n,o);if(s){i(".imageViewerViewport canvas").removeClass("faded");var u=i(s).parents(".imageViewerViewport");u.length?(u.find("canvas").not(".magnifyTool").addClass("faded"),document.body.style.cursor="copy"):s.classList.contains("imageViewerViewport")&&s.classList.contains("empty")?document.body.style.cursor="copy":document.body.style.cursor="no-drop"}},o=function e(t,n,o){o&&(i(document).off("mousemove",o.mousemove),i(document).off("mouseup",o.mouseup)),document.body.style.cursor="auto";var a=i("#DragClone");if(a.length){var r=a.offset().top,s=a.offset().left,u=a.data("diff"),l=document.elementFromPoint(s+u.x,r+u.y);if(i(".imageThumbnailClone").remove(),i(".imageViewerViewport canvas").removeClass("faded"),l){l.classList.remove("faded");var c=void 0,d=i(l).closest(".imageViewerViewport");if(d.length)c=d.get(0);else{if(!l.classList.contains("imageViewerViewport")||!l.classList.contains("empty"))return!1;c=l}if(!n)return!1;var m=i(".imageViewerViewport").index(c);return window.layoutManager.rerenderViewportWithNewDisplaySet(m,n),!1}}};N.thumbnailEntry.onCreated(function(){var e=N.instance();e.isDragAndDrop=R.isUndefined(e.data.viewportIndex)}),N.thumbnailEntry.events({"touchstart .thumbnailEntry, mousedown .thumbnailEntry":function(){function e(e,n){var o=n.data.thumbnail.stack;n.isDragAndDrop&&t(e,o)}return e}(),"touchmove .thumbnailEntry":function(){function e(e,t){t.isDragAndDrop&&n(e)}return e}(),"touchend .thumbnailEntry":function(){function e(e,t){var n=t.data.thumbnail.stack;t.isDragAndDrop&&o(e,n)}return e}(),"click .thumbnailEntry":function(){function e(e,t){if(!t.isDragAndDrop){var n=t.data.thumbnail.stack;window.layoutManager.rerenderViewportWithNewDisplaySet(t.data.viewportIndex,n)}}return e}(),"dblclick .thumbnailEntry":function(){function e(e,t){var n=T.get("activeViewport")||0,o=t.data.thumbnail.stack;window.layoutManager.rerenderViewportWithNewDisplaySet(n,o)}return e}()}),N.thumbnailEntry.helpers({draggableClass:function(){function e(){return N.instance().isDragAndDrop?"draggable":""}return e}(),instanceNumber:function(){function e(){var e=N.instance().data.thumbnail;if(e){var t=e.stack;if(t&&t.isMultiFrame){var n=t.images[0];if(n)return n.instanceNumber}}}return e}()})}},imageThumbnail:{"template.imageThumbnail.js":function(){N.__checkName("imageThumbnail"),N.imageThumbnail=new N("Template.imageThumbnail",function(){var e=this;return O.DIV({class:"imageThumbnail"},O.Raw('\n <div class="imageThumbnailCanvas"></div>\n '),O.DIV({class:"imageThumbnailLoadingIndicator thumbnailLoadingIndicator"},"\n ",O.P("Loading ",P.View("lookup:percentComplete",function(){return E.mustache(e.lookup("percentComplete"))})),"\n "),O.Raw('\n <div class="imageThumbnailErrorLoadingIndicator thumbnailLoadingIndicator">\n <p>Error</p>\n </div>\n '))})},"imageThumbnail.js":["meteor/templating","meteor/tracker","meteor/session",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var i;n.import("meteor/tracker",{Tracker:function(e){i=e}});var a;n.import("meteor/session",{Session:function(e){a=e}}),o.imageThumbnail.onCreated(function(){var e=o.instance();e.getThumbnailImageId=function(){var t=e.data.thumbnail.stack,n=t.images[0];return ee(n)}}),o.imageThumbnail.onRendered(function(){var e=o.instance(),t=e.$(".imageThumbnail"),n=t.find(".imageThumbnailLoadingIndicator"),a=t.find(".imageThumbnailErrorLoadingIndicator"),r=t.find(".imageThumbnailCanvas"),s=r.get(0);e.refreshImage=function(){u.disable(s),n.css("display","block");var t=function e(t){u.enable(s),u.displayImage(s,t),n.css("display","none")},o=function e(){n.css("display","none"),a.css("display","block")},i=e.getThumbnailImageId();u.loadAndCacheImage(i).then(t,o)},e.autorun(function(){e.data.currentStudy&&e.data.currentStudy.dep.depend(),i.afterFlush(function(){return e.refreshImage()})})}),o.imageThumbnail.onDestroyed(function(){var e=o.instance(),t=e.$(".imageThumbnail"),n=t.find(".imageThumbnailCanvas"),i=n.get(0);u.disable(i)}),o.imageThumbnail.helpers({percentComplete:function(){function e(){var e=o.instance(),t=OHIF.string.encodeId(e.getThumbnailImageId()),n=a.get("CornerstoneThumbnailLoadProgress"+t);if(n&&100!==n)return n+"%"}return e}()})}]}},viewer:{imageViewerViewport:{"template.imageViewerViewport.js":function(){N.__checkName("imageViewerViewport"),N.imageViewerViewport=new N("Template.imageViewerViewport",function(){var e=this;return[O.Raw('<div class="imageViewerViewport" oncontextmenu="return false;" unselectable="on" onselectstart="return false;" tabindex="0">\n </div>\n <div class="viewportInstructions">\n Please drag a stack here to view images.\n </div>\n '),E.include(e.lookupTemplate("viewportOverlay")),"\n ",E.include(e.lookupTemplate("loadingIndicator")),"\n ",E.include(e.lookupTemplate("viewportOrientationMarkers"))]})},"imageViewerViewport.js":["meteor/ohif:core",function(t,n,o){function a(e,t){if(l.log.info("imageViewerViewport loadDisplaySetIntoViewport"),!e.study||!e.displaySet||!e.element)return void l.log.warn("loadDisplaySetIntoViewport: No Study, Display Set, or Element provided");var n=e.element,o=i(".imageViewerViewport").index(n),a=window.layoutManager;a.viewportData=a.viewportData||{},a.viewportData[o]=a.viewportData[o]||{},a.viewportData[o].viewportIndex=o;var r=T.get("activeContentId");if(r){if(!ViewerData[r])return;ViewerData[r].loadedSeriesData[o]={}}var s=[],m=e.displaySet,f=m.images.length,p=void 0;m.images.forEach(function(t,n){var o={instance:t,series:m,study:e.study,numImages:f,imageIndex:n+1},i=t.numFrames;if(i>1){l.log.info("Multiframe image detected");for(var a=0;a<i;a++)o.frame=a,p=ee(t,a),s.push(p),ne(p,o)}else p=ee(t),s.push(p),ne(p,o)});var g={currentImageIdIndex:e.currentImageIdIndex||0,imageIds:s};p=s[g.currentImageIdIndex],t.imageId=p,F[o]=p;var h={renderer:"webgl"};u.enable(n,h);var v=c.loadHandlerManager.getEndLoadHandler(),w=c.loadHandlerManager.getErrorLoadingHandler(),y=u.getViewport(n),I=e.studyInstanceUid,b=e.seriesInstanceUid,k=e.displaySetInstanceUid,S=e.currentImageIdIndex;a.viewportData[o]={imageId:p,studyInstanceUid:I,seriesInstanceUid:b,displaySetInstanceUid:k,currentImageIdIndex:S,viewport:y,viewportIndex:o},u.loadAndCacheImage(p).then(function(s){function f(e,t){T.set("CornerstoneNewImage"+o,_.id())}var p=void 0;try{p=u.getEnabledElement(n)}catch(e){return void l.log.warn("Viewport destroyed before loaded image could be displayed")}var h=i(n);if(p.image=s,p.viewport=u.getDefaultViewport(p.canvas,s),ie(s),m.images&&m.images.length){var w=m.images[0],y=Ae(w,p,s.imageId);y?(u.displayImage(n,s,y),p.fitToWindow=!1,u.resize(n,!1)):e.viewport?(u.displayImage(n,s,e.viewport),u.resize(n,!0)):(u.displayImage(n,s),u.resize(n,!0)),delete F[o],v(n),n.classList.remove("empty"),h.siblings(".viewportInstructions").hide(),h.siblings(".imageViewerViewportOverlay").show(),c.addStackStateManager(n,["stack","playClip","referenceLines"]),Y(n),c.clearToolState(n,"stack"),c.addToolState(n,"stack",g);var I=w.multiframeMetadata,b=void 0;b=I&&I.averageFrameRate>0?I.averageFrameRate:l.viewer.cine.framesPerSecond;var k={loop:l.viewer.cine.loop,framesPerSecond:b};c.addToolState(n,"playClip",k),I&&I.isMultiframeImage&&I.averageFrameRate>0&&c.playClip(n),c.mouseInput.enable(n),c.touchInput.enable(n),c.mouseWheelInput.enable(n),c.keyboardInput.enable(n);var S=se.getActiveTool();se.setActiveTool(S,[n]);var D=function e(){l.log.info("imageViewerViewport onImageRendered"),a.viewportData[o]||l.log.warn("onImageRendered: LayoutManager has no viewport data for this viewport index?: "+o),T.set("CornerstoneImageRendered"+o,_.id());var t=u.getViewport(n);a.viewportData[o].viewport=t,ViewerData[r].loadedSeriesData[o].viewport=t,T.set("ViewerData",ViewerData)};h.off("CornerstoneImageRendered",D),h.on("CornerstoneImageRendered",D),T.set("CornerstoneImageRendered"+o,_.id());var V=function e(n,i){l.log.info("imageViewerViewport onNewImage"),t.imageId=i.enabledElement.image.imageId,T.set("CornerstoneNewImage"+o,_.id()),a.viewportData[o].imageId=i.enabledElement.image.imageId;var s=n.target,u=c.getToolState(s,"stack");if(u&&u.data&&u.data.length){Y(s);var d=c.getToolState(s,"stack");if(d&&d.data.length&&d.data[0].imageIds.length>1){var m=d.data[0].imageIds.indexOf(t.imageId);a.viewportData[o].currentImageIdIndex=m,ViewerData[r].loadedSeriesData[o].currentImageIdIndex=m,T.set("ViewerData",ViewerData)}}};h.off("CornerstoneNewImage",V),h.on("CornerstoneNewImage",V),T.set("CornerstoneNewImage"+o,_.id()),h.off("CornerstoneStackScroll",f),g.imageIds.length>1&&h.on("CornerstoneStackScroll",f);var C=function e(t,n){var o=n.element,a=T.get("activeViewport"),r=i(".imageViewerViewport").index(o);if(i(o).focus(),r!==a){l.log.info("imageViewerViewport sendActivationTrigger"),n.viewportIndex=r;var s=i.Event("ActivateViewport",n);s.type="ActivateViewport",i(t.target).trigger(s,n)}};h.off(d,C),h.on(d,C),ViewerData[r].loadedSeriesData=a.viewportData;var P=c.metaData.get("imagePlane",s.imageId);l.viewer.refLinesEnabled&&P&&P.frameOfReferenceUID&&l.viewer.updateImageSynchronizer.add(n),o===T.get("activeViewport")&&de(n),e.renderedCallback&&"function"==typeof e.renderedCallback&&e.renderedCallback(n),a.updateSession()}},function(e){w(n,p,e)})}function r(e,t,n){var o=e.study;if(!o||!o.displaySets)throw"Study does not exist or has no display sets";if(o.displaySets.every(function(n){return n.displaySetInstanceUid!==t||(e.displaySet=n,!1)}),!e.displaySet)throw"Display set not found in specified study!";a(e,n)}function s(e,t){return Object.keys(e).filter(function(n){return e[n]===t})}var l;o.import("meteor/ohif:core",{OHIF:function(e){l=e}});var d="CornerstoneToolsMouseDown CornerstoneToolsMouseDownActivate CornerstoneToolsMouseClick CornerstoneToolsMouseDrag CornerstoneToolsMouseUp CornerstoneToolsMouseWheel CornerstoneToolsTap CornerstoneToolsTouchPress CornerstoneToolsTouchStart CornerstoneToolsTouchStartActive CornerstoneToolsMultiTouchDragStart";e.startup(function(){F={},i(u).on("CornerstoneImageLoadProgress",function(e,t){H=s(F,t.imageId),H.forEach(function(e){T.set("CornerstoneLoadProgress"+e,t.percentComplete)});var n=l.string.encodeId(t.imageId);T.set("CornerstoneThumbnailLoadProgress"+n,t.percentComplete)});var e={magnifySize:300,magnificationLevel:3};c.magnify.setConfiguration(e)}),N.imageViewerViewport.onRendered(function(){var e=N.currentData();l.log.info("imageViewerViewport onRendered");var t=this.find(".imageViewerViewport");this.element=t,i(t).siblings(".imageViewerLoadingIndicator").css("display","block");var n=T.get("activeViewport"),o={element:t,viewport:this.data.viewport,currentImageIdIndex:this.data.currentImageIdIndex,displaySetInstanceUid:this.data.displaySetInstanceUid,studyInstanceUid:this.data.studyInstanceUid,seriesInstanceUid:this.data.seriesInstanceUid,renderedCallback:this.data.renderedCallback,activeViewport:n};if(!this.data.displaySetInstanceUid)return t.classList.add("empty"),i(t).siblings(".imageViewerLoadingIndicator").css("display","none"),void i(t).siblings(".viewportInstructions").show();var a=U.findOne({studyInstanceUid:this.data.studyInstanceUid}),s=this.data.displaySetInstanceUid;o.study=a,r(o,s,e)}),N.imageViewerViewport.onDestroyed(function(){l.log.info("imageViewerViewport onDestroyed");var e=this.find(".imageViewerViewport");if(e&&i(e).find("canvas").length){try{var t=u.getEnabledElement(this.element);t&&c.stopClip(this.element)}catch(e){l.log.warn(e)}u.disable(this.element)}}),N.imageViewerViewport.events({"ActivateViewport .imageViewerViewport":function(){function e(e){l.log.info("imageViewerViewport ActivateViewport"),de(e.currentTarget)}return e}(),"click .imageViewerViewport":function(){function e(e){de(e.currentTarget)}return e}(),"CornerstoneToolsMouseDoubleClick .imageViewerViewport, CornerstoneToolsDoubleTap .imageViewerViewport":function(){function e(e){var t=i(".imageViewerViewport").index(e.currentTarget);layoutManager.toggleEnlargement(t),S.afterFlush(function(){de(layoutManager.isZoomed?i(".imageViewerViewport")[0]:i(".imageViewerViewport").eq(window.layoutManager.zoomedViewportIndex))})}return e}()})}]},gridLayout:{"template.gridLayout.js":function(){N.__checkName("gridLayout"),N.gridLayout=new N("Template.gridLayout",function(){var e=this;return O.DIV({id:"imageViewerViewports"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("viewports")),_variable:"viewport"}},function(){return["\n ",O.DIV({class:"viewportContainer",style:function(){return["height:",E.mustache(e.lookup("height")),"%;width:",E.mustache(e.lookup("width")),"%;"]}},"\n ",O.DIV({class:"removable"},"\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("viewport"))},function(){return E.include(e.lookupTemplate("imageViewerViewport"))}),"\n "),"\n "),"\n "]}),"\n ")})},"gridLayout.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}}),i.gridLayout.helpers({height:function(){function e(){var e=i.instance(),t=e.data.rows||1;return 100/t}return e}(),width:function(){function e(){var e=i.instance(),t=e.data.columns||1;return 100/t}return e}(),viewports:function(){function e(){var e=i.instance(),t=e.data.rows,n=e.data.columns,o=t*n,a=e.data.viewportData,r=a.length;if(r<o)for(var s=o-r,u=0;u<s;u++)a.push({viewportIndex:r+u+1,rows:t,columns:n});else if(r>o)return a.slice(0,o);return a}return e}()})}]},loadingIndicator:{"template.loadingIndicator.js":function(){N.__checkName("loadingIndicator"),N.loadingIndicator=new N("Template.loadingIndicator",function(){var e=this;return[O.DIV({class:"imageViewerLoadingIndicator loadingIndicator"},"\n ",O.DIV({class:"indicatorContents"},"\n ",O.P("Loading... ",O.Raw('<i class="fa fa-spin fa-circle-o-notch fa-fw"></i>')," ",P.View("lookup:percentComplete",function(){return E.mustache(e.lookup("percentComplete"))})),"\n "),"\n "),O.Raw('\n <div class="imageViewerErrorLoadingIndicator loadingIndicator">\n <div class="indicatorContents">\n <h4>Error Loading Image</h4>\n <p class="description">An error has occurred.</p>\n <p class="details"></p>\n </div>\n </div>')]})},"loadingIndicator.js":["meteor/ohif:core",function(t,n,o){var a;o.import("meteor/ohif:core",{OHIF:function(e){a=e}}),e.startup(function(){c.loadHandlerManager.setStartLoadHandler(W),c.loadHandlerManager.setEndLoadHandler(z),c.loadHandlerManager.setErrorLoadingHandler(q)});var r;W=function e(t){clearTimeout(r),r=setTimeout(function(){console.log("startLoading");var e=i(t);e.siblings(".imageViewerErrorLoadingIndicator").css("display","none"),e.find("canvas").not(".magnifyTool").addClass("faded"),e.siblings(".imageViewerLoadingIndicator").css("display","block")},a.viewer.loadIndicatorDelay)},z=function e(t){clearTimeout(r);var n=i(t);n.siblings(".imageViewerErrorLoadingIndicator").css("display","none"),n.find("canvas").not(".magnifyTool").removeClass("faded"),n.siblings(".imageViewerLoadingIndicator").css("display","none")},q=function e(t,n,o,a){clearTimeout(r);var s=i(t);if(s.find("canvas").not(".magnifyTool").removeClass("faded"),s.siblings(".imageViewerLoadingIndicator").css("display","none"),"stackPrefetch"!==a){var u=s.siblings(".imageViewerErrorLoadingIndicator");u.css("display","block");var l=n,c={network:"A network error has occurred"};c.hasOwnProperty(o)&&(o=c[o]),u.find(".description").text("An error has occurred while loading image: "+l),o&&u.find(".details").text("Details: "+o)}},N.loadingIndicator.helpers({percentComplete:function(){function e(){var e=T.get("CornerstoneLoadProgress"+this.viewportIndex);if(e&&100!==e)return e+"%"}return e}()})}]},annotationDialogs:{"template.annotationDialogs.js":function(){N.__checkName("annotationDialogs"),N.annotationDialogs=new N("Template.annotationDialogs",function(){var e=this;return[O.getTag("dialog")({id:"annotationDialog",class:"annotationDialog noselect"},"\n ",O.H5("Enter your annotation"),"\n ",O.DIV({class:"annotationTextInputOptions"},"\n ",O.LABEL({for:"annotationTextInput"},"New label"),"\n ",O.INPUT({name:"annotationTextInput",class:"annotationTextInput",type:"text",tabindex:"-1",autocomplete:"off"}),"\n "),"\n ",O.A({class:"annotationDialogConfirm btn btn-sm btn-primary"},"OK"),"\n "),"\n\n ",O.getTag("dialog")({id:"relabelAnnotationDialog",class:"annotationDialog noselect",oncontextmenu:"return false"},"\n ",O.H5("Edit your annotation"),"\n ",O.DIV({class:"annotationTextInputOptions"},"\n ",O.LABEL({for:"annotationTextInput"},"New label"),"\n ",O.INPUT({name:"annotationTextInput",class:"annotationTextInput",type:"text",tabindex:"-1",autocomplete:"off"}),"\n "),"\n ",O.DIV("\n ",O.A({class:"relabelRemove btn btn-sm btn-secondary"},"Remove marker"),"\n ",O.A({class:"relabelConfirm btn btn-sm btn-primary"},"OK"),"\n "),"\n ")]})},"annotationDialogs.js":function(){X=function e(t){function n(e){13!==e.which&&27!==e.which||o()}function o(){a.get(0).close(),t(r.val()),r.val("");var e=ge();i(e).focus()}var a=i("#annotationDialog");if(a.get(0).open!==!0){var r=i(".annotationTextInput");r.focus(),a.get(0).showModal();var s=a.find(".annotationDialogConfirm");s.off("click"),s.on("click",function(){o()}),a.off("keydown"),a.on("keydown",n)}},$=function e(t,n,o){function a(e){13===e.which&&r()}function r(){s.get(0).close(),o(t,u.val()),u.val("");var e=ge();i(e).focus()}var s=i("#relabelAnnotationDialog");if(s.get(0).open!==!0){We()?s.css({top:0,left:0,right:0,bottom:0,margin:"auto"}):s.css({top:n.currentPoints.page.y-s.outerHeight()-20,left:n.currentPoints.page.x-s.outerWidth()/2});var u=s.find(".annotationTextInput"),l=s.find(".relabelConfirm"),c=s.find(".relabelRemove");u.val(t.text),u.focus(),s.get(0).showModal(),l.off("click"),l.on("click",function(){s.get(0).close(),o(t,u.val())}),c.off("click"),c.on("click",function(){s.get(0).close(),o(t,void 0,!0)}),s.off("keydown"),s.on("keydown",a)}},N.annotationDialogs.onRendered(function(){var e=N.instance(),t=["annotationDialog","relabelAnnotationDialog"];t.forEach(function(t){var n=e.$("#"+t);n.draggable(),Ge.registerDialog(n.get(0))})})}},viewportOrientationMarkers:{"template.viewportOrientationMarkers.js":function(){N.__checkName("viewportOrientationMarkers"),N.viewportOrientationMarkers=new N("Template.viewportOrientationMarkers",function(){var e=this;return O.Raw('<div class="viewportOrientationMarkers noselect">\n <div class="topMid orientationMarker">\n </div>\n <div class="leftMid orientationMarker">\n </div>\n </div>')})},"viewportOrientationMarkers.js":function(){Y=function e(t){var n=u.getViewport(t),o=u.getEnabledElement(t),a=c.metaData.get("imagePlane",o.image.imageId);if(a&&a.rowCosines&&a.columnCosines){var r=c.orientation.getOrientationString(a.rowCosines),s=c.orientation.getOrientationString(a.columnCosines),l=c.orientation.invertOrientationString(r),d=c.orientation.invertOrientationString(s),m={top:d,left:l};n.vflip&&(m.top=c.orientation.invertOrientationString(m.top)),n.hflip&&(m.left=c.orientation.invertOrientationString(m.left));var f=i(t).siblings(".viewportOrientationMarkers"),p=f.find(".topMid"),g=f.find(".leftMid");90===n.rotation||n.rotation===-270?(p.text(m.left),g.text(c.orientation.invertOrientationString(m.top))):n.rotation===-90||270===n.rotation?(p.text(c.orientation.invertOrientationString(m.left)),g.text(m.top)):180===n.rotation||n.rotation===-180?(p.text(c.orientation.invertOrientationString(m.top)),
g.text(c.orientation.invertOrientationString(m.left))):(p.text(m.top),g.text(m.left))}}}},viewportOverlay:{"template.viewportOverlay.js":function(){N.__checkName("viewportOverlay"),N.viewportOverlay=new N("Template.viewportOverlay",function(){var e=this;return O.DIV({class:function(){return["imageViewerViewportOverlay noselect ",P.If(function(){return E.dataMustache(e.lookup("gt"),e.lookup("numImages"),1)},function(){return"controlsVisible"})]}},"\n ",P.Unless(function(){return E.call(e.lookup("tagDisplaySpecified"))},function(){return["\n ",O.DIV({class:"topleft dicomTag"},"\n ",O.DIV(P.View("lookup:formatPN",function(){return E.mustache(e.lookup("formatPN"),e.lookup("patientName"))})),"\n ",O.DIV(P.View("lookup:patientId",function(){return E.mustache(e.lookup("patientId"))})),"\n ",O.DIV({class:"priorIndicator"},P.View("lookup:prior",function(){return E.mustache(e.lookup("prior"))})),"\n "),"\n ",O.DIV({class:"topright dicomTag"},"\n ",O.DIV(P.View("lookup:studyDescription",function(){return E.mustache(e.lookup("studyDescription"))})),"\n ",O.DIV(P.View("lookup:formatDA",function(){return E.mustache(e.lookup("formatDA"),e.lookup("studyDate"))})," ",P.View("lookup:formatTM",function(){return E.mustache(e.lookup("formatTM"),e.lookup("studyTime"))})),"\n "),"\n ",O.DIV({class:"bottomright dicomTag"},"\n ",O.DIV(P.If(function(){return E.call(e.lookup("zoom"))},function(){return["Zoom: ",P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("zoom"),0)}),"%"]})),"\n ",O.DIV({class:"compressionIndicator"},P.View("lookup:compression",function(){return E.mustache(e.lookup("compression"))})),"\n ",O.DIV(P.View("lookup:wwwc",function(){return E.mustache(e.lookup("wwwc"))})),"\n "),"\n ",O.DIV({class:"bottomleft dicomTag"},"\n ",O.DIV(P.If(function(){return E.call(e.lookup("seriesNumber"))},function(){return["Ser: ",P.View("lookup:seriesNumber",function(){return E.mustache(e.lookup("seriesNumber"))})]})),"\n ",O.DIV(P.If(function(){return E.dataMustache(e.lookup("gt"),e.lookup("numImages"),1)},function(){return["Img: ",P.View("lookup:instanceNumber",function(){return E.mustache(e.lookup("instanceNumber"))})," (",P.View("lookup:imageIndex",function(){return E.mustache(e.lookup("imageIndex"))}),"/",P.View("lookup:numImages",function(){return E.mustache(e.lookup("numImages"))}),")"]})),"\n ",O.DIV(P.If(function(){return E.call(e.lookup("frameRate"))},function(){return[P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("frameRate"),2)})," FPS"]})),"\n ",O.DIV(P.View("lookup:imageDimensions",function(){return E.mustache(e.lookup("imageDimensions"))})),"\n ",O.DIV("\n ",O.SPAN(P.If(function(){return E.call(e.lookup("location"))},function(){return["Loc: ",P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("location"),2)})," mm"]})),"\n ",O.SPAN(P.If(function(){return E.call(e.lookup("thickness"))},function(){return["Thick: ",P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("thickness"),2)})," mm"]})),"\n ",O.SPAN(P.If(function(){return E.call(e.lookup("spacingBetweenSlices"))},function(){return["Spacing: ",P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("spacingBetweenSlices"),2)})," mm"]})),"\n "),"\n ",O.DIV(P.View("lookup:seriesDescription",function(){return E.mustache(e.lookup("seriesDescription"))})),"\n "),"\n "]}),"\n\n ",P.If(function(){return E.call(e.lookup("tagDisplayRightOnly"))},function(){return["\n ",O.DIV({class:"topright dicomTag"},"\n ",O.DIV(P.View("lookup:formatPN",function(){return E.mustache(e.lookup("formatPN"),e.lookup("patientName"))})),"\n ",O.DIV(P.View("lookup:patientId",function(){return E.mustache(e.lookup("patientId"))})),"\n ",O.DIV({class:"priorIndicator"},P.View("lookup:prior",function(){return E.mustache(e.lookup("prior"))})),"\n ",O.DIV(P.View("lookup:studyDescription",function(){return E.mustache(e.lookup("studyDescription"))})),"\n ",O.DIV(P.View("lookup:formatDA",function(){return E.mustache(e.lookup("formatDA"),e.lookup("studyDate"))})," ",P.View("lookup:formatTM",function(){return E.mustache(e.lookup("formatTM"),e.lookup("studyTime"))})),"\n "),"\n ",O.DIV({class:"bottomright dicomTag"},"\n ",O.DIV(P.If(function(){return E.call(e.lookup("seriesNumber"))},function(){return["Ser: ",P.View("lookup:seriesNumber",function(){return E.mustache(e.lookup("seriesNumber"))})]})),"\n ",O.DIV(P.If(function(){return E.dataMustache(e.lookup("gt"),e.lookup("numImages"),1)},function(){return["Img: ",P.View("lookup:instanceNumber",function(){return E.mustache(e.lookup("instanceNumber"))})," (",P.View("lookup:imageIndex",function(){return E.mustache(e.lookup("imageIndex"))}),"/",P.View("lookup:numImages",function(){return E.mustache(e.lookup("numImages"))}),")"]})),"\n ",O.DIV(P.If(function(){return E.call(e.lookup("frameRate"))},function(){return[P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("frameRate"),2)})," FPS"]})),"\n ",O.DIV(P.View("lookup:imageDimensions",function(){return E.mustache(e.lookup("imageDimensions"))})),"\n ",O.DIV(P.View("lookup:seriesDescription",function(){return E.mustache(e.lookup("seriesDescription"))})),"\n ",O.DIV(P.If(function(){return E.call(e.lookup("zoom"))},function(){return["Zoom: ",P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("zoom"),0)}),"%"]})),"\n ",O.DIV({class:"compressionIndicator"},P.View("lookup:compression",function(){return E.mustache(e.lookup("compression"))})),"\n ",O.DIV(P.View("lookup:wwwc",function(){return E.mustache(e.lookup("wwwc"))})),"\n "),"\n "]}),"\n\n ",P.If(function(){return E.call(e.lookup("tagDisplayLeftOnly"))},function(){return["\n ",O.DIV({class:"topleft dicomTag"},"\n ",O.DIV(P.View("lookup:formatPN",function(){return E.mustache(e.lookup("formatPN"),e.lookup("patientName"))})),"\n ",O.DIV(P.View("lookup:patientId",function(){return E.mustache(e.lookup("patientId"))})),"\n ",O.DIV({class:"priorIndicator"},P.View("lookup:prior",function(){return E.mustache(e.lookup("prior"))})),"\n ",O.DIV(P.View("lookup:studyDescription",function(){return E.mustache(e.lookup("studyDescription"))})),"\n ",O.DIV(P.View("lookup:formatDA",function(){return E.mustache(e.lookup("formatDA"),e.lookup("studyDate"))})," ",P.View("lookup:formatTM",function(){return E.mustache(e.lookup("formatTM"),e.lookup("studyTime"))})),"\n "),"\n ",O.DIV({class:"bottomleft dicomTag"},"\n ",O.DIV(P.If(function(){return E.call(e.lookup("seriesNumber"))},function(){return["Ser: ",P.View("lookup:seriesNumber",function(){return E.mustache(e.lookup("seriesNumber"))})]})),"\n ",O.DIV(P.If(function(){return E.dataMustache(e.lookup("gt"),e.lookup("numImages"),1)},function(){return["Img: ",P.View("lookup:instanceNumber",function(){return E.mustache(e.lookup("instanceNumber"))})," (",P.View("lookup:imageIndex",function(){return E.mustache(e.lookup("imageIndex"))}),"/",P.View("lookup:numImages",function(){return E.mustache(e.lookup("numImages"))}),")"]})),"\n ",O.DIV(P.If(function(){return E.call(e.lookup("frameRate"))},function(){return[P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("frameRate"),2)})," FPS"]})),"\n ",O.DIV(P.View("lookup:imageDimensions",function(){return E.mustache(e.lookup("imageDimensions"))})),"\n ",O.DIV(P.View("lookup:seriesDescription",function(){return E.mustache(e.lookup("seriesDescription"))})),"\n ",O.DIV(P.If(function(){return E.call(e.lookup("zoom"))},function(){return["Zoom: ",P.View("lookup:formatNumberPrecision",function(){return E.mustache(e.lookup("formatNumberPrecision"),e.lookup("zoom"),0)}),"%"]})),"\n ",O.DIV({class:"compressionIndicator"},P.View("lookup:compression",function(){return E.mustache(e.lookup("compression"))})),"\n ",O.DIV(P.View("lookup:wwwc",function(){return E.mustache(e.lookup("wwwc"))})),"\n "),"\n "]}),"\n\n ",P.If(function(){return E.dataMustache(e.lookup("gt"),e.lookup("numImages"),1)},function(){return["\n ",P._TemplateWith(function(){return{imageIndex:E.call(e.lookup("imageIndex")),numImages:E.call(e.lookup("numImages"))}},function(){return E.include(e.lookupTemplate("imageControls"))}),"\n "]}),"\n ")})},"viewportOverlay.js":function(){function e(e){var t=i(".imageViewerViewport"),n=t.get(e),o=t.eq(e).find("canvas");if(n&&!i(n).hasClass("empty")&&0!==o.length){try{var a=u.getEnabledElement(n)}catch(e){return}return n}}function t(t){var n=e(t);if(n){var o=c.getToolState(n,"stack");if(o&&o.data&&o.data.length){var i=o.data[0];if(i)return i}}}function n(e){if(T.get("CornerstoneNewImage"+this.viewportIndex),!this.imageId)return!1;var t=c.metaData.get("patient",this.imageId);return t?t[e]:""}function o(e){if(T.get("CornerstoneNewImage"+this.viewportIndex),!this.imageId)return!1;var t=c.metaData.get("study",this.imageId);return t?t[e]:""}function a(e){if(T.get("CornerstoneNewImage"+this.viewportIndex),!this.imageId)return!1;var t=c.metaData.get("series",this.imageId);return t?t[e]:""}function r(e){if(T.get("CornerstoneNewImage"+this.viewportIndex),!this.imageId)return!1;var t=c.metaData.get("instance",this.imageId);return t?t[e]:""}function s(e){if(T.get("CornerstoneNewImage"+this.viewportIndex),!this.imageId)return!1;var t=c.metaData.get("tagDisplay",this.imageId);return t?t[e]:""}function l(t){var n=e(t);if(!n)return!1;var o;try{o=u.getEnabledElement(n)}catch(e){return!1}return!(!o||!o.image)&&o.image}function d(e,t){return e+" "+t}N.viewportOverlay.helpers({wwwc:function(){function t(){T.get("CornerstoneImageRendered"+this.viewportIndex);var t=e(this.viewportIndex);if(!t)return"";var n=u.getViewport(t);return n?"W "+n.voi.windowWidth.toFixed(0)+" L "+n.voi.windowCenter.toFixed(0):""}return t}(),zoom:function(){function t(){T.get("CornerstoneImageRendered"+this.viewportIndex);var t=e(this.viewportIndex);if(t){var n=u.getViewport(t);if(n)return 100*n.scale}}return t}(),imageDimensions:function(){function e(){T.get("CornerstoneNewImage"+this.viewportIndex);var e=l(this.viewportIndex);return e?e.width+" x "+e.height:""}return e}(),patientName:function(){function e(){return n.call(this,"name")}return e}(),patientId:function(){function e(){return n.call(this,"id")}return e}(),patientBirthDate:function(){function e(){return n.call(this,"birthDate")}return e}(),patientSex:function(){function e(){return n.call(this,"sex")}return e}(),studyDate:function(){function e(){return o.call(this,"studyDate")}return e}(),studyTime:function(){function e(){return o.call(this,"studyTime")}return e}(),studyDescription:function(){function e(){return o.call(this,"studyDescription")}return e}(),seriesDescription:function(){function e(){return a.call(this,"seriesDescription")}return e}(),frameRate:function(){function e(){var e=r.call(this,"frameTime");if(e){var t=1e3/e;return t.toFixed(1)}}return e}(),seriesNumber:function(){function e(){return a.call(this,"seriesNumber")}return e}(),instanceNumber:function(){function e(){return r.call(this,"instanceNumber")}return e}(),thickness:function(){function e(){return r.call(this,"sliceThickness")}return e}(),location:function(){function e(){var e=r.call(this,"sliceLocation");if(""!==e)return e;var t=r.call(this,"tablePosition");return""!==t?t:r.call(this,"imagePositionPatient")}return e}(),spacingBetweenSlices:function(){function e(){return r.call(this,"spacingBetweenSlices")}return e}(),compression:function(){function e(){if(T.get("CornerstoneNewImage"+this.viewportIndex),!this.imageId)return!1;var e=c.metaData.get("instance",this.imageId);if(!e)return"";if("01"===e.lossyImageCompression&&""!==e.lossyImageCompressionRatio){var t=e.lossyImageCompressionMethod||"Lossy: ",n=parseFloat(e.lossyImageCompressionRatio).toFixed(2);return t+n+" : 1"}return"Lossless / Uncompressed"}return e}(),tagDisplayLeftOnly:function(){function e(){return"L"===s.call(this,"side")}return e}(),tagDisplayRightOnly:function(){function e(){return"R"===s.call(this,"side")}return e}(),tagDisplaySpecified:function(){function e(){return s.call(this,"side")}return e}(),imageIndex:function(){function e(){T.get("CornerstoneNewImage"+this.viewportIndex);var e=t(this.viewportIndex);if(e&&void 0!==e.currentImageIdIndex)return e.currentImageIdIndex+1}return e}(),numImages:function(){function e(){T.get("CornerstoneNewImage"+this.viewportIndex);var e=t(this.viewportIndex);if(e&&e.imageIds)return e.imageIds.length}return e}(),prior:function(){function e(){if(T.get("CornerstoneNewImage"+this.viewportIndex),this.imageId){var e=U.find();if(!(e.count()<2)){var t=R.sortBy(e.fetch(),function(e){return d(e.studyDate,e.studyTime)}),n=c.metaData.get("study",this.imageId);if(n){var o=t[0];return d(n.studyDate,n.studyTime)<=d(o.studyDate,o.studyTime)?"Prior":void 0}}}}return e}()})}},viewerMain:{"template.viewerMain.js":function(){N.__checkName("viewerMain"),N.viewerMain=new N("Template.viewerMain",function(){var e=this;return O.Raw('<div class="viewerMain">\n <div id="layoutManagerTarget">\n </div>\n </div>')})},"viewerMain.js":["meteor/ohif:core","../../../lib/unloadHandlers.js",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var i;n.import("../../../lib/unloadHandlers.js",{unloadHandlers:function(e){i=e}}),N.viewerMain.onCreated(function(){window.addEventListener("resize",Ne),window.addEventListener("beforeunload",i.beforeUnload),o.viewer.updateImageSynchronizer=new c.Synchronizer("CornerstoneNewImage",c.updateImageSynchronizer)}),N.viewerMain.onRendered(function(){var e=N.instance();e.subscribe("hangingprotocols",function(){var t=e.data,n=t.studies,i=t.currentTimepointId,a=t.measurementApi,r=t.timepointIds,s=e.$("#layoutManagerTarget").get(0);window.layoutManager=new Z(s,n),i?(n[0]&&!function(){var e=void 0,t=r.find(function(e){return e!==i});if("followup"===n[0].timepointType&&t){var s=o.measurements.MeasurementApi.getConfiguration().measurementTools,u=s.map(function(e){var t=e.id,n=e.cornerstoneToolType;return{id:t,cornerstoneToolType:n}});u.every(function(n){var o=n.id,i=n.cornerstoneToolType;if(a[o]){var r=a[o].findOne({timepointId:t});if(r)return e=i,!1}return!0})}se.setActiveTool(e||"bidirectional")}(),e.data.state.set("rightSidebar","measurements")):e.data.state.set("rightSidebar",null),G=new HP.ProtocolEngine(window.layoutManager,n),HP.setEngine(G),pe(),T.set("ViewerMainReady",_.id())})}),N.viewerMain.onDestroyed(function(){o.log.info("viewerMain onDestroyed"),window.removeEventListener("resize",Ne),window.removeEventListener("beforeunload",i.beforeUnload),o.viewer.updateImageSynchronizer.destroy(),delete window.layoutManager,delete G})}]},imageControls:{"template.imageControls.js":function(){N.__checkName("imageControls"),N.imageControls=new N("Template.imageControls",function(){var e=this;return O.DIV({class:"imageControls"},"\n ",O.DIV({id:"scrollbar"},"\n ",O.INPUT({id:"imageSlider",type:"range",min:"1",value:function(){return E.mustache(e.lookup("imageIndex"))},max:function(){return E.mustache(e.lookup("numImages"))}}),"\n "),"\n ")})},"imageControls.js":function(){var e=40,t=void 0;N.imageControls.onRendered(function(){var e=N.instance(),t=e.$("#imageSlider"),n=t.parents().eq(2).siblings(".imageViewerViewport"),o=n.height();t.width(o-20)}),N.imageControls.events({"keydown #imageSlider":function(){function e(e){e.preventDefault();var t={DOWN:40,UP:38};e.which===t.DOWN?OHIF.viewer.hotkeyFunctions.scrollDown():e.which===t.UP&&OHIF.viewer.hotkeyFunctions.scrollUp()}return e}(),"input #imageSlider, change #imageSlider":function(){function n(n){return clearTimeout(t),t=setTimeout(function(){var e=i(n.currentTarget),t=e.parents().eq(2).siblings(".imageViewerViewport").get(0);de(t);var o=parseInt(e.val(),10)-1;me(o)},e),!1}return n}()})}},layoutButton:{"template.layoutButton.js":function(){N.__checkName("layoutButton"),N.layoutButton=new N("Template.layoutButton",function(){var e=this;return O.DIV({id:function(){return E.mustache(E.dot(e.lookup("."),"id"))},class:function(){return["toolbarSectionButton rp-x-1 ",E.mustache(E.dot(e.lookup("."),"classes"))," ",E.mustache(e.lookup("activeClass"))," js-dropdown-toggle"]},title:function(){return E.mustache(E.dot(e.lookup("."),"title"))},"data-target":"#layoutChooser"},"\n ",O.DIV({class:"svgContainer"},"\n ",P.If(function(){return E.call(E.dot(e.lookup("."),"svgLink"))},function(){return["\n ",O.SVG("\n ",O.USE({"xlink:href":function(){return E.mustache(E.dot(e.lookup("."),"svgLink"))}}),"\n "),"\n "]},function(){return["\n ",O.I({class:function(){return E.mustache(e.lookup("iconClasses"))}}),"\n "]}),"\n "),"\n ",O.DIV({class:"buttonLabel"},"\n ",P.View("lookup:..title",function(){return E.mustache(E.dot(e.lookup("."),"title"))}),"\n "),"\n ")})},"layoutButton.js":function(){N.layoutButton.events({"mousedown .js-dropdown-toggle":function(){function e(e){var t=i(e.currentTarget),n=i(t.data("target"));n.css({top:t.offset().top+t.outerHeight()+"px",left:t.offset().left+"px"}),ce(n)}return e}()})}},layoutChooser:{"template.layoutChooser.js":function(){N.__checkName("layoutChooser"),N.layoutChooser=new N("Template.layoutChooser",function(){var e=this;return O.DIV({id:"layoutChooser",class:"layoutChooser dialog-animated"},"\n ",O.TABLE("\n ",O.TR("\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n "),"\n ",O.TR("\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n "),"\n ",O.TR("\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n "),"\n ",O.TR("\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n ",O.TD(),"\n "),"\n "),"\n ")})},"layoutChooser.js":function(){var e=this;N.layoutChooser.onRendered(function(){var t=N.instance();t.highlightCells=function(t){var n=e.$(".layoutChooser table td");n.removeClass("hover"),t=e.$(t);for(var o=t.parents(".layoutChooser table").get(0),i=t.closest("tr").index(),a=t.index(),r=o.rows.length-1;r>=0;r--){var s=o.rows[r];if(r<=i)for(var u=s.cells.length-1;u>=0;u--)if(u<=a){var l=s.cells[u];l.classList.add("hover")}}},t.refreshHighlights=function(){if(window.layoutManager){var e=window.layoutManager.layoutProps,n=t.$("tr").eq(e.rows-1).children().eq(e.columns-1);t.highlightCells(n)}},t.autorun(function(){T.get("LayoutManagerUpdated"),t.refreshHighlights()})}),N.layoutChooser.events({"touchstart .layoutChooser table td, mouseenter .layoutChooser table td":function(){function e(e,t){t.highlightCells(e.currentTarget)}return e}(),"mouseleave .layoutChooser":function(){function e(e,t){t.refreshHighlights()}return e}(),"click .layoutChooser table td":function(){function e(e,t){var n=t.$(e.currentTarget),o=n.closest("tr").index(),i=n.index(),a={rows:o+1,columns:i+1};window.layoutManager.layoutTemplateName="gridLayout",window.layoutManager.layoutProps=a,window.layoutManager.updateViewports();var r=t.$(".layoutChooser");ce(r)}return e}()})}},cineDialog:{"template.cineDialog.js":function(){N.__checkName("cineDialog"),N.cineDialog=new N("Template.cineDialog",function(){var e=this;return P._TemplateWith(function(){return{id:E.call("cineDialog"),class:E.call(E.dataMustache(e.lookup("getClassNames"),"dialog-animated noselect")),schema:E.call(E.dot(e.lookup("instance"),"schema")),api:E.call(E.dot(e.lookup("instance"),"api"))}},function(){return E.include(e.lookupTemplate("form"),function(){return["\n ",P._TemplateWith(function(){return{key:E.call("intervalId")}},function(){return E.include(e.lookupTemplate("inputHidden"))}),"\n ",O.DIV({class:"cine-navigation"},"\n ",O.DIV({class:"btn-group"},"\n ",P._TemplateWith(function(){return{class:E.call("btn"),disabled:E.call(E.dataMustache(e.lookup("displaySetDisabled"),!1)),action:E.call("displaySetPrevious"),title:E.call("Previous display set")}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",O.I({class:"fa fa-toggle-up"}),"\n "]})}),"\n ",P._TemplateWith(function(){return{class:E.call("btn"),disabled:E.call(E.dataMustache(e.lookup("displaySetDisabled"),!0)),action:E.call("displaySetNext"),title:E.call("Next display set")}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",O.I({class:"fa fa-toggle-down"}),"\n "]})}),"\n "),"\n "),"\n ",O.DIV({class:"cine-controls"},"\n ",O.DIV({class:"btn-group"},"\n ",P._TemplateWith(function(){return{class:E.call("btn"),action:E.call("cineFirst"),title:E.call("Skip to first image"),disabled:E.call(E.dataMustache(e.lookup("buttonDisabled")))}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",O.I({class:"fa fa-fast-backward"}),"\n "]})}),"\n ",P._TemplateWith(function(){return{class:E.call("btn"),action:E.call("cinePrevious"),title:E.call("Previous image"),disabled:E.call(E.dataMustache(e.lookup("buttonDisabled")))}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",O.I({class:"fa fa-step-backward"}),"\n "]})}),"\n ",P._TemplateWith(function(){return{class:E.call(E.dataMustache(e.lookup("concat"),"btn ",E.dataMustache(e.lookup("valueIf"),e.lookup("isPlaying"),"active",""))),action:E.call("cineToggle"),title:E.call("Play / Stop"),disabled:E.call(E.dataMustache(e.lookup("buttonDisabled")))}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",P.If(function(){return E.call(e.lookup("isPlaying"))},function(){return["\n ",O.I({class:"fa fa-fw fa-stop"}),"\n "]},function(){return["\n ",O.I({class:"fa fa-fw fa-play"}),"\n "]}),"\n "]})}),"\n ",P._TemplateWith(function(){return{class:E.call("btn"),action:E.call("cineNext"),title:E.call("Next image"),disabled:E.call(E.dataMustache(e.lookup("buttonDisabled")))}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",O.I({class:"fa fa-step-forward"}),"\n "]})}),"\n ",P._TemplateWith(function(){return{class:E.call("btn"),action:E.call("cineLast"),title:E.call("Skip to last image"),disabled:E.call(E.dataMustache(e.lookup("buttonDisabled")))}},function(){return E.include(e.lookupTemplate("button"),function(){return["\n ",O.I({class:"fa fa-fast-forward"}),"\n "]})}),"\n "),"\n "),"\n ",O.DIV({class:"cine-options"},"\n ",O.DIV({class:"fps-section"},"\n ",P._TemplateWith(function(){return{key:E.call("framesPerSecond"),class:E.call("p-a-0"),labelClass:E.call("form-group m-a-0"),labelAsDiv:E.call(!0)}},function(){return E.include(e.lookupTemplate("inputRange"),function(){return"\n "})}),"\n "),"\n ",O.SPAN({id:"fps"},P.View("lookup:framerate",function(){return E.mustache(e.lookup("framerate"))})," fps"),"\n "),"\n "]})})})},"cineDialog.js":["meteor/templating","meteor/aldeed:simple-schema","meteor/ohif:core","meteor/session","meteor/underscore","meteor/jquery",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var i;n.import("meteor/aldeed:simple-schema",{SimpleSchema:function(e){i=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}});var r;n.import("meteor/session",{Session:function(e){r=e}});var s;n.import("meteor/underscore",{_:function(e){s=e}});var u;n.import("meteor/jquery",{$:function(e){u=e}}),o.cineDialog.onCreated(function(){var e=o.instance();e.schema=new i({intervalId:{type:Number,optional:!0},loop:{type:Boolean,label:"Loop",defaultValue:!0},framesPerSecond:{type:Number,label:"",defaultValue:24,min:1,max:90,optional:!0}}),e.updateFramerate=function(e){a.viewer.cine.framesPerSecond=e;var t=ge();if(t){var n=c.getToolState(t,"playClip");n.data[0].framesPerSecond=a.viewer.cine.framesPerSecond,Pe()&&(c.stopClip(t),c.playClip(t)),r.set("UpdateCINE",_.id())}},e.api={displaySetPrevious:function(){function e(){return a.viewer.moveDisplaySets(!1)}return e}(),displaySetNext:function(){function e(){return a.viewer.moveDisplaySets(!0)}return e}(),cineToggle:function(){function e(){return Ve()}return e}(),cineFirst:function(){function e(){return me(0)}return e}(),cineLast:function(){function e(){return me(-1)}return e}(),cinePrevious:function(){function e(){return fe(-1)}return e}(),cineNext:function(){function e(){return fe(1)}return e}(),cineSlowDown:function(){function t(){var t=a.viewer.cine.framesPerSecond-1;t>0&&e.updateFramerate(t)}return t}(),cineSpeedUp:function(){function t(){var t=a.viewer.cine.framesPerSecond+1;t<=90&&e.updateFramerate(t)}return t}()},e.autorun(function(){r.get("activeViewport"),S.afterFlush(function(){var t=ge();if(t){var n=c.getToolState(t,"playClip").data[0],o=a.viewer.cine;s.extend(o,n),o.framesPerSecond=o.framesPerSecond||24,o.loop=!!s.isUndefined(o.loop)||o.loop,e.$("form:first").data("component").value(o),r.set("UpdateCINE",_.id())}})}),e.setResizeHandler=function(t){"function"==typeof t?!function(){var n=window.onresize;e.origWindowResizeHandler="function"==typeof n?n:null,window.onresize=function(e){"function"==typeof n&&n.call(window,e),t.call(window,e)}}():(window.onresize=e.origWindowResizeHandler||null,window.origWindowResizeHandler=null)},e.setOptimalPosition=function(t,n){var o=u("#viewer"),i=u(".toolbarSection .toolbarSectionTools:first"),a=u("#cineDialog"),r=void 0,s=void 0,l=void 0;if(!(i.length<1||a.length<1)){if(a.data("wasDragged")||a.data("wasBounded"))return void e.setResizeHandler(null);r={width:a.outerWidth()||0,height:a.outerHeight()||0},l={offset:i.offset()||{top:0,left:0},width:i.outerWidth()||0,height:i.outerHeight()||0},s={left:l.offset.left+l.width+20,top:l.offset.top+l.height-r.height},n&&(n.left&&(s.left=n.left),n.top&&(s.top=n.top)),s.top<0?s.top=0:s.top+r.height>o.height()&&(s.top-=s.top+r.height-o.height()),s.left<0?s.left=0:s.left+r.width>o.width()&&(s.left-=s.left+r.width-o.width()),a.css(s)}}}),o.cineDialog.onRendered(function(){var e=o.instance(),t=e.$("#cineDialog"),n=a.uiSettings.displayEchoUltrasoundWorkflow;e.setOptimalPosition(null,{top:n?47:26}),e.setResizeHandler(e.setOptimalPosition),t.bounded().draggable({defaultElementCursor:"move"}),t.find(".cine-navigation, .cine-controls, .cine-options").on("mousedown touchstart",function(e){e.stopPropagation()})}),o.cineDialog.onDestroyed(function(){var e=o.instance();e.setResizeHandler(null)}),o.cineDialog.events({"change [data-key=loop] input":function(){function e(e,t){var n=ge(),o=c.getToolState(n,"playClip");o.data[0].loop=u(e.currentTarget).is(":checked"),a.viewer.cine.loop=o.data[0].loop}return e}(),"input [data-key=framesPerSecond] input":function(){function e(e,t){var n=parseFloat(u(e.currentTarget).val());t.updateFramerate(n)}return e}()}),o.cineDialog.helpers({isPlaying:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){return Pe()}),framerate:function(){function e(){return r.get("UpdateCINE"),a.viewer.cine.framesPerSecond.toFixed(1)}return e}(),displaySetDisabled:function(){function e(e){return r.get("LayoutManagerUpdated"),a.viewer.canMoveDisplaySets(e)?"":"disabled"}return e}(),buttonDisabled:function(){function e(){return xe()}return e}(),getClassNames:function(){function e(e){return e+" "+(a.uiSettings.displayEchoUltrasoundWorkflow?"single":"double")+"-row-style"}return e}()})}]},toolbarSectionButton:{"template.toolbarSectionButton.js":function(){N.__checkName("toolbarSectionButton"),N.toolbarSectionButton=new N("Template.toolbarSectionButton",function(){var e=this;return P.If(function(){return E.call(E.dot(e.lookup("."),"buttonTemplateName"))},function(){return["\n ",P._TemplateWith(function(){return{template:E.call(E.dot(e.lookup("."),"buttonTemplateName")),data:E.call(e.lookup("."))}},function(){return E.include(function(){return E.call(N.__dynamic)})}),"\n "]},function(){return["\n ",O.DIV({id:function(){return E.mustache(E.dot(e.lookup("."),"id"))},class:function(){return["toolbarSectionButton rp-x-1 ",E.mustache(E.dot(e.lookup("."),"classes"))," ",E.mustache(e.lookup("activeClass"))," ",P.If(function(){return E.call(E.dot(e.lookup("."),"disabled"))},function(){return"disabled"})," ",P.If(function(){return E.call(E.dot(e.lookup("."),"disableFunction"))},function(){return P.If(function(){return E.dataMustache(e.lookup("disableButton"))},function(){return"disabled"})})]},title:function(){return E.mustache(E.dot(e.lookup("."),"title"))}},"\n ",O.DIV({class:"svgContainer"},"\n ",P.If(function(){return E.call(E.dot(e.lookup("."),"svgLink"))},function(){return["\n ",O.SVG("\n ",O.USE({"xlink:href":function(){return E.mustache(E.dot(e.lookup("."),"svgLink"))}}),"\n "),"\n "]},function(){return["\n ",O.I({class:function(){return E.mustache(e.lookup("iconClasses"))}}),"\n "]}),"\n "),"\n ",O.DIV({class:"buttonLabel"},"\n ",P.View("lookup:..title",function(){return E.mustache(E.dot(e.lookup("."),"title"))}),"\n "),"\n "),"\n "]})})},"toolbarSectionButton.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),N.toolbarSectionButton.helpers({activeClass:function(){function e(){var e=N.instance();if(e.data.id===T.get("ToolManagerActiveTool"))return"active"}return e}(),disableButton:function(){function e(){return this.disableFunction()}return e}()}),N.toolbarSectionButton.events({"click .imageViewerTool":function(){function e(e,t){if(!i(e.currentTarget).hasClass("disabled")){var n=e.currentTarget.id,a=t.$(".imageViewerViewport"),r=se.getActiveTool();if(n===r){var s=se.getDefaultTool();o.log.info("Setting active tool to: "+s),se.setActiveTool(s,a)}else o.log.info("Setting active tool to: "+n),se.setActiveTool(n,a)}}return e}(),"click .imageViewerCommand":function(){function e(e,t){if(!i(e.currentTarget).hasClass("disabled")){var n=e.currentTarget.id;if(o.viewer.functionList&&o.viewer.functionList.hasOwnProperty(n)){var a=T.get("activeViewport"),r=i(".imageViewerViewport").get(a);o.viewer.functionList[n](r)}}}return e}()})}]},toolbarSectionTools:{"template.toolbarSectionTools.js":function(){N.__checkName("toolbarSectionTools"),N.toolbarSectionTools=new N("Template.toolbarSectionTools",function(){
var e=this;return O.DIV({class:"toolbarSectionTools pull-left m-t-1 rm-l-3"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("toolbarButtons")),_variable:"toolbarButton"}},function(){return["\n ",P._TemplateWith(function(){return E.call(e.lookup("toolbarButton"))},function(){return E.include(e.lookupTemplate("toolbarSectionButton"))}),"\n "]}),"\n\n ",P.If(function(){return E.call(e.lookup("extraToolbarButtons"))},function(){return["\n ",O.DIV({id:"moreTools",class:"js-open-more-tools toolbarSectionButton rp-x-1 rm-l-3"},"\n ",O.DIV({class:"svgContainer"},"\n ",O.SVG("\n ",O.USE({"xlink:href":"/packages/ohif_viewerbase/assets/icons.svg#icon-tools-more"}),"\n "),"\n "),"\n ",O.DIV({class:"buttonLabel"},"\n ",O.SPAN("More"),"\n ",O.I({class:"fa fa-caret-down","aria-hidden":"true"}),"\n "),"\n "),"\n\n ",O.DIV({class:"toolbarSectionDrawerContainer"},"\n ",O.Comment(" TODO: [design] check which group of tools shall be shown "),"\n ",O.DIV({class:"toolbarSectionDrawer"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("extraToolbarButtons")),_variable:"toolbarButton"}},function(){return["\n ",P._TemplateWith(function(){return E.call(e.lookup("toolbarButton"))},function(){return E.include(e.lookupTemplate("toolbarSectionButton"))}),"\n "]}),"\n "),"\n "),"\n "]}),"\n ")})},"toolbarSectionTools.js":function(){N.toolbarSectionTools.events({"click .js-open-more-tools":function(){function e(e,t){var n=i(e.currentTarget),o=n.hasClass("active");n.toggleClass("active",!o),n.closest(".toolbarSection").toggleClass("expanded",!o)}return e}()})}},playClipButton:{"template.playClipButton.js":function(){N.__checkName("playClipButton"),N.playClipButton=new N("Template.playClipButton",function(){var e=this;return O.DIV({id:function(){return E.mustache(E.dot(e.lookup("."),"id"))},class:function(){return["toolbarSectionButton rp-x-1 ",E.mustache(E.dot(e.lookup("."),"classes"))," ",E.mustache(e.lookup("activeClass"))," ",P.If(function(){return E.call(e.lookup("isPlaying"))},function(){return"active"})," ",P.If(function(){return E.dataMustache(e.lookup("disableButton"))},function(){return"disabled"})]},title:function(){return E.mustache(E.dot(e.lookup("."),"title"))}},"\n ",O.DIV({class:"svgContainer"},"\n ",P.If(function(){return E.call(e.lookup("isPlaying"))},function(){return["\n ",O.I({class:"fa fa-stop fa-fw"}),"\n "]},function(){return["\n ",O.I({class:"fa fa-play fa-fw"}),"\n "]}),"\n "),"\n ",O.DIV({class:"buttonLabel"},"\n ",P.If(function(){return E.call(e.lookup("isPlaying"))},function(){return"Stop"},function(){return"Play"}),"\n "),"\n ")})},"playClipButton.js":function(){N.playClipButton.helpers({isPlaying:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){return Pe()}),disableButton:function(){function e(){return xe()}return e}()})}},confirmDeleteDialog:{"template.confirmDeleteDialog.js":function(){N.__checkName("confirmDeleteDialog"),N.confirmDeleteDialog=new N("Template.confirmDeleteDialog",function(){var e=this;return O.DIV({id:"confirmDeleteDialog",class:"dialog-animated",tabindex:"0"},"\n ",P.If(function(){return E.call(e.lookup("title"))},function(){return["\n ",O.H5(P.View("lookup:title",function(){return E.mustache(e.lookup("title"))})),"\n "]},function(){return["\n ",O.H5("Remove data from Timepoint?"),"\n "]}),"\n ",P.If(function(){return E.call(e.lookup("text"))},function(){return["\n ",O.P(P.View("lookup:text",function(){return E.mustache(e.lookup("text"))})),"\n "]},function(){return["\n ",O.P("Are you sure you would like to remove the measurement data at this timepoint?"),"\n "]}),O.Raw('\n <button id="cancel" class="btn btn-link" tabindex="1">Cancel</button>\n <button id="confirm" class="btn btn-primary" tabindex="0">OK</button>\n '))})},"confirmDeleteDialog.js":function(){function e(){i("#confirmDeleteDialog").css("display","none"),i(".removableBackdrop").remove(),delete N.confirmDeleteDialog.doneCallback,Re()}K=function t(n,o){o=o||{},x.renderWithData(N.removableBackdrop,o,document.body);var a=i("#confirmDeleteDialog");a.remove();var r=document.getElementById("viewer");x.renderWithData(N.confirmDeleteDialog,o,r),i(".removableBackdrop").one("mousedown touchstart",function(){e()}),a=i("#confirmDeleteDialog"),a.css("display","block"),a.focus(),n&&"function"==typeof n&&(N.confirmDeleteDialog.doneCallback=n)},Q={ESC:27,ENTER:13},N.confirmDeleteDialog.events({"click #cancel, click #close":function(){function t(){e()}return t}(),"click #confirm":function(){function t(){var t=N.confirmDeleteDialog.doneCallback;t&&"function"==typeof t&&t(),e()}return t}(),"keydown #confirmDeleteDialog":function(){function t(t){if(t.which===Q.ESC)return e(),!1;if(this.keyPressAllowed!==!1){var n=N.confirmDeleteDialog.doneCallback;t.which===Q.ENTER&&(n&&"function"==typeof n&&n(),e())}}return t}()})}},displaySetNavigation:{"template.displaySetNavigation.js":function(){N.__checkName("displaySetNavigation"),N.displaySetNavigation=new N("Template.displaySetNavigation",function(){var e=this;return O.DIV({id:function(){return E.mustache(E.dot(e.lookup("."),"id"))},class:function(){return["toolbarSectionButton rp-x-1 ",E.mustache(E.dot(e.lookup("."),"classes"))," ",P.If(function(){return E.call(e.lookup("isNext"))},function(){return"js-next"},function(){return"js-prev"})," ",P.If(function(){return E.dataMustache(e.lookup("disableButton"),e.lookup("isNext"))},function(){return"disabled"})]},title:function(){return E.mustache(E.dot(e.lookup("."),"title"))}},"\n ",O.DIV({class:"svgContainer"},"\n ",P.If(function(){return E.call(e.lookup("isNext"))},function(){return["\n ",O.I({class:"fa fa-toggle-down fa-fw"}),"\n "]},function(){return["\n ",O.I({class:"fa fa-toggle-up fa-fw"}),"\n "]}),"\n "),"\n ",O.DIV({class:"buttonLabel"},"\n ",P.If(function(){return E.call(e.lookup("isNext"))},function(){return"Next"},function(){return"Previous"}),"\n "),"\n ")})},"displaySetNavigation.js":["meteor/ohif:core","meteor/templating",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var a;n.import("meteor/templating",{Template:function(e){a=e}}),a.displaySetNavigation.events({"click .js-next":function(){function e(e,t){i(e.currentTarget).hasClass("disabled")||o.viewer.moveDisplaySets(!0)}return e}(),"click .js-prev":function(){function e(e,t){i(e.currentTarget).hasClass("disabled")||o.viewer.moveDisplaySets(!1)}return e}()}),a.displaySetNavigation.helpers({disableButton:function(){function e(e){return T.get("LayoutManagerUpdated"),!o.viewer.canMoveDisplaySets(e)}return e}()})}]},studySeriesQuickSwitch:{"template.studySeriesQuickSwitch.js":function(){N.__checkName("studySeriesQuickSwitch"),N.studySeriesQuickSwitch=new N("Template.studySeriesQuickSwitch",function(){var e=this;return O.DIV({class:function(){return["quickSwitchWrapper ",E.mustache(e.lookup("side"))]}},"\n ",O.DIV({class:function(){return["quickSwitch js-quick-switch clearfix rp-t-1 ",P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("side"),"right")},function(){return"rp-l-3"}),P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("side"),"left")},function(){return"rp-r-3"})]}},"\n ",O.DIV({class:function(){return["switchSection switchSectionStudy rp-x-1 ",P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("side"),"right")},function(){return"pull-left"},function(){return"pull-right"})]}},"\n ",O.Raw('<div class="label">Study</div>'),"\n ",O.DIV({class:"studySwitch"},"\n ",O.Raw('<div class="studyBox"></div>'),"\n ",O.DIV({class:"switchHover studyHover clearfix"},"\n ",O.DIV({class:function(){return["scrollArea ",E.mustache(e.lookup("addMacOSClass"))]}},"\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("."),E.kw({timepointViewType:"key"}))},function(){return E.include(e.lookupTemplate("studyTimepointBrowser"))}),"\n "),"\n "),"\n "),"\n "),"\n ",O.DIV({class:function(){return["switchSection switchSectionSeries rp-x-1 ",P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("side"),"right")},function(){return"pull-left"},function(){return"pull-right"})]}},"\n ",P.Let({thumbnailsList:function(){return E.call(E.dataMustache(e.lookup("studyThumbnails"),e.lookup("currentStudy")))}},function(){return["\n ",O.DIV({class:"label"},"Series"),"\n ",O.DIV({class:"seriesSwitch clearfix"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("thumbnailsList")),_variable:"thumbnail"}},function(){return["\n ",P.If(function(){return E.dataMustache(e.lookup("lt"),e.lookup("@index"),8)},function(){return["\n ",O.DIV({class:function(){return["seriesItem ",P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("side"),"right")},function(){return"pull-left"},function(){return"pull-right"})," ",P.If(function(){return E.dataMustache(e.lookup("isDisplaySetActive"),E.dot(e.lookup("thumbnail"),"stack","displaySetInstanceUid"),e.lookup("viewportIndex"))},function(){return"active"})]}}),"\n "]},function(){return["\n ",P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("@index"),8)},function(){return["\n ",O.DIV({class:function(){return["seriesItem count ",P.If(function(){return E.dataMustache(e.lookup("eq"),e.lookup("side"),"right")},function(){return"pull-left"},function(){return"pull-right"})]}},P.View("lookup:thumbnailsList.length",function(){return E.mustache(E.dot(e.lookup("thumbnailsList"),"length"))})),"\n "]}),"\n "]}),"\n "]}),"\n ",O.DIV({class:"switchHover seriesHover clearfix"},"\n ",O.DIV({class:function(){return["scrollArea ",E.mustache(e.lookup("addMacOSClass"))]}},"\n ",O.DIV({class:"thumbnailsWrapper"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("thumbnailsList")),_variable:"thumbnail"}},function(){return["\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("."),E.kw({thumbnail:e.lookup("thumbnail")}))},function(){return E.include(e.lookupTemplate("thumbnailEntry"))}),"\n "]}),"\n "),"\n "),"\n "),"\n "),"\n "]}),"\n "),"\n "),"\n ")})},"studySeriesQuickSwitch.js":["meteor/templating","meteor/reactive-var","meteor/session",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var a;n.import("meteor/reactive-var",{ReactiveVar:function(e){a=e}});var r;n.import("meteor/session",{Session:function(e){r=e}}),o.studySeriesQuickSwitch.onCreated(function(){var e=o.instance();e.data.currentStudy=new a,e.getViewportData=function(e){var t=window.layoutManager;return t&&t.viewportData&&t.viewportData[e]};var t=e.data.viewportIndex;e.study={},e.lastStudy={},e.autorun(function(){r.get("LayoutManagerUpdated");var n=e.getViewportData(t);n?e.study=U.findOne({studyInstanceUid:n.studyInstanceUid}):e.study=U.findOne(),e.study&&e.study.studyInstanceUid!==e.lastStudy.studyInstanceUid&&(e.data.currentStudy.set(e.study),e.lastStudy=e.study)})}),o.studySeriesQuickSwitch.events({"mouseenter .js-quick-switch, mouseenter .js-quick-switch .switchSectionSeries":function(){function e(e,t){t.$(".quickSwitchWrapper").addClass("overlay"),i(e.currentTarget).addClass("hover")}return e}(),"mouseleave .js-quick-switch":function(){function e(e,t){t.$(".js-quick-switch, .switchSectionSeries").removeClass("hover"),t.$(".quickSwitchWrapper").removeClass("overlay")}return e}(),"click .studyTimepointStudy":function(){function e(e,t){t.$(".switchSectionSeries").addClass("hover")}return e}()}),o.studySeriesQuickSwitch.helpers({currentStudy:function(){function e(){return o.instance().data.currentStudy.get()}return e}(),addMacOSClass:function(){function e(){return window.navigator.appVersion.indexOf("Mac")!==-1?"is-mac":""}return e}()})}]},studyTimepointBrowser:{"template.studyTimepoint.js":function(){N.__checkName("studyTimepoint"),N.studyTimepoint=new N("Template.studyTimepoint",function(){var e=this;return O.DIV({class:"studyTimepointWrapper"},"\n ",O.DIV({class:"studyTimepoint"},"\n ",P.Each(function(){return{_sequence:E.call(e.lookup("studies")),_variable:"study"}},function(){return["\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("."),E.kw({study:e.lookup("study"),active:E.dataMustache(e.lookup("isActive"),e.lookup("study"))}))},function(){return E.include(e.lookupTemplate("studyTimepointStudy"))}),"\n "]}),"\n "),"\n ")})},"studyTimepoint.js":["meteor/templating",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}}),o.studyTimepoint.onCreated(function(){var e=o.instance(),t=e.data;e.isActive={},t.isUnassociatedStudy===!0&&1===t.studyInstanceUids.length&&(e.isActive[t.studyInstanceUids[0]]=!0)}),o.studyTimepoint.onRendered(function(){var e=o.instance(),t=e.$(".studyTimepoint"),n=t.closest(".studyTimepointWrapper"),i=n.closest(".timepointEntry"),a=t.is(":visible");a||i.addClass("active"),t.trigger("displayStateChanged"),a||i.removeClass("active")}),o.studyTimepoint.events({"selectionChanged .studyTimepoint":function(){function e(e,t,n){var o=i(n.selection),a=t.$(".studyTimepoint");if(n.isQuickSwitch){var r=U.findOne({studyInstanceUid:n.studyInstanceUid});t.data.currentStudy.set(r),a=a.closest(".studyTimepointBrowser")}a.find(".studyTimepointStudy").not(o).removeClass("active"),n.isQuickSwitch?(t.isActive={},o.addClass("active")):!function(){var e=t.$(".studyTimepoint");t.$(".studyTimepointWrapper").css("max-height","inherit"),o.removeClass("loading"),o.toggleClass("active");var n=o.find(".studyTimepointThumbnails");n.one("transitionend",function(){return e.trigger("displayStateChanged")})}(),t.isActive[n.studyInstanceUid]=o.hasClass("active")}return e}(),"displayStateChanged .studyTimepoint":function(){function e(e,t){var n=i(e.currentTarget),o=n.closest(".studyTimepointWrapper");o.css("max-height",n.height())}return e}()}),o.studyTimepoint.helpers({isActive:function(){function e(e){var t=o.instance();if(e.studyInstanceUid)return t.isActive[e.studyInstanceUid]}return e}()})}],"template.studyTimepointBrowser.js":function(){N.__checkName("studyTimepointBrowser"),N.studyTimepointBrowser=new N("Template.studyTimepointBrowser",function(){var e=this;return P.Let({timepointList:function(){return E.call(e.lookup("timepoints"))}},function(){return["\n ",O.DIV({class:function(){return["studyTimepointBrowser noselect ",P.If(function(){return E.dataMustache(e.lookup("shallShowViewType"),e.lookup("timepointList"))},function(){return"viewTypeVisible"})]}},"\n ",O.DIV({class:"timepointButtonContainer p-t-2"},"\n ",P._TemplateWith(function(){return E.call(e.lookup("viewTypeButtonGroupData"))},function(){return E.include(e.lookupTemplate("roundedButtonGroup"))}),"\n "),"\n ",O.DIV({class:"studyTimepointScrollArea"},"\n ",O.DIV({class:"p-l-1"},"\n ",P.If(function(){return E.call(E.dot(e.lookup("timepointList"),"length"))},function(){return["\n ",P.Each(function(){return{_sequence:E.call(e.lookup("timepointList")),_variable:"timepoint"}},function(){return["\n ",O.DIV({class:"timepointEntry p-y-2"},"\n ",O.DIV({class:"timepointHeader"},"\n ",O.DIV({class:"timepointDetails clearfix"},"\n ",O.DIV({class:"timepointFollowupTitle pull-left"},"\n ",P.View("lookup:timepointApi.title",function(){return E.mustache(E.dot(e.lookup("timepointApi"),"title"),e.lookup("timepoint"))}),"\n "),"\n ",O.DIV({class:"expandIcon pull-right"},"\n ",O.I({class:"fa fa-chevron-down"}),"\n "),"\n ",O.DIV({class:"timepointDate pull-right m-r-1"},P.View("lookup:formatDA",function(){return E.mustache(e.lookup("formatDA"),E.dot(e.lookup("timepoint"),"earliestDate"),"D-MMM-YYYY")})),"\n "),"\n ",O.DIV({class:"timepointModalities"},P.View("lookup:modalitiesSummary",function(){return E.mustache(e.lookup("modalitiesSummary"),e.lookup("timepoint"))})),"\n "),"\n ",P._TemplateWith(function(){return{studies:E.call(E.dataMustache(e.lookup("studies"),e.lookup("timepoint"))),index:E.call(e.lookup("@index")),viewportIndex:E.call(E.dot(e.lookup("."),"viewportIndex")),currentStudy:E.call(E.dot(e.lookup("."),"currentStudy"))}},function(){return E.include(e.lookupTemplate("studyTimepoint"))}),"\n "),"\n ",O.HR(),"\n "]}),"\n ",P.If(function(){return E.dataMustache(e.lookup("and"),E.dot(e.lookup("."),"currentStudy"),E.dataMustache(e.lookup("not"),e.lookup("showAdditionalTimepoints")))},function(){return["\n ",O.DIV({class:"studyModality additional"},"\n Show additional timepoints\n "),"\n "]}),"\n "]},function(){return["\n ",O.DIV({class:"p-t-2"},"\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("."),E.kw({studies:e.lookup("studies")}))},function(){return E.include(e.lookupTemplate("studyTimepoint"))}),"\n "),"\n "]}),"\n "),"\n "),"\n "),"\n "]})})},"studyTimepointBrowser.js":["meteor/templating","meteor/reactive-var","meteor/tracker","meteor/underscore",function(e,t,n){var o;n.import("meteor/templating",{Template:function(e){o=e}});var a;n.import("meteor/reactive-var",{ReactiveVar:function(e){a=e}});var r;n.import("meteor/tracker",{Tracker:function(e){r=e}});var s;n.import("meteor/underscore",{_:function(e){s=e}}),o.studyTimepointBrowser.onCreated(function(){var e=o.instance();e.timepointViewType=new a(e.data.timepointViewType),e.showAdditionalTimepoints=new a((!0)),e.getCurrentStudy=function(){return e.data.currentStudy&&e.data.currentStudy.get()},e.getStudies=function(e){return e?e.studyInstanceUids.map(function(t){var n={patientId:e.patientId,studyInstanceUid:t},o=U.findOne(n);if(o)return o;var i=StudyListStudies.findOne(n);if(!i)throw"No study data available for Study: "+t;return i}):U.find().fetch()}}),o.studyTimepointBrowser.onRendered(function(){var e=o.instance();e.autorun(function(){var t=e.timepointViewType.get();e.$(".timepointEntry, .studyTimepointStudy").removeClass("active"),"key"!==t||e.data.currentStudy||e.$(".timepointEntry:first").addClass("active")});var t=void 0,n=[];e.refreshActiveStudies=function(){return r.afterFlush(function(){s.each(n,function(t){e.$(".studyTimepointStudy[data-uid='"+t+"']").addClass("active")}),e.$(".timepointEntry:first").addClass("active")})},e.autorun(function(){var o=e.data.currentStudy&&e.data.currentStudy.get();o&&(o!==t&&(e.showAdditionalTimepoints.set(!1),t=o,n=[o.studyInstanceUid]),e.refreshActiveStudies())})}),o.studyTimepointBrowser.events({"click .timepointHeader":function(){function e(e,t){var n=i(e.currentTarget).closest(".timepointEntry");n.find(".studyTimepoint").trigger("displayStateChanged"),n.toggleClass("active")}return e}(),"click .studyModality.additional":function(){function e(e,t){t.showAdditionalTimepoints.set(!0)}return e}()}),o.studyTimepointBrowser.helpers({shallShowViewType:function(){function e(e){var t=o.instance();return e.length&&!t.data.timepointViewType}return e}(),viewTypeButtonGroupData:function(){function e(){return{value:o.instance().timepointViewType,options:[{value:"key",text:"Key Timepoints"},{value:"all",text:"All Timepoints"}]}}return e}(),showAdditionalTimepoints:function(){function e(){return o.instance().showAdditionalTimepoints.get()}return e}(),timepoints:function(){function e(){var e=o.instance(),t=e.getCurrentStudy(),n=void 0;return n=t&&!e.showAdditionalTimepoints.get()?e.data.timepointApi.study(t.studyInstanceUid):e.data.timepointApi?"all"===e.timepointViewType.get()?e.data.timepointApi.all():e.data.timepointApi.key():[]}return e}(),studies:function(){function e(e){return o.instance().getStudies(e)}return e}(),modalitiesSummary:function(){function e(e){var t=o.instance(),n=t.getStudies(e),i={};n.forEach(function(e){var t=e.modalities||"UN";i[t]=i[t]+1||1});var a=[];return s.each(i,function(e,t){a.push(e+" "+t)}),a.join(", ")}return e}()})}],"template.studyTimepointStudy.js":function(){N.__checkName("studyTimepointStudy"),N.studyTimepointStudy=new N("Template.studyTimepointStudy",function(){var e=this;return P.Let({isSidebar:function(){return E.call(E.dataMustache(e.lookup("isUndefined"),e.lookup("viewportIndex")))}},function(){return["\n ",O.DIV({class:function(){return["studyTimepointStudy ",P.If(function(){return E.call(e.lookup("isSidebar"))},function(){return"studySidebarTimepoint"},function(){return"studyQuickSwitchTimepoint"})," ",P.If(function(){return E.call(E.dot(e.lookup("."),"active"))},function(){return"active"})," ",P.If(function(){return E.call(e.lookup("isLoading"))},function(){return"loading"})]},"data-uid":function(){return E.mustache(E.dot(e.lookup("."),"study","studyInstanceUid"))}},"\n ",O.DIV({class:"studyItem"},"\n ",E.include(e.lookupTemplate("loadingText")),"\n ",O.DIV({class:"studyModality"},"\n ",O.DIV({class:"studyModalityBox"},"\n ",O.DIV({class:"studyModalityText",style:function(){return E.mustache(e.lookup("modalityStyle"))}},"\n ",P.If(function(){return E.call(E.dot(e.lookup("."),"study","modalities"))},function(){return["\n ",P.View("lookup:modalities",function(){return E.mustache(e.lookup("modalities"))}),"\n "]},function(){return"\n UN\n "}),"\n "),"\n "),"\n ",O.DIV({class:"studyText"},"\n ",O.DIV({class:"studyDate"},P.View("lookup:formatDA",function(){return E.mustache(e.lookup("formatDA"),E.dot(e.lookup("."),"study","studyDate"),"D-MMM-YYYY")})),"\n ",O.DIV({class:"studyDescription"},P.View("lookup:..study.studyDescription",function(){return E.mustache(E.dot(e.lookup("."),"study","studyDescription"))})),"\n "),"\n "),"\n "),"\n ",P.If(function(){return E.call(e.lookup("isSidebar"))},function(){return["\n ",O.DIV({class:"studyTimepointThumbnails"},"\n ",P.Each(function(){return{_sequence:E.dataMustache(e.lookup("studyThumbnails"),E.dot(e.lookup("."),"study")),_variable:"thumbnail"}},function(){return["\n ",P._TemplateWith(function(){return E.dataMustache(e.lookup("clone"),e.lookup("."),E.kw({thumbnail:e.lookup("thumbnail")}))},function(){return E.include(e.lookupTemplate("thumbnailEntry"))}),"\n "]}),"\n "),"\n "]}),"\n "),"\n "]})})},"studyTimepointStudy.js":["meteor/meteor","meteor/templating","meteor/reactive-var","meteor/underscore","meteor/jquery",function(e,t,n){var o;n.import("meteor/meteor",{Meteor:function(e){o=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/reactive-var",{ReactiveVar:function(e){a=e}});var r;n.import("meteor/underscore",{_:function(e){r=e}});var s;n.import("meteor/jquery",{$:function(e){s=e}}),i.studyTimepointStudy.onCreated(function(){var e=i.instance();e.loading=new a((!1)),e.getStudyElement=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=e.data.study.studyInstanceUid,o=".studyTimepointStudy[data-uid='"+n+"']";return t?s(o):e.$browser.find(o)},e.setLoading=function(){},e.select=function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],n=e.data.study.studyInstanceUid,o=e.getStudyElement(),i=o.closest(".studyTimepoint"),a={selection:[o[0]],studyInstanceUid:n,isQuickSwitch:t};i.trigger("selectionChanged",a)},e.initializeStudyWrapper=function(){if(!e.data.viewportIndex){var t=e.getStudyElement(),n=t.find(".studyTimepointThumbnails");t.addClass("active"),n.css("max-height",""),n.css("max-height",n.height()),t.removeClass("active"),e.data.active&&o.setTimeout(function(){return t.addClass("active")},1)}}}),i.studyTimepointStudy.onRendered(function(){var e=i.instance();e.$browser=e.$(".studyTimepointStudy").closest(".studyTimepointBrowser"),e.initializeStudyWrapper()}),i.studyTimepointStudy.events({"transitionend .studyTimepointThumbnails":function(){function e(e,t){e.target===e.currentTarget&&s(e.currentTarget).closest(".studyTimepoint").trigger("displayStateChanged")}return e}(),"click .studyQuickSwitchTimepoint .studyModality":function(){function e(e,t){t.select(!0)}return e}(),"loadStarted .studyTimepointStudy":function(){function e(e,t){t.loading.set(!0)}return e}(),"loadEnded .studyTimepointStudy":function(){function e(e,t){t.loading.set(!1),t.initializeStudyWrapper()}return e}(),"click .studyModality":function(){function e(e,t){var n=t.data.study,o=n.studyInstanceUid,i=n._id,a=!r.isUndefined(t.data.viewportIndex);if(n.seriesList)t.select(a);else{var s=U.findOne({_id:i});s?n.seriesList=s.seriesList:!function(){var e=t.getStudyElement(!0);e.trigger("loadStarted"),getStudyMetadata(o,function(n){n.displaySets=J(n),t.data.study=n,U.insert(n,function(){e.trigger("loadEnded"),t.select(a)})})}()}}return e}()}),i.studyTimepointStudy.helpers({isLoading:function(){function e(){var e=i.instance(),t=e.data.study,n=U.findOne({_id:t._id});return e.loading.get()&&!n}return e}(),modalities:function(){function e(){var e=i.instance(),t=e.data.study.modalities;return t.replace(/\\/g," ")}return e}(),modalityStyle:function(){function e(){var e=i.instance(),t=e.data.study.modalities||"UN",n=t.split(/\\/g).length;if(1===n)return"font-size: 1vw";if(2===n)return"font-size: 0.75vw";var o=1.2*Math.ceil(n/2);return"line-height: "+o+"vh"}return e}()})}]}}},lib:{"layoutManager.js":["babel-runtime/helpers/classCallCheck","meteor/ohif:core",function(e,t,n){var o;n.import("babel-runtime/helpers/classCallCheck",{default:function(e){o=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}}),Z=function(){function e(t,n){o(this,e),a.log.info("LayoutManager"),this.parentNode=t,this.studies=n,this.viewportData=[],this.layoutTemplateName="gridLayout",this.layoutProps={rows:1,columns:1},this.viewportData=[],this.isZoomed=!1;var i=function e(){return S.afterFlush(function(){return T.set("LayoutManagerUpdated",_.id())})};this.updateSession=R.throttle(i,300)}return e.prototype.getNumberOfViewports=function(){function e(){return this.layoutProps.rows*this.layoutProps.columns}return e}(),e.prototype.setDefaultViewportData=function(){function e(){var e=this,t=this.getNumberOfViewports(),n=e.viewportData,o=a.viewer.getDisplaySetSequenceMap(),i=a.viewer.isDisplaySetsSequenced(o),r=0;if(t>n.length&&n.length&&i)e.viewportData=n,r=n.length-1;else{if(t<=n.length)return void(e.viewportData=n.slice(0,t));e.viewportData=[]}var s=[];this.studies.forEach(function(e){e.displaySets.forEach(function(e){e.images.length&&s.push(e)})});var u=void 0,l=e.viewportData.length;if(l){var c=o.values().next().value[0].displaySetIndex+l,d=c+(t-l);u=s.slice(c,d)}else u=s.slice(0,t);var m=[];for(u.forEach(function(e,t){m.push({viewportIndex:r+t,studyInstanceUid:e.studyInstanceUid,seriesInstanceUid:e.seriesInstanceUid,displaySetInstanceUid:e.displaySetInstanceUid,sopInstanceUid:e.images[0].sopInstanceUid})}),e.viewportData=e.viewportData.concat(m);e.viewportData.length<t;)e.viewportData.push({})}return e}(),e.prototype.updateViewports=function(){function e(){a.log.info("updateViewports"),this.viewportData&&this.viewportData.length&&this.viewportData.length===this.getNumberOfViewports()||this.setDefaultViewportData();var e=this.layoutProps,t=i.extend({viewportData:[]},e);this.viewportData.forEach(function(n){var o=i.extend(n,e);t.viewportData.push(o)});var n=N[this.layoutTemplateName];i(this.parentNode).html(""),P.renderWithData(n,t,this.parentNode),this.updateSession(),this.isZoomed=!1}return e}(),e.prototype.rerenderViewportWithNewDisplaySet=function(){function e(e,t){var n=i(".imageViewerViewport").eq(e),o=n.parents(".viewportContainer").get(0);t.viewportIndex=e,this.viewportData[e]={viewportIndex:e,displaySetInstanceUid:t.displaySetInstanceUid,seriesInstanceUid:t.seriesInstanceUid,studyInstanceUid:t.studyInstanceUid,renderedCallback:t.renderedCallback,currentImageIdIndex:t.currentImageIdIndex||0},n.find("canvas").not(".magnifyTool").removeClass("faded");var a=n.parents(".removable"),r=document.createElement("div");r.className="removable",a.remove(),o.appendChild(r),P.renderWithData(N.imageViewerViewport,t,r),this.updateSession()}return e}(),e.prototype.enlargeViewport=function(){function e(e){if(a.log.info("Zooming Into Viewport: "+e),this.viewportData&&this.viewportData.length){this.previousViewportData=this.viewportData.slice(0);var t=i.extend({},this.viewportData[e]);t.rows=1,t.columns=1,t.viewportIndex=0;var n={viewportData:[t],rows:1,columns:1},o=N.gridLayout;i(this.parentNode).html(""),P.renderWithData(o,n,this.parentNode),this.isZoomed=!0,this.zoomedViewportIndex=e,this.viewportData=n.viewportData,this.updateSession()}}return e}(),e.prototype.resetPreviousLayout=function(){function e(){this.isZoomed&&(this.previousViewportData[this.zoomedViewportIndex]=i.extend({},this.viewportData[0]),this.previousViewportData[this.zoomedViewportIndex].viewportIndex=this.zoomedViewportIndex,this.viewportData=this.previousViewportData,this.updateViewports())}return e}(),e.prototype.toggleEnlargement=function(){function e(e){this.isZoomed?this.resetPreviousLayout():this.getNumberOfViewports()>1&&this.enlargeViewport(e)}return e}(),e}()}],"createStacks.js":function(){function e(e,t){var o=t[0],i={seriesInstanceUid:e.seriesInstanceUid,seriesNumber:e.seriesNumber,seriesDescription:e.seriesDescription,numImageFrames:t.length,frameRate:o.frameTime,images:t,modality:e.modality,isMultiFrame:n(o)};return i.images.sort(function(e,t){if(e.instanceNumber&&t.instanceNumber&&e.instanceNumber!==t.instanceNumber)return e.instanceNumber-t.instanceNumber}),i.instanceNumber=i.images[0].instanceNumber,i.displaySetInstanceUid=_.id(),i}function t(e){return"CR"===e||"MG"===e||"DX"===e}function n(e){return e.numFrames>1}J=function o(i){var a=[];return i&&i.seriesList?(i.seriesList.forEach(function(o){
if(o.instances){var r=[];if(o.instances.forEach(function(s){if(Ue(s.sopClassUid)||s.rows){var u=void 0;n(s)?(u=e(o,[s]),u.isClip=!0,u.studyInstanceUid=i.studyInstanceUid,u.numImageFrames=s.numFrames,u.instanceNumber=s.instanceNumber,u.acquisitionDatetime=s.acquisitionDatetime,a.push(u)):t(s.modality)?(u=e(o,[s]),u.studyInstanceUid=i.studyInstanceUid,u.instanceNumber=s.instanceNumber,u.acquisitionDatetime=s.acquisitionDatetime,a.push(u)):r.push(s)}}),r.length){var s=e(o,r);s.studyInstanceUid=i.studyInstanceUid,a.push(s)}}}),a):a}},"getImageId.js":function(){ee=function e(t,n){if(t){if(t.url)return t.url;if(t.wadouri){var o="dicomweb:"+t.wadouri;return void 0!==n&&(o+="&frame="+n),o}return te(t)}}},"getWADORSImageId.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),te=function e(t){var n=1,i=1;if(t.pixelSpacing){var a=t.pixelSpacing.split("\\");i=parseFloat(a[0]),n=parseFloat(a[1])}var r,s;t.windowWidth&&t.windowCenter&&(r=parseFloat(t.windowWidth.split("\\")[0]),s=parseFloat(t.windowCenter.split("\\")[0]));var u={uri:t.wadorsuri,slope:t.rescaleSlope,intercept:t.rescaleIntercept,samplesPerPixel:t.samplesPerPixel,imageOrientationPatient:t.imageOrientationPatient,imagePositionPatient:t.imagePositionPatient,sopClassUid:t.sopClassUid,instanceNumber:t.instanceNumber,frameOfReferenceUID:t.frameOfReferenceUID,windowCenter:s,windowWidth:r,rows:t.rows,columns:t.columns,height:t.rows,width:t.columns,color:!1,columnPixelSpacing:n,rowPixelSpacing:i,invert:!1,sizeInBytes:t.rows*t.columns*(t.bitsAllocated/8),instance:t},l=d.imageManager.add(u);return o.log.info("WADO-RS ImageID: "+l),l}}],"metaDataProvider.js":["./parsingUtils",function(t,n,o){function a(e,t,n){if(e){var o=e[t];if(o)return o.call(e,n)}}function r(e){if(e.rows&&e.columns&&e.pixelSpacing&&e.frameOfReferenceUID&&e.imageOrientationPatient&&e.imagePositionPatient){var t=e.imageOrientationPatient.split("\\"),n=e.imagePositionPatient.split("\\"),o=1,i=1;if(e.pixelSpacing){var a=e.pixelSpacing.split("\\");i=parseFloat(a[0]),o=parseFloat(a[1])}return{frameOfReferenceUID:e.frameOfReferenceUID,rows:e.rows,columns:e.columns,rowCosines:new l.Vector3(parseFloat(t[0]),parseFloat(t[1]),parseFloat(t[2])),columnCosines:new l.Vector3(parseFloat(t[3]),parseFloat(t[4]),parseFloat(t[5])),imagePositionPatient:new l.Vector3(parseFloat(n[0]),parseFloat(n[1]),parseFloat(n[2])),rowPixelSpacing:i,columnPixelSpacing:o}}}function s(e,t){var n=d[t];if(n)return n.hasOwnProperty(e)?n[e]:void 0}var u;o.import("./parsingUtils",{parsingUtils:function(e){u=e}});var d={};ne=function e(t,n){var o=n.instance,i=n.series,a=n.study,s=n.imageIndex,u=n.numImages,l={};l.study={patientId:a.patientId,studyInstanceUid:a.studyInstanceUid,studyDate:a.studyDate,studyTime:a.studyTime,studyDescription:a.studyDescription,institutionName:a.institutionName},l.series={seriesDescription:i.seriesDescription,seriesNumber:i.seriesNumber,modality:i.modality,seriesInstanceUid:i.seriesInstanceUid,numImages:u},l.instance=o,l.patient={name:a.patientName,id:a.patientId,birthDate:a.patientBirthDate,sex:a.patientSex},l.imagePlane=r(o),d[t]=l},oe=function e(t,n,o){var a={};a[n]=o,d[t]=i.extend(d[t],a)},ie=function e(t){var n=d[t.imageId];n&&(n.instance.rows=n.instance.rows||t.rows,n.instance.columns=n.instance.columns||t.columns,n.instance.sopClassUid=n.instance.sopClassUid||a(t.data,"string","x00080016"),n.instance.sopInstanceUid=n.instance.sopInstanceUid||a(t.data,"string","x00080018"),n.instance.pixelSpacing=n.instance.pixelSpacing||a(t.data,"string","x00280030"),n.instance.frameOfReferenceUID=n.instance.frameOfReferenceUID||a(t.data,"string","x00200052"),n.instance.imageOrientationPatient=n.instance.imageOrientationPatient||a(t.data,"string","x00200037"),n.instance.imagePositionPatient=n.instance.imagePositionPatient||a(t.data,"string","x00200032"),n.instance.sliceThickness=n.instance.sliceThickness||a(t.data,"string","x00180050"),n.instance.sliceLocation=n.instance.sliceLocation||a(t.data,"string","x00201041"),n.instance.tablePosition=n.instance.tablePosition||a(t.data,"string","x00189327"),n.instance.spacingBetweenSlices=n.instance.spacingBetweenSlices||a(t.data,"string","x00180088"),n.instance.lossyImageCompression=n.instance.lossyImageCompression||a(t.data,"string","x00282110"),n.instance.lossyImageCompressionRatio=n.instance.lossyImageCompressionRatio||a(t.data,"string","x00282112"),n.instance.frameIncrementPointer=n.instance.frameIncrementPointer||a(t.data,"string","x00280009"),n.instance.frameTime=n.instance.frameTime||a(t.data,"string","x00181063"),n.instance.frameTimeVector=n.instance.frameTimeVector||a(t.data,"string","x00181065"),t.data&&!n.instance.multiframeMetadata&&(n.instance.multiframeMetadata=ae(t.data)),n.imagePlane=n.imagePlane||r(n.instance))},ae=function e(t){var n,o,i,a,r={isMultiframeImage:!1,frameIncrementPointer:null,numberOfFrames:0,frameTime:0,frameTimeVector:null,averageFrameRate:0};return u.isValidDataSet(t)&&(n=t.intString("x00280008",-1),n>0&&(r.isMultiframeImage=!0,r.numberOfFrames=n,o=u.attributeTag(t,"x00280009")||"","x00181065"===o?(a=u.floatArray(t,"x00181065"),a instanceof Array&&a.length>0&&(r.frameIncrementPointer="frameTimeVector",r.frameTimeVector=a,i=a.reduce(function(e,t){return e+t})/a.length,r.averageFrameRate=1e3/i)):"x00181063"!==o&&""!==o||(i=t.floatString("x00181063",-1),i>0&&(r.frameIncrementPointer="frameTime",r.frameTime=i,r.averageFrameRate=1e3/i)))),r},e.startup(function(){c.metaData.addProvider(s)})}],"sortStudy.js":function(){re=function e(t){if(!t||!t.seriesList)throw"Insufficient study data was provided to sortStudy";t.seriesList.sort(function(e,t){return e.seriesNumber-t.seriesNumber}),t.seriesList.forEach(function(e){e.instances.sort(function(e,t){return e.instanceNumber-t.instanceNumber})})}},"toolManager.js":["babel-runtime/helpers/extends","meteor/ohif:core",function(e,t,n){var o;n.import("babel-runtime/helpers/extends",{default:function(e){o=e}});var a;n.import("meteor/ohif:core",{OHIF:function(e){a=e}});var r="wwwc",s="wwwc",u={},l={activate:[],deactivate:["length","angle","annotate","ellipticalRoi","rectangleRoi"],enable:[],disable:[],disabledToolButtons:[],shadowConfig:{shadow:!1,shadowColor:"#000000",shadowOffsetX:0,shadowOffsetY:0}},d=!1,m=function e(){var t=c,n=t.panMultiTouch,i=t.textStyle,a=t.toolStyle,r=t.toolColors,s=t.length,u=t.arrowAnnotate,l=t.zoom,d=t.ellipticalRoi,m={testPointers:function(){function e(e){return e.numPointers>=3}return e}()};n.setConfiguration(m),i.setBackgroundColor("transparent");var f="Roboto, OpenSans, HelveticaNeue-Light, Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif";i.setFont("15px "+f),a.setToolWidth(2),r.setToolColor("rgb(255, 255, 0)"),r.setActiveColor("rgb(0, 255, 0)");var p=se.getToolDefaultStates().shadowConfig,g=s.getConfiguration(),h=d.getConfiguration();s.setConfiguration(o({},g,p,{drawHandlesOnHover:!0})),d.setConfiguration(o({},h,p));var v={getTextCallback:X,changeTextCallback:$,drawHandles:!1,arrowFirst:!0};u.setConfiguration(v);var w={minScale:.05,maxScale:10};l.setConfiguration(w)};se={init:function(){function e(){se.addTool("wwwc",{mouse:c.wwwc,touch:c.wwwcTouchDrag}),se.addTool("zoom",{mouse:c.zoom,touch:c.zoomTouchDrag}),se.addTool("wwwcRegion",{mouse:c.wwwcRegion,touch:c.wwwcRegionTouch}),se.addTool("dragProbe",{mouse:c.dragProbe,touch:c.dragProbeTouch}),se.addTool("pan",{mouse:c.pan,touch:c.panTouchDrag}),se.addTool("stackScroll",{mouse:c.stackScroll,touch:c.stackScrollTouchDrag}),se.addTool("length",{mouse:c.length,touch:c.lengthTouch}),se.addTool("angle",{mouse:c.simpleAngle,touch:c.simpleAngleTouch}),se.addTool("magnify",{mouse:c.magnify,touch:c.magnifyTouchDrag}),se.addTool("ellipticalRoi",{mouse:c.ellipticalRoi,touch:c.ellipticalRoiTouch}),se.addTool("rectangleRoi",{mouse:c.rectangleRoi,touch:c.rectangleRoiTouch}),se.addTool("annotate",{mouse:c.arrowAnnotate,touch:c.arrowAnnotateTouch}),se.addTool("rotate",{mouse:c.rotate,touch:c.rotateTouchDrag}),a.viewer.defaultTool&&(r=a.viewer.defaultTool),m(),d=!0}return e}(),addTool:function(){function e(e,t){u[e]=t}return e}(),getTools:function(){function e(){return u}return e}(),setToolDefaultStates:function(){function e(e){l=e}return e}(),getToolDefaultStates:function(){function e(){return l}return e}(),setActiveToolForElement:function(){function e(e,t){var n=i(t).find("canvas");if(!t.classList.contains("empty")&&n.length){u[r].mouse.deactivate(t,1),u[r].touch&&u[r].touch.deactivate(t),Object.keys(l).forEach(function(e){var n=l[e];n&&n.length&&"disabledToolButtons"!==e&&n.forEach(function(n){"deactivate"===e&&n===r||(u[n].mouse[e](t,"activate"===e||"deactivate"===e?1:void 0),u[n].touch[e](t))})});var o=c.getToolState(t,"stack");if(o&&o.data&&o.data.length){var a=o.data[0].imageIds;c.pan.deactivate(t),c.zoom.deactivate(t),c.zoomWheel.deactivate(t),c.stackScrollWheel.deactivate(t),a.length>1?c.stackScrollWheel.activate(t):c.zoomWheel.activate(t),"pan"===e?(c.pan.activate(t,3),c.zoom.activate(t,4)):"zoom"===e?(c.pan.activate(t,2),c.zoom.activate(t,5)):(c.pan.activate(t,2),c.zoom.activate(t,4),u[e].mouse.activate(t,1)),u[e].touch&&u[e].touch.activate(t),c.zoomTouchPinch.activate(t),c.panMultiTouch.activate(t)}}}return e}(),setActiveTool:function(){function e(e,t){d||se.init(),e||(e=s),t&&t.length||(t=i(".imageViewerViewport")),i(t).each(function(t,n){se.setActiveToolForElement(e,n)}),r=e,T.set("ToolManagerActiveTool",e)}return e}(),getActiveTool:function(){function e(){return r||(r=s),r}return e}(),setDefaultTool:function(){function e(e){s=e}return e}(),getDefaultTool:function(){function e(){return s}return e}()}}],"enablePrefetchOnElement.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),ue=function e(t){o.log.info("imageViewerViewport enablePrefetchOnElement"),i(".imageViewerViewport").each(function(){i(this).find("canvas").length&&c.stackPrefetch.disable(this)});var n=c.getToolState(t,"stack");n&&n.data.length&&n.data[0].imageIds.length>1&&c.stackPrefetch.enable(t)}}],"displayReferenceLines.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),le=function e(t){o.log.info("imageViewerViewport displayReferenceLines");var n=u.getEnabledElement(t),a=n.image.imageId,r=c.metaData.get("imagePlane",a);o.viewer.refLinesEnabled&&r&&r.frameOfReferenceUID&&(c.referenceLines.tool.disable(t),i(".imageViewerViewport").not(t).each(function(e,t){var n=void 0;if(i(t).find("canvas").length){try{var a=u.getEnabledElement(t);n=a.image.imageId}catch(e){return}if(!n)return;c.referenceLines.tool.enable(t,o.viewer.updateImageSynchronizer)}}))}}],"toggleDialog.js":function(){ce=function e(t){var n=i(t),o=n.hasClass("dialog-open");n.toggleClass("dialog-closed",o),n.toggleClass("dialog-open",!o)}},"setActiveViewport.js":function(){de=function e(t){if(t){var n=i(".imageViewerViewport").index(t),o=i(t);if(T.set("activeViewport",n),T.set("LayoutManagerUpdated",_.id()),i("#imageViewerViewports .viewportContainer").removeClass("active"),o.parents(".viewportContainer").addClass("active"),o.find("canvas").length){var a=o.get(0);ue(a),le(a)}o.triggerHandler("focus")}}},"switchToImageByIndex.js":function(){me=function e(t){var n=ge();c.scrollToIndex(n,t)}},"switchToImageRelative.js":function(){fe=function e(t){var n=ge();c.scroll(n,t)}},"enableHotkeys.js":["meteor/ohif:core",function(t,n,o){function a(){l.log.info("nextActivePanel");var e=T.get("activeViewport");e--;var t=i(".imageViewerViewport"),n=t.length;e<0&&(e=n-1);var o=t.get(e);o&&de(o)}function r(){l.log.info("nextActivePanel");var e=T.get("activeViewport");e++;var t=i(".imageViewerViewport"),n=t.length;e>=n&&(e=0);var o=t.get(e);o&&de(o)}function s(e){e&&(e.classList.add("active"),setTimeout(function(){e.classList.remove("active")},100))}function u(e,t){var n=l.viewer.hotkeyFunctions;if(e&&""!==e){var o;if(t.indexOf("WLPreset")>-1){var a=t.replace("WLPreset","");o=function e(){Ee(a)}}else o=n[t],!o&&l.viewer&&l.viewer.functionList&&(o=l.viewer.functionList[t]);if(o){var r=e.toLowerCase();i(document).bind("keydown",r,o)}}}var l;o.import("meteor/ohif:core",{OHIF:function(e){l=e}}),e.startup(function(){l.viewer||(l.viewer={}),l.viewer.loadIndicatorDelay=200,l.viewer.defaultTool="wwwc",l.viewer.refLinesEnabled=!0,l.viewer.isPlaying={},l.viewer.cine={framesPerSecond:24,loop:!0},l.viewer.defaultHotkeys={defaultTool:"ESC",angle:"A",stackScroll:"S",pan:"P",magnify:"M",scrollDown:"DOWN",scrollUp:"UP",nextDisplaySet:"PAGEDOWN",previousDisplaySet:"PAGEUP",nextPanel:"RIGHT",previousPanel:"LEFT",invert:"I",flipV:"V",flipH:"H",wwwc:"W",zoom:"Z",cinePlay:"SPACE",rotateR:"R",rotateL:"L",toggleOverlayTags:"SHIFT",WLPresetSoftTissue:["NUMPAD1","1"],WLPresetLung:["NUMPAD2","2"],WLPresetLiver:["NUMPAD3","3"],WLPresetBone:["NUMPAD4","4"],WLPresetBrain:["NUMPAD5","5"]},l.viewer.hotkeys=l.viewer.defaultHotkeys,l.viewer.defaultWLPresets={SoftTissue:{wc:40,ww:400},Lung:{wc:-600,ww:1500},Liver:{wc:90,ww:150},Bone:{wc:480,ww:2500},Brain:{wc:40,ww:80}},l.viewer.wlPresets=l.viewer.defaultWLPresets,l.viewer.hotkeyFunctions={wwwc:function(){function e(){se.setActiveTool("wwwc")}return e}(),zoom:function(){function e(){se.setActiveTool("zoom")}return e}(),angle:function(){function e(){se.setActiveTool("angle")}return e}(),dragProbe:function(){function e(){se.setActiveTool("dragProbe")}return e}(),ellipticalRoi:function(){function e(){se.setActiveTool("ellipticalRoi")}return e}(),magnify:function(){function e(){se.setActiveTool("magnify")}return e}(),annotate:function(){function e(){se.setActiveTool("annotate")}return e}(),stackScroll:function(){function e(){se.setActiveTool("stackScroll")}return e}(),pan:function(){function e(){se.setActiveTool("pan")}return e}(),length:function(){function e(){se.setActiveTool("length")}return e}(),spine:function(){function e(){se.setActiveTool("spine")}return e}(),wwwcRegion:function(){function e(){se.setActiveTool("wwwcRegion")}return e}(),zoomIn:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("zoomIn");s(e),he()}),zoomOut:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("zoomOut");s(e),ve()}),zoomToFit:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("zoomToFit");s(e),we()}),scrollDown:function(){function e(){var e=i(".viewportContainer.active"),t=e.find("#nextImage").get(0);e.find(".imageViewerViewport").hasClass("empty")||(s(t),fe(1))}return e}(),scrollFirstImage:function(){function e(){var e=i(".viewportContainer.active");e.find(".imageViewerViewport").hasClass("empty")||me(0)}return e}(),scrollLastImage:function(){function e(){var e=i(".viewportContainer.active");e.find(".imageViewerViewport").hasClass("empty")||me(-1)}return e}(),scrollUp:function(){function e(){var e=i(".viewportContainer.active");if(!e.find(".imageViewerViewport").hasClass("empty")){var t=e.find("#prevImage").get(0);s(t),fe(-1)}}return e}(),previousDisplaySet:function(){function e(){l.viewer.moveDisplaySets(!1)}return e}(),nextDisplaySet:function(){function e(){l.viewer.moveDisplaySets(!0)}return e}(),nextPanel:function(){function e(){r()}return e}(),previousPanel:function(){function e(){a()}return e}(),invert:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("invert");s(e),be()}),flipV:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("flipV");s(e),ke()}),flipH:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("flipH");s(e),Se()}),rotateR:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("rotateR");s(e),Ie()}),rotateL:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}(function(){var e=document.getElementById("rotateL");s(e),ye()}),cinePlay:function(){function e(){Ve()}return e}(),defaultTool:function(){function e(){var e=se.getDefaultTool();se.setActiveTool(e)}return e}(),toggleOverlayTags:function(){function e(){var e=i(".imageViewerViewportOverlay .dicomTag");"none"===e.eq(0).css("display")?e.show():e.hide()}return e}()},l.viewer.loadedSeriesData={}}),i.fn.reverse=[].reverse,pe=function e(){var t=l.viewer.hotkeys;i(document).unbind("keydown"),Object.keys(t).forEach(function(e){var n=t[e];n&&n.length&&(n.constructor===Array?n.forEach(function(t){u(t,e)}):u(n,e))})}}],"viewportFunctions.js":["meteor/session","meteor/jquery",function(e,t,n){var o;n.import("meteor/session",{Session:function(e){o=e}});var i;n.import("meteor/jquery",{$:function(e){i=e}}),ge=function e(){var t=o.get("activeViewport")||0;return i(".imageViewerViewport").get(t)},he=function e(){var t=ge();if(t){var n=u.getViewport(t),o=.15,i=10;n.scale=Math.min(n.scale+increment,i),u.setViewport(t,n)}},ve=function e(){var t=ge();if(t){var n=u.getViewport(t),o=.15,i=.05;n.scale=Math.max(n.scale-increment,i),u.setViewport(t,n)}},we=function e(){var t=ge();t&&u.fitToWindow(t)},ye=function e(){var t=ge();if(t){var n=u.getViewport(t);n.rotation-=90,u.setViewport(t,n),Y(t,n)}},Ie=function e(){var t=ge();if(t){var n=u.getViewport(t);n.rotation+=90,u.setViewport(t,n),Y(t,n)}},be=function e(){var t=ge();if(t){var n=u.getViewport(t);n.invert=n.invert===!1,u.setViewport(t,n)}},ke=function e(){var t=ge(),n=u.getViewport(t);n.vflip=n.vflip===!1,u.setViewport(t,n),Y(t,n)},Se=function e(){var t=ge(),n=u.getViewport(t);n.hflip=n.hflip===!1,u.setViewport(t,n),Y(t,n)},De=function e(){var t=ge(),n=u.getEnabledElement(t);if(n.fitToWindow===!1){var o=n.image.imageId,i=c.metaData.get("instance",o);n.viewport=u.getDefaultViewport(n.canvas,n.image);var a=Ae(i,n,o);u.setViewport(t,a)}else u.reset(t)},Te=function e(){var t=ge(),n=c.globalImageIdSpecificToolStateManager;n.clear(t),u.updateImage(t)},Ve=function e(){var t=ge();Pe()?c.stopClip(t):c.playClip(t),o.set("UpdateCINE",_.id())},Ce=function e(){var t=document.getElementById("cineDialog");ce(t)},Pe=function e(){o.get("UpdateCINE"),o.get("LayoutManagerUpdated");var t=ge();if(t&&i(t).find("canvas").length){var n=c.getToolState(t,"playClip");if(!n)return!1;var a=n.data[0];return!!a&&!R.isUndefined(a.intervalId)}},xe=function e(){o.get("activeViewport"),o.get("LayoutManagerUpdated");var t=ge();if(!t||!i(t).find("canvas").length)return!0;var n=c.getToolState(t,"stack");if(!n||!n.data||!n.data.length)return!0;var a=n.data[0],r=a.imageIds&&a.imageIds.length?a.imageIds.length:1;return 1===r||!!clipState&&!R.isUndefined(clipState.intervalId)},xe=function e(){o.get("activeViewport"),o.get("LayoutManagerUpdated");var t=ge();if(!t)return!0;var n=c.getToolState(t,"stack");if(!n||!n.data||!n.data.length)return!0;var i=n.data[0],a=i.imageIds&&i.imageIds.length?i.imageIds.length:1;return 1===a},i(window).on("CornerstoneToolsClipStopped",function(){return o.set("UpdateCINE",_.id())})}],"WLPresets.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),Me=function e(t,n){o.log.info("Applying WL Preset: "+t);var i=u.getViewport(n);if("Default"===t){var a=u.getEnabledElement(n);i.voi.windowWidth=a.image.windowWidth,i.voi.windowCenter=a.image.windowCenter}else{var r=o.viewer.wlPresets[t];i.voi.windowWidth=r.ww,i.voi.windowCenter=r.wc}u.setViewport(n,i)},Ee=function e(t){var n=ge();n&&Me(t,n)}}],"resizeViewportElements.js":function(){var e;Ne=function t(){clearTimeout(e),e=setTimeout(function(){je()},100)},je=function e(){Le=setTimeout(function(){var e=i(".imageViewerViewport").not(".empty");e.each(function(e,t){var n;try{n=u.getEnabledElement(t)}catch(e){return}if(u.resize(t,!0),n.fitToWindow===!1){var o=n.image.imageId,a=c.metaData.get("instance",o),r=Ae(a,n,o);u.setViewport(t,r)}var s=i(t).siblings(".imageViewerViewportOverlay"),l=s.find(".imageControls");s.find(".imageControls").height(i(t).height());var d=s.find("#scrollbar");d.height(d.parent().height()-20);var m=s.find("#imageSlider"),f=m.parent().height();m.width(f)})},1)}},"setFocusToActiveViewport.js":function(){Re=function e(){var t=i(".imageViewerViewport"),n=T.get("activeViewport"),o=t.eq(n);o.focus()}},"updateAllViewports.js":function(){_e=function e(){var t=i(".imageViewerViewport").not(".empty");t.each(function(e,t){u.updateImage(t)})}},"instanceClassSpecificViewport.js":function(){var e={};Ae=function t(n,o,i){var a=n.sopClassUid;if(e[a])return e[a](n,o,i)},Be=function t(n,o){e[n]=o}},"setMammogramViewportAlignment.js":function(){Oe=function e(t,n,o){var a=["MLO","CC","LM","ML","XCCL"],r=["LM"],s=c.metaData.get("instance",o);if(s){var l=s.laterality,d=n.element,m,f=i(n.canvas).offset().left,p=f+n.canvas.width;if(!(a.indexOf(s.viewPosition)<0))return r.indexOf(s.viewPosition)>-1&&("R"===l?l="L":"L"===l&&(l="R")),"R"===l?(m=u.pageToPixel(d,p,0),m.x!==n.image.width&&(n.viewport.translation.x+=m.x-n.image.width),oe(o,"tagDisplay",{side:"L"})):"L"===l&&(m=u.pageToPixel(d,f,0),0!==m.x&&(n.viewport.translation.x+=m.x),oe(o,"tagDisplay",{side:"R"})),n.viewport}},e.startup(function(){Be("1.2.840.10008.5.1.4.1.1.1.2",Oe)})},"isImage.js":function(){Ue=function e(t){return t==Fe.ComputedRadiographyImageStorage||t==Fe.DigitalXRayImageStorageForPresentation||t==Fe.DigitalXRayImageStorageForProcessing||t==Fe.DigitalMammographyXRayImageStorageForPresentation||t==Fe.DigitalMammographyXRayImageStorageForProcessing||t==Fe.DigitalIntraOralXRayImageStorageForPresentation||t==Fe.DigitalIntraOralXRayImageStorageForProcessing||t==Fe.CTImageStorage||t==Fe.EnhancedCTImageStorage||t==Fe.LegacyConvertedEnhancedCTImageStorage||t==Fe.UltrasoundMultiframeImageStorage||t==Fe.MRImageStorage||t==Fe.EnhancedMRImageStorage||t==Fe.EnhancedMRColorImageStorage||t==Fe.LegacyConvertedEnhancedMRImageStorage||t==Fe.UltrasoundImageStorage||t==Fe.SecondaryCaptureImageStorage||t==Fe.MultiframeSingleBitSecondaryCaptureImageStorage||t==Fe.MultiframeGrayscaleByteSecondaryCaptureImageStorage||t==Fe.MultiframeGrayscaleWordSecondaryCaptureImageStorage||t==Fe.MultiframeTrueColorSecondaryCaptureImageStorage||t==Fe.XRayAngiographicImageStorage||t==Fe.EnhancedXAImageStorage||t==Fe.XRayRadiofluoroscopicImageStorage||t==Fe.EnhancedXRFImageStorage||t==Fe.XRay3DAngiographicImageStorage||t==Fe.XRay3DCraniofacialImageStorage||t==Fe.BreastTomosynthesisImageStorage||t==Fe.BreastProjectionXRayImageStorageForPresentation||t==Fe.BreastProjectionXRayImageStorageForProcessing||t==Fe.IntravascularOpticalCoherenceTomographyImageStorageForPresentation||t==Fe.IntravascularOpticalCoherenceTomographyImageStorageForProcessing||t==Fe.NuclearMedicineImageStorage||t==Fe.VLEndoscopicImageStorage||t==Fe.VideoEndoscopicImageStorage||t==Fe.VLMicroscopicImageStorage||t==Fe.VideoMicroscopicImageStorage||t==Fe.VLSlideCoordinatesMicroscopicImageStorage||t==Fe.VLPhotographicImageStorage||t==Fe.VideoPhotographicImageStorage||t==Fe.OphthalmicPhotography8BitImageStorage||t==Fe.OphthalmicPhotography16BitImageStorage||t==Fe.OphthalmicTomographyImageStorage||t==Fe.VLWholeSlideMicroscopyImageStorage||t==Fe.PositronEmissionTomographyImageStorage||t==Fe.EnhancedPETImageStorage||t==Fe.LegacyConvertedEnhancedPETImageStorage||t==Fe.RTImageStorage}},"sopClassDictionary.js":function(){Fe={ComputedRadiographyImageStorage:"1.2.840.10008.5.1.4.1.1.1",DigitalXRayImageStorageForPresentation:"1.2.840.10008.5.1.4.1.1.1.1",DigitalXRayImageStorageForProcessing:"1.2.840.10008.5.1.4.1.1.1.1.1",DigitalMammographyXRayImageStorageForPresentation:"1.2.840.10008.5.1.4.1.1.1.2",DigitalMammographyXRayImageStorageForProcessing:"1.2.840.10008.5.1.4.1.1.1.2.1",DigitalIntraOralXRayImageStorageForPresentation:"1.2.840.10008.5.1.4.1.1.1.3",DigitalIntraOralXRayImageStorageForProcessing:"1.2.840.10008.5.1.4.1.1.1.3.1",CTImageStorage:"1.2.840.10008.5.1.4.1.1.2",EnhancedCTImageStorage:"1.2.840.10008.5.1.4.1.1.2.1",LegacyConvertedEnhancedCTImageStorage:"1.2.840.10008.5.1.4.1.1.2.2",UltrasoundMultiframeImageStorage:"1.2.840.10008.5.1.4.1.1.3.1",MRImageStorage:"1.2.840.10008.5.1.4.1.1.4",EnhancedMRImageStorage:"1.2.840.10008.5.1.4.1.1.4.1",MRSpectroscopyStorage:"1.2.840.10008.5.1.4.1.1.4.2",EnhancedMRColorImageStorage:"1.2.840.10008.5.1.4.1.1.4.3",LegacyConvertedEnhancedMRImageStorage:"1.2.840.10008.5.1.4.1.1.4.4",UltrasoundImageStorage:"1.2.840.10008.5.1.4.1.1.6.1",EnhancedUSVolumeStorage:"1.2.840.10008.5.1.4.1.1.6.2",SecondaryCaptureImageStorage:"1.2.840.10008.5.1.4.1.1.7",MultiframeSingleBitSecondaryCaptureImageStorage:"1.2.840.10008.5.1.4.1.1.7.1",MultiframeGrayscaleByteSecondaryCaptureImageStorage:"1.2.840.10008.5.1.4.1.1.7.2",MultiframeGrayscaleWordSecondaryCaptureImageStorage:"1.2.840.10008.5.1.4.1.1.7.3",MultiframeTrueColorSecondaryCaptureImageStorage:"1.2.840.10008.5.1.4.1.1.7.4",Sop12LeadECGWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.1.1",GeneralECGWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.1.2",AmbulatoryECGWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.1.3",HemodynamicWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.2.1",CardiacElectrophysiologyWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.3.1",BasicVoiceAudioWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.4.1",GeneralAudioWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.4.2",ArterialPulseWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.5.1",RespiratoryWaveformStorage:"1.2.840.10008.5.1.4.1.1.9.6.1",GrayscaleSoftcopyPresentationStateStorage:"1.2.840.10008.5.1.4.1.1.11.1",ColorSoftcopyPresentationStateStorage:"1.2.840.10008.5.1.4.1.1.11.2",PseudoColorSoftcopyPresentationStateStorage:"1.2.840.10008.5.1.4.1.1.11.3",BlendingSoftcopyPresentationStateStorage:"1.2.840.10008.5.1.4.1.1.11.4",XAXRFGrayscaleSoftcopyPresentationStateStorage:"1.2.840.10008.5.1.4.1.1.11.5",XRayAngiographicImageStorage:"1.2.840.10008.5.1.4.1.1.12.1",EnhancedXAImageStorage:"1.2.840.10008.5.1.4.1.1.12.1.1",XRayRadiofluoroscopicImageStorage:"1.2.840.10008.5.1.4.1.1.12.2",EnhancedXRFImageStorage:"1.2.840.10008.5.1.4.1.1.12.2.1",XRay3DAngiographicImageStorage:"1.2.840.10008.5.1.4.1.1.13.1.1",XRay3DCraniofacialImageStorage:"1.2.840.10008.5.1.4.1.1.13.1.2",BreastTomosynthesisImageStorage:"1.2.840.10008.5.1.4.1.1.13.1.3",BreastProjectionXRayImageStorageForPresentation:"1.2.840.10008.5.1.4.1.1.13.1.4",BreastProjectionXRayImageStorageForProcessing:"1.2.840.10008.5.1.4.1.1.13.1.5",IntravascularOpticalCoherenceTomographyImageStorageForPresentation:"1.2.840.10008.5.1.4.1.1.14.1",IntravascularOpticalCoherenceTomographyImageStorageForProcessing:"1.2.840.10008.5.1.4.1.1.14.2",NuclearMedicineImageStorage:"1.2.840.10008.5.1.4.1.1.20",RawDataStorage:"1.2.840.10008.5.1.4.1.1.66",SpatialRegistrationStorage:"1.2.840.10008.5.1.4.1.1.66.1",SpatialFiducialsStorage:"1.2.840.10008.5.1.4.1.1.66.2",DeformableSpatialRegistrationStorage:"1.2.840.10008.5.1.4.1.1.66.3",SegmentationStorage:"1.2.840.10008.5.1.4.1.1.66.4",SurfaceSegmentationStorage:"1.2.840.10008.5.1.4.1.1.66.5",RealWorldValueMappingStorage:"1.2.840.10008.5.1.4.1.1.67",SurfaceScanMeshStorage:"1.2.840.10008.5.1.4.1.1.68.1",SurfaceScanPointCloudStorage:"1.2.840.10008.5.1.4.1.1.68.2",VLEndoscopicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.1",VideoEndoscopicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.1.1",VLMicroscopicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.2",VideoMicroscopicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.2.1",VLSlideCoordinatesMicroscopicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.3",VLPhotographicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.4",VideoPhotographicImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.4.1",OphthalmicPhotography8BitImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.5.1",OphthalmicPhotography16BitImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.5.2",StereometricRelationshipStorage:"1.2.840.10008.5.1.4.1.1.77.1.5.3",OphthalmicTomographyImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.5.4",VLWholeSlideMicroscopyImageStorage:"1.2.840.10008.5.1.4.1.1.77.1.6",LensometryMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.78.1",AutorefractionMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.78.2",KeratometryMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.78.3",SubjectiveRefractionMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.78.4",VisualAcuityMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.78.5",SpectaclePrescriptionReportStorage:"1.2.840.10008.5.1.4.1.1.78.6",OphthalmicAxialMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.78.7",IntraocularLensCalculationsStorage:"1.2.840.10008.5.1.4.1.1.78.8",MacularGridThicknessandVolumeReport:"1.2.840.10008.5.1.4.1.1.79.1",OphthalmicVisualFieldStaticPerimetryMeasurementsStorage:"1.2.840.10008.5.1.4.1.1.80.1",OphthalmicThicknessMapStorage:"1.2.840.10008.5.1.4.1.1.81.1",CornealTopographyMapStorage:"1.2.840.10008.5.1.4.1.1.82.1",BasicTextSR:"1.2.840.10008.5.1.4.1.1.88.11",EnhancedSR:"1.2.840.10008.5.1.4.1.1.88.22",ComprehensiveSR:"1.2.840.10008.5.1.4.1.1.88.33",Comprehensive3DSR:"1.2.840.10008.5.1.4.1.1.88.34",ProcedureLog:"1.2.840.10008.5.1.4.1.1.88.40",MammographyCADSR:"1.2.840.10008.5.1.4.1.1.88.50",KeyObjectSelection:"1.2.840.10008.5.1.4.1.1.88.59",ChestCADSR:"1.2.840.10008.5.1.4.1.1.88.65",XRayRadiationDoseSR:"1.2.840.10008.5.1.4.1.1.88.67",RadiopharmaceuticalRadiationDoseSR:"1.2.840.10008.5.1.4.1.1.88.68",ColonCADSR:"1.2.840.10008.5.1.4.1.1.88.69",ImplantationPlanSRDocumentStorage:"1.2.840.10008.5.1.4.1.1.88.70",EncapsulatedPDFStorage:"1.2.840.10008.5.1.4.1.1.104.1",EncapsulatedCDAStorage:"1.2.840.10008.5.1.4.1.1.104.2",PositronEmissionTomographyImageStorage:"1.2.840.10008.5.1.4.1.1.128",EnhancedPETImageStorage:"1.2.840.10008.5.1.4.1.1.130",LegacyConvertedEnhancedPETImageStorage:"1.2.840.10008.5.1.4.1.1.128.1",BasicStructuredDisplayStorage:"1.2.840.10008.5.1.4.1.1.131",RTImageStorage:"1.2.840.10008.5.1.4.1.1.481.1",RTDoseStorage:"1.2.840.10008.5.1.4.1.1.481.2",RTStructureSetStorage:"1.2.840.10008.5.1.4.1.1.481.3",RTBeamsTreatmentRecordStorage:"1.2.840.10008.5.1.4.1.1.481.4",RTPlanStorage:"1.2.840.10008.5.1.4.1.1.481.5",RTBrachyTreatmentRecordStorage:"1.2.840.10008.5.1.4.1.1.481.6",RTTreatmentSummaryRecordStorage:"1.2.840.10008.5.1.4.1.1.481.7",RTIonPlanStorage:"1.2.840.10008.5.1.4.1.1.481.8",RTIonBeamsTreatmentRecordStorage:"1.2.840.10008.5.1.4.1.1.481.9",RTBeamsDeliveryInstructionStorage:"1.2.840.10008.5.1.4.34.7",GenericImplantTemplateStorage:"1.2.840.10008.5.1.4.43.1",ImplantAssemblyTemplateStorage:"1.2.840.10008.5.1.4.44.1",ImplantTemplateGroupStorage:"1.2.840.10008.5.1.4.45.1"}},"debugReactivity.js":["meteor/meteor",function(e,t,n){var o;n.import("meteor/meteor",{Meteor:function(e){o=e}}),o.startup(function(){var e=!1;if(e===!0){var t=function e(){Object.keys(N).forEach(function(e){if(!(e.indexOf("_")>-1)){var t=N[e],n=t.rendered,o=0;t.rendered=function(){console.log(e,"render count: ",++o),n&&n.apply(this,arguments)}}})};o.autorun(function(e){e.onInvalidate(function(){console.trace()})});var n=o.Collection.prototype.find;o.Collection.prototype.find=function(){var e=n.apply(this,arguments),t=this._name||this._debugName;return e.observe({added:function(){function e(e){console.log(t,"added",e)}return e}(),changed:function(){function e(e){console.log(t,"changed",e)}return e}(),removed:function(){function e(e){console.log(t,"removed",e)}return e}()}),e},t()}})}],"unloadHandlers.js":["meteor/ohif:core",function(e,t,n){n.export({unloadHandlers:function(){return i}});var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var i={beforeUnload:function(){function e(e){if(o.ui.unsavedChanges.probe("viewer.*")>0){var t="You have unsaved changes!";return e.returnValue=t,t}}return e}()}}],helpers:{"formatDA.js":function(){x.registerHelper("formatDA",function(e,t,n){if(e){var o=r(e,"YYYYMMDD"),i="MMM D, YYYY";return n&&(i=t),o.format(i)}})},"formatJSDate.js":function(){x.registerHelper("formatJSDate",function(e,t,n){
if(e){var o=r(new Date(e)),i="MMM D, YYYY";return n&&(i=t),o.format(i)}})},"jsDateFromNow.js":function(){x.registerHelper("jsDateFromNow",function(e,t,n){if(e){T.get("timeAgoVariable");var o=r(new Date(e));return o.fromNow()}})},"formatNumberPrecision.js":function(){x.registerHelper("formatNumberPrecision",function(e,t){if(e)return parseFloat(e).toFixed(t)})},"formatTM.js":function(){x.registerHelper("formatTM",function(e,t){if(e){var n=r(e,"HHmmss.SSS"),o="HH:mm:ss";return t&&t.format&&(o=t.format),n.format(o)}})},"inc.js":function(){x.registerHelper("inc",function(e){return parseInt(e)+1})},"isDisplaySetActive.js":function(){N.registerHelper("isDisplaySetActive",function(e,t){if(T.get("LayoutManagerUpdated"),window.layoutManager){var n=!1;if(R.isUndefined(t))for(var o=layoutManager.getNumberOfViewports(),i=window.layoutManager.viewportData,a=0;a<o;a++){var r=i[a];if(r&&r.displaySetInstanceUid===e){n=!0;break}}else{var s=window.layoutManager.viewportData[t];s&&s.displaySetInstanceUid===e&&(n=!0)}return n}})},"getUsername.js":function(){x.registerHelper("getUsername",function(t){var n=e.users.findOne({userId:t});if(n&&n.name)return n.name})},"capitalizeFirstLetter.js":function(){x.registerHelper("capitalizeFirstLetter",function(e){if(e)return e.charAt(0).toUpperCase()+e.slice(1)})},"objectToPairs.js":function(){x.registerHelper("objectToPairs",function(e){return R.map(e,function(e,t){return{key:t,value:e}})})},"objectEach.js":function(){x.registerHelper("objectEach",function(e){return R.map(e,function(e,t){return R.extend({key:t},e)})})},"ifTypeIs.js":["babel-runtime/helpers/typeof",function(e,t,n){var o;n.import("babel-runtime/helpers/typeof",{default:function(e){o=e}}),x.registerHelper("ifTypeIs",function(e,t,n){return("undefined"==typeof e?"undefined":o(e))===t?n:""})}],"prettyPrintStringify.js":function(){x.registerHelper("prettyPrintStringify",function(e){if(e){var t=JSON.stringify(e,null,2);return t=t.replace(/['"]+/g,""),t=t.replace("{",""),t=t.replace("}",""),t=t.replace(",","\n")}})},"sorting.js":["meteor/underscore","meteor/templating",function(e,t,n){function o(e,t){t=t.split(".");for(var n=0;n<t.length;n++){if(!e||!i.has(e,t[n]))return;e=e[t[n]]}return e}var i;n.import("meteor/underscore",{_:function(e){i=e}});var a;n.import("meteor/templating",{Template:function(e){a=e}}),a.registerHelper("sort",function(e,t,n){if(!t)return e;var a=i.groupBy(e,function(e){if(t){var n=o(e,t);if(n)return n}return e}),r=i.sortBy(a,function(e){if(t){var n=o(e[0],t);if(n)return n}return e});return"desc"===n?i.flatten(r.reverse(),!0):i.flatten(r,!0)})}],"studyThumbnails.js":function(){N.registerHelper("studyThumbnails",function(e){if(e){var t=e.displaySets,n=[];return R.each(t,function(e,t){n.push({thumbnailIndex:t,stack:e})}),n}})},"formatPN.js":function(){He=function e(t){if(t)return t.replace("^",", ")},x.registerHelper("formatPN",He)},"isTouchDevice.js":function(){We=function e(){return"ontouchstart"in window||navigator.MaxTouchPoints>0||navigator.msMaxTouchPoints>0},x.registerHelper("isTouchDevice",We)}},"parsingUtils.js":["meteor/ohif:cornerstone",function(e,t,n){n.export({parsingUtils:function(){return i}});var o;n.import("meteor/ohif:cornerstone",{dicomParser:function(e){o=e}});var i={isValidDataSet:function(){function e(e){return e instanceof o.DataSet}return e}(),attributeTag:function(){function e(e,t){if(this.isValidDataSet(e)&&t in e.elements){var n=e.elements[t];if(n&&4===n.length){var o=e.byteArrayParser.readUint16,i=e.byteArray,a=n.dataOffset;return"x"+("00000000"+(256*o(i,a)*256+o(i,a+2)).toString(16)).substr(-8)}}return null}return e}(),multiValue:function(){function e(e,t,n){if(this.isValidDataSet(e)&&t in e.elements){var i=e.elements[t];if(i&&i.length>0){var a=o.readFixedString(e.byteArray,i.dataOffset,i.length);if("string"==typeof a&&a.length>0)return"function"!=typeof n&&(n=null),a.split("\\").map(function(e){return e=e.trim(),null!==n?n(e):e})}}return null}return e}(),floatArray:function(){function e(e,t){return this.multiValue(e,t,parseFloat)}return e}()}}]}}}}}},{extensions:[".js",".json",".styl",".html"]});!function(e){function t(t){if("string"==typeof t.data&&(t.data={keys:t.data}),t.data&&t.data.keys&&"string"==typeof t.data.keys){var n=t.handler,o=t.data.keys.toLowerCase().split(" ");t.handler=function(t){if(this===t.target||!(e.hotkeys.options.filterInputAcceptingElements&&e.hotkeys.textInputTypes.test(t.target.nodeName)||e.hotkeys.options.filterContentEditable&&e(t.target).attr("contenteditable")||e.hotkeys.options.filterTextInputs&&e.inArray(t.target.type,e.hotkeys.textAcceptingInputTypes)>-1)){var i="keypress"!==t.type&&e.hotkeys.specialKeys[t.which],a=String.fromCharCode(t.which).toLowerCase(),r="",s={};e.each(["alt","ctrl","shift"],function(e,n){t[n+"Key"]&&i!==n&&(r+=n+"+")}),t.metaKey&&!t.ctrlKey&&"meta"!==i&&(r+="meta+"),t.metaKey&&"meta"!==i&&r.indexOf("alt+ctrl+shift+")>-1&&(r=r.replace("alt+ctrl+shift+","hyper+")),i?s[r+i]=!0:(s[r+a]=!0,s[r+e.hotkeys.shiftNums[a]]=!0,"shift+"===r&&(s[e.hotkeys.shiftNums[a]]=!0));for(var u=0,l=o.length;u<l;u++)if(s[o[u]])return n.apply(this,arguments)}}}}e.hotkeys={version:"0.8",specialKeys:{8:"backspace",9:"tab",10:"return",13:"return",16:"shift",17:"ctrl",18:"alt",19:"pause",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"del",59:";",61:"=",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",109:"-",110:".",111:"/",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:"numlock",145:"scroll",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},shiftNums:{"`":"~",1:"!",2:"@",3:"#",4:"$",5:"%",6:"^",7:"&",8:"*",9:"(",0:")","-":"_","=":"+",";":": ","'":'"',",":"<",".":">","/":"?","\\":"|"},textAcceptingInputTypes:["text","password","number","email","url","range","date","month","week","time","datetime","datetime-local","search","color","tel"],textInputTypes:/textarea|input|select/i,options:{filterInputAcceptingElements:!0,filterTextInputs:!0,filterContentEditable:!0}},e.each(["keydown","keyup","keypress"],function(){e.event.special[this]={add:t}})}(a||this.jQuery||window.jQuery);var Ge=function(){function e(e){for(;e;){if("DIALOG"==e.nodeName)return e;e=e.parentElement}return null}var t=window.CustomEvent;t&&"object"!=typeof t||(t=function e(t,n){n=n||{};var o=document.createEvent("CustomEvent");return o.initCustomEvent(t,!!n.bubbles,!!n.cancelable,n.detail||null),o},t.prototype=window.Event.prototype);var n={};n.reposition=function(e){var t=document.body.scrollTop||document.documentElement.scrollTop,n=t+(window.innerHeight-e.offsetHeight)/2;e.style.top=Math.max(0,n)+"px",e.dialogPolyfillInfo.isTopOverridden=!0},n.inNodeList=function(e,t){for(var n=0;n<e.length;++n)if(e[n]==t)return!0;return!1},n.isInlinePositionSetByStylesheet=function(e){for(var t=0;t<document.styleSheets.length;++t){var o=document.styleSheets[t],i=null;try{i=o.cssRules}catch(e){}if(i)for(var a=0;a<i.length;++a){var r=i[a],s=null;try{s=document.querySelectorAll(r.selectorText)}catch(e){}if(s&&n.inNodeList(s,e)){var u=r.style.getPropertyValue("top"),l=r.style.getPropertyValue("bottom");if(u&&"auto"!=u||l&&"auto"!=l)return!0}}}return!1},n.needsCentering=function(e){var t=window.getComputedStyle(e);return"absolute"==t.position&&(!("auto"!=e.style.top&&""!=e.style.top||"auto"!=e.style.bottom&&""!=e.style.bottom)&&!n.isInlinePositionSetByStylesheet(e))},n.showDialog=function(e){if(this.open)throw"InvalidStateError: showDialog called on open dialog";if(this.open=!0,this.setAttribute("open","open"),e){var t=null,o=null,i=function(e){if(e.children)for(var n=0;n<e.children.length;n++){var a=e.children[n];if(null!==t||a.disabled||"BUTTON"!=a.nodeName&&"INPUT"!=a.nodeName&&"KEYGEN"!=a.nodeName&&"SELECT"!=a.nodeName&&"TEXTAREA"!=a.nodeName||(t=a),a.autofocus)return void(o=a);if(i(a),null!==o)return}};i(this),null!==o?o.focus():null!==t&&t.focus()}n.needsCentering(this)&&n.reposition(this),e&&(this.dialogPolyfillInfo.modal=!0,n.dm.pushDialog(this));try{null!==o?o.focus():null!==t&&t.focus()}catch(e){}this.style.zoom=1},n.close=function(e){if(!this.open&&!window.HTMLDialogElement)throw"InvalidStateError: close called on closed dialog";this.open=!1,this.removeAttribute("open"),"undefined"!=typeof e&&(this.returnValue=e),this.dialogPolyfillInfo.isTopOverridden&&(this.style.top="auto"),this.dialogPolyfillInfo.modal&&n.dm.removeDialog(this);var t;return document.createEvent?(t=document.createEvent("HTMLEvents"),t.initEvent("close",!0,!0)):t=new Event("close"),this.dispatchEvent(t),this.returnValue},n.registerDialog=function(e){e.show&&console.warn("This browser already supports <dialog>, the polyfill may not work correctly."),e.show=n.showDialog.bind(e,!1),e.showModal=n.showDialog.bind(e,!0),e.close=n.close.bind(e),e.dialogPolyfillInfo={},e.open=!1};var o=1e5,i=1e5;return n.DialogManager=function(){this.pendingDialogStack=[],this.overlay=document.createElement("div"),this.overlay.style.width="100%",this.overlay.style.height="100%",this.overlay.style.position="fixed",this.overlay.style.left="0px",this.overlay.style.top="0px",this.overlay.style.backgroundColor="rgba(0,0,0,0.0)",this.focusPageLast=this.createFocusable(),this.overlay.appendChild(this.focusPageLast),this.overlay.addEventListener("click",function(e){var t=document.createEvent("MouseEvents");t.initMouseEvent(e.type,e.bubbles,e.cancelable,window,e.detail,e.screenX,e.screenY,e.clientX,e.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget),document.body.dispatchEvent(t)}),document.addEventListener("submit",function(t){var n=t.target.getAttribute("method");if(n=n?n.toLowerCase():"","dialog"==n){t.preventDefault();var o=e(t.target);if(o){var i,a=[document.activeElement,t.explicitOriginalTarget];a.some(function(e){if(e&&"INPUT"==e.nodeName&&e.form==t.target)return i=e.value,!0}),o.close(i)}}},!0)},n.DialogManager.prototype.createFocusable=function(e){var t=document.createElement("span");return t.tabIndex=e||0,t.style.opacity=0,t.style.position="static",t},n.DialogManager.prototype.blockDocument=function(){document.body.contains(this.overlay)||(document.body.appendChild(this.overlay),void 0===this.needsDocumentElementFocus&&(document.documentElement.focus(),this.needsDocumentElementFocus=document.activeElement!=document.documentElement),this.needsDocumentElementFocus&&(document.documentElement.tabIndex=1))},n.DialogManager.prototype.unblockDocument=function(){document.body.removeChild(this.overlay),this.needsDocumentElementFocus&&(document.documentElement.tabIndex="")},n.DialogManager.prototype.updateStacking=function(){if(0==this.pendingDialogStack.length)return void this.unblockDocument();this.blockDocument();for(var e=o,t=0;t<this.pendingDialogStack.length;t++){t==this.pendingDialogStack.length-1&&(this.overlay.style.zIndex=e++);var n=this.pendingDialogStack[t];n.dialogPolyfillInfo.backdrop.style.zIndex=e++,n.style.zIndex=e++}},n.DialogManager.prototype.handleKey=function(e){var n=this.pendingDialogStack.length;if(0!=n){var o=this.pendingDialogStack[n-1],i=o.dialogPolyfillInfo;switch(e.keyCode){case 9:var a=document.activeElement,r=!e.shiftKey;r?a==document.documentElement||a==document.body||a==i.backdrop?i.focusFirst.focus():a==i.focusLast&&i.focusFirst.focus():a==i.focusFirst?i.focusLast.focus():a==this.focusPageLast&&i.focusLast.focus();break;case 27:e.preventDefault(),e.stopPropagation();var s=new t("cancel",{bubbles:!1,cancelable:!0});o.dispatchEvent(s)&&o.close()}}},n.DialogManager.prototype.pushDialog=function(e){if(this.pendingDialogStack.length>=i)throw"Too many modal dialogs";var t=document.createElement("div");t.className="backdrop";var n=function(t){var n=document.createEvent("MouseEvents");n.initMouseEvent(t.type,t.bubbles,t.cancelable,window,t.detail,t.screenX,t.screenY,t.clientX,t.clientY,t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget),e.dispatchEvent(n)};t.addEventListener("click",n),e.parentNode.insertBefore(t,e.nextSibling),e.dialogPolyfillInfo.backdrop=t,e.dialogPolyfillInfo.clickEventListener=n,this.pendingDialogStack.push(e),this.updateStacking(),e.dialogPolyfillInfo.focusFirst=this.createFocusable(),e.dialogPolyfillInfo.focusLast=this.createFocusable(),e.appendChild(e.dialogPolyfillInfo.focusLast),e.insertBefore(e.dialogPolyfillInfo.focusFirst,e.firstChild)},n.DialogManager.prototype.removeDialog=function(e){var t=this.pendingDialogStack.indexOf(e);if(t!=-1){this.pendingDialogStack.splice(t,1);var n=e.dialogPolyfillInfo.backdrop,o=e.dialogPolyfillInfo.clickEventListener;n.removeEventListener("click",o),n.parentNode.removeChild(n),e.dialogPolyfillInfo.backdrop=null,e.dialogPolyfillInfo.clickEventListener=null,this.updateStacking(),e.removeChild(e.dialogPolyfillInfo.focusFirst),e.removeChild(e.dialogPolyfillInfo.focusLast),e.dialogPolyfillInfo.focusFirst=null,e.dialogPolyfillInfo.focusLast=null}},n.dm=new n.DialogManager,document.addEventListener("keydown",n.dm.handleKey.bind(n.dm)),n}();Ye("./node_modules/meteor/ohif:viewerbase/client/collections.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/basic/layout/template.layout.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/basic/loadingText/template.loadingText.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/basic/removableBackdrop/template.removableBackdrop.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/basic/aboutModal/template.aboutModal.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/basic/aboutModal/aboutModal.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/studyBrowser/studyBrowser/template.studyBrowser.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/studyBrowser/studyBrowser/studyBrowser.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/studyBrowser/thumbnailEntry/template.thumbnailEntry.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/studyBrowser/thumbnailEntry/thumbnailEntry.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/studyBrowser/imageThumbnail/template.imageThumbnail.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/studyBrowser/imageThumbnail/imageThumbnail.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/imageViewerViewport/template.imageViewerViewport.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/imageViewerViewport/imageViewerViewport.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/gridLayout/template.gridLayout.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/gridLayout/gridLayout.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/loadingIndicator/template.loadingIndicator.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/loadingIndicator/loadingIndicator.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/annotationDialogs/template.annotationDialogs.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/annotationDialogs/annotationDialogs.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/viewportOrientationMarkers/template.viewportOrientationMarkers.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/viewportOrientationMarkers/viewportOrientationMarkers.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/viewportOverlay/template.viewportOverlay.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/viewportOverlay/viewportOverlay.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/viewerMain/template.viewerMain.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/viewerMain/viewerMain.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/imageControls/template.imageControls.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/imageControls/imageControls.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/layoutButton/template.layoutButton.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/layoutButton/layoutButton.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/layoutChooser/template.layoutChooser.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/layoutChooser/layoutChooser.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/cineDialog/template.cineDialog.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/cineDialog/cineDialog.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/toolbarSectionButton/template.toolbarSectionButton.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/toolbarSectionButton/toolbarSectionButton.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/toolbarSectionTools/template.toolbarSectionTools.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/toolbarSectionTools/toolbarSectionTools.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/playClipButton/template.playClipButton.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/playClipButton/playClipButton.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/confirmDeleteDialog/template.confirmDeleteDialog.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/confirmDeleteDialog/confirmDeleteDialog.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/displaySetNavigation/template.displaySetNavigation.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/displaySetNavigation/displaySetNavigation.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studySeriesQuickSwitch/template.studySeriesQuickSwitch.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studySeriesQuickSwitch/studySeriesQuickSwitch.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studyTimepointBrowser/template.studyTimepoint.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studyTimepointBrowser/studyTimepoint.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studyTimepointBrowser/template.studyTimepointBrowser.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studyTimepointBrowser/studyTimepointBrowser.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studyTimepointBrowser/template.studyTimepointStudy.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/components/viewer/studyTimepointBrowser/studyTimepointStudy.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/layoutManager.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/createStacks.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/getImageId.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/getWADORSImageId.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/metaDataProvider.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/sortStudy.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/toolManager.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/enablePrefetchOnElement.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/displayReferenceLines.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/toggleDialog.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/setActiveViewport.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/switchToImageByIndex.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/switchToImageRelative.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/enableHotkeys.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/viewportFunctions.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/WLPresets.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/resizeViewportElements.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/setFocusToActiveViewport.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/updateAllViewports.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/instanceClassSpecificViewport.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/setMammogramViewportAlignment.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/isImage.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/sopClassDictionary.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/debugReactivity.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/unloadHandlers.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/formatDA.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/formatJSDate.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/jsDateFromNow.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/formatNumberPrecision.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/formatTM.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/inc.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/isDisplaySetActive.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/getUsername.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/capitalizeFirstLetter.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/objectToPairs.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/objectEach.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/ifTypeIs.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/prettyPrintStringify.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/sorting.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/studyThumbnails.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/formatPN.js"),Ye("./node_modules/meteor/ohif:viewerbase/client/lib/helpers/isTouchDevice.js"),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["ohif:viewerbase"]={},{resizeViewportElements:je,handleResize:Ne,enableHotkeys:pe,enablePrefetchOnElement:ue,displayReferenceLines:le,setActiveViewport:de,createStacks:J,getImageId:ee,getWADORSImageId:te,metaDataProvider:ze,sortStudy:re,updateOrientationMarkers:Y,setFocusToActiveViewport:Re,updateAllViewports:_e,queryStudies:qe,getNumberOfFilesInStudy:Xe,importStudies:$e,getActiveViewportElement:ge,getInstanceClassDefaultViewport:Ae,showConfirmDialog:K,applyWLPreset:Me,toggleDialog:ce,isImage:Ue,sopClassDictionary:Fe,addMetaData:ne,hasMultipleFrames:xe,toolManager:se,LayoutManager:Z,ViewerStudies:U,formatPN:He,isTouchDevice:We,toggleCineDialog:Ce,toggleCinePlay:Ve,clearTools:Te,resetViewport:De,invert:be,flipV:ke,flipH:Se,rotateR:Ie,rotateL:ye})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,r=Package.meteor.meteorEnv,n;(function(){(function(){!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r;"undefined"!=typeof window?r=window:"undefined"!=typeof e?r=e:"undefined"!=typeof self&&(r=self),r.JSZip=t()}}(function(){var t,e,r;return function t(e,r,n){function i(s,o){if(!r[s]){if(!e[s]){var d="function"==typeof require&&require;if(!o&&d)return d(s,!0);if(a)return a(s,!0);throw new Error("Cannot find module '"+s+"'")}var l=r[s]={exports:{}};e[s][0].call(l.exports,function(t){var r=e[s][1][t];return i(r?r:t)},l,l.exports,t,e,r,n)}return r[s].exports}for(var a="function"==typeof require&&require,s=0;s<n.length;s++)i(n[s]);return i}({1:[function(t,e,r){"use strict";var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(t,e){for(var r="",i,a,s,o,d,l,h,f=0;f<t.length;)i=t.charCodeAt(f++),a=t.charCodeAt(f++),s=t.charCodeAt(f++),o=i>>2,d=(3&i)<<4|a>>4,l=(15&a)<<2|s>>6,h=63&s,isNaN(a)?l=h=64:isNaN(s)&&(h=64),r=r+n.charAt(o)+n.charAt(d)+n.charAt(l)+n.charAt(h);return r},r.decode=function(t,e){var r="",i,a,s,o,d,l,h,f=0;for(t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");f<t.length;)o=n.indexOf(t.charAt(f++)),d=n.indexOf(t.charAt(f++)),l=n.indexOf(t.charAt(f++)),h=n.indexOf(t.charAt(f++)),i=o<<2|d>>4,a=(15&d)<<4|l>>2,s=(3&l)<<6|h,r+=String.fromCharCode(i),64!=l&&(r+=String.fromCharCode(a)),64!=h&&(r+=String.fromCharCode(s));return r}},{}],2:[function(t,e,r){"use strict";function n(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}n.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},e.exports=n},{}],3:[function(t,e,r){"use strict";r.STORE={magic:"\0\0",compress:function(t,e){return t},uncompress:function(t){return t},compressInputType:null,uncompressInputType:null},r.DEFLATE=t("./flate")},{"./flate":8}],4:[function(t,e,r){"use strict";var n=t("./utils"),i=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];e.exports=function t(e,r){if("undefined"==typeof e||!e.length)return 0;var a="string"!==n.getTypeOf(e);"undefined"==typeof r&&(r=0);var s=0,o=0,d=0;r^=-1;for(var l=0,h=e.length;l<h;l++)d=a?e[l]:e.charCodeAt(l),o=255&(r^d),s=i[o],r=r>>>8^s;return r^-1}},{"./utils":21}],5:[function(t,e,r){"use strict";function n(t){this.data=null,this.length=0,this.index=0}var i=t("./utils");n.prototype={checkOffset:function(t){this.checkIndex(this.index+t)},checkIndex:function(t){if(this.length<t||t<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+t+"). Corrupted zip ?")},setIndex:function(t){this.checkIndex(t),this.index=t},skip:function(t){this.setIndex(this.index+t)},byteAt:function(t){},readInt:function(t){var e=0,r;for(this.checkOffset(t),r=this.index+t-1;r>=this.index;r--)e=(e<<8)+this.byteAt(r);return this.index+=t,e},readString:function(t){return i.transformTo("string",this.readData(t))},readData:function(t){},lastIndexOfSignature:function(t){},readDate:function(){var t=this.readInt(4);return new Date((t>>25&127)+1980,(t>>21&15)-1,t>>16&31,t>>11&31,t>>5&63,(31&t)<<1)}},e.exports=n},{"./utils":21}],6:[function(t,e,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!1,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],7:[function(t,e,r){"use strict";var n=t("./utils");r.string2binary=function(t){return n.string2binary(t)},r.string2Uint8Array=function(t){return n.transformTo("uint8array",t)},r.uint8Array2String=function(t){return n.transformTo("string",t)},r.string2Blob=function(t){var e=n.transformTo("arraybuffer",t);return n.arrayBuffer2Blob(e)},r.arrayBuffer2Blob=function(t){return n.arrayBuffer2Blob(t)},r.transformTo=function(t,e){return n.transformTo(t,e)},r.getTypeOf=function(t){return n.getTypeOf(t)},r.checkSupport=function(t){return n.checkSupport(t)},r.MAX_VALUE_16BITS=n.MAX_VALUE_16BITS,r.MAX_VALUE_32BITS=n.MAX_VALUE_32BITS,r.pretty=function(t){return n.pretty(t)},r.findCompression=function(t){return n.findCompression(t)},r.isRegExp=function(t){return n.isRegExp(t)}},{"./utils":21}],8:[function(t,e,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=t("pako");r.uncompressInputType=n?"uint8array":"array",r.compressInputType=n?"uint8array":"array",r.magic="\b\0",r.compress=function(t,e){return i.deflateRaw(t,{level:e.level||-1})},r.uncompress=function(t){return i.inflateRaw(t)}},{pako:24}],9:[function(t,e,r){"use strict";function n(t,e){return this instanceof n?(this.files={},this.comment=null,this.root="",t&&this.load(t,e),void(this.clone=function(){var t=new n;for(var e in this)"function"!=typeof this[e]&&(t[e]=this[e]);return t})):new n(t,e)}var i=t("./base64");n.prototype=t("./object"),n.prototype.load=t("./load"),n.support=t("./support"),n.defaults=t("./defaults"),n.utils=t("./deprecatedPublicUtils"),n.base64={encode:function(t){return i.encode(t)},decode:function(t){return i.decode(t)}},n.compressions=t("./compressions"),e.exports=n},{"./base64":1,"./compressions":3,"./defaults":6,"./deprecatedPublicUtils":7,"./load":10,"./object":13,"./support":17}],10:[function(t,e,r){"use strict";var n=t("./base64"),i=t("./zipEntries");e.exports=function(t,e){var r,a,s,o;for(e=e||{},e.base64&&(t=n.decode(t)),a=new i(t,e),r=a.files,s=0;s<r.length;s++)o=r[s],this.file(o.fileName,o.decompressed,{binary:!0,optimizedBinaryString:!0,date:o.date,dir:o.dir,comment:o.fileComment.length?o.fileComment:null,unixPermissions:o.unixPermissions,dosPermissions:o.dosPermissions,createFolders:e.createFolders});return a.zipComment.length&&(this.comment=a.zipComment),this}},{"./base64":1,"./zipEntries":22}],11:[function(t,e,r){(function(t){"use strict";e.exports=function(e,r){return new t(e,r)},e.exports.test=function(e){return t.isBuffer(e)}}).call(this,"undefined"!=typeof Buffer?Buffer:void 0)},{}],12:[function(t,e,r){"use strict";function n(t){this.data=t,this.length=this.data.length,this.index=0}var i=t("./uint8ArrayReader");n.prototype=new i,n.prototype.readData=function(t){this.checkOffset(t);var e=this.data.slice(this.index,this.index+t);return this.index+=t,e},e.exports=n},{"./uint8ArrayReader":18}],13:[function(t,e,r){"use strict";var n=t("./support"),i=t("./utils"),a=t("./crc32"),s=t("./signature"),o=t("./defaults"),d=t("./base64"),l=t("./compressions"),h=t("./compressedObject"),f=t("./nodeBuffer"),u=t("./utf8"),c=t("./stringWriter"),p=t("./uint8ArrayWriter"),_=function(t){if(t._data instanceof h&&(t._data=t._data.getContent(),t.options.binary=!0,t.options.base64=!1,"uint8array"===i.getTypeOf(t._data))){var e=t._data;t._data=new Uint8Array(e.length),0!==e.length&&t._data.set(e,0)}return t._data},m=function(t){var e=_(t),r=i.getTypeOf(e);return"string"===r?!t.options.binary&&n.nodebuffer?f(e,"utf-8"):t.asBinary():e},g=function(t){var e=_(this);return null===e||"undefined"==typeof e?"":(this.options.base64&&(e=d.decode(e)),e=t&&this.options.binary?B.utf8decode(e):i.transformTo("string",e),t||this.options.binary||(e=i.transformTo("string",B.utf8encode(e))),e)},b=function(t,e,r){this.name=t,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=e,this.options=r,this._initialMetadata={dir:r.dir,date:r.date}};b.prototype={asText:function(){return g.call(this,!0)},asBinary:function(){return g.call(this,!1)},asNodeBuffer:function(){var t=m(this);return i.transformTo("nodebuffer",t)},asUint8Array:function(){var t=m(this);return i.transformTo("uint8array",t)},asArrayBuffer:function(){return this.asUint8Array().buffer}};var w=function(t,e){var r="",n;for(n=0;n<e;n++)r+=String.fromCharCode(255&t),t>>>=8;return r},v=function(){var t={},e,r;for(e=0;e<arguments.length;e++)for(r in arguments[e])arguments[e].hasOwnProperty(r)&&"undefined"==typeof t[r]&&(t[r]=arguments[e][r]);return t},y=function(t){return t=t||{},t.base64!==!0||null!==t.binary&&void 0!==t.binary||(t.binary=!0),t=v(t,o),t.date=t.date||new Date,null!==t.compression&&(t.compression=t.compression.toUpperCase()),t},k=function(t,e,r){var n=i.getTypeOf(e),a;if(r=y(r),"string"==typeof r.unixPermissions&&(r.unixPermissions=parseInt(r.unixPermissions,8)),r.unixPermissions&&16384&r.unixPermissions&&(r.dir=!0),r.dosPermissions&&16&r.dosPermissions&&(r.dir=!0),r.dir&&(t=z(t)),r.createFolders&&(a=x(t))&&A.call(this,a,!0),r.dir||null===e||"undefined"==typeof e)r.base64=!1,r.binary=!1,e=null,n=null;else if("string"===n)r.binary&&!r.base64&&r.optimizedBinaryString!==!0&&(e=i.string2binary(e));else{if(r.base64=!1,r.binary=!0,!(n||e instanceof h))throw new Error("The data of '"+t+"' is in an unsupported format !");"arraybuffer"===n&&(e=i.transformTo("uint8array",e))}var s=new b(t,e,r);return this.files[t]=s,s},x=function(t){"/"==t.slice(-1)&&(t=t.substring(0,t.length-1));var e=t.lastIndexOf("/");return e>0?t.substring(0,e):""},z=function(t){return"/"!=t.slice(-1)&&(t+="/"),t},A=function(t,e){return e="undefined"!=typeof e&&e,t=z(t),this.files[t]||k.call(this,t,null,{dir:!0,createFolders:e}),this.files[t]},E=function(t,e,r){var n=new h,s;return t._data instanceof h?(n.uncompressedSize=t._data.uncompressedSize,n.crc32=t._data.crc32,0===n.uncompressedSize||t.dir?(e=l.STORE,n.compressedContent="",n.crc32=0):t._data.compressionMethod===e.magic?n.compressedContent=t._data.getCompressedContent():(s=t._data.getContent(),n.compressedContent=e.compress(i.transformTo(e.compressInputType,s),r))):(s=m(t),s&&0!==s.length&&!t.dir||(e=l.STORE,s=""),n.uncompressedSize=s.length,n.crc32=a(s),n.compressedContent=e.compress(i.transformTo(e.compressInputType,s),r)),n.compressedSize=n.compressedContent.length,n.compressionMethod=e.magic,n},S=function(t,e){var r=t;return t||(r=e?16893:33204),(65535&r)<<16},C=function(t,e){return 63&(t||0)},I=function(t,e,r,n,o){var d=r.compressedContent,l=i.transformTo("string",u.utf8encode(e.name)),h=e.comment||"",f=i.transformTo("string",u.utf8encode(h)),c=l.length!==e.name.length,p=f.length!==h.length,_=e.options,m,g,b="",v="",y="",k,x;k=e._initialMetadata.dir!==e.dir?e.dir:_.dir,x=e._initialMetadata.date!==e.date?e.date:_.date;var z=0,A=0;k&&(z|=16),"UNIX"===o?(A=798,z|=S(e.unixPermissions,k)):(A=20,z|=C(e.dosPermissions,k)),m=x.getHours(),m<<=6,m|=x.getMinutes(),m<<=5,m|=x.getSeconds()/2,g=x.getFullYear()-1980,g<<=4,g|=x.getMonth()+1,g<<=5,g|=x.getDate(),c&&(v=w(1,1)+w(a(l),4)+l,b+="up"+w(v.length,2)+v),p&&(y=w(1,1)+w(this.crc32(f),4)+f,b+="uc"+w(y.length,2)+y);var E="";E+="\n\0",E+=c||p?"\0\b":"\0\0",E+=r.compressionMethod,E+=w(m,2),E+=w(g,2),E+=w(r.crc32,4),E+=w(r.compressedSize,4),E+=w(r.uncompressedSize,4),E+=w(l.length,2),E+=w(b.length,2);var I=s.LOCAL_FILE_HEADER+E+l+b,B=s.CENTRAL_FILE_HEADER+w(A,2)+E+w(f.length,2)+"\0\0\0\0"+w(z,4)+w(n,4)+l+b+f;return{fileRecord:I,dirRecord:B,compressedObject:r}},B={load:function(t,e){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(t){var e=[],r,n,i,a;for(r in this.files)this.files.hasOwnProperty(r)&&(i=this.files[r],a=new b(i.name,i._data,v(i.options)),n=r.slice(this.root.length,r.length),r.slice(0,this.root.length)===this.root&&t(n,a)&&e.push(a));return e},file:function(t,e,r){if(1===arguments.length){if(i.isRegExp(t)){var n=t;return this.filter(function(t,e){return!e.dir&&n.test(t)})}return this.filter(function(e,r){return!r.dir&&e===t})[0]||null}return t=this.root+t,k.call(this,t,e,r),this},folder:function(t){if(!t)return this;if(i.isRegExp(t))return this.filter(function(e,r){return r.dir&&t.test(e)});var e=this.root+t,r=A.call(this,e),n=this.clone();return n.root=r.name,n},remove:function(t){t=this.root+t;var e=this.files[t];if(e||("/"!=t.slice(-1)&&(t+="/"),e=this.files[t]),e&&!e.dir)delete this.files[t];else for(var r=this.filter(function(e,r){return r.name.slice(0,t.length)===t}),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(t){t=v(t||{},{base64:!0,compression:"STORE",compressionOptions:null,type:"base64",platform:"DOS",comment:null,mimeType:"application/zip"}),i.checkSupport(t.type),"darwin"!==t.platform&&"freebsd"!==t.platform&&"linux"!==t.platform&&"sunos"!==t.platform||(t.platform="UNIX"),"win32"===t.platform&&(t.platform="DOS");var e=[],r=0,n=0,a,o,h=i.transformTo("string",this.utf8encode(t.comment||this.comment||""));for(var f in this.files)if(this.files.hasOwnProperty(f)){var u=this.files[f],_=u.options.compression||t.compression.toUpperCase(),m=l[_];if(!m)throw new Error(_+" is not a valid compression method !");var g=u.options.compressionOptions||t.compressionOptions||{},b=E.call(this,u,m,g),y=I.call(this,f,u,b,r,t.platform);r+=y.fileRecord.length+b.compressedSize,n+=y.dirRecord.length,e.push(y)}var k="";k=s.CENTRAL_DIRECTORY_END+"\0\0\0\0"+w(e.length,2)+w(e.length,2)+w(n,4)+w(r,4)+w(h.length,2)+h;var x=t.type.toLowerCase();for(a="uint8array"===x||"arraybuffer"===x||"blob"===x||"nodebuffer"===x?new p(r+n+k.length):new c(r+n+k.length),o=0;o<e.length;o++)a.append(e[o].fileRecord),a.append(e[o].compressedObject.compressedContent);for(o=0;o<e.length;o++)a.append(e[o].dirRecord);a.append(k);var z=a.finalize();switch(t.type.toLowerCase()){case"uint8array":case"arraybuffer":case"nodebuffer":return i.transformTo(t.type.toLowerCase(),z);case"blob":return i.arrayBuffer2Blob(i.transformTo("arraybuffer",z),t.mimeType);case"base64":return t.base64?d.encode(z):z;default:return z}},crc32:function(t,e){return a(t,e)},utf8encode:function(t){return i.transformTo("string",u.utf8encode(t))},utf8decode:function(t){return u.utf8decode(t)}};e.exports=B},{"./base64":1,"./compressedObject":2,"./compressions":3,"./crc32":4,"./defaults":6,"./nodeBuffer":11,"./signature":14,"./stringWriter":16,"./support":17,"./uint8ArrayWriter":19,"./utf8":20,"./utils":21}],14:[function(t,e,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],15:[function(t,e,r){"use strict";function n(t,e){this.data=t,e||(this.data=a.string2binary(this.data)),this.length=this.data.length,this.index=0}var i=t("./dataReader"),a=t("./utils");n.prototype=new i,n.prototype.byteAt=function(t){return this.data.charCodeAt(t)},n.prototype.lastIndexOfSignature=function(t){return this.data.lastIndexOf(t)},n.prototype.readData=function(t){this.checkOffset(t);var e=this.data.slice(this.index,this.index+t);return this.index+=t,e},e.exports=n},{"./dataReader":5,"./utils":21}],16:[function(t,e,r){"use strict";var n=t("./utils"),i=function(){this.data=[]};i.prototype={append:function(t){t=n.transformTo("string",t),this.data.push(t)},finalize:function(){return this.data.join("")}},e.exports=i},{"./utils":21}],17:[function(t,e,r){(function(t){"use strict";if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer="undefined"!=typeof t,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var e=new ArrayBuffer(0);try{r.blob=0===new Blob([e],{type:"application/zip"}).size}catch(t){try{var n=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,i=new n;i.append(e),r.blob=0===i.getBlob("application/zip").size}catch(t){r.blob=!1}}}}).call(this,"undefined"!=typeof Buffer?Buffer:void 0)},{}],18:[function(t,e,r){"use strict";function n(t){t&&(this.data=t,this.length=this.data.length,this.index=0)}var i=t("./dataReader");n.prototype=new i,n.prototype.byteAt=function(t){return this.data[t]},n.prototype.lastIndexOfSignature=function(t){for(var e=t.charCodeAt(0),r=t.charCodeAt(1),n=t.charCodeAt(2),i=t.charCodeAt(3),a=this.length-4;a>=0;--a)if(this.data[a]===e&&this.data[a+1]===r&&this.data[a+2]===n&&this.data[a+3]===i)return a;return-1},n.prototype.readData=function(t){if(this.checkOffset(t),0===t)return new Uint8Array(0);var e=this.data.subarray(this.index,this.index+t);return this.index+=t,e},e.exports=n},{"./dataReader":5}],19:[function(t,e,r){"use strict";var n=t("./utils"),i=function(t){this.data=new Uint8Array(t),this.index=0};i.prototype={append:function(t){0!==t.length&&(t=n.transformTo("uint8array",t),this.data.set(t,this.index),this.index+=t.length)},finalize:function(){return this.data}},e.exports=i},{"./utils":21}],20:[function(t,e,r){"use strict";for(var n=t("./utils"),i=t("./support"),a=t("./nodeBuffer"),s=new Array(256),o=0;o<256;o++)s[o]=o>=252?6:o>=248?5:o>=240?4:o>=224?3:o>=192?2:1;s[254]=s[254]=1;var d=function(t){var e,r,n,a,s,o=t.length,d=0;for(a=0;a<o;a++)r=t.charCodeAt(a),55296===(64512&r)&&a+1<o&&(n=t.charCodeAt(a+1),56320===(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),a++)),d+=r<128?1:r<2048?2:r<65536?3:4;for(e=i.uint8array?new Uint8Array(d):new Array(d),s=0,a=0;s<d;a++)r=t.charCodeAt(a),55296===(64512&r)&&a+1<o&&(n=t.charCodeAt(a+1),56320===(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),a++)),r<128?e[s++]=r:r<2048?(e[s++]=192|r>>>6,e[s++]=128|63&r):r<65536?(e[s++]=224|r>>>12,e[s++]=128|r>>>6&63,e[s++]=128|63&r):(e[s++]=240|r>>>18,e[s++]=128|r>>>12&63,e[s++]=128|r>>>6&63,e[s++]=128|63&r);return e},l=function(t,e){var r;for(e=e||t.length,e>t.length&&(e=t.length),r=e-1;r>=0&&128===(192&t[r]);)r--;return r<0?e:0===r?e:r+s[t[r]]>e?r:e},h=function(t){var e,r,i,a,o,d=t.length,l=new Array(2*d);for(i=0,r=0;r<d;)if(a=t[r++],a<128)l[i++]=a;else if(o=s[a],o>4)l[i++]=65533,r+=o-1;else{for(a&=2===o?31:3===o?15:7;o>1&&r<d;)a=a<<6|63&t[r++],o--;o>1?l[i++]=65533:a<65536?l[i++]=a:(a-=65536,l[i++]=55296|a>>10&1023,l[i++]=56320|1023&a)}return l.length!==i&&(l.subarray?l=l.subarray(0,i):l.length=i),n.applyFromCharCode(l)};r.utf8encode=function t(e){return i.nodebuffer?a(e,"utf-8"):d(e)},r.utf8decode=function t(e){if(i.nodebuffer)return n.transformTo("nodebuffer",e).toString("utf-8");e=n.transformTo(i.uint8array?"uint8array":"array",e);for(var r=[],a=0,s=e.length,o=65536;a<s;){var d=l(e,Math.min(a+o,s));i.uint8array?r.push(h(e.subarray(a,d))):r.push(h(e.slice(a,d))),a=d}return r.join("")}},{"./nodeBuffer":11,"./support":17,"./utils":21}],21:[function(t,e,r){"use strict";function n(t){return t}function i(t,e){for(var r=0;r<t.length;++r)e[r]=255&t.charCodeAt(r);return e}function a(t){var e=65536,n=[],i=t.length,a=r.getTypeOf(t),s=0,o=!0;try{switch(a){case"uint8array":String.fromCharCode.apply(null,new Uint8Array(0));break;case"nodebuffer":String.fromCharCode.apply(null,l(0))}}catch(t){o=!1}if(!o){for(var d="",h=0;h<t.length;h++)d+=String.fromCharCode(t[h]);return d}for(;s<i&&e>1;)try{"array"===a||"nodebuffer"===a?n.push(String.fromCharCode.apply(null,t.slice(s,Math.min(s+e,i)))):n.push(String.fromCharCode.apply(null,t.subarray(s,Math.min(s+e,i)))),s+=e}catch(t){e=Math.floor(e/2)}return n.join("")}function s(t,e){for(var r=0;r<t.length;r++)e[r]=t[r];return e}var o=t("./support"),d=t("./compressions"),l=t("./nodeBuffer");r.string2binary=function(t){for(var e="",r=0;r<t.length;r++)e+=String.fromCharCode(255&t.charCodeAt(r));return e},r.arrayBuffer2Blob=function(t,e){r.checkSupport("blob"),e=e||"application/zip";try{return new Blob([t],{type:e})}catch(r){try{var n=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,i=new n;return i.append(t),i.getBlob(e)}catch(t){throw new Error("Bug : can't construct the Blob.")}}},r.applyFromCharCode=a;var h={};h.string={string:n,array:function(t){return i(t,new Array(t.length))},arraybuffer:function(t){return h.string.uint8array(t).buffer},uint8array:function(t){return i(t,new Uint8Array(t.length))},nodebuffer:function(t){return i(t,l(t.length))}},h.array={string:a,array:n,arraybuffer:function(t){return new Uint8Array(t).buffer},uint8array:function(t){return new Uint8Array(t)},nodebuffer:function(t){return l(t)}},h.arraybuffer={string:function(t){return a(new Uint8Array(t))},array:function(t){return s(new Uint8Array(t),new Array(t.byteLength))},arraybuffer:n,uint8array:function(t){return new Uint8Array(t)},nodebuffer:function(t){return l(new Uint8Array(t))}},h.uint8array={string:a,array:function(t){return s(t,new Array(t.length))},arraybuffer:function(t){return t.buffer},uint8array:n,nodebuffer:function(t){return l(t)}},h.nodebuffer={string:a,array:function(t){return s(t,new Array(t.length))},arraybuffer:function(t){return h.nodebuffer.uint8array(t).buffer},uint8array:function(t){return s(t,new Uint8Array(t.length))},nodebuffer:n},r.transformTo=function(t,e){if(e||(e=""),!t)return e;r.checkSupport(t);var n=r.getTypeOf(e),i=h[n][t](e);return i},r.getTypeOf=function(t){return"string"==typeof t?"string":"[object Array]"===Object.prototype.toString.call(t)?"array":o.nodebuffer&&l.test(t)?"nodebuffer":o.uint8array&&t instanceof Uint8Array?"uint8array":o.arraybuffer&&t instanceof ArrayBuffer?"arraybuffer":void 0},r.checkSupport=function(t){var e=o[t.toLowerCase()];if(!e)throw new Error(t+" is not supported by this browser")},r.MAX_VALUE_16BITS=65535,r.MAX_VALUE_32BITS=-1,r.pretty=function(t){var e="",r,n;for(n=0;n<(t||"").length;n++)r=t.charCodeAt(n),e+="\\x"+(r<16?"0":"")+r.toString(16).toUpperCase();return e},r.findCompression=function(t){for(var e in d)if(d.hasOwnProperty(e)&&d[e].magic===t)return d[e];return null},r.isRegExp=function(t){return"[object RegExp]"===Object.prototype.toString.call(t)}},{"./compressions":3,"./nodeBuffer":11,"./support":17}],22:[function(t,e,r){"use strict";function n(t,e){this.files=[],this.loadOptions=e,t&&this.load(t)}var i=t("./stringReader"),a=t("./nodeBufferReader"),s=t("./uint8ArrayReader"),o=t("./utils"),d=t("./signature"),l=t("./zipEntry"),h=t("./support"),f=t("./object");n.prototype={checkSignature:function(t){var e=this.reader.readString(4);if(e!==t)throw new Error("Corrupted zip or bug : unexpected signature ("+o.pretty(e)+", expected "+o.pretty(t)+")")},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2),this.zipComment=this.reader.readString(this.zipCommentLength),this.zipComment=f.utf8decode(this.zipComment)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.versionMadeBy=this.reader.readString(2),this.versionNeeded=this.reader.readInt(2),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var t=this.zip64EndOfCentralSize-44,e=0,r,n,i;e<t;)r=this.reader.readInt(2),n=this.reader.readInt(4),i=this.reader.readString(n),this.zip64ExtensibleData[r]={id:r,length:n,value:i}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var t,e;for(t=0;t<this.files.length;t++)e=this.files[t],this.reader.setIndex(e.localHeaderOffset),this.checkSignature(d.LOCAL_FILE_HEADER),e.readLocalPart(this.reader),e.handleUTF8(),e.processAttributes()},readCentralDir:function(){var t;for(this.reader.setIndex(this.centralDirOffset);this.reader.readString(4)===d.CENTRAL_FILE_HEADER;)t=new l({zip64:this.zip64},this.loadOptions),t.readCentralPart(this.reader),this.files.push(t)},readEndOfCentral:function(){var t=this.reader.lastIndexOfSignature(d.CENTRAL_DIRECTORY_END);if(t===-1){var e=!0;try{this.reader.setIndex(0),this.checkSignature(d.LOCAL_FILE_HEADER),e=!1}catch(t){}throw e?new Error("Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip : can't find end of central directory")}if(this.reader.setIndex(t),this.checkSignature(d.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===o.MAX_VALUE_16BITS||this.diskWithCentralDirStart===o.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===o.MAX_VALUE_16BITS||this.centralDirRecords===o.MAX_VALUE_16BITS||this.centralDirSize===o.MAX_VALUE_32BITS||this.centralDirOffset===o.MAX_VALUE_32BITS){if(this.zip64=!0,t=this.reader.lastIndexOfSignature(d.ZIP64_CENTRAL_DIRECTORY_LOCATOR),t===-1)throw new Error("Corrupted zip : can't find the ZIP64 end of central directory locator");this.reader.setIndex(t),this.checkSignature(d.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(d.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}},prepareReader:function(t){var e=o.getTypeOf(t);"string"!==e||h.uint8array?"nodebuffer"===e?this.reader=new a(t):this.reader=new s(o.transformTo("uint8array",t)):this.reader=new i(t,this.loadOptions.optimizedBinaryString)},load:function(t){this.prepareReader(t),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},e.exports=n},{"./nodeBufferReader":12,"./object":13,"./signature":14,"./stringReader":15,"./support":17,"./uint8ArrayReader":18,"./utils":21,"./zipEntry":23}],23:[function(t,e,r){"use strict";function n(t,e){this.options=t,this.loadOptions=e}var i=t("./stringReader"),a=t("./utils"),s=t("./compressedObject"),o=t("./object"),d=0,l=3;n.prototype={isEncrypted:function(){return 1===(1&this.bitFlag)},useUTF8:function(){return 2048===(2048&this.bitFlag)},prepareCompressedContent:function(t,e,r){return function(){var n=t.index;t.setIndex(e);var i=t.readData(r);return t.setIndex(n),i}},prepareContent:function(t,e,r,n,i){return function(){var t=a.transformTo(n.uncompressInputType,this.getCompressedContent()),e=n.uncompress(t);if(e.length!==i)throw new Error("Bug : uncompressed data size mismatch");return e}},readLocalPart:function(t){var e,r;if(t.skip(22),this.fileNameLength=t.readInt(2),r=t.readInt(2),this.fileName=t.readString(this.fileNameLength),t.skip(r),this.compressedSize==-1||this.uncompressedSize==-1)throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize == -1 || uncompressedSize == -1)");if(e=a.findCompression(this.compressionMethod),null===e)throw new Error("Corrupted zip : compression "+a.pretty(this.compressionMethod)+" unknown (inner file : "+this.fileName+")");if(this.decompressed=new s,this.decompressed.compressedSize=this.compressedSize,this.decompressed.uncompressedSize=this.uncompressedSize,this.decompressed.crc32=this.crc32,this.decompressed.compressionMethod=this.compressionMethod,this.decompressed.getCompressedContent=this.prepareCompressedContent(t,t.index,this.compressedSize,e),this.decompressed.getContent=this.prepareContent(t,t.index,this.compressedSize,e,this.uncompressedSize),this.loadOptions.checkCRC32&&(this.decompressed=a.transformTo("string",this.decompressed.getContent()),o.crc32(this.decompressed)!==this.crc32))throw new Error("Corrupted zip : CRC32 mismatch")},readCentralPart:function(t){if(this.versionMadeBy=t.readInt(2),this.versionNeeded=t.readInt(2),this.bitFlag=t.readInt(2),this.compressionMethod=t.readString(2),this.date=t.readDate(),this.crc32=t.readInt(4),this.compressedSize=t.readInt(4),this.uncompressedSize=t.readInt(4),this.fileNameLength=t.readInt(2),this.extraFieldsLength=t.readInt(2),this.fileCommentLength=t.readInt(2),this.diskNumberStart=t.readInt(2),this.internalFileAttributes=t.readInt(2),this.externalFileAttributes=t.readInt(4),this.localHeaderOffset=t.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");this.fileName=t.readString(this.fileNameLength),this.readExtraFields(t),this.parseZIP64ExtraField(t),this.fileComment=t.readString(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var t=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),t===d&&(this.dosPermissions=63&this.externalFileAttributes),t===l&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileName.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(t){if(this.extraFields[1]){var e=new i(this.extraFields[1].value);this.uncompressedSize===a.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===a.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===a.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===a.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(t){var e=t.index,r,n,i;for(this.extraFields=this.extraFields||{};t.index<e+this.extraFieldsLength;)r=t.readInt(2),n=t.readInt(2),i=t.readString(n),this.extraFields[r]={id:r,length:n,value:i}},handleUTF8:function(){if(this.useUTF8())this.fileName=o.utf8decode(this.fileName),this.fileComment=o.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();null!==t&&(this.fileName=t);var e=this.findExtraFieldUnicodeComment();
null!==e&&(this.fileComment=e)}},findExtraFieldUnicodePath:function(){var t=this.extraFields[28789];if(t){var e=new i(t.value);return 1!==e.readInt(1)?null:o.crc32(this.fileName)!==e.readInt(4)?null:o.utf8decode(e.readString(t.length-5))}return null},findExtraFieldUnicodeComment:function(){var t=this.extraFields[25461];if(t){var e=new i(t.value);return 1!==e.readInt(1)?null:o.crc32(this.fileComment)!==e.readInt(4)?null:o.utf8decode(e.readString(t.length-5))}return null}},e.exports=n},{"./compressedObject":2,"./object":13,"./stringReader":15,"./utils":21}],24:[function(t,e,r){"use strict";var n=t("./lib/utils/common").assign,i=t("./lib/deflate"),a=t("./lib/inflate"),s=t("./lib/zlib/constants"),o={};n(o,i,a,s),e.exports=o},{"./lib/deflate":25,"./lib/inflate":26,"./lib/utils/common":27,"./lib/zlib/constants":30}],25:[function(t,e,r){"use strict";function n(t,e){var r=new b(e);if(r.push(t,!0),r.err)throw r.msg;return r.result}function i(t,e){return e=e||{},e.raw=!0,n(t,e)}function a(t,e){return e=e||{},e.gzip=!0,n(t,e)}var s=t("./zlib/deflate.js"),o=t("./utils/common"),d=t("./utils/strings"),l=t("./zlib/messages"),h=t("./zlib/zstream"),f=0,u=4,c=0,p=1,_=-1,m=0,g=8,b=function(t){this.options=o.assign({level:_,method:g,chunkSize:16384,windowBits:15,memLevel:8,strategy:m,to:""},t||{});var e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new h,this.strm.avail_out=0;var r=s.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==c)throw new Error(l[r]);e.header&&s.deflateSetHeader(this.strm,e.header)};b.prototype.push=function(t,e){var r=this.strm,n=this.options.chunkSize,i,a;if(this.ended)return!1;a=e===~~e?e:e===!0?u:f,"string"==typeof t?r.input=d.string2buf(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(0===r.avail_out&&(r.output=new o.Buf8(n),r.next_out=0,r.avail_out=n),i=s.deflate(r,a),i!==p&&i!==c)return this.onEnd(i),this.ended=!0,!1;(0===r.avail_out||0===r.avail_in&&a===u)&&("string"===this.options.to?this.onData(d.buf2binstring(o.shrinkBuf(r.output,r.next_out))):this.onData(o.shrinkBuf(r.output,r.next_out)))}while((r.avail_in>0||0===r.avail_out)&&i!==p);return a!==u||(i=s.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===c)},b.prototype.onData=function(t){this.chunks.push(t)},b.prototype.onEnd=function(t){t===c&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=o.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},r.Deflate=b,r.deflate=n,r.deflateRaw=i,r.gzip=a},{"./utils/common":27,"./utils/strings":28,"./zlib/deflate.js":32,"./zlib/messages":37,"./zlib/zstream":39}],26:[function(t,e,r){"use strict";function n(t,e){var r=new u(e);if(r.push(t,!0),r.err)throw r.msg;return r.result}function i(t,e){return e=e||{},e.raw=!0,n(t,e)}var a=t("./zlib/inflate.js"),s=t("./utils/common"),o=t("./utils/strings"),d=t("./zlib/constants"),l=t("./zlib/messages"),h=t("./zlib/zstream"),f=t("./zlib/gzheader"),u=function(t){this.options=s.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0===(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new h,this.strm.avail_out=0;var r=a.inflateInit2(this.strm,e.windowBits);if(r!==d.Z_OK)throw new Error(l[r]);this.header=new f,a.inflateGetHeader(this.strm,this.header)};u.prototype.push=function(t,e){var r=this.strm,n=this.options.chunkSize,i,l,h,f,u;if(this.ended)return!1;l=e===~~e?e:e===!0?d.Z_FINISH:d.Z_NO_FLUSH,"string"==typeof t?r.input=o.binstring2buf(t):r.input=t,r.next_in=0,r.avail_in=r.input.length;do{if(0===r.avail_out&&(r.output=new s.Buf8(n),r.next_out=0,r.avail_out=n),i=a.inflate(r,d.Z_NO_FLUSH),i!==d.Z_STREAM_END&&i!==d.Z_OK)return this.onEnd(i),this.ended=!0,!1;r.next_out&&(0===r.avail_out||i===d.Z_STREAM_END||0===r.avail_in&&l===d.Z_FINISH)&&("string"===this.options.to?(h=o.utf8border(r.output,r.next_out),f=r.next_out-h,u=o.buf2string(r.output,h),r.next_out=f,r.avail_out=n-f,f&&s.arraySet(r.output,r.output,h,f,0),this.onData(u)):this.onData(s.shrinkBuf(r.output,r.next_out)))}while(r.avail_in>0&&i!==d.Z_STREAM_END);return i===d.Z_STREAM_END&&(l=d.Z_FINISH),l!==d.Z_FINISH||(i=a.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===d.Z_OK)},u.prototype.onData=function(t){this.chunks.push(t)},u.prototype.onEnd=function(t){t===d.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=s.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},r.Inflate=u,r.inflate=n,r.inflateRaw=i,r.ungzip=n},{"./utils/common":27,"./utils/strings":28,"./zlib/constants":30,"./zlib/gzheader":33,"./zlib/inflate.js":35,"./zlib/messages":37,"./zlib/zstream":39}],27:[function(t,e,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;r.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var r=e.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)r.hasOwnProperty(n)&&(t[n]=r[n])}}return t},r.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var i={arraySet:function(t,e,r,n,i){if(e.subarray&&t.subarray)return void t.set(e.subarray(r,r+n),i);for(var a=0;a<n;a++)t[i+a]=e[r+a]},flattenChunks:function(t){var e,r,n,i,a,s;for(n=0,e=0,r=t.length;e<r;e++)n+=t[e].length;for(s=new Uint8Array(n),i=0,e=0,r=t.length;e<r;e++)a=t[e],s.set(a,i),i+=a.length;return s}},a={arraySet:function(t,e,r,n,i){for(var a=0;a<n;a++)t[i+a]=e[r+a]},flattenChunks:function(t){return[].concat.apply([],t)}};r.setTyped=function(t){t?(r.Buf8=Uint8Array,r.Buf16=Uint16Array,r.Buf32=Int32Array,r.assign(r,i)):(r.Buf8=Array,r.Buf16=Array,r.Buf32=Array,r.assign(r,a))},r.setTyped(n)},{}],28:[function(t,e,r){"use strict";function n(t,e){if(e<65537&&(t.subarray&&s||!t.subarray&&a))return String.fromCharCode.apply(null,i.shrinkBuf(t,e));for(var r="",n=0;n<e;n++)r+=String.fromCharCode(t[n]);return r}var i=t("./common"),a=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(t){a=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){s=!1}for(var o=new i.Buf8(256),d=0;d<256;d++)o[d]=d>=252?6:d>=248?5:d>=240?4:d>=224?3:d>=192?2:1;o[254]=o[254]=1,r.string2buf=function(t){var e,r,n,a,s,o=t.length,d=0;for(a=0;a<o;a++)r=t.charCodeAt(a),55296===(64512&r)&&a+1<o&&(n=t.charCodeAt(a+1),56320===(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),a++)),d+=r<128?1:r<2048?2:r<65536?3:4;for(e=new i.Buf8(d),s=0,a=0;s<d;a++)r=t.charCodeAt(a),55296===(64512&r)&&a+1<o&&(n=t.charCodeAt(a+1),56320===(64512&n)&&(r=65536+(r-55296<<10)+(n-56320),a++)),r<128?e[s++]=r:r<2048?(e[s++]=192|r>>>6,e[s++]=128|63&r):r<65536?(e[s++]=224|r>>>12,e[s++]=128|r>>>6&63,e[s++]=128|63&r):(e[s++]=240|r>>>18,e[s++]=128|r>>>12&63,e[s++]=128|r>>>6&63,e[s++]=128|63&r);return e},r.buf2binstring=function(t){return n(t,t.length)},r.binstring2buf=function(t){for(var e=new i.Buf8(t.length),r=0,n=e.length;r<n;r++)e[r]=t.charCodeAt(r);return e},r.buf2string=function(t,e){var r,i,a,s,d=e||t.length,l=new Array(2*d);for(i=0,r=0;r<d;)if(a=t[r++],a<128)l[i++]=a;else if(s=o[a],s>4)l[i++]=65533,r+=s-1;else{for(a&=2===s?31:3===s?15:7;s>1&&r<d;)a=a<<6|63&t[r++],s--;s>1?l[i++]=65533:a<65536?l[i++]=a:(a-=65536,l[i++]=55296|a>>10&1023,l[i++]=56320|1023&a)}return n(l,i)},r.utf8border=function(t,e){var r;for(e=e||t.length,e>t.length&&(e=t.length),r=e-1;r>=0&&128===(192&t[r]);)r--;return r<0?e:0===r?e:r+o[t[r]]>e?r:e}},{"./common":27}],29:[function(t,e,r){"use strict";function n(t,e,r,n){for(var i=65535&t|0,a=t>>>16&65535|0,s=0;0!==r;){s=r>2e3?2e3:r,r-=s;do i=i+e[n++]|0,a=a+i|0;while(--s);i%=65521,a%=65521}return i|a<<16|0}e.exports=n},{}],30:[function(t,e,r){e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],31:[function(t,e,r){"use strict";function n(){for(var t,e=[],r=0;r<256;r++){t=r;for(var n=0;n<8;n++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e}function i(t,e,r,n){var i=a,s=n+r;t^=-1;for(var o=n;o<s;o++)t=t>>>8^i[255&(t^e[o])];return t^-1}var a=n();e.exports=i},{}],32:[function(t,e,r){"use strict";function n(t,e){return t.msg=O[e],e}function i(t){return(t<<1)-(t>4?9:0)}function a(t){for(var e=t.length;--e>=0;)t[e]=0}function s(t){var e=t.state,r=e.pending;r>t.avail_out&&(r=t.avail_out),0!==r&&(S.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,0===e.pending&&(e.pending_out=0))}function o(t,e){C._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,s(t.strm)}function d(t,e){t.pending_buf[t.pending++]=e}function l(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function h(t,e,r,n){var i=t.avail_in;return i>n&&(i=n),0===i?0:(t.avail_in-=i,S.arraySet(e,t.input,t.next_in,i,r),1===t.state.wrap?t.adler=I(t.adler,e,i,r):2===t.state.wrap&&(t.adler=B(t.adler,e,i,r)),t.next_in+=i,t.total_in+=i,i)}function f(t,e){var r=t.max_chain_length,n=t.strstart,i,a,s=t.prev_length,o=t.nice_match,d=t.strstart>t.w_size-dt?t.strstart-(t.w_size-dt):0,l=t.window,h=t.w_mask,f=t.prev,u=t.strstart+ot,c=l[n+s-1],p=l[n+s];t.prev_length>=t.good_match&&(r>>=2),o>t.lookahead&&(o=t.lookahead);do if(i=e,l[i+s]===p&&l[i+s-1]===c&&l[i]===l[n]&&l[++i]===l[n+1]){n+=2,i++;do;while(l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&l[++n]===l[++i]&&n<u);if(a=ot-(u-n),n=u-ot,a>s){if(t.match_start=e,s=a,a>=o)break;c=l[n+s-1],p=l[n+s]}}while((e=f[e&h])>d&&0!==--r);return s<=t.lookahead?s:t.lookahead}function u(t){var e=t.w_size,r,n,i,a,s;do{if(a=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-dt)){S.arraySet(t.window,t.window,e,e,0),t.match_start-=e,t.strstart-=e,t.block_start-=e,n=t.hash_size,r=n;do i=t.head[--r],t.head[r]=i>=e?i-e:0;while(--n);n=e,r=n;do i=t.prev[--r],t.prev[r]=i>=e?i-e:0;while(--n);a+=e}if(0===t.strm.avail_in)break;if(n=h(t.strm,t.window,t.strstart+t.lookahead,a),t.lookahead+=n,t.lookahead+t.insert>=st)for(s=t.strstart-t.insert,t.ins_h=t.window[s],t.ins_h=(t.ins_h<<t.hash_shift^t.window[s+1])&t.hash_mask;t.insert&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[s+st-1])&t.hash_mask,t.prev[s&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=s,s++,t.insert--,!(t.lookahead+t.insert<st)););}while(t.lookahead<dt&&0!==t.strm.avail_in)}function c(t,e){var r=65535;for(r>t.pending_buf_size-5&&(r=t.pending_buf_size-5);;){if(t.lookahead<=1){if(u(t),0===t.lookahead&&e===R)return gt;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var n=t.block_start+r;if((0===t.strstart||t.strstart>=n)&&(t.lookahead=t.strstart-n,t.strstart=n,o(t,!1),0===t.strm.avail_out))return gt;if(t.strstart-t.block_start>=t.w_size-dt&&(o(t,!1),0===t.strm.avail_out))return gt}return t.insert=0,e===L?(o(t,!0),0===t.strm.avail_out?wt:vt):t.strstart>t.block_start&&(o(t,!1),0===t.strm.avail_out)?gt:gt}function p(t,e){for(var r,n;;){if(t.lookahead<dt){if(u(t),t.lookahead<dt&&e===R)return gt;if(0===t.lookahead)break}if(r=0,t.lookahead>=st&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+st-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==r&&t.strstart-r<=t.w_size-dt&&(t.match_length=f(t,r)),t.match_length>=st)if(n=C._tr_tally(t,t.strstart-t.match_start,t.match_length-st),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=st){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+st-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart;while(0!==--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+1])&t.hash_mask;else n=C._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(n&&(o(t,!1),0===t.strm.avail_out))return gt}return t.insert=t.strstart<st-1?t.strstart:st-1,e===L?(o(t,!0),0===t.strm.avail_out?wt:vt):t.last_lit&&(o(t,!1),0===t.strm.avail_out)?gt:bt}function _(t,e){for(var r,n,i;;){if(t.lookahead<dt){if(u(t),t.lookahead<dt&&e===R)return gt;if(0===t.lookahead)break}if(r=0,t.lookahead>=st&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+st-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=st-1,0!==r&&t.prev_length<t.max_lazy_match&&t.strstart-r<=t.w_size-dt&&(t.match_length=f(t,r),t.match_length<=5&&(t.strategy===H||t.match_length===st&&t.strstart-t.match_start>4096)&&(t.match_length=st-1)),t.prev_length>=st&&t.match_length<=t.prev_length){i=t.strstart+t.lookahead-st,n=C._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-st),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=i&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+st-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart);while(0!==--t.prev_length);if(t.match_available=0,t.match_length=st-1,t.strstart++,n&&(o(t,!1),0===t.strm.avail_out))return gt}else if(t.match_available){if(n=C._tr_tally(t,0,t.window[t.strstart-1]),n&&o(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return gt}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(n=C._tr_tally(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<st-1?t.strstart:st-1,e===L?(o(t,!0),0===t.strm.avail_out?wt:vt):t.last_lit&&(o(t,!1),0===t.strm.avail_out)?gt:bt}function m(t,e){for(var r,n,i,a,s=t.window;;){if(t.lookahead<=ot){if(u(t),t.lookahead<=ot&&e===R)return gt;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=st&&t.strstart>0&&(i=t.strstart-1,n=s[i],n===s[++i]&&n===s[++i]&&n===s[++i])){a=t.strstart+ot;do;while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<a);t.match_length=ot-(a-i),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=st?(r=C._tr_tally(t,1,t.match_length-st),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=C._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(o(t,!1),0===t.strm.avail_out))return gt}return t.insert=0,e===L?(o(t,!0),0===t.strm.avail_out?wt:vt):t.last_lit&&(o(t,!1),0===t.strm.avail_out)?gt:bt}function g(t,e){for(var r;;){if(0===t.lookahead&&(u(t),0===t.lookahead)){if(e===R)return gt;break}if(t.match_length=0,r=C._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(o(t,!1),0===t.strm.avail_out))return gt}return t.insert=0,e===L?(o(t,!0),0===t.strm.avail_out?wt:vt):t.last_lit&&(o(t,!1),0===t.strm.avail_out)?gt:bt}function b(t){t.window_size=2*t.w_size,a(t.head),t.max_lazy_match=xt[t.level].max_lazy,t.good_match=xt[t.level].good_length,t.nice_match=xt[t.level].nice_length,t.max_chain_length=xt[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=st-1,t.match_available=0,t.ins_h=0}function w(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=q,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new S.Buf16(2*it),this.dyn_dtree=new S.Buf16(2*(2*rt+1)),this.bl_tree=new S.Buf16(2*(2*nt+1)),a(this.dyn_ltree),a(this.dyn_dtree),a(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new S.Buf16(at+1),this.heap=new S.Buf16(2*et+1),a(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new S.Buf16(2*et+1),a(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function v(t){var e;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=W,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?ht:_t,t.adler=2===e.wrap?0:1,e.last_flush=R,C._tr_init(e),U):n(t,P)}function y(t){var e=v(t);return e===U&&b(t.state),e}function k(t,e){return t&&t.state?2!==t.state.wrap?P:(t.state.gzhead=e,U):P}function x(t,e,r,i,a,s){if(!t)return P;var o=1;if(e===j&&(e=6),i<0?(o=0,i=-i):i>15&&(o=2,i-=16),a<1||a>G||r!==q||i<8||i>15||e<0||e>9||s<0||s>V)return n(t,P);8===i&&(i=9);var d=new w;return t.state=d,d.strm=t,d.wrap=o,d.gzhead=null,d.w_bits=i,d.w_size=1<<d.w_bits,d.w_mask=d.w_size-1,d.hash_bits=a+7,d.hash_size=1<<d.hash_bits,d.hash_mask=d.hash_size-1,d.hash_shift=~~((d.hash_bits+st-1)/st),d.window=new S.Buf8(2*d.w_size),d.head=new S.Buf16(d.hash_size),d.prev=new S.Buf16(d.w_size),d.lit_bufsize=1<<a+6,d.pending_buf_size=4*d.lit_bufsize,d.pending_buf=new S.Buf8(d.pending_buf_size),d.d_buf=d.lit_bufsize>>1,d.l_buf=3*d.lit_bufsize,d.level=e,d.strategy=s,d.method=r,y(t)}function z(t,e){return x(t,e,q,J,Q,Y)}function A(t,e){var r,o,h,f;if(!t||!t.state||e>N||e<0)return t?n(t,P):P;if(o=t.state,!t.output||!t.input&&0!==t.avail_in||o.status===mt&&e!==L)return n(t,0===t.avail_out?M:P);if(o.strm=t,r=o.last_flush,o.last_flush=e,o.status===ht)if(2===o.wrap)t.adler=0,d(o,31),d(o,139),d(o,8),o.gzhead?(d(o,(o.gzhead.text?1:0)+(o.gzhead.hcrc?2:0)+(o.gzhead.extra?4:0)+(o.gzhead.name?8:0)+(o.gzhead.comment?16:0)),d(o,255&o.gzhead.time),d(o,o.gzhead.time>>8&255),d(o,o.gzhead.time>>16&255),d(o,o.gzhead.time>>24&255),d(o,9===o.level?2:o.strategy>=X||o.level<2?4:0),d(o,255&o.gzhead.os),o.gzhead.extra&&o.gzhead.extra.length&&(d(o,255&o.gzhead.extra.length),d(o,o.gzhead.extra.length>>8&255)),o.gzhead.hcrc&&(t.adler=B(t.adler,o.pending_buf,o.pending,0)),o.gzindex=0,o.status=ft):(d(o,0),d(o,0),d(o,0),d(o,0),d(o,0),d(o,9===o.level?2:o.strategy>=X||o.level<2?4:0),d(o,yt),o.status=_t);else{var u=q+(o.w_bits-8<<4)<<8,c=-1;c=o.strategy>=X||o.level<2?0:o.level<6?1:6===o.level?2:3,u|=c<<6,0!==o.strstart&&(u|=lt),u+=31-u%31,o.status=_t,l(o,u),0!==o.strstart&&(l(o,t.adler>>>16),l(o,65535&t.adler)),t.adler=1}if(o.status===ft)if(o.gzhead.extra){for(h=o.pending;o.gzindex<(65535&o.gzhead.extra.length)&&(o.pending!==o.pending_buf_size||(o.gzhead.hcrc&&o.pending>h&&(t.adler=B(t.adler,o.pending_buf,o.pending-h,h)),s(t),h=o.pending,o.pending!==o.pending_buf_size));)d(o,255&o.gzhead.extra[o.gzindex]),o.gzindex++;o.gzhead.hcrc&&o.pending>h&&(t.adler=B(t.adler,o.pending_buf,o.pending-h,h)),o.gzindex===o.gzhead.extra.length&&(o.gzindex=0,o.status=ut)}else o.status=ut;if(o.status===ut)if(o.gzhead.name){h=o.pending;do{if(o.pending===o.pending_buf_size&&(o.gzhead.hcrc&&o.pending>h&&(t.adler=B(t.adler,o.pending_buf,o.pending-h,h)),s(t),h=o.pending,o.pending===o.pending_buf_size)){f=1;break}f=o.gzindex<o.gzhead.name.length?255&o.gzhead.name.charCodeAt(o.gzindex++):0,d(o,f)}while(0!==f);o.gzhead.hcrc&&o.pending>h&&(t.adler=B(t.adler,o.pending_buf,o.pending-h,h)),0===f&&(o.gzindex=0,o.status=ct)}else o.status=ct;if(o.status===ct)if(o.gzhead.comment){h=o.pending;do{if(o.pending===o.pending_buf_size&&(o.gzhead.hcrc&&o.pending>h&&(t.adler=B(t.adler,o.pending_buf,o.pending-h,h)),s(t),h=o.pending,o.pending===o.pending_buf_size)){f=1;break}f=o.gzindex<o.gzhead.comment.length?255&o.gzhead.comment.charCodeAt(o.gzindex++):0,d(o,f)}while(0!==f);o.gzhead.hcrc&&o.pending>h&&(t.adler=B(t.adler,o.pending_buf,o.pending-h,h)),0===f&&(o.status=pt)}else o.status=pt;if(o.status===pt&&(o.gzhead.hcrc?(o.pending+2>o.pending_buf_size&&s(t),o.pending+2<=o.pending_buf_size&&(d(o,255&t.adler),d(o,t.adler>>8&255),t.adler=0,o.status=_t)):o.status=_t),0!==o.pending){if(s(t),0===t.avail_out)return o.last_flush=-1,U}else if(0===t.avail_in&&i(e)<=i(r)&&e!==L)return n(t,M);if(o.status===mt&&0!==t.avail_in)return n(t,M);if(0!==t.avail_in||0!==o.lookahead||e!==R&&o.status!==mt){var p=o.strategy===X?g(o,e):o.strategy===K?m(o,e):xt[o.level].func(o,e);if(p!==wt&&p!==vt||(o.status=mt),p===gt||p===wt)return 0===t.avail_out&&(o.last_flush=-1),U;if(p===bt&&(e===T?C._tr_align(o):e!==N&&(C._tr_stored_block(o,0,0,!1),e===D&&(a(o.head),0===o.lookahead&&(o.strstart=0,o.block_start=0,o.insert=0))),s(t),0===t.avail_out))return o.last_flush=-1,U}return e!==L?U:o.wrap<=0?F:(2===o.wrap?(d(o,255&t.adler),d(o,t.adler>>8&255),d(o,t.adler>>16&255),d(o,t.adler>>24&255),d(o,255&t.total_in),d(o,t.total_in>>8&255),d(o,t.total_in>>16&255),d(o,t.total_in>>24&255)):(l(o,t.adler>>>16),l(o,65535&t.adler)),s(t),o.wrap>0&&(o.wrap=-o.wrap),0!==o.pending?U:F)}function E(t){var e;return t&&t.state?(e=t.state.status,e!==ht&&e!==ft&&e!==ut&&e!==ct&&e!==pt&&e!==_t&&e!==mt?n(t,P):(t.state=null,e===_t?n(t,Z):U)):P}var S=t("../utils/common"),C=t("./trees"),I=t("./adler32"),B=t("./crc32"),O=t("./messages"),R=0,T=1,D=3,L=4,N=5,U=0,F=1,P=-2,Z=-3,M=-5,j=-1,H=1,X=2,K=3,V=4,Y=0,W=2,q=8,G=9,J=15,Q=8,$=29,tt=256,et=tt+1+$,rt=30,nt=19,it=2*et+1,at=15,st=3,ot=258,dt=ot+st+1,lt=32,ht=42,ft=69,ut=73,ct=91,pt=103,_t=113,mt=666,gt=1,bt=2,wt=3,vt=4,yt=3,kt=function(t,e,r,n,i){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=n,this.func=i},xt;xt=[new kt(0,0,0,0,c),new kt(4,4,8,4,p),new kt(4,5,16,8,p),new kt(4,6,32,32,p),new kt(4,4,16,16,_),new kt(8,16,32,32,_),new kt(8,16,128,128,_),new kt(8,32,128,256,_),new kt(32,128,258,1024,_),new kt(32,258,258,4096,_)],r.deflateInit=z,r.deflateInit2=x,r.deflateReset=y,r.deflateResetKeep=v,r.deflateSetHeader=k,r.deflate=A,r.deflateEnd=E,r.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./messages":37,"./trees":38}],33:[function(t,e,r){"use strict";function n(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}e.exports=n},{}],34:[function(t,e,r){"use strict";var n=30,i=12;e.exports=function t(e,r){var a,s,o,d,l,h,f,u,c,p,_,m,g,b,w,v,y,k,x,z,A,E,S,C,I;a=e.state,s=e.next_in,C=e.input,o=s+(e.avail_in-5),d=e.next_out,I=e.output,l=d-(r-e.avail_out),h=d+(e.avail_out-257),f=a.dmax,u=a.wsize,c=a.whave,p=a.wnext,_=a.window,m=a.hold,g=a.bits,b=a.lencode,w=a.distcode,v=(1<<a.lenbits)-1,y=(1<<a.distbits)-1;t:do{g<15&&(m+=C[s++]<<g,g+=8,m+=C[s++]<<g,g+=8),k=b[m&v];e:for(;;){if(x=k>>>24,m>>>=x,g-=x,x=k>>>16&255,0===x)I[d++]=65535&k;else{if(!(16&x)){if(0===(64&x)){k=b[(65535&k)+(m&(1<<x)-1)];continue e}if(32&x){a.mode=i;break t}e.msg="invalid literal/length code",a.mode=n;break t}z=65535&k,x&=15,x&&(g<x&&(m+=C[s++]<<g,g+=8),z+=m&(1<<x)-1,m>>>=x,g-=x),g<15&&(m+=C[s++]<<g,g+=8,m+=C[s++]<<g,g+=8),k=w[m&y];r:for(;;){if(x=k>>>24,m>>>=x,g-=x,x=k>>>16&255,!(16&x)){if(0===(64&x)){k=w[(65535&k)+(m&(1<<x)-1)];continue r}e.msg="invalid distance code",a.mode=n;break t}if(A=65535&k,x&=15,g<x&&(m+=C[s++]<<g,g+=8,g<x&&(m+=C[s++]<<g,g+=8)),A+=m&(1<<x)-1,A>f){e.msg="invalid distance too far back",a.mode=n;break t}if(m>>>=x,g-=x,x=d-l,A>x){if(x=A-x,x>c&&a.sane){e.msg="invalid distance too far back",a.mode=n;break t}if(E=0,S=_,0===p){if(E+=u-x,x<z){z-=x;do I[d++]=_[E++];while(--x);E=d-A,S=I}}else if(p<x){if(E+=u+p-x,x-=p,x<z){z-=x;do I[d++]=_[E++];while(--x);if(E=0,p<z){x=p,z-=x;do I[d++]=_[E++];while(--x);E=d-A,S=I}}}else if(E+=p-x,x<z){z-=x;do I[d++]=_[E++];while(--x);E=d-A,S=I}for(;z>2;)I[d++]=S[E++],I[d++]=S[E++],I[d++]=S[E++],z-=3;z&&(I[d++]=S[E++],z>1&&(I[d++]=S[E++]))}else{E=d-A;do I[d++]=I[E++],I[d++]=I[E++],I[d++]=I[E++],z-=3;while(z>2);z&&(I[d++]=I[E++],z>1&&(I[d++]=I[E++]))}break}}break}}while(s<o&&d<h);z=g>>3,s-=z,g-=z<<3,m&=(1<<g)-1,e.next_in=s,e.next_out=d,e.avail_in=s<o?5+(o-s):5-(s-o),e.avail_out=d<h?257+(h-d):257-(d-h),a.hold=m,a.bits=g}},{}],35:[function(t,e,r){"use strict";function n(t){return(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function i(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new _.Buf16(320),this.work=new _.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function a(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=D,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new _.Buf32(ut),e.distcode=e.distdyn=new _.Buf32(ct),e.sane=1,e.back=-1,E):I}function s(t){var e;return t&&t.state?(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,a(t)):I}function o(t,e){var r,n;return t&&t.state?(n=t.state,e<0?(r=0,e=-e):(r=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15)?I:(null!==n.window&&n.wbits!==e&&(n.window=null),n.wrap=r,n.wbits=e,s(t))):I}function d(t,e){var r,n;return t?(n=new i,t.state=n,n.window=null,r=o(t,e),r!==E&&(t.state=null),r):I}function l(t){return d(t,_t)}function h(t){if(mt){var e;for(gt=new _.Buf32(512),bt=new _.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(w(y,t.lens,0,288,gt,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;w(k,t.lens,0,32,bt,0,t.work,{bits:5}),mt=!1}t.lencode=gt,t.lenbits=9,t.distcode=bt,t.distbits=5}function f(t,e,r,n){var i,a=t.state;return null===a.window&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new _.Buf8(a.wsize)),n>=a.wsize?(_.arraySet(a.window,e,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i=a.wsize-a.wnext,i>n&&(i=n),_.arraySet(a.window,e,r-n,i,a.wnext),n-=i,n?(_.arraySet(a.window,e,r-n,n,0),a.wnext=n,a.whave=a.wsize):(a.wnext+=i,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=i))),0}function u(t,e){var r,i,a,s,o,d,l,u,c,p,ut,ct,pt,_t,mt=0,gt,bt,wt,vt,yt,kt,xt,zt,At=new _.Buf8(4),Et,St,Ct=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!t||!t.state||!t.output||!t.input&&0!==t.avail_in)return I;r=t.state,r.mode===K&&(r.mode=V),o=t.next_out,a=t.output,l=t.avail_out,s=t.next_in,i=t.input,d=t.avail_in,u=r.hold,c=r.bits,p=d,ut=l,zt=E;t:for(;;)switch(r.mode){case D:if(0===r.wrap){r.mode=V;break}for(;c<16;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(2&r.wrap&&35615===u){r.check=0,At[0]=255&u,At[1]=u>>>8&255,r.check=g(r.check,At,2,0),u=0,c=0,r.mode=L;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){t.msg="incorrect header check",r.mode=lt;break}if((15&u)!==T){t.msg="unknown compression method",r.mode=lt;break}if(u>>>=4,c-=4,xt=(15&u)+8,0===r.wbits)r.wbits=xt;else if(xt>r.wbits){t.msg="invalid window size",r.mode=lt;break}r.dmax=1<<xt,t.adler=r.check=1,r.mode=512&u?H:K,u=0,c=0;break;case L:for(;c<16;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(r.flags=u,(255&r.flags)!==T){t.msg="unknown compression method",r.mode=lt;break}if(57344&r.flags){t.msg="unknown header flags set",r.mode=lt;break}r.head&&(r.head.text=u>>8&1),512&r.flags&&(At[0]=255&u,At[1]=u>>>8&255,r.check=g(r.check,At,2,0)),u=0,c=0,r.mode=N;case N:for(;c<32;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}r.head&&(r.head.time=u),512&r.flags&&(At[0]=255&u,At[1]=u>>>8&255,At[2]=u>>>16&255,At[3]=u>>>24&255,r.check=g(r.check,At,4,0)),u=0,c=0,r.mode=U;case U:for(;c<16;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}r.head&&(r.head.xflags=255&u,r.head.os=u>>8),512&r.flags&&(At[0]=255&u,At[1]=u>>>8&255,r.check=g(r.check,At,2,0)),u=0,c=0,r.mode=F;case F:if(1024&r.flags){for(;c<16;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}r.length=u,r.head&&(r.head.extra_len=u),512&r.flags&&(At[0]=255&u,At[1]=u>>>8&255,r.check=g(r.check,At,2,0)),u=0,c=0}else r.head&&(r.head.extra=null);r.mode=P;case P:if(1024&r.flags&&(ct=r.length,ct>d&&(ct=d),ct&&(r.head&&(xt=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),_.arraySet(r.head.extra,i,s,ct,xt)),512&r.flags&&(r.check=g(r.check,i,ct,s)),d-=ct,s+=ct,r.length-=ct),r.length))break t;r.length=0,r.mode=Z;case Z:if(2048&r.flags){if(0===d)break t;ct=0;do xt=i[s+ct++],r.head&&xt&&r.length<65536&&(r.head.name+=String.fromCharCode(xt));while(xt&&ct<d);if(512&r.flags&&(r.check=g(r.check,i,ct,s)),d-=ct,s+=ct,xt)break t}else r.head&&(r.head.name=null);r.length=0,r.mode=M;case M:if(4096&r.flags){if(0===d)break t;ct=0;do xt=i[s+ct++],r.head&&xt&&r.length<65536&&(r.head.comment+=String.fromCharCode(xt));while(xt&&ct<d);if(512&r.flags&&(r.check=g(r.check,i,ct,s)),d-=ct,s+=ct,xt)break t}else r.head&&(r.head.comment=null);r.mode=j;case j:if(512&r.flags){for(;c<16;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(u!==(65535&r.check)){t.msg="header crc mismatch",r.mode=lt;break}u=0,c=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=K;break;case H:for(;c<32;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}t.adler=r.check=n(u),u=0,c=0,r.mode=X;case X:if(0===r.havedict)return t.next_out=o,t.avail_out=l,t.next_in=s,t.avail_in=d,r.hold=u,r.bits=c,C;t.adler=r.check=1,r.mode=K;case K:if(e===z||e===A)break t;case V:if(r.last){u>>>=7&c,c-=7&c,r.mode=st;break}for(;c<3;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}switch(r.last=1&u,u>>>=1,c-=1,3&u){case 0:r.mode=Y;break;case 1:if(h(r),r.mode=$,e===A){u>>>=2,c-=2;break t}break;case 2:r.mode=G;break;case 3:t.msg="invalid block type",r.mode=lt}u>>>=2,c-=2;break;case Y:for(u>>>=7&c,c-=7&c;c<32;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if((65535&u)!==(u>>>16^65535)){t.msg="invalid stored block lengths",r.mode=lt;break}if(r.length=65535&u,u=0,c=0,r.mode=W,e===A)break t;case W:r.mode=q;case q:if(ct=r.length){if(ct>d&&(ct=d),ct>l&&(ct=l),0===ct)break t;_.arraySet(a,i,s,ct,o),d-=ct,s+=ct,l-=ct,o+=ct,r.length-=ct;break}r.mode=K;break;case G:for(;c<14;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(r.nlen=(31&u)+257,u>>>=5,c-=5,r.ndist=(31&u)+1,u>>>=5,c-=5,r.ncode=(15&u)+4,u>>>=4,c-=4,r.nlen>286||r.ndist>30){t.msg="too many length or distance symbols",r.mode=lt;break}r.have=0,r.mode=J;case J:for(;r.have<r.ncode;){for(;c<3;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}r.lens[Ct[r.have++]]=7&u,u>>>=3,c-=3}for(;r.have<19;)r.lens[Ct[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,Et={bits:r.lenbits},zt=w(v,r.lens,0,19,r.lencode,0,r.work,Et),r.lenbits=Et.bits,zt){t.msg="invalid code lengths set",r.mode=lt;break}r.have=0,r.mode=Q;case Q:for(;r.have<r.nlen+r.ndist;){for(;mt=r.lencode[u&(1<<r.lenbits)-1],gt=mt>>>24,bt=mt>>>16&255,wt=65535&mt,!(gt<=c);){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(wt<16)u>>>=gt,c-=gt,r.lens[r.have++]=wt;else{if(16===wt){for(St=gt+2;c<St;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(u>>>=gt,c-=gt,0===r.have){t.msg="invalid bit length repeat",r.mode=lt;break}xt=r.lens[r.have-1],ct=3+(3&u),u>>>=2,c-=2}else if(17===wt){for(St=gt+3;c<St;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}u>>>=gt,c-=gt,xt=0,ct=3+(7&u),u>>>=3,c-=3}else{for(St=gt+7;c<St;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}u>>>=gt,c-=gt,xt=0,ct=11+(127&u),u>>>=7,c-=7}if(r.have+ct>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=lt;break}for(;ct--;)r.lens[r.have++]=xt}}if(r.mode===lt)break;if(0===r.lens[256]){t.msg="invalid code -- missing end-of-block",r.mode=lt;break}if(r.lenbits=9,Et={bits:r.lenbits},zt=w(y,r.lens,0,r.nlen,r.lencode,0,r.work,Et),r.lenbits=Et.bits,zt){t.msg="invalid literal/lengths set",r.mode=lt;break}if(r.distbits=6,r.distcode=r.distdyn,Et={bits:r.distbits
},zt=w(k,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,Et),r.distbits=Et.bits,zt){t.msg="invalid distances set",r.mode=lt;break}if(r.mode=$,e===A)break t;case $:r.mode=tt;case tt:if(d>=6&&l>=258){t.next_out=o,t.avail_out=l,t.next_in=s,t.avail_in=d,r.hold=u,r.bits=c,b(t,ut),o=t.next_out,a=t.output,l=t.avail_out,s=t.next_in,i=t.input,d=t.avail_in,u=r.hold,c=r.bits,r.mode===K&&(r.back=-1);break}for(r.back=0;mt=r.lencode[u&(1<<r.lenbits)-1],gt=mt>>>24,bt=mt>>>16&255,wt=65535&mt,!(gt<=c);){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(bt&&0===(240&bt)){for(vt=gt,yt=bt,kt=wt;mt=r.lencode[kt+((u&(1<<vt+yt)-1)>>vt)],gt=mt>>>24,bt=mt>>>16&255,wt=65535&mt,!(vt+gt<=c);){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}u>>>=vt,c-=vt,r.back+=vt}if(u>>>=gt,c-=gt,r.back+=gt,r.length=wt,0===bt){r.mode=at;break}if(32&bt){r.back=-1,r.mode=K;break}if(64&bt){t.msg="invalid literal/length code",r.mode=lt;break}r.extra=15&bt,r.mode=et;case et:if(r.extra){for(St=r.extra;c<St;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}r.length+=u&(1<<r.extra)-1,u>>>=r.extra,c-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=rt;case rt:for(;mt=r.distcode[u&(1<<r.distbits)-1],gt=mt>>>24,bt=mt>>>16&255,wt=65535&mt,!(gt<=c);){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(0===(240&bt)){for(vt=gt,yt=bt,kt=wt;mt=r.distcode[kt+((u&(1<<vt+yt)-1)>>vt)],gt=mt>>>24,bt=mt>>>16&255,wt=65535&mt,!(vt+gt<=c);){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}u>>>=vt,c-=vt,r.back+=vt}if(u>>>=gt,c-=gt,r.back+=gt,64&bt){t.msg="invalid distance code",r.mode=lt;break}r.offset=wt,r.extra=15&bt,r.mode=nt;case nt:if(r.extra){for(St=r.extra;c<St;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}r.offset+=u&(1<<r.extra)-1,u>>>=r.extra,c-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=lt;break}r.mode=it;case it:if(0===l)break t;if(ct=ut-l,r.offset>ct){if(ct=r.offset-ct,ct>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=lt;break}ct>r.wnext?(ct-=r.wnext,pt=r.wsize-ct):pt=r.wnext-ct,ct>r.length&&(ct=r.length),_t=r.window}else _t=a,pt=o-r.offset,ct=r.length;ct>l&&(ct=l),l-=ct,r.length-=ct;do a[o++]=_t[pt++];while(--ct);0===r.length&&(r.mode=tt);break;case at:if(0===l)break t;a[o++]=r.length,l--,r.mode=tt;break;case st:if(r.wrap){for(;c<32;){if(0===d)break t;d--,u|=i[s++]<<c,c+=8}if(ut-=l,t.total_out+=ut,r.total+=ut,ut&&(t.adler=r.check=r.flags?g(r.check,a,ut,o-ut):m(r.check,a,ut,o-ut)),ut=l,(r.flags?u:n(u))!==r.check){t.msg="incorrect data check",r.mode=lt;break}u=0,c=0}r.mode=ot;case ot:if(r.wrap&&r.flags){for(;c<32;){if(0===d)break t;d--,u+=i[s++]<<c,c+=8}if(u!==(4294967295&r.total)){t.msg="incorrect length check",r.mode=lt;break}u=0,c=0}r.mode=dt;case dt:zt=S;break t;case lt:zt=B;break t;case ht:return O;case ft:default:return I}return t.next_out=o,t.avail_out=l,t.next_in=s,t.avail_in=d,r.hold=u,r.bits=c,(r.wsize||ut!==t.avail_out&&r.mode<lt&&(r.mode<st||e!==x))&&f(t,t.output,t.next_out,ut-t.avail_out)?(r.mode=ht,O):(p-=t.avail_in,ut-=t.avail_out,t.total_in+=p,t.total_out+=ut,r.total+=ut,r.wrap&&ut&&(t.adler=r.check=r.flags?g(r.check,a,ut,t.next_out-ut):m(r.check,a,ut,t.next_out-ut)),t.data_type=r.bits+(r.last?64:0)+(r.mode===K?128:0)+(r.mode===$||r.mode===W?256:0),(0===p&&0===ut||e===x)&&zt===E&&(zt=R),zt)}function c(t){if(!t||!t.state)return I;var e=t.state;return e.window&&(e.window=null),t.state=null,E}function p(t,e){var r;return t&&t.state?(r=t.state,0===(2&r.wrap)?I:(r.head=e,e.done=!1,E)):I}var _=t("../utils/common"),m=t("./adler32"),g=t("./crc32"),b=t("./inffast"),w=t("./inftrees"),v=0,y=1,k=2,x=4,z=5,A=6,E=0,S=1,C=2,I=-2,B=-3,O=-4,R=-5,T=8,D=1,L=2,N=3,U=4,F=5,P=6,Z=7,M=8,j=9,H=10,X=11,K=12,V=13,Y=14,W=15,q=16,G=17,J=18,Q=19,$=20,tt=21,et=22,rt=23,nt=24,it=25,at=26,st=27,ot=28,dt=29,lt=30,ht=31,ft=32,ut=852,ct=592,pt=15,_t=pt,mt=!0,gt,bt;r.inflateReset=s,r.inflateReset2=o,r.inflateResetKeep=a,r.inflateInit=l,r.inflateInit2=d,r.inflate=u,r.inflateEnd=c,r.inflateGetHeader=p,r.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":27,"./adler32":29,"./crc32":31,"./inffast":34,"./inftrees":36}],36:[function(t,e,r){"use strict";var n=t("../utils/common"),i=15,a=852,s=592,o=0,d=1,l=2,h=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],f=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],u=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],c=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function t(e,r,p,_,m,g,b,w){var v=w.bits,y=0,k=0,x=0,z=0,A=0,E=0,S=0,C=0,I=0,B=0,O,R,T,D,L,N=null,U=0,F,P=new n.Buf16(i+1),Z=new n.Buf16(i+1),M=null,j=0,H,X,K;for(y=0;y<=i;y++)P[y]=0;for(k=0;k<_;k++)P[r[p+k]]++;for(A=v,z=i;z>=1&&0===P[z];z--);if(A>z&&(A=z),0===z)return m[g++]=20971520,m[g++]=20971520,w.bits=1,0;for(x=1;x<z&&0===P[x];x++);for(A<x&&(A=x),C=1,y=1;y<=i;y++)if(C<<=1,C-=P[y],C<0)return-1;if(C>0&&(e===o||1!==z))return-1;for(Z[1]=0,y=1;y<i;y++)Z[y+1]=Z[y]+P[y];for(k=0;k<_;k++)0!==r[p+k]&&(b[Z[r[p+k]]++]=k);if(e===o?(N=M=b,F=19):e===d?(N=h,U-=257,M=f,j-=257,F=256):(N=u,M=c,F=-1),B=0,k=0,y=x,L=g,E=A,S=0,T=-1,I=1<<A,D=I-1,e===d&&I>a||e===l&&I>s)return 1;for(var V=0;;){V++,H=y-S,b[k]<F?(X=0,K=b[k]):b[k]>F?(X=M[j+b[k]],K=N[U+b[k]]):(X=96,K=0),O=1<<y-S,R=1<<E,x=R;do R-=O,m[L+(B>>S)+R]=H<<24|X<<16|K|0;while(0!==R);for(O=1<<y-1;B&O;)O>>=1;if(0!==O?(B&=O-1,B+=O):B=0,k++,0===--P[y]){if(y===z)break;y=r[p+b[k]]}if(y>A&&(B&D)!==T){for(0===S&&(S=A),L+=x,E=y-S,C=1<<E;E+S<z&&(C-=P[E+S],!(C<=0));)E++,C<<=1;if(I+=1<<E,e===d&&I>a||e===l&&I>s)return 1;T=B&D,m[T]=A<<24|E<<16|L-g|0}}return 0!==B&&(m[L+B]=y-S<<24|64<<16|0),w.bits=A,0}},{"../utils/common":27}],37:[function(t,e,r){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],38:[function(t,e,r){"use strict";function n(t){for(var e=t.length;--e>=0;)t[e]=0}function i(t){return t<256?st[t]:st[256+(t>>>7)]}function a(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function s(t,e,r){t.bi_valid>Y-r?(t.bi_buf|=e<<t.bi_valid&65535,a(t,t.bi_buf),t.bi_buf=e>>Y-t.bi_valid,t.bi_valid+=r-Y):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=r)}function o(t,e,r){s(t,r[2*e],r[2*e+1])}function d(t,e){var r=0;do r|=1&t,t>>>=1,r<<=1;while(--e>0);return r>>>1}function l(t){16===t.bi_valid?(a(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}function h(t,e){var r=e.dyn_tree,n=e.max_code,i=e.stat_desc.static_tree,a=e.stat_desc.has_stree,s=e.stat_desc.extra_bits,o=e.stat_desc.extra_base,d=e.stat_desc.max_length,l,h,f,u,c,p,_=0;for(u=0;u<=V;u++)t.bl_count[u]=0;for(r[2*t.heap[t.heap_max]+1]=0,l=t.heap_max+1;l<K;l++)h=t.heap[l],u=r[2*r[2*h+1]+1]+1,u>d&&(u=d,_++),r[2*h+1]=u,h>n||(t.bl_count[u]++,c=0,h>=o&&(c=s[h-o]),p=r[2*h],t.opt_len+=p*(u+c),a&&(t.static_len+=p*(i[2*h+1]+c)));if(0!==_){do{for(u=d-1;0===t.bl_count[u];)u--;t.bl_count[u]--,t.bl_count[u+1]+=2,t.bl_count[d]--,_-=2}while(_>0);for(u=d;0!==u;u--)for(h=t.bl_count[u];0!==h;)f=t.heap[--l],f>n||(r[2*f+1]!==u&&(t.opt_len+=(u-r[2*f+1])*r[2*f],r[2*f+1]=u),h--)}}function f(t,e,r){var n=new Array(V+1),i=0,a,s;for(a=1;a<=V;a++)n[a]=i=i+r[a-1]<<1;for(s=0;s<=e;s++){var o=t[2*s+1];0!==o&&(t[2*s]=d(n[o]++,o))}}function u(){var t,e,r,n,i,a=new Array(V+1);for(r=0,n=0;n<Z-1;n++)for(dt[n]=r,t=0;t<1<<$[n];t++)ot[r++]=n;for(ot[r-1]=n,i=0,n=0;n<16;n++)for(lt[n]=i,t=0;t<1<<tt[n];t++)st[i++]=n;for(i>>=7;n<H;n++)for(lt[n]=i<<7,t=0;t<1<<tt[n]-7;t++)st[256+i++]=n;for(e=0;e<=V;e++)a[e]=0;for(t=0;t<=143;)it[2*t+1]=8,t++,a[8]++;for(;t<=255;)it[2*t+1]=9,t++,a[9]++;for(;t<=279;)it[2*t+1]=7,t++,a[7]++;for(;t<=287;)it[2*t+1]=8,t++,a[8]++;for(f(it,j+1,a),t=0;t<H;t++)at[2*t+1]=5,at[2*t]=d(t,5);ft=new ht(it,$,M+1,j,V),ut=new ht(at,tt,0,H,V),ct=new ht(new Array(0),et,0,X,W)}function c(t){var e;for(e=0;e<j;e++)t.dyn_ltree[2*e]=0;for(e=0;e<H;e++)t.dyn_dtree[2*e]=0;for(e=0;e<X;e++)t.bl_tree[2*e]=0;t.dyn_ltree[2*q]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0}function p(t){t.bi_valid>8?a(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function _(t,e,r,n){p(t),n&&(a(t,r),a(t,~r)),B.arraySet(t.pending_buf,t.window,e,r,t.pending),t.pending+=r}function m(t,e,r,n){var i=2*e,a=2*r;return t[i]<t[a]||t[i]===t[a]&&n[e]<=n[r]}function g(t,e,r){for(var n=t.heap[r],i=r<<1;i<=t.heap_len&&(i<t.heap_len&&m(e,t.heap[i+1],t.heap[i],t.depth)&&i++,!m(e,n,t.heap[i],t.depth));)t.heap[r]=t.heap[i],r=i,i<<=1;t.heap[r]=n}function b(t,e,r){var n,a,d=0,l,h;if(0!==t.last_lit)do n=t.pending_buf[t.d_buf+2*d]<<8|t.pending_buf[t.d_buf+2*d+1],a=t.pending_buf[t.l_buf+d],d++,0===n?o(t,a,e):(l=ot[a],o(t,l+M+1,e),h=$[l],0!==h&&(a-=dt[l],s(t,a,h)),n--,l=i(n),o(t,l,r),h=tt[l],0!==h&&(n-=lt[l],s(t,n,h)));while(d<t.last_lit);o(t,q,e)}function w(t,e){var r=e.dyn_tree,n=e.stat_desc.static_tree,i=e.stat_desc.has_stree,a=e.stat_desc.elems,s,o,d=-1,l;for(t.heap_len=0,t.heap_max=K,s=0;s<a;s++)0!==r[2*s]?(t.heap[++t.heap_len]=d=s,t.depth[s]=0):r[2*s+1]=0;for(;t.heap_len<2;)l=t.heap[++t.heap_len]=d<2?++d:0,r[2*l]=1,t.depth[l]=0,t.opt_len--,i&&(t.static_len-=n[2*l+1]);for(e.max_code=d,s=t.heap_len>>1;s>=1;s--)g(t,r,s);l=a;do s=t.heap[1],t.heap[1]=t.heap[t.heap_len--],g(t,r,1),o=t.heap[1],t.heap[--t.heap_max]=s,t.heap[--t.heap_max]=o,r[2*l]=r[2*s]+r[2*o],t.depth[l]=(t.depth[s]>=t.depth[o]?t.depth[s]:t.depth[o])+1,r[2*s+1]=r[2*o+1]=l,t.heap[1]=l++,g(t,r,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],h(t,e),f(r,d,t.bl_count)}function v(t,e,r){var n,i=-1,a,s=e[1],o=0,d=7,l=4;for(0===s&&(d=138,l=3),e[2*(r+1)+1]=65535,n=0;n<=r;n++)a=s,s=e[2*(n+1)+1],++o<d&&a===s||(o<l?t.bl_tree[2*a]+=o:0!==a?(a!==i&&t.bl_tree[2*a]++,t.bl_tree[2*G]++):o<=10?t.bl_tree[2*J]++:t.bl_tree[2*Q]++,o=0,i=a,0===s?(d=138,l=3):a===s?(d=6,l=3):(d=7,l=4))}function y(t,e,r){var n,i=-1,a,d=e[1],l=0,h=7,f=4;for(0===d&&(h=138,f=3),n=0;n<=r;n++)if(a=d,d=e[2*(n+1)+1],!(++l<h&&a===d)){if(l<f){do o(t,a,t.bl_tree);while(0!==--l)}else 0!==a?(a!==i&&(o(t,a,t.bl_tree),l--),o(t,G,t.bl_tree),s(t,l-3,2)):l<=10?(o(t,J,t.bl_tree),s(t,l-3,3)):(o(t,Q,t.bl_tree),s(t,l-11,7));l=0,i=a,0===d?(h=138,f=3):a===d?(h=6,f=3):(h=7,f=4)}}function k(t){var e;for(v(t,t.dyn_ltree,t.l_desc.max_code),v(t,t.dyn_dtree,t.d_desc.max_code),w(t,t.bl_desc),e=X-1;e>=3&&0===t.bl_tree[2*rt[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}function x(t,e,r,n){var i;for(s(t,e-257,5),s(t,r-1,5),s(t,n-4,4),i=0;i<n;i++)s(t,t.bl_tree[2*rt[i]+1],3);y(t,t.dyn_ltree,e-1),y(t,t.dyn_dtree,r-1)}function z(t){var e=4093624447,r;for(r=0;r<=31;r++,e>>>=1)if(1&e&&0!==t.dyn_ltree[2*r])return R;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return T;for(r=32;r<M;r++)if(0!==t.dyn_ltree[2*r])return T;return R}function A(t){_t||(u(),_t=!0),t.l_desc=new pt(t.dyn_ltree,ft),t.d_desc=new pt(t.dyn_dtree,ut),t.bl_desc=new pt(t.bl_tree,ct),t.bi_buf=0,t.bi_valid=0,c(t)}function E(t,e,r,n){s(t,(L<<1)+(n?1:0),3),_(t,e,r,!0)}function S(t){s(t,N<<1,3),o(t,q,it),l(t)}function C(t,e,r,n){var i,a,o=0;t.level>0?(t.strm.data_type===D&&(t.strm.data_type=z(t)),w(t,t.l_desc),w(t,t.d_desc),o=k(t),i=t.opt_len+3+7>>>3,a=t.static_len+3+7>>>3,a<=i&&(i=a)):i=a=r+5,r+4<=i&&e!==-1?E(t,e,r,n):t.strategy===O||a===i?(s(t,(N<<1)+(n?1:0),3),b(t,it,at)):(s(t,(U<<1)+(n?1:0),3),x(t,t.l_desc.max_code+1,t.d_desc.max_code+1,o+1),b(t,t.dyn_ltree,t.dyn_dtree)),c(t),n&&p(t)}function I(t,e,r){return t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&r,t.last_lit++,0===e?t.dyn_ltree[2*r]++:(t.matches++,e--,t.dyn_ltree[2*(ot[r]+M+1)]++,t.dyn_dtree[2*i(e)]++),t.last_lit===t.lit_bufsize-1}var B=t("../utils/common"),O=4,R=0,T=1,D=2,L=0,N=1,U=2,F=3,P=258,Z=29,M=256,j=M+1+Z,H=30,X=19,K=2*j+1,V=15,Y=16,W=7,q=256,G=16,J=17,Q=18,$=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],tt=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],et=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],rt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],nt=512,it=new Array(2*(j+2));n(it);var at=new Array(2*H);n(at);var st=new Array(nt);n(st);var ot=new Array(P-F+1);n(ot);var dt=new Array(Z);n(dt);var lt=new Array(H);n(lt);var ht=function(t,e,r,n,i){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=t&&t.length},ft,ut,ct,pt=function(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e},_t=!1;r._tr_init=A,r._tr_stored_block=E,r._tr_flush_block=C,r._tr_tally=I,r._tr_align=S},{"../utils/common":27}],39:[function(t,e,r){"use strict";function n(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}e.exports=n},{}]},{},[9])(9)})}).call(this),function(){var t=t=window.saveAs||function(t){"use strict";if("undefined"==typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var e=t.document,r=function(){return t.URL||t.webkitURL||t},n=e.createElementNS("http://www.w3.org/1999/xhtml","a"),i="download"in n,a=function(r){var n=e.createEvent("MouseEvents");n.initMouseEvent("click",!0,!1,t,0,0,0,0,0,!1,!1,!1,!1,0,null),r.dispatchEvent(n)},s=t.webkitRequestFileSystem,o=t.requestFileSystem||s||t.mozRequestFileSystem,d=function(e){(t.setImmediate||t.setTimeout)(function(){throw e},0)},l="application/octet-stream",h=0,f=500,u=function(e){var n=function(){"string"==typeof e?r().revokeObjectURL(e):e.remove()};t.chrome?n():setTimeout(n,f)},c=function(t,e,r){e=[].concat(e);for(var n=e.length;n--;){var i=t["on"+e[n]];if("function"==typeof i)try{i.call(t,r||t)}catch(t){d(t)}}},p=function(t){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob(["\ufeff",t],{type:t.type}):t},_=function(e,d){e=p(e);var f=this,_=e.type,m=!1,g,b,w=function(){c(f,"writestart progress write writeend".split(" "))},v=function(){if(!m&&g||(g=r().createObjectURL(e)),b)b.location.href=g;else{var n=t.open(g,"_blank");void 0==n&&"undefined"!=typeof safari&&(t.location.href=g)}f.readyState=f.DONE,w(),u(g)},y=function(t){return function(){if(f.readyState!==f.DONE)return t.apply(this,arguments)}},k={create:!0,exclusive:!1},x;return f.readyState=f.INIT,d||(d="download"),i?(g=r().createObjectURL(e),n.href=g,n.download=d,a(n),f.readyState=f.DONE,w(),void u(g)):(t.chrome&&_&&_!==l&&(x=e.slice||e.webkitSlice,e=x.call(e,0,e.size,l),m=!0),s&&"download"!==d&&(d+=".download"),(_===l||s)&&(b=t),o?(h+=e.size,void o(t.TEMPORARY,h,y(function(t){t.root.getDirectory("saved",k,y(function(t){var r=function(){t.getFile(d,k,y(function(t){t.createWriter(y(function(r){r.onwriteend=function(e){b.location.href=t.toURL(),f.readyState=f.DONE,c(f,"writeend",e),u(t)},r.onerror=function(){var t=r.error;t.code!==t.ABORT_ERR&&v()},"writestart progress write abort".split(" ").forEach(function(t){r["on"+t]=f["on"+t]}),r.write(e),f.abort=function(){r.abort(),f.readyState=f.DONE},f.readyState=f.WRITING}),v)}),v)};t.getFile(d,{create:!1},y(function(t){t.remove(),r()}),y(function(t){t.code===t.NOT_FOUND_ERR?r():v()}))}),v)}),v)):void v())},m=_.prototype,g=function(t,e){return new _(t,e)};return"undefined"!=typeof navigator&&navigator.msSaveOrOpenBlob?function(t,e){return navigator.msSaveOrOpenBlob(p(t),e)}:(m.abort=function(){var t=this;t.readyState=t.DONE,c(t,"abort")},m.readyState=m.INIT=0,m.WRITING=1,m.DONE=2,m.error=m.onwritestart=m.onprogress=m.onwrite=m.onabort=m.onerror=m.onwriteend=null,g)}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content);"undefined"!=typeof module&&module.exports?module.exports.saveAs=t=window.saveAs:"undefined"!=typeof define&&null!==define&&null!=define.amd&&define([],function(){return t}),window.saveAs=t}.call(this),function(){"undefined"!=typeof window&&(n="undefined"!=typeof window.JSZip?window.JSZip:require("JSZip"))}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var r in e)r in t||(t[r]=e[r])}(Package["silentcicero:jszip"]={},{JSZip:n})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["ddp-rate-limiter"]={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,o=Package.meteor.meteorEnv,a=Package.random.Random;(function(){var t="_localstorage_test_"+a.id(),o;try{window.localStorage&&(window.localStorage.setItem(t,t),o=window.localStorage.getItem(t),window.localStorage.removeItem(t))}catch(e){}t===o&&(e._localStorage={getItem:function(e){return window.localStorage.getItem(e)},setItem:function(e,t){window.localStorage.setItem(e,t)},removeItem:function(e){window.localStorage.removeItem(e)}}),e._localStorage||(e._debug("You are running a browser with no localStorage or userData support. Logging in from one tab will not cause another tab to be logged in."),e._localStorage={_data:{},setItem:function(e,t){this._data[e]=t},removeItem:function(e){delete this._data[e]},getItem:function(e){var t=this._data[e];return void 0===t?null:t}})}).call(this),"undefined"==typeof Package&&(Package={}),Package.localstorage={}}();
!function(){var n=Package.meteor.Meteor,e=Package.meteor.global,t=Package.meteor.meteorEnv,a=Package.underscore._,r;(function(){r=function(n){var e=this;if(n=n||{},e.nextCallbackId=0,e.callbacks={},e.bindEnvironment=!0,n.bindEnvironment===!1&&(e.bindEnvironment=!1),n.exceptionHandler)e.exceptionHandler=n.exceptionHandler;else if(n.debugPrintExceptions){if(!a.isString(n.debugPrintExceptions))throw new Error("Hook option debugPrintExceptions should be a string");e.exceptionHandler=n.debugPrintExceptions}},a.extend(r.prototype,{register:function(t){var a=this,r=a.exceptionHandler||function(n){throw n};t=a.bindEnvironment?n.bindEnvironment(t,r):e(t,r);var i=a.nextCallbackId++;return a.callbacks[i]=t,{stop:function(){delete a.callbacks[i]}}},each:function(e){var t=this;n._nodeCodeMustBeInFiber();for(var r=a.keys(t.callbacks),i=0;i<r.length;++i){var o=r[i];if(a.has(t.callbacks,o)){var c=t.callbacks[o];if(!e(c))break}}}});var e=function(e,t,r){if(!t||"string"==typeof t){var i=t||"callback of async function";t=function(e){n._debug("Exception in "+i+":",e&&e.stack||e)}}return function(){var n=a.toArray(arguments),i=function(){try{var a=e.apply(r,n)}catch(n){t(n)}return a};return i()}}}).call(this),"undefined"==typeof Package&&(Package={}),function(n,e){for(var t in e)t in n||(n[t]=e[t])}(Package["callback-hook"]={},{Hook:r})}();
!function(){var n=Package.meteor.Meteor,e=Package.meteor.global,o=Package.meteor.meteorEnv,t=Package.underscore._,i=Package.tracker.Tracker,r=Package.tracker.Deps,c=Package.random.Random,a=Package["callback-hook"].Hook,s=Package["ddp-client"].DDP,u=Package.mongo.Mongo,l=Package.modules.meteorInstall,g=Package.modules.Buffer,_=Package.modules.process,p=Package["ecmascript-runtime"].Symbol,f=Package["ecmascript-runtime"].Map,h=Package["ecmascript-runtime"].Set,d=Package["babel-runtime"].meteorBabelHelpers,m=Package.promise.Promise,k,L,E,I=l({node_modules:{meteor:{"accounts-base":{"client_main.js":["./accounts_client.js","./url_client.js","./localstorage_token.js",function(e,o,t){t.export({AccountsClient:function(){return i},AccountsTest:function(){return r}});var i;t.import("./accounts_client.js",{AccountsClient:function(n){i=n}});var r;t.import("./url_client.js",{AccountsTest:function(n){r=n}}),t.import("./localstorage_token.js"),k=new i,n.users=k.users}],"accounts_client.js":["babel-runtime/helpers/classCallCheck","babel-runtime/helpers/possibleConstructorReturn","babel-runtime/helpers/inherits","./accounts_common.js",function(e,o,r){r.export({AccountsClient:function(){return l}});var c;r.import("babel-runtime/helpers/classCallCheck",{default:function(n){c=n}});var a;r.import("babel-runtime/helpers/possibleConstructorReturn",{default:function(n){a=n}});var s;r.import("babel-runtime/helpers/inherits",{default:function(n){s=n}});var u;r.import("./accounts_common.js",{AccountsCommon:function(n){u=n}});var l=function(n){function e(o){c(this,e);var t=a(this,n.call(this,o));return t._loggingIn=!1,t._loggingInDeps=new i.Dependency,t._loginServicesHandle=t.connection.subscribe("meteor.loginServiceConfiguration"),t._pageLoadLoginCallbacks=[],t._pageLoadLoginAttemptInfo=null,t._initUrlMatching(),t._initLocalStorage(),t}return s(e,n),e.prototype.userId=function(){function n(){return this.connection.userId()}return n}(),e.prototype._setLoggingIn=function(){function n(n){this._loggingIn!==n&&(this._loggingIn=n,this._loggingInDeps.changed())}return n}(),e.prototype.loggingIn=function(){function n(){return this._loggingInDeps.depend(),this._loggingIn}return n}(),e.prototype.logout=function(){function n(n){var e=this;e.connection.apply("logout",[],{wait:!0},function(o,t){o?n&&n(o):(e.makeClientLoggedOut(),n&&n())})}return n}(),e.prototype.logoutOtherClients=function(){function n(n){var e=this;e.connection.apply("getNewToken",[],{wait:!0},function(n,o){n||e._storeLoginToken(e.userId(),o.token,o.tokenExpires)}),e.connection.apply("removeOtherTokens",[],{wait:!0},function(e){n&&n(e)})}return n}(),e}(u),g=l.prototype;n.loggingIn=function(){return k.loggingIn()},g.callLoginMethod=function(n){var e=this;n=t.extend({methodName:"login",methodArguments:[{}],_suppressLoggingIn:!1},n),t.each(["validateResult","userCallback"],function(e){n[e]||(n[e]=function(){})});var o=t.once(function(o){o?e._onLoginFailureHook.each(function(n){return n({error:o}),!0}):e._onLoginHook.each(function(n){return n(),!0}),n.userCallback.apply(this,arguments)}),i=!1,r=function n(t,r){!t&&r&&r.token&&(e.connection.onReconnect=function(){i=!0;var n=e._storedLoginToken();n&&(r={token:n,tokenExpires:e._storedLoginTokenExpires()}),r.tokenExpires||(r.tokenExpires=e._tokenExpiration(new Date)),e._tokenExpiresSoon(r.tokenExpires)?e.makeClientLoggedOut():e.callLoginMethod({methodArguments:[{resume:r.token}],_suppressLoggingIn:!0,userCallback:function(){function n(n){var t=e._storedLoginToken();n&&t&&t===r.token&&e.makeClientLoggedOut(),o(n)}return n}()})})},c=function t(r,c){if(!i){if(e._setLoggingIn(!1),r||!c)return r=r||new Error("No result from call to "+n.methodName),void o(r);try{n.validateResult(c)}catch(n){return void o(n)}e.makeClientLoggedIn(c.id,c.token,c.tokenExpires),o()}};n._suppressLoggingIn||e._setLoggingIn(!0),e.connection.apply(n.methodName,n.methodArguments,{wait:!0,onResultReceived:r},c)},g.makeClientLoggedOut=function(){this.connection._userId&&this._onLogoutHook.each(function(n){return n(),!0}),this._unstoreLoginToken(),this.connection.setUserId(null),this.connection.onReconnect=null},g.makeClientLoggedIn=function(n,e,o){this._storeLoginToken(n,e,o),this.connection.setUserId(n)},n.logout=function(n){return k.logout(n)},n.logoutOtherClients=function(n){return k.logoutOtherClients(n)},g.loginServicesConfigured=function(){return this._loginServicesHandle.ready()},g.onPageLoadLogin=function(n){this._pageLoadLoginAttemptInfo?n(this._pageLoadLoginAttemptInfo):this._pageLoadLoginCallbacks.push(n)},g._pageLoadLogin=function(e){return this._pageLoadLoginAttemptInfo?void n._debug("Ignoring unexpected duplicate page load login attempt info"):(t.each(this._pageLoadLoginCallbacks,function(n){n(e)}),this._pageLoadLoginCallbacks=[],void(this._pageLoadLoginAttemptInfo=e))},Package.blaze&&(Package.blaze.Blaze.Template.registerHelper("currentUser",function(){return n.user()}),Package.blaze.Blaze.Template.registerHelper("loggingIn",function(){return n.loggingIn()}))}],"accounts_common.js":["babel-runtime/helpers/classCallCheck",function(e,o,i){i.export({AccountsCommon:function(){return c}});var r;i.import("babel-runtime/helpers/classCallCheck",{default:function(n){r=n}});var c=function(){function e(n){r(this,e),this._options={},this.connection=void 0,this._initConnection(n||{}),this.users=new u.Collection("users",{_preventAutopublish:!0,connection:this.connection}),this._onLoginHook=new a({bindEnvironment:!1,debugPrintExceptions:"onLogin callback"}),this._onLoginFailureHook=new a({bindEnvironment:!1,debugPrintExceptions:"onLoginFailure callback"}),this._onLogoutHook=new a({bindEnvironment:!1,debugPrintExceptions:"onLogout callback"})}return e.prototype.userId=function(){function n(){throw new Error("userId method not implemented")}return n}(),e.prototype.user=function(){function n(){var n=this.userId();return n?this.users.findOne(n):null}return n}(),e.prototype.config=function(){function e(e){var o=this;if(n.isServer?__meteor_runtime_config__.accountsConfigCalled=!0:__meteor_runtime_config__.accountsConfigCalled||n._debug("Accounts.config was called on the client but not on the server; some configuration options may not take effect."),t.has(e,"oauthSecretKey")){if(n.isClient)throw new Error("The oauthSecretKey option may only be specified on the server");if(!Package["oauth-encryption"])throw new Error("The oauth-encryption package must be loaded to set oauthSecretKey");Package["oauth-encryption"].OAuthEncryption.loadKey(e.oauthSecretKey),e=t.omit(e,"oauthSecretKey")}var i=["sendVerificationEmail","forbidClientAccountCreation","passwordEnrollTokenExpirationInDays","restrictCreationByEmailDomain","loginExpirationInDays","passwordResetTokenExpirationInDays"];t.each(t.keys(e),function(n){if(!t.contains(i,n))throw new Error("Accounts.config: Invalid key: "+n)}),t.each(i,function(n){if(n in e){if(n in o._options)throw new Error("Can't set `"+n+"` more than once");o._options[n]=e[n]}})}return e}(),e.prototype.onLogin=function(){function n(n){return this._onLoginHook.register(n)}return n}(),e.prototype.onLoginFailure=function(){function n(n){return this._onLoginFailureHook.register(n)}return n}(),e.prototype.onLogout=function(){function n(n){return this._onLogoutHook.register(n)}return n}(),e.prototype._initConnection=function(){function e(e){n.isClient&&(e.connection?this.connection=e.connection:e.ddpUrl?this.connection=s.connect(e.ddpUrl):"undefined"!=typeof __meteor_runtime_config__&&__meteor_runtime_config__.ACCOUNTS_CONNECTION_URL?this.connection=s.connect(__meteor_runtime_config__.ACCOUNTS_CONNECTION_URL):this.connection=n.connection)}return e}(),e.prototype._getTokenLifetimeMs=function(){function n(){return 24*(this._options.loginExpirationInDays||g)*60*60*1e3}return n}(),e.prototype._getPasswordResetTokenLifetimeMs=function(){function n(){return 24*(this._options.passwordResetTokenExpirationInDays||_)*60*60*1e3}return n}(),e.prototype._getPasswordEnrollTokenLifetimeMs=function(){function n(){return 24*(this._options.passwordEnrollTokenExpirationInDays||p)*60*60*1e3}return n}(),e.prototype._tokenExpiration=function(){function n(n){return new Date(new Date(n).getTime()+this._getTokenLifetimeMs())}return n}(),e.prototype._tokenExpiresSoon=function(){function n(n){var e=.1*this._getTokenLifetimeMs(),o=1e3*f;return e>o&&(e=o),new Date>new Date(n)-e}return n}(),e}(),l=c.prototype;n.userId=function(){return k.userId()},n.user=function(){return k.user()};var g=90,_=3,p=30,f=3600;L=6e5,E=1e4,n.startup(function(){var n=Package["service-configuration"].ServiceConfiguration;l.loginServiceConfiguration=n.configurations,l.ConfigError=n.ConfigError});var h="Accounts.LoginCancelledError";l.LoginCancelledError=n.makeErrorType(h,function(n){this.message=n}),l.LoginCancelledError.prototype.name=h,l.LoginCancelledError.numericError=145546287}],"localstorage_token.js":["./accounts_client.js",function(e,o,t){var i;t.import("./accounts_client.js",{AccountsClient:function(n){i=n}});var r=i.prototype;n.loginWithToken=function(n,e){return k.loginWithToken(n,e)},r.loginWithToken=function(n,e){this.callLoginMethod({methodArguments:[{resume:n}],userCallback:e})},r._enableAutoLogin=function(){this._autoLoginEnabled=!0,this._pollStoredLoginToken()},r._isolateLoginTokenForTest=function(){this.LOGIN_TOKEN_KEY=this.LOGIN_TOKEN_KEY+c.id(),this.USER_ID_KEY=this.USER_ID_KEY+c.id()},r._storeLoginToken=function(e,o,t){n._localStorage.setItem(this.USER_ID_KEY,e),n._localStorage.setItem(this.LOGIN_TOKEN_KEY,o),t||(t=this._tokenExpiration(new Date)),n._localStorage.setItem(this.LOGIN_TOKEN_EXPIRES_KEY,t),this._lastLoginTokenWhenPolled=o},r._unstoreLoginToken=function(){n._localStorage.removeItem(this.USER_ID_KEY),n._localStorage.removeItem(this.LOGIN_TOKEN_KEY),n._localStorage.removeItem(this.LOGIN_TOKEN_EXPIRES_KEY),this._lastLoginTokenWhenPolled=null},r._storedLoginToken=function(){return n._localStorage.getItem(this.LOGIN_TOKEN_KEY)},r._storedLoginTokenExpires=function(){return n._localStorage.getItem(this.LOGIN_TOKEN_EXPIRES_KEY)},r._storedUserId=function(){return n._localStorage.getItem(this.USER_ID_KEY)},r._unstoreLoginTokenIfExpiresSoon=function(){var n=this._storedLoginTokenExpires();n&&this._tokenExpiresSoon(new Date(n))&&this._unstoreLoginToken()},r._initLocalStorage=function(){var e=this;e.LOGIN_TOKEN_KEY="Meteor.loginToken",e.LOGIN_TOKEN_EXPIRES_KEY="Meteor.loginTokenExpires",e.USER_ID_KEY="Meteor.userId";var o=__meteor_runtime_config__.ROOT_URL_PATH_PREFIX;if(o||this.connection!==n.connection){var t=":"+this.connection._stream.rawUrl;o&&(t+=":"+o),e.LOGIN_TOKEN_KEY+=t,e.LOGIN_TOKEN_EXPIRES_KEY+=t,e.USER_ID_KEY+=t}if(e._autoLoginEnabled){e._unstoreLoginTokenIfExpiresSoon();var i=e._storedLoginToken();if(i){var r=e._storedUserId();r&&e.connection.setUserId(r),e.loginWithToken(i,function(o){o&&(n._debug("Error logging in with token: "+o),e.makeClientLoggedOut()),e._pageLoadLogin({type:"resume",allowed:!o,error:o,methodName:"login",methodArguments:[{resume:i}]})})}}e._lastLoginTokenWhenPolled=i,e._pollIntervalTimer&&clearInterval(e._pollIntervalTimer),e._pollIntervalTimer=setInterval(function(){e._pollStoredLoginToken()},3e3)},r._pollStoredLoginToken=function(){var n=this;if(n._autoLoginEnabled){var e=n._storedLoginToken();n._lastLoginTokenWhenPolled!=e&&(e?n.loginWithToken(e,function(e){e&&n.makeClientLoggedOut()}):n.logout()),n._lastLoginTokenWhenPolled=e}}}],"url_client.js":["./accounts_client.js",function(e,o,i){function r(n,e,o){t.each(u,function(t){var i,r=new RegExp("^\\#\\/"+t+"\\/(.*)$"),c=e.match(r);c&&(i=c[1],"reset-password"===t?n._resetPasswordToken=i:"verify-email"===t?n._verifyEmailToken=i:"enroll-account"===t&&(n._enrollAccountToken=i),window.location.hash="",o.call(n,i,t))})}function c(e,o){var t=this;t._autoLoginEnabled=!1,n.startup(function(){t._accountsCallbacks[o]&&t._accountsCallbacks[o](e,function(){t._enableAutoLogin()})})}i.export({AccountsTest:function(){return g}});var a;i.import("./accounts_client.js",{AccountsClient:function(n){a=n}});var s=a.prototype,u=["reset-password","verify-email","enroll-account"],l=window.location.hash;s._initUrlMatching=function(){this._autoLoginEnabled=!0,this._accountsCallbacks={},this._attemptToMatchHash()},s._attemptToMatchHash=function(){r(this,l,c)};var g={attemptToMatchHash:function(){function n(n,e){return r(k,n,e)}return n}()};s.onResetPasswordLink=function(e){this._accountsCallbacks["reset-password"]&&n._debug("Accounts.onResetPasswordLink was called more than once. Only one callback added will be executed."),this._accountsCallbacks["reset-password"]=e},s.onEmailVerificationLink=function(e){this._accountsCallbacks["verify-email"]&&n._debug("Accounts.onEmailVerificationLink was called more than once. Only one callback added will be executed."),this._accountsCallbacks["verify-email"]=e},s.onEnrollmentLink=function(e){this._accountsCallbacks["enroll-account"]&&n._debug("Accounts.onEnrollmentLink was called more than once. Only one callback added will be executed."),this._accountsCallbacks["enroll-account"]=e}}]}}}},{extensions:[".js",".json"]}),b=I("./node_modules/meteor/accounts-base/client_main.js");"undefined"==typeof Package&&(Package={}),function(n,e){for(var o in e)o in n||(n[o]=e[o])}(Package["accounts-base"]=b,{Accounts:k})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package.underscore._,i;(function(){(function(){i=function(e){var t=this;if(!(t instanceof i))throw new Error('use "new" to construct an EventEmitter');e=e||{},t._eventEmitter={onListeners:{},onceListeners:{},maxListeners:e.maxListeners||10}};var e=function(e,t){var n=this;if(n._eventEmitter.maxListeners&&t>n._eventEmitter.maxListeners)return"warning: possible EventEmitter memory leak detected. "+t+' listeners added on event "'+e+'". Use emitter.setMaxListeners() to increase limit. ('+n._eventEmitter.maxListeners+")"};i.prototype.setMaxListeners=function(e){this._eventEmitter.maxListeners=e};var t=function(t,n,r){return"undefined"==typeof t[n]&&(t[n]=[]),e.apply(this,[n,t[n].push(r)])};i.prototype.on=function(e,n){var r=t.apply(this,[this._eventEmitter.onListeners,e,n]);return r&&console.warn(new Error(r).stack),this},i.prototype.once=function(e,n){var r=t.apply(this,[this._eventEmitter.onceListeners,e,n]);return r&&console.warn(new Error(r).stack),this};var n=function(e,t){var n=this,i=0;return"undefined"!=typeof e&&r.each(e,function(e){i++,e.apply(n,t)}),i};i.prototype.emit=function(e){var t=this,i=r.rest(arguments),o=0,s=t._eventEmitter.onceListeners[e];return t._eventEmitter.onceListeners[e]=[],o+=n.call(t,t._eventEmitter.onListeners[e],i),o+=n.call(t,s,i),o>0};var o=function(e,t){for(var n=!1,r=[],i=0;i<e.length;i++)n||e[i]!==t?r.push(e[i]):n=!0;return r};i.prototype.off=function(e,t){var n=this;e?"function"==typeof t?("undefined"!=typeof n._eventEmitter.onListeners[e]&&(n._eventEmitter.onListeners[e]=o(n._eventEmitter.onListeners[e],t)),"undefined"!=typeof n._eventEmitter.onceListeners[e]&&(n._eventEmitter.onceListeners[e]=o(n._eventEmitter.onceListeners[e],t))):(n._eventEmitter.onListeners[e]=[],n._eventEmitter.onceListeners[e]=[]):(n._eventEmitter.onListeners={},n._eventEmitter.onceListeners={})},i.prototype.addListener=i.prototype.on,i.prototype.removeListener=i.prototype.off,i.prototype.removeAllListeners=i.prototype.off,i.prototype.one=i.prototype.once,i.prototype.trigger=i.prototype.emit}).call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["raix:eventemitter"]={},{EventEmitter:i})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,i=Package["aldeed:simple-schema"].SimpleSchema,r=Package["aldeed:simple-schema"].MongoObject,o=Package.underscore._,a=Package.check.check,s=Package.check.Match,c=Package.mongo.Mongo,l=Package.minimongo.LocalCollection,u=Package.minimongo.Minimongo,m=Package.ejson.EJSON,d=Package["raix:eventemitter"].EventEmitter,f;(function(){function t(t,i,r,l,u){function m(e,n,i,r,a,s){E.clean(e,{mutate:!0,filter:i,autoConvert:r,getAutoValues:n,isModifier:"insert"!==t,removeEmptyStrings:a,trimStrings:s,extendAutoValueContext:o.extend({isInsert:"insert"===t,isUpdate:"update"===t&&_.upsert!==!0,isUpsert:v,userId:l,isFromTrustedCode:u,docId:I,isLocalCollection:k},_.extendAutoValueContext||{})})}var d=this,f,p,h,_,v,g,y,S;if(!i.length)throw new Error(t+" requires an argument");if("insert"===t)f=i[0],_=i[1],p=i[2],i="function"==typeof _?[f,_]:"function"==typeof p?[f,p]:[f];else{if("update"!==t)throw new Error("invalid type argument");g=i[0],f=i[1],_=i[2],p=i[3]}var C=o.isEmpty(f);p||"function"!=typeof _||(p=_,_={}),_=_||{},y=i.length-1,S="function"==typeof i[y],v="update"===t&&_.upsert===!0;var E=d.simpleSchema(f,_,g),k=null===d._connection;(e.isServer||k)&&_.getAutoValues===!1&&(r=!1);var w=_.validationContext;w?"string"==typeof w&&(w=E.namedContext(w)):w=E.namedContext(),e.isClient&&!p&&(p=function(n){n&&e._debug(t+" failed: "+(n.reason||n.stack))}),e.isClient&&S&&(p=i[y]=s(w,p));var x=E.allowsKey("_id");"insert"===t&&!f._id&&x&&(f._id=d._makeNewID());var I;"insert"===t?I=f._id:"update"===t&&g&&(I="string"==typeof g||g instanceof c.ObjectID?g:g._id);var P;f._id&&!x&&(P=f._id,delete f._id),m(f,r,_.filter!==!1,_.autoConvert!==!1,_.removeEmptyStrings!==!1,_.trimStrings!==!1);var A={};for(var M in f)f.hasOwnProperty(M)&&(A[M]=f[M]);if(e.isServer&&v&&o.isObject(g)){var O=A.$set||{};A.$set=o.clone(g),x||delete A.$set._id,o.extend(A.$set,O)}if(e.isClient&&!k&&m(A,!0,!1,!1,!1,!1),!C&&o.isEmpty(A))throw new Error("After filtering out keys not in the schema, your "+("update"===t?"modifier":"object")+" is now empty");var V;if(V=_.validate===!1||w.validate(A,{modifier:"update"===t||"upsert"===t,upsert:v,extendedCustomContext:o.extend({isInsert:"insert"===t,isUpdate:"update"===t&&_.upsert!==!0,isUpsert:v,userId:l,isFromTrustedCode:u,docId:I,isLocalCollection:k},_.extendedCustomContext||{})}))return P&&(f._id=P),"insert"===t?i[0]=f:i[1]=f,e.isServer&&S&&(i[y]=a(w,i[y])),i;if(h=n(w),!p)throw h;p(h,!1)}function n(t){var n,r=i.version>=2?t.validationErrors():t.invalidKeys();n=r.length?t.keyErrorMessage(r[0].name):"Failed validation";var o=new Error(n);return o.invalidKeys=r,o.validationContext=t,e.isServer&&(o.sanitizedError=new e.Error(400,n,m.stringify(o.invalidKeys))),o}function r(e,t){var n=t.split("c2_")[1].split(" ")[0],i=t.split("dup key:")[1].split('"')[1];e[h]([{name:n,type:"notUnique",value:i}])}function a(e,t){return function i(a){var s=o.toArray(arguments);return a&&("MongoError"===a.name&&11001===a.code||a.message.indexOf(!0))&&a.message.indexOf("c2_")!==-1&&(r(e,a.message),s[0]=n(e)),t.apply(this,s)}}function s(t,i){return function a(s){var c=o.toArray(arguments);if(s instanceof e.Error&&400===s.error&&"INVALID"===s.reason&&"string"==typeof s.details){var l=m.parse(s.details);t[h](l),c[0]=n(t)}else s instanceof e.Error&&409===s.error&&s.reason&&s.reason.indexOf("E11000")!==-1&&s.reason.indexOf("c2_")!==-1&&(r(t,s.reason),c[0]=n(t));return i.apply(this,c)}}function u(e){Package&&Package.insecure&&!_[e._name]&&(e.allow({insert:function(){return!0},update:function(){return!0},remove:function(){return!0},fetch:[],transform:null}),_[e._name]=!0)}function p(n,i){if(!v[n._name]){var r=null===n._connection;n.deny({insert:function(e,t){return n.simpleSchema(t).clean(t,{mutate:!0,isModifier:!1,filter:!1,autoConvert:!1,removeEmptyStrings:!1,trimStrings:!1,extendAutoValueContext:{isInsert:!0,isUpdate:!1,isUpsert:!1,userId:e,isFromTrustedCode:!1,docId:t._id,isLocalCollection:r}}),!1},update:function(e,t,i,o){return n.simpleSchema(o).clean(o,{mutate:!0,isModifier:!0,filter:!1,autoConvert:!1,removeEmptyStrings:!1,trimStrings:!1,extendAutoValueContext:{isInsert:!1,isUpdate:!0,isUpsert:!1,userId:e,isFromTrustedCode:!1,docId:t&&t._id,isLocalCollection:r}}),!1},fetch:["_id"],transform:null}),n.deny(o.extend({insert:function(i,r){return t.call(n,"insert",[r,{trimStrings:!1,removeEmptyStrings:!1,filter:!1,autoConvert:!1},function(t){if(t)throw new e.Error(400,"INVALID",m.stringify(t.invalidKeys))}],!1,i,!1),!1},update:function(i,r,o,a){return t.call(n,"update",[{_id:r&&r._id},a,{trimStrings:!1,removeEmptyStrings:!1,filter:!1,autoConvert:!1},function(t){if(t)throw new e.Error(400,"INVALID",m.stringify(t.invalidKeys))}],!1,i,!1),!1},fetch:["_id"]},i.transform===!0?{}:{transform:null})),v[n._name]=!0}}f=new d,"undefined"==typeof c&&(c={},c.Collection=e.Collection);var h=i.version>=2?"addValidationErrors":"addInvalidKeys";c.Collection.prototype.attachSchema=function e(t,n){function r(e){if("object"==typeof c){var r=-1;e._c2._simpleSchemas=e._c2._simpleSchemas||[],e._c2._simpleSchemas.forEach(function(e,t){o.isEqual(e.selector,c)&&(r=t)}),r===-1?e._c2._simpleSchemas.push({schema:new i(t),selector:c}):n.replace!==!0?e._c2._simpleSchemas[r].schema.version>=2?e._c2._simpleSchemas[r].schema.extend(t):e._c2._simpleSchemas[r].schema=new i([e._c2._simpleSchemas[r].schema,t]):e._c2._simpleSchemas[r].schema=t,delete e._c2._simpleSchema}else e._c2._simpleSchema=t,delete e._c2._simpleSchemas}var a=this;if(n=n||{},t instanceof i||(t=new i(t)),a._c2=a._c2||{},a._c2._simpleSchema&&n.replace!==!0)if(t.version>=2){var s=new i(a._c2._simpleSchema);s.extend(t),t=s}else t=new i([a._c2._simpleSchema,t]);var c=n.selector;r(a),a._collection instanceof l&&(a._collection._c2=a._collection._c2||{},r(a._collection)),p(a,n),u(a),f.emit("schema.attached",a,t,n)},o.each([c.Collection,l],function(e){e.prototype.simpleSchema=function(e,t,n){if(!this._c2)return null;if(this._c2._simpleSchema)return this._c2._simpleSchema;var i=this._c2._simpleSchemas;if(i&&i.length>0){if(!e)throw new Error("collection.simpleSchema() requires doc argument when there are multiple schemas");for(var r,o,a,s=0;s<i.length;s++)if(r=i[s],o=Object.keys(r.selector)[0],a=void 0,e.$set&&"undefined"!=typeof e.$set[o]?a=e.$set[o]:"undefined"!=typeof e[o]?a=e[o]:t&&t.selector?a=t.selector[o]:n&&n[o]&&(a=n[o]),void 0!==a&&a===r.selector[o])return r.schema}return null}}),o.each(["insert","update"],function(n){var i=c.Collection.prototype[n];c.Collection.prototype[n]=function(){var r=this,a,s=o.toArray(arguments);if(a="insert"===n?s[1]:s[2],a&&"function"!=typeof a||(a={}),r._c2&&a.bypassCollection2!==!0){var c=null;try{c=e.userId()}catch(e){}if(s=t.call(r,n,s,!0,c,e.isServer),!s)return"insert"===n?r._makeNewID():void 0}else"insert"===n&&"function"!=typeof s[1]&&s.splice(1,1);return i.apply(r,s)}});var _={},v={}}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["aldeed:collection2-core"]={},{Collection2:f})}();
!function(){var e=Package.meteor.Meteor,a=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package["aldeed:collection2-core"].Collection2,c=Package.underscore._,i=Package.minimongo.LocalCollection,s=Package.minimongo.Minimongo,t=Package.check.check,m=Package.check.Match,r=Package.modules.meteorInstall,l=Package.modules.Buffer,u=Package.modules.process,g=Package["ecmascript-runtime"].Symbol,d=Package["ecmascript-runtime"].Map,k=Package["ecmascript-runtime"].Set,P=Package["babel-runtime"].meteorBabelHelpers,p=Package.promise.Promise,h=Package["aldeed:simple-schema"].SimpleSchema,b=Package["aldeed:simple-schema"].MongoObject,f=Package.mongo.Mongo,x=r({node_modules:{meteor:{"aldeed:schema-index":{lib:{"indexing.js":function(){h.extendOptions({index:m.Optional(m.OneOf(Number,String,Boolean)),unique:m.Optional(Boolean),sparse:m.Optional(Boolean)}),(!h.version||h.version<2)&&h.messages({notUnique:"[label] must be unique"}),e.isServer&&o.on("schema.attached",function(a,n){function o(n,o,c,i){e.startup(function(){a._collection._ensureIndex(n,{background:!0,name:o,unique:c,sparse:i})})}function i(n){e.startup(function(){try{a._collection._dropIndex(n)}catch(e){}})}n.version>=2&&n.messageBox.messages({notUnique:"{{label}} must be unique"});var s=2===n.version?"mergedSchema":"schema";c.each(n[s](),function(e,a){if("index"in e||e.unique===!0){var n={},c;"index"in e?(c=e.index,c===!0&&(c=1)):c=1;var s="c2_"+a,t=a.replace(/\.\$\./g,".");n[t]=c;var m=!!e.unique&&(1===c||c===-1),r=e.sparse||!1;!r&&m&&e.optional&&(r=!0),c===!1?i(s):o(n,s,m,r)}})})}}}}}},{extensions:[".js",".json"]});x("./node_modules/meteor/aldeed:schema-index/lib/indexing.js"),"undefined"==typeof Package&&(Package={}),Package["aldeed:schema-index"]={}}();
!function(){var e=Package.meteor.Meteor,a=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package["aldeed:collection2-core"].Collection2,t=Package.underscore._,i=Package.minimongo.LocalCollection,c=Package.minimongo.Minimongo,l=Package.check.check,s=Package.check.Match,d=Package["aldeed:simple-schema"].SimpleSchema,g=Package["aldeed:simple-schema"].MongoObject,r=Package.mongo.Mongo;(function(){d.extendOptions({denyInsert:s.Optional(Boolean),denyUpdate:s.Optional(Boolean)}),(!d.version||d.version<2)&&d.messages({insertNotAllowed:"[label] cannot be set during an insert",updateNotAllowed:"[label] cannot be set during an update"}),o.on("schema.attached",function(e,a){a.version>=2&&a.messageBox.messages({insertNotAllowed:"{{label}} cannot be set during an insert",updateNotAllowed:"{{label}} cannot be set during an update"}),a.addValidator(function(){if(this.isSet){var e=this.definition;return e.denyInsert&&this.isInsert?"insertNotAllowed":e.denyUpdate&&(this.isUpdate||this.isUpsert)?"updateNotAllowed":void 0}})})}).call(this),"undefined"==typeof Package&&(Package={}),Package["aldeed:schema-deny"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["aldeed:collection2"]={}}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,a=Package.meteor.meteorEnv,i=Package["momentjs:moment"].moment;(function(){(function(){this.moment=i}).call(this),function(){!function(t,e){if("function"==typeof define&&define.amd)define(["moment","jquery","exports"],function(a,i,s){t.daterangepicker=e(t,s,a,i)});else if("undefined"!=typeof exports){var a=require("moment"),i;try{i=require("jquery")}catch(t){if(i=window.jQuery,!i)throw new Error("jQuery dependency not found")}e(t,exports,a,i)}else t.daterangepicker=e(t,{},t.moment,t.jQuery||t.Zepto||t.ender||t.$)}(this,function(t,e,a,i){var s=function(t,e,a){this.parentEl="body",this.element=i(t),this.isShowing=!1;var s='<div class="daterangepicker dropdown-menu"><div class="calendar first left"></div><div class="calendar second right"></div><div class="ranges"><div class="range_inputs"><div class="daterangepicker_start_input"><label for="daterangepicker_start"></label><input class="input-mini" type="text" name="daterangepicker_start" value="" /></div><div class="daterangepicker_end_input"><label for="daterangepicker_end"></label><input class="input-mini" type="text" name="daterangepicker_end" value="" /></div><button class="applyBtn" disabled="disabled"></button>&nbsp;<button class="cancelBtn"></button></div></div></div>';"object"==typeof e&&null!==e||(e={}),this.parentEl=i("object"==typeof e&&e.parentEl&&i(e.parentEl).length?e.parentEl:this.parentEl),this.container=i(s).appendTo(this.parentEl),this.setOptions(e,a),this.container.find(".calendar").on("click.daterangepicker",".prev",i.proxy(this.clickPrev,this)).on("click.daterangepicker",".next",i.proxy(this.clickNext,this)).on("click.daterangepicker","td.available",i.proxy(this.clickDate,this)).on("mouseenter.daterangepicker","td.available",i.proxy(this.hoverDate,this)).on("mouseleave.daterangepicker","td.available",i.proxy(this.updateFormInputs,this)).on("change.daterangepicker","select.yearselect",i.proxy(this.updateMonthYear,this)).on("change.daterangepicker","select.monthselect",i.proxy(this.updateMonthYear,this)).on("change.daterangepicker","select.hourselect,select.minuteselect,select.secondselect,select.ampmselect",i.proxy(this.updateTime,this)),this.container.find(".ranges").on("click.daterangepicker","button.applyBtn",i.proxy(this.clickApply,this)).on("click.daterangepicker","button.cancelBtn",i.proxy(this.clickCancel,this)).on("click.daterangepicker",".daterangepicker_start_input,.daterangepicker_end_input",i.proxy(this.showCalendars,this)).on("change.daterangepicker",".daterangepicker_start_input,.daterangepicker_end_input",i.proxy(this.inputsChanged,this)).on("keydown.daterangepicker",".daterangepicker_start_input,.daterangepicker_end_input",i.proxy(this.inputsKeydown,this)).on("click.daterangepicker","li",i.proxy(this.clickRange,this)).on("mouseenter.daterangepicker","li",i.proxy(this.enterRange,this)).on("mouseleave.daterangepicker","li",i.proxy(this.updateFormInputs,this)),this.element.is("input")?this.element.on({"click.daterangepicker":i.proxy(this.show,this),"focus.daterangepicker":i.proxy(this.show,this),"keyup.daterangepicker":i.proxy(this.updateFromControl,this),"keydown.daterangepicker":i.proxy(this.keydown,this)}):this.element.on("click.daterangepicker",i.proxy(this.toggle,this))};s.prototype={constructor:s,setOptions:function(t,e){if(this.startDate=a().startOf("day"),this.endDate=a().endOf("day"),this.timeZone=a().utcOffset(),this.minDate=!1,this.maxDate=!1,this.dateLimit=!1,this.showDropdowns=!1,this.showWeekNumbers=!1,this.timePicker=!1,this.timePickerSeconds=!1,this.timePickerIncrement=30,this.timePicker12Hour=!0,this.singleDatePicker=!1,this.ranges={},this.opens="right",this.element.hasClass("pull-right")&&(this.opens="left"),this.drops="down",this.element.hasClass("dropup")&&(this.drops="up"),this.buttonClasses=["btn","btn-small btn-sm"],this.applyClass="btn-success",this.cancelClass="btn-default",this.format="MM/DD/YYYY",this.separator=" - ",this.locale={applyLabel:"Apply",cancelLabel:"Cancel",fromLabel:"From",toLabel:"To",weekLabel:"W",customRangeLabel:"Custom Range",daysOfWeek:a.weekdaysMin(),monthNames:a.monthsShort(),firstDay:a.localeData()._week.dow},this.cb=function(){},"string"==typeof t.format&&(this.format=t.format),"string"==typeof t.separator&&(this.separator=t.separator),"string"==typeof t.startDate&&(this.startDate=a(t.startDate,this.format)),"string"==typeof t.endDate&&(this.endDate=a(t.endDate,this.format)),"string"==typeof t.minDate&&(this.minDate=a(t.minDate,this.format)),"string"==typeof t.maxDate&&(this.maxDate=a(t.maxDate,this.format)),"object"==typeof t.startDate&&(this.startDate=a(t.startDate)),"object"==typeof t.endDate&&(this.endDate=a(t.endDate)),"object"==typeof t.minDate&&(this.minDate=a(t.minDate)),"object"==typeof t.maxDate&&(this.maxDate=a(t.maxDate)),"string"==typeof t.applyClass&&(this.applyClass=t.applyClass),"string"==typeof t.cancelClass&&(this.cancelClass=t.cancelClass),"object"==typeof t.dateLimit&&(this.dateLimit=t.dateLimit),"object"==typeof t.locale&&("object"==typeof t.locale.daysOfWeek&&(this.locale.daysOfWeek=t.locale.daysOfWeek.slice()),"object"==typeof t.locale.monthNames&&(this.locale.monthNames=t.locale.monthNames.slice()),"number"==typeof t.locale.firstDay&&(this.locale.firstDay=t.locale.firstDay),"string"==typeof t.locale.applyLabel&&(this.locale.applyLabel=t.locale.applyLabel),"string"==typeof t.locale.cancelLabel&&(this.locale.cancelLabel=t.locale.cancelLabel),"string"==typeof t.locale.fromLabel&&(this.locale.fromLabel=t.locale.fromLabel),"string"==typeof t.locale.toLabel&&(this.locale.toLabel=t.locale.toLabel),"string"==typeof t.locale.weekLabel&&(this.locale.weekLabel=t.locale.weekLabel),"string"==typeof t.locale.customRangeLabel&&(this.locale.customRangeLabel=t.locale.customRangeLabel)),"string"==typeof t.opens&&(this.opens=t.opens),"string"==typeof t.drops&&(this.drops=t.drops),"boolean"==typeof t.showWeekNumbers&&(this.showWeekNumbers=t.showWeekNumbers),"string"==typeof t.buttonClasses&&(this.buttonClasses=[t.buttonClasses]),"object"==typeof t.buttonClasses&&(this.buttonClasses=t.buttonClasses),"boolean"==typeof t.showDropdowns&&(this.showDropdowns=t.showDropdowns),"boolean"==typeof t.singleDatePicker&&(this.singleDatePicker=t.singleDatePicker,this.singleDatePicker&&(this.endDate=this.startDate.clone())),"boolean"==typeof t.timePicker&&(this.timePicker=t.timePicker),"boolean"==typeof t.timePickerSeconds&&(this.timePickerSeconds=t.timePickerSeconds),"number"==typeof t.timePickerIncrement&&(this.timePickerIncrement=t.timePickerIncrement),"boolean"==typeof t.timePicker12Hour&&(this.timePicker12Hour=t.timePicker12Hour),0!=this.locale.firstDay)for(var s=this.locale.firstDay;s>0;)this.locale.daysOfWeek.push(this.locale.daysOfWeek.shift()),s--;var n,r,o;if("undefined"==typeof t.startDate&&"undefined"==typeof t.endDate&&i(this.element).is("input[type=text]")){var h=i(this.element).val(),l=h.split(this.separator);n=r=null,2==l.length?(n=a(l[0],this.format),r=a(l[1],this.format)):this.singleDatePicker&&""!==h&&(n=a(h,this.format),r=a(h,this.format)),null!==n&&null!==r&&(this.startDate=n,this.endDate=r)}if("string"==typeof t.timeZone||"number"==typeof t.timeZone?("string"==typeof t.timeZone&&"undefined"!=typeof a.tz?this.timeZone=a.tz.zone(t.timeZone).parse(new Date)*-1:this.timeZone=t.timeZone,this.startDate.utcOffset(this.timeZone),this.endDate.utcOffset(this.timeZone)):this.timeZone=a(this.startDate).utcOffset(),"object"==typeof t.ranges){for(o in t.ranges)n="string"==typeof t.ranges[o][0]?a(t.ranges[o][0],this.format):a(t.ranges[o][0]),r="string"==typeof t.ranges[o][1]?a(t.ranges[o][1],this.format):a(t.ranges[o][1]),this.minDate&&n.isBefore(this.minDate)&&(n=a(this.minDate)),this.maxDate&&r.isAfter(this.maxDate)&&(r=a(this.maxDate)),this.minDate&&r.isBefore(this.minDate)||this.maxDate&&n.isAfter(this.maxDate)||(this.ranges[o]=[n,r]);var c="<ul>";for(o in this.ranges)c+="<li>"+o+"</li>";c+="<li>"+this.locale.customRangeLabel+"</li>",c+="</ul>",this.container.find(".ranges ul").remove(),this.container.find(".ranges").prepend(c)}if("function"==typeof e&&(this.cb=e),this.timePicker||(this.startDate=this.startDate.startOf("day"),this.endDate=this.endDate.endOf("day")),this.singleDatePicker?(this.opens="right",this.container.addClass("single"),this.container.find(".calendar.right").show(),this.container.find(".calendar.left").hide(),this.timePicker?this.container.find(".ranges .daterangepicker_start_input, .ranges .daterangepicker_end_input").hide():this.container.find(".ranges").hide(),this.container.find(".calendar.right").hasClass("single")||this.container.find(".calendar.right").addClass("single")):(this.container.removeClass("single"),this.container.find(".calendar.right").removeClass("single"),this.container.find(".ranges").show()),this.oldStartDate=this.startDate.clone(),this.oldEndDate=this.endDate.clone(),this.oldChosenLabel=this.chosenLabel,this.leftCalendar={month:a([this.startDate.year(),this.startDate.month(),1,this.startDate.hour(),this.startDate.minute(),this.startDate.second()]),calendar:[]},this.rightCalendar={month:a([this.endDate.year(),this.endDate.month(),1,this.endDate.hour(),this.endDate.minute(),this.endDate.second()]),calendar:[]},"right"==this.opens||"center"==this.opens){var d=this.container.find(".calendar.first"),m=this.container.find(".calendar.second");m.hasClass("single")&&(m.removeClass("single"),d.addClass("single")),d.removeClass("left").addClass("right"),m.removeClass("right").addClass("left"),this.singleDatePicker&&(d.show(),m.hide())}"undefined"!=typeof t.ranges||this.singleDatePicker||this.container.addClass("show-calendar"),this.container.removeClass("opensleft opensright").addClass("opens"+this.opens),this.updateView(),this.updateCalendars();var f=this.container;i.each(this.buttonClasses,function(t,e){f.find("button").addClass(e)}),this.container.find(".daterangepicker_start_input label").html(this.locale.fromLabel),this.container.find(".daterangepicker_end_input label").html(this.locale.toLabel),this.applyClass.length&&this.container.find(".applyBtn").addClass(this.applyClass),this.cancelClass.length&&this.container.find(".cancelBtn").addClass(this.cancelClass),this.container.find(".applyBtn").html(this.locale.applyLabel),this.container.find(".cancelBtn").html(this.locale.cancelLabel)},setStartDate:function(t){"string"==typeof t&&(this.startDate=a(t,this.format).utcOffset(this.timeZone)),"object"==typeof t&&(this.startDate=a(t)),this.timePicker||(this.startDate=this.startDate.startOf("day")),this.oldStartDate=this.startDate.clone(),this.updateView(),this.updateCalendars(),this.updateInputText()},setEndDate:function(t){"string"==typeof t&&(this.endDate=a(t,this.format).utcOffset(this.timeZone)),"object"==typeof t&&(this.endDate=a(t)),this.timePicker||(this.endDate=this.endDate.endOf("day")),this.oldEndDate=this.endDate.clone(),this.updateView(),this.updateCalendars(),this.updateInputText()},updateView:function(){this.leftCalendar.month.month(this.startDate.month()).year(this.startDate.year()).hour(this.startDate.hour()).minute(this.startDate.minute()),this.rightCalendar.month.month(this.endDate.month()).year(this.endDate.year()).hour(this.endDate.hour()).minute(this.endDate.minute()),this.updateFormInputs()},updateFormInputs:function(){this.container.find("input[name=daterangepicker_start]").val(this.startDate.format(this.format)),this.container.find("input[name=daterangepicker_end]").val(this.endDate.format(this.format)),this.startDate.isSame(this.endDate)||this.startDate.isBefore(this.endDate)?this.container.find("button.applyBtn").removeAttr("disabled"):this.container.find("button.applyBtn").attr("disabled","disabled")},updateFromControl:function(){if(this.element.is("input")&&this.element.val().length){var t=this.element.val().split(this.separator),e=null,i=null;2===t.length&&(e=a(t[0],this.format).utcOffset(this.timeZone),i=a(t[1],this.format).utcOffset(this.timeZone)),(this.singleDatePicker||null===e||null===i)&&(e=a(this.element.val(),this.format).utcOffset(this.timeZone),i=e),i.isBefore(e)||(this.oldStartDate=this.startDate.clone(),this.oldEndDate=this.endDate.clone(),this.startDate=e,this.endDate=i,this.startDate.isSame(this.oldStartDate)&&this.endDate.isSame(this.oldEndDate)||this.notify(),this.updateCalendars())}},keydown:function(t){9!==t.keyCode&&13!==t.keyCode||this.hide()},notify:function(){this.updateView(),this.cb(this.startDate,this.endDate,this.chosenLabel)},move:function(){var t={top:0,left:0},e,a=i(window).width();this.parentEl.is("body")||(t={top:this.parentEl.offset().top-this.parentEl.scrollTop(),left:this.parentEl.offset().left-this.parentEl.scrollLeft()},a=this.parentEl[0].clientWidth+this.parentEl.offset().left),e="up"==this.drops?this.element.offset().top-this.container.outerHeight()-t.top:this.element.offset().top+this.element.outerHeight()-t.top,this.container["up"==this.drops?"addClass":"removeClass"]("dropup"),"left"==this.opens?(this.container.css({top:e,right:a-this.element.offset().left-this.element.outerWidth(),left:"auto"}),this.container.offset().left<0&&this.container.css({right:"auto",left:9})):"center"==this.opens?(this.container.css({top:e,left:this.element.offset().left-t.left+this.element.outerWidth()/2-this.container.outerWidth()/2,right:"auto"}),this.container.offset().left<0&&this.container.css({right:"auto",left:9})):(this.container.css({top:e,left:this.element.offset().left-t.left,right:"auto"}),this.container.offset().left+this.container.outerWidth()>i(window).width()&&this.container.css({left:"auto",right:0}))},toggle:function(t){this.element.hasClass("active")?this.hide():this.show()},show:function(t){this.isShowing||(this.element.addClass("active"),this.container.show(),this.move(),this._outsideClickProxy=i.proxy(function(t){this.outsideClick(t)},this),i(document).on("mousedown.daterangepicker",this._outsideClickProxy).on("touchend.daterangepicker",this._outsideClickProxy).on("click.daterangepicker","[data-toggle=dropdown]",this._outsideClickProxy).on("focusin.daterangepicker",this._outsideClickProxy),this.isShowing=!0,this.element.trigger("show.daterangepicker",this))},outsideClick:function(t){var e=i(t.target);"focusin"==t.type||e.closest(this.element).length||e.closest(this.container).length||e.closest(".calendar-date").length||this.hide()},hide:function(t){this.isShowing&&(i(document).off(".daterangepicker"),this.element.removeClass("active"),this.container.hide(),this.startDate.isSame(this.oldStartDate)&&this.endDate.isSame(this.oldEndDate)||this.notify(),this.oldStartDate=this.startDate.clone(),this.oldEndDate=this.endDate.clone(),this.isShowing=!1,this.element.trigger("hide.daterangepicker",this))},enterRange:function(t){var e=t.target.innerHTML;if(e==this.locale.customRangeLabel)this.updateView();else{var a=this.ranges[e];this.container.find("input[name=daterangepicker_start]").val(a[0].format(this.format)),this.container.find("input[name=daterangepicker_end]").val(a[1].format(this.format))}},showCalendars:function(){this.container.addClass("show-calendar"),this.move(),this.element.trigger("showCalendar.daterangepicker",this)},hideCalendars:function(){this.container.removeClass("show-calendar"),this.element.trigger("hideCalendar.daterangepicker",this)},inputsChanged:function(t){var e=i(t.target),s=a(e.val(),this.format);if(s.isValid()){var n,r;"daterangepicker_start"===e.attr("name")?(n=!1!==this.minDate&&s.isBefore(this.minDate)?this.minDate:s,r=this.endDate):(n=this.startDate,r=!1!==this.maxDate&&s.isAfter(this.maxDate)?this.maxDate:s),this.setCustomDates(n,r)}},inputsKeydown:function(t){13===t.keyCode&&(this.inputsChanged(t),this.notify())},updateInputText:function(){this.element.is("input")&&!this.singleDatePicker?(this.element.val(this.startDate.format(this.format)+this.separator+this.endDate.format(this.format)),this.element.trigger("change")):this.element.is("input")&&(this.element.val(this.endDate.format(this.format)),this.element.trigger("change"))},clickRange:function(t){var e=t.target.innerHTML;if(this.chosenLabel=e,e==this.locale.customRangeLabel)this.showCalendars();else{var a=this.ranges[e];this.startDate=a[0],this.endDate=a[1],this.timePicker||(this.startDate.startOf("day"),this.endDate.endOf("day")),this.leftCalendar.month.month(this.startDate.month()).year(this.startDate.year()).hour(this.startDate.hour()).minute(this.startDate.minute()),this.rightCalendar.month.month(this.endDate.month()).year(this.endDate.year()).hour(this.endDate.hour()).minute(this.endDate.minute()),this.updateCalendars(),this.updateInputText(),this.hideCalendars(),this.hide(),this.element.trigger("apply.daterangepicker",this)}},clickPrev:function(t){var e=i(t.target).parents(".calendar");e.hasClass("left")?this.leftCalendar.month.subtract(1,"month"):this.rightCalendar.month.subtract(1,"month"),this.updateCalendars()},clickNext:function(t){var e=i(t.target).parents(".calendar");e.hasClass("left")?this.leftCalendar.month.add(1,"month"):this.rightCalendar.month.add(1,"month"),this.updateCalendars()},hoverDate:function(t){var e=i(t.target).attr("data-title"),a=e.substr(1,1),s=e.substr(3,1),n=i(t.target).parents(".calendar");n.hasClass("left")?this.container.find("input[name=daterangepicker_start]").val(this.leftCalendar.calendar[a][s].format(this.format)):this.container.find("input[name=daterangepicker_end]").val(this.rightCalendar.calendar[a][s].format(this.format))},setCustomDates:function(t,e){if(this.chosenLabel=this.locale.customRangeLabel,t.isAfter(e)){var i=this.endDate.diff(this.startDate);e=a(t).add(i,"ms"),this.maxDate&&e.isAfter(this.maxDate)&&(e=this.maxDate.clone())}this.startDate=t,this.endDate=e,this.updateView(),this.updateCalendars()},clickDate:function(t){var e=i(t.target).attr("data-title"),s=e.substr(1,1),n=e.substr(3,1),r=i(t.target).parents(".calendar"),o,h;if(r.hasClass("left")){if(o=this.leftCalendar.calendar[s][n],h=this.endDate,"object"==typeof this.dateLimit){var l=a(o).add(this.dateLimit).startOf("day");h.isAfter(l)&&(h=l)}}else if(o=this.startDate,h=this.rightCalendar.calendar[s][n],"object"==typeof this.dateLimit){var c=a(h).subtract(this.dateLimit).startOf("day");o.isBefore(c)&&(o=c)}this.singleDatePicker&&r.hasClass("left")?h=o.clone():this.singleDatePicker&&r.hasClass("right")&&(o=h.clone()),r.find("td").removeClass("active"),i(t.target).addClass("active"),this.setCustomDates(o,h),this.timePicker||h.endOf("day"),this.singleDatePicker&&!this.timePicker&&this.clickApply()},clickApply:function(t){this.updateInputText(),this.hide(),this.element.trigger("apply.daterangepicker",this)},clickCancel:function(t){this.startDate=this.oldStartDate,this.endDate=this.oldEndDate,this.chosenLabel=this.oldChosenLabel,this.updateView(),this.updateCalendars(),this.hide(),this.element.trigger("cancel.daterangepicker",this)},updateMonthYear:function(t){var e=i(t.target).closest(".calendar").hasClass("left"),a=e?"left":"right",s=this.container.find(".calendar."+a),n=parseInt(s.find(".monthselect").val(),10),r=s.find(".yearselect").val();e||this.singleDatePicker||(r<this.startDate.year()||r==this.startDate.year()&&n<this.startDate.month())&&(n=this.startDate.month(),r=this.startDate.year()),this.minDate&&(r<this.minDate.year()||r==this.minDate.year()&&n<this.minDate.month())&&(n=this.minDate.month(),r=this.minDate.year()),this.maxDate&&(r>this.maxDate.year()||r==this.maxDate.year()&&n>this.maxDate.month())&&(n=this.maxDate.month(),r=this.maxDate.year()),this[a+"Calendar"].month.month(n).year(r),this.updateCalendars()},updateTime:function(t){var e=i(t.target).closest(".calendar"),a=e.hasClass("left"),s=parseInt(e.find(".hourselect").val(),10),n=parseInt(e.find(".minuteselect").val(),10),r=0;if(this.timePickerSeconds&&(r=parseInt(e.find(".secondselect").val(),10)),this.timePicker12Hour){var o=e.find(".ampmselect").val();"PM"===o&&s<12&&(s+=12),"AM"===o&&12===s&&(s=0)}if(a){var h=this.startDate.clone();h.hour(s),h.minute(n),h.second(r),this.startDate=h,this.leftCalendar.month.hour(s).minute(n).second(r),this.singleDatePicker&&(this.endDate=h.clone())}else{var l=this.endDate.clone();l.hour(s),l.minute(n),l.second(r),this.endDate=l,this.singleDatePicker&&(this.startDate=l.clone()),this.rightCalendar.month.hour(s).minute(n).second(r)}this.updateView(),this.updateCalendars()},updateCalendars:function(){this.leftCalendar.calendar=this.buildCalendar(this.leftCalendar.month.month(),this.leftCalendar.month.year(),this.leftCalendar.month.hour(),this.leftCalendar.month.minute(),this.leftCalendar.month.second(),"left"),this.rightCalendar.calendar=this.buildCalendar(this.rightCalendar.month.month(),this.rightCalendar.month.year(),this.rightCalendar.month.hour(),this.rightCalendar.month.minute(),this.rightCalendar.month.second(),"right"),this.container.find(".calendar.left").empty().html(this.renderCalendar(this.leftCalendar.calendar,this.startDate,this.minDate,this.maxDate,"left")),this.container.find(".calendar.right").empty().html(this.renderCalendar(this.rightCalendar.calendar,this.endDate,this.singleDatePicker?this.minDate:this.startDate,this.maxDate,"right")),this.container.find(".ranges li").removeClass("active");var t=!0,e=0;for(var a in this.ranges)this.timePicker?this.startDate.isSame(this.ranges[a][0])&&this.endDate.isSame(this.ranges[a][1])&&(t=!1,this.chosenLabel=this.container.find(".ranges li:eq("+e+")").addClass("active").html()):this.startDate.format("YYYY-MM-DD")==this.ranges[a][0].format("YYYY-MM-DD")&&this.endDate.format("YYYY-MM-DD")==this.ranges[a][1].format("YYYY-MM-DD")&&(t=!1,this.chosenLabel=this.container.find(".ranges li:eq("+e+")").addClass("active").html()),e++;t&&(this.chosenLabel=this.container.find(".ranges li:last").addClass("active").html(),this.showCalendars())},buildCalendar:function(t,e,i,s,n,r){var o=a([e,t]).daysInMonth(),h=a([e,t,1]),l=a([e,t,o]),c=a(h).subtract(1,"month").month(),d=a(h).subtract(1,"month").year(),m=a([d,c]).daysInMonth(),f=h.day(),p,u=[];for(u.firstDay=h,u.lastDay=l,p=0;p<6;p++)u[p]=[];var D=m-f+this.locale.firstDay+1;D>m&&(D-=7),f==this.locale.firstDay&&(D=m-6);var g=a([d,c,D,12,s,n]).utcOffset(this.timeZone),y,k;for(p=0,y=0,k=0;p<42;p++,y++,g=a(g).add(24,"hour"))p>0&&y%7===0&&(y=0,k++),u[k][y]=g.clone().hour(i),g.hour(12),this.minDate&&u[k][y].format("YYYY-MM-DD")==this.minDate.format("YYYY-MM-DD")&&u[k][y].isBefore(this.minDate)&&"left"==r&&(u[k][y]=this.minDate.clone()),this.maxDate&&u[k][y].format("YYYY-MM-DD")==this.maxDate.format("YYYY-MM-DD")&&u[k][y].isAfter(this.maxDate)&&"right"==r&&(u[k][y]=this.maxDate.clone());return u},renderDropdowns:function(t,e,a){for(var i=t.month(),s=t.year(),n=a&&a.year()||s+5,r=e&&e.year()||s-50,o='<select class="monthselect">',h=s==r,l=s==n,c=0;c<12;c++)(!h||c>=e.month())&&(!l||c<=a.month())&&(o+="<option value='"+c+"'"+(c===i?" selected='selected'":"")+">"+this.locale.monthNames[c]+"</option>");o+="</select>";for(var d='<select class="yearselect">',m=r;m<=n;m++)d+='<option value="'+m+'"'+(m===s?' selected="selected"':"")+">"+m+"</option>";return d+="</select>",o+d},renderCalendar:function(t,e,a,s,n){var r='<div class="calendar-date">';r+='<table class="table-condensed">',r+="<thead>",r+="<tr>",this.showWeekNumbers&&(r+="<th></th>"),r+=!a||a.isBefore(t.firstDay)?'<th class="prev available"><i class="fa fa-arrow-left icon icon-arrow-left glyphicon glyphicon-arrow-left"></i></th>':"<th></th>";var o=this.locale.monthNames[t[1][1].month()]+t[1][1].format(" YYYY");this.showDropdowns&&(o=this.renderDropdowns(t[1][1],a,s)),r+='<th colspan="5" class="month">'+o+"</th>",r+=!s||s.isAfter(t.lastDay)?'<th class="next available"><i class="fa fa-arrow-right icon icon-arrow-right glyphicon glyphicon-arrow-right"></i></th>':"<th></th>",r+="</tr>",r+="<tr>",this.showWeekNumbers&&(r+='<th class="week">'+this.locale.weekLabel+"</th>"),i.each(this.locale.daysOfWeek,function(t,e){r+="<th>"+e+"</th>"}),r+="</tr>",r+="</thead>",r+="<tbody>";for(var h=0;h<6;h++){r+="<tr>",this.showWeekNumbers&&(r+='<td class="week">'+t[h][0].week()+"</td>");for(var l=0;l<7;l++){var c="available ";c+=t[h][l].month()==t[1][1].month()?"":"off",a&&t[h][l].isBefore(a,"day")||s&&t[h][l].isAfter(s,"day")?c=" off disabled ":t[h][l].format("YYYY-MM-DD")==e.format("YYYY-MM-DD")?(c+=" active ",t[h][l].format("YYYY-MM-DD")==this.startDate.format("YYYY-MM-DD")&&(c+=" start-date "),t[h][l].format("YYYY-MM-DD")==this.endDate.format("YYYY-MM-DD")&&(c+=" end-date ")):t[h][l]>=this.startDate&&t[h][l]<=this.endDate&&(c+=" in-range ",t[h][l].isSame(this.startDate)&&(c+=" start-date "),t[h][l].isSame(this.endDate)&&(c+=" end-date "));var d="r"+h+"c"+l;r+='<td class="'+c.replace(/\s+/g," ").replace(/^\s?(.*?)\s?$/,"$1")+'" data-title="'+d+'">'+t[h][l].date()+"</td>"}r+="</tr>"}r+="</tbody>",r+="</table>",r+="</div>";var m;if(this.timePicker){r+='<div class="calendar-time">',r+='<select class="hourselect">';var f=0,p=23;a&&("left"==n||this.singleDatePicker)&&e.format("YYYY-MM-DD")==a.format("YYYY-MM-DD")&&(f=a.hour(),e.hour()<f&&e.hour(f),this.timePicker12Hour&&f>=12&&e.hour()>=12&&(f-=12),this.timePicker12Hour&&12==f&&(f=1)),s&&("right"==n||this.singleDatePicker)&&e.format("YYYY-MM-DD")==s.format("YYYY-MM-DD")&&(p=s.hour(),e.hour()>p&&e.hour(p),this.timePicker12Hour&&p>=12&&e.hour()>=12&&(p-=12));var u=0,D=23,g=e.hour();for(this.timePicker12Hour&&(u=1,D=12,g>=12&&(g-=12),0===g&&(g=12)),m=u;m<=D;m++)r+=m==g?'<option value="'+m+'" selected="selected">'+m+"</option>":m<f||m>p?'<option value="'+m+'" disabled="disabled" class="disabled">'+m+"</option>":'<option value="'+m+'">'+m+"</option>";r+="</select> : ",r+='<select class="minuteselect">';var y=0,k=59;for(a&&("left"==n||this.singleDatePicker)&&e.format("YYYY-MM-DD h A")==a.format("YYYY-MM-DD h A")&&(y=a.minute(),e.minute()<y&&e.minute(y)),s&&("right"==n||this.singleDatePicker)&&e.format("YYYY-MM-DD h A")==s.format("YYYY-MM-DD h A")&&(k=s.minute(),e.minute()>k&&e.minute(k)),m=0;m<60;m+=this.timePickerIncrement){var b=m;b<10&&(b="0"+b),r+=m==e.minute()?'<option value="'+m+'" selected="selected">'+b+"</option>":m<y||m>k?'<option value="'+m+'" disabled="disabled" class="disabled">'+b+"</option>":'<option value="'+m+'">'+b+"</option>"}if(r+="</select> ",this.timePickerSeconds){for(r+=': <select class="secondselect">',m=0;m<60;m+=this.timePickerIncrement){var b=m;b<10&&(b="0"+b),r+=m==e.second()?'<option value="'+m+'" selected="selected">'+b+"</option>":'<option value="'+m+'">'+b+"</option>"}r+="</select>"}if(this.timePicker12Hour){r+='<select class="ampmselect">';var v="",C="";a&&("left"==n||this.singleDatePicker)&&e.format("YYYY-MM-DD")==a.format("YYYY-MM-DD")&&a.hour()>=12&&(v=' disabled="disabled" class="disabled"'),s&&("right"==n||this.singleDatePicker)&&e.format("YYYY-MM-DD")==s.format("YYYY-MM-DD")&&s.hour()<12&&(C=' disabled="disabled" class="disabled"'),r+=e.hour()>=12?'<option value="AM"'+v+'>AM</option><option value="PM" selected="selected"'+C+">PM</option>":'<option value="AM" selected="selected"'+v+'>AM</option><option value="PM"'+C+">PM</option>",r+="</select>"}r+="</div>"}return r},remove:function(){this.container.remove(),this.element.off(".daterangepicker"),this.element.removeData("daterangepicker")}},i.fn.daterangepicker=function(t,e){return this.each(function(){var a=i(this);a.data("daterangepicker")&&a.data("daterangepicker").remove(),a.data("daterangepicker",new s(a,t,e))}),this}})}.call(this),function(){i=this.moment,delete this.moment}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),Package["gilbertwat:bootstrap3-daterangepicker"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package.coffeescript={}}();
!function(){var Meteor=Package.meteor.Meteor,global=Package.meteor.global,meteorEnv=Package.meteor.meteorEnv,Symbol=Package["ecmascript-runtime"].Symbol,Map=Package["ecmascript-runtime"].Map,Set=Package["ecmascript-runtime"].Set,meteorBabelHelpers=Package["babel-runtime"].meteorBabelHelpers,Promise=Package.promise.Promise,html,chai,__coffeescriptShare,assert,expect,should;(function(){(function(){!function(){function require(e){var t=require.modules[e];if(!t)throw new Error('failed to require "'+e+'"');return"exports"in t||"function"!=typeof t.definition||(t.client=t.component=!0,t.definition.call(this,t.exports={},t),delete t.definition),t.exports}require.loader="component",require.helper={},require.helper.semVerSort=function(e,t){for(var i=e.version.split("."),n=t.version.split("."),r=0;r<i.length;++r){var o=parseInt(i[r],10),s=parseInt(n[r],10);if(o!==s)return o>s?1:-1;var a=i[r].substr((""+o).length),c=n[r].substr((""+s).length);if(""===a&&""!==c)return 1;if(""!==a&&""===c)return-1;if(""!==a&&""!==c)return a>c?1:-1}return 0},require.latest=function(e,t){function i(e){throw new Error('failed to find latest module of "'+e+'"')}var n=/(.*)~(.*)@v?(\d+\.\d+\.\d+[^\/]*)$/,r=/(.*)~(.*)/;r.test(e)||i(e);for(var o=Object.keys(require.modules),s=[],a=[],c=0;c<o.length;c++){var h=o[c];if(new RegExp(e+"@").test(h)){var u=h.substr(e.length+1),l=n.exec(h);null!=l?s.push({version:u,name:h}):a.push({version:u,name:h})}}if(0===s.concat(a).length&&i(e),s.length>0){var f=s.sort(require.helper.semVerSort).pop().name;return t===!0?f:require(f)}var f=a.sort(function(e,t){return e.name>t.name})[0].name;return t===!0?f:require(f)},require.modules={},require.register=function(e,t){require.modules[e]={definition:t}},require.define=function(e,t){require.modules[e]={exports:t}},require.register("chaijs~assertion-error@1.0.0",function(e,t){function i(){function e(e,i){Object.keys(i).forEach(function(n){~t.indexOf(n)||(e[n]=i[n])})}var t=[].slice.call(arguments);return function t(){for(var i=[].slice.call(arguments),n=0,r={};n<i.length;n++)e(r,i[n]);return r}}function n(e,t,n){var r=i("name","message","stack","constructor","toJSON"),o=r(t||{});this.message=e||"Unspecified AssertionError",this.showDiff=!1;for(var s in o)this[s]=o[s];n=n||arguments.callee,n&&Error.captureStackTrace&&Error.captureStackTrace(this,n)}t.exports=n,n.prototype=Object.create(Error.prototype),n.prototype.name="AssertionError",n.prototype.constructor=n,n.prototype.toJSON=function(e){var t=i("constructor","toJSON","stack"),n=t({name:this.name},this);return!1!==e&&this.stack&&(n.stack=this.stack),n}}),require.register("chaijs~type-detect@0.1.1",function(e,t){function i(e){var t=Object.prototype.toString.call(e);return r[t]?r[t]:null===e?"null":void 0===e?"undefined":e===Object(e)?"object":typeof e}function n(){this.tests={}}var e=t.exports=i,r={"[object Array]":"array","[object RegExp]":"regexp","[object Function]":"function","[object Arguments]":"arguments","[object Date]":"date"};e.Library=n,n.prototype.of=i,n.prototype.define=function(e,t){return 1===arguments.length?this.tests[e]:(this.tests[e]=t,this)},n.prototype.test=function(e,t){if(t===i(e))return!0;var n=this.tests[t];if(n&&"regexp"===i(n))return n.test(e);if(n&&"function"===i(n))return n(e);throw new ReferenceError('Type test "'+t+'" not defined or invalid.')}}),require.register("chaijs~deep-eql@0.1.3",function(e,t){function i(e,t,i){return!!n(e,t)||("date"===p(e)?o(e,t):"regexp"===p(e)?s(e,t):d.isBuffer(e)?u(e,t):"arguments"===p(e)?a(e,t,i):!!r(e,t)&&("object"!==p(e)&&"object"!==p(t)&&"array"!==p(e)&&"array"!==p(t)?n(e,t):f(e,t,i)))}function n(e,t){return e===t?0!==e||1/e===1/t:e!==e&&t!==t}function r(e,t){return p(e)===p(t)}function o(e,t){return"date"===p(t)&&n(e.getTime(),t.getTime())}function s(e,t){return"regexp"===p(t)&&n(e.toString(),t.toString())}function a(e,t,n){return"arguments"===p(t)&&(e=[].slice.call(e),t=[].slice.call(t),i(e,t,n))}function c(e){var t=[];for(var i in e)t.push(i);return t}function h(e,t){if(e.length!==t.length)return!1;for(var i=0,n=!0;i<e.length;i++)if(e[i]!==t[i]){n=!1;break}return n}function u(e,t){return!!d.isBuffer(t)&&h(e,t)}function l(e){return null!==e&&void 0!==e}function f(e,t,n){if(!l(e)||!l(t))return!1;if(e.prototype!==t.prototype)return!1;var r;if(n){for(r=0;r<n.length;r++)if(n[r][0]===e&&n[r][1]===t||n[r][0]===t&&n[r][1]===e)return!0}else n=[];try{var o=c(e),s=c(t)}catch(e){return!1}if(o.sort(),s.sort(),!h(o,s))return!1;n.push([e,t]);var a;for(r=o.length-1;r>=0;r--)if(a=o[r],!i(e[a],t[a],n))return!1;return!0}var p=require("chaijs~type-detect@0.1.1"),d;try{d=require("buffer").Buffer}catch(e){d={},d.isBuffer=function(){return!1}}t.exports=i}),require.register("chai",function(e,t){t.exports=require("chai/lib/chai.js")}),require.register("chai/lib/chai.js",function(e,t){var i=[],e=t.exports={};e.version="2.1.0",e.AssertionError=require("chaijs~assertion-error@1.0.0");var n=require("chai/lib/chai/utils/index.js");e.use=function(e){return~i.indexOf(e)||(e(this,n),i.push(e)),this},e.util=n;var r=require("chai/lib/chai/config.js");e.config=r;var o=require("chai/lib/chai/assertion.js");e.use(o);var s=require("chai/lib/chai/core/assertions.js");e.use(s);var a=require("chai/lib/chai/interface/expect.js");e.use(a);var c=require("chai/lib/chai/interface/should.js");e.use(c);var h=require("chai/lib/chai/interface/assert.js");e.use(h)}),require.register("chai/lib/chai/assertion.js",function(e,t){var i=require("chai/lib/chai/config.js");t.exports=function(e,t){function n(e,t,i){o(this,"ssfi",i||arguments.callee),o(this,"object",e),o(this,"message",t)}var r=e.AssertionError,o=t.flag;e.Assertion=n,Object.defineProperty(n,"includeStack",{get:function(){return console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead."),i.includeStack},set:function(e){console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead."),i.includeStack=e}}),Object.defineProperty(n,"showDiff",{get:function(){return console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead."),i.showDiff},set:function(e){console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead."),i.showDiff=e}}),n.addProperty=function(e,i){t.addProperty(this.prototype,e,i)},n.addMethod=function(e,i){t.addMethod(this.prototype,e,i)},n.addChainableMethod=function(e,i,n){t.addChainableMethod(this.prototype,e,i,n)},n.overwriteProperty=function(e,i){t.overwriteProperty(this.prototype,e,i)},n.overwriteMethod=function(e,i){t.overwriteMethod(this.prototype,e,i)},n.overwriteChainableMethod=function(e,i,n){t.overwriteChainableMethod(this.prototype,e,i,n)},n.prototype.assert=function(e,n,s,a,c,h){var u=t.test(this,arguments);if(!0!==h&&(h=!1),!0!==i.showDiff&&(h=!1),!u){var n=t.getMessage(this,arguments),l=t.getActual(this,arguments);throw new r(n,{actual:l,expected:a,showDiff:h},i.includeStack?this.assert:o(this,"ssfi"))}},Object.defineProperty(n.prototype,"_obj",{get:function(){return o(this,"object")},set:function(e){o(this,"object",e)}})}}),require.register("chai/lib/chai/config.js",function(e,t){t.exports={includeStack:!1,showDiff:!0,truncateThreshold:40}}),require.register("chai/lib/chai/core/assertions.js",function(e,t){t.exports=function(e,t){function i(e,i){i&&A(this,"message",i),e=e.toLowerCase();var n=A(this,"object"),r=~["a","e","i","o","u"].indexOf(e.charAt(0))?"an ":"a ";this.assert(e===t.type(n),"expected #{this} to be "+r+e,"expected #{this} not to be "+r+e)}function n(){A(this,"contains",!0)}function r(e,i){i&&A(this,"message",i);var n=A(this,"object"),r=!1;if("array"===t.type(n)&&"object"===t.type(e)){for(var o in n)if(t.eql(n[o],e)){r=!0;break}}else if("object"===t.type(e)){if(!A(this,"negate")){for(var s in e)new m(n).property(s,e[s]);return}var a={};for(var s in e)a[s]=n[s];r=t.eql(a,e)}else r=n&&~n.indexOf(e);this.assert(r,"expected #{this} to include "+t.inspect(e),"expected #{this} to not include "+t.inspect(e))}function o(){var e=A(this,"object"),t=Object.prototype.toString.call(e);this.assert("[object Arguments]"===t,"expected #{this} to be arguments but got "+t,"expected #{this} to not be arguments")}function s(e,t){t&&A(this,"message",t);var i=A(this,"object");return A(this,"deep")?this.eql(e):void this.assert(e===i,"expected #{this} to equal #{exp}","expected #{this} to not equal #{exp}",e,this._obj,!0)}function a(e,i){i&&A(this,"message",i),this.assert(t.eql(e,A(this,"object")),"expected #{this} to deeply equal #{exp}","expected #{this} to not deeply equal #{exp}",e,this._obj,!0)}function c(e,t){t&&A(this,"message",t);var i=A(this,"object");if(A(this,"doLength")){new m(i,t).to.have.property("length");var n=i.length;this.assert(n>e,"expected #{this} to have a length above #{exp} but got #{act}","expected #{this} to not have a length above #{exp}",e,n)}else this.assert(i>e,"expected #{this} to be above "+e,"expected #{this} to be at most "+e)}function h(e,t){t&&A(this,"message",t);var i=A(this,"object");if(A(this,"doLength")){new m(i,t).to.have.property("length");var n=i.length;this.assert(n>=e,"expected #{this} to have a length at least #{exp} but got #{act}","expected #{this} to have a length below #{exp}",e,n)}else this.assert(i>=e,"expected #{this} to be at least "+e,"expected #{this} to be below "+e)}function u(e,t){t&&A(this,"message",t);var i=A(this,"object");if(A(this,"doLength")){new m(i,t).to.have.property("length");var n=i.length;this.assert(n<e,"expected #{this} to have a length below #{exp} but got #{act}","expected #{this} to not have a length below #{exp}",e,n)}else this.assert(i<e,"expected #{this} to be below "+e,"expected #{this} to be at least "+e)}function l(e,t){t&&A(this,"message",t);var i=A(this,"object");if(A(this,"doLength")){new m(i,t).to.have.property("length");var n=i.length;this.assert(n<=e,"expected #{this} to have a length at most #{exp} but got #{act}","expected #{this} to have a length above #{exp}",e,n)}else this.assert(i<=e,"expected #{this} to be at most "+e,"expected #{this} to be above "+e)}function f(e,i){i&&A(this,"message",i);var n=t.getName(e);this.assert(A(this,"object")instanceof e,"expected #{this} to be an instance of "+n,"expected #{this} to not be an instance of "+n)}function p(e,i){i&&A(this,"message",i);var n=A(this,"object");this.assert(n.hasOwnProperty(e),"expected #{this} to have own property "+t.inspect(e),"expected #{this} to not have own property "+t.inspect(e))}function d(){A(this,"doLength",!0)}function b(e,t){t&&A(this,"message",t);var i=A(this,"object");new m(i,t).to.have.property("length");var n=i.length;this.assert(n==e,"expected #{this} to have a length of #{exp} but got #{act}","expected #{this} to not have a length of #{act}",e,n)}function g(e){var i=A(this,"object"),n,r=!0,o="keys must be given single argument of Array|Object|String, or multiple String arguments";switch(t.type(e)){case"array":if(arguments.length>1)throw new Error(o);break;case"object":if(arguments.length>1)throw new Error(o);e=Object.keys(e);break;default:e=Array.prototype.slice.call(arguments)}if(!e.length)throw new Error("keys required");var s=Object.keys(i),a=e,c=e.length,h=A(this,"any"),u=A(this,"all");if(h||u||(u=!0),h){var l=a.filter(function(e){return~s.indexOf(e)});r=l.length>0}if(u&&(r=e.every(function(e){return~s.indexOf(e)}),A(this,"negate")||A(this,"contains")||(r=r&&e.length==s.length)),c>1){e=e.map(function(e){return t.inspect(e)});var f=e.pop();u&&(n=e.join(", ")+", and "+f),h&&(n=e.join(", ")+", or "+f)}else n=t.inspect(e[0]);n=(c>1?"keys ":"key ")+n,n=(A(this,"contains")?"contain ":"have ")+n,this.assert(r,"expected #{this} to "+n,"expected #{this} to not "+n,a.slice(0).sort(),s.sort(),!0)}function v(e,i,n){n&&A(this,"message",n);var r=A(this,"object");new m(r,n).is.a("function");var o=!1,s=null,a=null,c=null;0===arguments.length?(i=null,e=null):e&&(e instanceof RegExp||"string"==typeof e)?(i=e,e=null):e&&e instanceof Error?(s=e,e=null,i=null):"function"==typeof e?(a=e.prototype.name||e.name,"Error"===a&&e!==Error&&(a=(new e).name)):e=null;try{r()}catch(n){if(s)return this.assert(n===s,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}",s instanceof Error?s.toString():s,n instanceof Error?n.toString():n),A(this,"object",n),this;if(e&&(this.assert(n instanceof e,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp} but #{act} was thrown",a,n instanceof Error?n.toString():n),!i))return A(this,"object",n),this;var h="object"===t.type(n)&&"message"in n?n.message:""+n;if(null!=h&&i&&i instanceof RegExp)return this.assert(i.exec(h),"expected #{this} to throw error matching #{exp} but got #{act}","expected #{this} to throw error not matching #{exp}",i,h),A(this,"object",n),this;if(null!=h&&i&&"string"==typeof i)return this.assert(~h.indexOf(i),"expected #{this} to throw error including #{exp} but got #{act}","expected #{this} to throw error not including #{act}",i,h),A(this,"object",n),this;o=!0,c=n}var u="",l=null!==a?a:s?"#{exp}":"an error";o&&(u=" but #{act} was thrown"),this.assert(o===!0,"expected #{this} to throw "+l+u,"expected #{this} to not throw "+l+u,s instanceof Error?s.toString():s,c instanceof Error?c.toString():c),A(this,"object",c)}function y(e,t,i){return e.every(function(e){return i?t.some(function(t){return i(e,t)}):t.indexOf(e)!==-1})}function j(e,t,i){i&&A(this,"message",i);var n=A(this,"object");new m(e,i).to.have.property(t),new m(n).is.a("function");var r=e[t];n(),this.assert(r!==e[t],"expected ."+t+" to change","expected ."+t+" to not change")}function w(e,t,i){i&&A(this,"message",i);var n=A(this,"object");new m(e,i).to.have.property(t),new m(n).is.a("function");var r=e[t];n(),this.assert(e[t]-r>0,"expected ."+t+" to increase","expected ."+t+" to not increase")}function x(e,t,i){i&&A(this,"message",i);var n=A(this,"object");new m(e,i).to.have.property(t),new m(n).is.a("function");var r=e[t];n(),this.assert(e[t]-r<0,"expected ."+t+" to decrease","expected ."+t+" to not decrease")}var m=e.Assertion,q=Object.prototype.toString,A=t.flag;["to","be","been","is","and","has","have","with","that","which","at","of","same"].forEach(function(e){m.addProperty(e,function(){return this})}),m.addProperty("not",function(){A(this,"negate",!0)}),m.addProperty("deep",function(){A(this,"deep",!0)}),m.addProperty("any",function(){A(this,"any",!0),A(this,"all",!1)}),m.addProperty("all",function(){A(this,"all",!0),A(this,"any",!1)}),m.addChainableMethod("an",i),m.addChainableMethod("a",i),m.addChainableMethod("include",r,n),m.addChainableMethod("contain",r,n),m.addChainableMethod("contains",r,n),m.addChainableMethod("includes",r,n),m.addProperty("ok",function(){this.assert(A(this,"object"),"expected #{this} to be truthy","expected #{this} to be falsy")}),m.addProperty("true",function(){this.assert(!0===A(this,"object"),"expected #{this} to be true","expected #{this} to be false",!this.negate)}),m.addProperty("false",function(){this.assert(!1===A(this,"object"),"expected #{this} to be false","expected #{this} to be true",!!this.negate)}),m.addProperty("null",function(){this.assert(null===A(this,"object"),"expected #{this} to be null","expected #{this} not to be null")}),m.addProperty("undefined",function(){this.assert(void 0===A(this,"object"),"expected #{this} to be undefined","expected #{this} not to be undefined")}),m.addProperty("exist",function(){this.assert(null!=A(this,"object"),"expected #{this} to exist","expected #{this} to not exist")}),m.addProperty("empty",function(){var e=A(this,"object"),t=e;Array.isArray(e)||"string"==typeof object?t=e.length:"object"==typeof e&&(t=Object.keys(e).length),this.assert(!t,"expected #{this} to be empty","expected #{this} not to be empty")}),m.addProperty("arguments",o),m.addProperty("Arguments",o),m.addMethod("equal",s),m.addMethod("equals",s),m.addMethod("eq",s),m.addMethod("eql",a),m.addMethod("eqls",a),m.addMethod("above",c),m.addMethod("gt",c),m.addMethod("greaterThan",c),m.addMethod("least",h),m.addMethod("gte",h),m.addMethod("below",u),m.addMethod("lt",u),m.addMethod("lessThan",u),m.addMethod("most",l),m.addMethod("lte",l),m.addMethod("within",function(e,t,i){i&&A(this,"message",i);var n=A(this,"object"),r=e+".."+t;if(A(this,"doLength")){new m(n,i).to.have.property("length");var o=n.length;this.assert(o>=e&&o<=t,"expected #{this} to have a length within "+r,"expected #{this} to not have a length within "+r)}else this.assert(n>=e&&n<=t,"expected #{this} to be within "+r,"expected #{this} to not be within "+r)}),m.addMethod("instanceof",f),m.addMethod("instanceOf",f),m.addMethod("property",function(e,i,n){n&&A(this,"message",n);var r=!!A(this,"deep"),o=r?"deep property ":"property ",s=A(this,"negate"),a=A(this,"object"),c=r?t.getPathInfo(e,a):null,h=r?c.exists:t.hasProperty(e,a),u=r?c.value:a[e];if(s&&void 0!==i){if(void 0===u)throw n=null!=n?n+": ":"",new Error(n+t.inspect(a)+" has no "+o+t.inspect(e))}else this.assert(h,"expected #{this} to have a "+o+t.inspect(e),"expected #{this} to not have "+o+t.inspect(e));void 0!==i&&this.assert(i===u,"expected #{this} to have a "+o+t.inspect(e)+" of #{exp}, but got #{act}","expected #{this} to not have a "+o+t.inspect(e)+" of #{act}",i,u),A(this,"object",u)}),m.addMethod("ownProperty",p),m.addMethod("haveOwnProperty",p),m.addChainableMethod("length",b,d),m.addMethod("lengthOf",b),m.addMethod("match",function(e,t){t&&A(this,"message",t);var i=A(this,"object");this.assert(e.exec(i),"expected #{this} to match "+e,"expected #{this} not to match "+e)}),m.addMethod("string",function(e,i){i&&A(this,"message",i);var n=A(this,"object");new m(n,i).is.a("string"),this.assert(~n.indexOf(e),"expected #{this} to contain "+t.inspect(e),"expected #{this} to not contain "+t.inspect(e))}),m.addMethod("keys",g),m.addMethod("key",g),m.addMethod("throw",v),m.addMethod("throws",v),m.addMethod("Throw",v),m.addMethod("respondTo",function(e,i){i&&A(this,"message",i);var n=A(this,"object"),r=A(this,"itself"),o="function"!==t.type(n)||r?n[e]:n.prototype[e];this.assert("function"==typeof o,"expected #{this} to respond to "+t.inspect(e),"expected #{this} to not respond to "+t.inspect(e))}),m.addProperty("itself",function(){A(this,"itself",!0)}),m.addMethod("satisfy",function(e,i){i&&A(this,"message",i);var n=A(this,"object"),r=e(n);this.assert(r,"expected #{this} to satisfy "+t.objDisplay(e),"expected #{this} to not satisfy"+t.objDisplay(e),!this.negate,r)}),m.addMethod("closeTo",function(e,i,n){n&&A(this,"message",n);var r=A(this,"object");if(new m(r,n).is.a("number"),"number"!==t.type(e)||"number"!==t.type(i))throw new Error("the arguments to closeTo must be numbers");this.assert(Math.abs(r-e)<=i,"expected #{this} to be close to "+e+" +/- "+i,"expected #{this} not to be close to "+e+" +/- "+i)}),m.addMethod("members",function(e,i){i&&A(this,"message",i);var n=A(this,"object");new m(n).to.be.an("array"),new m(e).to.be.an("array");var r=A(this,"deep")?t.eql:void 0;return A(this,"contains")?this.assert(y(e,n,r),"expected #{this} to be a superset of #{act}","expected #{this} to not be a superset of #{act}",n,e):void this.assert(y(n,e,r)&&y(e,n,r),"expected #{this} to have the same members as #{act}","expected #{this} to not have the same members as #{act}",n,e)}),m.addChainableMethod("change",j),m.addChainableMethod("changes",j),m.addChainableMethod("increase",w),m.addChainableMethod("increases",w),m.addChainableMethod("decrease",x),m.addChainableMethod("decreases",x)}}),require.register("chai/lib/chai/interface/assert.js",function(exports,module){module.exports=function(chai,util){var Assertion=chai.Assertion,flag=util.flag,assert=chai.assert=function(e,t){var i=new Assertion(null,null,chai.assert);i.assert(e,t,"[ negation message unavailable ]")};assert.fail=function(e,t,i,n){throw i=i||"assert.fail()",new chai.AssertionError(i,{actual:e,expected:t,operator:n},assert.fail)},assert.ok=function(e,t){new Assertion(e,t).is.ok},assert.notOk=function(e,t){new Assertion(e,t).is.not.ok},assert.equal=function(e,t,i){var n=new Assertion(e,i,assert.equal);n.assert(t==flag(n,"object"),"expected #{this} to equal #{exp}","expected #{this} to not equal #{act}",t,e)},assert.notEqual=function(e,t,i){var n=new Assertion(e,i,assert.notEqual);n.assert(t!=flag(n,"object"),"expected #{this} to not equal #{exp}","expected #{this} to equal #{act}",t,e)},assert.strictEqual=function(e,t,i){new Assertion(e,i).to.equal(t)},assert.notStrictEqual=function(e,t,i){new Assertion(e,i).to.not.equal(t)},assert.deepEqual=function(e,t,i){new Assertion(e,i).to.eql(t)},assert.notDeepEqual=function(e,t,i){new Assertion(e,i).to.not.eql(t)},assert.isAbove=function(e,t,i){new Assertion(e,i).to.be.above(t)},assert.isBelow=function(e,t,i){new Assertion(e,i).to.be.below(t)},assert.isTrue=function(e,t){new Assertion(e,t).is.true},assert.isFalse=function(e,t){new Assertion(e,t).is.false},assert.isNull=function(e,t){new Assertion(e,t).to.equal(null)},assert.isNotNull=function(e,t){new Assertion(e,t).to.not.equal(null)},assert.isUndefined=function(e,t){new Assertion(e,t).to.equal(void 0)},assert.isDefined=function(e,t){new Assertion(e,t).to.not.equal(void 0)},assert.isFunction=function(e,t){new Assertion(e,t).to.be.a("function")},assert.isNotFunction=function(e,t){new Assertion(e,t).to.not.be.a("function")},assert.isObject=function(e,t){new Assertion(e,t).to.be.a("object")},assert.isNotObject=function(e,t){new Assertion(e,t).to.not.be.a("object")},assert.isArray=function(e,t){new Assertion(e,t).to.be.an("array")},assert.isNotArray=function(e,t){new Assertion(e,t).to.not.be.an("array")},assert.isString=function(e,t){new Assertion(e,t).to.be.a("string")},assert.isNotString=function(e,t){new Assertion(e,t).to.not.be.a("string")},assert.isNumber=function(e,t){new Assertion(e,t).to.be.a("number")},assert.isNotNumber=function(e,t){new Assertion(e,t).to.not.be.a("number")},assert.isBoolean=function(e,t){new Assertion(e,t).to.be.a("boolean")},assert.isNotBoolean=function(e,t){new Assertion(e,t).to.not.be.a("boolean")},assert.typeOf=function(e,t,i){new Assertion(e,i).to.be.a(t)},assert.notTypeOf=function(e,t,i){new Assertion(e,i).to.not.be.a(t)},assert.instanceOf=function(e,t,i){new Assertion(e,i).to.be.instanceOf(t)},assert.notInstanceOf=function(e,t,i){new Assertion(e,i).to.not.be.instanceOf(t)},assert.include=function(e,t,i){new Assertion(e,i,assert.include).include(t)},assert.notInclude=function(e,t,i){new Assertion(e,i,assert.notInclude).not.include(t)},assert.match=function(e,t,i){new Assertion(e,i).to.match(t)},assert.notMatch=function(e,t,i){new Assertion(e,i).to.not.match(t)},assert.property=function(e,t,i){new Assertion(e,i).to.have.property(t)},assert.notProperty=function(e,t,i){new Assertion(e,i).to.not.have.property(t)},assert.deepProperty=function(e,t,i){new Assertion(e,i).to.have.deep.property(t)},assert.notDeepProperty=function(e,t,i){new Assertion(e,i).to.not.have.deep.property(t)},assert.propertyVal=function(e,t,i,n){new Assertion(e,n).to.have.property(t,i)},assert.propertyNotVal=function(e,t,i,n){new Assertion(e,n).to.not.have.property(t,i)},assert.deepPropertyVal=function(e,t,i,n){new Assertion(e,n).to.have.deep.property(t,i)},assert.deepPropertyNotVal=function(e,t,i,n){new Assertion(e,n).to.not.have.deep.property(t,i)},assert.lengthOf=function(e,t,i){new Assertion(e,i).to.have.length(t)},assert.Throw=function(e,t,i,n){("string"==typeof t||t instanceof RegExp)&&(i=t,t=null);var r=new Assertion(e,n).to.Throw(t,i);return flag(r,"object")},assert.doesNotThrow=function(e,t,i){"string"==typeof t&&(i=t,t=null),new Assertion(e,i).to.not.Throw(t)},assert.operator=function(val,operator,val2,msg){if(!~["==","===",">",">=","<","<=","!=","!=="].indexOf(operator))throw new Error('Invalid operator "'+operator+'"');var test=new Assertion(eval(val+operator+val2),msg);test.assert(!0===flag(test,"object"),"expected "+util.inspect(val)+" to be "+operator+" "+util.inspect(val2),"expected "+util.inspect(val)+" to not be "+operator+" "+util.inspect(val2))},assert.closeTo=function(e,t,i,n){new Assertion(e,n).to.be.closeTo(t,i)},assert.sameMembers=function(e,t,i){new Assertion(e,i).to.have.same.members(t)},assert.sameDeepMembers=function(e,t,i){new Assertion(e,i).to.have.same.deep.members(t)},assert.includeMembers=function(e,t,i){new Assertion(e,i).to.include.members(t)},assert.changes=function(e,t,i){new Assertion(e).to.change(t,i)},assert.doesNotChange=function(e,t,i){new Assertion(e).to.not.change(t,i)},assert.increases=function(e,t,i){new Assertion(e).to.increase(t,i)},assert.doesNotIncrease=function(e,t,i){new Assertion(e).to.not.increase(t,i)},assert.decreases=function(e,t,i){new Assertion(e).to.decrease(t,i)},assert.doesNotDecrease=function(e,t,i){new Assertion(e).to.not.decrease(t,i)},assert.ifError=function(e,t){new Assertion(e,t).to.not.be.ok},function e(t,i){return assert[i]=assert[t],e}("Throw","throw")("Throw","throws")}}),require.register("chai/lib/chai/interface/expect.js",function(e,t){t.exports=function(e,t){e.expect=function(t,i){return new e.Assertion(t,i)},e.expect.fail=function(t,i,n,r){throw n=n||"expect.fail()",new e.AssertionError(n,{actual:t,expected:i,operator:r},e.expect.fail)}}}),require.register("chai/lib/chai/interface/should.js",function(e,t){t.exports=function(e,t){function i(){function t(){return this instanceof String||this instanceof Number?new n(this.constructor(this),null,t):this instanceof Boolean?new n(1==this,null,t):new n(this,null,t)}function i(e){Object.defineProperty(this,"should",{value:e,enumerable:!0,configurable:!0,writable:!0})}Object.defineProperty(Object.prototype,"should",{set:i,get:t,configurable:!0});var r={};return r.fail=function(t,i,n,o){throw n=n||"should.fail()",new e.AssertionError(n,{actual:t,expected:i,operator:o},r.fail)},r.equal=function(e,t,i){new n(e,i).to.equal(t)},r.Throw=function(e,t,i,r){new n(e,r).to.Throw(t,i)},r.exist=function(e,t){new n(e,t).to.exist},r.not={},r.not.equal=function(e,t,i){new n(e,i).to.not.equal(t)},r.not.Throw=function(e,t,i,r){new n(e,r).to.not.Throw(t,i)},r.not.exist=function(e,t){new n(e,t).to.not.exist},r.throw=r.Throw,r.not.throw=r.not.Throw,r}var n=e.Assertion;e.should=i,e.Should=i}}),require.register("chai/lib/chai/utils/addChainableMethod.js",function(e,t){var i=require("chai/lib/chai/utils/transferFlags.js"),n=require("chai/lib/chai/utils/flag.js"),r=require("chai/lib/chai/config.js"),o="__proto__"in Object,s=/^(?:length|name|arguments|caller)$/,a=Function.prototype.call,c=Function.prototype.apply;t.exports=function(e,t,h,u){"function"!=typeof u&&(u=function(){});var l={method:h,chainingBehavior:u};e.__methods||(e.__methods={}),e.__methods[t]=l,Object.defineProperty(e,t,{get:function(){l.chainingBehavior.call(this);var t=function e(){var t=n(this,"ssfi");t&&r.includeStack===!1&&n(this,"ssfi",e);var i=l.method.apply(this,arguments);return void 0===i?this:i};if(o){var h=t.__proto__=Object.create(this);h.call=a,h.apply=c}else{var u=Object.getOwnPropertyNames(e);u.forEach(function(i){if(!s.test(i)){var n=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,n)}})}return i(this,t),t},configurable:!0})}}),require.register("chai/lib/chai/utils/addMethod.js",function(e,t){var i=require("chai/lib/chai/config.js"),n=require("chai/lib/chai/utils/flag.js");t.exports=function(e,t,r){e[t]=function(){var o=n(this,"ssfi");o&&i.includeStack===!1&&n(this,"ssfi",e[t]);var s=r.apply(this,arguments);return void 0===s?this:s}}}),require.register("chai/lib/chai/utils/addProperty.js",function(e,t){t.exports=function(e,t,i){Object.defineProperty(e,t,{get:function(){var e=i.call(this);return void 0===e?this:e},configurable:!0})}}),require.register("chai/lib/chai/utils/flag.js",function(e,t){t.exports=function(e,t,i){var n=e.__flags||(e.__flags=Object.create(null));return 3!==arguments.length?n[t]:void(n[t]=i)}}),require.register("chai/lib/chai/utils/getActual.js",function(e,t){t.exports=function(e,t){return t.length>4?t[4]:e._obj}}),require.register("chai/lib/chai/utils/getEnumerableProperties.js",function(e,t){t.exports=function e(t){var i=[];for(var n in t)i.push(n);return i}}),require.register("chai/lib/chai/utils/getMessage.js",function(e,t){var i=require("chai/lib/chai/utils/flag.js"),n=require("chai/lib/chai/utils/getActual.js"),r=require("chai/lib/chai/utils/inspect.js"),o=require("chai/lib/chai/utils/objDisplay.js");t.exports=function(e,t){var r=i(e,"negate"),s=i(e,"object"),a=t[3],c=n(e,t),h=r?t[2]:t[1],u=i(e,"message");return"function"==typeof h&&(h=h()),h=h||"",h=h.replace(/#{this}/g,o(s)).replace(/#{act}/g,o(c)).replace(/#{exp}/g,o(a)),u?u+": "+h:h}}),require.register("chai/lib/chai/utils/getName.js",function(e,t){t.exports=function(e){if(e.name)return e.name;var t=/^\s?function ([^(]*)\(/.exec(e);return t&&t[1]?t[1]:""}}),require.register("chai/lib/chai/utils/getPathValue.js",function(e,t){var i=require("chai/lib/chai/utils/getPathInfo.js");t.exports=function(e,t){var n=i(e,t);return n.value}}),require.register("chai/lib/chai/utils/getPathInfo.js",function(e,t){function i(e){var t=e.replace(/\[/g,".["),i=t.match(/(\\\.|[^.]+?)+/g);return i.map(function(e){var t=/\[(\d+)\]$/,i=t.exec(e);return i?{i:parseFloat(i[1])}:{p:e}})}function n(e,t,i){var n=t,r;i=void 0===i?e.length:i;for(var o=0,s=i;o<s;o++){var a=e[o];n?("undefined"!=typeof a.p?n=n[a.p]:"undefined"!=typeof a.i&&(n=n[a.i]),o==s-1&&(r=n)):r=void 0}return r}var r=require("chai/lib/chai/utils/hasProperty.js");t.exports=function e(t,o){var s=i(t),a=s[s.length-1],c={parent:n(s,o,s.length-1),name:a.p||a.i,value:n(s,o)};return c.exists=r(c.name,c.parent),c}}),require.register("chai/lib/chai/utils/hasProperty.js",function(e,t){var i=require("chai/lib/chai/utils/type.js"),n={number:Number,string:String};t.exports=function e(t,r){var o=i(r);return"null"!==o&&"undefined"!==o&&(n[o]&&"object"!=typeof r&&(r=new n[o](r)),t in r)}}),require.register("chai/lib/chai/utils/getProperties.js",function(e,t){t.exports=function e(t){function i(e){n.indexOf(e)===-1&&n.push(e)}for(var n=Object.getOwnPropertyNames(subject),r=Object.getPrototypeOf(subject);null!==r;)Object.getOwnPropertyNames(r).forEach(i),r=Object.getPrototypeOf(r);return n}}),require.register("chai/lib/chai/utils/index.js",function(e,t){var e=t.exports={};e.test=require("chai/lib/chai/utils/test.js"),e.type=require("chai/lib/chai/utils/type.js"),e.getMessage=require("chai/lib/chai/utils/getMessage.js"),e.getActual=require("chai/lib/chai/utils/getActual.js"),e.inspect=require("chai/lib/chai/utils/inspect.js"),e.objDisplay=require("chai/lib/chai/utils/objDisplay.js"),e.flag=require("chai/lib/chai/utils/flag.js"),e.transferFlags=require("chai/lib/chai/utils/transferFlags.js"),e.eql=require("chaijs~deep-eql@0.1.3"),e.getPathValue=require("chai/lib/chai/utils/getPathValue.js"),e.getPathInfo=require("chai/lib/chai/utils/getPathInfo.js"),e.hasProperty=require("chai/lib/chai/utils/hasProperty.js"),e.getName=require("chai/lib/chai/utils/getName.js"),e.addProperty=require("chai/lib/chai/utils/addProperty.js"),e.addMethod=require("chai/lib/chai/utils/addMethod.js"),e.overwriteProperty=require("chai/lib/chai/utils/overwriteProperty.js"),e.overwriteMethod=require("chai/lib/chai/utils/overwriteMethod.js"),e.addChainableMethod=require("chai/lib/chai/utils/addChainableMethod.js"),e.overwriteChainableMethod=require("chai/lib/chai/utils/overwriteChainableMethod.js")}),require.register("chai/lib/chai/utils/inspect.js",function(e,t){function i(e,t,i,r){var o={showHidden:t,seen:[],stylize:function(e){return e}};return n(o,e,"undefined"==typeof i?2:i)}function n(t,i,p){if(i&&"function"==typeof i.inspect&&i.inspect!==e.inspect&&(!i.constructor||i.constructor.prototype!==i)){var y=i.inspect(p);return"string"!=typeof y&&(y=n(t,y,p)),y}var j=r(t,i);if(j)return j;if(v(i)){if("outerHTML"in i)return i.outerHTML;try{if(document.xmlVersion){var w=new XMLSerializer;return w.serializeToString(i)}var x="http://www.w3.org/1999/xhtml",m=document.createElementNS(x,"_");return m.appendChild(i.cloneNode(!1)),html=m.innerHTML.replace("><",">"+i.innerHTML+"<"),m.innerHTML="",html}catch(e){}}var q=g(i),A=t.showHidden?b(i):q;
if(0===A.length||f(i)&&(1===A.length&&"stack"===A[0]||2===A.length&&"description"===A[0]&&"stack"===A[1])){if("function"==typeof i){var M=d(i),O=M?": "+M:"";return t.stylize("[Function"+O+"]","special")}if(u(i))return t.stylize(RegExp.prototype.toString.call(i),"regexp");if(l(i))return t.stylize(Date.prototype.toUTCString.call(i),"date");if(f(i))return o(i)}var _="",P=!1,S=["{","}"];if(h(i)&&(P=!0,S=["[","]"]),"function"==typeof i){var M=d(i),O=M?": "+M:"";_=" [Function"+O+"]"}if(u(i)&&(_=" "+RegExp.prototype.toString.call(i)),l(i)&&(_=" "+Date.prototype.toUTCString.call(i)),f(i))return o(i);if(0===A.length&&(!P||0==i.length))return S[0]+_+S[1];if(p<0)return u(i)?t.stylize(RegExp.prototype.toString.call(i),"regexp"):t.stylize("[Object]","special");t.seen.push(i);var k;return k=P?s(t,i,p,q,A):A.map(function(e){return a(t,i,p,q,e,P)}),t.seen.pop(),c(k,_,S)}function r(e,t){switch(typeof t){case"undefined":return e.stylize("undefined","undefined");case"string":var i="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(i,"string");case"number":return 0===t&&1/t===-(1/0)?e.stylize("-0","number"):e.stylize(""+t,"number");case"boolean":return e.stylize(""+t,"boolean")}if(null===t)return e.stylize("null","null")}function o(e){return"["+Error.prototype.toString.call(e)+"]"}function s(e,t,i,n,r){for(var o=[],s=0,c=t.length;s<c;++s)Object.prototype.hasOwnProperty.call(t,String(s))?o.push(a(e,t,i,n,String(s),!0)):o.push("");return r.forEach(function(r){r.match(/^\d+$/)||o.push(a(e,t,i,n,r,!0))}),o}function a(e,t,i,r,o,s){var a,c;if(t.__lookupGetter__&&(t.__lookupGetter__(o)?c=t.__lookupSetter__(o)?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):t.__lookupSetter__(o)&&(c=e.stylize("[Setter]","special"))),r.indexOf(o)<0&&(a="["+o+"]"),c||(e.seen.indexOf(t[o])<0?(c=null===i?n(e,t[o],null):n(e,t[o],i-1),c.indexOf("\n")>-1&&(c=s?c.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+c.split("\n").map(function(e){return" "+e}).join("\n"))):c=e.stylize("[Circular]","special")),"undefined"==typeof a){if(s&&o.match(/^\d+$/))return c;a=JSON.stringify(""+o),a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+c}function c(e,t,i){var n=0,r=e.reduce(function(e,t){return n++,t.indexOf("\n")>=0&&n++,e+t.length+1},0);return r>60?i[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+i[1]:i[0]+t+" "+e.join(", ")+" "+i[1]}function h(e){return Array.isArray(e)||"object"==typeof e&&"[object Array]"===p(e)}function u(e){return"object"==typeof e&&"[object RegExp]"===p(e)}function l(e){return"object"==typeof e&&"[object Date]"===p(e)}function f(e){return"object"==typeof e&&"[object Error]"===p(e)}function p(e){return Object.prototype.toString.call(e)}var d=require("chai/lib/chai/utils/getName.js"),b=require("chai/lib/chai/utils/getProperties.js"),g=require("chai/lib/chai/utils/getEnumerableProperties.js");t.exports=i;var v=function(e){return"object"==typeof HTMLElement?e instanceof HTMLElement:e&&"object"==typeof e&&1===e.nodeType&&"string"==typeof e.nodeName}}),require.register("chai/lib/chai/utils/objDisplay.js",function(e,t){var i=require("chai/lib/chai/utils/inspect.js"),n=require("chai/lib/chai/config.js");t.exports=function(e){var t=i(e),r=Object.prototype.toString.call(e);if(n.truncateThreshold&&t.length>=n.truncateThreshold){if("[object Function]"===r)return e.name&&""!==e.name?"[Function: "+e.name+"]":"[Function]";if("[object Array]"===r)return"[ Array("+e.length+") ]";if("[object Object]"===r){var o=Object.keys(e),s=o.length>2?o.splice(0,2).join(", ")+", ...":o.join(", ");return"{ Object ("+s+") }"}return t}return t}}),require.register("chai/lib/chai/utils/overwriteMethod.js",function(e,t){t.exports=function(e,t,i){var n=e[t],r=function(){return this};n&&"function"==typeof n&&(r=n),e[t]=function(){var e=i(r).apply(this,arguments);return void 0===e?this:e}}}),require.register("chai/lib/chai/utils/overwriteProperty.js",function(e,t){t.exports=function(e,t,i){var n=Object.getOwnPropertyDescriptor(e,t),r=function(){};n&&"function"==typeof n.get&&(r=n.get),Object.defineProperty(e,t,{get:function(){var e=i(r).call(this);return void 0===e?this:e},configurable:!0})}}),require.register("chai/lib/chai/utils/overwriteChainableMethod.js",function(e,t){t.exports=function(e,t,i,n){var r=e.__methods[t],o=r.chainingBehavior;r.chainingBehavior=function(){var e=n(o).call(this);return void 0===e?this:e};var s=r.method;r.method=function(){var e=i(s).apply(this,arguments);return void 0===e?this:e}}}),require.register("chai/lib/chai/utils/test.js",function(e,t){var i=require("chai/lib/chai/utils/flag.js");t.exports=function(e,t){var n=i(e,"negate"),r=t[0];return n?!r:r}}),require.register("chai/lib/chai/utils/transferFlags.js",function(e,t){t.exports=function(e,t,i){var n=e.__flags||(e.__flags=Object.create(null));t.__flags||(t.__flags=Object.create(null)),i=3!==arguments.length||i;for(var r in n)(i||"object"!==r&&"ssfi"!==r&&"message"!=r)&&(t.__flags[r]=n[r])}}),require.register("chai/lib/chai/utils/type.js",function(e,t){var i={"[object Arguments]":"arguments","[object Array]":"array","[object Date]":"date","[object Function]":"function","[object Number]":"number","[object RegExp]":"regexp","[object String]":"string"};t.exports=function(e){var t=Object.prototype.toString.call(e);return i[t]?i[t]:null===e?"null":void 0===e?"undefined":e===Object(e)?"object":typeof e}}),chai=require("chai")}()}).call(this),function(){!function(e){chai.use(e)}(function(e,t){e.string=e.string||{},e.string.startsWith=function(e,t){return 0===e.indexOf(t)},e.string.endsWith=function(e,t){return e.indexOf(t,e.length-t.length)!==-1},e.string.equalIgnoreCase=function(e,t){return e.toLowerCase()===t.toLowerCase()},e.string.singleLine=function(e){return e.trim().indexOf("\n")===-1},e.string.reverseOf=function(e,t){return e.split("").reverse().join("")===t},e.string.palindrome=function(e){for(var t=e.length,i=0;i<Math.floor(t/2);i++)if(e[i]!==e[t-1-i])return!1;return!0},e.string.entriesCount=function(e,t,i){for(var n=0,r=e.length,o=0;n<r;){var s=e.indexOf(t,n);if(s===-1)break;o++,n=s+1}return o===i};var i=function(t){var i=this._obj;return this.assert(e.string.startsWith(i,t),"expected "+this._obj+" to starts with "+t,"expected "+this._obj+" to not starts with "+t)};e.Assertion.addChainableMethod("startsWith",i),e.Assertion.addChainableMethod("startWith",i);var n=function(t){var i=this._obj;return this.assert(e.string.endsWith(i,t),"expected "+this._obj+" to ends with "+t,"expected "+this._obj+" to not ends with "+t)};e.Assertion.addChainableMethod("endsWith",n),e.Assertion.addChainableMethod("endWith",n),e.Assertion.addChainableMethod("equalIgnoreCase",function(t){var i=this._obj;return this.assert(e.string.equalIgnoreCase(i,t),"expected "+this._obj+" to be equal to "+t+" ignoring case","expected "+this._obj+" to be not equal to "+t+" ignoring case")}),e.Assertion.addChainableMethod("singleLine",function(){var t=this._obj;return this.assert(e.string.singleLine(t),"expected "+this._obj+" to be single line","expected "+this._obj+" to be not single line")}),e.Assertion.addChainableMethod("reverseOf",function(t){var i=this._obj;return this.assert(e.string.reverseOf(i,t),"expected "+this._obj+" to be reverse of "+t,"expected "+this._obj+" to be not reverse of "+t)}),e.Assertion.addChainableMethod("palindrome",function(){var t=this._obj;return this.assert(e.string.palindrome(t),"expected "+this._obj+" to be palindrome","expected "+this._obj+" to be not palindrome")}),e.Assertion.addChainableMethod("entriesCount",function(t,i){var n=this._obj;return this.assert(e.string.entriesCount(n,t,i),"expected "+this._obj+" to have "+t+" "+i+" time(s)","expected "+this._obj+" to not have "+t+" "+i+" time(s)")});var r=e.assert;r.startsWith=function(t,i,n){new e.Assertion(t,n).to.startsWith(i)},r.notStartsWith=function(t,i,n){new e.Assertion(t,n).to.not.startsWith(i)},r.endsWith=function(t,i,n){new e.Assertion(t,n).to.endsWith(i)},r.notEndsWith=function(t,i,n){new e.Assertion(t,n).to.not.endsWith(i)},r.equalIgnoreCase=function(t,i,n){new e.Assertion(t,n).to.be.equalIgnoreCase(i)},r.notEqualIgnoreCase=function(t,i,n){new e.Assertion(t,n).to.not.be.equalIgnoreCase(i)},r.singleLine=function(t,i,n){new e.Assertion(t,n).to.be.singleLine()},r.notSingleLine=function(t,i,n){new e.Assertion(t,n).to.not.be.singleLine()},r.reverseOf=function(t,i,n){new e.Assertion(t,n).to.be.reverseOf(i)},r.notReverseOf=function(t,i,n){new e.Assertion(t,n).to.not.be.reverseOf(i)},r.palindrome=function(t,i,n){new e.Assertion(t,n).to.be.palindrome()},r.notPalindrome=function(t,i,n){new e.Assertion(t,n).to.not.be.palindrome()},r.entriesCount=function(t,i,n,r){new e.Assertion(t,r).to.have.entriesCount(i,n)}})}.call(this),function(){__coffeescriptShare="object"==typeof __coffeescriptShare?__coffeescriptShare:{};var e=__coffeescriptShare,t,i,n,r,o;Meteor.isServer?chai.config.includeStack=(null!=(t=Meteor.settings)&&null!=(i=t.chai)?i.includeStack:void 0)||!0:chai.config.includeStack=(null!=(n=Meteor.settings)&&null!=(r=n.public)&&null!=(o=r.chai)?o.includeStack:void 0)||!0}.call(this),function(){assert=chai.assert,expect=chai.expect,should=chai.should}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var i in t)i in e||(e[i]=t[i])}(Package["practicalmeteor:chai"]={},{chai:chai,assert:assert,expect:expect,should:should})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,l=Package.meteor.meteorEnv,o=Package["practicalmeteor:chai"].chai,n=Package["practicalmeteor:chai"].assert,i=Package["practicalmeteor:chai"].expect,r=Package["practicalmeteor:chai"].should,a=Package["ecmascript-runtime"].Symbol,c=Package["ecmascript-runtime"].Map,s=Package["ecmascript-runtime"].Set,u=Package["babel-runtime"].meteorBabelHelpers,g=Package.promise.Promise,f,p,h,v,d;(function(){(function(){f=function(e){function t(e){return typeof console!==s&&(void 0!==console[e]?l(console,e):void 0!==console.log?l(console,"log"):c)}function l(e,t){var l=e[t];if("function"==typeof l.bind)return l.bind(e,a.prefix);try{return Function.prototype.bind.call(l,e,a.prefix)}catch(t){return function(){return Function.prototype.apply.apply(l,[e,arguments])}}}function o(e,t){return function(){typeof console!==s&&(n(t),a[e].apply(a,arguments))}}function n(e){for(var t=0;t<u.length;t++){var l=u[t];a[l]=t<e?c:a.methodFactory(l,e)}}function i(e){var t=(u[e]||"silent").toUpperCase();try{return void(window.localStorage.loglevel=t)}catch(e){}try{window.document.cookie="loglevel="+t+";"}catch(e){}}function r(){var e;try{e=window.localStorage.loglevel}catch(e){}if(typeof e===s)try{e=/loglevel=([^;]+)/.exec(window.document.cookie)[1]}catch(e){}void 0===a.levels[e]&&(e="WARN"),a.setLevel(a.levels[e])}var a={};e&&e.prefix?a.prefix=e.prefix:a.prefix="",e&&e.level?a.level=e.level:a.level="info";var c=function(){},s="undefined",u=["trace","fine","debug","info","warn","error"];a.levels={TRACE:0,FINE:1,DEBUG:2,INFO:3,WARN:4,ERROR:5,SILENT:6},a.methodFactory=function(e,l){return t(e)||o(e,l)},a.setLevel=function(e){if("string"==typeof e&&void 0!==a.levels[e.toUpperCase()]&&(e=a.levels[e.toUpperCase()]),!("number"==typeof e&&e>=0&&e<=a.levels.SILENT))throw"log.setLevel() called with invalid level: "+e;if(a.level=e,n(e),typeof console===s&&e<a.levels.SILENT)return"No console available for logging"},a.enableAll=function(){a.setLevel(a.levels.TRACE)},a.disableAll=function(){a.setLevel(a.levels.SILENT)};var g=typeof window!==s?window.log:void 0;return a.noConflict=function(){return typeof window!==s&&window.log===a&&(window.log=g),a},a.setPrefix=function(e){typeof e!==s&&null!==e||(e=""),a.prefix=e,a.setLevel(a.level)},a.setLevel(a.level),a},p=f({prefix:"practicalmeteor:loglevel:"})}).call(this),function(){h="object"==typeof h?h:{};var t=h;null==this.practical&&(this.practical={}),practical.LoggerFactory=function(){function t(){}var l;return l=null,t.get=function(){return null!=l?l:l=new practical.LoggerFactory},t.prototype._getSettingsLoglevel=function(e,t){var l,o;return null==e&&(e=""),null==t&&(t="info"),i(e).to.be.a("string"),i(t).to.be.a("string").that.has.length.above(0),l=this._getNamespaceLoglevel("global"),null!=l?l:(e.length>0&&(o=this._getNamespaceLoglevel(e)),null==o&&(o=this._getNamespaceLoglevel("default")),null!=o?o:o=t)},t.prototype._getNamespaceLoglevel=function(t){var l,o,n,r,a,c,s;return i(t).to.be.a("string").that.has.length.above(0),l=null!=(n=e.settings)&&null!=(r=n.public)&&null!=(a=r.loglevel)?a[t]:void 0,e.isServer&&(o=null!=(c=e.settings)&&null!=(s=c.loglevel)?s[t]:void 0,null!=o&&(l=o)),l},t.prototype.createLogger=function(e,t){var l;return null==e&&(e=""),null==t&&(t="info"),p.debug("LoggerFactory.createLogger()",arguments),i(e).to.be.a("string"),i(t).to.be.a("string").that.has.length.above(0),i(f).to.be.a("function"),l={},e.length>0&&(l.prefix=e+":"),l.level=this._getSettingsLoglevel(e,t),f(l)},t.prototype.createPackageLogger=function(e,t){return null==t&&(t="info"),this.createLogger(e,t)},t.prototype.createAppLogger=function(e,t){return null==e&&(e="app"),null==t&&(t="info"),this.createLogger(e,t)},t}(),v=practical.LoggerFactory.get()}.call(this),function(){h="object"==typeof h?h:{};var e=h,t=[].slice;d=function(){function e(e,t){return this.className=e,this.defaultLevel=null!=t?t:"info",this.log=v.createLogger(this.className,this.defaultLevel),this.callStack=[],this.log.enter=this.bindMethod(this.enter,"debug"),this.log.fineEnter=this.bindMethod(this.enter,"fine"),this.log.return=this.bindMethod(this.return,"debug"),this.log.fineReturn=this.bindMethod(this.return,"fine"),this.log}return e.prototype.enter=function(){var e,l,o;if(l=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],0===e.length)throw new Error("ObjectLogger: No method name provided to enter");return o=e.shift(),this.callStack.unshift(o),this.log.setPrefix(""+this.className+"."+o+":"),e.unshift("ENTER"),this.log[l].apply(this.log,e)},e.prototype.return=function(e){var t;if(this.log[e].call(this.log,"RETURN"),this.callStack.shift(),this.callStack.length>0)return t=this.callStack[0],this.log.setPrefix(""+this.className+"."+t+":")},e.prototype.bindMethod=function(e,l){var o;if("function"==typeof e.bind)return e.bind(this,l);try{return Function.prototype.bind.call(e,this,l)}catch(n){return o=n,function(o){return function(){var n;return n=1<=arguments.length?t.call(arguments,0):[],n.unshift(l),Function.prototype.apply.apply(e,[o,n])}}(this)}},e}()}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var l in t)l in e||(e[l]=t[l])}(Package["practicalmeteor:loglevel"]={},{loglevel:v,ObjectLogger:d})}();
!function(){var e=Package.meteor.Meteor,a=Package.meteor.global,c=Package.meteor.meteorEnv,o=Package["practicalmeteor:loglevel"].loglevel,r=Package["practicalmeteor:loglevel"].ObjectLogger,g=Package.modules.meteorInstall,t=Package.modules.Buffer,l=Package.modules.process,m=Package["ecmascript-runtime"].Symbol,k=Package["ecmascript-runtime"].Map,n=Package["ecmascript-runtime"].Set,P=Package["babel-runtime"].meteorBabelHelpers,i=Package.promise.Promise,s=Package.webapp.WebApp,p=Package.logging.Log,u=Package.deps.Tracker,d=Package.deps.Deps,f=Package.session.Session,h=Package["ddp-client"].DDP,b=Package.mongo.Mongo,v=Package.ui.Blaze,j=Package.ui.UI,S=Package.ui.Handlebars,y=Package.spacebars.Spacebars,L=Package["templating-runtime"].Template,M=Package.check.check,H=Package.check.Match,B=Package.underscore._,D=Package.jquery.$,I=Package.jquery.jQuery,O=Package.random.Random,T=Package.ejson.EJSON,_=Package["launch-screen"].LaunchScreen,q=Package.htmljs.HTML,E=g({node_modules:{meteor:{"ohif:log":{"main.js":["meteor/ohif:core","meteor/practicalmeteor:loglevel",function(a,c,o){var r;o.import("meteor/ohif:core",{OHIF:function(e){r=e}});var g;o.import("meteor/practicalmeteor:loglevel",{loglevel:function(e){g=e}});var t=e.isProduction?"error":"trace";r.log=g.createLogger("",t)}]}}}},{extensions:[".js",".json"]});E("./node_modules/meteor/ohif:log/main.js"),"undefined"==typeof Package&&(Package={}),Package["ohif:log"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["ohif:dicom-services"]={}}();
!function(){var e=Package.meteor.Meteor,a=Package.meteor.global,c=Package.meteor.meteorEnv,r=Package["clinical:router"].Router,o=Package["clinical:router"].RouteController,n=Package.modules.meteorInstall,g=Package.modules.Buffer,s=Package.modules.process,t=Package["ecmascript-runtime"].Symbol,i=Package["ecmascript-runtime"].Map,k=Package["ecmascript-runtime"].Set,P=Package["babel-runtime"].meteorBabelHelpers,u=Package.promise.Promise,l=Package["iron:core"].Iron,m=Package.webapp.WebApp,p=Package.logging.Log,d=Package.deps.Tracker,f=Package.deps.Deps,y=Package.session.Session,b=Package["ddp-client"].DDP,h=Package.mongo.Mongo,j=Package.ui.Blaze,S=Package.ui.UI,v=Package.ui.Handlebars,x=Package.spacebars.Spacebars,M=Package["templating-runtime"].Template,w=Package.check.check,D=Package.check.Match,L=Package.underscore._,R=Package.jquery.$,q=Package.jquery.jQuery,B=Package.random.Random,H=Package.ejson.EJSON,I=Package["launch-screen"].LaunchScreen,O=Package.htmljs.HTML,T,_=n({node_modules:{meteor:{"ohif:wadoproxy":{server:{"namespace.js":function(){T={},T.convertURL=function(e,a){return Settings.enabled?e?Settings.uri+"?"+querystring.stringify({url:e,options:a?JSON.stringify(a):null}):null:e}}}}}}},{extensions:[".js",".json"]});_("./node_modules/meteor/ohif:wadoproxy/server/namespace.js"),"undefined"==typeof Package&&(Package={}),function(e,a){for(var c in a)c in e||(e[c]=a[c])}(Package["ohif:wadoproxy"]={},{WADOProxy:T})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package.jquery.$,i=Package.jquery.jQuery,a=Package.http.HTTP,s=Package.random.Random,r=Package["silentcicero:jszip"].JSZip,l=Package["aldeed:simple-schema"].SimpleSchema,d=Package["aldeed:simple-schema"].MongoObject,u=Package["accounts-base"].Accounts,c=Package["momentjs:moment"].moment,p=Package["ohif:viewerbase"].resizeViewportElements,m=Package["ohif:viewerbase"].handleResize,b=Package["ohif:viewerbase"].enableHotkeys,h=Package["ohif:viewerbase"].enablePrefetchOnElement,g=Package["ohif:viewerbase"].displayReferenceLines,y=Package["ohif:viewerbase"].setActiveViewport,f=Package["ohif:viewerbase"].createStacks,v=Package["ohif:viewerbase"].getImageId,k=Package["ohif:viewerbase"].getWADORSImageId,S=Package["ohif:viewerbase"].metaDataProvider,x=Package["ohif:viewerbase"].sortStudy,T=Package["ohif:viewerbase"].updateOrientationMarkers,w=Package["ohif:viewerbase"].setFocusToActiveViewport,I=Package["ohif:viewerbase"].updateAllViewports,D=Package["ohif:viewerbase"].queryStudies,C=Package["ohif:viewerbase"].getNumberOfFilesInStudy,L=Package["ohif:viewerbase"].importStudies,P=Package["ohif:viewerbase"].getActiveViewportElement,M=Package["ohif:viewerbase"].getInstanceClassDefaultViewport,j=Package["ohif:viewerbase"].showConfirmDialog,N=Package["ohif:viewerbase"].applyWLPreset,V=Package["ohif:viewerbase"].toggleDialog,R=Package["ohif:viewerbase"].isImage,O=Package["ohif:viewerbase"].sopClassDictionary,_=Package["ohif:viewerbase"].addMetaData,q=Package["ohif:viewerbase"].hasMultipleFrames,W=Package["ohif:viewerbase"].toolManager,F=Package["ohif:viewerbase"].LayoutManager,E=Package["ohif:viewerbase"].ViewerStudies,A=Package["ohif:viewerbase"].formatPN,z=Package["ohif:viewerbase"].isTouchDevice,U=Package["ohif:viewerbase"].toggleCineDialog,B=Package["ohif:viewerbase"].toggleCinePlay,H=Package["ohif:viewerbase"].clearTools,$=Package["ohif:viewerbase"].resetViewport,Q=Package["ohif:viewerbase"].invert,G=Package["ohif:viewerbase"].flipV,Y=Package["ohif:viewerbase"].flipH,J=Package["ohif:viewerbase"].rotateR,K=Package["ohif:viewerbase"].rotateL,X=Package["ohif:wadoproxy"].WADOProxy,Z=Package["ohif:cornerstone"].cornerstone,ee=Package["ohif:cornerstone"].cornerstoneMath,te=Package["ohif:cornerstone"].cornerstoneTools,ne=Package["ohif:cornerstone"].cornerstoneWADOImageLoader,oe=Package["ohif:cornerstone"].dicomParser,ie=Package.modules.meteorInstall,ae=Package.modules.Buffer,se=Package.modules.process,re=Package["ecmascript-runtime"].Symbol,le=Package["ecmascript-runtime"].Map,de=Package["ecmascript-runtime"].Set,ue=Package["babel-runtime"].meteorBabelHelpers,ce=Package.promise.Promise,pe=Package["aldeed:collection2-core"].Collection2,me=Package.webapp.WebApp,be=Package.logging.Log,he=Package.deps.Tracker,ge=Package.deps.Deps,ye=Package.session.Session,fe=Package["ddp-client"].DDP,ve=Package.mongo.Mongo,ke=Package.ui.Blaze,Se=Package.ui.UI,xe=Package.ui.Handlebars,Te=Package.spacebars.Spacebars,we=Package["templating-runtime"].Template,Ie=Package.check.check,De=Package.check.Match,Ce=Package.underscore._,Le=Package.ejson.EJSON,Pe=Package["launch-screen"].LaunchScreen,Me=Package.htmljs.HTML,je,Ne,Ve,Re,Oe,_e,qe,We,Fe,Ee,Ae,ze=ie({node_modules:{meteor:{"ohif:study-list":{both:{"index.js":["./lib","./schema","./base.js","./collections.js",function(e,t,n){n.import("./lib"),n.import("./schema"),n.import("./base.js"),n.import("./collections.js")}],"base.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),o.studylist={collections:{},actions:{}}}],"collections.js":["meteor/mongo","meteor/ohif:core","meteor/ohif:study-list/both/schema/servers.js",function(e,t,n){n.export({StudyImportStatus:function(){return s},Servers:function(){return je},CurrentServer:function(){return Ne}});var o;n.import("meteor/mongo",{Mongo:function(e){o=e}});var i;n.import("meteor/ohif:core",{OHIF:function(e){i=e}});var a;n.import("meteor/ohif:study-list/both/schema/servers.js",{Servers:function(e){a=e}});var s=new o.Collection("studyImportStatus");s._debugName="StudyImportStatus",i.studylist.collections.StudyImportStatus=s,n.runModuleSetters(je=new o.Collection("servers")),je._debugName="Servers",n.runModuleSetters(Ne=new o.Collection("currentServer")),Ne._debugName="CurrentServer"}],lib:{"getCurrentServer.js":function(){Ve=function e(){var t=Ne.findOne();if(t){var n=je.findOne({_id:t.serverId});return n}}},"index.js":["./getCurrentServer.js",function(e,t,n){n.import("./getCurrentServer.js")}]},schema:{"index.js":["./servers.js",function(e,t,n){n.import("./servers.js")}],"servers.js":["meteor/aldeed:simple-schema",function(e,t,n){n.export({DICOMWebRequestOptions:function(){return r},DICOMWebServer:function(){return l},DIMSEPeer:function(){return d},DIMSEServer:function(){return u},UISettings:function(){return c},PublicServerConfig:function(){return p},Servers:function(){return m},ServerConfiguration:function(){return b}});var o;n.import("meteor/aldeed:simple-schema",{SimpleSchema:function(e){o=e}});var i={type:String,label:"Server Name",max:100},a={type:String,label:"Server Type",allowedValues:["dicomWeb","dimse"],valuesLabels:["DICOM Web","DIMSE"],optional:!0},s={type:String,label:"WADO URI root",max:1e3},r=new o({auth:{type:String,label:"Authentication",optional:!0},logRequests:{type:Boolean,defaultValue:!0,label:"Requests"},logResponses:{type:Boolean,defaultValue:!1,label:"Responses"},logTiming:{type:Boolean,defaultValue:!0,label:"Timing"}}),l=new o({name:i,type:a,wadoUriRoot:s,wadoRoot:{type:String,label:"WADO root",max:1e3},imageRendering:{type:String,label:"Image rendering",allowedValues:["","wadouri","orthanc"],valuesLabels:["","WADO URI","ORTHANC"]},qidoRoot:{type:String,label:"QIDO root",max:1e3},qidoSupportsIncludeField:{type:Boolean,label:"QIDO supports including fields",defaultValue:!1},requestOptions:{type:r,label:"Request Options"}}),d=new o({aeTitle:{type:String,label:"AE Title"},hostAE:{type:String,label:"AE Host",optional:!0},host:{type:String,label:"Host Domain/IP",regEx:o.RegEx.WeakDomain},port:{type:Number,label:"Port",min:1,defaultValue:11112,max:65535},default:{type:Boolean,label:"Default",defaultValue:!1},server:{type:Boolean,label:"Server",defaultValue:!1},supportsInstanceRetrievalByStudyUid:{type:Boolean,label:"Supports instance retrieval by StudyUid",defaultValue:!0}}),u=new o({name:i,type:a,wadoUriRoot:s,requestOptions:{type:r,label:"Request Options"},peers:{type:[d],label:"Peer List",minCount:1}}),c=new o({studyListFunctionsEnabled:{type:Boolean,label:"Study List Functions Enabled?",defaultValue:!0},leftSidebarOpen:{type:Boolean,label:"Left sidebar open by default?",defaultValue:!1},displaySetNavigationLoopOverSeries:{type:Boolean,label:"The UP/DOWN display set navigation buttons will start over when reach the last display set in viewport?",defaultValue:!0},displaySetNavigationMultipleViewports:{type:Boolean,label:"The UP/DOWN display set navigation buttons will iterate over all the viewports at once?",defaultValue:!1},displayEchoUltrasoundWorkflow:{type:Boolean,label:"Enable cine dialog enhancements for multiframe images.",defaultValue:!1}}),p=new o({verifyEmail:{type:Boolean,label:"Verify Email",defaultValue:!1},ui:{type:c,label:"UI Settings"}}),m=new o({dicomWeb:{type:[l],label:"DICOMWeb Servers",optional:!0},dimse:{type:[u],label:"DIMSE Servers",optional:!0}}),b=new o({servers:{type:m,label:"Servers"},defaultServiceType:{type:String,label:"Default Service Type",defaultValue:"dicomWeb"},public:{type:p,label:"Public Server Configuration"},origin:{type:String,label:"Origin",optional:!0}})}]}},client:{"index.js":["./collections","./lib","./components",function(e,t,n){n.import("./collections"),n.import("./lib"),n.import("./components")}],collections:{"index.js":["./subscriptions.js",function(e,t,n){n.import("./subscriptions.js")}],"subscriptions.js":function(){e.subscribe("servers"),e.subscribe("currentServer")}},components:{"index.js":["./progressDialog","./seriesDetailsModal","./serverInformation","./studyContextMenu","./studylist","./themeSelector",function(e,t,n){n.import("./progressDialog"),n.import("./seriesDetailsModal"),n.import("./serverInformation"),n.import("./studyContextMenu"),n.import("./studylist"),n.import("./themeSelector")}],progressDialog:{"index.js":["./progressDialog.html","./progressDialog.styl","./progressDialog.js",function(e,t,n){n.import("./progressDialog.html"),n.import("./progressDialog.styl"),n.import("./progressDialog.js")}],"progressDialog.html":["./template.progressDialog.js",function(e,t,n){n.exports=e("./template.progressDialog.js")}],"template.progressDialog.js":function(){we.__checkName("progressDialog"),we.progressDialog=new we("Template.progressDialog",function(){var e=this;return Me.DIV({id:"progressDialog",tabindex:"0"},"\n ",Me.DIV({class:"dialogHeader"},"\n ",Me.H5(ke.View("lookup:progressDialogTitle",function(){return Te.mustache(e.lookup("progressDialogTitle"))})),"\n "),"\n ",Me.DIV({class:"dialogContent"},"\n ",Me.DIV({class:"progress"},"\n ",Me.DIV({class:"progress-bar progress-bar-striped active",role:"progressbar",style:function(){return["width: ",Te.mustache(e.lookup("progressStatus")),"%"]}},ke.View("lookup:formatNumberPrecision",function(){return Te.mustache(e.lookup("formatNumberPrecision"),e.lookup("progressStatus"),0)}),"%"),"\n "),"\n ",Me.DIV({id:"message"},"\n ",ke.View("lookup:progressMessage",function(){return Te.makeRaw(Te.mustache(e.lookup("progressMessage")))}),"\n "),"\n "),"\n ")})},"progressDialog.js":["meteor/templating","meteor/session","meteor/underscore","meteor/ohif:core",function(e,t,n){var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/session",{Session:function(e){a=e}});var s;n.import("meteor/underscore",{_:function(e){s=e}});var r;n.import("meteor/ohif:core",{OHIF:function(e){r=e}});var l=function e(t){var n=a.get("progressDialogSettings");n.numberOfCompleted=t,a.set("progressDialogSettings",n),n.numberOfCompleted===n.numberOfTotal&&r.studylist.progressDialog.close()},d=function e(t){var n=a.get("progressDialogSettings");n.message=t,a.set("progressDialogSettings",n)};r.studylist.progressDialog={update:s.debounce(l,100),setMessage:s.debounce(d,100),show:function(){function e(e,t){a.set("progressDialogSettings",{title:e,numberOfCompleted:0,numberOfTotal:t}),o("#progressDialog").css("display","block")}return e}(),close:function(){function e(){a.set("progressDialogSettings",{title:"",numberOfCompleted:0,numberOfTotal:1}),o("#progressDialog").css("display","none")}return e}()},i.progressDialog.helpers({progressDialogTitle:function(){function e(){var e=a.get("progressDialogSettings");if(e)return e.title}return e}(),progressStatus:function(){function e(){var e=a.get("progressDialogSettings");if(e&&void 0!==e.numberOfCompleted&&void 0!==e.numberOfTotal)return e.numberOfCompleted/e.numberOfTotal*100}return e}(),progressMessage:function(){function e(){var e=a.get("progressDialogSettings");if(e)return e.message}return e}()})}],"progressDialog.styl":["./progressDialog.styl.css",function(e,t,n){n.exports=e("./progressDialog.styl.css")}],"progressDialog.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles("#progressDialog {\n display: none;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n margin: auto;\n width: 20%;\n height: 20%;\n z-index: 100;\n border-radius: 5px;\n padding: 10px 20px 10px 20px;\n background-color: #fff;\n outline: none;\n}\n#progressDialog .dialogContent {\n margin-bottom: 20px;\n}\n#progressDialog .dialogContent #message {\n width: 100%;\n}\n#progressDialog .dialogContent #message span {\n display: inline-block;\n width: 100%;\n}\n")}]},seriesDetailsModal:{"index.js":["./viewSeriesDetailsModal.html","./seriesDetailsTable/seriesDetailsTable.html","./seriesDetailsTable/seriesDetailsTable.styl","./seriesDetailsTable/seriesDetailsTable.js",function(e,t,n){n.import("./viewSeriesDetailsModal.html"),n.import("./seriesDetailsTable/seriesDetailsTable.html"),n.import("./seriesDetailsTable/seriesDetailsTable.styl"),n.import("./seriesDetailsTable/seriesDetailsTable.js")}],"viewSeriesDetailsModal.html":["./template.viewSeriesDetailsModal.js",function(e,t,n){n.exports=e("./template.viewSeriesDetailsModal.js")}],"template.viewSeriesDetailsModal.js":function(){we.__checkName("viewSeriesDetailsModal"),we.viewSeriesDetailsModal=new we("Template.viewSeriesDetailsModal",function(){var e=this;return Me.DIV({class:"modal",id:"viewSeriesDetailsModal",tabindex:"-1",role:"dialog","aria-labelledby":"viewSeriesDetailsModalLabel"},"\n ",Me.DIV({class:"modal-dialog",role:"document"},"\n ",Me.DIV({class:"modal-content"},"\n ",Me.Raw('<div class="modal-header">\n <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>\n <h4 class="modal-title" id="associationModalLabel">Series Details</h4>\n </div>'),"\n ",Me.DIV({class:"modal-body"},"\n ",ke._TemplateWith(function(){return{selectedStudies:Te.call(e.lookup("selectedStudies"))}},function(){return Te.include(e.lookupTemplate("seriesDetailsTable"))}),"\n "),"\n ",Me.Raw('<div class="modal-footer">\n <button type="button" class="btn btn-secondary" data-dismiss="modal" id="cancelAssociation">Close</button>\n </div>'),"\n "),"\n "),"\n ")})},seriesDetailsTable:{"seriesDetailsTable.html":["./template.seriesDetailsTable.js",function(e,t,n){n.exports=e("./template.seriesDetailsTable.js")}],"template.seriesDetailsTable.js":function(){we.__checkName("seriesDetailsTable"),we.seriesDetailsTable=new we("Template.seriesDetailsTable",function(){var e=this;return[ke.Unless(function(){return Te.call(Te.dot(e.lookup("selectedStudies"),"length"))},function(){return["\n ",Me.P({align:"center"},"Series details not found"),"\n "]}),"\n ",ke.Each(function(){return Te.call(e.lookup("selectedStudies"))},function(){return["\n ",Me.DIV({class:"selectedStudyContainer"},"\n ",Me.TABLE({class:"table table-responsive tblStudyDetails"},"\n ",Me.TBODY("\n ",Me.TR("\n ",Me.TD({class:"center patientID"},"\n ",Me.DIV("\n ",Me.SPAN("Patient ID"),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control",id:"patientID",placeholder:"Patient ID",disabled:"disabled",value:function(){return Te.mustache(e.lookup("patientId"))}}),"\n "),"\n ",Me.TD({class:"patientName"},"\n ",Me.DIV("\n ",Me.SPAN("Patient Name"),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control",id:"patientName",placeholder:"Patient Name",disabled:"disabled",value:function(){return Te.mustache(e.lookup("formatPN"),e.lookup("patientName"))}}),"\n "),"\n ",Me.TD({class:"accessionNumber"},"\n ",Me.DIV("\n ",Me.SPAN("Accession Number"),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control",id:"accessionNumber",placeholder:"Accession Number",disabled:"disabled",value:function(){return Te.mustache(e.lookup("accessionNumber"))}}),"\n "),"\n "),"\n ",Me.TR("\n ",Me.TD({class:"studyDescription"},"\n ",Me.DIV("\n ",Me.SPAN("Study Description"),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control",id:"studyDescription",placeholder:"Study Description",disabled:"disabled",value:function(){return Te.mustache(e.lookup("studyDescription"))}}),"\n "),"\n ",Me.TD({class:"studyDate"},"\n ",Me.DIV("\n ",Me.SPAN("Study Date"),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control",id:"studyDate",placeholder:"Study Date",disabled:"disabled",value:function(){return Te.mustache(e.lookup("formatDA"),e.lookup("studyDate"))}}),"\n "),"\n\n ",Me.TD(),"\n "),"\n "),"\n "),"\n\n ",Me.TABLE({class:"table table-responsive tblSeriesDetails"},"\n ",Me.THEAD("\n ",Me.TR("\n ",Me.TH({class:"header"},"Number"),"\n ",Me.TH({class:"header"},"Modality"),"\n ",Me.TH({class:"header"},"Description"),"\n ",Me.TH({class:"header"},"Instances"),"\n "),"\n "),"\n\n ",Me.TBODY("\n ",ke.If(function(){return Te.call(e.lookup("displaySeriesLoadingText"))},function(){return["\n ",Me.TR("\n ",Me.TD({colspan:"4",class:"center"},"\n ",Te.include(e.lookupTemplate("loadingText")),"\n "),"\n "),"\n "]}),"\n\n ",ke.Each(function(){return Te.call(e.lookup("seriesList"))},function(){return["\n ",Me.TR("\n ",Me.TD({class:"center"},ke.View("lookup:seriesNumber",function(){return Te.mustache(e.lookup("seriesNumber"))})),"\n ",Me.TD({class:"center"},ke.View("lookup:modality",function(){return Te.mustache(e.lookup("modality"))})),"\n ",Me.TD({class:"center"},ke.View("lookup:seriesDescription",function(){return Te.mustache(e.lookup("seriesDescription"))})),"\n ",Me.TD({class:"center"},ke.View("lookup:instances.length",function(){return Te.mustache(Te.dot(e.lookup("instances"),"length"))})),"\n "),"\n "]}),"\n "),"\n "),"\n "),"\n "]})]})},"seriesDetailsTable.js":function(){we.seriesDetailsTable.onCreated(function(){var e=we.instance();e.selectedStudies=new ReactiveDict;var t=e.data.selectedStudies;t&&(Ce.each(t,function(e){e.displaySeriesLoadingText=!0}),e.selectedStudies.set("studies",t))}),we.seriesDetailsTable.onRendered(function(){var e=we.instance(),t=e.selectedStudies.get("studies");t&&Ce.map(t,function(n,o){t[o].seriesList=[],We(n.studyInstanceUid,function(n){t[o].seriesList=n.seriesList,t[o].displaySeriesLoadingText=!1,e.selectedStudies.set("studies",t)})})}),we.seriesDetailsTable.helpers({selectedStudies:function(){function e(){var e=we.instance();return e.selectedStudies.get("studies")}return e}()})},"seriesDetailsTable.styl":["./seriesDetailsTable.styl.css",function(e,t,n){n.exports=e("./seriesDetailsTable.styl.css")}],"seriesDetailsTable.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles('.theme-icon-crickets,\n.theme-icon-tide,\n.theme-icon-tigerlily,\n.theme-icon-quartz,\n.theme-icon-overcast,\n.theme-icon-mint,\n.theme-icon-honeycomb {\n display: inline-block;\n background: url("/packages/design/assets/theme-icons.png") no-repeat;\n overflow: hidden;\n text-indent: -9999px;\n text-align: left;\n}\n.theme-icon-crickets {\n background-position: 0px 0px;\n width: 64px;\n height: 56px;\n}\n.theme-icon-tide {\n background-position: 0px -56px;\n width: 64px;\n height: 54px;\n}\n.theme-icon-tigerlily {\n background-position: 0px -110px;\n width: 62px;\n height: 61px;\n}\n.theme-icon-quartz {\n background-position: 0px -171px;\n width: 59px;\n height: 64px;\n}\n.theme-icon-overcast {\n background-position: 0px -235px;\n width: 58px;\n height: 37px;\n}\n.theme-icon-mint {\n background-position: 0px -272px;\n width: 57px;\n height: 61px;\n}\n.theme-icon-honeycomb {\n background-position: 0px -333px;\n width: 50px;\n height: 58px;\n}\n.selectedStudyContainer {\n margin-bottom: 15px;\n}\n.selectedStudyContainer .tblStudyDetails tbody > tr > td > label {\n color: $textPrimaryColor;\n}\n.selectedStudyContainer .tblStudyDetails tbody > tr > td > input[type="text"] {\n height: 28px;\n background-color: $primaryBackgroundColor;\n color: $textPrimaryColor;\n width: calc(100% - 10px);\n border-radius: 4px;\n box-sizing: border-box;\n}\n.selectedStudyContainer .tblSeriesDetails thead > tr > th {\n text-align: center;\n}\n.selectedStudyContainer .tblSeriesDetails tbody > tr td {\n text-align: center;\n color: $textPrimaryColor;\n}\n.selectedStudyContainer .tblSeriesDetails .loadingTextDiv {\n font-size: 13px;\n color: $textSecondaryColor;\n}\n')}]}},serverInformation:{"index.js":["./serverInformationDicomWeb/serverInformationDicomWeb.html","./serverInformationDicomWeb/serverInformationDicomWeb.js","./serverInformationDimse/serverInformationDimse.html","./serverInformationDimse/serverInformationDimse.js","./serverInformationForm/serverInformationForm.html","./serverInformationForm/serverInformationForm.js","./serverInformationList/serverInformationList.html","./serverInformationList/serverInformationList.js","./serverInformationModal/serverInformationModal.html","./serverInformationModal/serverInformationModal.styl","./serverInformationModal/serverInformationModal.js",function(e,t,n){n.import("./serverInformationDicomWeb/serverInformationDicomWeb.html"),n.import("./serverInformationDicomWeb/serverInformationDicomWeb.js"),n.import("./serverInformationDimse/serverInformationDimse.html"),n.import("./serverInformationDimse/serverInformationDimse.js"),n.import("./serverInformationForm/serverInformationForm.html"),n.import("./serverInformationForm/serverInformationForm.js"),n.import("./serverInformationList/serverInformationList.html"),n.import("./serverInformationList/serverInformationList.js"),n.import("./serverInformationModal/serverInformationModal.html"),n.import("./serverInformationModal/serverInformationModal.styl"),n.import("./serverInformationModal/serverInformationModal.js")}],serverInformationDicomWeb:{"serverInformationDicomWeb.html":["./template.serverInformationDicomWeb.js",function(e,t,n){n.exports=e("./template.serverInformationDicomWeb.js")}],"template.serverInformationDicomWeb.js":function(){we.__checkName("serverInformationDicomWeb"),we.serverInformationDicomWeb=new we("Template.serverInformationDicomWeb",function(){var e=this;return[Me.DIV({class:"row"},"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("wadoUriRoot")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("wadoRoot")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("imageRendering"),hideSearch:Te.call(!0),options:Te.call(Te.dataMustache(e.lookup("clone"),Te.kw({placeholder:"Select an option"})))}},function(){return Te.include(e.lookupTemplate("inputSelect"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("qidoRoot")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",Me.Raw("<strong>QIDO options</strong>"),"\n ",Me.DIV({class:"form-group"},"\n ",Me.DIV({class:"form-control"},"\n ",Me.DIV({class:"checkbox"},"\n ",ke._TemplateWith(function(){return{key:Te.call("qidoSupportsIncludeField")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n "),"\n "),"\n "),"\n "),Me.Raw("\n <hr>\n <h4>Request options</h4>\n "),ke._TemplateWith(function(){return{class:Te.call("row"),key:Te.call("requestOptions")}},function(){return Te.include(e.lookupTemplate("group"),function(){return["\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("auth")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",Me.STRONG("Logging options"),"\n ",Me.DIV({class:"form-group"},"\n ",Me.DIV({class:"form-control clearfix"},"\n ",Me.DIV({class:"checkbox pull-left"},"\n ",ke._TemplateWith(function(){return{key:Te.call("logRequests")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n ",Me.DIV({class:"checkbox pull-left"},"\n ",ke._TemplateWith(function(){return{key:Te.call("logResponses")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n ",Me.DIV({class:"checkbox pull-left"},"\n ",ke._TemplateWith(function(){return{key:Te.call("logTiming")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n "),"\n "),"\n "),"\n "]})})]})},"serverInformationDicomWeb.js":function(){we.serverInformationDicomWeb.onRendered(function(){var e=we.instance();e.autorun(function(){var t=e.data.mode.get();if("edit"===t){var n=e.data.currentItem.get();e.data.form.value(n)}})})}},serverInformationDimse:{"serverInformationDimse.html":["./template.serverInformationDimse.js",function(e,t,n){n.exports=e("./template.serverInformationDimse.js")}],"template.serverInformationDimse.js":function(){we.__checkName("serverInformationDimse"),we.serverInformationDimse=new we("Template.serverInformationDimse",function(){var e=this;return[Me.DIV({class:"row"},"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("wadoUriRoot")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n "),"\n ",Me.DIV({class:"panel panel-default panel-body"},"\n ",Me.DIV({class:"clearfix"},"\n ",Me.Raw('<h4 class="pull-left">Peer List</h4>'),"\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-primary pull-right"),action:Te.call("newPeer"),params:Te.call(e.lookup("peer"))}},function(){return Te.include(e.lookupTemplate("button"),function(){return"New peer"})}),"\n "),"\n ",Me.Raw("<hr>"),"\n ",ke._TemplateWith(function(){return{class:Te.call("row"),key:Te.call("peers"),arrayValues:Te.call(!0)}},function(){return Te.include(e.lookupTemplate("group"),function(){return["\n ",ke.Each(function(){return{_sequence:Te.call(Te.dot(e.lookup("instance"),"peers","get")),_variable:"peer"}},function(){return["\n ",ke._TemplateWith(function(){return{class:Te.call("col-lg-6")}},function(){return Te.include(e.lookupTemplate("group"),function(){return["\n ",Me.DIV({class:"panel panel-default panel-body"},"\n ",Me.DIV({class:"row"},"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{class:Te.call("form-control"),key:Te.call("aeTitle")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{class:Te.call("form-control"),key:Te.call("hostAE")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{class:Te.call("form-control"),key:Te.call("host")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{class:Te.call("form-control"),key:Te.call("port")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-12"},"\n ",Me.STRONG("Settings"),"\n ",Me.DIV({class:"form-group"},"\n ",Me.DIV({class:"form-control height-auto clearfix"},"\n ",Me.DIV({class:"checkbox pull-left"},"\n ",ke._TemplateWith(function(){return{key:Te.call("default")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n ",Me.DIV({class:"checkbox pull-left"},"\n ",ke._TemplateWith(function(){return{key:Te.call("server")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n ",Me.DIV({class:"checkbox pull-left"},"\n ",ke._TemplateWith(function(){return{key:Te.call("supportsInstanceRetrievalByStudyUid")}},function(){return Te.include(e.lookupTemplate("inputCheckbox"))}),"\n "),"\n "),"\n "),"\n "),"\n ",Me.DIV({class:"col-lg-12 text-right"},"\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-sm btn-danger"),action:Te.call("removePeer"),params:Te.call(e.lookup("@index"))}},function(){return Te.include(e.lookupTemplate("button"),function(){return"Remove"})}),"\n "),"\n "),"\n "),"\n "]})}),"\n "]}),"\n "]})}),"\n "),Me.Raw("\n <hr>")]})},"serverInformationDimse.js":function(){we.serverInformationDimse.onCreated(function(){var e=we.instance();e.peers=new ReactiveVar([]),e.autorun(function(){var t=e.data.currentItem.get();t&&e.peers.set(t.peers||[])});var t=e.data.api;Ce.extend(t,{newPeer:function(){function t(){var t=e.peers.get();t.push({}),e.peers.set(t)}return t}(),removePeer:function(){function t(t){var n=e.peers.get();n.splice(t,1),e.peers.set(n);var o=e.data.currentItem.get();o.peers=n,he.afterFlush(function(){return e.data.form.value(o)})}return t}()})}),we.serverInformationDimse.onRendered(function(){var e=we.instance();e.autorun(function(){var t=e.data.mode.get();if("edit"===t){var n=e.data.currentItem.get();e.data.form.value(n)}})})}},serverInformationForm:{"serverInformationForm.html":["./template.serverInformationForm.js",function(e,t,n){n.exports=e("./template.serverInformationForm.js")}],"template.serverInformationForm.js":function(){we.__checkName("serverInformationForm"),we.serverInformationForm=new we("Template.serverInformationForm",function(){var e=this;return ke._TemplateWith(function(){return{class:Te.call("server-information-form"),schema:Te.call(Te.dot(e.lookup("instance"),"currentSchema")),api:Te.call(Te.dot(e.lookup("."),"api"))}},function(){return Te.include(e.lookupTemplate("form"),function(){return["\n ",ke._TemplateWith(function(){return{key:Te.call("_id")}},function(){return Te.include(e.lookupTemplate("inputHidden"));
}),"\n ",Me.DIV({class:"row"},"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("name")}},function(){return Te.include(e.lookupTemplate("inputText"))}),"\n "),"\n ",Me.DIV({class:"col-lg-6"},"\n ",ke._TemplateWith(function(){return{labelClass:Te.call("form-group"),key:Te.call("type"),hideSearch:Te.call(!0),disabled:Te.call(Te.dataMustache(e.lookup("eq"),Te.dot(e.lookup("."),"mode","get"),"edit")),options:Te.call(Te.dataMustache(e.lookup("clone"),Te.kw({placeholder:"Choose a server type"})))}},function(){return Te.include(e.lookupTemplate("inputSelect"))}),"\n "),"\n "),"\n ",Me.HR(),"\n ",ke.If(function(){return Te.dataMustache(e.lookup("eq"),Te.dot(e.lookup("."),"serverType","get"),"dicomWeb")},function(){return["\n ",ke._TemplateWith(function(){return Te.call(e.lookup("."))},function(){return Te.include(e.lookupTemplate("serverInformationDicomWeb"))}),"\n "]}),"\n ",ke.If(function(){return Te.dataMustache(e.lookup("eq"),Te.dot(e.lookup("."),"serverType","get"),"dimse")},function(){return["\n ",ke._TemplateWith(function(){return Te.call(e.lookup("."))},function(){return Te.include(e.lookupTemplate("serverInformationDimse"))}),"\n "]}),"\n ",ke.If(function(){return Te.call(Te.dot(e.lookup("."),"serverType","get"))},function(){return["\n ",Me.DIV("\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-primary"),action:Te.call("save")}},function(){return Te.include(e.lookupTemplate("button"),function(){return"Save"})}),"\n "),"\n "]}),"\n "]})})})},"serverInformationForm.js":["meteor/meteor","meteor/templating","meteor/reactive-var","meteor/ohif:study-list/both/schema/servers.js",function(e,t,n){var o;n.import("meteor/meteor",{Meteor:function(e){o=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/reactive-var",{ReactiveVar:function(e){a=e}});var s;n.import("meteor/ohif:study-list/both/schema/servers.js",{DICOMWebServer:function(e){s=e}});var r;n.import("meteor/ohif:study-list/both/schema/servers.js",{DIMSEServer:function(e){r=e}}),i.serverInformationForm.onCreated(function(){var e=i.instance();e.data.api={save:function(){function t(){if(e.data.form.validate()){var t=e.data.form.value();o.call("serverSave",t,function(t){e.data.resetState()})}}return t}()},e.currentSchema=new a(s)}),i.serverInformationForm.onRendered(function(){var e=i.instance();e.data.$form=e.$("form:first"),e.data.form=e.data.$form.data("component"),e.autorun(function(){var t=e.$("[data-key=type] :input").data("component");t.depend();var n=t.value();e.data.serverType.set(n),"dimse"===n?e.currentSchema.set(r):e.currentSchema.set(s)}),e.autorun(function(){var t=e.data.mode.get();if("edit"===t){var n=e.data.currentItem.get();e.data.form.value(n)}})})}]},serverInformationList:{"serverInformationList.html":["./template.serverInformationList.js",function(e,t,n){n.exports=e("./template.serverInformationList.js")}],"template.serverInformationList.js":function(){we.__checkName("serverInformationList"),we.serverInformationList=new we("Template.serverInformationList",function(){var e=this;return ke._TemplateWith(function(){return{api:Te.call(Te.dot(e.lookup("instance"),"api"))}},function(){return Te.include(e.lookupTemplate("form"),function(){return["\n ",Me.TABLE({id:"tblServer",class:"table"},"\n ",Me.THEAD("\n ",Me.TR("\n ",Me.TH("Name"),"\n ",Me.TH("Type"),"\n ",Me.TH({class:"text-right"},"Actions"),"\n "),"\n "),"\n ",Me.TBODY("\n ",ke.Each(function(){return{_sequence:Te.call(e.lookup("servers")),_variable:"server"}},function(){return["\n ",Me.TR("\n ",Me.TD(ke.View("lookup:server.name",function(){return Te.mustache(Te.dot(e.lookup("server"),"name"))})),"\n ",Me.TD(ke.View("lookup:server.type",function(){return Te.mustache(Te.dot(e.lookup("server"),"type"))})),"\n ",Me.TD({class:"text-right"},"\n ",Me.DIV({class:"btn-group",role:"group","aria-label":"Actions"},"\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-sm btn-default"),action:Te.call("use"),params:Te.call(e.lookup("server")),title:Te.call("Use this server"),disabled:Te.call(Te.dataMustache(e.lookup("isActive"),e.lookup("server")))}},function(){return Te.include(e.lookupTemplate("button"),function(){return["\n ",ke.If(function(){return Te.dataMustache(e.lookup("isActive"),e.lookup("server"))},function(){return["\n ",Me.I({class:"fa fa-check-square-o"}),"\n "]},function(){return["\n ",Me.I({class:"fa fa-square-o"}),"\n "]}),"\n "]})}),"\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-sm btn-default"),action:Te.call("edit"),params:Te.call(e.lookup("server")),title:Te.call("Edit"),disabled:Te.call(Te.dataMustache(e.lookup("eq"),Te.dot(e.lookup("server"),"origin"),"json"))}},function(){return Te.include(e.lookupTemplate("button"),function(){return["\n ",Me.I({class:"fa fa-pencil"}),"\n "]})}),"\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-sm btn-danger"),action:Te.call("delete"),params:Te.call(e.lookup("server")),title:Te.call("Remove"),disabled:Te.call(Te.dataMustache(e.lookup("eq"),Te.dot(e.lookup("server"),"origin"),"json"))}},function(){return Te.include(e.lookupTemplate("button"),function(){return["\n ",Me.I({class:"fa fa-trash"}),"\n "]})}),"\n "),"\n "),"\n "),"\n "]},function(){return["\n ",Me.TR("\n ",Me.TD({class:"text-center",colspan:"3"},"No servers found"),"\n "),"\n "]}),"\n "),"\n "),"\n ",ke._TemplateWith(function(){return{class:Te.call("btn btn-sm btn-default"),action:Te.call("add")}},function(){return Te.include(e.lookupTemplate("button"),function(){return["\n ",Me.I({class:"fa fa-plus"})," Add a new server\n "]})}),"\n "]})})})},"serverInformationList.js":function(){we.serverInformationList.onCreated(function(){var t=we.instance();t.api={add:function(){function e(){return t.data.mode.set("create")}return e}(),edit:function(){function e(e){t.data.currentItem.set(e),t.data.mode.set("edit")}return e}(),delete:function(){function t(t){confirm("Are you sure you want to remove this peer?")&&e.call("serverRemove",t._id,function(e){})}return t}(),use:function(){function t(t){e.call("serverSetActive",t._id,function(e){})}return t}()}}),we.serverInformationList.helpers({isActive:function(){function e(e){var t=Ne.findOne();if(t)return e._id===t.serverId}return e}(),servers:function(){function e(){var e={sort:{origin:-1,type:1,name:1}};return je.find({},e).fetch()}return e}()})}},serverInformationModal:{"serverInformationModal.html":["./template.serverInformationModal.js",function(e,t,n){n.exports=e("./template.serverInformationModal.js")}],"template.serverInformationModal.js":function(){we.__checkName("serverInformationModal"),we.serverInformationModal=new we("Template.serverInformationModal",function(){var e=this;return Me.DIV({class:"modal",id:"serverInformationModal",tabindex:"-1",role:"dialog","aria-labelledby":"serverInformationModalLabel"},"\n ",Me.DIV({class:"modal-dialog modal-lg",role:"document"},"\n ",Me.DIV({class:"modal-content"},"\n ",ke.Let({isList:function(){return Te.call(Te.dataMustache(e.lookup("eq"),Te.dot(e.lookup("instance"),"container","mode","get"),"list"))}},function(){return["\n ",Me.DIV({class:"modal-header"},"\n ",Me.BUTTON({type:"button",class:"close","data-dismiss":"modal","aria-label":"Close"},Me.SPAN({"aria-hidden":"true"},Me.CharRef({html:"&times;",str:"×"}))),"\n ",Me.H4({class:"modal-title",id:"serverInformationModalLabel"},"Server Information"),"\n "),"\n ",Me.DIV({class:"modal-body"},"\n ",ke.If(function(){return Te.call(e.lookup("isList"))},function(){return["\n ",ke._TemplateWith(function(){return Te.call(Te.dot(e.lookup("instance"),"container"))},function(){return Te.include(e.lookupTemplate("serverInformationList"))}),"\n "]},function(){return["\n ",ke._TemplateWith(function(){return Te.call(Te.dot(e.lookup("instance"),"container"))},function(){return Te.include(e.lookupTemplate("serverInformationForm"))}),"\n "]}),"\n "),"\n ",Me.DIV({class:"modal-footer"},"\n ",ke.Unless(function(){return Te.call(e.lookup("isList"))},function(){return["\n ",Me.BUTTON({type:"button",class:"btn btn-default js-back"},"Back"),"\n "]}),"\n ",Me.BUTTON({type:"button",class:"btn btn-default","data-dismiss":"modal"},"Close"),"\n "),"\n "]}),"\n "),"\n "),"\n ")})},"serverInformationModal.js":function(){we.serverInformationModal.onCreated(function(){var e=we.instance();e.container={mode:new ReactiveVar("list"),serverType:new ReactiveVar(null),currentItem:new ReactiveVar(null),$form:null,resetState:function(){function t(){e.container.mode.set("list"),e.container.serverType.set(null),e.container.currentItem.set(null)}return t}()}}),we.serverInformationModal.events({"click .js-back, click [data-dismiss=modal]":function(){function e(e,t){t.container.resetState()}return e}()})},"serverInformationModal.styl":["./serverInformationModal.styl.css",function(e,t,n){n.exports=e("./serverInformationModal.styl.css")}],"serverInformationModal.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles(".server-information-form label.wrapper {\n display: block;\n}\n.server-information-form .checkbox {\n margin: 0 8px 0 0;\n}\n")}]}},studyContextMenu:{"index.js":["./studyContextMenu.html","./studyContextMenu.js",function(e,t,n){n.import("./studyContextMenu.html"),n.import("./studyContextMenu.js")}],"studyContextMenu.html":["./template.studyContextMenu.js",function(e,t,n){n.exports=e("./template.studyContextMenu.js")}],"template.studyContextMenu.js":function(){we.__checkName("studyContextMenu"),we.studyContextMenu=new we("Template.studyContextMenu",function(){var e=this;return Te.include(e.lookupTemplate("dropdownForm"),function(){return["\n ",Me.LI(Me.A({id:"viewSeriesDetails",type:"button",title:"View Series Details"},"View Series Details")),"\n ",Me.LI({class:"disabled"},Me.A({class:"disabled"},"Anonymize")),"\n ",Me.LI({class:"disabled"},Me.A({class:"disabled"},"Send")),"\n ",Me.LI({class:"divider",role:"separator"}),"\n ",Me.LI({class:"disabled"},Me.A({class:"disabled"},"Delete")),"\n ",Me.LI(Me.A({id:"exportSelectedStudies",title:"Export Selected Studies"},"Export")),"\n "]})})},"studyContextMenu.js":["meteor/templating","meteor/ohif:core","meteor/jquery",function(e,t,n){function o(){var e=s.studylist.getSelectedStudies();s.studylist.exportStudies(e)}function i(){var e=s.studylist.getSelectedStudies();e&&Modal.show("viewSeriesDetailsModal",{selectedStudies:e})}var a;n.import("meteor/templating",{Template:function(e){a=e}});var s;n.import("meteor/ohif:core",{OHIF:function(e){s=e}});var r;n.import("meteor/jquery",{$:function(e){r=e}}),Re=function e(t){if(s.uiSettings.studyListFunctionsEnabled){Ee.functions.exportSelectedStudies=o,Ee.functions.viewSeriesDetails=i,a.studyContextMenu.$study=r(t.currentTarget);var n=s.ui.showFormDropdown("studyContextMenu"),l=r(n),d=l.children(".dropdown-menu");n.oncontextmenu=function(){return!1},d.css({position:"fixed",left:t.clientX+"px",top:t.clientY+"px","z-index":1e4}).bounded().focus()}},a.studyContextMenu.events({"click a":function(){function e(e,t){var n=r(e.currentTarget);if(!n.hasClass("disabled")){var o=n.attr("id");if(o in Ee.functions){var i=Ee.functions[o];"function"==typeof i&&i(a.studyContextMenu.$study,e)}}}return e}()})}]},studylist:{"index.js":["./studylist.html","./studylist.js","./studylist.styl","./studylistStudy/studylistStudy.html","./studylistStudy/studylistStudy.js","./studylistStudy/studylistStudy.styl","./studylistResult/studylistResult.html","./studylistResult/studylistResult.js","./studylistResult/studylistResult.styl","./studylistToolbar/studylistToolbar.html","./studylistToolbar/studylistToolbar.js","./studylistToolbar/studylistToolbar.styl","./studylistPagination/studylistPagination.html","./studylistPagination/studylistPagination.styl","./studylistPagination/studylistPagination.js",function(e,t,n){n.import("./studylist.html"),n.import("./studylist.js"),n.import("./studylist.styl"),n.import("./studylistStudy/studylistStudy.html"),n.import("./studylistStudy/studylistStudy.js"),n.import("./studylistStudy/studylistStudy.styl"),n.import("./studylistResult/studylistResult.html"),n.import("./studylistResult/studylistResult.js"),n.import("./studylistResult/studylistResult.styl"),n.import("./studylistToolbar/studylistToolbar.html"),n.import("./studylistToolbar/studylistToolbar.js"),n.import("./studylistToolbar/studylistToolbar.styl"),n.import("./studylistPagination/studylistPagination.html"),n.import("./studylistPagination/studylistPagination.styl"),n.import("./studylistPagination/studylistPagination.js")}],"studylist.html":["./template.studylist.js",function(e,t,n){n.exports=e("./template.studylist.js")}],"template.studylist.js":function(){we.__checkName("studylist"),we.studylist=new we("Template.studylist",function(){var e=this;return[Me.DIV({id:"studylistTabs",class:"tab-content"},"\n ",Me.DIV({role:"tabpanel",class:"tab-pane active",id:"studylistTab"},"\n ",Me.DIV({class:"studylistContainer"},"\n ",ke._TemplateWith(function(){return Te.dataMustache(e.lookup("clone"),e.lookup("."))},function(){return Te.include(e.lookupTemplate("studylistResult"))}),"\n "),"\n "),"\n ",Me.Raw('<div role="tabpanel" class="tab-pane" id="viewerTab">\n <div class="viewerContainer">\n </div>\n </div>'),"\n "),"\n ",ke.Each(function(){return{_sequence:Te.call(e.lookup("additionalTemplates")),_variable:"templateName"}},function(){return["\n ",ke._TemplateWith(function(){return{template:Te.call(e.lookup("templateName"))}},function(){return Te.include(function(){return Te.call(we.__dynamic)})}),"\n "]}),"\n ",Te.include(e.lookupTemplate("progressDialog"))]})},"studylist.js":function(){Oe=ye.get("ViewerData")||{},_e=new e.Collection(null),_e._debugName="StudyListStudies",ye.setDefault("activeContentId","studylistTab"),we.studylist.onCreated(function(){var e=we.instance();Ee.subscriptions&&Ee.subscriptions.forEach(function(t){e.subscribe(t)})}),we.studylist.onRendered(function(){var t=we.instance();if(t.data&&t.data.studyInstanceUid){var n=t.data.studyInstanceUid;Fe(n,n)}else{console.log("studylist onRendered");var o=ye.get("activeContentId");"studylistTab"!==o&&Oe&&Oe[o]&&Ae(o)}e.subscribe("hangingprotocols")})},"studylist.styl":["./studylist.styl.css",function(e,t,n){n.exports=e("./studylist.styl.css")}],"studylist.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles('.theme-icon-crickets,\n.theme-icon-tide,\n.theme-icon-tigerlily,\n.theme-icon-quartz,\n.theme-icon-overcast,\n.theme-icon-mint,\n.theme-icon-honeycomb {\n display: inline-block;\n background: url("/packages/design/assets/theme-icons.png") no-repeat;\n overflow: hidden;\n text-indent: -9999px;\n text-align: left;\n}\n.theme-icon-crickets {\n background-position: 0px 0px;\n width: 64px;\n height: 56px;\n}\n.theme-icon-tide {\n background-position: 0px -56px;\n width: 64px;\n height: 54px;\n}\n.theme-icon-tigerlily {\n background-position: 0px -110px;\n width: 62px;\n height: 61px;\n}\n.theme-icon-quartz {\n background-position: 0px -171px;\n width: 59px;\n height: 64px;\n}\n.theme-icon-overcast {\n background-position: 0px -235px;\n width: 58px;\n height: 37px;\n}\n.theme-icon-mint {\n background-position: 0px -272px;\n width: 57px;\n height: 61px;\n}\n.theme-icon-honeycomb {\n background-position: 0px -333px;\n width: 50px;\n height: 58px;\n}\nbody {\n background-color: #000;\n}\nbody.theme-tide body {\n background-color: #000;\n}\nbody.theme-tigerlily body {\n background-color: #000;\n}\nbody.theme-crickets body {\n background-color: #000;\n}\nbody.theme-honeycomb body {\n background-color: #000;\n}\nbody.theme-mint body {\n background-color: #000;\n}\nbody.theme-overcast body {\n background-color: #000;\n}\nbody.theme-quartz body {\n background-color: #000;\n}\n#tblStudyList tr {\n height: 20px;\n}\n#studylistTab {\n background-color: #000;\n}\nbody.theme-tide #studylistTab {\n background-color: #000;\n}\nbody.theme-tigerlily #studylistTab {\n background-color: #000;\n}\nbody.theme-crickets #studylistTab {\n background-color: #000;\n}\nbody.theme-honeycomb #studylistTab {\n background-color: #000;\n}\nbody.theme-mint #studylistTab {\n background-color: #000;\n}\nbody.theme-overcast #studylistTab {\n background-color: #000;\n}\nbody.theme-quartz #studylistTab {\n background-color: #000;\n}\n.studylistContainer {\n color: #fff;\n margin: 2px auto 0;\n position: relative;\n width: 100%;\n}\n.studylistContainer {\n background-color: #000;\n}\nbody.theme-tide .studylistContainer {\n background-color: #000;\n}\nbody.theme-tigerlily .studylistContainer {\n background-color: #000;\n}\nbody.theme-crickets .studylistContainer {\n background-color: #000;\n}\nbody.theme-honeycomb .studylistContainer {\n background-color: #000;\n}\nbody.theme-mint .studylistContainer {\n background-color: #000;\n}\nbody.theme-overcast .studylistContainer {\n background-color: #000;\n}\nbody.theme-quartz .studylistContainer {\n background-color: #000;\n}\n.tab-content {\n width: 100%;\n height: calc(100% - 91px);\n}\n.tab-content .loadingTextDiv {\n font-size: 30px;\n}\n.tab-content .loadingTextDiv {\n color: #91b9cd;\n}\nbody.theme-tide .tab-content .loadingTextDiv {\n color: #91b9cd;\n}\nbody.theme-tigerlily .tab-content .loadingTextDiv {\n color: #9ccdf8;\n}\nbody.theme-crickets .tab-content .loadingTextDiv {\n color: #8be7b5;\n}\nbody.theme-honeycomb .tab-content .loadingTextDiv {\n color: #fab797;\n}\nbody.theme-mint .tab-content .loadingTextDiv {\n color: #a7e9b3;\n}\nbody.theme-overcast .tab-content .loadingTextDiv {\n color: #73f2fc;\n}\nbody.theme-quartz .tab-content .loadingTextDiv {\n color: #d7e8fe;\n}\n.tab-content .tab-pane {\n width: 100%;\n height: 100%;\n}\n.tab-content .tab-pane .viewerContainer {\n height: 100%;\n width: 100%;\n}\n')}],studylistPagination:{"studylistPagination.html":["./template.studylistPagination.js",function(e,t,n){n.exports=e("./template.studylistPagination.js")}],"template.studylistPagination.js":function(){we.__checkName("studylistPagination"),we.studylistPagination=new we("Template.studylistPagination",function(){var e=this;return Me.DIV({class:"studylistPagination"},"\n ",Me.DIV({class:"row"},"\n ",Me.DIV({class:"col-xs-4 col-sm-3 col-md-3"},"\n ",Te.With(function(){return Te.call(e.lookup("recordCount"))},function(){return["\n ",Me.DIV({class:"form-inline form-group rows-per-page"},"\n ",Me.LABEL("\n ",Me.SPAN("Show"),"\n ",Me.SELECT({class:"js-select-rows-per-page"},"\n ",Me.OPTION({value:"25"},"25"),"\n ",Me.OPTION({value:"50"},"50"),"\n ",Me.OPTION({value:"100"},"100"),"\n "),"\n\n ",Me.SPAN({class:"rows-per-page-label"},"rows per page"),"\n "),"\n "),"\n "]}),"\n "),"\n ",Me.Raw('<div class="col-xs-8 col-sm-9 col-md-9">\n <div class="form-inline form-group page-number">\n <label>\n <ul id="pagination" class="no-margins"></ul>\n </label>\n </div>\n </div>'),"\n "),"\n ")})},"studylistPagination.js":["meteor/templating","./studylistPagination.html",function(e,t,n){var i;n.import("meteor/templating",{Template:function(e){i=e}}),n.import("./studylistPagination.html");var a=10;i.studylistPagination.onCreated(function(){var e=i.instance();e.parent=this.parent(1)}),i.studylistPagination.onRendered(function(){var e=i.instance(),t=e.$("#pagination");e.autorun(function(){var n=e.parent.recordCount.get(),o=e.parent.rowsPerPage.get();if(t.data().twbsPagination&&t.twbsPagination("destroy"),n&&o){var i=Math.ceil(n/o);t.twbsPagination({totalPages:i,visiblePages:a,onPageClick:function(){function t(t,n){e.parent.currentPage.set(n-1)}return t}()})}})}),i.studylistPagination.helpers({recordCount:function(){function e(){var e=i.instance();return e.parent.recordCount.get()}return e}()}),i.studylistPagination.events({"change .js-select-rows-per-page":function(){function e(e,t){var n=o(e.currentTarget).val();t.parent.rowsPerPage.set(parseInt(n,10))}return e}()})}],"studylistPagination.styl":["./studylistPagination.styl.css",function(e,t,n){n.exports=e("./studylistPagination.styl.css")}],"studylistPagination.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles('.theme-icon-crickets,\n.theme-icon-tide,\n.theme-icon-tigerlily,\n.theme-icon-quartz,\n.theme-icon-overcast,\n.theme-icon-mint,\n.theme-icon-honeycomb {\n display: inline-block;\n background: url("/packages/design/assets/theme-icons.png") no-repeat;\n overflow: hidden;\n text-indent: -9999px;\n text-align: left;\n}\n.theme-icon-crickets {\n background-position: 0px 0px;\n width: 64px;\n height: 56px;\n}\n.theme-icon-tide {\n background-position: 0px -56px;\n width: 64px;\n height: 54px;\n}\n.theme-icon-tigerlily {\n background-position: 0px -110px;\n width: 62px;\n height: 61px;\n}\n.theme-icon-quartz {\n background-position: 0px -171px;\n width: 59px;\n height: 64px;\n}\n.theme-icon-overcast {\n background-position: 0px -235px;\n width: 58px;\n height: 37px;\n}\n.theme-icon-mint {\n background-position: 0px -272px;\n width: 57px;\n height: 61px;\n}\n.theme-icon-honeycomb {\n background-position: 0px -333px;\n width: 50px;\n height: 58px;\n}\n.studylistPagination {\n font-size: 13px;\n font-weight: normal !important;\n}\n.studylistPagination label {\n font-weight: normal;\n}\n.studylistPagination select {\n color: #fff;\n}\n.studylistPagination select {\n background-color: #000;\n}\nbody.theme-tide .studylistPagination select {\n background-color: #000;\n}\nbody.theme-tigerlily .studylistPagination select {\n background-color: #000;\n}\nbody.theme-crickets .studylistPagination select {\n background-color: #000;\n}\nbody.theme-honeycomb .studylistPagination select {\n background-color: #000;\n}\nbody.theme-mint .studylistPagination select {\n background-color: #000;\n}\nbody.theme-overcast .studylistPagination select {\n background-color: #000;\n}\nbody.theme-quartz .studylistPagination select {\n background-color: #000;\n}\n.page-number {\n margin: 0;\n text-align: right;\n}\n.page-number label {\n font-weight: normal;\n}\n.page-number label ul#pagination {\n margin: 0;\n}\n.page-number label ul#pagination li a {\n padding: 4px 8px;\n color: #fff;\n padding: 4px 8px;\n}\n.page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-tide .page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-tigerlily .page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-crickets .page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-honeycomb .page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-mint .page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-overcast .page-number label ul#pagination li a {\n background-color: #000;\n}\nbody.theme-quartz .page-number label ul#pagination li a {\n background-color: #000;\n}\n.page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-tide .page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-tigerlily .page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-crickets .page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-honeycomb .page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-mint .page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-overcast .page-number label ul#pagination li a {\n border-color: #263340;\n}\nbody.theme-quartz .page-number label ul#pagination li a {\n border-color: #263340;\n}\n.page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-tide .page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-tigerlily .page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-crickets .page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-honeycomb .page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-mint .page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-overcast .page-number label ul#pagination li a {\n background-color: #14191e;\n}\nbody.theme-quartz .page-number label ul#pagination li a {\n background-color: #14191e;\n}\n.page-number label ul#pagination li a:hover {\n color: #20a5d6;\n}\nbody.theme-tide .page-number label ul#pagination li a:hover {\n color: #20a5d6;\n}\nbody.theme-tigerlily .page-number label ul#pagination li a:hover {\n color: #fa8947;\n}\nbody.theme-crickets .page-number label ul#pagination li a:hover {\n color: #d4c3c1;\n}\nbody.theme-honeycomb .page-number label ul#pagination li a:hover {\n color: #cda56b;\n}\nbody.theme-mint .page-number label ul#pagination li a:hover {\n color: #31b166;\n}\nbody.theme-overcast .page-number label ul#pagination li a:hover {\n color: #507d80;\n}\nbody.theme-quartz .page-number label ul#pagination li a:hover {\n color: #7858ce;\n}\n.page-number label ul#pagination .active a {\n border-color: #ddd;\n color: #fff;\n}\n.page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-tide .page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-tigerlily .page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-crickets .page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-honeycomb .page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-mint .page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-overcast .page-number label ul#pagination .active a {\n background-color: #263340;\n}\nbody.theme-quartz .page-number label ul#pagination .active a {\n background-color: #263340;\n}\n.page-number label ul#pagination .disabled a:hover {\n color: inherit;\n}\n.page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #16202b;\n}\nbody.theme-tide .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #16202b;\n}\nbody.theme-tigerlily .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #26333f;\n}\nbody.theme-crickets .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #2b141b;\n}\nbody.theme-honeycomb .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #252228;\n}\nbody.theme-mint .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #1d232a;\n}\nbody.theme-overcast .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #252228;\n}\nbody.theme-quartz .page-number label ul#pagination .disabled:not(.disabled):hover a {\n background-color: #2b2e3f;\n}\n.page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #20a5d6;\n}\nbody.theme-tide .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #20a5d6;\n}\nbody.theme-tigerlily .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #fa8947;\n}\nbody.theme-crickets .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #d4c3c1;\n}\nbody.theme-honeycomb .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #cda56b;\n}\nbody.theme-mint .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #31b166;\n}\nbody.theme-overcast .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #507d80;\n}\nbody.theme-quartz .page-number label ul#pagination .disabled:not(.disabled):hover a {\n color: #7858ce;\n}\n.page-number label ul#pagination .disabled.active a {\n background-color: #16202b;\n}\nbody.theme-tide .page-number label ul#pagination .disabled.active a {\n background-color: #16202b;\n}\nbody.theme-tigerlily .page-number label ul#pagination .disabled.active a {\n background-color: #26333f;\n}\nbody.theme-crickets .page-number label ul#pagination .disabled.active a {\n background-color: #2b141b;\n}\nbody.theme-honeycomb .page-number label ul#pagination .disabled.active a {\n background-color: #252228;\n}\nbody.theme-mint .page-number label ul#pagination .disabled.active a {\n background-color: #1d232a;\n}\nbody.theme-overcast .page-number label ul#pagination .disabled.active a {\n background-color: #252228;\n}\nbody.theme-quartz .page-number label ul#pagination .disabled.active a {\n background-color: #2b2e3f;\n}\n.page-number label ul#pagination .disabled.active a {\n color: #20a5d6;\n}\nbody.theme-tide .page-number label ul#pagination .disabled.active a {\n color: #20a5d6;\n}\nbody.theme-tigerlily .page-number label ul#pagination .disabled.active a {\n color: #fa8947;\n}\nbody.theme-crickets .page-number label ul#pagination .disabled.active a {\n color: #d4c3c1;\n}\nbody.theme-honeycomb .page-number label ul#pagination .disabled.active a {\n color: #cda56b;\n}\nbody.theme-mint .page-number label ul#pagination .disabled.active a {\n color: #31b166;\n}\nbody.theme-overcast .page-number label ul#pagination .disabled.active a {\n color: #507d80;\n}\nbody.theme-quartz .page-number label ul#pagination .disabled.active a {\n color: #7858ce;\n}\n.page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-tide .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-tigerlily .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-crickets .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-honeycomb .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-mint .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-overcast .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\nbody.theme-quartz .page-number label ul#pagination .disabled.disabled a {\n color: #516873;\n}\n@media only screen and (max-width: 1069px) {\n .studylistPagination > .row {\n margin-right: 0;\n }\n}\n');
}]},studylistResult:{"studylistResult.html":["./template.studylistResult.js",function(e,t,n){n.exports=e("./template.studylistResult.js")}],"template.studylistResult.js":function(){we.__checkName("studylistResult"),we.studylistResult=new we("Template.studylistResult",function(){var e=this;return[Me.DIV({class:"studyListToolbar clearfix"},"\n ",Me.Raw('<div class="header pull-left">\n Study List\n </div>'),"\n ",Me.DIV({class:"studyCount pull-right"},"\n ",ke.View("lookup:numberOfStudies",function(){return Te.mustache(e.lookup("numberOfStudies"))}),"\n "),"\n ",Me.DIV({class:"pull-right"},"\n ",Te.include(e.lookupTemplate("studylistToolbar")),"\n "),"\n "),Me.Raw('\n <div class="theadBackground">\n </div>\n '),Me.DIV({id:"studyListContainer"},"\n ",Me.TABLE({id:"tblStudyList",class:"studylistResult table noselect"},"\n ",Me.THEAD("\n ",Me.TR("\n ",Me.TH({class:"patientName"},"\n ",Me.DIV({id:"_patientName",class:"sortingCell"},"\n ",Me.SPAN("Patient Name"),"\n ",Me.I({class:function(){return Te.mustache(Te.dot(e.lookup("sortingColumnsIcons"),"patientName"))}},Me.CharRef({html:"&nbsp;",str:" "})),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control studylist-search",id:"patientName"}),"\n "),"\n ",Me.TH({class:"patientId"},"\n ",Me.DIV({id:"_patientId",class:"sortingCell"},"\n ",Me.SPAN("MRN"),"\n ",Me.I({class:function(){return Te.mustache(Te.dot(e.lookup("sortingColumnsIcons"),"patientId"))}},Me.CharRef({html:"&nbsp;",str:" "})),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control studylist-search",id:"patientId"}),"\n "),"\n ",Me.TH({class:"accessionNumber"},"\n ",Me.DIV({id:"_accessionNumber",class:"sortingCell "},"\n ",Me.SPAN("Accession #"),"\n ",Me.I({class:function(){return Te.mustache(Te.dot(e.lookup("sortingColumnsIcons"),"accessionNumber"))}},Me.CharRef({html:"&nbsp;",str:" "})),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control studylist-search",id:"accessionNumber"}),"\n "),"\n ",Me.TH({class:"studyDate"},"\n ",Me.DIV({id:"_studyDate",class:"sortingCell"},"\n ",Me.SPAN("Study Date"),"\n ",Me.I({class:function(){return Te.mustache(Te.dot(e.lookup("sortingColumnsIcons"),"studyDate"))}},Me.CharRef({html:"&nbsp;",str:" "})),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control studylist-search",name:"daterange",id:"studyDate"}),"\n "),"\n ",Me.TH({class:"modalities"},"\n ",Me.DIV({id:"_modalities",class:"sortingCell"},"\n ",Me.SPAN("Modality"),"\n ",Me.I({class:function(){return Te.mustache(Te.dot(e.lookup("sortingColumnsIcons"),"modalities"))}},Me.CharRef({html:"&nbsp;",str:" "})),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control studylist-search",id:"modality"}),"\n "),"\n ",Me.TH({class:"studyDescription"},"\n ",Me.DIV({id:"_studyDescription",class:"sortingCell"},"\n ",Me.SPAN("Study Description"),"\n ",Me.I({class:function(){return Te.mustache(Te.dot(e.lookup("sortingColumnsIcons"),"studyDescription"))}},Me.CharRef({html:"&nbsp;",str:" "})),"\n "),"\n ",Me.INPUT({type:"text",class:"form-control studylist-search",id:"studyDescription"}),"\n "),"\n "),"\n "),"\n ",Me.TBODY({id:"studyListData"},"\n ",ke.Each(function(){return{_sequence:Te.call(e.lookup("studies")),_variable:"study"}},function(){return["\n ",ke._TemplateWith(function(){return Te.dataMustache(e.lookup("clone"),e.lookup("study"),e.lookup("."))},function(){return Te.include(e.lookupTemplate("studylistStudy"))}),"\n "]}),"\n "),"\n "),"\n\n ",Me.Raw("<!-- Pagination -->"),"\n ",Te.include(e.lookupTemplate("studylistPagination")),"\n\n ",ke.If(function(){return Te.dataMustache(e.lookup("session"),"showLoadingText")},function(){return["\n ",Te.include(e.lookupTemplate("loadingText")),"\n "]},function(){return["\n ",ke.Unless(function(){return Te.call(e.lookup("numberOfStudies"))},function(){return["\n ",Me.DIV({class:"notFound"},"No matching results"),"\n "]}),"\n "]}),"\n ")]})},"studylistResult.js":["meteor/ohif:core",function(t,n,i){function a(e){return e&&e.length&&"*"!==e.substr(e.length-1)&&(e+="*"),e}function s(e,t){return void 0===e||""===e||e.indexOf(t)>-1}function r(e){return void 0===e||"undefined"===e?"":e.toUpperCase()}function l(e){var t=e.substring(0,4),n=e.substring(4,6),o=e.substring(6,8),i=n+"/"+o+"/"+t;return new Date(i)}function d(){console.log("search()"),ye.set("showLoadingText",!0),h={patientName:a(o("input#patientName").val()),patientId:a(o("input#patientId").val()),accessionNumber:a(o("input#accessionNumber").val()),studyDescription:a(o("input#studyDescription").val()),studyDateFrom:m,studyDateTo:b,modalitiesInStudy:o("input#modality").val()?o("input#modality").val():""};var t=r(o("input#modality").val());_e.remove({}),e.call("StudyListSearch",h,function(e,n){return console.log("StudyListSearch"),e?void p.log.warn(e):(ye.set("showLoadingText",!1),void(n&&n.forEach(function(e){s(e.modalities,t)&&(new Date(m).setHours(0,0,0,0)<=l(e.studyDate)||!m||""===m)&&(l(e.studyDate)<=new Date(b).setHours(0,0,0,0)||!b||""===b)&&(e.numberOfStudyRelatedInstances=isNaN(e.numberOfStudyRelatedInstances)?void 0:parseInt(e.numberOfStudyRelatedInstances),_e.insert(e))})))})}function u(e,t){Object.keys(e.sortingColumns.keys).forEach(function(n){n!==t&&e.sortingColumns.set(n,null)})}var p;i.import("meteor/ohif:core",{OHIF:function(e){p=e}}),ye.setDefault("showLoadingText",!0),we.studylistResult.helpers({studies:function(){function e(){var e=we.instance(),t=void 0,n={patientName:1,studyDate:1};ye.get("sortOption")&&(n=ye.get("sortOption"));var o=e.rowsPerPage.get(),i=e.currentPage.get(),a=o*i,s=a+o;if(t=_e.find({},{sort:n}).fetch())return e.recordCount.set(t.length),t.slice(a,s)}return e}(),numberOfStudies:function(){function e(){return _e.find().count()}return e}(),sortingColumnsIcons:function(){function e(){var e=we.instance(),t={};return Object.keys(e.sortingColumns.keys).forEach(function(n){var o=e.sortingColumns.get(n);1===o?t[n]="fa fa-fw fa-sort-up":o===-1?t[n]="fa fa-fw fa-sort-down":t[n]="fa fa-fw"}),t}return e}()});var m,b,h;we.studylistResult.onCreated(function(){var e=we.instance();e.sortOption=new ReactiveVar,e.sortingColumns=new ReactiveDict,e.rowsPerPage=new ReactiveVar(25),e.currentPage=new ReactiveVar(0),e.recordCount=new ReactiveVar;var t=ye.get("sortOption");t?e.sortingColumns.set(t):e.sortingColumns.set({patientName:1,studyDate:1,patientId:0,accessionNumber:0,studyDescription:0,modality:0})}),we.studylistResult.onRendered(function(){var e=we.instance(),t=c(),n=c().subtract(6,"days"),o=c().subtract(29,"days"),i=e.$("#studyDate").daterangepicker({maxDate:t,autoUpdateInput:!0,ranges:{Today:[t,t],"Last 7 Days":[n,t],"Last 30 Days":[o,t]}}).data("daterangepicker");d()}),we.studylistResult.events({"keydown input":function(){function e(e){13===e.which&&d()}return e}(),"onsearch input":function(){function e(){d()}return e}(),"change #studyDate":function(){function e(e){var t=o(e.currentTarget).val();t=t.replace(/ /g,"");var n=t.split("-");m=n[0],b=n[1],""!==t&&d()}return e}(),"click div.sortingCell":function(){function e(e,t){var n=e.currentTarget.id,o=n.replace("_",""),i={};u(t,o);var a=t.sortingColumns.get(o);a?(t.sortingColumns.set(o,a*-1),i[o]=a*-1):(t.sortingColumns.set(o,1),i[o]=1),t.sortOption.set(i),ye.set("sortOption",i)}return e}()})}],"studylistResult.styl":["./studylistResult.styl.css",function(e,t,n){n.exports=e("./studylistResult.styl.css")}],"studylistResult.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles(".theme-icon-crickets,\n.theme-icon-tide,\n.theme-icon-tigerlily,\n.theme-icon-quartz,\n.theme-icon-overcast,\n.theme-icon-mint,\n.theme-icon-honeycomb {\n display: inline-block;\n background: url(\"/packages/design/assets/theme-icons.png\") no-repeat;\n overflow: hidden;\n text-indent: -9999px;\n text-align: left;\n}\n.theme-icon-crickets {\n background-position: 0px 0px;\n width: 64px;\n height: 56px;\n}\n.theme-icon-tide {\n background-position: 0px -56px;\n width: 64px;\n height: 54px;\n}\n.theme-icon-tigerlily {\n background-position: 0px -110px;\n width: 62px;\n height: 61px;\n}\n.theme-icon-quartz {\n background-position: 0px -171px;\n width: 59px;\n height: 64px;\n}\n.theme-icon-overcast {\n background-position: 0px -235px;\n width: 58px;\n height: 37px;\n}\n.theme-icon-mint {\n background-position: 0px -272px;\n width: 57px;\n height: 61px;\n}\n.theme-icon-honeycomb {\n background-position: 0px -333px;\n width: 50px;\n height: 58px;\n}\n.studyListToolbar {\n height: 75px;\n margin-bottom: 2px;\n padding: 0 8%;\n}\n.studyListToolbar {\n background: #151a1f;\n}\nbody.theme-tide .studyListToolbar {\n background: #151a1f;\n}\nbody.theme-tigerlily .studyListToolbar {\n background: #151a1f;\n}\nbody.theme-crickets .studyListToolbar {\n background: #231c1e;\n}\nbody.theme-honeycomb .studyListToolbar {\n background: #18161a;\n}\nbody.theme-mint .studyListToolbar {\n background: #15191e;\n}\nbody.theme-overcast .studyListToolbar {\n background: #15191e;\n}\nbody.theme-quartz .studyListToolbar {\n background: #151a1f;\n}\n.studyListToolbar>div {\n display: inline-block;\n}\n.studyListToolbar .header {\n font-size: 22px;\n font-weight: 300;\n color: #91b9cd;\n line-height: 75px;\n}\n.studyListToolbar .studylistToolbar {\n height: 75px;\n line-height: 75px;\n}\n.studyListToolbar .studyCount {\n font-size: 40px;\n font-weight: 100;\n line-height: 75px;\n}\n.studyListToolbar .studyCount {\n color: #6fbde2;\n}\nbody.theme-tide .studyListToolbar .studyCount {\n color: #6fbde2;\n}\nbody.theme-tigerlily .studyListToolbar .studyCount {\n color: #d47c66;\n}\nbody.theme-crickets .studyListToolbar .studyCount {\n color: #d47c66;\n}\nbody.theme-honeycomb .studyListToolbar .studyCount {\n color: #d47c66;\n}\nbody.theme-mint .studyListToolbar .studyCount {\n color: #76d27d;\n}\nbody.theme-overcast .studyListToolbar .studyCount {\n color: #74f1fa;\n}\nbody.theme-quartz .studyListToolbar .studyCount {\n color: #abcdf6;\n}\n.theadBackground {\n height: 121px;\n position: absolute;\n width: 100%;\n}\n.theadBackground:before,\n.theadBackground:after {\n content: '';\n display: block;\n left: 0;\n position: absolute;\n width: 100%;\n}\n.theadBackground:before {\n height: 100%;\n top: 0;\n z-index: 1;\n}\n.theadBackground:before {\n background-color: #151a1f;\n}\nbody.theme-tide .theadBackground:before {\n background-color: #151a1f;\n}\nbody.theme-tigerlily .theadBackground:before {\n background-color: #151a1f;\n}\nbody.theme-crickets .theadBackground:before {\n background-color: #231c1e;\n}\nbody.theme-honeycomb .theadBackground:before {\n background-color: #18161a;\n}\nbody.theme-mint .theadBackground:before {\n background-color: #15191e;\n}\nbody.theme-overcast .theadBackground:before {\n background-color: #15191e;\n}\nbody.theme-quartz .theadBackground:before {\n background-color: #151a1f;\n}\n.theadBackground:after {\n bottom: -1px;\n height: 1px;\n z-index: 3;\n}\n.theadBackground:after {\n background-color: #6fbde2;\n}\nbody.theme-tide .theadBackground:after {\n background-color: #6fbde2;\n}\nbody.theme-tigerlily .theadBackground:after {\n background-color: #d47c66;\n}\nbody.theme-crickets .theadBackground:after {\n background-color: #d47c66;\n}\nbody.theme-honeycomb .theadBackground:after {\n background-color: #d47c66;\n}\nbody.theme-mint .theadBackground:after {\n background-color: #76d27d;\n}\nbody.theme-overcast .theadBackground:after {\n background-color: #74f1fa;\n}\nbody.theme-quartz .theadBackground:after {\n background-color: #abcdf6;\n}\n#studyListContainer {\n width: 100%;\n padding: 0 8%;\n position: absolute;\n z-index: 2;\n}\n#studyListContainer .loadingTextDiv {\n color: #91b9cd;\n font-size: 30px;\n}\n#studyListContainer .notFound {\n color: #91b9cd;\n font-size: 30px;\n font-weight: 200;\n text-align: center;\n}\n#studyListContainer table#tblStudyList thead {\n white-space: nowrap;\n}\n#studyListContainer table#tblStudyList thead tr th {\n padding: 0;\n border-bottom: solid 1px #6fbde2;\n width: 100%;\n}\n#studyListContainer table#tblStudyList thead tr th:first-child {\n padding-left: $tablePadding;\n}\n#studyListContainer table#tblStudyList thead tr th:last-child {\n padding-right: $tablePadding;\n}\n#studyListContainer table#tblStudyList thead tr th div.sortingCell {\n display: inline-block;\n cursor: pointer;\n width: 100%;\n min-width: 95px;\n margin: 0 auto;\n color: #fff;\n font-weight: 400;\n padding: 20px;\n}\n#studyListContainer table#tblStudyList thead tr th div.sortingCell span {\n font-size: 15px;\n float: left;\n}\n#studyListContainer table#tblStudyList thead tr th div.sortingCell i {\n margin: 0 5px;\n}\n#studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #20a5d6;\n}\nbody.theme-tide #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #20a5d6;\n}\nbody.theme-tigerlily #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #fa8947;\n}\nbody.theme-crickets #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #d4c3c1;\n}\nbody.theme-honeycomb #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #cda56b;\n}\nbody.theme-mint #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #31b166;\n}\nbody.theme-overcast #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #507d80;\n}\nbody.theme-quartz #studyListContainer table#tblStudyList thead tr th div.sortingCell:hover {\n color: #7858ce;\n}\n#studyListContainer table#tblStudyList thead tr th div.sortingCell.active,\n#studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #20a5d6;\n}\nbody.theme-tide #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #20a5d6;\n}\nbody.theme-tide #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #20a5d6;\n}\nbody.theme-tigerlily #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #fa8947;\n}\nbody.theme-tigerlily #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #fa8947;\n}\nbody.theme-crickets #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #d4c3c1;\n}\nbody.theme-crickets #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #d4c3c1;\n}\nbody.theme-honeycomb #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #cda56b;\n}\nbody.theme-honeycomb #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #cda56b;\n}\nbody.theme-mint #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #31b166;\n}\nbody.theme-mint #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #31b166;\n}\nbody.theme-overcast #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #507d80;\n}\nbody.theme-overcast #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #507d80;\n}\nbody.theme-quartz #studyListContainer table#tblStudyList thead tr th div.sortingCell.active {\n color: #7858ce;\n}\nbody.theme-quartz #studyListContainer table#tblStudyList thead tr th div.sortingCell:active {\n color: #7858ce;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search {\n height: 34px;\n margin: 0 5px 20px 5px;\n padding: 20px;\n cursor: pointer;\n border: none;\n background-color: #2c363f;\n color: #d3d3d3;\n font-size: 10pt;\n font-weight: normal;\n width: calc(100% - 10px);\n border-radius: 4px;\n box-sizing: border-box;\n transition: all 0.15s ease;\n -webkit-transition: all 0.15s ease;\n -ms-transition: all 0.15s ease;\n -o-transition: all 0.15s ease;\n -moz-transition: all 0.15s ease;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search::-webkit-input-placeholder {\n color: #d3d3d3;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search:-moz-placeholder {\n color: #d3d3d3;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search::-moz-placeholder {\n color: #d3d3d3;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search:-ms-input-placeholder {\n color: #d3d3d3;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search.invisible {\n visibility: hidden;\n}\n#studyListContainer table#tblStudyList thead tr th input.studylist-search:active,\n#studyListContainer table#tblStudyList thead tr th input.studylist-search:hover {\n background-color: #2c363f;\n}\n#studyListContainer table#tblStudyList thead ::-webkit-datetime-edit-year-field:not([aria-valuenow]),\n#studyListContainer table#tblStudyList thead ::-webkit-datetime-edit-month-field:not([aria-valuenow]),\n#studyListContainer table#tblStudyList thead ::-webkit-datetime-edit-day-field:not([aria-valuenow]) {\n color: transparent;\n}\n#studyListContainer table#tblStudyList tbody tr {\n padding: 5px;\n background-color: #000;\n}\n#studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #151a1f;\n}\nbody.theme-tide #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #151a1f;\n}\nbody.theme-tigerlily #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #151a1f;\n}\nbody.theme-crickets #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #231c1e;\n}\nbody.theme-honeycomb #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #18161a;\n}\nbody.theme-mint #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #15191e;\n}\nbody.theme-overcast #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #15191e;\n}\nbody.theme-quartz #studyListContainer table#tblStudyList tbody tr:nth-child(even) {\n background-color: #151a1f;\n}\n#studyListContainer table#tblStudyList tbody tr td {\n height: 40px;\n line-height: 40px;\n color: #fff;\n font-weight: 300;\n border-top: 1px solid #436270;\n border-bottom: 1px solid #436270;\n white-space: nowrap;\n transition: all 0.1s ease;\n -webkit-transition: all 0.1s ease;\n -ms-transition: all 0.1s ease;\n -o-transition: all 0.1s ease;\n -moz-transition: all 0.1s ease;\n}\n#studyListContainer table#tblStudyList tbody tr:hover,\n#studyListContainer table#tblStudyList tbody tr:active,\n#studyListContainer table#tblStudyList tbody tr.active {\n background-color: #2c363f;\n color: #fff;\n}\n#studyListContainer table#tblStudyList tbody tr:hover td,\n#studyListContainer table#tblStudyList tbody tr:active td,\n#studyListContainer table#tblStudyList tbody tr.active td {\n border-top: 1px solid #436270;\n border-bottom: 1px solid #436270;\n background-color: #2c363f;\n}\n@media only screen and (max-width: 1362px) {\n #studyListContainer {\n padding: 0 5%;\n }\n #studyListContainer table#tblStudyList thead tr th:first-child,\n #studyListContainer table#tblStudyList tbody tr th:first-child,\n #studyListContainer table#tblStudyList thead tr td:first-child,\n #studyListContainer table#tblStudyList tbody tr td:first-child {\n padding-left: 5%;\n }\n #studyListContainer table#tblStudyList thead tr th:last-child,\n #studyListContainer table#tblStudyList tbody tr th:last-child,\n #studyListContainer table#tblStudyList thead tr td:last-child,\n #studyListContainer table#tblStudyList tbody tr td:last-child {\n padding-right: 5%;\n }\n}\n@media only screen and (max-width: 1161px) {\n #studyListContainer {\n padding: 0 3%;\n }\n #studyListContainer table#tblStudyList thead tr th:first-child,\n #studyListContainer table#tblStudyList tbody tr th:first-child,\n #studyListContainer table#tblStudyList thead tr td:first-child,\n #studyListContainer table#tblStudyList tbody tr td:first-child {\n padding-left: 3%;\n }\n #studyListContainer table#tblStudyList thead tr th:last-child,\n #studyListContainer table#tblStudyList tbody tr th:last-child,\n #studyListContainer table#tblStudyList thead tr td:last-child,\n #studyListContainer table#tblStudyList tbody tr td:last-child {\n padding-right: 3%;\n }\n}\n@media only screen and (max-width: 1069px) {\n .theadBackground {\n height: 101px;\n }\n .studyListToolbar {\n padding: 0 5px;\n }\n #studyListContainer {\n padding: 0;\n }\n #studyListContainer table#tblStudyList thead > tr > th:first-child {\n padding-left: 5px;\n }\n #studyListContainer table#tblStudyList thead > tr > th:last-child {\n padding-right: 5px;\n }\n #studyListContainer table#tblStudyList thead > tr > th input.worklist-search {\n padding: 10px;\n }\n #studyListContainer table#tblStudyList thead > tr > th div.sortingCell {\n padding: 10px 5px;\n }\n #studyListContainer table#tblStudyList thead > tr > th div.sortingCell i {\n width: auto;\n }\n #studyListContainer table#tblStudyList tbody > tr > td:first-child {\n padding-left: 5px;\n }\n #studyListContainer table#tblStudyList tbody > tr > td:last-child {\n padding-right: 5px;\n }\n #studyListContainer .worklistPagination .row {\n margin-left: 0;\n margin-right: 0;\n }\n}\n")}]},studylistStudy:{"studylistStudy.html":["./template.studylistStudy.js",function(e,t,n){n.exports=e("./template.studylistStudy.js")}],"template.studylistStudy.js":function(){we.__checkName("studylistStudy"),we.studylistStudy=new we("Template.studylistStudy",function(){var e=this;return Me.TR({class:"studylistStudy noselect"},"\n ",Me.TD({class:"patientName"},"\n ",ke.View("lookup:formatPN",function(){return Te.mustache(e.lookup("formatPN"),e.lookup("patientName"))}),"\n "),"\n ",Me.TD({class:"patientId"},"\n ",ke.View("lookup:patientId",function(){return Te.mustache(e.lookup("patientId"))}),"\n "),"\n ",Me.TD({class:"accessionNumber"},"\n ",ke.View("lookup:accessionNumber",function(){return Te.mustache(e.lookup("accessionNumber"))}),"\n "),"\n ",Me.TD({class:"studyDate"},"\n ",ke.View("lookup:formatDA",function(){return Te.mustache(e.lookup("formatDA"),e.lookup("studyDate"))}),"\n "),"\n ",Me.TD({class:"modalities"},"\n ",ke.View("lookup:modalities",function(){return Te.mustache(e.lookup("modalities"))}),"\n "),"\n ",Me.TD({class:"studyDescription"},"\n ",ke.View("lookup:studyDescription",function(){return Te.mustache(e.lookup("studyDescription"))}),"\n "),"\n ")})},"studylistStudy.js":["meteor/ohif:core",function(t,n,i){function a(e){var t=qe.find({studyInstanceUid:e.studyInstanceUid}).count();return t>0}function s(){qe.remove({}),o("tr.studylistStudy").removeClass("active")}function r(e,t){a(t)||qe.insert(t),e.addClass("active"),Ee.previouslySelected=e}function l(e,t){s(),r(e,t)}function d(e,t){qe.remove({studyInstanceUid:t.studyInstanceUid}),e.removeClass("active")}function u(e,t){var n=void 0,i=Ee.previouslySelected?o(Ee.previouslySelected):null;if(i&&i.length>0&&(n=ke.getData(i.get(0)),a(n)||(i=void 0,Ee.previouslySelected=i)),i){var s=void 0;if(i.index()<e.index())s=i.nextAll("tr");else{if(!(i.index()>e.index()))return;s=i.prevAll("tr")}s.each(function(){var t=o(this);if(!t.hasClass("active")){var n=t.attr("studyInstanceUid"),i=ke.getData(this);return r(t,i),!t.is(e)}})}else l(e,t)}function c(e,t){a(t)?d(e,t):(r(e,t),p.log.info("StudyList PreviouslySelected set: "+e.index()))}var p;i.import("meteor/ohif:core",{OHIF:function(e){p=e}}),qe=new e.Collection(null),qe._debugName="StudyListSelectedStudies",we.studylistStudy.onRendered(function(){var e=this,t=e.data,n=e.$("tr.studylistStudy").first(),o=new Hammer.Manager(n.get(0)),i=new Hammer.Tap({event:"doubletap",taps:2,interval:500,threshold:30,posThreshold:30});o.add(i),a(t)&&r(n,t)}),we.studylistStudy.events({"click tr.studylistStudy":function(){function e(e){var t=o(e.currentTarget),n=this;delete n._id,e.shiftKey?u(t,n):e.ctrlKey||e.metaKey?c(t,n):l(t,n)}return e}(),"mousedown tr.studylistStudy":function(){function e(e){if(2===e.which){var t=this,n=Ee.callbacks.middleClickOnStudy;n&&"function"==typeof n&&n(t)}}return e}(),"dblclick tr.studylistStudy, doubletap tr.studylistStudy":function(){function e(e){if(void 0===e.which||1===e.which){var t=this,n=Ee.callbacks.dblClickOnStudy;n&&"function"==typeof n&&n(t)}}return e}(),"contextmenu tr.studylistStudy, press tr.studylistStudy":function(){function e(e,t){var n=o(e.currentTarget),i=this;if(a(i)||l(n,i),"function"==typeof Re)return e.preventDefault(),Re(e,t),!1}return e}()})}],"studylistStudy.styl":["./studylistStudy.styl.css",function(e,t,n){n.exports=e("./studylistStudy.styl.css")}],"studylistStudy.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles(".studylistStudy {\n cursor: pointer;\n}\n")}]},studylistToolbar:{"studylistToolbar.html":["./template.studylistToolbar.js",function(e,t,n){n.exports=e("./template.studylistToolbar.js")}],"template.studylistToolbar.js":function(){we.__checkName("studylistToolbar"),we.studylistToolbar=new we("Template.studylistToolbar",function(){var e=this;return Me.DIV({class:"studylistToolbar"},"\n ",ke.If(function(){return Te.call(e.lookup("importSupported"))},function(){return["\n ",Me.DIV({class:"addNewStudy btn-file"},"\n ",Me.LABEL({for:"btnImport"},"\n ",Me.I({class:"fa fa-plus"})," Import study\n "),"\n ",Me.INPUT({id:"btnImport",class:"js-import-files",type:"file",webkitdirectory:"",directory:"",multiple:""}),"\n "),"\n "]}),"\n ")})},"studylistToolbar.js":["meteor/ohif:core","meteor/templating","meteor/meteor","meteor/session","meteor/jquery",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}});var i;n.import("meteor/templating",{Template:function(e){i=e}});var a;n.import("meteor/meteor",{Meteor:function(e){a=e}});var s;n.import("meteor/session",{Session:function(e){s=e}});var r;n.import("meteor/jquery",{$:function(e){r=e}}),i.studylistToolbar.onCreated(function(){a.call("importSupported",function(e,t){e||!t?s.set("importSupported",!1):s.set("importSupported",!0)})}),i.studylistToolbar.events({"change .js-import-files":function(){function e(e){var t=r.map(e.currentTarget.files,function(e){return e});L(t)}return e}(),"click .js-import-files":function(){function e(e){r(e.currentTarget).val("")}return e}()}),i.studylistToolbar.helpers({importSupported:function(){function e(){var e=s.get("importSupported");return e&&o.uiSettings.studyListFunctionsEnabled}return e}()})}],"studylistToolbar.styl":["./studylistToolbar.styl.css",function(e,t,n){n.exports=e("./studylistToolbar.styl.css")}],"studylistToolbar.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles('.theme-icon-crickets,\n.theme-icon-tide,\n.theme-icon-tigerlily,\n.theme-icon-quartz,\n.theme-icon-overcast,\n.theme-icon-mint,\n.theme-icon-honeycomb {\n display: inline-block;\n background: url("/packages/design/assets/theme-icons.png") no-repeat;\n overflow: hidden;\n text-indent: -9999px;\n text-align: left;\n}\n.theme-icon-crickets {\n background-position: 0px 0px;\n width: 64px;\n height: 56px;\n}\n.theme-icon-tide {\n background-position: 0px -56px;\n width: 64px;\n height: 54px;\n}\n.theme-icon-tigerlily {\n background-position: 0px -110px;\n width: 62px;\n height: 61px;\n}\n.theme-icon-quartz {\n background-position: 0px -171px;\n width: 59px;\n height: 64px;\n}\n.theme-icon-overcast {\n background-position: 0px -235px;\n width: 58px;\n height: 37px;\n}\n.theme-icon-mint {\n background-position: 0px -272px;\n width: 57px;\n height: 61px;\n}\n.theme-icon-honeycomb {\n background-position: 0px -333px;\n width: 50px;\n height: 58px;\n}\n.studylistToolbar .addNewStudy {\n margin: 0 10px;\n}\n.studylistToolbar .addNewStudy label {\n font-weight: 400;\n cursor: pointer;\n}\n.studylistToolbar .addNewStudy label {\n color: #91b9cd;\n}\nbody.theme-tide .studylistToolbar .addNewStudy label {\n color: #91b9cd;\n}\nbody.theme-tigerlily .studylistToolbar .addNewStudy label {\n color: #9ccdf8;\n}\nbody.theme-crickets .studylistToolbar .addNewStudy label {\n color: #8be7b5;\n}\nbody.theme-honeycomb .studylistToolbar .addNewStudy label {\n color: #fab797;\n}\nbody.theme-mint .studylistToolbar .addNewStudy label {\n color: #a7e9b3;\n}\nbody.theme-overcast .studylistToolbar .addNewStudy label {\n color: #73f2fc;\n}\nbody.theme-quartz .studylistToolbar .addNewStudy label {\n color: #d7e8fe;\n}\n.studylistToolbar .addNewStudy label * {\n pointer-events: none;\n}\n.studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-tide .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-tigerlily .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-crickets .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-honeycomb .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-mint .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-overcast .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\nbody.theme-quartz .studylistToolbar .addNewStudy label:hover {\n color: #fff;\n}\n.studylistToolbar .addNewStudy label:active {\n color: #20a5d6;\n}\nbody.theme-tide .studylistToolbar .addNewStudy label:active {\n color: #20a5d6;\n}\nbody.theme-tigerlily .studylistToolbar .addNewStudy label:active {\n color: #fa8947;\n}\nbody.theme-crickets .studylistToolbar .addNewStudy label:active {\n color: #d4c3c1;\n}\nbody.theme-honeycomb .studylistToolbar .addNewStudy label:active {\n color: #cda56b;\n}\nbody.theme-mint .studylistToolbar .addNewStudy label:active {\n color: #31b166;\n}\nbody.theme-overcast .studylistToolbar .addNewStudy label:active {\n color: #507d80;\n}\nbody.theme-quartz .studylistToolbar .addNewStudy label:active {\n color: #7858ce;\n}\n.studylistToolbar .addNewStudy input {\n width: 0.1px;\n height: 0.1px;\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n}\n')}]}},themeSelector:{"index.js":["./themeSelectorModal/themeSelectorModal.html","./themeSelectorModal/themeSelectorModal.styl","./themeSelectorModal/themeSelectorModal.js",function(e,t,n){n.import("./themeSelectorModal/themeSelectorModal.html"),n.import("./themeSelectorModal/themeSelectorModal.styl"),n.import("./themeSelectorModal/themeSelectorModal.js")}],themeSelectorModal:{"themeSelectorModal.html":["./template.themeSelectorModal.js",function(e,t,n){n.exports=e("./template.themeSelectorModal.js");
}],"template.themeSelectorModal.js":function(){we.__checkName("themeSelectorModal"),we.themeSelectorModal=new we("Template.themeSelectorModal",function(){var e=this;return Me.DIV({class:"modal",id:"themeSelectorModal",tabindex:"-1",role:"dialog","aria-labelledby":"themeSelectorModalLabel"},"\n ",Me.DIV({class:"modal-dialog modal-lg",role:"document"},"\n ",Me.DIV({class:"modal-content"},"\n ",Me.Raw('<div class="modal-header">\n <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>\n <h4 class="modal-title" id="themeSelectorModalLabel"><i class="fa fa-sliders"></i> Themes</h4>\n </div>'),"\n ",Me.DIV({class:"modal-body"},"\n ",Me.UL({class:"theme-list text-center"},"\n ",ke.Each(function(){return{_sequence:Te.call(e.lookup("themes")),_variable:"theme"}},function(){return["\n ",Me.LI({class:function(){return["text-center preview-theme ",Te.mustache(e.lookup("addClassIfSelected"),e.lookup("theme"))]},"data-theme":function(){return Te.mustache(e.lookup("theme"))}},"\n ",Me.DIV({class:"icon-wrapper"},"\n ",Me.SPAN({class:function(){return["theme-icon-",Te.mustache(e.lookup("theme"))]}}),"\n "),"\n ",Me.H4({class:"theme-title"},ke.View("lookup:ucFirst",function(){return Te.mustache(e.lookup("ucFirst"),e.lookup("theme"))})),"\n "),"\n "]}),"\n "),"\n "),"\n ",Me.Raw('<div class="modal-footer">\n <button type="button" class="btn btn-default js-cancel" data-dismiss="modal">Cancel</button>\n <button type="button" class="btn btn-primary js-apply" data-dismiss="modal">Apply theme</button>\n </div>'),"\n "),"\n "),"\n ")})},"themeSelectorModal.js":function(){var e="tide",t=function e(){return sessionStorage.getItem("theme")},n=function e(t){return sessionStorage.setItem("theme",t)},o=function e(t){return document.body.classList.add("theme-"+t)},i=function e(){for(var t=document.body.classList,n=t.length-1;n>=0;n--)t[n].search("theme-")!==-1&&document.body.classList.remove(t[n])};we.themeSelectorModal.onCreated(function(){var a=we.instance(),s=t();s||(s=e,n(s)),a.state=new ReactiveDict,a.state.set("selectedTheme",s),o(s),a.container={actualTheme:s,previewTheme:function(){function e(e,t){t.set("selectedTheme",e),i(),o(e)}return e}(),applyTheme:function(){function e(e){n(e.get("selectedTheme"))}return e}(),resetState:function(){function e(e){var n=t();e.set("selectedTheme",n),i(),o(n)}return e}()}}),we.themeSelectorModal.helpers({themes:["crickets","honeycomb","mint","overcast","quartz","tide","tigerlily"],ucFirst:function(){function e(e){return e.charAt(0).toUpperCase()+e.slice(1)}return e}(),addClassIfSelected:function(){function e(e){var t=we.instance();return e===t.state.get("selectedTheme")?"selected":""}return e}()}),we.themeSelectorModal.events({"click .js-cancel, click .close":function(){function e(e,t){return t.container.resetState(t.state)}return e}(),"click .js-apply":function(){function e(e,t){return t.container.applyTheme(t.state)}return e}(),"click .preview-theme":function(){function e(e,t){return t.container.previewTheme(e.currentTarget.dataset.theme,t.state)}return e}()})},"themeSelectorModal.styl":["./themeSelectorModal.styl.css",function(e,t,n){n.exports=e("./themeSelectorModal.styl.css")}],"themeSelectorModal.styl.css":["meteor/modules",function(e,t,n){n.exports=e("meteor/modules").addStyles('.theme-icon-crickets,\n.theme-icon-tide,\n.theme-icon-tigerlily,\n.theme-icon-quartz,\n.theme-icon-overcast,\n.theme-icon-mint,\n.theme-icon-honeycomb {\n display: inline-block;\n background: url("/packages/design/assets/theme-icons.png") no-repeat;\n overflow: hidden;\n text-indent: -9999px;\n text-align: left;\n}\n.theme-icon-crickets {\n background-position: 0px 0px;\n width: 64px;\n height: 56px;\n}\n.theme-icon-tide {\n background-position: 0px -56px;\n width: 64px;\n height: 54px;\n}\n.theme-icon-tigerlily {\n background-position: 0px -110px;\n width: 62px;\n height: 61px;\n}\n.theme-icon-quartz {\n background-position: 0px -171px;\n width: 59px;\n height: 64px;\n}\n.theme-icon-overcast {\n background-position: 0px -235px;\n width: 58px;\n height: 37px;\n}\n.theme-icon-mint {\n background-position: 0px -272px;\n width: 57px;\n height: 61px;\n}\n.theme-icon-honeycomb {\n background-position: 0px -333px;\n width: 50px;\n height: 58px;\n}\n#themeSelectorModal .theme-list {\n list-style: none;\n padding: 0;\n}\n#themeSelectorModal .theme-list li {\n display: inline-block;\n cursor: pointer;\n margin-right: 10px;\n margin-bottom: 10px;\n padding: 10px;\n width: 110px;\n}\n#themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\nbody.theme-tide #themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\nbody.theme-tigerlily #themeSelectorModal .theme-list li {\n border: 1px solid #744b71;\n}\nbody.theme-crickets #themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\nbody.theme-honeycomb #themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\nbody.theme-mint #themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\nbody.theme-overcast #themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\nbody.theme-quartz #themeSelectorModal .theme-list li {\n border: 1px solid #3c5d80;\n}\n#themeSelectorModal .theme-list li:hover {\n background-color: rgba(21,25,30,0.7);\n}\n#themeSelectorModal .theme-list li:last-child {\n margin-right: 0;\n}\n#themeSelectorModal .theme-list li.selected {\n padding: 7px;\n}\n#themeSelectorModal .theme-list li.selected {\n border: 3px solid #00a4d9;\n}\nbody.theme-tide #themeSelectorModal .theme-list li.selected {\n border: 3px solid #00a4d9;\n}\nbody.theme-tigerlily #themeSelectorModal .theme-list li.selected {\n border: 3px solid #ff8a3d;\n}\nbody.theme-crickets #themeSelectorModal .theme-list li.selected {\n border: 3px solid #d4aaa5;\n}\nbody.theme-honeycomb #themeSelectorModal .theme-list li.selected {\n border: 3px solid #ce9e59;\n}\nbody.theme-mint #themeSelectorModal .theme-list li.selected {\n border: 3px solid #23b15d;\n}\nbody.theme-overcast #themeSelectorModal .theme-list li.selected {\n border: 3px solid #467c80;\n}\nbody.theme-quartz #themeSelectorModal .theme-list li.selected {\n border: 3px solid #6843cc;\n}\n#themeSelectorModal .theme-list li .icon-wrapper {\n height: 64px;\n width: 64px;\n margin: 0 auto;\n line-height: 6.5;\n}\n#themeSelectorModal .theme-list li .theme-title {\n font-weight: normal;\n font-size: 1.1em;\n margin-bottom: 0;\n}\n')}]}}},lib:{"exportStudies.js":["meteor/silentcicero:jszip","meteor/ohif:core",function(e,t,n){var o;n.import("meteor/silentcicero:jszip",{JSZip:function(e){o=e}});var i;n.import("meteor/ohif:core",{OHIF:function(e){i=e}});var a=void 0;i.studylist.exportStudies=function(e){e.length<1||D(e,s)};var s=function e(t){var n=0;t.forEach(function(e){n+=C(e)}),i.studylist.progressDialog.show("Exporting Studies...",n);try{r(t,n)}catch(e){i.studylist.progressDialog.close(),i.log.error("Failed to export studies: "+e.message)}},r=function e(t,n){var s=new o;a=!1;var r=0,l=function e(t){a=!0,i.studylist.progressDialog.close(),i.log.error("Failed to export studies!",t)};t.forEach(function(e){x(e);var t=s.folder(e.studyInstanceUid);e.seriesList.forEach(function(e){var o=t.folder(e.seriesInstanceUid);e.instances.forEach(function(e){if(e.wadouri&&!a){var t=new XMLHttpRequest;t.open("GET",e.wadouri,!0),t.responseType="blob",t.onload=function(){if(!a){if(4===t.readyState&&200!==t.status)return void l("File not downloaded: "+e.wadouri);var d=new Blob([t.response],{type:"application/dicom"}),u=new FileReader;u.onload=function(){try{o.file(e.sopInstanceUid+".dcm",u.result,{binary:!0})}catch(e){return void l(e.message)}if(r++,r===n){var t=s.generate({type:"blob"});saveAs(t,"studies.zip")}i.studylist.progressDialog.update(r)},u.readAsArrayBuffer(d)}},t.onerror=function(){return l("File not downloaded: "+e.wadouri)},t.send()}})})})}}],"getSelectedStudies.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),o.studylist.getSelectedStudies=function(){return qe.find({},{sort:{studyDate:1}}).fetch()||[]}}],"getStudiesMetadata.js":["meteor/jquery","meteor/ohif:core",function(e,t,n){var o;n.import("meteor/jquery",{$:function(e){o=e}});var i;n.import("meteor/ohif:core",{OHIF:function(e){i=e}}),i.studylist.getStudiesMetadata=function(e,t,n){if(!e||!e.length)return void(n&&"function"==typeof n&&n("No studyInstanceUids were input"));var a=[];e.forEach(function(e){var t=new o.Deferred;We(e,function(e){t.resolve(e)},function(e){t.reject(e)}),a.push(t.promise())}),o.when.apply(o,a).done(function(){var e=o.makeArray(arguments);t&&"function"==typeof t&&t(e)}).fail(function(e){i.log.warn(e),n&&"function"==typeof n&&n(e)})}}],"getStudyMetadata.js":["meteor/ohif:core",function(t,n,i){var a;i.import("meteor/ohif:core",{OHIF:function(e){a=e}});var s={};We=function t(n,i,r){var l=s[n];return l?void i(l):(console.time("getStudyMetadata"),void e.call("GetStudyMetadata",n,function(t,l){if(console.timeEnd("getStudyMetadata"),e.user&&e.user()){var d={eventType:"viewed",userId:e.userId(),userName:e.user().profile.fullName,collectionName:"Study",recordId:n,patientId:l.patientId,patientName:l.patientName};HipaaLogger.logEvent(d)}if(t)return a.log.warn(t),void r(t);if(!l)throw"GetStudyMetadata: No study data returned from server";x(l);var u=_e.findOne({studyInstanceUid:l.studyInstanceUid});o.extend(l,u),s[n]=l,i(l)}))}}],"importStudies.js":["meteor/ohif:core",function(t,n,o){function i(e,t){t?e.numberOfFilesUploaded++:e.numberOfFilesFailed++}function a(t,n){if(t){var o=t.length;s.studylist.progressDialog.show({title:"Importing Studies...",numberOfCompleted:0,numberOfTotal:o}),e.call("createStudyImportStatus",function(i,a){return i?(s.studylist.progressDialog.close(),void console.log(i.message)):(s.studylist.collections.StudyImportStatus.find(a).observe({changed:function(){function t(t){if(t){var i=t.numberOfStudiesImported+t.numberOfStudiesFailed,a="Imported "+t.numberOfStudiesImported+" of "+o;if(s.studylist.progressDialog.setMessage({message:a,messageType:"success"}),s.studylist.progressDialog.update(i),t.numberOfStudiesFailed>0){var a="Failed "+t.numberOfStudiesFailed+" of "+o;s.studylist.progressDialog.setMessage({message:a,messageType:"warning"})}i==o&&(e.call("removeStudyImportStatus",t._id),n&&n())}}return t}()}),void e.call("importStudies",t,a))})}}var s;o.import("meteor/ohif:core",{OHIF:function(e){s=e}}),L=function e(t,n){if(!(t.length<1)){var o={numberOfFilesUploaded:0,numberOfFilesFailed:0},r=t.length,l=[];s.studylist.progressDialog.show({title:"Uploading Files...",numberOfCompleted:0,numberOfTotal:r}),t.forEach(function(e){var t=new XMLHttpRequest;t.open("POST","/uploadFilesToImport",!0),t.setRequestHeader("filename",e.name),t.onload=function(){if(4===t.readyState&&200!==t.status)return void i(o,!1);l.push(t.responseText),i(o,!0);var e=o.numberOfFilesUploaded+o.numberOfFilesFailed;s.studylist.progressDialog.update(e),r===e&&(a(l,n),o.numberOfFilesFailed>0&&s.log.info("Failed to upload "+o.numberOfFilesFailed+" of "+r+" files"))},t.onerror=function(){i(o,!1)},t.send(e)})}}}],"index.js":["./third-party/jquery.twbsPagination.min.js","./exportStudies.js","./getSelectedStudies.js","./getStudyMetadata.js","./getStudiesMetadata.js","./importStudies.js","./openNewTab.js","./queryStudies.js","./studylist.js","./switchToTab.js",function(e,t,n){n.import("./third-party/jquery.twbsPagination.min.js"),n.import("./exportStudies.js"),n.import("./getSelectedStudies.js"),n.import("./getStudyMetadata.js"),n.import("./getStudiesMetadata.js"),n.import("./importStudies.js"),n.import("./openNewTab.js"),n.import("./queryStudies.js"),n.import("./studylist.js"),n.import("./switchToTab.js")}],"openNewTab.js":function(){Fe=function e(t,n){console.log("openNewTab");var o=s.id();Oe=window.ViewerData||Oe,Oe[o]={title:n,contentid:o,studyInstanceUids:[t]},Ae(o)}},"queryStudies.js":["meteor/ohif:core",function(e,t,n){var o;n.import("meteor/ohif:core",{OHIF:function(e){o=e}}),D=function e(t,n){if(!(t.length<1)){var i=[],a=t.length;o.studylist.progressDialog.show("Querying Studies...",a),t.forEach(function(e){We(e.studyInstanceUid,function(e){i.push(e);var t=i.length;o.studylist.progressDialog.update(t),t===a&&n(i)})})}},C=function e(t){var n=0;return t.seriesList.forEach(function(e){e.instances.forEach(function(e){e.wadouri&&n++})}),n}}],"studylist.js":function(){function e(e){var t=A(e.patientName);Fe(e.studyInstanceUid,t)}Ee={functions:{},callbacks:{}},Ee.callbacks.dblClickOnStudy=e,Ee.callbacks.middleClickOnStudy=e;var t=!0,n=function e(){return t?void(t=!1):void Ae("studylistTab")};Ne.find().observe({added:n,changed:n})},"switchToTab.js":["meteor/ohif:core",function(e,t,n){function a(e,t){if(!Oe[e])return void s.log.warn("Tab closed while study data was being retrieved");var n=i.extend({},Oe[e]);n.studies=t,n.contentId=e,Oe[e].studies&&Oe[e].studies.length&&(n.studies=Oe[e].studies),n.studies.forEach(function(e){var t=_e.findOne({studyInstanceUid:e.studyInstanceUid});t&&o.extend(e,t)});var a=o(".tab-content").find("#viewerTab").get(0),r=document.createElement("div");r.classList.add("viewerContainer"),a.innerHTML="",a.appendChild(r),ke.renderWithData(we.viewer,n,r);var l=o("#viewer");l&&(document.body.style.overflow="hidden",document.body.style.height="100%",document.body.style.width="100%",document.body.style.minWidth=0,document.body.style.position="fixed")}var s;n.import("meteor/ohif:core",{OHIF:function(e){s=e}}),Ae=function e(t){if(t){s.log.info("Switching to tab: "+t),te.globalImageIdSpecificToolStateManager=te.newImageIdSpecificToolStateManager(),o(".tab-content .tab-pane").removeClass("active"),"studylistTab"!==t?o(".tab-content .tab-pane#viewerTab").addClass("active"):o(".tab-content .tab-pane#"+t).addClass("active"),o(".viewerContainer").remove(),o(".studylistContainer").remove(),ye.set("activeContentId",t);var n;if("studylistTab"===t){if(n=o(".tab-content").find("#studylistTab").get(0),!n)return;var i=document.createElement("div");return i.classList.add("studylistContainer"),n.appendChild(i),ke.render(we.studylistResult,i),document.body.style.overflow=null,document.body.style.height=null,document.body.style.minWidth=null,void(document.body.style.position=null)}if(Oe=window.ViewerData||Oe,Oe[t]){var n=o(".tab-content").find("#viewerTab").get(0);n.innerHTML="",ke.renderWithData(we.loadingText,{},n);var r=Oe[t].studies;if(r)a(t,r);else{var l=Oe[t].studyInstanceUids;s.studylist.getStudiesMetadata(l,function(e){a(t,e)})}}}}}],"third-party":{"jquery.twbsPagination.min.js":function(){!function(e,t,n,o){"use strict";var i=e.fn.twbsPagination,a=function(n,o){if(this.$element=e(n),this.options=e.extend({},e.fn.twbsPagination.defaults,o),this.options.startPage<1||this.options.startPage>this.options.totalPages)throw new Error("Start page option is incorrect");if(this.options.totalPages=parseInt(this.options.totalPages),isNaN(this.options.totalPages))throw new Error("Total pages option is not correct!");if(this.options.visiblePages=parseInt(this.options.visiblePages),isNaN(this.options.visiblePages))throw new Error("Visible pages option is not correct!");if(this.options.totalPages<this.options.visiblePages&&(this.options.visiblePages=this.options.totalPages),this.options.onPageClick instanceof Function&&this.$element.first().on("page",this.options.onPageClick),this.options.href){var i,a=this.options.href.replace(/[-\/\\^$*+?.|[\]]/g,"\\$&");a=a.replace(this.options.hrefVariable,"(\\d+)"),null!=(i=new RegExp(a,"i").exec(t.location.href))&&(this.options.startPage=parseInt(i[1],10))}var s="function"==typeof this.$element.prop?this.$element.prop("tagName"):this.$element.attr("tagName");return"UL"===s?this.$listContainer=this.$element:this.$listContainer=e("<ul></ul>"),this.$listContainer.addClass(this.options.paginationClass),"UL"!==s&&this.$element.append(this.$listContainer),this.render(this.getPages(this.options.startPage)),this.setupEvents(),this.options.initiateStartPageClick&&this.$element.trigger("page",this.options.startPage),this};a.prototype={constructor:a,destroy:function(){return this.$element.empty(),this.$element.removeData("twbs-pagination"),this.$element.off("page"),this},show:function(e){if(1>e||e>this.options.totalPages)throw new Error("Page is incorrect.");return this.render(this.getPages(e)),this.setupEvents(),this.$element.trigger("page",e),this},buildListItems:function(e){var t=[];if(this.options.first&&t.push(this.buildItem("first",1)),this.options.prev){var n=e.currentPage>1?e.currentPage-1:this.options.loop?this.options.totalPages:1;t.push(this.buildItem("prev",n))}for(var o=0;o<e.numeric.length;o++)t.push(this.buildItem("page",e.numeric[o]));if(this.options.next){var i=e.currentPage<this.options.totalPages?e.currentPage+1:this.options.loop?1:this.options.totalPages;t.push(this.buildItem("next",i))}return this.options.last&&t.push(this.buildItem("last",this.options.totalPages)),t},buildItem:function(t,n){var o=e("<li></li>"),i=e("<a></a>"),a=null;switch(t){case"page":a=n,o.addClass(this.options.pageClass);break;case"first":a=this.options.first,o.addClass(this.options.firstClass);break;case"prev":a=this.options.prev,o.addClass(this.options.prevClass);break;case"next":a=this.options.next,o.addClass(this.options.nextClass);break;case"last":a=this.options.last,o.addClass(this.options.lastClass)}return o.data("page",n),o.data("page-type",t),o.append(i.attr("href",this.makeHref(n)).html(a)),o},getPages:function(e){var t=[],n=Math.floor(this.options.visiblePages/2),o=e-n+1-this.options.visiblePages%2,i=e+n;0>=o&&(o=1,i=this.options.visiblePages),i>this.options.totalPages&&(o=this.options.totalPages-this.options.visiblePages+1,i=this.options.totalPages);for(var a=o;i>=a;)t.push(a),a++;return{currentPage:e,numeric:t}},render:function(t){var n=this;this.$listContainer.children().remove(),this.$listContainer.append(this.buildListItems(t)),this.$listContainer.children().each(function(){var o=e(this),i=o.data("page-type");switch(i){case"page":o.data("page")===t.currentPage&&o.addClass(n.options.activeClass);break;case"first":o.toggleClass(n.options.disabledClass,1===t.currentPage);break;case"last":o.toggleClass(n.options.disabledClass,t.currentPage===n.options.totalPages);break;case"prev":o.toggleClass(n.options.disabledClass,!n.options.loop&&1===t.currentPage);break;case"next":o.toggleClass(n.options.disabledClass,!n.options.loop&&t.currentPage===n.options.totalPages)}})},setupEvents:function(){var t=this;this.$listContainer.find("li").each(function(){var n=e(this);return n.off(),n.hasClass(t.options.disabledClass)||n.hasClass(t.options.activeClass)?void n.on("click",!1):void n.click(function(e){!t.options.href&&e.preventDefault(),t.show(parseInt(n.data("page")))})})},makeHref:function(e){return this.options.href?this.options.href.replace(this.options.hrefVariable,e):"#"}},e.fn.twbsPagination=function(t){var n,i=Array.prototype.slice.call(arguments,1),s=e(this),r=s.data("twbs-pagination"),l="object"==typeof t&&t;return r||s.data("twbs-pagination",r=new a(this,l)),"string"==typeof t&&(n=r[t].apply(r,i)),n===o?s:n},e.fn.twbsPagination.defaults={totalPages:0,startPage:1,visiblePages:5,initiateStartPageClick:!0,href:!1,hrefVariable:"{{number}}",first:"First",prev:"Previous",next:"Next",last:"Last",loop:!1,onPageClick:null,paginationClass:"pagination",nextClass:"next",prevClass:"prev",lastClass:"last",firstClass:"first",pageClass:"page",activeClass:"active",disabledClass:"disabled"},e.fn.twbsPagination.Constructor=a,e.fn.twbsPagination.noConflict=function(){return e.fn.twbsPagination=i,this}}(window.jQuery,window,document)}}}}}}}},{extensions:[".js",".json",".html",".styl"]});ze("./node_modules/meteor/ohif:study-list/both/index.js"),ze("./node_modules/meteor/ohif:study-list/client/index.js"),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["ohif:study-list"]={},{Servers:je,CurrentServer:Ne,getCurrentServer:Ve,getStudyMetadata:We,openNewTab:Fe,switchToTab:Ae,StudyList:Ee,ViewerData:Oe,StudyListStudies:_e,StudyListSelectedStudies:qe})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,n=Package.meteor.meteorEnv,o=Package.jquery.$,r=Package.jquery.jQuery,i=Package.random.Random,a=Package["templating-runtime"].Template,s=Package["clinical:router"].Router,c=Package["clinical:router"].RouteController,u=Package.validatejs.validate,l=Package["ohif:viewerbase"].resizeViewportElements,d=Package["ohif:viewerbase"].handleResize,p=Package["ohif:viewerbase"].enableHotkeys,g=Package["ohif:viewerbase"].enablePrefetchOnElement,f=Package["ohif:viewerbase"].displayReferenceLines,h=Package["ohif:viewerbase"].setActiveViewport,v=Package["ohif:viewerbase"].createStacks,m=Package["ohif:viewerbase"].getImageId,b=Package["ohif:viewerbase"].getWADORSImageId,y=Package["ohif:viewerbase"].metaDataProvider,w=Package["ohif:viewerbase"].sortStudy,k=Package["ohif:viewerbase"].updateOrientationMarkers,P=Package["ohif:viewerbase"].setFocusToActiveViewport,S=Package["ohif:viewerbase"].updateAllViewports,D=Package["ohif:viewerbase"].queryStudies,I=Package["ohif:viewerbase"].getNumberOfFilesInStudy,V=Package["ohif:viewerbase"].importStudies,E=Package["ohif:viewerbase"].getActiveViewportElement,T=Package["ohif:viewerbase"].getInstanceClassDefaultViewport,M=Package["ohif:viewerbase"].showConfirmDialog,R=Package["ohif:viewerbase"].applyWLPreset,x=Package["ohif:viewerbase"].toggleDialog,C=Package["ohif:viewerbase"].isImage,O=Package["ohif:viewerbase"].sopClassDictionary,j=Package["ohif:viewerbase"].addMetaData,N=Package["ohif:viewerbase"].hasMultipleFrames,A=Package["ohif:viewerbase"].toolManager,U=Package["ohif:viewerbase"].LayoutManager,_=Package["ohif:viewerbase"].ViewerStudies,L=Package["ohif:viewerbase"].formatPN,B=Package["ohif:viewerbase"].isTouchDevice,H=Package["ohif:viewerbase"].toggleCineDialog,q=Package["ohif:viewerbase"].toggleCinePlay,G=Package["ohif:viewerbase"].clearTools,W=Package["ohif:viewerbase"].resetViewport,F=Package["ohif:viewerbase"].invert,$=Package["ohif:viewerbase"].flipV,Y=Package["ohif:viewerbase"].flipH,J=Package["ohif:viewerbase"].rotateR,z=Package["ohif:viewerbase"].rotateL,K=Package.modules.meteorInstall,Q=Package.modules.Buffer,Z=Package.modules.process,X=Package["ecmascript-runtime"].Symbol,tt=Package["ecmascript-runtime"].Map,et=Package["ecmascript-runtime"].Set,nt=Package["babel-runtime"].meteorBabelHelpers,ot=Package.promise.Promise,rt=Package["iron:core"].Iron,it=Package.webapp.WebApp,at=Package.logging.Log,st=Package.deps.Tracker,ct=Package.deps.Deps,ut=Package.session.Session,lt=Package["ddp-client"].DDP,dt=Package.mongo.Mongo,pt=Package.ui.Blaze,gt=Package.ui.UI,ft=Package.ui.Handlebars,ht=Package.spacebars.Spacebars,vt=Package.check.check,mt=Package.check.Match,bt=Package.underscore._,yt=Package.ejson.EJSON,wt=Package["launch-screen"].LaunchScreen,kt=Package.htmljs.HTML,Pt,St,Dt,It,Vt,Et,Tt,Mt,Rt,xt,Ct=K({node_modules:{meteor:{"ohif:hanging-protocols":{both:{"namespace.js":function(){Pt={}},"collections.js":function(){St=new t.Collection("hangingprotocols"),St._debugName="HangingProtocols",St.allow({insert:function(){function t(){return!0}return t}(),update:function(){function t(){return!0}return t}()})},"schema.js":["babel-runtime/helpers/possibleConstructorReturn","babel-runtime/helpers/inherits","babel-runtime/helpers/classCallCheck",function(e,n,r){function a(t,e){return!(!t||!t.length)&&(t.forEach(function(t,n){if(bt.isEqual(t,e))return Dt=n,!1}),void 0!==Dt&&(t.splice(Dt,1),!0))}var s;r.import("babel-runtime/helpers/possibleConstructorReturn",{default:function(t){s=t}});var c;r.import("babel-runtime/helpers/inherits",{default:function(t){c=t}});var u;r.import("babel-runtime/helpers/classCallCheck",{default:function(t){u=t}}),Pt.Protocol=function(){function e(n){u(this,e),this.id=i.id(),this.locked=!1,this.name=n,this.createdDate=new Date,this.modifiedDate=new Date,t.users&&t.userId&&(this.createdBy=t.userId,this.modifiedBy=t.userId),this.availableTo=new et,this.editableBy=new et,this.protocolMatchingRules=[],this.stages=[],this.numberOfPriorsReferenced=0}return e.prototype.updateNumberOfPriorsReferenced=function(){function t(){var t=0;this.stages.forEach(function(e){e.viewports&&e.viewports.forEach(function(e){e.studyMatchingRules&&e.studyMatchingRules.forEach(function(e){"abstractPriorValue"===e.attribute?t++:"relativeTime"===e.attribute&&t++})})}),this.numberOfPriorsReferenced=t}return t}(),e.prototype.protocolWasModified=function(){function e(){t.users&&t.userId&&(this.modifiedBy=t.userId),this.updateNumberOfPriorsReferenced(),this.modifiedDate=new Date}return e}(),e.prototype.fromObject=function(){function t(t){var e=this;this.id=t.id||i.id(),this.name=t.name,this.locked=!!t.locked,t.protocolMatchingRules&&t.protocolMatchingRules.forEach(function(t){var n=new Pt.ProtocolMatchingRule;n.fromObject(t),e.protocolMatchingRules.push(n)}),t.stages&&t.stages.forEach(function(t){var n=new Pt.Stage;n.fromObject(t),e.stages.push(n)})}return t}(),e.prototype.createClone=function(){function t(t){var e=o.extend({},this),n=new Pt.Protocol;return e.id=n.id,n.fromObject(e),t&&(n.name=t),delete n._id,n.locked=!1,n}return t}(),e.prototype.addAvailableTo=function(){function t(t){this.availableTo.add(t._id),this.protocolWasModified()}return t}(),e.prototype.addEditableBy=function(){function t(t){this.editableBy.add(t._id),this.protocolWasModified()}return t}(),e.prototype.addStage=function(){function t(t){this.stages.push(t),this.protocolWasModified()}return t}(),e.prototype.addProtocolMatchingRule=function(){function t(t){this.protocolMatchingRules.push(t),this.protocolWasModified()}return t}(),e.prototype.removeProtocolMatchingRule=function(){function t(t){var e=a(this.protocolMatchingRules,t);e&&this.protocolWasModified()}return t}(),e}();var l=function(){function t(e,n,o,r){u(this,t),this.id=i.id(),this.weight=r||1,e&&(this.attribute=e),n&&(this.constraint=n),void 0===o?this.required=!1:this.required=o}return t.prototype.fromObject=function(){function t(t){this.id=t.id||i.id(),this.required=t.required,this.weight=t.weight,this.attribute=t.attribute,this.constraint=t.constraint}return t}(),t}();Pt.ProtocolMatchingRule=function(t){function e(){return u(this,e),s(this,t.apply(this,arguments))}return c(e,t),e}(l),Pt.Stage=function(){function t(e,n){u(this,t),this.id=i.id(),this.name=n,this.viewportStructure=e,this.viewports=[],this.createdDate=new Date}return t.prototype.createClone=function(){function t(t){var e=o.extend({},this),n=new Pt.Stage;return e.id=n.id,n.fromObject(e),t&&(n.name=t),n}return t}(),t.prototype.fromObject=function(){function t(t){var e=this;this.id=t.id||i.id(),this.name=t.name,this.viewportStructure=new Pt.ViewportStructure,this.viewportStructure.fromObject(t.viewportStructure),t.viewports&&t.viewports.forEach(function(t){var n=new Pt.Viewport;n.fromObject(t),e.viewports.push(n)})}return t}(),t}(),Pt.ViewportStructure=function(){function t(e,n){u(this,t),this.type=e,this.properties=n}return t.prototype.fromObject=function(){function t(t){this.type=t.type,this.properties=t.properties}return t}(),t.prototype.getLayoutTemplateName=function(){function t(){switch(this.type){case"grid":return"gridLayout"}}return t}(),t.prototype.getNumViewports=function(){function t(){switch(this.type){case"grid":return this.properties.rows*this.properties.columns}}return t}(),t}(),Pt.Viewport=function(){function t(){u(this,t),this.viewportSettings={},this.imageMatchingRules=[],this.seriesMatchingRules=[],this.studyMatchingRules=[]}return t.prototype.fromObject=function(){function t(t){var e=this;t.imageMatchingRules&&t.imageMatchingRules.forEach(function(t){var n=new Pt.ImageMatchingRule;n.fromObject(t),e.imageMatchingRules.push(n)}),t.seriesMatchingRules&&t.seriesMatchingRules.forEach(function(t){var n=new Pt.SeriesMatchingRule;n.fromObject(t),e.seriesMatchingRules.push(n)}),t.studyMatchingRules&&t.studyMatchingRules.forEach(function(t){var n=new Pt.StudyMatchingRule;n.fromObject(t),e.studyMatchingRules.push(n)}),t.viewportSettings&&(this.viewportSettings=t.viewportSettings)}return t}(),t.prototype.removeRule=function(){function t(t){var e;t instanceof Pt.StudyMatchingRule?e=this.studyMatchingRules:t instanceof Pt.SeriesMatchingRule?e=this.seriesMatchingRules:t instanceof Pt.ImageMatchingRule&&(e=this.imageMatchingRules),a(e,t)}return t}(),t}(),Pt.ImageMatchingRule=function(t){function e(){return u(this,e),s(this,t.apply(this,arguments))}return c(e,t),e}(l),Pt.SeriesMatchingRule=function(t){function e(){return u(this,e),s(this,t.apply(this,arguments))}return c(e,t),e}(l),Pt.StudyMatchingRule=function(t){function e(){return u(this,e),s(this,t.apply(this,arguments))}return c(e,t),e}(l)}],"routes.js":function(){s.route("/protocol-export/:_id",function(){var t=this.params._id,e=St.findOne({id:t});if(!e)return this.response.writeHead(404),void this.response.end();delete e._id;var n=JSON.stringify(e,null,2),o=new Date,r=e.name+"-"+o.getTime().toString()+".json";this.response.writeHead(200,{"Content-Type":"application/x-download","Content-Disposition":"attachment; filename="+r,"Content-Length":n.length}),this.response.end(n)},{where:"server"}),s.route("/protocol-import",{where:"server"}).post(function(){try{var t=JSON.parse(this.request.body.protocol);St.insert(t),this.response.writeHead(200),this.response.end(t.id)}catch(t){this.response.writeHead(500),this.response.end("Failed to parse protocol JSON.")}})},"hardcodedData.js":function(){Pt.attributeDefaults={abstractPriorValue:0},Pt.displaySettings={invert:{id:"invert",text:"Show Grayscale Inverted",defaultValue:"NO",options:["YES","NO"]}},Pt.studyAttributes=[{id:"patientId",text:"(x00100020) Patient ID"},{id:"studyInstanceUid",text:"(x0020000d) Study Instance UID"},{id:"studyInstanceUid",text:"(x0020000d) Study Instance UID"},{id:"studyDate",text:"(x00080020) Study Date"},{id:"studyTime",text:"(x00080030) Study Time"},{id:"studyDescription",text:"(x00081030) Study Description"},{id:"abstractPriorValue",text:"Abstract Prior Value"}],Pt.protocolAttributes=[{id:"patientId",text:"(x00100020) Patient ID"},{id:"studyInstanceUid",text:"(x0020000d) Study Instance UID"},{id:"studyDate",text:"(x00080020) Study Date"},{id:"studyTime",text:"(x00080030) Study Time"},{id:"studyDescription",text:"(x00081030) Study Description"},{id:"anatomicRegion",text:"Anatomic Region"}],Pt.seriesAttributes=[{id:"seriesInstanceUid",text:"(x0020000e) Series Instance UID"},{id:"modality",text:"(x00080060) Modality"},{id:"seriesNumber",text:"(x00080060) Series Number"},{id:"seriesDescription",text:"(x0008103e) Series Description"},{id:"numImages",text:"Number of Images"}],Pt.instanceAttributes=[{id:"sopClassUid",text:"SOP Class UID"},{id:"sopInstanceUid",text:"SOP Instance UID"},{id:"viewPosition",text:"View Position"},{id:"instanceNumber",text:"Instance Number"},{id:"imageType",text:"Image Type"},{id:"frameTime",text:"Frame Time"},{id:"laterality",text:"Laterality"},{id:"index",text:"Image Index"},{id:"photometricInterpretation",text:"Photometric Interpretation"},{id:"sliceThickness",text:"Slice Thickness"}]},"testData.js":function(){function t(){var t=new Pt.Protocol("Default");t.id="defaultProtocol",t.locked=!0;var e=new Pt.ViewportStructure("grid",{rows:1,columns:1}),n=new Pt.Viewport,o=new Pt.Stage(e,"oneByOne");return o.viewports.push(n),t.stages.push(o),Pt.defaultProtocol=t,Pt.defaultProtocol}function e(){var t=new Pt.Protocol("MR_TwoByTwo");t.locked=!0;var e=new Pt.ProtocolMatchingRule("studyInstanceUid",{equals:{value:"1.2.840.113619.2.5.1762583153.215519.978957063.78"}},(!0));t.addProtocolMatchingRule(e);var n=new Pt.ViewportStructure("grid",{rows:1,columns:2}),o=new Pt.Viewport,r=new Pt.Viewport,i=new Pt.SeriesMatchingRule("seriesNumber",{equals:{value:1}}),a=new Pt.SeriesMatchingRule("seriesNumber",{equals:{value:2}}),s=new Pt.ImageMatchingRule("instanceNumber",{equals:{value:3}});o.seriesMatchingRules.push(i),o.imageMatchingRules.push(s),r.seriesMatchingRules.push(a),r.imageMatchingRules.push(s);var c=new Pt.Stage(n,"oneByTwo");c.viewports.push(o),c.viewports.push(r),t.stages.push(c);var u=new Pt.ViewportStructure("grid",{rows:2,columns:1}),l=new Pt.Viewport,d=new Pt.Viewport,p=new Pt.SeriesMatchingRule("seriesNumber",{equals:{value:4}}),g=new Pt.SeriesMatchingRule("seriesNumber",{equals:{value:5}});l.seriesMatchingRules.push(p),l.imageMatchingRules.push(s),d.seriesMatchingRules.push(g),d.imageMatchingRules.push(s);var f=new Pt.Stage(u,"twoByOne");return f.viewports.push(l),f.viewports.push(d),t.stages.push(f),Pt.testProtocol=t,Pt.testProtocol}t(),e()}},client:{"collections.js":function(){It=new t.Collection(null),Vt=new t.Collection(null);var e=[{id:"equals",name:"= (Equals)",validator:"equals",validatorOption:"value",description:"The attribute must equal this value."},{id:"doesNotEqual",name:"!= (Does not equal)",validator:"doesNotEqual",validatorOption:"value",description:"The attribute must not equal this value."},{id:"contains",name:"Contains",validator:"contains",validatorOption:"value",description:"The attribute must contain this value."},{id:"doesNotContain",name:"Does not contain",validator:"doesNotContain",validatorOption:"value",description:"The attribute must not contain this value."},{id:"onlyInteger",name:"Only Integers",validator:"numericality",validatorOption:"onlyInteger",description:"Real numbers won't be allowed."},{id:"greaterThan",name:"> (Greater than)",validator:"numericality",validatorOption:"greaterThan",description:"The attribute has to be greater than this value."},{id:"greaterThanOrEqualTo",name:">= (Greater than or equal to)",validator:"numericality",validatorOption:"greaterThanOrEqualTo",description:"The attribute has to be at least this value."},{id:"lessThanOrEqualTo",name:"<= (Less than or equal to)",validator:"numericality",validatorOption:"lessThanOrEqualTo",description:"The attribute can be this value at the most."},{id:"lessThan",name:"< (Less than)",validator:"numericality",validatorOption:"lessThan",description:"The attribute has to be less than this value."},{id:"odd",name:"Odd",validator:"numericality",validatorOption:"odd",description:"The attribute has to be odd."},{id:"even",name:"Even",validator:"numericality",validatorOption:"even",description:"The attribute has to be even."}];e.forEach(function(t){Vt.insert(t)})},"protocolEngine.js":["babel-runtime/helpers/classCallCheck","meteor/ohif:core",function(e,n,r){var i;r.import("babel-runtime/helpers/classCallCheck",{default:function(t){i=t}});var a;r.import("meteor/ohif:core",{OHIF:function(t){a=t}}),Et=void 0,Pt.setEngine=function(t){Et=t},Pt.CustomAttributeRetrievalCallbacks={},Pt.addCustomAttribute=function(t,e,n){Pt.CustomAttributeRetrievalCallbacks[t]={name:e,callback:n}},Pt.CustomViewportSettings={},Pt.addCustomViewportSetting=function(t,e,n,o){Pt.CustomViewportSettings[t]={id:t,text:e,options:n,callback:o}},t.startup(function(){Pt.addCustomViewportSetting("wlPreset","Window/Level Preset",Object.keys(a.viewer.wlPresets),function(t,e){a.viewer.wlPresets.hasOwnProperty(e)&&R(e,t)})}),Pt.match=function(t,e){var n={format:"grouped"},o=0,r={passed:[],failed:[]},i=!1;return e.forEach(function(e){var a=e.attribute;if(void 0===t[a]&&Pt.CustomAttributeRetrievalCallbacks.hasOwnProperty(a)){var s=Pt.CustomAttributeRetrievalCallbacks[a];t[a]=s.callback(t)}var c={};c[a]=e.constraint;var l=u(t,c,[n]);l?(e.required&&(i=!0),r.failed.push({rule:e,errorMessages:l})):(o+=e.weight,r.passed.push({rule:e}))}),i&&(o=0),{score:o,details:r}};var s=function t(e){e.sort(function(t,e){return e.score-t.score})};Pt.ProtocolEngine=function(){function t(e,n){i(this,t),this.LayoutManager=e,this.studies=n,this.reset(),this.newStageIds=[]}return t.prototype.reset=function(){function t(){var t=this.getBestMatch();this.setHangingProtocol(t)}return t}(),t.prototype.getCurrentStageModel=function(){function t(){return this.protocol.stages[this.stage]}return t}(),t.prototype.findMatchByStudy=function(){function t(t){var e=this,n=[];if(St.find().forEach(function(o){var r=o.protocolMatchingRules.slice(0);if(r){t.numberOfPriorsReferenced=e.getNumberOfAvailablePriors(t);var i=new Pt.ProtocolMatchingRule("numberOfPriorsReferenced",{numericality:{greaterThanOrEqualTo:o.numberOfPriorsReferenced}});r.push(i);var a=Pt.match(t,r);a.score>0&&n.push({score:a.score,protocol:o})}}),!n.length){var o=St.findOne({id:"defaultProtocol"});return[{score:1,protocol:o}]}return s(n),n}return t}(),t.prototype.updateMatches=function(){function t(){var t=this;It.remove({}),this.studies.forEach(function(e){var n=t.findMatchByStudy(e);n.forEach(function(t){var e=t.protocol;if(e){var n=It.findOne({id:e.id});n||It.insert(t)}})})}return t}(),t.prototype.getBestMatch=function(){function t(){this.updateMatches();var t=It.find({},{sort:{score:-1},limit:1}).fetch();return t[0].protocol}return t}(),t.prototype.getNumberOfAvailablePriors=function(){function t(t){var e=StudyListStudies.find({patientId:t.patientId,studyDate:{$lt:t.studyDate}});return e.count()}return t}(),t.prototype.findRelatedStudies=function(){function t(t,e){if(t.protocolMatchingRules){var n=StudyListStudies.find({patientId:e.patientId,studyDate:{$lt:e.studyDate}},{sort:{studyDate:-1}}),o=[],r=moment(e.studyDate,"YYYYMMDD");return n.forEach(function(e,i){i===n.length-1?e.abstractPriorValue=-1:e.abstractPriorValue=i+1;var a=moment(e.studyDate,"YYYYMMDD");e.relativeTime=r.diff(a);var s=Pt.match(e,t.protocolMatchingRules);s.score&&o.push({score:s.score,study:e})}),s(o),o.map(function(t){return t.study})}}return t}(),t.prototype.matchImages=function(){function t(t){var e=this,n=t.studyMatchingRules,o=t.seriesMatchingRules,r=t.imageMatchingRules,i=0,s=0,c=0,u=[],l,d=this.studies[0];d.abstractPriorValue=0,n.forEach(function(n){if("abstractPriorValue"===n.attribute){var o=Object.keys(n.constraint)[0],r=Object.keys(n.constraint[o])[0],i=n.constraint[o][r];i=parseInt(i,10);var a=StudyListStudies.find({patientId:d.patientId,studyDate:{$lt:d.studyDate}},{sort:{studyDate:-1}}).fetch(),s;if(i===-1)s=a[a.length-1];else{var c=Math.max(i-1,0);s=a[c]}if(!s)return;var u=_.findOne({studyInstanceUid:s.studyInstanceUid});u||getStudyMetadata(s.studyInstanceUid,function(n){n.abstractPriorValue=i,n.displaySets=v(n),_.insert(n),e.studies.push(n),e.matchImages(t),e.updateViewports()})}});var p=this.studies.length-1;this.studies.forEach(function(t){var e=Pt.match(t,n);n.length&&!e.score||e.score<i||(i=e.score,t.seriesList.forEach(function(n){var i=Pt.match(n,o);o.length&&!i.score||i.score<s||(s=i.score,n.instances.forEach(function(o,a){if(C(o.sopClassUid)||o.rows){var s=Pt.match(o,r),d={passed:[],failed:[]};d.passed=d.passed.concat(s.details.passed),d.passed=d.passed.concat(i.details.passed),d.passed=d.passed.concat(e.details.passed),d.failed=d.failed.concat(s.details.failed),d.failed=d.failed.concat(i.details.failed),d.failed=d.failed.concat(e.details.failed);var p=s.score+i.score+e.score,g={studyInstanceUid:t.studyInstanceUid,seriesInstanceUid:n.seriesInstanceUid,sopInstanceUid:o.sopInstanceUid,currentImageIdIndex:a,matchingScore:p,matchDetails:d,sortingInfo:{score:p,study:t.studyDate+t.studyTime,series:parseInt(n.seriesNumber),instance:parseInt(o.instanceNumber)}},f={sopInstanceUid:o.sopInstanceUid},h=bt.filter(t.displaySets,function(t){return bt.findWhere(t.images,f)})[0];h&&(g.displaySetInstanceUid=h.displaySetInstanceUid,g.imageId=m(o)),(p>c||!l)&&(c=p,l=g),u.push(g)}}))}))});var g=a.utils.sortBy({name:"score",reverse:!0},{name:"study",reverse:!0},{name:"instance"},{name:"series"});return u.sort(function(t,e){return g(t.sortingInfo,e.sortingInfo)}),{bestMatch:l,matchingScores:u}}return t}(),t.prototype.updateViewports=function(){function t(t){var e=this;if(this.protocol&&this.protocol.stages&&this.protocol.stages.length){var n=this.getCurrentStageModel();if(n&&n.viewportStructure&&n.viewports&&n.viewports.length){var r=n.viewportStructure.getLayoutTemplateName();if(r){var i=n.viewportStructure.properties;if(i){var a=[];this.matchDetails=[],n.viewports.forEach(function(t,n){var r=e.matchImages(t);e.matchDetails[n]=r;var s={};Object.keys(t.viewportSettings).forEach(function(e){var n=t.viewportSettings[e];"YES"===n?n=!0:"NO"===n&&(n=!1),s[e]=n});var c=o.extend({viewportIndex:n,viewport:s},i),u=[];Object.keys(t.viewportSettings).forEach(function(e){var n=Pt.CustomViewportSettings[e];n&&u.push({id:e,value:t.viewportSettings[e]})}),c.renderedCallback=function(t){u.forEach(function(e){console.log("Applying custom setting: "+e.id),console.log("with value: "+e.value);var n=Pt.CustomViewportSettings[e.id];n.callback(t,e.value)})};for(var l=r.bestMatch,d=1,p=r.matchingScores.length;d<p&&bt.findWhere(a,{imageId:l.imageId});)l=r.matchingScores[d],d++;if(l&&l.imageId&&(c.studyInstanceUid=l.studyInstanceUid,c.seriesInstanceUid=l.seriesInstanceUid,c.sopInstanceUid=l.sopInstanceUid,c.currentImageIdIndex=l.currentImageIdIndex,c.displaySetInstanceUid=l.displaySetInstanceUid,c.imageId=l.imageId),!c.displaySetInstanceUid)throw"No matching display set found?";a.push(c)}),this.LayoutManager.layoutTemplateName=r,this.LayoutManager.layoutProps=i,this.LayoutManager.viewportData=a,void 0!==t&&a[t]?this.LayoutManager.rerenderViewportWithNewDisplaySet(t,a[t]):this.LayoutManager.updateViewports()}}}}}return t}(),t.prototype.setHangingProtocol=function(){function t(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.newStageIds=[],Pt.Protocol.prototype.isPrototypeOf(t)?this.protocol=t:(this.protocol=new Pt.Protocol,this.protocol.fromObject(t)),this.stage=0,e&&this.updateViewports(),It.update({},{$set:{selected:!1}},{multi:!0}),It.update({id:this.protocol.id},{$set:{selected:!0}})}return t}(),t.prototype.setCurrentProtocolStage=function(){function t(t){this.protocol&&this.protocol.stages&&this.protocol.stages.length&&(t>=this.protocol.stages.length||(this.stage=t,this.updateViewports()))}return t}(),t.prototype.getNumProtocolStages=function(){function t(){if(this.protocol&&this.protocol.stages&&this.protocol.stages.length)return this.protocol.stages.length}return t}(),t.prototype.nextProtocolStage=function(){function t(){this.setCurrentProtocolStage(++this.stage)}return t}(),t.prototype.previousProtocolStage=function(){function t(){this.setCurrentProtocolStage(--this.stage)}return t}(),t}()}],helpers:{"displayConstraint.js":function(){function t(t){var e=t.replace(/([A-Z])/g," $1");return e=e.replace(/^./,function(t){return t.toUpperCase()})}gt.registerHelper("displayConstraint",function(e,n){if(n&&e){var o=Object.keys(n)[0];if(e){var r=Object.keys(n[o])[0];if(e){var i=n[o][r];if(void 0!==i){var a=r;return"value"===r&&(a=o),t(e)+" "+t(a).toLowerCase()+" "+i}}}}})},"attributes.js":function(){gt.registerHelper("viewportSettingsTypes",function(){return Pt.viewportSettingsTypes}),gt.registerHelper("toolSettingsTypes",function(){return Pt.toolSettingsTypes}),gt.registerHelper("studyAttributes",function(){return Pt.studyAttributes}),gt.registerHelper("seriesAttributes",function(){return Pt.seriesAttributes}),gt.registerHelper("instanceAttributes",function(){return Pt.instanceAttributes})}},components:{previousPresentationGroupButton:{"template.previousPresentationGroupButton.js":function(){a.__checkName("previousPresentationGroupButton"),a.previousPresentationGroupButton=new a("Template.previousPresentationGroupButton",function(){var t=this;return kt.DIV({id:function(){return ht.mustache(ht.dot(t.lookup("."),"id"))},class:function(){return["toolbarSectionButton rp-x-1 ",ht.mustache(ht.dot(t.lookup("."),"classes"))," ",ht.mustache(t.lookup("activeClass"))," ",pt.If(function(){return ht.call(t.lookup("previousNotAvailable"))},function(){return"disabled"})]},title:function(){return ht.mustache(ht.dot(t.lookup("."),"title"))},disabled:function(){return pt.If(function(){return ht.call(t.lookup("previousNotAvailable"))},function(){return"true"})}},"\n ",kt.DIV({class:"svgContainer"},"\n ",pt.If(function(){return ht.call(ht.dot(t.lookup("."),"svgLink"))},function(){return["\n ",kt.SVG("\n ",kt.USE({"xlink:href":function(){return ht.mustache(ht.dot(t.lookup("."),"svgLink"))}}),"\n "),"\n "]},function(){return["\n ",kt.I({class:function(){return ht.mustache(t.lookup("iconClasses"))}}),"\n "]}),"\n "),"\n ",kt.DIV({class:"buttonLabel"},"\n ",pt.View("lookup:..title",function(){return ht.mustache(ht.dot(t.lookup("."),"title"))}),"\n "),"\n ")})},"previousPresentationGroupButton.js":function(){a.previousPresentationGroupButton.helpers({previousNotAvailable:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et)return 0===Et.stage}return t}()}),a.previousPresentationGroupButton.events({"click #previousPresentationGroup":function(){function t(t){Et&&(o(t.currentTarget).hasClass("disabled")||(o(t.currentTarget).tooltip("hide"),Et.previousProtocolStage()))}return t}()})}},nextPresentationGroupButton:{"template.nextPresentationGroupButton.js":function(){a.__checkName("nextPresentationGroupButton"),a.nextPresentationGroupButton=new a("Template.nextPresentationGroupButton",function(){var t=this;return kt.DIV({id:function(){return ht.mustache(ht.dot(t.lookup("."),"id"))},class:function(){return["toolbarSectionButton rp-x-1 ",ht.mustache(ht.dot(t.lookup("."),"classes"))," ",ht.mustache(t.lookup("activeClass"))," ",pt.If(function(){return ht.call(t.lookup("nextNotAvailable"))},function(){return"disabled"})]},title:function(){return ht.mustache(ht.dot(t.lookup("."),"title"))},disabled:function(){return pt.If(function(){return ht.call(t.lookup("nextNotAvailable"))},function(){return"true"})}},"\n ",kt.DIV({class:"svgContainer"},"\n ",pt.If(function(){return ht.call(ht.dot(t.lookup("."),"svgLink"))},function(){return["\n ",kt.SVG("\n ",kt.USE({"xlink:href":function(){return ht.mustache(ht.dot(t.lookup("."),"svgLink"))}}),"\n "),"\n "]},function(){return["\n ",kt.I({class:function(){return ht.mustache(t.lookup("iconClasses"))}}),"\n "]}),"\n "),"\n ",kt.DIV({class:"buttonLabel"},"\n ",pt.View("lookup:..title",function(){return ht.mustache(ht.dot(t.lookup("."),"title"))}),"\n "),"\n ")})},"nextPresentationGroupButton.js":function(){a.nextPresentationGroupButton.helpers({nextNotAvailable:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et)return Et.stage===Et.getNumProtocolStages()-1}return t}()}),a.nextPresentationGroupButton.events({"click #nextPresentationGroup":function(){function t(t){Et&&(o(t.currentTarget).hasClass("disabled")||(o(t.currentTarget).tooltip("hide"),Et.nextProtocolStage()))}return t}()})}},matchedProtocols:{"template.matchedProtocols.js":function(){a.__checkName("matchedProtocols"),a.matchedProtocols=new a("Template.matchedProtocols",function(){var t=this;return kt.DIV({id:"matchedProtocols",class:"btn-group"},"\n ",pt.If(function(){return ht.call(t.lookup("matchedProtocols"))},function(){return["\n ",kt.BUTTON({type:"button",class:"btn btn-sm dropdown-toggle","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false",title:"Select Hanging Protocol"},"\n ",kt.I({class:"fa fa-list-ol"}),"\n ",kt.SPAN({class:"caret"}),"\n "),"\n ",kt.UL({class:"dropdown-menu"},"\n ",kt.LI("\n ",kt.H5("Select a Hanging Protocol"),"\n "),"\n ",pt.Each(function(){return ht.call(t.lookup("matchedProtocols"))},function(){return["\n ",kt.LI("\n ",kt.A({class:function(){return["matchedProtocol ",pt.If(function(){return ht.call(t.lookup("active"))},function(){return"active"})]}},"\n ",pt.View("lookup:name",function(){return ht.mustache(t.lookup("name"))}),"\n "),"\n "),"\n "]}),"\n "),"\n "]}),"\n ")})},"matchedProtocols.js":["meteor/ohif:core",function(t,e,n){var o;n.import("meteor/ohif:core",{OHIF:function(t){o=t}}),a.matchedProtocols.helpers({matchedProtocols:function(){function t(){return It.find()}return t}()}),a.matchedProtocols.events({"click .matchedProtocol":function(){function t(){var t=this;Et.setHangingProtocol(t)}return t}()})}]},protocolEditor:{"template.protocolEditor.js":function(){a.__checkName("protocolEditor"),a.protocolEditor=new a("Template.protocolEditor",function(){var t=this;return kt.DIV({id:"protocolEditor"},kt.Raw('\n <div class="row">\n <div class="navigationButtons col-xs-12">\n <ul class="nav nav-pills">\n <li class="active">\n <a data-toggle="tab" href="#protocolRulePane">\n Protocol\n </a>\n </li>\n <li>\n <a data-toggle="tab" href="#activeViewportEditor">\n Active Viewport\n </a>\n </li>\n </ul>\n </div>\n </div>\n '),kt.DIV({class:"tab-content"},"\n ",kt.DIV({id:"protocolRulePane",class:"tab-pane active"},"\n ",ht.With(function(){return ht.call(t.lookup("activeProtocol"))},function(){return["\n ",kt.DIV({id:"selectProtocol",class:"protocolEditorSection"},"\n ",kt.SELECT({id:"protocolSelect",style:"width: 50%"},"\n "),"\n ",kt.DIV({class:"dropdown protocolDropdown"},"\n ",kt.BUTTON({type:"button",class:"btn btn-sm dropdown-toggle",id:"protocolDropdown","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"true"},"\n ",kt.I({class:"fa fa-cog"})," ",kt.SPAN({class:"caret"}),"\n "),"\n ",kt.UL({class:"dropdown-menu","aria-labelledby":"protocolDropdown"},"\n ",kt.LI("\n ",kt.A({id:"newProtocol"},"\n New ",kt.I({class:"fa fa-file-text"}),"\n "),"\n "),"\n ",kt.LI("\n ",kt.A({class:"btn-file"},"\n Import ",kt.INPUT({type:"file"})," ",kt.I({class:"fa fa-upload"}),"\n "),"\n "),"\n ",pt.Unless(function(){return ht.call(t.lookup("locked"))},function(){return["\n ",kt.LI("\n ",kt.A({id:"renameProtocol"},"\n Rename ",kt.I({class:"fa fa-pencil"}),"\n "),"\n "),"\n "]}),"\n ",kt.LI("\n ",kt.A({id:"saveAsProtocol"},"\n Save As ",kt.I({class:"fa fa-files-o"}),"\n "),"\n "),"\n ",kt.LI("\n ",kt.A({id:"exportJSON"},"\n Export ",kt.I({class:"fa fa-download"}),"\n "),"\n "),"\n ",pt.Unless(function(){return ht.call(t.lookup("locked"))},function(){return["\n ",kt.LI("\n ",kt.A({id:"deleteProtocol"},"\n Delete ",kt.I({class:"fa fa-trash-o"}),"\n "),"\n "),"\n "]}),"\n "),"\n "),"\n "),"\n ",kt.DIV({id:"editProtocol",class:"protocolEditorSection"},"\n ",kt.DIV({class:"row"},"\n ",kt.DIV({class:"col-xs-12"},"\n ",kt.P("Created: ",pt.View("lookup:formatJSDate",function(){return ht.mustache(t.lookup("formatJSDate"),t.lookup("createdDate"));
}),pt.If(function(){return ht.call(t.lookup("createdBy"))},function(){return[" by ",pt.View("lookup:getUsername",function(){return ht.mustache(t.lookup("getUsername"),t.lookup("createdBy"))})]})),"\n ",kt.P("Last modified: ",pt.View("lookup:formatJSDate",function(){return ht.mustache(t.lookup("formatJSDate"),t.lookup("modifiedDate"))}),pt.If(function(){return ht.call(t.lookup("createdBy"))},function(){return[" by ",pt.View("lookup:getUsername",function(){return ht.mustache(t.lookup("getUsername"),t.lookup("modifiedBy"))})]})),"\n ",kt.P("Number of Priors Referenced: ",pt.View("lookup:numberOfPriorsReferenced",function(){return ht.mustache(t.lookup("numberOfPriorsReferenced"))})),"\n "),"\n "),"\n ",kt.DIV({class:"row"},"\n ",kt.H3("Protocol Applicability"),"\n ",kt.HR(),"\n ",pt._TemplateWith(function(){return{level:ht.call("protocol"),rules:ht.call(t.lookup("protocolMatchingRules")),attributes:ht.call(t.lookup("studyAttributes"))}},function(){return ht.include(t.lookupTemplate("ruleTable"))}),"\n "),"\n ",kt.DIV({class:"row"},"\n ",kt.H3("Stages"),"\n ",kt.HR(),"\n ",pt._TemplateWith(function(){return{stages:ht.call(t.lookup("stages"))}},function(){return ht.include(t.lookupTemplate("stageSortable"))}),"\n "),"\n "),"\n "]}),"\n "),"\n\n ",kt.DIV({id:"activeViewportEditor",class:"tab-pane"},"\n ",pt.If(function(){return ht.call(t.lookup("activeViewportUndefined"))},function(){return["\n ",kt.DIV({class:"noActiveViewport"},"\n ",kt.H2("Select a Viewport"),"\n ",kt.HR(),"\n ",kt.P("\n Upon selecting a Viewport, this section will show a list of rules that can be used\n to determine which images will populate the specified Viewport. You can specify these\n rules to be evaluated at the study, series, or image level.\n "),"\n "),"\n "]}),"\n ",ht.With(function(){return ht.call(t.lookup("activeStage"))},function(){return["\n ",ht.include(t.lookupTemplate("stageDetails")),"\n "]}),"\n "),"\n "),"\n\n ",ht.With(function(){return ht.call(t.lookup("activeProtocol"))},function(){return["\n ",kt.DIV({id:"protocolOptions",class:"protocolEditorSection"},"\n ",pt.If(function(){return ht.call(t.lookup("locked"))},function(){return["\n ",kt.BUTTON({id:"saveProtocol",type:"button",class:"btn btn-sm",disabled:""},"\n Locked ",kt.I({class:"fa fa-lock","aria-hidden":"true"}),"\n "),"\n "]},function(){return["\n ",kt.BUTTON({id:"saveProtocol",type:"button",class:"btn btn-sm"},"\n Save Changes ",kt.I({class:"fa fa-floppy-o","aria-hidden":"true"}),"\n "),"\n "]}),"\n\n ",pt.If(function(){return ht.call(t.lookup("modifiedDate"))},function(){return["\n ",kt.P({class:"lastSavedText"},"Last saved ",pt.View("lookup:jsDateFromNow",function(){return ht.mustache(t.lookup("jsDateFromNow"),t.lookup("modifiedDate"))})),"\n "]}),"\n "),"\n ",kt.IFRAME({id:"download_iframe",style:"display:none;"}),"\n "]}),"\n ")})},"protocolEditor.js":function(){function e(){if(Et){var t=St.find().map(function(t){return t.text=t.name,t}),e=o("#protocolSelect");e.select2().empty(),e.select2({data:t}),e.select2().val(Et.protocol.id).trigger("change")}}a.protocolEditor.onRendered(function(){var n=a.instance();n.timeAgoInterval=t.setInterval(function(){ut.set("timeAgoVariable",new Date)},6e4),n.subscribe("hangingprotocols",function(){e()})}),a.protocolEditor.onDestroyed(function(){var e=a.instance();t.clearInterval(e.timeAgoInterval)}),a.protocolEditor.helpers({activeProtocol:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et&&Et.protocol&&Et.LayoutManager&&void 0!==Et.stage){e();var t=St.findOne({id:Et.protocol.id});return t&&(Et.protocol._id=t._id),Et.protocol.updateNumberOfPriorsReferenced(),Et.protocol}}return t}(),activeStage:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et&&Et.protocol&&Et.LayoutManager&&void 0!==Et.stage){var t=Et.getCurrentStageModel();if(t){t.viewportStructure.layoutTemplateName=Et.LayoutManager.layoutTemplateName,t.viewportStructure.properties=Et.LayoutManager.layoutProps;var e=t.viewportStructure.getNumViewports()-t.viewports.length;if(e<0){var n=Math.abs(e),o=t.viewports.length-n;t.viewports.splice(o,n)}else if(e>0)for(var r=0;r<e;r++){var i=new Pt.Viewport;t.viewports.push(i)}return Et.getCurrentStageModel()}}}return t}(),activeViewportUndefined:function(){function t(){var t=ut.get("activeViewport");return void 0===t}return t}()}),a.protocolEditor.events({"click #newProtocol":function(){function t(){var t=Pt.defaultProtocol.createClone();t.name="New (created "+moment().format("h:mm:ss a")+")",t.id=i.id(),St.insert(t),Et.setHangingProtocol(t),e()}return t}(),"click #renameProtocol":function(){function t(){var t=this;if(!t.locked){var e="Rename Protocol",n="Enter a new name",o=t.name;Rt(e,n,o,function(e){St.update(t._id,{$set:{name:e}}),t.name=e})}}return t}(),"change .btn-file :file":function(){function t(t){var e=o(t.currentTarget),n=e.get(0).files?e.get(0).files.length:1,r=e.val().replace(/\\/g,"/").replace(/.*\//,"");e.trigger("fileselect",[n,r])}return t}(),"fileselect .btn-file :file":function(){function t(t){var e=t.target.files,n=new FileReader;n.onload=function(){var t=n.result;o.post("/protocol-import",{protocol:t},function(t,e,n){200!==n.status&&alert("Protocol import failed.")})},n.readAsText(e[0],"utf-8")}return t}(),"select2:select #protocolSelect":function(){function t(t){var e=t.params.data.id,n=St.findOne({id:e});n&&Et.setHangingProtocol(n)}return t}(),"click .navigationButtons a":function(){function t(){o(this).addClass("active").siblings().removeClass("active")}return t}(),"click #saveProtocol":function(){function t(){var t=this;if(!t.locked){var e=t._id;delete t._id,t.protocolWasModified(),St.update(e,{$set:t})}}return t}(),"click #saveAsProtocol":function(){function t(){var t=this,e="Save Protocol As",n="Enter a new name",o=t.name;Rt(e,n,o,function(e){delete t._id,t.id=i.id(),t.name=e,t.protocolWasModified(),St.insert(t)})}return t}(),"click #exportJSON":function(){function t(){var t=this;document.getElementById("download_iframe").src="/protocol-export/"+t.id}return t}(),"click #deleteProtocol":function(){function n(){var n=this;if(!n.locked){var o={title:"Delete Protocol",text:"Are you sure you would like to remove this Protocol? This cannot be reversed."};M(function(){t.call("removeHangingProtocol",n._id),Et.reset(),e()},o)}}return n}()})}},ruleTable:{"template.ruleTable.js":function(){a.__checkName("ruleTable"),a.ruleTable=new a("Template.ruleTable",function(){var t=this;return[kt.TABLE({class:"ruleTable table"},"\n ",kt.THEAD("\n ",kt.TR("\n ",kt.TH("Constraint"),"\n ",kt.TH("Wt."),"\n ",kt.TH("Req."),"\n "),"\n "),"\n ",kt.TBODY("\n ",pt.Each(function(){return ht.call(t.lookup("rules"))},function(){return["\n ",pt.If(function(){return ht.call(t.lookup("constraint"))},function(){return["\n ",kt.TR("\n ",kt.TD("\n ",kt.I({class:"fa fa-pencil editRule"}),"\n ",kt.I({class:"fa fa-trash deleteRule"}),"\n ",pt.View("lookup:displayConstraint",function(){return ht.mustache(t.lookup("displayConstraint"),t.lookup("attribute"),t.lookup("constraint"))}),"\n ",pt.Unless(function(){return ht.call(t.lookup("rulePassed"))},function(){return kt.SMALL({class:"failWarning"},"Fail")}),"\n "),"\n ",kt.TD(kt.INPUT({class:"ruleWeight",type:"number",value:function(){return ht.mustache(t.lookup("weight"))},min:"1",step:"1",max:"1000"})),"\n ",kt.TD(kt.INPUT(kt.Attrs({class:"ruleRequired",type:"checkbox"},function(){return ht.attrMustache(t.lookup("valueIf"),t.lookup("required"),"checked","")}))),"\n "),"\n "]}),"\n "]}),"\n "),"\n "),kt.Raw('\n <div class="addRuleContainer">\n <span class="addRule">\n Add New Constraint <i class="fa fa-plus-circle"></i>\n </span>\n </div>')]})},"ruleTable.js":function(){a.ruleTable.helpers({rulePassed:function(){function t(){var t=ut.get("activeViewport"),e=Et.matchDetails[t];if(e&&e.bestMatch){var n=e.bestMatch.matchDetails.failed,o=this,r=!0;return n.forEach(function(t){var e=t.rule;if(e.id===o.id)return r=!1,!1}),r}}return t}()}),a.ruleTable.events({"click .addRule":function(){function t(){var t=a.currentData(),e=t.attributes,n=t.level;Tt(e,n)}return t}(),"click .editRule":function(){function t(){var t=a.currentData(),e=t.attributes,n=t.level,o=this;Tt(e,n,o)}return t}(),"click .deleteRule":function(){function t(){var t=this;if(t instanceof Pt.ProtocolMatchingRule)Et.protocol.removeProtocolMatchingRule(t);else{var e=xt();e.removeRule(t)}var n=ut.get("activeViewport");Et.updateViewports(n)}return t}(),"change .ruleWeight":function(){function t(t){var e=this;e.weight=o(t.currentTarget).val();var n=ut.get("activeViewport");Et.updateViewports(n)}return t}(),"change .ruleRequired":function(){function t(t){var e=this;e.required=o(t.currentTarget).prop("checked");var n=ut.get("activeViewport");Et.updateViewports(n)}return t}()})}},ruleEntryDialog:{"template.ruleEntryDialog.js":function(){a.__checkName("ruleEntryDialog"),a.ruleEntryDialog=new a("Template.ruleEntryDialog",function(){var t=this;return kt.DIV({class:"ruleEntryDialog dialog-animated"},kt.Raw('\n <div class="dialogHeader">\n <h5>Rule Editor</h5>\n </div>\n '),kt.DIV({class:"dialogContent"},"\n ",kt.Raw('<div class="row">\n <div class="col-xs-12">\n <select class="attributes" style="width: 95%;">\n </select>\n </div>\n </div>'),"\n ",kt.DIV({class:"row"},"\n ",kt.DIV({class:"col-xs-12"},"\n ",kt.SELECT({class:"comparators",style:"width: 95%;"},"\n ",pt.Each(function(){return ht.call(t.lookup("comparators"))},function(){return["\n ",kt.OPTION({value:function(){return ht.mustache(t.lookup("id"))}},pt.View("lookup:name",function(){return ht.mustache(t.lookup("name"))})),"\n "]}),"\n "),"\n "),"\n "),"\n ",kt.DIV({class:"row"},"\n ",kt.DIV({class:"col-xs-12"},"\n ",pt.If(function(){return ht.dataMustache(t.lookup("ifTypeIs"),t.lookup("currentValue"),"string")},function(){return["\n ",kt.INPUT({class:"currentValue",type:"text",value:function(){return ht.mustache(t.lookup("currentValue"))}}),"\n "]}),"\n\n ",pt.If(function(){return ht.dataMustache(t.lookup("ifTypeIs"),t.lookup("currentValue"),"undefined")},function(){return["\n ",kt.INPUT({class:"currentValue",type:"text",value:function(){return ht.mustache(t.lookup("currentValue"))}}),"\n "]}),"\n\n ",pt.If(function(){return ht.dataMustache(t.lookup("ifTypeIs"),t.lookup("currentValue"),"number")},function(){return["\n ",kt.INPUT({class:"currentValue",type:"number",value:function(){return ht.mustache(t.lookup("currentValue"))}}),"\n "]}),"\n\n ",pt.If(function(){return ht.dataMustache(t.lookup("ifTypeIs"),t.lookup("currentValue"),"boolean")},function(){return["\n ",kt.INPUT(kt.Attrs({class:"currentValue",type:"checkbox"},function(){return ht.attrMustache(t.lookup("valueIf"),t.lookup("currentValue"),"selected","")})),"\n "]}),"\n "),"\n "),"\n "),kt.Raw('\n <div class="dialogFooter">\n <button id="cancel" class="btn btn-link" tabindex="1">Cancel</button>\n <button id="save" class="btn btn-primary" tabindex="0">OK</button>\n </div>\n '))})},"ruleEntryDialog.js":["meteor/ohif:core",function(t,e,n){function r(t){o(t).css("display","none"),o(".removableBackdrop").remove(),P()}function i(){var t=ut.get("activeViewport");if(void 0!==t){var e=o(".imageViewerViewport"),n=e.get(t);if(n){try{var r=cornerstone.getEnabledElement(n);if(!r)return}catch(t){return void u.log.warn(t)}return r.image.imageId}}}function s(t){var e=_.findOne({},{sort:{studyDate:-1},limit:1});if(e){var n=cornerstoneTools.metaData.get("study",t);if(n){var o=StudyListStudies.find({patientId:e.patientId,studyDate:{$lt:e.studyDate}},{sort:{studyDate:-1}}),r=0;return o.forEach(function(t,e){if(t.studyInstanceUid===n.studyInstanceUid)return r=e+1,!1}),r}}}function c(t,e){var n=i();if(n){if("protocol"===e&&(e="study"),"abstractPriorValue"===t)return s(n);var o=cornerstoneTools.metaData.get(e,n);return void 0===o[t]?Pt.attributeDefaults[t]:o[t]}}var u;n.import("meteor/ohif:core",{OHIF:function(t){u=t}});var l={ESC:27};Tt=function t(e,n,i){var s=o(".ruleEntryDialog"),c=s.find("input.currentValue");c.val(""),a.ruleEntryDialog.dialog=s,a.ruleEntryDialog.level=n,a.ruleEntryDialog.rule=i;var u=s.find(".attributes");if(u.html("").select2({data:e,placeholder:"Select an attribute",allowClear:!0}),i&&i.attribute&&u.val(i.attribute),u.trigger("change"),i&&i.constraint){var l=Object.keys(i.constraint)[0],d=Object.keys(i.constraint[l])[0],p=Vt.findOne({validator:l,validatorOption:d}),g=i.constraint[l][d];c.val(g)}p&&s.find(".comparators").val(p.id).trigger("change"),s.css("display","block"),gt.render(a.removableBackdrop,document.body),o(".removableBackdrop").one("mousedown touchstart",function(){r(s)})},a.ruleEntryDialog.onCreated(function(){var t=this;t.currentValue=new ReactiveVar(""),t.attribute=new ReactiveVar,t.comparatorId=new ReactiveVar}),a.ruleEntryDialog.onRendered(function(){var t=a.instance();t.$(".comparators").select2();var e=t.$(".comparators").val();t.comparatorId.set(e);var n=t.$(".ruleEntryDialog");n.draggable()}),a.ruleEntryDialog.helpers({comparators:function(){function t(){return Vt.find()}return t}(),currentValue:function(){function t(){return a.instance().currentValue.get()}return t}()}),a.ruleEntryDialog.events({"click #save":function(){function t(t,e){var n=a.ruleEntryDialog.dialog,o=a.ruleEntryDialog.level,i=e.attribute.get(),s=e.comparatorId.get(),c=e.currentValue.get();if(void 0!==c){var u;if(a.ruleEntryDialog.rule)u=a.ruleEntryDialog.rule;else{var l=xt();switch(o){case"protocol":u=new Pt.ProtocolMatchingRule,Et.protocol.addProtocolMatchingRule(u);break;case"study":u=new Pt.StudyMatchingRule,l.studyMatchingRules.push(u);break;case"series":u=new Pt.SeriesMatchingRule,l.seriesMatchingRules.push(u);break;case"instance":u=new Pt.ImageMatchingRule,l.imageMatchingRules.push(u)}}var d=Vt.findOne({id:s}),p={};p[d.validator]={},p[d.validator][d.validatorOption]=c,u.attribute=i,u.constraint=p;var g=ut.get("activeViewport");Et.updateViewports(g),r(n)}}return t}(),"click #cancel":function(){function t(){var t=a.ruleEntryDialog.dialog;r(t)}return t}(),"keydown .ruleEntryDialog":function(){function t(t){var e=a.ruleEntryDialog.dialog;if(t.which===l.ESC)return r(e),!1}return t}(),"change select.attributes":function(){function t(t,e){var n=o(t.currentTarget).val();e.attribute.set(n),a.ruleEntryDialog.selectedAttribute=n;var r=a.ruleEntryDialog.level,i=c(n,r);e.currentValue.set(i)}return t}(),"change input.currentValue":function(){function t(t,e){var n=o(t.currentTarget),r=n.val();"number"===n.attr("type")&&(r=parseFloat(r)),e.currentValue.set(r)}return t}(),"change select.comparators":function(){function t(t,e){var n=o(t.currentTarget).val();e.comparatorId.set(n)}return t}()})}]},settingEntryDialog:{"template.settingEntryDialog.js":function(){a.__checkName("settingEntryDialog"),a.settingEntryDialog=new a("Template.settingEntryDialog",function(){var t=this;return kt.Raw('<div class="settingEntryDialog dialog-animated">\n <div class="dialogHeader">\n <h5>Viewport Setting Editor</h5>\n </div>\n <div class="dialogContent">\n <div class="row">\n <div class="col-xs-12">\n <select class="settings" style="width: 95%;">\n </select>\n </div>\n </div>\n <div class="row">\n <div class="col-xs-12">\n <select class="currentValue" style="width: 95%;">\n </select>\n </div>\n </div>\n </div>\n <div class="dialogFooter">\n <button id="cancel" class="btn btn-link" tabindex="1">Cancel</button>\n <button id="save" class="btn btn-primary" tabindex="0">OK</button>\n </div>\n </div>')})},"settingEntryDialog.js":function(){function t(t){o(t).css("display","none"),o(".removableBackdrop").remove(),P()}var e={ESC:27};Mt=function e(n){var r=o(".settingEntryDialog");a.settingEntryDialog.dialog=r,a.settingEntryDialog.settingObject=n;var i=Object.keys(Pt.displaySettings);i.concat(Object.keys(Pt.CustomViewportSettings));var s=Object.keys(Pt.displaySettings).map(function(t){return{id:t,text:Pt.displaySettings[t].text}}),c=Object.keys(Pt.CustomViewportSettings).map(function(t){return{id:t,text:Pt.CustomViewportSettings[t].text}}),u=s.concat(c),l=r.find(".settings");l.html("").select2({data:u,placeholder:"Select a setting",allowClear:!0});var d={options:[]};n&&Pt.displaySettings[n.id]?d=Pt.displaySettings[n.id]:n&&Pt.CustomViewportSettings[n.id]&&(d=Pt.CustomViewportSettings[n.id]);var p=r.find(".currentValue");p.html("").select2({data:d.options,placeholder:"Select a value",allowClear:!0}),n&&n.id&&l.val(n.id),l.trigger("change"),n&&void 0!==n.value&&p.val(n.value).trigger("change"),r.css("display","block"),pt.render(a.removableBackdrop,document.body),o(".removableBackdrop").one("mousedown touchstart",function(){t(r)})},a.settingEntryDialog.onCreated(function(){var t=this;t.currentValue=new ReactiveVar(""),t.setting=new ReactiveVar}),a.settingEntryDialog.onRendered(function(){var t=this,e=t.$(".settingEntryDialog");e.draggable()}),a.settingEntryDialog.events({"click #save":function(){function e(e,n){var o=a.settingEntryDialog.dialog,r=n.setting.get(),i=n.currentValue.get();if(void 0!==i){var s={id:r,value:i},c=xt(),u=a.settingEntryDialog.settingObject;u&&u.id&&delete c.viewportSettings[u.id],c.viewportSettings[s.id]=s.value;var l=ut.get("activeViewport");Et.updateViewports(l),t(o)}}return e}(),"click #cancel":function(){function e(){var e=a.settingEntryDialog.dialog;t(e)}return e}(),"keydown .settingEntryDialog":function(){function n(n){var o=a.settingEntryDialog.dialog;if(n.which===e.ESC)return t(o),!1}return n}(),"change select.settings":function(){function t(t,e){var n=o(t.currentTarget).val();e.setting.set(n);var r={options:[]};n&&Pt.displaySettings[n]?r=Pt.displaySettings[n]:n&&Pt.CustomViewportSettings[n]&&(r=Pt.CustomViewportSettings[n]);var i=a.settingEntryDialog.dialog,s=i.find(".currentValue");s.html("").select2({data:r.options,placeholder:"Select a value",allowClear:!0}),r&&r.defaultValue&&(e.currentValue.set(r.defaultValue),s.val(r.defaultValue).trigger("change"))}return t}(),"change select.currentValue":function(){function t(t,e){var n=o(t.currentTarget).val();e.currentValue.set(n)}return t}()})}},textEntryDialog:{"template.textEntryDialog.js":function(){a.__checkName("textEntryDialog"),a.textEntryDialog=new a("Template.textEntryDialog",function(){var t=this;return kt.DIV({class:"textEntryDialog dialog-animated"},"\n ",kt.DIV({class:"dialogHeader"},"\n ",kt.H4({class:"title"},pt.View("lookup:title",function(){return ht.mustache(t.lookup("title"))})),"\n "),"\n ",kt.DIV({class:"dialogContent"},"\n ",kt.DIV({class:"row"},"\n ",kt.DIV({class:"col-xs-12"},"\n ",kt.H5({class:"instructions"},pt.View("lookup:instructions",function(){return ht.mustache(t.lookup("instructions"))})),"\n "),"\n "),"\n ",kt.DIV({class:"row"},"\n ",kt.DIV({class:"col-xs-12"},"\n ",kt.INPUT({class:"currentValue",type:"text",value:function(){return ht.mustache(t.lookup("currentValue"))}}),"\n "),"\n "),"\n "),kt.Raw('\n <div class="dialogFooter">\n <button class="cancel btn btn-link" tabindex="1">Cancel</button>\n <button class="save btn btn-primary" tabindex="0">OK</button>\n </div>\n '))})},"textEntryDialog.js":function(){function t(t){o(t).css("display","none"),o(".removableBackdrop").remove(),P()}var e={ESC:27,ENTER:13};Rt=function e(n,r,i,s){var c=o(".textEntryDialog"),u=c.find("input.currentValue");u.val(i),a.textEntryDialog.dialog=c,a.textEntryDialog.title=n,a.textEntryDialog.instructions=r,a.textEntryDialog.doneCallback=s,c.find(".title").html(n),c.find(".instructions").html(r),c.css("display","block"),gt.render(a.removableBackdrop,document.body),o(".removableBackdrop").one("mousedown touchstart",function(){t(c)})},a.textEntryDialog.onRendered(function(){var t=a.instance(),e=t.$(".settingEntryDialog");e.draggable()}),a.textEntryDialog.events({"click .save":function(){function e(){var e=a.textEntryDialog.dialog,n=e.find("input.currentValue").val();if(void 0!==n){var o=a.textEntryDialog.doneCallback;o&&o(n),t(a.textEntryDialog.dialog)}}return e}(),"click .cancel":function(){function e(){t(a.textEntryDialog.dialog)}return e}(),"keydown .textEntryDialog":function(){function n(n){var o=a.textEntryDialog.dialog;if(n.which===e.ESC)return t(o),!1;if(n.which===e.ENTER){var r=o.find("input.currentValue").val();if(void 0===r)return;var i=a.textEntryDialog.doneCallback;return i&&i(r),t(o),!1}}return n}(),"change input.currentValue":function(){function t(t,e){var n=o(t.currentTarget);a.textEntryDialog.currentValue=n.val()}return t}()})}},settingsTable:{"template.settingsTable.js":function(){a.__checkName("settingsTable"),a.settingsTable=new a("Template.settingsTable",function(){var t=this;return[kt.TABLE({class:"settingsTable table"},"\n ",kt.THEAD("\n ",kt.TR("\n ",kt.TH("Setting"),"\n ",kt.TH("Value"),"\n "),"\n "),"\n ",kt.TBODY("\n ",pt.Each(function(){return ht.dataMustache(t.lookup("objectToPairs"),t.lookup("settings"))},function(){return["\n ",pt.If(function(){return ht.call(t.lookup("value"))},function(){return["\n ",kt.TR("\n ",kt.TD("\n ",kt.I({class:"fa fa-pencil editSetting"}),"\n ",kt.I({class:"fa fa-trash deleteSetting"}),"\n ",pt.View("lookup:getSettingText",function(){return ht.mustache(t.lookup("getSettingText"))}),"\n "),"\n ",kt.TD("\n ",pt.View("lookup:prettyPrintStringify",function(){return ht.mustache(t.lookup("prettyPrintStringify"),t.lookup("value"))}),"\n "),"\n "),"\n "]}),"\n "]}),"\n "),"\n "),kt.Raw('\n <div class="addSettingContainer">\n <span class="addSetting">\n Add Display Setting <i class="fa fa-plus-circle"></i>\n </span>\n </div>')]})},"settingsTable.js":function(){a.settingsTable.events({"click .addSetting":function(){function t(){Mt()}return t}(),"click .editSetting":function(){function t(){var t=this;Mt(t)}return t}(),"click .deleteSetting":function(){function t(){var t=this,e=xt();delete e.viewportSettings[t.key];var n=ut.get("activeViewport");Et.updateViewports(n)}return t}()}),a.settingsTable.helpers({getSettingText:function(){function t(){var t=this;return Pt.CustomViewportSettings[t.key]?Pt.CustomViewportSettings[t.key].text:Pt.displaySettings[t.key]?Pt.displaySettings[t.key].text:pt._globalHelpers.prettyPrintStringify(t.key)}return t}()})}},stageDetails:{"template.stageDetails.js":function(){a.__checkName("stageDetails"),a.stageDetails=new a("Template.stageDetails",function(){var t=this;return kt.DIV({id:"stageDetails",class:"protocolEditorSection"},"\n ",kt.DIV({class:"row"},"\n ",kt.DIV({class:"col-xs-12"},"\n ",ht.With(function(){return ht.call(t.lookup("activeViewport"))},function(){return["\n ",kt.DIV({class:"stageEditorSection"},"\n ",kt.H3("Viewport Settings"),"\n ",kt.HR(),"\n ",pt._TemplateWith(function(){return{settings:ht.call(t.lookup("viewportSettings"))}},function(){return ht.include(t.lookupTemplate("settingsTable"))}),"\n "),"\n\n ",kt.DIV({class:"stageEditorSection"},"\n ",kt.H3("Study Matching Rules"),"\n ",kt.HR(),"\n ",pt._TemplateWith(function(){return{level:ht.call("study"),rules:ht.call(t.lookup("studyMatchingRules")),attributes:ht.call(t.lookup("studyAttributes"))}},function(){return ht.include(t.lookupTemplate("ruleTable"))}),"\n "),"\n\n ",kt.DIV({class:"stageEditorSection"},"\n ",kt.H3("Series Matching Rules"),"\n ",kt.HR(),"\n ",pt._TemplateWith(function(){return{level:ht.call("series"),rules:ht.call(t.lookup("seriesMatchingRules")),attributes:ht.call(t.lookup("seriesAttributes"))}},function(){return ht.include(t.lookupTemplate("ruleTable"))}),"\n "),"\n\n ",kt.DIV({class:"stageEditorSection"},"\n ",kt.H3("Image Matching Rules"),"\n ",kt.HR(),"\n ",pt._TemplateWith(function(){return{level:ht.call("instance"),rules:ht.call(t.lookup("imageMatchingRules")),attributes:ht.call(t.lookup("instanceAttributes"))}},function(){return ht.include(t.lookupTemplate("ruleTable"))}),"\n "),"\n "]}),"\n "),"\n "),"\n ")})},"stageDetails.js":function(){xt=function t(){if(Et&&Et.protocol&&void 0!==Et.stage){var e=Et.getCurrentStageModel(),n=ut.get("activeViewport");if(!(n>=e.viewports.length))return e.viewports[n]}},a.stageDetails.helpers({activeViewport:function(){function t(){return ut.get("LayoutManagerUpdated"),xt()}return t}()})}},stageSortable:{"template.stageSortable.js":function(){a.__checkName("stageSortable"),a.stageSortable=new a("Template.stageSortable",function(){var t=this;return kt.DIV({id:"stageSortingContainer"},"\n ",kt.DIV({class:"moveStageButtons"},"\n ",kt.A({class:"moveStageUp noselect",disabled:function(){return pt.Unless(function(){return ht.call(t.lookup("isPreviousAvailable"))},function(){return"true"})}},"\n Move Stage Up ",kt.Raw('<i class="fa fa-chevron-up"></i>'),"\n "),"\n ",kt.A({class:"moveStageDown noselect",disabled:function(){return pt.Unless(function(){return ht.call(t.lookup("isNextAvailable"))},function(){return"true"})}},"\n Move Stage Down ",kt.Raw('<i class="fa fa-chevron-down"></i>'),"\n "),"\n "),"\n ",kt.DIV({id:"stageSortable",class:"sortable"},"\n ",pt.Each(function(){return ht.call(t.lookup("stages"))},function(){return["\n ",kt.DIV({class:"sortable-item","data-id":function(){return ht.mustache(t.lookup("id"))}},"\n ",kt.SPAN("\n ",kt.DIV({class:"sortable-handle pull-left"}),"\n ",kt.I({class:"deleteStage fa fa-trash fa-lg pull-right"}),"\n ",kt.SPAN({class:function(){return pt.If(function(){return ht.call(t.lookup("isActiveStage"))},function(){return"active"})}},"\n ",pt.View("lookup:stageLabel",function(){return ht.mustache(t.lookup("stageLabel"))}),"\n "),"\n "),"\n "),"\n "]}),"\n "),kt.Raw('\n <div class="addStage">\n <span id="addStage">\n Create New Stage <i class="fa fa-plus-circle"></i>\n </span>\n </div>\n '))})},"stageSortable.js":function(){function t(t,e){var n;if(t&&t.stages)return t.stages.forEach(function(t,o){if(t.id===e)return n=o,!1}),n}Array.prototype.move=function(t,e){var n=this[t];return e=Math.max(0,e),e=Math.min(this.length,e),this.splice(t,1),this.splice(e,0,n),this},a.stageSortable.helpers({isActiveStage:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et){var t=Et.getCurrentStageModel();return!!t&&this.id===t.id}}return t}(),stageLabel:function(){function e(){var e=this;if(Et){var n=St.findOne(Et.protocol._id),o=t(n,e.id);if(void 0===o){ut.get("timeAgoVariable");var r=Et.newStageIds.indexOf(e.id)+1,i=moment(e.createdDate).fromNow();return"New Stage "+r+" (created "+i+")"}return"Stage "+ ++o}}return e}(),isNextAvailable:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et)return Et.stage<Et.getNumProtocolStages()-1}return t}(),isPreviousAvailable:function(){function t(){if(ut.get("LayoutManagerUpdated"),Et)return Et.stage>0}return t}()}),a.stageSortable.events({"click .sortable-item span":function(){function e(){var e=t(Et.protocol,this.id);Et.setCurrentProtocolStage(e)}return e}(),"click #addStage":function(){function t(){var t=Et.getCurrentStageModel(),e=t.createClone();delete e.name,Et.protocol.stages.push(e),Et.newStageIds.push(e.id);var n=Et.protocol.stages.length-1;Et.setCurrentProtocolStage(n)}return t}(),"click .deleteStage":function(){function e(){if(1!==Et.protocol.stages.length){var e=this.id,n={title:"Remove Protocol Stage",text:"Are you sure you would like to remove this Protocol Stage? This cannot be reversed."};M(function(){var n=t(Et.protocol,e);if(Et.protocol.stages.splice(n,1),Et.stage===n){var o=Math.max(n-1,0);Et.setCurrentProtocolStage(o)}ut.set("LayoutManagerUpdated",i.id())},n)}}return e}(),"click .moveStageUp":function(){function t(){var t=Et.stage,e=Math.max(Et.stage-1,0);t!==e&&(Et.protocol.stages=Et.protocol.stages.move(t,e),Et.stage=e,ut.set("LayoutManagerUpdated",i.id()))}return t}(),"click .moveStageDown":function(){function t(){var t=Et.stage,e=Math.min(Et.stage+1,Et.protocol.stages.length-1);t!==e&&(Et.protocol.stages=Et.protocol.stages.move(t,e),Et.stage=e,ut.set("LayoutManagerUpdated",i.id()))}return t}()})}}}}}}}},{extensions:[".js",".json",".html",".styl"]});Ct("./node_modules/meteor/ohif:hanging-protocols/both/namespace.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/both/collections.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/both/schema.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/both/routes.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/both/hardcodedData.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/both/testData.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/collections.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/protocolEngine.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/helpers/displayConstraint.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/helpers/attributes.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/previousPresentationGroupButton/template.previousPresentationGroupButton.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/previousPresentationGroupButton/previousPresentationGroupButton.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/nextPresentationGroupButton/template.nextPresentationGroupButton.js"),
Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/nextPresentationGroupButton/nextPresentationGroupButton.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/matchedProtocols/template.matchedProtocols.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/matchedProtocols/matchedProtocols.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/protocolEditor/template.protocolEditor.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/protocolEditor/protocolEditor.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/ruleTable/template.ruleTable.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/ruleTable/ruleTable.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/ruleEntryDialog/template.ruleEntryDialog.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/ruleEntryDialog/ruleEntryDialog.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/settingEntryDialog/template.settingEntryDialog.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/settingEntryDialog/settingEntryDialog.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/textEntryDialog/template.textEntryDialog.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/textEntryDialog/textEntryDialog.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/settingsTable/template.settingsTable.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/settingsTable/settingsTable.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/stageDetails/template.stageDetails.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/stageDetails/stageDetails.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/stageSortable/template.stageSortable.js"),Ct("./node_modules/meteor/ohif:hanging-protocols/client/components/stageSortable/stageSortable.js"),"undefined"==typeof Package&&(Package={}),function(t,e){for(var n in e)n in t||(t[n]=e[n])}(Package["ohif:hanging-protocols"]={},{HP:Pt,HangingProtocols:St,MatchedProtocols:It})}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,r=Package["templating-runtime"].Template,a=Package.blaze.Blaze,o=Package.blaze.UI,s=Package.blaze.Handlebars,i=Package.jquery.$,l=Package.jquery.jQuery,d=Package.underscore._,c=Package.tracker.Tracker,p=Package.tracker.Deps,u=Package.modules.meteorInstall,m=Package.modules.Buffer,f=Package.modules.process,h=Package["ecmascript-runtime"].Symbol,y=Package["ecmascript-runtime"].Map,b=Package["ecmascript-runtime"].Set,k=Package["babel-runtime"].meteorBabelHelpers,v=Package.promise.Promise,g=Package.htmljs.HTML,_=Package.spacebars.Spacebars,j,P=u({node_modules:{meteor:{"aldeed:template-extension":{lib:{"hooks.js":function(){j={global:{created:[],rendered:[],destroyed:[]},master:{created:function(){function e(){j.runGlobal("created",this,arguments)}return e}(),rendered:function(){function e(){j.runGlobal("rendered",this,arguments)}return e}(),destroyed:function(){function e(){j.runGlobal("destroyed",this,arguments)}return e}()}},j.addGlobal=function(e){e._hasTemplateExtensionMasterHooks||(e.onCreated(j.master.created),e.onRendered(j.master.rendered),e.onDestroyed(j.master.destroyed),e._hasTemplateExtensionMasterHooks=!0)},j.runGlobal=function(e,t,n){for(var r=j.global[e],a=Array.isArray(r),o=0,r=a?r:r[h.iterator]();;){var s;if(a){if(o>=r.length)break;s=r[o++]}else{if(o=r.next(),o.done)break;s=o.value}var i=s;i.apply(t,n)}}},"template-for-each.js":function(){r.forEach=function(e){var t=!1;for(var n in k.sanitizeForInObject(r))if(r.hasOwnProperty(n)){var o=r[n];if(a.isTemplate(o)){var s=o.viewName;"body"===s?t||(t=!0,e(o)):"Template.__dynamic"!==s&&"Template.__dynamicWithDataContext"!==s&&e(o)}}}},"template-hooks.js":["babel-runtime/helpers/typeof",function(e,t,n){var a;n.import("babel-runtime/helpers/typeof",{default:function(e){a=e}}),r.prototype.hooks=function(e){if(!e||"object"!==("undefined"==typeof e?"undefined":a(e)))throw new Error("hooks argument must be an object with created, rendered, and/or destroyed properties, each set to a function");"function"==typeof e.created&&this.onCreated(e.created),"function"==typeof e.rendered&&this.onRendered(e.rendered),"function"==typeof e.destroyed&&this.onDestroyed(e.destroyed)}}],"template-global-hooks.js":function(){e.startup(function(){r.forEach(function(e){j.addGlobal(e)})}),r.onCreated=function(e){j.global.created.push(e)},r.onRendered=function(e){j.global.rendered.push(e)},r.onDestroyed=function(e){j.global.destroyed.push(e)}},"template-for-each-instance.js":function(){r._renderedInstances=[],r.onRendered(function(){r._renderedInstances.push(this)}),r.onDestroyed(function(){var e=r._renderedInstances.indexOf(this);e>-1&&r._renderedInstances.splice(e,1)}),r.forEachCurrentlyRenderedInstance=function(e){r._renderedInstances.forEach(e)}},"template-inherits-events-from.js":function(){r.prototype.inheritsEventsFrom=function(){function e(e){function t(e){"string"==typeof e&&(e=r[e]),e&&(n.__eventMaps=n.__eventMaps.concat(e.__eventMaps))}var n=this;n.__eventMaps=n.__eventMaps||[],d.isArray(e)?d.each(e,t):t(e)}return e}()},"template-inherits-helpers-from.js":function(){r.prototype.inheritsHelpersFrom=function(){function e(e){function t(e){if("string"==typeof e&&(e=r[e]),e){var t={};d.each(e.__helpers,function(e,n){" "===n.charAt(0)&&(t[n.slice(1)]=e)}),n.helpers(t)}}var n=this;d.isArray(e)?d.each(e,t):t(e)}return e}()},"template-inherits-hooks-from.js":function(){r.prototype.inheritsHooksFrom=function(){function e(e){function t(e){if("string"==typeof e&&(e=r[e]),e){j.addGlobal(e);for(var t=e._callbacks.created,a=Array.isArray(t),o=0,t=a?t:t[h.iterator]();;){var s;if(a){if(o>=t.length)break;s=t[o++]}else{if(o=t.next(),o.done)break;s=o.value}var i=s;i!==j.master.created&&n.onCreated(i)}for(var l=e._callbacks.rendered,d=Array.isArray(l),c=0,l=d?l:l[h.iterator]();;){var p;if(d){if(c>=l.length)break;p=l[c++]}else{if(c=l.next(),c.done)break;p=c.value}var u=p;u!==j.master.rendered&&n.onRendered(u)}for(var m=e._callbacks.destroyed,f=Array.isArray(m),y=0,m=f?m:m[h.iterator]();;){var b;if(f){if(y>=m.length)break;b=m[y++]}else{if(y=m.next(),y.done)break;b=y.value}var k=b;k!==j.master.destroyed&&n.onDestroyed(k)}}}var n=this;d.isArray(e)?d.each(e,t):t(e)}return e}()},"template-register-helpers.js":function(){r.registerHelpers=function(e){if(e)for(var t in k.sanitizeForInObject(e))e.hasOwnProperty(t)&&r.registerHelper(t,e[t])}},"template-replaces.js":function(){r.prototype.replaces=function(){function e(e){function t(e){"string"==typeof e&&(e=r[e]),e&&(e.renderFunction=n.renderFunction)}var n=this;d.isArray(e)?d.each(e,t):t(e)}return e}()},"template-clear-event-maps.js":function(){r.prototype.clearEventMaps=function(){function e(){this.__eventMaps=[]}return e}()},"template-copy-as.js":function(){r.prototype.copyAs=function(){function e(e){function t(e){var t=r[e]=new r("Template."+e,n.renderFunction);return t.inheritsHelpersFrom(n),t.inheritsEventsFrom(n),t.inheritsHooksFrom(n),t}var n=this;if(d.isArray(e)){for(var a=[],o=e,s=Array.isArray(o),i=0,o=s?o:o[h.iterator]();;){var l;if(s){if(i>=o.length)break;l=o[i++]}else{if(i=o.next(),i.done)break;l=i.value}var c=l;a.push(t(c))}return a}return t(e)}return e}()},"template-instance-parent.js":function(){function e(e,t){return t?e.originalParentView||e.parentView:e.parentView}a.TemplateInstance.prototype.parent=function(){function t(t,n){null==t&&(t=1);for(var r=0,a=this;r<t&&a;){for(var o=e(a.view,n);o&&(!o.template||"(contentBlock)"===o.name||"(elseBlock)"===o.name);)o=e(o,n);if(!o)return null;a="function"==typeof o.templateInstance?o.templateInstance():null,r++}return a}return t}()},"template-instance-get.js":function(){a.TemplateInstance.prototype.get=function(){function e(e){for(var t=this;t;){if(e in t)return t[e];t=t.parent(1,!0)}}return e}()},"template-parent-data-function.js":function(){var e=a._parentData;a._parentData=function(t,n){if("function"!=typeof t)return e(t,n);for(var r=a.getView("with"),o=function e(){return t(r.dataVar.get())};r&&!c.nonreactive(o);)r=a.getView(r,"with");return r?r.dataVar.get():null},r.parentData=a._parentData}}}}}},{extensions:[".js",".json"]});P("./node_modules/meteor/aldeed:template-extension/lib/hooks.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-for-each.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-hooks.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-global-hooks.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-for-each-instance.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-inherits-events-from.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-inherits-helpers-from.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-inherits-hooks-from.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-register-helpers.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-replaces.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-clear-event-maps.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-copy-as.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-instance-parent.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-instance-get.js"),P("./node_modules/meteor/aldeed:template-extension/lib/template-parent-data-function.js"),"undefined"==typeof Package&&(Package={}),Package["aldeed:template-extension"]={}}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,i=Package.meteor.meteorEnv,o=Package.jquery.$,n=Package.jquery.jQuery;(function(){if("undefined"==typeof n)throw new Error("Bootstrap's JavaScript requires jQuery");+function(t){"use strict";var e=t.fn.jquery.split(" ")[0].split(".");if(e[0]<2&&e[1]<9||1==e[0]&&9==e[1]&&e[2]<1||e[0]>2)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 3")}(n),+function(t){"use strict";function e(){var t=document.createElement("bootstrap"),e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var i in e)if(void 0!==t.style[i])return{end:e[i]};return!1}t.fn.emulateTransitionEnd=function(e){var i=!1,o=this;t(this).one("bsTransitionEnd",function(){i=!0});var n=function(){i||t(o).trigger(t.support.transition.end)};return setTimeout(n,e),this},t(function(){t.support.transition=e(),t.support.transition&&(t.event.special.bsTransitionEnd={bindType:t.support.transition.end,delegateType:t.support.transition.end,handle:function(e){if(t(e.target).is(this))return e.handleObj.handler.apply(this,arguments)}})})}(n),+function(t){"use strict";function e(e){return this.each(function(){var i=t(this),n=i.data("bs.alert");n||i.data("bs.alert",n=new o(this)),"string"==typeof e&&n[e].call(i)})}var i='[data-dismiss="alert"]',o=function(e){t(e).on("click",i,this.close)};o.VERSION="3.3.6",o.TRANSITION_DURATION=150,o.prototype.close=function(e){function i(){a.detach().trigger("closed.bs.alert").remove()}var n=t(this),s=n.attr("data-target");s||(s=n.attr("href"),s=s&&s.replace(/.*(?=#[^\s]*$)/,""));var a=t(s);e&&e.preventDefault(),a.length||(a=n.closest(".alert")),a.trigger(e=t.Event("close.bs.alert")),e.isDefaultPrevented()||(a.removeClass("in"),t.support.transition&&a.hasClass("fade")?a.one("bsTransitionEnd",i).emulateTransitionEnd(o.TRANSITION_DURATION):i())};var n=t.fn.alert;t.fn.alert=e,t.fn.alert.Constructor=o,t.fn.alert.noConflict=function(){return t.fn.alert=n,this},t(document).on("click.bs.alert.data-api",i,o.prototype.close)}(n),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.button"),s="object"==typeof e&&e;n||o.data("bs.button",n=new i(this,s)),"toggle"==e?n.toggle():e&&n.setState(e)})}var i=function(e,o){this.$element=t(e),this.options=t.extend({},i.DEFAULTS,o),this.isLoading=!1};i.VERSION="3.3.6",i.DEFAULTS={loadingText:"loading..."},i.prototype.setState=function(e){var i="disabled",o=this.$element,n=o.is("input")?"val":"html",s=o.data();e+="Text",null==s.resetText&&o.data("resetText",o[n]()),setTimeout(t.proxy(function(){o[n](null==s[e]?this.options[e]:s[e]),"loadingText"==e?(this.isLoading=!0,o.addClass(i).attr(i,i)):this.isLoading&&(this.isLoading=!1,o.removeClass(i).removeAttr(i))},this),0)},i.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle="buttons"]');if(e.length){var i=this.$element.find("input");"radio"==i.prop("type")?(i.prop("checked")&&(t=!1),e.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==i.prop("type")&&(i.prop("checked")!==this.$element.hasClass("active")&&(t=!1),this.$element.toggleClass("active")),i.prop("checked",this.$element.hasClass("active")),t&&i.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var o=t.fn.button;t.fn.button=e,t.fn.button.Constructor=i,t.fn.button.noConflict=function(){return t.fn.button=o,this},t(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(i){var o=t(i.target);o.hasClass("btn")||(o=o.closest(".btn")),e.call(o,"toggle"),t(i.target).is('input[type="radio"]')||t(i.target).is('input[type="checkbox"]')||i.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(e){t(e.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(e.type))})}(n),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.carousel"),s=t.extend({},i.DEFAULTS,o.data(),"object"==typeof e&&e),a="string"==typeof e?e:s.slide;n||o.data("bs.carousel",n=new i(this,s)),"number"==typeof e?n.to(e):a?n[a]():s.interval&&n.pause().cycle()})}var i=function(e,i){this.$element=t(e),this.$indicators=this.$element.find(".carousel-indicators"),this.options=i,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",t.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",t.proxy(this.pause,this)).on("mouseleave.bs.carousel",t.proxy(this.cycle,this))};i.VERSION="3.3.6",i.TRANSITION_DURATION=600,i.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},i.prototype.keydown=function(t){if(!/input|textarea/i.test(t.target.tagName)){switch(t.which){case 37:this.prev();break;case 39:this.next();break;default:return}t.preventDefault()}},i.prototype.cycle=function(e){return e||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(t.proxy(this.next,this),this.options.interval)),this},i.prototype.getItemIndex=function(t){return this.$items=t.parent().children(".item"),this.$items.index(t||this.$active)},i.prototype.getItemForDirection=function(t,e){var i=this.getItemIndex(e),o="prev"==t&&0===i||"next"==t&&i==this.$items.length-1;if(o&&!this.options.wrap)return e;var n="prev"==t?-1:1,s=(i+n)%this.$items.length;return this.$items.eq(s)},i.prototype.to=function(t){var e=this,i=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(t>this.$items.length-1||t<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){e.to(t)}):i==t?this.pause().cycle():this.slide(t>i?"next":"prev",this.$items.eq(t))},i.prototype.pause=function(e){return e||(this.paused=!0),this.$element.find(".next, .prev").length&&t.support.transition&&(this.$element.trigger(t.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},i.prototype.next=function(){if(!this.sliding)return this.slide("next")},i.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},i.prototype.slide=function(e,o){var n=this.$element.find(".item.active"),s=o||this.getItemForDirection(e,n),a=this.interval,r="next"==e?"left":"right",l=this;if(s.hasClass("active"))return this.sliding=!1;var h=s[0],d=t.Event("slide.bs.carousel",{relatedTarget:h,direction:r});if(this.$element.trigger(d),!d.isDefaultPrevented()){if(this.sliding=!0,a&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var p=t(this.$indicators.children()[this.getItemIndex(s)]);p&&p.addClass("active")}var c=t.Event("slid.bs.carousel",{relatedTarget:h,direction:r});return t.support.transition&&this.$element.hasClass("slide")?(s.addClass(e),s[0].offsetWidth,n.addClass(r),s.addClass(r),n.one("bsTransitionEnd",function(){s.removeClass([e,r].join(" ")).addClass("active"),n.removeClass(["active",r].join(" ")),l.sliding=!1,setTimeout(function(){l.$element.trigger(c)},0)}).emulateTransitionEnd(i.TRANSITION_DURATION)):(n.removeClass("active"),s.addClass("active"),this.sliding=!1,this.$element.trigger(c)),a&&this.cycle(),this}};var o=t.fn.carousel;t.fn.carousel=e,t.fn.carousel.Constructor=i,t.fn.carousel.noConflict=function(){return t.fn.carousel=o,this};var n=function(i){var o,n=t(this),s=t(n.attr("data-target")||(o=n.attr("href"))&&o.replace(/.*(?=#[^\s]+$)/,""));if(s.hasClass("carousel")){var a=t.extend({},s.data(),n.data()),r=n.attr("data-slide-to");r&&(a.interval=!1),e.call(s,a),r&&s.data("bs.carousel").to(r),i.preventDefault()}};t(document).on("click.bs.carousel.data-api","[data-slide]",n).on("click.bs.carousel.data-api","[data-slide-to]",n),t(window).on("load",function(){t('[data-ride="carousel"]').each(function(){var i=t(this);e.call(i,i.data())})})}(n),+function(t){"use strict";function e(e){var i,o=e.attr("data-target")||(i=e.attr("href"))&&i.replace(/.*(?=#[^\s]+$)/,"");return t(o)}function i(e){return this.each(function(){var i=t(this),n=i.data("bs.collapse"),s=t.extend({},o.DEFAULTS,i.data(),"object"==typeof e&&e);!n&&s.toggle&&/show|hide/.test(e)&&(s.toggle=!1),n||i.data("bs.collapse",n=new o(this,s)),"string"==typeof e&&n[e]()})}var o=function(e,i){this.$element=t(e),this.options=t.extend({},o.DEFAULTS,i),this.$trigger=t('[data-toggle="collapse"][href="#'+e.id+'"],[data-toggle="collapse"][data-target="#'+e.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};o.VERSION="3.3.6",o.TRANSITION_DURATION=350,o.DEFAULTS={toggle:!0},o.prototype.dimension=function(){var t=this.$element.hasClass("width");return t?"width":"height"},o.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var e,n=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(n&&n.length&&(e=n.data("bs.collapse"),e&&e.transitioning))){var s=t.Event("show.bs.collapse");if(this.$element.trigger(s),!s.isDefaultPrevented()){n&&n.length&&(i.call(n,"hide"),e||n.data("bs.collapse",null));var a=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[a](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var r=function(){this.$element.removeClass("collapsing").addClass("collapse in")[a](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!t.support.transition)return r.call(this);var l=t.camelCase(["scroll",a].join("-"));this.$element.one("bsTransitionEnd",t.proxy(r,this)).emulateTransitionEnd(o.TRANSITION_DURATION)[a](this.$element[0][l])}}}},o.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var e=t.Event("hide.bs.collapse");if(this.$element.trigger(e),!e.isDefaultPrevented()){var i=this.dimension();this.$element[i](this.$element[i]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var n=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return t.support.transition?void this.$element[i](0).one("bsTransitionEnd",t.proxy(n,this)).emulateTransitionEnd(o.TRANSITION_DURATION):n.call(this)}}},o.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},o.prototype.getParent=function(){return t(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(t.proxy(function(i,o){var n=t(o);this.addAriaAndCollapsedClass(e(n),n)},this)).end()},o.prototype.addAriaAndCollapsedClass=function(t,e){var i=t.hasClass("in");t.attr("aria-expanded",i),e.toggleClass("collapsed",!i).attr("aria-expanded",i)};var n=t.fn.collapse;t.fn.collapse=i,t.fn.collapse.Constructor=o,t.fn.collapse.noConflict=function(){return t.fn.collapse=n,this},t(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(o){var n=t(this);n.attr("data-target")||o.preventDefault();var s=e(n),a=s.data("bs.collapse"),r=a?"toggle":n.data();i.call(s,r)})}(n),+function(t){"use strict";function e(e){var i=e.attr("data-target");i||(i=e.attr("href"),i=i&&/#[A-Za-z]/.test(i)&&i.replace(/.*(?=#[^\s]*$)/,""));var o=i&&t(i);return o&&o.length?o:e.parent()}function i(i){i&&3===i.which||(t(n).remove(),t(s).each(function(){var o=t(this),n=e(o),s={relatedTarget:this};n.hasClass("open")&&(i&&"click"==i.type&&/input|textarea/i.test(i.target.tagName)&&t.contains(n[0],i.target)||(n.trigger(i=t.Event("hide.bs.dropdown",s)),i.isDefaultPrevented()||(o.attr("aria-expanded","false"),n.removeClass("open").trigger(t.Event("hidden.bs.dropdown",s)))))}))}function o(e){return this.each(function(){var i=t(this),o=i.data("bs.dropdown");o||i.data("bs.dropdown",o=new a(this)),"string"==typeof e&&o[e].call(i)})}var n=".dropdown-backdrop",s='[data-toggle="dropdown"]',a=function(e){t(e).on("click.bs.dropdown",this.toggle)};a.VERSION="3.3.6",a.prototype.toggle=function(o){var n=t(this);if(!n.is(".disabled, :disabled")){var s=e(n),a=s.hasClass("open");if(i(),!a){"ontouchstart"in document.documentElement&&!s.closest(".navbar-nav").length&&t(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(t(this)).on("click",i);var r={relatedTarget:this};if(s.trigger(o=t.Event("show.bs.dropdown",r)),o.isDefaultPrevented())return;n.trigger("focus").attr("aria-expanded","true"),s.toggleClass("open").trigger(t.Event("shown.bs.dropdown",r))}return!1}},a.prototype.keydown=function(i){if(/(38|40|27|32)/.test(i.which)&&!/input|textarea/i.test(i.target.tagName)){var o=t(this);if(i.preventDefault(),i.stopPropagation(),!o.is(".disabled, :disabled")){var n=e(o),a=n.hasClass("open");if(!a&&27!=i.which||a&&27==i.which)return 27==i.which&&n.find(s).trigger("focus"),o.trigger("click");var r=" li:not(.disabled):visible a",l=n.find(".dropdown-menu"+r);if(l.length){var h=l.index(i.target);38==i.which&&h>0&&h--,40==i.which&&h<l.length-1&&h++,~h||(h=0),l.eq(h).trigger("focus")}}}};var r=t.fn.dropdown;t.fn.dropdown=o,t.fn.dropdown.Constructor=a,t.fn.dropdown.noConflict=function(){return t.fn.dropdown=r,this},t(document).on("click.bs.dropdown.data-api",i).on("click.bs.dropdown.data-api",".dropdown form",function(t){t.stopPropagation()}).on("click.bs.dropdown.data-api",s,a.prototype.toggle).on("keydown.bs.dropdown.data-api",s,a.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",a.prototype.keydown)}(n),+function(t){"use strict";function e(e,o){return this.each(function(){var n=t(this),s=n.data("bs.modal"),a=t.extend({},i.DEFAULTS,n.data(),"object"==typeof e&&e);s||n.data("bs.modal",s=new i(this,a)),"string"==typeof e?s[e](o):a.show&&s.show(o)})}var i=function(e,i){this.options=i,this.$body=t(document.body),this.$element=t(e),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,t.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};i.VERSION="3.3.6",i.TRANSITION_DURATION=300,i.BACKDROP_TRANSITION_DURATION=150,i.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},i.prototype.toggle=function(t){return this.isShown?this.hide():this.show(t)},i.prototype.show=function(e){var o=this,n=t.Event("show.bs.modal",{relatedTarget:e});this.$element.trigger(n),this.isShown||n.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',t.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){o.$element.one("mouseup.dismiss.bs.modal",function(e){t(e.target).is(o.$element)&&(o.ignoreBackdropClick=!0)})}),this.backdrop(function(){var n=t.support.transition&&o.$element.hasClass("fade");o.$element.parent().length||o.$element.appendTo(o.$body),o.$element.show().scrollTop(0),o.adjustDialog(),n&&o.$element[0].offsetWidth,o.$element.addClass("in"),o.enforceFocus();var s=t.Event("shown.bs.modal",{relatedTarget:e});n?o.$dialog.one("bsTransitionEnd",function(){o.$element.trigger("focus").trigger(s)}).emulateTransitionEnd(i.TRANSITION_DURATION):o.$element.trigger("focus").trigger(s)}))},i.prototype.hide=function(e){e&&e.preventDefault(),e=t.Event("hide.bs.modal"),this.$element.trigger(e),this.isShown&&!e.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),t(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),t.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",t.proxy(this.hideModal,this)).emulateTransitionEnd(i.TRANSITION_DURATION):this.hideModal())},i.prototype.enforceFocus=function(){t(document).off("focusin.bs.modal").on("focusin.bs.modal",t.proxy(function(t){this.$element[0]===t.target||this.$element.has(t.target).length||this.$element.trigger("focus")},this))},i.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",t.proxy(function(t){27==t.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},i.prototype.resize=function(){this.isShown?t(window).on("resize.bs.modal",t.proxy(this.handleUpdate,this)):t(window).off("resize.bs.modal")},i.prototype.hideModal=function(){var t=this;this.$element.hide(),this.backdrop(function(){t.$body.removeClass("modal-open"),t.resetAdjustments(),t.resetScrollbar(),t.$element.trigger("hidden.bs.modal")})},i.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},i.prototype.backdrop=function(e){var o=this,n=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var s=t.support.transition&&n;if(this.$backdrop=t(document.createElement("div")).addClass("modal-backdrop "+n).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",t.proxy(function(t){return this.ignoreBackdropClick?void(this.ignoreBackdropClick=!1):void(t.target===t.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide()))},this)),s&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!e)return;s?this.$backdrop.one("bsTransitionEnd",e).emulateTransitionEnd(i.BACKDROP_TRANSITION_DURATION):e()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var a=function(){o.removeBackdrop(),e&&e()};t.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",a).emulateTransitionEnd(i.BACKDROP_TRANSITION_DURATION):a()}else e&&e()},i.prototype.handleUpdate=function(){this.adjustDialog()},i.prototype.adjustDialog=function(){var t=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&t?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!t?this.scrollbarWidth:""})},i.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},i.prototype.checkScrollbar=function(){var t=window.innerWidth;if(!t){var e=document.documentElement.getBoundingClientRect();t=e.right-Math.abs(e.left)}this.bodyIsOverflowing=document.body.clientWidth<t,this.scrollbarWidth=this.measureScrollbar()},i.prototype.setScrollbar=function(){var t=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"",this.bodyIsOverflowing&&this.$body.css("padding-right",t+this.scrollbarWidth)},i.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad)},i.prototype.measureScrollbar=function(){var t=document.createElement("div");t.className="modal-scrollbar-measure",this.$body.append(t);var e=t.offsetWidth-t.clientWidth;return this.$body[0].removeChild(t),e};var o=t.fn.modal;t.fn.modal=e,t.fn.modal.Constructor=i,t.fn.modal.noConflict=function(){return t.fn.modal=o,this},t(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(i){var o=t(this),n=o.attr("href"),s=t(o.attr("data-target")||n&&n.replace(/.*(?=#[^\s]+$)/,"")),a=s.data("bs.modal")?"toggle":t.extend({remote:!/#/.test(n)&&n},s.data(),o.data());o.is("a")&&i.preventDefault(),s.one("show.bs.modal",function(t){t.isDefaultPrevented()||s.one("hidden.bs.modal",function(){o.is(":visible")&&o.trigger("focus")})}),e.call(s,a,this)})}(n),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.tooltip"),s="object"==typeof e&&e;!n&&/destroy|hide/.test(e)||(n||o.data("bs.tooltip",n=new i(this,s)),"string"==typeof e&&n[e]())})}var i=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",t,e)};i.VERSION="3.3.6",i.TRANSITION_DURATION=150,i.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},i.prototype.init=function(e,i,o){if(this.enabled=!0,this.type=e,this.$element=t(i),this.options=this.getOptions(o),this.$viewport=this.options.viewport&&t(t.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var n=this.options.trigger.split(" "),s=n.length;s--;){var a=n[s];if("click"==a)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=a){var r="hover"==a?"mouseenter":"focusin",l="hover"==a?"mouseleave":"focusout";this.$element.on(r+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(l+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},i.prototype.getDefaults=function(){return i.DEFAULTS},i.prototype.getOptions=function(e){return e=t.extend({},this.getDefaults(),this.$element.data(),e),e.delay&&"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),e},i.prototype.getDelegateOptions=function(){var e={},i=this.getDefaults();return this._options&&t.each(this._options,function(t,o){i[t]!=o&&(e[t]=o)}),e},i.prototype.enter=function(e){var i=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);return i||(i=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,i)),e instanceof t.Event&&(i.inState["focusin"==e.type?"focus":"hover"]=!0),i.tip().hasClass("in")||"in"==i.hoverState?void(i.hoverState="in"):(clearTimeout(i.timeout),i.hoverState="in",i.options.delay&&i.options.delay.show?void(i.timeout=setTimeout(function(){"in"==i.hoverState&&i.show()},i.options.delay.show)):i.show())},i.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},i.prototype.leave=function(e){var i=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);if(i||(i=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,i)),e instanceof t.Event&&(i.inState["focusout"==e.type?"focus":"hover"]=!1),!i.isInStateTrue())return clearTimeout(i.timeout),i.hoverState="out",i.options.delay&&i.options.delay.hide?void(i.timeout=setTimeout(function(){"out"==i.hoverState&&i.hide()},i.options.delay.hide)):i.hide()},i.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var o=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!o)return;var n=this,s=this.tip(),a=this.getUID(this.type);this.setContent(),s.attr("id",a),this.$element.attr("aria-describedby",a),this.options.animation&&s.addClass("fade");var r="function"==typeof this.options.placement?this.options.placement.call(this,s[0],this.$element[0]):this.options.placement,l=/\s?auto?\s?/i,h=l.test(r);h&&(r=r.replace(l,"")||"top"),s.detach().css({top:0,left:0,display:"block"}).addClass(r).data("bs."+this.type,this),this.options.container?s.appendTo(this.options.container):s.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var d=this.getPosition(),p=s[0].offsetWidth,c=s[0].offsetHeight;if(h){var f=r,u=this.getPosition(this.$viewport);r="bottom"==r&&d.bottom+c>u.bottom?"top":"top"==r&&d.top-c<u.top?"bottom":"right"==r&&d.right+p>u.width?"left":"left"==r&&d.left-p<u.left?"right":r,s.removeClass(f).addClass(r)}var g=this.getCalculatedOffset(r,d,p,c);this.applyPlacement(g,r);var m=function(){var t=n.hoverState;n.$element.trigger("shown.bs."+n.type),n.hoverState=null,"out"==t&&n.leave(n)};t.support.transition&&this.$tip.hasClass("fade")?s.one("bsTransitionEnd",m).emulateTransitionEnd(i.TRANSITION_DURATION):m()}},i.prototype.applyPlacement=function(e,i){var o=this.tip(),n=o[0].offsetWidth,s=o[0].offsetHeight,a=parseInt(o.css("margin-top"),10),r=parseInt(o.css("margin-left"),10);isNaN(a)&&(a=0),isNaN(r)&&(r=0),e.top+=a,e.left+=r,t.offset.setOffset(o[0],t.extend({using:function(t){o.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),o.addClass("in");var l=o[0].offsetWidth,h=o[0].offsetHeight;"top"==i&&h!=s&&(e.top=e.top+s-h);var d=this.getViewportAdjustedDelta(i,e,l,h);d.left?e.left+=d.left:e.top+=d.top;var p=/top|bottom/.test(i),c=p?2*d.left-n+l:2*d.top-s+h,f=p?"offsetWidth":"offsetHeight";o.offset(e),this.replaceArrow(c,o[0][f],p)},i.prototype.replaceArrow=function(t,e,i){this.arrow().css(i?"left":"top",50*(1-t/e)+"%").css(i?"top":"left","")},i.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();t.find(".tooltip-inner")[this.options.html?"html":"text"](e),t.removeClass("fade in top bottom left right")},i.prototype.hide=function(e){function o(){"in"!=n.hoverState&&s.detach(),n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}var n=this,s=t(this.$tip),a=t.Event("hide.bs."+this.type);if(this.$element.trigger(a),!a.isDefaultPrevented())return s.removeClass("in"),t.support.transition&&s.hasClass("fade")?s.one("bsTransitionEnd",o).emulateTransitionEnd(i.TRANSITION_DURATION):o(),this.hoverState=null,this},i.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},i.prototype.hasContent=function(){return this.getTitle()},i.prototype.getPosition=function(e){e=e||this.$element;var i=e[0],o="BODY"==i.tagName,n=i.getBoundingClientRect();null==n.width&&(n=t.extend({},n,{width:n.right-n.left,height:n.bottom-n.top}));var s=o?{top:0,left:0}:e.offset(),a={scroll:o?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},r=o?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},n,a,r,s)},i.prototype.getCalculatedOffset=function(t,e,i,o){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-i/2}:"top"==t?{top:e.top-o,left:e.left+e.width/2-i/2}:"left"==t?{top:e.top+e.height/2-o/2,left:e.left-i}:{top:e.top+e.height/2-o/2,left:e.left+e.width}},i.prototype.getViewportAdjustedDelta=function(t,e,i,o){var n={top:0,left:0};if(!this.$viewport)return n;var s=this.options.viewport&&this.options.viewport.padding||0,a=this.getPosition(this.$viewport);if(/right|left/.test(t)){var r=e.top-s-a.scroll,l=e.top+s-a.scroll+o;r<a.top?n.top=a.top-r:l>a.top+a.height&&(n.top=a.top+a.height-l)}else{var h=e.left-s,d=e.left+s+i;h<a.left?n.left=a.left-h:d>a.right&&(n.left=a.left+a.width-d)}return n},i.prototype.getTitle=function(){var t,e=this.$element,i=this.options;return t=e.attr("data-original-title")||("function"==typeof i.title?i.title.call(e[0]):i.title)},i.prototype.getUID=function(t){do t+=~~(1e6*Math.random());while(document.getElementById(t));return t},i.prototype.tip=function(){if(!this.$tip&&(this.$tip=t(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},i.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},i.prototype.enable=function(){this.enabled=!0},i.prototype.disable=function(){this.enabled=!1},i.prototype.toggleEnabled=function(){this.enabled=!this.enabled},i.prototype.toggle=function(e){var i=this;e&&(i=t(e.currentTarget).data("bs."+this.type),i||(i=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,i))),e?(i.inState.click=!i.inState.click,i.isInStateTrue()?i.enter(i):i.leave(i)):i.tip().hasClass("in")?i.leave(i):i.enter(i)},i.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null})};var o=t.fn.tooltip;t.fn.tooltip=e,t.fn.tooltip.Constructor=i,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=o,this}}(n),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.popover"),s="object"==typeof e&&e;!n&&/destroy|hide/.test(e)||(n||o.data("bs.popover",n=new i(this,s)),"string"==typeof e&&n[e]())})}var i=function(t,e){this.init("popover",t,e)};if(!t.fn.tooltip)throw new Error("Popover requires tooltip.js");i.VERSION="3.3.6",i.DEFAULTS=t.extend({},t.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),i.prototype=t.extend({},t.fn.tooltip.Constructor.prototype),i.prototype.constructor=i,i.prototype.getDefaults=function(){return i.DEFAULTS},i.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),i=this.getContent();t.find(".popover-title")[this.options.html?"html":"text"](e),t.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof i?"html":"append":"text"](i),t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},i.prototype.hasContent=function(){return this.getTitle()||this.getContent()},i.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},i.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var o=t.fn.popover;t.fn.popover=e,t.fn.popover.Constructor=i,t.fn.popover.noConflict=function(){return t.fn.popover=o,this}}(n),+function(t){"use strict";function e(i,o){this.$body=t(document.body),this.$scrollElement=t(t(i).is(document.body)?window:i),this.options=t.extend({},e.DEFAULTS,o),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",t.proxy(this.process,this)),this.refresh(),this.process()}function i(i){return this.each(function(){var o=t(this),n=o.data("bs.scrollspy"),s="object"==typeof i&&i;n||o.data("bs.scrollspy",n=new e(this,s)),"string"==typeof i&&n[i]()})}e.VERSION="3.3.6",e.DEFAULTS={offset:10},e.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},e.prototype.refresh=function(){var e=this,i="offset",o=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),t.isWindow(this.$scrollElement[0])||(i="position",o=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var e=t(this),n=e.data("target")||e.attr("href"),s=/^#./.test(n)&&t(n);return s&&s.length&&s.is(":visible")&&[[s[i]().top+o,n]]||null}).sort(function(t,e){return t[0]-e[0]}).each(function(){e.offsets.push(this[0]),e.targets.push(this[1])})},e.prototype.process=function(){var t=this.$scrollElement.scrollTop()+this.options.offset,e=this.getScrollHeight(),i=this.options.offset+e-this.$scrollElement.height(),o=this.offsets,n=this.targets,s=this.activeTarget,a;if(this.scrollHeight!=e&&this.refresh(),t>=i)return s!=(a=n[n.length-1])&&this.activate(a);if(s&&t<o[0])return this.activeTarget=null,this.clear();for(a=o.length;a--;)s!=n[a]&&t>=o[a]&&(void 0===o[a+1]||t<o[a+1])&&this.activate(n[a])},e.prototype.activate=function(e){this.activeTarget=e,this.clear();var i=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]',o=t(i).parents("li").addClass("active");
o.parent(".dropdown-menu").length&&(o=o.closest("li.dropdown").addClass("active")),o.trigger("activate.bs.scrollspy")},e.prototype.clear=function(){t(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var o=t.fn.scrollspy;t.fn.scrollspy=i,t.fn.scrollspy.Constructor=e,t.fn.scrollspy.noConflict=function(){return t.fn.scrollspy=o,this},t(window).on("load.bs.scrollspy.data-api",function(){t('[data-spy="scroll"]').each(function(){var e=t(this);i.call(e,e.data())})})}(n),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.tab");n||o.data("bs.tab",n=new i(this)),"string"==typeof e&&n[e]()})}var i=function(e){this.element=t(e)};i.VERSION="3.3.6",i.TRANSITION_DURATION=150,i.prototype.show=function(){var e=this.element,i=e.closest("ul:not(.dropdown-menu)"),o=e.data("target");if(o||(o=e.attr("href"),o=o&&o.replace(/.*(?=#[^\s]*$)/,"")),!e.parent("li").hasClass("active")){var n=i.find(".active:last a"),s=t.Event("hide.bs.tab",{relatedTarget:e[0]}),a=t.Event("show.bs.tab",{relatedTarget:n[0]});if(n.trigger(s),e.trigger(a),!a.isDefaultPrevented()&&!s.isDefaultPrevented()){var r=t(o);this.activate(e.closest("li"),i),this.activate(r,r.parent(),function(){n.trigger({type:"hidden.bs.tab",relatedTarget:e[0]}),e.trigger({type:"shown.bs.tab",relatedTarget:n[0]})})}}},i.prototype.activate=function(e,o,n){function s(){a.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),e.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),r?(e[0].offsetWidth,e.addClass("in")):e.removeClass("fade"),e.parent(".dropdown-menu").length&&e.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),n&&n()}var a=o.find("> .active"),r=n&&t.support.transition&&(a.length&&a.hasClass("fade")||!!o.find("> .fade").length);a.length&&r?a.one("bsTransitionEnd",s).emulateTransitionEnd(i.TRANSITION_DURATION):s(),a.removeClass("in")};var o=t.fn.tab;t.fn.tab=e,t.fn.tab.Constructor=i,t.fn.tab.noConflict=function(){return t.fn.tab=o,this};var n=function(i){i.preventDefault(),e.call(t(this),"show")};t(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',n).on("click.bs.tab.data-api",'[data-toggle="pill"]',n)}(n),+function(t){"use strict";function e(e){return this.each(function(){var o=t(this),n=o.data("bs.affix"),s="object"==typeof e&&e;n||o.data("bs.affix",n=new i(this,s)),"string"==typeof e&&n[e]()})}var i=function(e,o){this.options=t.extend({},i.DEFAULTS,o),this.$target=t(this.options.target).on("scroll.bs.affix.data-api",t.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",t.proxy(this.checkPositionWithEventLoop,this)),this.$element=t(e),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};i.VERSION="3.3.6",i.RESET="affix affix-top affix-bottom",i.DEFAULTS={offset:0,target:window},i.prototype.getState=function(t,e,i,o){var n=this.$target.scrollTop(),s=this.$element.offset(),a=this.$target.height();if(null!=i&&"top"==this.affixed)return n<i&&"top";if("bottom"==this.affixed)return null!=i?!(n+this.unpin<=s.top)&&"bottom":!(n+a<=t-o)&&"bottom";var r=null==this.affixed,l=r?n:s.top,h=r?a:e;return null!=i&&n<=i?"top":null!=o&&l+h>=t-o&&"bottom"},i.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(i.RESET).addClass("affix");var t=this.$target.scrollTop(),e=this.$element.offset();return this.pinnedOffset=e.top-t},i.prototype.checkPositionWithEventLoop=function(){setTimeout(t.proxy(this.checkPosition,this),1)},i.prototype.checkPosition=function(){if(this.$element.is(":visible")){var e=this.$element.height(),o=this.options.offset,n=o.top,s=o.bottom,a=Math.max(t(document).height(),t(document.body).height());"object"!=typeof o&&(s=n=o),"function"==typeof n&&(n=o.top(this.$element)),"function"==typeof s&&(s=o.bottom(this.$element));var r=this.getState(a,e,n,s);if(this.affixed!=r){null!=this.unpin&&this.$element.css("top","");var l="affix"+(r?"-"+r:""),h=t.Event(l+".bs.affix");if(this.$element.trigger(h),h.isDefaultPrevented())return;this.affixed=r,this.unpin="bottom"==r?this.getPinnedOffset():null,this.$element.removeClass(i.RESET).addClass(l).trigger(l.replace("affix","affixed")+".bs.affix")}"bottom"==r&&this.$element.offset({top:a-e-s})}};var o=t.fn.affix;t.fn.affix=e,t.fn.affix.Constructor=i,t.fn.affix.noConflict=function(){return t.fn.affix=o,this},t(window).on("load",function(){t('[data-spy="affix"]').each(function(){var i=t(this),o=i.data();o.offset=o.offset||{},null!=o.offsetBottom&&(o.offset.bottom=o.offsetBottom),null!=o.offsetTop&&(o.offset.top=o.offsetTop),e.call(i,o)})})}(n)}).call(this),"undefined"==typeof Package&&(Package={}),Package["twbs:bootstrap"]={}}();
!function(){"undefined"==typeof Package&&(Package={}),Package["fortawesome:fontawesome"]={}}();
!function(){var e=Package.meteor.Meteor,t=Package.meteor.global,n=Package.meteor.meteorEnv,a;(function(){(function(){(function(e){function n(e,t,n){switch(arguments.length){case 2:return null!=e?e:t;case 3:return null!=e?e:null!=t?t:n;default:throw new Error("Implement me")}}function a(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1}}function s(e){De.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+e)}function r(e,t){var n=!0;return h(function(){return n&&(s(e),n=!1),t.apply(this,arguments)},t)}function i(e,t){mt[e]||(s(t),mt[e]=!0)}function o(e,t){return function(n){return m(e.call(this,n),t)}}function u(e,t){return function(n){return this.localeData().ordinal(e.call(this,n),t)}}function c(){}function l(e,t){t!==!1&&F(e),f(this,e),this._d=new Date((+e._d))}function d(e){var t=v(e),n=t.year||0,a=t.quarter||0,s=t.month||0,r=t.week||0,i=t.day||0,o=t.hour||0,u=t.minute||0,c=t.second||0,l=t.millisecond||0;this._milliseconds=+l+1e3*c+6e4*u+36e5*o,this._days=+i+7*r,this._months=+s+3*a+12*n,this._data={},this._locale=De.localeData(),this._bubble()}function h(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return t.hasOwnProperty("toString")&&(e.toString=t.toString),t.hasOwnProperty("valueOf")&&(e.valueOf=t.valueOf),e}function f(e,t){var n,a,s;if("undefined"!=typeof t._isAMomentObject&&(e._isAMomentObject=t._isAMomentObject),"undefined"!=typeof t._i&&(e._i=t._i),"undefined"!=typeof t._f&&(e._f=t._f),"undefined"!=typeof t._l&&(e._l=t._l),"undefined"!=typeof t._strict&&(e._strict=t._strict),"undefined"!=typeof t._tzm&&(e._tzm=t._tzm),"undefined"!=typeof t._isUTC&&(e._isUTC=t._isUTC),"undefined"!=typeof t._offset&&(e._offset=t._offset),"undefined"!=typeof t._pf&&(e._pf=t._pf),"undefined"!=typeof t._locale&&(e._locale=t._locale),Pe.length>0)for(n in Pe)a=Pe[n],s=t[a],"undefined"!=typeof s&&(e[a]=s);return e}function _(e){return e<0?Math.ceil(e):Math.floor(e)}function m(e,t,n){for(var a=""+Math.abs(e),s=e>=0;a.length<t;)a="0"+a;return(s?n?"+":"":"-")+a}function y(e,t){var n={milliseconds:0,months:0};return n.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(n.months,"M").isAfter(t)&&--n.months,n.milliseconds=+t-+e.clone().add(n.months,"M"),n}function p(e,t){var n;return t=L(t,e),e.isBefore(t)?n=y(e,t):(n=y(t,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n}function D(e,t){return function(n,a){var s,r;return null===a||isNaN(+a)||(i(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period)."),r=n,n=a,a=r),n="string"==typeof n?+n:n,s=De.duration(n,a),g(this,s,e),this}}function g(e,t,n,a){var s=t._milliseconds,r=t._days,i=t._months;a=null==a||a,s&&e._d.setTime(+e._d+s*n),r&&he(e,"Date",de(e,"Date")+r*n),i&&le(e,de(e,"Month")+i*n),a&&De.updateOffset(e,r||i)}function M(e){return"[object Array]"===Object.prototype.toString.call(e)}function w(e){return"[object Date]"===Object.prototype.toString.call(e)||e instanceof Date}function Y(e,t,n){var a=Math.min(e.length,t.length),s=Math.abs(e.length-t.length),r=0,i;for(i=0;i<a;i++)(n&&e[i]!==t[i]||!n&&S(e[i])!==S(t[i]))&&r++;return r+s}function k(e){if(e){var t=e.toLowerCase().replace(/(.)s$/,"$1");e=ut[e]||ct[t]||t}return e}function v(e){var t={},n,a;for(a in e)e.hasOwnProperty(a)&&(n=k(a),n&&(t[n]=e[a]));return t}function b(t){var n,a;if(0===t.indexOf("week"))n=7,a="day";else{if(0!==t.indexOf("month"))return;n=12,a="month"}De[t]=function(s,r){var i,o,u=De._locale[t],c=[];if("number"==typeof s&&(r=s,s=e),o=function(e){var t=De().utc().set(a,e);return u.call(De._locale,t,s||"")},null!=r)return o(r);for(i=0;i<n;i++)c.push(o(i));return c}}function S(e){var t=+e,n=0;return 0!==t&&isFinite(t)&&(n=t>=0?Math.floor(t):Math.ceil(t)),n}function T(e,t){return new Date(Date.UTC(e,t+1,0)).getUTCDate()}function O(e,t,n){return ie(De([e,11,31+t-n]),t,n).week}function W(e){return G(e)?366:365}function G(e){return e%4===0&&e%100!==0||e%400===0}function F(e){var t;e._a&&e._pf.overflow===-2&&(t=e._a[be]<0||e._a[be]>11?be:e._a[Se]<1||e._a[Se]>T(e._a[ve],e._a[be])?Se:e._a[Te]<0||e._a[Te]>23?Te:e._a[Oe]<0||e._a[Oe]>59?Oe:e._a[We]<0||e._a[We]>59?We:e._a[Ge]<0||e._a[Ge]>999?Ge:-1,e._pf._overflowDayOfYear&&(t<ve||t>Se)&&(t=Se),e._pf.overflow=t)}function P(e){return null==e._isValid&&(e._isValid=!isNaN(e._d.getTime())&&e._pf.overflow<0&&!e._pf.empty&&!e._pf.invalidMonth&&!e._pf.nullInput&&!e._pf.invalidFormat&&!e._pf.userInvalidated,e._strict&&(e._isValid=e._isValid&&0===e._pf.charsLeftOver&&0===e._pf.unusedTokens.length)),e._isValid}function U(e){return e?e.toLowerCase().replace("_","-"):e}function C(e){for(var t=0,n,a,s,r;t<e.length;){for(r=U(e[t]).split("-"),n=r.length,a=U(e[t+1]),a=a?a.split("-"):null;n>0;){if(s=z(r.slice(0,n).join("-")))return s;if(a&&a.length>=n&&Y(r,a,!0)>=n-1)break;n--}t++}return null}function z(e){var t=null;if(!Fe[e]&&Ue)try{t=De.locale(),require("./locale/"+e),De.locale(t)}catch(e){}return Fe[e]}function L(e,t){return t._isUTC?De(e).zone(t._offset||0):De(e).local()}function I(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function H(e){var t=e.match(Ie),n,a;for(n=0,a=t.length;n<a;n++)_t[t[n]]?t[n]=_t[t[n]]:t[n]=I(t[n]);return function(s){var r="";for(n=0;n<a;n++)r+=t[n]instanceof Function?t[n].call(s,e):t[n];return r}}function A(e,t){return e.isValid()?(t=x(t,e.localeData()),lt[t]||(lt[t]=H(t)),lt[t](e)):e.localeData().invalidDate()}function x(e,t){function n(e){return t.longDateFormat(e)||e}var a=5;for(He.lastIndex=0;a>=0&&He.test(e);)e=e.replace(He,n),He.lastIndex=0,a-=1;return e}function Z(e,t){var n,a=t._strict;switch(e){case"Q":return Qe;case"DDDD":return Be;case"YYYY":case"GGGG":case"gggg":return a?Re:Ze;case"Y":case"G":case"g":return et;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return a?Ke:Ee;case"S":if(a)return Qe;case"SS":if(a)return Xe;case"SSS":if(a)return Be;case"DDD":return xe;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return je;case"a":case"A":return t._locale._meridiemParse;case"X":return $e;case"Z":case"ZZ":return Ve;case"T":return qe;case"SSSS":return Ne;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return a?Xe:Ae;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Ae;case"Do":return Je;default:return n=new RegExp(X(Q(e.replace("\\","")),"i"))}}function E(e){e=e||"";var t=e.match(Ve)||[],n=t[t.length-1]||[],a=(n+"").match(rt)||["-",0,0],s=+(60*a[1])+S(a[2]);return"+"===a[0]?-s:s}function N(e,t,n){var a,s=n._a;switch(e){case"Q":null!=t&&(s[be]=3*(S(t)-1));break;case"M":case"MM":null!=t&&(s[be]=S(t)-1);break;case"MMM":case"MMMM":a=n._locale.monthsParse(t),null!=a?s[be]=a:n._pf.invalidMonth=t;break;case"D":case"DD":null!=t&&(s[Se]=S(t));break;case"Do":null!=t&&(s[Se]=S(parseInt(t,10)));break;case"DDD":case"DDDD":null!=t&&(n._dayOfYear=S(t));break;case"YY":s[ve]=De.parseTwoDigitYear(t);break;case"YYYY":case"YYYYY":case"YYYYYY":s[ve]=S(t);break;case"a":case"A":n._isPm=n._locale.isPM(t);break;case"H":case"HH":case"h":case"hh":s[Te]=S(t);break;case"m":case"mm":s[Oe]=S(t);break;case"s":case"ss":s[We]=S(t);break;case"S":case"SS":case"SSS":case"SSSS":s[Ge]=S(1e3*("0."+t));break;case"X":n._d=new Date(1e3*parseFloat(t));break;case"Z":case"ZZ":n._useUTC=!0,n._tzm=E(t);break;case"dd":case"ddd":case"dddd":a=n._locale.weekdaysParse(t),null!=a?(n._w=n._w||{},n._w.d=a):n._pf.invalidWeekday=t;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":e=e.substr(0,1);case"gggg":case"GGGG":case"GGGGG":e=e.substr(0,2),t&&(n._w=n._w||{},n._w[e]=S(t));break;case"gg":case"GG":n._w=n._w||{},n._w[e]=De.parseTwoDigitYear(t)}}function j(e){var t,a,s,r,i,o,u;t=e._w,null!=t.GG||null!=t.W||null!=t.E?(i=1,o=4,a=n(t.GG,e._a[ve],ie(De(),1,4).year),s=n(t.W,1),r=n(t.E,1)):(i=e._locale._week.dow,o=e._locale._week.doy,a=n(t.gg,e._a[ve],ie(De(),i,o).year),s=n(t.w,1),null!=t.d?(r=t.d,r<i&&++s):r=null!=t.e?t.e+i:i),u=oe(a,s,r,o,i),e._a[ve]=u.year,e._dayOfYear=u.dayOfYear}function V(e){var t,a,s=[],r,i;if(!e._d){for(r=$(e),e._w&&null==e._a[Se]&&null==e._a[be]&&j(e),e._dayOfYear&&(i=n(e._a[ve],r[ve]),e._dayOfYear>W(i)&&(e._pf._overflowDayOfYear=!0),a=ne(i,0,e._dayOfYear),e._a[be]=a.getUTCMonth(),e._a[Se]=a.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=s[t]=r[t];for(;t<7;t++)e._a[t]=s[t]=null==e._a[t]?2===t?1:0:e._a[t];e._d=(e._useUTC?ne:te).apply(null,s),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()+e._tzm)}}function q(e){var t;e._d||(t=v(e._i),e._a=[t.year,t.month,t.day,t.hour,t.minute,t.second,t.millisecond],V(e))}function $(e){var t=new Date;return e._useUTC?[t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()]:[t.getFullYear(),t.getMonth(),t.getDate()]}function J(e){if(e._f===De.ISO_8601)return void R(e);e._a=[],e._pf.empty=!0;var t=""+e._i,n,a,s,r,i,o=t.length,u=0;for(s=x(e._f,e._locale).match(Ie)||[],n=0;n<s.length;n++)r=s[n],a=(t.match(Z(r,e))||[])[0],a&&(i=t.substr(0,t.indexOf(a)),i.length>0&&e._pf.unusedInput.push(i),t=t.slice(t.indexOf(a)+a.length),u+=a.length),_t[r]?(a?e._pf.empty=!1:e._pf.unusedTokens.push(r),N(r,a,e)):e._strict&&!a&&e._pf.unusedTokens.push(r);e._pf.charsLeftOver=o-u,t.length>0&&e._pf.unusedInput.push(t),e._isPm&&e._a[Te]<12&&(e._a[Te]+=12),e._isPm===!1&&12===e._a[Te]&&(e._a[Te]=0),V(e),F(e)}function Q(e){return e.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,n,a,s){return t||n||a||s})}function X(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function B(e){var t,n,s,r,i;if(0===e._f.length)return e._pf.invalidFormat=!0,void(e._d=new Date(NaN));for(r=0;r<e._f.length;r++)i=0,t=f({},e),t._pf=a(),t._f=e._f[r],J(t),P(t)&&(i+=t._pf.charsLeftOver,i+=10*t._pf.unusedTokens.length,t._pf.score=i,(null==s||i<s)&&(s=i,n=t));h(e,n||t)}function R(e){var t,n,a=e._i,s=tt.exec(a);if(s){for(e._pf.iso=!0,t=0,n=at.length;t<n;t++)if(at[t][1].exec(a)){e._f=at[t][0]+(s[6]||" ");break}for(t=0,n=st.length;t<n;t++)if(st[t][1].exec(a)){e._f+=st[t][0];break}a.match(Ve)&&(e._f+="Z"),J(e)}else e._isValid=!1}function K(e){R(e),e._isValid===!1&&(delete e._isValid,De.createFromInputFallback(e))}function ee(t){var n=t._i,a;n===e?t._d=new Date:w(n)?t._d=new Date((+n)):null!==(a=Ce.exec(n))?t._d=new Date((+a[1])):"string"==typeof n?K(t):M(n)?(t._a=n.slice(0),V(t)):"object"==typeof n?q(t):"number"==typeof n?t._d=new Date(n):De.createFromInputFallback(t)}function te(e,t,n,a,s,r,i){var o=new Date(e,t,n,a,s,r,i);return e<1970&&o.setFullYear(e),o}function ne(e){var t=new Date(Date.UTC.apply(null,arguments));return e<1970&&t.setUTCFullYear(e),t}function ae(e,t){if("string"==typeof e)if(isNaN(e)){if(e=t.weekdaysParse(e),"number"!=typeof e)return null}else e=parseInt(e,10);return e}function se(e,t,n,a,s){return s.relativeTime(t||1,!!n,e,a)}function re(e,t,n){var a=De.duration(e).abs(),s=Ye(a.as("s")),r=Ye(a.as("m")),i=Ye(a.as("h")),o=Ye(a.as("d")),u=Ye(a.as("M")),c=Ye(a.as("y")),l=s<dt.s&&["s",s]||1===r&&["m"]||r<dt.m&&["mm",r]||1===i&&["h"]||i<dt.h&&["hh",i]||1===o&&["d"]||o<dt.d&&["dd",o]||1===u&&["M"]||u<dt.M&&["MM",u]||1===c&&["y"]||["yy",c];return l[2]=t,l[3]=+e>0,l[4]=n,se.apply({},l)}function ie(e,t,n){var a=n-t,s=n-e.day(),r;return s>a&&(s-=7),s<a-7&&(s+=7),r=De(e).add(s,"d"),{week:Math.ceil(r.dayOfYear()/7),year:r.year()}}function oe(e,t,n,a,s){var r=ne(e,0,1).getUTCDay(),i,o;return r=0===r?7:r,n=null!=n?n:s,i=s-r+(r>a?7:0)-(r<s?7:0),o=7*(t-1)+(n-s)+i+1,{year:o>0?e:e-1,dayOfYear:o>0?o:W(e-1)+o}}function ue(t){var n=t._i,a=t._f;return t._locale=t._locale||De.localeData(t._l),null===n||a===e&&""===n?De.invalid({nullInput:!0}):("string"==typeof n&&(t._i=n=t._locale.preparse(n)),De.isMoment(n)?new l(n,(!0)):(a?M(a)?B(t):J(t):ee(t),new l(t)))}function ce(e,t){var n,a;if(1===t.length&&M(t[0])&&(t=t[0]),!t.length)return De();for(n=t[0],a=1;a<t.length;++a)t[a][e](n)&&(n=t[a]);return n}function le(e,t){var n;return"string"==typeof t&&(t=e.localeData().monthsParse(t),"number"!=typeof t)?e:(n=Math.min(e.date(),T(e.year(),t)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](t,n),e)}function de(e,t){return e._d["get"+(e._isUTC?"UTC":"")+t]()}function he(e,t,n){return"Month"===t?le(e,n):e._d["set"+(e._isUTC?"UTC":"")+t](n)}function fe(e,t){return function(n){return null!=n?(he(this,e,n),De.updateOffset(this,t),this):de(this,e)}}function _e(e){return 400*e/146097}function me(e){return 146097*e/400}function ye(e){De.duration.fn[e]=function(){return this._data[e]}}function pe(e){"undefined"==typeof ender&&(we=Me.moment,e?Me.moment=r("Accessing Moment through the global scope is deprecated, and will be removed in an upcoming release.",De):Me.moment=De)}for(var De,ge="2.8.1",Me="undefined"!=typeof t?t:this,we,Ye=Math.round,ke,ve=0,be=1,Se=2,Te=3,Oe=4,We=5,Ge=6,Fe={},Pe=[],Ue="undefined"!=typeof module&&module.exports,Ce=/^\/?Date\((\-?\d+)/i,ze=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Le=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,Ie=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g,He=/(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g,Ae=/\d\d?/,xe=/\d{1,3}/,Ze=/\d{1,4}/,Ee=/[+\-]?\d{1,6}/,Ne=/\d+/,je=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,Ve=/Z|[\+\-]\d\d:?\d\d/gi,qe=/T/i,$e=/[\+\-]?\d+(\.\d{1,3})?/,Je=/\d{1,2}/,Qe=/\d/,Xe=/\d\d/,Be=/\d{3}/,Re=/\d{4}/,Ke=/[+-]?\d{6}/,et=/[+-]?\d+/,tt=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,nt="YYYY-MM-DDTHH:mm:ssZ",at=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],st=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],rt=/([\+\-]|\d\d)/gi,it="Date|Hours|Minutes|Seconds|Milliseconds".split("|"),ot={Milliseconds:1,Seconds:1e3,Minutes:6e4,Hours:36e5,Days:864e5,Months:2592e6,Years:31536e6},ut={ms:"millisecond",s:"second",m:"minute",h:"hour",d:"day",D:"date",w:"week",W:"isoWeek",M:"month",Q:"quarter",y:"year",DDD:"dayOfYear",e:"weekday",E:"isoWeekday",gg:"weekYear",GG:"isoWeekYear"},ct={dayofyear:"dayOfYear",isoweekday:"isoWeekday",isoweek:"isoWeek",weekyear:"weekYear",isoweekyear:"isoWeekYear"},lt={},dt={s:45,m:45,h:22,d:26,M:11},ht="DDD w W M D d".split(" "),ft="M D H h m s w W".split(" "),_t={M:function(){return this.month()+1},MMM:function(e){return this.localeData().monthsShort(this,e)},MMMM:function(e){return this.localeData().months(this,e)},D:function(){return this.date()},DDD:function(){return this.dayOfYear()},d:function(){return this.day()},dd:function(e){return this.localeData().weekdaysMin(this,e)},ddd:function(e){return this.localeData().weekdaysShort(this,e)},dddd:function(e){return this.localeData().weekdays(this,e)},w:function(){return this.week()},W:function(){return this.isoWeek()},YY:function(){return m(this.year()%100,2)},YYYY:function(){return m(this.year(),4)},YYYYY:function(){return m(this.year(),5)},YYYYYY:function(){var e=this.year(),t=e>=0?"+":"-";return t+m(Math.abs(e),6)},gg:function(){return m(this.weekYear()%100,2)},gggg:function(){return m(this.weekYear(),4)},ggggg:function(){return m(this.weekYear(),5)},GG:function(){return m(this.isoWeekYear()%100,2)},GGGG:function(){return m(this.isoWeekYear(),4)},GGGGG:function(){return m(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return S(this.milliseconds()/100)},SS:function(){return m(S(this.milliseconds()/10),2)},SSS:function(){return m(this.milliseconds(),3)},SSSS:function(){return m(this.milliseconds(),3)},Z:function(){var e=-this.zone(),t="+";return e<0&&(e=-e,t="-"),t+m(S(e/60),2)+":"+m(S(e)%60,2)},ZZ:function(){var e=-this.zone(),t="+";return e<0&&(e=-e,t="-"),t+m(S(e/60),2)+m(S(e)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},X:function(){return this.unix()},Q:function(){return this.quarter()}},mt={},yt=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];ht.length;)ke=ht.pop(),_t[ke+"o"]=u(_t[ke],ke);for(;ft.length;)ke=ft.pop(),_t[ke+ke]=o(_t[ke],2);_t.DDDD=o(_t.DDD,3),h(c.prototype,{set:function(e){var t,n;for(n in e)t=e[n],"function"==typeof t?this[n]=t:this["_"+n]=t},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(e){return this._months[e.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(e){return this._monthsShort[e.month()]},monthsParse:function(e){var t,n,a;for(this._monthsParse||(this._monthsParse=[]),t=0;t<12;t++)if(this._monthsParse[t]||(n=De.utc([2e3,t]),a="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[t]=new RegExp(a.replace(".",""),"i")),this._monthsParse[t].test(e))return t},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(e){return this._weekdays[e.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(e){return this._weekdaysShort[e.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(e){return this._weekdaysMin[e.day()]},weekdaysParse:function(e){var t,n,a;for(this._weekdaysParse||(this._weekdaysParse=[]),t=0;t<7;t++)if(this._weekdaysParse[t]||(n=De([2e3,1]).day(t),a="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[t]=new RegExp(a.replace(".",""),"i")),this._weekdaysParse[t].test(e))return t},_longDateFormat:{LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(e){var t=this._longDateFormat[e];return!t&&this._longDateFormat[e.toUpperCase()]&&(t=this._longDateFormat[e.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e]=t),t},isPM:function(e){return"p"===(e+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(e,t,n){return e>11?n?"pm":"PM":n?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(e,t){var n=this._calendar[e];return"function"==typeof n?n.apply(t):n},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(e,t,n,a){var s=this._relativeTime[n];return"function"==typeof s?s(e,t,n,a):s.replace(/%d/i,e)},pastFuture:function(e,t){var n=this._relativeTime[e>0?"future":"past"];return"function"==typeof n?n(t):n.replace(/%s/i,t)},ordinal:function(e){return this._ordinal.replace("%d",e)},_ordinal:"%d",preparse:function(e){return e},postformat:function(e){return e},week:function(e){return ie(e,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),De=function(t,n,s,r){var i;return"boolean"==typeof s&&(r=s,s=e),i={},i._isAMomentObject=!0,i._i=t,i._f=n,i._l=s,i._strict=r,i._isUTC=!1,i._pf=a(),ue(i)},De.suppressDeprecationWarnings=!1,De.createFromInputFallback=r("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(e){e._d=new Date(e._i)}),De.min=function(){var e=[].slice.call(arguments,0);return ce("isBefore",e)},De.max=function(){var e=[].slice.call(arguments,0);return ce("isAfter",e)},De.utc=function(t,n,s,r){var i;return"boolean"==typeof s&&(r=s,s=e),i={},i._isAMomentObject=!0,i._useUTC=!0,i._isUTC=!0,i._l=s,i._i=t,i._f=n,i._strict=r,i._pf=a(),ue(i).utc()},De.unix=function(e){return De(1e3*e)},De.duration=function(e,t){var n=e,a=null,s,r,i,o;return De.isDuration(e)?n={ms:e._milliseconds,d:e._days,M:e._months}:"number"==typeof e?(n={},t?n[t]=e:n.milliseconds=e):(a=ze.exec(e))?(s="-"===a[1]?-1:1,n={y:0,d:S(a[Se])*s,h:S(a[Te])*s,m:S(a[Oe])*s,s:S(a[We])*s,ms:S(a[Ge])*s}):(a=Le.exec(e))?(s="-"===a[1]?-1:1,i=function(e){var t=e&&parseFloat(e.replace(",","."));return(isNaN(t)?0:t)*s},n={y:i(a[2]),M:i(a[3]),d:i(a[4]),h:i(a[5]),m:i(a[6]),s:i(a[7]),w:i(a[8])}):"object"==typeof n&&("from"in n||"to"in n)&&(o=p(De(n.from),De(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),r=new d(n),De.isDuration(e)&&e.hasOwnProperty("_locale")&&(r._locale=e._locale),r},De.version=ge,De.defaultFormat=nt,De.ISO_8601=function(){},De.momentProperties=Pe,De.updateOffset=function(){},De.relativeTimeThreshold=function(t,n){return dt[t]!==e&&(n===e?dt[t]:(dt[t]=n,!0))},De.lang=r("moment.lang is deprecated. Use moment.locale instead.",function(e,t){return De.locale(e,t)}),De.locale=function(e,t){var n;return e&&(n="undefined"!=typeof t?De.defineLocale(e,t):De.localeData(e),n&&(De.duration._locale=De._locale=n)),De._locale._abbr},De.defineLocale=function(e,t){return null!==t?(t.abbr=e,Fe[e]||(Fe[e]=new c),Fe[e].set(t),De.locale(e),Fe[e]):(delete Fe[e],null)},De.langData=r("moment.langData is deprecated. Use moment.localeData instead.",function(e){return De.localeData(e)}),De.localeData=function(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return De._locale;if(!M(e)){if(t=z(e))return t;e=[e]}return C(e)},De.isMoment=function(e){return e instanceof l||null!=e&&e.hasOwnProperty("_isAMomentObject")},De.isDuration=function(e){return e instanceof d};for(ke=yt.length-1;ke>=0;--ke)b(yt[ke]);De.normalizeUnits=function(e){return k(e)},De.invalid=function(e){var t=De.utc(NaN);return null!=e?h(t._pf,e):t._pf.userInvalidated=!0,t},De.parseZone=function(){return De.apply(null,arguments).parseZone()},De.parseTwoDigitYear=function(e){return S(e)+(S(e)>68?1900:2e3)},h(De.fn=l.prototype,{clone:function(){return De(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date((+this)):this._d},toISOString:function(){var e=De(this).utc();return 0<e.year()&&e.year()<=9999?A(e,"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]"):A(e,"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]")},toArray:function(){var e=this;return[e.year(),e.month(),e.date(),e.hours(),e.minutes(),e.seconds(),e.milliseconds()]},isValid:function(){return P(this)},isDSTShifted:function(){return!!this._a&&(this.isValid()&&Y(this._a,(this._isUTC?De.utc(this._a):De(this._a)).toArray())>0)},parsingFlags:function(){return h({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(e){return this.zone(0,e)},local:function(e){return this._isUTC&&(this.zone(0,e),this._isUTC=!1,e&&this.add(this._d.getTimezoneOffset(),"m")),this},format:function(e){var t=A(this,e||De.defaultFormat);return this.localeData().postformat(t)},add:D(1,"add"),subtract:D(-1,"subtract"),diff:function(e,t,n){var a=L(e,this),s=6e4*(this.zone()-a.zone()),r,i;return t=k(t),"year"===t||"month"===t?(r=432e5*(this.daysInMonth()+a.daysInMonth()),i=12*(this.year()-a.year())+(this.month()-a.month()),i+=(this-De(this).startOf("month")-(a-De(a).startOf("month")))/r,i-=6e4*(this.zone()-De(this).startOf("month").zone()-(a.zone()-De(a).startOf("month").zone()))/r,"year"===t&&(i/=12)):(r=this-a,i="second"===t?r/1e3:"minute"===t?r/6e4:"hour"===t?r/36e5:"day"===t?(r-s)/864e5:"week"===t?(r-s)/6048e5:r),n?i:_(i)},from:function(e,t){return De.duration({to:this,from:e}).locale(this.locale()).humanize(!t)},fromNow:function(e){return this.from(De(),e)},calendar:function(e){var t=e||De(),n=L(t,this).startOf("day"),a=this.diff(n,"days",!0),s=a<-6?"sameElse":a<-1?"lastWeek":a<0?"lastDay":a<1?"sameDay":a<2?"nextDay":a<7?"nextWeek":"sameElse";return this.format(this.localeData().calendar(s,this))},isLeapYear:function(){return G(this.year())},isDST:function(){return this.zone()<this.clone().month(0).zone()||this.zone()<this.clone().month(5).zone()},day:function(e){var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=ae(e,this.localeData()),this.add(e-t,"d")):t},month:fe("Month",!0),startOf:function(e){switch(e=k(e)){case"year":this.month(0);case"quarter":case"month":this.date(1);case"week":case"isoWeek":case"day":this.hours(0);case"hour":this.minutes(0);case"minute":this.seconds(0);case"second":this.milliseconds(0)}return"week"===e?this.weekday(0):"isoWeek"===e&&this.isoWeekday(1),"quarter"===e&&this.month(3*Math.floor(this.month()/3)),this},endOf:function(e){return e=k(e),this.startOf(e).add(1,"isoWeek"===e?"week":e).subtract(1,"ms")},isAfter:function(e,t){return t="undefined"!=typeof t?t:"millisecond",+this.clone().startOf(t)>+De(e).startOf(t)},isBefore:function(e,t){return t="undefined"!=typeof t?t:"millisecond",+this.clone().startOf(t)<+De(e).startOf(t)},isSame:function(e,t){return t=t||"ms",+this.clone().startOf(t)===+L(e,this).startOf(t)},min:r("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(e){return e=De.apply(null,arguments),e<this?this:e}),max:r("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(e){return e=De.apply(null,arguments),e>this?this:e}),zone:function(e,t){var n=this._offset||0,a;return null==e?this._isUTC?n:this._d.getTimezoneOffset():("string"==typeof e&&(e=E(e)),Math.abs(e)<16&&(e=60*e),!this._isUTC&&t&&(a=this._d.getTimezoneOffset()),this._offset=e,this._isUTC=!0,null!=a&&this.subtract(a,"m"),n!==e&&(!t||this._changeInProgress?g(this,De.duration(n-e,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,De.updateOffset(this,!0),this._changeInProgress=null)),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(e){return e=e?De(e).zone():0,(this.zone()-e)%60===0},daysInMonth:function(){return T(this.year(),this.month())},dayOfYear:function(e){var t=Ye((De(this).startOf("day")-De(this).startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")},quarter:function(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)},weekYear:function(e){var t=ie(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==e?t:this.add(e-t,"y")},isoWeekYear:function(e){var t=ie(this,1,4).year;return null==e?t:this.add(e-t,"y")},week:function(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")},isoWeek:function(e){var t=ie(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")},weekday:function(e){var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")},isoWeekday:function(e){return null==e?this.day()||7:this.day(this.day()%7?e:e-7)},isoWeeksInYear:function(){return O(this.year(),1,4)},weeksInYear:function(){var e=this.localeData()._week;return O(this.year(),e.dow,e.doy)},get:function(e){return e=k(e),this[e]()},set:function(e,t){return e=k(e),"function"==typeof this[e]&&this[e](t),this},locale:function(t){return t===e?this._locale._abbr:(this._locale=De.localeData(t),this)},lang:r("moment().lang() is deprecated. Use moment().localeData() instead.",function(t){return t===e?this.localeData():(this._locale=De.localeData(t),this)}),localeData:function(){return this._locale}}),De.fn.millisecond=De.fn.milliseconds=fe("Milliseconds",!1),De.fn.second=De.fn.seconds=fe("Seconds",!1),De.fn.minute=De.fn.minutes=fe("Minutes",!1),De.fn.hour=De.fn.hours=fe("Hours",!0),De.fn.date=fe("Date",!0),De.fn.dates=r("dates accessor is deprecated. Use date instead.",fe("Date",!0)),De.fn.year=fe("FullYear",!0),De.fn.years=r("years accessor is deprecated. Use year instead.",fe("FullYear",!0)),De.fn.days=De.fn.day,De.fn.months=De.fn.month,De.fn.weeks=De.fn.week,De.fn.isoWeeks=De.fn.isoWeek,De.fn.quarters=De.fn.quarter,De.fn.toJSON=De.fn.toISOString,h(De.duration.fn=d.prototype,{_bubble:function(){var e=this._milliseconds,t=this._days,n=this._months,a=this._data,s,r,i,o=0;a.milliseconds=e%1e3,s=_(e/1e3),a.seconds=s%60,r=_(s/60),a.minutes=r%60,i=_(r/60),a.hours=i%24,t+=_(i/24),o=_(_e(t)),t-=_(me(o)),n+=_(t/30),t%=30,o+=_(n/12),n%=12,a.days=t,a.months=n,a.years=o},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return _(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*S(this._months/12)},humanize:function(e){var t=re(this,!e,this.localeData());return e&&(t=this.localeData().pastFuture(+this,t)),this.localeData().postformat(t)},add:function(e,t){var n=De.duration(e,t);return this._milliseconds+=n._milliseconds,this._days+=n._days,this._months+=n._months,this._bubble(),this},subtract:function(e,t){var n=De.duration(e,t);return this._milliseconds-=n._milliseconds,this._days-=n._days,this._months-=n._months,this._bubble(),this},get:function(e){return e=k(e),this[e.toLowerCase()+"s"]()},as:function(e){var t,n;if(e=k(e),t=this._days+this._milliseconds/864e5,"month"===e||"year"===e)return n=this._months+12*_e(t),"month"===e?n:n/12;switch(t+=me(this._months/12),e){case"week":return t/7;case"day":return t;case"hour":return 24*t;case"minute":return 24*t*60;case"second":return 24*t*60*60;case"millisecond":return 24*t*60*60*1e3;default:throw new Error("Unknown unit "+e)}},lang:De.fn.lang,locale:De.fn.locale,toIsoString:r("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var e=Math.abs(this.years()),t=Math.abs(this.months()),n=Math.abs(this.days()),a=Math.abs(this.hours()),s=Math.abs(this.minutes()),r=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(e?e+"Y":"")+(t?t+"M":"")+(n?n+"D":"")+(a||s||r?"T":"")+(a?a+"H":"")+(s?s+"M":"")+(r?r+"S":""):"P0D"},localeData:function(){return this._locale}});for(ke in ot)ot.hasOwnProperty(ke)&&ye(ke.toLowerCase());De.duration.fn.asMilliseconds=function(){return this.as("ms")},De.duration.fn.asSeconds=function(){return this.as("s")},De.duration.fn.asMinutes=function(){return this.as("m")},De.duration.fn.asHours=function(){return this.as("h")},De.duration.fn.asDays=function(){return this.as("d")},De.duration.fn.asWeeks=function(){return this.as("weeks")},De.duration.fn.asMonths=function(){return this.as("M")},De.duration.fn.asYears=function(){return this.as("y")},De.locale("en",{ordinal:function(e){var t=e%10,n=1===S(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+n}}),Ue?module.exports=De:"function"==typeof define&&define.amd?(define("moment",function(e,t,n){return n.config&&n.config()&&n.config().noGlobal===!0&&(Me.moment=we),De}),pe(!0)):pe()}).call(this)}).call(this),function(){"undefined"!=typeof Package&&(a=this.moment)}.call(this)}).call(this),"undefined"==typeof Package&&(Package={}),function(e,t){for(var n in t)n in e||(e[n]=t[n])}(Package["mrt:moment"]={},{moment:a})}();
!function(){var t=Package.meteor.Meteor,e=Package.meteor.global,n=Package.meteor.meteorEnv,o,i;(function(){o={exports:{}}}).call(this),function(){function t(e,o){"use strict";function i(t,e){return function(){return t.apply(e,arguments)}}var r;if(o=o||{},this.trackingClick=!1,this.trackingClickStart=0,this.targetElement=null,this.touchStartX=0,this.touchStartY=0,this.lastTouchIdentifier=0,this.touchBoundary=o.touchBoundary||10,this.layer=e,this.tapDelay=o.tapDelay||200,this.tapTimeout=o.tapTimeout||700,!t.notNeeded(e)){for(var a=["onMouse","onClick","onTouchStart","onTouchMove","onTouchEnd","onTouchCancel"],c=this,s=0,u=a.length;s<u;s++)c[a[s]]=i(c[a[s]],c);n&&(e.addEventListener("mouseover",this.onMouse,!0),e.addEventListener("mousedown",this.onMouse,!0),e.addEventListener("mouseup",this.onMouse,!0)),e.addEventListener("click",this.onClick,!0),e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1),e.addEventListener("touchcancel",this.onTouchCancel,!1),Event.prototype.stopImmediatePropagation||(e.removeEventListener=function(t,n,o){var i=Node.prototype.removeEventListener;"click"===t?i.call(e,t,n.hijacked||n,o):i.call(e,t,n,o)},e.addEventListener=function(t,n,o){var i=Node.prototype.addEventListener;"click"===t?i.call(e,t,n.hijacked||(n.hijacked=function(t){t.propagationStopped||n(t)}),o):i.call(e,t,n,o)}),"function"==typeof e.onclick&&(r=e.onclick,e.addEventListener("click",function(t){r(t)},!1),e.onclick=null)}}var e=navigator.userAgent.indexOf("Windows Phone")>=0,n=navigator.userAgent.indexOf("Android")>0&&!e,i=/iP(ad|hone|od)/.test(navigator.userAgent)&&!e,r=i&&/OS 4_\d(_\d)?/.test(navigator.userAgent),a=i&&/OS [6-7]_\d/.test(navigator.userAgent),c=navigator.userAgent.indexOf("BB10")>0;t.prototype.needsClick=function(t){switch(t.nodeName.toLowerCase()){case"button":case"select":case"textarea":if(t.disabled)return!0;break;case"input":if(i&&"file"===t.type||t.disabled)return!0;break;case"label":case"iframe":case"video":return!0}return/\bneedsclick\b/.test(t.className)},t.prototype.needsFocus=function(t){switch(t.nodeName.toLowerCase()){case"textarea":return!0;case"select":return!n;case"input":switch(t.type){case"button":case"checkbox":case"file":case"image":case"radio":case"submit":return!1}return!t.disabled&&!t.readOnly;default:return/\bneedsfocus\b/.test(t.className)}},t.prototype.sendClick=function(t,e){var n,o;document.activeElement&&document.activeElement!==t&&document.activeElement.blur(),o=e.changedTouches[0],n=document.createEvent("MouseEvents"),n.initMouseEvent(this.determineEventType(t),!0,!0,window,1,o.screenX,o.screenY,o.clientX,o.clientY,!1,!1,!1,!1,0,null),n.forwardedTouchEvent=!0,t.dispatchEvent(n)},t.prototype.determineEventType=function(t){return n&&"select"===t.tagName.toLowerCase()?"mousedown":"click"},t.prototype.focus=function(t){var e;i&&t.setSelectionRange&&0!==t.type.indexOf("date")&&"time"!==t.type&&"month"!==t.type?(e=t.value.length,t.setSelectionRange(e,e)):t.focus()},t.prototype.updateScrollParent=function(t){var e,n;if(e=t.fastClickScrollParent,!e||!e.contains(t)){n=t;do{if(n.scrollHeight>n.offsetHeight){e=n,t.fastClickScrollParent=n;break}n=n.parentElement}while(n)}e&&(e.fastClickLastScrollTop=e.scrollTop)},t.prototype.getTargetElementFromEventTarget=function(t){return t.nodeType===Node.TEXT_NODE?t.parentNode:t},t.prototype.onTouchStart=function(t){var e,n,o;if(t.targetTouches.length>1)return!0;if(e=this.getTargetElementFromEventTarget(t.target),n=t.targetTouches[0],i){if(o=window.getSelection(),o.rangeCount&&!o.isCollapsed)return!0;if(!r){if(n.identifier&&n.identifier===this.lastTouchIdentifier)return t.preventDefault(),!1;this.lastTouchIdentifier=n.identifier,this.updateScrollParent(e)}}return this.trackingClick=!0,this.trackingClickStart=t.timeStamp,this.targetElement=e,this.touchStartX=n.pageX,this.touchStartY=n.pageY,t.timeStamp-this.lastClickTime<this.tapDelay&&t.preventDefault(),!0},t.prototype.touchHasMoved=function(t){var e=t.changedTouches[0],n=this.touchBoundary;return Math.abs(e.pageX-this.touchStartX)>n||Math.abs(e.pageY-this.touchStartY)>n},t.prototype.onTouchMove=function(t){return!this.trackingClick||((this.targetElement!==this.getTargetElementFromEventTarget(t.target)||this.touchHasMoved(t))&&(this.trackingClick=!1,this.targetElement=null),!0)},t.prototype.findControl=function(t){return void 0!==t.control?t.control:t.htmlFor?document.getElementById(t.htmlFor):t.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")},t.prototype.onTouchEnd=function(t){var e,o,c,s,u,l=this.targetElement;if(!this.trackingClick)return!0;if(t.timeStamp-this.lastClickTime<this.tapDelay)return this.cancelNextClick=!0,!0;if(t.timeStamp-this.trackingClickStart>this.tapTimeout)return!0;if(this.cancelNextClick=!1,this.lastClickTime=t.timeStamp,o=this.trackingClickStart,this.trackingClick=!1,this.trackingClickStart=0,a&&(u=t.changedTouches[0],l=document.elementFromPoint(u.pageX-window.pageXOffset,u.pageY-window.pageYOffset)||l,l.fastClickScrollParent=this.targetElement.fastClickScrollParent),c=l.tagName.toLowerCase(),"label"===c){if(e=this.findControl(l)){if(this.focus(l),n)return!1;l=e}}else if(this.needsFocus(l))return t.timeStamp-o>100||i&&window.top!==window&&"input"===c?(this.targetElement=null,!1):(this.focus(l),this.sendClick(l,t),i&&"select"===c||(this.targetElement=null,t.preventDefault()),!1);return!(!i||r||(s=l.fastClickScrollParent,!s||s.fastClickLastScrollTop===s.scrollTop))||(this.needsClick(l)||(t.preventDefault(),this.sendClick(l,t)),!1)},t.prototype.onTouchCancel=function(){this.trackingClick=!1,this.targetElement=null},t.prototype.onMouse=function(t){return!this.targetElement||(!!t.forwardedTouchEvent||(!t.cancelable||(!(!this.needsClick(this.targetElement)||this.cancelNextClick)||(t.stopImmediatePropagation?t.stopImmediatePropagation():t.propagationStopped=!0,t.stopPropagation(),t.preventDefault(),!1))))},t.prototype.onClick=function(t){var e;return this.trackingClick?(this.targetElement=null,this.trackingClick=!1,!0):"submit"===t.target.type&&0===t.detail||(e=this.onMouse(t),e||(this.targetElement=null),e)},t.prototype.destroy=function(){var t=this.layer;n&&(t.removeEventListener("mouseover",this.onMouse,!0),t.removeEventListener("mousedown",this.onMouse,!0),t.removeEventListener("mouseup",this.onMouse,!0)),t.removeEventListener("click",this.onClick,!0),t.removeEventListener("touchstart",this.onTouchStart,!1),t.removeEventListener("touchmove",this.onTouchMove,!1),t.removeEventListener("touchend",this.onTouchEnd,!1),t.removeEventListener("touchcancel",this.onTouchCancel,!1)},t.notNeeded=function(t){var e,o,i,r;if("undefined"==typeof window.ontouchstart)return!0;if(o=+(/Chrome\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1]){if(!n)return!0;if(e=document.querySelector("meta[name=viewport]")){if(e.content.indexOf("user-scalable=no")!==-1)return!0;if(o>31&&document.documentElement.scrollWidth<=window.outerWidth)return!0}}if(c&&(i=navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/),i[1]>=10&&i[2]>=3&&(e=document.querySelector("meta[name=viewport]")))){if(e.content.indexOf("user-scalable=no")!==-1)return!0;if(document.documentElement.scrollWidth<=window.outerWidth)return!0}return"none"===t.style.msTouchAction||"manipulation"===t.style.touchAction||(r=+(/Firefox\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1],!!(r>=27&&(e=document.querySelector("meta[name=viewport]"),e&&(e.content.indexOf("user-scalable=no")!==-1||document.documentElement.scrollWidth<=window.outerWidth)))||("none"===t.style.touchAction||"manipulation"===t.style.touchAction))},t.attach=function(e,n){return new t(e,n)},"function"==typeof define&&"object"==typeof define.amd&&define.amd?define(function(){return t}):"undefined"!=typeof o&&o.exports?(o.exports=t.attach,o.exports.FastClick=t):window.FastClick=t}.call(this),function(){i=o.exports.FastClick,t.startup(function(){i.attach(document.body)})}.call(this),"undefined"==typeof Package&&(Package={}),function(t,e){for(var n in e)n in t||(t[n]=e[n])}(Package.fastclick={},{FastClick:i})}();
!function(){var a=Package.meteor.Meteor,e=Package.meteor.global,o=Package.meteor.meteorEnv,l=Package["templating-runtime"].Template,n=Package.jquery.$,t=Package.jquery.jQuery,c=Package.blaze.Blaze,i=Package.blaze.UI,d=Package.blaze.Handlebars,r=Package.spacebars.Spacebars,u=Package.htmljs.HTML,m;(function(){var a=null;m={allowMultiple:!1,show:function(e,o,n){if(null==a||this.allowMultiple){var t=document.body,i=c.renderWithData(l[e],o,t),d=i._domrange,r=d.$(".modal");r.on("shown.bs.modal",function(a){r.find("[autofocus]").focus()}),r.on("hidden.bs.modal",function(e){c.remove(i),a=null}),a=r,r.modal(n?n:{})}},hide:function(e){e instanceof c.TemplateInstance?e.$(".modal").modal("hide"):null!=a&&a.modal("hide")}}}).call(this),"undefined"==typeof Package&&(Package={}),function(a,e){for(var o in e)o in a||(a[o]=e[o])}(Package["peppelg:bootstrap-3-modal"]={},{Modal:m})}();
!function(){"undefined"==typeof Package&&(Package={}),Package["hot-code-push"]={}}();
Mongo=Package.mongo.Mongo,ReactiveVar=Package["reactive-var"].ReactiveVar,$=Package.jquery.$,jQuery=Package.jquery.jQuery,Tracker=Package.tracker.Tracker,Deps=Package.tracker.Deps,cornerstone=Package["ohif:cornerstone"].cornerstone,cornerstoneMath=Package["ohif:cornerstone"].cornerstoneMath,cornerstoneTools=Package["ohif:cornerstone"].cornerstoneTools,cornerstoneWADOImageLoader=Package["ohif:cornerstone"].cornerstoneWADOImageLoader,dicomParser=Package["ohif:cornerstone"].dicomParser,resizeViewportElements=Package["ohif:viewerbase"].resizeViewportElements,handleResize=Package["ohif:viewerbase"].handleResize,enableHotkeys=Package["ohif:viewerbase"].enableHotkeys,enablePrefetchOnElement=Package["ohif:viewerbase"].enablePrefetchOnElement,displayReferenceLines=Package["ohif:viewerbase"].displayReferenceLines,setActiveViewport=Package["ohif:viewerbase"].setActiveViewport,createStacks=Package["ohif:viewerbase"].createStacks,getImageId=Package["ohif:viewerbase"].getImageId,getWADORSImageId=Package["ohif:viewerbase"].getWADORSImageId,metaDataProvider=Package["ohif:viewerbase"].metaDataProvider,sortStudy=Package["ohif:viewerbase"].sortStudy,updateOrientationMarkers=Package["ohif:viewerbase"].updateOrientationMarkers,setFocusToActiveViewport=Package["ohif:viewerbase"].setFocusToActiveViewport,updateAllViewports=Package["ohif:viewerbase"].updateAllViewports,queryStudies=Package["ohif:viewerbase"].queryStudies,getNumberOfFilesInStudy=Package["ohif:viewerbase"].getNumberOfFilesInStudy,importStudies=Package["ohif:viewerbase"].importStudies,getActiveViewportElement=Package["ohif:viewerbase"].getActiveViewportElement,getInstanceClassDefaultViewport=Package["ohif:viewerbase"].getInstanceClassDefaultViewport,showConfirmDialog=Package["ohif:viewerbase"].showConfirmDialog,applyWLPreset=Package["ohif:viewerbase"].applyWLPreset,toggleDialog=Package["ohif:viewerbase"].toggleDialog,isImage=Package["ohif:viewerbase"].isImage,sopClassDictionary=Package["ohif:viewerbase"].sopClassDictionary,addMetaData=Package["ohif:viewerbase"].addMetaData,hasMultipleFrames=Package["ohif:viewerbase"].hasMultipleFrames,toolManager=Package["ohif:viewerbase"].toolManager,LayoutManager=Package["ohif:viewerbase"].LayoutManager,ViewerStudies=Package["ohif:viewerbase"].ViewerStudies,formatPN=Package["ohif:viewerbase"].formatPN,isTouchDevice=Package["ohif:viewerbase"].isTouchDevice,toggleCineDialog=Package["ohif:viewerbase"].toggleCineDialog,toggleCinePlay=Package["ohif:viewerbase"].toggleCinePlay,clearTools=Package["ohif:viewerbase"].clearTools,resetViewport=Package["ohif:viewerbase"].resetViewport,invert=Package["ohif:viewerbase"].invert,flipV=Package["ohif:viewerbase"].flipV,flipH=Package["ohif:viewerbase"].flipH,rotateR=Package["ohif:viewerbase"].rotateR,rotateL=Package["ohif:viewerbase"].rotateL,Servers=Package["ohif:study-list"].Servers,CurrentServer=Package["ohif:study-list"].CurrentServer,getCurrentServer=Package["ohif:study-list"].getCurrentServer,getStudyMetadata=Package["ohif:study-list"].getStudyMetadata,openNewTab=Package["ohif:study-list"].openNewTab,switchToTab=Package["ohif:study-list"].switchToTab,StudyList=Package["ohif:study-list"].StudyList,ViewerData=Package["ohif:study-list"].ViewerData,StudyListStudies=Package["ohif:study-list"].StudyListStudies,StudyListSelectedStudies=Package["ohif:study-list"].StudyListSelectedStudies,HP=Package["ohif:hanging-protocols"].HP,HangingProtocols=Package["ohif:hanging-protocols"].HangingProtocols,MatchedProtocols=Package["ohif:hanging-protocols"].MatchedProtocols,SimpleSchema=Package["aldeed:simple-schema"].SimpleSchema,MongoObject=Package["aldeed:simple-schema"].MongoObject,Router=Package["clinical:router"].Router,RouteController=Package["clinical:router"].RouteController,Session=Package.session.Session,loglevel=Package["practicalmeteor:loglevel"].loglevel,ObjectLogger=Package["practicalmeteor:loglevel"].ObjectLogger,ReactiveDict=Package["reactive-dict"].ReactiveDict,moment=Package["mrt:moment"].moment,FastClick=Package.fastclick.FastClick,Modal=Package["peppelg:bootstrap-3-modal"].Modal,Random=Package.random.Random,Meteor=Package.meteor.Meteor,global=Package.meteor.global,meteorEnv=Package.meteor.meteorEnv,WebApp=Package.webapp.WebApp,_=Package.underscore._,DDP=Package["ddp-client"].DDP,LaunchScreen=Package["launch-screen"].LaunchScreen,Blaze=Package.ui.Blaze,UI=Package.ui.UI,Handlebars=Package.ui.Handlebars,Spacebars=Package.spacebars.Spacebars,Template=Package["templating-runtime"].Template,meteorInstall=Package.modules.meteorInstall,Buffer=Package.modules.Buffer,process=Package.modules.process,Symbol=Package["ecmascript-runtime"].Symbol,Map=Package["ecmascript-runtime"].Map,Set=Package["ecmascript-runtime"].Set,meteorBabelHelpers=Package["babel-runtime"].meteorBabelHelpers,Promise=Package.promise.Promise,Iron=Package["iron:core"].Iron,Autoupdate=Package.autoupdate.Autoupdate,Reload=Package.reload.Reload,HTML=Package.htmljs.HTML;
var require=meteorInstall({client:{components:{flexboxLayout:{"template.flexboxLayout.js":function(){Template.__checkName("flexboxLayout"),Template.flexboxLayout=new Template("Template.flexboxLayout",function(){var e=this;return HTML.DIV({class:"viewerSection"},"\n ",HTML.DIV({class:function(){return["sidebarMenu sidebar-left ",Blaze.If(function(){return Spacebars.call(e.lookup("leftSidebarOpen"))},function(){return"sidebar-open"})]}},"\n ",Blaze._TemplateWith(function(){return Spacebars.dataMustache(e.lookup("clone"),e.lookup("."))},function(){return Spacebars.include(e.lookupTemplate("studyBrowser"))}),"\n "),"\n ",HTML.DIV({class:function(){return["mainContent ",Blaze.If(function(){return Spacebars.call(e.lookup("leftSidebarOpen"))},function(){return"sidebar-left-open"})]}},"\n ",Blaze._TemplateWith(function(){return Spacebars.dataMustache(e.lookup("clone"),e.lookup("."))},function(){return Spacebars.include(e.lookupTemplate("standaloneViewerMain"))}),"\n "),"\n ")})},"flexboxLayout.js":function(){Template.flexboxLayout.events({"transitionend .sidebarMenu":function(){function e(e){e.target.classList.contains("sidebarMenu")&&handleResize()}return e}()}),Template.flexboxLayout.helpers({leftSidebarOpen:function(){function e(){return Template.instance().data.state.get("leftSidebar")}return e}()})}},standaloneViewer:{"template.standaloneViewer.js":function(){Template.__checkName("standaloneViewer"),Template.standaloneViewer=new Template("Template.standaloneViewer",function(){var e=this;return[HTML.DIV({class:"topBar noselect"},"\n ",HTML.DIV({class:"clearfix"},"\n ",HTML.A({target:"_blank",class:"brandSection pull-left",href:"http://ohif.org"},"\n ",HTML.SVG({class:"logoImage"},"\n ",HTML.USE({"xlink:href":"/packages/ohif_viewerbase/assets/icons.svg#icon-ohif-logo"}),"\n "),"\n ",HTML.Raw('<div class="logoText">\n Open Health Imaging Foundation\n </div>'),"\n "),"\n "),"\n "),"\n ",Spacebars.include(e.lookupTemplate("viewer"))]})},"standaloneViewer.js":function(){Template.standaloneViewer.onCreated(function(){ViewerData=Session.get("ViewerData")||{}})}},standaloneViewerMain:{"template.standaloneViewerMain.js":function(){Template.__checkName("standaloneViewerMain"),Template.standaloneViewerMain=new Template("Template.standaloneViewerMain",function(){var e=this;return HTML.Raw('<div class="viewerMain">\n <div id="layoutManagerTarget">\n </div>\n </div>')})},"standaloneViewerMain.js":["meteor/ohif:core",function(e,t,a){var n;a.import("meteor/ohif:core",{OHIF:function(e){n=e}}),Template.standaloneViewerMain.onCreated(function(){Meteor.defer(function(){$(window).on("resize",handleResize)}),n.viewer.updateImageSynchronizer=new cornerstoneTools.Synchronizer("CornerstoneNewImage",cornerstoneTools.updateImageSynchronizer)}),Template.standaloneViewerMain.onRendered(function(){var e=Template.instance(),t=e.data.studies,a=e.$("#layoutManagerTarget").get(0);window.layoutManager=new LayoutManager(a,t),window.layoutManager.updateViewports(),enableHotkeys()}),Template.standaloneViewerMain.onDestroyed(function(){$(window).off("resize",handleResize),n.viewer.updateImageSynchronizer.destroy(),delete window.layoutManager})}]},toolbarSection:{"template.toolbarSection.js":function(){Template.__checkName("toolbarSection"),Template.toolbarSection=new Template("Template.toolbarSection",function(){var e=this;return HTML.DIV({class:"toolbarSection noselect p-x-2"},"\n ",HTML.DIV({class:"clearfix"},"\n ",HTML.DIV({class:"pull-left m-t-1"},"\n ",Blaze._TemplateWith(function(){return Spacebars.call(e.lookup("leftSidebarToggleButtonData"))},function(){return Spacebars.include(e.lookupTemplate("roundedButtonGroup"))}),"\n "),"\n ",Blaze._TemplateWith(function(){return{toolbarButtons:Spacebars.call(e.lookup("toolbarButtons")),extraToolbarButtons:Spacebars.call(e.lookup("extraToolbarButtons"))}},function(){return Spacebars.include(e.lookupTemplate("toolbarSectionTools"))}),"\n "),"\n ")})},"toolbarSection.js":["meteor/ohif:core",function(e,t,a){var n;a.import("meteor/ohif:core",{OHIF:function(e){n=e}}),Template.toolbarSection.helpers({leftSidebarToggleButtonData:function(){function e(){var e=Template.instance();return{toggleable:!0,key:"leftSidebar",value:e.data.state,options:[{value:"studies",svgLink:"/packages/ohif_viewerbase/assets/icons.svg#icon-studies",svgWidth:15,svgHeight:13,bottomLabel:"Series"}]}}return e}(),toolbarButtons:function(){function e(){var e=[];return e.push({id:"zoom",title:"Zoom",classes:"imageViewerTool",svgLink:"/packages/ohif_viewerbase/assets/icons.svg#icon-tools-zoom"}),e.push({id:"wwwc",title:"Levels",classes:"imageViewerTool",svgLink:"/packages/ohif_viewerbase/assets/icons.svg#icon-tools-levels"}),e.push({id:"pan",title:"Pan",classes:"imageViewerTool",svgLink:"/packages/ohif_viewerbase/assets/icons.svg#icon-tools-pan"}),e.push({id:"length",title:"Length",classes:"imageViewerTool toolbarSectionButton",svgLink:"/packages/ohif_viewerbase/assets/icons.svg#icon-tools-measure-temp"}),e.push({id:"annotate",title:"Annotate",classes:"imageViewerTool",svgLink:"/packages/ohif_viewerbase/assets/icons.svg#icon-tools-measure-non-target"}),e.push({id:"angle",title:"Angle",classes:"imageViewerTool",iconClasses:"fa fa-angle-left"}),e.push({id:"resetViewport",title:"Reset",classes:"imageViewerCommand",iconClasses:"fa fa-undo"}),e.push({id:"toggleCinePlay",title:"Toggle CINE Play",classes:"imageViewerCommand",buttonTemplateName:"playClipButton"}),e.push({id:"toggleCineDialog",title:"CINE",classes:"imageViewerCommand",iconClasses:"fa fa-youtube-play"}),e.push({id:"layout",title:"Layout",iconClasses:"fa fa-th-large",buttonTemplateName:"layoutButton"}),e}return e}(),extraToolbarButtons:function(){function e(){var e=[];return e.push({id:"stackScroll",title:"Stack Scroll",classes:"imageViewerTool",iconClasses:"fa fa-bars"}),e.push({id:"magnify",title:"Magnify",classes:"imageViewerTool toolbarSectionButton",iconClasses:"fa fa-circle"}),e.push({id:"wwwcRegion",title:"ROI Window",classes:"imageViewerTool",iconClasses:"fa fa-square"}),e.push({id:"dragProbe",title:"Probe",classes:"imageViewerTool",iconClasses:"fa fa-dot-circle-o"}),e.push({id:"ellipticalRoi",title:"Ellipse",classes:"imageViewerTool",iconClasses:"fa fa-circle-o"}),e.push({id:"rectangleRoi",title:"Rectangle",classes:"imageViewerTool",iconClasses:"fa fa-square-o"}),e.push({id:"invert",title:"Invert",classes:"imageViewerCommand",iconClasses:"fa fa-adjust"}),e.push({id:"clearTools",title:"Clear",classes:"imageViewerCommand",iconClasses:"fa fa-trash"}),e}return e}(),hangingProtocolButtons:function(){function e(){var e=[];return e.push({id:"previousPresentationGroup",title:"Prev. Stage",iconClasses:"fa fa-step-backward",buttonTemplateName:"previousPresentationGroupButton"}),e.push({id:"nextPresentationGroup",title:"Next Stage",iconClasses:"fa fa-step-forward",buttonTemplateName:"nextPresentationGroupButton"}),e}return e}()}),Template.toolbarSection.onRendered(function(){var e=Template.instance();e.$("#layout").dropdown();var t=toolManager.getToolDefaultStates(),a=t.disabledToolButtons,n=$("#toolbar").find("button");if(a&&a.length>0)for(var o=0;o<n.length;o++){var i=n[o];$(i).prop("disabled",!1);var r=a.indexOf($(i).attr("id"));r!==-1&&$(i).prop("disabled",!0)}})}]},viewer:{"template.viewer.js":function(){Template.__checkName("viewer"),Template.viewer=new Template("Template.viewer",function(){var e=this;return Blaze.If(function(){return Spacebars.call(e.templateInstance().subscriptionsReady())},function(){return["\n ",HTML.DIV({class:"viewerDialogs"},"\n ",Spacebars.include(e.lookupTemplate("cineDialog")),"\n ",Spacebars.include(e.lookupTemplate("layoutChooser")),"\n ",Spacebars.include(e.lookupTemplate("annotationDialogs")),"\n "),"\n ",HTML.DIV({id:"viewer"},"\n ",Blaze._TemplateWith(function(){return Spacebars.dataMustache(e.lookup("clone"),e.lookup("."))},function(){return Spacebars.include(e.lookupTemplate("toolbarSection"))}),"\n ",Blaze._TemplateWith(function(){return Spacebars.dataMustache(e.lookup("clone"),e.lookup("."))},function(){return Spacebars.include(e.lookupTemplate("flexboxLayout"))}),"\n "),"\n "]},function(){return["\n ",Spacebars.include(e.lookupTemplate("loadingText")),"\n "]})})},"viewer.js":["meteor/ohif:core",function(e,t,a){var n;a.import("meteor/ohif:core",{OHIF:function(e){n=e}}),n.viewer=n.viewer||{},n.viewer.functionList={toggleCineDialog:toggleCineDialog,toggleCinePlay:toggleCinePlay,clearTools:clearTools,resetViewport:resetViewport,invert:invert},Session.set("activeContentId","standalone"),Session.setDefault("activeViewport",!1),Session.setDefault("leftSidebar",!1),Session.setDefault("rightSidebar",!1),Template.viewer.onCreated(function(){var e=Template.instance();e.data.state=new ReactiveDict,e.data.state.set("leftSidebar",Session.get("leftSidebar")),e.data.state.set("rightSidebar",Session.get("rightSidebar"));var t=e.data.contentId;ViewerData[t]&&ViewerData[t].loadedSeriesData?(n.log.info("Reloading previous loadedSeriesData"),n.viewer.loadedSeriesData=ViewerData[t].loadedSeriesData):(n.log.info("Setting default ViewerData"),n.viewer.loadedSeriesData={},ViewerData[t]={},ViewerData[t].loadedSeriesData=n.viewer.loadedSeriesData,ViewerData[t].viewportColumns=1,ViewerData[t].viewportRows=1,ViewerData[t].activeViewport=0),Session.set("activeViewport",ViewerData[t].activeViewport||0),ViewerStudies.remove({}),ViewerData[t].studyInstanceUids=[],e.data.studies.forEach(function(e){e.selected=!0,e.displaySets=createStacks(e),ViewerStudies.insert(e),ViewerData[t].studyInstanceUids.push(e.studyInstanceUid)}),Session.set("ViewerData",ViewerData)}),Template.viewer.events({"click .js-toggle-studies":function(){function e(){var e=Template.instance(),t=e.data.state.get("leftSidebar");e.data.state.set("leftSidebar",!t)}return e}()})}]}},"cornerstoneWebImageLoader.js":function(){cornerstoneWebImageLoader={},function(e,t,a){"use strict";function n(e,a){function n(){for(var t=o(),a=t.data,n=e.naturalHeight*e.naturalWidth,i=new Uint8Array(4*n),r=0,s=0,l=0;l<n;l++)i[s++]=a[r++],i[s++]=a[r++],i[s++]=a[r++],i[s++]=255,r++;return i}function o(){var t;return s!==a?(r.height=e.naturalHeight,r.width=e.naturalWidth,t=r.getContext("2d"),t.drawImage(e,0,0),s=a):t=r.getContext("2d"),t.getImageData(0,0,e.naturalWidth,e.naturalHeight)}function i(){if(s===a)return r;r.height=e.naturalHeight,r.width=e.naturalWidth;var t=r.getContext("2d");return t.drawImage(e,0,0),s=a,r}function l(){return e}var c=e.naturalHeight,u=e.naturalWidth;return{imageId:a,minPixelValue:0,maxPixelValue:255,slope:1,intercept:0,windowCenter:128,windowWidth:255,render:t.renderColorImage,getPixelData:n,getImageData:o,getCanvas:i,getImage:l,rows:c,columns:u,height:c,width:u,color:!0,columnPixelSpacing:void 0,rowPixelSpacing:void 0,invert:!1,sizeInBytes:c*u*4}}function o(a){var o=e.Deferred(),i=new Image,r=new XMLHttpRequest;return r.open("GET",a,!0),r.responseType="arraybuffer",l.beforeSend(r),r.onload=function(){var e=new Uint8Array(this.response),t=new Blob([e],{type:"image/jpeg"}),r=window.URL||window.webkitURL,s=r.createObjectURL(t);i.src=s,i.onload=function(){var e=n(i,a);o.resolve(e),r.revokeObjectURL(s)},i.onerror=function(){r.revokeObjectURL(s),o.reject()}},r.onprogress=function(n){if(n.lengthComputable){var o=n.loaded,i=n.total,r=Math.round(o/i*100);e(t).trigger("CornerstoneImageLoadProgress",{imageId:a,loaded:o,total:i,percentComplete:r})}},r.send(),o.promise()}function i(e){l=e}var r=document.createElement("canvas"),s="",l={beforeSend:function(){function e(e){}return e}()};return t.registerImageLoader("http",o),t.registerImageLoader("https",o),a.configure=i,t}($,cornerstone,cornerstoneWebImageLoader)},"log.js":function(){log=loglevel.createAppLogger("StandaloneViewer",defaultLevel="info")}},"routes.js":function(){Meteor.isClient&&(console.log("Disconnecting from the Meteor server"),Meteor.disconnect(),Router.configure({loadingTemplate:"loading"}),Router.onBeforeAction("loading"),Router.route("/:id",{action:function(){function e(){var e=this.params.id;e||(e="testId");var t=new XMLHttpRequest;t.addEventListener("error",function(){console.warn("An error occurred while retrieving the JSON data")});var a=this;t.addEventListener("load",function(){if(!this.responseText)return void console.warn("Response was undefined");console.log(JSON.stringify(this.responseText,null,2));var e=JSON.parse(this.responseText),t={studies:e.studies,contentId:"standalone"};a.render("standaloneViewer",{data:function(){function e(){return t}return e}()})}),console.log("Sending Request to: /api/"+e),t.open("GET","/api/"+e),t.send()}return e}()})),Meteor.isServer&&Router.route("/api/:id",{where:"server"}).get(function(){var e=this.params.id,t=RequestStudies.findOne({transactionId:e});this.response.setHeader("Content-Type","application/json"),this.response.setHeader("Access-Control-Allow-Origin","*"),this.response.setHeader("Access-Control-Allow-Headers","Origin, X-Requested-With, Content-Type, Accept"),t?this.response.write(JSON.stringify(t)):this.response.write("No Data Found"),this.response.end()})}},{extensions:[".js",".json",".html",".styl"]});require("./client/components/flexboxLayout/template.flexboxLayout.js"),require("./client/components/standaloneViewer/template.standaloneViewer.js"),require("./client/components/standaloneViewerMain/template.standaloneViewerMain.js"),require("./client/components/toolbarSection/template.toolbarSection.js"),require("./client/components/viewer/template.viewer.js"),require("./client/components/flexboxLayout/flexboxLayout.js"),require("./client/components/standaloneViewer/standaloneViewer.js"),require("./client/components/standaloneViewerMain/standaloneViewerMain.js"),require("./client/components/toolbarSection/toolbarSection.js"),require("./client/components/viewer/viewer.js"),require("./client/cornerstoneWebImageLoader.js"),require("./client/log.js"),require("./routes.js");
!function(){var e=Package.meteor.Meteor,r=Package.meteor.global,a=Package.meteor.meteorEnv,t=Package.check.check,n=Package.check.Match,i=Package.modules.meteorInstall,o=Package.modules.Buffer,c=Package.modules.process,l=Package["ecmascript-runtime"].Symbol,s=Package["ecmascript-runtime"].Map,u=Package["ecmascript-runtime"].Set,m=Package["babel-runtime"].meteorBabelHelpers,d=Package.promise.Promise,g,k=i({node_modules:{meteor:{"mdg:validation-error":{"validation-error.js":["babel-runtime/helpers/classCallCheck","babel-runtime/helpers/possibleConstructorReturn","babel-runtime/helpers/inherits",function(r,a,i){var o;i.import("babel-runtime/helpers/classCallCheck",{default:function(e){o=e}});var c;i.import("babel-runtime/helpers/possibleConstructorReturn",{default:function(e){c=e}});var l;i.import("babel-runtime/helpers/inherits",{default:function(e){l=e}});var s=[n.ObjectIncluding({name:String,type:String})];g=function(r){function a(e){var n,i,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.DEFAULT_MESSAGE;return o(this,a),t(e,s),t(l,String),i=n=c(this,r.call(this,g.ERROR_CODE,l,e)),c(n,i)}return l(a,r),a.is=function(){function r(r){return r instanceof e.Error&&r.error===g.ERROR_CODE}return r}(),a}(e.Error),g.ERROR_CODE="validation-error",g.DEFAULT_MESSAGE="Validation failed"}]}}}},{extensions:[".js",".json"]});k("./node_modules/meteor/mdg:validation-error/validation-error.js"),"undefined"==typeof Package&&(Package={}),function(e,r){for(var a in r)a in e||(e[a]=r[a])}(Package["mdg:validation-error"]={},{ValidationError:g})}();
!function(){var e=Package.meteor.Meteor,o=Package.meteor.global,n=Package.meteor.meteorEnv,i=Package["accounts-base"].Accounts,r=Package.mongo.Mongo,t;(function(){"undefined"==typeof t&&(t={}),t.configurations=new r.Collection("meteor_accounts_loginServiceConfiguration",{_preventAutopublish:!0,connection:e.isClient?i.connection:e.connection}),t.ConfigError=function(o){e.isClient&&!i.loginServicesConfigured()?this.message="Login service configuration not yet loaded":o?this.message="Service "+o+" not configured":this.message="Service not configured"},t.ConfigError.prototype=new Error,t.ConfigError.prototype.name="ServiceConfiguration.ConfigError"}).call(this),"undefined"==typeof Package&&(Package={}),function(e,o){for(var n in o)n in e||(e[n]=o[n])}(Package["service-configuration"]={},{ServiceConfiguration:t})}();