var PS={};!function(n){"use strict";n.arrayMap=function(n){return function(e){for(var t=e.length,a=new Array(t),r=0;t>r;r++)a[r]=n(e[r]);return a}}}(PS["Data.Functor"]=PS["Data.Functor"]||{}),function(n){"use strict";var e=function(n){this.compose=n},t=new e(function(n){return function(e){return function(t){return n(e(t))}}}),a=function(n){return n.compose};n.Semigroupoid=e,n.compose=a,n.semigroupoidFn=t}(PS["Control.Semigroupoid"]=PS["Control.Semigroupoid"]||{}),function(n){"use strict";var e=PS["Control.Semigroupoid"],t=function(n,e){this["__superclass_Control.Semigroupoid.Semigroupoid_0"]=n,this.id=e},a=function(n){return n.id},r=new t(function(){return e.semigroupoidFn},function(n){return n});n.Category=t,n.id=a,n.categoryFn=r}(PS["Control.Category"]=PS["Control.Category"]||{}),function(n){"use strict";var e=(PS["Control.Category"],function(n){return function(e){return function(t){return function(a){return n(e(t))(e(a))}}}}),t=function(n){return function(e){return function(t){return n(t)(e)}}},a=function(n){return function(e){return n}},r=function(n){return function(e){return n(e)}};n.apply=r,n["const"]=a,n.flip=t,n.on=e}(PS["Data.Function"]=PS["Data.Function"]||{}),function(n){"use strict";n.unit={}}(PS["Data.Unit"]=PS["Data.Unit"]||{}),function(n){"use strict";n.showIntImpl=function(n){return n.toString()},n.showNumberImpl=function(n){var e=n.toString();return isNaN(e+".0")?e:e+".0"},n.showArrayImpl=function(n){return function(e){for(var t=[],a=0,r=e.length;r>a;a++)t[a]=n(e[a]);return"["+t.join(",")+"]"}}}(PS["Data.Show"]=PS["Data.Show"]||{}),function(n){"use strict";var e=PS["Data.Show"],t=function(n){this.show=n},a=new t(e.showNumberImpl),r=new t(e.showIntImpl),u=function(n){return n.show},o=function(n){return new t(e.showArrayImpl(u(n)))};n.Show=t,n.show=u,n.showInt=r,n.showNumber=a,n.showArray=o}(PS["Data.Show"]=PS["Data.Show"]||{}),function(n){"use strict";var e=PS["Data.Unit"];PS["Data.Show"];n.unit=e.unit}(PS["Data.Unit"]=PS["Data.Unit"]||{}),function(n){"use strict";var e=PS["Data.Functor"],t=PS["Data.Function"],a=PS["Data.Unit"],r=PS["Control.Semigroupoid"],u=function(n){this.map=n},o=function(n){return n.map},i=function(n){return o(n)(t["const"](a.unit))},l=new u(r.compose(r.semigroupoidFn)),c=new u(e.arrayMap);n.Functor=u,n.map=o,n["void"]=i,n.functorFn=l,n.functorArray=c}(PS["Data.Functor"]=PS["Data.Functor"]||{}),function(n){"use strict";n.concatArray=function(n){return function(e){return 0===n.length?e:0===e.length?n:n.concat(e)}}}(PS["Data.Semigroup"]=PS["Data.Semigroup"]||{}),function(n){"use strict";var e=PS["Data.Semigroup"],t=(PS["Data.Unit"],PS["Data.Void"],function(n){this.append=n}),a=new t(e.concatArray),r=function(n){return n.append};n.Semigroup=t,n.append=r,n.semigroupArray=a}(PS["Data.Semigroup"]=PS["Data.Semigroup"]||{}),function(n){"use strict";var e=(PS["Data.Functor"],PS["Data.Semigroup"],function(n,e){this["__superclass_Data.Functor.Functor_0"]=n,this.alt=e}),t=function(n){return n.alt};n.Alt=e,n.alt=t}(PS["Control.Alt"]=PS["Control.Alt"]||{}),function(n){"use strict";n.arrayApply=function(n){return function(e){for(var t=[],a=0,r=0,u=n.length;u>r;r++)for(var o=0,i=e.length;i>o;o++)t[a++]=n[r](e[o]);return t}}}(PS["Control.Apply"]=PS["Control.Apply"]||{}),function(n){"use strict";var e=PS["Control.Apply"],t=PS["Data.Functor"],a=PS["Data.Function"],r=PS["Control.Category"],u=function(n,e){this["__superclass_Data.Functor.Functor_0"]=n,this.apply=e},o=new u(function(){return t.functorArray},e.arrayApply),i=function(n){return n.apply},l=function(n){return function(e){return function(u){return i(n)(t.map(n["__superclass_Data.Functor.Functor_0"]())(a["const"](r.id(r.categoryFn)))(e))(u)}}},c=function(n){return function(e){return function(a){return function(r){return i(n)(t.map(n["__superclass_Data.Functor.Functor_0"]())(e)(a))(r)}}}};n.Apply=u,n.apply=i,n.applySecond=l,n.lift2=c,n.applyArray=o}(PS["Control.Apply"]=PS["Control.Apply"]||{}),function(n){"use strict";var e=PS["Control.Apply"],t=(PS["Data.Functor"],PS["Data.Unit"],function(n,e){this["__superclass_Control.Apply.Apply_0"]=n,this.pure=e}),a=function(n){return n.pure},r=function(n){return function(t){return function(r){return e.apply(n["__superclass_Control.Apply.Apply_0"]())(a(n)(t))(r)}}};n.Applicative=t,n.liftA1=r,n.pure=a}(PS["Control.Applicative"]=PS["Control.Applicative"]||{}),function(n){"use strict";var e=(PS["Control.Alt"],PS["Data.Functor"],function(n,e){this["__superclass_Control.Alt.Alt_0"]=n,this.empty=e}),t=function(n){return n.empty};n.Plus=e,n.empty=t}(PS["Control.Plus"]=PS["Control.Plus"]||{}),function(n){"use strict";var e=(PS["Control.Alt"],PS["Control.Applicative"],PS["Control.Apply"],PS["Control.Plus"],PS["Data.Functor"],function(n,e){this["__superclass_Control.Applicative.Applicative_0"]=n,this["__superclass_Control.Plus.Plus_1"]=e});n.Alternative=e}(PS["Control.Alternative"]=PS["Control.Alternative"]||{}),function(n){"use strict";n.arrayBind=function(n){return function(e){for(var t=[],a=0,r=n.length;r>a;a++)Array.prototype.push.apply(t,e(n[a]));return t}}}(PS["Control.Bind"]=PS["Control.Bind"]||{}),function(n){"use strict";var e=PS["Control.Bind"],t=(PS["Control.Applicative"],PS["Control.Apply"]),a=(PS["Control.Category"],PS["Data.Function"],PS["Data.Functor"],function(n,e){this["__superclass_Control.Apply.Apply_0"]=n,this.bind=e}),r=new a(function(){return t.applyArray},e.arrayBind),u=function(n){return n.bind};n.Bind=a,n.bind=u,n.bindArray=r}(PS["Control.Bind"]=PS["Control.Bind"]||{}),function(n){"use strict";var e=PS["Control.Applicative"],t=(PS["Control.Apply"],PS["Control.Bind"]),a=(PS["Data.Functor"],PS["Data.Unit"],function(n,e){this["__superclass_Control.Applicative.Applicative_0"]=n,this["__superclass_Control.Bind.Bind_1"]=e}),r=function(n){return function(a){return function(r){return t.bind(n["__superclass_Control.Bind.Bind_1"]())(a)(function(a){return t.bind(n["__superclass_Control.Bind.Bind_1"]())(r)(function(t){return e.pure(n["__superclass_Control.Applicative.Applicative_0"]())(a(t))})})}}};n.Monad=a,n.ap=r}(PS["Control.Monad"]=PS["Control.Monad"]||{}),function(n){"use strict";n.pureE=function(n){return function(){return n}},n.bindE=function(n){return function(e){return function(){return e(n())()}}},n.runPure=function(n){return n()}}(PS["Control.Monad.Eff"]=PS["Control.Monad.Eff"]||{}),function(n){"use strict";var e=PS["Control.Monad.Eff"],t=PS["Control.Applicative"],a=PS["Control.Apply"],r=PS["Control.Bind"],u=PS["Control.Monad"],o=PS["Data.Functor"],i=(PS["Data.Unit"],new u.Monad(function(){return f},function(){return l})),l=new r.Bind(function(){return c},e.bindE),c=new a.Apply(function(){return s},u.ap(i)),f=new t.Applicative(function(){return c},e.pureE),s=new o.Functor(t.liftA1(f));n.functorEff=s,n.applyEff=c,n.applicativeEff=f,n.bindEff=l,n.monadEff=i,n.runPure=e.runPure}(PS["Control.Monad.Eff"]=PS["Control.Monad.Eff"]||{}),function(n){"use strict";n.log=function(n){return function(){return console.log(n),{}}}}(PS["Control.Monad.Eff.Console"]=PS["Control.Monad.Eff.Console"]||{}),function(n){"use strict";var e=PS["Control.Monad.Eff.Console"];PS["Control.Monad.Eff"],PS["Data.Show"],PS["Data.Unit"];n.log=e.log}(PS["Control.Monad.Eff.Console"]=PS["Control.Monad.Eff.Console"]||{}),function(n){"use strict";n.catchException=function(n){return function(e){return function(){try{return e()}catch(t){return t instanceof Error||"[object Error]"===Object.prototype.toString.call(t)?n(t)():n(new Error(t.toString()))()}}}}}(PS["Control.Monad.Eff.Exception"]=PS["Control.Monad.Eff.Exception"]||{}),function(n){"use strict";n.foldrArray=function(n){return function(e){return function(t){for(var a=e,r=t.length,u=r-1;u>=0;u--)a=n(t[u])(a);return a}}},n.foldlArray=function(n){return function(e){return function(t){for(var a=e,r=t.length,u=0;r>u;u++)a=n(a)(t[u]);return a}}}}(PS["Data.Foldable"]=PS["Data.Foldable"]||{}),function(n){"use strict";var e=(PS["Control.Alt"],PS["Control.Alternative"],PS["Control.Applicative"]),t=(PS["Control.Apply"],PS["Control.Bind"],PS["Control.Monad"],PS["Control.Plus"]),a=(PS["Data.Functor"],PS["Data.Unit"]),r=function(n,e){this["__superclass_Control.Alternative.Alternative_1"]=n,this["__superclass_Control.Monad.Monad_0"]=e},u=function(n){return function(r){if(r)return e.pure(n["__superclass_Control.Alternative.Alternative_1"]()["__superclass_Control.Applicative.Applicative_0"]())(a.unit);if(!r)return t.empty(n["__superclass_Control.Alternative.Alternative_1"]()["__superclass_Control.Plus.Plus_1"]());throw new Error("Failed pattern match at Control.MonadZero line 52, column 1 - line 52, column 23: "+[r.constructor.name])}};n.MonadZero=r,n.guard=u}(PS["Control.MonadZero"]=PS["Control.MonadZero"]||{}),function(n){"use strict";n.refEq=function(n){return function(e){return n===e}}}(PS["Data.Eq"]=PS["Data.Eq"]||{}),function(n){"use strict";var e=PS["Data.Eq"],t=(PS["Data.Unit"],PS["Data.Void"],function(n){this.eq=n}),a=new t(e.refEq),r=new t(e.refEq),u=new t(e.refEq),o=function(n){return n.eq};n.Eq=t,n.eq=o,n.eqInt=u,n.eqNumber=r,n.eqString=a}(PS["Data.Eq"]=PS["Data.Eq"]||{}),function(n){"use strict";n.unsafeCompareImpl=function(n){return function(e){return function(t){return function(a){return function(r){return r>a?n:a===r?e:t}}}}}}(PS["Data.Ord.Unsafe"]=PS["Data.Ord.Unsafe"]||{}),function(n){"use strict";var e=(PS["Data.Eq"],PS["Data.Semigroup"],PS["Data.Show"],function(){function n(){}return n.value=new n,n}()),t=function(){function n(){}return n.value=new n,n}(),a=function(){function n(){}return n.value=new n,n}();n.LT=e,n.GT=t,n.EQ=a}(PS["Data.Ordering"]=PS["Data.Ordering"]||{}),function(n){"use strict";var e=PS["Data.Ord.Unsafe"],t=PS["Data.Ordering"],a=e.unsafeCompareImpl(t.LT.value)(t.EQ.value)(t.GT.value);n.unsafeCompare=a}(PS["Data.Ord.Unsafe"]=PS["Data.Ord.Unsafe"]||{}),function(n){"use strict";n.intAdd=function(n){return function(e){return n+e|0}},n.intMul=function(n){return function(e){return n*e|0}},n.numAdd=function(n){return function(e){return n+e}},n.numMul=function(n){return function(e){return n*e}}}(PS["Data.Semiring"]=PS["Data.Semiring"]||{}),function(n){"use strict";var e=PS["Data.Semiring"],t=(PS["Data.Unit"],function(n,e,t,a){this.add=n,this.mul=e,this.one=t,this.zero=a}),a=function(n){return n.zero},r=new t(e.numAdd,e.numMul,1,0),u=new t(e.intAdd,e.intMul,1,0),o=function(n){return n.one},i=function(n){return n.mul},l=function(n){return n.add};n.Semiring=t,n.add=l,n.mul=i,n.one=o,n.zero=a,n.semiringInt=u,n.semiringNumber=r}(PS["Data.Semiring"]=PS["Data.Semiring"]||{}),function(n){"use strict";var e=(PS["Data.Ord"],PS["Data.Eq"]),t=PS["Data.Function"],a=PS["Data.Ord.Unsafe"],r=PS["Data.Ordering"],u=(PS["Data.Ring"],PS["Data.Unit"],PS["Data.Void"],PS["Data.Semiring"],function(n,e){this["__superclass_Data.Eq.Eq_0"]=n,this.compare=e}),o=new u(function(){return e.eqNumber},a.unsafeCompare),i=new u(function(){return e.eqInt},a.unsafeCompare),l=function(n){return n.compare},c=function(n){return function(e){return t.on(l(n))(e)}},f=function(n){return function(e){return function(t){var a=l(n)(e)(t);return a instanceof r.LT?!1:!0}}},s=function(n){return function(e){return function(t){var a=l(n)(e)(t);if(a instanceof r.LT)return t;if(a instanceof r.EQ)return e;if(a instanceof r.GT)return e;throw new Error("Failed pattern match at Data.Ord line 122, column 3 - line 125, column 12: "+[a.constructor.name])}}};n.Ord=u,n.compare=l,n.comparing=c,n.greaterThanOrEq=f,n.max=s,n.ordInt=i,n.ordNumber=o}(PS["Data.Ord"]=PS["Data.Ord"]||{}),function(n){"use strict";var e=!0;n.otherwise=e}(PS["Data.Boolean"]=PS["Data.Boolean"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Semigroup"]),t=(PS["Data.Unit"],PS["Data.Function"],PS["Data.Ord"],PS["Data.Eq"],PS["Data.EuclideanRing"],PS["Data.Boolean"],function(n,e){this["__superclass_Data.Semigroup.Semigroup_0"]=n,this.mempty=e}),a=new t(function(){return e.semigroupArray},[]),r=function(n){return n.mempty};n.Monoid=t,n.mempty=r,n.monoidArray=a}(PS["Data.Monoid"]=PS["Data.Monoid"]||{}),function(n){"use strict";n.topInt=2147483647,n.bottomInt=-2147483648}(PS["Data.Bounded"]=PS["Data.Bounded"]||{}),function(n){"use strict";var e=PS["Data.Bounded"],t=PS["Data.Ord"],a=(PS["Data.Unit"],PS["Data.Ordering"],function(n,e,t){this["__superclass_Data.Ord.Ord_0"]=n,this.bottom=e,this.top=t}),r=function(n){return n.top},u=new a(function(){return t.ordInt},e.bottomInt,e.topInt),o=function(n){return n.bottom};n.Bounded=a,n.bottom=o,n.top=r,n.boundedInt=u}(PS["Data.Bounded"]=PS["Data.Bounded"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"]),t=PS["Control.Alternative"],a=(PS["Control.Extend"],PS["Control.MonadZero"]),r=PS["Control.Plus"],u=(PS["Data.Functor.Invariant"],PS["Data.Monoid"],PS["Data.Functor"]),o=PS["Control.Apply"],i=PS["Control.Applicative"],l=PS["Control.Bind"],c=PS["Control.Monad"],f=(PS["Data.Semigroup"],PS["Data.Eq"],PS["Data.Ord"],PS["Data.Ordering"],PS["Data.Bounded"],PS["Data.Show"],PS["Data.Unit"],PS["Data.Function"]),s=PS["Control.Category"],p=function(){function n(){}return n.value=new n,n}(),m=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),v=function(n){return function(e){return function(t){if(t instanceof p)return n;if(t instanceof m)return e(t.value0);throw new Error("Failed pattern match at Data.Maybe line 214, column 1 - line 214, column 22: "+[n.constructor.name,e.constructor.name,t.constructor.name])}}},S=v(!0)(f["const"](!1)),d=v(!1)(f["const"](!0)),P=new u.Functor(function(n){return function(e){return e instanceof m?new m(n(e.value0)):p.value}}),g=function(n){return v(n)(s.id(s.categoryFn))},y=function(n){return function(e){var t=function(n){return function(n){return n}};return t(n)(function(){if(e instanceof m)return e.value0;throw new Error("Failed pattern match at Data.Maybe line 265, column 1 - line 265, column 21: "+[e.constructor.name])}())}},D=new o.Apply(function(){return P},function(n){return function(e){if(n instanceof m)return u.map(P)(n.value0)(e);if(n instanceof p)return p.value;throw new Error("Failed pattern match at Data.Maybe line 67, column 3 - line 67, column 31: "+[n.constructor.name,e.constructor.name])}}),C=new l.Bind(function(){return D},function(n){return function(e){if(n instanceof m)return e(n.value0);if(n instanceof p)return p.value;throw new Error("Failed pattern match at Data.Maybe line 126, column 3 - line 126, column 24: "+[n.constructor.name,e.constructor.name])}}),h=new i.Applicative(function(){return D},m.create),w=new c.Monad(function(){return h},function(){return C}),A=new e.Alt(function(){return P},function(n){return function(e){return n instanceof p?e:n}}),b=new r.Plus(function(){return A},p.value),_=new t.Alternative(function(){return h},function(){return b}),E=new a.MonadZero(function(){return _},function(){return w});n.Nothing=p,n.Just=m,n.fromJust=y,n.fromMaybe=g,n.isJust=d,n.isNothing=S,n.maybe=v,n.functorMaybe=P,n.applyMaybe=D,n.applicativeMaybe=h,n.altMaybe=A,n.plusMaybe=b,n.alternativeMaybe=_,n.bindMaybe=C,n.monadMaybe=w,n.monadZeroMaybe=E}(PS["Data.Maybe"]=PS["Data.Maybe"]||{}),function(n){"use strict";n.boolConj=function(n){return function(e){return n&&e}},n.boolDisj=function(n){return function(e){return n||e}},n.boolNot=function(n){return!n}}(PS["Data.HeytingAlgebra"]=PS["Data.HeytingAlgebra"]||{}),function(n){"use strict";var e=PS["Data.HeytingAlgebra"],t=(PS["Data.Unit"],function(n,e,t,a,r,u){this.conj=n,this.disj=e,this.ff=t,this.implies=a,this.not=r,this.tt=u}),a=function(n){return n.tt},r=function(n){return n.not},u=function(n){return n.implies},o=function(n){return n.ff},i=function(n){return n.disj},l=new t(e.boolConj,e.boolDisj,!1,function(n){return function(e){return i(l)(r(l)(n))(e)}},e.boolNot,!0),c=function(n){return n.conj};n.HeytingAlgebra=t,n.conj=c,n.disj=i,n.ff=o,n.implies=u,n.not=r,n.tt=a,n.heytingAlgebraBoolean=l}(PS["Data.HeytingAlgebra"]=PS["Data.HeytingAlgebra"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Semigroupoid"],PS["Data.Functor"]),t=function(n,e){this.unwrap=n,this.wrap=e},a=function(n){return n.wrap},r=function(n){return n.unwrap},u=function(n){return function(t){return function(u){return function(o){return function(i){return function(i){return function(l){return e.map(t)(r(o))(i(e.map(n)(a(u))(l)))}}}}}}};n.Newtype=t,n.alaF=u,n.unwrap=r,n.wrap=a}(PS["Data.Newtype"]=PS["Data.Newtype"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Comonad"],PS["Control.Extend"],PS["Data.Functor.Invariant"],PS["Data.HeytingAlgebra"]),t=PS["Data.Monoid"],a=PS["Data.Newtype"],r=(PS["Data.Eq"],PS["Data.Ord"],PS["Data.Bounded"],PS["Data.Functor"],PS["Control.Apply"],PS["Control.Applicative"],PS["Control.Bind"],PS["Control.Monad"],PS["Data.Show"],PS["Data.Semigroup"]),u=(PS["Data.Semiring"],function(n){return n}),o=function(n){return new r.Semigroup(function(t){return function(a){return e.conj(n)(t)(a)}})},i=new a.Newtype(function(n){return n},u),l=function(n){return new t.Monoid(function(){return o(n)},e.tt(n))};n.Conj=u,n.newtypeConj=i,n.semigroupConj=o,n.monoidConj=l}(PS["Data.Monoid.Conj"]=PS["Data.Monoid.Conj"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Comonad"],PS["Control.Extend"],PS["Data.Functor.Invariant"],PS["Data.HeytingAlgebra"]),t=PS["Data.Monoid"],a=PS["Data.Newtype"],r=(PS["Data.Eq"],PS["Data.Ord"],PS["Data.Bounded"],PS["Data.Functor"],PS["Control.Apply"],PS["Control.Applicative"],PS["Control.Bind"],PS["Control.Monad"],PS["Data.Show"],PS["Data.Semigroup"]),u=(PS["Data.Semiring"],function(n){return n}),o=function(n){return new r.Semigroup(function(t){return function(a){return e.disj(n)(t)(a)}})},i=new a.Newtype(function(n){return n},u),l=function(n){return new t.Monoid(function(){return o(n)},e.ff(n))};n.Disj=u,n.newtypeDisj=i,n.semigroupDisj=o,n.monoidDisj=l}(PS["Data.Monoid.Disj"]=PS["Data.Monoid.Disj"]||{}),function(n){"use strict";var e=PS["Data.Foldable"],t=(PS.Prelude,PS["Control.Plus"],PS["Data.Maybe"],PS["Data.Maybe.First"],PS["Data.Maybe.Last"],PS["Data.Monoid"]),a=(PS["Data.Monoid.Additive"],PS["Data.Monoid.Conj"]),r=PS["Data.Monoid.Disj"],u=(PS["Data.Monoid.Dual"],PS["Data.Monoid.Endo"],PS["Data.Monoid.Multiplicative"],PS["Data.Newtype"]),o=(PS["Control.Alt"],PS["Control.Semigroupoid"],PS["Control.Apply"]),i=PS["Control.Applicative"],l=PS["Data.Unit"],c=PS["Data.Function"],f=PS["Control.Category"],s=PS["Data.Semigroup"],p=(PS["Data.Eq"],PS["Data.Ordering"],PS["Data.Ord"],PS["Data.Semiring"]),m=PS["Data.Functor"],v=(PS["Data.HeytingAlgebra"],function(n,e,t){this.foldMap=n,this.foldl=e,this.foldr=t}),S=function(n){return n.foldr},d=function(n){return function(e){return function(t){return S(e)(function(e){return o.applySecond(n["__superclass_Control.Apply.Apply_0"]())(t(e))})(i.pure(n)(l.unit))}}},P=function(n){return function(e){return c.flip(d(n)(e))}},g=function(n){return n.foldl},y=function(n){return function(e){return g(n)(p.add(e))(p.zero(e))}},D=function(n){return function(e){return function(a){return function(r){return S(n)(function(n){return function(t){return s.append(e["__superclass_Data.Semigroup.Semigroup_0"]())(a(n))(t)}})(t.mempty(e))(r)}}}},C=new v(function(n){return D(C)(n)},e.foldlArray,e.foldrArray),h=function(n){return n.foldMap},w=function(n){return function(e){return h(n)(e)(f.id(f.categoryFn))}},A=function(n){return function(e){return function(t){return u.alaF(m.functorFn)(m.functorFn)(r.newtypeDisj)(r.newtypeDisj)(r.Disj)(h(n)(r.monoidDisj(e)))(t)}}},b=function(n){return function(e){return function(t){return u.alaF(m.functorFn)(m.functorFn)(a.newtypeConj)(a.newtypeConj)(a.Conj)(h(n)(a.monoidConj(e)))(t)}}};n.Foldable=v,n.all=b,n.any=A,n.fold=w,n.foldMap=h,n.foldMapDefaultR=D,n.foldl=g,n.foldr=S,n.for_=P,n.sum=y,n.traverse_=d,n.foldableArray=C}(PS["Data.Foldable"]=PS["Data.Foldable"]||{}),function(n){"use strict";n.traverseArrayImpl=function(){function n(n){this.fn=n}function e(n){return function(e){return new r(n,e)}}function t(n){for(var e=[];n!==a;)e.push(n.head),n=n.tail;return e}var a={},r=function(n,e){this.head=n,this.tail=e};return function(r){return function(u){return function(o){return function(i){var l=function(n,t){return r(u(e)(i(n)))(t)},c=function(e,t,a){if(0===t)return e;var r=a[t-1];return new n(function(){return c(l(r,e),t-1,a)})};return function(e){for(var r=c(o(a),e.length,e);r instanceof n;)r=r.fn();return u(t)(r)}}}}}}()}(PS["Data.Traversable"]=PS["Data.Traversable"]||{}),function(n){"use strict";var e=PS["Data.Traversable"],t=(PS.Prelude,PS["Data.Foldable"]),a=(PS["Data.Maybe"],PS["Data.Maybe.First"],PS["Data.Maybe.Last"],PS["Data.Monoid.Additive"],PS["Data.Monoid.Conj"],PS["Data.Monoid.Disj"],PS["Data.Monoid.Dual"],PS["Data.Monoid.Multiplicative"],PS["Control.Apply"]),r=PS["Data.Functor"],u=PS["Control.Applicative"],o=PS["Control.Category"],i=function(n,e,t,a){this["__superclass_Data.Foldable.Foldable_1"]=n,this["__superclass_Data.Functor.Functor_0"]=e,this.sequence=t,this.traverse=a},l=function(n){return n.traverse},c=function(n){return function(e){return function(t){return l(n)(e)(o.id(o.categoryFn))(t)}}},f=new i(function(){return t.foldableArray},function(){return r.functorArray},function(n){return c(f)(n)},function(n){return e.traverseArrayImpl(a.apply(n["__superclass_Control.Apply.Apply_0"]()))(r.map(n["__superclass_Control.Apply.Apply_0"]()["__superclass_Data.Functor.Functor_0"]()))(u.pure(n))}),s=function(n){return n.sequence};n.Traversable=i,n.sequence=s,n.sequenceDefault=c,n.traverse=l,n.traversableArray=f}(PS["Data.Traversable"]=PS["Data.Traversable"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"],PS["Control.Extend"],PS["Data.Bifoldable"],PS["Data.Bifunctor"],PS["Data.Bitraversable"],PS["Data.Foldable"],PS["Data.Functor.Invariant"],PS["Data.Monoid"],PS["Data.Traversable"],PS["Data.Functor"]),t=(PS["Control.Apply"],PS["Control.Applicative"],PS["Control.Bind"],PS["Control.Monad"],PS["Data.Show"],PS["Data.Semigroup"],PS["Data.Eq"],PS["Data.Ord"],PS["Data.Ordering"],PS["Data.Bounded"],PS["Data.Semiring"],PS["Data.Function"],function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}()),a=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),r=new e.Functor(function(n){return function(e){if(e instanceof t)return new t(e.value0);if(e instanceof a)return new a(n(e.value0));throw new Error("Failed pattern match at Data.Either line 35, column 3 - line 35, column 26: "+[n.constructor.name,e.constructor.name])}}),u=function(n){return function(e){return function(r){if(r instanceof t)return n(r.value0);if(r instanceof a)return e(r.value0);throw new Error("Failed pattern match at Data.Either line 224, column 1 - line 224, column 26: "+[n.constructor.name,e.constructor.name,r.constructor.name])}}};n.Left=t,n.Right=a,n.either=u,n.functorEither=r}(PS["Data.Either"]=PS["Data.Either"]||{}),function(n){"use strict";var e=PS["Control.Monad.Eff.Exception"];PS.Prelude,PS["Control.Monad.Eff"],PS["Data.Either"],PS["Data.Maybe"],PS["Data.Show"],PS["Control.Semigroupoid"],PS["Control.Applicative"],PS["Data.Functor"];n.catchException=e.catchException}(PS["Control.Monad.Eff.Exception"]=PS["Control.Monad.Eff.Exception"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"],PS["Data.Either"],PS["Data.Function"],PS["Data.Unit"],function(n,e,t){this["__superclass_Control.Monad.Monad_0"]=n,this.catchError=e,this.throwError=t}),t=function(n){return n.throwError},a=function(n){return n.catchError};n.MonadError=e,n.catchError=a,n.throwError=t}(PS["Control.Monad.Error.Class"]=PS["Control.Monad.Error.Class"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Biapplicative"],PS["Control.Biapply"],PS["Control.Comonad"],PS["Control.Extend"],PS["Control.Lazy"],PS["Data.Bifoldable"],PS["Data.Bifunctor"],PS["Data.Bitraversable"],PS["Data.Foldable"],PS["Data.Functor.Invariant"],PS["Data.HeytingAlgebra"],PS["Data.Maybe"],PS["Data.Maybe.First"],PS["Data.Monoid"],PS["Data.Newtype"],PS["Data.Traversable"],PS["Data.Show"],PS["Data.Semigroup"],PS["Data.Eq"],PS["Data.Ord"],PS["Data.Ordering"],PS["Data.Bounded"],PS["Control.Semigroupoid"],PS["Data.Semiring"],PS["Data.Ring"],PS["Data.CommutativeRing"],PS["Data.BooleanAlgebra"],PS["Data.Functor"],PS["Control.Apply"],PS["Control.Applicative"],PS["Control.Bind"],PS["Control.Monad"],PS["Data.Function"],PS["Data.Unit"],function(){function n(n,e){this.value0=n,this.value1=e}return n.create=function(e){return function(t){return new n(e,t)}},n}()),t=function(n){return function(e){return n(e.value0)(e.value1)}},a=function(n){return n.value1},r=function(n){return n.value0};n.Tuple=e,n.fst=r,n.snd=a,n.uncurry=t}(PS["Data.Tuple"]=PS["Data.Tuple"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"],PS["Control.Alternative"],PS["Control.Monad.Cont.Class"],PS["Control.Monad.Eff.Class"],PS["Control.Monad.Error.Class"]),t=(PS["Control.Monad.Reader.Class"],PS["Control.Monad.Rec.Class"],PS["Control.Monad.State.Class"],PS["Control.Monad.Trans.Class"],PS["Control.Monad.Writer.Class"],PS["Control.MonadPlus"],PS["Control.MonadZero"],PS["Control.Plus"],PS["Data.Either"]),a=(PS["Data.Monoid"],PS["Data.Newtype"],PS["Data.Tuple"],PS["Data.Functor"]),r=PS["Control.Apply"],u=PS["Control.Monad"],o=PS["Control.Applicative"],i=(PS["Control.Semigroupoid"],PS["Control.Bind"]),l=(PS["Data.Semigroup"],PS["Data.Function"],PS["Control.Category"],function(n){return n}),c=function(n){return function(e){return n(e)}},f=function(n){return new a.Functor(function(e){return c(a.map(n)(a.map(t.functorEither)(e)))})},s=function(n){return new u.Monad(function(){return v(n)},function(){return p(n)})},p=function(n){return new i.Bind(function(){return m(n)},function(e){return function(a){return i.bind(n["__superclass_Control.Bind.Bind_1"]())(e)(t.either(function(e){return o.pure(n["__superclass_Control.Applicative.Applicative_0"]())(t.Left.create(e))})(function(n){var e=a(n);return e}))}})},m=function(n){return new r.Apply(function(){return f(n["__superclass_Control.Bind.Bind_1"]()["__superclass_Control.Apply.Apply_0"]()["__superclass_Data.Functor.Functor_0"]())},u.ap(s(n)))},v=function(n){return new o.Applicative(function(){return m(n)},function(e){return l(o.pure(n["__superclass_Control.Applicative.Applicative_0"]())(t.Right.create(e)))})},S=function(n){return new e.MonadError(function(){return s(n)},function(e){return function(a){return i.bind(n["__superclass_Control.Bind.Bind_1"]())(e)(t.either(function(n){var e=a(n);return e})(function(e){return o.pure(n["__superclass_Control.Applicative.Applicative_0"]())(t.Right.create(e))}))}},function(e){return l(o.pure(n["__superclass_Control.Applicative.Applicative_0"]())(t.Left.create(e)))})};n.ExceptT=l,n.mapExceptT=c,n.functorExceptT=f,n.applyExceptT=m,n.applicativeExceptT=v,n.bindExceptT=p,n.monadExceptT=s,n.monadErrorExceptT=S}(PS["Control.Monad.Except.Trans"]=PS["Control.Monad.Except.Trans"]||{}),function(n){"use strict";n.range=function(n){return function(e){for(var t=n>e?-1:1,a=[],r=n,u=0;r!==e;r+=t)a[u++]=r;return a[u]=r,a}},n.replicate=function(n){return function(e){for(var t=[],a=0,r=0;n>r;r++)t[a++]=e;return t}},n.length=function(n){return n.length},n.cons=function(n){return function(e){return[n].concat(e)}},n.snoc=function(n){return function(e){var t=n.slice();return t.push(e),t}},n["uncons'"]=function(n){return function(e){return function(t){return 0===t.length?n({}):e(t[0])(t.slice(1))}}},n.indexImpl=function(n){return function(e){return function(t){return function(a){return 0>a||a>=t.length?e:n(t[a])}}}},n.findIndexImpl=function(n){return function(e){return function(t){return function(a){for(var r=0,u=a.length;u>r;r++)if(t(a[r]))return n(r);return e}}}},n.reverse=function(n){return n.slice().reverse()},n.concat=function(n){for(var e=[],t=0,a=n.length;a>t;t++)for(var r=n[t],u=0,o=r.length;o>u;u++)e.push(r[u]);return e},n.filter=function(n){return function(e){return e.filter(n)}},n.sortImpl=function(n){return function(e){return e.slice().sort(function(e,t){return n(e)(t)})}},n.slice=function(n){return function(e){return function(t){return t.slice(n,e)}}},n.take=function(n){return function(e){return 1>n?[]:e.slice(0,n)}},n.zipWith=function(n){return function(e){return function(t){for(var a=e.lengthu;u++)r[u]=n(e[u])(t[u]);return r}}},n.unsafeIndexImpl=function(n){return function(e){return n[e]}}}(PS["Data.Array"]=PS["Data.Array"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"],PS["Control.Alternative"],PS["Control.Plus"]),t=(PS["Data.Foldable"],PS["Data.Traversable"],PS["Data.Show"],PS["Data.Semigroup"],PS["Data.Eq"],PS["Data.HeytingAlgebra"],PS["Data.Ord"],PS["Data.Ordering"],PS["Data.Functor"],PS["Control.Apply"],PS["Control.Applicative"],PS["Control.Category"],function(){function n(n,e){this.value0=n,this.value1=e}return n.create=function(e){return function(t){return new n(e,t)}},n}()),a=function(n){return function(a){return new t(a,e.empty(n))}};n.NonEmpty=t,n.singleton=a}(PS["Data.NonEmpty"]=PS["Data.NonEmpty"]||{}),function(n){"use strict";n.unfoldrArrayImpl=function(n){return function(e){return function(t){return function(a){return function(r){return function(u){for(var o=[];;){var i=r(u);if(n(i))return o;var l=e(i);o.push(t(l)),u=a(l)}}}}}}}}(PS["Data.Unfoldable"]=PS["Data.Unfoldable"]||{}),function(n){"use strict";n.unsafePartial=function(n){return n()}}(PS["Partial.Unsafe"]=PS["Partial.Unsafe"]||{}),function(n){"use strict";n.crashWith=function(){return function(n){throw new Error(n)}}}(PS.Partial=PS.Partial||{}),function(n){"use strict";var e=PS.Partial,t=function(n){return e.crashWith(n)("Partial.crash: partial function")};n.crash=t}(PS.Partial=PS.Partial||{}),function(n){"use strict";var e=PS["Partial.Unsafe"];PS.Partial;n.unsafePartial=e.unsafePartial}(PS["Partial.Unsafe"]=PS["Partial.Unsafe"]||{}),function(n){"use strict";var e=PS["Data.Unfoldable"],t=(PS.Prelude,PS["Data.Maybe"]),a=(PS["Data.Traversable"],PS["Data.Tuple"]),r=PS["Partial.Unsafe"],u=(PS["Data.Ord"],PS["Data.Ring"],PS["Data.Function"],PS["Data.Unit"],PS["Data.Functor"],function(n){this.unfoldr=n}),o=function(n){return n.unfoldr},i=new u(e.unfoldrArrayImpl(t.isNothing)(r.unsafePartial(function(n){return t.fromJust(n)}))(a.fst)(a.snd)),l=function(n){return function(e){return function(r){var u=function(n){var e=0>=n;if(e)return t.Nothing.value;if(!e)return new t.Just(new a.Tuple(r,n-1));throw new Error("Failed pattern match at Data.Unfoldable line 59, column 7 - line 60, column 34: "+[e.constructor.name])};return o(n)(u)(e)}}};n.Unfoldable=u,n.replicate=l,n.unfoldr=o,n.unfoldableArray=i}(PS["Data.Unfoldable"]=PS["Data.Unfoldable"]||{}),function(n){"use strict";var e=PS["Data.Array"],t=(PS.Prelude,PS["Control.Alt"],PS["Control.Alternative"],PS["Control.Lazy"],PS["Control.Monad.Rec.Class"],PS["Data.Foldable"],PS["Data.Maybe"]),a=PS["Data.NonEmpty"],r=(PS["Data.Traversable"],PS["Data.Tuple"]),u=(PS["Data.Unfoldable"],PS["Partial.Unsafe"],PS["Data.Function"]),o=(PS["Data.Ord"],PS["Data.Semiring"],PS["Data.Boolean"]),i=PS["Data.Ordering"],l=(PS["Data.Ring"],PS["Data.Eq"]),c=(PS["Data.HeytingAlgebra"],PS["Control.Apply"],PS["Data.Functor"],PS["Control.Applicative"],PS["Control.Semigroupoid"],PS["Control.Bind"]),f=(PS["Data.Semigroup"],PS["Control.Category"],e.zipWith(r.Tuple.create)),s=function(n){return e.unsafeIndexImpl},p=e["uncons'"](u["const"](t.Nothing.value))(function(n){return function(e){return new t.Just({head:n,tail:e})}}),m=e["uncons'"](u["const"](t.Nothing.value))(function(n){return function(n){return new t.Just(n)}}),v=function(n){return function(t){var a=function(e){return function(t){var a=n(e)(t);if(a instanceof i.GT)return 1;if(a instanceof i.EQ)return 0;if(a instanceof i.LT)return-1;throw new Error("Failed pattern match at Data.Array line 467, column 15 - line 472, column 1: "+[a.constructor.name])}};return e.sortImpl(a)(t)}},S=function(n){return[n]},d=function(n){return 0===e.length(n)},P=function(n){if(d(n))return t.Nothing.value;if(o.otherwise)return new t.Just(e.slice(0)(e.length(n)-1)(n)); throw new Error("Failed pattern match at Data.Array line 249, column 1 - line 251, column 55: "+[n.constructor.name])},g=e.indexImpl(t.Just.create)(t.Nothing.value),y=function(n){return function(a){var r=function(e){var r=e;n:for(;;){var u=g(a)(r);if(u instanceof t.Just){var o=n(u.value0);if(o){var i=r+1|0;r=i;continue n}if(!o)return new t.Just(r);throw new Error("Failed pattern match at Data.Array line 529, column 17 - line 529, column 49: "+[o.constructor.name])}if(u instanceof t.Nothing)return t.Nothing.value;throw new Error("Failed pattern match at Data.Array line 528, column 5 - line 530, column 25: "+[u.constructor.name])}},u=r(0);if(u instanceof t.Just&&0===u.value0)return{init:[],rest:a};if(u instanceof t.Just)return{init:e.slice(0)(u.value0)(a),rest:e.slice(u.value0)(e.length(a))(a)};if(u instanceof t.Nothing)return{init:a,rest:[]};throw new Error("Failed pattern match at Data.Array line 515, column 3 - line 521, column 30: "+[u.constructor.name])}},D=function(n){return g(n)(0)},C=function(n){var r=function(r){return function(u){for(var o=r,i=u;;){var l=p(i);{if(!(l instanceof t.Just)){if(l instanceof t.Nothing)return e.reverse(o);throw new Error("Failed pattern match at Data.Array line 554, column 15 - line 558, column 27: "+[l.constructor.name])}var c=y(n(l.value0.head))(l.value0.tail),f=e.cons(new a.NonEmpty(l.value0.head,c.init))(o);o=f,i=c.rest}}}};return r([])},h=function(n){return function(e){return C(l.eq(n))(e)}},w=e.findIndexImpl(t.Just.create)(t.Nothing.value),A=function(n){return function(e){return w(function(t){return l.eq(n)(t)(e)})}},b=u.flip(c.bind(c.bindArray)),_=function(n){return b(function(e){return t.maybe([])(S)(n(e))})};n.concatMap=b,n.elemIndex=A,n.findIndex=w,n.group=h,n.groupBy=C,n.head=D,n.index=g,n.init=P,n.mapMaybe=_,n["null"]=d,n.singleton=S,n.sortBy=v,n.span=y,n.tail=m,n.uncons=p,n.unsafeIndex=s,n.zip=f,n.cons=e.cons,n.filter=e.filter,n.length=e.length,n.range=e.range,n.replicate=e.replicate,n.reverse=e.reverse,n.slice=e.slice,n.snoc=e.snoc,n.take=e.take,n.zipWith=e.zipWith}(PS["Data.Array"]=PS["Data.Array"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Array"]),t=(PS["Data.Ring"],function(n){return function(n){return e.slice(1)(e.length(n))(n)}}),a=function(n){return function(n){return n[0]}};n.head=a,n.tail=t}(PS["Data.Array.Partial"]=PS["Data.Array.Partial"]||{}),function(n){"use strict";n.runSTArray=function(n){return n},n.copyImpl=function(n){return function(){return n.slice()}}}(PS["Data.Array.ST"]=PS["Data.Array.ST"]||{}),function(n){"use strict";var e=PS["Data.Array.ST"],t=(PS["Control.Monad.Eff"],PS["Control.Monad.ST"],PS["Data.Maybe"],e.copyImpl);n.thaw=t,n.runSTArray=e.runSTArray}(PS["Data.Array.ST"]=PS["Data.Array.ST"]||{}),function(n){"use strict";n.toForeign=function(n){return n},n.typeOf=function(n){return typeof n},n.isNull=function(n){return null===n},n.isUndefined=function(n){return void 0===n}}(PS["Data.Foreign"]=PS["Data.Foreign"]||{}),function(n){"use strict";n.mkFn3=function(n){return function(e,t,a){return n(e)(t)(a)}},n.mkFn4=function(n){return function(e,t,a,r){return n(e)(t)(a)(r)}},n.mkFn5=function(n){return function(e,t,a,r,u){return n(e)(t)(a)(r)(u)}},n.mkFn6=function(n){return function(e,t,a,r,u,o){return n(e)(t)(a)(r)(u)(o)}},n.mkFn7=function(n){return function(e,t,a,r,u,o,i){return n(e)(t)(a)(r)(u)(o)(i)}},n.runFn4=function(n){return function(e){return function(t){return function(a){return function(r){return n(e,t,a,r)}}}}}}(PS["Data.Function.Uncurried"]=PS["Data.Function.Uncurried"]||{}),function(n){"use strict";var e=PS["Data.Function.Uncurried"];PS["Data.Unit"];n.mkFn3=e.mkFn3,n.mkFn4=e.mkFn4,n.mkFn5=e.mkFn5,n.mkFn6=e.mkFn6,n.mkFn7=e.mkFn7,n.runFn4=e.runFn4}(PS["Data.Function.Uncurried"]=PS["Data.Function.Uncurried"]||{}),function(n){"use strict";n.fromNumberImpl=function(n){return function(e){return function(t){return(0|t)===t?n(t):e}}},n.toNumber=function(n){return n},n.fromStringAsImpl=function(n){return function(e){return function(t){var a;a=11>t?"[0-"+(t-1).toString()+"]":11===t?"[0-9a]":"[0-9a-"+String.fromCharCode(86+t)+"]";var r=new RegExp("^[\\+\\-]?"+a+"+$","i");return function(a){if(r.test(a)){var u=parseInt(a,t);return(0|u)===u?n(u):e}return e}}}}}(PS["Data.Int"]=PS["Data.Int"]||{}),function(n){"use strict";n.ceil=Math.ceil,n.floor=Math.floor,n.sqrt=Math.sqrt}(PS.Math=PS.Math||{}),function(n){"use strict";var e=PS.Math;n.ceil=e.ceil,n.floor=e.floor,n.sqrt=e.sqrt}(PS.Math=PS.Math||{}),function(n){"use strict";var e=PS["Data.Int"],t=PS["Data.Boolean"],a=(PS["Data.BooleanAlgebra"],PS["Data.Bounded"]),r=(PS["Data.Eq"],PS["Data.Function"],PS["Data.Int.Bits"],PS["Data.Maybe"]),u=(PS["Data.Ord"],PS.Math),o=PS["Partial.Unsafe"],i=(PS["Data.HeytingAlgebra"],PS["Control.Semigroupoid"],e.fromStringAsImpl(r.Just.create)(r.Nothing.value)),l=i(10),c=e.fromNumberImpl(r.Just.create)(r.Nothing.value),f=function(n){if(n>=e.toNumber(a.top(a.boundedInt)))return a.top(a.boundedInt);if(n<=e.toNumber(a.bottom(a.boundedInt)))return a.bottom(a.boundedInt);if(t.otherwise)return o.unsafePartial(function(e){return r.fromJust(e)(c(n))});throw new Error("Failed pattern match at Data.Int line 66, column 1 - line 69, column 56: "+[n.constructor.name])},s=function(n){return f(u.floor(n))},p=function(n){return 0===(1&n)},m=function(n){return f(u.ceil(n))};n.ceil=m,n.even=p,n.floor=s,n.fromNumber=c,n.fromString=l,n.fromStringAs=i,n.toNumber=e.toNumber}(PS["Data.Int"]=PS["Data.Int"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"]),t=(PS["Control.Alternative"],PS["Control.Apply"]),a=(PS["Control.Comonad"],PS["Control.Extend"],PS["Control.MonadPlus"],PS["Control.MonadZero"],PS["Control.Plus"]),r=PS["Data.Foldable"],u=(PS["Data.Generic"],PS["Data.Maybe"]),o=PS["Data.Monoid"],i=(PS["Data.Newtype"],PS["Data.NonEmpty"],PS["Data.Traversable"]),l=(PS["Data.Tuple"],PS["Data.Unfoldable"]),c=(PS["Data.Unit"],PS["Data.Show"],PS["Data.Semigroup"]),f=PS["Data.Functor"],s=(PS["Data.Eq"],PS["Data.Function"]),p=(PS["Data.HeytingAlgebra"],PS["Data.Ord"],PS["Data.Ordering"],PS["Control.Semigroupoid"],PS["Control.Applicative"]),m=PS["Control.Category"],v=PS["Control.Bind"],S=(PS["Control.Monad"],function(){function n(){}return n.value=new n,n}()),d=function(){function n(n,e){this.value0=n,this.value1=e}return n.create=function(e){return function(t){return new n(e,t)}},n}(),P=function(n){return n},g=new r.Foldable(function(n){return function(e){return r.foldl(g)(function(t){return function(a){return c.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(t)(e(a))}})(o.mempty(n))}},function(n){var e=function(e){return function(t){for(var a=e,r=t;;){if(r instanceof S)return a;{if(!(r instanceof d))throw new Error("Failed pattern match at Data.List.Types line 66, column 3 - line 69, column 34: "+[a.constructor.name,r.constructor.name]);var u=n(a)(r.value0),o=r.value1;a=u,r=o}}}};return e},function(n){return function(e){return function(t){var a=function(n){return function(e){for(var t=n,a=e;;){if(a instanceof S)return t;{if(!(a instanceof d))throw new Error("Failed pattern match at Data.List.Types line 62, column 3 - line 65, column 40: "+[t.constructor.name,a.constructor.name]);var r=new d(a.value0,t),u=a.value1;t=r,a=u}}}};return r.foldl(g)(s.flip(n))(e)(a(S.value)(t))}}}),y=new f.Functor(function(n){return r.foldr(g)(function(e){return function(t){return new d(n(e),t)}})(S.value)}),D=new c.Semigroup(function(n){return function(e){return r.foldr(g)(d.create)(e)(n)}}),C=new i.Traversable(function(){return g},function(){return y},function(n){return i.traverse(C)(n)(m.id(m.categoryFn))},function(n){return function(e){return function(a){return f.map(n["__superclass_Control.Apply.Apply_0"]()["__superclass_Data.Functor.Functor_0"]())(r.foldl(g)(s.flip(d.create))(S.value))(r.foldl(g)(function(a){return function(r){return t.lift2(n["__superclass_Control.Apply.Apply_0"]())(s.flip(d.create))(a)(e(r))}})(p.pure(n)(S.value))(a))}}}),h=new l.Unfoldable(function(n){return function(e){var t=function(e){return function(t){for(var a=e,o=t;;){var i=n(a);if(i instanceof u.Nothing)return r.foldl(g)(s.flip(d.create))(S.value)(o);{if(!(i instanceof u.Just))throw new Error("Failed pattern match at Data.List.Types line 75, column 24 - line 77, column 54: "+[i.constructor.name]);var l=new d(i.value0.value0,o);a=i.value0.value1,o=l}}}};return t(e)(S.value)}}),w=new t.Apply(function(){return y},function(n){return function(e){if(n instanceof S)return S.value;if(n instanceof d)return c.append(D)(f.map(y)(n.value0)(e))(t.apply(w)(n.value1)(e));throw new Error("Failed pattern match at Data.List.Types line 84, column 3 - line 84, column 20: "+[n.constructor.name,e.constructor.name])}}),A=new v.Bind(function(){return w},function(n){return function(e){if(n instanceof S)return S.value;if(n instanceof d)return c.append(D)(e(n.value0))(v.bind(A)(n.value1)(e));throw new Error("Failed pattern match at Data.List.Types line 91, column 3 - line 91, column 19: "+[n.constructor.name,e.constructor.name])}}),b=new p.Applicative(function(){return w},function(n){return new d(n,S.value)}),_=new e.Alt(function(){return y},c.append(D)),E=new a.Plus(function(){return _},S.value);n.Nil=S,n.Cons=d,n.NonEmptyList=P,n.semigroupList=D,n.functorList=y,n.foldableList=g,n.unfoldableList=h,n.traversableList=C,n.applyList=w,n.applicativeList=b,n.bindList=A,n.altList=_,n.plusList=E}(PS["Data.List.Types"]=PS["Data.List.Types"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"],PS["Control.Alternative"],PS["Control.Lazy"],PS["Control.Monad.Rec.Class"],PS["Data.Bifunctor"],PS["Data.Foldable"]),t=PS["Data.List.Types"],a=PS["Data.Maybe"],r=(PS["Data.NonEmpty"],PS["Data.Traversable"],PS["Data.Tuple"]),u=PS["Data.Unfoldable"],o=PS["Data.Functor"],i=(PS["Data.Ring"],PS["Data.Eq"]),l=(PS["Data.Ordering"],PS["Data.Boolean"]),c=(PS["Data.Function"],PS["Control.Semigroupoid"],PS["Data.Ord"],PS["Data.Semiring"],PS["Control.Bind"],PS["Control.Applicative"],PS["Data.Unit"],PS["Control.Apply"],PS["Data.HeytingAlgebra"],PS["Data.Semigroup"],PS["Control.Category"],function(n){if(n instanceof t.Nil)return a.Nothing.value;if(n instanceof t.Cons)return new a.Just({head:n.value0,tail:n.value1});throw new Error("Failed pattern match at Data.List line 257, column 1 - line 257, column 21: "+[n.constructor.name])}),f=function(n){return u.unfoldr(n)(function(n){return o.map(a.functorMaybe)(function(n){return new r.Tuple(n.head,n.tail)})(c(n))})},s=function(n){if(n instanceof t.Nil)return a.Nothing.value;if(n instanceof t.Cons)return new a.Just(n.value1);throw new Error("Failed pattern match at Data.List line 238, column 1 - line 238, column 19: "+[n.constructor.name])},p=function(n){if(n instanceof t.Nil)return a.Nothing.value;if(n instanceof t.Cons)return new a.Just(n.value0);throw new Error("Failed pattern match at Data.List line 223, column 1 - line 223, column 19: "+[n.constructor.name])},m=function(n){return e.foldr(n)(t.Cons.create)(t.Nil.value)},v=function(n){var e=function(e){return function(r){var u=e,o=r;n:for(;;){if(o instanceof t.Cons){if(n(o.value0))return new a.Just(u);if(l.otherwise){var i=u+1|0,c=o.value1;u=i,o=c;continue n}}if(o instanceof t.Nil)return a.Nothing.value;throw new Error("Failed pattern match at Data.List line 288, column 3 - line 289, column 44: "+[u.constructor.name,o.constructor.name])}}};return e(0)},S=function(n){return function(e){return v(function(t){return i.eq(n)(t)(e)})}};n.elemIndex=S,n.findIndex=v,n.fromFoldable=m,n.head=p,n.tail=s,n.toUnfoldable=f,n.uncons=c}(PS["Data.List"]=PS["Data.List"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Foldable"],PS["Data.List"],PS["Data.List.Types"]),t=(PS["Data.Maybe"],PS["Data.NonEmpty"]),a=(PS["Data.Tuple"],PS["Data.Unfoldable"],PS["Control.Semigroupoid"],PS["Data.Functor"],PS["Data.Semiring"],PS["Data.Function"],PS["Control.Bind"],function(n){return e.NonEmptyList(t.singleton(e.plusList)(n))});n.singleton=a}(PS["Data.List.NonEmpty"]=PS["Data.List.NonEmpty"]||{}),function(n){"use strict";n.joinWith=function(n){return function(e){return e.join(n)}}}(PS["Data.String"]=PS["Data.String"]||{}),function(n){"use strict";var e=PS["Data.String"];PS.Prelude,PS["Data.Maybe"],PS["Data.Newtype"],PS["Data.String.Unsafe"],PS["Data.Eq"],PS["Data.Ord"],PS["Data.Show"],PS["Data.Semigroup"],PS["Data.Semiring"],PS["Data.Ordering"],PS["Data.Ring"],PS["Data.Function"],PS["Control.Semigroupoid"];n.joinWith=e.joinWith}(PS["Data.String"]=PS["Data.String"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Alt"],PS["Control.Comonad"],PS["Control.Extend"],PS["Data.Foldable"],PS["Data.Functor.Invariant"],PS["Data.Monoid"],PS["Data.Newtype"],PS["Data.Traversable"],PS["Data.Eq"],PS["Data.Ord"],PS["Data.Bounded"],PS["Data.HeytingAlgebra"],PS["Data.BooleanAlgebra"],PS["Data.Semigroup"],PS["Data.Semiring"],PS["Data.EuclideanRing"],PS["Data.Ring"],PS["Data.CommutativeRing"],PS["Data.Field"],PS["Data.Show"],PS["Data.Functor"]),t=PS["Control.Apply"],a=PS["Control.Applicative"],r=PS["Control.Bind"],u=PS["Control.Monad"],o=function(n){return n},i=new e.Functor(function(n){return function(e){return n(e)}}),l=new t.Apply(function(){return i},function(n){return function(e){return n(e)}}),c=new r.Bind(function(){return l},function(n){return function(e){return e(n)}}),f=new a.Applicative(function(){return l},o),s=new u.Monad(function(){return f},function(){return c});n.Identity=o,n.functorIdentity=i,n.applyIdentity=l,n.applicativeIdentity=f,n.bindIdentity=c,n.monadIdentity=s}(PS["Data.Identity"]=PS["Data.Identity"]||{}),function(n){"use strict";var e=PS["Data.Foreign"],t=(PS.Prelude,PS["Control.Monad.Except"],PS["Data.Either"],PS["Data.Function.Uncurried"],PS["Data.Int"],PS["Data.List.NonEmpty"]),a=(PS["Data.Maybe"],PS["Data.String"],PS["Data.Eq"],PS["Data.HeytingAlgebra"],PS["Data.Ord"],PS["Data.Ordering"],PS["Data.Show"],PS["Data.Semigroup"],PS["Control.Semigroupoid"],PS["Control.Monad.Error.Class"]),r=PS["Control.Monad.Except.Trans"],u=PS["Data.Identity"],o=(PS["Control.Applicative"],PS["Data.Function"],PS["Data.Boolean"],function(){function n(n,e){this.value0=n,this.value1=e}return n.create=function(e){return function(t){return new n(e,t)}},n}()),i=function(){function n(n,e){this.value0=n,this.value1=e}return n.create=function(e){return function(t){return new n(e,t)}},n}(),l=function(n){return a.throwError(r.monadErrorExceptT(u.monadIdentity))(t.singleton(n))};n.TypeMismatch=o,n.ErrorAtProperty=i,n.fail=l,n.isNull=e.isNull,n.isUndefined=e.isUndefined,n.toForeign=e.toForeign,n.typeOf=e.typeOf}(PS["Data.Foreign"]=PS["Data.Foreign"]||{}),function(n){"use strict";n.unsafeReadPropImpl=function(n,e,t,a){return null==a?n:e(a[t])},n.unsafeHasOwnProperty=function(n,e){return Object.prototype.hasOwnProperty.call(e,n)},n.unsafeHasProperty=function(n,e){return n in e}}(PS["Data.Foreign.Index"]=PS["Data.Foreign.Index"]||{}),function(n){"use strict";var e=PS["Data.Foreign.Index"],t=(PS.Prelude,PS["Data.Foreign"]),a=(PS["Data.Function.Uncurried"],PS["Data.Function"]),r=PS["Control.Applicative"],u=PS["Control.Monad.Except.Trans"],o=PS["Data.Identity"],i=(PS["Data.HeytingAlgebra"],PS["Data.Eq"],function(n,e,t,a){this.errorAt=n,this.hasOwnProperty=e,this.hasProperty=t,this.ix=a}),l=function(n){return function(a){return e.unsafeReadPropImpl(t.fail(new t.TypeMismatch("object",t.typeOf(a))),r.pure(u.applicativeExceptT(o.monadIdentity)),n,a)}},c=l,f=function(n){return n.ix},s=function(n){return function(a){return t.isNull(a)?!1:t.isUndefined(a)?!1:"object"===t.typeOf(a)||"function"===t.typeOf(a)?e.unsafeHasProperty(n,a):!1}},p=function(n){return n.hasProperty},m=function(n){return function(a){return t.isNull(a)?!1:t.isUndefined(a)?!1:"object"===t.typeOf(a)||"function"===t.typeOf(a)?e.unsafeHasOwnProperty(n,a):!1}},v=new i(t.ErrorAtProperty.create,m,s,a.flip(c)),S=function(n){return n.hasOwnProperty},d=function(n){return n.errorAt};n.Index=i,n.errorAt=d,n.hasOwnProperty=S,n.hasProperty=p,n.ix=f,n.prop=c,n.indexString=v}(PS["Data.Foreign.Index"]=PS["Data.Foreign.Index"]||{}),function(n){"use strict";var e=(PS["Data.List"],PS["Data.List.Types"]),t=function(n){return function(t){var a=function(n){return function(n){return n}};return a(n)(function(){if(t instanceof e.Cons)return t.value0;throw new Error("Failed pattern match at Data.List.Partial line 10, column 1 - line 10, column 20: "+[t.constructor.name])}())}};n.head=t}(PS["Data.List.Partial"]=PS["Data.List.Partial"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Foldable"]),t=(PS["Data.List"],PS["Data.Maybe"]),a=(PS["Data.Monoid"],PS["Data.Traversable"],PS["Data.Tuple"]),r=(PS["Data.Unfoldable"],PS["Partial.Unsafe"]),u=(PS["Data.Eq"],PS["Data.Ord"]),o=(PS["Data.Show"],PS["Data.Semigroup"]),i=(PS["Data.Functor"],PS["Control.Applicative"]),l=(PS["Control.Apply"],PS["Control.Category"],PS["Data.List.Types"]),c=(PS["Control.Semigroupoid"],PS["Data.Function"],PS["Data.Ordering"]),f=(PS["Data.Semiring"],function(){function n(){}return n.value=new n,n}()),s=function(){function n(n,e,t,a){this.value0=n,this.value1=e,this.value2=t,this.value3=a}return n.create=function(e){return function(t){return function(a){return function(r){return new n(e,t,a,r)}}}},n}(),p=function(){function n(n,e,t,a,r,u,o){this.value0=n,this.value1=e,this.value2=t,this.value3=a,this.value4=r,this.value5=u,this.value6=o}return n.create=function(e){return function(t){return function(a){return function(r){return function(u){return function(o){return function(i){return new n(e,t,a,r,u,o,i)}}}}}}},n}(),m=function(){function n(n,e,t){this.value0=n,this.value1=e,this.value2=t}return n.create=function(e){return function(t){return function(a){return new n(e,t,a)}}},n}(),v=function(){function n(n,e,t){this.value0=n,this.value1=e,this.value2=t}return n.create=function(e){return function(t){return function(a){return new n(e,t,a)}}},n}(),S=function(){function n(n,e,t,a,r,u){this.value0=n,this.value1=e,this.value2=t,this.value3=a,this.value4=r,this.value5=u}return n.create=function(e){return function(t){return function(a){return function(r){return function(u){return function(o){return new n(e,t,a,r,u,o)}}}}}},n}(),d=function(){function n(n,e,t,a,r,u){this.value0=n,this.value1=e,this.value2=t,this.value3=a,this.value4=r,this.value5=u}return n.create=function(e){return function(t){return function(a){return function(r){return function(u){return function(o){return new n(e,t,a,r,u,o)}}}}}},n}(),P=function(){function n(n,e,t,a,r,u){this.value0=n,this.value1=e,this.value2=t,this.value3=a,this.value4=r,this.value5=u}return n.create=function(e){return function(t){return function(a){return function(r){return function(u){return function(o){return new n(e,t,a,r,u,o)}}}}}},n}(),g=function(){function n(n,e,t,a){this.value0=n,this.value1=e,this.value2=t,this.value3=a}return n.create=function(e){return function(t){return function(a){return function(r){return new n(e,t,a,r)}}}},n}(),y=function(n){if(n instanceof f)return l.Nil.value;if(n instanceof s)return o.append(l.semigroupList)(y(n.value0))(new l.Cons(new a.Tuple(n.value1,n.value2),y(n.value3)));if(n instanceof p)return o.append(l.semigroupList)(y(n.value0))(o.append(l.semigroupList)(new l.Cons(new a.Tuple(n.value1,n.value2),y(n.value3)))(new l.Cons(new a.Tuple(n.value4,n.value5),y(n.value6))));throw new Error("Failed pattern match at Data.Map line 383, column 1 - line 383, column 18: "+[n.constructor.name])},D=function(n){return r.unsafePartial(function(e){return function(a){return function(r){if(r instanceof f)return t.Nothing.value;var o=u.compare(n),i=function(n){return function(n){return n}};return i(e)(function(){if(r instanceof s){var e=o(a)(r.value1);return e instanceof c.EQ?new t.Just(r.value2):e instanceof c.LT?D(n)(a)(r.value0):D(n)(a)(r.value3)}if(r instanceof p){var u=o(a)(r.value1);if(u instanceof c.EQ)return new t.Just(r.value2);var i=o(a)(r.value4);return i instanceof c.EQ?new t.Just(r.value5):u instanceof c.LT?D(n)(a)(r.value0):i instanceof c.GT?D(n)(a)(r.value6):D(n)(a)(r.value3)}throw new Error("Failed pattern match at Data.Map line 146, column 10 - line 160, column 39: "+[r.constructor.name])}())}}})},C=function(n){if(n instanceof f)return l.Nil.value;if(n instanceof s)return o.append(l.semigroupList)(C(n.value0))(o.append(l.semigroupList)(i.pure(l.applicativeList)(n.value1))(C(n.value3)));if(n instanceof p)return o.append(l.semigroupList)(C(n.value0))(o.append(l.semigroupList)(i.pure(l.applicativeList)(n.value1))(o.append(l.semigroupList)(C(n.value3))(o.append(l.semigroupList)(i.pure(l.applicativeList)(n.value4))(C(n.value6)))));throw new Error("Failed pattern match at Data.Map line 400, column 1 - line 400, column 16: "+[n.constructor.name])},h=function(n){return function(e){return function(t){var a=n,r=e,u=t;n:for(;;){if(r instanceof l.Nil)return u;if(r instanceof l.Cons){if(r.value0 instanceof m){var o=a,i=r.value1,c=new s(u,r.value0.value0,r.value0.value1,r.value0.value2);a=o,r=i,u=c;continue n}if(r.value0 instanceof v){var o=a,i=r.value1,c=new s(r.value0.value0,r.value0.value1,r.value0.value2,u);a=o,r=i,u=c;continue n}if(r.value0 instanceof S){var o=a,i=r.value1,c=new p(u,r.value0.value0,r.value0.value1,r.value0.value2,r.value0.value3,r.value0.value4,r.value0.value5);a=o,r=i,u=c;continue n}if(r.value0 instanceof d){var o=a,i=r.value1,c=new p(r.value0.value0,r.value0.value1,r.value0.value2,u,r.value0.value3,r.value0.value4,r.value0.value5);a=o,r=i,u=c;continue n}if(r.value0 instanceof P){var o=a,i=r.value1,c=new p(r.value0.value0,r.value0.value1,r.value0.value2,r.value0.value3,r.value0.value4,r.value0.value5,u);a=o,r=i,u=c;continue n}throw new Error("Failed pattern match at Data.Map line 237, column 3 - line 242, column 88: "+[r.value0.constructor.name])}throw new Error("Failed pattern match at Data.Map line 235, column 1 - line 235, column 27: "+[r.constructor.name,u.constructor.name])}}}},w=function(n){var e=function(e){return function(t){var a=e,r=t;n:for(;;){if(a instanceof l.Nil)return new s(r.value0,r.value1,r.value2,r.value3);if(a instanceof l.Cons){if(a.value0 instanceof m)return h(n)(a.value1)(new p(r.value0,r.value1,r.value2,r.value3,a.value0.value0,a.value0.value1,a.value0.value2));if(a.value0 instanceof v)return h(n)(a.value1)(new p(a.value0.value0,a.value0.value1,a.value0.value2,r.value0,r.value1,r.value2,r.value3));if(a.value0 instanceof S){var u=a.value1,o=new g(new s(r.value0,r.value1,r.value2,r.value3),a.value0.value0,a.value0.value1,new s(a.value0.value2,a.value0.value3,a.value0.value4,a.value0.value5));a=u,r=o;continue n}if(a.value0 instanceof d){var u=a.value1,o=new g(new s(a.value0.value0,a.value0.value1,a.value0.value2,r.value0),r.value1,r.value2,new s(r.value3,a.value0.value3,a.value0.value4,a.value0.value5));a=u,r=o;continue n}if(a.value0 instanceof P){var u=a.value1,o=new g(new s(a.value0.value0,a.value0.value1,a.value0.value2,a.value0.value3),a.value0.value4,a.value0.value5,new s(r.value0,r.value1,r.value2,r.value3));a=u,r=o;continue n}throw new Error("Failed pattern match at Data.Map line 273, column 5 - line 278, column 104: "+[a.value0.constructor.name,r.constructor.name])}throw new Error("Failed pattern match at Data.Map line 271, column 3 - line 271, column 54: "+[a.constructor.name,r.constructor.name])}}},t=u.compare(n),a=function(a){return function(r){return function(u){return function(o){var i=a,y=r,D=u,C=o;n:for(;;){if(C instanceof f)return e(i)(new g(f.value,y,D,f.value));if(C instanceof s){var w=t(y)(C.value1);if(w instanceof c.EQ)return h(n)(i)(new s(C.value0,y,D,C.value3));if(w instanceof c.LT){var A=new l.Cons(new m(C.value1,C.value2,C.value3),i),b=y,_=D,E=C.value0;i=A,y=b,D=_,C=E;continue n}var A=new l.Cons(new v(C.value0,C.value1,C.value2),i),b=y,_=D,E=C.value3;i=A,y=b,D=_,C=E}else{if(!(C instanceof p))throw new Error("Failed pattern match at Data.Map line 254, column 3 - line 254, column 52: "+[i.constructor.name,y.constructor.name,D.constructor.name,C.constructor.name]);var M=t(y)(C.value1);if(M instanceof c.EQ)return h(n)(i)(new p(C.value0,y,D,C.value3,C.value4,C.value5,C.value6));var F=t(y)(C.value4);if(F instanceof c.EQ)return h(n)(i)(new p(C.value0,C.value1,C.value2,C.value3,y,D,C.value6));if(M instanceof c.LT){var A=new l.Cons(new S(C.value1,C.value2,C.value3,C.value4,C.value5,C.value6),i),b=y,_=D,E=C.value0;i=A,y=b,D=_,C=E;continue n}if(M instanceof c.GT&&F instanceof c.LT){var A=new l.Cons(new d(C.value0,C.value1,C.value2,C.value4,C.value5,C.value6),i),b=y,_=D,E=C.value3;i=A,y=b,D=_,C=E;continue n}var A=new l.Cons(new P(C.value0,C.value1,C.value2,C.value3,C.value4,C.value5),i),b=y,_=D,E=C.value6;i=A,y=b,D=_,C=E}}}}}};return a(l.Nil.value)},A=function(n){var e=r.unsafePartial(function(t){return function(a){return function(r){if(a instanceof l.Nil)return r;if(a instanceof l.Cons){var u=function(n){return function(n){return n}};return u(t)(function(){if(a.value0 instanceof m&&a.value0.value2 instanceof f&&r instanceof f)return h(n)(a.value1)(new s(f.value,a.value0.value0,a.value0.value1,f.value));if(a.value0 instanceof v&&a.value0.value0 instanceof f&&r instanceof f)return h(n)(a.value1)(new s(f.value,a.value0.value1,a.value0.value2,f.value));if(a.value0 instanceof m&&a.value0.value2 instanceof s)return e(a.value1)(new p(r,a.value0.value0,a.value0.value1,a.value0.value2.value0,a.value0.value2.value1,a.value0.value2.value2,a.value0.value2.value3));if(a.value0 instanceof v&&a.value0.value0 instanceof s)return e(a.value1)(new p(a.value0.value0.value0,a.value0.value0.value1,a.value0.value0.value2,a.value0.value0.value3,a.value0.value1,a.value0.value2,r));if(a.value0 instanceof m&&a.value0.value2 instanceof p)return h(n)(a.value1)(new s(new s(r,a.value0.value0,a.value0.value1,a.value0.value2.value0),a.value0.value2.value1,a.value0.value2.value2,new s(a.value0.value2.value3,a.value0.value2.value4,a.value0.value2.value5,a.value0.value2.value6)));if(a.value0 instanceof v&&a.value0.value0 instanceof p)return h(n)(a.value1)(new s(new s(a.value0.value0.value0,a.value0.value0.value1,a.value0.value0.value2,a.value0.value0.value3),a.value0.value0.value4,a.value0.value0.value5,new s(a.value0.value0.value6,a.value0.value1,a.value0.value2,r)));if(a.value0 instanceof S&&a.value0.value2 instanceof f&&a.value0.value5 instanceof f&&r instanceof f)return h(n)(a.value1)(new p(f.value,a.value0.value0,a.value0.value1,f.value,a.value0.value3,a.value0.value4,f.value));if(a.value0 instanceof d&&a.value0.value0 instanceof f&&a.value0.value5 instanceof f&&r instanceof f)return h(n)(a.value1)(new p(f.value,a.value0.value1,a.value0.value2,f.value,a.value0.value3,a.value0.value4,f.value));if(a.value0 instanceof P&&a.value0.value0 instanceof f&&a.value0.value3 instanceof f&&r instanceof f)return h(n)(a.value1)(new p(f.value,a.value0.value1,a.value0.value2,f.value,a.value0.value4,a.value0.value5,f.value));if(a.value0 instanceof S&&a.value0.value2 instanceof s)return h(n)(a.value1)(new s(new p(r,a.value0.value0,a.value0.value1,a.value0.value2.value0,a.value0.value2.value1,a.value0.value2.value2,a.value0.value2.value3),a.value0.value3,a.value0.value4,a.value0.value5));if(a.value0 instanceof d&&a.value0.value0 instanceof s)return h(n)(a.value1)(new s(new p(a.value0.value0.value0,a.value0.value0.value1,a.value0.value0.value2,a.value0.value0.value3,a.value0.value1,a.value0.value2,r),a.value0.value3,a.value0.value4,a.value0.value5));if(a.value0 instanceof d&&a.value0.value5 instanceof s)return h(n)(a.value1)(new s(a.value0.value0,a.value0.value1,a.value0.value2,new p(r,a.value0.value3,a.value0.value4,a.value0.value5.value0,a.value0.value5.value1,a.value0.value5.value2,a.value0.value5.value3)));if(a.value0 instanceof P&&a.value0.value3 instanceof s)return h(n)(a.value1)(new s(a.value0.value0,a.value0.value1,a.value0.value2,new p(a.value0.value3.value0,a.value0.value3.value1,a.value0.value3.value2,a.value0.value3.value3,a.value0.value4,a.value0.value5,r)));if(a.value0 instanceof S&&a.value0.value2 instanceof p)return h(n)(a.value1)(new p(new s(r,a.value0.value0,a.value0.value1,a.value0.value2.value0),a.value0.value2.value1,a.value0.value2.value2,new s(a.value0.value2.value3,a.value0.value2.value4,a.value0.value2.value5,a.value0.value2.value6),a.value0.value3,a.value0.value4,a.value0.value5));if(a.value0 instanceof d&&a.value0.value0 instanceof p)return h(n)(a.value1)(new p(new s(a.value0.value0.value0,a.value0.value0.value1,a.value0.value0.value2,a.value0.value0.value3),a.value0.value0.value4,a.value0.value0.value5,new s(a.value0.value0.value6,a.value0.value1,a.value0.value2,r),a.value0.value3,a.value0.value4,a.value0.value5));if(a.value0 instanceof d&&a.value0.value5 instanceof p)return h(n)(a.value1)(new p(a.value0.value0,a.value0.value1,a.value0.value2,new s(r,a.value0.value3,a.value0.value4,a.value0.value5.value0),a.value0.value5.value1,a.value0.value5.value2,new s(a.value0.value5.value3,a.value0.value5.value4,a.value0.value5.value5,a.value0.value5.value6)));if(a.value0 instanceof P&&a.value0.value3 instanceof p)return h(n)(a.value1)(new p(a.value0.value0,a.value0.value1,a.value0.value2,new s(a.value0.value3.value0,a.value0.value3.value1,a.value0.value3.value2,a.value0.value3.value3),a.value0.value3.value4,a.value0.value3.value5,new s(a.value0.value3.value6,a.value0.value4,a.value0.value5,r)));throw new Error("Failed pattern match at Data.Map line 323, column 9 - line 340, column 136: "+[a.value0.constructor.name,r.constructor.name])}())}throw new Error("Failed pattern match at Data.Map line 320, column 5 - line 340, column 136: "+[a.constructor.name])}}}),o=r.unsafePartial(function(n){return function(t){return function(a){var r=function(n){return function(n){return n}};return r(n)(function(){if(a instanceof s&&a.value0 instanceof f&&a.value3 instanceof f)return e(t)(f.value);if(a instanceof s)return o(new l.Cons(new v(a.value0,a.value1,a.value2),t))(a.value3);if(a instanceof p&&a.value0 instanceof f&&a.value3 instanceof f&&a.value6 instanceof f)return e(new l.Cons(new v(f.value,a.value1,a.value2),t))(f.value);if(a instanceof p)return o(new l.Cons(new P(a.value0,a.value1,a.value2,a.value3,a.value4,a.value5),t))(a.value6);throw new Error("Failed pattern match at Data.Map line 352, column 5 - line 356, column 107: "+[a.constructor.name])}())}}}),i=r.unsafePartial(function(n){return function(e){var t=function(n){return function(n){return n}};return t(n)(function(){if(e instanceof s&&e.value3 instanceof f)return{key:e.value1,value:e.value2};if(e instanceof s)return i(e.value3);if(e instanceof p&&e.value6 instanceof f)return{key:e.value4,value:e.value5};if(e instanceof p)return i(e.value6);throw new Error("Failed pattern match at Data.Map line 343, column 33 - line 347, column 45: "+[e.constructor.name])}())}}),g=u.compare(n),y=r.unsafePartial(function(r){return function(r){return function(u){return function(D){if(D instanceof f)return t.Nothing.value;if(D instanceof s){var C=g(u)(D.value1);if(D.value3 instanceof f&&C instanceof c.EQ)return new t.Just(new a.Tuple(D.value2,e(r)(f.value)));if(C instanceof c.EQ){var w=i(D.value0);return new t.Just(new a.Tuple(D.value2,o(new l.Cons(new m(w.key,w.value,D.value3),r))(D.value0)))}return C instanceof c.LT?y(new l.Cons(new m(D.value1,D.value2,D.value3),r))(u)(D.value0):y(new l.Cons(new v(D.value0,D.value1,D.value2),r))(u)(D.value3)}if(D instanceof p){var A=function(){return D.value0 instanceof f&&D.value3 instanceof f&&D.value6 instanceof f?!0:!1}(),b=g(u)(D.value1),_=g(u)(D.value4);if(A&&b instanceof c.EQ)return new t.Just(new a.Tuple(D.value2,h(n)(r)(new s(f.value,D.value4,D.value5,f.value))));if(A&&_ instanceof c.EQ)return new t.Just(new a.Tuple(D.value5,h(n)(r)(new s(f.value,D.value1,D.value2,f.value))));if(b instanceof c.EQ){var w=i(D.value0);return new t.Just(new a.Tuple(D.value2,o(new l.Cons(new S(w.key,w.value,D.value3,D.value4,D.value5,D.value6),r))(D.value0)))}if(_ instanceof c.EQ){var w=i(D.value3);return new t.Just(new a.Tuple(D.value5,o(new l.Cons(new d(D.value0,D.value1,D.value2,w.key,w.value,D.value6),r))(D.value3)))}return b instanceof c.LT?y(new l.Cons(new S(D.value1,D.value2,D.value3,D.value4,D.value5,D.value6),r))(u)(D.value0):b instanceof c.GT&&_ instanceof c.LT?y(new l.Cons(new d(D.value0,D.value1,D.value2,D.value4,D.value5,D.value6),r))(u)(D.value3):y(new l.Cons(new P(D.value0,D.value1,D.value2,D.value3,D.value4,D.value5),r))(u)(D.value6); }throw new Error("Failed pattern match at Data.Map line 293, column 36 - line 316, column 82: "+[D.constructor.name])}}}});return y(l.Nil.value)},b=f.value,_=function(n){return function(e){return function(r){return t.maybe(r)(a.snd)(A(n)(e)(r))}}},E=function(n){return function(e){return function(a){return function(r){var u=e(D(n)(a)(r));if(u instanceof t.Nothing)return _(n)(a)(r);if(u instanceof t.Just)return w(n)(a)(u.value0)(r);throw new Error("Failed pattern match at Data.Map line 361, column 15 - line 363, column 25: "+[u.constructor.name])}}}},M=function(n){return function(a){return function(r){var u=function(n){return function(e){if(e instanceof t.Just)return t.Just.create(r(n)(e.value0));if(e instanceof t.Nothing)return new t.Just(n);throw new Error("Failed pattern match at Data.Map line 378, column 3 - line 378, column 38: "+[n.constructor.name,e.constructor.name])}};return e.foldl(a)(function(e){return function(t){return E(n)(u(t.value1))(t.value0)(e)}})(b)}}};n.alter=E,n["delete"]=_,n.empty=b,n.fromFoldableWith=M,n.insert=w,n.keys=C,n.lookup=D,n.pop=A,n.toList=y}(PS["Data.Map"]=PS["Data.Map"]||{}),function(n){"use strict";n["null"]=null,n.notNull=function(n){return n}}(PS["Data.Nullable"]=PS["Data.Nullable"]||{}),function(n){"use strict";var e=PS["Data.Nullable"],t=(PS.Prelude,PS["Data.Function"],PS["Data.Function.Uncurried"],PS["Data.Maybe"]),a=(PS["Data.Show"],PS["Control.Semigroupoid"],PS["Data.Eq"],PS["Data.Ord"],t.maybe(e["null"])(e.notNull));n.toNullable=a}(PS["Data.Nullable"]=PS["Data.Nullable"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Control.Monad.Eff"],PS["Control.Monad.Rec.Class"],PS["Control.Monad.ST"],PS["Data.Array"],PS["Data.Array.ST"],PS["Data.Foldable"]),t=PS["Data.List"],a=PS["Data.Map"],r=(PS["Data.Monoid"],PS["Data.Unfoldable"],PS["Partial.Unsafe"],PS["Data.Eq"],PS["Data.Show"],PS["Data.Semigroup"],PS["Data.Ord"],PS["Control.Semigroupoid"],PS["Data.Unit"]),u=PS["Data.List.Types"],o=(PS["Data.HeytingAlgebra"],PS["Data.Ordering"],PS["Control.Bind"],PS["Data.Function"]),i=(PS["Control.Applicative"],PS["Data.Semiring"],function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}()),l=function(n){return a.keys(n.value0)},c=function(n){return function(e){return t.toUnfoldable(n)(l(e))}},f=function(n){return function(e){return function(t){return new i(a.insert(n)(e)(r.unit)(t.value0))}}},s=new i(a.empty),p=function(n){return function(e){return function(t){return new i(a["delete"](n)(e)(t.value0))}}},m=function(n){return function(t){return function(a){return e.foldl(u.foldableList)(o.flip(p(n)))(t)(l(a))}}};n.difference=m,n.empty=s,n.insert=f,n.toUnfoldable=c}(PS["Data.Set"]=PS["Data.Set"]||{}),function(n){"use strict";function e(n){return function(e){var t=[];for(var a in e)e.hasOwnProperty(a)&&t.push(n(a)(e[a]));return t}}n._copyEff=function(n){return function(){var e={};for(var t in n)n.hasOwnProperty(t)&&(e[t]=n[t]);return e}},n.runST=function(n){return n},n._lookup=function(n,e,t,a){return t in a?e(a[t]):n},n._collect=e}(PS["Data.StrMap"]=PS["Data.StrMap"]||{}),function(n){"use strict";n["new"]=function(){return{}},n.poke=function(n){return function(e){return function(t){return function(){return n[e]=t,n}}}},n["delete"]=function(n){return function(e){return function(){return delete n[e],n}}}}(PS["Data.StrMap.ST"]=PS["Data.StrMap.ST"]||{}),function(n){"use strict";var e=PS["Data.StrMap.ST"];PS["Control.Monad.Eff"],PS["Control.Monad.ST"],PS["Data.Maybe"];n["delete"]=e["delete"],n["new"]=e["new"],n.poke=e.poke}(PS["Data.StrMap.ST"]=PS["Data.StrMap.ST"]||{}),function(n){"use strict";var e=PS["Data.StrMap"],t=(PS.Prelude,PS["Control.Monad.Eff"]),a=(PS["Control.Monad.ST"],PS["Data.Foldable"]),r=PS["Data.Function.Uncurried"],u=PS["Data.List"],o=PS["Data.Maybe"],i=(PS["Data.Monoid"],PS["Data.StrMap.ST"]),l=(PS["Data.Traversable"],PS["Data.Tuple"]),c=(PS["Data.Unfoldable"],PS["Data.Functor"],PS["Data.Function"],PS["Control.Apply"],PS["Control.Applicative"],PS["Control.Category"],PS["Data.Eq"],PS["Data.HeytingAlgebra"],PS["Data.Show"],PS["Data.Semigroup"],PS["Control.Semigroupoid"],PS["Data.List.Types"],PS["Control.Bind"],function(n){return u.fromFoldable(a.foldableArray)(e._collect(function(n){return function(n){return n}})(n))}),f=function(n){return u.fromFoldable(a.foldableArray)(e._collect(l.Tuple.create)(n))},s=e._copyEff,p=function(n){return t.runPure(e.runST(n))},m=function(n){return function(e){return p(function(){var t=s(e)();return n(t)(),t})}},v=r.runFn4(e._lookup)(o.Nothing.value)(o.Just.create),S=function(n){return function(e){return m(function(t){return i.poke(t)(n)(e)})}},d=function(n){return function(e){return p(function(){var r=i["new"]();return a.for_(t.applicativeEff)(n)(e)(function(n){return i.poke(r)(n.value0)(n.value1)})(),r})}},P=function(n){return m(function(e){return i["delete"](e)(n)})},g=function(n){return function(e){return function(t){var a=n(v(e)(t));if(a instanceof o.Nothing)return P(e)(t);if(a instanceof o.Just)return S(e)(a.value0)(t);throw new Error("Failed pattern match at Data.StrMap line 186, column 15 - line 188, column 25: "+[a.constructor.name])}}};n.alter=g,n.fromFoldable=d,n.insert=S,n.lookup=v,n.pureST=p,n.thawST=s,n.toList=f,n.values=c}(PS["Data.StrMap"]=PS["Data.StrMap"]||{}),function(n){"use strict";var e="undefined"==typeof module?void 0:module.require,t=void 0===e?void 0:e("util");n.traceAny=function(n){return function(e){return void 0!==t?console.log(t.inspect(n,{depth:null,colors:!0})):console.log(n),e({})}}}(PS["Debug.Trace"]=PS["Debug.Trace"]||{}),function(n){"use strict";var e=PS["Debug.Trace"],t=(PS.Prelude,PS["Data.Show"],PS["Control.Applicative"],PS["Control.Semigroupoid"],PS["Data.Unit"],e.traceAny);n.trace=t}(PS["Debug.Trace"]=PS["Debug.Trace"]||{}),function(n){"use strict";n.peekSTArrayUnsafe=function(n){return function(e){return function(){return n[e]}}},n.pokeSTArrayUnsafe=function(n){return function(e){return function(t){return function(){return n[e]=t,{}}}}},n.jsonStringify=function(n){return JSON.stringify(n)},n.consoleMessage=function(n){return function(e){return function(t){return 0===n?console.log(e):1===n?console.warn(e):(console.warn("Unknown level: "+n),console.warn(e)),t({})}}},n.throwWith=function(n){throw n},n.unsafeToFixed=function(n){return function(e){return function(){return e.toFixed(n)}}}}(PS["KanColle.Util"]=PS["KanColle.Util"]||{}),function(n){"use strict";var e=PS["KanColle.Util"],t=(PS.Prelude,PS["Data.Monoid"]),a=PS["Data.Maybe"],r=PS["Data.Int"],u=PS["Control.Monad.Eff"],o=PS["Control.Monad.Eff.Exception"],i=(PS["Control.Monad.ST"],PS["Data.Array"]),l=PS["Data.Array.Partial"],c=(PS["Data.Array.ST"],PS["Data.List"]),f=PS["Data.Foldable"],s=PS["Control.Plus"],p=PS["Partial.Unsafe"],m=(PS["Data.Function.Uncurried"],PS["Control.Semigroupoid"],PS["Control.Applicative"]),v=PS["Data.Function"],S=PS["Data.Functor"],d=PS["Data.Semigroup"],P=(PS["Data.EuclideanRing"],PS["Data.Eq"],PS["Data.Boolean"]),g=(PS["Data.Ring"],PS["Data.Semiring"],PS["Data.List.Types"]),y=PS["Control.Bind"],D=PS["Data.Unfoldable"],C=p.unsafePartial(function(n){return l.tail(n)}),h=p.unsafePartial(function(n){return i.unsafeIndex(n)}),w=p.unsafePartial(function(n){return l.head(n)}),A=e.consoleMessage(1),b=e.consoleMessage(0),_=function(n){return e.throwWith("TODO")},E=function(n){return function(t){return u.runPure(o.catchException(function(n){return m.pure(u.applicativeEff)(v["const"](a.Nothing.value)(n))})(S.map(u.functorEff)(a.Just.create)(e.unsafeToFixed(n)(t))))}},M=function(n){return function(e){return function(t){var a=function(e){return function(t){return function(a){for(var u=e,o=t,i=a;;)if(r.even(o)){var l=d.append(n)(u)(u),c=o/2|0,f=i;u=l,o=c,i=f}else{if(1===o)return d.append(n)(u)(i);if(!P.otherwise)throw new Error("Failed pattern match at KanColle.Util line 73, column 1 - line 82, column 54: "+[u.constructor.name,o.constructor.name,i.constructor.name]);var l=d.append(n)(u)(u),c=(o-1)/2|0,f=d.append(n)(u)(i);u=l,o=c,i=f}}}},u=function(e){return function(t){for(var u=e,o=t;;){if(!r.even(o)){if(1===o)return u;if(P.otherwise)return a(d.append(n)(u)(u))((o-1)/2|0)(u);throw new Error("Failed pattern match at KanColle.Util line 73, column 1 - line 82, column 54: "+[u.constructor.name,o.constructor.name])}var i=d.append(n)(u)(u),l=o/2|0;u=i,o=l}}};return u(t)(e+1|0)}}},F=function(n){return function(e){return function(a){return 0===e?t.mempty(n):M(n["__superclass_Data.Semigroup.Semigroup_0"]())(e-1)(a)}}},k=function(n){if(n instanceof g.Nil)return new g.Cons(g.Nil.value,g.Nil.value);if(n instanceof g.Cons)return new g.Cons(n,k(n.value1));throw new Error("Failed pattern match at KanColle.Util line 92, column 12 - line 94, column 40: "+[n.constructor.name])},K=function(n){return{left:t.mempty(n),right:t.mempty(n)}},I=function(n){return function(e){return{left:t.mempty(n),right:e}}},T=function(n){return function(e){return{left:e,right:t.mempty(n)}}},B=function(n){return function(e){return{left:n(e.left),right:n(e.right)}}},N=function(n){return function(e){return function(t){return{left:d.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.left)(t.left),right:d.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.right)(t.right)}}}},x=function(n){return function(t){var a=function(){if(n)return p.unsafePartial(function(n){return l.tail(n)})(t);if(!n)return t;throw new Error("Failed pattern match at KanColle.Util line 142, column 10 - line 144, column 19: "+[n.constructor.name])}(),r=12===i.length(a);if(r)return{left:i.slice(0)(6)(a),right:i.slice(6)(12)(a)};if(!r)return e.throwWith("fleetSplit: array length need to be 12 (or 13 on raw)");throw new Error("Failed pattern match at KanColle.Util line 137, column 25 - line 141, column 3: "+[r.constructor.name])}},V=function(n){return function(e){var t=c.fromFoldable(n)(e),a=function(n){return function(e){return 0===e?new g.Cons(g.Nil.value,g.Nil.value):y.bind(g.bindList)(k(n))(function(n){if(n instanceof g.Nil)return s.empty(g.plusList);if(n instanceof g.Cons)return y.bind(g.bindList)(a(n.value1)(e-1))(function(e){return m.pure(g.applicativeList)(new g.Cons(n.value0,e))});throw new Error("Failed pattern match at KanColle.Util line 105, column 7 - line 109, column 30: "+[n.constructor.name])})}};return function(n){return c.toUnfoldable(D.unfoldableArray)(a(t)(n))}}},L=function(n,e){return S.map(S.functorArray)(c.toUnfoldable(D.unfoldableArray))(V(f.foldableArray)(n)(e))};n.chooseN=V,n.chooseN_FFI=L,n.fleetSplit=x,n.lrAppend=N,n.lrMap=B,n.lrOnlyLeft=T,n.lrOnlyRight=I,n.memptyLR=K,n.times=F,n.toFixed=E,n.todo=_,n.traceLog=b,n.traceWarn=A,n.unsafeArrHead=w,n.unsafeArrIndex=h,n.unsafeArrTail=C,n.jsonStringify=e.jsonStringify,n.peekSTArrayUnsafe=e.peekSTArrayUnsafe,n.pokeSTArrayUnsafe=e.pokeSTArrayUnsafe,n.throwWith=e.throwWith}(PS["KanColle.Util"]=PS["KanColle.Util"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=(PS["KanColle.Util"],PS["Data.Eq"]),a=PS["Data.Show"],r=(PS["Data.Ord"],PS["Data.HeytingAlgebra"],function(){function n(){}return n.value=new n,n}()),u=function(){function n(){}return n.value=new n,n}(),o=function(n){return{main:n.allyMain,enemyMain:n.enemyMain,enemyEscort:n.enemyEscort}},i=function(n){return{main:n.allyMain,escort:n.allyEscort,enemy:n.enemyMain}},l=new a.Show(function(n){if(n instanceof r)return"RepairTeam";if(n instanceof u)return"RepairGoddess";throw new Error("Failed pattern match at KanColle.DamageAnalysis.Types line 39, column 12 - line 43, column 1: "+[n.constructor.name])}),c=function(n){return function(e){return function(t){return{fullHp:e,hp:n,sunk:0>=n,dameCon:t}}}},f=function(n){return function(e){return{main:n(e.main),enemy:n(e.enemy)}}},s=function(n){return function(e){return{main:n(e.main),escort:n(e.escort),enemy:n(e.enemy)}}},p=function(n){return{main:n.left,enemy:n.right}},m=function(n){return function(t){return{hp:t.hp,sunk:t.hp<=0,dameConConsumed:e.isJust(n.dameCon)&&e.isNothing(t.dameCon)}}},v=new t.Eq(function(n){return function(e){return n instanceof r&&e instanceof r?!0:n instanceof u&&e instanceof u?!0:!1}}),S=function(n){return{main:n,enemy:n}},d=function(n){return{main:n,escort:n,enemy:n}},P=function(n){return function(e){return{main:n.main(e.main),enemy:n.enemy(e.enemy)}}},g=function(n){return function(e){return{main:n.main(e.main),escort:n.escort(e.escort),enemy:n.enemy(e.enemy)}}};n.RepairTeam=r,n.RepairGoddess=u,n.appCombinedBattle=g,n.appNormalBattle=P,n.dupAsCombinedBattle=d,n.dupAsNormalBattle=S,n.getShipResult=m,n.lrToNormal=p,n.mapCombinedBattle=s,n.mapNormalBattle=f,n.mkShip=c,n.toCombinedBattle=i,n.toCombinedBattleAC=o,n.eqDameCon=v,n.showDameCon=l}(PS["KanColle.DamageAnalysis.Types"]=PS["KanColle.DamageAnalysis.Types"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=PS["Data.Monoid"],a=PS["Data.Int"],r=PS["KanColle.DamageAnalysis.Types"],u=PS["Data.Semigroup"],o=PS["Control.Category"],i=(PS["Control.Semigroupoid"],PS["Data.Semiring"],PS["Data.Ring"],PS["Data.Ord"],function(n){return function(e){return function(t){return e(n(t))}}}),l=new u.Semigroup(i),c=new t.Monoid(function(){return l},o.id(o.categoryFn)),f=function(n){return function(t){var u=function(){var n={};for(var a in t)({}).hasOwnProperty.call(t,a)&&(n[a]=t[a]);return n.sunk=!1,n.dameCon=e.Nothing.value,n}();if(n instanceof r.RepairTeam){var o={};for(var i in u)({}).hasOwnProperty.call(u,i)&&(o[i]=u[i]);return o.hp=a.floor(.2*a.toNumber(t.fullHp)),o}if(n instanceof r.RepairGoddess){var l={};for(var c in u)({}).hasOwnProperty.call(u,c)&&(l[c]=u[c]);return l.hp=t.fullHp,l}throw new Error("Failed pattern match at KanColle.DamageAnalysis.Damage line 40, column 21 - line 42, column 40: "+[n.constructor.name])}},s=function(n){if(n.sunk)return e.maybe(n)(function(e){return f(e)(n)})(n.dameCon);if(!n.sunk)return n;throw new Error("Failed pattern match at KanColle.DamageAnalysis.Damage line 48, column 16 - line 51, column 11: "+[n.sunk.constructor.name])},p=function(n){return function(e){var t=e.hp-n,a={};for(var r in e)({}).hasOwnProperty.call(e,r)&&(a[r]=e[r]);return a.hp=t,a.sunk=0>=t,a}},m=function(n){return 0===n?o.id(o.categoryFn):function(e){return s(p(n)(e))}},v=function(n){return n},S=function(n){var t={hp:1e4,fullHp:1e4,sunk:!1,dameCon:e.Nothing.value},a=v(n)(t);return t.hp-a.hp},d=function(n){return function(e){return i(n)(m(e))}};n.addDamage=d,n.applyDamage=v,n.damageToInt=S,n.mergeDamage=i,n.mkDamage=m,n.semigroupDamage=l,n.monoidDamage=c}(PS["KanColle.DamageAnalysis.Damage"]=PS["KanColle.DamageAnalysis.Damage"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=(PS["Control.MonadPlus"],PS["Data.Foreign"]),a=PS["Data.Foreign.Index"],r=PS["KanColle.Util"],u=(PS["Control.Semigroupoid"],PS["Control.Bind"]),o=PS["Data.Functor"],i=PS["Control.MonadZero"],l=(PS["Data.Eq"],function(n){return n}),c=function(n){return function(e){return a.hasOwnProperty(a.indexString)(n)(t.toForeign(e))}},f=function(n){var t=c("api_hourai_flag")(n);if(t)return new e.Just(n.api_hourai_flag);if(!t)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle.Internal line 115, column 4 - line 117, column 18: "+[t.constructor.name])},s=function(n){return r.unsafeArrTail(n)},p=function(n){return function(t){return u.bind(e.bindMaybe)(o.map(e.functorMaybe)(function(e){return r.unsafeArrIndex(e)(n)})(f(t)))(function(n){return i.guard(e.monadZeroMaybe)(1===n)})}};n.Battle=l,n.checkHouraiFlag=p,n.fromKArray=s,n.getHouraiFlags=f,n.hasField=c}(PS["KanColle.KCAPI.Battle.Internal"]=PS["KanColle.KCAPI.Battle.Internal"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=(PS["Control.MonadPlus"],PS["KanColle.KCAPI.Battle.Internal"]),a=PS["KanColle.Util"],r=(PS["Data.Eq"],PS["Control.Bind"]),u=(PS["Data.Function"],PS["Control.MonadZero"]),o=(PS["Data.HeytingAlgebra"],PS["Control.Applicative"]),i=PS["Data.Functor"],l=t.hasField("api_air_base_attack"),c=function(n){return t.hasField("api_stage_flag2")(n)?1===a.unsafeArrIndex(n.api_stage_flag2)(2):!1},f=function(n){return t.hasField("api_stage_flag")(n)?1===a.unsafeArrIndex(n.api_stage_flag)(2):!1},s=function(n){return t.hasField("api_hougeki")(n)},p=function(n){var a=t.hasField("api_support_flag")(n);if(a)return new e.Just(n.api_support_flag);if(!a)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 100, column 32 - line 102, column 15: "+[a.constructor.name])},m=function(n){return r.bind(e.bindMaybe)(p(n))(function(t){return r.bind(e.bindMaybe)(u.guard(e.monadZeroMaybe)(2===t||3===t))(function(){return o.pure(e.applicativeMaybe)(n.api_support_info.api_support_hourai)})})},v=function(n){return r.bind(e.bindMaybe)(p(n))(function(t){return r.bind(e.bindMaybe)(u.guard(e.monadZeroMaybe)(1===t))(function(){return o.pure(e.applicativeMaybe)(n.api_support_info.api_support_airatack)})})},S=function(n){return r.bind(e.bindMaybe)(t.checkHouraiFlag(3)(n))(function(){return o.pure(e.applicativeMaybe)(n.api_raigeki)})},d=function(n){var a=t.hasField("api_opening_taisen_flag")(n)&&1===n.api_opening_taisen_flag;if(a)return new e.Just(n.api_opening_taisen);if(!a)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 130, column 5 - line 133, column 19: "+[a.constructor.name])},P=function(n){var a=t.hasField("api_opening_flag")(n)&&1===n.api_opening_flag;if(a)return new e.Just(n.api_opening_atack);if(!a)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 123, column 5 - line 126, column 19: "+[a.constructor.name])},g=function(n){var t=l(n);if(t)return new e.Just(n.api_air_base_attack);if(!t)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 164, column 40 - line 166, column 17: "+[t.constructor.name])},y=function(n){var a=t.hasField("api_fdam")(n);if(a)return new e.Just(n.api_fdam);if(!a)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 185, column 26 - line 187, column 17: "+[a.constructor.name])},D=function(n){var a=t.hasField("api_edam")(n);if(a)return new e.Just(n.api_edam);if(!a)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 190, column 26 - line 192, column 17: "+[a.constructor.name])},C=function(n){var t=1===a.unsafeArrIndex(n.api_stage_flag)(2);if(t)return new e.Just(n.api_stage3);if(!t)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 169, column 21 - line 171, column 17: "+[t.constructor.name])},h=function(n){var t=c(n);if(t)return new e.Just(n.api_kouku2);if(!t)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 117, column 27 - line 119, column 15: "+[t.constructor.name])},w=function(n){var t=f(n);if(t)return new e.Just(n.api_kouku);if(!t)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 95, column 26 - line 97, column 15: "+[t.constructor.name])},A=function(n){return r.bind(e.bindMaybe)(u.guard(e.monadZeroMaybe)(t.hasField("api_injection_kouku")(n)))(function(){return new e.Just(n.api_injection_kouku)})},b=function(n){return r.bind(e.bindMaybe)(t.checkHouraiFlag(2)(n))(function(){return o.pure(e.applicativeMaybe)(n.api_hougeki3)})},_=function(n){return r.bind(e.bindMaybe)(t.checkHouraiFlag(1)(n))(function(){return o.pure(e.applicativeMaybe)(n.api_hougeki2)})},E=function(n){return r.bind(e.bindMaybe)(t.checkHouraiFlag(0)(n))(function(){return o.pure(e.applicativeMaybe)(n.api_hougeki1)})},M=function(n){var t=s(n);if(t)return new e.Just(n.api_hougeki);if(!t)return e.Nothing.value;throw new Error("Failed pattern match at KanColle.KCAPI.Battle line 156, column 28 - line 158, column 15: "+[t.constructor.name])},F=function(n){return a.unsafeArrIndex(n.api_active_deck)(1)},k=function(n){return r.bind(e.bindMaybe)(u.guard(e.monadZeroMaybe)(t.hasField("api_air_base_injection")(n)))(function(){return new e.Just(n.api_air_base_injection)})},K=function(n){return-1===n?e.Nothing.value:new e.Just(n)},I=function(n){return i.map(i.functorArray)(K)(t.fromKArray(n.api_nowhps))},T=function(n){return i.map(i.functorArray)(K)(t.fromKArray(n.api_nowhps_combined))},B=function(n){return i.map(i.functorArray)(K)(t.fromKArray(n.api_maxhps))},N=function(n){return i.map(i.functorArray)(K)(t.fromKArray(n.api_maxhps_combined))};n.getAirBaseInjection=k,n.getEnemyActiveDeck=F,n.getHougeki=M,n.getHougeki1=E,n.getHougeki2=_,n.getHougeki3=b,n.getInitHps=I,n.getInitHpsCombined=T,n.getInjectionKouku=A,n.getKouku=w,n.getKouku2=h,n.getKoukuStage3=C,n.getKoukuStage3EDam=D,n.getKoukuStage3FDam=y,n.getLandBasedAirStrikes=g,n.getMaxHps=B,n.getMaxHpsCombined=N,n.getOpeningAttack=P,n.getOpeningTaisen=d,n.getRaigeki=S,n.getSupportAirInfo=v,n.getSupportHouraiInfo=m}(PS["KanColle.KCAPI.Battle"]=PS["KanColle.KCAPI.Battle"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Monoid"]),t=PS["Data.Int"],a=PS["Data.Array"],r=PS["Data.Array.ST"],u=PS["Data.Unfoldable"],o=PS["Control.Monad.Eff"],i=(PS["Control.Monad.ST"],PS["KanColle.Util"]),l=PS["KanColle.DamageAnalysis.Types"],c=PS["KanColle.DamageAnalysis.Damage"],f=PS["Data.Tuple"],s=PS["Data.Traversable"],p=PS["KanColle.KCAPI.Battle"],m=PS["Data.Maybe"],v=(PS["Data.String"],PS["Data.Semigroup"]),S=(PS["Control.Bind"],PS["Control.Applicative"],PS["Data.Unit"]),d=(PS["Data.Function"],PS["Data.Ord"],PS["Data.Eq"],PS["Data.Ring"],PS["Data.Boolean"]),P=PS["Data.Show"],g=PS["Data.Functor"],y=(PS["Control.Semigroupoid"],PS["KanColle.KCAPI.Battle.Internal"]),D=PS["Data.HeytingAlgebra"],C=PS["Data.Foldable"],h=PS["Data.Semiring"],w=function(){function n(){}return n.value=new n,n}(),A=function(){function n(){}return n.value=new n,n}(),b=function(){function n(){}return n.value=new n,n}(),_=function(){function n(){}return n.value=new n,n}(),E=function(n){return n},M=function(n){return{allyMain:n.left.left,allyEscort:n.left.right,enemyMain:n.right.left,enemyEscort:n.right.right}},F=function(n){return{main:n.left.left,enemyMain:n.right.left,enemyEscort:n.right.right}},k=function(n){return function(t){return function(a){var l=function(n){return function(e){return function(t){return function(){var a=i.peekSTArrayUnsafe(n)(e)();return i.pokeSTArrayUnsafe(n)(e)(v.append(c.semigroupDamage)(a)(t))(),S.unit}}}},p=function(){var i=r.thaw(u.replicate(u.unfoldableArray)(t)(e.mempty(c.monoidDamage)))();return s.traverse(n)(o.applicativeEff)(f.uncurry(l(i)))(a)(),i};return o.runPure(r.runSTArray(p))}}},K=new v.Semigroup(function(n){return function(e){return a.zipWith(v.append(c.semigroupDamage))(n)(e)}}),I=function(n){if(n>=0)return t.floor(n);if(-1===n)return 0;if(d.otherwise){var e="invalid damage number: "+P.show(P.showNumber)(n);return i.traceWarn(e)(function(n){return 0})}throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 64, column 1 - line 69, column 35: "+[n.constructor.name])},T=new e.Monoid(function(){return K},u.replicate(u.unfoldableArray)(6)(e.mempty(c.monoidDamage))),B=function(n){return function(t){if(n instanceof w)return{allyMain:t.left,allyEscort:e.mempty(T),enemyMain:t.right,enemyEscort:e.mempty(T)};if(n instanceof A)return{allyMain:e.mempty(T),allyEscort:t.left,enemyMain:t.right,enemyEscort:e.mempty(T)};if(n instanceof b)return{allyMain:e.mempty(T),allyEscort:e.mempty(T),enemyMain:t.right,enemyEscort:e.mempty(T)};if(n instanceof _)return{allyMain:e.mempty(T),allyEscort:e.mempty(T),enemyMain:t.right,enemyEscort:e.mempty(T)};throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 330, column 20 - line 342, column 53: "+[n.constructor.name])}},N=function(n){return function(e){return l.toCombinedBattle(B(n)(e))}},x=function(n){var e=6===a.length(n);if(e)return n;if(!e)return i.throwWith("mkDV: array size should be 6");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 81, column 11 - line 84, column 3: "+[e.constructor.name])},V=function(n){return n},L=function(n){return g.map(g.functorArray)(function(n){return c.mkDamage(I(n))})(y.fromKArray(n))},R=function(n){var t=p.getKoukuStage3FDam(n),a=p.getKoukuStage3EDam(n);return{left:m.fromMaybe(e.mempty(T))(g.map(m.functorMaybe)(function(n){return x(L(n))})(t)),right:m.fromMaybe(e.mempty(T))(g.map(m.functorMaybe)(function(n){return x(L(n))})(a))}},H=function(n){var e=L(n.api_fdam),t=L(n.api_edam),a=i.fleetSplit(!1)(t),r=i.fleetSplit(!1)(e);return i.lrMap(i.lrMap(x))({left:r,right:a})},O=function(n){var e=i.fleetSplit(!1)(L(n.api_damage));return{left:i.memptyLR(T),right:i.lrMap(x)(e)}},q=function(n){return E(L(n.api_damage))},U=function(n){return E(L(n.api_stage3.api_edam))},J=H,j=R,W=function(n){var t=p.getKoukuStage3(n);if(t instanceof m.Just)return L(t.value0.api_edam);if(t instanceof m.Nothing)return e.mempty(T);throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 170, column 33 - line 172, column 22: "+[t.constructor.name])},z=function(n){return L(n.api_stage3_combined.api_fdam)},G=function(n){return R(n.api_stage3)},Q=function(n){return R(n.api_stage3_combined)},Z=function(n){var e=G(n),t=Q(n);return{left:{left:e.left,right:t.left},right:{left:e.right,right:t.right}}},X=Z,$=function(n){return R(n.api_stage3)},Y=function(n){var e=function(){var e=function(n){var e=a.uncons(n);if(e instanceof m.Just){var t=C.all(C.foldableArray)(D.heytingAlgebraBoolean)(function(n){return n===e.value0.head})(e.value0.tail)||C.all(C.foldableArray)(D.heytingAlgebraBoolean)(function(n){return-1===n})(e.value0.tail);if(t)return e.value0.head-1;if(!t)return i.throwWith("invalid: elements are different in api_df_list");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 272, column 13 - line 275, column 11: "+[t.constructor.name])}if(e instanceof m.Nothing)return i.throwWith("invalid: empty api_df_list element");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 270, column 20 - line 277, column 5: "+[e.constructor.name])};return g.map(g.functorArray)(e)(y.fromKArray(n.api_df_list))}(),t=function(){var e=function(n){var e=C.sum(C.foldableArray)(h.semiringInt)(g.map(g.functorArray)(I)(n));return c.mkDamage(e)};return g.map(g.functorArray)(e)(y.fromKArray(n.api_damage))}(),r=y.fromKArray(n.api_df_list),u=y.fromKArray(n.api_damage),o=y.fromKArray(n.api_at_eflag),l=function(){var n=function(n){return function(e){return 0===e?n+12|0:1===e?n:i.throwWith("invalid api_at_eflag element")}};return a.zipWith(n)(e)(o)}(),p=a.length(r)===a.length(o)&&a.length(r)===a.length(u);if(p){var v=k(s.traversableArray)(24)(a.zipWith(f.Tuple.create)(l)(t));return{left:{left:a.slice(0)(6)(v),right:a.slice(6)(12)(v)},right:{left:a.slice(12)(18)(v),right:a.slice(18)(24)(v)}}}if(!p)return i.throwWith("invalid: api_df_list / api_damage / api_at_eflag length mismatch");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 241, column 5 - line 251, column 3: "+[p.constructor.name])},nn=function(n){var e=function(){var e=function(n){var e=a.uncons(n);if(e instanceof m.Just){var t=C.all(C.foldableArray)(D.heytingAlgebraBoolean)(function(n){return n===e.value0.head})(e.value0.tail)||C.all(C.foldableArray)(D.heytingAlgebraBoolean)(function(n){return-1===n})(e.value0.tail);if(t)return e.value0.head-1;if(!t)return i.throwWith("invalid: elements are different in api_df_list");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 203, column 13 - line 206, column 11: "+[t.constructor.name])}if(e instanceof m.Nothing)return i.throwWith("invalid: empty api_df_list element");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 201, column 20 - line 208, column 5: "+[e.constructor.name])};return g.map(g.functorArray)(e)(y.fromKArray(n.api_df_list))}(),t=function(){var e=function(n){var e=C.sum(C.foldableArray)(h.semiringInt)(g.map(g.functorArray)(I)(n));return c.mkDamage(e)};return g.map(g.functorArray)(e)(y.fromKArray(n.api_damage))}(),r=a.length(e)===a.length(t);if(r){var u=k(s.traversableArray)(12)(a.zipWith(f.Tuple.create)(e)(t));return i.lrMap(E)(i.fleetSplit(!1)(u))}if(!r)return i.throwWith("invalid: api_df_list and api_damage length mismatch");throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageVector line 184, column 5 - line 188, column 3: "+[r.constructor.name])},en=function(n){return function(e){var t=function(n){return function(e){return g.map(m.functorMaybe)(c.applyDamage(n))(e)}};return a.zipWith(t)(V(n))(e)}},tn=function(n){return function(e){return l.appNormalBattle(l.appNormalBattle(l.dupAsNormalBattle(en))(n))(e)}},an=function(n){return function(e){return l.appCombinedBattle(l.appCombinedBattle(l.dupAsCombinedBattle(en))(n))(e)}};n.FRMain=w,n.FREscort=A,n.FRSupport=b,n.FRLandBased=_,n.applyCombinedDamageVector=an,n.applyDamageVector=en,n.applyNormalDamageVector=tn,n.calcHougekiDamage=nn,n.calcHougekiDamageAC=Y,n.calcKoukuDamage=$,n.calcKoukuDamageAC=Z,n.calcKoukuDamageCombined=z,n.calcLandBasedKoukuDamage=W,n.calcRaigekiDamage=j,n.calcRaigekiDamageAC=J,n.calcSupportAirAttackDamage=U,n.calcSupportAirAttackDamageAC=X,n.calcSupportHouraiDamage=q,n.calcSupportHouraiDamageAC=O,n.getDV=V,n.mkDV=x,n.toCombined=N,n.toCombinedAC=F,n.toCombinedBC=M,n.toGCombined=B,n.semigroupDamageVector=K,n.monoidDamageVector=T}(PS["KanColle.DamageAnalysis.DamageVector"]=PS["KanColle.DamageAnalysis.DamageVector"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=PS["Data.Monoid"],a=PS["Data.Foldable"],r=PS["KanColle.KCAPI.Battle"],u=PS["KanColle.Util"],o=PS["KanColle.DamageAnalysis.DamageVector"],i=(PS["KanColle.DamageAnalysis.Types"],PS["Data.Functor"]),l=(PS["Control.Semigroupoid"],PS["Data.Semigroup"]),c={left:u.memptyLR(o.monoidDamageVector),right:u.memptyLR(o.monoidDamageVector)},f=function(n){return{main:t.mempty(n),enemyMain:t.mempty(n),enemyEscort:t.mempty(n)}},s=function(n){return{main:t.mempty(n),escort:t.mempty(n),enemy:t.mempty(n)}},p=function(n){return function(e){var t=function(n){return function(e){return{left:u.lrAppend(o.monoidDamageVector)(n.left)(e.left),right:u.lrAppend(o.monoidDamageVector)(n.right)(e.right)}}};return a.foldl(a.foldableArray)(t)(c)(i.map(i.functorArray)(function(n){return n(e)})(n))}},m=function(n){return function(e){return a.foldl(a.foldableArray)(u.lrAppend(o.monoidDamageVector))(u.memptyLR(o.monoidDamageVector))(i.map(i.functorArray)(function(n){return n(e)})(n))}},v=function(n){return function(t){return function(a){return function(r){return e.maybe(t)(a)(n(r))}}}},S=v(r.getInjectionKouku)(u.memptyLR(o.monoidDamageVector))(o.calcKoukuDamage),d=v(r.getInjectionKouku)(c)(o.calcKoukuDamageAC),P=v(r.getAirBaseInjection)(u.memptyLR(o.monoidDamageVector))(o.calcKoukuDamage),g=v(r.getAirBaseInjection)(c)(o.calcKoukuDamageAC),y=v(r.getKouku2)(t.mempty(o.monoidDamageVector))(o.calcKoukuDamageCombined),D=v(r.getKouku2)(u.memptyLR(o.monoidDamageVector))(o.calcKoukuDamage),C=v(r.getKouku2)(c)(o.calcKoukuDamageAC),h=C,w=v(r.getKouku)(t.mempty(o.monoidDamageVector))(o.calcKoukuDamageCombined),A=v(r.getKouku)(u.memptyLR(o.monoidDamageVector))(o.calcKoukuDamage),b=v(r.getKouku)(c)(o.calcKoukuDamageAC),_=b,E=function(n){return a.foldl(a.foldableArray)(u.lrAppend(o.monoidDamageVector))(u.memptyLR(o.monoidDamageVector))(v(r.getLandBasedAirStrikes)([])(i.map(i.functorArray)(function(n){return u.lrOnlyRight(o.monoidDamageVector)(o.calcLandBasedKoukuDamage(n))}))(n))},M=function(){var n=function(n){return function(e){return{left:u.lrAppend(o.monoidDamageVector)(n.left)(e.left),right:u.lrAppend(o.monoidDamageVector)(n.right)(e.right)}}};return function(e){return a.foldl(a.foldableArray)(n)(c)(v(r.getLandBasedAirStrikes)([])(i.map(i.functorArray)(o.calcKoukuDamageAC))(e))}}(),F=M,k=v(r.getOpeningAttack)(u.memptyLR(o.monoidDamageVector))(o.calcRaigekiDamage),K=v(r.getOpeningAttack)(c)(o.calcRaigekiDamageAC),I=v(r.getOpeningTaisen)(u.memptyLR(o.monoidDamageVector))(o.calcHougekiDamage),T=v(r.getOpeningTaisen)(c)(o.calcHougekiDamageAC),B=v(r.getSupportAirInfo)(t.mempty(o.monoidDamageVector))(o.calcSupportAirAttackDamage),N=v(r.getSupportAirInfo)(c)(o.calcSupportAirAttackDamageAC),x=v(r.getSupportHouraiInfo)(t.mempty(o.monoidDamageVector))(o.calcSupportHouraiDamage),V=v(r.getSupportHouraiInfo)(c)(o.calcSupportHouraiDamageAC),L=function(n){ return function(e){return function(t){return{main:l.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.main)(t.main),enemyMain:l.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.enemyMain)(t.enemyMain),enemyEscort:l.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.enemyEscort)(t.enemyEscort)}}}},R=function(n){return function(e){return function(t){return{main:l.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.main)(t.main),escort:l.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.escort)(t.escort),enemy:l.append(n["__superclass_Data.Semigroup.Semigroup_0"]())(e.enemy)(t.enemy)}}}},H=function(n){return function(e){return a.foldl(a.foldableArray)(R(o.monoidDamageVector))(s(o.monoidDamageVector))(i.map(i.functorArray)(function(n){return n(e)})(n))}};n.combinedAppend=R,n.combinedAppendAC=L,n.connectDV=v,n.fconcat=m,n.fconcat2=H,n.fconcat2AC=p,n.injKoukuDV=S,n.injKoukuDVAC=d,n.injLandBasedDV=P,n.injLandBasedDVAC=g,n.kouku2CombinedDV=y,n.kouku2DV=D,n.kouku2DVAC=C,n.kouku2DVBC=h,n.koukuCombinedDV=w,n.koukuDV=A,n.koukuDVAC=b,n.koukuDVBC=_,n.landBasedAirStrikeDVs=E,n.landBasedAirStrikeDVsAC=M,n.landBasedAirStrikeDVsBC=F,n.memptyCombined=s,n.memptyCombinedAC=f,n.mt=c,n.openingDV=k,n.openingDVAC=K,n.openingTaisenDV=I,n.openingTaisenDVAC=T,n.supportAirAttackDV=B,n.supportAirAttackDVAC=N,n.supportHouraiDV=x,n.supportHouraiDVAC=V}(PS["KanColle.DamageAnalysis.Stages.Internal"]=PS["KanColle.DamageAnalysis.Stages.Internal"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.KCAPI.Battle"]),t=PS["KanColle.Util"],a=PS["KanColle.DamageAnalysis.DamageVector"],r=PS["KanColle.DamageAnalysis.Types"],u=PS["KanColle.DamageAnalysis.Stages.Internal"],o=(PS["Control.Semigroupoid"],u.connectDV(e.getRaigeki)(t.memptyLR(a.monoidDamageVector))(a.calcRaigekiDamage)),i=u.connectDV(e.getHougeki)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),l=function(n){return r.lrToNormal(i(n))},c=u.connectDV(e.getHougeki3)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),f=u.connectDV(e.getHougeki2)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),s=u.connectDV(e.getHougeki1)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),p=function(n){return r.lrToNormal(u.fconcat([u.injLandBasedDV,u.injKoukuDV,u.landBasedAirStrikeDVs,u.koukuDV,u.kouku2DV,function(n){return t.lrOnlyRight(a.monoidDamageVector)(u.supportAirAttackDV(n))},function(n){return t.lrOnlyRight(a.monoidDamageVector)(u.supportHouraiDV(n))},u.openingTaisenDV,u.openingDV,s,f,c,o])(n))};n.battleDV=p,n.nightBattleDV=l}(PS["KanColle.DamageAnalysis.Stages"]=PS["KanColle.DamageAnalysis.Stages"]||{}),function(n){"use strict";var e=PS["KanColle.KCAPI.Battle.Internal"],t=(PS.Prelude,PS["Data.Maybe"]),a=PS["Control.Bind"],r=PS["Control.Applicative"],u=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(1)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_raigeki)})},o=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(3)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki3)})},i=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(2)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki2)})},l=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(0)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki1)})};n.getHougeki1=l,n.getHougeki2=i,n.getHougeki3=o,n.getRaigeki=u}(PS["KanColle.KCAPI.Battle.CTF"]=PS["KanColle.KCAPI.Battle.CTF"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.KCAPI.Battle"],PS["KanColle.KCAPI.Battle.CTF"]),t=PS["KanColle.Util"],a=PS["KanColle.DamageAnalysis.DamageVector"],r=PS["KanColle.DamageAnalysis.Stages.Internal"],u=(PS["Control.Semigroupoid"],r.connectDV(e.getRaigeki)(t.memptyLR(a.monoidDamageVector))(a.calcRaigekiDamage)),o=r.connectDV(e.getHougeki3)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),i=r.connectDV(e.getHougeki2)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),l=r.connectDV(e.getHougeki1)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),c=r.fconcat2([function(n){return a.toCombined(a.FRLandBased.value)(r.landBasedAirStrikeDVs(n))},function(n){return a.toCombined(a.FRMain.value)(r.koukuDV(n))},function(n){return a.toCombined(a.FREscort.value)(t.lrOnlyLeft(a.monoidDamageVector)(r.koukuCombinedDV(n)))},function(n){return a.toCombined(a.FRSupport.value)(t.lrOnlyRight(a.monoidDamageVector)(r.supportAirAttackDV(n)))},function(n){return a.toCombined(a.FRSupport.value)(t.lrOnlyRight(a.monoidDamageVector)(r.supportHouraiDV(n)))},function(n){return a.toCombined(a.FRMain.value)(r.kouku2DV(n))},function(n){return a.toCombined(a.FREscort.value)(t.lrOnlyLeft(a.monoidDamageVector)(r.kouku2CombinedDV(n)))},function(n){return a.toCombined(a.FREscort.value)(r.openingTaisenDV(n))},function(n){return a.toCombined(a.FREscort.value)(r.openingDV(n))},function(n){return a.toCombined(a.FREscort.value)(l(n))},function(n){return a.toCombined(a.FREscort.value)(u(n))},function(n){return a.toCombined(a.FRMain.value)(i(n))},function(n){return a.toCombined(a.FRMain.value)(o(n))}]);n.battleDV=c,n.hougeki1DV=l,n.hougeki2DV=i,n.hougeki3DV=o,n.raigekiDV=u}(PS["KanColle.DamageAnalysis.Stages.CTF"]=PS["KanColle.DamageAnalysis.Stages.CTF"]||{}),function(n){"use strict";var e=PS["KanColle.KCAPI.Battle.Internal"],t=(PS.Prelude,PS["Data.Maybe"]),a=PS["Control.Bind"],r=PS["Control.Applicative"],u=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(3)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_raigeki)})},o=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(2)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki3)})},i=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(1)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki2)})},l=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(0)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki1)})};n.getHougeki1=l,n.getHougeki2=i,n.getHougeki3=o,n.getRaigeki=u}(PS["KanColle.KCAPI.Battle.STF"]=PS["KanColle.KCAPI.Battle.STF"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.KCAPI.Battle"],PS["KanColle.KCAPI.Battle.STF"]),t=PS["KanColle.Util"],a=PS["KanColle.DamageAnalysis.DamageVector"],r=PS["KanColle.DamageAnalysis.Stages.Internal"],u=(PS["Control.Semigroupoid"],r.connectDV(e.getRaigeki)(t.memptyLR(a.monoidDamageVector))(a.calcRaigekiDamage)),o=r.connectDV(e.getHougeki3)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),i=r.connectDV(e.getHougeki2)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),l=r.connectDV(e.getHougeki1)(t.memptyLR(a.monoidDamageVector))(a.calcHougekiDamage),c=r.fconcat2([function(n){return a.toCombined(a.FRLandBased.value)(r.landBasedAirStrikeDVs(n))},function(n){return a.toCombined(a.FRMain.value)(r.koukuDV(n))},function(n){return a.toCombined(a.FREscort.value)(t.lrOnlyLeft(a.monoidDamageVector)(r.koukuCombinedDV(n)))},function(n){return a.toCombined(a.FRSupport.value)(t.lrOnlyRight(a.monoidDamageVector)(r.supportAirAttackDV(n)))},function(n){return a.toCombined(a.FRSupport.value)(t.lrOnlyRight(a.monoidDamageVector)(r.supportHouraiDV(n)))},function(n){return a.toCombined(a.FRMain.value)(r.kouku2DV(n))},function(n){return a.toCombined(a.FREscort.value)(t.lrOnlyLeft(a.monoidDamageVector)(r.kouku2CombinedDV(n)))},function(n){return a.toCombined(a.FREscort.value)(r.openingTaisenDV(n))},function(n){return a.toCombined(a.FREscort.value)(r.openingDV(n))},function(n){return a.toCombined(a.FRMain.value)(l(n))},function(n){return a.toCombined(a.FRMain.value)(i(n))},function(n){return a.toCombined(a.FREscort.value)(o(n))},function(n){return a.toCombined(a.FREscort.value)(u(n))}]);n.battleDV=c,n.hougeki1DV=l,n.hougeki2DV=i,n.hougeki3DV=o,n.raigekiDV=u}(PS["KanColle.DamageAnalysis.Stages.STF"]=PS["KanColle.DamageAnalysis.Stages.STF"]||{}),function(n){"use strict";var e=PS["KanColle.KCAPI.Battle.Internal"],t=(PS.Prelude,PS["Data.Maybe"]),a=PS["Control.Bind"],r=PS["Control.Applicative"],u=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(2)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_raigeki)})},o=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(3)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki3)})},i=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(1)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki2)})},l=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(0)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki1)})};n.getHougeki1=l,n.getHougeki2=i,n.getHougeki3=o,n.getRaigeki=u}(PS["KanColle.KCAPI.Battle.BothCombinedCTF"]=PS["KanColle.KCAPI.Battle.BothCombinedCTF"]||{}),function(n){"use strict";var e=(PS["KanColle.KCAPI.Battle"],PS.Prelude,PS["KanColle.KCAPI.Battle.BothCombinedCTF"]),t=(PS["KanColle.Util"],PS["KanColle.DamageAnalysis.DamageVector"]),a=PS["KanColle.DamageAnalysis.Stages.Internal"],r=(PS["Control.Semigroupoid"],a.connectDV(e.getRaigeki)(a.mt)(t.calcRaigekiDamageAC)),u=a.connectDV(e.getHougeki3)(a.mt)(t.calcHougekiDamageAC),o=a.connectDV(e.getHougeki2)(a.mt)(t.calcHougekiDamageAC),i=a.connectDV(e.getHougeki1)(a.mt)(t.calcHougekiDamageAC),l=function(n){return t.toCombinedBC(a.fconcat2AC([a.injLandBasedDVAC,a.injKoukuDVAC,a.landBasedAirStrikeDVsBC,a.koukuDVBC,a.supportAirAttackDVAC,a.supportHouraiDVAC,a.kouku2DVBC,a.openingTaisenDVAC,a.openingDVAC,i,o,r,u])(n))};n.battleDV=l,n.hougeki1DV=i,n.hougeki2DV=o,n.hougeki3DV=u,n.raigekiDV=r}(PS["KanColle.DamageAnalysis.Stages.BothCombinedCTF"]=PS["KanColle.DamageAnalysis.Stages.BothCombinedCTF"]||{}),function(n){"use strict";var e=PS["KanColle.KCAPI.Battle.Internal"],t=(PS.Prelude,PS["Data.Maybe"]),a=PS["Control.Bind"],r=PS["Control.Applicative"],u=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(3)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_raigeki)})},o=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(2)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki3)})},i=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(1)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki2)})},l=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(0)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki1)})};n.getHougeki1=l,n.getHougeki2=i,n.getHougeki3=o,n.getRaigeki=u}(PS["KanColle.KCAPI.Battle.BothCombinedSTF"]=PS["KanColle.KCAPI.Battle.BothCombinedSTF"]||{}),function(n){"use strict";var e=(PS["KanColle.KCAPI.Battle"],PS.Prelude,PS["KanColle.KCAPI.Battle.BothCombinedSTF"]),t=(PS["KanColle.Util"],PS["KanColle.DamageAnalysis.DamageVector"]),a=PS["KanColle.DamageAnalysis.Stages.Internal"],r=(PS["Control.Semigroupoid"],a.connectDV(e.getRaigeki)(a.mt)(t.calcRaigekiDamageAC)),u=a.connectDV(e.getHougeki3)(a.mt)(t.calcHougekiDamageAC),o=a.connectDV(e.getHougeki2)(a.mt)(t.calcHougekiDamageAC),i=a.connectDV(e.getHougeki1)(a.mt)(t.calcHougekiDamageAC),l=function(n){return t.toCombinedBC(a.fconcat2AC([a.injLandBasedDVAC,a.injKoukuDVAC,a.landBasedAirStrikeDVsBC,a.koukuDVBC,a.supportAirAttackDVAC,a.supportHouraiDVAC,a.kouku2DVBC,a.openingTaisenDVAC,a.openingDVAC,i,o,u,r])(n))};n.battleDV=l,n.hougeki1DV=i,n.hougeki2DV=o,n.hougeki3DV=u,n.raigekiDV=r}(PS["KanColle.DamageAnalysis.Stages.BothCombinedSTF"]=PS["KanColle.DamageAnalysis.Stages.BothCombinedSTF"]||{}),function(n){"use strict";var e=PS["KanColle.KCAPI.Battle.Internal"],t=(PS.Prelude,PS["Data.Maybe"]),a=PS["Control.Bind"],r=PS["Control.Applicative"],u=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(1)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_raigeki)})},o=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(3)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki3)})},i=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(2)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki2)})},l=function(n){return a.bind(t.bindMaybe)(e.checkHouraiFlag(0)(n))(function(){return r.pure(t.applicativeMaybe)(n.api_hougeki1)})};n.getHougeki1=l,n.getHougeki2=i,n.getHougeki3=o,n.getRaigeki=u}(PS["KanColle.KCAPI.Battle.AbyssalCombined"]=PS["KanColle.KCAPI.Battle.AbyssalCombined"]||{}),function(n){"use strict";var e=(PS["KanColle.KCAPI.Battle"],PS.Prelude,PS["KanColle.KCAPI.Battle.AbyssalCombined"]),t=(PS["KanColle.Util"],PS["KanColle.DamageAnalysis.DamageVector"]),a=PS["KanColle.DamageAnalysis.Stages.Internal"],r=(PS["Control.Semigroupoid"],a.connectDV(e.getRaigeki)(a.mt)(t.calcRaigekiDamageAC)),u=a.connectDV(e.getHougeki3)(a.mt)(t.calcHougekiDamageAC),o=a.connectDV(e.getHougeki2)(a.mt)(t.calcHougekiDamageAC),i=a.connectDV(e.getHougeki1)(a.mt)(t.calcHougekiDamageAC),l=function(n){return t.toCombinedAC(a.fconcat2AC([a.injLandBasedDVAC,a.injKoukuDVAC,a.landBasedAirStrikeDVsAC,a.koukuDVAC,a.supportAirAttackDVAC,a.supportHouraiDVAC,a.kouku2DVAC,a.openingTaisenDVAC,a.openingDVAC,i,r,o,u])(n))};n.battleDV=l,n.hougeki1DV=i,n.hougeki2DV=o,n.hougeki3DV=u,n.raigekiDV=r}(PS["KanColle.DamageAnalysis.Stages.AbyssalCombined"]=PS["KanColle.DamageAnalysis.Stages.AbyssalCombined"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Array"]),t=PS["Data.Tuple"],a=PS["Data.Maybe"],r=PS["KanColle.KCAPI.Battle"],u=PS["KanColle.Util"],o=PS["KanColle.DamageAnalysis.DamageVector"],i=PS["KanColle.DamageAnalysis.Stages"],l=PS["KanColle.DamageAnalysis.Stages.CTF"],c=PS["KanColle.DamageAnalysis.Stages.STF"],f=PS["KanColle.DamageAnalysis.Stages.BothCombinedCTF"],s=PS["KanColle.DamageAnalysis.Stages.BothCombinedSTF"],p=PS["KanColle.DamageAnalysis.Stages.AbyssalCombined"],m=PS["KanColle.DamageAnalysis.Types"],v=PS["Data.Ord"],S=PS["Data.Ordering"],d=PS["Data.Semigroup"],P=(PS["Data.Ring"],PS["Data.Function"],PS["Control.Apply"]),g=PS["Data.Functor"],y=u.fleetSplit(!1),D=function(n){return function(t){var r=e.length(t),o=v.compare(v.ordInt)(n)(r);if(o instanceof S.LT)return u.throwWith("ensureHpsLen: array length is longer than expected");if(o instanceof S.EQ)return t;if(o instanceof S.GT)return d.append(d.semigroupArray)(t)(e.replicate(n-r)(a.Nothing.value));throw new Error("Failed pattern match at KanColle.DamageAnalysis.DamageAnalysis line 45, column 29 - line 48, column 60: "+[o.constructor.name])}},C=function(n){return function(t){var u=y(D(12)(r.getInitHps(t))),o=function(n){return function(e){return n instanceof a.Just&&e instanceof a.Just?new a.Just({hp:n.value0,fullHp:e.value0,sunk:n.value0<=0,dameCon:a.Nothing.value}):a.Nothing.value}},i=y(D(12)(r.getMaxHps(t))),l=e.zipWith(o)(u.right)(i.right),c=function(n){return function(e){return n instanceof a.Just?new a.Just(function(){var t={};for(var a in n.value0)({}).hasOwnProperty.call(n.value0,a)&&(t[a]=n.value0[a]);return t.dameCon=e,t}()):a.Nothing.value}},f=e.zipWith(c)(e.zipWith(o)(u.left)(i.left))(n);return{main:f,enemy:l}}},h=function(n){return function(t){var u=y(D(12)(r.getInitHpsCombined(t))),o=y(D(12)(r.getMaxHpsCombined(t))),i=function(n){return function(e){return n instanceof a.Just&&e instanceof a.Just?new a.Just({hp:n.value0,fullHp:e.value0,sunk:n.value0<=0,dameCon:a.Nothing.value}):a.Nothing.value}},l=e.zipWith(i)(u.right)(o.right),c=y(D(12)(r.getInitHps(t))),f=y(D(12)(r.getMaxHps(t))),s=e.zipWith(i)(c.right)(f.right),p=function(n){return function(e){return n instanceof a.Just?new a.Just(function(){var t={};for(var a in n.value0)({}).hasOwnProperty.call(n.value0,a)&&(t[a]=n.value0[a]);return t.dameCon=e,t}()):a.Nothing.value}},m=e.zipWith(p)(e.zipWith(i)(c.left)(f.left))(n);return{main:m,enemyMain:s,enemyEscort:l}}},w=function(n){return function(t){var u=function(n){return function(e){return n instanceof a.Just&&e instanceof a.Just?new a.Just({hp:n.value0,fullHp:e.value0,sunk:n.value0<=0,dameCon:a.Nothing.value}):a.Nothing.value}},o=y(n),i=y(D(12)(r.getInitHps(t))),l=y(D(12)(r.getMaxHps(t))),c=y(D(12)(r.getInitHpsCombined(t))),f=y(D(12)(r.getMaxHpsCombined(t))),s=function(n){return function(e){return n instanceof a.Just?new a.Just(function(){var t={};for(var a in n.value0)({}).hasOwnProperty.call(n.value0,a)&&(t[a]=n.value0[a]);return t.dameCon=e,t}()):a.Nothing.value}};return{allyMain:e.zipWith(s)(e.zipWith(u)(i.left)(l.left))(o.left),allyEscort:e.zipWith(s)(e.zipWith(u)(c.left)(f.left))(o.right),enemyMain:e.zipWith(u)(i.right)(l.right),enemyEscort:e.zipWith(u)(c.right)(f.right)}}},A=function(n){return function(t){var u=function(n){return function(e){return n instanceof a.Just&&e instanceof a.Just?new a.Just({hp:n.value0,fullHp:e.value0,sunk:n.value0<=0,dameCon:a.Nothing.value}):a.Nothing.value}},o=D(6)(r.getInitHpsCombined(t)),i=D(6)(r.getMaxHpsCombined(t)),l=y(n),c=C(l.left)(t),f=function(n){return function(e){return n instanceof a.Just?new a.Just(function(){var t={};for(var a in n.value0)({}).hasOwnProperty.call(n.value0,a)&&(t[a]=n.value0[a]);return t.dameCon=e,t}()):a.Nothing.value}},s=e.zipWith(f)(e.zipWith(u)(o)(i))(l.right);return{main:c.main,escort:s,enemy:c.enemy}}},b=function(n){return function(t){var r=A(d.append(d.semigroupArray)(e.replicate(6)(a.Nothing.value))(n))(t),u={main:r.escort,enemy:r.enemy},l=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},c=o.applyNormalDamageVector(i.nightBattleDV(t))(u);return m.appNormalBattle(m.appNormalBattle(m.dupAsNormalBattle(e.zipWith(l)))(u))(c)}},_=function(n){return function(t){return function(r){var u=A(t)(r),i=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},l=o.applyCombinedDamageVector(n(r))(u);return m.appCombinedBattle(m.appCombinedBattle(m.dupAsCombinedBattle(e.zipWith(i)))(u))(l)}}},E=_(c.battleDV),M=_(l.battleDV),F=M,k=function(n){return function(t){var r=s.battleDV(t),u=w(n)(t),i=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},l={allyMain:o.applyDamageVector(r.allyMain)(u.allyMain),allyEscort:o.applyDamageVector(r.allyEscort)(u.allyEscort),enemyMain:o.applyDamageVector(r.enemyMain)(u.enemyMain),enemyEscort:o.applyDamageVector(r.enemyEscort)(u.enemyEscort)},c=function(n){return e.zipWith(i)(n(u))(n(l))};return{allyMain:c(function(n){return n.allyMain}),allyEscort:c(function(n){return n.allyEscort}),enemyMain:c(function(n){return n.enemyMain}),enemyEscort:c(function(n){return n.enemyEscort})}}},K=function(n){return function(l){var c=i.nightBattleDV(l),f=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},s=w(n)(l),p=function(){var n=r.getEnemyActiveDeck(l);return 1===n?new t.Tuple(s.enemyMain,s.enemyEscort):2===n?new t.Tuple(s.enemyEscort,s.enemyMain):u.throwWith("invalid api_active_deck value")}(),v={main:s.allyEscort,enemy:t.fst(p)},S=o.applyNormalDamageVector(c)(v),d=function(){var n=r.getEnemyActiveDeck(l);return 1===n?{allyMain:s.allyMain,allyEscort:S.main,enemyMain:S.enemy,enemyEscort:t.snd(p)}:2===n?{allyMain:s.allyMain,allyEscort:S.main,enemyMain:t.snd(p),enemyEscort:S.enemy}:u.throwWith("invalid api_active_deck value")}(),y=function(n){return e.zipWith(f)(n(s))(n(d))};return{allyMain:y(function(n){return n.allyMain}),allyEscort:y(function(n){return n.allyEscort}),enemyMain:y(function(n){return n.enemyMain}),enemyEscort:y(function(n){return n.enemyEscort})}}},I=function(n){return function(t){var r=f.battleDV(t),u=w(n)(t),i=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},l={allyMain:o.applyDamageVector(r.allyMain)(u.allyMain),allyEscort:o.applyDamageVector(r.allyEscort)(u.allyEscort),enemyMain:o.applyDamageVector(r.enemyMain)(u.enemyMain),enemyEscort:o.applyDamageVector(r.enemyEscort)(u.enemyEscort)},c=function(n){return e.zipWith(i)(n(u))(n(l))};return{allyMain:c(function(n){return n.allyMain}),allyEscort:c(function(n){return n.allyEscort}),enemyMain:c(function(n){return n.enemyMain}),enemyEscort:c(function(n){return n.enemyEscort})}}},T=function(n){return function(t){return function(r){var u=C(t)(r),i=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},l=o.applyNormalDamageVector(n(r))(u);return m.appNormalBattle(m.appNormalBattle(m.dupAsNormalBattle(e.zipWith(i)))(u))(l)}}},B=T(i.nightBattleDV),N=T(i.battleDV),x=function(n){return function(l){var c=i.nightBattleDV(l),f=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},s=h(n)(l),p=function(){var n=r.getEnemyActiveDeck(l);return 1===n?new t.Tuple(s.enemyMain,s.enemyEscort):2===n?new t.Tuple(s.enemyEscort,s.enemyMain):u.throwWith("invalid api_active_deck value")}(),v={main:s.main,enemy:t.fst(p)},S=o.applyNormalDamageVector(c)(v),d=function(){var n=r.getEnemyActiveDeck(l);return 1===n?{main:S.main,enemyMain:S.enemy,enemyEscort:t.snd(p)}:2===n?{main:S.main,enemyMain:t.snd(p),enemyEscort:S.enemy}:u.throwWith("invalid api_active_deck value")}(),y=function(n){return e.zipWith(f)(n(s))(n(d))};return{main:y(function(n){return n.main}),enemyMain:y(function(n){return n.enemyMain}),enemyEscort:y(function(n){return n.enemyEscort})}}},V=function(n){return function(t){var r=p.battleDV(t),u=h(n)(t),i=function(n){return function(e){return P.apply(a.applyMaybe)(g.map(a.functorMaybe)(m.getShipResult)(n))(e)}},l={main:o.applyDamageVector(r.main)(u.main),enemyMain:o.applyDamageVector(r.enemyMain)(u.enemyMain),enemyEscort:o.applyDamageVector(r.enemyEscort)(u.enemyEscort)},c=function(n){return e.zipWith(i)(n(u))(n(l))};return{main:c(function(n){return n.main}),enemyMain:c(function(n){return n.enemyMain}),enemyEscort:c(function(n){return n.enemyEscort})}}};n.analyzeAbyssalCTFBattle=V,n.analyzeAbyssalCTFNightBattle=x,n.analyzeBattle=N,n.analyzeBothCombinedCTFBattle=I,n.analyzeBothCombinedNightBattle=K,n.analyzeBothCombinedSTFBattle=k,n.analyzeCTFBattle=M,n.analyzeCombinedNightBattle=b,n.analyzeNightBattle=B,n.analyzeSTFBattle=E,n.analyzeTECFBattle=F}(PS["KanColle.DamageAnalysis.DamageAnalysis"]=PS["KanColle.DamageAnalysis.DamageAnalysis"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Util"]),t=PS["KanColle.DamageAnalysis.DamageAnalysis"],a=PS["KanColle.DamageAnalysis.Types"],r=(PS["KanColle.KCAPI.Battle"],PS["Data.Maybe"]),u=(PS["Data.Function.Uncurried"],PS["Data.Nullable"]),o=(PS["Data.Semigroup"],PS["Data.Show"]),i=PS["Data.Functor"],l=function(){var n=function(n){return 0===n?r.Nothing.value:1===n?new r.Just(a.RepairTeam.value):2===n?new r.Just(a.RepairGoddess.value):e.throwWith("readDameCon: invalid input: "+o.show(o.showInt)(n))};return i.map(i.functorArray)(n)}(),c=function(n){var e=function(n){return{main:i.map(i.functorArray)(u.toNullable)(n.main),enemy:i.map(i.functorArray)(u.toNullable)(n.enemy),escort:i.map(i.functorArray)(u.toNullable)(n.escort)}};return function(t,a){return e(n(l(t))(a))}},f=function(n){var e=function(n){return{allyMain:i.map(i.functorArray)(u.toNullable)(n.allyMain),allyEscort:i.map(i.functorArray)(u.toNullable)(n.allyEscort),enemyMain:i.map(i.functorArray)(u.toNullable)(n.enemyMain),enemyEscort:i.map(i.functorArray)(u.toNullable)(n.enemyEscort)}};return function(t,a){return e(n(l(t))(a))}},s=function(n){var e=function(n){return{main:i.map(i.functorArray)(u.toNullable)(n.main),enemyMain:i.map(i.functorArray)(u.toNullable)(n.enemyMain),enemyEscort:i.map(i.functorArray)(u.toNullable)(n.enemyEscort)}};return function(t,a){return e(n(l(t))(a))}},p=function(n){var e=function(n){return{main:i.map(i.functorArray)(u.toNullable)(n.main),enemy:i.map(i.functorArray)(u.toNullable)(n.enemy)}};return function(t,a){return e(n(l(t))(a))}},m=c(t.analyzeTECFBattle),v=c(t.analyzeSTFBattle),S=p(t.analyzeNightBattle),d=p(t.analyzeCombinedNightBattle),P=c(t.analyzeCTFBattle),g=f(t.analyzeBothCombinedSTFBattle),y=f(t.analyzeBothCombinedNightBattle),D=f(t.analyzeBothCombinedCTFBattle),C=p(t.analyzeBattle),h=s(t.analyzeAbyssalCTFNightBattle),w=s(t.analyzeAbyssalCTFBattle);n.analyzeAbyssalCTFBattleJS=w,n.analyzeAbyssalCTFNightBattleJS=h,n.analyzeBattleJS=C,n.analyzeBothCombinedCTFBattleJS=D,n.analyzeBothCombinedNightBattleJS=y,n.analyzeBothCombinedSTFBattleJS=g,n.analyzeCTFBattleJS=P,n.analyzeCombinedNightBattleJS=d,n.analyzeNightBattleJS=S,n.analyzeSTFBattleJS=v,n.analyzeTECFBattleJS=m}(PS["KanColle.DamageAnalysis.FFI"]=PS["KanColle.DamageAnalysis.FFI"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Eq"]),t=(PS["Data.Ring"],PS["Data.Semigroup"],PS["Data.Show"]),a=function(){function n(){}return n.value=new n,n}(),r=function(){function n(){}return n.value=new n,n}(),u=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}(),l=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}(),s=function(){function n(){}return n.value=new n,n}(),p=function(){function n(){}return n.value=new n,n}(),m=function(){function n(){}return n.value=new n,n}(),v=function(){function n(){}return n.value=new n,n}(),S=function(){function n(){}return n.value=new n,n}(),d=function(){function n(){}return n.value=new n,n}(),P=function(){function n(){}return n.value=new n,n}(),g=function(){function n(){}return n.value=new n,n}(),y=function(){function n(){}return n.value=new n,n}(),D=function(){function n(){}return n.value=new n,n}(),C=function(){function n(){}return n.value=new n,n}(),h=function(){function n(){}return n.value=new n,n}(),w=function(){function n(){}return n.value=new n,n}(),A=function(){function n(){}return n.value=new n,n}(),b=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),_=function(n){if(n instanceof a)return 1;if(n instanceof r)return 2;if(n instanceof u)return 3;if(n instanceof o)return 4;if(n instanceof i)return 5;if(n instanceof l)return 6;if(n instanceof c)return 7;if(n instanceof f)return 8;if(n instanceof s)return 9;if(n instanceof p)return 10;if(n instanceof m)return 11;if(n instanceof v)return 12;if(n instanceof S)return 13;if(n instanceof d)return 14;if(n instanceof P)return 15;if(n instanceof g)return 16;if(n instanceof y)return 17;if(n instanceof D)return 18;if(n instanceof C)return 19;if(n instanceof h)return 20;if(n instanceof w)return 21;if(n instanceof A)return 22;if(n instanceof b)return-1;throw new Error("Failed pattern match at KanColle.Generated.SType line 86, column 1 - line 87, column 1: "+[n.constructor.name])},E=function(n){if(n instanceof a)return"DDE";if(n instanceof r)return"DD";if(n instanceof u)return"CL";if(n instanceof o)return"CLT";if(n instanceof i)return"CA";if(n instanceof l)return"CAV";if(n instanceof c)return"CVL";if(n instanceof f)return"FBB";if(n instanceof s)return"BB";if(n instanceof p)return"BBV";if(n instanceof m)return"CV";if(n instanceof v)return"XBB";if(n instanceof S)return"SS";if(n instanceof d)return"SSV";if(n instanceof P)return"AP";if(n instanceof g)return"AV";if(n instanceof y)return"LHA";if(n instanceof D)return"CVB";if(n instanceof C)return"AR";if(n instanceof h)return"AS";if(n instanceof w)return"CT";if(n instanceof A)return"AO";if(n instanceof b)return"");throw new Error("Failed pattern match at KanColle.Generated.SType line 11, column 1 - line 12, column 1: "+[n.constructor.name])},M=function(n){return"DDE"===n?a.value:"DD"===n?r.value:"CL"===n?u.value:"CLT"===n?o.value:"CA"===n?i.value:"CAV"===n?l.value:"CVL"===n?c.value:"FBB"===n?f.value:"BB"===n?s.value:"BBV"===n?p.value:"CV"===n?m.value:"XBB"===n?v.value:"SS"===n?S.value:"SSV"===n?d.value:"AP"===n?P.value:"AV"===n?g.value:"LHA"===n?y.value:"CVB"===n?D.value:"AR"===n?C.value:"AS"===n?h.value:"CT"===n?w.value:"AO"===n?A.value:new b(n)},F=function(n){return 1===n?a.value:2===n?r.value:3===n?u.value:4===n?o.value:5===n?i.value:6===n?l.value:7===n?c.value:8===n?f.value:9===n?s.value:10===n?p.value:11===n?m.value:12===n?v.value:13===n?S.value:14===n?d.value:15===n?P.value:16===n?g.value:17===n?y.value:18===n?D.value:19===n?C.value:20===n?h.value:21===n?w.value:22===n?A.value:new b("num "+t.show(t.showInt)(n))},k=new e.Eq(function(n){return function(e){return n instanceof a&&e instanceof a?!0:n instanceof r&&e instanceof r?!0:n instanceof u&&e instanceof u?!0:n instanceof o&&e instanceof o?!0:n instanceof i&&e instanceof i?!0:n instanceof l&&e instanceof l?!0:n instanceof c&&e instanceof c?!0:n instanceof f&&e instanceof f?!0:n instanceof s&&e instanceof s?!0:n instanceof p&&e instanceof p?!0:n instanceof m&&e instanceof m?!0:n instanceof v&&e instanceof v?!0:n instanceof S&&e instanceof S?!0:n instanceof d&&e instanceof d?!0:n instanceof P&&e instanceof P?!0:n instanceof g&&e instanceof g?!0:n instanceof y&&e instanceof y?!0:n instanceof D&&e instanceof D?!0:n instanceof C&&e instanceof C?!0:n instanceof h&&e instanceof h?!0:n instanceof w&&e instanceof w?!0:n instanceof A&&e instanceof A?!0:n instanceof b&&e instanceof b?n.value0===e.value0:!1}});n.DDE=a,n.DD=r,n.CL=u,n.CLT=o,n.CA=i,n.CAV=l,n.CVL=c,n.FBB=f,n.BB=s,n.BBV=p,n.CV=m,n.XBB=v,n.SS=S,n.SSV=d,n.AP=P,n.AV=g,n.LHA=y,n.CVB=D,n.AR=C,n.AS=h,n.CT=w,n.AO=A,n.Unknown=b,n.fromInt=F,n.readSType=M,n.showSType=E,n.toInt=_,n.eqSType=k}(PS["KanColle.Generated.SType"]=PS["KanColle.Generated.SType"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Array"]),t=PS["Data.Foldable"],a=PS["Data.Maybe"],r=PS["Data.String"],u=(PS["KanColle.SType"],PS["KanColle.Generated.SType"]),o=PS["Data.Semigroup"],i=PS["Data.Functor"],l=PS["Data.Show"],c=(PS["Data.Ord"],PS["Data.HeytingAlgebra"]),f=PS["Data.Eq"],s=(PS["Control.Semigroupoid"],PS["Data.Semiring"]),p=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),m=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),v=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),S=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),d=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),P=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),g=function(){function n(n,e){this.value0=n,this.value1=e}return n.create=function(e){return function(t){return new n(e,t)}},n}(),y=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),D=function(n){var e=function(n){return[new g(n,[u.SS.value,u.SSV.value])]},t=function(n){return function(e){return[new g(n,[e])]}},a=function(n){return[new S(n)]},r=function(n){return function(e){return[new v(new p(n)),new y(e)]}},i=function(n){return[new g(n,[u.CV.value,u.CVL.value,u.AV.value])]};return 1===n?r(1)(2):2===n?r(2)(4):3===n?r(3)(3):4===n?o.append(o.semigroupArray)(r(3)(3))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(2)(u.DD.value))):5===n?o.append(o.semigroupArray)(r(3)(4))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(2)(u.DD.value))):6===n?r(4)(4):7===n?r(5)(6):8===n?r(6)(6):9===n?o.append(o.semigroupArray)(r(3)(4))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(2)(u.DD.value))):10===n?o.append(o.semigroupArray)(r(3)(3))(t(2)(u.CL.value)):11===n?o.append(o.semigroupArray)(r(6)(4))(t(2)(u.DD.value)):12===n?o.append(o.semigroupArray)(r(4)(4))(t(2)(u.DD.value)):13===n?o.append(o.semigroupArray)(r(5)(6))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(4)(u.DD.value))):14===n?o.append(o.semigroupArray)(r(6)(6))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(3)(u.DD.value))):15===n?o.append(o.semigroupArray)(r(9)(6))(o.append(o.semigroupArray)(i(2))(t(2)(u.DD.value))):16===n?o.append(o.semigroupArray)(r(11)(6))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(2)(u.DD.value))):17===n?o.append(o.semigroupArray)(r(20)(6))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(3)(u.DD.value))):18===n?o.append(o.semigroupArray)(r(15)(6))(o.append(o.semigroupArray)(i(3))(t(2)(u.DD.value))):19===n?o.append(o.semigroupArray)(r(20)(6))(o.append(o.semigroupArray)(t(2)(u.BBV.value))(t(2)(u.DD.value))):20===n?o.append(o.semigroupArray)(r(1)(2))(o.append(o.semigroupArray)(e(1))(t(1)(u.CL.value))):21===n?o.append(o.semigroupArray)(r(15)(5))(o.append(o.semigroupArray)(a(30))(o.append(o.semigroupArray)(t(1)(u.CL.value))(o.append(o.semigroupArray)(t(4)(u.DD.value))([new P(3)])))):22===n?o.append(o.semigroupArray)(r(30)(6))(o.append(o.semigroupArray)(a(45))(o.append(o.semigroupArray)(t(1)(u.CA.value))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(2)(u.DD.value))))):23===n?o.append(o.semigroupArray)(r(50)(6))(o.append(o.semigroupArray)(a(200))(o.append(o.semigroupArray)(t(2)(u.BBV.value))(t(2)(u.DD.value)))):24===n?o.append(o.semigroupArray)(r(50)(6))(o.append(o.semigroupArray)(a(200))(o.append(o.semigroupArray)(t(1)(u.CL.value))(o.append(o.semigroupArray)(t(4)(u.DD.value))([new v(new m([u.CL.value]))])))):25===n?o.append(o.semigroupArray)(r(25)(4))(o.append(o.semigroupArray)(t(2)(u.CA.value))(t(2)(u.DD.value))):26===n?o.append(o.semigroupArray)(r(30)(4))(o.append(o.semigroupArray)(i(1))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(2)(u.DD.value)))):27===n?o.append(o.semigroupArray)(r(1)(2))(e(2)):28===n?o.append(o.semigroupArray)(r(30)(3))(e(3)):29===n?o.append(o.semigroupArray)(r(50)(3))(e(3)):30===n?o.append(o.semigroupArray)(r(55)(4))(e(4)):31===n?o.append(o.semigroupArray)(r(60)(4))(o.append(o.semigroupArray)(a(200))(e(4))):32===n?o.append(o.semigroupArray)(r(5)(3))(o.append(o.semigroupArray)(t(1)(u.CT.value))(o.append(o.semigroupArray)(t(2)(u.DD.value))([new v(new m([u.CT.value]))]))):33===n?o.append(o.semigroupArray)(r(1)(2))(t(2)(u.DD.value)):34===n?o.append(o.semigroupArray)(r(1)(2))(t(2)(u.DD.value)):35===n?o.append(o.semigroupArray)(r(40)(6))(o.append(o.semigroupArray)(i(2))(o.append(o.semigroupArray)(t(1)(u.CA.value))(t(1)(u.DD.value)))):36===n?o.append(o.semigroupArray)(r(30)(6))(o.append(o.semigroupArray)(t(2)(u.AV.value))(o.append(o.semigroupArray)(t(1)(u.CL.value))(t(1)(u.DD.value)))):37===n?o.append(o.semigroupArray)(r(50)(6))(o.append(o.semigroupArray)(a(200))(o.append(o.semigroupArray)(t(1)(u.CL.value))(o.append(o.semigroupArray)(t(5)(u.DD.value))([new P(4)])))):38===n?o.append(o.semigroupArray)(r(65)(6))(o.append(o.semigroupArray)(a(240))(o.append(o.semigroupArray)(t(5)(u.DD.value))([new P(4),new d(8)]))):39===n?o.append(o.semigroupArray)(r(3)(5))(o.append(o.semigroupArray)(a(180))(o.append(o.semigroupArray)(t(1)(u.AS.value))(e(4)))):40===n?o.append(o.semigroupArray)(r(25)(6))(o.append(o.semigroupArray)(a(150))(o.append(o.semigroupArray)(t(1)(u.CL.value))(o.append(o.semigroupArray)(t(2)(u.AV.value))(o.append(o.semigroupArray)(t(2)(u.DD.value))([new v(new m([u.CL.value]))]))))):[]; },C=function(n){var e={};for(var t in n)({}).hasOwnProperty.call(n,t)&&(e[t]=n[t]);return e.stype=u.readSType(n.stype),e},h=i.map(i.functorArray)(C),w=function(n){if(n instanceof p)return"ship level should be at least "+l.show(l.showInt)(n.value0);if(n instanceof m)return"ship should have one of the following type: "+r.joinWith(",")(i.map(i.functorArray)(u.showSType)(n.value0));throw new Error("Failed pattern match at KanColle.Expedition.Requirement line 28, column 28 - line 31, column 96: "+[n.constructor.name])},A=function(n){if(n instanceof v)return"flagship: "+w(n.value0);if(n instanceof S)return"fleet level sum should be at least "+l.show(l.showInt)(n.value0);if(n instanceof d)return"fleet should have at least "+(l.show(l.showInt)(n.value0)+" drum(s)");if(n instanceof P)return"at least "+(l.show(l.showInt)(n.value0)+" ship(s) should have drum(s)");if(n instanceof g)return"require at least "+(l.show(l.showInt)(n.value0)+(" ship(s) of the following type: "+r.joinWith(",")(i.map(i.functorArray)(u.showSType)(n.value1))));if(n instanceof y)return"fleet should have at least "+(l.show(l.showInt)(n.value0)+" ship(s)");throw new Error("Failed pattern match at KanColle.Expedition.Requirement line 34, column 29 - line 43, column 1: "+[n.constructor.name])},b=i.map(i.functorArray)(A),_=function(n){return function(e){if(n instanceof p)return e.level>=n.value0;if(n instanceof m)return t.any(t.foldableArray)(c.heytingAlgebraBoolean)(function(n){return f.eq(u.eqSType)(e.stype)(n)})(n.value0);throw new Error("Failed pattern match at KanColle.Expedition.Requirement line 68, column 19 - line 70, column 50: "+[n.constructor.name])}},E=function(n){return function(r){var u=function(n){return function(t){return e.length(e.filter(n)(t))}},o=e.uncons(r);if(o instanceof a.Just){if(n instanceof v)return _(n.value0)(o.value0.head);if(n instanceof S)return t.sum(t.foldableArray)(s.semiringInt)(i.map(i.functorArray)(function(n){return n.level})(r))>=n.value0;if(n instanceof d)return t.sum(t.foldableArray)(s.semiringInt)(i.map(i.functorArray)(function(n){return n.drumCount})(r))>=n.value0;if(n instanceof P)return u(function(n){return n.drumCount>0})(r)>=n.value0;if(n instanceof g)return u(_(new m(n.value1)))(r)>=n.value0;if(n instanceof y)return e.length(r)>=n.value0;throw new Error("Failed pattern match at KanColle.Expedition.Requirement line 74, column 36 - line 80, column 46: "+[n.constructor.name])}if(o instanceof a.Nothing)return!1;throw new Error("Failed pattern match at KanColle.Expedition.Requirement line 73, column 24 - line 81, column 21: "+[o.constructor.name])}},M=function(n){return function(t){var a=D(n);return e.filter(function(n){return!E(n)(t)})(a)}};n.Flagship=v,n.FleetLevel=S,n.FleetDrum=d,n.FleetShipWithDrum=P,n.FleetSTypeCount=g,n.FleetShipCount=y,n.ShipLevel=p,n.ShipTypeOneOf=m,n.checkFleet=E,n.checkShip=_,n.explainFleetRequirement=A,n.explainRequirements=b,n.explainShipRequirement=w,n.fromRawFleet=h,n.fromRawShip=C,n.getExpeditionRequirement=D,n.unsatisfiedRequirements=M}(PS["KanColle.Expedition.Requirement"]=PS["KanColle.Expedition.Requirement"]||{}),function(n){"use strict";var e=PS["Data.Array"],t=function(n){return function(e){return function(t){return{fuel:n(e.fuel)(t.fuel),ammo:n(e.ammo)(t.ammo),steel:n(e.steel)(t.steel),bauxite:n(e.bauxite)(t.bauxite)}}}},a=function(n){return{fuel:n,ammo:n,steel:n,bauxite:n}},r=function(n){return function(e){return{fuel:n(e.fuel),ammo:n(e.ammo),steel:n(e.steel),bauxite:n(e.bauxite)}}},u=e.range(1)(40);n.allExpeditionIds=u,n.mapResourceRows=r,n.resourceRowsFill=a,n.resourceRowsLiftOp=t}(PS["KanColle.Expedition.Base"]=PS["KanColle.Expedition.Base"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Expedition.Base"]),t=PS["Data.Monoid"],a=PS["Data.Semigroup"],r=PS["Data.Semiring"],u=function(n){return n},o=u,i=new a.Semigroup(function(n){return function(t){return e.resourceRowsLiftOp(r.add(r.semiringInt))(n)(t)}}),l=new t.Monoid(function(){return i},e.resourceRowsFill(0)),c=function(n){return function(e){return function(t){return function(a){return{fuel:n,ammo:e,steel:t,bauxite:a}}}}},f=function(n){return n},s=function(n){return 1===n?c(0)(30)(0)(0):2===n?c(0)(100)(30)(0):3===n?c(30)(30)(40)(0):4===n?c(0)(60)(0)(0):5===n?c(200)(200)(20)(20):6===n?c(0)(0)(0)(80):7===n?c(0)(0)(50)(30):8===n?c(50)(100)(50)(50):9===n?c(350)(0)(0)(0):10===n?c(0)(50)(0)(30):11===n?c(0)(0)(0)(250):12===n?c(50)(250)(200)(50):13===n?c(240)(300)(0)(0):14===n?c(0)(240)(200)(0):15===n?c(0)(0)(300)(400):16===n?c(500)(500)(200)(200):17===n?c(70)(70)(50)(0):18===n?c(0)(0)(300)(100):19===n?c(400)(0)(50)(30):20===n?c(0)(0)(150)(0):21===n?c(320)(270)(0)(0):22===n?c(0)(10)(0)(0):23===n?c(0)(20)(0)(100):24===n?c(500)(0)(0)(150):25===n?c(900)(0)(500)(0):26===n?c(0)(0)(0)(900):27===n?c(0)(0)(800)(0):28===n?c(0)(0)(900)(350):29===n?c(0)(0)(0)(100):30===n?c(0)(0)(0)(100):31===n?c(0)(30)(0)(0):32===n?c(50)(50)(50)(50):33===n?t.mempty(l):34===n?t.mempty(l):35===n?c(0)(0)(240)(280):36===n?c(480)(0)(200)(200):37===n?c(0)(380)(270)(0):38===n?c(420)(0)(200)(0):39===n?c(0)(0)(300)(0):40===n?c(300)(300)(0)(100):t.mempty(l)};n.getExpeditionIncomeBase=s,n.getIncomeBase=f,n.mkIncomeBase=o,n.incomeSemigroup=i,n.incomeMonoid=l}(PS["KanColle.Expedition.IncomeBase"]=PS["KanColle.Expedition.IncomeBase"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Int"]),t=(PS["Data.EuclideanRing"],PS["Data.Semiring"],PS["Data.Function"],{fuel:0,ammo:0,time:0}),a=function(n){var a=function(n){return e.toNumber(10*n|0)/100},r=function(n){return 60*n|0},u=function(n){return function(e){return(60*n|0)+e|0}},o=function(n){return function(e){return function(t){return{fuel:a(n),ammo:a(e),time:t}}}};return 1===n?o(3)(0)(15):2===n?o(5)(0)(30):3===n?o(3)(2)(20):4===n?o(5)(0)(50):5===n?o(5)(0)(u(1)(30)):6===n?o(3)(2)(40):7===n?o(5)(0)(r(1)):8===n?o(5)(2)(r(3)):9===n?o(5)(0)(r(4)):10===n?o(3)(0)(u(1)(30)):11===n?o(5)(0)(r(5)):12===n?o(5)(0)(r(8)):13===n?o(5)(4)(r(4)):14===n?o(5)(0)(r(6)):15===n?o(5)(4)(r(12)):16===n?o(5)(4)(r(15)):17===n?o(3)(4)(45):18===n?o(5)(2)(r(5)):19===n?o(5)(4)(r(6)):20===n?o(5)(4)(r(2)):21===n?o(8)(7)(u(2)(20)):22===n?o(8)(7)(r(3)):23===n?o(8)(8)(r(4)):24===n?o(9)(6)(u(8)(20)):25===n?o(5)(8)(r(40)):26===n?o(8)(8)(r(80)):27===n?o(8)(8)(r(20)):28===n?o(8)(8)(r(25)):29===n?o(9)(4)(r(24)):30===n?o(9)(7)(r(48)):31===n?o(5)(0)(r(2)):32===n?o(9)(3)(r(24)):33===n?o(5)(8)(15):34===n?o(5)(8)(30):35===n?o(8)(8)(r(7)):36===n?o(8)(8)(r(9)):37===n?o(8)(8)(u(2)(45)):38===n?o(8)(8)(u(2)(55)):39===n?o(9)(9)(r(30)):40===n?o(8)(7)(u(6)(50)):t},r=function(n){return function(t){return{fuel:e.floor(e.toNumber(t.fuel)*n.fuel),ammo:e.floor(e.toNumber(t.ammo)*n.ammo)}}};n.calcCost=r,n.getExpeditionCost=a}(PS["KanColle.Expedition.Cost"]=PS["KanColle.Expedition.Cost"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Array"]),t=PS["KanColle.Expedition.Requirement"],a=PS["KanColle.Expedition.IncomeBase"],r=PS["KanColle.Expedition.Cost"],u=PS["KanColle.Expedition.Base"],o=(PS["Control.Semigroupoid"],PS["Data.HeytingAlgebra"],PS["Data.Functor"]),i=function(n){return!e["null"](t.getExpeditionRequirement(n))},l=function(n){return{id:n,req:t.getExpeditionRequirement(n),income:a.getExpeditionIncomeBase(n),cost:r.getExpeditionCost(n)}},c=function(n){return function(a){return i(n)&&e["null"](t.unsatisfiedRequirements(n)(a))}},f=function(n){return e.filter(function(e){return c(e)(n)})(u.allExpeditionIds)},s=o.map(o.functorArray)(l)(u.allExpeditionIds);n.allExpeditions=s,n.checkExpedition=c,n.getAvailableExpeditions=f,n.getExpeditionInfo=l,n.validExpeditionId=i}(PS["KanColle.Expedition"]=PS["KanColle.Expedition"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Monoid"]),t=PS["Data.Array"],a=PS["Data.Array.Partial"],r=PS["Data.Foldable"],u=PS["Data.String"],o=(PS["Data.NonEmpty"],PS["KanColle.SType"],PS["KanColle.Expedition.Base"]),i=PS["KanColle.Expedition.Cost"],l=(PS["KanColle.Expedition.Requirement"],PS["KanColle.Util"]),c=PS["Data.Maybe"],f=PS["Partial.Unsafe"],s=PS["Data.Semigroup"],p=PS["Data.Show"],m=PS["Data.Functor"],v=PS["Data.Eq"],S=PS["KanColle.Generated.SType"],d=(PS["Data.Ring"],PS["Data.Ord"],PS["Data.Semiring"]),P=function(n){return n},g=function(n){var e=t.mapMaybe(function(n){return n.note})(n),r=t["null"](e);if(r)return"";if(!r){var o=function(n){return"{"+(f.unsafePartial(function(e){return a.head(e)(n)})+("}x"+p.show(p.showInt)(t.length(n))))},i=function(n){return t.cons(n.value0)(n.value1)},l=m.map(m.functorArray)(o)(m.map(m.functorArray)(i)(t.group(v.eqString)(e)));return u.joinWith(", ")(l)}throw new Error("Failed pattern match at KanColle.Expedition.Minimal line 198, column 20 - line 204, column 41: "+[r.constructor.name])},y=function(n){return n},D=new s.Semigroup(function(n){return function(e){return{shipCost:s.append(s.semigroupArray)(n.shipCost)(e.shipCost),fleet:s.append(s.semigroupArray)(n.fleet)(e.fleet)}}}),C=new e.Monoid(function(){return D},{shipCost:e.mempty(e.monoidArray),fleet:e.mempty(e.monoidArray)}),h=function(n){return{ammo:400,morale:100,stype:n,level:150,drumCount:4,note:c.Nothing.value}},w=function(n){return function(e){return function(t){return{shipCost:[{fuel:e,ammo:t}],fleet:[h(n)]}}}},A=function(n){return function(e){var t=h(n),a={};for(var r in t)({}).hasOwnProperty.call(t,r)&&(a[r]=t[r]);return a.note=new c.Just(e),a}},b=function(n){return function(e){return function(t){return function(a){return{shipCost:[{fuel:e,ammo:t}],fleet:[A(n)(a)]}}}}},_=b(S.CT.value)(35)(20)("香取"),E=function(n){var e=b(S.SS.value)(10)(20)("非马战神SS"),t=b(S.SS.value)(10)(10)("马战神");return 1===n?t:s.append(D)(t)(l.times(C)(n-1)(e))},M=function(n){return function(e){var a=t.length(e.fleet),r=a>=n;if(r)return e;if(!r)return s.append(D)(e)(E(n-a));throw new Error("Failed pattern match at KanColle.Expedition.Minimal line 142, column 25 - line 144, column 27: "+[r.constructor.name])}},F=b(S.AS.value)(35)(10)("大鲸"),k=function(n){var e=b(S.DD.value)(15)(15)("睦月级(改/改二皆可)");return l.times(C)(n)(e)},K=function(n){var e=b(S.CVL.value)(35)(35)("祥凤级"),t=b(S.CVL.value)(25)(25)("凤翔");return 1===n?t:s.append(D)(t)(l.times(C)(n-1)(e))},I=function(n){var e=b(S.CL.value)(25)(20)("天龙级"),t=b(S.CL.value)(25)(25)("球磨级"),a=2>=n;if(a)return l.times(C)(n)(e);if(!a)return s.append(D)(l.times(C)(2)(e))(l.times(C)(n-2)(t));throw new Error("Failed pattern match at KanColle.Expedition.Minimal line 125, column 12 - line 127, column 45: "+[a.constructor.name])},T=function(n){return l.times(C)(n)(b(S.CA.value)(35)(50)("古鹰级/青叶级"))},B=function(n){var e=b(S.BBV.value)(95)(105)("扶桑级改/伊势级改");return l.times(C)(n)(e)},N=function(n){var e=b(S.AV.value)(35)(35)("千岁级/瑞穗"),t=b(S.AV.value)(50)(10)("秋津洲"),a=3>=n;if(a)return l.times(C)(n)(e);if(!a)return s.append(D)(l.times(C)(3)(e))(t);throw new Error("Failed pattern match at KanColle.Expedition.Minimal line 100, column 12 - line 105, column 45: "+[a.constructor.name])},x=function(n){return 1===n?M(2)(e.mempty(C)):2===n?M(4)(e.mempty(C)):3===n?M(3)(e.mempty(C)):4===n?s.append(D)(I(1))(k(2)):5===n?M(4)(s.append(D)(I(1))(k(2))):6===n?M(4)(e.mempty(C)):7===n?M(6)(e.mempty(C)):8===n?M(6)(e.mempty(C)):9===n?M(4)(s.append(D)(I(1))(k(2))):10===n?M(3)(I(2)):11===n?M(4)(k(2)):12===n?M(4)(k(2)):13===n?M(6)(s.append(D)(I(1))(k(4))):14===n?M(6)(s.append(D)(I(1))(k(3))):15===n?M(6)(s.append(D)(K(2))(k(2))):16===n?M(6)(s.append(D)(I(1))(k(2))):17===n?M(6)(s.append(D)(I(1))(k(3))):18===n?M(6)(s.append(D)(K(3))(k(2))):19===n?M(6)(s.append(D)(B(2))(k(2))):20===n?s.append(D)(E(1))(I(1)):21===n?s.append(D)(I(1))(k(4)):22===n?M(6)(s.append(D)(T(1))(s.append(D)(I(1))(k(2)))):23===n?M(6)(s.append(D)(B(2))(k(2))):24===n?M(6)(s.append(D)(I(1))(k(4))):25===n?s.append(D)(T(2))(k(2)):26===n?s.append(D)(K(1))(s.append(D)(I(1))(k(2))):27===n?E(2):28===n?E(3):29===n?E(3):30===n?E(4):31===n?E(4):32===n?s.append(D)(_)(k(2)):33===n?k(2):34===n?k(2):35===n?M(6)(s.append(D)(K(2))(s.append(D)(T(1))(k(1)))):36===n?M(6)(s.append(D)(N(2))(s.append(D)(I(1))(k(1)))):37===n?s.append(D)(I(1))(k(5)):38===n?M(6)(k(5)):39===n?s.append(D)(F)(E(4)):40===n?M(6)(s.append(D)(I(1))(s.append(D)(N(2))(k(2)))):e.mempty(C)},V=function(){var n=function(n){var e=y(x(n)),t=g(e.fleet),a=i.getExpeditionCost(n),o=m.map(m.functorArray)(function(n){return i.calcCost(a)(n)})(e.shipCost),l=r.sum(r.foldableArray)(d.semiringInt)(m.map(m.functorArray)(function(n){return n.fuel})(o)),c=r.sum(r.foldableArray)(d.semiringInt)(m.map(m.functorArray)(function(n){return n.ammo})(o));return u.joinWith(" | ")([p.show(p.showInt)(n),p.show(p.showInt)(l),p.show(p.showInt)(c),t])},e=m.map(m.functorArray)(n)(o.allExpeditionIds),t="Expedition Id | Fuel | Ammo | Minimal Cost Fleet Composition\n --- | --- | --- | ---";return t+("\n"+u.joinWith("\n")(e))}();n.ECost=P,n.avCost=N,n.bbvCost=B,n.caCost=T,n.clCost=I,n.cvlCost=K,n.ddCost=k,n.dummyShip=h,n.fillSS=M,n.getECost=y,n.getExpeditionMinCost=x,n.katori=_,n.minimalCostMarkdownTable=V,n.mkECost=w,n.mkECostWithNote=b,n.pprFleetNotes=g,n.shipWithNote=A,n.ssCost=E,n.taigei=F,n.eCostSemigroup=D,n.eCostMonoid=C}(PS["KanColle.Expedition.Minimal"]=PS["KanColle.Expedition.Minimal"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Array"]),t=PS["Data.Int"],a=PS["Data.Function.Uncurried"],r=PS["Data.Foldable"],u=PS["KanColle.Expedition.Base"],o=PS["KanColle.Expedition.IncomeBase"],i=PS["KanColle.Expedition.Minimal"],l=PS["KanColle.Expedition.Cost"],c=PS["Data.Show"],f=(PS["Data.EuclideanRing"],PS["Data.Semigroup"],PS["Data.Ord"]),s=PS["Data.Functor"],p=PS["Data.Semiring"],m=(PS["Data.Ring"],PS["Data.Function"]),v=function(n){return function(e){var t=o.getIncomeBase(e);return n(t.fuel)(t.ammo)(t.steel)(t.bauxite)}},S=function(n){var e=function(e){return c.show(c.showNumber)(t.toNumber(e)/(t.toNumber(l.getExpeditionCost(n.eId).time)/60))},a=o.getIncomeBase(n.netIncome);return"Expedition #"+(c.show(c.showInt)(n.eId)+(": "+(e(a.fuel)+(" | "+(e(a.ammo)+(" | "+(e(a.steel)+(" | "+(e(a.bauxite)+(" | "+c.show(c.showNumber)(n.score)))))))))))},d=function(n){return function(e){return function(t){var a=f.greaterThanOrEq(n)(e)(t);if(a)return e;if(!a)return t;throw new Error("Failed pattern match at KanColle.Expedition.Evaluate line 44, column 14 - line 44, column 37: "+[a.constructor.name])}}},P=t.floor,g=function(n){return t.toNumber(n)/60},y=function(n){return function(e){return function(a){var u=o.getIncomeBase(e),i=s.map(s.functorArray)(function(e){return P(t.toNumber(e.fuel)*n.fuel)})(a.shipCost),l=s.map(s.functorArray)(function(e){return P(t.toNumber(e.ammo)*n.ammo)})(a.shipCost);return o.mkIncomeBase({fuel:u.fuel-r.sum(r.foldableArray)(p.semiringInt)(i),ammo:u.ammo-r.sum(r.foldableArray)(p.semiringInt)(l),steel:u.steel,bauxite:u.bauxite})}}},D=function(n){var a=f.comparing(f.ordNumber)(function(n){return n.score}),r=function(e){var a=l.getExpeditionCost(e),r=y(a)(o.getExpeditionIncomeBase(e))(i.getExpeditionMinCost(e)),u=t.toNumber(n(r))/g(a.time);return{eId:e,netIncome:r,time:a.time,score:u}},c=s.map(s.functorArray)(r)(u.allExpeditionIds);return e.sortBy(m.flip(a))(c)},C=function(n){return function(a){return function(r){var c=f.comparing(f.ordNumber)(function(n){return n.score}),p=function(e){var u=l.getExpeditionCost(e),c=a*t.toNumber(d(f.ordInt)(0)(u.time-r)),s=d(f.ordInt)(u.time)(r),p=y(u)(o.getExpeditionIncomeBase(e))(i.getExpeditionMinCost(e)),m=t.toNumber(n(p))/g(s),v=m-c;return{eId:e,netIncome:p,time:s,score:v}},v=s.map(s.functorArray)(p)(u.allExpeditionIds);return e.sortBy(m.flip(c))(v)}}},h=function(n){var e=o.getIncomeBase(n.netIncome),a=function(e){return t.toNumber(e)/g(n.time)};return{eId:n.eId,result:[a(e.fuel),a(e.ammo),a(e.steel),a(e.bauxite),n.score]}},w=function(n){return function(e){return function(t){return s.map(s.functorArray)(h)(C(v(a.runFn4(n)))(e)(t))}}},A=a.mkFn3(w),b=function(n){return s.map(s.functorArray)(h)(D(v(a.runFn4(n))))};n.evalNetIncomeHourlyJS=b,n.evalNetIncomeWithAfkMinutesJS=A,n["evalNetIncomeWithAfkMinutesJS'"]=w,n.evalResultToJS=h,n.incomeDiff=y,n.minToHour=g,n.nToFloor=P,n.ordMax=d,n.showEvalResult=S,n.simpleEvalCost=v,n.sortByHourlyGain=D,n.sortWithAfkTime=C}(PS["KanColle.Expedition.Evaluate"]=PS["KanColle.Expedition.Evaluate"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Expedition.Base"]),t=PS["KanColle.Expedition.IncomeBase"],a=PS["Data.Int"],r=(PS["Data.Ord"],PS["Data.Semiring"],PS["Control.Semigroupoid"],PS["Data.Semigroup"],PS["Data.Show"]),u=function(n){return function(r){var u=function(){var e=n.landingCraft>=4;if(e)return 4;if(!e)return n.landingCraft;throw new Error("Failed pattern match at KanColle.Expedition.GrossIncome line 42, column 9 - line 44, column 30: "+[e.constructor.name])}(),o=1+.05*a.toNumber(u),i=t.getIncomeBase(r),l=function(){if(n.greatSuccess)return 1.5;if(!n.greatSuccess)return 1;throw new Error("Failed pattern match at KanColle.Expedition.GrossIncome line 46, column 16 - line 47, column 5: "+[n.greatSuccess.constructor.name])}(),c=function(n){return function(n){return a.floor(function(n){return n*l}(n))}(function(n){return n*o}(a.toNumber(n)))};return e.mapResourceRows(c)(i)}},o=function(n){return"GrossIncome ("+(r.show(r.showInt)(n.fuel)+(", "+(r.show(r.showInt)(n.ammo)+(", "+(r.show(r.showInt)(n.steel)+(", "+(r.show(r.showInt)(n.bauxite)+")")))))))},i=function(n){return n},l={greatSuccess:!1,landingCraft:0},c=u(l);n.getGrossIncome=i,n.showGrossIncome=o,n.toGrossIncome=c,n.withFactorToGrossIncome=u}(PS["KanColle.Expedition.GrossIncome"]=PS["KanColle.Expedition.GrossIncome"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Util"]),t=PS["KanColle.Expedition.Evaluate"],a=PS["KanColle.Expedition.IncomeBase"],r=PS["KanColle.Expedition.Cost"],u=PS["KanColle.Expedition.Minimal"],o=PS["KanColle.Expedition.Base"],i=PS["Data.Maybe"],l=PS["Data.String"],c=PS["Data.Int"],f=PS["Data.Foldable"],s=PS["Data.Show"],p=PS["Data.Functor"],m=PS["Data.Ord"],v=(PS["Data.EuclideanRing"],PS["Data.Monoid"]),S=PS["Data.Semiring"],d=function(n){var e=a.getIncomeBase(n.netIncome);return l.joinWith(" | ")([s.show(s.showInt)(n.eId),s.show(s.showInt)(e.fuel),s.show(s.showInt)(e.ammo),s.show(s.showInt)(e.steel),s.show(s.showInt)(e.bauxite)])},P=function(n){var t=function(n){return i.fromMaybe("ERR")(e.toFixed(3)(n))};return l.joinWith(" | ")([s.show(s.showInt)(n.eId),t(n.hourly.fuel),t(n.hourly.ammo),t(n.hourly.steel),t(n.hourly.bauxite)])},g=function(){var n=function(n){var e=u.getExpeditionMinCost(n),o=a.getExpeditionIncomeBase(n),i=r.getExpeditionCost(n),l=t.incomeDiff(i)(o)(e);return{eId:n,netIncome:l}};return p.map(p.functorArray)(n)(o.allExpeditionIds)}(),y=function(n){var e=function(e){var u=t.ordMax(m.ordInt)(r.getExpeditionCost(e.eId).time)(n),o=function(n){return c.toNumber(n)/(c.toNumber(u)/60)},i=a.getIncomeBase(e.netIncome);return{eId:e.eId,hourly:{fuel:o(i.fuel),ammo:o(i.ammo),steel:o(i.steel),bauxite:o(i.bauxite)}}};return p.map(p.functorArray)(e)(g)},D=function(n){return function(e){return function(t){return{eIds:f.foldMap(e)(v.monoidArray)(function(n){return[n.eId]})(t),hourly:{fuel:f.sum(e)(S.semiringNumber)(p.map(n)(function(n){return n.hourly.fuel})(t)),ammo:f.sum(e)(S.semiringNumber)(p.map(n)(function(n){return n.hourly.ammo})(t)),steel:f.sum(e)(S.semiringNumber)(p.map(n)(function(n){return n.hourly.steel})(t)),bauxite:f.sum(e)(S.semiringNumber)(p.map(n)(function(n){return n.hourly.bauxite})(t))}}}}};n.mergeHNetIncome=D,n.netIncomeTable=g,n.netIncomeWithAfkTime=y,n.showNetHourlyIncome=P,n.showNetIncome=d}(PS["KanColle.Expedition.NetIncome"]=PS["KanColle.Expedition.NetIncome"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.SType"],PS["Data.Eq"]),t=PS["Data.Ord"],a=PS["Data.Ordering"],r=PS["KanColle.Generated.SType"],u=(PS["Data.HeytingAlgebra"],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}(),l=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}(),s=function(){function n(){}return n.value=new n,n}(),p=function(){function n(){}return n.value=new n,n}(),m=function(){function n(){}return n.value=new n,n}(),v=function(n){return function(t){if(n instanceof u)return e.eq(r.eqSType)(t)(r.DD.value);if(n instanceof o)return e.eq(r.eqSType)(t)(r.CL.value);if(n instanceof i)return e.eq(r.eqSType)(t)(r.CV.value)||e.eq(r.eqSType)(t)(r.CVL.value)||e.eq(r.eqSType)(t)(r.AV.value)||e.eq(r.eqSType)(t)(r.CVB.value);if(n instanceof l)return e.eq(r.eqSType)(t)(r.SS.value)||e.eq(r.eqSType)(t)(r.SSV.value);if(n instanceof c)return e.eq(r.eqSType)(t)(r.CA.value);if(n instanceof f)return e.eq(r.eqSType)(t)(r.BBV.value);if(n instanceof s)return e.eq(r.eqSType)(t)(r.AS.value);if(n instanceof p)return e.eq(r.eqSType)(t)(r.CT.value);if(n instanceof m)return e.eq(r.eqSType)(t)(r.AV.value);throw new Error("Failed pattern match at KanColle.Expedition.New.SType line 25, column 19 - line 40, column 19: "+[n.constructor.name])}},S=new e.Eq(function(n){return function(e){return n instanceof u&&e instanceof u?!0:n instanceof o&&e instanceof o?!0:n instanceof i&&e instanceof i?!0:n instanceof l&&e instanceof l?!0:n instanceof c&&e instanceof c?!0:n instanceof f&&e instanceof f?!0:n instanceof s&&e instanceof s?!0:n instanceof p&&e instanceof p?!0:n instanceof m&&e instanceof m?!0:!1}}),d=new t.Ord(function(){return S},function(n){return function(e){if(n instanceof u&&e instanceof u)return a.EQ.value;if(n instanceof u)return a.LT.value;if(e instanceof u)return a.GT.value;if(n instanceof o&&e instanceof o)return a.EQ.value;if(n instanceof o)return a.LT.value;if(e instanceof o)return a.GT.value;if(n instanceof i&&e instanceof i)return a.EQ.value;if(n instanceof i)return a.LT.value;if(e instanceof i)return a.GT.value;if(n instanceof l&&e instanceof l)return a.EQ.value;if(n instanceof l)return a.LT.value;if(e instanceof l)return a.GT.value;if(n instanceof c&&e instanceof c)return a.EQ.value;if(n instanceof c)return a.LT.value;if(e instanceof c)return a.GT.value;if(n instanceof f&&e instanceof f)return a.EQ.value;if(n instanceof f)return a.LT.value;if(e instanceof f)return a.GT.value;if(n instanceof s&&e instanceof s)return a.EQ.value;if(n instanceof s)return a.LT.value;if(e instanceof s)return a.GT.value;if(n instanceof p&&e instanceof p)return a.EQ.value;if(n instanceof p)return a.LT.value;if(e instanceof p)return a.GT.value;if(n instanceof m&&e instanceof m)return a.EQ.value;throw new Error("Failed pattern match at KanColle.Expedition.New.SType line 22, column 1 - line 22, column 38: "+[n.constructor.name,e.constructor.name])}});n.DD=u,n.CL=o,n.CVLike=i,n.SSLike=l,n.CA=c,n.BBV=f,n.AS=s,n.CT=p,n.AV=m,n.matchSType=v,n.eqSType=S,n.ordSType=d}(PS["KanColle.Expedition.New.SType"]=PS["KanColle.Expedition.New.SType"]||{}),function(n){"use strict";var e=function(){function n(){}return n.value=new n,n}(),t=function(){function n(){}return n.value=new n,n}(),a=function(){function n(){}return n.value=new n,n}(),r=function(){function n(){}return n.value=new n,n}(),u=function(){function n(){}return n.value=new n,n}(),o=function(){function n(){}return n.value=new n,n}(),i=function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),l=function(n){return 1===n?e.value:2===n?t.value:3===n?a.value:10===n?r.value:11===n?u.value:12===n?o.value:new i(n)};n.Bucket=e,n.Flamethrower=t,n.DevMat=a,n.FCoinSmall=r,n.FCoinMedium=u,n.FCoinLarge=o,n.Other=i,n.itemFromInt=l}(PS["KanColle.Expedition.New.Item"]=PS["KanColle.Expedition.New.Item"]||{}),function(n){"use strict";var e=(PS["Data.Maybe"],PS["KanColle.Expedition.New.SType"],PS["KanColle.Expedition.Base"],PS["KanColle.Expedition.New.Item"],function(n){return n}),t=function(n){return n},a=function(n){return n},r=function(n){return n},u=function(n){return n},o=function(n){return function(e){return{fuel:n,ammo:e}}};n.ACost=u,n.FACost=r,n.FNI=a,n.MCost=t,n.Rsc=e,n.mkMC=o}(PS["KanColle.Expedition.New.Types"]=PS["KanColle.Expedition.New.Types"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Partial.Unsafe"]),t=PS.Partial,a=PS["Data.Array"],r=PS["Data.Traversable"],u=PS["Data.Unfoldable"],o=PS["Data.Tuple"],i=PS["Data.Functor"],l=PS["Control.Apply"],c=PS["Control.Applicative"],f=PS["Data.Foldable"],s=(PS["Control.Semigroupoid"],PS["Data.Eq"],PS["Data.Boolean"]),p=(PS["Data.HeytingAlgebra"],PS["Data.Ord"],PS["Data.Ring"],PS["Data.Function"]),m=function(n){return n},v=function(n){return n},S=function(n){return m(u.replicate(u.unfoldableArray)(40)(n))},d=function(n){if(40===a.length(n))return n;if(s.otherwise)return e.unsafePartial(function(n){return t.crash(n)("expecting exactly 40 elements")});throw new Error("Failed pattern match at KanColle.Expedition.New.EArray line 26, column 1 - line 28, column 72: "+[n.constructor.name])},P=function(n){return function(a){if(a>=1&&40>=a)return e.unsafePartial(function(e){return n[a-1]});if(s.otherwise)return e.unsafePartial(function(n){return t.crash(n)("index out of range")});throw new Error("Failed pattern match at KanColle.Expedition.New.EArray line 31, column 1 - line 33, column 61: "+[n.constructor.name,a.constructor.name])}},g=new i.Functor(function(n){return function(e){return i.map(i.functorArray)(n)(e)}}),y=new f.Foldable(function(n){return function(e){return function(t){return f.foldMap(f.foldableArray)(n)(e)(t)}}},function(n){return function(e){return function(t){return f.foldl(f.foldableArray)(n)(e)(t)}}},function(n){return function(e){return function(t){return f.foldr(f.foldableArray)(n)(e)(t)}}}),D=new r.Traversable(function(){return y},function(){return g},function(n){return function(e){return i.map(n["__superclass_Control.Apply.Apply_0"]()["__superclass_Data.Functor.Functor_0"]())(m)(r.sequence(r.traversableArray)(n)(e))}},function(n){return function(e){return function(t){return i.map(n["__superclass_Control.Apply.Apply_0"]()["__superclass_Data.Functor.Functor_0"]())(m)(r.traverse(r.traversableArray)(n)(e)(t))}}}),C=function(n){return function(e){return i.map(i.functorArray)(o.snd)(a.filter(o.fst)(a.zip(n)(e)))}},h=function(n){return function(e){return a.zipWith(p.apply)(n)(e)}},w=new l.Apply(function(){return g},h),A=new c.Applicative(function(){return w},S),b=a.range(1)(40),_=function(n){return function(e){return a.zipWith(n)(b)(e)}};n.extractEA=C,n.imapEA=_,n.indEA=P,n.mkEA=d,n.unEA=v,n.functorEArray=g,n.applyEArray=w,n.applicativeEArray=A,n.foldableEArray=y,n.traversableEArray=D}(PS["KanColle.Expedition.New.EArray"]=PS["KanColle.Expedition.New.EArray"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=(PS["KanColle.Expedition.New.Types"],PS["KanColle.Expedition.New.EArray"]),a=PS["Data.Unfoldable"],r=PS["Data.Array"],u=(PS["Data.Ord"],PS["Data.Semigroup"]),o=(PS["Data.Ring"],PS["KanColle.Expedition.New.SType"]),i=PS["Data.Functor"],l=function(){var n=function(n){return function(t){return a.replicate(a.unfoldableArray)(n)(new e.Just(t))}},i=function(n){return function(t){var o=r.length(t)=n)return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(10)(10)));if(6>=n)return c.bind(a.bindMaybe)(t(1))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-1)(e.mkMC(10)(20))))});if(l.otherwise)return a.Nothing.value;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 1 - line 146, column 21: "+[n.constructor.name])},u=function(n){return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(15)(15)))},o=function(n){if(1>=n)return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(30)(30)));if(2>=n)return c.bind(a.bindMaybe)(o(1))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-1)(e.mkMC(35)(40))))});if(4>=n)return c.bind(a.bindMaybe)(o(2))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-2)(e.mkMC(35)(45))))});if(6>=n)return c.bind(a.bindMaybe)(o(4))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-4)(e.mkMC(40)(40))))});if(l.otherwise)return a.Nothing.value;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 1 - line 146, column 21: "+[n.constructor.name])},i=function(n){return c.bind(a.bindMaybe)(s.guard(a.monadZeroMaybe)(2>=n))(function(){return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(35)(20)))})},m=function(n){if(2>=n)return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(25)(25)));if(6>=n)return c.bind(a.bindMaybe)(m(2))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-2)(e.mkMC(25)(30)))); });if(l.otherwise)return a.Nothing.value;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 1 - line 146, column 21: "+[n.constructor.name])},v=function(n){if(1>=n)return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(35)(55)));if(4>=n)return c.bind(a.bindMaybe)(v(1))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-1)(e.mkMC(35)(65))))});if(6>=n)return c.bind(a.bindMaybe)(v(4))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-4)(e.mkMC(40)(70))))});if(l.otherwise)return a.Nothing.value;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 1 - line 146, column 21: "+[n.constructor.name])},S=function(n){if(2>=n)return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(95)(105)));if(4>=n)return c.bind(a.bindMaybe)(S(2))(function(t){return new a.Just(f.append(f.semigroupArray)(t)(r.replicate(r.unfoldableArray)(n-2)(e.mkMC(105)(140))))});if(l.otherwise)return a.Nothing.value;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 1 - line 146, column 21: "+[n.constructor.name])},d=function(n){if(2>=n)return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(35)(45)));if(3>=n)return c.bind(a.bindMaybe)(d(2))(function(n){return new a.Just(f.append(f.semigroupArray)(n)([e.mkMC(40)(45)]))});if(4>=n)return c.bind(a.bindMaybe)(d(3))(function(n){return new a.Just(f.append(f.semigroupArray)(n)([e.mkMC(40)(50)]))});if(5>=n)return c.bind(a.bindMaybe)(d(4))(function(n){return new a.Just(f.append(f.semigroupArray)(n)([e.mkMC(60)(15)]))});if(l.otherwise)return a.Nothing.value;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 1 - line 146, column 21: "+[n.constructor.name])},P=function(n){return c.bind(a.bindMaybe)(s.guard(a.monadZeroMaybe)(1>=n))(function(){return new a.Just(r.replicate(r.unfoldableArray)(n)(e.mkMC(35)(10)))})};if(n instanceof p.DD)return u;if(n instanceof p.CL)return m;if(n instanceof p.CVLike)return o;if(n instanceof p.SSLike)return t;if(n instanceof p.CA)return v;if(n instanceof p.BBV)return S;if(n instanceof p.AS)return P;if(n instanceof p.CT)return i;if(n instanceof p.AV)return d;throw new Error("Failed pattern match at KanColle.Expedition.New.CostModel line 50, column 25 - line 59, column 17: "+[n.constructor.name])},y=function(n){return function(e){var r=t.fromFoldableWith(p.ordSType)(m.foldableArray)(v.add(v.semiringInt))(S.map(S.functorArray)(function(n){return new u.Tuple(n,1)})(e)),i=S.map(d.functorList)(function(e){return n(e.value0)(e.value1)})(t.toList(r));return S.map(a.functorMaybe)(m.fold(d.foldableList)(P.monoidArray))(o.sequence(d.traversableList)(a.applicativeMaybe)(i))}},D=function(n){return function(e){return{fuel:i.floor(e.fuelCostPercent*i.toNumber(n.fuel)),ammo:i.floor(e.ammoCostPercent*i.toNumber(n.ammo))}}},C=function(n){return function(e){var t={fuel:0,ammo:0},a=function(n){return function(t){var a=D(t)(e);return{fuel:n.fuel+a.fuel|0,ammo:n.ammo+a.ammo|0}}};return m.foldl(m.foldableArray)(a)(t)(n)}};n.calcActualCost=D,n.calcFleetActualCost=C,n.calcFleetMaxCost=y,n.normalCostModel=g}(PS["KanColle.Expedition.New.CostModel"]=PS["KanColle.Expedition.New.CostModel"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Expedition.New.Types"],PS["Data.Ring"],function(n){return function(e){return{fuel:n.fuel-e.fuel,ammo:n.ammo-e.ammo,steel:n.steel,bauxite:n.bauxite}}});n.calcFleetNetIncome=e}(PS["KanColle.Expedition.New.NetIncome"]=PS["KanColle.Expedition.New.NetIncome"]||{}),function(n){"use strict";var e=PS["KanColle.Expedition.New.EArray"],t=(PS["KanColle.Expedition.New.Types"],function(){var n=function(n){return function(e){return function(t){return function(a){return{fuel:n,ammo:e,steel:t,bauxite:a}}}}};return e.mkEA([n(0)(30)(0)(0),n(0)(100)(30)(0),n(30)(30)(40)(0),n(0)(60)(0)(0),n(200)(200)(20)(20),n(0)(0)(0)(80),n(0)(0)(50)(30),n(50)(100)(50)(50),n(350)(0)(0)(0),n(0)(50)(0)(30),n(0)(0)(0)(250),n(50)(250)(200)(50),n(240)(300)(0)(0),n(0)(240)(200)(0),n(0)(0)(300)(400),n(500)(500)(200)(200),n(70)(70)(50)(0),n(0)(0)(300)(100),n(400)(0)(50)(30),n(0)(0)(150)(0),n(320)(270)(0)(0),n(0)(10)(0)(0),n(0)(20)(0)(100),n(500)(0)(0)(150),n(900)(0)(500)(0),n(0)(0)(0)(900),n(0)(0)(800)(0),n(0)(0)(900)(350),n(0)(0)(0)(100),n(0)(0)(0)(100),n(0)(30)(0)(0),n(50)(50)(50)(50),n(0)(0)(0)(0),n(0)(0)(0)(0),n(0)(0)(240)(280),n(480)(0)(200)(200),n(0)(380)(270)(0),n(420)(0)(200)(0),n(0)(0)(300)(0),n(300)(300)(0)(100)])}()),a=e.indEA(t);n.getResource=a,n.resources=t}(PS["KanColle.Expedition.New.Resource"]=PS["KanColle.Expedition.New.Resource"]||{}),function(n){"use strict";n.kcExpeditionRaw=[{api_id:1,api_time:15,api_use_fuel:.3,api_use_bull:0,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:2,api_time:30,api_use_fuel:.5,api_use_bull:0,api_win_item1:[1,1],api_win_item2:[0,0]},{api_id:3,api_time:20,api_use_fuel:.3,api_use_bull:.2,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:4,api_time:50,api_use_fuel:.5,api_use_bull:0,api_win_item1:[1,1],api_win_item2:[10,1]},{api_id:5,api_time:90,api_use_fuel:.5,api_use_bull:0,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:6,api_time:40,api_use_fuel:.3,api_use_bull:.2,api_win_item1:[10,1],api_win_item2:[0,0]},{api_id:7,api_time:60,api_use_fuel:.5,api_use_bull:0,api_win_item1:[2,1],api_win_item2:[0,0]},{api_id:8,api_time:180,api_use_fuel:.5,api_use_bull:.2,api_win_item1:[2,2],api_win_item2:[3,1]},{api_id:9,api_time:240,api_use_fuel:.5,api_use_bull:0,api_win_item1:[10,1],api_win_item2:[1,2]},{api_id:10,api_time:90,api_use_fuel:.3,api_use_bull:0,api_win_item1:[1,1],api_win_item2:[2,1]},{api_id:11,api_time:300,api_use_fuel:.5,api_use_bull:0,api_win_item1:[10,1],api_win_item2:[1,1]},{api_id:12,api_time:480,api_use_fuel:.5,api_use_bull:0,api_win_item1:[11,1],api_win_item2:[3,1]},{api_id:13,api_time:240,api_use_fuel:.5,api_use_bull:.4,api_win_item1:[1,2],api_win_item2:[10,1]},{api_id:14,api_time:360,api_use_fuel:.5,api_use_bull:0,api_win_item1:[1,1],api_win_item2:[3,1]},{api_id:15,api_time:720,api_use_fuel:.5,api_use_bull:.4,api_win_item1:[12,1],api_win_item2:[3,1]},{api_id:16,api_time:900,api_use_fuel:.5,api_use_bull:.4,api_win_item1:[2,2],api_win_item2:[3,2]},{api_id:17,api_time:45,api_use_fuel:.3,api_use_bull:.4,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:18,api_time:300,api_use_fuel:.5,api_use_bull:.2,api_win_item1:[1,1],api_win_item2:[0,0]},{api_id:19,api_time:360,api_use_fuel:.5,api_use_bull:.4,api_win_item1:[10,1],api_win_item2:[3,1]},{api_id:20,api_time:120,api_use_fuel:.5,api_use_bull:.4,api_win_item1:[3,1],api_win_item2:[10,1]},{api_id:21,api_time:140,api_use_fuel:.8,api_use_bull:.7,api_win_item1:[10,1],api_win_item2:[0,0]},{api_id:22,api_time:180,api_use_fuel:.8,api_use_bull:.7,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:23,api_time:240,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:24,api_time:500,api_use_fuel:.9,api_use_bull:.6,api_win_item1:[3,2],api_win_item2:[1,1]},{api_id:25,api_time:2400,api_use_fuel:.5,api_use_bull:.8,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:26,api_time:4800,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[1,3],api_win_item2:[0,0]},{api_id:27,api_time:1200,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[3,1],api_win_item2:[10,2]},{api_id:28,api_time:1500,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[3,2],api_win_item2:[11,2]},{api_id:29,api_time:1440,api_use_fuel:.9,api_use_bull:.4,api_win_item1:[3,1],api_win_item2:[10,1]},{api_id:30,api_time:2880,api_use_fuel:.9,api_use_bull:.7,api_win_item1:[3,3],api_win_item2:[0,0]},{api_id:31,api_time:120,api_use_fuel:.5,api_use_bull:0,api_win_item1:[10,1],api_win_item2:[0,0]},{api_id:32,api_time:1440,api_use_fuel:.9,api_use_bull:.3,api_win_item1:[12,1],api_win_item2:[3,3]},{api_id:33,api_time:15,api_use_fuel:.5,api_use_bull:.8,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:34,api_time:30,api_use_fuel:.5,api_use_bull:.8,api_win_item1:[0,0],api_win_item2:[0,0]},{api_id:35,api_time:420,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[10,2],api_win_item2:[3,1]},{api_id:36,api_time:540,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[11,2],api_win_item2:[1,1]},{api_id:37,api_time:165,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[10,1],api_win_item2:[0,0]},{api_id:38,api_time:175,api_use_fuel:.8,api_use_bull:.8,api_win_item1:[10,1],api_win_item2:[0,0]},{api_id:39,api_time:1800,api_use_fuel:.9,api_use_bull:.9,api_win_item1:[1,2],api_win_item2:[11,1]},{api_id:40,api_time:410,api_use_fuel:.8,api_use_bull:.7,api_win_item1:[10,3],api_win_item2:[1,1]}]}(PS["KanColle.Expedition.New.Info"]=PS["KanColle.Expedition.New.Info"]||{}),function(n){"use strict";var e=PS["KanColle.Expedition.New.Info"],t=PS["KanColle.Expedition.New.EArray"],a=(PS["KanColle.Expedition.New.Types"],PS["KanColle.Expedition.New.Resource"]),r=PS["Data.Array"],u=PS["Partial.Unsafe"],o=PS["Data.Maybe"],i=(PS.Prelude,PS["KanColle.Expedition.New.Item"]),l=PS["Data.Functor"],c=function(n){var e=function(n){var e=u.unsafePartial(function(n){return r.unsafeIndex(n)})(n)(0);return 0===e?o.Nothing.value:new o.Just({item:i.itemFromInt(e),maxCount:u.unsafePartial(function(n){return r.unsafeIndex(n)})(n)(1)})};return{id:n.api_id,timeInMin:n.api_time,fuelCostPercent:n.api_use_fuel,ammoCostPercent:n.api_use_bull,item1:e(n.api_win_item1),item2:e(n.api_win_item2),resource:a.getResource(n.api_id)}},f=t.mkEA(l.map(l.functorArray)(c)(e.kcExpeditionRaw)),s=t.indEA(f);n.expedInfoTable=f,n.getInformation=s}(PS["KanColle.Expedition.New.Info"]=PS["KanColle.Expedition.New.Info"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Expedition.Base"],PS["KanColle.Expedition.New.Types"],PS["Data.Int"]),t=(PS["Data.Semiring"],PS["Data.Ord"]),a=(PS["Data.EuclideanRing"],function(n){return function(e){return function(t){return n(e)}}}),r=function(n){var e=function(e){return e.fuel*n.fuel+e.ammo*n.ammo+e.steel*n.steel+e.bauxite*n.bauxite};return a(e)},u=function(n){return function(a){return function(r){var u=t.max(t.ordInt)(r)(a.timeInMin),o=function(n){return e.toNumber(60*n|0)/e.toNumber(u)};return{fuel:o(n.fuel),ammo:o(n.ammo),steel:o(n.steel),bauxite:o(n.bauxite)}}}};n.calcResourcePerHr=u,n.resourceScorer=a,n.simpleResourceScorer=r}(PS["KanColle.Expedition.New.Scorer"]=PS["KanColle.Expedition.New.Scorer"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"],PS["KanColle.Expedition.Base"],PS["KanColle.Expedition.New.Types"],PS["KanColle.Expedition.New.MinCompo"],PS["KanColle.Expedition.New.CostModel"],PS["KanColle.Expedition.New.NetIncome"],PS["KanColle.Expedition.New.Resource"],PS["KanColle.Expedition.New.EArray"],PS["KanColle.Expedition.New.Info"],PS["KanColle.Expedition.New.Scorer"],PS["Data.Array"],PS["Data.List"],PS["Data.Function"],PS["Data.Traversable"],PS["Data.Unfoldable"],PS["KanColle.Util"],PS["Data.Int"]),t=(PS["Data.Semiring"],function(){function n(n){this.value0=n}return n.create=function(e){return new n(e)},n}(),function(n){this.getModifier=n}),a=(new t(function(n){var t=function(){if(n.greatSuccess)return 1.5;if(!n.greatSuccess)return 1;throw new Error("Failed pattern match at KanColle.Expedition.New.Config line 47, column 14 - line 49, column 1: "+[n.greatSuccess.constructor.name])}();return t*(1+.02*e.toNumber(n.daihatsuCount))}),function(n){return n.getModifier});new t(function(n){return n});n.IncomeModifier=t,n.getModifier=a}(PS["KanColle.Expedition.New.Config"]=PS["KanColle.Expedition.New.Config"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=(PS["Data.Monoid.Endo"],PS["Data.Map"]),a=PS["KanColle.Expedition.New.SType"],r=(PS["Control.Semigroupoid"],PS["Data.Semiring"],function(n){return function(r){var u=function(n){return e.Just.create(e.maybe(r)(function(n){return n+r|0})(n))};return t.alter(a.ordSType)(u)(n)}});n.addReq=r}(PS["KanColle.Expedition.New.Requirement"]=PS["KanColle.Expedition.New.Requirement"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["KanColle.Expedition.NetIncome"]),t=PS["Data.Array"],a=PS["Data.Traversable"],r=PS["Data.Function.Uncurried"],u=PS["Data.Function"],o=PS["Data.String"],i=PS["Data.Maybe"],l=PS["KanColle.Util"],c=PS["Control.Monad.Eff.Console"],f=PS["Control.Monad.Eff"],s=PS["Data.Show"],p=PS["Data.Eq"],m=(PS["Data.Semiring"],PS["Data.Ring"],PS["Data.Functor"]),v=(PS["Control.Semigroupoid"],PS["Data.List.Types"]),S=PS["Data.Foldable"],d=PS["Data.Ord"],P=(PS["Control.Bind"],PS["Control.Applicative"],PS["Data.Unit"]),g=function(n){var e=function(n){return i.fromMaybe("ERR")(l.toFixed(3)(n))};return o.joinWith(" | ")([s.show(s.showArray(s.showInt))(n.eIds),e(n.hourly.fuel),e(n.hourly.ammo),e(n.hourly.steel),e(n.hourly.bauxite),e(n.resourceScore)])},y=function(n){return function(a){return function(r){return function(o){return function(c){return function(f){return function(s){var P=function(n){return i.isJust(t.elemIndex(p.eqInt)(n.eId)(s))},g=function(n){var e=n.hourly.fuel*a+n.hourly.ammo*r+n.hourly.steel*o+n.hourly.bauxite*c;return{eIds:n.eIds,hourly:n.hourly,resourceScore:e-0}},y=e.netIncomeWithAfkTime(f),D=t.filter(P)(y),C=m.map(m.functorArray)(function(n){return g(e.mergeHNetIncome(v.functorList)(v.foldableList)(n))})(l.chooseN(S.foldableArray)(D)(n));return t.sortBy(u.on(u.flip(d.compare(d.ordNumber)))(function(n){return n.resourceScore}))(C)}}}}}}},D=r.mkFn7(y),C=y(3),h=r.mkFn6(C),w=function(n){return function(a){return function(r){return function(o){return function(i){return function(c){return function(f){var s=function(n){var e=n.hourly.fuel*r+n.hourly.ammo*o+n.hourly.steel*i+n.hourly.bauxite*c;return{eIds:n.eIds,hourly:n.hourly,resourceScore:e-0*a}},p=m.map(m.functorArray)(function(n){return s(e.mergeHNetIncome(v.functorList)(v.foldableList)(n))})(l.chooseN(S.foldableArray)(e.netIncomeWithAfkTime(f))(n));return t.sortBy(u.on(u.flip(d.compare(d.ordNumber)))(function(n){return n.resourceScore}))(p)}}}}}}},A=w(3),b=function(n){return function(e){return function(r){return function(u){return function(o){return function(i){return function(){return m["void"](f.functorEff)(a.traverse(a.traversableArray)(f.applicativeEff)(function(n){return c.log(g(n))})(t.take(50)(A(i)(n)(e)(r)(u)(o))))(),P.unit}}}}}}},_=function(n){return function(e){return function(a){return function(r){return function(u){return t.take(50)(A(0)(n)(e)(a)(r)(u))}}}}},E=r.mkFn5(_);n.calcNetIncome=A,n.calcNetIncomeWithFleetCount=w,n.calcWithExpeditionIds=C,n.calcWithExpeditionIdsFleetCount=y,n.calcWithExpeditionIdsFleetCountJS=D,n.calcWithExpeditionIdsJS=h,n.dbg=b,n.quickCalc=_,n.quickCalcJS=E,n.showNI=g}(PS["KanColle.Expedition.Plan"]=PS["KanColle.Expedition.Plan"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Foldable"]),t=PS["Data.Maybe"],a=PS["Data.Array"],r=PS["Data.Nullable"],u=(PS["KanColle.SType"],PS["KanColle.Expedition.Base"]),o=PS["KanColle.Expedition.Requirement"],i=PS["Data.Functor"],l=PS["KanColle.Generated.SType"],c=(PS["Control.Semigroupoid"],PS["Data.HeytingAlgebra"]),f=PS["Data.Eq"],s=(PS["Data.Ord"],PS["Data.Semiring"]),p=PS["Data.Function"],m=function(n){var e={};for(var t in n)({}).hasOwnProperty.call(n,t)&&(e[t]=n[t]);return e.flagShipTypeOf=r.toNullable(n.flagShipTypeOf),e.levelCount=r.toNullable(n.levelCount),e.drumCount=r.toNullable(n.drumCount),e.drumCarrierCount=r.toNullable(n.drumCarrierCount),e},v=function(n){var e=function(n){return{stypeReqCount:n.stypeReqCount,stypeOneOf:i.map(i.functorArray)(l.showSType)(n.stypeOneOf)}};return{flagShipLevel:n.flagShipLevel,shipCount:n.shipCount,flagShipTypeOf:r.toNullable(i.map(t.functorMaybe)(i.map(i.functorArray)(l.showSType))(n.flagShipTypeOf)),levelCount:r.toNullable(n.levelCount),drumCount:r.toNullable(n.drumCount),drumCarrierCount:r.toNullable(n.drumCarrierCount),fleetSType:i.map(i.functorArray)(e)(n.fleetSType)}},S={flagShipLevel:1,shipCount:1,flagShipTypeOf:t.Nothing.value,levelCount:t.Nothing.value,drumCount:t.Nothing.value,drumCarrierCount:t.Nothing.value,fleetSType:[]},d=function(){var n=function(n){return function(e){if(e instanceof o.Flagship){if(e.value0 instanceof o.ShipLevel){var r={};for(var u in n)({}).hasOwnProperty.call(n,u)&&(r[u]=n[u]);return r.flagShipLevel=e.value0.value0,r}if(e.value0 instanceof o.ShipTypeOneOf){var i={};for(var l in n)({}).hasOwnProperty.call(n,l)&&(i[l]=n[l]);return i.flagShipTypeOf=new t.Just(e.value0.value0),i}throw new Error("Failed pattern match at KanColle.Expedition.RequirementObject line 72, column 11 - line 74, column 65: "+[e.value0.constructor.name])}if(e instanceof o.FleetLevel){var c={};for(var f in n)({}).hasOwnProperty.call(n,f)&&(c[f]=n[f]);return c.levelCount=new t.Just(e.value0),c}if(e instanceof o.FleetDrum){var s={};for(var p in n)({}).hasOwnProperty.call(n,p)&&(s[p]=n[p]);return s.drumCount=new t.Just(e.value0),s}if(e instanceof o.FleetShipWithDrum){var m={};for(var v in n)({}).hasOwnProperty.call(n,v)&&(m[v]=n[v]);return m.drumCarrierCount=new t.Just(e.value0),m}if(e instanceof o.FleetSTypeCount){var S={stypeReqCount:e.value0,stypeOneOf:e.value1},d={};for(var P in n)({}).hasOwnProperty.call(n,P)&&(d[P]=n[P]);return d.fleetSType=a.snoc(n.fleetSType)(S),d}if(e instanceof o.FleetShipCount){var g={};for(var y in n)({}).hasOwnProperty.call(n,y)&&(g[y]=n[y]);return g.shipCount=e.value0,g}throw new Error("Failed pattern match at KanColle.Expedition.RequirementObject line 70, column 29 - line 82, column 48: "+[e.constructor.name])}};return e.foldl(e.foldableArray)(n)(S)}(),P=function(n){return d(o.getExpeditionRequirement(n))},g=function(n){return v(P(n))},y=function(n){return function(r){var u=function(n){return function(e){return a.length(a.filter(n)(e))}},o=function(n){return e.any(e.foldableArray)(c.heytingAlgebraBoolean)(function(e){return f.eq(l.eqSType)(n)(e)})},m=a.uncons(r);if(m instanceof t.Just){var v=m.value0.head.level>=n.flagShipLevel;return{flagShipLevel:v,shipCount:a.length(r)>=n.shipCount,flagShipTypeOf:i.map(t.functorMaybe)(o(m.value0.head.stype))(n.flagShipTypeOf),levelCount:i.map(t.functorMaybe)(function(n){return e.sum(e.foldableArray)(s.semiringInt)(i.map(i.functorArray)(function(n){return n.level})(r))>=n})(n.levelCount),drumCount:i.map(t.functorMaybe)(function(n){return e.sum(e.foldableArray)(s.semiringInt)(i.map(i.functorArray)(function(n){return n.drumCount})(r))>=n})(n.drumCount),drumCarrierCount:i.map(t.functorMaybe)(function(n){return u(function(n){return n.drumCount>0})(r)>=n})(n.drumCarrierCount),fleetSType:i.map(i.functorArray)(function(n){return u(function(e){return o(e.stype)(n.stypeOneOf)})(r)>=n.stypeReqCount})(n.fleetSType)}}if(m instanceof t.Nothing){var S=function(n){return i.map(n)(p["const"](!1))};return{flagShipLevel:!1,shipCount:!1,flagShipTypeOf:S(t.functorMaybe)(n.flagShipTypeOf),levelCount:S(t.functorMaybe)(n.levelCount),drumCount:S(t.functorMaybe)(n.drumCount),drumCarrierCount:S(t.functorMaybe)(n.drumCarrierCount),fleetSType:S(i.functorArray)(n.fleetSType)}}throw new Error("Failed pattern match at KanColle.Expedition.RequirementObject line 116, column 38 - line 146, column 11: "+[m.constructor.name])}},D=function(){var n=function(n){return{id:n,val:g(n)}};return i.map(i.functorArray)(n)(u.allExpeditionIds)}();n.allRequirements=D,n.checkWithRequirementPack=y,n.dummyRequirementPack=S,n.fromExpeditionRequirement=d,n.getExpeditionRequirementObject=g,n.getExpeditionRequirementPack=P,n.requirementPackToObj=v,n.resultPackToObject=m}(PS["KanColle.Expedition.RequirementObject"]=PS["KanColle.Expedition.RequirementObject"]||{}),function(n){"use strict";var e=(PS.Prelude,PS["Data.Maybe"]),t=PS["Data.Array"],a=PS["Data.Int"],r=PS["Data.Foldable"],u=(PS["KanColle.KCAPI.Master"],PS["Data.StrMap"]),o=PS["Data.List"],i=PS["Data.List.Partial"],l=PS["Partial.Unsafe"],c=PS["Data.Set"],f=PS["Data.Tuple"],s=PS["Debug.Trace"],p=PS["Data.Eq"],m=PS["Data.Unit"],v=PS["Data.Boolean"],S=PS["Data.Unfoldable"],d=PS["Data.Show"],P=PS["Data.List.Types"],g=PS["Data.Ord"],y=PS["Data.Functor"],D=PS["Data.Monoid"],C=(PS["Data.Semigroup"],PS["Data.HeytingAlgebra"],PS["Control.Semigroupoid"],function(n){return function(e){if(""===n)return e(m.unit);if(v.otherwise)return s.trace(n)(e);throw new Error("Failed pattern match at KanColle.Remodel line 51, column 1 - line 53, column 32: "+[n.constructor.name,e.constructor.name])}}),h=function(n){if(n instanceof e.Just)return[n.value0];if(n instanceof e.Nothing)return[];throw new Error("Failed pattern match at KanColle.Remodel line 81, column 1 - line 81, column 28: "+[n.constructor.name])},w=o.toUnfoldable(S.unfoldableArray),A=function(n){return function(a){var r=function(e){return u.lookup(d.show(d.showInt)(e))(n)},c=(l.unsafePartial(function(n){return e.fromJust(n)})(r(a)),function(n){return function(t){var a=n,u=t;n:for(;;){var i=o.elemIndex(p.eqInt)(u)(a);if(i instanceof e.Nothing){var l=new P.Cons(u,a),c=r(u);if(c instanceof e.Nothing)return l;if(c instanceof e.Just){a=l,u=c.value0.shipIdTo;continue n}throw new Error("Failed pattern match at KanColle.Remodel line 138, column 14 - line 140, column 59: "+[c.constructor.name])}if(i instanceof e.Just)return a;throw new Error("Failed pattern match at KanColle.Remodel line 135, column 28 - line 141, column 26: "+[i.constructor.name])}}}),f=c(P.Nil.value)(a),s=t.reverse(w(f)),m=c(P.Nil.value)(l.unsafePartial(function(n){return i.head(n)})(f)),v=t.reverse(w(m));return{origin:a,finalForms:v,group:s}}},b=function(n){var e=u.values(n),t=function(n){return function(e){var t=f.fst(n),a=f.snd(n);return new f.Tuple(c.insert(g.ordInt)(e.shipIdFrom)(t),c.insert(g.ordInt)(e.shipIdTo)(a))}},a=r.foldl(P.foldableList)(t)(new f.Tuple(c.empty,c.empty))(e),o=c.toUnfoldable(P.unfoldableList)(f.uncurry(c.difference(g.ordInt))(a)),i=function(e){return new f.Tuple(d.show(d.showInt)(e),A(n)(e))};return u.fromFoldable(P.foldableList)(y.map(P.functorList)(i)(o))},_=function(n){var e=function(n){return y.map(y.functorArray)(function(e){return new f.Tuple(d.show(d.showInt)(e),n.value1.origin)})(n.value1.group)};return u.fromFoldable(r.foldableArray)(r.foldMap(P.foldableList)(D.monoidArray)(e)(u.toList(n)))},E=function(n){return function(a){var o=t.filter(function(n){return 0!==n.api_current_ship_id})(n),i=function(n){return function(t){var a=d.show(d.showInt)(t.api_current_ship_id),r=function(n){var e=function(){if(n.shipIdTo===t.api_id)return"";if(v.otherwise)return"WARNING: data inconsistent for id: "+d.show(d.showInt)(n.shipIdFrom);throw new Error("Failed pattern match at KanColle.Remodel line 104, column 13 - line 106, column 88: "+[])}();return C(e)(function(e){var a={};for(var r in n)({}).hasOwnProperty.call(n,r)&&(a[r]=n[r]);return a.catapult=t.api_catapult_count,a.blueprint=t.api_drawing_count,a})};return u.alter(y.map(e.functorMaybe)(r))(a)(n)}};return r.foldl(r.foldableArray)(i)(a)(o)}},M=function(n){if(4500>n)return 0;if(5500>n)return 10;if(6500>n)return 15;if(v.otherwise)return 20;throw new Error("Failed pattern match at KanColle.Remodel line 57, column 1 - line 63, column 1: "+[n.constructor.name])},F=function(n){if(n.api_id>=500||"0"===n.api_aftershipid)return e.Nothing.value;if(v.otherwise){var t={shipIdFrom:n.api_id,shipIdTo:l.unsafePartial(function(n){return e.fromJust(n)})(a.fromString(n.api_aftershipid)),level:n.api_afterlv,steel:n.api_afterfuel,ammo:n.api_afterbull,catapult:0,blueprint:0,devmat:0};return new e.Just(function(){var n={};for(var e in t)({}).hasOwnProperty.call(t,e)&&(n[e]=t[e]);return n.devmat=M(t.steel),n}())}throw new Error("Failed pattern match at KanColle.Remodel line 65, column 1 - line 78, column 54: "+[n.constructor.name])},k=function(n){var e=r.foldMap(r.foldableArray)(D.monoidArray)(function(n){return h(F(n))})(n),t=function(n){return new f.Tuple(d.show(d.showInt)(n.shipIdFrom),n)};return u.fromFoldable(r.foldableArray)(y.map(y.functorArray)(t)(e))},K=function(n){var e=k(n.api_mst_ship),t=E(n.api_mst_shipupgrade)(e);return t},I=function(n){var e=K(n),a=b(e),r=_(a);return{remodelInfo:e,remodelGroups:a,origins:r,shipCount:t.length(n.api_mst_ship),upgradeCount:t.length(n.api_mst_shipupgrade)}};n.calcDevMat=M,n.collectRemodelInfo=K,n.collectRemodelInfo1=k,n.collectRemodelInfo2=E,n.fromMstShip=F,n.generateOriginMap=_,n.generateRemodelDb=I,n.generateRemodelGroup=A,n.generateRemodelGroups=b,n.listToArray=w,n.maybeToArray=h,n.optTrace=C}(PS["KanColle.Remodel"]=PS["KanColle.Remodel"]||{}),function(n){"use strict";var e=(PS.Prelude,PS.Math),t=PS["Data.Int"],a=(PS["KanColle.SType"],PS["Data.Function.Uncurried"]),r=PS["KanColle.Generated.SType"],u=(PS["Data.Eq"],PS["Data.Ring"],PS["Data.Ord"],PS["Data.Semiring"],PS["Data.EuclideanRing"],function(n){if(n instanceof r.SS)return.5;if(n instanceof r.DD)return 1;if(n instanceof r.CL)return 1;if(n instanceof r.CLT)return 1;if(n instanceof r.CT)return 1;if(n instanceof r.AV)return 1;if(n instanceof r.SSV)return 1;if(n instanceof r.LHA)return 1;if(n instanceof r.AO)return 1;if(n instanceof r.CA)return 1.5;if(n instanceof r.CAV)return 1.5;if(n instanceof r.FBB)return 1.5;if(n instanceof r.CVL)return 1.5;if(n instanceof r.AS)return 1.5;if(n instanceof r.BB)return 2;if(n instanceof r.BBV)return 2;if(n instanceof r.CV)return 2;if(n instanceof r.CVB)return 2;if(n instanceof r.AR)return 2;if(n instanceof r.DDE)return 1;if(n instanceof r.XBB)return 2;if(n instanceof r.AP)return 2;if(n instanceof r.Unknown)return 1;throw new Error("Failed pattern match at KanColle.RepairTime line 46, column 1 - line 48, column 1: "+[n.constructor.name])}),o=function(n){return function(a){return function(r){return function(o){if(r===o)return 0;var i=o-r,l=function(){var r=11>=a;if(r)return t.toNumber(10*a|0)*u(n)*t.toNumber(i);if(!r){var o=(10*t.floor(e.sqrt(t.toNumber(a-11)))|0)+50|0;return t.toNumber((5*a|0)+o|0)*u(n)*t.toNumber(i)}throw new Error("Failed pattern match at KanColle.RepairTime line 16, column 18 - line 20, column 70: "+[r.constructor.name])}();return t.floor(l)+30|0}}}},i=a.mkFn4(function(n){return o(r.readSType(n))}),l=a.mkFn4(function(n){return o(r.fromInt(n))}),c=function(n){return function(e){return function(a){return function(r){var u=1200,i=u*(r-a)|0,l=o(n)(e)(a)(r),c=t.ceil(t.toNumber(l)/t.toNumber(u))*u|0,f=c>=i;if(f)return i;if(!f)return c;throw new Error("Failed pattern match at KanColle.RepairTime line 29, column 35 - line 31, column 26: "+[f.constructor.name])}}}},f=a.mkFn4(function(n){return c(r.readSType(n))}),s=a.mkFn4(function(n){return c(r.fromInt(n))});n.dockingInSec=o,n.dockingInSecJS=i,n.dockingInSecJSNum=l,n.facilityInSec=c,n.facilityInSecJS=f,n.facilityInSecJSNum=s,n.stypeFactor=u}(PS["KanColle.RepairTime"]=PS["KanColle.RepairTime"]||{});