!function(f){"use strict";functiono(e){returne}varR=function(e){functionn(){returnt}vart=e;return{get:n,set:function(e){t=e},clone:function(){returnR(n())}}},T=function(){},O=function(t,r){returnfunction(){for(vare=[],n=0;n<arguments.length;n++)e[n]=arguments[n];returnt(r.apply(null,e))}},D=function(e){returnfunction(){returne}};functionb(r){for(varo=[],e=1;e<arguments.length;e++)o[e-1]=arguments[e];returnfunction(){for(vare=[],n=0;n<arguments.length;n++)e[n]=arguments[n];vart=o.concat(e);returnr.apply(null,t)}}functiond(t){returnfunction(){for(vare=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return!t.apply(null,e)}}functione(){returnu}varn,s=D(!1),i=D(!0),u=(n={fold:function(e,n){returne()},is:s,isSome:s,isNone:i,getOr:c,getOrThunk:r,getOrDie:function(e){thrownewError(e||"error: getOrDie called on none.")},getOrNull:D(null),getOrUndefined:D(undefined),or:c,orThunk:r,map:e,each:T,bind:e,exists:s,forall:i,filter:e,equals:t,equals_:t,toArray:function(){return[]},toString:D("none()")},Object.freeze&&Object.freeze(n),n);functiont(e){returne.isNone()}functionr(e){returne()}functionc(e){returne}functiona(n){returnfunction(e){returnfunction(e){if(null===e)return"null";varn=typeofe;return"object"==n&&(Array.prototype.isPrototypeOf(e)||e.constructor&&"Array"===e.constructor.name)?"array":"object"==n&&(String.prototype.isPrototypeOf(e)||e.constructor&&"String"===e.constructor.name)?"string":n}(e)===n}}functionl(e,n){return-1<function(e,n){returnUe.call(e,n)}(e,n)}functionm(e,n){for(vart=0,r=e.length;t<r;t++){if(n(e[t],t))return!0}return!1}functiong(e,n){for(vart=e.length,r=newArray(t),o=0;o<t;o++){vari=e[o];r[o]=n(i,o)}returnr}functionp(e,n){for(vart=0,r=e.length;t<r;t++){n(e[t],t)}}functionh(e,n){for(vart=[],r=0,o=e.length;r<o;r++){vari=e[r];n(i,r)&&t.push(i)}returnt}functionv(e,n,t){returnfunction(e,n){for(vart=e.length-1;0<=t;t--){n(e[t],t)}}(e,function(e){t=n(t,e)}),t}functionw(e,n,t){returnp(e,function(e){t=n(t,e)}),t}functiony(e,n){for(vart=0,r=e.length;t<r;t++){varo=e[t];if(n(o,t))returnMe.some(o)}returnMe.none()}functionC(e,n){for(vart=0,r=e.length;t<r;t++){if(n(e[t],t))returnMe.some(t)}returnMe.none()}functionS(e){for(varn=[],t=0,r=e.length;t<r;++t){if(!Le(e[t]))thrownewError("Arr.flatten item "+t+" was not an array, input: "+e);qe.apply(n,e[t])}returnn}functionx(e,n){vart=g(e,n);returnS(t)}functionA(e,n){for(vart=0,r=e.length;t<r;++t){if(!0!==n(e[t],t))return!1}return!0}functionE(e){varn=Fe.call(e,0);returnn.reverse(),n}functionN(e,n){for(vart=Ve(e),r=0,o=t.length;r<o;r++){vari=t[r];n(e[i],i)}}functionI(e,t){returnYe(e,function(e,n){return{k:n,v:t(e,n)}})}functionk(e,n){returnKe(e,n)?Me.from(e[n]):Me.none()}functionB(){for(varn=[],e=0;e<arguments.length;e++)n[e]=arguments[e];returnfunction(){for(vart=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(n.length!==t.length)thrownewError('Wrong number of arguments to struct. Expected "['+n.length+']", got '+t.length+" arguments");varr={};returnp(n,function(e,n){r[e]=D(t[n])}),r}}functionP(e){returne.slice(0).sort()}functionM(e,n){thrownewError("All required keys ("+P(e).join(", ")+") were not specified. Specified keys were: "+P(n).join(", ")+".")}functionW(e){thrownewError("Unsupported keys for object: "+P(e).join(", "))}function_(n,e){if(!Le(e))thrownewError("The "+n+" fields must be an array. Was: "+e+".");p(e,function(e){if(!_e(e))thrownewError("The value "+e+" in the "+n+" fields was not a string.")})}functionL(e){vart=P(e);y(t,function(e,n){returnn<t.length-1&&e===t[n+1]}).each(function(e){thrownewError("The field: "+e+" occurs more than once in the combined fields: ["+t.join(", ")+"].")})}functionj(e){returne.dom().nodeType}functionz(n){returnfunction(e){returnj(e)===n}}functionH(e){returnj(e)===$e||"#comment"===en(e)}functionF(e,n,t){if(!(_e(t)||je(t)||He(t)))throwf.console.error("Invalid call to Attr.set. Key ",n,":: Value ",t,":: Element ",e),newError("Attribute value was not simple");e.setAttribute(n,t+"")}functionU(e,n,t){F(e.dom(),n,t)}