text: /*! mithril.animate 28-10-2014 */
  !function(a){a.m=a.m||{},a.m.p=function(a){var b,c=this,d=[],e=!1,f=function(a,b){var c;for(c=0;c<d.length;c+=1)d[c].func.apply(d[c].context,[a,b])},g=function(){if(arguments.length&&(a=arguments[0],b!==a)){var c=b;b=a,f(a,c)}return a};return g.push=function(b){a.push&&"undefined"!=typeof a.length&&a.push(b),g(a)},g.subscribe=function(a,b){return d.push({func:a,context:b||c}),g},g.delay=function(a){return e=!!a,g},g.subscribe(function(){return e||(m.startComputation(),m.endComputation()),g}),g},a.m.e=function(a,b,c){for(var d in b)m.bindings[d]&&(m.bindings[d].func.apply(b,[b[d]]),m.bindings[d].removeable&&delete b[d]);return m(a,b,c)},a.m.addBinding=function(b,c,d){a.m.bindings=a.m.bindings||{},a.m.bindings[b]={func:c,removeable:d}},a.m.unwrap=function(a){return"function"==typeof a?a():a},a.m.addBinding("value",function(a){"function"==typeof a?(this.value=a(),this.onchange=m.withAttr("value",a)):this.value=a}),a.m.addBinding("checked",function(a){"function"==typeof a?(this.checked=a(),this.onchange=m.withAttr("checked",a)):this.checked=a});for(var b=["Input","Keyup","Keypress"],c=0;c<b.length;c+=1){var d=b[c];!function(b,c){a.m.addBinding(b,function(a){"function"==typeof a?(this.value=a(),this[c]=m.withAttr("value",a)):this.value=a},!0)}("value"+d,"on"+d.toLowerCase())}}(window),function(a){a.m=a.m||{},a.m.addBinding("hide",function(b){this.style={display:a.m.unwrap(b)?"none":""}},!0),a.m.addBinding("toggle",function(a){this.onclick=function(){var b=a();a(!b)}},!0),a.m.addBinding("hover",function(a){this.onmouseover=a[0],a[1]&&(this.onmouseout=a[1])},!0)}(window),function(a){var b=["Moz","Webkit","Khtml","O","ms"],c=["TransitionProperty","TransitionTimingFunction","TransitionDelay","TransitionDuration","TransitionEnd"],d=["rotate","rotatex","rotatey","scale","skew","translate","translatex","translatey","matrix"],e=400,f=function(a){window.console&&console.error&&console.error(a)},g=function(a){return a.charAt(0).toUpperCase()+a.substr(1)},h=document.createElement("div"),j=function(a){var c;if(a in h.style)return a;if("@keyframes"==a){for(var d=0;d<b.length;d+=1)if(c=b[d]+"Transition",c in h.style)return"@-"+b[d].toLowerCase()+"-keyframes";return a}for(var d=0;d<b.length;d+=1)if(c=b[d]+g(a),c in h.style)return c;return a},k=function(){var a=document.body||document.documentElement,c=a.style,d="transition";if("string"==typeof c[d])return!0;d=d.charAt(0).toUpperCase()+d.substr(1);for(var e=0;e<b.length;e++)if("string"==typeof c[b[e]+d])return!0;return!1},l=function(a){var b,c=0;return a+="",a=a.toLowerCase(),-1!==a.indexOf("ms")?(b=a.split("ms"),c=Number(b[0])):-1!==a.indexOf("s")?(b=a.split("s"),c=1e3*Number(b[0])):c=Number(a),Math.round(c)},m=function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a.style[j(c)]=b[c])},n=function(a){var b,f,h,i,k,l={TransitionTimingFunction:"ease",TransitionDuration:e+"ms",TransitionProperty:"all"};for(b in a)if(a.hasOwnProperty(b)){for(h="Transition"+g(b),i=b.toLowerCase(),k=!1,f=0;f<c.length;f+=1)if(h==c[f]){l[c[f]]=a[b],k=!0;break}for(f=0;f<d.length;f+=1)if(i==d[f]){l[j("transform")]=l[j("transform")]||"",l[j("transform")]+=" "+b+"("+a[b]+")",k=!0;break}k||(l[b]=a[b])}return l},o=function(a){var b,c,e={},f=function(a,b,c){var e,f=b.toLowerCase(),g=!1;for(e=0;e<d.length;e+=1)if(f==d[e]){a[j("transform")]=a[j("transform")]||"",a[j("transform")]+=" "+b+"("+c+")",g=!0;break}g?delete a[b]:a[b]=c};for(b in a)if(a.hasOwnProperty(b))if(-1!==b.indexOf("%")){for(c in a[b])a[b].hasOwnProperty(c)&&f(a[b],c,a[b][c]);e[b]=a[b]}else f(e,b,a[b]);return e},p=function(a){return"ani"+JSON.stringify(a).split(/[{},%":]/).join("")},q={},r=k();a.animateProperties=function(a,b,c){a.style=a.style||{};var d,f=n(b);f.TransitionDuration="undefined"!=typeof f.TransitionDuration?l(f.TransitionDuration)+"ms":e+"ms",d=l(f.TransitionDuration)||0,r?m(a,f):"undefined"!=typeof $&&$.fn&&$.fn.animate&&$(a).animate(f,d),c&&setTimeout(c,d+1)},a.trigger=function(b,c,d,e){d=d||{};var g=q[b];return g?function(b){var f=g.fn(function(){return"function"==typeof c?c():c});for(i in d)d.hasOwnProperty(i)&&(f[i]=d[i]);a.animateProperties(b.target,f,e)}:f("Animation "+b+" not found.")},a.addAnimation=function(b,c,d){return d=d||{},q[b]?f("Animation "+b+" already defined."):"function"!=typeof c?f("Animation "+b+" is being added as a transition based animation, and must use a function."):(d.duration=d.duration||e,q[b]={options:d,fn:c},void a.addBinding(b,function(d){a.bindAnimation(b,this,c,d)},!0))},a.addKFAnimation=function(b,c,d){if(d=d||{},q[b])return f("Animation "+b+" already defined.");var g=function(a){var c,d=p(a),e=document.getElementById(d);if(!e){q[b].id=d,a=o(a),c=j("@keyframes")+" "+d+" "+JSON.stringify(a).split('"').join("").split("},").join("}\n").split(",").join(";").split("%:").join("% ");var f=document.createElement("style");f.setAttribute("id",d),f.id=d,f.textContent=c,document.head.appendChild(f)}q[b].isInitialised=!0,q[b].options.animateImmediately=!0};d.duration=d.duration||e,d.animateImmediately=d.animateImmediately||!1,q[b]={init:g,options:d,arg:c},a.addBinding(b,function(d){a.bindAnimation(b,this,c,d)},!0)},a.animateKF=function(a,b,c,d){c=c||{};var h,i=q[a],k={};if(!i)return f("Animation "+a+" not found.");i.options=i.options||{};for(h in c)c.hasOwnProperty(h)&&(i.options[h]=c[h]);!i.isInitialised&&i.init&&i.init(i.arg);for(h in i.options)i.options.hasOwnProperty(h)&&(k[j("animation"+g(h))]=i.options[h]);k[j("animationName")]=i.id,k[j("animationDuration")]=(k[j("animationDuration")]?k[j("animationDuration")]:e)+"ms",k[j("animationDelay")]=k[j("animationDelay")]?k[j("animationDuration")]+"ms":void 0,k[j("animationFillMode")]=k[j("animationFillMode")]||"forwards",b.style=b.style||{};var l=function(){b.removeEventListener("animationend",l,!1),d&&d(b)};b.style[j("animation")]="",b.style[j("animationName")]="",requestAnimationFrame(function(){requestAnimationFrame(function(){for(h in k)k.hasOwnProperty(h)&&(b.style[h]=k[h]);b.addEventListener("animationend",l,!1)})})},a.triggerKF=function(b,c){return function(){a.animateKF(b,this,c)}},a.bindAnimation=function(b,c,d,e){var g=q[b];if(!g&&!g.name)return f("Animation "+b+" not found.");if(g.fn)a.animateProperties(c,g.fn(e));else{var h=c.config;c.config=function(c,f){!g.isInitialised&&g.init&&g.init(d),e()&&f&&a.animateKF(b,c,d),h&&h.apply(c,arguments)}}}}(window.m||{}),function(a){var b,c=["scale","scalex","scaley","translate","translatex","translatey","matrix","backgroundColor","backgroundPosition","borderBottomColor","borderBottomWidth","borderLeftColor","borderLeftWidth","borderRightColor","borderRightWidth","borderSpacing","borderTopColor","borderTopWidth","bottom","clip","color","fontSize","fontWeight","height","left","letterSpacing","lineHeight","marginBottom","marginLeft","marginRight","marginTop","maxHeight","maxWidth","minHeight","minWidth","opacity","outlineColor","outlineWidth","paddingBottom","paddingLeft","paddingRight","paddingTop","right","textIndent","textShadow","top","verticalAlign","visibility","width","wordSpacing","zIndex"],d=["rotate","rotatex","rotatey","skewx","skewy"];for(b=0;b<c.length;b+=1)!function(b){a.addAnimation(b,function(a){var c={};return c[b]=a(),c})}(c[b]);for(b=0;b<d.length;b+=1)!function(b){a.addAnimation(b,function(a){var c={},d=a();return c[b]=isNaN(d)?d:d+"deg",c})}(d[b]);a.addAnimation("skew",function(a){var b=a();return{skew:[b[0]+(isNaN(b[0])?"":"deg"),b[1]+(isNaN(b[1])?"":"deg")]}})}(window.m);