/* Mithril v0.1.26 http://github.com/lhorie/mithril.js (c) Leo Horie License: MIT */ var m=function a(b,c){function d(a){C=a.document,D=a.location,F=a.cancelAnimationFrame||a.clearTimeout,E=a.requestAnimationFrame||a.setTimeout}function e(){var a,b=[].slice.call(arguments),c=!(null==b[1]||K.call(b[1])!=G||"tag"in b[1]||"subtree"in b[1]),d=c?b[1]:{},e="class"in d?"class":"className",f={tag:"div",attrs:{}},g=[];if(K.call(b[0])!=I)throw new Error("selector in m(selector, attrs, children) should be a string");for(;a=L.exec(b[0]);)if(""==a[1]&&a[2])f.tag=a[2];else if("#"==a[1])f.attrs.id=a[2];else if("."==a[1])g.push(a[2]);else if("["==a[3][0]){var h=M.exec(a[3]);f.attrs[h[1]]=h[3]||(h[2]?"":!0)}g.length>0&&(f.attrs[e]=g.join(" "));var i=c?b[2]:b[1];f.children=K.call(i)==H?i:b.slice(c?2:1);for(var j in d)f.attrs[j]=j==e?(f.attrs[j]||"")+" "+d[j]:d[j];return f}function f(a,b,d,e,i,k,l,m,n,o,p){if(null==i&&(i=""),"retain"===i.subtree)return k;var q=K.call(k),r=K.call(i);if(null==k||q!=r){if(null!=k)if(d&&d.nodes){var s=m-e,t=s+(r==H?i:k.nodes).length;h(d.nodes.slice(s,t),d.slice(s,t))}else k.nodes&&h(k.nodes,k);k=new i.constructor,k.tag&&(k={}),k.nodes=[]}if(r==H){for(var u=0;u\s*[^<]/g)||[]).length:K.call(T)==H?T.length:1,k[S++]=T)}if(!w){for(var u=0;u("key"in i.attrs?1:0)}if((i.tag!=k.tag||V.join()!=Object.keys(k.attrs).join()||i.attrs.id!=k.attrs.id)&&(k.nodes.length&&h(k.nodes),k.configContext&&typeof k.configContext.onunload==J&&k.configContext.onunload()),K.call(i.tag)!=I)return;var U,W=0===k.nodes.length;if(i.attrs.xmlns?o=i.attrs.xmlns:"svg"===i.tag?o="http://www.w3.org/2000/svg":"math"===i.tag&&(o="http://www.w3.org/1998/Math/MathML"),W?(U=i.attrs.is?o===c?C.createElement(i.tag,i.attrs.is):C.createElementNS(o,i.tag,i.attrs.is):o===c?C.createElement(i.tag):C.createElementNS(o,i.tag),k={tag:i.tag,attrs:V.length?g(U,i.tag,i.attrs,{},o):{},children:null!=i.children&&i.children.length>0?f(U,i.tag,c,c,i.children,k.children,!0,0,i.attrs.contenteditable?U:n,o,p):i.children,nodes:[U]},k.children&&!k.children.nodes&&(k.children.nodes=[]),"select"==i.tag&&i.attrs.value&&g(U,i.tag,{value:i.attrs.value},{},o),a.insertBefore(U,a.childNodes[m]||null)):(U=k.nodes[0],V.length&&g(U,i.tag,i.attrs,k.attrs,o),k.children=f(U,i.tag,c,c,i.children,k.children,!1,0,i.attrs.contenteditable?U:n,o,p),k.nodes.intact=!0,l===!0&&null!=U&&a.insertBefore(U,a.childNodes[m]||null)),typeof i.attrs.config==J){var X=k.configContext=k.configContext||{},Y=function(a,b){return function(){return a.attrs.config.apply(a,b)}};p.push(Y(i,[U,!W,X,k]))}}else if(typeof r!=J){var v;0===k.nodes.length?(i.$trusted?v=j(a,m,i):(v=[C.createTextNode(i)],a.nodeName.match(N)||a.insertBefore(v[0],a.childNodes[m]||null)),k="string number boolean".indexOf(typeof i)>-1?new i.constructor(i):i,k.nodes=v):k.valueOf()!==i.valueOf()||l===!0?(v=k.nodes,n&&n===C.activeElement||(i.$trusted?(h(v,k),v=j(a,m,i)):"textarea"===b?a.value=i:n?n.innerHTML=i:((1==v[0].nodeType||v.length>1)&&(h(k.nodes,k),v=[C.createTextNode(i)]),a.insertBefore(v[0],a.childNodes[m]||null),v[0].nodeValue=i)),k=new i.constructor(i),k.nodes=v):k.nodes.intact=!0}return k}function g(a,b,c,d,e){for(var f in c){var g=c[f],h=d[f];if(f in d&&h===g)"value"===f&&"input"===b&&a.value!=g&&(a.value=g);else{d[f]=g;try{if("config"===f)continue;if(typeof g==J&&0==f.indexOf("on"))a[f]=k(g,a);else if("style"===f&&null!=g&&K.call(g)==G){for(var i in g)(null==h||h[i]!==g[i])&&(a.style[i]=g[i]);for(var i in h)i in g||(a.style[i]="")}else null!=e?"href"===f?a.setAttributeNS("http://www.w3.org/1999/xlink","href",g):"className"===f?a.setAttribute("class",g):a.setAttribute(f,g):f in a&&"list"!=f&&"style"!=f&&"form"!=f&&"type"!=f?a[f]!=g&&(a[f]=g):a.setAttribute(f,g)}catch(j){if(j.message.indexOf("Invalid argument")<0)throw j}}}return d}function h(a,b){for(var c=a.length-1;c>-1;c--)if(a[c]&&a[c].parentNode){try{a[c].parentNode.removeChild(a[c])}catch(d){}b=[].concat(b),b[c]&&i(b[c])}0!=a.length&&(a.length=0)}function i(a){if(a.configContext&&typeof a.configContext.onunload==J&&a.configContext.onunload(),a.children)if(K.call(a.children)==H)for(var b=0;bb?Q.push(a)-1:b}function m(a){var b=function(){return arguments.length&&(a=arguments[0]),a};return b.toJSON=function(){return a},b}function n(){for(var a=e.redraw.strategy(),b=0;b=200&&d.status<300?a.onload({type:"load",target:d}):a.onerror({type:"error",target:d}))},a.serialize==JSON.stringify&&a.data&&"GET"!=a.method&&d.setRequestHeader("Content-Type","application/json; charset=utf-8"),a.deserialize==JSON.parse&&d.setRequestHeader("Accept","application/json, text/*"),typeof a.config==J){var e=a.config(d,a);null!=e&&(d=e)}var f="GET"!=a.method&&a.data?a.data:"";if(f&&K.call(f)!=I&&f.constructor!=b.FormData)throw"Request data should be either be a string or FormData. Check the `serialize` option in `m.request`";return d.send(f),d}var g="mithril_callback_"+(new Date).getTime()+"_"+Math.round(1e16*Math.random()).toString(36),h=C.createElement("script");b[g]=function(d){C.body.removeChild(h),a.onload({type:"load",target:{responseText:d}}),b[g]=c},h.onerror=function(){return C.body.removeChild(h),a.onerror({type:"error",target:{status:500,responseText:JSON.stringify({error:"Error making jsonp request"})}}),b[g]=c,!1},h.onload=function(){return!1},h.src=a.url+(a.url.indexOf("?")>0?"&":"?")+(a.callbackKey?a.callbackKey:"callback")+"="+g+"&"+s(a.data||{}),C.body.appendChild(h)}function A(a,b,c){if("GET"==a.method&&"jsonp"!=a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=s(b);a.url=a.url+(e?d+e:"")}else a.data=c(b);return a}function B(a,b){var c=a.match(/:[a-z]\w+/gi);if(c&&b)for(var d=0;dc&&(c=T.length);var d=!1;if(V[c]&&typeof V[c].onunload==J){var f={preventDefault:function(){d=!0}};V[c].onunload(f)}if(!d){e.redraw.strategy("all"),e.startComputation(),T[c]=a;var g=S=b,h=new b.controller;return g==S&&(V[c]=h,U[c]=b),e.endComputation(),V[c]}},e.redraw=function(a){W&&a!==!0?(new Date-X>Z||E==b.requestAnimationFrame)&&(W>0&&F(W),W=E(n,Z)):(n(),W=E(function(){W=null},Z))},e.redraw.strategy=e.prop();var $=0;e.startComputation=function(){$++},e.endComputation=function(){$=Math.max($-1,0),0==$&&e.redraw()},e.withAttr=function(a,b){return function(c){c=c||event;var d=c.currentTarget||this;b(a in d?d[a]:d.getAttribute(a))}};var _,ab,bb={pathname:"",hash:"#",search:"?"},cb=function(){};return e.route=function(){if(0===arguments.length)return ab;if(3===arguments.length&&K.call(arguments[1])==I){var a=arguments[0],c=arguments[1],d=arguments[2];cb=function(b){var f=ab=o(b);p(a,d,f)||e.route(c,!0)};var f="hash"==e.route.mode?"onhashchange":"onpopstate";b[f]=function(){ab!=o(D[e.route.mode])&&cb(D[e.route.mode])},Y=r,b[f]()}else if(arguments[0].addEventListener){{var g=arguments[0];arguments[1],arguments[2]}g.href=("pathname"!==e.route.mode?D.pathname:"")+bb[e.route.mode]+this.attrs.href,g.removeEventListener("click",q),g.addEventListener("click",q)}else if(K.call(arguments[0])==I){ab=arguments[0];var h=arguments[1]||{},i=ab.indexOf("?"),j=i>-1?t(ab.slice(i+1)):{};for(var k in h)j[k]=h[k];var l=s(j),m=i>-1?ab.slice(0,i):ab;l&&(ab=m+(-1===m.indexOf("?")?"?":"&")+l);var n=(3==arguments.length?arguments[2]:arguments[1])===!0;b.history.pushState?(Y=function(){b.history[n?"replaceState":"pushState"](null,C.title,bb[e.route.mode]+ab),r()},cb(bb[e.route.mode]+ab)):D[e.route.mode]=ab}},e.route.param=function(a){if(!_)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return _[a]},e.route.mode="search",e.deferred=function(){var a=new x;return a.promise=w(a.promise),a},e.deferred.onerror=function(a){if("[object Error]"==K.call(a)&&!a.constructor.toString().match(/ Error/))throw a},e.sync=function(a){function b(a,b){return function(e){return g[a]=e,b||(c="reject"),0==--f&&(d.promise(g),d[c](g)),e}}var c="resolve",d=e.deferred(),f=a.length,g=new Array(f);if(a.length>0)for(var h=0;h