/**
* Combined, minified redistributable GNU ease.js file.
*
* Copyright (C) 2010, 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc.
* @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-v3-or-Later
*/
'use strict';var easejs={};
(function(G,q){var g={},k=function(c){c=("/"===c.substr(0,1)?c:q+"/"+c).replace(/([^\/]+\/\.\.\/|\.\/|^\/)/g,"");var k=g[c];if(void 0===k)throw"[ease.js] Undefined module: "+c;return k.exports};(function(c,k){function b(){if(!(this instanceof b))return new b;this.___$$id$$=e+f(1E8*a())}c.exports={};q="util/symbol";var a=Math.random,f=Math.floor,e=" "+String.fromCharCode(f(10*a())%31+1)+"$";b.prototype={toString:function(){return this.___$$id$$}};c.exports=b})(g["util/symbol/FallbackSymbol"]={},".");
(function(c,k){function b(){if(!(this instanceof b))return new b;this._alt={}}c.exports={};q="util";(0,eval)("var _the_global=this");b.expose=function(){return _the_global};b.prototype={provideAlt:function(a,b){if(void 0===_the_global[a]&&void 0===this._alt[a])return this._alt[a]=b(),this},get:function(a){return void 0!==this._alt[a]?this._alt[a]:_the_global[a]}};c.exports=b})(g["util/Global"]={},".");(function(c,g){c.exports={};q="util";var b=k("./symbol/FallbackSymbol"),a=k("./Global").expose();
c.exports=a.Symbol||b})(g["util/Symbol"]={},".");(function(c,k){var b=c.exports={};q=".";var a={"public":1,"protected":2,"private":4,"static":8,"abstract":16,"const":32,virtual:64,override:128,proxy:256,weak:512},f={amods:a["public"]|a["protected"]|a["private"],virtual:a["abstract"]|a.virtual};b.kvals=a;b.kmasks=f;b.parseKeywords=function(b){var c=b,l=[],h=0,r={};if(1!==(l=(""+b).split(/\s+/)).length)for(c=l.pop(),b=l.length;b--;){var w=l[b],A=a[w];if(!A)throw Error("Unexpected keyword for '"+c+"': "+
w);r[w]=!0;h|=A}!c.match(/^_[^_]/)||h&f.amods||(r["private"]=!0,h|=a["private"]);return{name:c,keywords:r,bitwords:h}}})(g.prop_parser={},".");(function(c,g){function b(a){throw a;}function a(a,b,c){for(var e=c.length;e--;)null===c[e].match(/^[a-z_][a-z0-9_]*$/i)&&a(SyntaxError("Member "+b+" contains invalid parameter '"+c[e]+"'"))}function f(){var a=function(a,b,c){a[b]=c};return l?function(a,b,c){Object.defineProperty(a,b,{value:c,enumerable:!1,writable:!1,configurable:!1})}:a}var e=c.exports={};
q=".";var d=k("./prop_parser").parseKeywords,l;a:{if("function"===typeof Object.defineProperty)try{Object.defineProperty({},"x",{});l=!0;break a}catch(h){}l=!1}e.Global=k("./util/Global");e.freeze="function"===typeof Object.freeze?Object.freeze:function(a){};e.definePropertyFallback=function(a){if(void 0===a)return!l;l=!a;e.defineSecureProp=f();return e};e.defineSecureProp=f();e.clone=function w(a,b){b=!!b;if(a instanceof Array){if(!b)return a.slice(0);for(var c=[],e=0,d=a.length;e"}:function(){return"#"}))}}var e=null,d=this;c.toString=a?function(){return a}:function(){return"(Class)"};return c};n.prototype.createAbstractCtor=function(a){var b=function(){if(!b[t].extending)throw Error("Abstract class "+(a||"(anonymous)")+" cannot be instantiated");
};b.toString=a?function(){return a}:function(){return"(AbstractClass)"};return b};n.prototype._attachPropInit=function(a,b,c,e,d){var m=this;p.defineSecureProp(a,"__initProps",function(e){e=!!e;var f=a.___$$parent$$,r=this[t].vis,f=f&&f.__initProps;"function"===typeof f&&f.call(this,!0);f=m._visFactory.createPropProxy(this,r,b["public"]);r=r[d]=m._visFactory.setup(f,b,c);e||p.defineSecureProp(r,"__inst",this)})};n.prototype.initStaticVisibilityObj=function(a){var b=this,c=function(){};c.prototype=
a;c=new c;a.___$$svis$$=c;c.$=function(){b._spropInternal=!0;var c=a.$.apply(a,arguments);b._spropInternal=!1;return c}};n.prototype.attachStatic=function(a,b,c,e){var d=b.methods,m=b.props,f=this;(b=c.___$$sinit$$)&&b(a,!0);e||(a.___$$sprops$$=m,p.defineSecureProp(a,"$",function(b,e){var d=!1,t=this.___$$sprops$$?this:a,r=t!==a,d=v.call(m["public"],b)&&"public";!d&&f._spropInternal&&(d=v.call(m["protected"],b)&&"protected"||!r&&v.call(m["private"],b)&&"private");if(!1===d)return(c.__cid&&c.$||n.ClassBase.$).apply(t,
arguments);d=m[d][b];if(1]"}:function(){return"[object Interface]"}}function h(a){u.defineSecureProp(a,
"isCompatible",function(b){return 0===r(a,b).length})}function r(a,b){var c=[];u.propParse(a.prototype,{method:function(a,d,e,f){"function"!==typeof b[a]?c.push([a,"missing"]):b[a].length