var HTMLLinkElement=function(t){var e=new Event("load"),n=document.querySelector("link[href*="+t+"][rel=import]");return(e.target=n)&&HTMLImports&&!HTMLImports.useNative&&HTMLImports.whenReady(function(t){return n.dispatchEvent(e)}),n},TokenList=function(t){this.sift(t).map(this.tokenize,this)};TokenList.prototype.tokenize=function(t){var e=this;(t.text=t.textContent).match(/([^{]*?)(\w|#)(?=\})/g).map(function(t){return function(n){return(e[n]=e[n]||[]).push(t)}}(t))},TokenList.prototype.sift=function(t){for(var e=[],n=/{(\w+|#)}/,r=function(t){return n.test(t.textContent)&&e.push(t)},o=function(t){return Array.from(t).map(function(t){return n.test(t.value)&&e.push(t)})},i=document.createNodeIterator(t,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,function(t){return t.nodeType===Node.TEXT_NODE?r(t):o(t.attributes)&&NodeFilter.FILTER_REJECT});i.nextNode(););return e},TokenList.prototype.bind=function(t){var e=this;Object.keys(this).map(function(t){return e[t].map(function(e){return(e.textContent=e.text)&&t})});for(var n in e)e[n].map(function(e,n){return void 0===n&&(n="{"+e+"}"),function(r){return r.textContent=r.textContent.replace(n,t[e])}}(n))};var Template=HTMLTemplateElement=function(t){return t="string"==typeof t?document.querySelector("template[name="+t+"]"):t,Object.assign(t,{bind:function(t){var e="",n=this.innerHTML,r=(a=[]).concat.apply(a,[t]),o=Object.keys(r[0]||[]).concat(["#","self"]),i=o.map(function(t){return"{"+t+"}"}),c=document.createElement("template");(this.dependents||[]).map(function(t){return t.remove()});for(var p=0;p<r.length;p++)e+=function(t,e){var r=n;(t="object"==typeof t?t:{self:t})["#"]=e;for(var c=0;c<i.length;c++)r=r.split(i[c]).join(t[o[c]]);return r}(r[p],p);c.innerHTML=e,this.dependents=Array.from(c.content.childNodes)(u=this).after.apply(u,this.dependents);var a,u}})},EventTarget=function(t){return function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.on=function(t,e){this.addEventListener(t,this.renderable(e))},e.prototype.renderable=function(t){var e=this;return function(n,r){return void 0===r&&(r=!0),(n.prevent=function(t){return(r=!1)&&n.preventDefault()})&&!1!==t.call(e,n)&&r&&e.render()}},e}(t)},ParentNode=function(t){return function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.selectAll=function(t){for(var e=[],n=arguments.length-1;n-- >0;)e[n]=arguments[n+1];t=(r=[]).concat.apply(r,[t]);return Array.from(this.querySelectorAll(e.reduce(function(e,n){return e+n+t.shift()},t.shift())));var r},e.prototype.select=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];return(n=this).selectAll.apply(n,t)[0];var n},e}(t)},GlobalEventHandlers=function(t){return function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.onconnect=function(e,n){(n=e.target)&&this.mirror(n.import.querySelector("template")),t.prototype.onconnect&&t.prototype.onconnect.call(this),this.tokens=new TokenList(this),this.render()},e.prototype.reflect=function(t,e){(e=(t.match(/^on(.+)$/)||[])[1])&&Object.keys(HTMLElement.prototype).includes(t)&&this.on(e,this[t])},e.prototype.register=function(t){var e=this;Array.from(t.attributes).map(function(t){return t.name}).filter(function(t){return/^on/.test(t)}).map(function(n,r){return(r=/{\s*(\w+)\s*}/.exec(t[n]))&&(r=e[(r||[])[1]])&&(t[n]=e.renderable(r))})},e}(t)},Component=function(t){return function(e){function n(){var n=this;e.call(this);var r=Object.getOwnPropertyDescriptors(t.prototype);Object.keys(r).map(function(t){return"function"==typeof r[t].value&&(n[t]=n[t].bind(n))}),Object.getOwnPropertyNames(t.prototype).map(this.reflect,this),this.context={},this.initialize&&this.initialize()}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.connectedCallback=function(t){(t=HTMLLinkElement(this.tagName.toLowerCase()))?t.addEventListener("load",this.onconnect.bind(this)):this.onconnect(new Event("load"))},n.prototype.render=function(){var t=this;this.tokens.bind(this),Array.from(this.selectAll("template[name]")).map(function(t){return t.getAttribute("name")}).map(function(e){return new Template(e).bind(t[e])}),Array.from(this.selectAll("*")).concat([this]).map(this.register,this),e.prototype.onidle&&e.prototype.onidle.call(this)},n.prototype.mirror=function(t,e){var n=this;t=t.cloneNode(!0),e=function(e,n,r){return(n=e.getAttribute("slot"))&&(r=t.content.querySelector("slot[name="+n+"]")).parentNode.replaceChild(e,r)};for(var r=0,o=n.selectAll("[slot]");r<o.length;r+=1)e(o[r]);Array.from(t.attributes).filter(function(t){return!n.attributes[t.name]}).map(function(t){return n.setAttribute(t.name,t.value)}),this.innerHTML=t.innerHTML},n}(EventTarget(ParentNode(GlobalEventHandlers(t))))},ElementPrototype=window.Element.prototype,Element=function(t){return function(e){return(n=window.customElements).define.apply(n,(r=[]).concat.apply(r,[t]).concat([Component(e)]));var n,r}};Element.prototype=ElementPrototype;
@@ -127,16 +127,23 @@
 get=n)&&
+window.
 HTMLImpo
@@ -148,16 +148,23 @@
 ports&&!
+window.
 HTMLImpo

bump MINIFIED distribution dist/snuggsi.min.js