diff --git a/mithril.js b/mithril.js index 48744789..5c2f151a 100644 --- a/mithril.js +++ b/mithril.js @@ -84,7 +84,7 @@ function parseTagAttrs(cell, tag) { var classes = [] - var parser = /(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g + var parser = /(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g var match while ((match = parser.exec(tag))) { @@ -95,8 +95,9 @@ } else if (match[1] === ".") { classes.push(match[2]) } else if (match[3][0] === "[") { - var pair = /\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(match[3]) - cell.attrs[pair[1]] = pair[3] || "" + var attrValue = match[6] + if (attrValue) attrValue = attrValue.replace(/\\(["'])/g, "$1") + cell.attrs[match[4]] = attrValue || "" } } diff --git a/mithril.min.js b/mithril.min.js index 6b91e57b..255e342a 100644 --- a/mithril.min.js +++ b/mithril.min.js @@ -1,8 +1,8 @@ /* -Mithril v0.2.4 +Mithril v0.2.5 http://mithril.js.org (c) 2014-2016 Leo Horie License: MIT */ -!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Aa.call(a)}function e(a){return"[object String]"===Aa.call(a)}function f(){}function g(a){va=a.document,wa=a.location,ya=a.cancelAnimationFrame||a.clearTimeout,xa=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[.+?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=/\[(.+?)(?:=("|'|)(.*?)\2)?\]/.exec(c[3]);a.attrs[f[1]]=f[3]||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Ba(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)za.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return ba(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[va.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Ba(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Da,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Aa.call(b)===Aa.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Ba(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?va.createElement(a.tag,a.attrs.is):va.createElementNS(b,a.tag,a.attrs.is):null==b?va.createElement(a.tag):va.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ia.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ia.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ga||Ja||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m);q(d,o,f);var r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return n||g!==!0||null==o||q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Ba(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)za.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)za.call(c,d)&&(za.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=$(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ka[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c&&va.activeElement!==a)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!za.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(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]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Ba(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(va.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b)}}function Z(a,b,c){var d=a.childNodes[b];if(d){var e=1!==d.nodeType,f=va.createElement("span");e?(a.insertBefore(f,d||null),f.insertAdjacentHTML("beforebegin",c),a.removeChild(f)):d.insertAdjacentHTML("beforebegin",c)}else Y(a,c);for(var g=[];a.childNodes[b]!==d;)g.push(a.childNodes[b]),b++;return g}function $(a,b){return function(c){c=c||event,k.redraw.strategy("diff"),k.startComputation();try{return a.call(b,c)}finally{fa()}}}function _(a){var b=Ma.indexOf(a);return 0>b?Ma.push(a)-1:b}function aa(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function ba(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ka(c.data||{}),va.body.appendChild(e)}function ra(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},b.serialize===JSON.stringify&&b.data&&"GET"!==b.method&&d.setRequestHeader("Content-Type","application/json; charset=utf-8"),b.deserialize===JSON.parse&&d.setRequestHeader("Accept","application/json, text/*"),c(b.config)){var f=b.config(d,b);null!=f&&(d=f)}var g="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==a.FormData)throw new Error("Request data should be either be a string or FormData. Check the `serialize` option in `m.request`");return d.send(g),d}function sa(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?qa(a):ra(a)}function ta(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ka(b);a.url+=e?d+e:""}else a.data=c(b)}function ua(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c]||a;return delete b[c],d})),a}k.version=function(){return"v0.2.4"};var va,wa,xa,ya,za={}.hasOwnProperty,Aa={}.toString,Ba=Array.isArray||function(a){return"[object Array]"===Aa.call(a)},Ca={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Da=1,Ea=2,Fa=3,Ga=0;k.startComputation=function(){Ga++},k.endComputation=function(){Ga>1?Ga--:(Ga=0,k.redraw())};var Ha,Ia=[],Ja=!1,Ka={list:1,style:1,form:1,type:1,width:1,height:1},La={appendChild:function(a){Ha===b&&(Ha=va.createElement("html")),va.documentElement&&va.documentElement!==a?va.replaceChild(a,va.documentElement):va.appendChild(a),this.childNodes=va.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Ma=[],Na={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=_(a),h=a===va;e=h||a===va.documentElement?La:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Na[g]===b&&W(e.childNodes),d===!0&&ma(a),Na[g]=Q(e,null,b,b,c,Na[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&d(a)||c(a))&&c(a.then)?na(a):aa(a)};var Oa,Pa=[],Qa=[],Ra=[],Sa=null,Ta=0,Ua=null,Va=null,Wa=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Pa.length);var e=!1,f={preventDefault:function(){e=!0,Ua=Va=null}};return l(Ia,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ia,function(a){a.controller.onunload=a.handler}):Ia=[],Ra[d]&&c(Ra[d].onunload)&&Ra[d].onunload(f),ca(b,a,d,e)};var Xa=!1;k.redraw=function(b){if(!Xa){Xa=!0,b&&(Ja=!0);try{Sa&&!b?(xa===a.requestAnimationFrame||new Date-Ta>Wa)&&(Sa>0&&ya(Sa),Sa=xa(ea,Wa)):(ea(),Sa=xa(function(){Sa=null},Wa))}finally{Xa=Ja=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var Ya,Za,$a={pathname:"",hash:"#",search:"?"},_a=f,ab=!1;k.route=function(b,c,d,f){if(0===arguments.length)return Za;if(3===arguments.length&&e(c)){_a=function(a){var e=Za=ga(a);if(!ha(b,d,e)){if(ab)throw new Error("Ensure the default route matches one of the routes defined in m.route");ab=!0,k.route(c,!0),ab=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=wa[k.route.mode];"pathname"===k.route.mode&&(a+=wa.search),Za!==ga(a)&&_a(a)},Ua=ja,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?wa.pathname:"";return b.href=h+$a[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ia),b.addEventListener("click",ia)):(b.detachEvent("onclick",ia),b.attachEvent("onclick",ia)))}if(e(b)){var i=Za;Za=b;var j,l=c||{},m=Za.indexOf("?");j=m>-1?la(Za.slice(m+1)):{};for(var n in l)za.call(l,n)&&(j[n]=l[n]);var o,p=ka(j);o=m>-1?Za.slice(0,m):Za,p&&(Za=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Ua=ja,Va=function(){a.history[r](null,va.title,$a[k.route.mode]+Za)},_a($a[k.route.mode]+Za)}else wa[k.route.mode]=Za,_a($a[k.route.mode]+Za)}},k.route.param=function(a){if(!Ya)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?Ya[a]:Ya},k.route.mode="search",k.route.buildQueryString=ka,k.route.parseQueryString=la,k.deferred=function(){var a=new oa;return a.promise=na(a.promise),a};var bb=1,cb=2,db=3,eb=4;return k.deferred.onerror=function(a){if("[object Error]"===Aa.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ga=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new oa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=pa,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=ua(a.url,a.data),ta(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Ba(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},sa(a),e.promise=na(e.promise,a.initialValue),e.promise},k}); +!function(a,b){"use strict";var c=b(a);"object"==typeof module&&null!=module&&module.exports?module.exports=c:"function"==typeof define&&define.amd?define(function(){return c}):a.m=c}("undefined"!=typeof window?window:this,function(a,b){"use strict";function c(a){return"function"==typeof a}function d(a){return"[object Object]"===Ca.call(a)}function e(a){return"[object String]"===Ca.call(a)}function f(){}function g(a){xa=a.document,ya=a.location,Aa=a.cancelAnimationFrame||a.clearTimeout,za=a.requestAnimationFrame||a.setTimeout}function h(a,b){for(var c,d=[],e=/(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g;c=e.exec(b);)if(""===c[1]&&c[2])a.tag=c[2];else if("#"===c[1])a.attrs.id=c[2];else if("."===c[1])d.push(c[2]);else if("["===c[3][0]){var f=c[6];f&&(f=f.replace(/\\(["'])/g,"$1")),a.attrs[c[4]]=f||""}return d}function i(a,b){var c=b?a.slice(1):a;return 1===c.length&&Da(c[0])?c[0]:c}function j(a,b,c){var d="class"in b?"class":"className";for(var e in b)Ba.call(b,e)&&(e===d&&null!=b[e]&&""!==b[e]?(c.push(b[e]),a[e]=""):a[e]=b[e]);c.length&&(a[d]=c.join(" "))}function k(a,b){for(var c=[],f=1,g=arguments.length;g>f;f++)c[f-1]=arguments[f];if(d(a))return da(a,c);if(!e(a))throw new Error("selector in m(selector, attrs, children) should be a string");var k=null!=b&&d(b)&&!("tag"in b||"view"in b||"subtree"in b),l=k?b:{},m={tag:"div",attrs:{},children:i(c,k)};return j(m.attrs,l,h(m,a)),m}function l(a,b){for(var c=0;c1||g[0].nodeValue.trim&&!g[0].nodeValue.trim())&&(W(b.nodes,b),g=[xa.createTextNode(a)]),o(c,g[0],e,a))),b=new a.constructor(a),b.nodes=g,b}function D(a,b,c,d,e,f,g){return a.nodes.length?a.valueOf()!==b.valueOf()||e?C(b,a,d,f,c,g):(a.nodes.intact=!0,a):B(b,d,c)}function E(a){if(a.$trusted){var b=a.match(/<[^\/]|\>\s*[^<]/g);if(null!=b)return b.length}else if(Da(a))return a.length;return 1}function F(a,c,d,e,f,g,h,i,j){a=p(a);var k=[],l=c.length===a.length,n=0,o={},q=!1;m(c,function(a,b){q=!0,o[c[b].attrs.key]={action:Fa,index:b}}),u(a),q&&(c=s(a,c,o,d));for(var r=0,v=0,w=a.length;w>v;v++){var x=Q(d,f,c,e,a[v],c[r],g,e+n||n,h,i,j);x!==b&&(l=l&&x.nodes.intact,n+=E(x),c[r++]=x)}return l||t(a,c,k),c}function G(a,b,c,d,e){if(null!=b){if(Ca.call(b)===Ca.call(a))return b;if(e&&e.nodes){var f=c-d,g=f+(Da(a)?a:b.nodes).length;W(e.nodes.slice(f,g),e.slice(f,g))}else b.nodes&&W(b.nodes,b)}return b=new a.constructor,b.tag&&(b={}),b.nodes=[],b}function H(a,b){return a.attrs.is?null==b?xa.createElement(a.tag,a.attrs.is):xa.createElementNS(b,a.tag,a.attrs.is):null==b?xa.createElement(a.tag):xa.createElementNS(b,a.tag)}function I(a,b,c,d){return d?V(b,a.tag,a.attrs,{},c):a.attrs}function J(a,c,d,e,f,g){return null!=a.children&&a.children.length>0?Q(c,a.tag,b,b,a.children,d.children,!0,0,a.attrs.contenteditable?c:e,f,g):a.children}function K(a,b,c,d,e,f,g){var h={tag:a.tag,attrs:b,children:c,nodes:[d]};return y(h,f,g),h.children&&!h.children.nodes&&(h.children.nodes=[]),"select"===a.tag&&"value"in a.attrs&&V(d,a.tag,{value:a.attrs.value},{},e),h}function L(a,b,d,e){var f;return f="diff"===k.redraw.strategy()&&a?a.indexOf(b):-1,f>-1?d[f]:c(e)?new e:{}}function M(a,b,c,d){null!=d.onunload&&Ka.map(function(a){return a.handler}).indexOf(d.onunload)<0&&Ka.push({controller:d,handler:d.onunload}),a.push(c),b.push(d)}function N(a,b,c,d,e,f){var g=L(c.views,b,d,a.controller),h=a&&a.attrs&&a.attrs.key;return a=0===Ia||La||d&&d.indexOf(g)>-1?a.view(g):{tag:"placeholder"},"retain"===a.subtree?a:(a.attrs=a.attrs||{},a.attrs.key=h,M(f,e,b,g),a)}function O(a,b,c,d){for(var e=b&&b.controllers;null!=a.view;)a=N(a,a.view.$original||a.view,b,e,d,c);return a}function P(a,b,c,d,f,g,h,i){var j=[],k=[];if(a=O(a,b,j,k),"retain"===a.subtree)return b;if(!a.tag&&k.length)throw new Error("Component template must return a virtual element, not an array, string, etc.");a.attrs=a.attrs||{},b.attrs=b.attrs||{};var l=Object.keys(a.attrs),m=l.length>("key"in a.attrs?1:0);if(w(a,b,l),e(a.tag)){var n=0===b.nodes.length;h=x(a,h);var o;if(n){o=H(a,h);var p=I(a,o,h,m);q(d,o,f);var r=J(a,o,b,c,h,i);b=K(a,p,r,o,h,j,k)}else o=A(b,a,c,m,h,j,i,k);return n||g!==!0||null==o||q(d,o,f),z(i,a,o,n,b),b}}function Q(a,b,e,f,g,h,i,j,k,l,m){return g=n(g),"retain"===g.subtree?h:(h=G(g,h,j,f,e),Da(g)?F(g,h,a,j,b,i,k,l,m):null!=g&&d(g)?P(g,h,k,a,j,i,l,m):c(g)?h:D(h,g,j,a,i,k,b))}function R(a,b){return a.action-b.action||a.index-b.index}function S(a,b,c){for(var d in b)Ba.call(b,d)&&(null!=c&&c[d]===b[d]||(a.style[d]=b[d]));for(d in c)Ba.call(c,d)&&(Ba.call(b,d)||(a.style[d]=""))}function T(a,b,e,f,g,h){if("config"===b||"key"===b)return!0;if(c(e)&&"on"===b.slice(0,2))a[b]=aa(e,a);else if("style"===b&&null!=e&&d(e))S(a,e,f);else if(null!=h)"href"===b?a.setAttributeNS("http://www.w3.org/1999/xlink","href",e):a.setAttribute("className"===b?"class":b,e);else if(b in a&&!Ma[b])try{"input"===g&&a[b]===e||(a[b]=e)}catch(i){a.setAttribute(b,e)}else a.setAttribute(b,e)}function U(a,b,c,d,e,f,g){if(b in e&&d===c&&xa.activeElement!==a)"value"===b&&"input"===f&&a.value!==c&&(a.value=c);else{e[b]=c;try{return T(a,b,c,d,f,g)}catch(h){if(h.message.indexOf("Invalid argument")<0)throw h}}}function V(a,b,c,d,e){for(var f in c)!Ba.call(c,f)||!U(a,f,c[f],d[f],d,b,e);return d}function W(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]&&X(b[c])}a.length&&(a.length=0)}function X(a){a.configContext&&c(a.configContext.onunload)&&(a.configContext.onunload(),a.configContext.onunload=null),a.controllers&&l(a.controllers,function(a){c(a.onunload)&&a.onunload({preventDefault:f})}),a.children&&(Da(a.children)?l(a.children,X):a.children.tag&&X(a.children))}function Y(a,b){try{a.appendChild(xa.createRange().createContextualFragment(b))}catch(c){a.insertAdjacentHTML("beforeend",b),Z(a)}}function Z(a){if("SCRIPT"===a.tagName)a.parentNode.replaceChild($(a),a);else{var b=a.childNodes;if(b&&b.length)for(var c=0;cb?Oa.push(a)-1:b}function ca(a){function b(){return arguments.length&&(a=arguments[0]),a}return b.toJSON=function(){return a},b}function da(a,b){function c(){return(a.controller||f).apply(this,b)||this}function d(c){for(var d=[c].concat(b),e=1;e0?"&":"?")+(c.callbackKey?c.callbackKey:"callback")+"="+d+"&"+ma(c.data||{}),xa.body.appendChild(e)}function ta(b){var d=new a.XMLHttpRequest;if(d.open(b.method,b.url,!0,b.user,b.password),d.onreadystatechange=function(){4===d.readyState&&(d.status>=200&&d.status<300?b.onload({type:"load",target:d}):b.onerror({type:"error",target:d}))},b.serialize===JSON.stringify&&b.data&&"GET"!==b.method&&d.setRequestHeader("Content-Type","application/json; charset=utf-8"),b.deserialize===JSON.parse&&d.setRequestHeader("Accept","application/json, text/*"),c(b.config)){var f=b.config(d,b);null!=f&&(d=f)}var g="GET"!==b.method&&b.data?b.data:"";if(g&&!e(g)&&g.constructor!==a.FormData)throw new Error("Request data should be either be a string or FormData. Check the `serialize` option in `m.request`");return d.send(g),d}function ua(a){return a.dataType&&"jsonp"===a.dataType.toLowerCase()?sa(a):ta(a)}function va(a,b,c){if("GET"===a.method&&"jsonp"!==a.dataType){var d=a.url.indexOf("?")<0?"?":"&",e=ma(b);a.url+=e?d+e:""}else a.data=c(b)}function wa(a,b){return b&&(a=a.replace(/:[a-z]\w+/gi,function(a){var c=a.slice(1),d=b[c]||a;return delete b[c],d})),a}k.version=function(){return"v0.2.5"};var xa,ya,za,Aa,Ba={}.hasOwnProperty,Ca={}.toString,Da=Array.isArray||function(a){return"[object Array]"===Ca.call(a)},Ea={AREA:1,BASE:1,BR:1,COL:1,COMMAND:1,EMBED:1,HR:1,IMG:1,INPUT:1,KEYGEN:1,LINK:1,META:1,PARAM:1,SOURCE:1,TRACK:1,WBR:1};k.deps=function(b){return g(a=b||window),a},k.deps(a);var Fa=1,Ga=2,Ha=3,Ia=0;k.startComputation=function(){Ia++},k.endComputation=function(){Ia>1?Ia--:(Ia=0,k.redraw())};var Ja,Ka=[],La=!1,Ma={list:1,style:1,form:1,type:1,width:1,height:1},Na={appendChild:function(a){Ja===b&&(Ja=xa.createElement("html")),xa.documentElement&&xa.documentElement!==a?xa.replaceChild(a,xa.documentElement):xa.appendChild(a),this.childNodes=xa.childNodes},insertBefore:function(a){this.appendChild(a)},childNodes:[]},Oa=[],Pa={};k.render=function(a,c,d){if(!a)throw new Error("Ensure the DOM element being passed to m.route/m.mount/m.render is not undefined.");var e,f=[],g=ba(a),h=a===xa;e=h||a===xa.documentElement?Na:a,h&&"html"!==c.tag&&(c={tag:"html",attrs:{},children:c}),Pa[g]===b&&W(e.childNodes),d===!0&&oa(a),Pa[g]=Q(e,null,b,b,c,Pa[g],!1,0,null,b,f),l(f,function(a){a()})},k.trust=function(a){return a=new String(a),a.$trusted=!0,a},k.prop=function(a){return(null!=a&&(d(a)||c(a))||"undefined"!=typeof Promise&&a instanceof Promise)&&c(a.then)?pa(a):ca(a)};var Qa,Ra=[],Sa=[],Ta=[],Ua=null,Va=0,Wa=null,Xa=null,Ya=16;k.component=function(a){for(var b=new Array(arguments.length-1),c=1;cd&&(d=Ra.length);var e=!1,f={preventDefault:function(){e=!0,Wa=Xa=null}};return l(Ka,function(a){a.handler.call(a.controller,f),a.controller.onunload=null}),e?l(Ka,function(a){a.controller.onunload=a.handler}):Ka=[],Ta[d]&&c(Ta[d].onunload)&&Ta[d].onunload(f),ea(b,a,d,e)};var Za=!1;k.redraw=function(b){if(!Za){Za=!0,b&&(La=!0);try{Ua&&!b?(za===a.requestAnimationFrame||new Date-Va>Ya)&&(Ua>0&&Aa(Ua),Ua=za(ga,Ya)):(ga(),Ua=za(function(){Ua=null},Ya))}finally{Za=La=!1}}},k.redraw.strategy=k.prop(),k.withAttr=function(a,b,c){return function(d){d=d||window.event;var e=d.currentTarget||this,f=c||this,g=a in e?e[a]:e.getAttribute(a);b.call(f,g)}};var $a,_a,ab={pathname:"",hash:"#",search:"?"},bb=f,cb=!1;k.route=function(b,c,d,f){if(0===arguments.length)return _a;if(3===arguments.length&&e(c)){bb=function(a){var e=_a=ia(a);if(!ja(b,d,e)){if(cb)throw new Error("Ensure the default route matches one of the routes defined in m.route");cb=!0,k.route(c,!0),cb=!1}};var g="hash"===k.route.mode?"onhashchange":"onpopstate";return a[g]=function(){var a=ya[k.route.mode];"pathname"===k.route.mode&&(a+=ya.search),_a!==ia(a)&&bb(a)},Wa=la,void a[g]()}if(b.addEventListener||b.attachEvent){var h="pathname"!==k.route.mode?ya.pathname:"";return b.href=h+ab[k.route.mode]+f.attrs.href,void(b.addEventListener?(b.removeEventListener("click",ka),b.addEventListener("click",ka)):(b.detachEvent("onclick",ka),b.attachEvent("onclick",ka)))}if(e(b)){var i=_a;_a=b;var j,l=c||{},m=_a.indexOf("?");j=m>-1?na(_a.slice(m+1)):{};for(var n in l)Ba.call(l,n)&&(j[n]=l[n]);var o,p=ma(j);o=m>-1?_a.slice(0,m):_a,p&&(_a=o+(-1===o.indexOf("?")?"?":"&")+p);var q=(3===arguments.length?d:c)===!0||i===b;if(a.history.pushState){var r=q?"replaceState":"pushState";Wa=la,Xa=function(){try{a.history[r](null,xa.title,ab[k.route.mode]+_a)}catch(b){ya[k.route.mode]=_a}},bb(ab[k.route.mode]+_a)}else ya[k.route.mode]=_a,bb(ab[k.route.mode]+_a)}},k.route.param=function(a){if(!$a)throw new Error("You must call m.route(element, defaultRoute, routes) before calling m.route.param()");return a?$a[a]:$a},k.route.mode="search",k.route.buildQueryString=ma,k.route.parseQueryString=na,k.deferred=function(){var a=new qa;return a.promise=pa(a.promise),a};var db=1,eb=2,fb=3,gb=4;return k.deferred.onerror=function(a){if("[object Error]"===Ca.call(a)&&!/ Error/.test(a.constructor.toString()))throw Ia=0,a},k.sync=function(a){function b(a,b){return function(g){return e[a]=g,b||(f="reject"),0===--d&&(c.promise(e),c[f](e)),g}}var c=k.deferred(),d=a.length,e=[],f="resolve";return a.length>0?l(a,function(a,c){a.then(b(c,!0),b(c,!1))}):c.resolve([]),c.promise},k.request=function(a){a.background!==!0&&k.startComputation();var b,c,d,e=new qa,f=a.dataType&&"jsonp"===a.dataType.toLowerCase();return f?(b=a.serialize=c=a.deserialize=ra,d=function(a){return a.responseText}):(b=a.serialize=a.serialize||JSON.stringify,c=a.deserialize=a.deserialize||JSON.parse,d=a.extract||function(a){return a.responseText.length||c!==JSON.parse?a.responseText:null}),a.method=(a.method||"GET").toUpperCase(),a.url=wa(a.url,a.data),va(a,a.data,b),a.onload=a.onerror=function(b){try{b=b||event;var f=c(d(b.target,a));"load"===b.type?(a.unwrapSuccess&&(f=a.unwrapSuccess(f,b.target)),Da(f)&&a.type?l(f,function(b,c){f[c]=new a.type(b)}):a.type&&(f=new a.type(f)),e.resolve(f)):(a.unwrapError&&(f=a.unwrapError(f,b.target)),e.reject(f))}catch(g){e.reject(g),k.deferred.onerror(g)}finally{a.background!==!0&&k.endComputation()}},ua(a),e.promise=pa(e.promise,a.initialValue),e.promise},k}); //# sourceMappingURL=mithril.min.js.map \ No newline at end of file diff --git a/mithril.min.js.map b/mithril.min.js.map index 60745a75..66357a44 100644 --- a/mithril.min.js.map +++ b/mithril.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","pair","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","replace","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","replaceChild","forceRecreation","isDocumentRoot","trust","String","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":";;;;;;CAAC,SAAWA,EAAQC,GACnB,YAEA,IAAIC,GAAID,EAAQD,EACM,iBAAXG,SAAiC,MAAVA,QAAkBA,OAAOC,QAC1DD,OAAOC,QAAUF,EACW,kBAAXG,SAAyBA,OAAOC,IACjDD,OAAO,WAAc,MAAOH,KAE5BF,EAAOE,EAAIA,GAGQ,mBAAXK,QAAyBA,OAASC,KAAM,SAAUR,EAAQS,GACnE,YASA,SAASC,GAAWC,GACnB,MAAyB,kBAAXA,GAGf,QAASC,GAASD,GACjB,MAA6B,oBAAtBE,GAAKC,KAAKH,GAGlB,QAASI,GAASJ,GACjB,MAA6B,oBAAtBE,GAAKC,KAAKH,GAOlB,QAASK,MAyBT,QAASC,GAAWC,GACnBC,GAAYD,EAAKE,SACjBC,GAAYH,EAAKI,SACjBC,GAAwBL,EAAKM,sBAAwBN,EAAKO,aAC1DC,GAAyBR,EAAKS,uBAAyBT,EAAKU,WAiB7D,QAASC,GAAcC,EAAMC,GAK5B,IAJA,GAEIC,GAFAC,KACAC,EAAS,uCAGLF,EAAQE,EAAOC,KAAKJ,IAC3B,GAAiB,KAAbC,EAAM,IAAaA,EAAM,GAC5BF,EAAKC,IAAMC,EAAM,OACX,IAAiB,MAAbA,EAAM,GAChBF,EAAKM,MAAMC,GAAKL,EAAM,OAChB,IAAiB,MAAbA,EAAM,GAChBC,EAAQK,KAAKN,EAAM,QACb,IAAoB,MAAhBA,EAAM,GAAG,GAAY,CAC/B,GAAIO,GAAO,+BAA+BJ,KAAKH,EAAM,GACrDF,GAAKM,MAAMG,EAAK,IAAMA,EAAK,IAAM,GAInC,MAAON,GAGR,QAASO,GAAmBC,EAAMC,GACjC,GAAIC,GAAWD,EAAWD,EAAKG,MAAM,GAAKH,CAE1C,OAAwB,KAApBE,EAASE,QAAgBC,GAAQH,EAAS,IACtCA,EAAS,GAETA,EAIT,QAASI,GAAYC,EAAQZ,EAAOH,GACnC,GAAIgB,GAAY,SAAWb,GAAQ,QAAU,WAE7C,KAAK,GAAIc,KAAYd,GAChBe,GAAOrC,KAAKsB,EAAOc,KAClBA,IAAaD,GACI,MAAnBb,EAAMc,IACc,KAApBd,EAAMc,IACPjB,EAAQK,KAAKF,EAAMc,IAEnBF,EAAOE,GAAY,IAEnBF,EAAOE,GAAYd,EAAMc,GAKxBjB,GAAQY,SAAQG,EAAOC,GAAahB,EAAQmB,KAAK,MAUtD,QAASlD,GAAE6B,EAAKsB,GAGf,IAAK,GAFDZ,MAEKa,EAAI,EAAGT,EAASU,UAAUV,OAAYA,EAAJS,EAAYA,IACtDb,EAAKa,EAAI,GAAKC,UAAUD,EAGzB,IAAI1C,EAASmB,GAAM,MAAOyB,IAAazB,EAAKU,EAE5C,KAAK1B,EAASgB,GACb,KAAM,IAAI0B,OAAM,8DAIjB,IAAIf,GAAoB,MAATW,GAAiBzC,EAASyC,MACtC,OAASA,IAAS,QAAUA,IAAS,WAAaA,IAEjDjB,EAAQM,EAAWW,KACnBvB,GACHC,IAAK,MACLK,SACAO,SAAUH,EAAmBC,EAAMC,GAIpC,OADAK,GAAYjB,EAAKM,MAAOA,EAAOP,EAAcC,EAAMC,IAC5CD,EAGR,QAAS4B,GAAQC,EAAMC,GACtB,IAAK,GAAIN,GAAI,EAAGA,EAAIK,EAAKd,SAAWe,EAAED,EAAKL,GAAIA,QAKhD,QAASO,GAAQF,EAAMC,GACtBF,EAAQC,EAAM,SAAUvB,EAAOkB,GAC9B,OAAQlB,EAAQA,GAASA,EAAMA,QACjB,MAAbA,EAAM0B,KACNF,EAAExB,EAAOkB,KAIZ,QAASS,GAAaC,GAIrB,IACC,GAAY,MAARA,GAAmC,MAAnBA,EAAKC,WAAoB,MAAOD,GACnD,MAAOE,IAGT,MAAO,GAIR,QAASC,GAAeC,EAAeC,EAAOC,EAAON,GACpD,IACCO,EAAWH,EAAeC,EAAOC,GACjCD,EAAMG,UAAYR,EACjB,MAAOE,KAMV,QAASO,GAAQd,GAEhB,IAAK,GAAIL,GAAI,EAAGA,EAAIK,EAAKd,OAAQS,IAC5BR,GAAQa,EAAKL,MAChBK,EAAOA,EAAKe,OAAOC,SAAUhB,GAG7BL,IAGF,OAAOK,GAGR,QAASY,GAAWH,EAAeQ,EAAMN,GACxCF,EAAcS,aAAaD,EAC1BR,EAAcU,WAAWR,IAAU,MAOrC,QAASS,GAAiBf,EAAMgB,EAAUC,EAAQb,GACjDP,EAAQG,EAAM,SAAUF,EAAKR,GAC5B0B,EAASlB,EAAMA,EAAIA,KAAOkB,EAASlB,IAClCoB,OAAQC,GACRb,MAAOhB,EACP8B,KAAMJ,EAASlB,GAAKQ,MACpBe,QAASJ,EAAOK,MAAMN,EAASlB,GAAKQ,QACnCnD,GAAUoE,cAAc,SACrBL,OAAQM,GAAWlB,MAAOhB,IAGhC,IAAImC,KACJ,KAAK,GAAIC,KAAQV,GACZ7B,GAAOrC,KAAKkE,EAAUU,IACzBD,EAAQnD,KAAK0C,EAASU,GAIxB,IAAIC,GAAUF,EAAQG,KAAKC,GACvBC,EAAY,GAAIC,OAAMd,EAAOpC,OAiCjC,OA/BAiD,GAAUR,MAAQL,EAAOK,MAAM1C,QAE/Bc,EAAQiC,EAAS,SAAUK,GAC1B,GAAI1B,GAAQ0B,EAAO1B,KAKnB,IAJI0B,EAAOd,SAAWe,KACrBC,EAAMjB,EAAOX,GAAOgB,MAAOL,EAAOX,IAClCwB,EAAUK,OAAO7B,EAAO,IAErB0B,EAAOd,SAAWM,GAAW,CAChC,GAAIY,GAAQjF,GAAUoE,cAAc,MACpCa,GAAMtC,IAAME,EAAKM,GAAOlC,MAAM0B,IAC9BS,EAAWH,EAAegC,EAAO9B,GACjCwB,EAAUK,OAAO7B,EAAO,GACvBlC,OAAQ0B,IAAKE,EAAKM,GAAOlC,MAAM0B,KAC/BwB,OAAQc,KAETN,EAAUR,MAAMhB,GAAS8B,EAG1B,GAAIJ,EAAOd,SAAWC,GAAM,CAC3B,GAAIkB,GAAgBL,EAAOX,QACvBiB,EAAelC,EAAcU,WAAWR,EACxCgC,KAAiBD,GAAmC,OAAlBA,GACrCjC,EAAcS,aAAawB,EAC1BC,GAAgB,MAElBR,EAAUxB,GAASW,EAAOe,EAAOZ,MACjCU,EAAUR,MAAMhB,GAAS+B,KAIpBP,EAGR,QAASS,GAASvC,EAAMiB,EAAQD,EAAUZ,GACzC,GAAIoC,GAAaxC,EAAKnB,SAAWoC,EAAOpC,MAWxC,OATK2D,IACJ3C,EAAQG,EAAM,SAAU5B,EAAOkB,GAC9B,GAAImD,GAAaxB,EAAO3B,EACxB,OAAOkD,GAAaC,GACnBA,EAAWrE,OACXqE,EAAWrE,MAAM0B,MAAQ1B,EAAM0B,MAI9B0C,EACIzB,EAAiBf,EAAMgB,EAAUC,EAAQb,GAEzCa,EAIT,QAASyB,GAAU1C,EAAMiB,EAAQK,GAIhC5B,EAAQM,EAAM,SAAU2C,EAAGrD,GACT,MAAb2B,EAAO3B,IAAYgC,EAAMhD,KAAKqC,MAAMW,EAAOL,EAAO3B,GAAGgC,SAM1D5B,EAAQuB,EAAOK,MAAO,SAAUV,EAAMtB,GACd,MAAnBsB,EAAKgC,YAAsBtB,EAAMuB,QAAQjC,GAAQ,GACpDsB,GAAOtB,IAAQK,EAAO3B,OAIpBU,EAAKnB,OAASoC,EAAOpC,SAAQoC,EAAOpC,OAASmB,EAAKnB,QACtDoC,EAAOK,MAAQA,EAGhB,QAASwB,GAAe9C,GACvB,GAAI+C,GAAO,CACXlD,GAAQG,EAAM,WAMb,MALAN,GAAQM,EAAM,SAAU5B,IAClBA,EAAQA,GAASA,EAAMA,QAAuB,MAAbA,EAAM0B,MAC3C1B,EAAM0B,IAAM,cAAgBiD,OAGvB,IAIT,QAASC,GAAkBhD,EAAMiB,EAAQgC,GACxC,MAAIjD,GAAKjC,MAAQkD,EAAOlD,KAAY,EAEhCkF,EAAarB,OAAOxC,SACtB8D,OAAOC,KAAKlC,EAAO7C,OAAOwD,OAAOxC,QAC3B,EAGJY,EAAK5B,MAAMC,KAAO4C,EAAO7C,MAAMC,IAC3B,EAGJ2B,EAAK5B,MAAM0B,MAAQmB,EAAO7C,MAAM0B,KAC5B,EAGoB,QAAxB5D,EAAEkH,OAAOC,YACJpC,EAAOqC,eAAiBrC,EAAOqC,cAAcC,UAAW,EAGrC,SAAxBrH,EAAEkH,OAAOC,WACLpC,EAAOqC,eAAiBrC,EAAOqC,cAAcC,UAAW,GAGzD,EAGR,QAASC,GAAoBxD,EAAMiB,EAAQgC,GAEtCD,EAAkBhD,EAAMiB,EAAQgC,KAC/BhC,EAAOK,MAAMzC,QAAQqD,EAAMjB,EAAOK,OAElCL,EAAOqC,eACT5G,EAAWuE,EAAOqC,cAAcG,WACjCxC,EAAOqC,cAAcG,WAGlBxC,EAAOyC,aACVhE,EAAQuB,EAAOyC,YAAa,SAAUC,GACjCA,EAAWF,UACdE,EAAWF,UAAUG,eAAgB5G,OAO1C,QAAS6G,GAAmB7D,EAAM8D,GACjC,MAAI9D,GAAK5B,MAAM2F,MAAc/D,EAAK5B,MAAM2F,MACvB,QAAb/D,EAAKjC,IAAsB,6BACd,SAAbiC,EAAKjC,IAAuB,qCACzB+F,EAcR,QAASE,GAAwB/C,EAAQgD,EAAOP,GAC3CA,EAAY7E,SACfoC,EAAOgD,MAAQA,EACfhD,EAAOyC,YAAcA,EACrBhE,EAAQgE,EAAa,SAAUC,GAK9B,GAJIA,EAAWF,UAAYE,EAAWF,SAASS,OAC9CP,EAAWF,SAAWE,EAAWF,SAASS,MAGvCC,IAAmBR,EAAWF,SAAU,CAC3C,GAAIA,GAAWE,EAAWF,QAC1BE,GAAWF,SAAWzG,EACtB2G,EAAWF,SAASS,KAAOT,MAM/B,QAASW,GAA0BC,EAASrE,EAAMY,EAAM0D,EAAOrD,GAG9D,GAAIvE,EAAWsD,EAAK5B,MAAMmG,QAAS,CAClC,GAAIC,GAAUvD,EAAOqC,cAAgBrC,EAAOqC,iBAG5Ce,GAAQ/F,KAAK,WACZ,MAAO0B,GAAK5B,MAAMmG,OAAOzH,KAAKkD,EAAMY,GAAO0D,EAAOE,EACjDvD,MAKJ,QAASwD,GACRxD,EACAjB,EACA0E,EACAC,EACAb,EACAG,EACAI,EACAX,GAEA,GAAI9C,GAAOK,EAAOK,MAAM,EA2BxB,OAzBIqD,IACHC,EAAchE,EAAMZ,EAAKjC,IAAKiC,EAAK5B,MAAO6C,EAAO7C,MAAO0F,GAGzD7C,EAAOtC,SAAWkG,EACjBjE,EACAZ,EAAKjC,IACLtB,EACAA,EACAuD,EAAKrB,SACLsC,EAAOtC,UACP,EACA,EACAqB,EAAK5B,MAAM0G,gBAAkBlE,EAAO8D,EACpCZ,EACAO,GAGDpD,EAAOK,MAAMyD,QAAS,EAElBrB,EAAY7E,SACfoC,EAAOgD,MAAQA,EACfhD,EAAOyC,YAAcA,GAGf9C,EAGR,QAASoE,GAAuBhF,EAAMI,EAAeE,GACpD,GAAIgB,EACAtB,GAAKiF,SACR3D,EAAQ4D,EAAW9E,EAAeE,EAAON,IAEzCsB,GAASnE,GAAUgI,eAAenF,IAC5BI,EAAcgF,WAAYC,KAC/B9E,EAAWH,EAAekB,EAAM,GAAIhB,GAItC,IAAIW,EAWJ,OANCA,GAHmB,gBAATjB,IACO,gBAATA,IACS,iBAATA,GACC,GAAIA,GAAKsF,YAAYtF,GAErBA,EAGViB,EAAOK,MAAQA,EACRL,EAGR,QAASsE,GACRvF,EACAiB,EACAb,EACAsE,EACApE,EACAkF,GAEA,GAAIlE,GAAQL,EAAOK,KAyBnB,OAxBKoD,IAAYA,IAAavH,GAAUsI,gBACnCzF,EAAKiF,UACR/C,EAAMZ,EAAOL,GACbK,EAAQ4D,EAAW9E,EAAeE,EAAON,IACjB,aAAdwF,EAEVpF,EAAcsF,MAAQ1F,EACZ0E,EAEVA,EAASiB,UAAY3F,IAGK,IAAtBsB,EAAM,GAAGsE,UAAkBtE,EAAMzC,OAAS,GAC3CyC,EAAM,GAAGd,UAAUqF,OAClBvE,EAAM,GAAGd,UAAUqF,UACtB3D,EAAMjB,EAAOK,MAAOL,GACpBK,GAASnE,GAAUgI,eAAenF,KAGnCG,EAAeC,EAAekB,EAAM,GAAIhB,EAAON,KAGjDiB,EAAS,GAAIjB,GAAKsF,YAAYtF,GAC9BiB,EAAOK,MAAQA,EACRL,EAGR,QAAS6E,GACR7E,EACAjB,EACAM,EACAF,EACA2F,EACArB,EACAc,GAEA,MAAKvE,GAAOK,MAAMzC,OAEPoC,EAAO+E,YAAchG,EAAKgG,WAAaD,EAC1CR,EAAcvF,EAAMiB,EAAQb,EAAesE,EAAUpE,EAC3DkF,IAEOvE,EAAOK,MAAMyD,QAAS,EAAM9D,GAL7B+D,EAAuBhF,EAAMI,EAAeE,GASrD,QAAS2F,GAAiBC,GACzB,GAAIA,EAAKjB,SAAU,CAKlB,GAAIjH,GAAQkI,EAAKlI,MAAM,oBACvB,IAAa,MAATA,EAAe,MAAOA,GAAMa,WAC1B,IAAIC,GAAQoH,GAClB,MAAOA,GAAKrH,MAEb,OAAO,GAGR,QAASsH,GACRnG,EACAiB,EACAb,EACAE,EACAkF,EACAO,EACArB,EACAZ,EACAO,GAEArE,EAAOS,EAAQT,EACf,IAAIsB,MACAyD,EAAS9D,EAAOpC,SAAWmB,EAAKnB,OAChCuH,EAAgB,EAWhBpF,KACAqF,GAA2B,CAE/BxG,GAAQoB,EAAQ,SAAU7C,EAAOkB,GAChC+G,GAA2B,EAC3BrF,EAASC,EAAO3B,GAAGlB,MAAM0B,MAAQoB,OAAQe,GAAU3B,MAAOhB,KAG3DwD,EAAe9C,GACXqG,IACHpF,EAASsB,EAASvC,EAAMiB,EAAQD,EAAUZ,GAM3C,KAAK,GAFDkG,GAAa,EAERhH,EAAI,EAAGiH,EAAMvG,EAAKnB,OAAY0H,EAAJjH,EAASA,IAAK,CAEhD,GAAI4G,GAAOrB,EACVzE,EACAoF,EACAvE,EACAX,EACAN,EAAKV,GACL2B,EAAOqF,GACPP,EACAzF,EAAQ8F,GAAiBA,EACzB1B,EACAZ,EACAO,EAEG6B,KAASzJ,IACZsI,EAASA,GAAUmB,EAAK5E,MAAMyD,OAC9BqB,GAAiBH,EAAiBC,GAClCjF,EAAOqF,KAAgBJ,GAKzB,MADKnB,IAAQrC,EAAU1C,EAAMiB,EAAQK,GAC9BL,EAGR,QAASuF,GAAUxG,EAAMiB,EAAQX,EAAOmG,EAAaC,GACpD,GAAc,MAAVzF,EAAgB,CACnB,GAAIpE,GAAKC,KAAKmE,KAAYpE,GAAKC,KAAKkD,GAAO,MAAOiB,EAElD,IAAIyF,GAAeA,EAAYpF,MAAO,CACrC,GAAIqF,GAASrG,EAAQmG,EACjBG,EAAMD,GAAU7H,GAAQkB,GAAQA,EAAOiB,EAAOK,OAAOzC,MACzDqD,GACCwE,EAAYpF,MAAM1C,MAAM+H,EAAQC,GAChCF,EAAY9H,MAAM+H,EAAQC,QACjB3F,GAAOK,OACjBY,EAAMjB,EAAOK,MAAOL,GAStB,MALAA,GAAS,GAAIjB,GAAKsF,YAGdrE,EAAOlD,MAAKkD,MAChBA,EAAOK,SACAL,EAGR,QAAS4F,GAAc7G,EAAM8D,GAC5B,MAAI9D,GAAK5B,MAAM0I,GACG,MAAbhD,EACI3G,GAAUoE,cAAcvB,EAAKjC,IAAKiC,EAAK5B,MAAM0I,IAE7C3J,GAAU4J,gBAAgBjD,EAAW9D,EAAKjC,IAChDiC,EAAK5B,MAAM0I,IAEU,MAAbhD,EACH3G,GAAUoE,cAAcvB,EAAKjC,KAE7BZ,GAAU4J,gBAAgBjD,EAAW9D,EAAKjC,KAInD,QAASiJ,GAAehH,EAAMY,EAAMkD,EAAWa,GAC9C,MAAIA,GACIC,EAAchE,EAAMZ,EAAKjC,IAAKiC,EAAK5B,SAAW0F,GAE9C9D,EAAK5B,MAId,QAAS6I,GACRjH,EACAY,EACAK,EACAyD,EACAZ,EACAO,GAEA,MAAqB,OAAjBrE,EAAKrB,UAAoBqB,EAAKrB,SAASE,OAAS,EAC5CgG,EACNjE,EACAZ,EAAKjC,IACLtB,EACAA,EACAuD,EAAKrB,SACLsC,EAAOtC,UACP,EACA,EACAqB,EAAK5B,MAAM0G,gBAAkBlE,EAAO8D,EACpCZ,EACAO,GAEMrE,EAAKrB,SAId,QAASuI,GACRlH,EACA5B,EACAO,EACAiC,EACAkD,EACAG,EACAP,GAEA,GAAIzC,IACHlD,IAAKiC,EAAKjC,IACVK,MAAOA,EACPO,SAAUA,EACV2C,OAAQV,GAgBT,OAbAoD,GAAwB/C,EAAQgD,EAAOP,GAEnCzC,EAAOtC,WAAasC,EAAOtC,SAAS2C,QACvCL,EAAOtC,SAAS2C,UAKA,WAAbtB,EAAKjC,KAAoB,SAAWiC,GAAK5B,OAC5CwG,EAAchE,EAAMZ,EAAKjC,KAAM2H,MAAO1F,EAAK5B,MAAMsH,UAChD5B,GAGK7C,EAGR,QAASkG,GAAclD,EAAOmD,EAAMC,EAAmB1D,GACtD,GAAI2D,EAQJ,OALCA,GAD2B,SAAxBpL,EAAEkH,OAAOC,YAAyBY,EACnBA,EAAMpB,QAAQuE,GAEd,GAGfE,EAAkB,GACdD,EAAkBC,GACf5K,EAAWiH,GACd,GAAIA,MAQb,QAAS4D,GAAYtD,EAAOP,EAAa0D,EAAMzD,GACnB,MAAvBA,EAAWF,UACb+D,GAAUC,IAAI,SAAUC,GAAK,MAAOA,GAAEC,UACpC9E,QAAQc,EAAWF,UAAY,GAClC+D,GAAUlJ,MACTqF,WAAYA,EACZgE,QAAShE,EAAWF,WAItBQ,EAAM3F,KAAK8I,GACX1D,EAAYpF,KAAKqF,GAIlB,QAASiE,GACR5H,EACAoH,EACAnG,EACAoG,EACA3D,EACAO,GAEA,GAAIN,GAAawD,EAChBlG,EAAOgD,MACPmD,EACAC,EACArH,EAAK2D,YAEF7D,EAAME,GAAQA,EAAK5B,OAAS4B,EAAK5B,MAAM0B,GAW3C,OALCE,GAJuB,IAApBmE,IACF0D,IACAR,GACCA,EAAkBxE,QAAQc,GAAc,GACnC3D,EAAKoH,KAAKzD,IAET5F,IAAK,eAGO,WAAjBiC,EAAK8H,QAA6B9H,GACtCA,EAAK5B,MAAQ4B,EAAK5B,UAClB4B,EAAK5B,MAAM0B,IAAMA,EACjByH,EAAYtD,EAAOP,EAAa0D,EAAMzD,GAC/B3D,GAGR,QAAS+H,GAAU/H,EAAMiB,EAAQgD,EAAOP,GAGvC,IAFA,GAAI2D,GAAoBpG,GAAUA,EAAOyC,YAErB,MAAb1D,EAAKoH,MACXpH,EAAO4H,EACN5H,EACAA,EAAKoH,KAAKY,WAAahI,EAAKoH,KAC5BnG,EACAoG,EACA3D,EACAO,EAGF,OAAOjE,GAGR,QAASiI,GACRjI,EACAiB,EACAyD,EACAtE,EACAE,EACAyF,EACAjC,EACAO,GAEA,GAAIJ,MACAP,IAIJ,IAFA1D,EAAO+H,EAAU/H,EAAMiB,EAAQgD,EAAOP,GAEjB,WAAjB1D,EAAK8H,QAAsB,MAAO7G,EAEtC,KAAKjB,EAAKjC,KAAO2F,EAAY7E,OAC5B,KAAM,IAAIY,OAAM,+EAIjBO,GAAK5B,MAAQ4B,EAAK5B,UAClB6C,EAAO7C,MAAQ6C,EAAO7C,SAEtB,IAAI6E,GAAeC,OAAOC,KAAKnD,EAAK5B,OAChCuG,EAAU1B,EAAapE,QAAU,OAASmB,GAAK5B,MAAQ,EAAI,EAI/D,IAFAoF,EAAoBxD,EAAMiB,EAAQgC,GAE7BlG,EAASiD,EAAKjC,KAAnB,CAEA,GAAIuG,GAAgC,IAAxBrD,EAAOK,MAAMzC,MAEzBiF,GAAYD,EAAmB7D,EAAM8D,EAErC,IAAIlD,EACJ,IAAI0D,EAAO,CACV1D,EAAOiG,EAAc7G,EAAM8D,EAE3B,IAAI1F,GAAQ4I,EAAehH,EAAMY,EAAMkD,EAAWa,EAGlDpE,GAAWH,EAAeQ,EAAMN,EAEhC,IAAI3B,GAAWsI,EAAkBjH,EAAMY,EAAMK,EAAQyD,EACpDZ,EAAWO,EAEZpD,GAASiG,EACRlH,EACA5B,EACAO,EACAiC,EACAkD,EACAG,EACAP,OAED9C,GAAO6D,EACNxD,EACAjB,EACA0E,EACAC,EACAb,EACAG,EACAI,EACAX,EAUF,OAPKY,IAASyB,KAAmB,GAAgB,MAARnF,GACxCL,EAAWH,EAAeQ,EAAMN,GAIjC8D,EAA0BC,EAASrE,EAAMY,EAAM0D,EAAOrD,GAE/CA,GAGR,QAAS4D,GACRzE,EACAoF,EACAkB,EACAD,EACAzG,EACAiB,EACA8E,EACAzF,EACAoE,EACAZ,EACAO,GAuDA,MADArE,GAAOD,EAAaC,GACC,WAAjBA,EAAK8H,QAA6B7G,GACtCA,EAASuF,EAAUxG,EAAMiB,EAAQX,EAAOmG,EAAaC,GAEjD5H,GAAQkB,GACJmG,EACNnG,EACAiB,EACAb,EACAE,EACAkF,EACAO,EACArB,EACAZ,EACAO,GACiB,MAARrE,GAAgBpD,EAASoD,GAC5BiI,EACNjI,EACAiB,EACAyD,EACAtE,EACAE,EACAyF,EACAjC,EACAO,GACU3H,EAAWsD,GAUfiB,EATA6E,EACN7E,EACAjB,EACAM,EACAF,EACA2F,EACArB,EACAc,IAMH,QAAS3D,GAAYqG,EAAGC,GACvB,MAAOD,GAAEhH,OAASiH,EAAEjH,QAAUgH,EAAE5H,MAAQ6H,EAAE7H,MAG3C,QAAS8H,GAAexH,EAAMyH,EAAUC,GACvC,IAAK,GAAIC,KAAQF,GACZlJ,GAAOrC,KAAKuL,EAAUE,KACP,MAAdD,GAAsBA,EAAWC,KAAUF,EAASE,KACvD3H,EAAK4H,MAAMD,GAAQF,EAASE,IAK/B,KAAKA,IAAQD,GACRnJ,GAAOrC,KAAKwL,EAAYC,KACtBpJ,GAAOrC,KAAKuL,EAAUE,KAAO3H,EAAK4H,MAAMD,GAAQ,KAcxD,QAASE,GACR7H,EACA1B,EACAmJ,EACAC,EACAvK,EACA+F,GAEA,GAAiB,WAAb5E,GAAsC,QAAbA,EAE5B,OAAO,CACD,IAAIxC,EAAW2L,IAAsC,OAAzBnJ,EAASN,MAAM,EAAG,GAEpDgC,EAAK1B,GAAYwJ,EAAWL,EAAUzH,OAChC,IAAiB,UAAb1B,GAAoC,MAAZmJ,GACjCzL,EAASyL,GAEVD,EAAexH,EAAMyH,EAAUC,OACzB,IAAiB,MAAbxE,EAEO,SAAb5E,EACH0B,EAAK+H,eAAe,+BACnB,OAAQN,GAETzH,EAAKgI,aACS,cAAb1J,EAA2B,QAAUA,EACrCmJ,OAEI,IAAInJ,IAAY0B,KAASiI,GAAsB3J,GAYrD,IACa,UAARnB,GAAmB6C,EAAK1B,KAAcmJ,IACzCzH,EAAK1B,GAAYmJ,GAEjB,MAAOnI,GACRU,EAAKgI,aAAa1J,EAAUmJ,OAGzBzH,GAAKgI,aAAa1J,EAAUmJ,GAGlC,QAASS,GACRlI,EACA1B,EACAmJ,EACAC,EACAS,EACAhL,EACA+F,GAEA,GAAM5E,IAAY6J,IAAiBT,IAAeD,GAAclL,GAAUsI,gBAAkB7E,EAepE,UAAb1B,GAAgC,UAARnB,GACjC6C,EAAK8E,QAAU2C,IAEhBzH,EAAK8E,MAAQ2C,OAlBqF,CAClGU,EAAY7J,GAAYmJ,CACxB,KACC,MAAOI,GACN7H,EACA1B,EACAmJ,EACAC,EACAvK,EACA+F,GACA,MAAO5D,GAGR,GAAIA,EAAE8I,QAAQnG,QAAQ,oBAAsB,EAAG,KAAM3C,KASxD,QAAS0E,GAAchE,EAAM7C,EAAKkL,EAAWF,EAAajF,GACzD,IAAK,GAAI5E,KAAY+J,IAChB9J,GAAOrC,KAAKmM,EAAW/J,KACtB4J,EACFlI,EACA1B,EACA+J,EAAU/J,GACV6J,EAAY7J,GACZ6J,EACAhL,EACA+F,EAKJ,OAAOiF,GAGR,QAAS7G,GAAMZ,EAAOL,GACrB,IAAK,GAAI3B,GAAIgC,EAAMzC,OAAS,EAAGS,EAAI,GAAIA,IACtC,GAAIgC,EAAMhC,IAAMgC,EAAMhC,GAAGsD,WAAY,CACpC,IACCtB,EAAMhC,GAAGsD,WAAWsG,YAAY5H,EAAMhC,IACrC,MAAOY,IAMTe,KAAYP,OAAOO,GACfA,EAAO3B,IAAI6J,EAAOlI,EAAO3B,IAK3BgC,EAAMzC,SACTyC,EAAMzC,OAAS,GAIjB,QAASsK,GAAOlI,GACXA,EAAOqC,eAAiB5G,EAAWuE,EAAOqC,cAAcG,YAC3DxC,EAAOqC,cAAcG,WACrBxC,EAAOqC,cAAcG,SAAW,MAE7BxC,EAAOyC,aACVhE,EAAQuB,EAAOyC,YAAa,SAAUC,GACjCjH,EAAWiH,EAAWF,WACzBE,EAAWF,UAAUG,eAAgB5G,MAIpCiE,EAAOtC,WACNG,GAAQmC,EAAOtC,UAAWe,EAAQuB,EAAOtC,SAAUwK,GAC9ClI,EAAOtC,SAASZ,KAAKoL,EAAOlI,EAAOtC,WAI9C,QAASyK,GAAmBhJ,EAAeJ,GAC1C,IACCI,EAAciJ,YACblM,GAAUmM,cAAcC,yBAAyBvJ,IACjD,MAAOE,GACRE,EAAcoJ,mBAAmB,YAAaxJ,IAIhD,QAASkF,GAAW9E,EAAeE,EAAON,GACzC,GAAIyJ,GAAcrJ,EAAcU,WAAWR,EAC3C,IAAImJ,EAAa,CAChB,GAAIC,GAAqC,IAAzBD,EAAY7D,SACxB+D,EAAcxM,GAAUoE,cAAc,OACtCmI,IACHtJ,EAAcS,aAAa8I,EAAaF,GAAe,MACvDE,EAAYH,mBAAmB,cAAexJ,GAC9CI,EAAc8I,YAAYS,IAE1BF,EAAYD,mBAAmB,cAAexJ,OAG/CoJ,GAAmBhJ,EAAeJ,EAKnC,KAFA,GAAIsB,MAEGlB,EAAcU,WAAWR,KAAWmJ,GAC1CnI,EAAMhD,KAAK8B,EAAcU,WAAWR,IACpCA,GAGD,OAAOgB,GAGR,QAASoH,GAAWkB,EAAUjN,GAC7B,MAAO,UAAUuD,GAChBA,EAAIA,GAAK2J,MACT3N,EAAEkH,OAAOC,SAAS,QAClBnH,EAAE4N,kBACF,KACC,MAAOF,GAAS9M,KAAKH,EAAQuD,GAC5B,QACD6J,OAoEH,QAASC,GAAgB3I,GACxB,GAAIf,GAAQ2J,GAAUpH,QAAQxB,EAC9B,OAAe,GAARf,EAAY2J,GAAU3L,KAAK+C,GAAW,EAAIf,EASlD,QAAS4J,IAAaC,GACrB,QAASzI,KAER,MADInC,WAAUV,SAAQsL,EAAQ5K,UAAU,IACjC4K,EAOR,MAJAzI,GAAK0I,OAAS,WACb,MAAOD,IAGDzI,EAsBR,QAASlC,IAAa6K,EAAW5L,GAChC,QAASkF,KAER,OAAQ0G,EAAU1G,YAAc3G,GAAM2D,MAAMnE,KAAMiC,IAASjC,KAQ5D,QAAS4K,GAAKkD,GAEb,IAAK,GADDC,IAAeD,GAAM5J,OAAOjC,GACvBa,EAAI,EAAGA,EAAIC,UAAUV,OAAQS,IACrCiL,EAAYjM,KAAKiB,UAAUD,GAG5B,OAAO+K,GAAUjD,KAAKzG,MAAM0J,EAAWE,GAVpCF,EAAU1G,aACbA,EAAW6G,UAAYH,EAAU1G,WAAW6G,WAY7CpD,EAAKY,UAAYqC,EAAUjD,IAC3B,IAAIqD,IAAU9G,WAAYA,EAAYyD,KAAMA,EAE5C,OADI3I,GAAK,IAAqB,MAAfA,EAAK,GAAGqB,MAAa2K,EAAOrM,OAAS0B,IAAKrB,EAAK,GAAGqB,MAC1D2K,EAaR,QAASC,IAAeL,EAAWM,EAAMrK,EAAOsK,GAC/C,IAAKA,EAAa,CACjB1O,EAAEkH,OAAOC,SAAS,OAClBnH,EAAE4N,mBACFe,GAAMvK,GAASqK,CACf,IAAIG,EAGHA,GAAmBC,GADhBV,EAC+BA,EAEAA,GAAa1G,WAAY3G,EAG5D,IAAI2G,GAAa,IAAK0G,EAAU1G,YAAc3G,EAc9C,OARI8N,KAAqBC,KACxBrH,GAAYpD,GAASqD,EACrBqH,GAAW1K,GAAS+J,GAErBN,KACkB,OAAdM,GACHY,GAAkBN,EAAMrK,GAElBoD,GAAYpD,GACI,MAAb+J,GACVY,GAAkBN,EAAMrK,GAyC1B,QAAS2K,IAAkBN,EAAMrK,GAChCuK,GAAM1I,OAAO7B,EAAO,GACpBoD,GAAYvB,OAAO7B,EAAO,GAC1B0K,GAAW7I,OAAO7B,EAAO,GACzB4K,GAAMP,GACNV,GAAU9H,OAAO6H,EAAgBW,GAAO,GAoCzC,QAASvH,MACJ+H,KACHA,KACAA,GAAuB,MAExBzL,EAAQmL,GAAO,SAAUF,EAAMrL,GAC9B,GAAI+K,GAAYW,GAAW1L,EAC3B,IAAIoE,GAAYpE,GAAI,CACnB,GAAIb,IAAQiF,GAAYpE,GACxBpD,GAAEkP,OAAOT,EACRN,EAAUjD,KAAOiD,EAAUjD,KAAK1D,GAAYpE,GAAIb,GAAQ,OAKvD4M,KACHA,KACAA,GAAwB,MAEzBC,GAAe,KACfC,GAAqB,GAAIC,MACzBtP,EAAEkH,OAAOC,SAAS,QAGnB,QAAS0G,MACoB,SAAxB7N,EAAEkH,OAAOC,YACZc,KACAjI,EAAEkH,OAAOC,SAAS,SAElBnH,EAAEuP,iBA+IJ,QAASC,IAAeC,GACvB,MAAOA,GAAM/M,MAAMgN,GAAM1P,EAAEyP,MAAME,MAAMhN,QAGxC,QAASiN,IAAanB,EAAMoB,EAAQC,GACnCC,KAEA,IAAIC,GAAaF,EAAKnJ,QAAQ,IACX,MAAfqJ,IACHD,GAAcE,GACbH,EAAKI,OAAOF,EAAa,EAAGF,EAAKnN,SAClCmN,EAAOA,EAAKI,OAAO,EAAGF,GAKvB,IAAI/I,GAAOD,OAAOC,KAAK4I,GACnBzL,EAAQ6C,EAAKN,QAAQmJ,EAEzB,IAAc,KAAV1L,EAEH,MADApE,GAAEmQ,MAAM1B,EAAMoB,EAAO5I,EAAM7C,MACpB,CAGR,KAAK,GAAIqL,KAASI,GACjB,GAAI5M,GAAOrC,KAAKiP,EAAQJ,GAAQ,CAC/B,GAAIA,IAAUK,EAEb,MADA9P,GAAEmQ,MAAM1B,EAAMoB,EAAOJ,KACd,CAGR,IAAIW,GAAU,GAAIC,QAAO,IAAMZ,EAC7Ba,QAAQ,iBAAkB,SAC1BA,QAAQ,WAAY,aAAe,MAErC,IAAIF,EAAQG,KAAKT,GAYhB,MAVAA,GAAKQ,QAAQF,EAAS,WACrB,GAAInJ,GAAOwI,EAAM3N,MAAM,gBACnB0O,KAAY9N,MAAM9B,KAAKyC,UAAW,EAAG,GACzCG,GAAQyD,EAAM,SAAUrD,EAAKR,GAC5B2M,GAAYnM,EAAI0M,QAAQ,QAAS,KAChCG,mBAAmBD,EAAOpN,MAE5BpD,EAAEmQ,MAAM1B,EAAMoB,EAAOJ,OAGf,GAMX,QAASiB,IAAiB1M,GAEzB,GADAA,EAAIA,GAAK2J,QACL3J,EAAE2M,SAAW3M,EAAE4M,SAAW5M,EAAE6M,UAAwB,IAAZ7M,EAAE8M,OAA9C,CAEI9M,EAAE0D,eACL1D,EAAE0D,iBAEF1D,EAAE+M,aAAc,CAGjB,IACIxO,GADAyO,EAAgBhN,EAAEgN,eAAiBhN,EAAEiN,UASzC,KALC1O,EADoB,aAAjBvC,EAAEyP,MAAME,MAAuBqB,EAAcE,OACzCjB,GAAiBe,EAAcE,OAAOxO,MAAM,OAK7CsO,IAAkB,KAAKT,KAAKS,EAAc9H,WAChD8H,EAAgBA,EAActK,UAI/BuB,IAAkB,EAClBjI,EAAEyP,MAAMuB,EAAchR,EAAEyP,MAAME,MAC5BjN,MAAMgN,GAAM1P,EAAEyP,MAAME,MAAMhN,QAASJ,IAGtC,QAAS4O,MACa,SAAjBnR,EAAEyP,MAAME,MAAmBxO,GAAUiQ,KACxCjQ,GAAUiQ,KAAOjQ,GAAUiQ,KAE3BtR,EAAOuR,SAAS,EAAG,GAIrB,QAASC,IAAiB7Q,EAAQ8Q,GACjC,GAAIC,MACAC,IAEJ,KAAK,GAAIjM,KAAQ/E,GAChB,GAAIwC,GAAOrC,KAAKH,EAAQ+E,GAAO,CAC9B,GAAI5B,GAAM2N,EAASA,EAAS,IAAM/L,EAAO,IAAMA,EAC3CgE,EAAQ/I,EAAO+E,EAEnB,IAAc,OAAVgE,EACHiI,EAAIrP,KAAKsP,mBAAmB9N,QACtB,IAAIlD,EAAS8I,GACnBiI,EAAIrP,KAAKkP,GAAiB9H,EAAO5F,QAC3B,IAAIhB,GAAQ4G,GAAQ,CAC1B,GAAIvC,KACJuK,GAAW5N,GAAO4N,EAAW5N,OAE7BJ,EAAQgG,EAAO,SAAUQ,GAEnBwH,EAAW5N,GAAKoG,KACpBwH,EAAW5N,GAAKoG,IAAQ,EACxB/C,EAAK7E,KAAKsP,mBAAmB9N,GAAO,IACnC8N,mBAAmB1H,OAGtByH,EAAIrP,KAAK6E,EAAK/D,KAAK,UACTsG,KAAUjJ,GACpBkR,EAAIrP,KAAKsP,mBAAmB9N,GAAO,IAClC8N,mBAAmBlI,IAKvB,MAAOiI,GAAIvO,KAAK,KAGjB,QAAS+M,IAAiBwB,GACzB,GAAY,KAARA,GAAqB,MAAPA,EAAa,QACT,OAAlBA,EAAIE,OAAO,KAAYF,EAAMA,EAAI/O,MAAM,GAE3C,IAAIS,GAAQsO,EAAIG,MAAM,KAClBC,IAaJ,OAXArO,GAAQL,EAAO,SAAU2O,GACxB,GAAIzP,GAAOyP,EAAOF,MAAM,KACpBhO,EAAM6M,mBAAmBpO,EAAK,IAC9BmH,EAAwB,IAAhBnH,EAAKM,OAAe8N,mBAAmBpO,EAAK,IAAM,IAC3C,OAAfwP,EAAOjO,IACLhB,GAAQiP,EAAOjO,MAAOiO,EAAOjO,IAAQiO,EAAOjO,KACjDiO,EAAOjO,GAAKxB,KAAKoH,IAEbqI,EAAOjO,GAAO4F,IAGbqI,EAMR,QAAS7C,IAAMP,GACd,GAAIsD,GAAWjE,EAAgBW,EAC/BzI,GAAMyI,EAAK7J,WAAYoN,GAAUD,IACjCC,GAAUD,GAAYxR,EASvB,QAAS0R,IAAQC,EAASC,GACzB,GAAI3M,GAAOxF,EAAEwF,KAAK2M,EAOlB,OANAD,GAAQE,KAAK5M,GACbA,EAAK4M,KAAO,SAAUC,EAASC,GAC9B,MAAOL,IAAQC,EAAQE,KAAKC,EAASC,GAASH,IAG/C3M,EAAAA,SAAaA,EAAK4M,KAAKG,KAAK,KAAM,MAC3B/M,EAmBR,QAASgN,IAASC,EAAWC,GA4C5B,QAASC,GAAOhS,GACfiS,EAAQjS,GAAQkS,GAChBC,EAAKvH,IAAI,SAAUwH,GACdH,IAAUI,GACbD,EAASV,QAAQY,GAEjBF,EAAST,OAAOW,KAKnB,QAASC,GAAUd,EAAMe,EAASC,EAASC,GAC1C,IAAsB,MAAhBJ,GAAwBvS,EAASuS,IACrCzS,EAAWyS,KAAkBzS,EAAW4R,GACzC,IAEC,GAAIkB,GAAQ,CACZlB,GAAKxR,KAAKqS,EAAc,SAAUzJ,GAC7B8J,MACJL,EAAezJ,EACf2J,MACE,SAAU3J,GACR8J,MACJL,EAAezJ,EACf4J,OAEA,MAAOpP,GACRhE,EAAE+S,SAASQ,QAAQvP,GACnBiP,EAAejP,EACfoP,QAGDC,KAIF,QAASG,KAER,GAAIpB,EACJ,KACCA,EAAOa,GAAgBA,EAAab,KACnC,MAAOpO,GAIR,MAHAhE,GAAE+S,SAASQ,QAAQvP,GACnBiP,EAAejP,EACf4O,EAAQa,GACDD,IAGJZ,IAAUa,IACbzT,EAAE+S,SAASQ,QAAQN,GAGpBC,EAAUd,EAAM,WACfQ,EAAQc,GACRF,KACE,WACFZ,EAAQa,GACRD,KACE,WACF,IACKZ,IAAUc,IAAalT,EAAWiS,GACrCQ,EAAeR,EAAUQ,GACfL,IAAUa,IAAajT,EAAWkS,KAC5CO,EAAeP,EAAUO,GACzBL,EAAQc,IAER,MAAO1P,GAGR,MAFAhE,GAAE+S,SAASQ,QAAQvP,GACnBiP,EAAejP,EACR2O,IAGJM,IAAiBU,GACpBV,EAAeW,YACfjB,KAEAO,EAAUd,EAAM,WACfO,EAAOK,KACLL,EAAQ,WACVA,EAAOC,IAAUc,IAAaV,QA1HlC,GAAIW,GAAOrT,KACPsS,EAAQ,EACRK,EAAe,EACfH,IAEJa,GAAKzB,WAELyB,EAAKtB,QAAU,SAAU7I,GAQxB,MAPKoJ,KACJK,EAAezJ,EACfoJ,EAAQc,GAERF,KAGMG,GAGRA,EAAKrB,OAAS,SAAU9I,GAQvB,MAPKoJ,KACJK,EAAezJ,EACfoJ,EAAQa,GAERD,KAGMG,GAGRA,EAAKzB,QAAQE,KAAO,SAAUK,EAAWC,GACxC,GAAIK,GAAW,GAAIP,IAASC,EAAWC,EAUvC,OARIE,KAAUI,GACbD,EAASV,QAAQY,GACPL,IAAUC,GACpBE,EAAST,OAAOW,GAEhBH,EAAK1Q,KAAK2Q,GAGJA,EAASb,SA8HlB,QAAS2B,IAASrK,GAAS,MAAOA,GAElC,QAASsK,IAAYC,GACpB,GAAIC,GAAc,qBACjB,GAAI1E,OAAO2E,UAAY,IACtBC,KAAKC,MAAsB,KAAhBD,KAAKE,UAAkBrQ,SAAS,IAEzCsQ,EAASpT,GAAUoE,cAAc,SAErCvF,GAAOkU,GAAe,SAAUM,GAC/BD,EAAO3N,WAAWsG,YAAYqH,GAC9BN,EAAQQ,QACP5T,KAAM,OACNmC,QACC0R,aAAcF,KAGhBxU,EAAOkU,GAAezT,GAGvB8T,EAAOd,QAAU,WAchB,MAbAc,GAAO3N,WAAWsG,YAAYqH,GAE9BN,EAAQR,SACP5S,KAAM,QACNmC,QACC2R,OAAQ,IACRD,aAAcE,KAAKC,WAClBC,MAAO,kCAIV9U,EAAOkU,GAAezT,GAEf,GAGR8T,EAAOE,OAAS,WACf,OAAO,GAGRF,EAAOQ,IAAMd,EAAQe,KACnBf,EAAQe,IAAInO,QAAQ,KAAO,EAAI,IAAM,MACrCoN,EAAQC,YAAcD,EAAQC,YAAc,YAC7C,IAAMA,EACN,IAAM1C,GAAiByC,EAAQjQ,UAEhC7C,GAAU8T,KAAK5H,YAAYkH,GAG5B,QAASW,IAAUjB,GAClB,GAAIkB,GAAM,GAAInV,GAAOoV,cAyBrB,IAxBAD,EAAIE,KAAKpB,EAAQqB,OAAQrB,EAAQe,KAAK,EAAMf,EAAQsB,KACnDtB,EAAQuB,UAETL,EAAIM,mBAAqB,WACD,IAAnBN,EAAIO,aACHP,EAAIR,QAAU,KAAOQ,EAAIR,OAAS,IACrCV,EAAQQ,QAAQ5T,KAAM,OAAQmC,OAAQmS,IAEtClB,EAAQR,SAAS5S,KAAM,QAASmC,OAAQmS,MAKvClB,EAAQ0B,YAAcf,KAAKC,WAC7BZ,EAAQjQ,MACW,QAAnBiQ,EAAQqB,QACTH,EAAIS,iBAAiB,eACpB,mCAGE3B,EAAQ4B,cAAgBjB,KAAKkB,OAChCX,EAAIS,iBAAiB,SAAU,4BAG5BlV,EAAWuT,EAAQ1L,QAAS,CAC/B,GAAIwN,GAAW9B,EAAQ1L,OAAO4M,EAAKlB,EACnB,OAAZ8B,IAAkBZ,EAAMY,GAG7B,GAAI/R,GAA0B,QAAnBiQ,EAAQqB,QAAqBrB,EAAQjQ,KAAYiQ,EAAQjQ,KAAb,EAEvD,IAAIA,IAASjD,EAASiD,IAASA,EAAKsF,cAAgBtJ,EAAOgW,SAC1D,KAAM,IAAIvS,OAAM,qGAKjB,OADA0R,GAAIc,KAAKjS,GACFmR,EAGR,QAASe,IAAKjC,GACb,MAAIA,GAAQkC,UAA+C,UAAnClC,EAAQkC,SAASC,cACjCpC,GAAYC,GAEZiB,GAAUjB,GAInB,QAASoC,IAASpC,EAASjQ,EAAM2R,GAChC,GAAuB,QAAnB1B,EAAQqB,QAAyC,UAArBrB,EAAQkC,SAAsB,CAC7D,GAAI1E,GAASwC,EAAQe,IAAInO,QAAQ,KAAO,EAAI,IAAM,IAC9CyP,EAAc9E,GAAiBxN,EACnCiQ,GAAQe,KAAQsB,EAAc7E,EAAS6E,EAAc,OAErDrC,GAAQjQ,KAAO2R,EAAU3R,GAI3B,QAASuS,IAAgBvB,EAAKhR,GAS7B,MARIA,KACHgR,EAAMA,EAAIxE,QAAQ,cAAe,SAAUgG,GAC1C,GAAI1S,GAAM0S,EAAM5T,MAAM,GAClB8G,EAAQ1F,EAAKF,IAAQ0S,CAEzB,cADOxS,GAAKF,GACL4F,KAGFsL,EAzjER9U,EAAEuW,QAAU,WACX,MAAO,SAGR,IAyCItV,IAAWE,GAAWK,GAAwBH,GAzC9C4B,MAAYuT,eACZ7V,MAAUoD,SAcVnB,GAAUiD,MAAMjD,SAAW,SAAUnC,GACxC,MAA6B,mBAAtBE,GAAKC,KAAKH,IAKd0I,IACHsN,KAAM,EACNC,KAAM,EACNC,GAAI,EACJC,IAAK,EACLC,QAAS,EACTC,MAAO,EACPC,GAAI,EACJC,IAAK,EACLC,MAAO,EACPC,OAAQ,EACRC,KAAM,EACNC,KAAM,EACNC,MAAO,EACPC,OAAQ,EACRC,MAAO,EACPC,IAAK,EAeNxX,GAAEyX,KAAO,SAAUzW,GAElB,MADAD,GAAWjB,EAASkB,GAAQX,QACrBP,GAGRE,EAAEyX,KAAK3X,EAqJP,IAAIiG,IAAW,EACXT,GAAY,EACZL,GAAO,EAmKPgD,GAAkB,CACtBjI,GAAE4N,iBAAmB,WAAc3F,MACnCjI,EAAEuP,eAAiB,WACdtH,GAAkB,EACrBA,MAEAA,GAAkB,EAClBjI,EAAEkH,UAuWJ,IAgdIwQ,IAhdApM,MAgBAK,IAAU,EA2PVgB,IACHlJ,KAAM,EACN6I,MAAO,EACPqL,KAAM,EACNhX,KAAM,EACNiX,MAAO,EACPC,OAAQ,GAgMLC,IACH3K,YAAa,SAAUzI,GAClBgT,KAASnX,IAAWmX,GAAOzW,GAAUoE,cAAc,SACnDpE,GAAU8W,iBACZ9W,GAAU8W,kBAAoBrT,EAC/BzD,GAAU+W,aAAatT,EAAMzD,GAAU8W,iBAEvC9W,GAAUkM,YAAYzI,GAGvBpE,KAAKsE,WAAa3D,GAAU2D,YAG7BD,aAAc,SAAUD,GACvBpE,KAAK6M,YAAYzI,IAGlBE,eAGGmJ,MACAiE,KAEJhS,GAAEkP,OAAS,SAAUT,EAAM7M,EAAMqW,GAChC,IAAKxJ,EACJ,KAAM,IAAIlL,OAAM,oFAGjB,IAGImB,GAHAyD,KACAhG,EAAK2L,EAAgBW,GACrByJ,EAAiBzJ,IAASxN,EAI7ByD,GADGwT,GAAkBzJ,IAASxN,GAAU8W,gBACjCD,GAEArJ,EAGJyJ,GAA+B,SAAbtW,EAAKC,MAC1BD,GAAQC,IAAK,OAAQK,SAAWO,SAAUb,IAGvCoQ,GAAU7P,KAAQ5B,GAAWyF,EAAMtB,EAAKE,YACxCqT,KAAoB,GAAMjJ,GAAMP,GAEpCuD,GAAU7P,GAAMwG,EACfjE,EACA,KACAnE,EACAA,EACAqB,EACAoQ,GAAU7P,IACV,EACA,EACA,KACA5B,EACA4H,GAED3E,EAAQ2E,EAAS,SAAUE,GAAUA,OAQtCrI,EAAEmY,MAAQ,SAAU3O,GAGnB,MAFAA,GAAQ,GAAI4O,QAAO5O,GACnBA,EAAMT,UAAW,EACVS,GAgBRxJ,EAAEwF,KAAO,SAAUyI,GAClB,OAAc,MAATA,GAAiBvN,EAASuN,IAAUzN,EAAWyN,KAClDzN,EAAWyN,EAAMmE,MACXH,GAAQhE,GAGTD,GAAaC,GAGrB,IAOIY,IAPAF,MACAG,MACAtH,MACA4H,GAAe,KACfC,GAAqB,EACrBJ,GAAuB,KACvBE,GAAwB,KAExBkJ,GAAe,EA4BnBrY,GAAEmO,UAAY,SAAUA,GAGvB,IAAK,GAFD5L,GAAO,GAAIsD,OAAMxC,UAAUV,OAAS,GAE/BS,EAAI,EAAGA,EAAIC,UAAUV,OAAQS,IACrCb,EAAKa,EAAI,GAAKC,UAAUD,EAGzB,OAAOE,IAAa6K,EAAW5L,IAoChCvC,EAAEmQ,MAAQnQ,EAAEC,OAAS,SAAUwO,EAAMN,GACpC,IAAKM,EACJ,KAAM,IAAIlL,OAAM,4EAIjB,IAAIa,GAAQuK,GAAMhI,QAAQ8H,EACd,GAARrK,IAAWA,EAAQuK,GAAMhM,OAE7B,IAAI+L,IAAc,EACdf,GACHjG,eAAgB,WACfgH,GAAc,EACdO,GAAuBE,GAAwB,MAqBjD,OAjBA3L,GAAQ8H,GAAW,SAAUgN,GAC5BA,EAAS7M,QAAQ7K,KAAK0X,EAAS7Q,WAAYkG,GAC3C2K,EAAS7Q,WAAWF,SAAW,OAG5BmH,EACHlL,EAAQ8H,GAAW,SAAUgN,GAC5BA,EAAS7Q,WAAWF,SAAW+Q,EAAS7M,UAGzCH,MAGG9D,GAAYpD,IAAU5D,EAAWgH,GAAYpD,GAAOmD,WACvDC,GAAYpD,GAAOmD,SAASoG,GAGtBa,GAAeL,EAAWM,EAAMrK,EAAOsK,GAW/C,IAAI6J,KAAY,CAChBvY,GAAEkH,OAAS,SAAUsR,GACpB,IAAID,GAAJ,CACAA,IAAY,EACRC,IAAO7M,IAAU,EAErB,KAKKyD,KAAiBoJ,GAKhBhX,KAA2B1B,EAAO2B,uBACpC,GAAI6N,MAASD,GAAqBgJ,MAC/BjJ,GAAe,GAAG/N,GAAsB+N,IAC5CA,GAAe5N,GAAuB0F,GAAQmR,MAG/CnR,KACAkI,GAAe5N,GAAuB,WACrC4N,GAAe,MACbiJ,KAEH,QACDE,GAAY5M,IAAU,KAIxB3L,EAAEkH,OAAOC,SAAWnH,EAAEwF,OAkCtBxF,EAAEyY,SAAW,SAAUjT,EAAMkT,EAAkBC,GAC9C,MAAO,UAAU3U,GAChBA,EAAIA,GAAK3D,OAAOsN,KAEhB,IAAIqD,GAAgBhN,EAAEgN,eAAiB1Q,KACnCsY,EAAQD,GAAgBrY,KAExBwC,EAAS0C,IAAQwL,GACpBA,EAAcxL,GACdwL,EAAc6H,aAAarT,EAC5BkT,GAAiB9X,KAAKgY,EAAO9V,IAK/B,IAGIiN,IAAa+I,GAHbpJ,IAASqJ,SAAU,GAAI3H,KAAM,IAAKF,OAAQ,KAC1C8H,GAAWlY,EACXmY,IAAiB,CAGrBjZ,GAAEyP,MAAQ,SAAUhB,EAAMyK,EAAMC,EAAMC,GAErC,GAAyB,IAArB/V,UAAUV,OAAc,MAAOmW,GAEnC,IAAyB,IAArBzV,UAAUV,QAAgB9B,EAASqY,GAAO,CAC7CF,GAAW,SAAUK,GACpB,GAAIvJ,GAAOgJ,GAAetJ,GAAe6J,EACzC,KAAKzJ,GAAanB,EAAM0K,EAAMrJ,GAAO,CACpC,GAAImJ,GACH,KAAM,IAAI1V,OAAM,wEAIjB0V,KAAiB,EACjBjZ,EAAEyP,MAAMyJ,GAAM,GACdD,IAAiB,GAInB,IAAIK,GAA4B,SAAjBtZ,EAAEyP,MAAME,KACtB,eACA,YAWD,OATA7P,GAAOwZ,GAAY,WAClB,GAAIxJ,GAAO3O,GAAUnB,EAAEyP,MAAME,KACR,cAAjB3P,EAAEyP,MAAME,OAAqBG,GAAQ3O,GAAU+P,QAC/C4H,KAAiBtJ,GAAeM,IAAOkJ,GAASlJ,IAGrDb,GAAuBkC,OACvBrR,GAAOwZ,KAMR,GAAI7K,EAAK8K,kBAAoB9K,EAAK+K,YAAa,CAC9C,GAAIC,GAAwB,aAAjBzZ,EAAEyP,MAAME,KAAsBxO,GAAU4X,SAAW,EAU9D,OATAtK,GAAKiL,KAAOD,EAAO/J,GAAM1P,EAAEyP,MAAME,MAAQyJ,EAAKlX,MAAMwX,UAChDjL,EAAK8K,kBACR9K,EAAKkL,oBAAoB,QAASjJ,IAClCjC,EAAK8K,iBAAiB,QAAS7I,MAE/BjC,EAAKmL,YAAY,UAAWlJ,IAC5BjC,EAAK+K,YAAY,UAAW9I,MAM9B,GAAI7P,EAAS4N,GAAO,CACnB,GAAIoL,GAAWf,EACfA,IAAerK,CAEf,IAEIoD,GAFAtP,EAAO2W,MACPY,EAAahB,GAAanS,QAAQ,IAIrCkL,GADGiI,EAAa,GACP7J,GAAiB6I,GAAapW,MAAMoX,EAAa,MAK3D,KAAK,GAAI1W,KAAKb,GACTU,GAAOrC,KAAK2B,EAAMa,KACrByO,EAAOzO,GAAKb,EAAKa,GAInB,IACI2W,GADA3D,EAAc9E,GAAiBO,EAIlCkI,GADGD,EAAa,GACFhB,GAAapW,MAAM,EAAGoX,GAEtBhB,GAGX1C,IACH0C,GAAeiB,GACgB,KAA7BA,EAAYpT,QAAQ,KAAc,IAAM,KACzCyP,EAGF,IAAI4D,IACmB,IAArB3W,UAAUV,OAAewW,EAAOD,MAAU,GAC3CW,IAAapL,CAEd,IAAI3O,EAAOma,QAAQC,UAAW,CAC7B,GAAI9E,GAAS4E,EAAiB,eAAiB,WAC/C/K,IAAuBkC,GACvBhC,GAAwB,WACvBrP,EAAOma,QAAQ7E,GAAQ,KAAMnU,GAAUkZ,MACtCzK,GAAM1P,EAAEyP,MAAME,MAAQmJ,KAExBE,GAAStJ,GAAM1P,EAAEyP,MAAME,MAAQmJ,QAE/B3X,IAAUnB,EAAEyP,MAAME,MAAQmJ,GAC1BE,GAAStJ,GAAM1P,EAAEyP,MAAME,MAAQmJ,MAKlC9Y,EAAEyP,MAAM2K,MAAQ,SAAUxW,GACzB,IAAKmM,GACJ,KAAM,IAAIxM,OAAM,sFAIjB,OAAKK,GAIEmM,GAAYnM,GAHXmM,IAMT/P,EAAEyP,MAAME,KAAO,SAqJf3P,EAAEyP,MAAM6B,iBAAmBA,GAC3BtR,EAAEyP,MAAMQ,iBAAmBA,GAQ3BjQ,EAAE+S,SAAW,WACZ,GAAIA,GAAW,GAAIP,GAEnB,OADAO,GAASb,QAAUD,GAAQc,EAASb,SAC7Ba,EAyBR,IAAIW,IAAY,EACZD,GAAY,EACZT,GAAW,EACXH,GAAW,CAuWf,OAnOA7S,GAAE+S,SAASQ,QAAU,SAAUvP,GAC9B,GAAqB,mBAAjBrD,GAAKC,KAAKoD,KACX,SAASuM,KAAKvM,EAAEoF,YAAYrF,YAE9B,KADAkE,IAAkB,EACZjE,GAIRhE,EAAEqa,KAAO,SAAU9X,GAMlB,QAAS+X,GAAaC,EAAKC,GAC1B,MAAO,UAAUhR,GAOhB,MANAiR,GAAQF,GAAO/Q,EACVgR,IAAUpF,EAAS,UACF,MAAhBsF,IACL3H,EAASb,QAAQuI,GACjB1H,EAASqC,GAAQqF,IAEXjR,GAbT,GAAIuJ,GAAW/S,EAAE+S,WACb2H,EAAcnY,EAAKI,OACnB8X,KACArF,EAAS,SAsBb,OARI7S,GAAKI,OAAS,EACjBa,EAAQjB,EAAM,SAAUoY,EAAKvX,GAC5BuX,EAAIvI,KAAKkI,EAAalX,GAAG,GAAOkX,EAAalX,GAAG,MAGjD2P,EAASV,YAGHU,EAASb,SA6HjBlS,EAAE4a,QAAU,SAAU7G,GACjBA,EAAQ8G,cAAe,GAAM7a,EAAE4N,kBACnC,IAII6H,GAAWE,EAAamF,EAJxB/H,EAAW,GAAIP,IACfuI,EAAUhH,EAAQkC,UACc,UAAnClC,EAAQkC,SAASC,aA6DlB,OAzDI6E,IACHtF,EAAY1B,EAAQ0B,UACpBE,EAAc5B,EAAQ4B,YAAc9B,GAEpCiH,EAAU,SAAUE,GAAS,MAAOA,GAAMxG,gBAE1CiB,EAAY1B,EAAQ0B,UAAY1B,EAAQ0B,WAAaf,KAAKC,UAE1DgB,EAAc5B,EAAQ4B,YACrB5B,EAAQ4B,aAAejB,KAAKkB,MAC7BkF,EAAU/G,EAAQ+G,SAAW,SAAU7F,GACtC,MAAIA,GAAIT,aAAa7R,QAAUgT,IAAgBjB,KAAKkB,MAC5CX,EAAIT,aAEJ,OAKVT,EAAQqB,QAAUrB,EAAQqB,QAAU,OAAO6F,cAC3ClH,EAAQe,IAAMuB,GAAgBtC,EAAQe,IAAKf,EAAQjQ,MACnDqS,GAASpC,EAASA,EAAQjQ,KAAM2R,GAChC1B,EAAQQ,OAASR,EAAQR,QAAU,SAAU2H,GAC5C,IACCA,EAAKA,GAAMvN,KACX,IAAIwN,GAAWxF,EAAYmF,EAAQI,EAAGpY,OAAQiR,GAC9B,UAAZmH,EAAGva,MACFoT,EAAQqH,gBACXD,EAAWpH,EAAQqH,cAAcD,EAAUD,EAAGpY,SAG3CF,GAAQuY,IAAapH,EAAQpT,KAChC6C,EAAQ2X,EAAU,SAAUE,EAAKjY,GAChC+X,EAAS/X,GAAK,GAAI2Q,GAAQpT,KAAK0a,KAEtBtH,EAAQpT,OAClBwa,EAAW,GAAIpH,GAAQpT,KAAKwa,IAG7BpI,EAASV,QAAQ8I,KAEbpH,EAAQuH,cACXH,EAAWpH,EAAQuH,YAAYH,EAAUD,EAAGpY,SAG7CiQ,EAAST,OAAO6I,IAEhB,MAAOnX,GACR+O,EAAST,OAAOtO,GAChBhE,EAAE+S,SAASQ,QAAQvP,GAClB,QACG+P,EAAQ8G,cAAe,GAAM7a,EAAEuP,mBAIrCyG,GAAKjC,GACLhB,EAASb,QAAUD,GAAQc,EAASb,QAAS6B,EAAQ5B,cAC9CY,EAASb,SAGVlS","file":"mithril.min.js"} \ No newline at end of file +{"version":3,"sources":["mithril.js"],"names":["global","factory","m","module","exports","define","amd","window","this","undefined","isFunction","object","isObject","type","call","isString","noop","initialize","mock","$document","document","$location","location","$cancelAnimationFrame","cancelAnimationFrame","clearTimeout","$requestAnimationFrame","requestAnimationFrame","setTimeout","parseTagAttrs","cell","tag","match","classes","parser","exec","attrs","id","push","attrValue","replace","getVirtualChildren","args","hasAttrs","children","slice","length","isArray","assignAttrs","target","classAttr","attrName","hasOwn","join","pairs","i","arguments","parameterize","Error","forEach","list","f","forKeys","key","dataToString","data","toString","e","injectTextNode","parentElement","first","index","insertNode","nodeValue","flatten","concat","apply","node","insertBefore","childNodes","handleKeysDiffer","existing","cached","action","MOVE","from","element","nodes","createElement","INSERTION","actions","prop","changes","sort","sortChanges","newCached","Array","change","DELETION","clear","splice","dummy","changeElement","maybeChanged","diffKeys","keysDiffer","cachedCell","diffArray","_","parentNode","indexOf","buildArrayKeys","guid","isDifferentEnough","dataAttrKeys","Object","keys","redraw","strategy","configContext","retain","maybeRecreateObject","onunload","controllers","controller","preventDefault","getObjectNamespace","namespace","xmlns","unloadCachedControllers","views","$old","pendingRequests","scheduleConfigsToBeCalled","configs","isNew","config","context","buildUpdatedNode","editable","hasKeys","setAttributes","build","contenteditable","intact","handleNonexistentNodes","$trusted","injectHTML","createTextNode","nodeName","voidElements","constructor","reattachNodes","parentTag","activeElement","value","innerHTML","nodeType","trim","handleTextNode","shouldReattach","valueOf","getSubArrayCount","item","buildArray","subArrayCount","shouldMaintainIdentities","cacheCount","len","makeCache","parentIndex","parentCache","offset","end","constructNode","is","createElementNS","constructAttrs","constructChildren","reconstructCached","getController","view","cachedControllers","controllerIndex","updateLists","unloaders","map","u","handler","checkView","forcing","subtree","markViews","$original","buildObject","a","b","copyStyleAttrs","dataAttr","cachedAttr","rule","style","setSingleAttr","autoredraw","setAttributeNS","setAttribute","shouldUseSetAttribute","trySetAttr","cachedAttrs","message","dataAttrs","removeChild","unload","appendTextFragment","appendChild","createRange","createContextualFragment","insertAdjacentHTML","replaceScriptNodes","tagName","replaceChild","buildExecutableNode","scriptEl","attributes","name","text","nextSibling","isElement","placeholder","callback","event","startComputation","endFirstComputation","getCellCacheKey","nodeCache","gettersetter","store","toJSON","component","ctrl","currentArgs","prototype","output","checkPrevented","root","isPrevented","roots","currentComponent","topComponent","components","removeRootElement","reset","computePreRedrawHook","render","computePostRedrawHook","lastRedrawId","lastRedrawCallTime","Date","endComputation","normalizeRoute","route","modes","mode","routeByValue","router","path","routeParams","queryStart","parseQueryString","substr","mount","matcher","RegExp","test","values","decodeURIComponent","routeUnobtrusive","ctrlKey","metaKey","shiftKey","which","returnValue","currentTarget","srcElement","search","setScroll","hash","scrollTo","buildQueryString","prefix","duplicates","str","encodeURIComponent","charAt","split","params","string","pair","cacheKey","cellCache","propify","promise","initialValue","then","resolve","reject","bind","Deferred","onSuccess","onFailure","finish","state","REJECTED","next","deferred","RESOLVED","promiseValue","thennable","success","failure","notThennable","count","onerror","fire","REJECTING","RESOLVING","self","TypeError","identity","handleJsonp","options","callbackKey","callbackName","getTime","Math","round","random","script","resp","onload","responseText","status","JSON","stringify","error","src","url","body","createXhr","xhr","XMLHttpRequest","open","method","user","password","onreadystatechange","readyState","serialize","setRequestHeader","deserialize","parse","maybeXhr","FormData","send","ajax","dataType","toLowerCase","bindData","querystring","parameterizeUrl","token","version","hasOwnProperty","AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR","deps","html","form","width","height","documentNode","documentElement","forceRecreation","isDocumentRoot","trust","String","Promise","FRAME_BUDGET","unloader","redrawing","force","withAttr","withAttrCallback","callbackThis","_this","getAttribute","currentRoute","pathname","redirect","isDefaultRoute","arg1","arg2","vdom","source","listener","addEventListener","attachEvent","base","href","removeEventListener","detachEvent","oldRoute","queryIndex","currentPath","replaceHistory","history","pushState","title","err","param","sync","synchronizer","pos","resolved","results","outstanding","arg","request","background","extract","isJSONP","jsonp","toUpperCase","ev","response","unwrapSuccess","res","unwrapError"],"mappings":"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","file":"mithril.min.js"} \ No newline at end of file diff --git a/test/mithril.js b/test/mithril.js index 775d7ddb..b0ddeb2d 100644 --- a/test/mithril.js +++ b/test/mithril.js @@ -48,6 +48,9 @@ describe("m()", function () { it("sets correct double quoted attr", function () { expect(m("[title=\"bar\"]")).to.have.deep.property("attrs.title", "bar") }) + it("sets pattern attr", function () { + expect(m("[pattern=\"[a-zA-Z0-9]{56}\"]")).to.have.deep.property("attrs.pattern", "[a-zA-Z0-9]{56}") + }) it("sets correct children with 1 string arg", function () { expect(m("div", "test"))