!function(){"use strict";vare,t,n,r,o,i,a,s,u,c,l,f,d,m,p,g,h,v=function(e){returnfunction(){returne}},y={noop:function(){},noarg:function(e){returnfunction(){returne()}},compose:function(e,t){returnfunction(){returne(t.apply(null,arguments))}},constant:v,identity:function(e){returne},tripleEquals:function(e,t){returne===t},curry:function(e){for(vart=newArray(arguments.length-1),n=1;n<arguments.length;n++)t[n-1]=arguments[n];returnfunction(){for(varn=newArray(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];varo=t.concat(n);returne.apply(null,o)}},not:function(e){returnfunction(){return!e.apply(null,arguments)}},die:function(e){returnfunction(){thrownewError(e)}},apply:function(e){returne()},call:function(e){e()},never:v(!1),always:v(!0)},b=y.never,C=y.always,x=function(){returnw},w=(r={fold:function(e,t){returne()},is:b,isSome:b,isNone:C,getOr:n=function(e){returne},getOrThunk:t=function(e){returne()},getOrDie:function(e){thrownewError(e||"error: getOrDie called on none.")},or:n,orThunk:t,map:x,ap:x,each:function(){},bind:x,flatten:x,exists:b,forall:C,filter:x,equals:e=function(e){returne.isNone()},equals_:e,toArray:function(){return[]},toString:y.constant("none()")},Object.freeze&&Object.freeze(r),r),N=function(e){vart=function(){returne},n=function(){returno},r=function(t){returnt(e)},o={fold:function(t,n){returnn(e)},is:function(t){returne===t},isSome:C,isNone:b,getOr:t,getOrThunk:t,getOrDie:t,or:n,orThunk:n,map:function(t){returnN(t(e))},ap:function(t){returnt.fold(x,function(t){returnN(t(e))})},each:function(t){t(e)},bind:r,flatten:t,exists:r,forall:r,filter:function(t){returnt(e)?o:w},equals:function(t){returnt.is(e)},equals_:function(t,n){returnt.fold(b,function(t){returnn(e,t)})},toArray:function(){return[e]},toString:function(){return"some("+e+")"}};returno},E={some:N,none:x,from:function(e){returnnull===e||e===undefined?w:N(e)}},S=(o=Array.prototype.indexOf)===undefined?function(e,t){returnD(e,t)}:function(e,t){returno.call(e,t)},k=function(e,t){returnS(e,t)>-1},T=function(e,t){for(varn=e.length,r=newArray(n),o=0;o<n;o++){vari=e[o];r[o]=t(i,o,e)}returnr},A=function(e,t){for(varn=0,r=e.length;n<r;n++)t(e[n],n,e)},_=function(e,t){for(varn=e.length-1;n>=0;n--)t(e[n],n,e)},B=function(e,t){for(varn=[],r=0,o=e.length;r<o;r++){vari=e[r];t(i,r,e)&&n.push(i)}returnn},R=function(e,t){for(varn=0,r=e.length;n<r;n++)if(t(e[n],n,e))returnE.some(n);returnE.none()},D=function(e,t){for(varn=0,r=e.length;n<r;++n)if(e[n]===t)returnn;return-1},O=Array.prototype.push,P=function(e){for(vart=[],n=0,r=e.length;n<r;++n){if(!Array.prototype.isPrototypeOf(e[n]))thrownewError("Arr.flatten item "+n+" was not an array, input: "+e);O.apply(t,e[n])}returnt},I=function(e,t){for(varn=0,r=e.length;n<r;++n)if(!0!==t(e[n],n,e))return!1;return!0},L=Array.prototype.slice,M={map:T,each:A,eachr:_,partition:function(e,t){for(varn=[],r=[],o=0,i=e.length;o<i;o++){vara=e[o];(t(a,o,e)?n:r).push(a)}return{pass:n,fail:r}},filter:B,groupBy:function(e,t){if(0===e.length)return[];for(varn=t(e[0]),r=[],o=[],i=0,a=e.length;i<a;i++){vars=e[i],u=t(s);u!==n&&(r.push(o),o=[]),n=u,o.push(s)}return0!==o.length&&r.push(o),r},indexOf:function(e,t){varn=S(e,t);return-1===n?E.none():E.some(n)},foldr:function(e,t,n){return_(e,function(e){n=t(n,e)}),n},foldl:function(e,t,n){returnA(e,function(e){n=t(n,e)}),n},find:function(e,t){for(varn=0,r=e.length;n<r;n++){varo=e[n];if(t(o,n,e))returnE.some(o)}returnE.none()},findIndex:R,flatten:P,bind:function(e,t){varn=T(e,t);returnP(n)},forall:I,exists:function(e,t){returnR(e,t).isSome()},contains:k,equal:function(e,t){returne.length===t.length&&I(e,function(e,n){returne===t[n]})},reverse:function(e){vart=L.call(e,0);returnt.reverse(),t},chunk:function(e,t){for(varn=[],r=0;r<e.length;r+=t){varo=e.slice(r,r+t);n.push(o)}returnn},difference:function(e,t){returnB(e,function(e){return!k(t,e)})},mapToObject:function(e,t){for(varn={},r=0,o=e.length;r<o;r++){vari=e[r];n[String(i)]=t(i,r)}returnn},pure:function(e){return[e]},sort:function(e,t){var