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(n){"use strict";var t=function(n){this.compose=n},r=new t(function(n){return function(t){return function(r){return n(t(r))}}});n.compose=function(n){return n.compose},n.Semigroupoid=t,n.semigroupoidFn=r}(n["Control.Semigroupoid"]=n["Control.Semigroupoid"]||{}),function(t){"use strict";var r=n["Control.Semigroupoid"],e=function(n,t){this.Semigroupoid0=n,this.identity=t},a=new e(function(){return r.semigroupoidFn},function(n){return n});t.Category=e,t.identity=function(n){return n.identity},t.categoryFn=a}(n["Control.Category"]=n["Control.Category"]||{}),function(t){"use strict";(n["Data.Boolean"]=n["Data.Boolean"]||{}).otherwise=!0}(),function(t){"use strict";n["Control.Category"],n["Data.Boolean"],n["Data.Ord"],n["Data.Ring"];t.flip=function(n){return function(t){return function(r){return n(r)(t)}}},t.const=function(n){return function(t){return n}}}(n["Data.Function"]=n["Data.Function"]||{}),function(t){"use strict";(n["Data.Unit"]=n["Data.Unit"]||{}).unit={}}(),function(t){"use strict";n["Data.Show"],n["Data.Symbol"],n["Record.Unsafe"],n["Type.Data.RowList"];t.Show=function(n){this.show=n},t.show=function(n){return n.show}}(n["Data.Show"]=n["Data.Show"]||{}),function(t){"use strict";var r=n["Data.Unit"];n["Data.Show"];t.unit=r.unit}(n["Data.Unit"]=n["Data.Unit"]||{}),function(t){"use strict";n["Data.Functor"],n["Control.Semigroupoid"];var r=n["Data.Function"],e=n["Data.Unit"],a=function(n){return n.map};t.Functor=function(n){this.map=n},t.map=a,t.void=function(n){return a(n)(r.const(e.unit))}}(n["Data.Functor"]=n["Data.Functor"]||{}),function(t){"use strict";n["Control.Apply"];var r=n["Control.Category"],e=n["Data.Function"],a=n["Data.Functor"],o=function(n){return n.apply};t.Apply=function(n,t){this.Functor0=n,this.apply=t},t.apply=o,t.applySecond=function(n){return function(t){return function(i){return o(n)(a.map(n.Functor0())(e.const(r.identity(r.categoryFn)))(t))(i)}}}}(n["Control.Apply"]=n["Control.Apply"]||{}),function(t){"use strict";var r=n["Control.Apply"],e=(n["Data.Functor"],n["Data.Unit"],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(a){return r.apply(n.Apply0())(e(n)(t))(a)}}}}(n["Control.Applicative"]=n["Control.Applicative"]||{}),function(t){"use strict";n["Control.Bind"],n["Control.Applicative"],n["Control.Apply"],n["Control.Category"];var r=n["Data.Function"],e=(n["Data.Functor"],n["Data.Unit"],function(n){return n.bind}),a=function(n){return r.flip(e(n))};t.Bind=function(n,t){this.Apply0=n,this.bind=t},t.bind=e,t.bindFlipped=a,t.composeKleisliFlipped=function(n){return function(t){return function(r){return function(e){return a(n)(t)(r(e))}}}}}(n["Control.Bind"]=n["Control.Bind"]||{}),function(t){"use strict";var r=n["Control.Applicative"],e=(n["Control.Apply"],n["Control.Bind"]);n["Data.Functor"],n["Data.Unit"];t.Monad=function(n,t){this.Applicative0=n,this.Bind1=t},t.ap=function(n){return function(t){return function(a){return e.bind(n.Bind1())(t)(function(t){return e.bind(n.Bind1())(a)(function(e){return r.pure(n.Applicative0())(t(e))})})}}}}(n["Control.Monad"]=n["Control.Monad"]||{}),function(t){"use strict";(n["Data.Eq"]=n["Data.Eq"]||{}).refEq=function(n){return function(t){return n===t}}}(),function(t){"use strict";var r=n["Data.Eq"],e=(n["Data.HeytingAlgebra"],n["Data.Symbol"],n["Data.Unit"],n["Data.Void"],n["Record.Unsafe"],n["Type.Data.RowList"],function(n){this.eq=n}),a=new e(r.refEq),o=new e(r.refEq);t.Eq=e,t.eq=function(n){return n.eq},t.eqChar=o,t.eqString=a}(n["Data.Eq"]=n["Data.Eq"]||{}),function(n){"use strict";n.foldrArray=function(n){return function(t){return function(r){for(var e=t,a=r.length-1;a>=0;a--)e=n(r[a])(e);return e}}},n.foldlArray=function(n){return function(t){return function(r){for(var e=t,a=r.length,o=0;o<a;o++)e=n(e)(r[o]);return e}}}}(n["Data.Foldable"]=n["Data.Foldable"]||{}),function(t){"use strict";n["Data.Semigroup"],n["Data.Symbol"],n["Data.Unit"],n["Data.Void"],n["Record.Unsafe"],n["Type.Data.RowList"];t.Semigroup=function(n){this.append=n},t.append=function(n){return n.append}}(n["Data.Semigroup"]=n["Data.Semigroup"]||{}),function(t){"use strict";n["Data.Boolean"],n["Data.Eq"],n["Data.EuclideanRing"],n["Data.Ord"],n["Data.Ordering"],n["Data.Semigroup"],n["Data.Symbol"],n["Data.Unit"],n["Record.Unsafe"],n["Type.Data.RowList"];t.Monoid=function(n,t){this.Semigroup0=n,this.mempty=t},t.mempty=function(n){return n.mempty}}(n["Data.Monoid"]=n["Data.Monoid"]||{}),function(t){"use strict";n["Control.Alt"],n["Control.Alternative"],n["Control.Applicative"],n["Control.Apply"],n["Control.Bind"],n["Control.Category"],n["Control.Extend"],n["Control.Monad"],n["Control.MonadZero"],n["Control.Plus"],n["Data.Bounded"];var r=n["Data.Eq"],e=n["Data.Function"],a=(n["Data.Functor"],n["Data.Functor.Invariant"],n["Data.Monoid"],n["Data.Ord"],n["Data.Ordering"],n["Data.Semigroup"],n["Data.Show"],n["Data.Unit"],n.Prelude,function(){function n(){}return n.value=new n,n}()),o=function(){function n(n){this.value0=n}return n.create=function(t){return new n(t)},n}(),i=function(n){return function(t){return function(r){if(r instanceof a)return n;if(r instanceof o)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])}}},u=i(!0)(e.const(!1));t.Nothing=a,t.Just=o,t.maybe=i,t.isNothing=u,t.eqMaybe=function(n){return new r.Eq(function(t){return function(e){return t instanceof a&&e instanceof a||t instanceof o&&e instanceof o&&r.eq(n)(t.value0)(e.value0)}})}}(n["Data.Maybe"]=n["Data.Maybe"]||{}),function(t){"use strict";var r=n["Data.Foldable"],e=(n["Control.Alt"],n["Control.Applicative"]),a=n["Control.Apply"],o=(n["Control.Bind"],n["Control.Category"],n["Control.Plus"],n["Control.Semigroupoid"],n["Data.Eq"],n["Data.Function"],n["Data.Functor"],n["Data.HeytingAlgebra"],n["Data.Maybe"]),i=(n["Data.Maybe.First"],n["Data.Maybe.Last"],n["Data.Monoid"]),u=(n["Data.Monoid.Additive"],n["Data.Monoid.Conj"],n["Data.Monoid.Disj"],n["Data.Monoid.Dual"],n["Data.Monoid.Endo"],n["Data.Monoid.Multiplicative"],n["Data.Newtype"],n["Data.Ord"],n["Data.Ordering"],n["Data.Semigroup"]),c=(n["Data.Semiring"],n["Data.Unit"]),f=(n.Prelude,function(n,t,r){this.foldMap=n,this.foldl=t,this.foldr=r}),l=function(n){return n.foldr},s=function(n){return n.foldl},d=function(n){return function(t){return function(r){return l(n)(function(n){return function(e){return u.append(t.Semigroup0())(r(n))(e)}})(i.mempty(t))}}},p=new f(function(n){return d(p)(n)},r.foldlArray,r.foldrArray);t.Foldable=f,t.foldr=l,t.foldl=s,t.foldMap=function(n){return n.foldMap},t.foldMapDefaultR=d,t.traverse_=function(n){return function(t){return function(r){return l(t)(function(t){return a.applySecond(n.Apply0())(r(t))})(e.pure(n)(c.unit))}}},t.find=function(n){return function(t){return s(n)(function(n){return function(r){return n instanceof o.Nothing&&t(r)?new o.Just(r):n}})(o.Nothing.value)}},t.foldableArray=p}(n["Data.Foldable"]=n["Data.Foldable"]||{}),function(t){"use strict";n["Control.Alt"];var r=n["Control.Applicative"],e=n["Control.Apply"],a=n["Control.Bind"],o=(n["Control.Extend"],n["Control.Monad"],n["Control.Semigroupoid"],n["Data.Bifoldable"],n["Data.Bifunctor"],n["Data.Bitraversable"],n["Data.Bounded"],n["Data.Eq"],n["Data.Foldable"],n["Data.FoldableWithIndex"],n["Data.Function"],n["Data.Functor"]),i=(n["Data.Functor.Invariant"],n["Data.FunctorWithIndex"],n["Data.Maybe"]),u=(n["Data.Monoid"],n["Data.Ord"],n["Data.Ordering"],n["Data.Semigroup"],n["Data.Show"],n["Data.Traversable"],n["Data.TraversableWithIndex"],n["Data.Unit"],n.Prelude,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 o.Functor(function(n){return function(t){if(t instanceof u)return new u(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 u)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 u)return new u(n.value0);if(n instanceof c)return o.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])}}),d=new a.Bind(function(){return s},l(function(n){return function(t){return new u(n)}})(function(n){return function(t){return t(n)}})),p=new r.Applicative(function(){return s},c.create);t.Left=u,t.Right=c,t.either=l,t.note=function(n){return i.maybe(new u(n))(c.create)},t.functorEither=f,t.applyEither=s,t.applicativeEither=p,t.bindEither=d}(n["Data.Either"]=n["Data.Either"]||{}),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(t){"use strict";var r=n.Effect,e=n["Control.Applicative"],a=n["Control.Apply"],o=n["Control.Bind"],i=n["Control.Monad"],u=n["Data.Functor"],c=(n["Data.Monoid"],n["Data.Semigroup"],n.Prelude,new i.Monad(function(){return s},function(){return f})),f=new o.Bind(function(){return l},r.bindE),l=new a.Apply(function(){return d},i.ap(c)),s=new e.Applicative(function(){return l},r.pureE),d=new u.Functor(e.liftA1(s));t.functorEffect=d,t.applyEffect=l,t.applicativeEffect=s,t.bindEffect=f,t.monadEffect=c}(n.Effect=n.Effect||{}),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(t){"use strict";var r=n["Effect.Ref"];n["Data.Function"],n["Data.Functor"],n.Effect,n.Prelude;t.new=r.new,t.read=r.read,t.write=r.write}(n["Effect.Ref"]=n["Effect.Ref"]||{}),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(t){"use strict";var r=n.Partial;t.crashWith=r.crashWith}(n.Partial=n.Partial||{}),function(t){"use strict";var r=n["Partial.Unsafe"],e=n.Partial;t.unsafeCrashWith=function(n){return r.unsafePartial(function(t){return e.crashWith(t)(n)})}}(n["Partial.Unsafe"]=n["Partial.Unsafe"]||{}),function(t){"use strict";n["Control.Applicative"],n["Control.Bind"],n["Control.Monad"],n["Control.Semigroupoid"],n["Data.Bifunctor"],n["Data.Either"],n["Data.Functor"],n["Data.Identity"],n["Data.Maybe"],n["Data.Unit"],n.Effect,n["Effect.Ref"],n["Partial.Unsafe"],n.Prelude;var r=function(){function n(n){this.value0=n}return n.create=function(t){return new n(t)},n}(),e=function(){function n(n){this.value0=n}return n.create=function(t){return new n(t)},n}();t.Loop=r,t.Done=e,t.tailRec=function(n){return function(t){return function(t){var a,o=!1;function i(a){if(!(a instanceof r)){if(a instanceof e)return o=!0,a.value0;throw new Error("Failed pattern match at Control.Monad.Rec.Class (line 91, column 3 - line 91, column 25): "+[a.constructor.name])}t=n(a.value0)}for(;!o;)a=i(t);return a}(n(t))}}}(n["Control.Monad.Rec.Class"]=n["Control.Monad.Rec.Class"]||{}),function(n){"use strict";n.length=function(n){return n.length},n["uncons'"]=function(n){return function(t){return function(r){return 0===r.length?n({}):t(r[0])(r.slice(1))}}},n.indexImpl=function(n){return function(t){return function(r){return function(e){return e<0||e>=r.length?t:n(r[e])}}}},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["Data.Array"]=n["Data.Array"]||{}),function(t){"use strict";n["Control.Applicative"],n["Control.Apply"],n["Control.Biapplicative"],n["Control.Biapply"],n["Control.Bind"],n["Control.Comonad"],n["Control.Extend"],n["Control.Lazy"],n["Control.Monad"],n["Control.Semigroupoid"],n["Data.Bifoldable"],n["Data.Bifunctor"],n["Data.Bitraversable"],n["Data.BooleanAlgebra"],n["Data.Bounded"],n["Data.CommutativeRing"],n["Data.Distributive"],n["Data.Eq"],n["Data.Foldable"],n["Data.FoldableWithIndex"],n["Data.Function"],n["Data.Functor"],n["Data.Functor.Invariant"],n["Data.FunctorWithIndex"],n["Data.HeytingAlgebra"],n["Data.Maybe"],n["Data.Maybe.First"],n["Data.Monoid"],n["Data.Newtype"],n["Data.Ord"],n["Data.Ordering"],n["Data.Ring"],n["Data.Semigroup"],n["Data.Semigroup.Foldable"],n["Data.Semigroup.Traversable"],n["Data.Semiring"],n["Data.Show"],n["Data.Traversable"],n["Data.TraversableWithIndex"],n["Data.Unit"],n.Prelude,n["Type.Equality"];var 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}(n["Data.Tuple"]=n["Data.Tuple"]||{}),function(t){"use strict";(n["Unsafe.Coerce"]=n["Unsafe.Coerce"]||{}).unsafeCoerce=function(n){return n}}(),function(t){"use strict";var r=n["Unsafe.Coerce"];t.unsafeCoerce=r.unsafeCoerce}(n["Unsafe.Coerce"]=n["Unsafe.Coerce"]||{}),function(t){"use strict";var r=n["Data.Array"],e=(n["Control.Alt"],n["Control.Alternative"],n["Control.Applicative"],n["Control.Apply"],n["Control.Bind"],n["Control.Category"],n["Control.Lazy"],n["Control.Monad.Rec.Class"],n["Control.Monad.ST"],n["Control.Monad.ST.Internal"],n["Control.Semigroupoid"],n["Data.Array.NonEmpty.Internal"],n["Data.Array.ST"],n["Data.Array.ST.Iterator"],n["Data.Boolean"],n["Data.Eq"],n["Data.Foldable"],n["Data.Function"]),a=(n["Data.Functor"],n["Data.HeytingAlgebra"],n["Data.Maybe"]),o=(n["Data.Ord"],n["Data.Ordering"],n["Data.Ring"],n["Data.Semigroup"],n["Data.Semiring"],n["Data.Traversable"],n["Data.Tuple"],n["Data.Unfoldable"],n["Partial.Unsafe"],n.Prelude,n["Unsafe.Coerce"],r["uncons'"](e.const(a.Nothing.value))(function(n){return function(t){return new a.Just({head:n,tail:t})}})),i=r.indexImpl(a.Just.create)(a.Nothing.value);t.uncons=o,t.index=i,t.take=r.take}(n["Data.Array"]=n["Data.Array"]||{}),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 a=new RegExp("^[\\+\\-]?"+e+"+$","i");return function(e){if(a.test(e)){var o=parseInt(e,r);return(0|o)===o?n(o):t}return t}}}}}(),function(t){"use strict";var r=n["Data.Int"],e=(n["Control.Category"],n["Control.Semigroupoid"],n["Data.Boolean"],n["Data.Bounded"],n["Data.CommutativeRing"],n["Data.DivisionRing"],n["Data.Eq"],n["Data.EuclideanRing"],n["Data.HeytingAlgebra"],n["Data.Int.Bits"],n["Data.Maybe"]),a=(n["Data.Ord"],n["Data.Ordering"],n["Data.Ring"],n["Data.Semiring"],n["Data.Show"],n.Global,n.Math,n.Prelude,r.fromStringAsImpl(e.Just.create)(e.Nothing.value)),o=a(10);t.fromString=o,t.fromStringAs=a}(n["Data.Int"]=n["Data.Int"]||{}),function(n){"use strict";n._charAt=function(n){return function(t){return function(r){return function(e){return r>=0&&r<e.length?n(e.charAt(r)):t}}}},n.length=function(n){return n.length}}(n["Data.String.CodeUnits"]=n["Data.String.CodeUnits"]||{}),function(t){"use strict";var r=n["Data.String.CodeUnits"],e=(n["Control.Semigroupoid"],n["Data.Boolean"],n["Data.Eq"],n["Data.Function"],n["Data.HeytingAlgebra"],n["Data.Maybe"]),a=(n["Data.Ord"],n["Data.Ring"],n["Data.Semiring"],n["Data.String.Pattern"],n["Data.String.Unsafe"],n.Prelude,r._charAt(e.Just.create)(e.Nothing.value));t.charAt=a,t.length=r.length}(n["Data.String.CodeUnits"]=n["Data.String.CodeUnits"]||{}),function(n){"use strict";n.split=function(n){return function(t){return t.split(n)}},n.trim=function(n){return n.trim()}}(n["Data.String.Common"]=n["Data.String.Common"]||{}),function(t){"use strict";var r=n["Data.String.Common"];n["Data.Eq"],n["Data.Ordering"],n["Data.String.Pattern"],n.Prelude;t.split=r.split,t.trim=r.trim}(n["Data.String.Common"]=n["Data.String.Common"]||{}),function(n){"use strict";var t=function(){var n={},t="Pure",r="Throw",e="Catch",a="Sync",o="Async",i="Bind",u="Bracket",c="Fork",f="Sequential",l="Map",s="Apply",d="Alt",p="Cons",D="Resume",h="Release",m="Finalizer",C="Finalized",g="Forked";function v(n,t,r,e){this.tag=n,this._1=t,this._2=r,this._3=e}function w(n){var t=function(t,r,e){return new v(n,t,r,e)};return t.tag=n,t}function E(n){return new v(t,void 0)}function y(n){try{n()}catch(t){setTimeout(function(){throw t},0)}}function A(n,t,r){try{return t(r())}catch(e){return n(e)}}function b(n,t,r){try{return t(r)()}catch(e){return r(n(e))(),E}}var S=function(){var n=1024,t=0,r=0,e=new Array(n),a=!1;function o(){var o;for(a=!0;0!==t;)t--,o=e[r],e[r]=void 0,r=(r+1)%n,o();a=!1}return{isDraining:function(){return a},enqueue:function(i){var u;t===n&&(u=a,o(),a=u),e[(r+t)%n]=i,t++,a||o()}}}();var _=0,F=1,P=2,M=3,B=4,U=5,R=6;function k(n,l,s){var d=0,g=_,w=s,E=null,N=null,q=null,L=null,I=null,x=0,O=0,W=null,H=!0;function J(s){for(var O,z,j;;)switch(O=null,z=null,j=null,g){case P:g=F,w=q(w),null===L?q=null:(q=L._1,L=L._2);break;case M:n.isLeft(w)?(g=U,E=w,w=null):null===q?g=U:(g=P,w=n.fromRight(w));break;case F:switch(w.tag){case i:q&&(L=new v(p,q,L)),q=w._2,g=F,w=w._1;break;case t:null===q?(g=U,w=n.right(w._1)):(g=P,w=w._1);break;case a:g=M,w=A(n.left,n.right,w._1);break;case o:return g=B,void(w=b(n.left,w._1,function(n){return function(){d===s&&(d++,S.enqueue(function(){d===s+1&&(g=M,w=n,J(d))}))}}));case r:g=U,E=n.left(w._1),w=null;break;case e:I=new v(p,w,null===q?I:new v(p,new v(D,q,L),I,N),N),q=null,L=null,g=F,w=w._1;break;case u:x++,I=new v(p,w,null===q?I:new v(p,new v(D,q,L),I,N),N),q=null,L=null,g=F,w=w._1;break;case c:g=M,O=k(n,l,w._2),l&&l.register(O),w._1&&O.run(),w=n.right(O);break;case f:g=F,w=T(n,l,w._1)}break;case U:if(q=null,L=null,null===I)g=R,w=N||E||w;else switch(O=I._3,j=I._1,I=I._2,j.tag){case e:N&&N!==O?g=U:E&&(g=F,w=j._2(n.fromLeft(E)),E=null);break;case D:N&&N!==O||E?g=U:(q=j._1,L=j._2,g=P,w=n.fromRight(w));break;case u:x--,null===E&&(z=n.fromRight(w),I=new v(p,new v(h,j._2,z),I,O),(N===O||x>0)&&(g=F,w=j._3(z)));break;case h:x++,I=new v(p,new v(C,w,E),I,N),g=F,w=N&&N!==O?j._1.killed(n.fromLeft(N))(j._2):E?j._1.failed(n.fromLeft(E))(j._2):j._1.completed(n.fromRight(w))(j._2),E=null;break;case m:x++,I=new v(p,new v(C,w,E),I,N),g=F,w=j._1;break;case C:x--,g=U,w=j._1,E=j._2}break;case R:for(var K in W)W.hasOwnProperty(K)&&(H=H&&W[K].rethrow,y(W[K].handler(w)));return W=null,void(N&&E?setTimeout(function(){throw n.fromLeft(E)},0):n.isLeft(w)&&H&&setTimeout(function(){if(H)throw n.fromLeft(w)},0));case _:g=F;break;case B:return}}function z(n){return function(){if(g===R)return H=H&&n.rethrow,n.handler(w)(),function(){};var t=O++;return(W=W||{})[t]=n,function(){null!==W&&delete W[t]}}}return{kill:function(t,r){return function(){if(g===R)return r(n.right(void 0))(),function(){};var e=z({rethrow:!1,handler:function(){return r(n.right(void 0))}})();switch(g){case _:N=n.left(t),g=R,w=N,J(d);break;case B:null===N&&(N=n.left(t)),0===x&&(g===B&&(I=new v(p,new v(m,w(t)),I,N)),g=U,w=null,E=null,J(++d));break;default:null===N&&(N=n.left(t)),0===x&&(g=U,w=null,E=null)}return e}},join:function(n){return function(){var t=z({rethrow:!1,handler:n})();return g===_&&J(d),t}},onComplete:z,isSuspended:function(){return g===_},run:function(){g===_&&(S.isDraining()?J(d):S.enqueue(function(){J(d)}))}}}function N(t,r,e,a){var i=0,u={},c=0,f={},D=new Error("[ParAff] Early exit"),h=null,m=n;function C(r,e,a){var o,i,c=e,f=null,D=null,h=0,m={};n:for(;;)switch(o=null,c.tag){case g:if(c._3===n&&(o=u[c._1],m[h++]=o.kill(r,function(n){return function(){0===--h&&a(n)()}})),null===f)break n;c=f._2,null===D?f=null:(f=D._1,D=D._2);break;case l:c=c._2;break;case s:case d:f&&(D=new v(p,f,D)),f=c,c=c._1}if(0===h)a(t.right(void 0))();else for(i=0,o=h;i<o;i++)m[i]=m[i]();return m}function w(r){return function(e){return function(){delete u[r._1],r._3=e,function r(e,o,i){var u,p,m,g,v,w;for(t.isLeft(e)?(u=e,p=null):(p=e,u=null);;){if(m=null,g=null,v=null,w=null,null!==h)return;if(null===o)return void a(u||p)();if(o._3!==n)return;switch(o.tag){case l:null===u?(o._3=t.right(o._1(t.fromRight(p))),p=o._3):o._3=u;break;case s:if(m=o._1._3,g=o._2._3,u){if(o._3=u,v=!0,w=c++,f[w]=C(D,u===m?o._2:o._1,function(){return function(){delete f[w],v?v=!1:null===i?r(u,null,null):r(u,i._1,i._2)}}),v)return void(v=!1)}else{if(m===n||g===n)return;p=t.right(t.fromRight(m)(t.fromRight(g))),o._3=p}break;case d:if(m=o._1._3,g=o._2._3,m===n&&t.isLeft(g)||g===n&&t.isLeft(m))return;if(m!==n&&t.isLeft(m)&&g!==n&&t.isLeft(g))u=p===m?g:m,p=null,o._3=u;else if(o._3=p,v=!0,w=c++,f[w]=C(D,p===m?o._2:o._1,function(){return function(){delete f[w],v?v=!1:null===i?r(p,null,null):r(p,i._1,i._2)}}),v)return void(v=!1)}null===i?o=null:(o=i._1,i=i._2)}}(e,r._2._1,r._2._2)}}}return function(){var a,o,c=F,f=e,D=null,h=null;n:for(;;)switch(a=null,o=null,c){case F:switch(f.tag){case l:D&&(h=new v(p,D,h)),D=new v(l,f._1,n,n),f=f._2;break;case s:D&&(h=new v(p,D,h)),D=new v(s,n,f._2,n),f=f._1;break;case d:D&&(h=new v(p,D,h)),D=new v(d,n,f._2,n),f=f._1;break;default:o=i++,c=U,a=f,f=new v(g,o,new v(p,D,h),n),(a=k(t,r,a)).onComplete({rethrow:!1,handler:w(f)})(),u[o]=a,r&&r.register(a)}break;case U:if(null===D)break n;D._1===n?(D._1=f,c=F,f=D._2,D._2=n):(D._2=f,f=D,null===h?D=null:(D=h._1,h=h._2))}for(m=f,o=0;o<i;o++)u[o].run()}(),function(n){return new v(o,function(r){return function(){return function(n,r){var e;for(var a in h=t.left(n),f)if(f.hasOwnProperty(a))for(a in e=f[a])e.hasOwnProperty(a)&&e[a]();f=null;var i=C(n,m,r);return function(n){return new v(o,function(n){return function(){for(var n in i)i.hasOwnProperty(n)&&i[n]();return E}})}}(n,r)}})}}function T(n,t,r){return new v(o,function(e){return function(){return N(n,t,r,e)}})}return v.EMPTY=n,v.Pure=w(t),v.Throw=w(r),v.Catch=w(e),v.Sync=w(a),v.Async=w(o),v.Bind=w(i),v.Bracket=w(u),v.Fork=w(c),v.Seq=w(f),v.ParMap=w(l),v.ParApply=w(s),v.ParAlt=w(d),v.Fiber=k,v.Supervisor=function(n){var t={},r=0,e=0;return{register:function(n){var a=r++;n.onComplete({rethrow:!0,handler:function(n){return function(){e--,delete t[a]}}}),t[a]=n,e++},isEmpty:function(){return 0===e},killAll:function(o,i){return function(){var u=0,c={};function f(r){c[r]=t[r].kill(o,function(t){return function(){delete c[r],u--,n.isLeft(t)&&n.fromLeft(t)&&setTimeout(function(){throw n.fromLeft(t)},0),0===u&&i()}})()}for(var l in t)t.hasOwnProperty(l)&&(u++,f(l));return t={},r=0,e=0,function(n){return new v(a,function(){for(var n in c)c.hasOwnProperty(n)&&c[n]()})}}}}},v.Scheduler=S,v.nonCanceler=E,v}();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(t){"use strict";n["Control.Category"],n["Control.Monad"],n.Effect;t.liftEffect=function(n){return n.liftEffect},t.MonadEffect=function(n,t){this.Monad0=n,this.liftEffect=t}}(n["Effect.Class"]=n["Effect.Class"]||{}),function(t){"use strict";n["Control.Alt"],n["Control.Alternative"],n["Control.Applicative"],n["Control.Apply"],n["Control.Bind"],n["Control.Monad.Cont.Trans"],n["Control.Monad.Except.Trans"],n["Control.Monad.Maybe.Trans"],n["Control.Monad.Reader.Trans"],n["Control.Monad.Writer.Trans"],n["Control.Plus"],n["Control.Semigroupoid"],n["Data.Either"],n["Data.Function"],n["Data.Functor"],n["Data.Functor.Compose"],n["Data.Maybe"],n["Data.Newtype"],n["Data.Unit"],n["Effect.Class"],n["Effect.Ref"],n.Prelude;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["Control.Parallel.Class"]=n["Control.Parallel.Class"]||{}),function(t){"use strict";n["Control.Alternative"],n["Control.Apply"];var r=n["Control.Category"],e=n["Control.Parallel.Class"],a=(n["Control.Semigroupoid"],n["Data.Foldable"]),o=(n["Data.Traversable"],n.Prelude,function(n){return function(t){return function(r){return function(o){return e.sequential(n)(a.traverse_(n.Applicative1())(t)(function(t){return e.parallel(n)(r(t))})(o))}}}});t.parTraverse_=o,t.parSequence_=function(n){return function(t){return o(n)(t)(r.identity(r.categoryFn))}}}(n["Control.Parallel"]=n["Control.Parallel"]||{}),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(t){"use strict";var r=n["Effect.Exception"];n["Control.Applicative"],n["Control.Semigroupoid"],n["Data.Either"],n["Data.Functor"],n["Data.Maybe"],n["Data.Show"],n.Effect,n.Prelude;t.throw=function(n){return r.throwException(r.error(n))}}(n["Effect.Exception"]=n["Effect.Exception"]||{}),function(t){"use strict";var r=n["Effect.Aff"],e=(n["Control.Alt"],n["Control.Alternative"],n["Control.Applicative"]),a=n["Control.Apply"],o=n["Control.Bind"],i=(n["Control.Lazy"],n["Control.Monad"]),u=(n["Control.Monad.Error.Class"],n["Control.Monad.Rec.Class"],n["Control.Parallel"]),c=n["Control.Parallel.Class"],f=(n["Control.Plus"],n["Control.Semigroupoid"],n["Data.Either"]),l=n["Data.Foldable"],s=n["Data.Function"],d=(n["Data.Function.Uncurried"],n["Data.Functor"]),p=n["Data.Monoid"],D=(n["Data.Newtype"],n["Data.Semigroup"]),h=(n["Data.Time.Duration"],n["Data.Unit"]),m=n.Effect,C=n["Effect.Class"],g=(n["Effect.Exception"],n["Effect.Unsafe"],n["Partial.Unsafe"]),v=(n.Prelude,n["Unsafe.Coerce"]),w=new d.Functor(r._parAffMap),E=new d.Functor(r._map),y={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 g.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 g.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},A=function(n){return function(){var t=function(n){return r._makeFiber(y,n)}(n)();return t.run(),t}},b=new a.Apply(function(){return w},r._parAffApply),S=new i.Monad(function(){return P},function(){return _}),_=new o.Bind(function(){return F},r._bind),F=new a.Apply(function(){return E},i.ap(S)),P=new e.Applicative(function(){return F},r._pure),M=new C.MonadEffect(function(){return S},r._liftEffect),B=new c.Parallel(function(){return U},function(){return S},v.unsafeCoerce,r._sequential),U=new e.Applicative(function(){return b},function(n){return c.parallel(B)(e.pure(P)(n))}),R=new D.Semigroup(function(n){return function(t){return function(r){return u.parSequence_(B)(l.foldableArray)([n(r),t(r)])}}}),k=s.const(e.pure(P)(h.unit)),N=new p.Monoid(function(){return R},k);t.launchAff=A,t.launchAff_=function(n){return d.void(m.functorEffect)(A(n))},t.nonCanceler=k,t.functorAff=E,t.applyAff=F,t.applicativeAff=P,t.bindAff=_,t.monadAff=S,t.monadEffectAff=M,t.functorParAff=w,t.applyParAff=b,t.applicativeParAff=U,t.parallelAff=B,t.semigroupCanceler=R,t.monoidCanceler=N,t.makeAff=r.makeAff}(n["Effect.Aff"]=n["Effect.Aff"]||{}),function(t){"use strict";n["Node.Encoding"];var r=n["Data.Show"],e=(n.Prelude,function(){function n(){}return n.value=new n,n}()),a=function(){function n(){}return n.value=new n,n}(),o=function(){function n(){}return n.value=new n,n}(),i=function(){function n(){}return n.value=new n,n}(),u=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 a)return"UTF8";if(n instanceof o)return"UTF16LE";if(n instanceof i)return"UCS2";if(n instanceof u)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=a,t.UTF16LE=o,t.UCS2=i,t.Base64=u,t.Latin1=c,t.Binary=f,t.Hex=l,t.encodingToNode=function(n){if(n instanceof e)return"ascii";if(n instanceof a)return"utf8";if(n instanceof o)return"utf16le";if(n instanceof i)return"ucs2";if(n instanceof u)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["Node.Encoding"]=n["Node.Encoding"]||{}),function(t){"use strict";(n["Node.Process"]=n["Node.Process"]||{}).process=process}(),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(t){"use strict";var r=n["Node.Buffer"],e=(n["Control.Semigroupoid"],n["Data.ArrayBuffer.Types"],n["Data.Maybe"],n["Data.Show"],n.Effect,n["Node.Encoding"]);n.Prelude;t.toString=function(n){return r.toStringImpl(e.encodingToNode(n))}}(n["Node.Buffer"]=n["Node.Buffer"]||{}),function(t){"use strict";var r=n["Node.Stream"],e=n["Control.Applicative"],a=n["Control.Bind"],o=n["Data.Either"],i=(n["Data.Functor"],n["Data.Maybe"],n["Data.Show"]),u=n.Effect,c=n["Effect.Exception"],f=n["Node.Buffer"],l=n["Node.Encoding"],s=(n.Prelude,r.readChunkImpl(o.Left.create)(o.Right.create)),d=function(n){return function(t){return r.onDataEitherImpl(s)(n)(t)}},p=function(n){return function(t){return d(n)(a.composeKleisliFlipped(u.bindEffect)(t)(function(n){if(n instanceof o.Left)return c.throw("Stream encoding should not be set");if(n instanceof o.Right)return e.pure(u.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=p,t.onDataString=function(n){return function(t){return function(r){return p(n)(a.composeKleisliFlipped(u.bindEffect)(r)(f.toString(t)))}}},t.onDataEither=d,t.writeString=function(n){return function(t){return r.writeStringImpl(n)(i.show(l.showEncoding)(t))}},t.onEnd=r.onEnd}(n["Node.Stream"]=n["Node.Stream"]||{}),function(t){"use strict";var r=n["Node.Process"],e=(n["Data.Functor"],n["Data.Maybe"],n["Data.Posix"],n["Data.Posix.Signal"],n.Effect,n["Foreign.Object"],n["Node.Platform"],n["Node.Stream"],n.Prelude,n["Unsafe.Coerce"],r.process.stdout),a=r.process.stdin;t.stdin=a,t.stdout=e}(n["Node.Process"]=n["Node.Process"]||{}),function(t){"use strict";var r=n["Control.Applicative"],e=n["Control.Bind"],a=n["Control.Category"],o=(n["Control.Monad.List.Trans"],n["Control.Monad.Rec.Class"]),i=n["Data.Array"],u=n["Data.Boolean"],c=n["Data.Either"],f=n["Data.Eq"],l=n["Data.Foldable"],s=n["Data.Functor"],d=(n["Data.HeytingAlgebra"],n["Data.Int"]),p=n["Data.Maybe"],D=n["Data.Monoid"],h=(n["Data.Ring"],n["Data.Semigroup"],n["Data.String"],n["Data.String.CodeUnits"]),m=n["Data.String.Common"],C=(n["Data.String.Pattern"],n["Data.Tuple"]),g=n["Data.Unit"],v=(n["Debug.Trace"],n.Effect),w=n["Effect.Aff"],E=n["Effect.Class"],y=n["Effect.Ref"],A=n["Node.Encoding"],b=n["Node.Process"],S=n["Node.Stream"],_=n["Partial.Unsafe"],F=(n.Prelude,function(n){return c.either(function(n){return _.unsafeCrashWith(n)})(a.identity(a.categoryFn))((t=n,s=m.split("\n")(m.trim(t)),e.bind(c.bindEither)(c.note("uncons")(i.uncons(s)))(function(n){return e.bind(c.bindEither)(c.note("n")(d.fromString(n.head)))(function(t){return r.pure(c.applicativeEither)(function(n){if(n)return"Yes";if(u.otherwise)return"No";throw new Error("Failed pattern match at ABC109B (line 56, column 1 - line 56, column 29): "+[n.constructor.name])}((e=t,function(n){return o.tailRec(function(t){var r=i.index(n)(e-t.value0|0);if(r instanceof p.Nothing)return new o.Done(!0);if(r instanceof p.Just){var a=h.charAt(h.length(r.value0)-1|0)(r.value0),u=h.charAt(0)(r.value0);return p.isNothing(t.value1)||f.eq(p.eqMaybe(f.eqChar))(t.value1)(u)&&p.isNothing(l.find(l.foldableArray)(f.eq(f.eqString)(r.value0))(i.take(e-t.value0|0)(n)))?new o.Loop(new C.Tuple(t.value0-1|0,a)):new o.Done(!1)}throw new Error("Failed pattern match at ABC109B (line 72, column 7 - line 85, column 34): "+[r.constructor.name])})(new C.Tuple(e,p.Nothing.value))})(n.tail))+"\n");var e})})));var t,s}),P=w.makeAff(function(n){return function(){var t=y.new("")();return S.onDataString(b.stdin)(A.UTF8.value)(function(n){return function(){var r=y.read(t)();return y.write(r+n)(t)()}})(),S.onEnd(b.stdin)(function(){var e=y.read(t)();return n(r.pure(c.applicativeEither)(e))()})(),D.mempty(w.monoidCanceler)}}),M=w.launchAff_(e.bind(w.bindAff)(P)(function(n){return e.bind(w.bindAff)(r.pure(w.applicativeAff)(F(n)))(function(n){return E.liftEffect(w.monadEffectAff)((t=n,s.void(v.functorEffect)(S.writeString(b.stdout)(A.UTF8.value)(t)(r.pure(v.applicativeEffect)(g.unit)))));var t})}));t.main=M,t.solve=F}(n.ABC109B=n.ABC109B||{}),n.ABC109B.main();
},{}]},{},["Focm"], null)

Measured memory_bytes: 11108