parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"Focm":[function(require,module,exports) {
var n={};!function(t){"use strict";(n["Control.Apply"]=n["Control.Apply"]||{}).arrayApply=function(n){return function(t){for(var r=n.length,e=t.length,u=new Array(r*e),i=0,o=0;o<r;o++)for(var a=n[o],c=0;c<e;c++)u[i++]=a(t[c]);return u}}}(),function(n){"use strict";n["Control.Semigroupoid"]=n["Control.Semigroupoid"]||{};var t=n["Control.Semigroupoid"],r=function(n){this.compose=n},e=new r(function(n){return function(t){return function(r){return n(t(r))}}});t.compose=function(n){return n.compose},t.Semigroupoid=r,t.semigroupoidFn=e}(n),function(n){"use strict";n["Control.Category"]=n["Control.Category"]||{};var t=n["Control.Category"],r=n["Control.Semigroupoid"],e=function(n,t){this.Semigroupoid0=n,this.identity=t},u=new e(function(){return r.semigroupoidFn},function(n){return n});t.Category=e,t.identity=function(n){return n.identity},t.categoryFn=u}(n),function(n){"use strict";n["Data.Function"]=n["Data.Function"]||{};var t=n["Data.Function"];t.flip=function(n){return function(t){return function(r){return n(r)(t)}}},t.const=function(n){return function(t){return n}}}(n),function(t){"use strict";(n["Data.Functor"]=n["Data.Functor"]||{}).arrayMap=function(n){return function(t){for(var r=t.length,e=new Array(r),u=0;u<r;u++)e[u]=n(t[u]);return e}}}(),function(t){"use strict";(n["Data.Unit"]=n["Data.Unit"]||{}).unit={}}(),function(n){"use strict";n["Data.Unit"]=n["Data.Unit"]||{};var t=n["Data.Unit"],r=n["Data.Unit"];t.unit=r.unit}(n),function(n){"use strict";n["Data.Functor"]=n["Data.Functor"]||{};var t=n["Data.Functor"],r=n["Data.Functor"],e=n["Data.Function"],u=n["Data.Unit"],i=function(n){this.map=n},o=function(n){return n.map},a=new i(r.arrayMap);t.Functor=i,t.map=o,t.void=function(n){return o(n)(e.const(u.unit))},t.functorArray=a}(n),function(n){"use strict";n["Control.Apply"]=n["Control.Apply"]||{};var t=n["Control.Apply"],r=n["Control.Apply"],e=n["Control.Category"],u=n["Data.Function"],i=n["Data.Functor"],o=function(n,t){this.Functor0=n,this.apply=t},a=new o(function(){return i.functorArray},r.arrayApply),c=function(n){return n.apply};t.Apply=o,t.apply=c,t.applySecond=function(n){return function(t){return function(r){return c(n)(i.map(n.Functor0())(u.const(e.identity(e.categoryFn)))(t))(r)}}},t.applyArray=a}(n),function(n){"use strict";n["Control.Applicative"]=n["Control.Applicative"]||{};var t=n["Control.Applicative"],r=n["Control.Apply"],e=function(n){return n.pure};t.Applicative=function(n,t){this.Apply0=n,this.pure=t},t.pure=e,t.liftA1=function(n){return function(t){return function(u){return r.apply(n.Apply0())(e(n)(t))(u)}}}}(n),function(t){"use strict";(n["Control.Bind"]=n["Control.Bind"]||{}).arrayBind=function(n){return function(t){for(var r=[],e=0,u=n.length;e<u;e++)Array.prototype.push.apply(r,t(n[e]));return r}}}(),function(n){"use strict";n["Control.Bind"]=n["Control.Bind"]||{};var t=n["Control.Bind"],r=n["Control.Bind"],e=n["Control.Apply"],u=n["Data.Function"],i=function(n,t){this.Apply0=n,this.bind=t},o=new i(function(){return e.applyArray},r.arrayBind),a=function(n){return n.bind},c=function(n){return u.flip(a(n))};t.Bind=i,t.bind=a,t.bindFlipped=c,t.composeKleisliFlipped=function(n){return function(t){return function(r){return function(e){return c(n)(t)(r(e))}}}},t.bindArray=o}(n),function(n){"use strict";n["Control.Monad"]=n["Control.Monad"]||{};var t=n["Control.Monad"],r=n["Control.Applicative"],e=n["Control.Bind"];t.Monad=function(n,t){this.Applicative0=n,this.Bind1=t},t.ap=function(n){return function(t){return function(u){return e.bind(n.Bind1())(t)(function(t){return e.bind(n.Bind1())(u)(function(e){return r.pure(n.Applicative0())(t(e))})})}}}}(n),function(n){"use strict";n.map_=function(n){return function(t){return function(){return n(t())}}},n.pure_=function(n){return function(){return n}},n.bind_=function(n){return function(t){return function(){return t(n())()}}},n.foreach=function(n){return function(t){return function(){for(var r=0,e=n.length;r<e;r++)t(n[r])()}}}}(n["Control.Monad.ST.Internal"]=n["Control.Monad.ST.Internal"]||{}),function(n){"use strict";n["Control.Monad.ST.Internal"]=n["Control.Monad.ST.Internal"]||{};var t=n["Control.Monad.ST.Internal"],r=n["Control.Monad.ST.Internal"],e=n["Control.Applicative"],u=n["Control.Apply"],i=n["Control.Bind"],o=n["Control.Monad"],a=new n["Data.Functor"].Functor(r.map_),c=new o.Monad(function(){return s},function(){return f}),f=new i.Bind(function(){return l},r.bind_),l=new u.Apply(function(){return a},o.ap(c)),s=new e.Applicative(function(){return l},r.pure_);t.functorST=a,t.applyST=l,t.applicativeST=s,t.bindST=f,t.monadST=c,t.foreach=r.foreach}(n),function(n){"use strict";n["Control.Parallel.Class"]=n["Control.Parallel.Class"]||{};var t=n["Control.Parallel.Class"];t.parallel=function(n){return n.parallel},t.sequential=function(n){return n.sequential},t.Parallel=function(n,t,r,e){this.Applicative1=n,this.Monad0=t,this.parallel=r,this.sequential=e}}(n),function(n){"use strict";n.foldrArray=function(n){return function(t){return function(r){for(var e=t,u=r.length-1;u>=0;u--)e=n(r[u])(e);return e}}},n.foldlArray=function(n){return function(t){return function(r){for(var e=t,u=r.length,i=0;i<u;i++)e=n(e)(r[i]);return e}}}}(n["Data.Foldable"]=n["Data.Foldable"]||{}),function(t){"use strict";(n["Data.Eq"]=n["Data.Eq"]||{}).refEq=function(n){return function(t){return n===t}}}(),function(n){"use strict";n["Data.Eq"]=n["Data.Eq"]||{};var t=n["Data.Eq"],r=function(n){this.eq=n},e=new r(n["Data.Eq"].refEq);t.Eq=r,t.eq=function(n){return n.eq},t.eqInt=e}(n),function(n){"use strict";n["Data.Maybe"]=n["Data.Maybe"]||{};var t=n["Data.Maybe"],r=n["Control.Applicative"],e=n["Control.Apply"],u=n["Control.Bind"],i=n["Data.Functor"],o=function(){function n(){}return n.value=new n,n}(),a=function(){function n(n){this.value0=n}return n.create=function(t){return new n(t)},n}(),c=new i.Functor(function(n){return function(t){return t instanceof a?new a(n(t.value0)):o.value}}),f=new e.Apply(function(){return c},function(n){return function(t){if(n instanceof a)return i.map(c)(n.value0)(t);if(n instanceof o)return o.value;throw new Error("Failed pattern match at Data.Maybe (line 67, column 1 - line 67, column 35): "+[n.constructor.name,t.constructor.name])}}),l=new u.Bind(function(){return f},function(n){return function(t){if(n instanceof a)return t(n.value0);if(n instanceof o)return o.value;throw new Error("Failed pattern match at Data.Maybe (line 125, column 1 - line 125, column 33): "+[n.constructor.name,t.constructor.name])}}),s=new r.Applicative(function(){return f},a.create);t.Nothing=o,t.Just=a,t.maybe=function(n){return function(t){return function(r){if(r instanceof o)return n;if(r instanceof a)return t(r.value0);throw new Error("Failed pattern match at Data.Maybe (line 217, column 1 - line 217, column 51): "+[n.constructor.name,t.constructor.name,r.constructor.name])}}},t.fromJust=function(n){return function(n){if(n instanceof a)return n.value0;throw new Error("Failed pattern match at Data.Maybe (line 268, column 1 - line 268, column 46): "+[n.constructor.name])}},t.functorMaybe=c,t.applyMaybe=f,t.applicativeMaybe=s,t.bindMaybe=l}(n),function(n){"use strict";n["Data.Monoid"]=n["Data.Monoid"]||{};var t=n["Data.Monoid"];t.Monoid=function(n,t){this.Semigroup0=n,this.mempty=t},t.mempty=function(n){return n.mempty}}(n),function(t){"use strict";(n["Data.Ord.Unsafe"]=n["Data.Ord.Unsafe"]||{}).unsafeCompareImpl=function(n){return function(t){return function(r){return function(e){return function(u){return e<u?n:e===u?t:r}}}}}}(),function(n){"use strict";n["Data.Ordering"]=n["Data.Ordering"]||{};var t=n["Data.Ordering"],r=n["Data.Eq"],e=function(){function n(){}return n.value=new n,n}(),u=function(){function n(){}return n.value=new n,n}(),i=function(){function n(){}return n.value=new n,n}(),o=new r.Eq(function(n){return function(t){return n instanceof e&&t instanceof e||(n instanceof u&&t instanceof u||n instanceof i&&t instanceof i)}});t.LT=e,t.GT=u,t.EQ=i,t.eqOrdering=o}(n),function(n){"use strict";n["Data.Ord.Unsafe"]=n["Data.Ord.Unsafe"]||{};var t=n["Data.Ord.Unsafe"],r=n["Data.Ord.Unsafe"],e=n["Data.Ordering"],u=r.unsafeCompareImpl(e.LT.value)(e.EQ.value)(e.GT.value);t.unsafeCompare=u}(n),function(n){"use strict";n["Data.Ord"]=n["Data.Ord"]||{};var t=n["Data.Ord"],r=n["Data.Eq"],e=function(n,t){this.Eq0=n,this.compare=t},u=new e(function(){return r.eqInt},n["Data.Ord.Unsafe"].unsafeCompare);t.Ord=e,t.compare=function(n){return n.compare},t.ordInt=u}(n),function(n){"use strict";n["Data.Semigroup"]=n["Data.Semigroup"]||{};var t=n["Data.Semigroup"];t.Semigroup=function(n){this.append=n},t.append=function(n){return n.append}}(n),function(n){"use strict";n.intAdd=function(n){return function(t){return n+t|0}},n.intMul=function(n){return function(t){return n*t|0}}}(n["Data.Semiring"]=n["Data.Semiring"]||{}),function(n){"use strict";n["Data.Semiring"]=n["Data.Semiring"]||{};var t=n["Data.Semiring"],r=n["Data.Semiring"],e=function(n,t,r,e){this.add=n,this.mul=t,this.one=r,this.zero=e},u=new e(r.intAdd,r.intMul,1,0);t.Semiring=e,t.add=function(n){return n.add},t.zero=function(n){return n.zero},t.mul=function(n){return n.mul},t.one=function(n){return n.one},t.semiringInt=u}(n),function(n){"use strict";n["Data.Foldable"]=n["Data.Foldable"]||{};var t=n["Data.Foldable"],r=n["Data.Foldable"],e=n["Control.Applicative"],u=n["Control.Apply"],i=n["Data.Eq"],o=n["Data.Maybe"],a=n["Data.Monoid"],c=n["Data.Ord"],f=n["Data.Ordering"],l=n["Data.Semigroup"],s=n["Data.Semiring"],p=n["Data.Unit"],d=function(n,t,r){this.foldMap=n,this.foldl=t,this.foldr=r},m=function(n){return n.foldr},h=function(n){return n.foldl},w=function(n){return function(t){return h(n)(function(n){return function(r){if(n instanceof o.Nothing)return new o.Just(r);if(n instanceof o.Just)return new o.Just(i.eq(f.eqOrdering)(t(n.value0)(r))(f.GT.value)?n.value0:r);throw new Error("Failed pattern match at Data.Foldable (line 389, column 3 - line 389, column 27): "+[n.constructor.name,r.constructor.name])}})(o.Nothing.value)}},v=function(n){return function(t){return function(r){return m(n)(function(n){return function(e){return l.append(t.Semigroup0())(r(n))(e)}})(a.mempty(t))}}},y=new d(function(n){return v(y)(n)},r.foldlArray,r.foldrArray);t.Foldable=d,t.foldr=m,t.foldl=h,t.foldMap=function(n){return n.foldMap},t.foldMapDefaultR=v,t.traverse_=function(n){return function(t){return function(r){return m(t)(function(t){return u.applySecond(n.Apply0())(r(t))})(e.pure(n)(p.unit))}}},t.sum=function(n){return function(t){return h(n)(s.add(t))(s.zero(t))}},t.maximum=function(n){return function(t){return w(t)(c.compare(n))}},t.maximumBy=w,t.foldableArray=y}(n),function(n){"use strict";n["Control.Parallel"]=n["Control.Parallel"]||{};var t=n["Control.Parallel"],r=n["Control.Category"],e=n["Control.Parallel.Class"],u=n["Data.Foldable"],i=function(n){return function(t){return function(r){return function(i){return e.sequential(n)(u.traverse_(n.Applicative1())(t)(function(t){return e.parallel(n)(r(t))})(i))}}}};t.parTraverse_=i,t.parSequence_=function(n){return function(t){return i(n)(t)(r.identity(r.categoryFn))}}}(n),function(n){"use strict";n.range=function(n){return function(t){for(var r=n>t?-1:1,e=new Array(r*(t-n)+1),u=n,i=0;u!==t;)e[i++]=u,u+=r;return e[i]=u,e}};n.replicate="function"==typeof Array.prototype.fill?function(n){return function(t){return n<1?[]:new Array(n).fill(t)}}:function(n){return function(t){for(var r=[],e=0,u=0;u<n;u++)r[e++]=t;return r}},n.length=function(n){return n.length},n.indexImpl=function(n){return function(t){return function(r){return function(e){return e<0||e>=r.length?t:n(r[e])}}}},n.sortImpl=function(n){return function(t){return t.slice().sort(function(t,r){return n(t)(r)})}},n.slice=function(n){return function(t){return function(r){return r.slice(n,t)}}},n.take=function(n){return function(t){return n<1?[]:t.slice(0,n)}},n.drop=function(n){return function(t){return n<1?t:t.slice(n)}},n.zipWith=function(n){return function(t){return function(r){for(var e=t.length<r.length?t.length:r.length,u=new Array(e),i=0;i<e;i++)u[i]=n(t[i])(r[i]);return u}}}}(n["Data.Array"]=n["Data.Array"]||{}),function(n){"use strict";n["Data.Tuple"]=n["Data.Tuple"]||{};var t=n["Data.Tuple"],r=function(){function n(n,t){this.value0=n,this.value1=t}return n.create=function(t){return function(r){return new n(t,r)}},n}();t.Tuple=r,t.fst=function(n){return n.value0},t.snd=function(n){return n.value1}}(n),function(n){"use strict";n["Data.Array"]=n["Data.Array"]||{};var t=n["Data.Array"],r=n["Data.Array"],e=n["Control.Bind"],u=n["Data.Function"],i=n["Data.Maybe"],o=n["Data.Ordering"],a=n["Data.Tuple"],c=r.zipWith(a.Tuple.create),f=function(n){return[n]},l=r.indexImpl(i.Just.create)(i.Nothing.value),s=u.flip(e.bind(e.bindArray));t.singleton=f,t.head=function(n){return l(n)(0)},t.last=function(n){return l(n)(r.length(n)-1|0)},t.index=l,t.concatMap=s,t.mapMaybe=function(n){return s(function(t){return i.maybe([])(f)(n(t))})},t.mapWithIndex=function(n){return function(t){return r.zipWith(n)(r.range(0)(r.length(t)-1|0))(t)}},t.sortBy=function(n){return function(t){return r.sortImpl(function(t){return function(r){var e=n(t)(r);if(e instanceof o.GT)return 1;if(e instanceof o.EQ)return 0;if(e instanceof o.LT)return-1;throw new Error("Failed pattern match at Data.Array (line 702, column 15 - line 707, column 1): "+[e.constructor.name])}})(t)}},t.dropEnd=function(n){return function(t){return r.take(r.length(t)-n|0)(t)}},t.zip=c,t.replicate=r.replicate,t.drop=r.drop}(n),function(n){"use strict";n.peekImpl=function(n){return function(t){return function(r){return function(e){return function(){return r>=0&&r<e.length?n(e[r]):t}}}}},n.poke=function(n){return function(t){return function(r){return function(){var e=n>=0&&n<r.length;return e&&(r[n]=t),e}}}}}(n["Data.Array.ST"]=n["Data.Array.ST"]||{}),function(n){"use strict";n["Data.Array.ST"]=n["Data.Array.ST"]||{};var t=n["Data.Array.ST"],r=n["Data.Array.ST"],e=n["Control.Applicative"],u=n["Control.Monad.ST.Internal"],i=n["Data.Maybe"],o=r.peekImpl(i.Just.create)(i.Nothing.value);t.peek=o,t.modify=function(n){return function(t){return function(e){return function(){var u=o(n)(e)();if(u instanceof i.Just)return r.poke(n)(t(u.value0))(e)();if(u instanceof i.Nothing)return!1;throw new Error("Failed pattern match at Data.Array.ST (line 156, column 3 - line 158, column 26): "+[u.constructor.name])}}}},t.unsafeFreeze=function(n){return e.pure(u.applicativeST)(n)},t.unsafeThaw=function(n){return e.pure(u.applicativeST)(n)}}(n),function(n){"use strict";n["Data.Either"]=n["Data.Either"]||{};var t=n["Data.Either"],r=n["Control.Applicative"],e=n["Control.Apply"],u=n["Control.Bind"],i=n["Data.Functor"],o=n["Data.Maybe"],a=function(){function n(n){this.value0=n}return n.create=function(t){return new n(t)},n}(),c=function(){function n(n){this.value0=n}return n.create=function(t){return new n(t)},n}(),f=new i.Functor(function(n){return function(t){if(t instanceof a)return new a(t.value0);if(t instanceof c)return new c(n(t.value0));throw new Error("Failed pattern match at Data.Either (line 38, column 8 - line 38, column 52): "+[t.constructor.name])}}),l=function(n){return function(t){return function(r){if(r instanceof a)return n(r.value0);if(r instanceof c)return t(r.value0);throw new Error("Failed pattern match at Data.Either (line 238, column 1 - line 238, column 64): "+[n.constructor.name,t.constructor.name,r.constructor.name])}}},s=new e.Apply(function(){return f},function(n){return function(t){if(n instanceof a)return new a(n.value0);if(n instanceof c)return i.map(f)(n.value0)(t);throw new Error("Failed pattern match at Data.Either (line 82, column 1 - line 82, column 41): "+[n.constructor.name,t.constructor.name])}}),p=new u.Bind(function(){return s},l(function(n){return function(t){return new a(n)}})(function(n){return function(t){return t(n)}})),d=new r.Applicative(function(){return s},c.create);t.Left=a,t.Right=c,t.either=l,t.note=function(n){return o.maybe(new a(n))(c.create)},t.functorEither=f,t.applyEither=s,t.applicativeEither=d,t.bindEither=p}(n),function(t){"use strict";(n["Data.Int"]=n["Data.Int"]||{}).fromStringAsImpl=function(n){return function(t){return function(r){var e;e=r<11?"[0-"+(r-1).toString()+"]":11===r?"[0-9a]":"[0-9a-"+String.fromCharCode(86+r)+"]";var u=new RegExp("^[\\+\\-]?"+e+"+$","i");return function(e){if(u.test(e)){var i=parseInt(e,r);return(0|i)===i?n(i):t}return t}}}}}(),function(n){"use strict";n["Data.Int"]=n["Data.Int"]||{};var t=n["Data.Int"],r=n["Data.Int"],e=n["Data.Maybe"],u=r.fromStringAsImpl(e.Just.create)(e.Nothing.value),i=u(10);t.fromString=i,t.fromStringAs=u}(n),function(t){"use strict";(n["Data.Show"]=n["Data.Show"]||{}).showIntImpl=function(n){return n.toString()}}(),function(n){"use strict";n["Data.Show"]=n["Data.Show"]||{};var t=n["Data.Show"],r=function(n){this.show=n},e=new r(n["Data.Show"].showIntImpl);t.Show=r,t.show=function(n){return n.show},t.showInt=e}(n),function(n){"use strict";n.split=function(n){return function(t){return t.split(n)}},n.trim=function(n){return n.trim()},n.joinWith=function(n){return function(t){return t.join(n)}}}(n["Data.String.Common"]=n["Data.String.Common"]||{}),function(n){"use strict";n["Data.String.Common"]=n["Data.String.Common"]||{};var t=n["Data.String.Common"],r=n["Data.String.Common"];t.split=r.split,t.trim=r.trim,t.joinWith=r.joinWith}(n),function(n){"use strict";n.pureE=function(n){return function(){return n}},n.bindE=function(n){return function(t){return function(){return t(n())()}}}}(n.Effect=n.Effect||{}),function(n){"use strict";n.Effect=n.Effect||{};var t=n.Effect,r=n.Effect,e=n["Control.Applicative"],u=n["Control.Apply"],i=n["Control.Bind"],o=n["Control.Monad"],a=n["Data.Functor"],c=new o.Monad(function(){return s},function(){return f}),f=new i.Bind(function(){return l},r.bindE),l=new u.Apply(function(){return p},o.ap(c)),s=new e.Applicative(function(){return l},r.pureE),p=new a.Functor(e.liftA1(s));t.functorEffect=p,t.applyEffect=l,t.applicativeEffect=s,t.bindEffect=f,t.monadEffect=c}(n),function(n){"use strict";var t=function(){var n={},t="Pure",r="Throw",e="Catch",u="Sync",i="Async",o="Bind",a="Bracket",c="Fork",f="Sequential",l="Map",s="Apply",p="Alt",d="Cons",m="Resume",h="Release",w="Finalizer",v="Finalized",y="Forked";function g(n,t,r,e){this.tag=n,this._1=t,this._2=r,this._3=e}function D(n){var t=function(t,r,e){return new g(n,t,r,e)};return t.tag=n,t}function E(n){return new g(t,void 0)}function A(n){try{n()}catch(t){setTimeout(function(){throw t},0)}}function C(n,t,r){try{return t(r())}catch(e){return n(e)}}function S(n,t,r){try{return t(r)()}catch(e){return r(n(e))(),E}}var _=function(){var n=1024,t=0,r=0,e=new Array(n),u=!1;function i(){var i;for(u=!0;0!==t;)t--,i=e[r],e[r]=void 0,r=(r+1)%n,i();u=!1}return{isDraining:function(){return u},enqueue:function(o){var a;t===n&&(a=u,i(),u=a),e[(r+t)%n]=o,t++,u||i()}}}();var b=0,F=1,M=2,I=3,T=4,P=5,k=6;function B(n,l,s){var p=0,y=b,D=s,E=null,N=null,L=null,q=null,O=null,R=0,x=0,W=null,z=!0;function J(s){for(var x,j,G;;)switch(x=null,j=null,G=null,y){case M:y=F,D=L(D),null===q?L=null:(L=q._1,q=q._2);break;case I:n.isLeft(D)?(y=P,E=D,D=null):null===L?y=P:(y=M,D=n.fromRight(D));break;case F:switch(D.tag){case o:L&&(q=new g(d,L,q)),L=D._2,y=F,D=D._1;break;case t:null===L?(y=P,D=n.right(D._1)):(y=M,D=D._1);break;case u:y=I,D=C(n.left,n.right,D._1);break;case i:return y=T,void(D=S(n.left,D._1,function(n){return function(){p===s&&(p++,_.enqueue(function(){p===s+1&&(y=I,D=n,J(p))}))}}));case r:y=P,E=n.left(D._1),D=null;break;case e:O=new g(d,D,null===L?O:new g(d,new g(m,L,q),O,N),N),L=null,q=null,y=F,D=D._1;break;case a:R++,O=new g(d,D,null===L?O:new g(d,new g(m,L,q),O,N),N),L=null,q=null,y=F,D=D._1;break;case c:y=I,x=B(n,l,D._2),l&&l.register(x),D._1&&x.run(),D=n.right(x);break;case f:y=F,D=U(n,l,D._1)}break;case P:if(L=null,q=null,null===O)y=k,D=N||E||D;else switch(x=O._3,G=O._1,O=O._2,G.tag){case e:N&&N!==x?y=P:E&&(y=F,D=G._2(n.fromLeft(E)),E=null);break;case m:N&&N!==x||E?y=P:(L=G._1,q=G._2,y=M,D=n.fromRight(D));break;case a:R--,null===E&&(j=n.fromRight(D),O=new g(d,new g(h,G._2,j),O,x),(N===x||R>0)&&(y=F,D=G._3(j)));break;case h:R++,O=new g(d,new g(v,D,E),O,N),y=F,D=N&&N!==x?G._1.killed(n.fromLeft(N))(G._2):E?G._1.failed(n.fromLeft(E))(G._2):G._1.completed(n.fromRight(D))(G._2),E=null;break;case w:R++,O=new g(d,new g(v,D,E),O,N),y=F,D=G._1;break;case v:R--,y=P,D=G._1,E=G._2}break;case k:for(var K in W)W.hasOwnProperty(K)&&(z=z&&W[K].rethrow,A(W[K].handler(D)));return W=null,void(N&&E?setTimeout(function(){throw n.fromLeft(E)},0):n.isLeft(D)&&z&&setTimeout(function(){if(z)throw n.fromLeft(D)},0));case b:y=F;break;case T:return}}function j(n){return function(){if(y===k)return z=z&&n.rethrow,n.handler(D)(),function(){};var t=x++;return(W=W||{})[t]=n,function(){null!==W&&delete W[t]}}}return{kill:function(t,r){return function(){if(y===k)return r(n.right(void 0))(),function(){};var e=j({rethrow:!1,handler:function(){return r(n.right(void 0))}})();switch(y){case b:N=n.left(t),y=k,D=N,J(p);break;case T:null===N&&(N=n.left(t)),0===R&&(y===T&&(O=new g(d,new g(w,D(t)),O,N)),y=P,D=null,E=null,J(++p));break;default:null===N&&(N=n.left(t)),0===R&&(y=P,D=null,E=null)}return e}},join:function(n){return function(){var t=j({rethrow:!1,handler:n})();return y===b&&J(p),t}},onComplete:j,isSuspended:function(){return y===b},run:function(){y===b&&(_.isDraining()?J(p):_.enqueue(function(){J(p)}))}}}function N(t,r,e,u){var o=0,a={},c=0,f={},m=new Error("[ParAff] Early exit"),h=null,w=n;function v(r,e,u){var i,o,c=e,f=null,m=null,h=0,w={};n:for(;;)switch(i=null,c.tag){case y:if(c._3===n&&(i=a[c._1],w[h++]=i.kill(r,function(n){return function(){0===--h&&u(n)()}})),null===f)break n;c=f._2,null===m?f=null:(f=m._1,m=m._2);break;case l:c=c._2;break;case s:case p:f&&(m=new g(d,f,m)),f=c,c=c._1}if(0===h)u(t.right(void 0))();else for(o=0,i=h;o<i;o++)w[o]=w[o]();return w}function D(r){return function(e){return function(){delete a[r._1],r._3=e,function r(e,i,o){var a,d,w,y,g,D;for(t.isLeft(e)?(a=e,d=null):(d=e,a=null);;){if(w=null,y=null,g=null,D=null,null!==h)return;if(null===i)return void u(a||d)();if(i._3!==n)return;switch(i.tag){case l:null===a?(i._3=t.right(i._1(t.fromRight(d))),d=i._3):i._3=a;break;case s:if(w=i._1._3,y=i._2._3,a){if(i._3=a,g=!0,D=c++,f[D]=v(m,a===w?i._2:i._1,function(){return function(){delete f[D],g?g=!1:null===o?r(a,null,null):r(a,o._1,o._2)}}),g)return void(g=!1)}else{if(w===n||y===n)return;d=t.right(t.fromRight(w)(t.fromRight(y))),i._3=d}break;case p:if(w=i._1._3,y=i._2._3,w===n&&t.isLeft(y)||y===n&&t.isLeft(w))return;if(w!==n&&t.isLeft(w)&&y!==n&&t.isLeft(y))a=d===w?y:w,d=null,i._3=a;else if(i._3=d,g=!0,D=c++,f[D]=v(m,d===w?i._2:i._1,function(){return function(){delete f[D],g?g=!1:null===o?r(d,null,null):r(d,o._1,o._2)}}),g)return void(g=!1)}null===o?i=null:(i=o._1,o=o._2)}}(e,r._2._1,r._2._2)}}}return function(){var u,i,c=F,f=e,m=null,h=null;n:for(;;)switch(u=null,i=null,c){case F:switch(f.tag){case l:m&&(h=new g(d,m,h)),m=new g(l,f._1,n,n),f=f._2;break;case s:m&&(h=new g(d,m,h)),m=new g(s,n,f._2,n),f=f._1;break;case p:m&&(h=new g(d,m,h)),m=new g(p,n,f._2,n),f=f._1;break;default:i=o++,c=P,u=f,f=new g(y,i,new g(d,m,h),n),(u=B(t,r,u)).onComplete({rethrow:!1,handler:D(f)})(),a[i]=u,r&&r.register(u)}break;case P:if(null===m)break n;m._1===n?(m._1=f,c=F,f=m._2,m._2=n):(m._2=f,f=m,null===h?m=null:(m=h._1,h=h._2))}for(w=f,i=0;i<o;i++)a[i].run()}(),function(n){return new g(i,function(r){return function(){return function(n,r){var e;for(var u in h=t.left(n),f)if(f.hasOwnProperty(u))for(u in e=f[u])e.hasOwnProperty(u)&&e[u]();f=null;var o=v(n,w,r);return function(n){return new g(i,function(n){return function(){for(var n in o)o.hasOwnProperty(n)&&o[n]();return E}})}}(n,r)}})}}function U(n,t,r){return new g(i,function(e){return function(){return N(n,t,r,e)}})}return g.EMPTY=n,g.Pure=D(t),g.Throw=D(r),g.Catch=D(e),g.Sync=D(u),g.Async=D(i),g.Bind=D(o),g.Bracket=D(a),g.Fork=D(c),g.Seq=D(f),g.ParMap=D(l),g.ParApply=D(s),g.ParAlt=D(p),g.Fiber=B,g.Supervisor=function(n){var t={},r=0,e=0;return{register:function(n){var u=r++;n.onComplete({rethrow:!0,handler:function(n){return function(){e--,delete t[u]}}}),t[u]=n,e++},isEmpty:function(){return 0===e},killAll:function(i,o){return function(){var a=0,c={};function f(r){c[r]=t[r].kill(i,function(t){return function(){delete c[r],a--,n.isLeft(t)&&n.fromLeft(t)&&setTimeout(function(){throw n.fromLeft(t)},0),0===a&&o()}})()}for(var l in t)t.hasOwnProperty(l)&&(a++,f(l));return t={},r=0,e=0,function(n){return new g(u,function(){for(var n in c)c.hasOwnProperty(n)&&c[n]()})}}}}},g.Scheduler=_,g.nonCanceler=E,g}();n._pure=t.Pure,n._map=function(n){return function(r){return r.tag===t.Pure.tag?t.Pure(n(r._1)):t.Bind(r,function(r){return t.Pure(n(r))})}},n._bind=function(n){return function(r){return t.Bind(n,r)}},n._liftEffect=t.Sync,n._parAffMap=function(n){return function(r){return t.ParMap(n,r)}},n._parAffApply=function(n){return function(r){return t.ParApply(n,r)}},n.makeAff=t.Async,n._makeFiber=function(n,r){return function(){return t.Fiber(n,null,r)}},n._sequential=t.Seq}(n["Effect.Aff"]=n["Effect.Aff"]||{}),function(n){"use strict";n["Effect.Class"]=n["Effect.Class"]||{};var t=n["Effect.Class"];t.liftEffect=function(n){return n.liftEffect},t.MonadEffect=function(n,t){this.Monad0=n,this.liftEffect=t}}(n),function(t){"use strict";(n["Partial.Unsafe"]=n["Partial.Unsafe"]||{}).unsafePartial=function(n){return n()}}(),function(t){"use strict";(n["Partial"]=n["Partial"]||{}).crashWith=function(){return function(n){throw new Error(n)}}}(),function(n){"use strict";n.Partial=n.Partial||{};var t=n.Partial,r=n.Partial;t.crashWith=r.crashWith}(n),function(n){"use strict";n["Partial.Unsafe"]=n["Partial.Unsafe"]||{};var t=n["Partial.Unsafe"],r=n["Partial.Unsafe"],e=n.Partial;t.unsafeCrashWith=function(n){return r.unsafePartial(function(t){return e.crashWith(t)(n)})}}(n),function(t){"use strict";(n["Unsafe.Coerce"]=n["Unsafe.Coerce"]||{}).unsafeCoerce=function(n){return n}}(),function(n){"use strict";n["Unsafe.Coerce"]=n["Unsafe.Coerce"]||{};var t=n["Unsafe.Coerce"],r=n["Unsafe.Coerce"];t.unsafeCoerce=r.unsafeCoerce}(n),function(n){"use strict";n["Effect.Aff"]=n["Effect.Aff"]||{};var t=n["Effect.Aff"],r=n["Effect.Aff"],e=n["Control.Applicative"],u=n["Control.Apply"],i=n["Control.Bind"],o=n["Control.Monad"],a=n["Control.Parallel"],c=n["Control.Parallel.Class"],f=n["Data.Either"],l=n["Data.Foldable"],s=n["Data.Function"],p=n["Data.Functor"],d=n["Data.Monoid"],m=n["Data.Semigroup"],h=n["Data.Unit"],w=n.Effect,v=n["Effect.Class"],y=n["Partial.Unsafe"],g=n["Unsafe.Coerce"],D=new p.Functor(r._parAffMap),E=new p.Functor(r._map),A={isLeft:function(n){if(n instanceof f.Left)return!0;if(n instanceof f.Right)return!1;throw new Error("Failed pattern match at Effect.Aff (line 390, column 12 - line 392, column 20): "+[n.constructor.name])},fromLeft:function(n){if(n instanceof f.Left)return n.value0;if(n instanceof f.Right)return y.unsafeCrashWith("unsafeFromLeft: Right");throw new Error("Failed pattern match at Effect.Aff (line 395, column 20 - line 399, column 3): "+[n.constructor.name])},fromRight:function(n){if(n instanceof f.Right)return n.value0;if(n instanceof f.Left)return y.unsafeCrashWith("unsafeFromRight: Left");throw new Error("Failed pattern match at Effect.Aff (line 400, column 21 - line 402, column 31): "+[n.constructor.name])},left:f.Left.create,right:f.Right.create},C=function(n){return function(){var t=function(n){return r._makeFiber(A,n)}(n)();return t.run(),t}},S=new u.Apply(function(){return D},r._parAffApply),_=new o.Monad(function(){return M},function(){return b}),b=new i.Bind(function(){return F},r._bind),F=new u.Apply(function(){return E},o.ap(_)),M=new e.Applicative(function(){return F},r._pure),I=new v.MonadEffect(function(){return _},r._liftEffect),T=new c.Parallel(function(){return P},function(){return _},g.unsafeCoerce,r._sequential),P=new e.Applicative(function(){return S},function(n){return c.parallel(T)(e.pure(M)(n))}),k=new m.Semigroup(function(n){return function(t){return function(r){return a.parSequence_(T)(l.foldableArray)([n(r),t(r)])}}}),B=s.const(e.pure(M)(h.unit)),N=new d.Monoid(function(){return k},B);t.launchAff=C,t.launchAff_=function(n){return p.void(w.functorEffect)(C(n))},t.nonCanceler=B,t.functorAff=E,t.applyAff=F,t.applicativeAff=M,t.bindAff=b,t.monadAff=_,t.monadEffectAff=I,t.functorParAff=D,t.applyParAff=S,t.applicativeParAff=P,t.parallelAff=T,t.semigroupCanceler=k,t.monoidCanceler=N,t.makeAff=r.makeAff}(n),function(n){"use strict";n.error=function(n){return new Error(n)},n.throwException=function(n){return function(){throw n}}}(n["Effect.Exception"]=n["Effect.Exception"]||{}),function(n){"use strict";n["Effect.Exception"]=n["Effect.Exception"]||{};var t=n["Effect.Exception"],r=n["Effect.Exception"];t.throw=function(n){return r.throwException(r.error(n))}}(n),function(n){"use strict";n.new=function(n){return function(){return{value:n}}},n.read=function(n){return function(){return n.value}},n.write=function(n){return function(t){return function(){return t.value=n,{}}}}}(n["Effect.Ref"]=n["Effect.Ref"]||{}),function(n){"use strict";n["Effect.Ref"]=n["Effect.Ref"]||{};var t=n["Effect.Ref"],r=n["Effect.Ref"];t.new=r.new,t.read=r.read,t.write=r.write}(n),function(n){"use strict";n["Node.Encoding"]=n["Node.Encoding"]||{};var t=n["Node.Encoding"],r=n["Data.Show"],e=function(){function n(){}return n.value=new n,n}(),u=function(){function n(){}return n.value=new n,n}(),i=function(){function n(){}return n.value=new n,n}(),o=function(){function n(){}return n.value=new n,n}(),a=function(){function n(){}return n.value=new n,n}(),c=function(){function n(){}return n.value=new n,n}(),f=function(){function n(){}return n.value=new n,n}(),l=function(){function n(){}return n.value=new n,n}(),s=new r.Show(function(n){if(n instanceof e)return"ASCII";if(n instanceof u)return"UTF8";if(n instanceof i)return"UTF16LE";if(n instanceof o)return"UCS2";if(n instanceof a)return"Base64";if(n instanceof c)return"Latin1";if(n instanceof f)return"Binary";if(n instanceof l)return"Hex";throw new Error("Failed pattern match at Node.Encoding (line 19, column 1 - line 19, column 39): "+[n.constructor.name])});t.ASCII=e,t.UTF8=u,t.UTF16LE=i,t.UCS2=o,t.Base64=a,t.Latin1=c,t.Binary=f,t.Hex=l,t.encodingToNode=function(n){if(n instanceof e)return"ascii";if(n instanceof u)return"utf8";if(n instanceof i)return"utf16le";if(n instanceof o)return"ucs2";if(n instanceof a)return"base64";if(n instanceof c)return"latin1";if(n instanceof f)return"binary";if(n instanceof l)return"hex";throw new Error("Failed pattern match at Node.Encoding (line 31, column 1 - line 31, column 37): "+[n.constructor.name])},t.showEncoding=s}(n),function(t){"use strict";(n["Node.Process"]=n["Node.Process"]||{}).process=process}(),function(n){"use strict";n["Node.Process"]=n["Node.Process"]||{};var t=n["Node.Process"],r=n["Node.Process"],e=r.process.stdout,u=r.process.stdin;t.stdin=u,t.stdout=e}(n),function(n){"use strict";n.readChunkImpl=function(n){return function(t){return function(r){if(r instanceof Buffer)return t(r);if("string"==typeof r)return n(r);throw new Error("Node.Stream.readChunkImpl: Unrecognised chunk type; expected String or Buffer, got: "+r)}}},n.onDataEitherImpl=function(n){return function(t){return function(r){return function(){t.on("data",function(t){r(n(t))()})}}}},n.onEnd=function(n){return function(t){return function(){n.on("end",t)}}},n.write=function(n){return function(t){return function(r){return function(){return n.write(t,null,r)}}}},n.writeStringImpl=function(n){return function(t){return function(r){return function(e){return function(){return n.write(r,t,e)}}}}}}(n["Node.Stream"]=n["Node.Stream"]||{}),function(t){"use strict";(n["Node.Buffer"]=n["Node.Buffer"]||{}).toStringImpl=function(n){return function(t){return function(){return t.toString(n)}}}}(),function(n){"use strict";n["Node.Buffer"]=n["Node.Buffer"]||{};var t=n["Node.Buffer"],r=n["Node.Buffer"],e=n["Node.Encoding"];t.toString=function(n){return r.toStringImpl(e.encodingToNode(n))}}(n),function(n){"use strict";n["Node.Stream"]=n["Node.Stream"]||{};var t=n["Node.Stream"],r=n["Node.Stream"],e=n["Control.Applicative"],u=n["Control.Bind"],i=n["Data.Either"],o=n["Data.Show"],a=n.Effect,c=n["Effect.Exception"],f=n["Node.Buffer"],l=n["Node.Encoding"],s=r.readChunkImpl(i.Left.create)(i.Right.create),p=function(n){return function(t){return r.onDataEitherImpl(s)(n)(t)}},d=function(n){return function(t){return p(n)(u.composeKleisliFlipped(a.bindEffect)(t)(function(n){if(n instanceof i.Left)return c.throw("Stream encoding should not be set");if(n instanceof i.Right)return e.pure(a.applicativeEffect)(n.value0);throw new Error("Failed pattern match at Node.Stream (line 94, column 5 - line 98, column 17): "+[n.constructor.name])}))}};t.onData=d,t.onDataString=function(n){return function(t){return function(r){return d(n)(u.composeKleisliFlipped(a.bindEffect)(r)(f.toString(t)))}}},t.onDataEither=p,t.writeString=function(n){return function(t){return r.writeStringImpl(n)(o.show(l.showEncoding)(t))}},t.onEnd=r.onEnd}(n),function(n){"use strict";n.MSOLUTIONS2019D=n.MSOLUTIONS2019D||{};var t=n.MSOLUTIONS2019D,r=n["Control.Applicative"],e=n["Control.Bind"],u=n["Control.Category"],i=n["Control.Monad.ST.Internal"],o=n["Data.Array"],a=n["Data.Array.ST"],c=n["Data.Either"],f=n["Data.Foldable"],l=n["Data.Function"],s=n["Data.Functor"],p=n["Data.Int"],d=n["Data.Maybe"],m=n["Data.Monoid"],h=n["Data.Ord"],w=n["Data.Semiring"],v=n["Data.Show"],y=n["Data.String.Common"],g=n["Data.Tuple"],D=n["Data.Unit"],E=n.Effect,A=n["Effect.Aff"],C=n["Effect.Class"],S=n["Effect.Ref"],_=n["Node.Encoding"],b=n["Node.Process"],F=n["Node.Stream"],M=n["Partial.Unsafe"],I=function(n){return y.split(" ")(n)},T=A.makeAff(function(n){return function(){var t=S.new("")();return F.onDataString(b.stdin)(_.UTF8.value)(function(n){return function(){var r=S.read(t)();return S.write(r+n)(t)()}})(),F.onEnd(b.stdin)(function(){var e=S.read(t)();return n(r.pure(c.applicativeEither)(e))()})(),m.mempty(A.monoidCanceler)}}),P=function(n){var t=o.mapMaybe(p.fromString)(I(n));return 2===t.length?new d.Just(new g.Tuple(t[0],t[1])):d.Nothing.value},k=function(n){return c.either(function(n){return M.unsafeCrashWith(n)})(u.identity(u.categoryFn))((t=n,m=y.split("\n")(y.trim(t)),e.bind(c.bindEither)(c.note("n")(e.bind(d.bindMaybe)(o.head(m))(p.fromString)))(function(n){var t=o.mapMaybe(P)(o.dropEnd(1)(o.drop(1)(m)));return e.bind(c.bindEither)(c.note("cs")(e.bind(d.bindMaybe)(o.last(m))(function(n){return r.pure(d.applicativeMaybe)(o.mapMaybe(p.fromString)(I(n)))})))(function(e){return r.pure(c.applicativeEither)((u=n,function(n){return function(t){return function(){var r=a.unsafeThaw(o.replicate(u)(0))();i.foreach(n)(function(n){return function(){return s.void(i.functorST)(a.modify(n.value0-1|0)(w.add(w.semiringInt)(1))(r))(),s.void(i.functorST)(a.modify(n.value1-1|0)(w.add(w.semiringInt)(1))(r))()}})();var e=a.unsafeFreeze(r)(),c=o.mapWithIndex(g.Tuple.create)(e),p=s.map(s.functorArray)(g.fst)(o.sortBy(function(n){return function(t){return l.flip(h.compare(h.ordInt))(g.snd(n))(g.snd(t))}})(c)),m=d.fromJust()(f.maximum(h.ordInt)(f.foldableArray)(t)),D=f.sum(f.foldableArray)(w.semiringInt)(t)-m|0,E=o.sortBy(l.flip(h.compare(h.ordInt)))(t),A=o.zip(p)(E),C=s.map(s.functorArray)(g.snd)(o.sortBy(function(n){return function(t){return l.flip(h.compare(h.ordInt))(g.fst(n))(g.fst(t))}})(A));return v.show(v.showInt)(D)+"\n"+y.joinWith(" ")(s.map(s.functorArray)(v.show(v.showInt))(C))}()}})(t)(e)+"\n");var u})})));var t,m},B=A.launchAff_(e.bind(A.bindAff)(T)(function(n){return e.bind(A.bindAff)(r.pure(A.applicativeAff)(k(n)))(function(n){return C.liftEffect(A.monadEffectAff)((t=n,s.void(E.functorEffect)(F.writeString(b.stdout)(_.UTF8.value)(t)(r.pure(E.applicativeEffect)(D.unit)))));var t})}));t.main=B,t.solve=k}(n),n.MSOLUTIONS2019D.main();
},{}]},{},["Focm"], null)