/**
* @preserve
* Non-compliant/use-them-at-your-own-risk polyfills for ES5:
* console.log, Event, CustomEvent,
* Location.origin, Location.toString,
* DOMTokenList.prototype {add, remove, item, contains, toggle (1 arg), length}
* requestAnimationFrame, cancelAnimationFrame,
* Object.setPrototypeOf
*/
function t(t,n,e){n=t[n]=t[n]||e;e===n&&(n.justPolyfill=!0)}function o(t){return t.prototype}function n(t,n){for(var e in t)o(p).hasOwnProperty.call(t,e)&&n(e,t[e])}function e(t,n,e){p.defineProperty(t,n,{get:e})}function i(t,n){for(var e,i=["moz","webkit","ms","o"],o=i.length;0<=--o;)if(e=t[n+i[o]])return e}function r(t){return[].join.call(t," ")}function u(t){if(!(t+="")||/\s/.test(t))throw Error('"'+t+'" is invalid');return t}function c(){return[].some.call(this,function(t,n){return!isNaN(n)})}function s(e,i){var o=this;n(c.call(o),function(t,n){e.call(i,n,+t,o)})}function a(){return p.keys(c.call(this))}var l,f,m,h,v,p,b,E,g,y;l=window,v=document,p=Object,b=Array,E=Element,g=Event,y=Location,t(l,"console",{log:function(){}}),"function"!=typeof g&&(l.Event=function(t,n){var e=document.createEvent("Event"),n=Object(n);return e.initEvent(t,n.bubbles,n.cancelable),e},l.Event.constructor.justPolyfill=!0),"function"!=typeof CustomEvent&&(l.CustomEvent=function(t,n){var e=document.createEvent("CustomEvent"),n=Object(n);return e.initCustomEvent(t,n.bubbles,n.cancelable,n.detail),e},l.CustomEvent.constructor.justPolyfill=!0),t(p,"setPrototypeOf",function(e,t){"__proto__"in e?e.__proto__=t:n(t,function(t,n){e[t]=n})}),"origin"in o(y)||e(o(y),"origin",function(){return this.protocol+"//"+this.host}),t(o(y),"toString",function(){return this.href}),f="DOMTokenList",m=function(t){var n=this;n.value=(t.getAttribute("class")||"").trim(),n.length=n.value?[].push.apply(n,n.value.split(/\s+/)):0,n.element=t,o(m).toString=function(){return r(this)},o(m)._values=o(m)._entries=c,o(m)._keys=a},y=v.createElement("a"),v="classList",t(l,f,m),v in y||e(o(E),v,function(){return new l[f](this)}),t(o(m),"add",function(){for(var t,n=arguments,e=0;e<n.length;e+=1)this.contains(t=u(n[e]))||(o(b).push.call(this,t),this.element.setAttribute("class",r(this)))}),t(o(m),"remove",function(){for(var e,i=this,t=arguments,n=t.length;0<=--n;)i.contains(e=u(t[n]))&&(s.call(i,function(t,n){t===e&&o(b).splice.call(i,n,1)}),i.element.setAttribute("class",r(i)))}),t(o(m),"item",function(t){return this[t]||null}),t(o(m),"contains",function(t){return!/\s/.test(t)&&(t=t,0<=(" "+r(this)+" ").indexOf(" "+t+" "))}),t(o(m),"toggle",function(t,n){return this.contains(t)&&!n?(this.remove(t),!1):(this.add(t),!0)}),t(l,"requestAnimationFrame",i(l,"RequestAnimationFrame")||(h=0,function(t){var n=+new Date,e=Math.max(0,16-n-h),i=setTimeout(function(){t(n+e)},e);return h=n+e,i})),t(l,"cancelAnimationFrame",i(l,"CancelAnimationFrame")||i(l,"CancelRequestAnimationFrame")||function(t){clearTimeout(t)});