/*! * Knockout JavaScript library v3.5.1-sm * (c) The Knockout.js team - http://knockoutjs.com/ * License: MIT (http://www.opensource.org/licenses/mit-license.php) */ (R=>{function L(a,b){return null===a||ba[typeof a]?a===b:!1}function ca(a,b){var d;return()=>{d||(d=setTimeout(()=>{d=0;a()},b))}}function da(a,b){var d;return()=>{clearTimeout(d);d=setTimeout(a,b)}}function ea(a,b){b?.dispose?.()}function fa(a,b){var d=this.Nb,e=d[x];e.Y||(this.Pa&&this.va[b]?(d.lb(b,a,this.va[b]),this.va[b]=null,--this.Pa):e.v[b]||d.lb(b,a,e.A?{U:a}:d.Fb(a)),a.ea&&a.Jb())}function S(a){a=c.g.j.get(a,E);var b=a?.D;b&&(a.D=null,b.zb())}function T(a,b){for(var d,e=c.m.firstChild(b);d= e;)e=c.m.nextSibling(d),U(a,d);c.l.notify(b,c.l.F)}function U(a,b){var d=a;if(1===b.nodeType||c.pb.Yb(b))d=V(b,null,a);d&&!b.matches?.("SCRIPT,TEXTAREA,TEMPLATE")&&T(d,b)}function ha(a){var b=[],d={},e=[];c.g.K(a,function f(m){if(!d[m]){var p=c.i[m];p&&(p.after&&(e.push(m),p.after.forEach(h=>{if(a[h]){if(e.includes(h))throw Error("Cannot combine the following bindings, because they have a cyclic dependency: "+e.join(", "));f(h)}}),e.length--),b.push({key:m,vb:p}));d[m]=!0}});return b}function V(a, b,d){var e=c.g.j.Ua(a,E,{}),g=e.Kb;if(!b){if(g)throw Error("You cannot apply bindings multiple times to the same element.");e.Kb=!0}g||(e.context=d);e.Xa||(e.Xa={});if(b&&"function"!==typeof b)var m=b;else{var f=c.o(()=>{if(m=b?b(d,a):c.pb.Qb(a,d))d[F]?.(),d[W]?.();return m},{s:a});m&&f.isActive()||(f=null)}var p=d,h;if(m){var n=f?k=>()=>f()[k]():k=>m[k],l={get:k=>m[k]&&n(k)(),has:k=>k in m};c.l.F in m&&c.l.subscribe(a,c.l.F,()=>{var k=m[c.l.F]();if(k){var q=c.m.childNodes(a);q.length&&k(q,c.dataFor(q[0]))}}); c.l.ca in m&&(p=c.l.bb(a,d),c.l.subscribe(a,c.l.ca,()=>{var k=m[c.l.ca]();k&&c.m.firstChild(a)&&k(a)}));ha(m).forEach(k=>{var q=k.vb.init,r=k.vb.update,t=k.key;if(8===a.nodeType&&!c.m.aa[t])throw Error("The binding '"+t+"' cannot be used with comment nodes");try{"function"==typeof q&&c.u.I(()=>{var w=q(a,n(t),l,p.$data,p);if(w&&w.controlsDescendantBindings){if(void 0!==h)throw Error("Multiple bindings ("+h+" and "+t+") are trying to control descendant bindings of the same element. You cannot use these bindings together on the same element."); h=t}}),"function"==typeof r&&c.o(()=>r(a,n(t),l,p.$data,p),{s:a})}catch(w){throw w.message='Unable to process binding "'+t+": "+m[t]+'"\nMessage: '+w.message,w;}})}return void 0===h&&p}function M(a,b){return a&&a instanceof c.ba?a:new c.ba(a,null,b)}var G=R.document,N={},c="undefined"!==typeof N?N:{};c.P=(a,b)=>{a=a.split(".");for(var d=c,e=0,g=a.length-1;eb?Object.assign(a,b):a,K:(a,b)=>a&&Object.entries(a).forEach(d=>b(d[0],d[1])), Ta:a=>[...a.childNodes].forEach(b=>c.removeNode(b)),yb:a=>{a=[...a];var b=(a[0]?.ownerDocument||G).createElement("div");a.forEach(d=>b.append(c.ha(d)));return b},ua:(a,b)=>Array.prototype.map.call(a,b?d=>c.ha(d.cloneNode(!0)):d=>d.cloneNode(!0)),pa:(a,b)=>{c.g.Ta(a);b&&a.append(...b)},xa:(a,b)=>{if(a.length){for(b=8===b.nodeType&&b.parentNode||b;a.length&&a[0].parentNode!==b;)a.splice(0,1);for(;1null==a?"":a.trim?a.trim():a.toString().replace(/^[\s\xa0]+|[\s\xa0]+$/g,""),Sa:a=>a.ownerDocument.documentElement.contains(1!==a.nodeType?a.parentNode:a),Gb:(a,b)=>{if(!a?.nodeType)throw Error("element must be a DOM node when calling triggerEvent");a.dispatchEvent(new Event(b))},h:a=>c.R(a)?a():a,ab:(a,b)=>a.textContent=c.g.h(b)};c.P("utils",c.g);c.P("unwrap",c.g.h);(()=>{let a=0,b="__ko__"+Date.now(),d=new WeakMap;c.g.j={get:(e,g)=>(d.get(e)|| {})[g],set:(e,g,m)=>{d.has(e)?d.get(e)[g]=m:d.set(e,{[g]:m});return m},Ua(e,g,m){return this.get(e,g)||this.set(e,g,m)},clear:e=>d.delete(e),X:()=>a++ +b}})();c.g.N=(()=>{var a=c.g.j.X(),b={1:1,8:1,9:1},d={1:1,9:1};const e=(f,p)=>{var h=c.g.j.get(f,a);p&&!h&&(h=new Set,c.g.j.set(f,a,h));return h},g=f=>{var p=e(f);p&&(new Set(p)).forEach(h=>h(f));c.g.j.clear(f);d[f.nodeType]&&m(f.childNodes,!0)},m=(f,p)=>{for(var h=[],n,l=0;l{if("function"!=typeof p)throw Error("Callback must be a function");e(f,1).add(p)},$a:(f,p)=>{var h=e(f);h&&(h.delete(p),h.size||c.g.j.set(f,a,null))},ha:f=>{c.u.I(()=>{b[f.nodeType]&&(g(f),d[f.nodeType]&&m(f.getElementsByTagName("*")))});return f},removeNode:f=>{c.ha(f);f.parentNode&&f.parentNode.removeChild(f)}}})();c.ha=c.g.N.ha;c.removeNode=c.g.N.removeNode;c.P("utils.domNodeDisposal",c.g.N);c.extenders={debounce:(a,b)=>a.Da(d=>da(d,b)),rateLimit:(a, b)=>a.Da(d=>ca(d,b)),notify:(a,b)=>{a.ka="always"==b?null:L}};var ba={undefined:1,"boolean":1,number:1,string:1};class ia{constructor(a,b,d){this.U=a;this.fb=b;this.za=d;this.Ja=!1;this.H=this.da=null}dispose(){this.Ja||(this.H&&c.g.N.$a(this.da,this.H),this.Ja=!0,this.za(),this.U=this.fb=this.za=this.da=this.H=null)}s(a){this.da=a;c.g.N.addDisposeCallback(a,this.H=this.dispose.bind(this))}}c.S=function(){Object.setPrototypeOf(this,O);O.init(this)};var O={init:a=>{a.T=new Map;a.T.set("change",new Set); a.kb=1},subscribe:function(a,b,d){var e=this;d=d||"change";var g=new ia(e,b?a.bind(b):a,()=>{e.T.get(d).delete(g);e.Ka?.(d)});e.Ma?.(d);e.T.has(d)||e.T.set(d,new Set);e.T.get(d).add(g);return g},B(a,b){b=b||"change";"change"===b&&this.Ga();if(this.na(b)){b="change"===b&&this.Hb||new Set(this.T.get(b));try{c.u.ob(),b.forEach(d=>{d.Ja||d.fb(a)})}finally{c.u.end()}}},ya(){return this.kb},Tb(a){return this.ya()!==a},Ga(){++this.kb},Da(a){var b=this,d=c.R(b),e,g,m,f,p;b.ra||(b.ra=b.B,b.B=(n,l)=>{l&&"change"!== l?"beforeChange"===l?b.hb(n):b.ra(n,l):b.ib(n)});var h=a(()=>{b.ea=!1;d&&f===b&&(f=b.gb?b.gb():b());var n=g||p&&b.Ba(m,f);p=g=e=!1;n&&b.ra(m=f)});b.ib=(n,l)=>{l&&b.ea||(p=!l);b.Hb=new Set(b.T.get("change"));b.ea=e=!0;f=n;h()};b.hb=n=>{e||(m=n,b.ra(n,"beforeChange"))};b.jb=()=>{p=!0};b.Jb=()=>{b.Ba(m,b.L(!0))&&(g=!0)}},na(a){return(this.T.get(a)||[]).size},Ba(a,b){return!this.ka||!this.ka(a,b)},toString:()=>"[object Object]",extend:function(a){var b=this;a&&c.g.K(a,(d,e)=>{d=c.extenders[d];"function"== typeof d&&(b=d(b,e)||b)});return b}};c.S.fn=Object.setPrototypeOf(O,Function.prototype);c.Xb=a=>"function"==typeof a?.subscribe&&"function"==typeof a.B;(()=>{let a=[],b,d=0;c.u={ob:e=>{a.push(b);b=e},end:()=>b=a.pop(),Cb:e=>{if(b){if(!c.Xb(e))throw Error("Only subscribable things can act as dependencies");b.Lb.call(b.Mb,e,e.Ib||(e.Ib=++d))}},I(e,g,m){try{return a.push(b),b=void 0,e.apply(g,m||[])}finally{b=a.pop()}},ma:()=>b?.o.ma(),Ca:()=>b?.Ca,o:()=>b?.o}})();const B=Symbol("_latestValue");c.$= a=>{function b(){if(0null==b[B]?void 0:b[B].length});c.S.fn.init(b);return Object.setPrototypeOf(b,H)};var H={toJSON:function(){let a=this[B];return a?.toJSON?.()||a},ka:L,L(){return this[B]},valueHasMutated:function(){this.B(this[B],"spectate");this.B(this[B])},eb(){this.B(this[B],"beforeChange")}};Object.setPrototypeOf(H,c.S.fn); var C=c.$.$b="__ko_proto__";H[C]=c.$;c.R=a=>{if((a="function"==typeof a&&a[C])&&a!==H[C]&&a!==c.o.fn[C])throw Error("Invalid object that looks like an observable; possibly from another Knockout instance");return!!a};c.wb=a=>"function"==typeof a&&(a[C]===H[C]||a[C]===c.o.fn[C]&&a.Ub);c.P("observable",c.$);c.P("isObservable",c.R);c.P("observable.fn",H);c.observableArray=a=>{a=a||[];if("object"!=typeof a||!("length"in a))throw Error("The argument passed when initializing an observable array must be an array, or null, or undefined."); return Object.setPrototypeOf(c.$(a),c.observableArray.fn).extend({trackArrayChanges:!0})};const X=Symbol("IS_OBSERVABLE_ARRAY");c.observableArray.fn=Object.setPrototypeOf({[X]:1,remove:function(a){for(var b=this.L(),d=!1,e="function"!=typeof a||c.R(a)?f=>f===a:a,g=b.length;g--;){var m=b[g];if(e(m)){if(b[g]!==m)throw Error("Array modified during remove; cannot remove item");d||this.eb();d=!0;b.splice(g,1)}}d&&this.valueHasMutated()}},c.$.fn);Object.getOwnPropertyNames(Array.prototype).forEach(a=>{"function"=== typeof Array.prototype[a]&&"constructor"!=a&&("copyWithin fill pop push reverse shift sort splice unshift".split(" ").includes(a)?c.observableArray.fn[a]=function(...b){var d=this.L();this.eb();this.qb(d,a,b);b=d[a](...b);this.valueHasMutated();return b===d?this:b}:c.observableArray.fn[a]=function(...b){return this()[a](...b)})});c.isObservableArray=a=>!(!a||!a[X]);c.extenders.trackArrayChanges=(a,b)=>{function d(){function k(){if(p){var q=[].concat(a.L()||[]);if(a.na("arrayChange")){if(!g||1++p,null,"spectate"),h=[].concat(a.L()||[]),g=null,m=a.subscribe(k))}a.Na={};"object"==typeof b&&c.g.extend(a.Na,b);a.Na.sparse=!0;if(!a.qb){var e=!1,g=null,m,f,p=0,h,n=a.Ma,l=a.Ka;a.Ma=k=>{n?.call(a,k);"arrayChange"===k&&d()};a.Ka=k=>{l?.call(a,k);"arrayChange"!==k||a.na("arrayChange")||(m?.dispose(),f?.dispose(),f=m=null,e=!1,h=void 0)};a.qb=(k,q,r)=>{function t(D,ja,ka){return w[w.length]={status:D, value:ja,index:ka}}if(e&&!p){var w=[],y=k.length,A=r.length,u=0;switch(q){case "push":u=y;case "unshift":for(k=0;kr[0]?y+r[0]:r[0]),y);y=1===A?y:Math.min(u+(r[1]||0),y);A=u+A-2;q=Math.max(y,A);for(var z=[],v=[],I=2;u{function d(){if(0< arguments.length){if("function"!==typeof e)throw Error("Cannot write a value to a ko.computed unless you specify a 'write' option. If you wish to read the current value, don't pass any parameters.");e(...arguments);return this}g.Y||c.u.Cb(d);(g.W||g.A&&d.oa())&&d.V();return g.J}"object"===typeof a?b=a:(b=b||{},a&&(b.read=a));if("function"!=typeof b.read)throw Error("Pass a function that returns the value of the ko.computed");var e=b.write,g={J:void 0,Z:!0,W:!0,Aa:!1,cb:!1,Y:!1,Za:!1,A:!1,Bb:b.read, s:b.s||null,ia:b.ia,Ra:null,v:{},G:0,cc:null};d[x]=g;d.Ub="function"===typeof e;c.S.fn.init(d);Object.setPrototypeOf(d,K);b.pure&&(g.Za=!0,g.A=!0,c.g.extend(d,la));g.s&&(g.cb=!0,g.s.nodeType||(g.s=null));g.A||d.V();g.s&&d.isActive()&&c.g.N.addDisposeCallback(g.s,g.Ra=()=>{d.dispose()});return d};var K={ka:L,ma(){return this[x].G},Rb(){var a=[];c.g.K(this[x].v,(b,d)=>a[d.fa]=d.U);return a},Va(a){if(!this[x].G)return!1;var b=this.Rb();return b.includes(a)||!!b.find(d=>d.Va&&d.Va(a))},lb(a,b,d){if(this[x].Za&& b===this)throw Error("A 'pure' computed must not be called recursively");this[x].v[a]=d;d.fa=this[x].G++;d.ga=b.ya()},oa(){var a,b=this[x].v;for(a in b)if(Object.prototype.hasOwnProperty.call(b,a)){var d=b[a];if(this.qa&&d.U.ea||d.U.Tb(d.ga))return!0}},ec(){this[x].Aa||this.qa?.(!1)},isActive(){var a=this[x];return a.W||0{b[x].A||(b[x].Z?b.V():b[x].W=!1);return b[x].J};b.qa=d=>{b.hb(b[x].J);b[x].W=!0;d&&(b[x].Z=!0);b.ib(b,!d)}},dispose:function(){var a=this[x];!a.A&&a.v&&c.g.K(a.v,(b,d)=>d.dispose?.());a.s&&a.Ra&&c.g.N.$a(a.s,a.Ra);a.v=void 0;a.G=0;a.Y=!0;a.Z=!1;a.W=!1;a.A=!1;a.s=void 0;a.ia=void 0;a.Bb=void 0}},la={Ma(a){var b=this,d=b[x];if(!d.Y&&d.A&&"change"==a){d.A=!1;if(d.Z||b.oa())d.v= null,d.G=0,b.V()&&b.Ga();else{var e=[];c.g.K(d.v,(g,m)=>e[m.fa]=g);e.forEach((g,m)=>{var f=d.v[g],p=b.Fb(f.U);p.fa=m;p.ga=f.ga;d.v[g]=p});b.oa()&&b.V()&&b.Ga()}d.Y||b.B(d.J,"awake")}},Ka(a){var b=this[x];b.Y||"change"!=a||this.na("change")||(c.g.K(b.v,(d,e)=>{e.dispose&&(b.v[d]={U:e.U,fa:e.fa,ga:e.ga},e.dispose())}),b.A=!0,this.B(void 0,"asleep"))},ya(){var a=this[x];a.A&&(a.Z||this.oa())&&this.V();return c.S.fn.ya.call(this)}};Object.setPrototypeOf(K,c.S.fn);var P=c.$.$b;K[P]=c.o;c.o.fn=K;c.P("computed", c.o);c.isComputed=a=>"function"==typeof a&&a[P]===K[P];c.Ab=a=>{if("function"===typeof a)return c.o(a,{pure:!0});a={...a,pure:!0};return c.o(a)};c.C={M:a=>{switch(a.nodeName){case "OPTION":return!0===a.__ko__hasDomDataOptionValue__?c.g.j.get(a,c.i.options.Ya):a.value;case "SELECT":return 0<=a.selectedIndex?c.C.M(a.options[a.selectedIndex]):void 0;default:return a.value}},Ha:(a,b)=>{switch(a.nodeName){case "OPTION":"string"===typeof b?(c.g.j.set(a,c.i.options.Ya,void 0),delete a.__ko__hasDomDataOptionValue__, a.value=b):(c.g.j.set(a,c.i.options.Ya,b),a.__ko__hasDomDataOptionValue__=!0,a.value="number"===typeof b?b:"");break;case "SELECT":for(var d=-1,e=""===b||null==b,g=a.options.length,m;g--;)if(m=c.C.M(a.options[g]),m==b||""===m&&e){d=g;break}if(0<=d||e&&1{var a=RegExp("\"(?:\\\\.|[^\"])*\"|'(?:\\\\.|[^'])*'|`(?:\\\\.|[^`])*`|/\\*(?:[^*]|\\*+[^*/])*\\*+/|//.*\n|/(?:\\\\.|[^/])+/w*|[^\\s:,/][^,\"'`{}()/:[\\]]*[^\\s,\"'`{}()/:[\\]]|[^\\s]", "g"),b=/[\])"'A-Za-z0-9_$]+$/,d={"in":1,"return":1,"typeof":1},e=g=>{g=c.g.Eb(g);123===g.charCodeAt(0)&&(g=g.slice(1,-1));g+="\n,";var m=[],f=g.match(a),p=[],h=0;if(1=h){m.push(q&&p.length?{key:q,value:p.join("")}:{unknown:q||p.join("")});var q=h=0;p=[];continue}}else if(58===k){if(!h&&!q&&1===p.length){q=p.pop();continue}}else if(47===k&&1{var m=[];e(g).forEach(f=>{m.push("'"+(f.key||f.unknown)+"':function(){return "+(f.value+" }"))});return m.join(",")},dc:(g,m)=>-1f.key==m),Ia:(g,m,f,p,h)=>{if(g&&c.R(g))!c.wb(g)||h&&g.L()===p|| g(p);else throw Error(`${f} , must be observable`);}}})();(()=>{function a(f){return 8==f.nodeType&&e.test(f.nodeValue)}function b(f){return 8==f.nodeType&&g.test(f.nodeValue)}function d(f,p){for(var h=f,n=1,l=[];h=h.nextSibling;){if(b(h)&&(c.g.j.set(h,m,!0),!--n))return l;l.push(h);a(h)&&++n}if(!p)throw Error("Cannot find closing comment tag to match: "+f.nodeValue);return null}var e=/^\s*ko(?:\s+([\s\S]+))?\s*$/,g=/^\s*\/ko\s*$/,m="__ko_matchedEndComment__";c.m={aa:{},childNodes:f=>a(f)?d(f):f.childNodes, ja:f=>{a(f)?(f=d(f))&&[...f].forEach(p=>c.removeNode(p)):c.g.Ta(f)},pa:(f,p)=>{a(f)?(c.m.ja(f),f.after(...p)):c.g.pa(f,p)},prepend:(f,p)=>{a(f)?f.nextSibling.before(p):f.prepend(p)},Wb:(f,p,h)=>{h?h.after(p):c.m.prepend(f,p)},firstChild:f=>{if(a(f))return f=f.nextSibling,!f||b(f)?null:f;let p=f.firstChild;if(p&&b(p))throw Error("Found invalid end comment, as the first child of "+f);return p},nextSibling:f=>{if(a(f)){var p=d(f,void 0);f=p?(p.length?p[p.length-1]:f).nextSibling:null}if((p=f.nextSibling)&& b(p)){if(b(p)&&!c.g.j.get(p,m))throw Error("Found end comment without a matching opening comment, as child of "+f);return null}return p},Sb:a,bc:f=>(f=f.nodeValue.match(e))?f[1]:null}})();const Y=new Map;c.pb=new class{Yb(a){switch(a.nodeType){case 1:return null!=a.getAttribute("data-bind");case 8:return c.m.Sb(a)}return!1}Qb(a,b){a:{switch(a.nodeType){case 1:var d=a.getAttribute("data-bind");break a;case 8:d=c.m.bc(a);break a}d=null}if(d)try{let g=Y.get(d);if(!g){var e="with($context){with($data||{}){return{"+ c.la.Zb(d)+"}}}";g=new Function("$context","$element",e);Y.set(d,g)}return g(b,a)}catch(g){throw g.message="Unable to parse bindings.\nBindings value: "+d+"\nMessage: "+g.message,g;}return null}};const F=Symbol("_subscribable"),J=Symbol("_ancestorBindingInfo"),W=Symbol("_dataDependency"),Z={},E=c.g.j.X();c.i={};c.ba=class{constructor(a,b,d,e){var g=this,m=a===Z,f=m?void 0:a,p="function"==typeof f&&!c.R(f),h=e?.dataDependency;a=()=>{var l=p?f():f;l=c.g.h(l);b?(c.g.extend(g,b),J in b&&(g[J]=b[J])): (g.$root=l,g.ko=c);g[F]=n;m?l=g.$data:g.$data=l;d?.(g,b,l);if(b?.[F]&&!c.u.o().Va(b[F]))b[F]();h&&(g[W]=h);return g.$data};if(e?.exportDependencies)a();else{var n=c.Ab(a);n.L();n.isActive()?n.ka=null:g[F]=void 0}}createChildContext(a,b){return new c.ba(a,this,(d,e)=>{d.$parent=e.$data;b.extend?.(d)},b)}extend(a,b){return new c.ba(Z,this,d=>c.g.extend(d,"function"==typeof a?a(d):a),b)}};class ma{constructor(a,b,d){this.H=a;this.da=b;this.ta=new Set;this.F=!1;b.D||c.g.N.addDisposeCallback(a,S);d?.D&& (d.D.ta.add(a),this.za=d)}zb(){this.za?.D?.Ob(this.H)}Ob(a){this.ta.delete(a);this.ta.size||this.sb?.()}sb(){this.F=!0;this.da.D&&!this.ta.size&&(this.da.D=null,c.g.N.$a(this.H,S),c.l.notify(this.H,c.l.ca),this.zb())}}c.l={F:"childrenComplete",ca:"descendantsComplete",subscribe:(a,b,d,e,g)=>{var m=c.g.j.Ua(a,E,{});m.wa||(m.wa=new c.S);g?.notifyImmediately&&m.Xa[b]&&c.u.I(d,e,[a]);return m.wa.subscribe(d,e,b)},notify:(a,b)=>{var d=c.g.j.get(a,E);if(d&&(d.Xa[b]=!0,d.wa?.B(a,b),b==c.l.F))if(d.D)d.D.sb(); else if(void 0===d.D&&d.wa?.na(c.l.ca))throw Error("descendantsComplete event not supported for bindings on this node");},bb:(a,b)=>{var d=c.g.j.Ua(a,E,{});d.D||(d.D=new ma(a,d,b[J]));return b[J]==d?b:b.extend(e=>{e[J]=d})}};c.ac=a=>(a=c.g.j.get(a,E))&&a.context;c.applyBindingAccessorsToNode=(a,b,d)=>V(a,b,M(d));c.nb=(a,b)=>{1!==b.nodeType&&8!==b.nodeType||T(M(a),b)};c.mb=function(a,b,d){if(2>arguments.length){if(b=G.body,!b)throw Error("ko.applyBindings: could not find document.body; has the document been loaded?"); }else if(!b||1!==b.nodeType&&8!==b.nodeType)throw Error("ko.applyBindings: first parameter should be your view model; second parameter should be a DOM node");U(M(a,d),b)};c.dataFor=a=>(a=a&&[1,8].includes(a.nodeType)&&c.ac(a))?a.$data:void 0;c.P("bindingHandlers",c.i);c.P("applyBindings",c.mb);(()=>{var a=Object.create(null),b=new Map;c.components={get:(m,f)=>{if(b.has(m))f(b.get(m));else{var p=a[m];p?p.subscribe(f):(p=a[m]=new c.S,p.subscribe(f),g(m,h=>{b.set(m,h);delete a[m];p.B(h)}))}},register:(m, f)=>{if(!f)throw Error("Invalid configuration for "+m);if(d[m])throw Error("Component "+m+" is already registered");d[m]=f}};var d=Object.create(null),e=(m,f)=>{throw Error(`Component '${m}': ${f}`);},g=(m,f)=>{var p={},h=d[m]||{},n=h.template;h=h.viewModel;if(n){n.element||e(m,"Unknown template value: "+n);n=n.element;var l=G.getElementById(n);l||e(m,"Cannot find element with ID "+n);l.matches("TEMPLATE")||e(m,"Template Source Element not a