packages feed

yesod-auth-hmac-keccak 0.0.0.2 → 0.0.0.3

raw patch · 3 files changed

+28522/−25368 lines, 3 filesdep ~base

Dependency ranges changed: base

Files

hssrc/Yesod/Auth/JsPath.hs view
@@ -1,9 +1,5 @@-module Yesod.Auth.JsPath where--import System.IO.Unsafe (unsafePerformIO)--import Paths_yesod_auth_hmac_keccak (getDataFileName)+module Yesod.Auth.JsPath+where -jsPath :: FilePath--- jsPath = unsafePerformIO (getDataFileName "static/js/auth.js")+jsPath :: String jsPath = "static/js/auth.js"
static/js/auth.js view
@@ -6606,25361 +6606,28519 @@  })); },{"./core":3}],35:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Common = require("../Common");-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Aff = require("../Control.Monad.Aff");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");-var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");-var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");-var DOM = require("../DOM");-var Data_Eq = require("../Data.Eq");-var Data_FormURLEncoded = require("../Data.FormURLEncoded");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Show = require("../Data.Show");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Network_HTTP_Affjax = require("../Network.HTTP.Affjax");-var Network_HTTP_Affjax_Request = require("../Network.HTTP.Affjax.Request");-var Network_HTTP_Affjax_Response = require("../Network.HTTP.Affjax.Response");-var Partial_Unsafe = require("../Partial.Unsafe");-var Prelude = require("../Prelude");-var onActivateClick = function (activate) {-    return function (ev) {-        return function (v) {-            return function __do() {-                Control_Monad_Eff_JQuery.preventDefault(ev)();-                var v1 = Common.getAttr("data-token")(activate)();-                var v2 = Common.getAttr("data-salt")(activate)();-                var v3 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#password1"))();-                var v4 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#password2"))();-                var v5 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Common.getAttr("action"))(Control_Monad_Eff_JQuery.select("#activateform"))();-                Control_Monad_Eff_Console.log(v5)();-                var password2 = Common.fromForeign(v4);-                var password1 = Common.fromForeign(v3);-                var $13 = !(Data_Maybe.isNothing(password1) && Data_Maybe.isNothing(password2));-                if ($13) {-                    var $14 = Data_Eq.eq(Data_Maybe.eqMaybe(Data_Eq.eqString))(password1)(password2);-                    if ($14) {-                        Common.progress("Salting password")();-                        var salted = Common.hmacSha3(Common.fromUtf8(Data_Maybe.fromJust()(password1)), Common.fromHex(v2));-                        Common.progress("Requesting account activation...")();-                        var dat = Data_FormURLEncoded.fromArray([ new Data_Tuple.Tuple("salted", new Data_Maybe.Just(salted)) ]);-                        var v6 = Control_Monad_Aff.runAff(function (e) {-                            return Common.fail(Common.Activate.value)(Data_Show.show(Control_Monad_Eff_Exception.showError)(e));-                        })(function (x) {-                            return Common.welcome(x.response)(Common.Activate.value);-                        })(Network_HTTP_Affjax.post(Network_HTTP_Affjax_Request.requestableFormURLEncoded)(Network_HTTP_Affjax_Response.responsableJson)(v5)(dat))();-                        return Data_Unit.unit;-                    };-                    return Common.fail(Common.Activate.value)("Passwords must match")();-                };-                return Common.fail(Common.Activate.value)("Passwords error")();-            };-        };-    };-};-module.exports = {-    onActivateClick: onActivateClick-};--},{"../Common":37,"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":55,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Console":60,"../Control.Monad.Eff.Exception":62,"../Control.Monad.Eff.JQuery":64,"../DOM":100,"../Data.Eq":138,"../Data.FormURLEncoded":146,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Show":233,"../Data.Tuple":245,"../Data.Unit":249,"../Network.HTTP.Affjax":260,"../Network.HTTP.Affjax.Request":257,"../Network.HTTP.Affjax.Response":258,"../Partial.Unsafe":265,"../Prelude":268}],36:[function(require,module,exports){-"use strict";--var CryptoJS = require('crypto-js');--exports.hmacSha3 = function(msg, key) {-	var hmac  = CryptoJS.HmacSHA3(msg, key);-	//console.log("bla");-	//console.log(hmac.toString());-	//console.log(CryptoJS.enc.Utf8.stringify(hmac));-	return hmac.toString();-}--exports.setLocation = function(newLoc) {-	window.location = newLoc;-  return null;-}--exports.getAttr = function(attr) {-    return function(ob) {-        return function() {-            return ob.attr(attr);-        };-    };-};--exports.toHex = function(str) {-	var repr = parseInt(str, 16);-	return repr.toString(16);-}--exports.fromHex = function(str) {-	return CryptoJS.enc.Hex.parse(str);-}--exports.fromUtf8 = function(str) {-	return CryptoJS.enc.Utf8.parse(str);-}--},{"crypto-js":9}],37:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");-var Control_Monad_Except = require("../Control.Monad.Except");-var DOM = require("../DOM");-var Data_Argonaut = require("../Data.Argonaut");-var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");-var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");-var Data_Argonaut_Decode_Combinators = require("../Data.Argonaut.Decode.Combinators");-var Data_Either = require("../Data.Either");-var Data_Foreign = require("../Data.Foreign");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Prelude = require("../Prelude");-var Welcome = (function () {-    function Welcome(value0) {-        this.value0 = value0;-    };-    Welcome.create = function (value0) {-        return new Welcome(value0);-    };-    return Welcome;-})();-var Err = (function () {-    function Err(value0) {-        this.value0 = value0;-    };-    Err.create = function (value0) {-        return new Err(value0);-    };-    return Err;-})();-var Login = (function () {-    function Login() {--    };-    Login.value = new Login();-    return Login;-})();-var Activate = (function () {-    function Activate() {--    };-    Activate.value = new Activate();-    return Activate;-})();-var Challenge = (function () {-    function Challenge(value0) {-        this.value0 = value0;-    };-    Challenge.create = function (value0) {-        return new Challenge(value0);-    };-    return Challenge;-})();-var progress = function (s) {-    return Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.setText(s))(Control_Monad_Eff_JQuery.select("#progress"));-};-var fromForeign = function (f) {-    var v = Control_Monad_Except.runExcept(Data_Foreign.readString(f));-    if (v instanceof Data_Either.Left) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Data_Either.Right) {-        return new Data_Maybe.Just(v.value0);-    };-    throw new Error("Failed pattern match at Common line 77, column 17 - line 79, column 20: " + [ v.constructor.name ]);-};-var fail = function (v) {-    return function (s) {-        if (v instanceof Login) {-            return function __do() {-                progress(s)();-                var v1 = Data_Functor.map(Control_Monad_Eff.functorEff)(Control_Monad_Eff_JQuery.setProp("disabled")(false))(Control_Monad_Eff_JQuery.select(".login input"))();-                return Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.display)(Control_Monad_Eff_JQuery.select("#login"))();-            };-        };-        if (v instanceof Activate) {-            return function __do() {-                progress(s)();-                var v1 = Data_Functor.map(Control_Monad_Eff.functorEff)(Control_Monad_Eff_JQuery.setProp("disabled")(false))(Control_Monad_Eff_JQuery.select(".activate input"))();-                return Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.display)(Control_Monad_Eff_JQuery.select("#activate"))();-            };-        };-        throw new Error("Failed pattern match at Common line 35, column 1 - line 39, column 1: " + [ v.constructor.name, s.constructor.name ]);-    };-};-var decodeJsonWelcome = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {-    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeStrMap(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(function (v) {-        return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("welcome"))(function (v1) {-            return Control_Applicative.pure(Data_Either.applicativeEither)(new Welcome({-                link: v1-            }));-        });-    });-});-var decodeJsonErr = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {-    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeStrMap(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(function (v) {-        return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("error"))(function (v1) {-            return Control_Applicative.pure(Data_Either.applicativeEither)(new Err({-                err: v1-            }));-        });-    });-});-var welcome = function (j) {-    return function (elem) {-        var eitherWelcome = Data_Argonaut_Decode_Class.decodeJson(decodeJsonWelcome)(j);-        if (eitherWelcome instanceof Data_Either.Left) {-            var eitherErr = Data_Argonaut_Decode_Class.decodeJson(decodeJsonErr)(j);-            return Data_Either.either(fail(elem))(function (v) {-                return fail(elem)(v.value0.err);-            })(eitherErr);-        };-        if (eitherWelcome instanceof Data_Either.Right) {-            return function __do() {-                progress("Welcome!")();-                return $foreign.setLocation(eitherWelcome.value0.value0.link)();-            };-        };-        throw new Error("Failed pattern match at Common line 22, column 3 - line 28, column 28: " + [ eitherWelcome.constructor.name ]);-    };-};-var decodeJsonChallenge = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {-    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeStrMap(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(function (v) {-        return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("salt"))(function (v1) {-            return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("token"))(function (v2) {-                return Control_Applicative.pure(Data_Either.applicativeEither)(new Challenge({-                    salt: v1, -                    token: v2-                }));-            });-        });-    });-});-module.exports = {-    Challenge: Challenge, -    Login: Login, -    Activate: Activate, -    Err: Err, -    Welcome: Welcome, -    fail: fail, -    fromForeign: fromForeign, -    progress: progress, -    welcome: welcome, -    decodeJsonChallenge: decodeJsonChallenge, -    decodeJsonWelcome: decodeJsonWelcome, -    decodeJsonErr: decodeJsonErr, -    fromHex: $foreign.fromHex, -    fromUtf8: $foreign.fromUtf8, -    getAttr: $foreign.getAttr, -    hmacSha3: $foreign.hmacSha3, -    setLocation: $foreign.setLocation, -    toHex: $foreign.toHex-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Eff":70,"../Control.Monad.Eff.JQuery":64,"../Control.Monad.Except":73,"../DOM":100,"../Data.Argonaut":114,"../Data.Argonaut.Decode":105,"../Data.Argonaut.Decode.Class":103,"../Data.Argonaut.Decode.Combinators":104,"../Data.Either":136,"../Data.Foreign":145,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Functor":155,"../Data.Maybe":198,"../Prelude":268,"./foreign":36}],38:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Functor = require("../Data.Functor");-var Data_Semigroup = require("../Data.Semigroup");-var Alt = function (Functor0, alt) {-    this.Functor0 = Functor0;-    this.alt = alt;-};-var altArray = new Alt(function () {-    return Data_Functor.functorArray;-}, Data_Semigroup.append(Data_Semigroup.semigroupArray));-var alt = function (dict) {-    return dict.alt;-};-module.exports = {-    Alt: Alt, -    alt: alt, -    altArray: altArray-};--},{"../Data.Functor":155,"../Data.Semigroup":229}],39:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Plus = require("../Control.Plus");-var Data_Functor = require("../Data.Functor");-var Alternative = function (Applicative0, Plus1) {-    this.Applicative0 = Applicative0;-    this.Plus1 = Plus1;-};-var alternativeArray = new Alternative(function () {-    return Control_Applicative.applicativeArray;-}, function () {-    return Control_Plus.plusArray;-});-module.exports = {-    Alternative: Alternative, -    alternativeArray: alternativeArray-};--},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Plus":91,"../Data.Functor":155}],40:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Data_Functor = require("../Data.Functor");-var Data_Unit = require("../Data.Unit");-var Applicative = function (Apply0, pure) {-    this.Apply0 = Apply0;-    this.pure = pure;-};-var pure = function (dict) {-    return dict.pure;-};-var unless = function (dictApplicative) {-    return function (v) {-        return function (v1) {-            if (!v) {-                return v1;-            };-            if (v) {-                return pure(dictApplicative)(Data_Unit.unit);-            };-            throw new Error("Failed pattern match at Control.Applicative line 63, column 1 - line 63, column 19: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var when = function (dictApplicative) {-    return function (v) {-        return function (v1) {-            if (v) {-                return v1;-            };-            if (!v) {-                return pure(dictApplicative)(Data_Unit.unit);-            };-            throw new Error("Failed pattern match at Control.Applicative line 58, column 1 - line 58, column 16: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var liftA1 = function (dictApplicative) {-    return function (f) {-        return function (a) {-            return Control_Apply.apply(dictApplicative.Apply0())(pure(dictApplicative)(f))(a);-        };-    };-};-var applicativeFn = new Applicative(function () {-    return Control_Apply.applyFn;-}, function (x) {-    return function (v) {-        return x;-    };-});-var applicativeArray = new Applicative(function () {-    return Control_Apply.applyArray;-}, function (x) {-    return [ x ];-});-module.exports = {-    Applicative: Applicative, -    liftA1: liftA1, -    pure: pure, -    unless: unless, -    when: when, -    applicativeFn: applicativeFn, -    applicativeArray: applicativeArray-};--},{"../Control.Apply":42,"../Data.Functor":155,"../Data.Unit":249}],41:[function(require,module,exports){-"use strict";--exports.arrayApply = function (fs) {-  return function (xs) {-    var result = [];-    var n = 0;-    for (var i = 0, l = fs.length; i < l; i++) {-      for (var j = 0, k = xs.length; j < k; j++) {-        result[n++] = fs[i](xs[j]);-      }-    }-    return result;-  };-};--},{}],42:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Category = require("../Control.Category");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Apply = function (Functor0, apply) {-    this.Functor0 = Functor0;-    this.apply = apply;-};-var applyFn = new Apply(function () {-    return Data_Functor.functorFn;-}, function (f) {-    return function (g) {-        return function (x) {-            return f(x)(g(x));-        };-    };-});-var applyArray = new Apply(function () {-    return Data_Functor.functorArray;-}, $foreign.arrayApply);-var apply = function (dict) {-    return dict.apply;-};-var applyFirst = function (dictApply) {-    return function (a) {-        return function (b) {-            return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(Data_Function["const"])(a))(b);-        };-    };-};-var applySecond = function (dictApply) {-    return function (a) {-        return function (b) {-            return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(Data_Function["const"](Control_Category.id(Control_Category.categoryFn)))(a))(b);-        };-    };-};-var lift2 = function (dictApply) {-    return function (f) {-        return function (a) {-            return function (b) {-                return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b);-            };-        };-    };-};-var lift3 = function (dictApply) {-    return function (f) {-        return function (a) {-            return function (b) {-                return function (c) {-                    return apply(dictApply)(apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b))(c);-                };-            };-        };-    };-};-var lift4 = function (dictApply) {-    return function (f) {-        return function (a) {-            return function (b) {-                return function (c) {-                    return function (d) {-                        return apply(dictApply)(apply(dictApply)(apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b))(c))(d);-                    };-                };-            };-        };-    };-};-var lift5 = function (dictApply) {-    return function (f) {-        return function (a) {-            return function (b) {-                return function (c) {-                    return function (d) {-                        return function (e) {-                            return apply(dictApply)(apply(dictApply)(apply(dictApply)(apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b))(c))(d))(e);-                        };-                    };-                };-            };-        };-    };-};-module.exports = {-    Apply: Apply, -    apply: apply, -    applyFirst: applyFirst, -    applySecond: applySecond, -    lift2: lift2, -    lift3: lift3, -    lift4: lift4, -    lift5: lift5, -    applyFn: applyFn, -    applyArray: applyArray-};--},{"../Control.Category":47,"../Data.Function":149,"../Data.Functor":155,"./foreign":41}],43:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Biapply = require("../Control.Biapply");-var Biapplicative = function (Biapply0, bipure) {-    this.Biapply0 = Biapply0;-    this.bipure = bipure;-};-var bipure = function (dict) {-    return dict.bipure;-};-module.exports = {-    Biapplicative: Biapplicative, -    bipure: bipure-};--},{"../Control.Biapply":44}],44:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Function = require("../Data.Function");-var Biapply = function (Bifunctor0, biapply) {-    this.Bifunctor0 = Bifunctor0;-    this.biapply = biapply;-};-var biapply = function (dict) {-    return dict.biapply;-};-var biapplyFirst = function (dictBiapply) {-    return function (a) {-        return function (b) {-            return biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(Data_Function["const"](Control_Category.id(Control_Category.categoryFn)))(Data_Function["const"](Control_Category.id(Control_Category.categoryFn))))(a))(b);-        };-    };-};-var biapplySecond = function (dictBiapply) {-    return function (a) {-        return function (b) {-            return biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(Data_Function["const"])(Data_Function["const"]))(a))(b);-        };-    };-};-var bilift2 = function (dictBiapply) {-    return function (f) {-        return function (g) {-            return function (a) {-                return function (b) {-                    return biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(f)(g))(a))(b);-                };-            };-        };-    };-};-var bilift3 = function (dictBiapply) {-    return function (f) {-        return function (g) {-            return function (a) {-                return function (b) {-                    return function (c) {-                        return biapply(dictBiapply)(biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(f)(g))(a))(b))(c);-                    };-                };-            };-        };-    };-};-module.exports = {-    Biapply: Biapply, -    biapply: biapply, -    biapplyFirst: biapplyFirst, -    biapplySecond: biapplySecond, -    bilift2: bilift2, -    bilift3: bilift3-};--},{"../Control.Category":47,"../Data.Bifunctor":127,"../Data.Function":149}],45:[function(require,module,exports){-"use strict";--exports.arrayBind = function (arr) {-  return function (f) {-    var result = [];-    for (var i = 0, l = arr.length; i < l; i++) {-      Array.prototype.push.apply(result, f(arr[i]));-    }-    return result;-  };-};--},{}],46:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Unit = require("../Data.Unit");-var Bind = function (Apply0, bind) {-    this.Apply0 = Apply0;-    this.bind = bind;-};-var Discard = function (discard) {-    this.discard = discard;-};-var discard = function (dict) {-    return dict.discard;-};-var bindFn = new Bind(function () {-    return Control_Apply.applyFn;-}, function (m) {-    return function (f) {-        return function (x) {-            return f(m(x))(x);-        };-    };-});-var bindArray = new Bind(function () {-    return Control_Apply.applyArray;-}, $foreign.arrayBind);-var bind = function (dict) {-    return dict.bind;-};-var bindFlipped = function (dictBind) {-    return Data_Function.flip(bind(dictBind));-};-var composeKleisliFlipped = function (dictBind) {-    return function (f) {-        return function (g) {-            return function (a) {-                return bindFlipped(dictBind)(f)(g(a));-            };-        };-    };-};-var composeKleisli = function (dictBind) {-    return function (f) {-        return function (g) {-            return function (a) {-                return bind(dictBind)(f(a))(g);-            };-        };-    };-};-var discardUnit = new Discard(function (dictBind) {-    return bind(dictBind);-});-var ifM = function (dictBind) {-    return function (cond) {-        return function (t) {-            return function (f) {-                return bind(dictBind)(cond)(function (cond$prime) {-                    if (cond$prime) {-                        return t;-                    };-                    return f;-                });-            };-        };-    };-};-var join = function (dictBind) {-    return function (m) {-        return bind(dictBind)(m)(Control_Category.id(Control_Category.categoryFn));-    };-};-module.exports = {-    Bind: Bind, -    Discard: Discard, -    bind: bind, -    bindFlipped: bindFlipped, -    composeKleisli: composeKleisli, -    composeKleisliFlipped: composeKleisliFlipped, -    discard: discard, -    ifM: ifM, -    join: join, -    bindFn: bindFn, -    bindArray: bindArray, -    discardUnit: discardUnit-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Data.Function":149,"../Data.Functor":155,"../Data.Unit":249,"./foreign":45}],47:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Category = function (Semigroupoid0, id) {-    this.Semigroupoid0 = Semigroupoid0;-    this.id = id;-};-var id = function (dict) {-    return dict.id;-};-var categoryFn = new Category(function () {-    return Control_Semigroupoid.semigroupoidFn;-}, function (x) {-    return x;-});-module.exports = {-    Category: Category, -    id: id, -    categoryFn: categoryFn-};--},{"../Control.Semigroupoid":92}],48:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Extend = require("../Control.Extend");-var Data_Functor = require("../Data.Functor");-var Comonad = function (Extend0, extract) {-    this.Extend0 = Extend0;-    this.extract = extract;-};-var extract = function (dict) {-    return dict.extract;-};-module.exports = {-    Comonad: Comonad, -    extract: extract-};--},{"../Control.Extend":49,"../Data.Functor":155}],49:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Data_Functor = require("../Data.Functor");-var Data_Semigroup = require("../Data.Semigroup");-var Extend = function (Functor0, extend) {-    this.Functor0 = Functor0;-    this.extend = extend;-};-var extendFn = function (dictSemigroup) {-    return new Extend(function () {-        return Data_Functor.functorFn;-    }, function (f) {-        return function (g) {-            return function (w) {-                return f(function (w$prime) {-                    return g(Data_Semigroup.append(dictSemigroup)(w)(w$prime));-                });-            };-        };-    });-};-var extend = function (dict) {-    return dict.extend;-};-var extendFlipped = function (dictExtend) {-    return function (w) {-        return function (f) {-            return extend(dictExtend)(f)(w);-        };-    };-};-var duplicate = function (dictExtend) {-    return extend(dictExtend)(Control_Category.id(Control_Category.categoryFn));-};-var composeCoKleisliFlipped = function (dictExtend) {-    return function (f) {-        return function (g) {-            return function (w) {-                return f(extend(dictExtend)(g)(w));-            };-        };-    };-};-var composeCoKleisli = function (dictExtend) {-    return function (f) {-        return function (g) {-            return function (w) {-                return g(extend(dictExtend)(f)(w));-            };-        };-    };-};-module.exports = {-    Extend: Extend, -    composeCoKleisli: composeCoKleisli, -    composeCoKleisliFlipped: composeCoKleisliFlipped, -    duplicate: duplicate, -    extend: extend, -    extendFlipped: extendFlipped, -    extendFn: extendFn-};--},{"../Control.Category":47,"../Data.Functor":155,"../Data.Semigroup":229}],50:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Unit = require("../Data.Unit");-var Lazy = function (defer) {-    this.defer = defer;-};-var defer = function (dict) {-    return dict.defer;-};-var fix = function (dictLazy) {-    return function (f) {-        return defer(dictLazy)(function (v) {-            return f(fix(dictLazy)(f));-        });-    };-};-module.exports = {-    Lazy: Lazy, -    defer: defer, -    fix: fix-};--},{"../Data.Unit":249}],51:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Aff = require("../Control.Monad.Aff");-var Control_Monad_Aff_Internal = require("../Control.Monad.Aff.Internal");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var fromAVBox = Unsafe_Coerce.unsafeCoerce;-var killVar = function (q) {-    return function (e) {-        return fromAVBox(Control_Monad_Aff_Internal._killVar(Control_Monad_Aff.nonCanceler, q, e));-    };-};-var makeVar = fromAVBox(Control_Monad_Aff_Internal._makeVar(Control_Monad_Aff.nonCanceler));-var peekVar = function (q) {-    return fromAVBox(Control_Monad_Aff_Internal._peekVar(Control_Monad_Aff.nonCanceler, q));-};-var putVar = function (q) {-    return function (a) {-        return fromAVBox(Control_Monad_Aff_Internal._putVar(Control_Monad_Aff.nonCanceler, q, a));-    };-};-var makeVar$prime = function (a) {-    return Control_Bind.bind(Control_Monad_Aff.bindAff)(makeVar)(function (v) {-        return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(putVar(v)(a))(function () {-            return Control_Applicative.pure(Control_Monad_Aff.applicativeAff)(v);-        });-    });-};-var takeVar = function (q) {-    return fromAVBox(Control_Monad_Aff_Internal._takeVar(Control_Monad_Aff.nonCanceler, q));-};-var modifyVar = function (f) {-    return function (v) {-        return Control_Bind.bind(Control_Monad_Aff.bindAff)(takeVar(v))(function ($2) {-            return putVar(v)(f($2));-        });-    };-};-module.exports = {-    killVar: killVar, -    makeVar: makeVar, -    "makeVar'": makeVar$prime, -    modifyVar: modifyVar, -    peekVar: peekVar, -    putVar: putVar, -    takeVar: takeVar-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":55,"../Control.Monad.Aff.Internal":53,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Exception":62,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Prelude":268,"../Unsafe.Coerce":271}],52:[function(require,module,exports){-"use strict";--exports._makeVar = function (nonCanceler) {-  return function (success) {-    success({-      consumers: [],-      producers: [],-      error: undefined-    });-    return nonCanceler;-  };-};--exports._takeVar = function (nonCanceler, avar) {-  return function (success, error) {-    if (avar.error !== undefined) {-      error(avar.error);-    } else if (avar.producers.length > 0) {-      avar.producers.shift()(success, error);-    } else {-      avar.consumers.push({ peek: false, success: success, error: error });-    }--    return nonCanceler;-  };-};--exports._peekVar = function (nonCanceler, avar) {-  return function (success, error) {-    if (avar.error !== undefined) {-      error(avar.error);-    } else if (avar.producers.length > 0) {-      avar.producers[0](success, error);-    } else {-      avar.consumers.push({ peek: true, success: success, error: error });-    }-    return nonCanceler;-  };-};--exports._putVar = function (nonCanceler, avar, a) {-  return function (success, error) {-    if (avar.error !== undefined) {-      error(avar.error);-    } else {-      var shouldQueue = true;-      var consumers = [];-      var consumer;--      while (true) {-        consumer = avar.consumers.shift();-        if (consumer) {-          consumers.push(consumer);-          if (consumer.peek) {-            continue;-          } else {-            shouldQueue = false;-          }-        }-        break;-      }--      if (shouldQueue) {-        avar.producers.push(function (success) {-          success(a);-          return nonCanceler;-        });-      }--      for (var i = 0; i < consumers.length; i++) {-        consumers[i].success(a);-      }--      success({});-    }--    return nonCanceler;-  };-};--exports._killVar = function (nonCanceler, avar, e) {-  return function (success, error) {-    if (avar.error !== undefined) {-      error(avar.error);-    } else {-      avar.error = e;-      while (avar.consumers.length) {-        avar.consumers.shift().error(e);-      }-      success({});-    }--    return nonCanceler;-  };-};--},{}],53:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Prelude = require("../Prelude");-module.exports = {-    _killVar: $foreign._killVar, -    _makeVar: $foreign._makeVar, -    _peekVar: $foreign._peekVar, -    _putVar: $foreign._putVar, -    _takeVar: $foreign._takeVar-};--},{"../Control.Monad.Eff.Exception":62,"../Data.Function.Uncurried":148,"../Prelude":268,"./foreign":52}],54:[function(require,module,exports){-/* globals setTimeout, clearTimeout, setImmediate, clearImmediate */-"use strict";--exports._cancelWith = function (nonCanceler, aff, canceler1) {-  return function (success, error) {-    var canceler2 = aff(success, error);--    return function (e) {-      return function (success, error) {-        var cancellations = 0;-        var result = false;-        var errored = false;--        var s = function (bool) {-          cancellations = cancellations + 1;-          result = result || bool;--          if (cancellations === 2 && !errored) {-            success(result);-          }-        };--        var f = function (err) {-          if (!errored) {-            errored = true;-            error(err);-          }-        };--        canceler2(e)(s, f);-        canceler1(e)(s, f);--        return nonCanceler;-      };-    };-  };-};--exports._delay = function (nonCanceler, millis) {-  var set = setTimeout;-  var clear = clearTimeout;-  if (millis <= 0 && typeof setImmediate === "function") {-    set = setImmediate;-    clear = clearImmediate;-  }-  return function (success) {-    var timedOut = false;-    var timer = set(function () {-      timedOut = true;-      success();-    }, millis);--    return function () {-      return function (s) {-        if (timedOut) {-          s(false);-        } else {-          clear(timer);-          s(true);-        }-        return nonCanceler;-      };-    };-  };-};--exports._unsafeInterleaveAff = function (aff) {-  return aff;-};--exports._forkAff = function (nonCanceler, aff) {-  var voidF = function () {};--  return function (success) {-    var canceler = aff(voidF, voidF);-    success(canceler);-    return nonCanceler;-  };-};--exports._forkAll = function (nonCanceler, foldl, affs) {-  var voidF = function () {};--  return function (success) {-    var cancelers = foldl(function (acc) {-      return function (aff) {-        acc.push(aff(voidF, voidF));-        return acc;-      };-    })([])(affs);--    var canceler = function (e) {-      return function (success, error) {-        var cancellations = 0;-        var result        = false;-        var errored       = false;--        var s = function (bool) {-          cancellations = cancellations + 1;-          result        = result || bool;--          if (cancellations === cancelers.length && !errored) {-            success(result);-          }-        };--        var f = function (err) {-          if (!errored) {-            errored = true;-            error(err);-          }-        };--        for (var i = 0; i < cancelers.length; i++) {-          cancelers[i](e)(s, f);-        }--        return nonCanceler;-      };-    };--    success(canceler);-    return nonCanceler;-  };-};--exports._makeAff = function (cb) {-  return function (success, error) {-    try {-      return cb(function (e) {-        return function () {-          error(e);-        };-      })(function (v) {-        return function () {-          success(v);-        };-      })();-    } catch (err) {-      error(err);-    }-  };-};--exports._pure = function (nonCanceler, v) {-  return function (success) {-    success(v);-    return nonCanceler;-  };-};--exports._throwError = function (nonCanceler, e) {-  return function (success, error) {-    error(e);-    return nonCanceler;-  };-};--exports._fmap = function (f, aff) {-  return function (success, error) {-    return aff(function (v) {-      success(f(v));-    }, error);-  };-};--exports._bind = function (alwaysCanceler, aff, f) {-  return function (success, error) {-    var canceler1, canceler2;--    var isCanceled    = false;-    var requestCancel = false;--    var onCanceler = function () {};--    canceler1 = aff(function (v) {-      if (requestCancel) {-        isCanceled = true;--        return alwaysCanceler;-      } else {-        canceler2 = f(v)(success, error);--        onCanceler(canceler2);--        return canceler2;-      }-    }, error);--    return function (e) {-      return function (s, f) {-        requestCancel = true;--        if (canceler2 !== undefined) {-          return canceler2(e)(s, f);-        } else {-          return canceler1(e)(function (bool) {-            if (bool || isCanceled) {-              s(true);-            } else {-              onCanceler = function (canceler) {-                canceler(e)(s, f);-              };-            }-          }, f);-        }-      };-    };-  };-};--exports._attempt = function (Left, Right, aff) {-  return function (success) {-    return aff(function (v) {-      success(Right(v));-    }, function (e) {-      success(Left(e));-    });-  };-};--exports._runAff = function (errorT, successT, aff) {-  // If errorT or successT throw, and an Aff is comprised only of synchronous-  // effects, then it's possible for makeAff/liftEff to accidentally catch-  // it, which may end up rerunning the Aff depending on error recovery-  // behavior. To mitigate this, we observe synchronicity using mutation. If-  // an Aff is observed to be synchronous, we let the stack reset and run the-  // handlers outside of the normal callback flow.-  return function () {-    var status = 0;-    var result, success;--    var canceler = aff(function (v) {-      if (status === 2) {-        successT(v)();-      } else {-        status = 1;-        result = v;-        success = true;-      }-    }, function (e) {-      if (status === 2) {-        errorT(e)();-      } else {-        status = 1;-        result = e;-        success = false;-      }-    });--    if (status === 1) {-      if (success) {-        successT(result)();-      } else {-        errorT(result)();-      }-    } else {-      status = 2;-    }--    return canceler;-  };-};--exports._liftEff = function (nonCanceler, e) {-  return function (success, error) {-    var result;-    try {-      result = e();-    } catch (err) {-      error(err);-      return nonCanceler;-    }--    success(result);-    return nonCanceler;-  };-};--exports._tailRecM = function (isLeft, f, a) {-  return function (success, error) {-    return function go (acc) {-      var result, status, canceler;--      // Observes synchronous effects using a flag.-      //   status = 0 (unresolved status)-      //   status = 1 (synchronous effect)-      //   status = 2 (asynchronous effect)--      var csuccess = function (v) {-        // If the status is still unresolved, we have observed a-        // synchronous effect. Otherwise, the status will be `2`.-        if (status === 0) {-          // Store the result for further synchronous processing.-          result = v;-          status = 1;-        } else {-          // When we have observed an asynchronous effect, we use normal-          // recursion. This is safe because we will be on a new stack.-          if (isLeft(v)) {-            go(v.value0);-          } else {-            success(v.value0);-          }-        }-      };--      while (true) {-        status = 0;-        canceler = f(acc)(csuccess, error);--        // If the status has already resolved to `1` by our Aff handler, then-        // we have observed a synchronous effect. Otherwise it will still be-        // `0`.-        if (status === 1) {-          // When we have observed a synchronous effect, we merely swap out the-          // accumulator and continue the loop, preserving stack.-          if (isLeft(result)) {-            acc = result.value0;-            continue;-          } else {-            success(result.value0);-          }-        } else {-          // If the status has not resolved yet, then we have observed an-          // asynchronous effect.-          status = 2;-        }-        return canceler;-      }--    }(a);-  };-};--},{}],55:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Aff_Internal = require("../Control.Monad.Aff.Internal");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Parallel = require("../Control.Parallel");-var Control_Parallel_Class = require("../Control.Parallel.Class");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Time_Duration = require("../Data.Time.Duration");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var ParAff = function (x) {-    return x;-};-var Canceler = function (x) {-    return x;-};-var runAff = function (ex) {-    return function (f) {-        return function (aff) {-            return $foreign._runAff(ex, f, aff);-        };-    };-};-var newtypeParAff = new Data_Newtype.Newtype(function (n) {-    return n;-}, ParAff);-var makeAff$prime = function (h) {-    return $foreign._makeAff(h);-};-var functorAff = new Data_Functor.Functor(function (f) {-    return function (fa) {-        return $foreign._fmap(f, fa);-    };-});-var functorParAff = functorAff;-var fromAVBox = Unsafe_Coerce.unsafeCoerce;-var cancel = function (v) {-    return v;-};-var launchAff = (function () {-    var lowerEx = Data_Functor.map(Control_Monad_Eff.functorEff)(function ($54) {-        return Canceler(Data_Functor.map(Data_Functor.functorFn)($foreign._unsafeInterleaveAff)(cancel($54)));-    });-    return function ($55) {-        return lowerEx(runAff(Control_Monad_Eff_Exception.throwException)(Data_Function["const"](Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(Data_Unit.unit)))($foreign._unsafeInterleaveAff($55)));-    };-})();-var attempt = function (aff) {-    return $foreign._attempt(Data_Either.Left.create, Data_Either.Right.create, aff);-};-var apathize = function (a) {-    return Data_Functor.map(functorAff)(Data_Function["const"](Data_Unit.unit))(attempt(a));-};-var applyAff = new Control_Apply.Apply(function () {-    return functorAff;-}, function (ff) {-    return function (fa) {-        return $foreign._bind(alwaysCanceler, ff, function (f) {-            return Data_Functor.map(functorAff)(f)(fa);-        });-    };-});-var applicativeAff = new Control_Applicative.Applicative(function () {-    return applyAff;-}, function (v) {-    return $foreign._pure(nonCanceler, v);-});-var nonCanceler = Data_Function["const"](Control_Applicative.pure(applicativeAff)(false));-var alwaysCanceler = Data_Function["const"](Control_Applicative.pure(applicativeAff)(true));-var cancelWith = function (aff) {-    return function (c) {-        return $foreign._cancelWith(nonCanceler, aff, c);-    };-};-var delay = function (v) {-    return $foreign._delay(nonCanceler, v);-};-var forkAff = function (aff) {-    return $foreign._forkAff(nonCanceler, aff);-};-var forkAll = function (dictFoldable) {-    return function (affs) {-        return $foreign._forkAll(nonCanceler, Data_Foldable.foldl(dictFoldable), affs);-    };-};-var killVar = function (q) {-    return function (e) {-        return fromAVBox(Control_Monad_Aff_Internal._killVar(nonCanceler, q, e));-    };-};-var liftEff$prime = function (eff) {-    return attempt($foreign._unsafeInterleaveAff($foreign._liftEff(nonCanceler, eff)));-};-var makeAff = function (h) {-    return makeAff$prime(function (e) {-        return function (a) {-            return Data_Functor.map(Control_Monad_Eff.functorEff)(Data_Function["const"](nonCanceler))(h(e)(a));-        };-    });-};-var makeVar = fromAVBox(Control_Monad_Aff_Internal._makeVar(nonCanceler));-var putVar = function (q) {-    return function (a) {-        return fromAVBox(Control_Monad_Aff_Internal._putVar(nonCanceler, q, a));-    };-};-var takeVar = function (q) {-    return fromAVBox(Control_Monad_Aff_Internal._takeVar(nonCanceler, q));-};-var semigroupAff = function (dictSemigroup) {-    return new Data_Semigroup.Semigroup(function (a) {-        return function (b) {-            return Control_Apply.apply(applyAff)(Data_Functor.map(functorAff)(Data_Semigroup.append(dictSemigroup))(a))(b);-        };-    });-};-var monoidAff = function (dictMonoid) {-    return new Data_Monoid.Monoid(function () {-        return semigroupAff(dictMonoid.Semigroup0());-    }, Control_Applicative.pure(applicativeAff)(Data_Monoid.mempty(dictMonoid)));-};-var semigroupCanceler = new Data_Semigroup.Semigroup(function (v) {-    return function (v1) {-        return function (e) {-            return Control_Apply.apply(applyAff)(Data_Functor.map(functorAff)(Data_HeytingAlgebra.disj(Data_HeytingAlgebra.heytingAlgebraBoolean))(v(e)))(v1(e));-        };-    };-});-var monoidCanceler = new Data_Monoid.Monoid(function () {-    return semigroupCanceler;-}, Data_Function["const"](Control_Applicative.pure(applicativeAff)(true)));-var bindAff = new Control_Bind.Bind(function () {-    return applyAff;-}, function (fa) {-    return function (f) {-        return $foreign._bind(alwaysCanceler, fa, f);-    };-});-var applyParAff = new Control_Apply.Apply(function () {-    return functorParAff;-}, function (v) {-    return function (v1) {-        var putOrKill = function (v2) {-            return Data_Either.either(killVar(v2))(putVar(v2));-        };-        return Control_Bind.bind(bindAff)(makeVar)(function (v2) {-            return Control_Bind.bind(bindAff)(makeVar)(function (v3) {-                return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(putOrKill(v2))(attempt(v))))(function (v4) {-                    return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(putOrKill(v3))(attempt(v1))))(function (v5) {-                        return cancelWith(Control_Apply.apply(applyAff)(takeVar(v2))(takeVar(v3)))(Data_Semigroup.append(semigroupCanceler)(v4)(v5));-                    });-                });-            });-        });-    };-});-var applicativeParAff = new Control_Applicative.Applicative(function () {-    return applyParAff;-}, function ($56) {-    return ParAff(Control_Applicative.pure(applicativeAff)($56));-});-var semigroupParAff = function (dictSemigroup) {-    return new Data_Semigroup.Semigroup(function (a) {-        return function (b) {-            return Control_Apply.apply(applyParAff)(Data_Functor.map(functorParAff)(Data_Semigroup.append(dictSemigroup))(a))(b);-        };-    });-};-var monoidParAff = function (dictMonoid) {-    return new Data_Monoid.Monoid(function () {-        return semigroupParAff(dictMonoid.Semigroup0());-    }, Control_Applicative.pure(applicativeParAff)(Data_Monoid.mempty(dictMonoid)));-};-var monadAff = new Control_Monad.Monad(function () {-    return applicativeAff;-}, function () {-    return bindAff;-});-var monadEffAff = new Control_Monad_Eff_Class.MonadEff(function () {-    return monadAff;-}, function (eff) {-    return $foreign._liftEff(nonCanceler, eff);-});-var monadRecAff = new Control_Monad_Rec_Class.MonadRec(function () {-    return monadAff;-}, function (f) {-    return function (a) {-        var isLoop = function (v) {-            if (v instanceof Control_Monad_Rec_Class.Loop) {-                return true;-            };-            return false;-        };-        return $foreign._tailRecM(isLoop, f, a);-    };-});-var monadThrowAff = new Control_Monad_Error_Class.MonadThrow(function () {-    return monadAff;-}, function (e) {-    return $foreign._throwError(nonCanceler, e);-});-var $$finally = function (aff1) {-    return function (aff2) {-        return Control_Bind.bind(bindAff)(attempt(aff1))(function (v) {-            return Control_Bind.bind(bindAff)(aff2)(function (v1) {-                return Data_Either.either(Control_Monad_Error_Class.throwError(monadThrowAff))(Control_Applicative.pure(applicativeAff))(v);-            });-        });-    };-};-var parallelParAff = new Control_Parallel_Class.Parallel(function () {-    return applicativeParAff;-}, function () {-    return monadAff;-}, ParAff, function (v) {-    return v;-});-var monadErrorAff = new Control_Monad_Error_Class.MonadError(function () {-    return monadThrowAff;-}, function (aff) {-    return function (ex) {-        return Control_Bind.bind(bindAff)(attempt(aff))(Data_Either.either(ex)(Control_Applicative.pure(applicativeAff)));-    };-});-var altParAff = new Control_Alt.Alt(function () {-    return functorParAff;-}, function (v) {-    return function (v1) {-        var maybeKill = function (va) {-            return function (ve) {-                return function (err) {-                    return Control_Bind.bind(bindAff)(takeVar(ve))(function (v2) {-                        return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(Control_Applicative.when(applicativeAff)(v2 === 1)(killVar(va)(err)))(function () {-                            return putVar(ve)(v2 + 1 | 0);-                        });-                    });-                };-            };-        };-        var done = function (cs) {-            return function (get) {-                return function (va) {-                    return function (x) {-                        return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(putVar(va)(x))(function () {-                            return Control_Bind.bind(bindAff)(Data_Functor.map(functorAff)(get)(takeVar(cs)))(function (v2) {-                                return Data_Functor["void"](functorAff)(cancel(v2)(Control_Monad_Eff_Exception.error("Alt early exit")));-                            });-                        });-                    };-                };-            };-        };-        return Control_Bind.bind(bindAff)(makeVar)(function (v2) {-            return Control_Bind.bind(bindAff)(makeVar)(function (v3) {-                return Control_Bind.bind(bindAff)(makeVar)(function (v4) {-                    return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(putVar(v3)(0))(function () {-                        return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(Data_Either.either(maybeKill(v2)(v3))(done(v4)(Data_Tuple.snd)(v2)))(attempt(v))))(function (v5) {-                            return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(Data_Either.either(maybeKill(v2)(v3))(done(v4)(Data_Tuple.fst)(v2)))(attempt(v1))))(function (v6) {-                                return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(putVar(v4)(new Data_Tuple.Tuple(v5, v6)))(function () {-                                    return cancelWith(takeVar(v2))(Data_Semigroup.append(semigroupCanceler)(v5)(v6));-                                });-                            });-                        });-                    });-                });-            });-        });-    };-});-var altAff = new Control_Alt.Alt(function () {-    return functorAff;-}, function (a1) {-    return function (a2) {-        return Control_Bind.bind(bindAff)(attempt(a1))(Data_Either.either(Data_Function["const"](a2))(Control_Applicative.pure(applicativeAff)));-    };-});-var plusAff = new Control_Plus.Plus(function () {-    return altAff;-}, Control_Monad_Error_Class.throwError(monadThrowAff)(Control_Monad_Eff_Exception.error("Always fails")));-var alternativeAff = new Control_Alternative.Alternative(function () {-    return applicativeAff;-}, function () {-    return plusAff;-});-var monadZero = new Control_MonadZero.MonadZero(function () {-    return alternativeAff;-}, function () {-    return monadAff;-});-var monadPlusAff = new Control_MonadPlus.MonadPlus(function () {-    return monadZero;-});-var plusParAff = new Control_Plus.Plus(function () {-    return altParAff;-}, Control_Plus.empty(plusAff));-var alternativeParAff = new Control_Alternative.Alternative(function () {-    return applicativeParAff;-}, function () {-    return plusParAff;-});-module.exports = {-    Canceler: Canceler, -    ParAff: ParAff, -    apathize: apathize, -    attempt: attempt, -    cancel: cancel, -    cancelWith: cancelWith, -    delay: delay, -    "finally": $$finally, -    forkAff: forkAff, -    forkAll: forkAll, -    launchAff: launchAff, -    "liftEff'": liftEff$prime, -    makeAff: makeAff, -    "makeAff'": makeAff$prime, -    nonCanceler: nonCanceler, -    runAff: runAff, -    semigroupAff: semigroupAff, -    monoidAff: monoidAff, -    functorAff: functorAff, -    applyAff: applyAff, -    applicativeAff: applicativeAff, -    bindAff: bindAff, -    monadAff: monadAff, -    monadEffAff: monadEffAff, -    monadThrowAff: monadThrowAff, -    monadErrorAff: monadErrorAff, -    altAff: altAff, -    plusAff: plusAff, -    alternativeAff: alternativeAff, -    monadZero: monadZero, -    monadPlusAff: monadPlusAff, -    monadRecAff: monadRecAff, -    semigroupCanceler: semigroupCanceler, -    monoidCanceler: monoidCanceler, -    newtypeParAff: newtypeParAff, -    semigroupParAff: semigroupParAff, -    monoidParAff: monoidParAff, -    functorParAff: functorParAff, -    applyParAff: applyParAff, -    applicativeParAff: applicativeParAff, -    altParAff: altParAff, -    plusParAff: plusParAff, -    alternativeParAff: alternativeParAff, -    parallelParAff: parallelParAff-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Control.Monad.Aff.Internal":53,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Class":58,"../Control.Monad.Eff.Exception":62,"../Control.Monad.Error.Class":71,"../Control.Monad.Rec.Class":77,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Parallel":90,"../Control.Parallel.Class":89,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Time.Duration":242,"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268,"../Unsafe.Coerce":271,"./foreign":54}],56:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Prelude = require("../Prelude");-var MonadCont = function (Monad0, callCC) {-    this.Monad0 = Monad0;-    this.callCC = callCC;-};-var callCC = function (dict) {-    return dict.callCC;-};-module.exports = {-    MonadCont: MonadCont, -    callCC: callCC-};--},{"../Prelude":268}],57:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Prelude = require("../Prelude");-var ContT = function (x) {-    return x;-};-var withContT = function (f) {-    return function (v) {-        return function (k) {-            return v(f(k));-        };-    };-};-var runContT = function (v) {-    return function (k) {-        return v(k);-    };-};-var newtypeContT = new Data_Newtype.Newtype(function (n) {-    return n;-}, ContT);-var monadTransContT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {-    return function (m) {-        return function (k) {-            return Control_Bind.bind(dictMonad.Bind1())(m)(k);-        };-    };-});-var mapContT = function (f) {-    return function (v) {-        return function (k) {-            return f(v(k));-        };-    };-};-var functorContT = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return function (k) {-                return v(function (a) {-                    return k(f(a));-                });-            };-        };-    });-};-var applyContT = function (dictApply) {-    return new Control_Apply.Apply(function () {-        return functorContT(dictApply.Functor0());-    }, function (v) {-        return function (v1) {-            return function (k) {-                return v(function (g) {-                    return v1(function (a) {-                        return k(g(a));-                    });-                });-            };-        };-    });-};-var bindContT = function (dictBind) {-    return new Control_Bind.Bind(function () {-        return applyContT(dictBind.Apply0());-    }, function (v) {-        return function (k) {-            return function (k$prime) {-                return v(function (a) {-                    var v1 = k(a);-                    return v1(k$prime);-                });-            };-        };-    });-};-var applicativeContT = function (dictApplicative) {-    return new Control_Applicative.Applicative(function () {-        return applyContT(dictApplicative.Apply0());-    }, function (a) {-        return function (k) {-            return k(a);-        };-    });-};-var monadContT = function (dictMonad) {-    return new Control_Monad.Monad(function () {-        return applicativeContT(dictMonad.Applicative0());-    }, function () {-        return bindContT(dictMonad.Bind1());-    });-};-var monadAskContT = function (dictMonadAsk) {-    return new Control_Monad_Reader_Class.MonadAsk(function () {-        return monadContT(dictMonadAsk.Monad0());-    }, Control_Monad_Trans_Class.lift(monadTransContT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));-};-var monadReaderContT = function (dictMonadReader) {-    return new Control_Monad_Reader_Class.MonadReader(function () {-        return monadAskContT(dictMonadReader.MonadAsk0());-    }, function (f) {-        return function (v) {-            return function (k) {-                return Control_Bind.bind(((dictMonadReader.MonadAsk0()).Monad0()).Bind1())(Control_Monad_Reader_Class.ask(dictMonadReader.MonadAsk0()))(function (v1) {-                    return Control_Monad_Reader_Class.local(dictMonadReader)(f)(v(function ($45) {-                        return Control_Monad_Reader_Class.local(dictMonadReader)(Data_Function["const"](v1))(k($45));-                    }));-                });-            };-        };-    });-};-var monadContContT = function (dictMonad) {-    return new Control_Monad_Cont_Class.MonadCont(function () {-        return monadContT(dictMonad);-    }, function (f) {-        return function (k) {-            var v = f(function (a) {-                return function (v1) {-                    return k(a);-                };-            });-            return v(k);-        };-    });-};-var monadEffContT = function (dictMonadEff) {-    return new Control_Monad_Eff_Class.MonadEff(function () {-        return monadContT(dictMonadEff.Monad0());-    }, function ($46) {-        return Control_Monad_Trans_Class.lift(monadTransContT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($46));-    });-};-var monadStateContT = function (dictMonadState) {-    return new Control_Monad_State_Class.MonadState(function () {-        return monadContT(dictMonadState.Monad0());-    }, function ($47) {-        return Control_Monad_Trans_Class.lift(monadTransContT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)($47));-    });-};-module.exports = {-    ContT: ContT, -    mapContT: mapContT, -    runContT: runContT, -    withContT: withContT, -    newtypeContT: newtypeContT, -    monadContContT: monadContContT, -    functorContT: functorContT, -    applyContT: applyContT, -    applicativeContT: applicativeContT, -    bindContT: bindContT, -    monadContT: monadContT, -    monadTransContT: monadTransContT, -    monadEffContT: monadEffContT, -    monadAskContT: monadAskContT, -    monadReaderContT: monadReaderContT, -    monadStateContT: monadStateContT-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Control.Monad.Cont.Class":56,"../Control.Monad.Eff.Class":58,"../Control.Monad.Reader.Class":75,"../Control.Monad.State.Class":80,"../Control.Monad.Trans.Class":83,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Data.Newtype":209,"../Prelude":268}],58:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var MonadEff = function (Monad0, liftEff) {-    this.Monad0 = Monad0;-    this.liftEff = liftEff;-};-var monadEffEff = new MonadEff(function () {-    return Control_Monad_Eff.monadEff;-}, Control_Category.id(Control_Category.categoryFn));-var liftEff = function (dict) {-    return dict.liftEff;-};-module.exports = {-    MonadEff: MonadEff, -    liftEff: liftEff, -    monadEffEff: monadEffEff-};--},{"../Control.Category":47,"../Control.Monad":86,"../Control.Monad.Eff":70}],59:[function(require,module,exports){-"use strict";--exports.log = function (s) {-  return function () {-    console.log(s);-    return {};-  };-};--exports.warn = function (s) {-  return function () {-    console.warn(s);-    return {};-  };-};--exports.error = function (s) {-  return function () {-    console.error(s);-    return {};-  };-};--exports.info = function (s) {-  return function () {-    console.info(s);-    return {};-  };-};--},{}],60:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var warnShow = function (dictShow) {-    return function (a) {-        return $foreign.warn(Data_Show.show(dictShow)(a));-    };-};-var logShow = function (dictShow) {-    return function (a) {-        return $foreign.log(Data_Show.show(dictShow)(a));-    };-};-var infoShow = function (dictShow) {-    return function (a) {-        return $foreign.info(Data_Show.show(dictShow)(a));-    };-};-var errorShow = function (dictShow) {-    return function (a) {-        return $foreign.error(Data_Show.show(dictShow)(a));-    };-};-module.exports = {-    errorShow: errorShow, -    infoShow: infoShow, -    logShow: logShow, -    warnShow: warnShow, -    error: $foreign.error, -    info: $foreign.info, -    log: $foreign.log, -    warn: $foreign.warn-};--},{"../Control.Monad.Eff":70,"../Data.Show":233,"../Data.Unit":249,"./foreign":59}],61:[function(require,module,exports){-"use strict";--exports.showErrorImpl = function (err) {-  return err.stack || err.toString();-};--exports.error = function (msg) {-  return new Error(msg);-};--exports.message = function (e) {-  return e.message;-};--exports.stackImpl = function (just) {-  return function (nothing) {-    return function (e) {-      return e.stack ? just(e.stack) : nothing;-    };-  };-};--exports.throwException = function (e) {-  return function () {-    throw e;-  };-};--exports.catchException = function (c) {-  return function (t) {-    return function () {-      try {-        return t();-      } catch (e) {-        if (e instanceof Error || Object.prototype.toString.call(e) === "[object Error]") {-          return c(e)();-        } else {-          return c(new Error(e.toString()))();-        }-      }-    };-  };-};--},{}],62:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var $$try = function (action) {-    return $foreign.catchException(function ($0) {-        return Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(Data_Either.Left.create($0));-    })(Data_Functor.map(Control_Monad_Eff.functorEff)(Data_Either.Right.create)(action));-};-var $$throw = function ($1) {-    return $foreign.throwException($foreign.error($1));-};-var stack = $foreign.stackImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var showError = new Data_Show.Show($foreign.showErrorImpl);-module.exports = {-    stack: stack, -    "throw": $$throw, -    "try": $$try, -    showError: showError, -    catchException: $foreign.catchException, -    error: $foreign.error, -    message: $foreign.message, -    throwException: $foreign.throwException-};--},{"../Control.Applicative":40,"../Control.Monad.Eff":70,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Functor":155,"../Data.Maybe":198,"../Data.Show":233,"../Prelude":268,"./foreign":61}],63:[function(require,module,exports){-/* global exports */-"use strict";--exports.ready = function(func) {-    return function() {-        jQuery(document).ready(func);-    };-};--exports.select = function(selector) {-    return function() {-        return jQuery(selector);-    };-};--exports.find = function(selector) {-    return function(ob) {-        return function() {-            return ob.find(selector);-        };-    };-};--exports.parent = function(ob) {-    return function() {-        return ob.parent();-    };-};--exports.closest = function(selector) {-    return function(ob) {-        return function() {-            return ob.closest(selector);-        };-    };-};--exports.create = function(html) {-    return function() {-        return jQuery(html);-    };-};--exports.setAttr = function(attr) {-    return function(val) {-        return function(ob) {-            return function() {-                ob.attr(attr, val);-            };-        };-    };-};--exports.attr = function(attrs) {-    return function(ob) {-        return function() {-            ob.attr(attrs);-        };-    };-};--exports.css = function(props) {-    return function(ob) {-        return function() {-            ob.css(props);-        };-    };-};--exports.hasClass = function(cls) {-    return function(ob) {-        return function() {-            return ob.hasClass(cls);-        };-    };-};--exports.toggleClass = function(cls) {-    return function(ob) {-        return function() {-            ob.toggleClass(cls);-        };-    };-};--exports.setClass = function(cls) {-    return function(flag) {-        return function(ob) {-            return function() {-                ob.toggleClass(cls, flag);-            };-        };-    };-};--exports.setProp = function(p) {-    return function(val) {-        return function(ob) {-            return function() {-                ob.prop(p, val);-            };-        };-    };-};--exports.getProp = function(p) {-    return function(ob) {-        return function() {-            return ob.prop(p);-        };-    };-};--exports.append = function(ob1) {-    return function(ob) {-        return function() {-            ob.append(ob1);-        };-    };-};--exports.appendText = function(s) {-    return function(ob) {-        return function() {-            ob.append(s);-        };-    };-};--exports.body = function() {-    return jQuery(document.body);-};--exports.remove = function(ob) {-    return function() {-        ob.remove();-    };-};--exports.clear = function(ob) {-    return function() {-        ob.empty();-    };-};--exports.before = function(ob) {-    return function(ob1) {-        return function() {-            ob1.before(ob);-        };-    };-};--exports.getText = function(ob) {-    return function() {-        return ob.text();-    };-};--exports.setText = function(text) {-    return function(ob) {-        return function() {-            ob.text(text);-        };-    };-};--exports.getHtml = function(ob) {-    return function() {-        return ob.html();-    };-};--exports.setHtml = function(html) {-    return function(ob) {-        return function() {-            ob.html(html);-        };-    };-};--exports.getValue = function(ob) {-    return function() {-        return ob.val();-    };-};--exports.setValue = function(val) {-    return function(ob) {-        return function() {-            ob.val(val);-        };-    };-};--exports.toggle = function(ob) {-    return function() {-        ob.toggle();-    };-};--exports.setVisible = function(flag) {-    return function(ob) {-        return function() {-            ob.toggle(flag);-        };-    };-};--exports.toArray = function(ob) {-    return function() {-        var els = ob.toArray();-        var copy = [];-        for (var i = 0; i < els.length; i++) {-            copy.push(jQuery(els[i]));-        }-        return copy;-    };-};--exports.on = function(evt) {-    return function(act) {-        return function(ob) {-            return function() {-                ob.on(evt, function(e) {-                    act(e)(jQuery(this))();-                });-            };-        };-    };-};--exports["on'"] = function(evt) {-    return function(sel) {-        return function(act) {-            return function(ob) {-                return function() {-                    ob.on(evt, sel, function(e) {-                        act(e)(jQuery(this))();-                    });-                };-            };-        };-    };-};--exports.preventDefault = function(e) {-    return function() {-        e.preventDefault();-    };-};--exports.stopPropagation = function(e) {-    return function() {-        e.stopPropagation();-    };-};--exports.stopImmediatePropagation = function(e) {-    return function() {-        e.stopImmediatePropagation();-    };-};--exports.getTarget = function(e) {-    return function() {-        return jQuery(e.target);-    };-};--exports.getCurrentTarget = function(e) {-    return function() {-        return jQuery(e.currentTarget);-    };-};--exports.getPageX = function(e) {-    return function() {-        return jQuery(e.pageX);-    };-};--exports.getPageY = function(e) {-    return function() {-        return jQuery(e.pageY);-    };-};--exports.getWhich = function(e) {-    return function() {-        return jQuery(e.which);-    };-};--exports.getMetaKey = function(e) {-    return function() {-        return jQuery(e.metaKey);-    };-};---exports.clone = function(ob) {-    return function() {-        return ob.clone();-    };-};--exports.cloneWithDataAndEvents = function(ob) {-    return function() {-        return ob.clone(true);-    };-};--},{}],64:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var DOM = require("../DOM");-var Data_Foreign = require("../Data.Foreign");-var Prelude = require("../Prelude");-var removeClass = function (cls) {-    return $foreign.setClass(cls)(false);-};-var hide = $foreign.setVisible(false);-var display = $foreign.setVisible(true);-var addClass = function (cls) {-    return $foreign.setClass(cls)(true);-};-module.exports = {-    addClass: addClass, -    display: display, -    hide: hide, -    removeClass: removeClass, -    append: $foreign.append, -    appendText: $foreign.appendText, -    attr: $foreign.attr, -    before: $foreign.before, -    body: $foreign.body, -    clear: $foreign.clear, -    clone: $foreign.clone, -    cloneWithDataAndEvents: $foreign.cloneWithDataAndEvents, -    closest: $foreign.closest, -    create: $foreign.create, -    css: $foreign.css, -    find: $foreign.find, -    getCurrentTarget: $foreign.getCurrentTarget, -    getHtml: $foreign.getHtml, -    getMetaKey: $foreign.getMetaKey, -    getPageX: $foreign.getPageX, -    getPageY: $foreign.getPageY, -    getProp: $foreign.getProp, -    getTarget: $foreign.getTarget, -    getText: $foreign.getText, -    getValue: $foreign.getValue, -    getWhich: $foreign.getWhich, -    hasClass: $foreign.hasClass, -    on: $foreign.on, -    "on'": $foreign["on'"], -    parent: $foreign.parent, -    preventDefault: $foreign.preventDefault, -    ready: $foreign.ready, -    remove: $foreign.remove, -    select: $foreign.select, -    setAttr: $foreign.setAttr, -    setClass: $foreign.setClass, -    setHtml: $foreign.setHtml, -    setProp: $foreign.setProp, -    setText: $foreign.setText, -    setValue: $foreign.setValue, -    setVisible: $foreign.setVisible, -    stopImmediatePropagation: $foreign.stopImmediatePropagation, -    stopPropagation: $foreign.stopPropagation, -    toArray: $foreign.toArray, -    toggle: $foreign.toggle, -    toggleClass: $foreign.toggleClass-};--},{"../Control.Monad.Eff":70,"../DOM":100,"../Data.Foreign":145,"../Prelude":268,"./foreign":63}],65:[function(require,module,exports){-"use strict";--exports.newRef = function (val) {-  return function () {-    return { value: val };-  };-};--exports.readRef = function (ref) {-  return function () {-    return ref.value;-  };-};--exports["modifyRef'"] = function (ref) {-  return function (f) {-    return function () {-      var t = f(ref.value);-      ref.value = t.state;-      return t.value;-    };-  };-};--exports.writeRef = function (ref) {-  return function (val) {-    return function () {-      ref.value = val;-      return {};-    };-  };-};--},{}],66:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var modifyRef = function (ref) {-    return function (f) {-        return $foreign["modifyRef'"](ref)(function (s) {-            return {-                state: f(s), -                value: Data_Unit.unit-            };-        });-    };-};-module.exports = {-    modifyRef: modifyRef, -    "modifyRef'": $foreign["modifyRef'"], -    newRef: $foreign.newRef, -    readRef: $foreign.readRef, -    writeRef: $foreign.writeRef-};--},{"../Control.Monad.Eff":70,"../Data.Unit":249,"../Prelude":268,"./foreign":65}],67:[function(require,module,exports){-"use strict";--exports.unsafeCoerceEff = function (f) {-  return f;-};--},{}],68:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var unsafePerformEff = function ($0) {-    return Control_Monad_Eff.runPure($foreign.unsafeCoerceEff($0));-};-module.exports = {-    unsafePerformEff: unsafePerformEff, -    unsafeCoerceEff: $foreign.unsafeCoerceEff-};--},{"../Control.Monad.Eff":70,"../Control.Semigroupoid":92,"./foreign":67}],69:[function(require,module,exports){-"use strict";--exports.pureE = function (a) {-  return function () {-    return a;-  };-};--exports.bindE = function (a) {-  return function (f) {-    return function () {-      return f(a())();-    };-  };-};--exports.runPure = function (f) {-  return f();-};--exports.untilE = function (f) {-  return function () {-    while (!f());-    return {};-  };-};--exports.whileE = function (f) {-  return function (a) {-    return function () {-      while (f()) {-        a();-      }-      return {};-    };-  };-};--exports.forE = function (lo) {-  return function (hi) {-    return function (f) {-      return function () {-        for (var i = lo; i < hi; i++) {-          f(i)();-        }-      };-    };-  };-};--exports.foreachE = function (as) {-  return function (f) {-    return function () {-      for (var i = 0, l = as.length; i < l; i++) {-        f(as[i])();-      }-    };-  };-};--},{}],70:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Data_Functor = require("../Data.Functor");-var Data_Unit = require("../Data.Unit");-var monadEff = new Control_Monad.Monad(function () {-    return applicativeEff;-}, function () {-    return bindEff;-});-var bindEff = new Control_Bind.Bind(function () {-    return applyEff;-}, $foreign.bindE);-var applyEff = new Control_Apply.Apply(function () {-    return functorEff;-}, Control_Monad.ap(monadEff));-var applicativeEff = new Control_Applicative.Applicative(function () {-    return applyEff;-}, $foreign.pureE);-var functorEff = new Data_Functor.Functor(Control_Applicative.liftA1(applicativeEff));-module.exports = {-    functorEff: functorEff, -    applyEff: applyEff, -    applicativeEff: applicativeEff, -    bindEff: bindEff, -    monadEff: monadEff, -    forE: $foreign.forE, -    foreachE: $foreign.foreachE, -    runPure: $foreign.runPure, -    untilE: $foreign.untilE, -    whileE: $foreign.whileE-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Data.Functor":155,"../Data.Unit":249,"./foreign":69}],71:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var MonadThrow = function (Monad0, throwError) {-    this.Monad0 = Monad0;-    this.throwError = throwError;-};-var MonadError = function (MonadThrow0, catchError) {-    this.MonadThrow0 = MonadThrow0;-    this.catchError = catchError;-};-var throwError = function (dict) {-    return dict.throwError;-};-var monadThrowMaybe = new MonadThrow(function () {-    return Data_Maybe.monadMaybe;-}, Data_Function["const"](Data_Maybe.Nothing.value));-var monadThrowEither = new MonadThrow(function () {-    return Data_Either.monadEither;-}, Data_Either.Left.create);-var monadErrorMaybe = new MonadError(function () {-    return monadThrowMaybe;-}, function (v) {-    return function (v1) {-        if (v instanceof Data_Maybe.Nothing) {-            return v1(Data_Unit.unit);-        };-        if (v instanceof Data_Maybe.Just) {-            return new Data_Maybe.Just(v.value0);-        };-        throw new Error("Failed pattern match at Control.Monad.Error.Class line 77, column 3 - line 77, column 33: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var monadErrorEither = new MonadError(function () {-    return monadThrowEither;-}, function (v) {-    return function (v1) {-        if (v instanceof Data_Either.Left) {-            return v1(v.value0);-        };-        if (v instanceof Data_Either.Right) {-            return new Data_Either.Right(v.value0);-        };-        throw new Error("Failed pattern match at Control.Monad.Error.Class line 70, column 3 - line 70, column 30: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var catchError = function (dict) {-    return dict.catchError;-};-var catchJust = function (dictMonadError) {-    return function (p) {-        return function (act) {-            return function (handler) {-                var handle = function (e) {-                    var v = p(e);-                    if (v instanceof Data_Maybe.Nothing) {-                        return throwError(dictMonadError.MonadThrow0())(e);-                    };-                    if (v instanceof Data_Maybe.Just) {-                        return handler(v.value0);-                    };-                    throw new Error("Failed pattern match at Control.Monad.Error.Class line 54, column 5 - line 56, column 26: " + [ v.constructor.name ]);-                };-                return catchError(dictMonadError)(act)(handle);-            };-        };-    };-};-var $$try = function (dictMonadError) {-    return function (a) {-        return catchError(dictMonadError)(Data_Functor.map(((((dictMonadError.MonadThrow0()).Monad0()).Bind1()).Apply0()).Functor0())(Data_Either.Right.create)(a))(function ($21) {-            return Control_Applicative.pure(((dictMonadError.MonadThrow0()).Monad0()).Applicative0())(Data_Either.Left.create($21));-        });-    };-};-var withResource = function (dictMonadError) {-    return function (acquire) {-        return function (release) {-            return function (kleisli) {-                return Control_Bind.bind(((dictMonadError.MonadThrow0()).Monad0()).Bind1())(acquire)(function (v) {-                    return Control_Bind.bind(((dictMonadError.MonadThrow0()).Monad0()).Bind1())($$try(dictMonadError)(kleisli(v)))(function (v1) {-                        return Control_Bind.discard(Control_Bind.discardUnit)(((dictMonadError.MonadThrow0()).Monad0()).Bind1())(release(v))(function () {-                            return Data_Either.either(throwError(dictMonadError.MonadThrow0()))(Control_Applicative.pure(((dictMonadError.MonadThrow0()).Monad0()).Applicative0()))(v1);-                        });-                    });-                });-            };-        };-    };-};-module.exports = {-    MonadError: MonadError, -    MonadThrow: MonadThrow, -    catchError: catchError, -    catchJust: catchJust, -    throwError: throwError, -    "try": $$try, -    withResource: withResource, -    monadThrowEither: monadThrowEither, -    monadErrorEither: monadErrorEither, -    monadThrowMaybe: monadThrowMaybe, -    monadErrorMaybe: monadErrorMaybe-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Maybe":198,"../Data.Unit":249,"../Prelude":268}],72:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");-var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var ExceptT = function (x) {-    return x;-};-var withExceptT = function (dictFunctor) {-    return function (f) {-        return function (v) {-            var mapLeft = function (v1) {-                return function (v2) {-                    if (v2 instanceof Data_Either.Right) {-                        return new Data_Either.Right(v2.value0);-                    };-                    if (v2 instanceof Data_Either.Left) {-                        return new Data_Either.Left(v1(v2.value0));-                    };-                    throw new Error("Failed pattern match at Control.Monad.Except.Trans line 44, column 3 - line 44, column 32: " + [ v1.constructor.name, v2.constructor.name ]);-                };-            };-            return ExceptT(Data_Functor.map(dictFunctor)(mapLeft(f))(v));-        };-    };-};-var runExceptT = function (v) {-    return v;-};-var newtypeExceptT = new Data_Newtype.Newtype(function (n) {-    return n;-}, ExceptT);-var monadTransExceptT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {-    return function (m) {-        return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {-            return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Right(v));-        });-    };-});-var mapExceptT = function (f) {-    return function (v) {-        return f(v);-    };-};-var functorExceptT = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return mapExceptT(Data_Functor.map(dictFunctor)(Data_Functor.map(Data_Either.functorEither)(f)));-    });-};-var except = function (dictApplicative) {-    return function ($96) {-        return ExceptT(Control_Applicative.pure(dictApplicative)($96));-    };-};-var monadExceptT = function (dictMonad) {-    return new Control_Monad.Monad(function () {-        return applicativeExceptT(dictMonad);-    }, function () {-        return bindExceptT(dictMonad);-    });-};-var bindExceptT = function (dictMonad) {-    return new Control_Bind.Bind(function () {-        return applyExceptT(dictMonad);-    }, function (v) {-        return function (k) {-            return Control_Bind.bind(dictMonad.Bind1())(v)(Data_Either.either(function ($97) {-                return Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Left.create($97));-            })(function (a) {-                var v1 = k(a);-                return v1;-            }));-        };-    });-};-var applyExceptT = function (dictMonad) {-    return new Control_Apply.Apply(function () {-        return functorExceptT(((dictMonad.Bind1()).Apply0()).Functor0());-    }, Control_Monad.ap(monadExceptT(dictMonad)));-};-var applicativeExceptT = function (dictMonad) {-    return new Control_Applicative.Applicative(function () {-        return applyExceptT(dictMonad);-    }, function ($98) {-        return ExceptT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Right.create($98)));-    });-};-var monadAskExceptT = function (dictMonadAsk) {-    return new Control_Monad_Reader_Class.MonadAsk(function () {-        return monadExceptT(dictMonadAsk.Monad0());-    }, Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));-};-var monadReaderExceptT = function (dictMonadReader) {-    return new Control_Monad_Reader_Class.MonadReader(function () {-        return monadAskExceptT(dictMonadReader.MonadAsk0());-    }, function (f) {-        return mapExceptT(Control_Monad_Reader_Class.local(dictMonadReader)(f));-    });-};-var monadContExceptT = function (dictMonadCont) {-    return new Control_Monad_Cont_Class.MonadCont(function () {-        return monadExceptT(dictMonadCont.Monad0());-    }, function (f) {-        return ExceptT(Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {-            var v = f(function (a) {-                return ExceptT(c(new Data_Either.Right(a)));-            });-            return v;-        }));-    });-};-var monadEffExceptT = function (dictMonadEff) {-    return new Control_Monad_Eff_Class.MonadEff(function () {-        return monadExceptT(dictMonadEff.Monad0());-    }, function ($99) {-        return Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($99));-    });-};-var monadRecExceptT = function (dictMonadRec) {-    return new Control_Monad_Rec_Class.MonadRec(function () {-        return monadExceptT(dictMonadRec.Monad0());-    }, function (f) {-        return function ($100) {-            return ExceptT(Control_Monad_Rec_Class.tailRecM(dictMonadRec)(function (a) {-                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {-                    var v = f(a);-                    return v;-                })())(function (m$prime) {-                    return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {-                        if (m$prime instanceof Data_Either.Left) {-                            return new Control_Monad_Rec_Class.Done(new Data_Either.Left(m$prime.value0));-                        };-                        if (m$prime instanceof Data_Either.Right && m$prime.value0 instanceof Control_Monad_Rec_Class.Loop) {-                            return new Control_Monad_Rec_Class.Loop(m$prime.value0.value0);-                        };-                        if (m$prime instanceof Data_Either.Right && m$prime.value0 instanceof Control_Monad_Rec_Class.Done) {-                            return new Control_Monad_Rec_Class.Done(new Data_Either.Right(m$prime.value0.value0));-                        };-                        throw new Error("Failed pattern match at Control.Monad.Except.Trans line 76, column 14 - line 79, column 43: " + [ m$prime.constructor.name ]);-                    })());-                });-            })($100));-        };-    });-};-var monadStateExceptT = function (dictMonadState) {-    return new Control_Monad_State_Class.MonadState(function () {-        return monadExceptT(dictMonadState.Monad0());-    }, function (f) {-        return Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)(f));-    });-};-var monadTellExceptT = function (dictMonadTell) {-    return new Control_Monad_Writer_Class.MonadTell(function () {-        return monadExceptT(dictMonadTell.Monad0());-    }, function ($101) {-        return Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($101));-    });-};-var monadWriterExceptT = function (dictMonadWriter) {-    return new Control_Monad_Writer_Class.MonadWriter(function () {-        return monadTellExceptT(dictMonadWriter.MonadTell0());-    }, mapExceptT(function (m) {-        return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(Control_Monad_Writer_Class.listen(dictMonadWriter)(m))(function (v) {-            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(Data_Functor.map(Data_Either.functorEither)(function (r) {-                return new Data_Tuple.Tuple(r, v.value1);-            })(v.value0));-        });-    }), mapExceptT(function (m) {-        return Control_Monad_Writer_Class.pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m)(function (v) {-            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())((function () {-                if (v instanceof Data_Either.Left) {-                    return new Data_Tuple.Tuple(new Data_Either.Left(v.value0), Control_Category.id(Control_Category.categoryFn));-                };-                if (v instanceof Data_Either.Right) {-                    return new Data_Tuple.Tuple(new Data_Either.Right(v.value0.value0), v.value0.value1);-                };-                throw new Error("Failed pattern match at Control.Monad.Except.Trans line 138, column 10 - line 140, column 44: " + [ v.constructor.name ]);-            })());-        }));-    }));-};-var monadThrowExceptT = function (dictMonad) {-    return new Control_Monad_Error_Class.MonadThrow(function () {-        return monadExceptT(dictMonad);-    }, function ($102) {-        return ExceptT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Left.create($102)));-    });-};-var monadErrorExceptT = function (dictMonad) {-    return new Control_Monad_Error_Class.MonadError(function () {-        return monadThrowExceptT(dictMonad);-    }, function (v) {-        return function (k) {-            return Control_Bind.bind(dictMonad.Bind1())(v)(Data_Either.either(function (a) {-                var v1 = k(a);-                return v1;-            })(function ($103) {-                return Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Right.create($103));-            }));-        };-    });-};-var altExceptT = function (dictSemigroup) {-    return function (dictMonad) {-        return new Control_Alt.Alt(function () {-            return functorExceptT(((dictMonad.Bind1()).Apply0()).Functor0());-        }, function (v) {-            return function (v1) {-                return Control_Bind.bind(dictMonad.Bind1())(v)(function (v2) {-                    if (v2 instanceof Data_Either.Right) {-                        return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Right(v2.value0));-                    };-                    if (v2 instanceof Data_Either.Left) {-                        return Control_Bind.bind(dictMonad.Bind1())(v1)(function (v3) {-                            if (v3 instanceof Data_Either.Right) {-                                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Right(v3.value0));-                            };-                            if (v3 instanceof Data_Either.Left) {-                                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Left(Data_Semigroup.append(dictSemigroup)(v2.value0)(v3.value0)));-                            };-                            throw new Error("Failed pattern match at Control.Monad.Except.Trans line 88, column 9 - line 90, column 49: " + [ v3.constructor.name ]);-                        });-                    };-                    throw new Error("Failed pattern match at Control.Monad.Except.Trans line 84, column 5 - line 90, column 49: " + [ v2.constructor.name ]);-                });-            };-        });-    };-};-var plusExceptT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_Plus.Plus(function () {-            return altExceptT(dictMonoid.Semigroup0())(dictMonad);-        }, Control_Monad_Error_Class.throwError(monadThrowExceptT(dictMonad))(Data_Monoid.mempty(dictMonoid)));-    };-};-var alternativeExceptT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_Alternative.Alternative(function () {-            return applicativeExceptT(dictMonad);-        }, function () {-            return plusExceptT(dictMonoid)(dictMonad);-        });-    };-};-var monadZeroExceptT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_MonadZero.MonadZero(function () {-            return alternativeExceptT(dictMonoid)(dictMonad);-        }, function () {-            return monadExceptT(dictMonad);-        });-    };-};-var monadPlusExceptT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_MonadPlus.MonadPlus(function () {-            return monadZeroExceptT(dictMonoid)(dictMonad);-        });-    };-};-module.exports = {-    ExceptT: ExceptT, -    except: except, -    mapExceptT: mapExceptT, -    runExceptT: runExceptT, -    withExceptT: withExceptT, -    newtypeExceptT: newtypeExceptT, -    functorExceptT: functorExceptT, -    applyExceptT: applyExceptT, -    applicativeExceptT: applicativeExceptT, -    bindExceptT: bindExceptT, -    monadExceptT: monadExceptT, -    monadRecExceptT: monadRecExceptT, -    altExceptT: altExceptT, -    plusExceptT: plusExceptT, -    alternativeExceptT: alternativeExceptT, -    monadPlusExceptT: monadPlusExceptT, -    monadZeroExceptT: monadZeroExceptT, -    monadTransExceptT: monadTransExceptT, -    monadEffExceptT: monadEffExceptT, -    monadContExceptT: monadContExceptT, -    monadThrowExceptT: monadThrowExceptT, -    monadErrorExceptT: monadErrorExceptT, -    monadAskExceptT: monadAskExceptT, -    monadReaderExceptT: monadReaderExceptT, -    monadStateExceptT: monadStateExceptT, -    monadTellExceptT: monadTellExceptT, -    monadWriterExceptT: monadWriterExceptT-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":86,"../Control.Monad.Cont.Class":56,"../Control.Monad.Eff.Class":58,"../Control.Monad.Error.Class":71,"../Control.Monad.Reader.Class":75,"../Control.Monad.Rec.Class":77,"../Control.Monad.State.Class":80,"../Control.Monad.Trans.Class":83,"../Control.Monad.Writer.Class":84,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Semigroup":229,"../Data.Tuple":245,"../Prelude":268}],73:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Identity = require("../Data.Identity");-var Data_Newtype = require("../Data.Newtype");-var Prelude = require("../Prelude");-var withExcept = Control_Monad_Except_Trans.withExceptT(Data_Identity.functorIdentity);-var runExcept = function ($0) {-    return Data_Newtype.unwrap(Data_Identity.newtypeIdentity)(Control_Monad_Except_Trans.runExceptT($0));-};-var mapExcept = function (f) {-    return Control_Monad_Except_Trans.mapExceptT(function ($1) {-        return Data_Identity.Identity(f(Data_Newtype.unwrap(Data_Identity.newtypeIdentity)($1)));-    });-};-module.exports = {-    mapExcept: mapExcept, -    runExcept: runExcept, -    withExcept: withExcept-};--},{"../Control.Monad.Error.Class":71,"../Control.Monad.Except.Trans":72,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Identity":161,"../Data.Newtype":209,"../Prelude":268}],74:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");-var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Data_Newtype = require("../Data.Newtype");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var MaybeT = function (x) {-    return x;-};-var runMaybeT = function (v) {-    return v;-};-var newtypeMaybeT = new Data_Newtype.Newtype(function (n) {-    return n;-}, MaybeT);-var monadTransMaybeT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {-    return function ($75) {-        return MaybeT(Control_Monad.liftM1(dictMonad)(Data_Maybe.Just.create)($75));-    };-});-var mapMaybeT = function (f) {-    return function (v) {-        return f(v);-    };-};-var functorMaybeT = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return Data_Functor.map(dictFunctor)(Data_Functor.map(Data_Maybe.functorMaybe)(f))(v);-        };-    });-};-var monadMaybeT = function (dictMonad) {-    return new Control_Monad.Monad(function () {-        return applicativeMaybeT(dictMonad);-    }, function () {-        return bindMaybeT(dictMonad);-    });-};-var bindMaybeT = function (dictMonad) {-    return new Control_Bind.Bind(function () {-        return applyMaybeT(dictMonad);-    }, function (v) {-        return function (f) {-            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v1) {-                if (v1 instanceof Data_Maybe.Nothing) {-                    return Control_Applicative.pure(dictMonad.Applicative0())(Data_Maybe.Nothing.value);-                };-                if (v1 instanceof Data_Maybe.Just) {-                    var v2 = f(v1.value0);-                    return v2;-                };-                throw new Error("Failed pattern match at Control.Monad.Maybe.Trans line 55, column 11 - line 57, column 42: " + [ v1.constructor.name ]);-            });-        };-    });-};-var applyMaybeT = function (dictMonad) {-    return new Control_Apply.Apply(function () {-        return functorMaybeT(((dictMonad.Bind1()).Apply0()).Functor0());-    }, Control_Monad.ap(monadMaybeT(dictMonad)));-};-var applicativeMaybeT = function (dictMonad) {-    return new Control_Applicative.Applicative(function () {-        return applyMaybeT(dictMonad);-    }, function ($76) {-        return MaybeT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Maybe.Just.create($76)));-    });-};-var monadAskMaybeT = function (dictMonadAsk) {-    return new Control_Monad_Reader_Class.MonadAsk(function () {-        return monadMaybeT(dictMonadAsk.Monad0());-    }, Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));-};-var monadReaderMaybeT = function (dictMonadReader) {-    return new Control_Monad_Reader_Class.MonadReader(function () {-        return monadAskMaybeT(dictMonadReader.MonadAsk0());-    }, function (f) {-        return mapMaybeT(Control_Monad_Reader_Class.local(dictMonadReader)(f));-    });-};-var monadContMaybeT = function (dictMonadCont) {-    return new Control_Monad_Cont_Class.MonadCont(function () {-        return monadMaybeT(dictMonadCont.Monad0());-    }, function (f) {-        return MaybeT(Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {-            var v = f(function (a) {-                return MaybeT(c(new Data_Maybe.Just(a)));-            });-            return v;-        }));-    });-};-var monadEffMaybe = function (dictMonadEff) {-    return new Control_Monad_Eff_Class.MonadEff(function () {-        return monadMaybeT(dictMonadEff.Monad0());-    }, function ($77) {-        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($77));-    });-};-var monadRecMaybeT = function (dictMonadRec) {-    return new Control_Monad_Rec_Class.MonadRec(function () {-        return monadMaybeT(dictMonadRec.Monad0());-    }, function (f) {-        return function ($78) {-            return MaybeT(Control_Monad_Rec_Class.tailRecM(dictMonadRec)(function (a) {-                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {-                    var v = f(a);-                    return v;-                })())(function (m$prime) {-                    return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {-                        if (m$prime instanceof Data_Maybe.Nothing) {-                            return new Control_Monad_Rec_Class.Done(Data_Maybe.Nothing.value);-                        };-                        if (m$prime instanceof Data_Maybe.Just && m$prime.value0 instanceof Control_Monad_Rec_Class.Loop) {-                            return new Control_Monad_Rec_Class.Loop(m$prime.value0.value0);-                        };-                        if (m$prime instanceof Data_Maybe.Just && m$prime.value0 instanceof Control_Monad_Rec_Class.Done) {-                            return new Control_Monad_Rec_Class.Done(new Data_Maybe.Just(m$prime.value0.value0));-                        };-                        throw new Error("Failed pattern match at Control.Monad.Maybe.Trans line 85, column 16 - line 88, column 43: " + [ m$prime.constructor.name ]);-                    })());-                });-            })($78));-        };-    });-};-var monadStateMaybeT = function (dictMonadState) {-    return new Control_Monad_State_Class.MonadState(function () {-        return monadMaybeT(dictMonadState.Monad0());-    }, function (f) {-        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)(f));-    });-};-var monadTellMaybeT = function (dictMonadTell) {-    return new Control_Monad_Writer_Class.MonadTell(function () {-        return monadMaybeT(dictMonadTell.Monad0());-    }, function ($79) {-        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($79));-    });-};-var monadWriterMaybeT = function (dictMonadWriter) {-    return new Control_Monad_Writer_Class.MonadWriter(function () {-        return monadTellMaybeT(dictMonadWriter.MonadTell0());-    }, mapMaybeT(function (m) {-        return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(Control_Monad_Writer_Class.listen(dictMonadWriter)(m))(function (v) {-            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(Data_Functor.map(Data_Maybe.functorMaybe)(function (r) {-                return new Data_Tuple.Tuple(r, v.value1);-            })(v.value0));-        });-    }), mapMaybeT(function (m) {-        return Control_Monad_Writer_Class.pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m)(function (v) {-            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())((function () {-                if (v instanceof Data_Maybe.Nothing) {-                    return new Data_Tuple.Tuple(Data_Maybe.Nothing.value, Control_Category.id(Control_Category.categoryFn));-                };-                if (v instanceof Data_Maybe.Just) {-                    return new Data_Tuple.Tuple(new Data_Maybe.Just(v.value0.value0), v.value0.value1);-                };-                throw new Error("Failed pattern match at Control.Monad.Maybe.Trans line 122, column 10 - line 124, column 42: " + [ v.constructor.name ]);-            })());-        }));-    }));-};-var monadThrowMaybeT = function (dictMonadThrow) {-    return new Control_Monad_Error_Class.MonadThrow(function () {-        return monadMaybeT(dictMonadThrow.Monad0());-    }, function (e) {-        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)(e));-    });-};-var monadErrorMaybeT = function (dictMonadError) {-    return new Control_Monad_Error_Class.MonadError(function () {-        return monadThrowMaybeT(dictMonadError.MonadThrow0());-    }, function (v) {-        return function (h) {-            return MaybeT(Control_Monad_Error_Class.catchError(dictMonadError)(v)(function (a) {-                var v1 = h(a);-                return v1;-            }));-        };-    });-};-var altMaybeT = function (dictMonad) {-    return new Control_Alt.Alt(function () {-        return functorMaybeT(((dictMonad.Bind1()).Apply0()).Functor0());-    }, function (v) {-        return function (v1) {-            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v2) {-                if (v2 instanceof Data_Maybe.Nothing) {-                    return v1;-                };-                return Control_Applicative.pure(dictMonad.Applicative0())(v2);-            });-        };-    });-};-var plusMaybeT = function (dictMonad) {-    return new Control_Plus.Plus(function () {-        return altMaybeT(dictMonad);-    }, Control_Applicative.pure(dictMonad.Applicative0())(Data_Maybe.Nothing.value));-};-var alternativeMaybeT = function (dictMonad) {-    return new Control_Alternative.Alternative(function () {-        return applicativeMaybeT(dictMonad);-    }, function () {-        return plusMaybeT(dictMonad);-    });-};-var monadZeroMaybeT = function (dictMonad) {-    return new Control_MonadZero.MonadZero(function () {-        return alternativeMaybeT(dictMonad);-    }, function () {-        return monadMaybeT(dictMonad);-    });-};-var monadPlusMaybeT = function (dictMonad) {-    return new Control_MonadPlus.MonadPlus(function () {-        return monadZeroMaybeT(dictMonad);-    });-};-module.exports = {-    MaybeT: MaybeT, -    mapMaybeT: mapMaybeT, -    runMaybeT: runMaybeT, -    newtypeMaybeT: newtypeMaybeT, -    functorMaybeT: functorMaybeT, -    applyMaybeT: applyMaybeT, -    applicativeMaybeT: applicativeMaybeT, -    bindMaybeT: bindMaybeT, -    monadMaybeT: monadMaybeT, -    monadTransMaybeT: monadTransMaybeT, -    altMaybeT: altMaybeT, -    plusMaybeT: plusMaybeT, -    alternativeMaybeT: alternativeMaybeT, -    monadPlusMaybeT: monadPlusMaybeT, -    monadZeroMaybeT: monadZeroMaybeT, -    monadRecMaybeT: monadRecMaybeT, -    monadEffMaybe: monadEffMaybe, -    monadContMaybeT: monadContMaybeT, -    monadThrowMaybeT: monadThrowMaybeT, -    monadErrorMaybeT: monadErrorMaybeT, -    monadAskMaybeT: monadAskMaybeT, -    monadReaderMaybeT: monadReaderMaybeT, -    monadStateMaybeT: monadStateMaybeT, -    monadTellMaybeT: monadTellMaybeT, -    monadWriterMaybeT: monadWriterMaybeT-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":86,"../Control.Monad.Cont.Class":56,"../Control.Monad.Eff.Class":58,"../Control.Monad.Error.Class":71,"../Control.Monad.Reader.Class":75,"../Control.Monad.Rec.Class":77,"../Control.Monad.State.Class":80,"../Control.Monad.Trans.Class":83,"../Control.Monad.Writer.Class":84,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Data.Maybe":198,"../Data.Newtype":209,"../Data.Tuple":245,"../Prelude":268}],75:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Monad = require("../Control.Monad");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Functor = require("../Data.Functor");-var Prelude = require("../Prelude");-var MonadAsk = function (Monad0, ask) {-    this.Monad0 = Monad0;-    this.ask = ask;-};-var MonadReader = function (MonadAsk0, local) {-    this.MonadAsk0 = MonadAsk0;-    this.local = local;-};-var monadAskFun = new MonadAsk(function () {-    return Control_Monad.monadFn;-}, Control_Category.id(Control_Category.categoryFn));-var monadReaderFun = new MonadReader(function () {-    return monadAskFun;-}, Control_Semigroupoid.composeFlipped(Control_Semigroupoid.semigroupoidFn));-var local = function (dict) {-    return dict.local;-};-var ask = function (dict) {-    return dict.ask;-};-var asks = function (dictMonadAsk) {-    return function (f) {-        return Data_Functor.map((((dictMonadAsk.Monad0()).Bind1()).Apply0()).Functor0())(f)(ask(dictMonadAsk));-    };-};-module.exports = {-    MonadAsk: MonadAsk, -    MonadReader: MonadReader, -    ask: ask, -    asks: asks, -    local: local, -    monadAskFun: monadAskFun, -    monadReaderFun: monadReaderFun-};--},{"../Control.Category":47,"../Control.Monad":86,"../Control.Semigroupoid":92,"../Data.Functor":155,"../Prelude":268}],76:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");-var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Distributive = require("../Data.Distributive");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Prelude = require("../Prelude");-var ReaderT = function (x) {-    return x;-};-var withReaderT = function (f) {-    return function (v) {-        return function ($62) {-            return v(f($62));-        };-    };-};-var runReaderT = function (v) {-    return v;-};-var newtypeReaderT = new Data_Newtype.Newtype(function (n) {-    return n;-}, ReaderT);-var monadTransReaderT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {-    return function ($63) {-        return ReaderT(Data_Function["const"]($63));-    };-});-var mapReaderT = function (f) {-    return function (v) {-        return function ($64) {-            return f(v($64));-        };-    };-};-var functorReaderT = function (dictFunctor) {-    return new Data_Functor.Functor(function ($65) {-        return mapReaderT(Data_Functor.map(dictFunctor)($65));-    });-};-var distributiveReaderT = function (dictDistributive) {-    return new Data_Distributive.Distributive(function () {-        return functorReaderT(dictDistributive.Functor0());-    }, function (dictFunctor) {-        return function (f) {-            return function ($66) {-                return Data_Distributive.distribute(distributiveReaderT(dictDistributive))(dictFunctor)(Data_Functor.map(dictFunctor)(f)($66));-            };-        };-    }, function (dictFunctor) {-        return function (a) {-            return function (e) {-                return Data_Distributive.collect(dictDistributive)(dictFunctor)(function (r) {-                    return r(e);-                })(a);-            };-        };-    });-};-var applyReaderT = function (dictApply) {-    return new Control_Apply.Apply(function () {-        return functorReaderT(dictApply.Functor0());-    }, function (v) {-        return function (v1) {-            return function (r) {-                return Control_Apply.apply(dictApply)(v(r))(v1(r));-            };-        };-    });-};-var bindReaderT = function (dictBind) {-    return new Control_Bind.Bind(function () {-        return applyReaderT(dictBind.Apply0());-    }, function (v) {-        return function (k) {-            return function (r) {-                return Control_Bind.bind(dictBind)(v(r))(function (a) {-                    var v1 = k(a);-                    return v1(r);-                });-            };-        };-    });-};-var applicativeReaderT = function (dictApplicative) {-    return new Control_Applicative.Applicative(function () {-        return applyReaderT(dictApplicative.Apply0());-    }, function ($67) {-        return ReaderT(Data_Function["const"](Control_Applicative.pure(dictApplicative)($67)));-    });-};-var monadReaderT = function (dictMonad) {-    return new Control_Monad.Monad(function () {-        return applicativeReaderT(dictMonad.Applicative0());-    }, function () {-        return bindReaderT(dictMonad.Bind1());-    });-};-var monadAskReaderT = function (dictMonad) {-    return new Control_Monad_Reader_Class.MonadAsk(function () {-        return monadReaderT(dictMonad);-    }, Control_Applicative.pure(dictMonad.Applicative0()));-};-var monadReaderReaderT = function (dictMonad) {-    return new Control_Monad_Reader_Class.MonadReader(function () {-        return monadAskReaderT(dictMonad);-    }, withReaderT);-};-var monadContReaderT = function (dictMonadCont) {-    return new Control_Monad_Cont_Class.MonadCont(function () {-        return monadReaderT(dictMonadCont.Monad0());-    }, function (f) {-        return function (r) {-            return Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {-                var v = f(function ($68) {-                    return ReaderT(Data_Function["const"](c($68)));-                });-                return v(r);-            });-        };-    });-};-var monadEffReader = function (dictMonadEff) {-    return new Control_Monad_Eff_Class.MonadEff(function () {-        return monadReaderT(dictMonadEff.Monad0());-    }, function ($69) {-        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($69));-    });-};-var monadRecReaderT = function (dictMonadRec) {-    return new Control_Monad_Rec_Class.MonadRec(function () {-        return monadReaderT(dictMonadRec.Monad0());-    }, function (k) {-        return function (a) {-            var k$prime = function (r) {-                return function (a$prime) {-                    var v = k(a$prime);-                    return Control_Bind.bindFlipped((dictMonadRec.Monad0()).Bind1())(Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0()))(v(r));-                };-            };-            return function (r) {-                return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(k$prime(r))(a);-            };-        };-    });-};-var monadStateReaderT = function (dictMonadState) {-    return new Control_Monad_State_Class.MonadState(function () {-        return monadReaderT(dictMonadState.Monad0());-    }, function ($70) {-        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)($70));-    });-};-var monadTellReaderT = function (dictMonadTell) {-    return new Control_Monad_Writer_Class.MonadTell(function () {-        return monadReaderT(dictMonadTell.Monad0());-    }, function ($71) {-        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($71));-    });-};-var monadWriterReaderT = function (dictMonadWriter) {-    return new Control_Monad_Writer_Class.MonadWriter(function () {-        return monadTellReaderT(dictMonadWriter.MonadTell0());-    }, mapReaderT(Control_Monad_Writer_Class.listen(dictMonadWriter)), mapReaderT(Control_Monad_Writer_Class.pass(dictMonadWriter)));-};-var monadThrowReaderT = function (dictMonadThrow) {-    return new Control_Monad_Error_Class.MonadThrow(function () {-        return monadReaderT(dictMonadThrow.Monad0());-    }, function ($72) {-        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)($72));-    });-};-var monadErrorReaderT = function (dictMonadError) {-    return new Control_Monad_Error_Class.MonadError(function () {-        return monadThrowReaderT(dictMonadError.MonadThrow0());-    }, function (v) {-        return function (h) {-            return function (r) {-                return Control_Monad_Error_Class.catchError(dictMonadError)(v(r))(function (e) {-                    var v1 = h(e);-                    return v1(r);-                });-            };-        };-    });-};-var altReaderT = function (dictAlt) {-    return new Control_Alt.Alt(function () {-        return functorReaderT(dictAlt.Functor0());-    }, function (v) {-        return function (v1) {-            return function (r) {-                return Control_Alt.alt(dictAlt)(v(r))(v1(r));-            };-        };-    });-};-var plusReaderT = function (dictPlus) {-    return new Control_Plus.Plus(function () {-        return altReaderT(dictPlus.Alt0());-    }, Data_Function["const"](Control_Plus.empty(dictPlus)));-};-var alternativeReaderT = function (dictAlternative) {-    return new Control_Alternative.Alternative(function () {-        return applicativeReaderT(dictAlternative.Applicative0());-    }, function () {-        return plusReaderT(dictAlternative.Plus1());-    });-};-var monadZeroReaderT = function (dictMonadZero) {-    return new Control_MonadZero.MonadZero(function () {-        return alternativeReaderT(dictMonadZero.Alternative1());-    }, function () {-        return monadReaderT(dictMonadZero.Monad0());-    });-};-var monadPlusReaderT = function (dictMonadPlus) {-    return new Control_MonadPlus.MonadPlus(function () {-        return monadZeroReaderT(dictMonadPlus.MonadZero0());-    });-};-module.exports = {-    ReaderT: ReaderT, -    mapReaderT: mapReaderT, -    runReaderT: runReaderT, -    withReaderT: withReaderT, -    newtypeReaderT: newtypeReaderT, -    functorReaderT: functorReaderT, -    applyReaderT: applyReaderT, -    applicativeReaderT: applicativeReaderT, -    altReaderT: altReaderT, -    plusReaderT: plusReaderT, -    alternativeReaderT: alternativeReaderT, -    bindReaderT: bindReaderT, -    monadReaderT: monadReaderT, -    monadZeroReaderT: monadZeroReaderT, -    monadPlusReaderT: monadPlusReaderT, -    monadTransReaderT: monadTransReaderT, -    monadEffReader: monadEffReader, -    monadContReaderT: monadContReaderT, -    monadThrowReaderT: monadThrowReaderT, -    monadErrorReaderT: monadErrorReaderT, -    monadAskReaderT: monadAskReaderT, -    monadReaderReaderT: monadReaderReaderT, -    monadStateReaderT: monadStateReaderT, -    monadTellReaderT: monadTellReaderT, -    monadWriterReaderT: monadWriterReaderT, -    distributiveReaderT: distributiveReaderT, -    monadRecReaderT: monadRecReaderT-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Control.Monad.Cont.Class":56,"../Control.Monad.Eff.Class":58,"../Control.Monad.Error.Class":71,"../Control.Monad.Reader.Class":75,"../Control.Monad.Rec.Class":77,"../Control.Monad.State.Class":80,"../Control.Monad.Trans.Class":83,"../Control.Monad.Writer.Class":84,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Distributive":135,"../Data.Function":149,"../Data.Functor":155,"../Data.Newtype":209,"../Prelude":268}],77:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Unsafe = require("../Control.Monad.Eff.Unsafe");-var Control_Monad_ST = require("../Control.Monad.ST");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Either = require("../Data.Either");-var Data_Functor = require("../Data.Functor");-var Data_Identity = require("../Data.Identity");-var Data_Unit = require("../Data.Unit");-var Partial_Unsafe = require("../Partial.Unsafe");-var Prelude = require("../Prelude");-var Loop = (function () {-    function Loop(value0) {-        this.value0 = value0;-    };-    Loop.create = function (value0) {-        return new Loop(value0);-    };-    return Loop;-})();-var Done = (function () {-    function Done(value0) {-        this.value0 = value0;-    };-    Done.create = function (value0) {-        return new Done(value0);-    };-    return Done;-})();-var MonadRec = function (Monad0, tailRecM) {-    this.Monad0 = Monad0;-    this.tailRecM = tailRecM;-};-var tailRecM = function (dict) {-    return dict.tailRecM;-};-var tailRecM2 = function (dictMonadRec) {-    return function (f) {-        return function (a) {-            return function (b) {-                return tailRecM(dictMonadRec)(function (o) {-                    return f(o.a)(o.b);-                })({-                    a: a, -                    b: b-                });-            };-        };-    };-};-var tailRecM3 = function (dictMonadRec) {-    return function (f) {-        return function (a) {-            return function (b) {-                return function (c) {-                    return tailRecM(dictMonadRec)(function (o) {-                        return f(o.a)(o.b)(o.c);-                    })({-                        a: a, -                        b: b, -                        c: c-                    });-                };-            };-        };-    };-};-var tailRecEff = function (f) {-    return function (a) {-        var fromDone = function (v) {-            var __unused = function (dictPartial1) {-                return function ($dollar16) {-                    return $dollar16;-                };-            };-            return __unused()((function () {-                if (v instanceof Done) {-                    return v.value0;-                };-                throw new Error("Failed pattern match at Control.Monad.Rec.Class line 130, column 28 - line 130, column 42: " + [ v.constructor.name ]);-            })());-        };-        var f$prime = function ($48) {-            return Control_Monad_Eff_Unsafe.unsafeCoerceEff(f($48));-        };-        return function __do() {-            var v = f$prime(a)();-            var v1 = {-                value: v-            };-            (function () {-                while (!(function __do() {-                    var v2 = v1.value;-                    if (v2 instanceof Loop) {-                        var v3 = f$prime(v2.value0)();-                        var v4 = v1.value = v3;-                        return false;-                    };-                    if (v2 instanceof Done) {-                        return true;-                    };-                    throw new Error("Failed pattern match at Control.Monad.Rec.Class line 119, column 5 - line 124, column 26: " + [ v2.constructor.name ]);-                })()) {--                };-                return {};-            })();-            return Data_Functor.map(Control_Monad_Eff.functorEff)(fromDone)(Control_Monad_ST.readSTRef(v1))();-        };-    };-};-var tailRec = function (f) {-    var go = function (__copy_v) {-        var v = __copy_v;-        var __tco_done = false;-        var __tco_result;-        var __tco_v;-        function __tco_loop(v) {-            if (v instanceof Loop) {-                __tco_v = f(v.value0);-                return;-            };-            if (v instanceof Done) {-                __tco_done = true;-                return v.value0;-            };-            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 93, column 13 - line 96, column 18: " + [ v.constructor.name ]);-        };-        while (!__tco_done) {-            __tco_result = __tco_loop(v);-            v = __tco_v;-        };-        return __tco_result;-    };-    return function ($49) {-        return go(f($49));-    };-};-var monadRecIdentity = new MonadRec(function () {-    return Data_Identity.monadIdentity;-}, function (f) {-    var runIdentity = function (v) {-        return v;-    };-    return function ($50) {-        return Data_Identity.Identity(tailRec(function ($51) {-            return runIdentity(f($51));-        })($50));-    };-});-var monadRecEither = new MonadRec(function () {-    return Data_Either.monadEither;-}, function (f) {-    return function (a0) {-        var g = function (v) {-            if (v instanceof Data_Either.Left) {-                return new Done(new Data_Either.Left(v.value0));-            };-            if (v instanceof Data_Either.Right && v.value0 instanceof Loop) {-                return new Loop(f(v.value0.value0));-            };-            if (v instanceof Data_Either.Right && v.value0 instanceof Done) {-                return new Done(new Data_Either.Right(v.value0.value0));-            };-            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 108, column 7 - line 108, column 33: " + [ v.constructor.name ]);-        };-        return tailRec(g)(f(a0));-    };-});-var monadRecEff = new MonadRec(function () {-    return Control_Monad_Eff.monadEff;-}, tailRecEff);-var functorStep = new Data_Functor.Functor(function (f) {-    return function (v) {-        if (v instanceof Loop) {-            return new Loop(v.value0);-        };-        if (v instanceof Done) {-            return new Done(f(v.value0));-        };-        throw new Error("Failed pattern match at Control.Monad.Rec.Class line 28, column 3 - line 28, column 26: " + [ f.constructor.name, v.constructor.name ]);-    };-});-var forever = function (dictMonadRec) {-    return function (ma) {-        return tailRecM(dictMonadRec)(function (u) {-            return Data_Functor.voidRight((((dictMonadRec.Monad0()).Bind1()).Apply0()).Functor0())(new Loop(u))(ma);-        })(Data_Unit.unit);-    };-};-var bifunctorStep = new Data_Bifunctor.Bifunctor(function (v) {-    return function (v1) {-        return function (v2) {-            if (v2 instanceof Loop) {-                return new Loop(v(v2.value0));-            };-            if (v2 instanceof Done) {-                return new Done(v1(v2.value0));-            };-            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 32, column 3 - line 32, column 34: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-        };-    };-});-module.exports = {-    Loop: Loop, -    Done: Done, -    MonadRec: MonadRec, -    forever: forever, -    tailRec: tailRec, -    tailRecM: tailRecM, -    tailRecM2: tailRecM2, -    tailRecM3: tailRecM3, -    functorStep: functorStep, -    bifunctorStep: bifunctorStep, -    monadRecIdentity: monadRecIdentity, -    monadRecEff: monadRecEff, -    monadRecEither: monadRecEither-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Unsafe":68,"../Control.Monad.ST":79,"../Control.Semigroupoid":92,"../Data.Bifunctor":127,"../Data.Either":136,"../Data.Functor":155,"../Data.Identity":161,"../Data.Unit":249,"../Partial.Unsafe":265,"../Prelude":268}],78:[function(require,module,exports){-"use strict";--exports.newSTRef = function (val) {-  return function () {-    return { value: val };-  };-};--exports.readSTRef = function (ref) {-  return function () {-    return ref.value;-  };-};--exports.modifySTRef = function (ref) {-  return function (f) {-    return function () {-      return ref.value = f(ref.value); // eslint-disable-line no-return-assign-    };-  };-};--exports.writeSTRef = function (ref) {-  return function (a) {-    return function () {-      return ref.value = a; // eslint-disable-line no-return-assign-    };-  };-};--exports.runST = function (f) {-  return f;-};--},{}],79:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var pureST = function (st) {-    return Control_Monad_Eff.runPure($foreign.runST(st));-};-module.exports = {-    pureST: pureST, -    modifySTRef: $foreign.modifySTRef, -    newSTRef: $foreign.newSTRef, -    readSTRef: $foreign.readSTRef, -    runST: $foreign.runST, -    writeSTRef: $foreign.writeSTRef-};--},{"../Control.Monad.Eff":70,"./foreign":78}],80:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var MonadState = function (Monad0, state) {-    this.Monad0 = Monad0;-    this.state = state;-};-var state = function (dict) {-    return dict.state;-};-var put = function (dictMonadState) {-    return function (s) {-        return state(dictMonadState)(function (v) {-            return new Data_Tuple.Tuple(Data_Unit.unit, s);-        });-    };-};-var modify = function (dictMonadState) {-    return function (f) {-        return state(dictMonadState)(function (s) {-            return new Data_Tuple.Tuple(Data_Unit.unit, f(s));-        });-    };-};-var gets = function (dictMonadState) {-    return function (f) {-        return state(dictMonadState)(function (s) {-            return new Data_Tuple.Tuple(f(s), s);-        });-    };-};-var get = function (dictMonadState) {-    return state(dictMonadState)(function (s) {-        return new Data_Tuple.Tuple(s, s);-    });-};-module.exports = {-    MonadState: MonadState, -    get: get, -    gets: gets, -    modify: modify, -    put: put, -    state: state-};--},{"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268}],81:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Lazy = require("../Control.Lazy");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");-var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var StateT = function (x) {-    return x;-};-var withStateT = function (f) {-    return function (v) {-        return function ($107) {-            return v(f($107));-        };-    };-};-var runStateT = function (v) {-    return v;-};-var newtypeStateT = new Data_Newtype.Newtype(function (n) {-    return n;-}, StateT);-var monadTransStateT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {-    return function (m) {-        return function (s) {-            return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {-                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(v, s));-            });-        };-    };-});-var mapStateT = function (f) {-    return function (v) {-        return function ($108) {-            return f(v($108));-        };-    };-};-var lazyStateT = new Control_Lazy.Lazy(function (f) {-    return function (s) {-        var v = f(Data_Unit.unit);-        return v(s);-    };-});-var functorStateT = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return function (s) {-                return Data_Functor.map(dictFunctor)(function (v1) {-                    return new Data_Tuple.Tuple(f(v1.value0), v1.value1);-                })(v(s));-            };-        };-    });-};-var execStateT = function (dictFunctor) {-    return function (v) {-        return function (s) {-            return Data_Functor.map(dictFunctor)(Data_Tuple.snd)(v(s));-        };-    };-};-var evalStateT = function (dictFunctor) {-    return function (v) {-        return function (s) {-            return Data_Functor.map(dictFunctor)(Data_Tuple.fst)(v(s));-        };-    };-};-var monadStateT = function (dictMonad) {-    return new Control_Monad.Monad(function () {-        return applicativeStateT(dictMonad);-    }, function () {-        return bindStateT(dictMonad);-    });-};-var bindStateT = function (dictMonad) {-    return new Control_Bind.Bind(function () {-        return applyStateT(dictMonad);-    }, function (v) {-        return function (f) {-            return function (s) {-                return Control_Bind.bind(dictMonad.Bind1())(v(s))(function (v1) {-                    var v3 = f(v1.value0);-                    return v3(v1.value1);-                });-            };-        };-    });-};-var applyStateT = function (dictMonad) {-    return new Control_Apply.Apply(function () {-        return functorStateT(((dictMonad.Bind1()).Apply0()).Functor0());-    }, Control_Monad.ap(monadStateT(dictMonad)));-};-var applicativeStateT = function (dictMonad) {-    return new Control_Applicative.Applicative(function () {-        return applyStateT(dictMonad);-    }, function (a) {-        return function (s) {-            return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(a, s));-        };-    });-};-var monadAskStateT = function (dictMonadAsk) {-    return new Control_Monad_Reader_Class.MonadAsk(function () {-        return monadStateT(dictMonadAsk.Monad0());-    }, Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));-};-var monadReaderStateT = function (dictMonadReader) {-    return new Control_Monad_Reader_Class.MonadReader(function () {-        return monadAskStateT(dictMonadReader.MonadAsk0());-    }, function ($109) {-        return mapStateT(Control_Monad_Reader_Class.local(dictMonadReader)($109));-    });-};-var monadContStateT = function (dictMonadCont) {-    return new Control_Monad_Cont_Class.MonadCont(function () {-        return monadStateT(dictMonadCont.Monad0());-    }, function (f) {-        return function (s) {-            return Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {-                var v = f(function (a) {-                    return function (s$prime) {-                        return c(new Data_Tuple.Tuple(a, s$prime));-                    };-                });-                return v(s);-            });-        };-    });-};-var monadEffState = function (dictMonadEff) {-    return new Control_Monad_Eff_Class.MonadEff(function () {-        return monadStateT(dictMonadEff.Monad0());-    }, function ($110) {-        return Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($110));-    });-};-var monadRecStateT = function (dictMonadRec) {-    return new Control_Monad_Rec_Class.MonadRec(function () {-        return monadStateT(dictMonadRec.Monad0());-    }, function (f) {-        return function (a) {-            var f$prime = function (v) {-                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {-                    var v1 = f(v.value0);-                    return v1;-                })()(v.value1))(function (v1) {-                    return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {-                        if (v1.value0 instanceof Control_Monad_Rec_Class.Loop) {-                            return new Control_Monad_Rec_Class.Loop(new Data_Tuple.Tuple(v1.value0.value0, v1.value1));-                        };-                        if (v1.value0 instanceof Control_Monad_Rec_Class.Done) {-                            return new Control_Monad_Rec_Class.Done(new Data_Tuple.Tuple(v1.value0.value0, v1.value1));-                        };-                        throw new Error("Failed pattern match at Control.Monad.State.Trans line 88, column 16 - line 90, column 40: " + [ v1.value0.constructor.name ]);-                    })());-                });-            };-            return function (s) {-                return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(f$prime)(new Data_Tuple.Tuple(a, s));-            };-        };-    });-};-var monadStateStateT = function (dictMonad) {-    return new Control_Monad_State_Class.MonadState(function () {-        return monadStateT(dictMonad);-    }, function (f) {-        return StateT(function ($111) {-            return Control_Applicative.pure(dictMonad.Applicative0())(f($111));-        });-    });-};-var monadTellStateT = function (dictMonadTell) {-    return new Control_Monad_Writer_Class.MonadTell(function () {-        return monadStateT(dictMonadTell.Monad0());-    }, function ($112) {-        return Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($112));-    });-};-var monadWriterStateT = function (dictMonadWriter) {-    return new Control_Monad_Writer_Class.MonadWriter(function () {-        return monadTellStateT(dictMonadWriter.MonadTell0());-    }, function (m) {-        return function (s) {-            return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(Control_Monad_Writer_Class.listen(dictMonadWriter)(m(s)))(function (v) {-                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value0, v.value1), v.value0.value1));-            });-        };-    }, function (m) {-        return function (s) {-            return Control_Monad_Writer_Class.pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m(s))(function (v) {-                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value0, v.value1), v.value0.value1));-            }));-        };-    });-};-var monadThrowStateT = function (dictMonadThrow) {-    return new Control_Monad_Error_Class.MonadThrow(function () {-        return monadStateT(dictMonadThrow.Monad0());-    }, function (e) {-        return Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)(e));-    });-};-var monadErrorStateT = function (dictMonadError) {-    return new Control_Monad_Error_Class.MonadError(function () {-        return monadThrowStateT(dictMonadError.MonadThrow0());-    }, function (v) {-        return function (h) {-            return function (s) {-                return Control_Monad_Error_Class.catchError(dictMonadError)(v(s))(function (e) {-                    var v1 = h(e);-                    return v1(s);-                });-            };-        };-    });-};-var altStateT = function (dictMonad) {-    return function (dictAlt) {-        return new Control_Alt.Alt(function () {-            return functorStateT(dictAlt.Functor0());-        }, function (v) {-            return function (v1) {-                return function (s) {-                    return Control_Alt.alt(dictAlt)(v(s))(v1(s));-                };-            };-        });-    };-};-var plusStateT = function (dictMonad) {-    return function (dictPlus) {-        return new Control_Plus.Plus(function () {-            return altStateT(dictMonad)(dictPlus.Alt0());-        }, function (v) {-            return Control_Plus.empty(dictPlus);-        });-    };-};-var alternativeStateT = function (dictMonad) {-    return function (dictAlternative) {-        return new Control_Alternative.Alternative(function () {-            return applicativeStateT(dictMonad);-        }, function () {-            return plusStateT(dictMonad)(dictAlternative.Plus1());-        });-    };-};-var monadZeroStateT = function (dictMonadZero) {-    return new Control_MonadZero.MonadZero(function () {-        return alternativeStateT(dictMonadZero.Monad0())(dictMonadZero.Alternative1());-    }, function () {-        return monadStateT(dictMonadZero.Monad0());-    });-};-var monadPlusStateT = function (dictMonadPlus) {-    return new Control_MonadPlus.MonadPlus(function () {-        return monadZeroStateT(dictMonadPlus.MonadZero0());-    });-};-module.exports = {-    StateT: StateT, -    evalStateT: evalStateT, -    execStateT: execStateT, -    mapStateT: mapStateT, -    runStateT: runStateT, -    withStateT: withStateT, -    newtypeStateT: newtypeStateT, -    functorStateT: functorStateT, -    applyStateT: applyStateT, -    applicativeStateT: applicativeStateT, -    altStateT: altStateT, -    plusStateT: plusStateT, -    alternativeStateT: alternativeStateT, -    bindStateT: bindStateT, -    monadStateT: monadStateT, -    monadRecStateT: monadRecStateT, -    monadZeroStateT: monadZeroStateT, -    monadPlusStateT: monadPlusStateT, -    monadTransStateT: monadTransStateT, -    lazyStateT: lazyStateT, -    monadEffState: monadEffState, -    monadContStateT: monadContStateT, -    monadThrowStateT: monadThrowStateT, -    monadErrorStateT: monadErrorStateT, -    monadAskStateT: monadAskStateT, -    monadReaderStateT: monadReaderStateT, -    monadStateStateT: monadStateStateT, -    monadTellStateT: monadTellStateT, -    monadWriterStateT: monadWriterStateT-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Lazy":50,"../Control.Monad":86,"../Control.Monad.Cont.Class":56,"../Control.Monad.Eff.Class":58,"../Control.Monad.Error.Class":71,"../Control.Monad.Reader.Class":75,"../Control.Monad.Rec.Class":77,"../Control.Monad.State.Class":80,"../Control.Monad.Trans.Class":83,"../Control.Monad.Writer.Class":84,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Data.Newtype":209,"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268}],82:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_State_Trans = require("../Control.Monad.State.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Identity = require("../Data.Identity");-var Data_Newtype = require("../Data.Newtype");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var withState = Control_Monad_State_Trans.withStateT;-var runState = function (v) {-    return function ($16) {-        return Data_Newtype.unwrap(Data_Identity.newtypeIdentity)(v($16));-    };-};-var mapState = function (f) {-    return Control_Monad_State_Trans.mapStateT(function ($17) {-        return Data_Identity.Identity(f(Data_Newtype.unwrap(Data_Identity.newtypeIdentity)($17)));-    });-};-var execState = function (v) {-    return function (s) {-        var v1 = v(s);-        return v1.value1;-    };-};-var evalState = function (v) {-    return function (s) {-        var v1 = v(s);-        return v1.value0;-    };-};-module.exports = {-    evalState: evalState, -    execState: execState, -    mapState: mapState, -    runState: runState, -    withState: withState-};--},{"../Control.Monad.State.Class":80,"../Control.Monad.State.Trans":81,"../Control.Semigroupoid":92,"../Data.Identity":161,"../Data.Newtype":209,"../Data.Tuple":245,"../Prelude":268}],83:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Prelude = require("../Prelude");-var MonadTrans = function (lift) {-    this.lift = lift;-};-var lift = function (dict) {-    return dict.lift;-};-module.exports = {-    MonadTrans: MonadTrans, -    lift: lift-};--},{"../Prelude":268}],84:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Data_Function = require("../Data.Function");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var MonadTell = function (Monad0, tell) {-    this.Monad0 = Monad0;-    this.tell = tell;-};-var MonadWriter = function (MonadTell0, listen, pass) {-    this.MonadTell0 = MonadTell0;-    this.listen = listen;-    this.pass = pass;-};-var tell = function (dict) {-    return dict.tell;-};-var pass = function (dict) {-    return dict.pass;-};-var listen = function (dict) {-    return dict.listen;-};-var listens = function (dictMonadWriter) {-    return function (f) {-        return function (m) {-            return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(listen(dictMonadWriter)(m))(function (v) {-                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(v.value0, f(v.value1)));-            });-        };-    };-};-var censor = function (dictMonadWriter) {-    return function (f) {-        return function (m) {-            return pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m)(function (v) {-                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(v, f));-            }));-        };-    };-};-module.exports = {-    MonadTell: MonadTell, -    MonadWriter: MonadWriter, -    censor: censor, -    listen: listen, -    listens: listens, -    pass: pass, -    tell: tell-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Data.Function":149,"../Data.Tuple":245,"../Prelude":268}],85:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");-var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var WriterT = function (x) {-    return x;-};-var runWriterT = function (v) {-    return v;-};-var newtypeWriterT = new Data_Newtype.Newtype(function (n) {-    return n;-}, WriterT);-var monadTransWriterT = function (dictMonoid) {-    return new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {-        return function (m) {-            return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {-                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(v, Data_Monoid.mempty(dictMonoid)));-            });-        };-    });-};-var mapWriterT = function (f) {-    return function (v) {-        return f(v);-    };-};-var functorWriterT = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return mapWriterT(Data_Functor.map(dictFunctor)(function (v) {-            return new Data_Tuple.Tuple(f(v.value0), v.value1);-        }));-    });-};-var execWriterT = function (dictFunctor) {-    return function (v) {-        return Data_Functor.map(dictFunctor)(Data_Tuple.snd)(v);-    };-};-var applyWriterT = function (dictSemigroup) {-    return function (dictApply) {-        return new Control_Apply.Apply(function () {-            return functorWriterT(dictApply.Functor0());-        }, function (v) {-            return function (v1) {-                var k = function (v3) {-                    return function (v4) {-                        return new Data_Tuple.Tuple(v3.value0(v4.value0), Data_Semigroup.append(dictSemigroup)(v3.value1)(v4.value1));-                    };-                };-                return Control_Apply.apply(dictApply)(Data_Functor.map(dictApply.Functor0())(k)(v))(v1);-            };-        });-    };-};-var bindWriterT = function (dictSemigroup) {-    return function (dictBind) {-        return new Control_Bind.Bind(function () {-            return applyWriterT(dictSemigroup)(dictBind.Apply0());-        }, function (v) {-            return function (k) {-                return WriterT(Control_Bind.bind(dictBind)(v)(function (v1) {-                    var v2 = k(v1.value0);-                    return Data_Functor.map((dictBind.Apply0()).Functor0())(function (v3) {-                        return new Data_Tuple.Tuple(v3.value0, Data_Semigroup.append(dictSemigroup)(v1.value1)(v3.value1));-                    })(v2);-                }));-            };-        });-    };-};-var applicativeWriterT = function (dictMonoid) {-    return function (dictApplicative) {-        return new Control_Applicative.Applicative(function () {-            return applyWriterT(dictMonoid.Semigroup0())(dictApplicative.Apply0());-        }, function (a) {-            return WriterT(Control_Applicative.pure(dictApplicative)(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid))));-        });-    };-};-var monadWriterT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_Monad.Monad(function () {-            return applicativeWriterT(dictMonoid)(dictMonad.Applicative0());-        }, function () {-            return bindWriterT(dictMonoid.Semigroup0())(dictMonad.Bind1());-        });-    };-};-var monadAskWriterT = function (dictMonoid) {-    return function (dictMonadAsk) {-        return new Control_Monad_Reader_Class.MonadAsk(function () {-            return monadWriterT(dictMonoid)(dictMonadAsk.Monad0());-        }, Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));-    };-};-var monadReaderWriterT = function (dictMonoid) {-    return function (dictMonadReader) {-        return new Control_Monad_Reader_Class.MonadReader(function () {-            return monadAskWriterT(dictMonoid)(dictMonadReader.MonadAsk0());-        }, function (f) {-            return mapWriterT(Control_Monad_Reader_Class.local(dictMonadReader)(f));-        });-    };-};-var monadContWriterT = function (dictMonoid) {-    return function (dictMonadCont) {-        return new Control_Monad_Cont_Class.MonadCont(function () {-            return monadWriterT(dictMonoid)(dictMonadCont.Monad0());-        }, function (f) {-            return WriterT(Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {-                var v = f(function (a) {-                    return WriterT(c(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid))));-                });-                return v;-            }));-        });-    };-};-var monadEffWriter = function (dictMonoid) {-    return function (dictMonadEff) {-        return new Control_Monad_Eff_Class.MonadEff(function () {-            return monadWriterT(dictMonoid)(dictMonadEff.Monad0());-        }, function ($123) {-            return Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($123));-        });-    };-};-var monadRecWriterT = function (dictMonoid) {-    return function (dictMonadRec) {-        return new Control_Monad_Rec_Class.MonadRec(function () {-            return monadWriterT(dictMonoid)(dictMonadRec.Monad0());-        }, function (f) {-            return function (a) {-                var f$prime = function (v) {-                    return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {-                        var v1 = f(v.value0);-                        return v1;-                    })())(function (v1) {-                        return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {-                            if (v1.value0 instanceof Control_Monad_Rec_Class.Loop) {-                                return new Control_Monad_Rec_Class.Loop(new Data_Tuple.Tuple(v1.value0.value0, Data_Semigroup.append(dictMonoid.Semigroup0())(v.value1)(v1.value1)));-                            };-                            if (v1.value0 instanceof Control_Monad_Rec_Class.Done) {-                                return new Control_Monad_Rec_Class.Done(new Data_Tuple.Tuple(v1.value0.value0, Data_Semigroup.append(dictMonoid.Semigroup0())(v.value1)(v1.value1)));-                            };-                            throw new Error("Failed pattern match at Control.Monad.Writer.Trans line 85, column 16 - line 87, column 47: " + [ v1.value0.constructor.name ]);-                        })());-                    });-                };-                return WriterT(Control_Monad_Rec_Class.tailRecM(dictMonadRec)(f$prime)(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid))));-            };-        });-    };-};-var monadStateWriterT = function (dictMonoid) {-    return function (dictMonadState) {-        return new Control_Monad_State_Class.MonadState(function () {-            return monadWriterT(dictMonoid)(dictMonadState.Monad0());-        }, function (f) {-            return Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)(f));-        });-    };-};-var monadTellWriterT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_Monad_Writer_Class.MonadTell(function () {-            return monadWriterT(dictMonoid)(dictMonad);-        }, function ($124) {-            return WriterT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Tuple.Tuple.create(Data_Unit.unit)($124)));-        });-    };-};-var monadWriterWriterT = function (dictMonoid) {-    return function (dictMonad) {-        return new Control_Monad_Writer_Class.MonadWriter(function () {-            return monadTellWriterT(dictMonoid)(dictMonad);-        }, function (v) {-            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v1) {-                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v1.value0, v1.value1), v1.value1));-            });-        }, function (v) {-            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v1) {-                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(v1.value0.value0, v1.value0.value1(v1.value1)));-            });-        });-    };-};-var monadThrowWriterT = function (dictMonoid) {-    return function (dictMonadThrow) {-        return new Control_Monad_Error_Class.MonadThrow(function () {-            return monadWriterT(dictMonoid)(dictMonadThrow.Monad0());-        }, function (e) {-            return Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)(e));-        });-    };-};-var monadErrorWriterT = function (dictMonoid) {-    return function (dictMonadError) {-        return new Control_Monad_Error_Class.MonadError(function () {-            return monadThrowWriterT(dictMonoid)(dictMonadError.MonadThrow0());-        }, function (v) {-            return function (h) {-                return WriterT(Control_Monad_Error_Class.catchError(dictMonadError)(v)(function (e) {-                    var v1 = h(e);-                    return v1;-                }));-            };-        });-    };-};-var altWriterT = function (dictAlt) {-    return new Control_Alt.Alt(function () {-        return functorWriterT(dictAlt.Functor0());-    }, function (v) {-        return function (v1) {-            return Control_Alt.alt(dictAlt)(v)(v1);-        };-    });-};-var plusWriterT = function (dictPlus) {-    return new Control_Plus.Plus(function () {-        return altWriterT(dictPlus.Alt0());-    }, Control_Plus.empty(dictPlus));-};-var alternativeWriterT = function (dictMonoid) {-    return function (dictAlternative) {-        return new Control_Alternative.Alternative(function () {-            return applicativeWriterT(dictMonoid)(dictAlternative.Applicative0());-        }, function () {-            return plusWriterT(dictAlternative.Plus1());-        });-    };-};-var monadZeroWriterT = function (dictMonoid) {-    return function (dictMonadZero) {-        return new Control_MonadZero.MonadZero(function () {-            return alternativeWriterT(dictMonoid)(dictMonadZero.Alternative1());-        }, function () {-            return monadWriterT(dictMonoid)(dictMonadZero.Monad0());-        });-    };-};-var monadPlusWriterT = function (dictMonoid) {-    return function (dictMonadPlus) {-        return new Control_MonadPlus.MonadPlus(function () {-            return monadZeroWriterT(dictMonoid)(dictMonadPlus.MonadZero0());-        });-    };-};-module.exports = {-    WriterT: WriterT, -    execWriterT: execWriterT, -    mapWriterT: mapWriterT, -    runWriterT: runWriterT, -    newtypeWriterT: newtypeWriterT, -    functorWriterT: functorWriterT, -    applyWriterT: applyWriterT, -    applicativeWriterT: applicativeWriterT, -    altWriterT: altWriterT, -    plusWriterT: plusWriterT, -    alternativeWriterT: alternativeWriterT, -    bindWriterT: bindWriterT, -    monadWriterT: monadWriterT, -    monadRecWriterT: monadRecWriterT, -    monadZeroWriterT: monadZeroWriterT, -    monadPlusWriterT: monadPlusWriterT, -    monadTransWriterT: monadTransWriterT, -    monadEffWriter: monadEffWriter, -    monadContWriterT: monadContWriterT, -    monadThrowWriterT: monadThrowWriterT, -    monadErrorWriterT: monadErrorWriterT, -    monadAskWriterT: monadAskWriterT, -    monadReaderWriterT: monadReaderWriterT, -    monadStateWriterT: monadStateWriterT, -    monadTellWriterT: monadTellWriterT, -    monadWriterWriterT: monadWriterWriterT-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Control.Monad.Cont.Class":56,"../Control.Monad.Eff.Class":58,"../Control.Monad.Error.Class":71,"../Control.Monad.Reader.Class":75,"../Control.Monad.Rec.Class":77,"../Control.Monad.State.Class":80,"../Control.Monad.Trans.Class":83,"../Control.Monad.Writer.Class":84,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Semigroup":229,"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268}],86:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Data_Functor = require("../Data.Functor");-var Data_Unit = require("../Data.Unit");-var Monad = function (Applicative0, Bind1) {-    this.Applicative0 = Applicative0;-    this.Bind1 = Bind1;-};-var whenM = function (dictMonad) {-    return function (mb) {-        return function (m) {-            return Control_Bind.bind(dictMonad.Bind1())(mb)(function (v) {-                return Control_Applicative.when(dictMonad.Applicative0())(v)(m);-            });-        };-    };-};-var unlessM = function (dictMonad) {-    return function (mb) {-        return function (m) {-            return Control_Bind.bind(dictMonad.Bind1())(mb)(function (v) {-                return Control_Applicative.unless(dictMonad.Applicative0())(v)(m);-            });-        };-    };-};-var monadFn = new Monad(function () {-    return Control_Applicative.applicativeFn;-}, function () {-    return Control_Bind.bindFn;-});-var monadArray = new Monad(function () {-    return Control_Applicative.applicativeArray;-}, function () {-    return Control_Bind.bindArray;-});-var liftM1 = function (dictMonad) {-    return function (f) {-        return function (a) {-            return Control_Bind.bind(dictMonad.Bind1())(a)(function (v) {-                return Control_Applicative.pure(dictMonad.Applicative0())(f(v));-            });-        };-    };-};-var ap = function (dictMonad) {-    return function (f) {-        return function (a) {-            return Control_Bind.bind(dictMonad.Bind1())(f)(function (v) {-                return Control_Bind.bind(dictMonad.Bind1())(a)(function (v1) {-                    return Control_Applicative.pure(dictMonad.Applicative0())(v(v1));-                });-            });-        };-    };-};-module.exports = {-    Monad: Monad, -    ap: ap, -    liftM1: liftM1, -    unlessM: unlessM, -    whenM: whenM, -    monadFn: monadFn, -    monadArray: monadArray-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Data.Functor":155,"../Data.Unit":249}],87:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Data_Functor = require("../Data.Functor");-var MonadPlus = function (MonadZero0) {-    this.MonadZero0 = MonadZero0;-};-var monadPlusArray = new MonadPlus(function () {-    return Control_MonadZero.monadZeroArray;-});-module.exports = {-    MonadPlus: MonadPlus, -    monadPlusArray: monadPlusArray-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Control.MonadZero":88,"../Control.Plus":91,"../Data.Functor":155}],88:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad = require("../Control.Monad");-var Control_Plus = require("../Control.Plus");-var Data_Functor = require("../Data.Functor");-var Data_Unit = require("../Data.Unit");-var MonadZero = function (Alternative1, Monad0) {-    this.Alternative1 = Alternative1;-    this.Monad0 = Monad0;-};-var monadZeroArray = new MonadZero(function () {-    return Control_Alternative.alternativeArray;-}, function () {-    return Control_Monad.monadArray;-});-var guard = function (dictMonadZero) {-    return function (v) {-        if (v) {-            return Control_Applicative.pure((dictMonadZero.Alternative1()).Applicative0())(Data_Unit.unit);-        };-        if (!v) {-            return Control_Plus.empty((dictMonadZero.Alternative1()).Plus1());-        };-        throw new Error("Failed pattern match at Control.MonadZero line 55, column 1 - line 55, column 23: " + [ v.constructor.name ]);-    };-};-module.exports = {-    MonadZero: MonadZero, -    guard: guard, -    monadZeroArray: monadZeroArray-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":86,"../Control.Plus":91,"../Data.Functor":155,"../Data.Unit":249}],89:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Cont_Trans = require("../Control.Monad.Cont.Trans");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Eff_Ref = require("../Control.Monad.Eff.Ref");-var Control_Monad_Eff_Unsafe = require("../Control.Monad.Eff.Unsafe");-var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");-var Control_Monad_Maybe_Trans = require("../Control.Monad.Maybe.Trans");-var Control_Monad_Reader_Trans = require("../Control.Monad.Reader.Trans");-var Control_Monad_Writer_Trans = require("../Control.Monad.Writer.Trans");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Compose = require("../Data.Functor.Compose");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var ParCont = function (x) {-    return x;-};-var Parallel = function (Applicative1, Monad0, parallel, sequential) {-    this.Applicative1 = Applicative1;-    this.Monad0 = Monad0;-    this.parallel = parallel;-    this.sequential = sequential;-};-var unsafeWithRef = Control_Monad_Eff_Unsafe.unsafeCoerceEff;-var sequential = function (dict) {-    return dict.sequential;-};-var parallel = function (dict) {-    return dict.parallel;-};-var newtypeParCont = new Data_Newtype.Newtype(function (n) {-    return n;-}, ParCont);-var monadParWriterT = function (dictMonoid) {-    return function (dictParallel) {-        return new Parallel(function () {-            return Control_Monad_Writer_Trans.applicativeWriterT(dictMonoid)(dictParallel.Applicative1());-        }, function () {-            return Control_Monad_Writer_Trans.monadWriterT(dictMonoid)(dictParallel.Monad0());-        }, Control_Monad_Writer_Trans.mapWriterT(parallel(dictParallel)), Control_Monad_Writer_Trans.mapWriterT(sequential(dictParallel)));-    };-};-var monadParReaderT = function (dictParallel) {-    return new Parallel(function () {-        return Control_Monad_Reader_Trans.applicativeReaderT(dictParallel.Applicative1());-    }, function () {-        return Control_Monad_Reader_Trans.monadReaderT(dictParallel.Monad0());-    }, Control_Monad_Reader_Trans.mapReaderT(parallel(dictParallel)), Control_Monad_Reader_Trans.mapReaderT(sequential(dictParallel)));-};-var monadParMaybeT = function (dictParallel) {-    return new Parallel(function () {-        return Data_Functor_Compose.applicativeCompose(dictParallel.Applicative1())(Data_Maybe.applicativeMaybe);-    }, function () {-        return Control_Monad_Maybe_Trans.monadMaybeT(dictParallel.Monad0());-    }, function (v) {-        return parallel(dictParallel)(v);-    }, function (v) {-        return sequential(dictParallel)(v);-    });-};-var monadParExceptT = function (dictParallel) {-    return new Parallel(function () {-        return Data_Functor_Compose.applicativeCompose(dictParallel.Applicative1())(Data_Either.applicativeEither);-    }, function () {-        return Control_Monad_Except_Trans.monadExceptT(dictParallel.Monad0());-    }, function (v) {-        return parallel(dictParallel)(v);-    }, function (v) {-        return sequential(dictParallel)(v);-    });-};-var monadParParCont = function (dictMonadEff) {-    return new Parallel(function () {-        return applicativeParCont(dictMonadEff);-    }, function () {-        return Control_Monad_Cont_Trans.monadContT(dictMonadEff.Monad0());-    }, ParCont, function (v) {-        return v;-    });-};-var functorParCont = function (dictMonadEff) {-    return new Data_Functor.Functor(function (f) {-        return function ($54) {-            return parallel(monadParParCont(dictMonadEff))(Data_Functor.map(Control_Monad_Cont_Trans.functorContT((((dictMonadEff.Monad0()).Bind1()).Apply0()).Functor0()))(f)(sequential(monadParParCont(dictMonadEff))($54)));-        };-    });-};-var applyParCont = function (dictMonadEff) {-    return new Control_Apply.Apply(function () {-        return functorParCont(dictMonadEff);-    }, function (v) {-        return function (v1) {-            return ParCont(function (k) {-                return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.newRef(Data_Maybe.Nothing.value))))(function (v2) {-                    return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.newRef(Data_Maybe.Nothing.value))))(function (v3) {-                        return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Cont_Trans.runContT(v)(function (a) {-                            return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v3))))(function (v4) {-                                if (v4 instanceof Data_Maybe.Nothing) {-                                    return Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v2)(new Data_Maybe.Just(a))));-                                };-                                if (v4 instanceof Data_Maybe.Just) {-                                    return k(a(v4.value0));-                                };-                                throw new Error("Failed pattern match at Control.Parallel.Class line 81, column 7 - line 83, column 26: " + [ v4.constructor.name ]);-                            });-                        }))(function () {-                            return Control_Monad_Cont_Trans.runContT(v1)(function (b) {-                                return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v2))))(function (v4) {-                                    if (v4 instanceof Data_Maybe.Nothing) {-                                        return Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v3)(new Data_Maybe.Just(b))));-                                    };-                                    if (v4 instanceof Data_Maybe.Just) {-                                        return k(v4.value0(b));-                                    };-                                    throw new Error("Failed pattern match at Control.Parallel.Class line 87, column 7 - line 89, column 26: " + [ v4.constructor.name ]);-                                });-                            });-                        });-                    });-                });-            });-        };-    });-};-var applicativeParCont = function (dictMonadEff) {-    return new Control_Applicative.Applicative(function () {-        return applyParCont(dictMonadEff);-    }, function ($55) {-        return parallel(monadParParCont(dictMonadEff))(Control_Applicative.pure(Control_Monad_Cont_Trans.applicativeContT((dictMonadEff.Monad0()).Applicative0()))($55));-    });-};-var altParCont = function (dictMonadEff) {-    return new Control_Alt.Alt(function () {-        return functorParCont(dictMonadEff);-    }, function (v) {-        return function (v1) {-            return ParCont(function (k) {-                return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.newRef(false))))(function (v2) {-                    return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Cont_Trans.runContT(v)(function (a) {-                        return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v2))))(function (v3) {-                            if (v3) {-                                return Control_Applicative.pure((dictMonadEff.Monad0()).Applicative0())(Data_Unit.unit);-                            };-                            return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v2)(true))))(function () {-                                return k(a);-                            });-                        });-                    }))(function () {-                        return Control_Monad_Cont_Trans.runContT(v1)(function (a) {-                            return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v2))))(function (v3) {-                                if (v3) {-                                    return Control_Applicative.pure((dictMonadEff.Monad0()).Applicative0())(Data_Unit.unit);-                                };-                                return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v2)(true))))(function () {-                                    return k(a);-                                });-                            });-                        });-                    });-                });-            });-        };-    });-};-var plusParCont = function (dictMonadEff) {-    return new Control_Plus.Plus(function () {-        return altParCont(dictMonadEff);-    }, ParCont(function (v) {-        return Control_Applicative.pure((dictMonadEff.Monad0()).Applicative0())(Data_Unit.unit);-    }));-};-var alternativeParCont = function (dictMonadEff) {-    return new Control_Alternative.Alternative(function () {-        return applicativeParCont(dictMonadEff);-    }, function () {-        return plusParCont(dictMonadEff);-    });-};-module.exports = {-    ParCont: ParCont, -    Parallel: Parallel, -    parallel: parallel, -    sequential: sequential, -    monadParExceptT: monadParExceptT, -    monadParReaderT: monadParReaderT, -    monadParWriterT: monadParWriterT, -    monadParMaybeT: monadParMaybeT, -    newtypeParCont: newtypeParCont, -    functorParCont: functorParCont, -    applyParCont: applyParCont, -    applicativeParCont: applicativeParCont, -    altParCont: altParCont, -    plusParCont: plusParCont, -    alternativeParCont: alternativeParCont, -    monadParParCont: monadParParCont-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad.Cont.Trans":57,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Class":58,"../Control.Monad.Eff.Ref":66,"../Control.Monad.Eff.Unsafe":68,"../Control.Monad.Except.Trans":72,"../Control.Monad.Maybe.Trans":74,"../Control.Monad.Reader.Trans":76,"../Control.Monad.Writer.Trans":85,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Compose":151,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Unit":249,"../Prelude":268}],90:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Parallel_Class = require("../Control.Parallel.Class");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Foldable = require("../Data.Foldable");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var parTraverse_ = function (dictParallel) {-    return function (dictFoldable) {-        return function (f) {-            return function ($8) {-                return Control_Parallel_Class.sequential(dictParallel)(Data_Foldable.traverse_(dictParallel.Applicative1())(dictFoldable)(function ($9) {-                    return Control_Parallel_Class.parallel(dictParallel)(f($9));-                })($8));-            };-        };-    };-};-var parTraverse = function (dictParallel) {-    return function (dictTraversable) {-        return function (f) {-            return function ($10) {-                return Control_Parallel_Class.sequential(dictParallel)(Data_Traversable.traverse(dictTraversable)(dictParallel.Applicative1())(function ($11) {-                    return Control_Parallel_Class.parallel(dictParallel)(f($11));-                })($10));-            };-        };-    };-};-var parSequence_ = function (dictParallel) {-    return function (dictFoldable) {-        return parTraverse_(dictParallel)(dictFoldable)(Control_Category.id(Control_Category.categoryFn));-    };-};-var parSequence = function (dictParallel) {-    return function (dictTraversable) {-        return parTraverse(dictParallel)(dictTraversable)(Control_Category.id(Control_Category.categoryFn));-    };-};-module.exports = {-    parSequence: parSequence, -    parSequence_: parSequence_, -    parTraverse: parTraverse, -    parTraverse_: parTraverse_-};--},{"../Control.Category":47,"../Control.Parallel.Class":89,"../Control.Semigroupoid":92,"../Data.Foldable":143,"../Data.Traversable":244,"../Prelude":268}],91:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Data_Functor = require("../Data.Functor");-var Plus = function (Alt0, empty) {-    this.Alt0 = Alt0;-    this.empty = empty;-};-var plusArray = new Plus(function () {-    return Control_Alt.altArray;-}, [  ]);-var empty = function (dict) {-    return dict.empty;-};-module.exports = {-    Plus: Plus, -    empty: empty, -    plusArray: plusArray-};--},{"../Control.Alt":38,"../Data.Functor":155}],92:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Semigroupoid = function (compose) {-    this.compose = compose;-};-var semigroupoidFn = new Semigroupoid(function (f) {-    return function (g) {-        return function (x) {-            return f(g(x));-        };-    };-});-var compose = function (dict) {-    return dict.compose;-};-var composeFlipped = function (dictSemigroupoid) {-    return function (f) {-        return function (g) {-            return compose(dictSemigroupoid)(g)(f);-        };-    };-};-module.exports = {-    Semigroupoid: Semigroupoid, -    compose: compose, -    composeFlipped: composeFlipped, -    semigroupoidFn: semigroupoidFn-};--},{}],93:[function(require,module,exports){-/* global EventTarget */-"use strict";--exports._readEventTarget = function (left) {-  return function (right) {-    return function (foreign) {-      return foreign instanceof EventTarget ? left("Value is not an EventTarget") : right(foreign);-    };-  };-};--},{}],94:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Foreign = require("../Data.Foreign");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var EventType = function (x) {-    return x;-};-var wheelEventToEvent = Unsafe_Coerce.unsafeCoerce;-var uiEventToEvent = Unsafe_Coerce.unsafeCoerce;-var touchEventToEvent = Unsafe_Coerce.unsafeCoerce;-var readWheelEvent = Data_Foreign.unsafeReadTagged("WheelEvent");-var readUIEvent = Data_Foreign.unsafeReadTagged("UIEvent");-var readTouchEvent = Data_Foreign.unsafeReadTagged("TouchEvent");-var readProgressEvent = Data_Foreign.unsafeReadTagged("ProgressEvent");-var readMouseEvent = Data_Foreign.unsafeReadTagged("MouseEvent");-var readKeyboardEvent = Data_Foreign.unsafeReadTagged("KeyboardEvent");-var readInputEvent = Data_Foreign.unsafeReadTagged("InputEvent");-var readFocusEvent = Data_Foreign.unsafeReadTagged("FocusEvent");-var readEventTarget = $foreign._readEventTarget(Data_Either.Left.create)(Data_Either.Right.create);-var readCustomEvent = Data_Foreign.unsafeReadTagged("CustomEvent");-var readCompositionEvent = Data_Foreign.unsafeReadTagged("CompositionEvent");-var readClipboardEvent = Data_Foreign.unsafeReadTagged("ClipboardEvent");-var progressEventToEvent = Unsafe_Coerce.unsafeCoerce;-var ordEventType = Data_Ord.ordString;-var newtypeEventType = new Data_Newtype.Newtype(function (n) {-    return n;-}, EventType);-var mouseEventToEvent = Unsafe_Coerce.unsafeCoerce;-var keyboardEventToEvent = Unsafe_Coerce.unsafeCoerce;-var inputEventToEvent = Unsafe_Coerce.unsafeCoerce;-var focusEventToEvent = Unsafe_Coerce.unsafeCoerce;-var eqEventType = Data_Eq.eqString;-var customEventToEvent = Unsafe_Coerce.unsafeCoerce;-var compositionEventToEvent = Unsafe_Coerce.unsafeCoerce;-var clipboardEventToEvent = Unsafe_Coerce.unsafeCoerce;-module.exports = {-    EventType: EventType, -    clipboardEventToEvent: clipboardEventToEvent, -    compositionEventToEvent: compositionEventToEvent, -    customEventToEvent: customEventToEvent, -    focusEventToEvent: focusEventToEvent, -    inputEventToEvent: inputEventToEvent, -    keyboardEventToEvent: keyboardEventToEvent, -    mouseEventToEvent: mouseEventToEvent, -    progressEventToEvent: progressEventToEvent, -    readClipboardEvent: readClipboardEvent, -    readCompositionEvent: readCompositionEvent, -    readCustomEvent: readCustomEvent, -    readEventTarget: readEventTarget, -    readFocusEvent: readFocusEvent, -    readInputEvent: readInputEvent, -    readKeyboardEvent: readKeyboardEvent, -    readMouseEvent: readMouseEvent, -    readProgressEvent: readProgressEvent, -    readTouchEvent: readTouchEvent, -    readUIEvent: readUIEvent, -    readWheelEvent: readWheelEvent, -    touchEventToEvent: touchEventToEvent, -    uiEventToEvent: uiEventToEvent, -    wheelEventToEvent: wheelEventToEvent, -    newtypeEventType: newtypeEventType, -    eqEventType: eqEventType, -    ordEventType: ordEventType-};--},{"../Data.Either":136,"../Data.Eq":138,"../Data.Foreign":145,"../Data.Newtype":209,"../Data.Ord":216,"../Prelude":268,"../Unsafe.Coerce":271,"./foreign":93}],95:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var DOM_Event_Types = require("../DOM.Event.Types");-var Data_Foreign = require("../Data.Foreign");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var readFileList = Data_Foreign.unsafeReadTagged("FileList");-var fileToBlob = Unsafe_Coerce.unsafeCoerce;-var fileReaderToEventTarget = Unsafe_Coerce.unsafeCoerce;-module.exports = {-    fileReaderToEventTarget: fileReaderToEventTarget, -    fileToBlob: fileToBlob, -    readFileList: readFileList-};--},{"../DOM.Event.Types":94,"../Data.Foreign":145,"../Unsafe.Coerce":271}],96:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var DOM_Event_Types = require("../DOM.Event.Types");-var DOM_Util_FFI = require("../DOM.Util.FFI");-var Data_Eq = require("../Data.Eq");-var Data_Foreign = require("../Data.Foreign");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var ElementId = function (x) {-    return x;-};-var textToNode = Unsafe_Coerce.unsafeCoerce;-var readNode = DOM_Util_FFI.unsafeReadProtoTagged("Node");-var readElement = DOM_Util_FFI.unsafeReadProtoTagged("Element");-var readDocument = DOM_Util_FFI.unsafeReadProtoTagged("Document");-var processingInstructionToNode = Unsafe_Coerce.unsafeCoerce;-var oOrdElementId = Data_Ord.ordString;-var newtypeElementId = new Data_Newtype.Newtype(function (n) {-    return n;-}, ElementId);-var eqElementId = Data_Eq.eqString;-var elementToParentNode = Unsafe_Coerce.unsafeCoerce;-var elementToNonDocumentTypeChildNode = Unsafe_Coerce.unsafeCoerce;-var elementToNode = Unsafe_Coerce.unsafeCoerce;-var elementToEventTarget = Unsafe_Coerce.unsafeCoerce;-var documentTypeToNode = Unsafe_Coerce.unsafeCoerce;-var documentToParentNode = Unsafe_Coerce.unsafeCoerce;-var documentToNonElementParentNode = Unsafe_Coerce.unsafeCoerce;-var documentToNode = Unsafe_Coerce.unsafeCoerce;-var documentToEventTarget = Unsafe_Coerce.unsafeCoerce;-var documentFragmentToParentNode = Unsafe_Coerce.unsafeCoerce;-var documentFragmentToNonElementParentNode = Unsafe_Coerce.unsafeCoerce;-var documentFragmentToNode = Unsafe_Coerce.unsafeCoerce;-var commentToNode = Unsafe_Coerce.unsafeCoerce;-var characterDataToNonDocumentTypeChildNode = Unsafe_Coerce.unsafeCoerce;-module.exports = {-    ElementId: ElementId, -    characterDataToNonDocumentTypeChildNode: characterDataToNonDocumentTypeChildNode, -    commentToNode: commentToNode, -    documentFragmentToNode: documentFragmentToNode, -    documentFragmentToNonElementParentNode: documentFragmentToNonElementParentNode, -    documentFragmentToParentNode: documentFragmentToParentNode, -    documentToEventTarget: documentToEventTarget, -    documentToNode: documentToNode, -    documentToNonElementParentNode: documentToNonElementParentNode, -    documentToParentNode: documentToParentNode, -    documentTypeToNode: documentTypeToNode, -    elementToEventTarget: elementToEventTarget, -    elementToNode: elementToNode, -    elementToNonDocumentTypeChildNode: elementToNonDocumentTypeChildNode, -    elementToParentNode: elementToParentNode, -    processingInstructionToNode: processingInstructionToNode, -    readDocument: readDocument, -    readElement: readElement, -    readNode: readNode, -    textToNode: textToNode, -    newtypeElementId: newtypeElementId, -    eqElementId: eqElementId, -    oOrdElementId: oOrdElementId-};--},{"../DOM.Event.Types":94,"../DOM.Util.FFI":98,"../Data.Eq":138,"../Data.Foreign":145,"../Data.Newtype":209,"../Data.Ord":216,"../Prelude":268,"../Unsafe.Coerce":271}],97:[function(require,module,exports){-"use strict";--exports._unsafeReadProtoTagged = function (name) {-  return function (failure) {-    return function (success) {-      return function (value) {-        var obj = value;-        while (obj != null) {-          var proto = Object.getPrototypeOf(obj);-          var ctor = proto.constructor.name;-          if (ctor === name) {-            return success(value);-          } else if (ctor === "Object") {-            return failure(Object.getPrototypeOf(value).constructor.name);-          }-          obj = proto;-        }-        return failure(Object.getPrototypeOf(value).constructor.name);-      };-    };-  };-};--},{}],98:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Monad_Except = require("../Control.Monad.Except");-var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Foreign = require("../Data.Foreign");-var Data_Identity = require("../Data.Identity");-var Data_List_Types = require("../Data.List.Types");-var Prelude = require("../Prelude");-var unsafeReadProtoTagged = function (name) {-    return $foreign._unsafeReadProtoTagged(name)(function ($0) {-        return Control_Monad_Except_Trans.except(Data_Identity.applicativeIdentity)(Data_Either.Left.create(Control_Applicative.pure(Data_List_Types.applicativeNonEmptyList)(Data_Foreign.TypeMismatch.create(name)($0))));-    })(function ($1) {-        return Control_Monad_Except_Trans.except(Data_Identity.applicativeIdentity)(Data_Either.Right.create($1));-    });-};-module.exports = {-    unsafeReadProtoTagged: unsafeReadProtoTagged-};--},{"../Control.Applicative":40,"../Control.Monad.Except":73,"../Control.Monad.Except.Trans":72,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Foreign":145,"../Data.Identity":161,"../Data.List.Types":193,"../Prelude":268,"./foreign":97}],99:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-module.exports = {};--},{}],100:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Monad_Eff = require("../Control.Monad.Eff");-module.exports = {};--},{"../Control.Monad.Eff":70}],101:[function(require,module,exports){-"use strict";--function id(x) {-  return x;-}--exports.fromNull = function () {-  return null;-};--exports.fromBoolean = id;-exports.fromNumber = id;-exports.fromString = id;-exports.fromArray = id;-exports.fromObject = id;--exports.jsonNull = null;--exports.stringify = function (j) {-  return JSON.stringify(j);-};--var objToString = Object.prototype.toString;-var objKeys = Object.keys;--function isArray(a) {-  return objToString.call(a) === "[object Array]";-}--exports._foldJson = function (isNull, isBool, isNum, isStr, isArr, isObj, j) {-  if (j == null) return isNull(null);-  else if (typeof j === "boolean") return isBool(j);-  else if (typeof j === "number") return isNum(j);-  else if (typeof j === "string") return isStr(j);-  else if (objToString.call(j) === "[object Array]")-    return isArr(j);-  else return isObj(j);-};--exports._compare = function _compare (EQ, GT, LT, a, b) {-  if (a == null) {-    if (b == null) return EQ;-    else return LT;-  } else if (typeof a === "boolean") {-    if (typeof b === "boolean") {-      // boolean / boolean-      if (a === b) return EQ;-      else if (a === false) return LT;-      else return GT;-    } else if (b == null) return GT;-    else return LT;-  } else if (typeof a === "number") {-    if (typeof b === "number") {-      if (a === b) return EQ;-      else if (a < b) return LT;-      else return GT;-    } else if (b == null) return GT;-    else if (typeof b === "boolean") return GT;-    else return LT;-  } else if (typeof a === "string") {-    if (typeof b === "string") {-      if (a === b) return EQ;-      else if (a < b) return LT;-      else return GT;-    } else if (b == null) return GT;-    else if (typeof b === "boolean") return GT;-    else if (typeof b === "number") return GT;-    else return LT;-  } else if (isArray(a)) {-    if (isArray(b)) {-      for (var i = 0; i < Math.min(a.length, b.length); i++) {-        var ca = _compare(EQ, GT, LT, a[i], b[i]);-        if (ca !== EQ) return ca;-      }-      if (a.length === b.length) return EQ;-      else if (a.length < b.length) return LT;-      else return GT;-    } else if (b == null) return GT;-    else if (typeof b === "boolean") return GT;-    else if (typeof b === "number") return GT;-    else if (typeof b === "string") return GT;-    else return LT;-  } else {-    if (b == null) return GT;-    else if (typeof b === "boolean") return GT;-    else if (typeof b === "number") return GT;-    else if (typeof b === "string") return GT;-    else if (isArray(b)) return GT;-    else {-      var akeys = objKeys(a);-      var bkeys = objKeys(b);-      if (akeys.length < bkeys.length) return LT;-      else if (akeys.length > bkeys.length) return GT;-      var keys = akeys.concat(bkeys).sort();-      for (var j = 0; j < keys.length; j++) {-        var k = keys[j];-        if (a[k] === undefined) return LT;-        else if (b[k] === undefined) return GT;-        var ck = _compare(EQ, GT, LT, a[k], b[k]);-        if (ck !== EQ) return ck;-      }-      return EQ;-    }-  }-};--},{}],102:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Maybe = require("../Data.Maybe");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Show = require("../Data.Show");-var Data_StrMap = require("../Data.StrMap");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var verbJsonType = function (def) {-    return function (f) {-        return function (fold) {-            return fold(def)(f);-        };-    };-};-var toJsonType = verbJsonType(Data_Maybe.Nothing.value)(Data_Maybe.Just.create);-var showJson = new Data_Show.Show($foreign.stringify);-var showJNull = new Data_Show.Show(function (v) {-    return "null";-});-var jsonZero = $foreign.fromNumber(0.0);-var jsonTrue = $foreign.fromBoolean(true);-var jsonSingletonObject = function (key) {-    return function (val) {-        return $foreign.fromObject(Data_StrMap.singleton(key)(val));-    };-};-var jsonSingletonArray = function (j) {-    return $foreign.fromArray([ j ]);-};-var jsonFalse = $foreign.fromBoolean(false);-var jsonEmptyString = $foreign.fromString("");-var jsonEmptyObject = $foreign.fromObject(Data_StrMap.empty);-var jsonEmptyArray = $foreign.fromArray([  ]);-var jNull = Unsafe_Coerce.unsafeCoerce($foreign.jsonNull);-var isJsonType = verbJsonType(false)(Data_Function["const"](true));-var foldJsonString = function (d) {-    return function (f) {-        return function (j) {-            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), f, Data_Function["const"](d), Data_Function["const"](d), j);-        };-    };-};-var isString = isJsonType(foldJsonString);-var toString = toJsonType(foldJsonString);-var foldJsonObject = function (d) {-    return function (f) {-        return function (j) {-            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), f, j);-        };-    };-};-var isObject = isJsonType(foldJsonObject);-var toObject = toJsonType(foldJsonObject);-var foldJsonNumber = function (d) {-    return function (f) {-        return function (j) {-            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), f, Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), j);-        };-    };-};-var isNumber = isJsonType(foldJsonNumber);-var toNumber = toJsonType(foldJsonNumber);-var foldJsonNull = function (d) {-    return function (f) {-        return function (j) {-            return $foreign._foldJson(f, Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), j);-        };-    };-};-var isNull = isJsonType(foldJsonNull);-var toNull = toJsonType(foldJsonNull);-var foldJsonBoolean = function (d) {-    return function (f) {-        return function (j) {-            return $foreign._foldJson(Data_Function["const"](d), f, Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), j);-        };-    };-};-var isBoolean = isJsonType(foldJsonBoolean);-var toBoolean = toJsonType(foldJsonBoolean);-var foldJsonArray = function (d) {-    return function (f) {-        return function (j) {-            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), f, Data_Function["const"](d), j);-        };-    };-};-var isArray = isJsonType(foldJsonArray);-var toArray = toJsonType(foldJsonArray);-var foldJson = function (a) {-    return function (b) {-        return function (c) {-            return function (d) {-                return function (e) {-                    return function (f) {-                        return function (json) {-                            return $foreign._foldJson(a, b, c, d, e, f, json);-                        };-                    };-                };-            };-        };-    };-};-var ordJson = new Data_Ord.Ord(function () {-    return eqJson;-}, function (a) {-    return function (b) {-        return $foreign._compare(Data_Ordering.EQ.value, Data_Ordering.GT.value, Data_Ordering.LT.value, a, b);-    };-});-var eqJson = new Data_Eq.Eq(function (j1) {-    return function (j2) {-        return Data_Eq.eq(Data_Ordering.eqOrdering)(Data_Ord.compare(ordJson)(j1)(j2))(Data_Ordering.EQ.value);-    };-});-var eqJNull = new Data_Eq.Eq(function (v) {-    return function (v1) {-        return true;-    };-});-var ordJNull = new Data_Ord.Ord(function () {-    return eqJNull;-}, function (v) {-    return function (v1) {-        return Data_Ordering.EQ.value;-    };-});-module.exports = {-    foldJson: foldJson, -    foldJsonArray: foldJsonArray, -    foldJsonBoolean: foldJsonBoolean, -    foldJsonNull: foldJsonNull, -    foldJsonNumber: foldJsonNumber, -    foldJsonObject: foldJsonObject, -    foldJsonString: foldJsonString, -    isArray: isArray, -    isBoolean: isBoolean, -    isNull: isNull, -    isNumber: isNumber, -    isObject: isObject, -    isString: isString, -    jNull: jNull, -    jsonEmptyArray: jsonEmptyArray, -    jsonEmptyObject: jsonEmptyObject, -    jsonEmptyString: jsonEmptyString, -    jsonFalse: jsonFalse, -    jsonSingletonArray: jsonSingletonArray, -    jsonSingletonObject: jsonSingletonObject, -    jsonTrue: jsonTrue, -    jsonZero: jsonZero, -    toArray: toArray, -    toBoolean: toBoolean, -    toNull: toNull, -    toNumber: toNumber, -    toObject: toObject, -    toString: toString, -    eqJNull: eqJNull, -    ordJNull: ordJNull, -    showJNull: showJNull, -    eqJson: eqJson, -    ordJson: ordJson, -    showJson: showJson, -    fromArray: $foreign.fromArray, -    fromBoolean: $foreign.fromBoolean, -    fromNull: $foreign.fromNull, -    fromNumber: $foreign.fromNumber, -    fromObject: $foreign.fromObject, -    fromString: $foreign.fromString, -    jsonNull: $foreign.jsonNull, -    stringify: $foreign.stringify-};--},{"../Data.Eq":138,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Maybe":198,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Show":233,"../Data.StrMap":237,"../Data.Tuple":245,"../Prelude":268,"../Unsafe.Coerce":271,"./foreign":101}],103:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Boolean = require("../Data.Boolean");-var Data_Either = require("../Data.Either");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Int = require("../Data.Int");-var Data_List = require("../Data.List");-var Data_List_Types = require("../Data.List.Types");-var Data_Map = require("../Data.Map");-var Data_Maybe = require("../Data.Maybe");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_StrMap = require("../Data.StrMap");-var Data_String = require("../Data.String");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var DecodeJson = function (decodeJson) {-    this.decodeJson = decodeJson;-};-var decodeVoid = new DecodeJson(function (v) {-    return new Data_Either.Left("Value cannot be Void");-});-var decodeJsonString = new DecodeJson(Data_Argonaut_Core.foldJsonString(new Data_Either.Left("Value is not a String"))(Data_Either.Right.create));-var decodeJsonNumber = new DecodeJson(Data_Argonaut_Core.foldJsonNumber(new Data_Either.Left("Value is not a Number"))(Data_Either.Right.create));-var decodeJsonNull = new DecodeJson(Data_Argonaut_Core.foldJsonNull(new Data_Either.Left("Value is not a null"))(Data_Function["const"](new Data_Either.Right(Data_Unit.unit))));-var decodeJsonJson = new DecodeJson(Data_Either.Right.create);-var decodeJsonBoolean = new DecodeJson(Data_Argonaut_Core.foldJsonBoolean(new Data_Either.Left("Value is not a Boolean"))(Data_Either.Right.create));-var decodeJson = function (dict) {-    return dict.decodeJson;-};-var decodeJsonChar = new DecodeJson(function (j) {-    return Control_Bind.bindFlipped(Data_Either.bindEither)(Data_Maybe.maybe(Data_Either.Left.create("Expected character but found: " + Data_Show.show(Data_Argonaut_Core.showJson)(j)))(Data_Either.Right.create))(Data_Functor.map(Data_Either.functorEither)(Data_String.charAt(0))(decodeJson(decodeJsonString)(j)));-});-var decodeJsonInt = new DecodeJson(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(function ($36) {-    return Data_Maybe.maybe(new Data_Either.Left("Value is not an integer"))(Data_Either.Right.create)(Data_Int.fromNumber($36));-})(decodeJson(decodeJsonNumber)));-var decodeJObject = function ($37) {-    return Data_Maybe.maybe(new Data_Either.Left("Value is not an Object"))(Data_Either.Right.create)(Data_Argonaut_Core.toObject($37));-};-var decodeJsonEither = function (dictDecodeJson) {-    return function (dictDecodeJson1) {-        return new DecodeJson(function (json) {-            return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {-                return "Couldn't decode Either: " + v;-            })(Control_Bind.bind(Data_Either.bindEither)(decodeJObject(json))(function (obj) {-                return Control_Bind.bind(Data_Either.bindEither)(Data_Maybe.maybe(new Data_Either.Left("Expected field 'tag'"))(Data_Either.Right.create)(Data_StrMap.lookup("tag")(obj)))(function (v) {-                    return Control_Bind.bind(Data_Either.bindEither)(Data_Maybe.maybe(new Data_Either.Left("Expected field 'value'"))(Data_Either.Right.create)(Data_StrMap.lookup("value")(obj)))(function (v1) {-                        var v2 = Data_Argonaut_Core.toString(v);-                        if (v2 instanceof Data_Maybe.Just && v2.value0 === "Right") {-                            return Data_Functor.map(Data_Either.functorEither)(Data_Either.Right.create)(decodeJson(dictDecodeJson1)(v1));-                        };-                        if (v2 instanceof Data_Maybe.Just && v2.value0 === "Left") {-                            return Data_Functor.map(Data_Either.functorEither)(Data_Either.Left.create)(decodeJson(dictDecodeJson)(v1));-                        };-                        return new Data_Either.Left("'tag' field was not \"Left\" or \"Right\"");-                    });-                });-            }));-        });-    };-};-var decodeJsonMaybe = function (dictDecodeJson) {-    return new DecodeJson(function (j) {-        var lookupJust = function ($38) {-            return Data_Maybe.maybe(new Data_Either.Left("Missing property 'just'"))(Data_Either.Right.create)(Data_StrMap.lookup("just")($38));-        };-        var decode = Control_Bind.composeKleisli(Data_Either.bindEither)(decodeJObject)(Control_Bind.composeKleisli(Data_Either.bindEither)(lookupJust)(decodeJson(decodeJsonMaybe(dictDecodeJson))));-        var backwardsCompat = (function () {-            if (Data_Argonaut_Core.isNull(j)) {-                return Control_Applicative.pure(Data_Either.applicativeEither)(Data_Maybe.Nothing.value);-            };-            if (Data_Boolean.otherwise) {-                return Data_Functor.map(Data_Either.functorEither)(Data_Maybe.Just.create)(decodeJson(dictDecodeJson)(j));-            };-            throw new Error("Failed pattern match at Data.Argonaut.Decode.Class line 25, column 7 - line 35, column 42: " + [  ]);-        })();-        var v = decode(j);-        if (v instanceof Data_Either.Right) {-            return new Data_Either.Right(v.value0);-        };-        if (v instanceof Data_Either.Left) {-            return backwardsCompat;-        };-        throw new Error("Failed pattern match at Data.Argonaut.Decode.Class line 25, column 7 - line 27, column 34: " + [ v.constructor.name ]);-    });-};-var decodeStrMap = function (dictDecodeJson) {-    return new DecodeJson(function ($39) {-        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {-            return "Couldn't decode StrMap: " + v;-        })(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(Data_Traversable.traverse(Data_StrMap.traversableStrMap)(Data_Either.applicativeEither)(decodeJson(dictDecodeJson)))(decodeJObject)($39));-    });-};-var decodeJArray = function ($40) {-    return Data_Maybe.maybe(new Data_Either.Left("Value is not an Array"))(Data_Either.Right.create)(Data_Argonaut_Core.toArray($40));-};-var decodeList = function (dictDecodeJson) {-    return new DecodeJson(function ($41) {-        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {-            return "Couldn't decode List: " + v;-        })(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(Data_Traversable.traverse(Data_List_Types.traversableList)(Data_Either.applicativeEither)(decodeJson(dictDecodeJson)))(Data_Functor.map(Data_Functor.functorFn)(Data_Functor.map(Data_Either.functorEither)(Data_List.fromFoldable(Data_Foldable.foldableArray)))(decodeJArray))($41));-    });-};-var decodeJsonTuple = function (dictDecodeJson) {-    return function (dictDecodeJson1) {-        return new DecodeJson(function (j) {-            var f = function (v) {-                if (v instanceof Data_List_Types.Cons && (v.value1 instanceof Data_List_Types.Cons && v.value1.value1 instanceof Data_List_Types.Nil)) {-                    return Control_Apply.apply(Data_Either.applyEither)(Data_Functor.map(Data_Either.functorEither)(Data_Tuple.Tuple.create)(decodeJson(dictDecodeJson)(v.value0)))(decodeJson(dictDecodeJson1)(v.value1.value0));-                };-                return new Data_Either.Left("Couldn't decode Tuple");-            };-            return Control_Bind.bind(Data_Either.bindEither)(decodeJson(decodeList(decodeJsonJson))(j))(f);-        });-    };-};-var decodeMap = function (dictOrd) {-    return function (dictDecodeJson) {-        return function (dictDecodeJson1) {-            return new DecodeJson(function ($42) {-                return Data_Functor.map(Data_Either.functorEither)(Data_Map.fromFoldable(dictOrd)(Data_List_Types.foldableList))(decodeJson(decodeList(decodeJsonTuple(dictDecodeJson)(dictDecodeJson1)))($42));-            });-        };-    };-};-var decodeArray = function (dictDecodeJson) {-    return new DecodeJson(function ($43) {-        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {-            return "Couldn't decode Array: " + v;-        })(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(Data_Traversable.traverse(Data_Traversable.traversableArray)(Data_Either.applicativeEither)(decodeJson(dictDecodeJson)))(decodeJArray)($43));-    });-};-module.exports = {-    DecodeJson: DecodeJson, -    decodeJson: decodeJson, -    decodeJsonMaybe: decodeJsonMaybe, -    decodeJsonTuple: decodeJsonTuple, -    decodeJsonEither: decodeJsonEither, -    decodeJsonNull: decodeJsonNull, -    decodeJsonBoolean: decodeJsonBoolean, -    decodeJsonNumber: decodeJsonNumber, -    decodeJsonInt: decodeJsonInt, -    decodeJsonString: decodeJsonString, -    decodeJsonJson: decodeJsonJson, -    decodeJsonChar: decodeJsonChar, -    decodeStrMap: decodeStrMap, -    decodeArray: decodeArray, -    decodeList: decodeList, -    decodeMap: decodeMap, -    decodeVoid: decodeVoid-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Semigroupoid":92,"../Data.Argonaut.Core":102,"../Data.Bifunctor":127,"../Data.Boolean":129,"../Data.Either":136,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.Int":165,"../Data.List":194,"../Data.List.Types":193,"../Data.Map":195,"../Data.Maybe":198,"../Data.Semigroup":229,"../Data.Show":233,"../Data.StrMap":237,"../Data.String":241,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268}],104:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_StrMap = require("../Data.StrMap");-var Prelude = require("../Prelude");-var getFieldOptional = function (dictDecodeJson) {-    return function (o) {-        return function (s) {-            var decode = function (json) {-                return Data_Functor.map(Data_Either.functorEither)(Data_Maybe.Just.create)(Data_Argonaut_Decode_Class.decodeJson(dictDecodeJson)(json));-            };-            return Data_Maybe.maybe(Control_Applicative.pure(Data_Either.applicativeEither)(Data_Maybe.Nothing.value))(decode)(Data_StrMap.lookup(s)(o));-        };-    };-};-var getField = function (dictDecodeJson) {-    return function (o) {-        return function (s) {-            return Data_Maybe.maybe(Data_Either.Left.create("Expected field " + Data_Show.show(Data_Show.showString)(s)))(Data_Argonaut_Decode_Class.decodeJson(dictDecodeJson))(Data_StrMap.lookup(s)(o));-        };-    };-};-module.exports = {-    getField: getField, -    getFieldOptional: getFieldOptional-};--},{"../Control.Applicative":40,"../Data.Argonaut.Core":102,"../Data.Argonaut.Decode.Class":103,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Maybe":198,"../Data.Semigroup":229,"../Data.Show":233,"../Data.StrMap":237,"../Prelude":268}],105:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");-var Data_Argonaut_Decode_Combinators = require("../Data.Argonaut.Decode.Combinators");-module.exports = {};--},{"../Data.Argonaut.Decode.Class":103,"../Data.Argonaut.Decode.Combinators":104}],106:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Int = require("../Data.Int");-var Data_List = require("../Data.List");-var Data_List_Types = require("../Data.List.Types");-var Data_Map = require("../Data.Map");-var Data_Maybe = require("../Data.Maybe");-var Data_StrMap = require("../Data.StrMap");-var Data_String = require("../Data.String");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Data_Void = require("../Data.Void");-var Prelude = require("../Prelude");-var EncodeJson = function (encodeJson) {-    this.encodeJson = encodeJson;-};-var encodeVoid = new EncodeJson(Data_Void.absurd);-var encodeJsonUnit = new EncodeJson(Data_Function["const"](Data_Argonaut_Core.jsonNull));-var encodeJsonJson = new EncodeJson(Control_Category.id(Control_Category.categoryFn));-var encodeJsonJString = new EncodeJson(Data_Argonaut_Core.fromString);-var encodeJsonJNumber = new EncodeJson(Data_Argonaut_Core.fromNumber);-var encodeJsonJBoolean = new EncodeJson(Data_Argonaut_Core.fromBoolean);-var encodeJsonInt = new EncodeJson(function ($19) {-    return Data_Argonaut_Core.fromNumber(Data_Int.toNumber($19));-});-var encodeJson = function (dict) {-    return dict.encodeJson;-};-var encodeJsonArray = function (dictEncodeJson) {-    return new EncodeJson(function (json) {-        return Data_Argonaut_Core.fromArray(Data_Functor.map(Data_Functor.functorArray)(encodeJson(dictEncodeJson))(json));-    });-};-var encodeJsonChar = new EncodeJson(function ($20) {-    return encodeJson(encodeJsonJString)(Data_String.singleton($20));-});-var encodeJsonEither = function (dictEncodeJson) {-    return function (dictEncodeJson1) {-        return new EncodeJson((function () {-            var obj = function (dictEncodeJson2) {-                return function (tag) {-                    return function (x) {-                        return Data_Argonaut_Core.fromObject(Data_StrMap.fromFoldable(Data_List_Types.foldableList)(new Data_List_Types.Cons(new Data_Tuple.Tuple("tag", Data_Argonaut_Core.fromString(tag)), new Data_List_Types.Cons(new Data_Tuple.Tuple("value", encodeJson(dictEncodeJson2)(x)), Data_List_Types.Nil.value))));-                    };-                };-            };-            return Data_Either.either(obj(dictEncodeJson)("Left"))(obj(dictEncodeJson1)("Right"));-        })());-    };-};-var encodeJsonList = function (dictEncodeJson) {-    return new EncodeJson(function ($21) {-        return Data_Argonaut_Core.fromArray(Data_Functor.map(Data_Functor.functorArray)(encodeJson(dictEncodeJson))(Data_List.toUnfoldable(Data_Unfoldable.unfoldableArray)($21)));-    });-};-var encodeJsonMaybe = function (dictEncodeJson) {-    return new EncodeJson(function (v) {-        if (v instanceof Data_Maybe.Nothing) {-            return Data_Argonaut_Core.jsonEmptyObject;-        };-        if (v instanceof Data_Maybe.Just) {-            return Data_Argonaut_Core.jsonSingletonObject("just")(encodeJson(dictEncodeJson)(v.value0));-        };-        throw new Error("Failed pattern match at Data.Argonaut.Encode.Class line 19, column 3 - line 19, column 40: " + [ v.constructor.name ]);-    });-};-var encodeJsonTuple = function (dictEncodeJson) {-    return function (dictEncodeJson1) {-        return new EncodeJson(function (v) {-            return encodeJson(encodeJsonArray(encodeJsonJson))([ encodeJson(dictEncodeJson)(v.value0), encodeJson(dictEncodeJson1)(v.value1) ]);-        });-    };-};-var encodeMap = function (dictOrd) {-    return function (dictEncodeJson) {-        return function (dictEncodeJson1) {-            return new EncodeJson(function ($22) {-                return encodeJson(encodeJsonList(encodeJsonTuple(dictEncodeJson)(dictEncodeJson1)))(Data_Map.toUnfoldable(Data_List_Types.unfoldableList)($22));-            });-        };-    };-};-var encodeStrMap = function (dictEncodeJson) {-    return new EncodeJson(function ($23) {-        return Data_Argonaut_Core.fromObject(Data_Functor.map(Data_StrMap.functorStrMap)(encodeJson(dictEncodeJson))($23));-    });-};-module.exports = {-    EncodeJson: EncodeJson, -    encodeJson: encodeJson, -    encodeJsonMaybe: encodeJsonMaybe, -    encodeJsonTuple: encodeJsonTuple, -    encodeJsonEither: encodeJsonEither, -    encodeJsonUnit: encodeJsonUnit, -    encodeJsonJBoolean: encodeJsonJBoolean, -    encodeJsonJNumber: encodeJsonJNumber, -    encodeJsonInt: encodeJsonInt, -    encodeJsonJString: encodeJsonJString, -    encodeJsonJson: encodeJsonJson, -    encodeJsonChar: encodeJsonChar, -    encodeJsonArray: encodeJsonArray, -    encodeJsonList: encodeJsonList, -    encodeStrMap: encodeStrMap, -    encodeMap: encodeMap, -    encodeVoid: encodeVoid-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Argonaut.Core":102,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Int":165,"../Data.List":194,"../Data.List.Types":193,"../Data.Map":195,"../Data.Maybe":198,"../Data.StrMap":237,"../Data.String":241,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Data.Void":250,"../Prelude":268}],107:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Argonaut_Encode_Class = require("../Data.Argonaut.Encode.Class");-var Data_StrMap = require("../Data.StrMap");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var extend = function (dictEncodeJson) {-    return function (v) {-        return function ($6) {-            return Data_Argonaut_Core.foldJsonObject(Data_Argonaut_Core.jsonSingletonObject(v.value0)(v.value1))(function ($7) {-                return Data_Argonaut_Core.fromObject(Data_StrMap.insert(v.value0)(v.value1)($7));-            })(Data_Argonaut_Encode_Class.encodeJson(dictEncodeJson)($6));-        };-    };-};-var assoc = function (dictEncodeJson) {-    return function (k) {-        return function ($8) {-            return Data_Tuple.Tuple.create(k)(Data_Argonaut_Encode_Class.encodeJson(dictEncodeJson)($8));-        };-    };-};-module.exports = {-    assoc: assoc, -    extend: extend-};--},{"../Control.Semigroupoid":92,"../Data.Argonaut.Core":102,"../Data.Argonaut.Encode.Class":106,"../Data.StrMap":237,"../Data.Tuple":245,"../Prelude":268}],108:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Argonaut_Encode_Class = require("../Data.Argonaut.Encode.Class");-var Data_Argonaut_Encode_Combinators = require("../Data.Argonaut.Encode.Combinators");-module.exports = {};--},{"../Data.Argonaut.Encode.Class":106,"../Data.Argonaut.Encode.Combinators":107}],109:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");-var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");-var Data_Argonaut_Encode = require("../Data.Argonaut.Encode");-var Data_Argonaut_Encode_Class = require("../Data.Argonaut.Encode.Class");-var Data_Array = require("../Data.Array");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Int = require("../Data.Int");-var Data_List = require("../Data.List");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_StrMap = require("../Data.StrMap");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Prelude = require("../Prelude");-var JsonPrim = function (x) {-    return x;-};-var JCursorTop = (function () {-    function JCursorTop() {--    };-    JCursorTop.value = new JCursorTop();-    return JCursorTop;-})();-var JField = (function () {-    function JField(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    JField.create = function (value0) {-        return function (value1) {-            return new JField(value0, value1);-        };-    };-    return JField;-})();-var JIndex = (function () {-    function JIndex(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    JIndex.create = function (value0) {-        return function (value1) {-            return new JIndex(value0, value1);-        };-    };-    return JIndex;-})();-var showJCursor = new Data_Show.Show(function (v) {-    if (v instanceof JCursorTop) {-        return "JCursorTop";-    };-    if (v instanceof JField) {-        return "(JField " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(showJCursor)(v.value1) + ")")));-    };-    if (v instanceof JIndex) {-        return "(JIndex " + (Data_Show.show(Data_Show.showInt)(v.value0) + (" " + (Data_Show.show(showJCursor)(v.value1) + ")")));-    };-    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 28, column 3 - line 29, column 3: " + [ v.constructor.name ]);-});-var semigroupJCursor = new Data_Semigroup.Semigroup(function (v) {-    return function (v1) {-        if (v1 instanceof JCursorTop) {-            return v;-        };-        if (v instanceof JCursorTop) {-            return v1;-        };-        if (v instanceof JField) {-            return new JField(v.value0, Data_Semigroup.append(semigroupJCursor)(v.value1)(v1));-        };-        if (v instanceof JIndex) {-            return new JIndex(v.value0, Data_Semigroup.append(semigroupJCursor)(v.value1)(v1));-        };-        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 38, column 3 - line 38, column 26: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var runJsonPrim = function (v) {-    return v;-};-var showJsonPrim = new Data_Show.Show(function (p) {-    return runJsonPrim(p)(Data_Show.show(Data_Argonaut_Core.showJNull))(Data_Show.show(Data_Show.showBoolean))(Data_Show.show(Data_Show.showNumber))(Data_Show.show(Data_Show.showString));-});-var print = function (v) {-    if (v instanceof JCursorTop) {-        return "";-    };-    if (v instanceof JField) {-        return "." + (v.value0 + Data_Show.show(showJCursor)(v.value1));-    };-    if (v instanceof JIndex) {-        return "[" + (Data_Show.show(Data_Show.showInt)(v.value0) + ("]" + Data_Show.show(showJCursor)(v.value1)));-    };-    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 33, column 1 - line 34, column 1: " + [ v.constructor.name ]);-};-var primToJson = function (p) {-    return runJsonPrim(p)(Data_Argonaut_Core.fromNull)(Data_Argonaut_Core.fromBoolean)(Data_Argonaut_Core.fromNumber)(Data_Argonaut_Core.fromString);-};-var primStr = function (v) {-    return function (v1) {-        return function (v2) {-            return function (v3) {-                return function (f) {-                    return f(v);-                };-            };-        };-    };-};-var primNum = function (v) {-    return function (v1) {-        return function (v2) {-            return function (f) {-                return function (v3) {-                    return f(v);-                };-            };-        };-    };-};-var primNull = function (f) {-    return function (v) {-        return function (v1) {-            return function (v2) {-                return f(Data_Argonaut_Core.jNull);-            };-        };-    };-};-var primBool = function (v) {-    return function (v1) {-        return function (f) {-            return function (v2) {-                return function (v3) {-                    return f(v);-                };-            };-        };-    };-};-var toPrims = (function () {-    var objFn = function (obj) {-        var f = function (v) {-            return Data_Functor.map(Data_List_Types.functorList)(function (t) {-                return new Data_Tuple.Tuple(new JField(v.value0, Data_Tuple.fst(t)), Data_Tuple.snd(t));-            })(toPrims(v.value1));-        };-        return Control_Bind.bind(Data_List_Types.bindList)(Data_StrMap.toUnfoldable(Data_List_Types.unfoldableList)(obj))(f);-    };-    var mkTop = function (p) {-        return Data_List.singleton(new Data_Tuple.Tuple(JCursorTop.value, p));-    };-    var nullFn = function (v) {-        return mkTop(primNull);-    };-    var numFn = function (n) {-        return mkTop(primNum(n));-    };-    var strFn = function (s) {-        return mkTop(primStr(s));-    };-    var boolFn = function (b) {-        return mkTop(primBool(b));-    };-    var arrFn$prime = function (v) {-        return Data_List.fromFoldable(Data_List_Types.foldableList)(Data_Functor.map(Data_List_Types.functorList)(function (t) {-            return new Data_Tuple.Tuple(new JIndex(v.value0, Data_Tuple.fst(t)), Data_Tuple.snd(t));-        })(toPrims(v.value1)));-    };-    var arrFn = function (arr) {-        var zipped = Data_List.zipWith(Data_Tuple.Tuple.create)(Data_List.range(0)(Data_Array.length(arr) - 1 | 0))(Data_List.fromFoldable(Data_Foldable.foldableArray)(arr));-        return Control_Bind.bind(Data_List_Types.bindList)(zipped)(arrFn$prime);-    };-    return Data_Argonaut_Core.foldJson(nullFn)(boolFn)(numFn)(strFn)(arrFn)(objFn);-})();-var monoidJCursor = new Data_Monoid.Monoid(function () {-    return semigroupJCursor;-}, JCursorTop.value);-var inferEmpty = function (v) {-    if (v instanceof JCursorTop) {-        return Data_Argonaut_Core.jsonNull;-    };-    if (v instanceof JField) {-        return Data_Argonaut_Core.jsonEmptyObject;-    };-    if (v instanceof JIndex) {-        return Data_Argonaut_Core.jsonEmptyArray;-    };-    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 98, column 1 - line 98, column 37: " + [ v.constructor.name ]);-};-var fail = function (dictShow) {-    return function (x) {-        return Data_Either.Left.create("Expected String or Number but found: " + Data_Show.show(dictShow)(x));-    };-};-var eqJCursor = new Data_Eq.Eq(function (x) {-    return function (y) {-        if (x instanceof JCursorTop && y instanceof JCursorTop) {-            return true;-        };-        if (x instanceof JField && y instanceof JField) {-            return x.value0 === y.value0 && Data_Eq.eq(eqJCursor)(x.value1)(y.value1);-        };-        if (x instanceof JIndex && y instanceof JIndex) {-            return x.value0 === y.value0 && Data_Eq.eq(eqJCursor)(x.value1)(y.value1);-        };-        return false;-    };-});-var ordJCursor = new Data_Ord.Ord(function () {-    return eqJCursor;-}, function (x) {-    return function (y) {-        if (x instanceof JCursorTop && y instanceof JCursorTop) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof JCursorTop) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof JCursorTop) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof JField && y instanceof JField) {-            var v = Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);-            if (v instanceof Data_Ordering.LT) {-                return Data_Ordering.LT.value;-            };-            if (v instanceof Data_Ordering.GT) {-                return Data_Ordering.GT.value;-            };-            return Data_Ord.compare(ordJCursor)(x.value1)(y.value1);-        };-        if (x instanceof JField) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof JField) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof JIndex && y instanceof JIndex) {-            var v = Data_Ord.compare(Data_Ord.ordInt)(x.value0)(y.value0);-            if (v instanceof Data_Ordering.LT) {-                return Data_Ordering.LT.value;-            };-            if (v instanceof Data_Ordering.GT) {-                return Data_Ordering.GT.value;-            };-            return Data_Ord.compare(ordJCursor)(x.value1)(y.value1);-        };-        throw new Error("Failed pattern match: " + [ x.constructor.name, y.constructor.name ]);-    };-});-var encodeJsonJCursor = new Data_Argonaut_Encode_Class.EncodeJson((function () {-    var loop = function (v) {-        if (v instanceof JCursorTop) {-            return [  ];-        };-        if (v instanceof JField) {-            return Data_Semigroup.append(Data_Semigroup.semigroupArray)([ Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonJString)(v.value0) ])(loop(v.value1));-        };-        if (v instanceof JIndex) {-            return Data_Semigroup.append(Data_Semigroup.semigroupArray)([ Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonInt)(v.value0) ])(loop(v.value1));-        };-        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 47, column 16 - line 50, column 49: " + [ v.constructor.name ]);-    };-    return function ($151) {-        return Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonArray(Data_Argonaut_Encode_Class.encodeJsonJson))(loop($151));-    };-})());-var downIndex = function (i) {-    var downIndex$prime = function (v) {-        if (v instanceof JCursorTop) {-            return new JIndex(i, JCursorTop.value);-        };-        if (v instanceof JField) {-            return new JField(v.value0, downIndex$prime(v.value1));-        };-        if (v instanceof JIndex) {-            return new JIndex(v.value0, downIndex$prime(v.value1));-        };-        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 87, column 15 - line 90, column 54: " + [ v.constructor.name ]);-    };-    return downIndex$prime;-};-var downField = function (i) {-    var downField$prime = function (v) {-        if (v instanceof JCursorTop) {-            return new JField(i, JCursorTop.value);-        };-        if (v instanceof JField) {-            return new JField(v.value0, downField$prime(v.value1));-        };-        if (v instanceof JIndex) {-            return new JIndex(v.value0, downField$prime(v.value1));-        };-        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 81, column 15 - line 84, column 54: " + [ v.constructor.name ]);-    };-    return downField$prime;-};-var insideOut = function (v) {-    if (v instanceof JCursorTop) {-        return JCursorTop.value;-    };-    if (v instanceof JField) {-        return downField(v.value0)(insideOut(v.value1));-    };-    if (v instanceof JIndex) {-        return downIndex(v.value0)(insideOut(v.value1));-    };-    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 76, column 1 - line 76, column 34: " + [ v.constructor.name ]);-};-var decodeJsonJCursor = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {-    var goNum = function (c) {-        return function ($152) {-            return Data_Maybe.maybe(new Data_Either.Left("Not an Int"))(function ($153) {-                return Data_Either.Right.create(Data_Function.flip(JIndex.create)(c)($153));-            })(Data_Int.fromNumber($152));-        };-    };-    var loop = function (arr) {-        return Data_Maybe.maybe(new Data_Either.Right(JCursorTop.value))(goLoop)(Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_Tuple.Tuple.create)(Data_Array.head(arr)))(Data_Array.tail(arr)));-    };-    var goLoop = function (v) {-        return Control_Bind.bind(Data_Either.bindEither)(loop(v.value1))(function (v1) {-            return Data_Argonaut_Core.foldJson(fail(Data_Argonaut_Core.showJNull))(fail(Data_Show.showBoolean))(goNum(v1))(function ($154) {-                return Data_Either.Right.create(Data_Function.flip(JField.create)(v1)($154));-            })(fail(Data_Show.showArray(Data_Argonaut_Core.showJson)))(fail(Data_StrMap.showStrMap(Data_Argonaut_Core.showJson)))(v.value0);-        });-    };-    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeArray(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(loop);-});-var cursorSet = function (v) {-    return function (v1) {-        if (v instanceof JCursorTop) {-            return function ($155) {-                return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(Data_Function["const"](v1)($155));-            };-        };-        if (v instanceof JField) {-            var mergeObjs = function (m) {-                return Data_Functor.map(Data_Maybe.functorMaybe)(function ($156) {-                    return Data_Argonaut_Core.fromObject(Data_Function.flip(Data_StrMap.insert(v.value0))(m)($156));-                })(cursorSet(v.value1)(v1)(Data_Maybe.fromMaybe(inferEmpty(v.value1))(Data_StrMap.lookup(v.value0)(m))));-            };-            var defaultObj = Data_Functor.map(Data_Maybe.functorMaybe)(function ($157) {-                return Data_Argonaut_Core.fromObject(Data_StrMap.singleton(v.value0)($157));-            })(cursorSet(v.value1)(v1)(inferEmpty(v.value1)));-            return Data_Argonaut_Core.foldJsonObject(defaultObj)(mergeObjs);-        };-        if (v instanceof JIndex) {-            var setArr = function (__copy_xs) {-                return function (__copy_i$prime) {-                    return function (__copy_v$prime) {-                        var xs = __copy_xs;-                        var i$prime = __copy_i$prime;-                        var v$prime = __copy_v$prime;-                        var __tco_done = false;-                        var __tco_result;-                        var __tco_xs;-                        var __tco_i$prime;-                        var __tco_v$prime;-                        function __tco_loop(xs, i$prime, v$prime) {-                            var len = Data_Array.length(xs);-                            var $138 = i$prime < 0;-                            if ($138) {-                                __tco_done = true;-                                return Data_Maybe.Nothing.value;-                            };-                            var $139 = i$prime >= len;-                            if ($139) {-                                __tco_xs = Data_Semigroup.append(Data_Semigroup.semigroupArray)(xs)(Data_Unfoldable.replicate(Data_Unfoldable.unfoldableArray)((i$prime - len | 0) + 1 | 0)(Data_Argonaut_Core.jsonNull));-                                __tco_i$prime = i$prime;-                                __tco_v$prime = v$prime;-                                return;-                            };-                            __tco_done = true;-                            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Argonaut_Core.fromArray)(Data_Array.updateAt(i$prime)(v$prime)(xs));-                        };-                        while (!__tco_done) {-                            __tco_result = __tco_loop(xs, i$prime, v$prime);-                            xs = __tco_xs;-                            i$prime = __tco_i$prime;-                            v$prime = __tco_v$prime;-                        };-                        return __tco_result;-                    };-                };-            };-            var mergeArrs = function (a) {-                return Control_Bind.bindFlipped(Data_Maybe.bindMaybe)(setArr(a)(v.value0))(cursorSet(v.value1)(v1)(Data_Maybe.fromMaybe(inferEmpty(v.value1))(Data_Array.index(a)(v.value0))));-            };-            var defaultArr = Data_Functor.map(Data_Maybe.functorMaybe)(Data_Argonaut_Core.fromArray)(Control_Bind.bindFlipped(Data_Maybe.bindMaybe)(Data_Function.flip(Data_Array.updateAt(v.value0))(Data_Unfoldable.replicate(Data_Unfoldable.unfoldableArray)(v.value0 + 1 | 0)(Data_Argonaut_Core.jsonNull)))(cursorSet(v.value1)(v1)(inferEmpty(v.value1))));-            return Data_Argonaut_Core.foldJsonArray(defaultArr)(mergeArrs);-        };-        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 103, column 1 - line 103, column 42: " + [ v.constructor.name, v1.constructor.name ]);-    };-};-var fromPrims = function (lst) {-    var f = function (j) {-        return function (v) {-            return Control_Bind.bind(Data_Maybe.bindMaybe)(j)(cursorSet(v.value0)(primToJson(v.value1)));-        };-    };-    return Data_Foldable.foldl(Data_List_Types.foldableList)(f)(Data_Functor.map(Data_Maybe.functorMaybe)(function ($158) {-        return inferEmpty(Data_Tuple.fst($158));-    })(Data_List.head(lst)))(lst);-};-var cursorGet = function (v) {-    if (v instanceof JCursorTop) {-        return Data_Maybe.Just.create;-    };-    if (v instanceof JField) {-        return Data_Argonaut_Core.foldJsonObject(Data_Maybe.Nothing.value)(Control_Bind.composeKleisliFlipped(Data_Maybe.bindMaybe)(cursorGet(v.value1))(Data_StrMap.lookup(v.value0)));-    };-    if (v instanceof JIndex) {-        return Data_Argonaut_Core.foldJsonArray(Data_Maybe.Nothing.value)(Control_Bind.composeKleisliFlipped(Data_Maybe.bindMaybe)(cursorGet(v.value1))(function (v1) {-            return Data_Array.index(v1)(v.value0);-        }));-    };-    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 93, column 1 - line 93, column 28: " + [ v.constructor.name ]);-};-module.exports = {-    JCursorTop: JCursorTop, -    JField: JField, -    JIndex: JIndex, -    JsonPrim: JsonPrim, -    cursorGet: cursorGet, -    cursorSet: cursorSet, -    downField: downField, -    downIndex: downIndex, -    fail: fail, -    fromPrims: fromPrims, -    inferEmpty: inferEmpty, -    insideOut: insideOut, -    primBool: primBool, -    primNull: primNull, -    primNum: primNum, -    primStr: primStr, -    primToJson: primToJson, -    print: print, -    runJsonPrim: runJsonPrim, -    toPrims: toPrims, -    eqJCursor: eqJCursor, -    ordJCursor: ordJCursor, -    showJCursor: showJCursor, -    semigroupJCursor: semigroupJCursor, -    monoidJCursor: monoidJCursor, -    encodeJsonJCursor: encodeJsonJCursor, -    showJsonPrim: showJsonPrim, -    decodeJsonJCursor: decodeJsonJCursor-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Semigroupoid":92,"../Data.Argonaut.Core":102,"../Data.Argonaut.Decode":105,"../Data.Argonaut.Decode.Class":103,"../Data.Argonaut.Encode":108,"../Data.Argonaut.Encode.Class":106,"../Data.Array":119,"../Data.Either":136,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Int":165,"../Data.List":194,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.StrMap":237,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Prelude":268}],110:[function(require,module,exports){-"use strict";--exports._jsonParser = function (fail, succ, s) {-  try {-    return succ(JSON.parse(s));-  }-  catch (e) {-    return fail(e.message);-  }-};--},{}],111:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Either = require("../Data.Either");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var jsonParser = function (j) {-    return $foreign._jsonParser(Data_Either.Left.create, Data_Either.Right.create, j);-};-module.exports = {-    jsonParser: jsonParser-};--},{"../Data.Argonaut.Core":102,"../Data.Either":136,"../Data.Function.Uncurried":148,"./foreign":110}],112:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Lens = require("../Data.Lens");-var Data_Lens_Prism = require("../Data.Lens.Prism");-var _String = function (dictChoice) {-    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromString)(Data_Argonaut_Core.toString)(dictChoice);-};-var _Object = function (dictChoice) {-    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromObject)(Data_Argonaut_Core.toObject)(dictChoice);-};-var _Number = function (dictChoice) {-    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromNumber)(Data_Argonaut_Core.toNumber)(dictChoice);-};-var _Null = function (dictChoice) {-    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromNull)(Data_Argonaut_Core.toNull)(dictChoice);-};-var _Boolean = function (dictChoice) {-    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromBoolean)(Data_Argonaut_Core.toBoolean)(dictChoice);-};-var _Array = function (dictChoice) {-    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromArray)(Data_Argonaut_Core.toArray)(dictChoice);-};-module.exports = {-    _Array: _Array, -    _Boolean: _Boolean, -    _Null: _Null, -    _Number: _Number, -    _Object: _Object, -    _String: _String-};--},{"../Data.Argonaut.Core":102,"../Data.Lens":191,"../Data.Lens.Prism":187}],113:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Lens = require("../Data.Lens");-var Data_Lens_Fold = require("../Data.Lens.Fold");-var Prelude = require("../Prelude");-var _JsonString = function (dictWander) {-    return function ($6) {-        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isString)($6));-    };-};-var _JsonObject = function (dictWander) {-    return function ($7) {-        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isObject)($7));-    };-};-var _JsonNumber = function (dictWander) {-    return function ($8) {-        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isNumber)($8));-    };-};-var _JsonNull = function (dictWander) {-    return function ($9) {-        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isNull)($9));-    };-};-var _JsonBoolean = function (dictWander) {-    return function ($10) {-        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isBoolean)($10));-    };-};-var _JsonArray = function (dictWander) {-    return function ($11) {-        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isArray)($11));-    };-};-module.exports = {-    _JsonArray: _JsonArray, -    _JsonBoolean: _JsonBoolean, -    _JsonNull: _JsonNull, -    _JsonNumber: _JsonNumber, -    _JsonObject: _JsonObject, -    _JsonString: _JsonString-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Argonaut.Core":102,"../Data.Lens":191,"../Data.Lens.Fold":167,"../Prelude":268}],114:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");-var Data_Argonaut_Encode = require("../Data.Argonaut.Encode");-var Data_Argonaut_JCursor = require("../Data.Argonaut.JCursor");-var Data_Argonaut_Parser = require("../Data.Argonaut.Parser");-var Data_Argonaut_Prisms = require("../Data.Argonaut.Prisms");-var Data_Argonaut_Traversals = require("../Data.Argonaut.Traversals");-module.exports = {};--},{"../Data.Argonaut.Core":102,"../Data.Argonaut.Decode":105,"../Data.Argonaut.Encode":108,"../Data.Argonaut.JCursor":109,"../Data.Argonaut.Parser":111,"../Data.Argonaut.Prisms":112,"../Data.Argonaut.Traversals":113}],115:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_ST = require("../Control.Monad.ST");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Array_ST = require("../Data.Array.ST");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Semiring = require("../Data.Semiring");-var Prelude = require("../Prelude");-var Iterator = (function () {-    function Iterator(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Iterator.create = function (value0) {-        return function (value1) {-            return new Iterator(value0, value1);-        };-    };-    return Iterator;-})();-var peek = function (v) {-    return function __do() {-        var v1 = Control_Monad_ST.readSTRef(v.value1)();-        return v.value0(v1);-    };-};-var next = function (v) {-    return function __do() {-        var v1 = Control_Monad_ST.readSTRef(v.value1)();-        var v2 = Control_Monad_ST.modifySTRef(v.value1)(function (v2) {-            return v2 + 1 | 0;-        })();-        return v.value0(v1);-    };-};-var pushWhile = function (p) {-    return function (iter) {-        return function (array) {-            return function __do() {-                var v = Control_Monad_ST.newSTRef(false)();-                while (Data_Functor.map(Control_Monad_Eff.functorEff)(Data_HeytingAlgebra.not(Data_HeytingAlgebra.heytingAlgebraBoolean))(Control_Monad_ST.readSTRef(v))()) {-                    (function __do() {-                        var v1 = peek(iter)();-                        if (v1 instanceof Data_Maybe.Just && p(v1.value0)) {-                            var v2 = Data_Array_ST.pushSTArray(array)(v1.value0)();-                            return Data_Functor["void"](Control_Monad_Eff.functorEff)(next(iter))();-                        };-                        return Data_Functor["void"](Control_Monad_Eff.functorEff)(Control_Monad_ST.writeSTRef(v)(true))();-                    })();-                };-                return {};-            };-        };-    };-};-var pushAll = pushWhile(Data_Function["const"](true));-var iterator = function (f) {-    return Data_Functor.map(Control_Monad_Eff.functorEff)(Iterator.create(f))(Control_Monad_ST.newSTRef(0));-};-var iterate = function (iter) {-    return function (f) {-        return function __do() {-            var v = Control_Monad_ST.newSTRef(false)();-            while (Data_Functor.map(Control_Monad_Eff.functorEff)(Data_HeytingAlgebra.not(Data_HeytingAlgebra.heytingAlgebraBoolean))(Control_Monad_ST.readSTRef(v))()) {-                (function __do() {-                    var v1 = next(iter)();-                    if (v1 instanceof Data_Maybe.Just) {-                        return f(v1.value0)();-                    };-                    if (v1 instanceof Data_Maybe.Nothing) {-                        return Data_Functor["void"](Control_Monad_Eff.functorEff)(Control_Monad_ST.writeSTRef(v)(true))();-                    };-                    throw new Error("Failed pattern match at Data.Array.ST.Iterator line 39, column 5 - line 41, column 46: " + [ v1.constructor.name ]);-                })();-            };-            return {};-        };-    };-};-var exhausted = function ($27) {-    return Data_Functor.map(Control_Monad_Eff.functorEff)(Data_Maybe.isNothing)(peek($27));-};-module.exports = {-    exhausted: exhausted, -    iterate: iterate, -    iterator: iterator, -    next: next, -    peek: peek, -    pushAll: pushAll, -    pushWhile: pushWhile-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Eff":70,"../Control.Monad.ST":79,"../Control.Semigroupoid":92,"../Data.Array.ST":117,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Semiring":231,"../Prelude":268}],116:[function(require,module,exports){-"use strict";--exports.runSTArray = function (f) {-  return f;-};--exports.emptySTArray = function () {-  return [];-};--exports.peekSTArrayImpl = function (just) {-  return function (nothing) {-    return function (xs) {-      return function (i) {-        return function () {-          return i >= 0 && i < xs.length ? just(xs[i]) : nothing;-        };-      };-    };-  };-};--exports.pokeSTArray = function (xs) {-  return function (i) {-    return function (a) {-      return function () {-        var ret = i >= 0 && i < xs.length;-        if (ret) xs[i] = a;-        return ret;-      };-    };-  };-};--exports.pushAllSTArray = function (xs) {-  return function (as) {-    return function () {-      return xs.push.apply(xs, as);-    };-  };-};--exports.spliceSTArray = function (xs) {-  return function (i) {-    return function (howMany) {-      return function (bs) {-        return function () {-          return xs.splice.apply(xs, [i, howMany].concat(bs));-        };-      };-    };-  };-};--exports.copyImpl = function (xs) {-  return function () {-    return xs.slice();-  };-};--exports.toAssocArray = function (xs) {-  return function () {-    var n = xs.length;-    var as = new Array(n);-    for (var i = 0; i < n; i++) as[i] = { value: xs[i], index: i };-    return as;-  };-};--},{}],117:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_ST = require("../Control.Monad.ST");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Maybe = require("../Data.Maybe");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var unsafeFreeze = function ($0) {-    return Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(Unsafe_Coerce.unsafeCoerce($0));-};-var thaw = $foreign.copyImpl;-var pushSTArray = function (arr) {-    return function (a) {-        return $foreign.pushAllSTArray(arr)([ a ]);-    };-};-var peekSTArray = $foreign.peekSTArrayImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var freeze = $foreign.copyImpl;-module.exports = {-    freeze: freeze, -    peekSTArray: peekSTArray, -    pushSTArray: pushSTArray, -    thaw: thaw, -    unsafeFreeze: unsafeFreeze, -    emptySTArray: $foreign.emptySTArray, -    pokeSTArray: $foreign.pokeSTArray, -    pushAllSTArray: $foreign.pushAllSTArray, -    runSTArray: $foreign.runSTArray, -    spliceSTArray: $foreign.spliceSTArray, -    toAssocArray: $foreign.toAssocArray-};--},{"../Control.Applicative":40,"../Control.Monad.Eff":70,"../Control.Monad.ST":79,"../Control.Semigroupoid":92,"../Data.Maybe":198,"../Prelude":268,"../Unsafe.Coerce":271,"./foreign":116}],118:[function(require,module,exports){-"use strict";--//-------------------------------------------------------------------------------// Array creation ---------------------------------------------------------------//--------------------------------------------------------------------------------exports.range = function (start) {-  return function (end) {-    var step = start > end ? -1 : 1;-    var result = [];-    var i = start, n = 0;-    while (i !== end) {-      result[n++] = i;-      i += step;-    }-    result[n] = i;-    return result;-  };-};--var replicate = function (count) {-  return function (value) {-    if (count < 1) {-      return [];-    }-    var result = new Array(count);-    return result.fill(value);-  };-};--var replicatePolyfill = function (count) {-  return function (value) {-    var result = [];-    var n = 0;-    for (var i = 0; i < count; i++) {-      result[n++] = value;-    }-    return result;-  };-};--// In browsers that have Array.prototype.fill we use it, as it's faster.-exports.replicate = typeof Array.prototype.fill === "function" ?-    replicate :-    replicatePolyfill;--exports.fromFoldableImpl = (function () {-  // jshint maxparams: 2-  function Cons(head, tail) {-    this.head = head;-    this.tail = tail;-  }-  var emptyList = {};--  function curryCons(head) {-    return function (tail) {-      return new Cons(head, tail);-    };-  }--  function listToArray(list) {-    var result = [];-    var count = 0;-    var xs = list;-    while (xs !== emptyList) {-      result[count++] = xs.head;-      xs = xs.tail;-    }-    return result;-  }--  return function (foldr) {-    return function (xs) {-      return listToArray(foldr(curryCons)(emptyList)(xs));-    };-  };-})();--//-------------------------------------------------------------------------------// Array size -------------------------------------------------------------------//--------------------------------------------------------------------------------exports.length = function (xs) {-  return xs.length;-};--//-------------------------------------------------------------------------------// Extending arrays -------------------------------------------------------------//--------------------------------------------------------------------------------exports.cons = function (e) {-  return function (l) {-    return [e].concat(l);-  };-};--exports.snoc = function (l) {-  return function (e) {-    var l1 = l.slice();-    l1.push(e);-    return l1;-  };-};--//-------------------------------------------------------------------------------// Non-indexed reads ------------------------------------------------------------//--------------------------------------------------------------------------------exports["uncons'"] = function (empty) {-  return function (next) {-    return function (xs) {-      return xs.length === 0 ? empty({}) : next(xs[0])(xs.slice(1));-    };-  };-};--//-------------------------------------------------------------------------------// Indexed operations -----------------------------------------------------------//--------------------------------------------------------------------------------exports.indexImpl = function (just) {-  return function (nothing) {-    return function (xs) {-      return function (i) {-        return i < 0 || i >= xs.length ? nothing :  just(xs[i]);-      };-    };-  };-};--exports.findIndexImpl = function (just) {-  return function (nothing) {-    return function (f) {-      return function (xs) {-        for (var i = 0, l = xs.length; i < l; i++) {-          if (f(xs[i])) return just(i);-        }-        return nothing;-      };-    };-  };-};--exports.findLastIndexImpl = function (just) {-  return function (nothing) {-    return function (f) {-      return function (xs) {-        for (var i = xs.length - 1; i >= 0; i--) {-          if (f(xs[i])) return just(i);-        }-        return nothing;-      };-    };-  };-};--exports._insertAt = function (just) {-  return function (nothing) {-    return function (i) {-      return function (a) {-        return function (l) {-          if (i < 0 || i > l.length) return nothing;-          var l1 = l.slice();-          l1.splice(i, 0, a);-          return just(l1);-        };-      };-    };-  };-};--exports._deleteAt = function (just) {-  return function (nothing) {-    return function (i) {-      return function (l) {-        if (i < 0 || i >= l.length) return nothing;-        var l1 = l.slice();-        l1.splice(i, 1);-        return just(l1);-      };-    };-  };-};--exports._updateAt = function (just) {-  return function (nothing) {-    return function (i) {-      return function (a) {-        return function (l) {-          if (i < 0 || i >= l.length) return nothing;-          var l1 = l.slice();-          l1[i] = a;-          return just(l1);-        };-      };-    };-  };-};--//-------------------------------------------------------------------------------// Transformations --------------------------------------------------------------//--------------------------------------------------------------------------------exports.reverse = function (l) {-  return l.slice().reverse();-};--exports.concat = function (xss) {-  if (xss.length <= 10000) {-    // This method is faster, but it crashes on big arrays.-    // So we use it when can and fallback to simple variant otherwise.-    return Array.prototype.concat.apply([], xss);-  }--  var result = [];-  for (var i = 0, l = xss.length; i < l; i++) {-    var xs = xss[i];-    for (var j = 0, m = xs.length; j < m; j++) {-      result.push(xs[j]);-    }-  }-  return result;-};--exports.filter = function (f) {-  return function (xs) {-    return xs.filter(f);-  };-};--exports.partition = function (f) {-  return function (xs) {-    var yes = [];-    var no  = [];-    for (var i = 0; i < xs.length; i++) {-      var x = xs[i];-      if (f(x))-        yes.push(x);-      else-        no.push(x);-    }-    return { yes: yes, no: no };-  };-};--//-------------------------------------------------------------------------------// Sorting ----------------------------------------------------------------------//--------------------------------------------------------------------------------exports.sortImpl = function (f) {-  return function (l) {-    // jshint maxparams: 2-    return l.slice().sort(function (x, y) {-      return f(x)(y);-    });-  };-};--//-------------------------------------------------------------------------------// Subarrays --------------------------------------------------------------------//--------------------------------------------------------------------------------exports.slice = function (s) {-  return function (e) {-    return function (l) {-      return l.slice(s, e);-    };-  };-};--exports.take = function (n) {-  return function (l) {-    return n < 1 ? [] : l.slice(0, n);-  };-};--exports.drop = function (n) {-  return function (l) {-    return n < 1 ? l : l.slice(n);-  };-};--//-------------------------------------------------------------------------------// Zipping ----------------------------------------------------------------------//--------------------------------------------------------------------------------exports.zipWith = function (f) {-  return function (xs) {-    return function (ys) {-      var l = xs.length < ys.length ? xs.length : ys.length;-      var result = new Array(l);-      for (var i = 0; i < l; i++) {-        result[i] = f(xs[i])(ys[i]);-      }-      return result;-    };-  };-};--//-------------------------------------------------------------------------------// Partial ----------------------------------------------------------------------//--------------------------------------------------------------------------------exports.unsafeIndexImpl = function (xs) {-  return function (n) {-    return xs[n];-  };-};--},{}],119:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Lazy = require("../Control.Lazy");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Monad_ST = require("../Control.Monad.ST");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Array_ST = require("../Data.Array.ST");-var Data_Array_ST_Iterator = require("../Data.Array.ST.Iterator");-var Data_Boolean = require("../Data.Boolean");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_NonEmpty = require("../Data.NonEmpty");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Partial_Unsafe = require("../Partial.Unsafe");-var Prelude = require("../Prelude");-var zipWithA = function (dictApplicative) {-    return function (f) {-        return function (xs) {-            return function (ys) {-                return Data_Traversable.sequence(Data_Traversable.traversableArray)(dictApplicative)($foreign.zipWith(f)(xs)(ys));-            };-        };-    };-};-var zip = $foreign.zipWith(Data_Tuple.Tuple.create);-var updateAt = $foreign._updateAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var unzip = $foreign["uncons'"](function (v) {-    return new Data_Tuple.Tuple([  ], [  ]);-})(function (v) {-    return function (ts) {-        var v1 = unzip(ts);-        return new Data_Tuple.Tuple($foreign.cons(v.value0)(v1.value0), $foreign.cons(v.value1)(v1.value1));-    };-});-var unsafeIndex = function (dictPartial) {-    return $foreign.unsafeIndexImpl;-};-var uncons = $foreign["uncons'"](Data_Function["const"](Data_Maybe.Nothing.value))(function (x) {-    return function (xs) {-        return new Data_Maybe.Just({-            head: x, -            tail: xs-        });-    };-});-var toUnfoldable = function (dictUnfoldable) {-    return function (xs) {-        var len = $foreign.length(xs);-        var f = function (i) {-            if (i < len) {-                return new Data_Maybe.Just(new Data_Tuple.Tuple(unsafeIndex()(xs)(i), i + 1 | 0));-            };-            if (Data_Boolean.otherwise) {-                return Data_Maybe.Nothing.value;-            };-            throw new Error("Failed pattern match at Data.Array line 132, column 19 - line 137, column 26: " + [ i.constructor.name ]);-        };-        return Data_Unfoldable.unfoldr(dictUnfoldable)(f)(0);-    };-};-var tail = $foreign["uncons'"](Data_Function["const"](Data_Maybe.Nothing.value))(function (v) {-    return function (xs) {-        return new Data_Maybe.Just(xs);-    };-});-var sortBy = function (comp) {-    return function (xs) {-        var comp$prime = function (x) {-            return function (y) {-                var v = comp(x)(y);-                if (v instanceof Data_Ordering.GT) {-                    return 1;-                };-                if (v instanceof Data_Ordering.EQ) {-                    return 0;-                };-                if (v instanceof Data_Ordering.LT) {-                    return -1 | 0;-                };-                throw new Error("Failed pattern match at Data.Array line 462, column 15 - line 467, column 1: " + [ v.constructor.name ]);-            };-        };-        return $foreign.sortImpl(comp$prime)(xs);-    };-};-var sortWith = function (dictOrd) {-    return function (f) {-        return sortBy(Data_Ord.comparing(dictOrd)(f));-    };-};-var sort = function (dictOrd) {-    return function (xs) {-        return sortBy(Data_Ord.compare(dictOrd))(xs);-    };-};-var singleton = function (a) {-    return [ a ];-};-var $$null = function (xs) {-    return $foreign.length(xs) === 0;-};-var nubBy = function (eq) {-    return function (xs) {-        var v = uncons(xs);-        if (v instanceof Data_Maybe.Just) {-            return $foreign.cons(v.value0.head)(nubBy(eq)($foreign.filter(function (y) {-                return !eq(v.value0.head)(y);-            })(v.value0.tail)));-        };-        if (v instanceof Data_Maybe.Nothing) {-            return [  ];-        };-        throw new Error("Failed pattern match at Data.Array line 570, column 3 - line 572, column 18: " + [ v.constructor.name ]);-    };-};-var nub = function (dictEq) {-    return nubBy(Data_Eq.eq(dictEq));-};-var mapWithIndex = function (f) {-    return function (xs) {-        return $foreign.zipWith(f)($foreign.range(0)($foreign.length(xs) - 1 | 0))(xs);-    };-};-var some = function (dictAlternative) {-    return function (dictLazy) {-        return function (v) {-            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())($foreign.cons)(v))(Control_Lazy.defer(dictLazy)(function (v1) {-                return many(dictAlternative)(dictLazy)(v);-            }));-        };-    };-};-var many = function (dictAlternative) {-    return function (dictLazy) {-        return function (v) {-            return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(some(dictAlternative)(dictLazy)(v))(Control_Applicative.pure(dictAlternative.Applicative0())([  ]));-        };-    };-};-var insertAt = $foreign._insertAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var init = function (xs) {-    if ($$null(xs)) {-        return Data_Maybe.Nothing.value;-    };-    if (Data_Boolean.otherwise) {-        return new Data_Maybe.Just($foreign.slice(0)($foreign.length(xs) - 1 | 0)(xs));-    };-    throw new Error("Failed pattern match at Data.Array line 248, column 1 - line 250, column 55: " + [ xs.constructor.name ]);-};-var index = $foreign.indexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var last = function (xs) {-    return index(xs)($foreign.length(xs) - 1 | 0);-};-var unsnoc = function (xs) {-    return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {-        return function (v1) {-            return {-                init: v, -                last: v1-            };-        };-    })(init(xs)))(last(xs));-};-var modifyAt = function (i) {-    return function (f) {-        return function (xs) {-            var go = function (x) {-                return updateAt(i)(f(x))(xs);-            };-            return Data_Maybe.maybe(Data_Maybe.Nothing.value)(go)(index(xs)(i));-        };-    };-};-var span = function (p) {-    return function (arr) {-        var go = function (__copy_i) {-            var i = __copy_i;-            var __tco_done = false;-            var __tco_result;-            var __tco_i;-            function __tco_loop(i) {-                var v = index(arr)(i);-                if (v instanceof Data_Maybe.Just) {-                    var $64 = p(v.value0);-                    if ($64) {-                        __tco_i = i + 1 | 0;-                        return;-                    };-                    __tco_done = true;-                    return new Data_Maybe.Just(i);-                };-                if (v instanceof Data_Maybe.Nothing) {-                    __tco_done = true;-                    return Data_Maybe.Nothing.value;-                };-                throw new Error("Failed pattern match at Data.Array line 528, column 5 - line 530, column 25: " + [ v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(i);-                i = __tco_i;-            };-            return __tco_result;-        };-        var breakIndex = go(0);-        if (breakIndex instanceof Data_Maybe.Just && breakIndex.value0 === 0) {-            return {-                init: [  ], -                rest: arr-            };-        };-        if (breakIndex instanceof Data_Maybe.Just) {-            return {-                init: $foreign.slice(0)(breakIndex.value0)(arr), -                rest: $foreign.slice(breakIndex.value0)($foreign.length(arr))(arr)-            };-        };-        if (breakIndex instanceof Data_Maybe.Nothing) {-            return {-                init: arr, -                rest: [  ]-            };-        };-        throw new Error("Failed pattern match at Data.Array line 515, column 3 - line 521, column 30: " + [ breakIndex.constructor.name ]);-    };-};-var takeWhile = function (p) {-    return function (xs) {-        return (span(p)(xs)).init;-    };-};-var head = function (xs) {-    return index(xs)(0);-};-var groupBy = function (op) {-    return function (xs) {-        return Control_Monad_ST.pureST(function __do() {-            var v = Data_Array_ST.emptySTArray();-            var v1 = Data_Array_ST_Iterator.iterator(function (v1) {-                return index(xs)(v1);-            })();-            Data_Array_ST_Iterator.iterate(v1)(function (x) {-                return Data_Functor["void"](Control_Monad_Eff.functorEff)(function __do() {-                    var v2 = Data_Array_ST.emptySTArray();-                    Data_Array_ST_Iterator.pushWhile(op(x))(v1)(v2)();-                    var v3 = Data_Array_ST.unsafeFreeze(v2)();-                    return Data_Array_ST.pushSTArray(v)(new Data_NonEmpty.NonEmpty(x, v3))();-                });-            })();-            return Data_Array_ST.unsafeFreeze(v)();-        });-    };-};-var group = function (dictEq) {-    return function (xs) {-        return groupBy(Data_Eq.eq(dictEq))(xs);-    };-};-var group$prime = function (dictOrd) {-    return function ($85) {-        return group(dictOrd.Eq0())(sort(dictOrd)($85));-    };-};-var fromFoldable = function (dictFoldable) {-    return $foreign.fromFoldableImpl(Data_Foldable.foldr(dictFoldable));-};-var foldRecM = function (dictMonadRec) {-    return function (f) {-        return function (a) {-            return function (array) {-                var go = function (res) {-                    return function (i) {-                        if (i >= $foreign.length(array)) {-                            return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())(new Control_Monad_Rec_Class.Done(res));-                        };-                        if (Data_Boolean.otherwise) {-                            return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())(f(res)(unsafeIndex()(array)(i)))(function (v) {-                                return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())(new Control_Monad_Rec_Class.Loop({-                                    a: v, -                                    b: i + 1 | 0-                                }));-                            });-                        };-                        throw new Error("Failed pattern match at Data.Array line 671, column 3 - line 675, column 42: " + [ res.constructor.name, i.constructor.name ]);-                    };-                };-                return Control_Monad_Rec_Class.tailRecM2(dictMonadRec)(go)(a)(0);-            };-        };-    };-};-var foldM = function (dictMonad) {-    return function (f) {-        return function (a) {-            return $foreign["uncons'"](function (v) {-                return Control_Applicative.pure(dictMonad.Applicative0())(a);-            })(function (b) {-                return function (bs) {-                    return Control_Bind.bind(dictMonad.Bind1())(f(a)(b))(function (a$prime) {-                        return foldM(dictMonad)(f)(a$prime)(bs);-                    });-                };-            });-        };-    };-};-var findLastIndex = $foreign.findLastIndexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var insertBy = function (cmp) {-    return function (x) {-        return function (ys) {-            var i = Data_Maybe.maybe(0)(function (v) {-                return v + 1 | 0;-            })(findLastIndex(function (y) {-                return Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(x)(y))(Data_Ordering.GT.value);-            })(ys));-            return Data_Maybe.fromJust()(insertAt(i)(x)(ys));-        };-    };-};-var insert = function (dictOrd) {-    return insertBy(Data_Ord.compare(dictOrd));-};-var findIndex = $foreign.findIndexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var intersectBy = function (eq) {-    return function (xs) {-        return function (ys) {-            return $foreign.filter(function (x) {-                return Data_Maybe.isJust(findIndex(eq(x))(ys));-            })(xs);-        };-    };-};-var intersect = function (dictEq) {-    return intersectBy(Data_Eq.eq(dictEq));-};-var elemLastIndex = function (dictEq) {-    return function (x) {-        return findLastIndex(function (v) {-            return Data_Eq.eq(dictEq)(v)(x);-        });-    };-};-var elemIndex = function (dictEq) {-    return function (x) {-        return findIndex(function (v) {-            return Data_Eq.eq(dictEq)(v)(x);-        });-    };-};-var dropWhile = function (p) {-    return function (xs) {-        return (span(p)(xs)).rest;-    };-};-var deleteAt = $foreign._deleteAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var deleteBy = function (v) {-    return function (v1) {-        return function (v2) {-            if (v2.length === 0) {-                return [  ];-            };-            return Data_Maybe.maybe(v2)(function (i) {-                return Data_Maybe.fromJust()(deleteAt(i)(v2));-            })(findIndex(v(v1))(v2));-        };-    };-};-var unionBy = function (eq) {-    return function (xs) {-        return function (ys) {-            return Data_Semigroup.append(Data_Semigroup.semigroupArray)(xs)(Data_Foldable.foldl(Data_Foldable.foldableArray)(Data_Function.flip(deleteBy(eq)))(nubBy(eq)(ys))(xs));-        };-    };-};-var union = function (dictEq) {-    return unionBy(Data_Eq.eq(dictEq));-};-var $$delete = function (dictEq) {-    return deleteBy(Data_Eq.eq(dictEq));-};-var difference = function (dictEq) {-    return Data_Foldable.foldr(Data_Foldable.foldableArray)($$delete(dictEq));-};-var concatMap = Data_Function.flip(Control_Bind.bind(Control_Bind.bindArray));-var mapMaybe = function (f) {-    return concatMap(function ($86) {-        return Data_Maybe.maybe([  ])(singleton)(f($86));-    });-};-var filterA = function (dictApplicative) {-    return function (p) {-        return function ($87) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(mapMaybe(function (v) {-                if (v.value1) {-                    return new Data_Maybe.Just(v.value0);-                };-                return Data_Maybe.Nothing.value;-            }))(Data_Traversable.traverse(Data_Traversable.traversableArray)(dictApplicative)(function (x) {-                return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Tuple.Tuple.create(x))(p(x));-            })($87));-        };-    };-};-var catMaybes = mapMaybe(Control_Category.id(Control_Category.categoryFn));-var alterAt = function (i) {-    return function (f) {-        return function (xs) {-            var go = function (x) {-                var v = f(x);-                if (v instanceof Data_Maybe.Nothing) {-                    return deleteAt(i)(xs);-                };-                if (v instanceof Data_Maybe.Just) {-                    return updateAt(i)(v.value0)(xs);-                };-                throw new Error("Failed pattern match at Data.Array line 388, column 10 - line 390, column 32: " + [ v.constructor.name ]);-            };-            return Data_Maybe.maybe(Data_Maybe.Nothing.value)(go)(index(xs)(i));-        };-    };-};-module.exports = {-    alterAt: alterAt, -    catMaybes: catMaybes, -    concatMap: concatMap, -    "delete": $$delete, -    deleteAt: deleteAt, -    deleteBy: deleteBy, -    difference: difference, -    dropWhile: dropWhile, -    elemIndex: elemIndex, -    elemLastIndex: elemLastIndex, -    filterA: filterA, -    findIndex: findIndex, -    findLastIndex: findLastIndex, -    foldM: foldM, -    foldRecM: foldRecM, -    fromFoldable: fromFoldable, -    group: group, -    "group'": group$prime, -    groupBy: groupBy, -    head: head, -    index: index, -    init: init, -    insert: insert, -    insertAt: insertAt, -    insertBy: insertBy, -    intersect: intersect, -    intersectBy: intersectBy, -    last: last, -    many: many, -    mapMaybe: mapMaybe, -    mapWithIndex: mapWithIndex, -    modifyAt: modifyAt, -    nub: nub, -    nubBy: nubBy, -    "null": $$null, -    singleton: singleton, -    some: some, -    sort: sort, -    sortBy: sortBy, -    sortWith: sortWith, -    span: span, -    tail: tail, -    takeWhile: takeWhile, -    toUnfoldable: toUnfoldable, -    uncons: uncons, -    union: union, -    unionBy: unionBy, -    unsafeIndex: unsafeIndex, -    unsnoc: unsnoc, -    unzip: unzip, -    updateAt: updateAt, -    zip: zip, -    zipWithA: zipWithA, -    concat: $foreign.concat, -    cons: $foreign.cons, -    drop: $foreign.drop, -    filter: $foreign.filter, -    length: $foreign.length, -    partition: $foreign.partition, -    range: $foreign.range, -    replicate: $foreign.replicate, -    reverse: $foreign.reverse, -    slice: $foreign.slice, -    snoc: $foreign.snoc, -    take: $foreign.take, -    zipWith: $foreign.zipWith-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Lazy":50,"../Control.Monad.Eff":70,"../Control.Monad.Rec.Class":77,"../Control.Monad.ST":79,"../Control.Semigroupoid":92,"../Data.Array.ST":117,"../Data.Array.ST.Iterator":115,"../Data.Boolean":129,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.NonEmpty":210,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Partial.Unsafe":265,"../Prelude":268,"./foreign":118}],120:[function(require,module,exports){-arguments[4][99][0].apply(exports,arguments)-},{"dup":99}],121:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Bifunctor_Clown = require("../Data.Bifunctor.Clown");-var Data_Bifunctor_Flip = require("../Data.Bifunctor.Flip");-var Data_Bifunctor_Joker = require("../Data.Bifunctor.Joker");-var Data_Bifunctor_Product = require("../Data.Bifunctor.Product");-var Data_Bifunctor_Wrap = require("../Data.Bifunctor.Wrap");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Monoid = require("../Data.Monoid");-var Data_Monoid_Conj = require("../Data.Monoid.Conj");-var Data_Monoid_Disj = require("../Data.Monoid.Disj");-var Data_Monoid_Dual = require("../Data.Monoid.Dual");-var Data_Monoid_Endo = require("../Data.Monoid.Endo");-var Data_Newtype = require("../Data.Newtype");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Bifoldable = function (bifoldMap, bifoldl, bifoldr) {-    this.bifoldMap = bifoldMap;-    this.bifoldl = bifoldl;-    this.bifoldr = bifoldr;-};-var bifoldr = function (dict) {-    return dict.bifoldr;-};-var bitraverse_ = function (dictBifoldable) {-    return function (dictApplicative) {-        return function (f) {-            return function (g) {-                return bifoldr(dictBifoldable)(function ($97) {-                    return Control_Apply.applySecond(dictApplicative.Apply0())(f($97));-                })(function ($98) {-                    return Control_Apply.applySecond(dictApplicative.Apply0())(g($98));-                })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));-            };-        };-    };-};-var bifor_ = function (dictBifoldable) {-    return function (dictApplicative) {-        return function (t) {-            return function (f) {-                return function (g) {-                    return bitraverse_(dictBifoldable)(dictApplicative)(f)(g)(t);-                };-            };-        };-    };-};-var bisequence_ = function (dictBifoldable) {-    return function (dictApplicative) {-        return bitraverse_(dictBifoldable)(dictApplicative)(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn));-    };-};-var bifoldl = function (dict) {-    return dict.bifoldl;-};-var bifoldableJoker = function (dictFoldable) {-    return new Bifoldable(function (dictMonoid) {-        return function (v) {-            return function (r) {-                return function (v1) {-                    return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(r)(v1);-                };-            };-        };-    }, function (v) {-        return function (r) {-            return function (u) {-                return function (v1) {-                    return Data_Foldable.foldl(dictFoldable)(r)(u)(v1);-                };-            };-        };-    }, function (v) {-        return function (r) {-            return function (u) {-                return function (v1) {-                    return Data_Foldable.foldr(dictFoldable)(r)(u)(v1);-                };-            };-        };-    });-};-var bifoldableClown = function (dictFoldable) {-    return new Bifoldable(function (dictMonoid) {-        return function (l) {-            return function (v) {-                return function (v1) {-                    return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(l)(v1);-                };-            };-        };-    }, function (l) {-        return function (v) {-            return function (u) {-                return function (v1) {-                    return Data_Foldable.foldl(dictFoldable)(l)(u)(v1);-                };-            };-        };-    }, function (l) {-        return function (v) {-            return function (u) {-                return function (v1) {-                    return Data_Foldable.foldr(dictFoldable)(l)(u)(v1);-                };-            };-        };-    });-};-var bifoldMapDefaultR = function (dictBifoldable) {-    return function (dictMonoid) {-        return function (f) {-            return function (g) {-                return bifoldr(dictBifoldable)(function ($99) {-                    return Data_Semigroup.append(dictMonoid.Semigroup0())(f($99));-                })(function ($100) {-                    return Data_Semigroup.append(dictMonoid.Semigroup0())(g($100));-                })(Data_Monoid.mempty(dictMonoid));-            };-        };-    };-};-var bifoldMapDefaultL = function (dictBifoldable) {-    return function (dictMonoid) {-        return function (f) {-            return function (g) {-                return bifoldl(dictBifoldable)(function (m) {-                    return function (a) {-                        return Data_Semigroup.append(dictMonoid.Semigroup0())(m)(f(a));-                    };-                })(function (m) {-                    return function (b) {-                        return Data_Semigroup.append(dictMonoid.Semigroup0())(m)(g(b));-                    };-                })(Data_Monoid.mempty(dictMonoid));-            };-        };-    };-};-var bifoldMap = function (dict) {-    return dict.bifoldMap;-};-var bifoldableFlip = function (dictBifoldable) {-    return new Bifoldable(function (dictMonoid) {-        return function (r) {-            return function (l) {-                return function (v) {-                    return bifoldMap(dictBifoldable)(dictMonoid)(l)(r)(v);-                };-            };-        };-    }, function (r) {-        return function (l) {-            return function (u) {-                return function (v) {-                    return bifoldl(dictBifoldable)(l)(r)(u)(v);-                };-            };-        };-    }, function (r) {-        return function (l) {-            return function (u) {-                return function (v) {-                    return bifoldr(dictBifoldable)(l)(r)(u)(v);-                };-            };-        };-    });-};-var bifoldableWrap = function (dictBifoldable) {-    return new Bifoldable(function (dictMonoid) {-        return function (l) {-            return function (r) {-                return function (v) {-                    return bifoldMap(dictBifoldable)(dictMonoid)(l)(r)(v);-                };-            };-        };-    }, function (l) {-        return function (r) {-            return function (u) {-                return function (v) {-                    return bifoldl(dictBifoldable)(l)(r)(u)(v);-                };-            };-        };-    }, function (l) {-        return function (r) {-            return function (u) {-                return function (v) {-                    return bifoldr(dictBifoldable)(l)(r)(u)(v);-                };-            };-        };-    });-};-var bifoldlDefault = function (dictBifoldable) {-    return function (f) {-        return function (g) {-            return function (z) {-                return function (p) {-                    return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(bifoldMap(dictBifoldable)(Data_Monoid_Dual.monoidDual(Data_Monoid_Endo.monoidEndo))(function ($101) {-                        return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(f)($101)));-                    })(function ($102) {-                        return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(g)($102)));-                    })(p)))(z);-                };-            };-        };-    };-};-var bifoldrDefault = function (dictBifoldable) {-    return function (f) {-        return function (g) {-            return function (z) {-                return function (p) {-                    return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(bifoldMap(dictBifoldable)(Data_Monoid_Endo.monoidEndo)(function ($103) {-                        return Data_Monoid_Endo.Endo(f($103));-                    })(function ($104) {-                        return Data_Monoid_Endo.Endo(g($104));-                    })(p))(z);-                };-            };-        };-    };-};-var bifoldableProduct = function (dictBifoldable) {-    return function (dictBifoldable1) {-        return new Bifoldable(function (dictMonoid) {-            return function (l) {-                return function (r) {-                    return function (v) {-                        return Data_Semigroup.append(dictMonoid.Semigroup0())(bifoldMap(dictBifoldable)(dictMonoid)(l)(r)(v.value0))(bifoldMap(dictBifoldable1)(dictMonoid)(l)(r)(v.value1));-                    };-                };-            };-        }, function (l) {-            return function (r) {-                return function (u) {-                    return function (m) {-                        return bifoldlDefault(bifoldableProduct(dictBifoldable)(dictBifoldable1))(l)(r)(u)(m);-                    };-                };-            };-        }, function (l) {-            return function (r) {-                return function (u) {-                    return function (m) {-                        return bifoldrDefault(bifoldableProduct(dictBifoldable)(dictBifoldable1))(l)(r)(u)(m);-                    };-                };-            };-        });-    };-};-var bifold = function (dictBifoldable) {-    return function (dictMonoid) {-        return bifoldMap(dictBifoldable)(dictMonoid)(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn));-    };-};-var biany = function (dictBifoldable) {-    return function (dictBooleanAlgebra) {-        return function (p) {-            return function (q) {-                return function ($105) {-                    return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(bifoldMap(dictBifoldable)(Data_Monoid_Disj.monoidDisj(dictBooleanAlgebra.HeytingAlgebra0()))(function ($106) {-                        return Data_Monoid_Disj.Disj(p($106));-                    })(function ($107) {-                        return Data_Monoid_Disj.Disj(q($107));-                    })($105));-                };-            };-        };-    };-};-var biall = function (dictBifoldable) {-    return function (dictBooleanAlgebra) {-        return function (p) {-            return function (q) {-                return function ($108) {-                    return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(bifoldMap(dictBifoldable)(Data_Monoid_Conj.monoidConj(dictBooleanAlgebra.HeytingAlgebra0()))(function ($109) {-                        return Data_Monoid_Conj.Conj(p($109));-                    })(function ($110) {-                        return Data_Monoid_Conj.Conj(q($110));-                    })($108));-                };-            };-        };-    };-};-module.exports = {-    Bifoldable: Bifoldable, -    biall: biall, -    biany: biany, -    bifold: bifold, -    bifoldMap: bifoldMap, -    bifoldMapDefaultL: bifoldMapDefaultL, -    bifoldMapDefaultR: bifoldMapDefaultR, -    bifoldl: bifoldl, -    bifoldlDefault: bifoldlDefault, -    bifoldr: bifoldr, -    bifoldrDefault: bifoldrDefault, -    bifor_: bifor_, -    bisequence_: bisequence_, -    bitraverse_: bitraverse_, -    bifoldableClown: bifoldableClown, -    bifoldableJoker: bifoldableJoker, -    bifoldableFlip: bifoldableFlip, -    bifoldableProduct: bifoldableProduct, -    bifoldableWrap: bifoldableWrap-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Bifunctor.Clown":122,"../Data.Bifunctor.Flip":123,"../Data.Bifunctor.Joker":124,"../Data.Bifunctor.Product":125,"../Data.Bifunctor.Wrap":126,"../Data.Foldable":143,"../Data.Function":149,"../Data.Monoid":207,"../Data.Monoid.Conj":202,"../Data.Monoid.Disj":203,"../Data.Monoid.Dual":204,"../Data.Monoid.Endo":205,"../Data.Newtype":209,"../Data.Semigroup":229,"../Data.Unit":249,"../Prelude":268}],122:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Biapplicative = require("../Control.Biapplicative");-var Control_Biapply = require("../Control.Biapply");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Clown = function (x) {-    return x;-};-var showClown = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Clown " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var ordClown = function (dictOrd) {-    return dictOrd;-};-var newtypeClown = new Data_Newtype.Newtype(function (n) {-    return n;-}, Clown);-var functorClown = new Data_Functor.Functor(function (v) {-    return function (v1) {-        return v1;-    };-});-var eqClown = function (dictEq) {-    return dictEq;-};-var bifunctorClown = function (dictFunctor) {-    return new Data_Bifunctor.Bifunctor(function (f) {-        return function (v) {-            return function (v1) {-                return Data_Functor.map(dictFunctor)(f)(v1);-            };-        };-    });-};-var biapplyClown = function (dictApply) {-    return new Control_Biapply.Biapply(function () {-        return bifunctorClown(dictApply.Functor0());-    }, function (v) {-        return function (v1) {-            return Control_Apply.apply(dictApply)(v)(v1);-        };-    });-};-var biapplicativeClown = function (dictApplicative) {-    return new Control_Biapplicative.Biapplicative(function () {-        return biapplyClown(dictApplicative.Apply0());-    }, function (a) {-        return function (v) {-            return Control_Applicative.pure(dictApplicative)(a);-        };-    });-};-module.exports = {-    Clown: Clown, -    newtypeClown: newtypeClown, -    eqClown: eqClown, -    ordClown: ordClown, -    showClown: showClown, -    functorClown: functorClown, -    bifunctorClown: bifunctorClown, -    biapplyClown: biapplyClown, -    biapplicativeClown: biapplicativeClown-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":127,"../Data.Eq":138,"../Data.Functor":155,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],123:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Biapplicative = require("../Control.Biapplicative");-var Control_Biapply = require("../Control.Biapply");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Flip = function (x) {-    return x;-};-var showFlip = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Flip " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var ordFlip = function (dictOrd) {-    return dictOrd;-};-var newtypeFlip = new Data_Newtype.Newtype(function (n) {-    return n;-}, Flip);-var functorFlip = function (dictBifunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return Data_Bifunctor.lmap(dictBifunctor)(f)(v);-        };-    });-};-var eqFlip = function (dictEq) {-    return dictEq;-};-var bifunctorFlip = function (dictBifunctor) {-    return new Data_Bifunctor.Bifunctor(function (f) {-        return function (g) {-            return function (v) {-                return Data_Bifunctor.bimap(dictBifunctor)(g)(f)(v);-            };-        };-    });-};-var biapplyFlip = function (dictBiapply) {-    return new Control_Biapply.Biapply(function () {-        return bifunctorFlip(dictBiapply.Bifunctor0());-    }, function (v) {-        return function (v1) {-            return Control_Biapply.biapply(dictBiapply)(v)(v1);-        };-    });-};-var biapplicativeFlip = function (dictBiapplicative) {-    return new Control_Biapplicative.Biapplicative(function () {-        return biapplyFlip(dictBiapplicative.Biapply0());-    }, function (a) {-        return function (b) {-            return Control_Biapplicative.bipure(dictBiapplicative)(b)(a);-        };-    });-};-module.exports = {-    Flip: Flip, -    newtypeFlip: newtypeFlip, -    eqFlip: eqFlip, -    ordFlip: ordFlip, -    showFlip: showFlip, -    functorFlip: functorFlip, -    bifunctorFlip: bifunctorFlip, -    biapplyFlip: biapplyFlip, -    biapplicativeFlip: biapplicativeFlip-};--},{"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":127,"../Data.Eq":138,"../Data.Functor":155,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],124:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Biapplicative = require("../Control.Biapplicative");-var Control_Biapply = require("../Control.Biapply");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Joker = function (x) {-    return x;-};-var showJoker = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Joker " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var ordJoker = function (dictOrd) {-    return dictOrd;-};-var newtypeJoker = new Data_Newtype.Newtype(function (n) {-    return n;-}, Joker);-var functorJoker = function (dictFunctor) {-    return new Data_Functor.Functor(function (g) {-        return function (v) {-            return Data_Functor.map(dictFunctor)(g)(v);-        };-    });-};-var eqJoker = function (dictEq) {-    return dictEq;-};-var bifunctorJoker = function (dictFunctor) {-    return new Data_Bifunctor.Bifunctor(function (v) {-        return function (g) {-            return function (v1) {-                return Data_Functor.map(dictFunctor)(g)(v1);-            };-        };-    });-};-var biapplyJoker = function (dictApply) {-    return new Control_Biapply.Biapply(function () {-        return bifunctorJoker(dictApply.Functor0());-    }, function (v) {-        return function (v1) {-            return Control_Apply.apply(dictApply)(v)(v1);-        };-    });-};-var biapplicativeJoker = function (dictApplicative) {-    return new Control_Biapplicative.Biapplicative(function () {-        return biapplyJoker(dictApplicative.Apply0());-    }, function (v) {-        return function (b) {-            return Control_Applicative.pure(dictApplicative)(b);-        };-    });-};-module.exports = {-    Joker: Joker, -    newtypeJoker: newtypeJoker, -    eqJoker: eqJoker, -    ordJoker: ordJoker, -    showJoker: showJoker, -    functorJoker: functorJoker, -    bifunctorJoker: bifunctorJoker, -    biapplyJoker: biapplyJoker, -    biapplicativeJoker: biapplicativeJoker-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":127,"../Data.Eq":138,"../Data.Functor":155,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],125:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Biapplicative = require("../Control.Biapplicative");-var Control_Biapply = require("../Control.Biapply");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Eq = require("../Data.Eq");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Product = (function () {-    function Product(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Product.create = function (value0) {-        return function (value1) {-            return new Product(value0, value1);-        };-    };-    return Product;-})();-var showProduct = function (dictShow) {-    return function (dictShow1) {-        return new Data_Show.Show(function (v) {-            return "(Product " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")")));-        });-    };-};-var eqProduct = function (dictEq) {-    return function (dictEq1) {-        return new Data_Eq.Eq(function (x) {-            return function (y) {-                return Data_Eq.eq(dictEq)(x.value0)(y.value0) && Data_Eq.eq(dictEq1)(x.value1)(y.value1);-            };-        });-    };-};-var ordProduct = function (dictOrd) {-    return function (dictOrd1) {-        return new Data_Ord.Ord(function () {-            return eqProduct(dictOrd.Eq0())(dictOrd1.Eq0());-        }, function (x) {-            return function (y) {-                var v = Data_Ord.compare(dictOrd)(x.value0)(y.value0);-                if (v instanceof Data_Ordering.LT) {-                    return Data_Ordering.LT.value;-                };-                if (v instanceof Data_Ordering.GT) {-                    return Data_Ordering.GT.value;-                };-                return Data_Ord.compare(dictOrd1)(x.value1)(y.value1);-            };-        });-    };-};-var bifunctorProduct = function (dictBifunctor) {-    return function (dictBifunctor1) {-        return new Data_Bifunctor.Bifunctor(function (f) {-            return function (g) {-                return function (v) {-                    return new Product(Data_Bifunctor.bimap(dictBifunctor)(f)(g)(v.value0), Data_Bifunctor.bimap(dictBifunctor1)(f)(g)(v.value1));-                };-            };-        });-    };-};-var biapplyProduct = function (dictBiapply) {-    return function (dictBiapply1) {-        return new Control_Biapply.Biapply(function () {-            return bifunctorProduct(dictBiapply.Bifunctor0())(dictBiapply1.Bifunctor0());-        }, function (v) {-            return function (v1) {-                return new Product(Control_Biapply.biapply(dictBiapply)(v.value0)(v1.value0), Control_Biapply.biapply(dictBiapply1)(v.value1)(v1.value1));-            };-        });-    };-};-var biapplicativeProduct = function (dictBiapplicative) {-    return function (dictBiapplicative1) {-        return new Control_Biapplicative.Biapplicative(function () {-            return biapplyProduct(dictBiapplicative.Biapply0())(dictBiapplicative1.Biapply0());-        }, function (a) {-            return function (b) {-                return new Product(Control_Biapplicative.bipure(dictBiapplicative)(a)(b), Control_Biapplicative.bipure(dictBiapplicative1)(a)(b));-            };-        });-    };-};-module.exports = {-    Product: Product, -    eqProduct: eqProduct, -    ordProduct: ordProduct, -    showProduct: showProduct, -    bifunctorProduct: bifunctorProduct, -    biapplyProduct: biapplyProduct, -    biapplicativeProduct: biapplicativeProduct-};--},{"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":127,"../Data.Eq":138,"../Data.HeytingAlgebra":160,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],126:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Biapplicative = require("../Control.Biapplicative");-var Control_Biapply = require("../Control.Biapply");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Wrap = function (x) {-    return x;-};-var showWrap = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Wrap " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var ordWrap = function (dictOrd) {-    return dictOrd;-};-var newtypeWrap = new Data_Newtype.Newtype(function (n) {-    return n;-}, Wrap);-var functorWrap = function (dictBifunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return Data_Bifunctor.rmap(dictBifunctor)(f)(v);-        };-    });-};-var eqWrap = function (dictEq) {-    return dictEq;-};-var bifunctorWrap = function (dictBifunctor) {-    return new Data_Bifunctor.Bifunctor(function (f) {-        return function (g) {-            return function (v) {-                return Data_Bifunctor.bimap(dictBifunctor)(f)(g)(v);-            };-        };-    });-};-var biapplyWrap = function (dictBiapply) {-    return new Control_Biapply.Biapply(function () {-        return bifunctorWrap(dictBiapply.Bifunctor0());-    }, function (v) {-        return function (v1) {-            return Control_Biapply.biapply(dictBiapply)(v)(v1);-        };-    });-};-var biapplicativeWrap = function (dictBiapplicative) {-    return new Control_Biapplicative.Biapplicative(function () {-        return biapplyWrap(dictBiapplicative.Biapply0());-    }, function (a) {-        return function (b) {-            return Control_Biapplicative.bipure(dictBiapplicative)(a)(b);-        };-    });-};-module.exports = {-    Wrap: Wrap, -    newtypeWrap: newtypeWrap, -    eqWrap: eqWrap, -    ordWrap: ordWrap, -    showWrap: showWrap, -    functorWrap: functorWrap, -    bifunctorWrap: bifunctorWrap, -    biapplyWrap: biapplyWrap, -    biapplicativeWrap: biapplicativeWrap-};--},{"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":127,"../Data.Eq":138,"../Data.Functor":155,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],127:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Bifunctor = function (bimap) {-    this.bimap = bimap;-};-var bimap = function (dict) {-    return dict.bimap;-};-var lmap = function (dictBifunctor) {-    return function (f) {-        return bimap(dictBifunctor)(f)(Control_Category.id(Control_Category.categoryFn));-    };-};-var rmap = function (dictBifunctor) {-    return bimap(dictBifunctor)(Control_Category.id(Control_Category.categoryFn));-};-module.exports = {-    Bifunctor: Bifunctor, -    bimap: bimap, -    lmap: lmap, -    rmap: rmap-};--},{"../Control.Category":47}],128:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Data_Bifoldable = require("../Data.Bifoldable");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Bifunctor_Clown = require("../Data.Bifunctor.Clown");-var Data_Bifunctor_Flip = require("../Data.Bifunctor.Flip");-var Data_Bifunctor_Joker = require("../Data.Bifunctor.Joker");-var Data_Bifunctor_Product = require("../Data.Bifunctor.Product");-var Data_Bifunctor_Wrap = require("../Data.Bifunctor.Wrap");-var Data_Functor = require("../Data.Functor");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var Bitraversable = function (Bifoldable1, Bifunctor0, bisequence, bitraverse) {-    this.Bifoldable1 = Bifoldable1;-    this.Bifunctor0 = Bifunctor0;-    this.bisequence = bisequence;-    this.bitraverse = bitraverse;-};-var bitraverse = function (dict) {-    return dict.bitraverse;-};-var lfor = function (dictBitraversable) {-    return function (dictApplicative) {-        return function (t) {-            return function (f) {-                return bitraverse(dictBitraversable)(dictApplicative)(f)(Control_Applicative.pure(dictApplicative))(t);-            };-        };-    };-};-var ltraverse = function (dictBitraversable) {-    return function (dictApplicative) {-        return function (f) {-            return bitraverse(dictBitraversable)(dictApplicative)(f)(Control_Applicative.pure(dictApplicative));-        };-    };-};-var rfor = function (dictBitraversable) {-    return function (dictApplicative) {-        return function (t) {-            return function (f) {-                return bitraverse(dictBitraversable)(dictApplicative)(Control_Applicative.pure(dictApplicative))(f)(t);-            };-        };-    };-};-var rtraverse = function (dictBitraversable) {-    return function (dictApplicative) {-        return bitraverse(dictBitraversable)(dictApplicative)(Control_Applicative.pure(dictApplicative));-    };-};-var bitraversableJoker = function (dictTraversable) {-    return new Bitraversable(function () {-        return Data_Bifoldable.bifoldableJoker(dictTraversable.Foldable1());-    }, function () {-        return Data_Bifunctor_Joker.bifunctorJoker(dictTraversable.Functor0());-    }, function (dictApplicative) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Joker.Joker)(Data_Traversable.sequence(dictTraversable)(dictApplicative)(v));-        };-    }, function (dictApplicative) {-        return function (v) {-            return function (r) {-                return function (v1) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Joker.Joker)(Data_Traversable.traverse(dictTraversable)(dictApplicative)(r)(v1));-                };-            };-        };-    });-};-var bitraversableClown = function (dictTraversable) {-    return new Bitraversable(function () {-        return Data_Bifoldable.bifoldableClown(dictTraversable.Foldable1());-    }, function () {-        return Data_Bifunctor_Clown.bifunctorClown(dictTraversable.Functor0());-    }, function (dictApplicative) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Clown.Clown)(Data_Traversable.sequence(dictTraversable)(dictApplicative)(v));-        };-    }, function (dictApplicative) {-        return function (l) {-            return function (v) {-                return function (v1) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Clown.Clown)(Data_Traversable.traverse(dictTraversable)(dictApplicative)(l)(v1));-                };-            };-        };-    });-};-var bisequenceDefault = function (dictBitraversable) {-    return function (dictApplicative) {-        return bitraverse(dictBitraversable)(dictApplicative)(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn));-    };-};-var bisequence = function (dict) {-    return dict.bisequence;-};-var bitraversableFlip = function (dictBitraversable) {-    return new Bitraversable(function () {-        return Data_Bifoldable.bifoldableFlip(dictBitraversable.Bifoldable1());-    }, function () {-        return Data_Bifunctor_Flip.bifunctorFlip(dictBitraversable.Bifunctor0());-    }, function (dictApplicative) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Flip.Flip)(bisequence(dictBitraversable)(dictApplicative)(v));-        };-    }, function (dictApplicative) {-        return function (r) {-            return function (l) {-                return function (v) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Flip.Flip)(bitraverse(dictBitraversable)(dictApplicative)(l)(r)(v));-                };-            };-        };-    });-};-var bitraversableProduct = function (dictBitraversable) {-    return function (dictBitraversable1) {-        return new Bitraversable(function () {-            return Data_Bifoldable.bifoldableProduct(dictBitraversable.Bifoldable1())(dictBitraversable1.Bifoldable1());-        }, function () {-            return Data_Bifunctor_Product.bifunctorProduct(dictBitraversable.Bifunctor0())(dictBitraversable1.Bifunctor0());-        }, function (dictApplicative) {-            return function (v) {-                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Product.Product.create)(bisequence(dictBitraversable)(dictApplicative)(v.value0)))(bisequence(dictBitraversable1)(dictApplicative)(v.value1));-            };-        }, function (dictApplicative) {-            return function (l) {-                return function (r) {-                    return function (v) {-                        return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Product.Product.create)(bitraverse(dictBitraversable)(dictApplicative)(l)(r)(v.value0)))(bitraverse(dictBitraversable1)(dictApplicative)(l)(r)(v.value1));-                    };-                };-            };-        });-    };-};-var bitraversableWrap = function (dictBitraversable) {-    return new Bitraversable(function () {-        return Data_Bifoldable.bifoldableWrap(dictBitraversable.Bifoldable1());-    }, function () {-        return Data_Bifunctor_Wrap.bifunctorWrap(dictBitraversable.Bifunctor0());-    }, function (dictApplicative) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Wrap.Wrap)(bisequence(dictBitraversable)(dictApplicative)(v));-        };-    }, function (dictApplicative) {-        return function (l) {-            return function (r) {-                return function (v) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Wrap.Wrap)(bitraverse(dictBitraversable)(dictApplicative)(l)(r)(v));-                };-            };-        };-    });-};-var bitraverseDefault = function (dictBitraversable) {-    return function (dictApplicative) {-        return function (f) {-            return function (g) {-                return function (t) {-                    return bisequence(dictBitraversable)(dictApplicative)(Data_Bifunctor.bimap(dictBitraversable.Bifunctor0())(f)(g)(t));-                };-            };-        };-    };-};-var bifor = function (dictBitraversable) {-    return function (dictApplicative) {-        return function (t) {-            return function (f) {-                return function (g) {-                    return bitraverse(dictBitraversable)(dictApplicative)(f)(g)(t);-                };-            };-        };-    };-};-module.exports = {-    Bitraversable: Bitraversable, -    bifor: bifor, -    bisequence: bisequence, -    bisequenceDefault: bisequenceDefault, -    bitraverse: bitraverse, -    bitraverseDefault: bitraverseDefault, -    lfor: lfor, -    ltraverse: ltraverse, -    rfor: rfor, -    rtraverse: rtraverse, -    bitraversableClown: bitraversableClown, -    bitraversableJoker: bitraversableJoker, -    bitraversableFlip: bitraversableFlip, -    bitraversableProduct: bitraversableProduct, -    bitraversableWrap: bitraversableWrap-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Data.Bifoldable":121,"../Data.Bifunctor":127,"../Data.Bifunctor.Clown":122,"../Data.Bifunctor.Flip":123,"../Data.Bifunctor.Joker":124,"../Data.Bifunctor.Product":125,"../Data.Bifunctor.Wrap":126,"../Data.Functor":155,"../Data.Traversable":244,"../Prelude":268}],129:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var otherwise = true;-module.exports = {-    otherwise: otherwise-};--},{}],130:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Unit = require("../Data.Unit");-var BooleanAlgebra = function (HeytingAlgebra0) {-    this.HeytingAlgebra0 = HeytingAlgebra0;-};-var booleanAlgebraUnit = new BooleanAlgebra(function () {-    return Data_HeytingAlgebra.heytingAlgebraUnit;-});-var booleanAlgebraFn = function (dictBooleanAlgebra) {-    return new BooleanAlgebra(function () {-        return Data_HeytingAlgebra.heytingAlgebraFunction(dictBooleanAlgebra.HeytingAlgebra0());-    });-};-var booleanAlgebraBoolean = new BooleanAlgebra(function () {-    return Data_HeytingAlgebra.heytingAlgebraBoolean;-});-module.exports = {-    BooleanAlgebra: BooleanAlgebra, -    booleanAlgebraBoolean: booleanAlgebraBoolean, -    booleanAlgebraUnit: booleanAlgebraUnit, -    booleanAlgebraFn: booleanAlgebraFn-};--},{"../Data.HeytingAlgebra":160,"../Data.Unit":249}],131:[function(require,module,exports){-"use strict";--exports.topInt = 2147483647;-exports.bottomInt = -2147483648;--exports.topChar = String.fromCharCode(65535);-exports.bottomChar = String.fromCharCode(0);--},{}],132:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Unit = require("../Data.Unit");-var Bounded = function (Ord0, bottom, top) {-    this.Ord0 = Ord0;-    this.bottom = bottom;-    this.top = top;-};-var top = function (dict) {-    return dict.top;-};-var boundedUnit = new Bounded(function () {-    return Data_Ord.ordUnit;-}, Data_Unit.unit, Data_Unit.unit);-var boundedOrdering = new Bounded(function () {-    return Data_Ord.ordOrdering;-}, Data_Ordering.LT.value, Data_Ordering.GT.value);-var boundedInt = new Bounded(function () {-    return Data_Ord.ordInt;-}, $foreign.bottomInt, $foreign.topInt);-var boundedChar = new Bounded(function () {-    return Data_Ord.ordChar;-}, $foreign.bottomChar, $foreign.topChar);-var boundedBoolean = new Bounded(function () {-    return Data_Ord.ordBoolean;-}, false, true);-var bottom = function (dict) {-    return dict.bottom;-};-module.exports = {-    Bounded: Bounded, -    bottom: bottom, -    top: top, -    boundedBoolean: boundedBoolean, -    boundedInt: boundedInt, -    boundedChar: boundedChar, -    boundedOrdering: boundedOrdering, -    boundedUnit: boundedUnit-};--},{"../Data.Ord":216,"../Data.Ordering":217,"../Data.Unit":249,"./foreign":131}],133:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Ring = require("../Data.Ring");-var Data_Semiring = require("../Data.Semiring");-var Data_Unit = require("../Data.Unit");-var CommutativeRing = function (Ring0) {-    this.Ring0 = Ring0;-};-var commutativeRingUnit = new CommutativeRing(function () {-    return Data_Ring.ringUnit;-});-var commutativeRingNumber = new CommutativeRing(function () {-    return Data_Ring.ringNumber;-});-var commutativeRingInt = new CommutativeRing(function () {-    return Data_Ring.ringInt;-});-var commutativeRingFn = function (dictCommutativeRing) {-    return new CommutativeRing(function () {-        return Data_Ring.ringFn(dictCommutativeRing.Ring0());-    });-};-module.exports = {-    CommutativeRing: CommutativeRing, -    commutativeRingInt: commutativeRingInt, -    commutativeRingNumber: commutativeRingNumber, -    commutativeRingUnit: commutativeRingUnit, -    commutativeRingFn: commutativeRingFn-};--},{"../Data.Ring":227,"../Data.Semiring":231,"../Data.Unit":249}],134:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");-var Data_Bounded = require("../Data.Bounded");-var Data_CommutativeRing = require("../Data.CommutativeRing");-var Data_Eq = require("../Data.Eq");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Field = require("../Data.Field");-var Data_Foldable = require("../Data.Foldable");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Contravariant = require("../Data.Functor.Contravariant");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var Const = function (x) {-    return x;-};-var showConst = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Const " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semiringConst = function (dictSemiring) {-    return dictSemiring;-};-var semigroupoidConst = new Control_Semigroupoid.Semigroupoid(function (v) {-    return function (v1) {-        return v1;-    };-});-var semigroupConst = function (dictSemigroup) {-    return dictSemigroup;-};-var ringConst = function (dictRing) {-    return dictRing;-};-var ordConst = function (dictOrd) {-    return dictOrd;-};-var newtypeConst = new Data_Newtype.Newtype(function (n) {-    return n;-}, Const);-var monoidConst = function (dictMonoid) {-    return dictMonoid;-};-var heytingAlgebraConst = function (dictHeytingAlgebra) {-    return dictHeytingAlgebra;-};-var functorConst = new Data_Functor.Functor(function (v) {-    return function (v1) {-        return v1;-    };-});-var invariantConst = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorConst));-var foldableConst = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (v) {-        return function (v1) {-            return Data_Monoid.mempty(dictMonoid);-        };-    };-}, function (v) {-    return function (z) {-        return function (v1) {-            return z;-        };-    };-}, function (v) {-    return function (z) {-        return function (v1) {-            return z;-        };-    };-});-var traversableConst = new Data_Traversable.Traversable(function () {-    return foldableConst;-}, function () {-    return functorConst;-}, function (dictApplicative) {-    return function (v) {-        return Control_Applicative.pure(dictApplicative)(v);-    };-}, function (dictApplicative) {-    return function (v) {-        return function (v1) {-            return Control_Applicative.pure(dictApplicative)(v1);-        };-    };-});-var fieldConst = function (dictField) {-    return dictField;-};-var euclideanRingConst = function (dictEuclideanRing) {-    return dictEuclideanRing;-};-var eqConst = function (dictEq) {-    return dictEq;-};-var contravariantConst = new Data_Functor_Contravariant.Contravariant(function (v) {-    return function (v1) {-        return v1;-    };-});-var commutativeRingConst = function (dictCommutativeRing) {-    return dictCommutativeRing;-};-var boundedConst = function (dictBounded) {-    return dictBounded;-};-var booleanAlgebraConst = function (dictBooleanAlgebra) {-    return dictBooleanAlgebra;-};-var applyConst = function (dictSemigroup) {-    return new Control_Apply.Apply(function () {-        return functorConst;-    }, function (v) {-        return function (v1) {-            return Data_Semigroup.append(dictSemigroup)(v)(v1);-        };-    });-};-var bindConst = function (dictSemigroup) {-    return new Control_Bind.Bind(function () {-        return applyConst(dictSemigroup);-    }, function (v) {-        return function (v1) {-            return v;-        };-    });-};-var applicativeConst = function (dictMonoid) {-    return new Control_Applicative.Applicative(function () {-        return applyConst(dictMonoid.Semigroup0());-    }, function (v) {-        return Data_Monoid.mempty(dictMonoid);-    });-};-module.exports = {-    Const: Const, -    newtypeConst: newtypeConst, -    eqConst: eqConst, -    ordConst: ordConst, -    boundedConst: boundedConst, -    showConst: showConst, -    semigroupoidConst: semigroupoidConst, -    semigroupConst: semigroupConst, -    monoidConst: monoidConst, -    semiringConst: semiringConst, -    ringConst: ringConst, -    euclideanRingConst: euclideanRingConst, -    commutativeRingConst: commutativeRingConst, -    fieldConst: fieldConst, -    heytingAlgebraConst: heytingAlgebraConst, -    booleanAlgebraConst: booleanAlgebraConst, -    functorConst: functorConst, -    invariantConst: invariantConst, -    contravariantConst: contravariantConst, -    applyConst: applyConst, -    bindConst: bindConst, -    applicativeConst: applicativeConst, -    foldableConst: foldableConst, -    traversableConst: traversableConst-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Semigroupoid":92,"../Data.BooleanAlgebra":130,"../Data.Bounded":132,"../Data.CommutativeRing":133,"../Data.Eq":138,"../Data.EuclideanRing":140,"../Data.Field":141,"../Data.Foldable":143,"../Data.Functor":155,"../Data.Functor.Contravariant":152,"../Data.Functor.Invariant":153,"../Data.HeytingAlgebra":160,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Traversable":244,"../Prelude":268}],135:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Identity = require("../Data.Identity");-var Data_Newtype = require("../Data.Newtype");-var Prelude = require("../Prelude");-var Distributive = function (Functor0, collect, distribute) {-    this.Functor0 = Functor0;-    this.collect = collect;-    this.distribute = distribute;-};-var distributiveIdentity = new Distributive(function () {-    return Data_Identity.functorIdentity;-}, function (dictFunctor) {-    return function (f) {-        return function ($11) {-            return Data_Identity.Identity(Data_Functor.map(dictFunctor)(function ($12) {-                return Data_Newtype.unwrap(Data_Identity.newtypeIdentity)(f($12));-            })($11));-        };-    };-}, function (dictFunctor) {-    return function ($13) {-        return Data_Identity.Identity(Data_Functor.map(dictFunctor)(Data_Newtype.unwrap(Data_Identity.newtypeIdentity))($13));-    };-});-var distribute = function (dict) {-    return dict.distribute;-};-var distributiveFunction = new Distributive(function () {-    return Data_Functor.functorFn;-}, function (dictFunctor) {-    return function (f) {-        return function ($14) {-            return distribute(distributiveFunction)(dictFunctor)(Data_Functor.map(dictFunctor)(f)($14));-        };-    };-}, function (dictFunctor) {-    return function (a) {-        return function (e) {-            return Data_Functor.map(dictFunctor)(function (v) {-                return v(e);-            })(a);-        };-    };-});-var cotraverse = function (dictDistributive) {-    return function (dictFunctor) {-        return function (f) {-            return function ($15) {-                return Data_Functor.map(dictDistributive.Functor0())(f)(distribute(dictDistributive)(dictFunctor)($15));-            };-        };-    };-};-var collectDefault = function (dictDistributive) {-    return function (dictFunctor) {-        return function (f) {-            return function ($16) {-                return distribute(dictDistributive)(dictFunctor)(Data_Functor.map(dictFunctor)(f)($16));-            };-        };-    };-};-var collect = function (dict) {-    return dict.collect;-};-var distributeDefault = function (dictDistributive) {-    return function (dictFunctor) {-        return collect(dictDistributive)(dictFunctor)(Control_Category.id(Control_Category.categoryFn));-    };-};-module.exports = {-    Distributive: Distributive, -    collect: collect, -    collectDefault: collectDefault, -    cotraverse: cotraverse, -    distribute: distribute, -    distributeDefault: distributeDefault, -    distributiveIdentity: distributiveIdentity, -    distributiveFunction: distributiveFunction-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Data.Identity":161,"../Data.Newtype":209,"../Prelude":268}],136:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bifoldable = require("../Data.Bifoldable");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Bitraversable = require("../Data.Bitraversable");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Monoid = require("../Data.Monoid");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var Left = (function () {-    function Left(value0) {-        this.value0 = value0;-    };-    Left.create = function (value0) {-        return new Left(value0);-    };-    return Left;-})();-var Right = (function () {-    function Right(value0) {-        this.value0 = value0;-    };-    Right.create = function (value0) {-        return new Right(value0);-    };-    return Right;-})();-var showEither = function (dictShow) {-    return function (dictShow1) {-        return new Data_Show.Show(function (v) {-            if (v instanceof Left) {-                return "(Left " + (Data_Show.show(dictShow)(v.value0) + ")");-            };-            if (v instanceof Right) {-                return "(Right " + (Data_Show.show(dictShow1)(v.value0) + ")");-            };-            throw new Error("Failed pattern match at Data.Either line 161, column 3 - line 162, column 3: " + [ v.constructor.name ]);-        });-    };-};-var functorEither = new Data_Functor.Functor(function (v) {-    return function (v1) {-        if (v1 instanceof Left) {-            return new Left(v1.value0);-        };-        if (v1 instanceof Right) {-            return new Right(v(v1.value0));-        };-        throw new Error("Failed pattern match at Data.Either line 37, column 3 - line 37, column 26: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var invariantEither = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorEither));-var fromRight = function (dictPartial) {-    return function (v) {-        var __unused = function (dictPartial1) {-            return function ($dollar62) {-                return $dollar62;-            };-        };-        return __unused(dictPartial)((function () {-            if (v instanceof Right) {-                return v.value0;-            };-            throw new Error("Failed pattern match at Data.Either line 253, column 1 - line 253, column 23: " + [ v.constructor.name ]);-        })());-    };-};-var fromLeft = function (dictPartial) {-    return function (v) {-        var __unused = function (dictPartial1) {-            return function ($dollar66) {-                return $dollar66;-            };-        };-        return __unused(dictPartial)((function () {-            if (v instanceof Left) {-                return v.value0;-            };-            throw new Error("Failed pattern match at Data.Either line 248, column 1 - line 248, column 22: " + [ v.constructor.name ]);-        })());-    };-};-var foldableEither = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            if (v instanceof Left) {-                return Data_Monoid.mempty(dictMonoid);-            };-            if (v instanceof Right) {-                return f(v.value0);-            };-            throw new Error("Failed pattern match at Data.Either line 189, column 3 - line 189, column 31: " + [ f.constructor.name, v.constructor.name ]);-        };-    };-}, function (v) {-    return function (z) {-        return function (v1) {-            if (v1 instanceof Left) {-                return z;-            };-            if (v1 instanceof Right) {-                return v(z)(v1.value0);-            };-            throw new Error("Failed pattern match at Data.Either line 187, column 3 - line 187, column 26: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);-        };-    };-}, function (v) {-    return function (z) {-        return function (v1) {-            if (v1 instanceof Left) {-                return z;-            };-            if (v1 instanceof Right) {-                return v(v1.value0)(z);-            };-            throw new Error("Failed pattern match at Data.Either line 185, column 3 - line 185, column 26: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);-        };-    };-});-var traversableEither = new Data_Traversable.Traversable(function () {-    return foldableEither;-}, function () {-    return functorEither;-}, function (dictApplicative) {-    return function (v) {-        if (v instanceof Left) {-            return Control_Applicative.pure(dictApplicative)(new Left(v.value0));-        };-        if (v instanceof Right) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v.value0);-        };-        throw new Error("Failed pattern match at Data.Either line 203, column 3 - line 203, column 36: " + [ v.constructor.name ]);-    };-}, function (dictApplicative) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Left) {-                return Control_Applicative.pure(dictApplicative)(new Left(v1.value0));-            };-            if (v1 instanceof Right) {-                return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v(v1.value0));-            };-            throw new Error("Failed pattern match at Data.Either line 201, column 3 - line 201, column 39: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-});-var extendEither = new Control_Extend.Extend(function () {-    return functorEither;-}, function (v) {-    return function (v1) {-        if (v1 instanceof Left) {-            return new Left(v1.value0);-        };-        return new Right(v(v1));-    };-});-var eqEither = function (dictEq) {-    return function (dictEq1) {-        return new Data_Eq.Eq(function (x) {-            return function (y) {-                if (x instanceof Left && y instanceof Left) {-                    return Data_Eq.eq(dictEq)(x.value0)(y.value0);-                };-                if (x instanceof Right && y instanceof Right) {-                    return Data_Eq.eq(dictEq1)(x.value0)(y.value0);-                };-                return false;-            };-        });-    };-};-var ordEither = function (dictOrd) {-    return function (dictOrd1) {-        return new Data_Ord.Ord(function () {-            return eqEither(dictOrd.Eq0())(dictOrd1.Eq0());-        }, function (x) {-            return function (y) {-                if (x instanceof Left && y instanceof Left) {-                    return Data_Ord.compare(dictOrd)(x.value0)(y.value0);-                };-                if (x instanceof Left) {-                    return Data_Ordering.LT.value;-                };-                if (y instanceof Left) {-                    return Data_Ordering.GT.value;-                };-                if (x instanceof Right && y instanceof Right) {-                    return Data_Ord.compare(dictOrd1)(x.value0)(y.value0);-                };-                throw new Error("Failed pattern match at Data.Either line 176, column 1 - line 176, column 64: " + [ x.constructor.name, y.constructor.name ]);-            };-        });-    };-};-var eq1Either = function (dictEq) {-    return new Data_Eq.Eq1(function (dictEq1) {-        return Data_Eq.eq(eqEither(dictEq)(dictEq1));-    });-};-var ord1Either = function (dictOrd) {-    return new Data_Ord.Ord1(function () {-        return eq1Either(dictOrd.Eq0());-    }, function (dictOrd1) {-        return Data_Ord.compare(ordEither(dictOrd)(dictOrd1));-    });-};-var either = function (v) {-    return function (v1) {-        return function (v2) {-            if (v2 instanceof Left) {-                return v(v2.value0);-            };-            if (v2 instanceof Right) {-                return v1(v2.value0);-            };-            throw new Error("Failed pattern match at Data.Either line 230, column 1 - line 230, column 26: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-        };-    };-};-var isLeft = either(Data_Function["const"](true))(Data_Function["const"](false));-var isRight = either(Data_Function["const"](false))(Data_Function["const"](true));-var choose = function (dictAlt) {-    return function (a) {-        return function (b) {-            return Control_Alt.alt(dictAlt)(Data_Functor.map(dictAlt.Functor0())(Left.create)(a))(Data_Functor.map(dictAlt.Functor0())(Right.create)(b));-        };-    };-};-var boundedEither = function (dictBounded) {-    return function (dictBounded1) {-        return new Data_Bounded.Bounded(function () {-            return ordEither(dictBounded.Ord0())(dictBounded1.Ord0());-        }, new Left(Data_Bounded.bottom(dictBounded)), new Right(Data_Bounded.top(dictBounded1)));-    };-};-var bifunctorEither = new Data_Bifunctor.Bifunctor(function (v) {-    return function (v1) {-        return function (v2) {-            if (v2 instanceof Left) {-                return new Left(v(v2.value0));-            };-            if (v2 instanceof Right) {-                return new Right(v1(v2.value0));-            };-            throw new Error("Failed pattern match at Data.Either line 44, column 3 - line 44, column 34: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-        };-    };-});-var bifoldableEither = new Data_Bifoldable.Bifoldable(function (dictMonoid) {-    return function (v) {-        return function (v1) {-            return function (v2) {-                if (v2 instanceof Left) {-                    return v(v2.value0);-                };-                if (v2 instanceof Right) {-                    return v1(v2.value0);-                };-                throw new Error("Failed pattern match at Data.Either line 197, column 3 - line 197, column 31: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-            };-        };-    };-}, function (v) {-    return function (v1) {-        return function (z) {-            return function (v2) {-                if (v2 instanceof Left) {-                    return v(z)(v2.value0);-                };-                if (v2 instanceof Right) {-                    return v1(z)(v2.value0);-                };-                throw new Error("Failed pattern match at Data.Either line 195, column 3 - line 195, column 33: " + [ v.constructor.name, v1.constructor.name, z.constructor.name, v2.constructor.name ]);-            };-        };-    };-}, function (v) {-    return function (v1) {-        return function (z) {-            return function (v2) {-                if (v2 instanceof Left) {-                    return v(v2.value0)(z);-                };-                if (v2 instanceof Right) {-                    return v1(v2.value0)(z);-                };-                throw new Error("Failed pattern match at Data.Either line 193, column 3 - line 193, column 33: " + [ v.constructor.name, v1.constructor.name, z.constructor.name, v2.constructor.name ]);-            };-        };-    };-});-var bitraversableEither = new Data_Bitraversable.Bitraversable(function () {-    return bifoldableEither;-}, function () {-    return bifunctorEither;-}, function (dictApplicative) {-    return function (v) {-        if (v instanceof Left) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Left.create)(v.value0);-        };-        if (v instanceof Right) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v.value0);-        };-        throw new Error("Failed pattern match at Data.Either line 209, column 3 - line 209, column 35: " + [ v.constructor.name ]);-    };-}, function (dictApplicative) {-    return function (v) {-        return function (v1) {-            return function (v2) {-                if (v2 instanceof Left) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Left.create)(v(v2.value0));-                };-                if (v2 instanceof Right) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v1(v2.value0));-                };-                throw new Error("Failed pattern match at Data.Either line 207, column 3 - line 207, column 41: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-            };-        };-    };-});-var applyEither = new Control_Apply.Apply(function () {-    return functorEither;-}, function (v) {-    return function (v1) {-        if (v instanceof Left) {-            return new Left(v.value0);-        };-        if (v instanceof Right) {-            return Data_Functor.map(functorEither)(v.value0)(v1);-        };-        throw new Error("Failed pattern match at Data.Either line 80, column 3 - line 80, column 28: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var bindEither = new Control_Bind.Bind(function () {-    return applyEither;-}, either(function (e) {-    return function (v) {-        return new Left(e);-    };-})(function (a) {-    return function (f) {-        return f(a);-    };-}));-var semigroupEither = function (dictSemigroup) {-    return new Data_Semigroup.Semigroup(function (x) {-        return function (y) {-            return Control_Apply.apply(applyEither)(Data_Functor.map(functorEither)(Data_Semigroup.append(dictSemigroup))(x))(y);-        };-    });-};-var semiringEither = function (dictSemiring) {-    return new Data_Semiring.Semiring(function (x) {-        return function (y) {-            return Control_Apply.apply(applyEither)(Data_Functor.map(functorEither)(Data_Semiring.add(dictSemiring))(x))(y);-        };-    }, function (x) {-        return function (y) {-            return Control_Apply.apply(applyEither)(Data_Functor.map(functorEither)(Data_Semiring.mul(dictSemiring))(x))(y);-        };-    }, new Right(Data_Semiring.one(dictSemiring)), new Right(Data_Semiring.zero(dictSemiring)));-};-var applicativeEither = new Control_Applicative.Applicative(function () {-    return applyEither;-}, Right.create);-var monadEither = new Control_Monad.Monad(function () {-    return applicativeEither;-}, function () {-    return bindEither;-});-var altEither = new Control_Alt.Alt(function () {-    return functorEither;-}, function (v) {-    return function (v1) {-        if (v instanceof Left) {-            return v1;-        };-        return v;-    };-});-module.exports = {-    Left: Left, -    Right: Right, -    choose: choose, -    either: either, -    fromLeft: fromLeft, -    fromRight: fromRight, -    isLeft: isLeft, -    isRight: isRight, -    functorEither: functorEither, -    invariantEither: invariantEither, -    bifunctorEither: bifunctorEither, -    applyEither: applyEither, -    applicativeEither: applicativeEither, -    altEither: altEither, -    bindEither: bindEither, -    monadEither: monadEither, -    extendEither: extendEither, -    showEither: showEither, -    eqEither: eqEither, -    eq1Either: eq1Either, -    ordEither: ordEither, -    ord1Either: ord1Either, -    boundedEither: boundedEither, -    foldableEither: foldableEither, -    bifoldableEither: bifoldableEither, -    traversableEither: traversableEither, -    bitraversableEither: bitraversableEither, -    semiringEither: semiringEither, -    semigroupEither: semigroupEither-};--},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bifoldable":121,"../Data.Bifunctor":127,"../Data.Bitraversable":128,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Monoid":207,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Traversable":244,"../Prelude":268}],137:[function(require,module,exports){-"use strict";--exports.refEq = function (r1) {-  return function (r2) {-    return r1 === r2;-  };-};--exports.refIneq = function (r1) {-  return function (r2) {-    return r1 !== r2;-  };-};--exports.eqArrayImpl = function (f) {-  return function (xs) {-    return function (ys) {-      if (xs.length !== ys.length) return false;-      for (var i = 0; i < xs.length; i++) {-        if (!f(xs[i])(ys[i])) return false;-      }-      return true;-    };-  };-};--},{}],138:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Unit = require("../Data.Unit");-var Data_Void = require("../Data.Void");-var Eq = function (eq) {-    this.eq = eq;-};-var Eq1 = function (eq1) {-    this.eq1 = eq1;-};-var eqVoid = new Eq(function (v) {-    return function (v1) {-        return true;-    };-});-var eqUnit = new Eq(function (v) {-    return function (v1) {-        return true;-    };-});-var eqString = new Eq($foreign.refEq);-var eqNumber = new Eq($foreign.refEq);-var eqInt = new Eq($foreign.refEq);-var eqChar = new Eq($foreign.refEq);-var eqBoolean = new Eq($foreign.refEq);-var eq1 = function (dict) {-    return dict.eq1;-};-var eq = function (dict) {-    return dict.eq;-};-var eqArray = function (dictEq) {-    return new Eq($foreign.eqArrayImpl(eq(dictEq)));-};-var eq1Array = new Eq1(function (dictEq) {-    return eq(eqArray(dictEq));-});-var notEq = function (dictEq) {-    return function (x) {-        return function (y) {-            return eq(eqBoolean)(eq(dictEq)(x)(y))(false);-        };-    };-};-var notEq1 = function (dictEq1) {-    return function (dictEq) {-        return function (x) {-            return function (y) {-                return eq(eqBoolean)(eq1(dictEq1)(dictEq)(x)(y))(false);-            };-        };-    };-};-module.exports = {-    Eq: Eq, -    Eq1: Eq1, -    eq: eq, -    eq1: eq1, -    notEq: notEq, -    notEq1: notEq1, -    eqBoolean: eqBoolean, -    eqInt: eqInt, -    eqNumber: eqNumber, -    eqChar: eqChar, -    eqString: eqString, -    eqUnit: eqUnit, -    eqVoid: eqVoid, -    eqArray: eqArray, -    eq1Array: eq1Array-};--},{"../Data.Unit":249,"../Data.Void":250,"./foreign":137}],139:[function(require,module,exports){-"use strict";--exports.intDegree = function (x) {-  return Math.min(Math.abs(x), 2147483647);-};--exports.intDiv = function (x) {-  return function (y) {-    /* jshint bitwise: false */-    return x / y | 0;-  };-};--exports.intMod = function (x) {-  return function (y) {-    return x % y;-  };-};--exports.numDiv = function (n1) {-  return function (n2) {-    return n1 / n2;-  };-};--},{}],140:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");-var Data_CommutativeRing = require("../Data.CommutativeRing");-var Data_Eq = require("../Data.Eq");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Ring = require("../Data.Ring");-var Data_Semiring = require("../Data.Semiring");-var EuclideanRing = function (CommutativeRing0, degree, div, mod) {-    this.CommutativeRing0 = CommutativeRing0;-    this.degree = degree;-    this.div = div;-    this.mod = mod;-};-var mod = function (dict) {-    return dict.mod;-};-var gcd = function (__copy_dictEq) {-    return function (__copy_dictEuclideanRing) {-        return function (__copy_a) {-            return function (__copy_b) {-                var dictEq = __copy_dictEq;-                var dictEuclideanRing = __copy_dictEuclideanRing;-                var a = __copy_a;-                var b = __copy_b;-                var __tco_done = false;-                var __tco_result;-                var __tco_dictEq;-                var __tco_dictEuclideanRing;-                var __tco_a;-                var __tco_b;-                function __tco_loop(dictEq, dictEuclideanRing, a, b) {-                    var $7 = Data_Eq.eq(dictEq)(b)(Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0()));-                    if ($7) {-                        __tco_done = true;-                        return a;-                    };-                    __tco_dictEq = dictEq;-                    __tco_dictEuclideanRing = dictEuclideanRing;-                    __tco_a = b;-                    __tco_b = mod(dictEuclideanRing)(a)(b);-                    return;-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(dictEq, dictEuclideanRing, a, b);-                    dictEq = __tco_dictEq;-                    dictEuclideanRing = __tco_dictEuclideanRing;-                    a = __tco_a;-                    b = __tco_b;-                };-                return __tco_result;-            };-        };-    };-};-var euclideanRingNumber = new EuclideanRing(function () {-    return Data_CommutativeRing.commutativeRingNumber;-}, function (v) {-    return 1;-}, $foreign.numDiv, function (v) {-    return function (v1) {-        return 0.0;-    };-});-var euclideanRingInt = new EuclideanRing(function () {-    return Data_CommutativeRing.commutativeRingInt;-}, $foreign.intDegree, $foreign.intDiv, $foreign.intMod);-var div = function (dict) {-    return dict.div;-};-var lcm = function (dictEq) {-    return function (dictEuclideanRing) {-        return function (a) {-            return function (b) {-                var $8 = Data_Eq.eq(dictEq)(a)(Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0())) || Data_Eq.eq(dictEq)(b)(Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0()));-                if ($8) {-                    return Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0());-                };-                return div(dictEuclideanRing)(Data_Semiring.mul(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0())(a)(b))(gcd(dictEq)(dictEuclideanRing)(a)(b));-            };-        };-    };-};-var degree = function (dict) {-    return dict.degree;-};-module.exports = {-    EuclideanRing: EuclideanRing, -    degree: degree, -    div: div, -    gcd: gcd, -    lcm: lcm, -    mod: mod, -    euclideanRingInt: euclideanRingInt, -    euclideanRingNumber: euclideanRingNumber-};--},{"../Data.BooleanAlgebra":130,"../Data.CommutativeRing":133,"../Data.Eq":138,"../Data.HeytingAlgebra":160,"../Data.Ring":227,"../Data.Semiring":231,"./foreign":139}],141:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_CommutativeRing = require("../Data.CommutativeRing");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Ring = require("../Data.Ring");-var Data_Semiring = require("../Data.Semiring");-var Field = function (EuclideanRing0) {-    this.EuclideanRing0 = EuclideanRing0;-};-var fieldNumber = new Field(function () {-    return Data_EuclideanRing.euclideanRingNumber;-});-module.exports = {-    Field: Field, -    fieldNumber: fieldNumber-};--},{"../Data.CommutativeRing":133,"../Data.EuclideanRing":140,"../Data.Ring":227,"../Data.Semiring":231}],142:[function(require,module,exports){-"use strict";--exports.foldrArray = function (f) {-  return function (init) {-    return function (xs) {-      var acc = init;-      var len = xs.length;-      for (var i = len - 1; i >= 0; i--) {-        acc = f(xs[i])(acc);-      }-      return acc;-    };-  };-};--exports.foldlArray = function (f) {-  return function (init) {-    return function (xs) {-      var acc = init;-      var len = xs.length;-      for (var i = 0; i < len; i++) {-        acc = f(acc)(xs[i]);-      }-      return acc;-    };-  };-};--},{}],143:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Alt = require("../Control.Alt");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Maybe_First = require("../Data.Maybe.First");-var Data_Maybe_Last = require("../Data.Maybe.Last");-var Data_Monoid = require("../Data.Monoid");-var Data_Monoid_Additive = require("../Data.Monoid.Additive");-var Data_Monoid_Conj = require("../Data.Monoid.Conj");-var Data_Monoid_Disj = require("../Data.Monoid.Disj");-var Data_Monoid_Dual = require("../Data.Monoid.Dual");-var Data_Monoid_Endo = require("../Data.Monoid.Endo");-var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Foldable = function (foldMap, foldl, foldr) {-    this.foldMap = foldMap;-    this.foldl = foldl;-    this.foldr = foldr;-};-var foldr = function (dict) {-    return dict.foldr;-};-var $$null = function (dictFoldable) {-    return foldr(dictFoldable)(function (v) {-        return function (v1) {-            return false;-        };-    })(true);-};-var oneOf = function (dictFoldable) {-    return function (dictPlus) {-        return foldr(dictFoldable)(Control_Alt.alt(dictPlus.Alt0()))(Control_Plus.empty(dictPlus));-    };-};-var traverse_ = function (dictApplicative) {-    return function (dictFoldable) {-        return function (f) {-            return foldr(dictFoldable)(function ($175) {-                return Control_Apply.applySecond(dictApplicative.Apply0())(f($175));-            })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));-        };-    };-};-var for_ = function (dictApplicative) {-    return function (dictFoldable) {-        return Data_Function.flip(traverse_(dictApplicative)(dictFoldable));-    };-};-var sequence_ = function (dictApplicative) {-    return function (dictFoldable) {-        return traverse_(dictApplicative)(dictFoldable)(Control_Category.id(Control_Category.categoryFn));-    };-};-var foldl = function (dict) {-    return dict.foldl;-};-var intercalate = function (dictFoldable) {-    return function (dictMonoid) {-        return function (sep) {-            return function (xs) {-                var go = function (v) {-                    return function (x) {-                        if (v.init) {-                            return {-                                init: false, -                                acc: x-                            };-                        };-                        return {-                            init: false, -                            acc: Data_Semigroup.append(dictMonoid.Semigroup0())(v.acc)(Data_Semigroup.append(dictMonoid.Semigroup0())(sep)(x))-                        };-                    };-                };-                return (foldl(dictFoldable)(go)({-                    init: true, -                    acc: Data_Monoid.mempty(dictMonoid)-                })(xs)).acc;-            };-        };-    };-};-var length = function (dictFoldable) {-    return function (dictSemiring) {-        return foldl(dictFoldable)(function (c) {-            return function (v) {-                return Data_Semiring.add(dictSemiring)(Data_Semiring.one(dictSemiring))(c);-            };-        })(Data_Semiring.zero(dictSemiring));-    };-};-var maximumBy = function (dictFoldable) {-    return function (cmp) {-        var max$prime = function (v) {-            return function (v1) {-                if (v instanceof Data_Maybe.Nothing) {-                    return new Data_Maybe.Just(v1);-                };-                if (v instanceof Data_Maybe.Just) {-                    return new Data_Maybe.Just((function () {-                        var $98 = Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v1))(Data_Ordering.GT.value);-                        if ($98) {-                            return v.value0;-                        };-                        return v1;-                    })());-                };-                throw new Error("Failed pattern match at Data.Foldable line 296, column 3 - line 296, column 27: " + [ v.constructor.name, v1.constructor.name ]);-            };-        };-        return foldl(dictFoldable)(max$prime)(Data_Maybe.Nothing.value);-    };-};-var maximum = function (dictOrd) {-    return function (dictFoldable) {-        return maximumBy(dictFoldable)(Data_Ord.compare(dictOrd));-    };-};-var minimumBy = function (dictFoldable) {-    return function (cmp) {-        var min$prime = function (v) {-            return function (v1) {-                if (v instanceof Data_Maybe.Nothing) {-                    return new Data_Maybe.Just(v1);-                };-                if (v instanceof Data_Maybe.Just) {-                    return new Data_Maybe.Just((function () {-                        var $102 = Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v1))(Data_Ordering.LT.value);-                        if ($102) {-                            return v.value0;-                        };-                        return v1;-                    })());-                };-                throw new Error("Failed pattern match at Data.Foldable line 309, column 3 - line 309, column 27: " + [ v.constructor.name, v1.constructor.name ]);-            };-        };-        return foldl(dictFoldable)(min$prime)(Data_Maybe.Nothing.value);-    };-};-var minimum = function (dictOrd) {-    return function (dictFoldable) {-        return minimumBy(dictFoldable)(Data_Ord.compare(dictOrd));-    };-};-var product = function (dictFoldable) {-    return function (dictSemiring) {-        return foldl(dictFoldable)(Data_Semiring.mul(dictSemiring))(Data_Semiring.one(dictSemiring));-    };-};-var sum = function (dictFoldable) {-    return function (dictSemiring) {-        return foldl(dictFoldable)(Data_Semiring.add(dictSemiring))(Data_Semiring.zero(dictSemiring));-    };-};-var foldableMultiplicative = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v)(z);-        };-    };-});-var foldableMaybe = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            if (v instanceof Data_Maybe.Nothing) {-                return Data_Monoid.mempty(dictMonoid);-            };-            if (v instanceof Data_Maybe.Just) {-                return f(v.value0);-            };-            throw new Error("Failed pattern match at Data.Foldable line 130, column 3 - line 130, column 30: " + [ f.constructor.name, v.constructor.name ]);-        };-    };-}, function (v) {-    return function (z) {-        return function (v1) {-            if (v1 instanceof Data_Maybe.Nothing) {-                return z;-            };-            if (v1 instanceof Data_Maybe.Just) {-                return v(z)(v1.value0);-            };-            throw new Error("Failed pattern match at Data.Foldable line 128, column 3 - line 128, column 25: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);-        };-    };-}, function (v) {-    return function (z) {-        return function (v1) {-            if (v1 instanceof Data_Maybe.Nothing) {-                return z;-            };-            if (v1 instanceof Data_Maybe.Just) {-                return v(v1.value0)(z);-            };-            throw new Error("Failed pattern match at Data.Foldable line 126, column 3 - line 126, column 25: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);-        };-    };-});-var foldableDual = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v)(z);-        };-    };-});-var foldableDisj = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v)(z);-        };-    };-});-var foldableConj = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v)(z);-        };-    };-});-var foldableAdditive = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v)(z);-        };-    };-});-var foldMapDefaultR = function (dictFoldable) {-    return function (dictMonoid) {-        return function (f) {-            return foldr(dictFoldable)(function (x) {-                return function (acc) {-                    return Data_Semigroup.append(dictMonoid.Semigroup0())(f(x))(acc);-                };-            })(Data_Monoid.mempty(dictMonoid));-        };-    };-};-var foldableArray = new Foldable(function (dictMonoid) {-    return foldMapDefaultR(foldableArray)(dictMonoid);-}, $foreign.foldlArray, $foreign.foldrArray);-var foldMapDefaultL = function (dictFoldable) {-    return function (dictMonoid) {-        return function (f) {-            return foldl(dictFoldable)(function (acc) {-                return function (x) {-                    return Data_Semigroup.append(dictMonoid.Semigroup0())(f(x))(acc);-                };-            })(Data_Monoid.mempty(dictMonoid));-        };-    };-};-var foldMap = function (dict) {-    return dict.foldMap;-};-var foldableFirst = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return foldMap(foldableMaybe)(dictMonoid)(f)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return foldl(foldableMaybe)(f)(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return foldr(foldableMaybe)(f)(z)(v);-        };-    };-});-var foldableLast = new Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return foldMap(foldableMaybe)(dictMonoid)(f)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return foldl(foldableMaybe)(f)(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return foldr(foldableMaybe)(f)(z)(v);-        };-    };-});-var foldlDefault = function (dictFoldable) {-    return function (c) {-        return function (u) {-            return function (xs) {-                return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(foldMap(dictFoldable)(Data_Monoid_Dual.monoidDual(Data_Monoid_Endo.monoidEndo))(function ($176) {-                    return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(c)($176)));-                })(xs)))(u);-            };-        };-    };-};-var foldrDefault = function (dictFoldable) {-    return function (c) {-        return function (u) {-            return function (xs) {-                return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(foldMap(dictFoldable)(Data_Monoid_Endo.monoidEndo)(function ($177) {-                    return Data_Monoid_Endo.Endo(c($177));-                })(xs))(u);-            };-        };-    };-};-var fold = function (dictFoldable) {-    return function (dictMonoid) {-        return foldMap(dictFoldable)(dictMonoid)(Control_Category.id(Control_Category.categoryFn));-    };-};-var findMap = function (dictFoldable) {-    return function (p) {-        var go = function (v) {-            return function (v1) {-                if (v instanceof Data_Maybe.Nothing) {-                    return p(v1);-                };-                return v;-            };-        };-        return foldl(dictFoldable)(go)(Data_Maybe.Nothing.value);-    };-};-var find = function (dictFoldable) {-    return function (p) {-        var go = function (v) {-            return function (v1) {-                if (v instanceof Data_Maybe.Nothing && p(v1)) {-                    return new Data_Maybe.Just(v1);-                };-                return v;-            };-        };-        return foldl(dictFoldable)(go)(Data_Maybe.Nothing.value);-    };-};-var any = function (dictFoldable) {-    return function (dictHeytingAlgebra) {-        return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Monoid_Disj.newtypeDisj)(Data_Monoid_Disj.newtypeDisj)(Data_Monoid_Disj.Disj)(foldMap(dictFoldable)(Data_Monoid_Disj.monoidDisj(dictHeytingAlgebra)));-    };-};-var elem = function (dictFoldable) {-    return function (dictEq) {-        return function ($178) {-            return any(dictFoldable)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Eq.eq(dictEq)($178));-        };-    };-};-var notElem = function (dictFoldable) {-    return function (dictEq) {-        return function (x) {-            return function ($179) {-                return !elem(dictFoldable)(dictEq)(x)($179);-            };-        };-    };-};-var or = function (dictFoldable) {-    return function (dictHeytingAlgebra) {-        return any(dictFoldable)(dictHeytingAlgebra)(Control_Category.id(Control_Category.categoryFn));-    };-};-var all = function (dictFoldable) {-    return function (dictHeytingAlgebra) {-        return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Monoid_Conj.newtypeConj)(Data_Monoid_Conj.newtypeConj)(Data_Monoid_Conj.Conj)(foldMap(dictFoldable)(Data_Monoid_Conj.monoidConj(dictHeytingAlgebra)));-    };-};-var and = function (dictFoldable) {-    return function (dictHeytingAlgebra) {-        return all(dictFoldable)(dictHeytingAlgebra)(Control_Category.id(Control_Category.categoryFn));-    };-};-module.exports = {-    Foldable: Foldable, -    all: all, -    and: and, -    any: any, -    elem: elem, -    find: find, -    findMap: findMap, -    fold: fold, -    foldMap: foldMap, -    foldMapDefaultL: foldMapDefaultL, -    foldMapDefaultR: foldMapDefaultR, -    foldl: foldl, -    foldlDefault: foldlDefault, -    foldr: foldr, -    foldrDefault: foldrDefault, -    for_: for_, -    intercalate: intercalate, -    length: length, -    maximum: maximum, -    maximumBy: maximumBy, -    minimum: minimum, -    minimumBy: minimumBy, -    notElem: notElem, -    "null": $$null, -    oneOf: oneOf, -    or: or, -    product: product, -    sequence_: sequence_, -    sum: sum, -    traverse_: traverse_, -    foldableArray: foldableArray, -    foldableMaybe: foldableMaybe, -    foldableFirst: foldableFirst, -    foldableLast: foldableLast, -    foldableAdditive: foldableAdditive, -    foldableDual: foldableDual, -    foldableDisj: foldableDisj, -    foldableConj: foldableConj, -    foldableMultiplicative: foldableMultiplicative-};--},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Maybe.First":196,"../Data.Maybe.Last":197,"../Data.Monoid":207,"../Data.Monoid.Additive":201,"../Data.Monoid.Conj":202,"../Data.Monoid.Disj":203,"../Data.Monoid.Dual":204,"../Data.Monoid.Endo":205,"../Data.Monoid.Multiplicative":206,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Unit":249,"../Prelude":268,"./foreign":142}],144:[function(require,module,exports){-"use strict";--exports.toForeign = function (value) {-  return value;-};--exports.unsafeFromForeign = function (value) {-  return value;-};--exports.typeOf = function (value) {-  return typeof value;-};--exports.tagOf = function (value) {-  return Object.prototype.toString.call(value).slice(8, -1);-};--exports.isNull = function (value) {-  return value === null;-};--exports.isUndefined = function (value) {-  return value === undefined;-};--exports.isArray = Array.isArray || function (value) {-  return Object.prototype.toString.call(value) === "[object Array]";-};--},{}],145:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Except = require("../Control.Monad.Except");-var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Boolean = require("../Data.Boolean");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Identity = require("../Data.Identity");-var Data_Int = require("../Data.Int");-var Data_List_NonEmpty = require("../Data.List.NonEmpty");-var Data_Maybe = require("../Data.Maybe");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_String = require("../Data.String");-var Prelude = require("../Prelude");-var ForeignError = (function () {-    function ForeignError(value0) {-        this.value0 = value0;-    };-    ForeignError.create = function (value0) {-        return new ForeignError(value0);-    };-    return ForeignError;-})();-var TypeMismatch = (function () {-    function TypeMismatch(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    TypeMismatch.create = function (value0) {-        return function (value1) {-            return new TypeMismatch(value0, value1);-        };-    };-    return TypeMismatch;-})();-var ErrorAtIndex = (function () {-    function ErrorAtIndex(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    ErrorAtIndex.create = function (value0) {-        return function (value1) {-            return new ErrorAtIndex(value0, value1);-        };-    };-    return ErrorAtIndex;-})();-var ErrorAtProperty = (function () {-    function ErrorAtProperty(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    ErrorAtProperty.create = function (value0) {-        return function (value1) {-            return new ErrorAtProperty(value0, value1);-        };-    };-    return ErrorAtProperty;-})();-var JSONError = (function () {-    function JSONError(value0) {-        this.value0 = value0;-    };-    JSONError.create = function (value0) {-        return new JSONError(value0);-    };-    return JSONError;-})();-var showForeignError = new Data_Show.Show(function (v) {-    if (v instanceof ForeignError) {-        return "(ForeignError " + (v.value0 + ")");-    };-    if (v instanceof ErrorAtIndex) {-        return "(ErrorAtIndex " + (Data_Show.show(Data_Show.showInt)(v.value0) + (" " + (Data_Show.show(showForeignError)(v.value1) + ")")));-    };-    if (v instanceof ErrorAtProperty) {-        return "(ErrorAtProperty " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(showForeignError)(v.value1) + ")")));-    };-    if (v instanceof JSONError) {-        return "(JSONError " + (Data_Show.show(Data_Show.showString)(v.value0) + ")");-    };-    if (v instanceof TypeMismatch) {-        return "(TypeMismatch " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(Data_Show.showString)(v.value1) + ")")));-    };-    throw new Error("Failed pattern match at Data.Foreign line 65, column 3 - line 66, column 3: " + [ v.constructor.name ]);-});-var renderForeignError = function (v) {-    if (v instanceof ForeignError) {-        return v.value0;-    };-    if (v instanceof ErrorAtIndex) {-        return "Error at array index " + (Data_Show.show(Data_Show.showInt)(v.value0) + (": " + Data_Show.show(showForeignError)(v.value1)));-    };-    if (v instanceof ErrorAtProperty) {-        return "Error at property " + (Data_Show.show(Data_Show.showString)(v.value0) + (": " + Data_Show.show(showForeignError)(v.value1)));-    };-    if (v instanceof JSONError) {-        return "JSON error: " + v.value0;-    };-    if (v instanceof TypeMismatch) {-        return "Type mismatch: expected " + (v.value0 + (", found " + v.value1));-    };-    throw new Error("Failed pattern match at Data.Foreign line 75, column 1 - line 75, column 44: " + [ v.constructor.name ]);-};-var readUndefined = function (value) {-    if ($foreign.isUndefined(value)) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Maybe.Nothing.value);-    };-    if (Data_Boolean.otherwise) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(new Data_Maybe.Just(value));-    };-    throw new Error("Failed pattern match at Data.Foreign line 156, column 1 - line 158, column 34: " + [ value.constructor.name ]);-};-var readNullOrUndefined = function (value) {-    if ($foreign.isNull(value) || $foreign.isUndefined(value)) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Maybe.Nothing.value);-    };-    if (Data_Boolean.otherwise) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(new Data_Maybe.Just(value));-    };-    throw new Error("Failed pattern match at Data.Foreign line 161, column 1 - line 163, column 34: " + [ value.constructor.name ]);-};-var readNull = function (value) {-    if ($foreign.isNull(value)) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Maybe.Nothing.value);-    };-    if (Data_Boolean.otherwise) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(new Data_Maybe.Just(value));-    };-    throw new Error("Failed pattern match at Data.Foreign line 151, column 1 - line 153, column 34: " + [ value.constructor.name ]);-};-var fail = function ($121) {-    return Control_Monad_Error_Class.throwError(Control_Monad_Except_Trans.monadThrowExceptT(Data_Identity.monadIdentity))(Data_List_NonEmpty.singleton($121));-};-var readArray = function (value) {-    if ($foreign.isArray(value)) {-        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))($foreign.unsafeFromForeign(value));-    };-    if (Data_Boolean.otherwise) {-        return fail(new TypeMismatch("array", $foreign.tagOf(value)));-    };-    throw new Error("Failed pattern match at Data.Foreign line 146, column 1 - line 148, column 58: " + [ value.constructor.name ]);-};-var unsafeReadTagged = function (tag) {-    return function (value) {-        if ($foreign.tagOf(value) === tag) {-            return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))($foreign.unsafeFromForeign(value));-        };-        if (Data_Boolean.otherwise) {-            return fail(new TypeMismatch(tag, $foreign.tagOf(value)));-        };-        throw new Error("Failed pattern match at Data.Foreign line 105, column 1 - line 107, column 54: " + [ tag.constructor.name, value.constructor.name ]);-    };-};-var readBoolean = unsafeReadTagged("Boolean");-var readNumber = unsafeReadTagged("Number");-var readInt = function (value) {-    var error = Data_Either.Left.create(Data_List_NonEmpty.singleton(new TypeMismatch("Int", $foreign.tagOf(value))));-    var fromNumber = function ($122) {-        return Data_Maybe.maybe(error)(Control_Applicative.pure(Data_Either.applicativeEither))(Data_Int.fromNumber($122));-    };-    return Control_Monad_Except.mapExcept(Data_Either.either(Data_Function["const"](error))(fromNumber))(readNumber(value));-};-var readString = unsafeReadTagged("String");-var readChar = function (value) {-    var error = Data_Either.Left.create(Data_List_NonEmpty.singleton(new TypeMismatch("Char", $foreign.tagOf(value))));-    var fromString = function ($123) {-        return Data_Maybe.maybe(error)(Control_Applicative.pure(Data_Either.applicativeEither))(Data_String.toChar($123));-    };-    return Control_Monad_Except.mapExcept(Data_Either.either(Data_Function["const"](error))(fromString))(readString(value));-};-var eqForeignError = new Data_Eq.Eq(function (x) {-    return function (y) {-        if (x instanceof ForeignError && y instanceof ForeignError) {-            return x.value0 === y.value0;-        };-        if (x instanceof TypeMismatch && y instanceof TypeMismatch) {-            return x.value0 === y.value0 && x.value1 === y.value1;-        };-        if (x instanceof ErrorAtIndex && y instanceof ErrorAtIndex) {-            return x.value0 === y.value0 && Data_Eq.eq(eqForeignError)(x.value1)(y.value1);-        };-        if (x instanceof ErrorAtProperty && y instanceof ErrorAtProperty) {-            return x.value0 === y.value0 && Data_Eq.eq(eqForeignError)(x.value1)(y.value1);-        };-        if (x instanceof JSONError && y instanceof JSONError) {-            return x.value0 === y.value0;-        };-        return false;-    };-});-var ordForeignError = new Data_Ord.Ord(function () {-    return eqForeignError;-}, function (x) {-    return function (y) {-        if (x instanceof ForeignError && y instanceof ForeignError) {-            return Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);-        };-        if (x instanceof ForeignError) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof ForeignError) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof TypeMismatch && y instanceof TypeMismatch) {-            var v = Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);-            if (v instanceof Data_Ordering.LT) {-                return Data_Ordering.LT.value;-            };-            if (v instanceof Data_Ordering.GT) {-                return Data_Ordering.GT.value;-            };-            return Data_Ord.compare(Data_Ord.ordString)(x.value1)(y.value1);-        };-        if (x instanceof TypeMismatch) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof TypeMismatch) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof ErrorAtIndex && y instanceof ErrorAtIndex) {-            var v = Data_Ord.compare(Data_Ord.ordInt)(x.value0)(y.value0);-            if (v instanceof Data_Ordering.LT) {-                return Data_Ordering.LT.value;-            };-            if (v instanceof Data_Ordering.GT) {-                return Data_Ordering.GT.value;-            };-            return Data_Ord.compare(ordForeignError)(x.value1)(y.value1);-        };-        if (x instanceof ErrorAtIndex) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof ErrorAtIndex) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof ErrorAtProperty && y instanceof ErrorAtProperty) {-            var v = Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);-            if (v instanceof Data_Ordering.LT) {-                return Data_Ordering.LT.value;-            };-            if (v instanceof Data_Ordering.GT) {-                return Data_Ordering.GT.value;-            };-            return Data_Ord.compare(ordForeignError)(x.value1)(y.value1);-        };-        if (x instanceof ErrorAtProperty) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof ErrorAtProperty) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof JSONError && y instanceof JSONError) {-            return Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);-        };-        throw new Error("Failed pattern match: " + [ x.constructor.name, y.constructor.name ]);-    };-});-module.exports = {-    ForeignError: ForeignError, -    TypeMismatch: TypeMismatch, -    ErrorAtIndex: ErrorAtIndex, -    ErrorAtProperty: ErrorAtProperty, -    JSONError: JSONError, -    fail: fail, -    readArray: readArray, -    readBoolean: readBoolean, -    readChar: readChar, -    readInt: readInt, -    readNull: readNull, -    readNullOrUndefined: readNullOrUndefined, -    readNumber: readNumber, -    readString: readString, -    readUndefined: readUndefined, -    renderForeignError: renderForeignError, -    unsafeReadTagged: unsafeReadTagged, -    eqForeignError: eqForeignError, -    ordForeignError: ordForeignError, -    showForeignError: showForeignError, -    isArray: $foreign.isArray, -    isNull: $foreign.isNull, -    isUndefined: $foreign.isUndefined, -    tagOf: $foreign.tagOf, -    toForeign: $foreign.toForeign, -    typeOf: $foreign.typeOf, -    unsafeFromForeign: $foreign.unsafeFromForeign-};--},{"../Control.Applicative":40,"../Control.Monad.Error.Class":71,"../Control.Monad.Except":73,"../Control.Monad.Except.Trans":72,"../Control.Semigroupoid":92,"../Data.Boolean":129,"../Data.Either":136,"../Data.Eq":138,"../Data.Function":149,"../Data.HeytingAlgebra":160,"../Data.Identity":161,"../Data.Int":165,"../Data.List.NonEmpty":192,"../Data.Maybe":198,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Show":233,"../Data.String":241,"../Prelude":268,"./foreign":144}],146:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Generic = require("../Data.Generic");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_String = require("../Data.String");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Global = require("../Global");-var Prelude = require("../Prelude");-var FormURLEncoded = function (x) {-    return x;-};-var toArray = function (v) {-    return v;-};-var showFormUrlEncoded = Data_Show.showArray(Data_Tuple.showTuple(Data_Show.showString)(Data_Maybe.showMaybe(Data_Show.showString)));-var semigroupFormUrlEncoded = Data_Semigroup.semigroupArray;-var ordFormUrlEncoded = Data_Ord.ordArray(Data_Tuple.ordTuple(Data_Ord.ordString)(Data_Maybe.ordMaybe(Data_Ord.ordString)));-var newtypeFormUrlEncoded = new Data_Newtype.Newtype(function (n) {-    return n;-}, FormURLEncoded);-var monoidFormUrlEncoded = Data_Monoid.monoidArray;-var genericFormUrlEncoded = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.FormURLEncoded.FormURLEncoded" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(FormURLEncoded))(Data_Generic.fromSpine(Data_Generic.genericArray(Data_Generic.genericTuple(Data_Generic.genericString)(Data_Generic.genericMaybe(Data_Generic.genericString))))(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.FormURLEncoded.FormURLEncoded", [ {-        sigConstructor: "Data.FormURLEncoded.FormURLEncoded", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericArray(Data_Generic.genericTuple(Data_Generic.genericString)(Data_Generic.genericMaybe(Data_Generic.genericString))))(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.FormURLEncoded.FormURLEncoded", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericArray(Data_Generic.genericTuple(Data_Generic.genericString)(Data_Generic.genericMaybe(Data_Generic.genericString))))(v);-    } ]);-});-var fromArray = FormURLEncoded;-var eqFormUrlEncoded = Data_Eq.eqArray(Data_Tuple.eqTuple(Data_Eq.eqString)(Data_Maybe.eqMaybe(Data_Eq.eqString)));-var encode = (function () {-    var encodePart = function (v) {-        if (v.value1 instanceof Data_Maybe.Nothing) {-            return Global["encodeURIComponent"](v.value0);-        };-        if (v.value1 instanceof Data_Maybe.Just) {-            return Global["encodeURIComponent"](v.value0) + ("=" + Global["encodeURIComponent"](v.value1.value0));-        };-        throw new Error("Failed pattern match at Data.FormURLEncoded line 43, column 5 - line 43, column 56: " + [ v.constructor.name ]);-    };-    return function ($21) {-        return Data_String.joinWith("&")(Data_Functor.map(Data_Functor.functorArray)(encodePart)(toArray($21)));-    };-})();-module.exports = {-    FormURLEncoded: FormURLEncoded, -    encode: encode, -    fromArray: fromArray, -    toArray: toArray, -    genericFormUrlEncoded: genericFormUrlEncoded, -    newtypeFormUrlEncoded: newtypeFormUrlEncoded, -    eqFormUrlEncoded: eqFormUrlEncoded, -    ordFormUrlEncoded: ordFormUrlEncoded, -    showFormUrlEncoded: showFormUrlEncoded, -    semigroupFormUrlEncoded: semigroupFormUrlEncoded, -    monoidFormUrlEncoded: monoidFormUrlEncoded-};--},{"../Control.Apply":42,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Functor":155,"../Data.Generic":157,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Data.String":241,"../Data.Tuple":245,"../Data.Unit":249,"../Global":252,"../Prelude":268}],147:[function(require,module,exports){-"use strict";--// module Data.Function.Uncurried--exports.mkFn0 = function (fn) {-  return function () {-    return fn({});-  };-};--exports.mkFn2 = function (fn) {-  /* jshint maxparams: 2 */-  return function (a, b) {-    return fn(a)(b);-  };-};--exports.mkFn3 = function (fn) {-  /* jshint maxparams: 3 */-  return function (a, b, c) {-    return fn(a)(b)(c);-  };-};--exports.mkFn4 = function (fn) {-  /* jshint maxparams: 4 */-  return function (a, b, c, d) {-    return fn(a)(b)(c)(d);-  };-};--exports.mkFn5 = function (fn) {-  /* jshint maxparams: 5 */-  return function (a, b, c, d, e) {-    return fn(a)(b)(c)(d)(e);-  };-};--exports.mkFn6 = function (fn) {-  /* jshint maxparams: 6 */-  return function (a, b, c, d, e, f) {-    return fn(a)(b)(c)(d)(e)(f);-  };-};--exports.mkFn7 = function (fn) {-  /* jshint maxparams: 7 */-  return function (a, b, c, d, e, f, g) {-    return fn(a)(b)(c)(d)(e)(f)(g);-  };-};--exports.mkFn8 = function (fn) {-  /* jshint maxparams: 8 */-  return function (a, b, c, d, e, f, g, h) {-    return fn(a)(b)(c)(d)(e)(f)(g)(h);-  };-};--exports.mkFn9 = function (fn) {-  /* jshint maxparams: 9 */-  return function (a, b, c, d, e, f, g, h, i) {-    return fn(a)(b)(c)(d)(e)(f)(g)(h)(i);-  };-};--exports.mkFn10 = function (fn) {-  /* jshint maxparams: 10 */-  return function (a, b, c, d, e, f, g, h, i, j) {-    return fn(a)(b)(c)(d)(e)(f)(g)(h)(i)(j);-  };-};--exports.runFn0 = function (fn) {-  return fn();-};--exports.runFn2 = function (fn) {-  return function (a) {-    return function (b) {-      return fn(a, b);-    };-  };-};--exports.runFn3 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return fn(a, b, c);-      };-    };-  };-};--exports.runFn4 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return fn(a, b, c, d);-        };-      };-    };-  };-};--exports.runFn5 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return function (e) {-            return fn(a, b, c, d, e);-          };-        };-      };-    };-  };-};--exports.runFn6 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return function (e) {-            return function (f) {-              return fn(a, b, c, d, e, f);-            };-          };-        };-      };-    };-  };-};--exports.runFn7 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return function (e) {-            return function (f) {-              return function (g) {-                return fn(a, b, c, d, e, f, g);-              };-            };-          };-        };-      };-    };-  };-};--exports.runFn8 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return function (e) {-            return function (f) {-              return function (g) {-                return function (h) {-                  return fn(a, b, c, d, e, f, g, h);-                };-              };-            };-          };-        };-      };-    };-  };-};--exports.runFn9 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return function (e) {-            return function (f) {-              return function (g) {-                return function (h) {-                  return function (i) {-                    return fn(a, b, c, d, e, f, g, h, i);-                  };-                };-              };-            };-          };-        };-      };-    };-  };-};--exports.runFn10 = function (fn) {-  return function (a) {-    return function (b) {-      return function (c) {-        return function (d) {-          return function (e) {-            return function (f) {-              return function (g) {-                return function (h) {-                  return function (i) {-                    return function (j) {-                      return fn(a, b, c, d, e, f, g, h, i, j);-                    };-                  };-                };-              };-            };-          };-        };-      };-    };-  };-};--},{}],148:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Unit = require("../Data.Unit");-var runFn1 = function (f) {-    return f;-};-var mkFn1 = function (f) {-    return f;-};-module.exports = {-    mkFn1: mkFn1, -    runFn1: runFn1, -    mkFn0: $foreign.mkFn0, -    mkFn10: $foreign.mkFn10, -    mkFn2: $foreign.mkFn2, -    mkFn3: $foreign.mkFn3, -    mkFn4: $foreign.mkFn4, -    mkFn5: $foreign.mkFn5, -    mkFn6: $foreign.mkFn6, -    mkFn7: $foreign.mkFn7, -    mkFn8: $foreign.mkFn8, -    mkFn9: $foreign.mkFn9, -    runFn0: $foreign.runFn0, -    runFn10: $foreign.runFn10, -    runFn2: $foreign.runFn2, -    runFn3: $foreign.runFn3, -    runFn4: $foreign.runFn4, -    runFn5: $foreign.runFn5, -    runFn6: $foreign.runFn6, -    runFn7: $foreign.runFn7, -    runFn8: $foreign.runFn8, -    runFn9: $foreign.runFn9-};--},{"../Data.Unit":249,"./foreign":147}],149:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var on = function (f) {-    return function (g) {-        return function (x) {-            return function (y) {-                return f(g(x))(g(y));-            };-        };-    };-};-var flip = function (f) {-    return function (b) {-        return function (a) {-            return f(a)(b);-        };-    };-};-var $$const = function (a) {-    return function (v) {-        return a;-    };-};-var applyFlipped = function (x) {-    return function (f) {-        return f(x);-    };-};-var apply = function (f) {-    return function (x) {-        return f(x);-    };-};-module.exports = {-    apply: apply, -    applyFlipped: applyFlipped, -    "const": $$const, -    flip: flip, -    on: on-};--},{"../Control.Category":47}],150:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Lazy = require("../Control.Lazy");-var Control_Monad = require("../Control.Monad");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_Plus = require("../Control.Plus");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Functor = require("../Data.Functor");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var App = function (x) {-    return x;-};-var traversableApp = function (dictTraversable) {-    return dictTraversable;-};-var showApp = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(App " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var plusApp = function (dictPlus) {-    return dictPlus;-};-var newtypeApp = new Data_Newtype.Newtype(function (n) {-    return n;-}, App);-var monadPlusApp = function (dictMonadPlus) {-    return dictMonadPlus;-};-var monadApp = function (dictMonad) {-    return dictMonad;-};-var lazyApp = function (dictLazy) {-    return dictLazy;-};-var hoistLowerApp = Unsafe_Coerce.unsafeCoerce;-var hoistLiftApp = Unsafe_Coerce.unsafeCoerce;-var hoistApp = function (f) {-    return function (v) {-        return f(v);-    };-};-var functorApp = function (dictFunctor) {-    return dictFunctor;-};-var foldableApp = function (dictFoldable) {-    return dictFoldable;-};-var extendApp = function (dictExtend) {-    return dictExtend;-};-var eq1App = function (dictEq1) {-    return new Data_Eq.Eq1(function (dictEq) {-        return function (v) {-            return function (v1) {-                return Data_Eq.eq1(dictEq1)(dictEq)(v)(v1);-            };-        };-    });-};-var eqApp = function (dictEq1) {-    return function (dictEq) {-        return new Data_Eq.Eq(Data_Eq.eq1(eq1App(dictEq1))(dictEq));-    };-};-var ord1App = function (dictOrd1) {-    return new Data_Ord.Ord1(function () {-        return eq1App(dictOrd1.Eq10());-    }, function (dictOrd) {-        return function (v) {-            return function (v1) {-                return Data_Ord.compare1(dictOrd1)(dictOrd)(v)(v1);-            };-        };-    });-};-var ordApp = function (dictOrd1) {-    return function (dictOrd) {-        return new Data_Ord.Ord(function () {-            return eqApp(dictOrd1.Eq10())(dictOrd.Eq0());-        }, Data_Ord.compare1(ord1App(dictOrd1))(dictOrd));-    };-};-var comonadApp = function (dictComonad) {-    return dictComonad;-};-var bindApp = function (dictBind) {-    return dictBind;-};-var applyApp = function (dictApply) {-    return dictApply;-};-var applicativeApp = function (dictApplicative) {-    return dictApplicative;-};-var alternativeApp = function (dictAlternative) {-    return dictAlternative;-};-var altApp = function (dictAlt) {-    return dictAlt;-};-module.exports = {-    App: App, -    hoistApp: hoistApp, -    hoistLiftApp: hoistLiftApp, -    hoistLowerApp: hoistLowerApp, -    newtypeApp: newtypeApp, -    eqApp: eqApp, -    eq1App: eq1App, -    ordApp: ordApp, -    ord1App: ord1App, -    showApp: showApp, -    functorApp: functorApp, -    applyApp: applyApp, -    applicativeApp: applicativeApp, -    bindApp: bindApp, -    monadApp: monadApp, -    altApp: altApp, -    plusApp: plusApp, -    alternativeApp: alternativeApp, -    monadPlusApp: monadPlusApp, -    lazyApp: lazyApp, -    foldableApp: foldableApp, -    traversableApp: traversableApp, -    extendApp: extendApp, -    comonadApp: comonadApp-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Lazy":50,"../Control.Monad":86,"../Control.MonadPlus":87,"../Control.Plus":91,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Functor":155,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Traversable":244,"../Prelude":268,"../Unsafe.Coerce":271}],151:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_App = require("../Data.Functor.App");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var Compose = function (x) {-    return x;-};-var showCompose = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Compose " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var newtypeCompose = new Data_Newtype.Newtype(function (n) {-    return n;-}, Compose);-var functorCompose = function (dictFunctor) {-    return function (dictFunctor1) {-        return new Data_Functor.Functor(function (f) {-            return function (v) {-                return Compose(Data_Functor.map(dictFunctor)(Data_Functor.map(dictFunctor1)(f))(v));-            };-        });-    };-};-var foldableCompose = function (dictFoldable) {-    return function (dictFoldable1) {-        return new Data_Foldable.Foldable(function (dictMonoid) {-            return function (f) {-                return function (v) {-                    return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(Data_Foldable.foldMap(dictFoldable1)(dictMonoid)(f))(v);-                };-            };-        }, function (f) {-            return function (i) {-                return function (v) {-                    return Data_Foldable.foldl(dictFoldable)(Data_Foldable.foldl(dictFoldable1)(f))(i)(v);-                };-            };-        }, function (f) {-            return function (i) {-                return function (v) {-                    return Data_Foldable.foldr(dictFoldable)(Data_Function.flip(Data_Foldable.foldr(dictFoldable1)(f)))(i)(v);-                };-            };-        });-    };-};-var traversableCompose = function (dictTraversable) {-    return function (dictTraversable1) {-        return new Data_Traversable.Traversable(function () {-            return foldableCompose(dictTraversable.Foldable1())(dictTraversable1.Foldable1());-        }, function () {-            return functorCompose(dictTraversable.Functor0())(dictTraversable1.Functor0());-        }, function (dictApplicative) {-            return Data_Traversable.traverse(traversableCompose(dictTraversable)(dictTraversable1))(dictApplicative)(Control_Category.id(Control_Category.categoryFn));-        }, function (dictApplicative) {-            return function (f) {-                return function (v) {-                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Compose)(Data_Traversable.traverse(dictTraversable)(dictApplicative)(Data_Traversable.traverse(dictTraversable1)(dictApplicative)(f))(v));-                };-            };-        });-    };-};-var eq1Compose = function (dictEq1) {-    return function (dictEq11) {-        return new Data_Eq.Eq1(function (dictEq) {-            return function (v) {-                return function (v1) {-                    return Data_Eq.eq1(dictEq1)(Data_Functor_App.eqApp(dictEq11)(dictEq))(Data_Functor_App.hoistLiftApp(v))(Data_Functor_App.hoistLiftApp(v1));-                };-            };-        });-    };-};-var eqCompose = function (dictEq1) {-    return function (dictEq11) {-        return function (dictEq) {-            return new Data_Eq.Eq(Data_Eq.eq1(eq1Compose(dictEq1)(dictEq11))(dictEq));-        };-    };-};-var ord1Compose = function (dictOrd1) {-    return function (dictOrd11) {-        return new Data_Ord.Ord1(function () {-            return eq1Compose(dictOrd1.Eq10())(dictOrd11.Eq10());-        }, function (dictOrd) {-            return function (v) {-                return function (v1) {-                    return Data_Ord.compare1(dictOrd1)(Data_Functor_App.ordApp(dictOrd11)(dictOrd))(Data_Functor_App.hoistLiftApp(v))(Data_Functor_App.hoistLiftApp(v1));-                };-            };-        });-    };-};-var ordCompose = function (dictOrd1) {-    return function (dictOrd11) {-        return function (dictOrd) {-            return new Data_Ord.Ord(function () {-                return eqCompose(dictOrd1.Eq10())(dictOrd11.Eq10())(dictOrd.Eq0());-            }, Data_Ord.compare1(ord1Compose(dictOrd1)(dictOrd11))(dictOrd));-        };-    };-};-var bihoistCompose = function (dictFunctor) {-    return function (natF) {-        return function (natG) {-            return function (v) {-                return natF(Data_Functor.map(dictFunctor)(natG)(v));-            };-        };-    };-};-var applyCompose = function (dictApply) {-    return function (dictApply1) {-        return new Control_Apply.Apply(function () {-            return functorCompose(dictApply.Functor0())(dictApply1.Functor0());-        }, function (v) {-            return function (v1) {-                return Compose(Control_Apply.apply(dictApply)(Data_Functor.map(dictApply.Functor0())(Control_Apply.apply(dictApply1))(v))(v1));-            };-        });-    };-};-var applicativeCompose = function (dictApplicative) {-    return function (dictApplicative1) {-        return new Control_Applicative.Applicative(function () {-            return applyCompose(dictApplicative.Apply0())(dictApplicative1.Apply0());-        }, function ($75) {-            return Compose(Control_Applicative.pure(dictApplicative)(Control_Applicative.pure(dictApplicative1)($75)));-        });-    };-};-var altCompose = function (dictAlt) {-    return function (dictFunctor) {-        return new Control_Alt.Alt(function () {-            return functorCompose(dictAlt.Functor0())(dictFunctor);-        }, function (v) {-            return function (v1) {-                return Compose(Control_Alt.alt(dictAlt)(v)(v1));-            };-        });-    };-};-var plusCompose = function (dictPlus) {-    return function (dictFunctor) {-        return new Control_Plus.Plus(function () {-            return altCompose(dictPlus.Alt0())(dictFunctor);-        }, Control_Plus.empty(dictPlus));-    };-};-var alternativeCompose = function (dictAlternative) {-    return function (dictApplicative) {-        return new Control_Alternative.Alternative(function () {-            return applicativeCompose(dictAlternative.Applicative0())(dictApplicative);-        }, function () {-            return plusCompose(dictAlternative.Plus1())((dictApplicative.Apply0()).Functor0());-        });-    };-};-module.exports = {-    Compose: Compose, -    bihoistCompose: bihoistCompose, -    newtypeCompose: newtypeCompose, -    eq1Compose: eq1Compose, -    eqCompose: eqCompose, -    ord1Compose: ord1Compose, -    ordCompose: ordCompose, -    showCompose: showCompose, -    functorCompose: functorCompose, -    applyCompose: applyCompose, -    applicativeCompose: applicativeCompose, -    foldableCompose: foldableCompose, -    traversableCompose: traversableCompose, -    altCompose: altCompose, -    plusCompose: plusCompose, -    alternativeCompose: alternativeCompose-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.App":150,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Traversable":244,"../Prelude":268}],152:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Functor = require("../Data.Functor");-var Data_Void = require("../Data.Void");-var Prelude = require("../Prelude");-var Contravariant = function (cmap) {-    this.cmap = cmap;-};-var cmap = function (dict) {-    return dict.cmap;-};-var cmapFlipped = function (dictContravariant) {-    return function (x) {-        return function (f) {-            return cmap(dictContravariant)(f)(x);-        };-    };-};-var coerce = function (dictContravariant) {-    return function (dictFunctor) {-        return function (a) {-            return Data_Functor.map(dictFunctor)(Data_Void.absurd)(cmap(dictContravariant)(Data_Void.absurd)(a));-        };-    };-};-module.exports = {-    Contravariant: Contravariant, -    cmap: cmap, -    cmapFlipped: cmapFlipped, -    coerce: coerce-};--},{"../Data.Functor":155,"../Data.Void":250,"../Prelude":268}],153:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Functor = require("../Data.Functor");-var Invariant = function (imap) {-    this.imap = imap;-};-var imapF = function (dictFunctor) {-    return function (f) {-        return function (v) {-            return Data_Functor.map(dictFunctor)(f);-        };-    };-};-var invariantArray = new Invariant(imapF(Data_Functor.functorArray));-var invariantFn = new Invariant(imapF(Data_Functor.functorFn));-var imap = function (dict) {-    return dict.imap;-};-module.exports = {-    Invariant: Invariant, -    imap: imap, -    imapF: imapF, -    invariantFn: invariantFn, -    invariantArray: invariantArray-};--},{"../Data.Functor":155}],154:[function(require,module,exports){-"use strict";--exports.arrayMap = function (f) {-  return function (arr) {-    var l = arr.length;-    var result = new Array(l);-    for (var i = 0; i < l; i++) {-      result[i] = f(arr[i]);-    }-    return result;-  };-};--},{}],155:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Unit = require("../Data.Unit");-var Functor = function (map) {-    this.map = map;-};-var map = function (dict) {-    return dict.map;-};-var mapFlipped = function (dictFunctor) {-    return function (fa) {-        return function (f) {-            return map(dictFunctor)(f)(fa);-        };-    };-};-var $$void = function (dictFunctor) {-    return map(dictFunctor)(Data_Function["const"](Data_Unit.unit));-};-var voidLeft = function (dictFunctor) {-    return function (f) {-        return function (x) {-            return map(dictFunctor)(Data_Function["const"](x))(f);-        };-    };-};-var voidRight = function (dictFunctor) {-    return function (x) {-        return map(dictFunctor)(Data_Function["const"](x));-    };-};-var functorFn = new Functor(Control_Semigroupoid.compose(Control_Semigroupoid.semigroupoidFn));-var functorArray = new Functor($foreign.arrayMap);-var flap = function (dictFunctor) {-    return function (ff) {-        return function (x) {-            return map(dictFunctor)(function (f) {-                return f(x);-            })(ff);-        };-    };-};-module.exports = {-    Functor: Functor, -    flap: flap, -    map: map, -    mapFlipped: mapFlipped, -    "void": $$void, -    voidLeft: voidLeft, -    voidRight: voidRight, -    functorFn: functorFn, -    functorArray: functorArray-};--},{"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Unit":249,"./foreign":154}],156:[function(require,module,exports){-"use strict";--// module Data.Generic--exports.zipAll = function (f) {-  return function (xs) {-    return function (ys) {-      var l = xs.length < ys.length ? xs.length : ys.length;-      for (var i = 0; i < l; i++) {-        if (!f(xs[i])(ys[i])) {-          return false;-        }-      }-      return true;-    };-  };-};--exports.zipCompare = function (f) {-  return function (xs) {-    return function (ys) {-      var i = 0;-      var xlen = xs.length;-      var ylen = ys.length;-      while (i < xlen && i < ylen) {-        var o = f(xs[i])(ys[i]);-        if (o !== 0) {-          return o;-        }-        i++;-      }-      if (xlen === ylen) {-        return 0;-      } else if (xlen > ylen) {-        return -1;-      } else {-        return 1;-      }-    };-  };-};--},{}],157:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Array = require("../Data.Array");-var Data_Boolean = require("../Data.Boolean");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Identity = require("../Data.Identity");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_NonEmpty = require("../Data.NonEmpty");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_String = require("../Data.String");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Data_Void = require("../Data.Void");-var Prelude = require("../Prelude");-var Type_Proxy = require("../Type.Proxy");-var SProd = (function () {-    function SProd(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    SProd.create = function (value0) {-        return function (value1) {-            return new SProd(value0, value1);-        };-    };-    return SProd;-})();-var SRecord = (function () {-    function SRecord(value0) {-        this.value0 = value0;-    };-    SRecord.create = function (value0) {-        return new SRecord(value0);-    };-    return SRecord;-})();-var SNumber = (function () {-    function SNumber(value0) {-        this.value0 = value0;-    };-    SNumber.create = function (value0) {-        return new SNumber(value0);-    };-    return SNumber;-})();-var SBoolean = (function () {-    function SBoolean(value0) {-        this.value0 = value0;-    };-    SBoolean.create = function (value0) {-        return new SBoolean(value0);-    };-    return SBoolean;-})();-var SInt = (function () {-    function SInt(value0) {-        this.value0 = value0;-    };-    SInt.create = function (value0) {-        return new SInt(value0);-    };-    return SInt;-})();-var SString = (function () {-    function SString(value0) {-        this.value0 = value0;-    };-    SString.create = function (value0) {-        return new SString(value0);-    };-    return SString;-})();-var SChar = (function () {-    function SChar(value0) {-        this.value0 = value0;-    };-    SChar.create = function (value0) {-        return new SChar(value0);-    };-    return SChar;-})();-var SArray = (function () {-    function SArray(value0) {-        this.value0 = value0;-    };-    SArray.create = function (value0) {-        return new SArray(value0);-    };-    return SArray;-})();-var SUnit = (function () {-    function SUnit() {--    };-    SUnit.value = new SUnit();-    return SUnit;-})();-var SigProd = (function () {-    function SigProd(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    SigProd.create = function (value0) {-        return function (value1) {-            return new SigProd(value0, value1);-        };-    };-    return SigProd;-})();-var SigRecord = (function () {-    function SigRecord(value0) {-        this.value0 = value0;-    };-    SigRecord.create = function (value0) {-        return new SigRecord(value0);-    };-    return SigRecord;-})();-var SigNumber = (function () {-    function SigNumber() {--    };-    SigNumber.value = new SigNumber();-    return SigNumber;-})();-var SigBoolean = (function () {-    function SigBoolean() {--    };-    SigBoolean.value = new SigBoolean();-    return SigBoolean;-})();-var SigInt = (function () {-    function SigInt() {--    };-    SigInt.value = new SigInt();-    return SigInt;-})();-var SigString = (function () {-    function SigString() {--    };-    SigString.value = new SigString();-    return SigString;-})();-var SigChar = (function () {-    function SigChar() {--    };-    SigChar.value = new SigChar();-    return SigChar;-})();-var SigArray = (function () {-    function SigArray(value0) {-        this.value0 = value0;-    };-    SigArray.create = function (value0) {-        return new SigArray(value0);-    };-    return SigArray;-})();-var SigUnit = (function () {-    function SigUnit() {--    };-    SigUnit.value = new SigUnit();-    return SigUnit;-})();-var Generic = function (fromSpine, toSignature, toSpine) {-    this.fromSpine = fromSpine;-    this.toSignature = toSignature;-    this.toSpine = toSpine;-};-var toSpine = function (dict) {-    return dict.toSpine;-};-var toSignature = function (dict) {-    return dict.toSignature;-};-var showSuspended = function (dictShow) {-    return function (e) {-        return "\\_ -> " + Data_Show.show(dictShow)(e(Data_Unit.unit));-    };-};-var showArray = function (v) {-    return function (v1) {-        if (v1.length === 0) {-            return "[]";-        };-        return "[ " + (Data_Foldable.intercalate(Data_Foldable.foldableArray)(Data_Monoid.monoidString)(", ")(Data_Functor.map(Data_Functor.functorArray)(v)(v1)) + " ]");-    };-};-var showGenericSpine = new Data_Show.Show(function (v) {-    if (v instanceof SUnit) {-        return "SUnit";-    };-    if (v instanceof SChar) {-        return "SChar " + Data_Show.show(Data_Show.showChar)(v.value0);-    };-    if (v instanceof SString) {-        return "SString " + Data_Show.show(Data_Show.showString)(v.value0);-    };-    if (v instanceof SBoolean) {-        return "SBoolean " + Data_Show.show(Data_Show.showBoolean)(v.value0);-    };-    if (v instanceof SNumber) {-        return "SNumber " + Data_Show.show(Data_Show.showNumber)(v.value0);-    };-    if (v instanceof SInt) {-        return "SInt " + Data_Show.show(Data_Show.showInt)(v.value0);-    };-    if (v instanceof SArray) {-        return "SArray " + showArray(showSuspended(showGenericSpine))(v.value0);-    };-    if (v instanceof SProd) {-        return "SProd " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + showArray(showSuspended(showGenericSpine))(v.value1)));-    };-    if (v instanceof SRecord) {-        var showElt = function (v1) {-            return Data_Foldable.fold(Data_Foldable.foldableArray)(Data_Monoid.monoidString)([ "{ recLabel: ", Data_Show.show(Data_Show.showString)(v1.recLabel), ", recValue: ", showSuspended(showGenericSpine)(v1.recValue), " }" ]);-        };-        return "SRecord " + showArray(showElt)(v.value0);-    };-    throw new Error("Failed pattern match at Data.Generic line 272, column 9 - line 273, column 9: " + [ v.constructor.name ]);-});-var orderingToInt = function (v) {-    if (v instanceof Data_Ordering.EQ) {-        return 0;-    };-    if (v instanceof Data_Ordering.LT) {-        return 1;-    };-    if (v instanceof Data_Ordering.GT) {-        return -1 | 0;-    };-    throw new Error("Failed pattern match at Data.Generic line 538, column 17 - line 541, column 10: " + [ v.constructor.name ]);-};-var genericVoid = new Generic(function (v) {-    return Data_Maybe.Nothing.value;-}, function (v) {-    return new SigProd("Data.Void.Void", [  ]);-}, Data_Void.absurd);-var genericUnit = new Generic(function (v) {-    if (v instanceof SUnit) {-        return new Data_Maybe.Just(Data_Unit.unit);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return SigUnit.value;-}, function (v) {-    return SUnit.value;-});-var genericString = new Generic(function (v) {-    if (v instanceof SString) {-        return new Data_Maybe.Just(v.value0);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return SigString.value;-}, SString.create);-var genericOrdering = new Generic(function (v) {-    if (v instanceof SProd && (v.value0 === "Data.Ordering.LT" && v.value1.length === 0)) {-        return new Data_Maybe.Just(Data_Ordering.LT.value);-    };-    if (v instanceof SProd && (v.value0 === "Data.Ordering.EQ" && v.value1.length === 0)) {-        return new Data_Maybe.Just(Data_Ordering.EQ.value);-    };-    if (v instanceof SProd && (v.value0 === "Data.Ordering.GT" && v.value1.length === 0)) {-        return new Data_Maybe.Just(Data_Ordering.GT.value);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return new SigProd("Data.Ordering.Ordering", [ {-        sigConstructor: "Data.Ordering.LT", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.Ordering.EQ", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.Ordering.GT", -        sigValues: [  ]-    } ]);-}, function (v) {-    if (v instanceof Data_Ordering.LT) {-        return new SProd("Data.Ordering.LT", [  ]);-    };-    if (v instanceof Data_Ordering.EQ) {-        return new SProd("Data.Ordering.EQ", [  ]);-    };-    if (v instanceof Data_Ordering.GT) {-        return new SProd("Data.Ordering.GT", [  ]);-    };-    throw new Error("Failed pattern match at Data.Generic line 218, column 13 - line 221, column 38: " + [ v.constructor.name ]);-});-var genericNumber = new Generic(function (v) {-    if (v instanceof SNumber) {-        return new Data_Maybe.Just(v.value0);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return SigNumber.value;-}, SNumber.create);-var genericInt = new Generic(function (v) {-    if (v instanceof SInt) {-        return new Data_Maybe.Just(v.value0);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return SigInt.value;-}, SInt.create);-var genericChar = new Generic(function (v) {-    if (v instanceof SChar) {-        return new Data_Maybe.Just(v.value0);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return SigChar.value;-}, SChar.create);-var genericBool = new Generic(function (v) {-    if (v instanceof SBoolean) {-        return new Data_Maybe.Just(v.value0);-    };-    return Data_Maybe.Nothing.value;-}, function (v) {-    return SigBoolean.value;-}, SBoolean.create);-var fromSpine = function (dict) {-    return dict.fromSpine;-};-var force = function (f) {-    return f(Data_Unit.unit);-};-var genericArray = function (dictGeneric) {-    return new Generic(function (v) {-        if (v instanceof SArray) {-            return Data_Traversable.traverse(Data_Traversable.traversableArray)(Data_Maybe.applicativeMaybe)(function ($310) {-                return fromSpine(dictGeneric)(force($310));-            })(v.value0);-        };-        return Data_Maybe.Nothing.value;-    }, function (x) {-        var lowerProxy = function (v) {-            return Type_Proxy["Proxy"].value;-        };-        return new SigArray(function (v) {-            return toSignature(dictGeneric)(lowerProxy(x));-        });-    }, function ($311) {-        return SArray.create(Data_Functor.map(Data_Functor.functorArray)(function (x) {-            return function (v) {-                return toSpine(dictGeneric)(x);-            };-        })($311));-    });-};-var genericEither = function (dictGeneric) {-    return function (dictGeneric1) {-        return new Generic(function (v) {-            if (v instanceof SProd && (v.value0 === "Data.Either.Left" && v.value1.length === 1)) {-                return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Either.Left.create)(fromSpine(dictGeneric)(force(v["value1"][0])));-            };-            if (v instanceof SProd && (v.value0 === "Data.Either.Right" && v.value1.length === 1)) {-                return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Either.Right.create)(fromSpine(dictGeneric1)(force(v["value1"][0])));-            };-            return Data_Maybe.Nothing.value;-        }, function (x) {-            var rproxy = function (v) {-                return Type_Proxy["Proxy"].value;-            };-            var lproxy = function (v) {-                return Type_Proxy["Proxy"].value;-            };-            return new SigProd("Data.Either.Either", [ {-                sigConstructor: "Data.Either.Left", -                sigValues: [ function (v) {-                    return toSignature(dictGeneric)(lproxy(x));-                } ]-            }, {-                sigConstructor: "Data.Either.Right", -                sigValues: [ function (v) {-                    return toSignature(dictGeneric1)(rproxy(x));-                } ]-            } ]);-        }, function (v) {-            if (v instanceof Data_Either.Left) {-                return new SProd("Data.Either.Left", [ function (v1) {-                    return toSpine(dictGeneric)(v.value0);-                } ]);-            };-            if (v instanceof Data_Either.Right) {-                return new SProd("Data.Either.Right", [ function (v1) {-                    return toSpine(dictGeneric1)(v.value0);-                } ]);-            };-            throw new Error("Failed pattern match at Data.Generic line 181, column 3 - line 181, column 64: " + [ v.constructor.name ]);-        });-    };-};-var genericIdentity = function (dictGeneric) {-    return new Generic(function (v) {-        if (v instanceof SProd && (v.value0 === "Data.Identity.Identity" && v.value1.length === 1)) {-            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Identity.Identity)(fromSpine(dictGeneric)(force(v["value1"][0])));-        };-        return Data_Maybe.Nothing.value;-    }, function (x) {-        var iproxy = function (v) {-            return Type_Proxy["Proxy"].value;-        };-        return new SigProd("Data.Identity.Identity", [ {-            sigConstructor: "Data.Identity.Identity", -            sigValues: [ function (v) {-                return toSignature(dictGeneric)(iproxy(x));-            } ]-        } ]);-    }, function (v) {-        return new SProd("Data.Identity.Identity", [ function (v1) {-            return toSpine(dictGeneric)(v);-        } ]);-    });-};-var genericList = function (dictGeneric) {-    return new Generic(function (v) {-        if (v instanceof SProd && (v.value0 === "Data.List.Types.Cons" && v.value1.length === 2)) {-            return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_List_Types.Cons.create)(fromSpine(dictGeneric)(force(v["value1"][0]))))(fromSpine(genericList(dictGeneric))(force(v["value1"][1])));-        };-        if (v instanceof SProd && (v.value0 === "Data.List.Types.Nil" && v.value1.length === 0)) {-            return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(Data_List_Types.Nil.value);-        };-        return Data_Maybe.Nothing.value;-    }, function (x) {-        var headProxy = function (v) {-            return Type_Proxy["Proxy"].value;-        };-        return new SigProd("Data.List.Types.List", [ {-            sigConstructor: "Data.List.Types.Cons", -            sigValues: [ function (v) {-                return toSignature(dictGeneric)(headProxy(x));-            }, function (v) {-                return toSignature(genericList(dictGeneric))(x);-            } ]-        }, {-            sigConstructor: "Data.List.Types.Nil", -            sigValues: [  ]-        } ]);-    }, function (v) {-        if (v instanceof Data_List_Types.Cons) {-            return new SProd("Data.List.Types.Cons", [ function (v1) {-                return toSpine(dictGeneric)(v.value0);-            }, function (v1) {-                return toSpine(genericList(dictGeneric))(v.value1);-            } ]);-        };-        if (v instanceof Data_List_Types.Nil) {-            return new SProd("Data.List.Types.Nil", [  ]);-        };-        throw new Error("Failed pattern match at Data.Generic line 117, column 3 - line 118, column 68: " + [ v.constructor.name ]);-    });-};-var genericMaybe = function (dictGeneric) {-    return new Generic(function (v) {-        if (v instanceof SProd && (v.value0 === "Data.Maybe.Just" && v.value1.length === 1)) {-            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Maybe.Just.create)(fromSpine(dictGeneric)(force(v["value1"][0])));-        };-        if (v instanceof SProd && (v.value0 === "Data.Maybe.Nothing" && v.value1.length === 0)) {-            return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(Data_Maybe.Nothing.value);-        };-        return Data_Maybe.Nothing.value;-    }, function (x) {-        var mbProxy = function (v) {-            return Type_Proxy["Proxy"].value;-        };-        return new SigProd("Data.Maybe.Maybe", [ {-            sigConstructor: "Data.Maybe.Just", -            sigValues: [ function (v) {-                return toSignature(dictGeneric)(mbProxy(x));-            } ]-        }, {-            sigConstructor: "Data.Maybe.Nothing", -            sigValues: [  ]-        } ]);-    }, function (v) {-        if (v instanceof Data_Maybe.Just) {-            return new SProd("Data.Maybe.Just", [ function (v1) {-                return toSpine(dictGeneric)(v.value0);-            } ]);-        };-        if (v instanceof Data_Maybe.Nothing) {-            return new SProd("Data.Maybe.Nothing", [  ]);-        };-        throw new Error("Failed pattern match at Data.Generic line 161, column 3 - line 161, column 63: " + [ v.constructor.name ]);-    });-};-var genericNonEmpty = function (dictGeneric) {-    return function (dictGeneric1) {-        return new Generic(function (v) {-            if (v instanceof SProd && (v.value0 === "Data.NonEmpty.NonEmpty" && v.value1.length === 2)) {-                return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_NonEmpty.NonEmpty.create)(fromSpine(dictGeneric1)(force(v["value1"][0]))))(fromSpine(dictGeneric)(force(v["value1"][1])));-            };-            return Data_Maybe.Nothing.value;-        }, function (x) {-            var tailProxy = function (v) {-                return Type_Proxy["Proxy"].value;-            };-            var headProxy = function (v) {-                return Type_Proxy["Proxy"].value;-            };-            return new SigProd("Data.NonEmpty.NonEmpty", [ {-                sigConstructor: "Data.NonEmpty.NonEmpty", -                sigValues: [ function (v) {-                    return toSignature(dictGeneric1)(headProxy(x));-                }, function (v) {-                    return toSignature(dictGeneric)(tailProxy(x));-                } ]-            } ]);-        }, function (v) {-            return new SProd("Data.NonEmpty.NonEmpty", [ function (v1) {-                return toSpine(dictGeneric1)(v.value0);-            }, function (v1) {-                return toSpine(dictGeneric)(v.value1);-            } ]);-        });-    };-};-var genericNonEmptyList = function (dictGeneric) {-    return new Generic(function (v) {-        if (v instanceof SProd && (v.value0 === "Data.List.Types.NonEmptyList" && v.value1.length === 1)) {-            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_List_Types.NonEmptyList)(fromSpine(genericNonEmpty(genericList(dictGeneric))(dictGeneric))(force(v["value1"][0])));-        };-        return Data_Maybe.Nothing.value;-    }, function (x) {-        var listProxy = function (v) {-            return Type_Proxy["Proxy"].value;-        };-        return new SigProd("Data.List.Types.NonEmptyList", [ {-            sigConstructor: "Data.List.Types.NonEmptyList", -            sigValues: [ function (v) {-                return toSignature(genericList(dictGeneric))(listProxy(x));-            } ]-        } ]);-    }, function (v) {-        return new SProd("Data.List.Types.NonEmptyList", [ function (v1) {-            return toSpine(genericNonEmpty(genericList(dictGeneric))(dictGeneric))(v);-        } ]);-    });-};-var genericShowPrec = function (v) {-    return function (v1) {-        if (v1 instanceof SProd) {-            if (Data_Array["null"](v1.value1)) {-                return v1.value0;-            };-            if (Data_Boolean.otherwise) {-                var showParen = function (v2) {-                    return function (x) {-                        if (!v2) {-                            return x;-                        };-                        if (v2) {-                            return "(" + (x + ")");-                        };-                        throw new Error("Failed pattern match at Data.Generic line 467, column 7 - line 467, column 28: " + [ v2.constructor.name, x.constructor.name ]);-                    };-                };-                return showParen(v > 10)(v1.value0 + (" " + Data_String.joinWith(" ")(Data_Functor.map(Data_Functor.functorArray)(function (x) {-                    return genericShowPrec(11)(force(x));-                })(v1.value1))));-            };-        };-        if (v1 instanceof SRecord) {-            var showLabelPart = function (x) {-                return x.recLabel + (": " + genericShowPrec(0)(force(x.recValue)));-            };-            return "{" + (Data_String.joinWith(", ")(Data_Functor.map(Data_Functor.functorArray)(showLabelPart)(v1.value0)) + "}");-        };-        if (v1 instanceof SBoolean) {-            return Data_Show.show(Data_Show.showBoolean)(v1.value0);-        };-        if (v1 instanceof SInt) {-            return Data_Show.show(Data_Show.showInt)(v1.value0);-        };-        if (v1 instanceof SNumber) {-            return Data_Show.show(Data_Show.showNumber)(v1.value0);-        };-        if (v1 instanceof SString) {-            return Data_Show.show(Data_Show.showString)(v1.value0);-        };-        if (v1 instanceof SChar) {-            return Data_Show.show(Data_Show.showChar)(v1.value0);-        };-        if (v1 instanceof SArray) {-            return "[" + (Data_String.joinWith(", ")(Data_Functor.map(Data_Functor.functorArray)(function (x) {-                return genericShowPrec(0)(force(x));-            })(v1.value0)) + "]");-        };-        if (v1 instanceof SUnit) {-            return "unit";-        };-        throw new Error("Failed pattern match at Data.Generic line 461, column 1 - line 469, column 1: " + [ v.constructor.name, v1.constructor.name ]);-    };-};-var gShow = function (dictGeneric) {-    return function ($312) {-        return genericShowPrec(0)(toSpine(dictGeneric)($312));-    };-};-var genericTuple = function (dictGeneric) {-    return function (dictGeneric1) {-        return new Generic(function (v) {-            if (v instanceof SProd && (v.value0 === "Data.Tuple.Tuple" && v.value1.length === 2)) {-                return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_Tuple.Tuple.create)(fromSpine(dictGeneric)(force(v["value1"][0]))))(fromSpine(dictGeneric1)(force(v["value1"][1])));-            };-            return Data_Maybe.Nothing.value;-        }, function (x) {-            var sndProxy = function (v) {-                return Type_Proxy["Proxy"].value;-            };-            var fstProxy = function (v) {-                return Type_Proxy["Proxy"].value;-            };-            return new SigProd("Data.Tuple.Tuple", [ {-                sigConstructor: "Data.Tuple.Tuple", -                sigValues: [ function (v) {-                    return toSignature(dictGeneric)(fstProxy(x));-                }, function (v) {-                    return toSignature(dictGeneric1)(sndProxy(x));-                } ]-            } ]);-        }, function (v) {-            return new SProd("Data.Tuple.Tuple", [ function (v1) {-                return toSpine(dictGeneric)(v.value0);-            }, function (v1) {-                return toSpine(dictGeneric1)(v.value1);-            } ]);-        });-    };-};-var isValidSpine = function (v) {-    return function (v1) {-        if (v instanceof SigBoolean && v1 instanceof SBoolean) {-            return true;-        };-        if (v instanceof SigNumber && v1 instanceof SNumber) {-            return true;-        };-        if (v instanceof SigInt && v1 instanceof SInt) {-            return true;-        };-        if (v instanceof SigString && v1 instanceof SString) {-            return true;-        };-        if (v instanceof SigChar && v1 instanceof SChar) {-            return true;-        };-        if (v instanceof SigArray && v1 instanceof SArray) {-            return Data_Foldable.all(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(function ($313) {-                return isValidSpine(force(v.value0))(force($313));-            })(v1.value0);-        };-        if (v instanceof SigProd && v1 instanceof SProd) {-            var v2 = Data_Foldable.find(Data_Foldable.foldableArray)(function (alt) {-                return alt.sigConstructor === v1.value0;-            })(v.value1);-            if (v2 instanceof Data_Maybe.Nothing) {-                return false;-            };-            if (v2 instanceof Data_Maybe.Just) {-                return Data_Foldable.and(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Array.zipWith(function (sig) {-                    return function (spine) {-                        return isValidSpine(force(sig))(force(spine));-                    };-                })(v2.value0.sigValues)(v1.value1));-            };-            throw new Error("Failed pattern match at Data.Generic line 438, column 3 - line 444, column 15: " + [ v2.constructor.name ]);-        };-        if (v instanceof SigRecord && v1 instanceof SRecord) {-            return Data_Foldable.and(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Array.zipWith(function (sig) {-                return function (val) {-                    return isValidSpine(force(sig.recValue))(force(val.recValue));-                };-            })(Data_Array.sortBy(function (a) {-                return function (b) {-                    return Data_Ord.compare(Data_Ord.ordString)(a.recLabel)(b.recLabel);-                };-            })(v.value0))(Data_Array.sortBy(function (a) {-                return function (b) {-                    return Data_Ord.compare(Data_Ord.ordString)(a.recLabel)(b.recLabel);-                };-            })(v1.value0)));-        };-        if (v instanceof SigUnit && v1 instanceof SUnit) {-            return true;-        };-        return false;-    };-};-var showSignature = function (sig) {-    var needsParen = function (s) {-        if (s instanceof SigProd) {-            return true;-        };-        if (s instanceof SigRecord) {-            return true;-        };-        if (s instanceof SigNumber) {-            return false;-        };-        if (s instanceof SigBoolean) {-            return false;-        };-        if (s instanceof SigInt) {-            return false;-        };-        if (s instanceof SigString) {-            return false;-        };-        if (s instanceof SigChar) {-            return false;-        };-        if (s instanceof SigArray) {-            return true;-        };-        if (s instanceof SigUnit) {-            return false;-        };-        throw new Error("Failed pattern match at Data.Generic line 403, column 18 - line 412, column 21: " + [ s.constructor.name ]);-    };-    var paren = function (s) {-        if (needsParen(s)) {-            return "(" + (showSignature(s) + ")");-        };-        if (Data_Boolean.otherwise) {-            return showSignature(s);-        };-        throw new Error("Failed pattern match at Data.Generic line 386, column 3 - line 412, column 21: " + [ s.constructor.name ]);-    };-    return Data_Foldable.fold(Data_Foldable.foldableArray)(Data_Monoid.monoidString)((function () {-        if (sig instanceof SigProd) {-            return [ "SigProd ", Data_Show.show(Data_Show.showString)(sig.value0), " ", showArray(showDataConstructor)(sig.value1) ];-        };-        if (sig instanceof SigRecord) {-            return [ "SigRecord ", showArray(showLabel)(sig.value0) ];-        };-        if (sig instanceof SigNumber) {-            return [ "SigNumber" ];-        };-        if (sig instanceof SigBoolean) {-            return [ "SigBoolean" ];-        };-        if (sig instanceof SigInt) {-            return [ "SigInt" ];-        };-        if (sig instanceof SigString) {-            return [ "SigString" ];-        };-        if (sig instanceof SigChar) {-            return [ "SigChar" ];-        };-        if (sig instanceof SigArray) {-            return [ "SigArray ", paren(force(sig.value0)) ];-        };-        if (sig instanceof SigUnit) {-            return [ "SigUnit" ];-        };-        throw new Error("Failed pattern match at Data.Generic line 386, column 10 - line 396, column 27: " + [ sig.constructor.name ]);-    })());-};-var showLabel = function (l) {-    return "{ recLabel: " + (Data_Show.show(Data_Show.showString)(l.recLabel) + (", recValue: " + (showSignature(force(l.recValue)) + " }")));-};-var showDataConstructor = function (dc) {-    return "{ sigConstructor: " + (Data_Show.show(Data_Show.showString)(dc.sigConstructor) + (", sigValues: " + (showArray(function ($314) {-        return showSignature(force($314));-    })(dc.sigValues) + " }")));-};-var showGenericSignature = new Data_Show.Show(showSignature);-var eqThunk = function (dictEq) {-    return function (x) {-        return function (y) {-            return Data_Eq.eq(dictEq)(force(x))(force(y));-        };-    };-};-var eqRecordSigs = function (dictEq) {-    return function (arr1) {-        return function (arr2) {-            var labelCompare = function (r1) {-                return function (r2) {-                    return Data_Ord.compare(Data_Ord.ordString)(r1.recLabel)(r2.recLabel);-                };-            };-            var sorted1 = Data_Array.sortBy(labelCompare)(arr1);-            var sorted2 = Data_Array.sortBy(labelCompare)(arr2);-            var doCmp = function (x) {-                return function (y) {-                    return x.recLabel === y.recLabel && Data_Eq.eq(dictEq)(force(x.recValue))(force(y.recValue));-                };-            };-            return Data_Array.length(arr1) === Data_Array.length(arr2) && $foreign.zipAll(doCmp)(sorted1)(sorted2);-        };-    };-};-var eqGenericSpine = new Data_Eq.Eq(function (v) {-    return function (v1) {-        if (v instanceof SProd && v1 instanceof SProd) {-            return v.value0 === v1.value0 && (Data_Array.length(v.value1) === Data_Array.length(v1.value1) && $foreign.zipAll(eqThunk(eqGenericSpine))(v.value1)(v1.value1));-        };-        if (v instanceof SRecord && v1 instanceof SRecord) {-            return eqRecordSigs(eqGenericSpine)(v.value0)(v1.value0);-        };-        if (v instanceof SNumber && v1 instanceof SNumber) {-            return v.value0 === v1.value0;-        };-        if (v instanceof SBoolean && v1 instanceof SBoolean) {-            return v.value0 === v1.value0;-        };-        if (v instanceof SInt && v1 instanceof SInt) {-            return v.value0 === v1.value0;-        };-        if (v instanceof SString && v1 instanceof SString) {-            return v.value0 === v1.value0;-        };-        if (v instanceof SChar && v1 instanceof SChar) {-            return v.value0 === v1.value0;-        };-        if (v instanceof SArray && v1 instanceof SArray) {-            return Data_Array.length(v.value0) === Data_Array.length(v1.value0) && $foreign.zipAll(eqThunk(eqGenericSpine))(v.value0)(v1.value0);-        };-        if (v instanceof SUnit && v1 instanceof SUnit) {-            return true;-        };-        return false;-    };-});-var gEq = function (dictGeneric) {-    return function (x) {-        return function (y) {-            return Data_Eq.eq(eqGenericSpine)(toSpine(dictGeneric)(x))(toSpine(dictGeneric)(y));-        };-    };-};-var eqGenericSignature = new Data_Eq.Eq(function (v) {-    return function (v1) {-        if (v instanceof SigProd && v1 instanceof SigProd) {-            return v.value0 === v1.value0 && (Data_Array.length(v.value1) === Data_Array.length(v1.value1) && $foreign.zipAll(eqDataConstructor)(v.value1)(v1.value1));-        };-        if (v instanceof SigRecord && v1 instanceof SigRecord) {-            return eqRecordSigs(eqGenericSignature)(v.value0)(v1.value0);-        };-        if (v instanceof SigNumber && v1 instanceof SigNumber) {-            return true;-        };-        if (v instanceof SigBoolean && v1 instanceof SigBoolean) {-            return true;-        };-        if (v instanceof SigInt && v1 instanceof SigInt) {-            return true;-        };-        if (v instanceof SigString && v1 instanceof SigString) {-            return true;-        };-        if (v instanceof SigChar && v1 instanceof SigChar) {-            return true;-        };-        if (v instanceof SigArray && v1 instanceof SigArray) {-            return eqThunk(eqGenericSignature)(v.value0)(v1.value0);-        };-        if (v instanceof SigUnit && v1 instanceof SigUnit) {-            return true;-        };-        return false;-    };-});-var eqDataConstructor = function (p1) {-    return function (p2) {-        return p1.sigConstructor === p2.sigConstructor && $foreign.zipAll(eqThunk(eqGenericSignature))(p1.sigValues)(p2.sigValues);-    };-};-var compareThunk = function (dictOrd) {-    return function (x) {-        return function (y) {-            return orderingToInt(Data_Ord.compare(dictOrd)(force(x))(force(y)));-        };-    };-};-var ordGenericSpine = new Data_Ord.Ord(function () {-    return eqGenericSpine;-}, function (v) {-    return function (v1) {-        if (v instanceof SProd && v1 instanceof SProd) {-            var v2 = Data_Ord.compare(Data_Ord.ordString)(v.value0)(v1.value0);-            if (v2 instanceof Data_Ordering.EQ) {-                return Data_Ord.compare(Data_Ord.ordInt)(0)($foreign.zipCompare(compareThunk(ordGenericSpine))(v.value1)(v1.value1));-            };-            return v2;-        };-        if (v instanceof SProd) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SProd) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SRecord && v1 instanceof SRecord) {-            var go = function (x) {-                return function (y) {-                    var v2 = Data_Ord.compare(Data_Ord.ordString)(x.recLabel)(y.recLabel);-                    if (v2 instanceof Data_Ordering.EQ) {-                        return orderingToInt(Data_Ord.compare(ordGenericSpine)(force(x.recValue))(force(y.recValue)));-                    };-                    return orderingToInt(v2);-                };-            };-            return Data_Ord.compare(Data_Ord.ordInt)(0)($foreign.zipCompare(go)(v.value0)(v1.value0));-        };-        if (v instanceof SRecord) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SRecord) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SInt && v1 instanceof SInt) {-            return Data_Ord.compare(Data_Ord.ordInt)(v.value0)(v1.value0);-        };-        if (v instanceof SInt) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SInt) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SBoolean && v1 instanceof SBoolean) {-            return Data_Ord.compare(Data_Ord.ordBoolean)(v.value0)(v1.value0);-        };-        if (v instanceof SBoolean) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SBoolean) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SNumber && v1 instanceof SNumber) {-            return Data_Ord.compare(Data_Ord.ordNumber)(v.value0)(v1.value0);-        };-        if (v instanceof SNumber) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SNumber) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SString && v1 instanceof SString) {-            return Data_Ord.compare(Data_Ord.ordString)(v.value0)(v1.value0);-        };-        if (v instanceof SString) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SString) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SChar && v1 instanceof SChar) {-            return Data_Ord.compare(Data_Ord.ordChar)(v.value0)(v1.value0);-        };-        if (v instanceof SChar) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SChar) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SArray && v1 instanceof SArray) {-            return Data_Ord.compare(Data_Ord.ordInt)(0)($foreign.zipCompare(compareThunk(ordGenericSpine))(v.value0)(v1.value0));-        };-        if (v instanceof SArray) {-            return Data_Ordering.LT.value;-        };-        if (v1 instanceof SArray) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof SUnit && v1 instanceof SUnit) {-            return Data_Ordering.EQ.value;-        };-        throw new Error("Failed pattern match at Data.Generic line 304, column 3 - line 307, column 15: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var gCompare = function (dictGeneric) {-    return function (x) {-        return function (y) {-            return Data_Ord.compare(ordGenericSpine)(toSpine(dictGeneric)(x))(toSpine(dictGeneric)(y));-        };-    };-};-module.exports = {-    SigProd: SigProd, -    SigRecord: SigRecord, -    SigNumber: SigNumber, -    SigBoolean: SigBoolean, -    SigInt: SigInt, -    SigString: SigString, -    SigChar: SigChar, -    SigArray: SigArray, -    SigUnit: SigUnit, -    SProd: SProd, -    SRecord: SRecord, -    SNumber: SNumber, -    SBoolean: SBoolean, -    SInt: SInt, -    SString: SString, -    SChar: SChar, -    SArray: SArray, -    SUnit: SUnit, -    Generic: Generic, -    fromSpine: fromSpine, -    gCompare: gCompare, -    gEq: gEq, -    gShow: gShow, -    isValidSpine: isValidSpine, -    showDataConstructor: showDataConstructor, -    showSignature: showSignature, -    toSignature: toSignature, -    toSpine: toSpine, -    genericNumber: genericNumber, -    genericInt: genericInt, -    genericString: genericString, -    genericChar: genericChar, -    genericBool: genericBool, -    genericArray: genericArray, -    genericUnit: genericUnit, -    genericVoid: genericVoid, -    genericTuple: genericTuple, -    genericList: genericList, -    genericNonEmptyList: genericNonEmptyList, -    genericMaybe: genericMaybe, -    genericEither: genericEither, -    genericIdentity: genericIdentity, -    genericOrdering: genericOrdering, -    genericNonEmpty: genericNonEmpty, -    showGenericSpine: showGenericSpine, -    eqGenericSpine: eqGenericSpine, -    ordGenericSpine: ordGenericSpine, -    eqGenericSignature: eqGenericSignature, -    showGenericSignature: showGenericSignature-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Semigroupoid":92,"../Data.Array":119,"../Data.Boolean":129,"../Data.Either":136,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Identity":161,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.NonEmpty":210,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Show":233,"../Data.String":241,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unit":249,"../Data.Void":250,"../Prelude":268,"../Type.Proxy":269,"./foreign":156}],158:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Generic = require("../Data.Generic");-var Data_Maybe = require("../Data.Maybe");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_String = require("../Data.String");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var OPTIONS = (function () {-    function OPTIONS() {--    };-    OPTIONS.value = new OPTIONS();-    return OPTIONS;-})();-var GET = (function () {-    function GET() {--    };-    GET.value = new GET();-    return GET;-})();-var HEAD = (function () {-    function HEAD() {--    };-    HEAD.value = new HEAD();-    return HEAD;-})();-var POST = (function () {-    function POST() {--    };-    POST.value = new POST();-    return POST;-})();-var PUT = (function () {-    function PUT() {--    };-    PUT.value = new PUT();-    return PUT;-})();-var DELETE = (function () {-    function DELETE() {--    };-    DELETE.value = new DELETE();-    return DELETE;-})();-var TRACE = (function () {-    function TRACE() {--    };-    TRACE.value = new TRACE();-    return TRACE;-})();-var CONNECT = (function () {-    function CONNECT() {--    };-    CONNECT.value = new CONNECT();-    return CONNECT;-})();-var PROPFIND = (function () {-    function PROPFIND() {--    };-    PROPFIND.value = new PROPFIND();-    return PROPFIND;-})();-var PROPPATCH = (function () {-    function PROPPATCH() {--    };-    PROPPATCH.value = new PROPPATCH();-    return PROPPATCH;-})();-var MKCOL = (function () {-    function MKCOL() {--    };-    MKCOL.value = new MKCOL();-    return MKCOL;-})();-var COPY = (function () {-    function COPY() {--    };-    COPY.value = new COPY();-    return COPY;-})();-var MOVE = (function () {-    function MOVE() {--    };-    MOVE.value = new MOVE();-    return MOVE;-})();-var LOCK = (function () {-    function LOCK() {--    };-    LOCK.value = new LOCK();-    return LOCK;-})();-var UNLOCK = (function () {-    function UNLOCK() {--    };-    UNLOCK.value = new UNLOCK();-    return UNLOCK;-})();-var PATCH = (function () {-    function PATCH() {--    };-    PATCH.value = new PATCH();-    return PATCH;-})();-var CustomMethod = function (x) {-    return x;-};-var unCustomMethod = function (v) {-    return v;-};-var showMethod = new Data_Show.Show(function (v) {-    if (v instanceof OPTIONS) {-        return "OPTIONS";-    };-    if (v instanceof GET) {-        return "GET";-    };-    if (v instanceof HEAD) {-        return "HEAD";-    };-    if (v instanceof POST) {-        return "POST";-    };-    if (v instanceof PUT) {-        return "PUT";-    };-    if (v instanceof DELETE) {-        return "DELETE";-    };-    if (v instanceof TRACE) {-        return "TRACE";-    };-    if (v instanceof CONNECT) {-        return "CONNECT";-    };-    if (v instanceof PROPFIND) {-        return "PROPFIND";-    };-    if (v instanceof PROPPATCH) {-        return "PROPPATCH";-    };-    if (v instanceof MKCOL) {-        return "MKCOL";-    };-    if (v instanceof COPY) {-        return "COPY";-    };-    if (v instanceof MOVE) {-        return "MOVE";-    };-    if (v instanceof LOCK) {-        return "LOCK";-    };-    if (v instanceof UNLOCK) {-        return "UNLOCK";-    };-    if (v instanceof PATCH) {-        return "PATCH";-    };-    throw new Error("Failed pattern match at Data.HTTP.Method line 43, column 3 - line 44, column 3: " + [ v.constructor.name ]);-});-var showCustomMethod = new Data_Show.Show(function (v) {-    return "(CustomMethod " + (Data_Show.show(Data_Show.showString)(v) + ")");-});-var print = Data_Either.either(Data_Show.show(showMethod))(unCustomMethod);-var genericMethod = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.OPTIONS" && v.value1.length === 0)) {-        return new Data_Maybe.Just(OPTIONS.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.GET" && v.value1.length === 0)) {-        return new Data_Maybe.Just(GET.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.HEAD" && v.value1.length === 0)) {-        return new Data_Maybe.Just(HEAD.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.POST" && v.value1.length === 0)) {-        return new Data_Maybe.Just(POST.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PUT" && v.value1.length === 0)) {-        return new Data_Maybe.Just(PUT.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.DELETE" && v.value1.length === 0)) {-        return new Data_Maybe.Just(DELETE.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.TRACE" && v.value1.length === 0)) {-        return new Data_Maybe.Just(TRACE.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.CONNECT" && v.value1.length === 0)) {-        return new Data_Maybe.Just(CONNECT.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PROPFIND" && v.value1.length === 0)) {-        return new Data_Maybe.Just(PROPFIND.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PROPPATCH" && v.value1.length === 0)) {-        return new Data_Maybe.Just(PROPPATCH.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.MKCOL" && v.value1.length === 0)) {-        return new Data_Maybe.Just(MKCOL.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.COPY" && v.value1.length === 0)) {-        return new Data_Maybe.Just(COPY.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.MOVE" && v.value1.length === 0)) {-        return new Data_Maybe.Just(MOVE.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.LOCK" && v.value1.length === 0)) {-        return new Data_Maybe.Just(LOCK.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.UNLOCK" && v.value1.length === 0)) {-        return new Data_Maybe.Just(UNLOCK.value);-    };-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PATCH" && v.value1.length === 0)) {-        return new Data_Maybe.Just(PATCH.value);-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.HTTP.Method.Method", [ {-        sigConstructor: "Data.HTTP.Method.OPTIONS", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.GET", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.HEAD", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.POST", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.PUT", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.DELETE", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.TRACE", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.CONNECT", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.PROPFIND", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.PROPPATCH", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.MKCOL", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.COPY", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.MOVE", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.LOCK", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.UNLOCK", -        sigValues: [  ]-    }, {-        sigConstructor: "Data.HTTP.Method.PATCH", -        sigValues: [  ]-    } ]);-}, function (v) {-    if (v instanceof OPTIONS) {-        return new Data_Generic.SProd("Data.HTTP.Method.OPTIONS", [  ]);-    };-    if (v instanceof GET) {-        return new Data_Generic.SProd("Data.HTTP.Method.GET", [  ]);-    };-    if (v instanceof HEAD) {-        return new Data_Generic.SProd("Data.HTTP.Method.HEAD", [  ]);-    };-    if (v instanceof POST) {-        return new Data_Generic.SProd("Data.HTTP.Method.POST", [  ]);-    };-    if (v instanceof PUT) {-        return new Data_Generic.SProd("Data.HTTP.Method.PUT", [  ]);-    };-    if (v instanceof DELETE) {-        return new Data_Generic.SProd("Data.HTTP.Method.DELETE", [  ]);-    };-    if (v instanceof TRACE) {-        return new Data_Generic.SProd("Data.HTTP.Method.TRACE", [  ]);-    };-    if (v instanceof CONNECT) {-        return new Data_Generic.SProd("Data.HTTP.Method.CONNECT", [  ]);-    };-    if (v instanceof PROPFIND) {-        return new Data_Generic.SProd("Data.HTTP.Method.PROPFIND", [  ]);-    };-    if (v instanceof PROPPATCH) {-        return new Data_Generic.SProd("Data.HTTP.Method.PROPPATCH", [  ]);-    };-    if (v instanceof MKCOL) {-        return new Data_Generic.SProd("Data.HTTP.Method.MKCOL", [  ]);-    };-    if (v instanceof COPY) {-        return new Data_Generic.SProd("Data.HTTP.Method.COPY", [  ]);-    };-    if (v instanceof MOVE) {-        return new Data_Generic.SProd("Data.HTTP.Method.MOVE", [  ]);-    };-    if (v instanceof LOCK) {-        return new Data_Generic.SProd("Data.HTTP.Method.LOCK", [  ]);-    };-    if (v instanceof UNLOCK) {-        return new Data_Generic.SProd("Data.HTTP.Method.UNLOCK", [  ]);-    };-    if (v instanceof PATCH) {-        return new Data_Generic.SProd("Data.HTTP.Method.PATCH", [  ]);-    };-    throw new Error("Failed pattern match at Data.HTTP.Method line 40, column 1 - line 40, column 48: " + [ v.constructor.name ]);-});-var genericCustomMethod = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.CustomMethod" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(CustomMethod))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.HTTP.Method.CustomMethod", [ {-        sigConstructor: "Data.HTTP.Method.CustomMethod", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.HTTP.Method.CustomMethod", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericString)(v);-    } ]);-});-var fromString = function (s) {-    var v = Data_String.toUpper(s);-    if (v === "OPTIONS") {-        return new Data_Either.Left(OPTIONS.value);-    };-    if (v === "GET") {-        return new Data_Either.Left(GET.value);-    };-    if (v === "HEAD") {-        return new Data_Either.Left(HEAD.value);-    };-    if (v === "POST") {-        return new Data_Either.Left(POST.value);-    };-    if (v === "PUT") {-        return new Data_Either.Left(PUT.value);-    };-    if (v === "DELETE") {-        return new Data_Either.Left(DELETE.value);-    };-    if (v === "TRACE") {-        return new Data_Either.Left(TRACE.value);-    };-    if (v === "CONNECT") {-        return new Data_Either.Left(CONNECT.value);-    };-    if (v === "PROPFIND") {-        return new Data_Either.Left(PROPFIND.value);-    };-    if (v === "PROPPATCH") {-        return new Data_Either.Left(PROPPATCH.value);-    };-    if (v === "MKCOL") {-        return new Data_Either.Left(MKCOL.value);-    };-    if (v === "COPY") {-        return new Data_Either.Left(COPY.value);-    };-    if (v === "MOVE") {-        return new Data_Either.Left(MOVE.value);-    };-    if (v === "LOCK") {-        return new Data_Either.Left(LOCK.value);-    };-    if (v === "UNLOCK") {-        return new Data_Either.Left(UNLOCK.value);-    };-    return new Data_Either.Right(v);-};-var eqMethod = new Data_Eq.Eq(function (x) {-    return function (y) {-        if (x instanceof OPTIONS && y instanceof OPTIONS) {-            return true;-        };-        if (x instanceof GET && y instanceof GET) {-            return true;-        };-        if (x instanceof HEAD && y instanceof HEAD) {-            return true;-        };-        if (x instanceof POST && y instanceof POST) {-            return true;-        };-        if (x instanceof PUT && y instanceof PUT) {-            return true;-        };-        if (x instanceof DELETE && y instanceof DELETE) {-            return true;-        };-        if (x instanceof TRACE && y instanceof TRACE) {-            return true;-        };-        if (x instanceof CONNECT && y instanceof CONNECT) {-            return true;-        };-        if (x instanceof PROPFIND && y instanceof PROPFIND) {-            return true;-        };-        if (x instanceof PROPPATCH && y instanceof PROPPATCH) {-            return true;-        };-        if (x instanceof MKCOL && y instanceof MKCOL) {-            return true;-        };-        if (x instanceof COPY && y instanceof COPY) {-            return true;-        };-        if (x instanceof MOVE && y instanceof MOVE) {-            return true;-        };-        if (x instanceof LOCK && y instanceof LOCK) {-            return true;-        };-        if (x instanceof UNLOCK && y instanceof UNLOCK) {-            return true;-        };-        if (x instanceof PATCH && y instanceof PATCH) {-            return true;-        };-        return false;-    };-});-var ordMethod = new Data_Ord.Ord(function () {-    return eqMethod;-}, function (x) {-    return function (y) {-        if (x instanceof OPTIONS && y instanceof OPTIONS) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof OPTIONS) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof OPTIONS) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof GET && y instanceof GET) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof GET) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof GET) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof HEAD && y instanceof HEAD) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof HEAD) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof HEAD) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof POST && y instanceof POST) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof POST) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof POST) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof PUT && y instanceof PUT) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof PUT) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof PUT) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof DELETE && y instanceof DELETE) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof DELETE) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof DELETE) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof TRACE && y instanceof TRACE) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof TRACE) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof TRACE) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof CONNECT && y instanceof CONNECT) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof CONNECT) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof CONNECT) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof PROPFIND && y instanceof PROPFIND) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof PROPFIND) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof PROPFIND) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof PROPPATCH && y instanceof PROPPATCH) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof PROPPATCH) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof PROPPATCH) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof MKCOL && y instanceof MKCOL) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof MKCOL) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof MKCOL) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof COPY && y instanceof COPY) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof COPY) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof COPY) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof MOVE && y instanceof MOVE) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof MOVE) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof MOVE) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof LOCK && y instanceof LOCK) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof LOCK) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof LOCK) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof UNLOCK && y instanceof UNLOCK) {-            return Data_Ordering.EQ.value;-        };-        if (x instanceof UNLOCK) {-            return Data_Ordering.LT.value;-        };-        if (y instanceof UNLOCK) {-            return Data_Ordering.GT.value;-        };-        if (x instanceof PATCH && y instanceof PATCH) {-            return Data_Ordering.EQ.value;-        };-        throw new Error("Failed pattern match at Data.HTTP.Method line 39, column 1 - line 39, column 40: " + [ x.constructor.name, y.constructor.name ]);-    };-});-var eqCustomMethod = new Data_Eq.Eq(function (x) {-    return function (y) {-        return x === y;-    };-});-var ordCustomMethod = new Data_Ord.Ord(function () {-    return eqCustomMethod;-}, function (x) {-    return function (y) {-        return Data_Ord.compare(Data_Ord.ordString)(x)(y);-    };-});-module.exports = {-    OPTIONS: OPTIONS, -    GET: GET, -    HEAD: HEAD, -    POST: POST, -    PUT: PUT, -    DELETE: DELETE, -    TRACE: TRACE, -    CONNECT: CONNECT, -    PROPFIND: PROPFIND, -    PROPPATCH: PROPPATCH, -    MKCOL: MKCOL, -    COPY: COPY, -    MOVE: MOVE, -    LOCK: LOCK, -    UNLOCK: UNLOCK, -    PATCH: PATCH, -    fromString: fromString, -    print: print, -    unCustomMethod: unCustomMethod, -    eqMethod: eqMethod, -    ordMethod: ordMethod, -    genericMethod: genericMethod, -    showMethod: showMethod, -    eqCustomMethod: eqCustomMethod, -    ordCustomMethod: ordCustomMethod, -    genericCustomMethod: genericCustomMethod, -    showCustomMethod: showCustomMethod-};--},{"../Control.Apply":42,"../Data.Either":136,"../Data.Eq":138,"../Data.Generic":157,"../Data.Maybe":198,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Show":233,"../Data.String":241,"../Data.Unit":249,"../Prelude":268}],159:[function(require,module,exports){-"use strict";--exports.boolConj = function (b1) {-  return function (b2) {-    return b1 && b2;-  };-};--exports.boolDisj = function (b1) {-  return function (b2) {-    return b1 || b2;-  };-};--exports.boolNot = function (b) {-  return !b;-};--},{}],160:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Unit = require("../Data.Unit");-var HeytingAlgebra = function (conj, disj, ff, implies, not, tt) {-    this.conj = conj;-    this.disj = disj;-    this.ff = ff;-    this.implies = implies;-    this.not = not;-    this.tt = tt;-};-var tt = function (dict) {-    return dict.tt;-};-var not = function (dict) {-    return dict.not;-};-var implies = function (dict) {-    return dict.implies;-};-var heytingAlgebraUnit = new HeytingAlgebra(function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-}, function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-}, Data_Unit.unit, function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-}, function (v) {-    return Data_Unit.unit;-}, Data_Unit.unit);-var ff = function (dict) {-    return dict.ff;-};-var disj = function (dict) {-    return dict.disj;-};-var heytingAlgebraBoolean = new HeytingAlgebra($foreign.boolConj, $foreign.boolDisj, false, function (a) {-    return function (b) {-        return disj(heytingAlgebraBoolean)(not(heytingAlgebraBoolean)(a))(b);-    };-}, $foreign.boolNot, true);-var conj = function (dict) {-    return dict.conj;-};-var heytingAlgebraFunction = function (dictHeytingAlgebra) {-    return new HeytingAlgebra(function (f) {-        return function (g) {-            return function (a) {-                return conj(dictHeytingAlgebra)(f(a))(g(a));-            };-        };-    }, function (f) {-        return function (g) {-            return function (a) {-                return disj(dictHeytingAlgebra)(f(a))(g(a));-            };-        };-    }, function (v) {-        return ff(dictHeytingAlgebra);-    }, function (f) {-        return function (g) {-            return function (a) {-                return implies(dictHeytingAlgebra)(f(a))(g(a));-            };-        };-    }, function (f) {-        return function (a) {-            return not(dictHeytingAlgebra)(f(a));-        };-    }, function (v) {-        return tt(dictHeytingAlgebra);-    });-};-module.exports = {-    HeytingAlgebra: HeytingAlgebra, -    conj: conj, -    disj: disj, -    ff: ff, -    implies: implies, -    not: not, -    tt: tt, -    heytingAlgebraBoolean: heytingAlgebraBoolean, -    heytingAlgebraUnit: heytingAlgebraUnit, -    heytingAlgebraFunction: heytingAlgebraFunction-};--},{"../Data.Unit":249,"./foreign":159}],161:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Lazy = require("../Control.Lazy");-var Control_Monad = require("../Control.Monad");-var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");-var Data_Bounded = require("../Data.Bounded");-var Data_CommutativeRing = require("../Data.CommutativeRing");-var Data_Eq = require("../Data.Eq");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Field = require("../Data.Field");-var Data_Foldable = require("../Data.Foldable");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var Identity = function (x) {-    return x;-};-var showIdentity = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Identity " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semiringIdentity = function (dictSemiring) {-    return dictSemiring;-};-var semigroupIdenity = function (dictSemigroup) {-    return dictSemigroup;-};-var ringIdentity = function (dictRing) {-    return dictRing;-};-var ordIdentity = function (dictOrd) {-    return dictOrd;-};-var newtypeIdentity = new Data_Newtype.Newtype(function (n) {-    return n;-}, Identity);-var monoidIdentity = function (dictMonoid) {-    return dictMonoid;-};-var lazyIdentity = function (dictLazy) {-    return dictLazy;-};-var heytingAlgebraIdentity = function (dictHeytingAlgebra) {-    return dictHeytingAlgebra;-};-var functorIdentity = new Data_Functor.Functor(function (f) {-    return function (v) {-        return f(v);-    };-});-var invariantIdentity = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorIdentity));-var foldableIdentity = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v)(z);-        };-    };-});-var traversableIdentity = new Data_Traversable.Traversable(function () {-    return foldableIdentity;-}, function () {-    return functorIdentity;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Identity)(v);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Identity)(f(v));-        };-    };-});-var fieldIdentity = function (dictField) {-    return dictField;-};-var extendIdentity = new Control_Extend.Extend(function () {-    return functorIdentity;-}, function (f) {-    return function (m) {-        return f(m);-    };-});-var euclideanRingIdentity = function (dictEuclideanRing) {-    return dictEuclideanRing;-};-var eqIdentity = function (dictEq) {-    return dictEq;-};-var comonadIdentity = new Control_Comonad.Comonad(function () {-    return extendIdentity;-}, function (v) {-    return v;-});-var commutativeRingIdentity = function (dictCommutativeRing) {-    return dictCommutativeRing;-};-var boundedIdentity = function (dictBounded) {-    return dictBounded;-};-var booleanAlgebraIdentity = function (dictBooleanAlgebra) {-    return dictBooleanAlgebra;-};-var applyIdentity = new Control_Apply.Apply(function () {-    return functorIdentity;-}, function (v) {-    return function (v1) {-        return v(v1);-    };-});-var bindIdentity = new Control_Bind.Bind(function () {-    return applyIdentity;-}, function (v) {-    return function (f) {-        return f(v);-    };-});-var applicativeIdentity = new Control_Applicative.Applicative(function () {-    return applyIdentity;-}, Identity);-var monadIdentity = new Control_Monad.Monad(function () {-    return applicativeIdentity;-}, function () {-    return bindIdentity;-});-var altIdentity = new Control_Alt.Alt(function () {-    return functorIdentity;-}, function (x) {-    return function (v) {-        return x;-    };-});-module.exports = {-    Identity: Identity, -    newtypeIdentity: newtypeIdentity, -    eqIdentity: eqIdentity, -    ordIdentity: ordIdentity, -    boundedIdentity: boundedIdentity, -    heytingAlgebraIdentity: heytingAlgebraIdentity, -    booleanAlgebraIdentity: booleanAlgebraIdentity, -    semigroupIdenity: semigroupIdenity, -    monoidIdentity: monoidIdentity, -    semiringIdentity: semiringIdentity, -    euclideanRingIdentity: euclideanRingIdentity, -    ringIdentity: ringIdentity, -    commutativeRingIdentity: commutativeRingIdentity, -    fieldIdentity: fieldIdentity, -    lazyIdentity: lazyIdentity, -    showIdentity: showIdentity, -    functorIdentity: functorIdentity, -    invariantIdentity: invariantIdentity, -    altIdentity: altIdentity, -    applyIdentity: applyIdentity, -    applicativeIdentity: applicativeIdentity, -    bindIdentity: bindIdentity, -    monadIdentity: monadIdentity, -    extendIdentity: extendIdentity, -    comonadIdentity: comonadIdentity, -    foldableIdentity: foldableIdentity, -    traversableIdentity: traversableIdentity-};--},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Lazy":50,"../Control.Monad":86,"../Data.BooleanAlgebra":130,"../Data.Bounded":132,"../Data.CommutativeRing":133,"../Data.Eq":138,"../Data.EuclideanRing":140,"../Data.Field":141,"../Data.Foldable":143,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.HeytingAlgebra":160,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Traversable":244,"../Prelude":268}],162:[function(require,module,exports){-"use strict";--// module Data.Int.Bits--exports.and = function (n1) {-  return function (n2) {-    /* jshint bitwise: false */-    return n1 & n2;-  };-};--exports.or = function (n1) {-  return function (n2) {-    /* jshint bitwise: false */-    return n1 | n2;-  };-};--exports.xor = function (n1) {-  return function (n2) {-    /* jshint bitwise: false */-    return n1 ^ n2;-  };-};--exports.shl = function (n1) {-  return function (n2) {-    /* jshint bitwise: false */-    return n1 << n2;-  };-};--exports.shr = function (n1) {-  return function (n2) {-    /* jshint bitwise: false */-    return n1 >> n2;-  };-};--exports.zshr = function (n1) {-  return function (n2) {-    /* jshint bitwise: false */-    return n1 >>> n2;-  };-};--exports.complement = function (n) {-  /* jshint bitwise: false */-  return ~n;-};--},{}],163:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-module.exports = {-    and: $foreign.and, -    complement: $foreign.complement, -    or: $foreign.or, -    shl: $foreign.shl, -    shr: $foreign.shr, -    xor: $foreign.xor, -    zshr: $foreign.zshr-};--},{"./foreign":162}],164:[function(require,module,exports){-"use strict";--// module Data.Int--exports.fromNumberImpl = function (just) {-  return function (nothing) {-    return function (n) {-      /* jshint bitwise: false */-      return (n | 0) === n ? just(n) : nothing;-    };-  };-};--exports.toNumber = function (n) {-  return n;-};--exports.fromStringAsImpl = function (just) {-  return function (nothing) {-    return function (radix) {-      var digits;-      if (radix < 11) {-        digits = "[0-" + (radix - 1).toString() + "]";-      } else if (radix === 11) {-        digits = "[0-9a]";-      } else {-        digits = "[0-9a-" + String.fromCharCode(86 + radix) + "]";-      }-      var pattern = new RegExp("^[\\+\\-]?" + digits + "+$", "i");--      return function (s) {-        /* jshint bitwise: false */-        if (pattern.test(s)) {-          var i = parseInt(s, radix);-          return (i | 0) === i ? just(i) : nothing;-        } else {-          return nothing;-        }-      };-    };-  };-};--exports.toStringAs = function (radix) {-  return function (i) {-    return i.toString(radix);-  };-};--exports.pow = function (x) {-  return function (y) {-    /* jshint bitwise: false */-    return Math.pow(x,y) | 0;-  };-};--},{}],165:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Boolean = require("../Data.Boolean");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Int_Bits = require("../Data.Int.Bits");-var Data_Maybe = require("../Data.Maybe");-var Data_Ord = require("../Data.Ord");-var Data_Ring = require("../Data.Ring");-var Global = require("../Global");-var $$Math = require("../Math");-var Prelude = require("../Prelude");-var Radix = function (x) {-    return x;-};-var radix = function (n) {-    if (n >= 2 && n <= 36) {-        return new Data_Maybe.Just(n);-    };-    if (Data_Boolean.otherwise) {-        return Data_Maybe.Nothing.value;-    };-    throw new Error("Failed pattern match at Data.Int line 124, column 1 - line 125, column 38: " + [ n.constructor.name ]);-};-var odd = function (x) {-    return (x & 1) !== 0;-};-var octal = 8;-var hexadecimal = 16;-var fromStringAs = $foreign.fromStringAsImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var fromString = fromStringAs(10);-var fromNumber = $foreign.fromNumberImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var unsafeClamp = function (x) {-    if (x === Global.infinity) {-        return 0;-    };-    if (x === -Global.infinity) {-        return 0;-    };-    if (x >= $foreign.toNumber(Data_Bounded.top(Data_Bounded.boundedInt))) {-        return Data_Bounded.top(Data_Bounded.boundedInt);-    };-    if (x <= $foreign.toNumber(Data_Bounded.bottom(Data_Bounded.boundedInt))) {-        return Data_Bounded.bottom(Data_Bounded.boundedInt);-    };-    if (Data_Boolean.otherwise) {-        return Data_Maybe.fromMaybe(0)(fromNumber(x));-    };-    throw new Error("Failed pattern match at Data.Int line 63, column 1 - line 68, column 43: " + [ x.constructor.name ]);-};-var round = function ($2) {-    return unsafeClamp($$Math.round($2));-};-var floor = function ($3) {-    return unsafeClamp($$Math.floor($3));-};-var even = function (x) {-    return (x & 1) === 0;-};-var decimal = 10;-var ceil = function ($4) {-    return unsafeClamp($$Math.ceil($4));-};-var binary = 2;-var base36 = 36;-module.exports = {-    base36: base36, -    binary: binary, -    ceil: ceil, -    decimal: decimal, -    even: even, -    floor: floor, -    fromNumber: fromNumber, -    fromString: fromString, -    fromStringAs: fromStringAs, -    hexadecimal: hexadecimal, -    octal: octal, -    odd: odd, -    radix: radix, -    round: round, -    pow: $foreign.pow, -    toNumber: $foreign.toNumber, -    toStringAs: $foreign.toStringAs-};--},{"../Control.Semigroupoid":92,"../Data.Boolean":129,"../Data.Bounded":132,"../Data.Eq":138,"../Data.HeytingAlgebra":160,"../Data.Int.Bits":163,"../Data.Maybe":198,"../Data.Ord":216,"../Data.Ring":227,"../Global":252,"../Math":256,"../Prelude":268,"./foreign":164}],166:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Lens_Lens_Tuple = require("../Data.Lens.Lens.Tuple");-var Data_Lens_Lens_Unit = require("../Data.Lens.Lens.Unit");-var Data_Lens_Prism_Either = require("../Data.Lens.Prism.Either");-var Data_Lens_Prism_Maybe = require("../Data.Lens.Prism.Maybe");-module.exports = {};--},{"../Data.Lens.Lens.Tuple":182,"../Data.Lens.Lens.Unit":183,"../Data.Lens.Prism.Either":185,"../Data.Lens.Prism.Maybe":186}],167:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Lens_Internal_Forget = require("../Data.Lens.Internal.Forget");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_List = require("../Data.List");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Maybe_First = require("../Data.Maybe.First");-var Data_Maybe_Last = require("../Data.Maybe.Last");-var Data_Monoid = require("../Data.Monoid");-var Data_Monoid_Additive = require("../Data.Monoid.Additive");-var Data_Monoid_Conj = require("../Data.Monoid.Conj");-var Data_Monoid_Disj = require("../Data.Monoid.Disj");-var Data_Monoid_Dual = require("../Data.Monoid.Dual");-var Data_Monoid_Endo = require("../Data.Monoid.Endo");-var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var unfolded = function (dictMonoid) {-    return function (f) {-        return function (p) {-            var go = function ($42) {-                return Data_Maybe.maybe(Data_Monoid.mempty(dictMonoid))(function (v) {-                    return Data_Semigroup.append(dictMonoid.Semigroup0())(Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(p)(v.value0))(go(v.value1));-                })(f($42));-            };-            return go;-        };-    };-};-var replicated = function (dictMonoid) {-    return function (i) {-        return function (v) {-            var go = function (v1) {-                return function (x) {-                    if (v1 === 0) {-                        return Data_Monoid.mempty(Data_Monoid.monoidFn(dictMonoid));-                    };-                    return Data_Semigroup.append(Data_Semigroup.semigroupFn(dictMonoid.Semigroup0()))(x)(go(v1 - 1 | 0)(x));-                };-            };-            return go(i)(v);-        };-    };-};-var ifoldMapOf = function (p) {-    return function (f) {-        return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(p(Data_Lens_Internal_Indexed.Indexed(Data_Tuple.uncurry(f))));-    };-};-var ifoldlOf = function (p) {-    return function (f) {-        return function (r) {-            return function ($43) {-                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(ifoldMapOf(p)(function (i) {-                    return function ($44) {-                        return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(f(i))($44)));-                    };-                })($43)));-            };-        };-    };-};-var ifoldrOf = function (p) {-    return function (f) {-        return function (r) {-            return function ($45) {-                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(ifoldMapOf(p)(function (i) {-                    return function ($46) {-                        return Data_Monoid_Endo.Endo(f(i)($46));-                    };-                })($45));-            };-        };-    };-};-var itoListOf = function (p) {-    return ifoldrOf(p)(function (i) {-        return function (x) {-            return function (xs) {-                return new Data_List_Types.Cons(new Data_Tuple.Tuple(i, x), xs);-            };-        };-    })(Data_List_Types.Nil.value);-};-var itraverseOf_ = function (dictApplicative) {-    return function (p) {-        return function (f) {-            return ifoldrOf(p)(function (i) {-                return function (a) {-                    return function (fu) {-                        return Control_Apply.applySecond(dictApplicative.Apply0())(Data_Functor["void"]((dictApplicative.Apply0()).Functor0())(f(i)(a)))(fu);-                    };-                };-            })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));-        };-    };-};-var ifindOf = function (p) {-    return function (f) {-        return ifoldrOf(p)(function (i) {-            return function (a) {-                return Data_Maybe.maybe((function () {-                    var $36 = f(i)(a);-                    if ($36) {-                        return new Data_Maybe.Just(a);-                    };-                    return Data_Maybe.Nothing.value;-                })())(Data_Maybe.Just.create);-            };-        })(Data_Maybe.Nothing.value);-    };-};-var ianyOf = function (dictHeytingAlgebra) {-    return function (p) {-        return function (f) {-            return function ($47) {-                return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(ifoldMapOf(p)(function (i) {-                    return function ($48) {-                        return Data_Monoid_Disj.Disj(f(i)($48));-                    };-                })($47));-            };-        };-    };-};-var iallOf = function (dictHeytingAlgebra) {-    return function (p) {-        return function (f) {-            return function ($49) {-                return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(ifoldMapOf(p)(function (i) {-                    return function ($50) {-                        return Data_Monoid_Conj.Conj(f(i)($50));-                    };-                })($49));-            };-        };-    };-};-var folded = function (dictMonoid) {-    return function (dictFoldable) {-        return function (v) {-            return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(v);-        };-    };-};-var foldMapOf = Data_Newtype.under(Data_Lens_Internal_Forget.newtypeForget)(Data_Lens_Internal_Forget.newtypeForget)(Data_Lens_Internal_Forget.Forget);-var foldOf = function (p) {-    return foldMapOf(p)(Control_Category.id(Control_Category.categoryFn));-};-var foldlOf = function (p) {-    return function (f) {-        return function (r) {-            return function ($51) {-                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(foldMapOf(p)(function ($52) {-                    return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(f)($52)));-                })($51)));-            };-        };-    };-};-var foldrOf = function (p) {-    return function (f) {-        return function (r) {-            return function ($53) {-                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(foldMapOf(p)(function ($54) {-                    return Data_Monoid_Endo.Endo(f($54));-                })($53));-            };-        };-    };-};-var maximumOf = function (dictOrd) {-    return function (p) {-        var max = function (a) {-            return function (b) {-                var $38 = Data_Ord.greaterThan(dictOrd)(a)(b);-                if ($38) {-                    return a;-                };-                return b;-            };-        };-        return foldrOf(p)(function (a) {-            return function ($55) {-                return Data_Maybe.Just.create(Data_Maybe.maybe(a)(max(a))($55));-            };-        })(Data_Maybe.Nothing.value);-    };-};-var minimumOf = function (dictOrd) {-    return function (p) {-        var min = function (a) {-            return function (b) {-                var $39 = Data_Ord.lessThan(dictOrd)(a)(b);-                if ($39) {-                    return a;-                };-                return b;-            };-        };-        return foldrOf(p)(function (a) {-            return function ($56) {-                return Data_Maybe.Just.create(Data_Maybe.maybe(a)(min(a))($56));-            };-        })(Data_Maybe.Nothing.value);-    };-};-var toListOf = function (p) {-    return foldrOf(p)(Data_List_Types.Cons.create)(Data_List_Types.Nil.value);-};-var toListOfOn = function (s) {-    return function (p) {-        return toListOf(p)(s);-    };-};-var traverseOf_ = function (dictApplicative) {-    return function (p) {-        return function (f) {-            return foldrOf(p)(function (a) {-                return function (fu) {-                    return Control_Apply.applySecond(dictApplicative.Apply0())(Data_Functor["void"]((dictApplicative.Apply0()).Functor0())(f(a)))(fu);-                };-            })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));-        };-    };-};-var has = function (dictHeytingAlgebra) {-    return function (p) {-        return function ($57) {-            return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(foldMapOf(p)(Data_Function["const"](Data_HeytingAlgebra.tt(dictHeytingAlgebra)))($57));-        };-    };-};-var hasn$primet = function (dictHeytingAlgebra) {-    return function (p) {-        return function ($58) {-            return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(foldMapOf(p)(Data_Function["const"](Data_HeytingAlgebra.ff(dictHeytingAlgebra)))($58));-        };-    };-};-var lastOf = function (p) {-    return function ($59) {-        return Data_Newtype.unwrap(Data_Maybe_Last.newtypeLast)(foldMapOf(p)(function ($60) {-            return Data_Maybe_Last.Last(Data_Maybe.Just.create($60));-        })($59));-    };-};-var lengthOf = function (p) {-    return function ($61) {-        return Data_Newtype.unwrap(Data_Monoid_Additive.newtypeAdditive)(foldMapOf(p)(Data_Function["const"](1))($61));-    };-};-var preview = function (p) {-    return function ($62) {-        return Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst)(foldMapOf(p)(function ($63) {-            return Data_Maybe_First.First(Data_Maybe.Just.create($63));-        })($62));-    };-};-var previewOn = function (s) {-    return function (p) {-        return preview(p)(s);-    };-};-var productOf = function (dictSemiring) {-    return function (p) {-        return function ($64) {-            return Data_Newtype.unwrap(Data_Monoid_Multiplicative.newtypeMultiplicative)(foldMapOf(p)(Data_Monoid_Multiplicative.Multiplicative)($64));-        };-    };-};-var sequenceOf_ = function (dictApplicative) {-    return function (p) {-        return function ($65) {-            return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(Control_Applicative.pure(dictApplicative)(Data_Unit.unit))(foldMapOf(p)(function (f) {-                return function (v) {-                    return Control_Apply.applySecond(dictApplicative.Apply0())(f)(v);-                };-            })($65));-        };-    };-};-var sumOf = function (dictSemiring) {-    return function (p) {-        return function ($66) {-            return Data_Newtype.unwrap(Data_Monoid_Additive.newtypeAdditive)(foldMapOf(p)(Data_Monoid_Additive.Additive)($66));-        };-    };-};-var firstOf = function (p) {-    return function ($67) {-        return Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst)(foldMapOf(p)(function ($68) {-            return Data_Maybe_First.First(Data_Maybe.Just.create($68));-        })($67));-    };-};-var findOf = function (p) {-    return function (f) {-        return foldrOf(p)(function (a) {-            return Data_Maybe.maybe((function () {-                var $40 = f(a);-                if ($40) {-                    return new Data_Maybe.Just(a);-                };-                return Data_Maybe.Nothing.value;-            })())(Data_Maybe.Just.create);-        })(Data_Maybe.Nothing.value);-    };-};-var filtered = function (dictChoice) {-    return function (f) {-        return function ($69) {-            return Data_Profunctor.dimap(dictChoice.Profunctor0())(function (x) {-                var $41 = f(x);-                if ($41) {-                    return new Data_Either.Right(x);-                };-                return new Data_Either.Left(x);-            })(Data_Either.either(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn)))(Data_Profunctor_Choice.right(dictChoice)($69));-        };-    };-};-var anyOf = function (dictHeytingAlgebra) {-    return function (p) {-        return function (f) {-            return function ($70) {-                return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(foldMapOf(p)(function ($71) {-                    return Data_Monoid_Disj.Disj(f($71));-                })($70));-            };-        };-    };-};-var elemOf = function (dictEq) {-    return function (p) {-        return function (a) {-            return anyOf(Data_HeytingAlgebra.heytingAlgebraBoolean)(p)(function (v) {-                return Data_Eq.eq(dictEq)(v)(a);-            });-        };-    };-};-var orOf = function (dictHeytingAlgebra) {-    return function (p) {-        return anyOf(dictHeytingAlgebra)(p)(Control_Category.id(Control_Category.categoryFn));-    };-};-var allOf = function (dictHeytingAlgebra) {-    return function (p) {-        return function (f) {-            return function ($72) {-                return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(foldMapOf(p)(function ($73) {-                    return Data_Monoid_Conj.Conj(f($73));-                })($72));-            };-        };-    };-};-var andOf = function (dictHeytingAlgebra) {-    return function (p) {-        return allOf(dictHeytingAlgebra)(p)(Control_Category.id(Control_Category.categoryFn));-    };-};-var notElemOf = function (dictEq) {-    return function (p) {-        return function (a) {-            return allOf(Data_HeytingAlgebra.heytingAlgebraBoolean)(p)(function (v) {-                return Data_Eq.notEq(dictEq)(v)(a);-            });-        };-    };-};-module.exports = {-    allOf: allOf, -    andOf: andOf, -    anyOf: anyOf, -    elemOf: elemOf, -    filtered: filtered, -    findOf: findOf, -    firstOf: firstOf, -    foldMapOf: foldMapOf, -    foldOf: foldOf, -    folded: folded, -    foldlOf: foldlOf, -    foldrOf: foldrOf, -    has: has, -    "hasn't": hasn$primet, -    iallOf: iallOf, -    ianyOf: ianyOf, -    ifoldMapOf: ifoldMapOf, -    ifoldlOf: ifoldlOf, -    ifoldrOf: ifoldrOf, -    itoListOf: itoListOf, -    itraverseOf_: itraverseOf_, -    lastOf: lastOf, -    lengthOf: lengthOf, -    maximumOf: maximumOf, -    minimumOf: minimumOf, -    notElemOf: notElemOf, -    orOf: orOf, -    preview: preview, -    previewOn: previewOn, -    productOf: productOf, -    replicated: replicated, -    sequenceOf_: sequenceOf_, -    sumOf: sumOf, -    toListOf: toListOf, -    toListOfOn: toListOfOn, -    traverseOf_: traverseOf_, -    unfolded: unfolded-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Lens.Internal.Forget":172,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Types":190,"../Data.List":194,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.Maybe.First":196,"../Data.Maybe.Last":197,"../Data.Monoid":207,"../Data.Monoid.Additive":201,"../Data.Monoid.Conj":202,"../Data.Monoid.Disj":203,"../Data.Monoid.Dual":204,"../Data.Monoid.Endo":205,"../Data.Monoid.Multiplicative":206,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268}],168:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Lens_Internal_Forget = require("../Data.Lens.Internal.Forget");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Newtype = require("../Data.Newtype");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var view = function (l) {-    return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(l(Control_Category.id(Control_Category.categoryFn)));-};-var viewOn = function (s) {-    return function (l) {-        return view(l)(s);-    };-};-var use = function (dictMonadState) {-    return function (p) {-        return Control_Monad_State_Class.gets(dictMonadState)(function (v) {-            return viewOn(v)(p);-        });-    };-};-var to = function (f) {-    return function (p) {-        return function ($3) {-            return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(p)(f($3));-        };-    };-};-var iview = function (l) {-    return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(l(Data_Lens_Internal_Indexed.Indexed(Control_Category.id(Control_Category.categoryFn))));-};-var iuse = function (dictMonadState) {-    return function (p) {-        return Control_Monad_State_Class.gets(dictMonadState)(iview(p));-    };-};-module.exports = {-    iuse: iuse, -    iview: iview, -    to: to, -    use: use, -    view: view, -    viewOn: viewOn-};--},{"../Control.Category":47,"../Control.Monad.State.Class":80,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Lens.Internal.Forget":172,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Types":190,"../Data.Newtype":209,"../Data.Tuple":245,"../Prelude":268}],169:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Data_Distributive = require("../Data.Distributive");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Lens_Internal_Grating = require("../Data.Lens.Internal.Grating");-var Data_Lens_Internal_Zipping = require("../Data.Lens.Internal.Zipping");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");-var Data_Profunctor_Costar = require("../Data.Profunctor.Costar");-var Data_Profunctor_Star = require("../Data.Profunctor.Star");-var Prelude = require("../Prelude");-var zipWithOf = function (g) {-    return function (f) {-        return Data_Newtype.unwrap(Data_Lens_Internal_Zipping.newtypeZipping)(g(f));-    };-};-var zipFWithOf = function (g) {-    return function (f) {-        return Data_Newtype.unwrap(Data_Profunctor_Costar.newtypeCostar)(g(f));-    };-};-var withGrate = function (g) {-    return Data_Newtype.unwrap(Data_Lens_Internal_Grating.newtypeGrating)(g(function (f) {-        return f(Control_Category.id(Control_Category.categoryFn));-    }));-};-var grate = function (f) {-    return function (dictClosed) {-        return function (pab) {-            return Data_Profunctor.dimap(dictClosed.Profunctor0())(Data_Function.applyFlipped)(f)(Data_Profunctor_Closed.closed(dictClosed)(pab));-        };-    };-};-var cotraversed = function (dictDistributive) {-    return function (dictClosed) {-        return grate(function (f) {-            return Data_Distributive.cotraverse(dictDistributive)(Data_Functor.functorFn)(f)(Control_Category.id(Control_Category.categoryFn));-        })(dictClosed);-    };-};-var collectOf = function (g) {-    return function (f) {-        return Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar)(g(f));-    };-};-var cloneGrate = function (g) {-    return function (dictClosed) {-        return grate(withGrate(g))(dictClosed);-    };-};-module.exports = {-    cloneGrate: cloneGrate, -    collectOf: collectOf, -    cotraversed: cotraversed, -    grate: grate, -    withGrate: withGrate, -    zipFWithOf: zipFWithOf, -    zipWithOf: zipWithOf-};--},{"../Control.Category":47,"../Data.Distributive":135,"../Data.Function":149,"../Data.Functor":155,"../Data.Lens.Internal.Grating":173,"../Data.Lens.Internal.Zipping":180,"../Data.Lens.Types":190,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Closed":219,"../Data.Profunctor.Costar":221,"../Data.Profunctor.Star":223,"../Prelude":268}],170:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Monad_State = require("../Control.Monad.State");-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Monad_State_Trans = require("../Control.Monad.State.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Compose = require("../Data.Functor.Compose");-var Data_Identity = require("../Data.Identity");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Star = require("../Data.Profunctor.Star");-var Data_Semiring = require("../Data.Semiring");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var unIndex = function (dictProfunctor) {-    return function (l) {-        return function ($7) {-            return l(Data_Lens_Internal_Indexed.Indexed(Data_Profunctor.dimap(dictProfunctor)(Data_Tuple.snd)(Control_Category.id(Control_Category.categoryFn))($7)));-        };-    };-};-var iwander = function (itr) {-    return function (dictWander) {-        return function ($8) {-            return Data_Lens_Internal_Wander.wander(dictWander)(function (dictApplicative) {-                return function (f) {-                    return function (s) {-                        return itr(dictApplicative)(Data_Tuple.curry(f))(s);-                    };-                };-            })(Data_Newtype.unwrap(Data_Lens_Internal_Indexed.newtypeIndexed)($8));-        };-    };-};-var positions = function (tr) {-    return function (dictWander) {-        return iwander(function (dictApplicative) {-            return function (f) {-                return function (s) {-                    return Data_Function.flip(Control_Monad_State.evalState)(0)(Data_Newtype.unwrap(Data_Functor_Compose.newtypeCompose)(Data_Function.flip(Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar))(s)(tr(Data_Lens_Internal_Wander.wanderStar(Data_Functor_Compose.applicativeCompose(Control_Monad_State_Trans.applicativeStateT(Data_Identity.monadIdentity))(dictApplicative)))(function (a) {-                        return Data_Functor_Compose.Compose(Control_Apply.applyFirst(Control_Monad_State_Trans.applyStateT(Data_Identity.monadIdentity))(Control_Apply.apply(Control_Monad_State_Trans.applyStateT(Data_Identity.monadIdentity))(Data_Functor.map(Control_Monad_State_Trans.functorStateT(Data_Identity.functorIdentity))(f)(Control_Monad_State_Class.get(Control_Monad_State_Trans.monadStateStateT(Data_Identity.monadIdentity))))(Control_Applicative.pure(Control_Monad_State_Trans.applicativeStateT(Data_Identity.monadIdentity))(a)))(Control_Monad_State_Class.modify(Control_Monad_State_Trans.monadStateStateT(Data_Identity.monadIdentity))(function (v) {-                            return v + 1 | 0;-                        })));-                    }))));-                };-            };-        })(dictWander);-    };-};-var asIndex = function (dictProfunctor) {-    return function (l) {-        return function ($9) {-            return l(Data_Lens_Internal_Indexed.Indexed(Data_Profunctor.dimap(dictProfunctor)(Data_Tuple.fst)(Control_Category.id(Control_Category.categoryFn))($9)));-        };-    };-};-module.exports = {-    asIndex: asIndex, -    iwander: iwander, -    positions: positions, -    unIndex: unIndex-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Monad.State":82,"../Control.Monad.State.Class":80,"../Control.Monad.State.Trans":81,"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Compose":151,"../Data.Identity":161,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Internal.Wander":179,"../Data.Lens.Types":190,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Star":223,"../Data.Semiring":231,"../Data.Tuple":245,"../Prelude":268}],171:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Functor = require("../Data.Functor");-var Data_Profunctor = require("../Data.Profunctor");-var Prelude = require("../Prelude");-var Exchange = (function () {-    function Exchange(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Exchange.create = function (value0) {-        return function (value1) {-            return new Exchange(value0, value1);-        };-    };-    return Exchange;-})();-var profunctorExchange = new Data_Profunctor.Profunctor(function (f) {-    return function (g) {-        return function (v) {-            return new Exchange(function ($11) {-                return v.value0(f($11));-            }, function ($12) {-                return g(v.value1($12));-            });-        };-    };-});-var functorExchange = new Data_Functor.Functor(function (f) {-    return function (v) {-        return new Exchange(v.value0, function ($13) {-            return f(v.value1($13));-        });-    };-});-module.exports = {-    Exchange: Exchange, -    functorExchange: functorExchange, -    profunctorExchange: profunctorExchange-};--},{"../Control.Semigroupoid":92,"../Data.Functor":155,"../Data.Profunctor":225,"../Prelude":268}],172:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Const = require("../Data.Const");-var Data_Either = require("../Data.Either");-var Data_Functor = require("../Data.Functor");-var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Cochoice = require("../Data.Profunctor.Cochoice");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Forget = function (x) {-    return x;-};-var profunctorForget = new Data_Profunctor.Profunctor(function (f) {-    return function (v) {-        return function (v1) {-            return function ($25) {-                return v1(f($25));-            };-        };-    };-});-var strongForget = new Data_Profunctor_Strong.Strong(function () {-    return profunctorForget;-}, function (v) {-    return function ($26) {-        return v(Data_Tuple.fst($26));-    };-}, function (v) {-    return function ($27) {-        return v(Data_Tuple.snd($27));-    };-});-var newtypeForget = new Data_Newtype.Newtype(function (n) {-    return n;-}, Forget);-var cochoiceForget = new Data_Profunctor_Cochoice.Cochoice(function () {-    return profunctorForget;-}, function (v) {-    return function ($28) {-        return v(Data_Either.Left.create($28));-    };-}, function (v) {-    return function ($29) {-        return v(Data_Either.Right.create($29));-    };-});-var choiceForget = function (dictMonoid) {-    return new Data_Profunctor_Choice.Choice(function () {-        return profunctorForget;-    }, function (v) {-        return Data_Either.either(v)(Data_Monoid.mempty(Data_Monoid.monoidFn(dictMonoid)));-    }, function (v) {-        return Data_Either.either(Data_Monoid.mempty(Data_Monoid.monoidFn(dictMonoid)))(v);-    });-};-var wanderForget = function (dictMonoid) {-    return new Data_Lens_Internal_Wander.Wander(function () {-        return choiceForget(dictMonoid);-    }, function () {-        return strongForget;-    }, function (f) {-        return function (v) {-            return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Const.newtypeConst)(Data_Const.newtypeConst)(Data_Const.Const)(f(Data_Const.applicativeConst(dictMonoid)))(v);-        };-    });-};-module.exports = {-    Forget: Forget, -    newtypeForget: newtypeForget, -    profunctorForget: profunctorForget, -    choiceForget: choiceForget, -    strongForget: strongForget, -    cochoiceForget: cochoiceForget, -    wanderForget: wanderForget-};--},{"../Control.Semigroupoid":92,"../Data.Const":134,"../Data.Either":136,"../Data.Functor":155,"../Data.Lens.Internal.Wander":179,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Cochoice":220,"../Data.Profunctor.Strong":224,"../Data.Tuple":245,"../Prelude":268}],173:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");-var Prelude = require("../Prelude");-var Grating = function (x) {-    return x;-};-var profunctorGrating = new Data_Profunctor.Profunctor(function (f) {-    return function (g) {-        return function (v) {-            return function (d) {-                return g(v(function (k) {-                    return d(function ($9) {-                        return k(f($9));-                    });-                }));-            };-        };-    };-});-var newtypeGrating = new Data_Newtype.Newtype(function (n) {-    return n;-}, Grating);-var closedGrating = new Data_Profunctor_Closed.Closed(function () {-    return profunctorGrating;-}, function (v) {-    return function (f) {-        return function (x) {-            return v(function (k) {-                return f(function (g) {-                    return k(g(x));-                });-            });-        };-    };-});-module.exports = {-    Grating: Grating, -    newtypeGrating: newtypeGrating, -    profunctorGrating: profunctorGrating, -    closedGrating: closedGrating-};--},{"../Control.Semigroupoid":92,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Closed":219,"../Prelude":268}],174:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Indexed = function (x) {-    return x;-};-var profunctorIndexed = function (dictProfunctor) {-    return new Data_Profunctor.Profunctor(function (f) {-        return function (g) {-            return function (v) {-                return Data_Profunctor.dimap(dictProfunctor)(Data_Profunctor_Strong.second(Data_Profunctor_Strong.strongFn)(f))(g)(v);-            };-        };-    });-};-var strongIndexed = function (dictStrong) {-    return new Data_Profunctor_Strong.Strong(function () {-        return profunctorIndexed(dictStrong.Profunctor0());-    }, function (v) {-        return Indexed(Data_Profunctor.lmap(dictStrong.Profunctor0())(function (v1) {-            return new Data_Tuple.Tuple(new Data_Tuple.Tuple(v1.value0, v1.value1.value0), v1.value1.value1);-        })(Data_Profunctor_Strong.first(dictStrong)(v)));-    }, function (v) {-        return Indexed(Data_Profunctor.lmap(dictStrong.Profunctor0())(function (v1) {-            return new Data_Tuple.Tuple(v1.value1.value0, new Data_Tuple.Tuple(v1.value0, v1.value1.value1));-        })(Data_Profunctor_Strong.second(dictStrong)(v)));-    });-};-var newtypeIndexed = new Data_Newtype.Newtype(function (n) {-    return n;-}, Indexed);-var choiceIndexed = function (dictChoice) {-    return new Data_Profunctor_Choice.Choice(function () {-        return profunctorIndexed(dictChoice.Profunctor0());-    }, function (v) {-        return Indexed(Data_Profunctor.lmap(dictChoice.Profunctor0())(function (v1) {-            return Data_Either.either(function ($47) {-                return Data_Either.Left.create(Data_Tuple.Tuple.create(v1.value0)($47));-            })(Data_Either.Right.create)(v1.value1);-        })(Data_Profunctor_Choice.left(dictChoice)(v)));-    }, function (v) {-        return Indexed(Data_Profunctor.lmap(dictChoice.Profunctor0())(function (v1) {-            return Data_Either.either(Data_Either.Left.create)(function ($48) {-                return Data_Either.Right.create(Data_Tuple.Tuple.create(v1.value0)($48));-            })(v1.value1);-        })(Data_Profunctor_Choice.right(dictChoice)(v)));-    });-};-var wanderIndexed = function (dictWander) {-    return new Data_Lens_Internal_Wander.Wander(function () {-        return choiceIndexed(dictWander.Choice1());-    }, function () {-        return strongIndexed(dictWander.Strong0());-    }, function (trav) {-        return function (v) {-            return Indexed(Data_Lens_Internal_Wander.wander(dictWander)(function (dictApplicative) {-                return function (ia2fb) {-                    return function (v1) {-                        return trav(dictApplicative)(function ($49) {-                            return ia2fb(Data_Tuple.Tuple.create(v1.value0)($49));-                        })(v1.value1);-                    };-                };-            })(v));-        };-    });-};-module.exports = {-    Indexed: Indexed, -    newtypeIndexed: newtypeIndexed, -    profunctorIndexed: profunctorIndexed, -    strongIndexed: strongIndexed, -    choiceIndexed: choiceIndexed, -    wanderIndexed: wanderIndexed-};--},{"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Function":149,"../Data.Lens.Internal.Wander":179,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Strong":224,"../Data.Tuple":245,"../Prelude":268}],175:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Either = require("../Data.Either");-var Data_Functor = require("../Data.Functor");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Prelude = require("../Prelude");-var Market = (function () {-    function Market(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Market.create = function (value0) {-        return function (value1) {-            return new Market(value0, value1);-        };-    };-    return Market;-})();-var profunctorMarket = new Data_Profunctor.Profunctor(function (f) {-    return function (g) {-        return function (v) {-            return new Market(function ($19) {-                return g(v.value0($19));-            }, function ($20) {-                return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(g)(v.value1(f($20)));-            });-        };-    };-});-var functorMarket = new Data_Functor.Functor(function (f) {-    return function (v) {-        return new Market(function ($21) {-            return f(v.value0($21));-        }, function ($22) {-            return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(f)(v.value1($22));-        });-    };-});-var choiceMarket = new Data_Profunctor_Choice.Choice(function () {-    return profunctorMarket;-}, function (v) {-    return new Market(function ($23) {-        return Data_Either.Left.create(v.value0($23));-    }, Data_Either.either(function ($24) {-        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(Data_Either.Left.create)(v.value1($24));-    })(function ($25) {-        return Data_Either.Left.create(Data_Either.Right.create($25));-    }));-}, function (v) {-    return new Market(function ($26) {-        return Data_Either.Right.create(v.value0($26));-    }, Data_Either.either(function ($27) {-        return Data_Either.Left.create(Data_Either.Left.create($27));-    })(function ($28) {-        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(Data_Either.Right.create)(v.value1($28));-    }));-});-module.exports = {-    Market: Market, -    functorMarket: functorMarket, -    profunctorMarket: profunctorMarket, -    choiceMarket: choiceMarket-};--},{"../Control.Semigroupoid":92,"../Data.Bifunctor":127,"../Data.Either":136,"../Data.Functor":155,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Prelude":268}],176:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Cochoice = require("../Data.Profunctor.Cochoice");-var Data_Profunctor_Costrong = require("../Data.Profunctor.Costrong");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Prelude = require("../Prelude");-var Re = function (x) {-    return x;-};-var profunctorRe = function (dictProfunctor) {-    return new Data_Profunctor.Profunctor(function (f) {-        return function (g) {-            return function (v) {-                return function ($28) {-                    return v(Data_Profunctor.dimap(dictProfunctor)(g)(f)($28));-                };-            };-        };-    });-};-var strongRe = function (dictStrong) {-    return new Data_Profunctor_Costrong.Costrong(function () {-        return profunctorRe(dictStrong.Profunctor0());-    }, function (v) {-        return function ($29) {-            return v(Data_Profunctor_Strong.first(dictStrong)($29));-        };-    }, function (v) {-        return function ($30) {-            return v(Data_Profunctor_Strong.second(dictStrong)($30));-        };-    });-};-var newtypeRe = new Data_Newtype.Newtype(function (n) {-    return n;-}, Re);-var costrongRe = function (dictCostrong) {-    return new Data_Profunctor_Strong.Strong(function () {-        return profunctorRe(dictCostrong.Profunctor0());-    }, function (v) {-        return function ($31) {-            return v(Data_Profunctor_Costrong.unfirst(dictCostrong)($31));-        };-    }, function (v) {-        return function ($32) {-            return v(Data_Profunctor_Costrong.unsecond(dictCostrong)($32));-        };-    });-};-var cochoiceRe = function (dictCochoice) {-    return new Data_Profunctor_Choice.Choice(function () {-        return profunctorRe(dictCochoice.Profunctor0());-    }, function (v) {-        return function ($33) {-            return v(Data_Profunctor_Cochoice.unleft(dictCochoice)($33));-        };-    }, function (v) {-        return function ($34) {-            return v(Data_Profunctor_Cochoice.unright(dictCochoice)($34));-        };-    });-};-var choiceRe = function (dictChoice) {-    return new Data_Profunctor_Cochoice.Cochoice(function () {-        return profunctorRe(dictChoice.Profunctor0());-    }, function (v) {-        return function ($35) {-            return v(Data_Profunctor_Choice.left(dictChoice)($35));-        };-    }, function (v) {-        return function ($36) {-            return v(Data_Profunctor_Choice.right(dictChoice)($36));-        };-    });-};-module.exports = {-    Re: Re, -    newtypeRe: newtypeRe, -    profunctorRe: profunctorRe, -    choiceRe: choiceRe, -    cochoiceRe: cochoiceRe, -    strongRe: strongRe, -    costrongRe: costrongRe-};--},{"../Control.Semigroupoid":92,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Cochoice":220,"../Data.Profunctor.Costrong":222,"../Data.Profunctor.Strong":224,"../Prelude":268}],177:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Shop = (function () {-    function Shop(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Shop.create = function (value0) {-        return function (value1) {-            return new Shop(value0, value1);-        };-    };-    return Shop;-})();-var profunctorShop = new Data_Profunctor.Profunctor(function (f) {-    return function (g) {-        return function (v) {-            return new Shop(function ($30) {-                return v.value0(f($30));-            }, function (s) {-                return function ($31) {-                    return g(v.value1(f(s))($31));-                };-            });-        };-    };-});-var strongShop = new Data_Profunctor_Strong.Strong(function () {-    return profunctorShop;-}, function (v) {-    return new Shop(function (v1) {-        return v.value0(v1.value0);-    }, function (v1) {-        return function (b) {-            return new Data_Tuple.Tuple(v.value1(v1.value0)(b), v1.value1);-        };-    });-}, function (v) {-    return new Shop(function (v1) {-        return v.value0(v1.value1);-    }, function (v1) {-        return function (b) {-            return new Data_Tuple.Tuple(v1.value0, v.value1(v1.value1)(b));-        };-    });-});-module.exports = {-    Shop: Shop, -    profunctorShop: profunctorShop, -    strongShop: strongShop-};--},{"../Control.Semigroupoid":92,"../Data.Profunctor":225,"../Data.Profunctor.Strong":224,"../Data.Tuple":245,"../Prelude":268}],178:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Either = require("../Data.Either");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Costrong = require("../Data.Profunctor.Costrong");-var Data_Tuple = require("../Data.Tuple");-var Tagged = function (x) {-    return x;-};-var taggedProfunctor = new Data_Profunctor.Profunctor(function (v) {-    return function (g) {-        return function (v1) {-            return g(v1);-        };-    };-});-var taggedCostrong = new Data_Profunctor_Costrong.Costrong(function () {-    return taggedProfunctor;-}, function (v) {-    return v.value0;-}, function (v) {-    return v.value1;-});-var taggedChoice = new Data_Profunctor_Choice.Choice(function () {-    return taggedProfunctor;-}, function (v) {-    return new Data_Either.Left(v);-}, function (v) {-    return new Data_Either.Right(v);-});-var newtypeTagged = new Data_Newtype.Newtype(function (n) {-    return n;-}, Tagged);-module.exports = {-    Tagged: Tagged, -    newtypeTagged: newtypeTagged, -    taggedProfunctor: taggedProfunctor, -    taggedChoice: taggedChoice, -    taggedCostrong: taggedCostrong-};--},{"../Data.Either":136,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Costrong":222,"../Data.Tuple":245}],179:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Functor = require("../Data.Functor");-var Data_Identity = require("../Data.Identity");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Star = require("../Data.Profunctor.Star");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Prelude = require("../Prelude");-var Wander = function (Choice1, Strong0, wander) {-    this.Choice1 = Choice1;-    this.Strong0 = Strong0;-    this.wander = wander;-};-var wanderStar = function (dictApplicative) {-    return new Wander(function () {-        return Data_Profunctor_Star.choiceStar(dictApplicative);-    }, function () {-        return Data_Profunctor_Star.strongStar((dictApplicative.Apply0()).Functor0());-    }, function (t) {-        return function (v) {-            return t(dictApplicative)(v);-        };-    });-};-var wanderFunction = new Wander(function () {-    return Data_Profunctor_Choice.choiceFn;-}, function () {-    return Data_Profunctor_Strong.strongFn;-}, function (t) {-    return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Identity.newtypeIdentity)(Data_Identity.newtypeIdentity)(Data_Identity.Identity)(t(Data_Identity.applicativeIdentity));-});-var wander = function (dict) {-    return dict.wander;-};-module.exports = {-    Wander: Wander, -    wander: wander, -    wanderFunction: wanderFunction, -    wanderStar: wanderStar-};--},{"../Data.Functor":155,"../Data.Identity":161,"../Data.Newtype":209,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Star":223,"../Data.Profunctor.Strong":224,"../Prelude":268}],180:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");-var Zipping = function (x) {-    return x;-};-var profunctorZipping = new Data_Profunctor.Profunctor(function (f) {-    return function (g) {-        return function (v) {-            return function (a1) {-                return function (a2) {-                    return g(v(f(a1))(f(a2)));-                };-            };-        };-    };-});-var newtypeZipping = new Data_Newtype.Newtype(function (n) {-    return n;-}, Zipping);-var closedZipping = new Data_Profunctor_Closed.Closed(function () {-    return profunctorZipping;-}, function (v) {-    return function (f1) {-        return function (f2) {-            return function (x) {-                return v(f1(x))(f2(x));-            };-        };-    };-});-module.exports = {-    Zipping: Zipping, -    newtypeZipping: newtypeZipping, -    profunctorZipping: profunctorZipping, -    closedZipping: closedZipping-};--},{"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Closed":219}],181:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Boolean = require("../Data.Boolean");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Lens_Internal_Exchange = require("../Data.Lens.Internal.Exchange");-var Data_Lens_Internal_Re = require("../Data.Lens.Internal.Re");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var withIso = function (l) {-    return function (f) {-        var v = l(new Data_Lens_Internal_Exchange.Exchange(Control_Category.id(Control_Category.categoryFn), Control_Category.id(Control_Category.categoryFn)));-        return f(v.value0)(v.value1);-    };-};-var under = function (l) {-    return withIso(l)(function (sa) {-        return function (bt) {-            return function (ts) {-                return function ($19) {-                    return sa(ts(bt($19)));-                };-            };-        };-    });-};-var re = function (t) {-    return Data_Newtype.unwrap(Data_Lens_Internal_Re.newtypeRe)(t(Control_Category.id(Control_Category.categoryFn)));-};-var iso = function (f) {-    return function (g) {-        return function (dictProfunctor) {-            return function (pab) {-                return Data_Profunctor.dimap(dictProfunctor)(f)(g)(pab);-            };-        };-    };-};-var mapping = function (dictFunctor) {-    return function (dictFunctor1) {-        return function (l) {-            return function (dictProfunctor) {-                return withIso(l)(function (sa) {-                    return function (bt) {-                        return iso(Data_Functor.map(dictFunctor)(sa))(Data_Functor.map(dictFunctor1)(bt))(dictProfunctor);-                    };-                });-            };-        };-    };-};-var non = function (dictEq) {-    return function (def) {-        return function (dictProfunctor) {-            var g = function (a) {-                if (Data_Eq.eq(dictEq)(a)(def)) {-                    return Data_Maybe.Nothing.value;-                };-                if (Data_Boolean.otherwise) {-                    return new Data_Maybe.Just(a);-                };-                throw new Error("Failed pattern match at Data.Lens.Iso line 44, column 9 - line 45, column 33: " + [ a.constructor.name ]);-            };-            return iso(Data_Maybe.fromMaybe(def))(g)(dictProfunctor);-        };-    };-};-var uncurried = function (dictProfunctor) {-    return iso(Data_Tuple.uncurry)(Data_Tuple.curry)(dictProfunctor);-};-var flipped = function (dictProfunctor) {-    return iso(Data_Function.flip)(Data_Function.flip)(dictProfunctor);-};-var dimapping = function (dictProfunctor) {-    return function (dictProfunctor1) {-        return function (f) {-            return function (g) {-                return function (dictProfunctor2) {-                    return withIso(f)(function (sa) {-                        return function (bt) {-                            return withIso(g)(function (ssaa) {-                                return function (bbtt) {-                                    return iso(Data_Profunctor.dimap(dictProfunctor)(sa)(ssaa))(Data_Profunctor.dimap(dictProfunctor1)(bt)(bbtt))(dictProfunctor2);-                                };-                            });-                        };-                    });-                };-            };-        };-    };-};-var curried = function (dictProfunctor) {-    return iso(Data_Tuple.curry)(Data_Tuple.uncurry)(dictProfunctor);-};-var cloneIso = function (l) {-    return function (dictProfunctor) {-        return withIso(l)(function (x) {-            return function (y) {-                return function (p) {-                    return iso(x)(y)(dictProfunctor)(p);-                };-            };-        });-    };-};-var auf = function (dictProfunctor) {-    return function (l) {-        return withIso(l)(function (sa) {-            return function (bt) {-                return function (f) {-                    return function (g) {-                        return function (e) {-                            return bt(f(Data_Profunctor.rmap(dictProfunctor)(sa)(g))(e));-                        };-                    };-                };-            };-        });-    };-};-var au = function (l) {-    return withIso(l)(function (sa) {-        return function (bt) {-            return function (f) {-                return function (e) {-                    return sa(f(bt)(e));-                };-            };-        };-    });-};-module.exports = {-    au: au, -    auf: auf, -    cloneIso: cloneIso, -    curried: curried, -    dimapping: dimapping, -    flipped: flipped, -    iso: iso, -    mapping: mapping, -    non: non, -    re: re, -    uncurried: uncurried, -    under: under, -    withIso: withIso-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Boolean":129,"../Data.Eq":138,"../Data.Function":149,"../Data.Functor":155,"../Data.Lens.Internal.Exchange":171,"../Data.Lens.Internal.Re":176,"../Data.Lens.Types":190,"../Data.Maybe":198,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Tuple":245,"../Prelude":268}],182:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Lens_Lens = require("../Data.Lens.Lens");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var _2 = function (dictStrong) {-    return Data_Profunctor_Strong.second(dictStrong);-};-var _1 = function (dictStrong) {-    return Data_Profunctor_Strong.first(dictStrong);-};-module.exports = {-    _1: _1, -    _2: _2-};--},{"../Data.Lens.Lens":184,"../Data.Profunctor.Strong":224,"../Data.Tuple":245}],183:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Function = require("../Data.Function");-var Data_Lens_Lens = require("../Data.Lens.Lens");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var united = function (dictStrong) {-    return Data_Lens_Lens.lens(Data_Function["const"](Data_Unit.unit))(Data_Function["const"])(dictStrong);-};-module.exports = {-    united: united-};--},{"../Data.Function":149,"../Data.Lens.Lens":184,"../Data.Unit":249,"../Prelude":268}],184:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Internal_Shop = require("../Data.Lens.Internal.Shop");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var withLens = function (l) {-    return function (f) {-        var v = l(new Data_Lens_Internal_Shop.Shop(Control_Category.id(Control_Category.categoryFn), function (v1) {-            return function (b) {-                return b;-            };-        }));-        return f(v.value0)(v.value1);-    };-};-var withIndexedLens = function (l) {-    return function (f) {-        var v = l(new Data_Lens_Internal_Shop.Shop(Control_Category.id(Control_Category.categoryFn), function (v1) {-            return function (b) {-                return b;-            };-        }));-        return f(v.value0)(v.value1);-    };-};-var lens$prime = function (to) {-    return function (dictStrong) {-        return function (pab) {-            return Data_Profunctor.dimap(dictStrong.Profunctor0())(to)(function (v) {-                return v.value1(v.value0);-            })(Data_Profunctor_Strong.first(dictStrong)(pab));-        };-    };-};-var lens = function (get) {-    return function (set) {-        return function (dictStrong) {-            return lens$prime(function (s) {-                return new Data_Tuple.Tuple(get(s), function (b) {-                    return set(s)(b);-                });-            })(dictStrong);-        };-    };-};-var ilens$prime = function (to) {-    return function (dictStrong) {-        return function (pab) {-            return Data_Profunctor.dimap(dictStrong.Profunctor0())(to)(function (v) {-                return v.value1(v.value0);-            })(Data_Profunctor_Strong.first(dictStrong)(Data_Newtype.un(Data_Lens_Internal_Indexed.newtypeIndexed)(Data_Lens_Internal_Indexed.Indexed)(pab)));-        };-    };-};-var ilens = function (get) {-    return function (set) {-        return function (dictStrong) {-            return ilens$prime(function (s) {-                return new Data_Tuple.Tuple(get(s), function (b) {-                    return set(s)(b);-                });-            })(dictStrong);-        };-    };-};-var cloneLens = function (l) {-    return function (dictStrong) {-        return withLens(l)(function (x) {-            return function (y) {-                return function (p) {-                    return lens(x)(y)(dictStrong)(p);-                };-            };-        });-    };-};-var cloneIndexedLens = function (l) {-    return function (dictStrong) {-        return withIndexedLens(l)(function (x) {-            return function (y) {-                return function (p) {-                    return ilens(x)(y)(dictStrong)(p);-                };-            };-        });-    };-};-module.exports = {-    cloneIndexedLens: cloneIndexedLens, -    cloneLens: cloneLens, -    ilens: ilens, -    "ilens'": ilens$prime, -    lens: lens, -    "lens'": lens$prime, -    withIndexedLens: withIndexedLens, -    withLens: withLens-};--},{"../Control.Category":47,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Internal.Shop":177,"../Data.Lens.Types":190,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Strong":224,"../Data.Tuple":245,"../Prelude":268}],185:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Either = require("../Data.Either");-var Data_Lens_Prism = require("../Data.Lens.Prism");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var _Right = function (dictChoice) {-    return Data_Profunctor_Choice.right(dictChoice);-};-var _Left = function (dictChoice) {-    return Data_Profunctor_Choice.left(dictChoice);-};-module.exports = {-    _Left: _Left, -    _Right: _Right-};--},{"../Data.Either":136,"../Data.Lens.Prism":187,"../Data.Profunctor.Choice":218}],186:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Lens_Prism = require("../Data.Lens.Prism");-var Data_Maybe = require("../Data.Maybe");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var _Nothing = function (dictChoice) {-    return Data_Lens_Prism.prism(Data_Function["const"](Data_Maybe.Nothing.value))(Data_Maybe.maybe(new Data_Either.Right(Data_Unit.unit))(Data_Function["const"](new Data_Either.Left(Data_Maybe.Nothing.value))))(dictChoice);-};-var _Just = function (dictChoice) {-    return Data_Lens_Prism.prism(Data_Maybe.Just.create)(Data_Maybe.maybe(new Data_Either.Left(Data_Maybe.Nothing.value))(Data_Either.Right.create))(dictChoice);-};-module.exports = {-    _Just: _Just, -    _Nothing: _Nothing-};--},{"../Data.Either":136,"../Data.Function":149,"../Data.Lens.Prism":187,"../Data.Maybe":198,"../Data.Unit":249,"../Prelude":268}],187:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Lens_Internal_Market = require("../Data.Lens.Internal.Market");-var Data_Lens_Internal_Tagged = require("../Data.Lens.Internal.Tagged");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Prelude = require("../Prelude");-var withPrism = function (l) {-    return function (f) {-        var v = l(new Data_Lens_Internal_Market.Market(Control_Category.id(Control_Category.categoryFn), Data_Either.Right.create));-        return f(v.value0)(v.value1);-    };-};-var review = Data_Newtype.under(Data_Lens_Internal_Tagged.newtypeTagged)(Data_Lens_Internal_Tagged.newtypeTagged)(Data_Lens_Internal_Tagged.Tagged);-var prism = function (to) {-    return function (fro) {-        return function (dictChoice) {-            return function (pab) {-                return Data_Profunctor.dimap(dictChoice.Profunctor0())(fro)(Data_Either.either(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn)))(Data_Profunctor_Choice.right(dictChoice)(Data_Profunctor.rmap(dictChoice.Profunctor0())(to)(pab)));-            };-        };-    };-};-var prism$prime = function (to) {-    return function (fro) {-        return function (dictChoice) {-            return prism(to)(function (s) {-                return Data_Maybe.maybe(new Data_Either.Left(s))(Data_Either.Right.create)(fro(s));-            })(dictChoice);-        };-    };-};-var nearly = function (x) {-    return function (f) {-        return function (dictChoice) {-            return prism$prime(Data_Function["const"](x))(function ($14) {-                return Control_MonadZero.guard(Data_Maybe.monadZeroMaybe)(f($14));-            })(dictChoice);-        };-    };-};-var only = function (dictEq) {-    return function (x) {-        return function (dictChoice) {-            return nearly(x)(function (v) {-                return Data_Eq.eq(dictEq)(v)(x);-            })(dictChoice);-        };-    };-};-var matching = function (l) {-    return withPrism(l)(function (v) {-        return function (f) {-            return f;-        };-    });-};-var is = function (dictHeytingAlgebra) {-    return function (l) {-        return function ($15) {-            return Data_Either.either(Data_Function["const"](Data_HeytingAlgebra.ff(dictHeytingAlgebra)))(Data_Function["const"](Data_HeytingAlgebra.tt(dictHeytingAlgebra)))(matching(l)($15));-        };-    };-};-var isn$primet = function (dictHeytingAlgebra) {-    return function (l) {-        return function ($16) {-            return Data_HeytingAlgebra.not(dictHeytingAlgebra)(is(dictHeytingAlgebra)(l)($16));-        };-    };-};-var clonePrism = function (l) {-    return function (dictChoice) {-        return withPrism(l)(function (x) {-            return function (y) {-                return function (p) {-                    return prism(x)(y)(dictChoice)(p);-                };-            };-        });-    };-};-module.exports = {-    clonePrism: clonePrism, -    is: is, -    "isn't": isn$primet, -    matching: matching, -    nearly: nearly, -    only: only, -    prism: prism, -    "prism'": prism$prime, -    review: review, -    withPrism: withPrism-};--},{"../Control.Category":47,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Eq":138,"../Data.Function":149,"../Data.HeytingAlgebra":160,"../Data.Lens.Internal.Market":175,"../Data.Lens.Internal.Tagged":178,"../Data.Lens.Types":190,"../Data.Maybe":198,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Prelude":268}],188:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Monad_State_Class = require("../Control.Monad.State.Class");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Function = require("../Data.Function");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var over = function (l) {-    return l;-};-var set = function (l) {-    return function (b) {-        return over(l)(Data_Function["const"](b));-    };-};-var setJust = function (p) {-    return function ($24) {-        return set(p)(Data_Maybe.Just.create($24));-    };-};-var subOver = function (dictRing) {-    return function (p) {-        return function ($25) {-            return over(p)(Data_Function.flip(Data_Ring.sub(dictRing))($25));-        };-    };-};-var mulOver = function (dictSemiring) {-    return function (p) {-        return function ($26) {-            return over(p)(Data_Function.flip(Data_Semiring.mul(dictSemiring))($26));-        };-    };-};-var modifying = function (dictMonadState) {-    return function (p) {-        return function (f) {-            return Control_Monad_State_Class.modify(dictMonadState)(over(p)(f));-        };-    };-};-var mulModifying = function (dictMonadState) {-    return function (dictSemiring) {-        return function (p) {-            return function ($27) {-                return modifying(dictMonadState)(p)(Data_Function.flip(Data_Semiring.mul(dictSemiring))($27));-            };-        };-    };-};-var subModifying = function (dictMonadState) {-    return function (dictRing) {-        return function (p) {-            return function ($28) {-                return modifying(dictMonadState)(p)(Data_Function.flip(Data_Ring.sub(dictRing))($28));-            };-        };-    };-};-var iover = function (l) {-    return function (f) {-        return l(Data_Lens_Internal_Indexed.Indexed(Data_Tuple.uncurry(f)));-    };-};-var divOver = function (dictEuclideanRing) {-    return function (p) {-        return function ($29) {-            return over(p)(Data_Function.flip(Data_EuclideanRing.div(dictEuclideanRing))($29));-        };-    };-};-var divModifying = function (dictMonadState) {-    return function (dictEuclideanRing) {-        return function (p) {-            return function ($30) {-                return modifying(dictMonadState)(p)(Data_Function.flip(Data_EuclideanRing.div(dictEuclideanRing))($30));-            };-        };-    };-};-var disjOver = function (dictHeytingAlgebra) {-    return function (p) {-        return function ($31) {-            return over(p)(Data_Function.flip(Data_HeytingAlgebra.disj(dictHeytingAlgebra))($31));-        };-    };-};-var disjModifying = function (dictMonadState) {-    return function (dictHeytingAlgebra) {-        return function (p) {-            return function ($32) {-                return modifying(dictMonadState)(p)(Data_Function.flip(Data_HeytingAlgebra.disj(dictHeytingAlgebra))($32));-            };-        };-    };-};-var conjOver = function (dictHeytingAlgebra) {-    return function (p) {-        return function ($33) {-            return over(p)(Data_Function.flip(Data_HeytingAlgebra.conj(dictHeytingAlgebra))($33));-        };-    };-};-var conjModifying = function (dictMonadState) {-    return function (dictHeytingAlgebra) {-        return function (p) {-            return function ($34) {-                return modifying(dictMonadState)(p)(Data_Function.flip(Data_HeytingAlgebra.conj(dictHeytingAlgebra))($34));-            };-        };-    };-};-var assign = function (dictMonadState) {-    return function (p) {-        return function (b) {-            return Control_Monad_State_Class.modify(dictMonadState)(set(p)(b));-        };-    };-};-var assignJust = function (dictMonadState) {-    return function (p) {-        return function ($35) {-            return assign(dictMonadState)(p)(Data_Maybe.Just.create($35));-        };-    };-};-var appendOver = function (dictSemigroup) {-    return function (p) {-        return function ($36) {-            return over(p)(Data_Function.flip(Data_Semigroup.append(dictSemigroup))($36));-        };-    };-};-var appendModifying = function (dictMonadState) {-    return function (dictSemigroup) {-        return function (p) {-            return function ($37) {-                return modifying(dictMonadState)(p)(Data_Function.flip(Data_Semigroup.append(dictSemigroup))($37));-            };-        };-    };-};-var addOver = function (dictSemiring) {-    return function (p) {-        return function ($38) {-            return over(p)(Data_Semiring.add(dictSemiring)($38));-        };-    };-};-var addModifying = function (dictMonadState) {-    return function (dictSemiring) {-        return function (p) {-            return function ($39) {-                return modifying(dictMonadState)(p)(Data_Semiring.add(dictSemiring)($39));-            };-        };-    };-};-module.exports = {-    addModifying: addModifying, -    addOver: addOver, -    appendModifying: appendModifying, -    appendOver: appendOver, -    assign: assign, -    assignJust: assignJust, -    conjModifying: conjModifying, -    conjOver: conjOver, -    disjModifying: disjModifying, -    disjOver: disjOver, -    divModifying: divModifying, -    divOver: divOver, -    iover: iover, -    modifying: modifying, -    mulModifying: mulModifying, -    mulOver: mulOver, -    over: over, -    set: set, -    setJust: setJust, -    subModifying: subModifying, -    subOver: subOver-};--},{"../Control.Monad.State.Class":80,"../Control.Semigroupoid":92,"../Data.EuclideanRing":140,"../Data.Function":149,"../Data.HeytingAlgebra":160,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Types":190,"../Data.Maybe":198,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Tuple":245,"../Prelude":268}],189:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Category = require("../Control.Category");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Lens_Indexed = require("../Data.Lens.Indexed");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");-var Data_Lens_Types = require("../Data.Lens.Types");-var Data_Monoid_Disj = require("../Data.Monoid.Disj");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor_Star = require("../Data.Profunctor.Star");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var traversed = function (dictTraversable) {-    return function (dictWander) {-        return Data_Lens_Internal_Wander.wander(dictWander)(function (dictApplicative) {-            return Data_Traversable.traverse(dictTraversable)(dictApplicative);-        });-    };-};-var traverseOf = function (dictApplicative) {-    return Data_Newtype.under(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.Star);-};-var sequenceOf = function (dictApplicative) {-    return function (t) {-        return traverseOf(dictApplicative)(t)(Control_Category.id(Control_Category.categoryFn));-    };-};-var itraverseOf = function (dictApplicative) {-    return function (t) {-        return function ($24) {-            return Data_Newtype.under(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.Star)(function ($25) {-                return t(Data_Lens_Internal_Indexed.Indexed($25));-            })(Data_Tuple.uncurry($24));-        };-    };-};-var failover = function (dictAlternative) {-    return function (t) {-        return function (f) {-            return function (s) {-                var v = Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar)(t(Data_Profunctor_Star.Star(function ($26) {-                    return Data_Tuple.Tuple.create(true)(f($26));-                })))(s);-                if (v.value0) {-                    return Control_Applicative.pure(dictAlternative.Applicative0())(v.value1);-                };-                if (!v.value0) {-                    return Control_Plus.empty(dictAlternative.Plus1());-                };-                throw new Error("Failed pattern match at Data.Lens.Traversal line 55, column 18 - line 57, column 32: " + [ v.constructor.name ]);-            };-        };-    };-};-var elementsOf = function (dictWander) {-    return function (tr) {-        return function (pr) {-            return Data_Lens_Indexed.iwander(function (dictApplicative) {-                return function (f) {-                    return Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar)(tr(Data_Lens_Internal_Wander.wanderStar(dictApplicative))(Data_Lens_Internal_Indexed.Indexed(Data_Profunctor_Star.Star(function (v) {-                        var $21 = pr(v.value0);-                        if ($21) {-                            return f(v.value0)(v.value1);-                        };-                        return Control_Applicative.pure(dictApplicative)(v.value1);-                    }))));-                };-            })(dictWander);-        };-    };-};-var element = function (dictWander) {-    return function (n) {-        return function (tr) {-            return Data_Lens_Indexed.unIndex((dictWander.Choice1()).Profunctor0())(elementsOf(dictWander)(function (dictWander1) {-                return Data_Lens_Indexed.positions(function (dictWander2) {-                    return tr(dictWander2);-                })(dictWander1);-            })(function (v) {-                return v === n;-            }));-        };-    };-};-module.exports = {-    element: element, -    elementsOf: elementsOf, -    failover: failover, -    itraverseOf: itraverseOf, -    sequenceOf: sequenceOf, -    traverseOf: traverseOf, -    traversed: traversed-};--},{"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Category":47,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Function":149,"../Data.Lens.Indexed":170,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Internal.Wander":179,"../Data.Lens.Types":190,"../Data.Monoid.Disj":203,"../Data.Newtype":209,"../Data.Profunctor.Star":223,"../Data.Traversable":244,"../Data.Tuple":245,"../Prelude":268}],190:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Lens_Internal_Exchange = require("../Data.Lens.Internal.Exchange");-var Data_Lens_Internal_Forget = require("../Data.Lens.Internal.Forget");-var Data_Lens_Internal_Grating = require("../Data.Lens.Internal.Grating");-var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");-var Data_Lens_Internal_Market = require("../Data.Lens.Internal.Market");-var Data_Lens_Internal_Re = require("../Data.Lens.Internal.Re");-var Data_Lens_Internal_Shop = require("../Data.Lens.Internal.Shop");-var Data_Lens_Internal_Tagged = require("../Data.Lens.Internal.Tagged");-var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-module.exports = {};--},{"../Data.Lens.Internal.Exchange":171,"../Data.Lens.Internal.Forget":172,"../Data.Lens.Internal.Grating":173,"../Data.Lens.Internal.Indexed":174,"../Data.Lens.Internal.Market":175,"../Data.Lens.Internal.Re":176,"../Data.Lens.Internal.Shop":177,"../Data.Lens.Internal.Tagged":178,"../Data.Lens.Internal.Wander":179,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Closed":219,"../Data.Profunctor.Strong":224,"../Data.Tuple":245}],191:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Lens_Common = require("../Data.Lens.Common");-var Data_Lens_Fold = require("../Data.Lens.Fold");-var Data_Lens_Getter = require("../Data.Lens.Getter");-var Data_Lens_Grate = require("../Data.Lens.Grate");-var Data_Lens_Iso = require("../Data.Lens.Iso");-var Data_Lens_Lens = require("../Data.Lens.Lens");-var Data_Lens_Prism = require("../Data.Lens.Prism");-var Data_Lens_Setter = require("../Data.Lens.Setter");-var Data_Lens_Traversal = require("../Data.Lens.Traversal");-var Data_Lens_Types = require("../Data.Lens.Types");-module.exports = {};--},{"../Data.Lens.Common":166,"../Data.Lens.Fold":167,"../Data.Lens.Getter":168,"../Data.Lens.Grate":169,"../Data.Lens.Iso":181,"../Data.Lens.Lens":184,"../Data.Lens.Prism":187,"../Data.Lens.Setter":188,"../Data.Lens.Traversal":189,"../Data.Lens.Types":190}],192:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Bind = require("../Control.Bind");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_List = require("../Data.List");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_NonEmpty = require("../Data.NonEmpty");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Prelude = require("../Prelude");-var uncons = function (v) {-    return {-        head: v.value0, -        tail: v.value1-    };-};-var toList = function (v) {-    return new Data_List_Types.Cons(v.value0, v.value1);-};-var toUnfoldable = function (dictUnfoldable) {-    return function ($41) {-        return Data_Unfoldable.unfoldr(dictUnfoldable)(function (xs) {-            return Data_Functor.map(Data_Maybe.functorMaybe)(function (rec) {-                return new Data_Tuple.Tuple(rec.head, rec.tail);-            })(Data_List.uncons(xs));-        })(toList($41));-    };-};-var tail = function (v) {-    return v.value1;-};-var singleton = function ($42) {-    return Data_List_Types.NonEmptyList(Data_NonEmpty.singleton(Data_List_Types.plusList)($42));-};-var length = function (v) {-    return 1 + Data_List.length(v.value1) | 0;-};-var last = function (v) {-    return Data_Maybe.fromMaybe(v.value0)(Data_List.last(v.value1));-};-var init = function (v) {-    return Data_Maybe.maybe(Data_List_Types.Nil.value)(function (v1) {-        return new Data_List_Types.Cons(v.value0, v1);-    })(Data_List.init(v.value1));-};-var head = function (v) {-    return v.value0;-};-var fromList = function (v) {-    if (v instanceof Data_List_Types.Nil) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Data_List_Types.Cons) {-        return new Data_Maybe.Just(new Data_NonEmpty.NonEmpty(v.value0, v.value1));-    };-    throw new Error("Failed pattern match at Data.List.NonEmpty line 37, column 1 - line 37, column 25: " + [ v.constructor.name ]);-};-var fromFoldable = function (dictFoldable) {-    return function ($43) {-        return fromList(Data_List.fromFoldable(dictFoldable)($43));-    };-};-var concatMap = Data_Function.flip(Control_Bind.bind(Data_List_Types.bindNonEmptyList));-var appendFoldable = function (dictFoldable) {-    return function (v) {-        return function (ys) {-            return new Data_NonEmpty.NonEmpty(v.value0, Data_Semigroup.append(Data_List_Types.semigroupList)(v.value1)(Data_List.fromFoldable(dictFoldable)(ys)));-        };-    };-};-module.exports = {-    appendFoldable: appendFoldable, -    concatMap: concatMap, -    fromFoldable: fromFoldable, -    fromList: fromList, -    head: head, -    init: init, -    length: length, -    singleton: singleton, -    tail: tail, -    toList: toList, -    toUnfoldable: toUnfoldable, -    uncons: uncons-};--},{"../Control.Bind":46,"../Control.Semigroupoid":92,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.List":194,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.NonEmpty":210,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Prelude":268}],193:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_NonEmpty = require("../Data.NonEmpty");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Prelude = require("../Prelude");-var Nil = (function () {-    function Nil() {--    };-    Nil.value = new Nil();-    return Nil;-})();-var Cons = (function () {-    function Cons(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Cons.create = function (value0) {-        return function (value1) {-            return new Cons(value0, value1);-        };-    };-    return Cons;-})();-var NonEmptyList = function (x) {-    return x;-};-var toList = function (v) {-    return new Cons(v.value0, v.value1);-};-var newtypeNonEmptyList = new Data_Newtype.Newtype(function (n) {-    return n;-}, NonEmptyList);-var foldableList = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (f) {-        return Data_Foldable.foldl(foldableList)(function (acc) {-            return function ($116) {-                return Data_Semigroup.append(dictMonoid.Semigroup0())(acc)(f($116));-            };-        })(Data_Monoid.mempty(dictMonoid));-    };-}, function (f) {-    var go = function (__copy_b) {-        return function (__copy_v) {-            var b = __copy_b;-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_b;-            var __tco_v;-            function __tco_loop(b, v) {-                if (v instanceof Nil) {-                    __tco_done = true;-                    return b;-                };-                if (v instanceof Cons) {-                    __tco_b = f(b)(v.value0);-                    __tco_v = v.value1;-                    return;-                };-                throw new Error("Failed pattern match at Data.List.Types line 76, column 12 - line 78, column 30: " + [ v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(b, v);-                b = __tco_b;-                v = __tco_v;-            };-            return __tco_result;-        };-    };-    return go;-}, function (f) {-    return function (b) {-        var rev = function (__copy_acc) {-            return function (__copy_v) {-                var acc = __copy_acc;-                var v = __copy_v;-                var __tco_done = false;-                var __tco_result;-                var __tco_acc;-                var __tco_v;-                function __tco_loop(acc, v) {-                    if (v instanceof Nil) {-                        __tco_done = true;-                        return acc;-                    };-                    if (v instanceof Cons) {-                        __tco_acc = new Cons(v.value0, acc);-                        __tco_v = v.value1;-                        return;-                    };-                    throw new Error("Failed pattern match at Data.List.Types line 71, column 15 - line 73, column 33: " + [ v.constructor.name ]);-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(acc, v);-                    acc = __tco_acc;-                    v = __tco_v;-                };-                return __tco_result;-            };-        };-        return function ($117) {-            return Data_Foldable.foldl(foldableList)(Data_Function.flip(f))(b)(rev(Nil.value)($117));-        };-    };-});-var foldableNonEmptyList = Data_NonEmpty.foldableNonEmpty(foldableList);-var functorList = new Data_Functor.Functor(function (f) {-    return Data_Foldable.foldr(foldableList)(function (x) {-        return function (acc) {-            return new Cons(f(x), acc);-        };-    })(Nil.value);-});-var functorNonEmptyList = Data_NonEmpty.functorNonEmpty(functorList);-var semigroupList = new Data_Semigroup.Semigroup(function (xs) {-    return function (ys) {-        return Data_Foldable.foldr(foldableList)(Cons.create)(ys)(xs);-    };-});-var monoidList = new Data_Monoid.Monoid(function () {-    return semigroupList;-}, Nil.value);-var semigroupNonEmptyList = new Data_Semigroup.Semigroup(function (v) {-    return function (as$prime) {-        return new Data_NonEmpty.NonEmpty(v.value0, Data_Semigroup.append(semigroupList)(v.value1)(toList(as$prime)));-    };-});-var showList = function (dictShow) {-    return new Data_Show.Show(function (v) {-        if (v instanceof Nil) {-            return "Nil";-        };-        return "(" + (Data_Foldable.intercalate(foldableList)(Data_Monoid.monoidString)(" : ")(Data_Functor.map(functorList)(Data_Show.show(dictShow))(v)) + " : Nil)");-    });-};-var showNonEmptyList = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(NonEmptyList " + (Data_Show.show(Data_NonEmpty.showNonEmpty(dictShow)(showList(dictShow)))(v) + ")");-    });-};-var traversableList = new Data_Traversable.Traversable(function () {-    return foldableList;-}, function () {-    return functorList;-}, function (dictApplicative) {-    return Data_Traversable.traverse(traversableList)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));-}, function (dictApplicative) {-    return function (f) {-        return function ($118) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Foldable.foldl(foldableList)(Data_Function.flip(Cons.create))(Nil.value))(Data_Foldable.foldl(foldableList)(function (acc) {-                return function ($119) {-                    return Control_Apply.lift2(dictApplicative.Apply0())(Data_Function.flip(Cons.create))(acc)(f($119));-                };-            })(Control_Applicative.pure(dictApplicative)(Nil.value))($118));-        };-    };-});-var traversableNonEmptyList = Data_NonEmpty.traversableNonEmpty(traversableList);-var unfoldableList = new Data_Unfoldable.Unfoldable(function (f) {-    return function (b) {-        var go = function (__copy_source) {-            return function (__copy_memo) {-                var source = __copy_source;-                var memo = __copy_memo;-                var __tco_done = false;-                var __tco_result;-                var __tco_source;-                var __tco_memo;-                function __tco_loop(source, memo) {-                    var v = f(source);-                    if (v instanceof Data_Maybe.Nothing) {-                        __tco_done = true;-                        return Data_Foldable.foldl(foldableList)(Data_Function.flip(Cons.create))(Nil.value)(memo);-                    };-                    if (v instanceof Data_Maybe.Just) {-                        __tco_source = v.value0.value1;-                        __tco_memo = new Cons(v.value0.value0, memo);-                        return;-                    };-                    throw new Error("Failed pattern match at Data.List.Types line 84, column 22 - line 86, column 52: " + [ v.constructor.name ]);-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(source, memo);-                    source = __tco_source;-                    memo = __tco_memo;-                };-                return __tco_result;-            };-        };-        return go(b)(Nil.value);-    };-});-var extendNonEmptyList = new Control_Extend.Extend(function () {-    return functorNonEmptyList;-}, function (f) {-    return function (v) {-        var go = function (a) {-            return function (v1) {-                return {-                    val: new Cons(f(new Data_NonEmpty.NonEmpty(a, v1.acc)), v1.val), -                    acc: new Cons(a, v1.acc)-                };-            };-        };-        return new Data_NonEmpty.NonEmpty(f(v), (Data_Foldable.foldr(foldableList)(go)({-            val: Nil.value, -            acc: Nil.value-        })(v.value1)).val);-    };-});-var extendList = new Control_Extend.Extend(function () {-    return functorList;-}, function (f) {-    return function (v) {-        if (v instanceof Nil) {-            return Nil.value;-        };-        if (v instanceof Cons) {-            var go = function (a$prime) {-                return function (v1) {-                    var acc$prime = new Cons(a$prime, v1.acc);-                    return {-                        val: new Cons(f(acc$prime), v1.val), -                        acc: acc$prime-                    };-                };-            };-            return new Cons(f(v), (Data_Foldable.foldr(foldableList)(go)({-                val: Nil.value, -                acc: Nil.value-            })(v.value1)).val);-        };-        throw new Error("Failed pattern match at Data.List.Types line 118, column 3 - line 118, column 21: " + [ f.constructor.name, v.constructor.name ]);-    };-});-var eq1List = new Data_Eq.Eq1(function (dictEq) {-    return function (xs) {-        return function (ys) {-            var go = function (__copy_v) {-                return function (__copy_v1) {-                    return function (__copy_v2) {-                        var v = __copy_v;-                        var v1 = __copy_v1;-                        var v2 = __copy_v2;-                        var __tco_done = false;-                        var __tco_result;-                        var __tco_v;-                        var __tco_v1;-                        var __tco_v2;-                        function __tco_loop(v, v1, v2) {-                            if (!v2) {-                                __tco_done = true;-                                return false;-                            };-                            if (v instanceof Nil && v1 instanceof Nil) {-                                __tco_done = true;-                                return v2;-                            };-                            if (v instanceof Cons && v1 instanceof Cons) {-                                __tco_v = v.value1;-                                __tco_v1 = v1.value1;-                                __tco_v2 = v2 && Data_Eq.eq(dictEq)(v1.value0)(v.value0);-                                return;-                            };-                            __tco_done = true;-                            return false;-                        };-                        while (!__tco_done) {-                            __tco_result = __tco_loop(v, v1, v2);-                            v = __tco_v;-                            v1 = __tco_v1;-                            v2 = __tco_v2;-                        };-                        return __tco_result;-                    };-                };-            };-            return go(xs)(ys)(true);-        };-    };-});-var eqList = function (dictEq) {-    return new Data_Eq.Eq(Data_Eq.eq1(eq1List)(dictEq));-};-var eqNonEmptyList = function (dictEq) {-    return Data_NonEmpty.eqNonEmpty(eq1List)(dictEq);-};-var ord1List = new Data_Ord.Ord1(function () {-    return eq1List;-}, function (dictOrd) {-    return function (xs) {-        return function (ys) {-            var go = function (__copy_v) {-                return function (__copy_v1) {-                    var v = __copy_v;-                    var v1 = __copy_v1;-                    var __tco_done = false;-                    var __tco_result;-                    var __tco_v;-                    var __tco_v1;-                    function __tco_loop(v, v1) {-                        if (v instanceof Nil && v1 instanceof Nil) {-                            __tco_done = true;-                            return Data_Ordering.EQ.value;-                        };-                        if (v instanceof Nil) {-                            __tco_done = true;-                            return Data_Ordering.LT.value;-                        };-                        if (v1 instanceof Nil) {-                            __tco_done = true;-                            return Data_Ordering.GT.value;-                        };-                        if (v instanceof Cons && v1 instanceof Cons) {-                            var v2 = Data_Ord.compare(dictOrd)(v.value0)(v1.value0);-                            if (v2 instanceof Data_Ordering.EQ) {-                                __tco_v = v.value1;-                                __tco_v1 = v1.value1;-                                return;-                            };-                            __tco_done = true;-                            return v2;-                        };-                        throw new Error("Failed pattern match at Data.List.Types line 49, column 20 - line 57, column 23: " + [ v.constructor.name, v1.constructor.name ]);-                    };-                    while (!__tco_done) {-                        __tco_result = __tco_loop(v, v1);-                        v = __tco_v;-                        v1 = __tco_v1;-                    };-                    return __tco_result;-                };-            };-            return go(xs)(ys);-        };-    };-});-var ordList = function (dictOrd) {-    return new Data_Ord.Ord(function () {-        return eqList(dictOrd.Eq0());-    }, Data_Ord.compare1(ord1List)(dictOrd));-};-var ordNonEmptyList = function (dictOrd) {-    return Data_NonEmpty.ordNonEmpty(ord1List)(dictOrd);-};-var comonadNonEmptyList = new Control_Comonad.Comonad(function () {-    return extendNonEmptyList;-}, function (v) {-    return v.value0;-});-var applyList = new Control_Apply.Apply(function () {-    return functorList;-}, function (v) {-    return function (v1) {-        if (v instanceof Nil) {-            return Nil.value;-        };-        if (v instanceof Cons) {-            return Data_Semigroup.append(semigroupList)(Data_Functor.map(functorList)(v.value0)(v1))(Control_Apply.apply(applyList)(v.value1)(v1));-        };-        throw new Error("Failed pattern match at Data.List.Types line 93, column 3 - line 93, column 20: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var applyNonEmptyList = new Control_Apply.Apply(function () {-    return functorNonEmptyList;-}, function (v) {-    return function (v1) {-        return new Data_NonEmpty.NonEmpty(v.value0(v1.value0), Data_Semigroup.append(semigroupList)(Control_Apply.apply(applyList)(v.value1)(new Cons(v1.value0, Nil.value)))(Control_Apply.apply(applyList)(new Cons(v.value0, v.value1))(v1.value1)));-    };-});-var bindList = new Control_Bind.Bind(function () {-    return applyList;-}, function (v) {-    return function (v1) {-        if (v instanceof Nil) {-            return Nil.value;-        };-        if (v instanceof Cons) {-            return Data_Semigroup.append(semigroupList)(v1(v.value0))(Control_Bind.bind(bindList)(v.value1)(v1));-        };-        throw new Error("Failed pattern match at Data.List.Types line 100, column 3 - line 100, column 19: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var bindNonEmptyList = new Control_Bind.Bind(function () {-    return applyNonEmptyList;-}, function (v) {-    return function (f) {-        var v1 = f(v.value0);-        return new Data_NonEmpty.NonEmpty(v1.value0, Data_Semigroup.append(semigroupList)(v1.value1)(Control_Bind.bind(bindList)(v.value1)(function ($120) {-            return toList(f($120));-        })));-    };-});-var applicativeList = new Control_Applicative.Applicative(function () {-    return applyList;-}, function (a) {-    return new Cons(a, Nil.value);-});-var monadList = new Control_Monad.Monad(function () {-    return applicativeList;-}, function () {-    return bindList;-});-var altNonEmptyList = new Control_Alt.Alt(function () {-    return functorNonEmptyList;-}, Data_Semigroup.append(semigroupNonEmptyList));-var altList = new Control_Alt.Alt(function () {-    return functorList;-}, Data_Semigroup.append(semigroupList));-var plusList = new Control_Plus.Plus(function () {-    return altList;-}, Nil.value);-var alternativeList = new Control_Alternative.Alternative(function () {-    return applicativeList;-}, function () {-    return plusList;-});-var monadZeroList = new Control_MonadZero.MonadZero(function () {-    return alternativeList;-}, function () {-    return monadList;-});-var monadPlusList = new Control_MonadPlus.MonadPlus(function () {-    return monadZeroList;-});-var applicativeNonEmptyList = new Control_Applicative.Applicative(function () {-    return applyNonEmptyList;-}, function ($121) {-    return NonEmptyList(Data_NonEmpty.singleton(plusList)($121));-});-var monadNonEmptyList = new Control_Monad.Monad(function () {-    return applicativeNonEmptyList;-}, function () {-    return bindNonEmptyList;-});-module.exports = {-    Nil: Nil, -    Cons: Cons, -    NonEmptyList: NonEmptyList, -    toList: toList, -    showList: showList, -    eqList: eqList, -    eq1List: eq1List, -    ordList: ordList, -    ord1List: ord1List, -    semigroupList: semigroupList, -    monoidList: monoidList, -    functorList: functorList, -    foldableList: foldableList, -    unfoldableList: unfoldableList, -    traversableList: traversableList, -    applyList: applyList, -    applicativeList: applicativeList, -    bindList: bindList, -    monadList: monadList, -    altList: altList, -    plusList: plusList, -    alternativeList: alternativeList, -    monadZeroList: monadZeroList, -    monadPlusList: monadPlusList, -    extendList: extendList, -    newtypeNonEmptyList: newtypeNonEmptyList, -    eqNonEmptyList: eqNonEmptyList, -    ordNonEmptyList: ordNonEmptyList, -    showNonEmptyList: showNonEmptyList, -    functorNonEmptyList: functorNonEmptyList, -    applyNonEmptyList: applyNonEmptyList, -    applicativeNonEmptyList: applicativeNonEmptyList, -    bindNonEmptyList: bindNonEmptyList, -    monadNonEmptyList: monadNonEmptyList, -    altNonEmptyList: altNonEmptyList, -    extendNonEmptyList: extendNonEmptyList, -    comonadNonEmptyList: comonadNonEmptyList, -    semigroupNonEmptyList: semigroupNonEmptyList, -    foldableNonEmptyList: foldableNonEmptyList, -    traversableNonEmptyList: traversableNonEmptyList-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.NonEmpty":210,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Prelude":268}],194:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Lazy = require("../Control.Lazy");-var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Boolean = require("../Data.Boolean");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_NonEmpty = require("../Data.NonEmpty");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var updateAt = function (v) {-    return function (v1) {-        return function (v2) {-            if (v === 0 && v2 instanceof Data_List_Types.Cons) {-                return new Data_Maybe.Just(new Data_List_Types.Cons(v1, v2.value1));-            };-            if (v2 instanceof Data_List_Types.Cons) {-                return Data_Functor.map(Data_Maybe.functorMaybe)(function (v3) {-                    return new Data_List_Types.Cons(v2.value0, v3);-                })(updateAt(v - 1 | 0)(v1)(v2.value1));-            };-            return Data_Maybe.Nothing.value;-        };-    };-};-var unzip = Data_Foldable.foldr(Data_List_Types.foldableList)(function (v) {-    return function (v1) {-        return new Data_Tuple.Tuple(new Data_List_Types.Cons(v.value0, v1.value0), new Data_List_Types.Cons(v.value1, v1.value1));-    };-})(new Data_Tuple.Tuple(Data_List_Types.Nil.value, Data_List_Types.Nil.value));-var uncons = function (v) {-    if (v instanceof Data_List_Types.Nil) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Data_List_Types.Cons) {-        return new Data_Maybe.Just({-            head: v.value0, -            tail: v.value1-        });-    };-    throw new Error("Failed pattern match at Data.List line 253, column 1 - line 253, column 21: " + [ v.constructor.name ]);-};-var toUnfoldable = function (dictUnfoldable) {-    return Data_Unfoldable.unfoldr(dictUnfoldable)(function (xs) {-        return Data_Functor.map(Data_Maybe.functorMaybe)(function (rec) {-            return new Data_Tuple.Tuple(rec.head, rec.tail);-        })(uncons(xs));-    });-};-var tail = function (v) {-    if (v instanceof Data_List_Types.Nil) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Data_List_Types.Cons) {-        return new Data_Maybe.Just(v.value1);-    };-    throw new Error("Failed pattern match at Data.List line 239, column 1 - line 239, column 19: " + [ v.constructor.name ]);-};-var span = function (v) {-    return function (v1) {-        if (v1 instanceof Data_List_Types.Cons && v(v1.value0)) {-            var v2 = span(v)(v1.value1);-            return {-                init: new Data_List_Types.Cons(v1.value0, v2.init), -                rest: v2.rest-            };-        };-        return {-            init: Data_List_Types.Nil.value, -            rest: v1-        };-    };-};-var singleton = function (a) {-    return new Data_List_Types.Cons(a, Data_List_Types.Nil.value);-};-var sortBy = function (cmp) {-    var merge = function (v) {-        return function (v1) {-            if (v instanceof Data_List_Types.Cons && v1 instanceof Data_List_Types.Cons) {-                if (Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v1.value0))(Data_Ordering.GT.value)) {-                    return new Data_List_Types.Cons(v1.value0, merge(v)(v1.value1));-                };-                if (Data_Boolean.otherwise) {-                    return new Data_List_Types.Cons(v.value0, merge(v.value1)(v1));-                };-            };-            if (v instanceof Data_List_Types.Nil) {-                return v1;-            };-            if (v1 instanceof Data_List_Types.Nil) {-                return v;-            };-            throw new Error("Failed pattern match at Data.List line 468, column 3 - line 470, column 41: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-    var mergePairs = function (v) {-        if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Cons) {-            return new Data_List_Types.Cons(merge(v.value0)(v.value1.value0), mergePairs(v.value1.value1));-        };-        return v;-    };-    var mergeAll = function (__copy_v) {-        var v = __copy_v;-        var __tco_done = false;-        var __tco_result;-        var __tco_v;-        function __tco_loop(v) {-            if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Nil) {-                __tco_done = true;-                return v.value0;-            };-            __tco_v = mergePairs(v);-            return;-        };-        while (!__tco_done) {-            __tco_result = __tco_loop(v);-            v = __tco_v;-        };-        return __tco_result;-    };-    var sequences = function (v) {-        if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Cons) {-            if (Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v.value1.value0))(Data_Ordering.GT.value)) {-                return descending(v.value1.value0)(singleton(v.value0))(v.value1.value1);-            };-            if (Data_Boolean.otherwise) {-                return ascending(v.value1.value0)(function (v1) {-                    return new Data_List_Types.Cons(v.value0, v1);-                })(v.value1.value1);-            };-        };-        return singleton(v);-    };-    var descending = function (__copy_a) {-        return function (__copy_as) {-            return function (__copy_v) {-                var a = __copy_a;-                var as = __copy_as;-                var v = __copy_v;-                var __tco_done = false;-                var __tco_result;-                var __tco_a;-                var __tco_as;-                var __tco_v;-                function __tco_loop(a, as, v) {-                    if (v instanceof Data_List_Types.Cons && Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(a)(v.value0))(Data_Ordering.GT.value)) {-                        __tco_a = v.value0;-                        __tco_as = new Data_List_Types.Cons(a, as);-                        __tco_v = v.value1;-                        return;-                    };-                    __tco_done = true;-                    return new Data_List_Types.Cons(new Data_List_Types.Cons(a, as), sequences(v));-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(a, as, v);-                    a = __tco_a;-                    as = __tco_as;-                    v = __tco_v;-                };-                return __tco_result;-            };-        };-    };-    var ascending = function (__copy_a) {-        return function (__copy_as) {-            return function (__copy_v) {-                var a = __copy_a;-                var as = __copy_as;-                var v = __copy_v;-                var __tco_done = false;-                var __tco_result;-                var __tco_a;-                var __tco_as;-                var __tco_v;-                function __tco_loop(a, as, v) {-                    if (v instanceof Data_List_Types.Cons && Data_Eq.notEq(Data_Ordering.eqOrdering)(cmp(a)(v.value0))(Data_Ordering.GT.value)) {-                        __tco_a = v.value0;-                        __tco_as = function (ys) {-                            return as(new Data_List_Types.Cons(a, ys));-                        };-                        __tco_v = v.value1;-                        return;-                    };-                    __tco_done = true;-                    return new Data_List_Types.Cons(as(singleton(a)), sequences(v));-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(a, as, v);-                    a = __tco_a;-                    as = __tco_as;-                    v = __tco_v;-                };-                return __tco_result;-            };-        };-    };-    return function ($304) {-        return mergeAll(sequences($304));-    };-};-var sort = function (dictOrd) {-    return function (xs) {-        return sortBy(Data_Ord.compare(dictOrd))(xs);-    };-};-var reverse = (function () {-    var go = function (__copy_acc) {-        return function (__copy_v) {-            var acc = __copy_acc;-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_acc;-            var __tco_v;-            function __tco_loop(acc, v) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return acc;-                };-                if (v instanceof Data_List_Types.Cons) {-                    __tco_acc = new Data_List_Types.Cons(v.value0, acc);-                    __tco_v = v.value1;-                    return;-                };-                throw new Error("Failed pattern match at Data.List line 359, column 11 - line 362, column 36: " + [ acc.constructor.name, v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(acc, v);-                acc = __tco_acc;-                v = __tco_v;-            };-            return __tco_result;-        };-    };-    return go(Data_List_Types.Nil.value);-})();-var snoc = function (xs) {-    return function (x) {-        return reverse(new Data_List_Types.Cons(x, reverse(xs)));-    };-};-var take = (function () {-    var go = function (__copy_acc) {-        return function (__copy_v) {-            return function (__copy_v1) {-                var acc = __copy_acc;-                var v = __copy_v;-                var v1 = __copy_v1;-                var __tco_done = false;-                var __tco_result;-                var __tco_acc;-                var __tco_v;-                var __tco_v1;-                function __tco_loop(acc, v, v1) {-                    if (v === 0) {-                        __tco_done = true;-                        return reverse(acc);-                    };-                    if (v1 instanceof Data_List_Types.Nil) {-                        __tco_done = true;-                        return reverse(acc);-                    };-                    if (v1 instanceof Data_List_Types.Cons) {-                        __tco_acc = new Data_List_Types.Cons(v1.value0, acc);-                        __tco_v = v - 1 | 0;-                        __tco_v1 = v1.value1;-                        return;-                    };-                    throw new Error("Failed pattern match at Data.List line 486, column 8 - line 490, column 46: " + [ acc.constructor.name, v.constructor.name, v1.constructor.name ]);-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(acc, v, v1);-                    acc = __tco_acc;-                    v = __tco_v;-                    v1 = __tco_v1;-                };-                return __tco_result;-            };-        };-    };-    return go(Data_List_Types.Nil.value);-})();-var takeWhile = function (p) {-    var go = function (__copy_acc) {-        return function (__copy_v) {-            var acc = __copy_acc;-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_acc;-            var __tco_v;-            function __tco_loop(acc, v) {-                if (v instanceof Data_List_Types.Cons && p(v.value0)) {-                    __tco_acc = new Data_List_Types.Cons(v.value0, acc);-                    __tco_v = v.value1;-                    return;-                };-                __tco_done = true;-                return reverse(acc);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(acc, v);-                acc = __tco_acc;-                v = __tco_v;-            };-            return __tco_result;-        };-    };-    return go(Data_List_Types.Nil.value);-};-var unsnoc = function (lst) {-    var go = function (__copy_v) {-        return function (__copy_acc) {-            var v = __copy_v;-            var acc = __copy_acc;-            var __tco_done = false;-            var __tco_result;-            var __tco_v;-            var __tco_acc;-            function __tco_loop(v, acc) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return Data_Maybe.Nothing.value;-                };-                if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return new Data_Maybe.Just({-                        revInit: acc, -                        last: v.value0-                    });-                };-                if (v instanceof Data_List_Types.Cons) {-                    __tco_v = v.value1;-                    __tco_acc = new Data_List_Types.Cons(v.value0, acc);-                    return;-                };-                throw new Error("Failed pattern match at Data.List line 261, column 14 - line 265, column 36: " + [ v.constructor.name, acc.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(v, acc);-                v = __tco_v;-                acc = __tco_acc;-            };-            return __tco_result;-        };-    };-    return Data_Functor.map(Data_Maybe.functorMaybe)(function (h) {-        return {-            init: reverse(h.revInit), -            last: h.last-        };-    })(go(lst)(Data_List_Types.Nil.value));-};-var zipWith = function (f) {-    return function (xs) {-        return function (ys) {-            var go = function (__copy_v) {-                return function (__copy_v1) {-                    return function (__copy_acc) {-                        var v = __copy_v;-                        var v1 = __copy_v1;-                        var acc = __copy_acc;-                        var __tco_done = false;-                        var __tco_result;-                        var __tco_v;-                        var __tco_v1;-                        var __tco_acc;-                        function __tco_loop(v, v1, acc) {-                            if (v instanceof Data_List_Types.Nil) {-                                __tco_done = true;-                                return acc;-                            };-                            if (v1 instanceof Data_List_Types.Nil) {-                                __tco_done = true;-                                return acc;-                            };-                            if (v instanceof Data_List_Types.Cons && v1 instanceof Data_List_Types.Cons) {-                                __tco_v = v.value1;-                                __tco_v1 = v1.value1;-                                __tco_acc = new Data_List_Types.Cons(f(v.value0)(v1.value0), acc);-                                return;-                            };-                            throw new Error("Failed pattern match at Data.List line 650, column 19 - line 654, column 52: " + [ v.constructor.name, v1.constructor.name, acc.constructor.name ]);-                        };-                        while (!__tco_done) {-                            __tco_result = __tco_loop(v, v1, acc);-                            v = __tco_v;-                            v1 = __tco_v1;-                            acc = __tco_acc;-                        };-                        return __tco_result;-                    };-                };-            };-            return reverse(go(xs)(ys)(Data_List_Types.Nil.value));-        };-    };-};-var zip = zipWith(Data_Tuple.Tuple.create);-var zipWithA = function (dictApplicative) {-    return function (f) {-        return function (xs) {-            return function (ys) {-                return Data_Traversable.sequence(Data_List_Types.traversableList)(dictApplicative)(zipWith(f)(xs)(ys));-            };-        };-    };-};-var range = function (start) {-    return function (end) {-        if (start === end) {-            return singleton(start);-        };-        if (Data_Boolean.otherwise) {-            var go = function (__copy_s) {-                return function (__copy_e) {-                    return function (__copy_step) {-                        return function (__copy_rest) {-                            var s = __copy_s;-                            var e = __copy_e;-                            var step = __copy_step;-                            var rest = __copy_rest;-                            var __tco_done = false;-                            var __tco_result;-                            var __tco_s;-                            var __tco_e;-                            var __tco_step;-                            var __tco_rest;-                            function __tco_loop(s, e, step, rest) {-                                if (s === e) {-                                    __tco_done = true;-                                    return new Data_List_Types.Cons(s, rest);-                                };-                                if (Data_Boolean.otherwise) {-                                    __tco_s = s + step | 0;-                                    __tco_e = e;-                                    __tco_step = step;-                                    __tco_rest = new Data_List_Types.Cons(s, rest);-                                    return;-                                };-                                throw new Error("Failed pattern match at Data.List line 139, column 31 - line 142, column 65: " + [ s.constructor.name, e.constructor.name, step.constructor.name, rest.constructor.name ]);-                            };-                            while (!__tco_done) {-                                __tco_result = __tco_loop(s, e, step, rest);-                                s = __tco_s;-                                e = __tco_e;-                                step = __tco_step;-                                rest = __tco_rest;-                            };-                            return __tco_result;-                        };-                    };-                };-            };-            return go(end)(start)((function () {-                var $195 = start > end;-                if ($195) {-                    return 1;-                };-                return -1 | 0;-            })())(Data_List_Types.Nil.value);-        };-        throw new Error("Failed pattern match at Data.List line 138, column 1 - line 142, column 65: " + [ start.constructor.name, end.constructor.name ]);-    };-};-var $$null = function (v) {-    if (v instanceof Data_List_Types.Nil) {-        return true;-    };-    return false;-};-var mapWithIndex = function (f) {-    return function (lst) {-        var go = function (__copy_v) {-            return function (__copy_v1) {-                return function (__copy_acc) {-                    var v = __copy_v;-                    var v1 = __copy_v1;-                    var acc = __copy_acc;-                    var __tco_done = false;-                    var __tco_result;-                    var __tco_v;-                    var __tco_v1;-                    var __tco_acc;-                    function __tco_loop(v, v1, acc) {-                        if (v1 instanceof Data_List_Types.Nil) {-                            __tco_done = true;-                            return acc;-                        };-                        if (v1 instanceof Data_List_Types.Cons) {-                            __tco_v = v + 1 | 0;-                            __tco_v1 = v1.value1;-                            __tco_acc = new Data_List_Types.Cons(f(v)(v1.value0), acc);-                            return;-                        };-                        throw new Error("Failed pattern match at Data.List line 424, column 22 - line 427, column 48: " + [ v.constructor.name, v1.constructor.name, acc.constructor.name ]);-                    };-                    while (!__tco_done) {-                        __tco_result = __tco_loop(v, v1, acc);-                        v = __tco_v;-                        v1 = __tco_v1;-                        acc = __tco_acc;-                    };-                    return __tco_result;-                };-            };-        };-        return reverse(go(0)(lst)(Data_List_Types.Nil.value));-    };-};-var mapMaybe = function (f) {-    var go = function (__copy_acc) {-        return function (__copy_v) {-            var acc = __copy_acc;-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_acc;-            var __tco_v;-            function __tco_loop(acc, v) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return reverse(acc);-                };-                if (v instanceof Data_List_Types.Cons) {-                    var v1 = f(v.value0);-                    if (v1 instanceof Data_Maybe.Nothing) {-                        __tco_acc = acc;-                        __tco_v = v.value1;-                        return;-                    };-                    if (v1 instanceof Data_Maybe.Just) {-                        __tco_acc = new Data_List_Types.Cons(v1.value0, acc);-                        __tco_v = v.value1;-                        return;-                    };-                    throw new Error("Failed pattern match at Data.List line 412, column 5 - line 414, column 32: " + [ v1.constructor.name ]);-                };-                throw new Error("Failed pattern match at Data.List line 408, column 14 - line 414, column 32: " + [ acc.constructor.name, v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(acc, v);-                acc = __tco_acc;-                v = __tco_v;-            };-            return __tco_result;-        };-    };-    return go(Data_List_Types.Nil.value);-};-var manyRec = function (dictMonadRec) {-    return function (dictAlternative) {-        return function (p) {-            var go = function (acc) {-                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())(Control_Alt.alt((dictAlternative.Plus1()).Alt0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Control_Monad_Rec_Class.Loop.create)(p))(Control_Applicative.pure(dictAlternative.Applicative0())(new Control_Monad_Rec_Class.Done(Data_Unit.unit))))(function (v) {-                    return Control_Applicative.pure(dictAlternative.Applicative0())(Data_Bifunctor.bimap(Control_Monad_Rec_Class.bifunctorStep)(function (v1) {-                        return new Data_List_Types.Cons(v1, acc);-                    })(function (v1) {-                        return reverse(acc);-                    })(v));-                });-            };-            return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(go)(Data_List_Types.Nil.value);-        };-    };-};-var someRec = function (dictMonadRec) {-    return function (dictAlternative) {-        return function (v) {-            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Data_List_Types.Cons.create)(v))(manyRec(dictMonadRec)(dictAlternative)(v));-        };-    };-};-var some = function (dictAlternative) {-    return function (dictLazy) {-        return function (v) {-            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Data_List_Types.Cons.create)(v))(Control_Lazy.defer(dictLazy)(function (v1) {-                return many(dictAlternative)(dictLazy)(v);-            }));-        };-    };-};-var many = function (dictAlternative) {-    return function (dictLazy) {-        return function (v) {-            return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(some(dictAlternative)(dictLazy)(v))(Control_Applicative.pure(dictAlternative.Applicative0())(Data_List_Types.Nil.value));-        };-    };-};-var length = Data_Foldable.foldl(Data_List_Types.foldableList)(function (acc) {-    return function (v) {-        return acc + 1 | 0;-    };-})(0);-var last = function (__copy_v) {-    var v = __copy_v;-    var __tco_done = false;-    var __tco_result;-    var __tco_v;-    function __tco_loop(v) {-        if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Nil) {-            __tco_done = true;-            return new Data_Maybe.Just(v.value0);-        };-        if (v instanceof Data_List_Types.Cons) {-            __tco_v = v.value1;-            return;-        };-        __tco_done = true;-        return Data_Maybe.Nothing.value;-    };-    while (!__tco_done) {-        __tco_result = __tco_loop(v);-        v = __tco_v;-    };-    return __tco_result;-};-var insertBy = function (v) {-    return function (x) {-        return function (v1) {-            if (v1 instanceof Data_List_Types.Nil) {-                return singleton(x);-            };-            if (v1 instanceof Data_List_Types.Cons) {-                var v2 = v(x)(v1.value0);-                if (v2 instanceof Data_Ordering.GT) {-                    return new Data_List_Types.Cons(v1.value0, insertBy(v)(x)(v1.value1));-                };-                return new Data_List_Types.Cons(x, v1);-            };-            throw new Error("Failed pattern match at Data.List line 210, column 1 - line 210, column 31: " + [ v.constructor.name, x.constructor.name, v1.constructor.name ]);-        };-    };-};-var insertAt = function (v) {-    return function (v1) {-        return function (v2) {-            if (v === 0) {-                return new Data_Maybe.Just(new Data_List_Types.Cons(v1, v2));-            };-            if (v2 instanceof Data_List_Types.Cons) {-                return Data_Functor.map(Data_Maybe.functorMaybe)(function (v3) {-                    return new Data_List_Types.Cons(v2.value0, v3);-                })(insertAt(v - 1 | 0)(v1)(v2.value1));-            };-            return Data_Maybe.Nothing.value;-        };-    };-};-var insert = function (dictOrd) {-    return insertBy(Data_Ord.compare(dictOrd));-};-var init = function (lst) {-    return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {-        return v.init;-    })(unsnoc(lst));-};-var index = function (__copy_v) {-    return function (__copy_v1) {-        var v = __copy_v;-        var v1 = __copy_v1;-        var __tco_done = false;-        var __tco_result;-        var __tco_v;-        var __tco_v1;-        function __tco_loop(v, v1) {-            if (v instanceof Data_List_Types.Nil) {-                __tco_done = true;-                return Data_Maybe.Nothing.value;-            };-            if (v instanceof Data_List_Types.Cons && v1 === 0) {-                __tco_done = true;-                return new Data_Maybe.Just(v.value0);-            };-            if (v instanceof Data_List_Types.Cons) {-                __tco_v = v.value1;-                __tco_v1 = v1 - 1 | 0;-                return;-            };-            throw new Error("Failed pattern match at Data.List line 275, column 1 - line 275, column 22: " + [ v.constructor.name, v1.constructor.name ]);-        };-        while (!__tco_done) {-            __tco_result = __tco_loop(v, v1);-            v = __tco_v;-            v1 = __tco_v1;-        };-        return __tco_result;-    };-};-var head = function (v) {-    if (v instanceof Data_List_Types.Nil) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Data_List_Types.Cons) {-        return new Data_Maybe.Just(v.value0);-    };-    throw new Error("Failed pattern match at Data.List line 224, column 1 - line 224, column 19: " + [ v.constructor.name ]);-};-var transpose = function (v) {-    if (v instanceof Data_List_Types.Nil) {-        return Data_List_Types.Nil.value;-    };-    if (v instanceof Data_List_Types.Cons && v.value0 instanceof Data_List_Types.Nil) {-        return transpose(v.value1);-    };-    if (v instanceof Data_List_Types.Cons && v.value0 instanceof Data_List_Types.Cons) {-        return new Data_List_Types.Cons(new Data_List_Types.Cons(v.value0.value0, mapMaybe(head)(v.value1)), transpose(new Data_List_Types.Cons(v.value0.value1, mapMaybe(tail)(v.value1))));-    };-    throw new Error("Failed pattern match at Data.List line 687, column 1 - line 687, column 20: " + [ v.constructor.name ]);-};-var groupBy = function (v) {-    return function (v1) {-        if (v1 instanceof Data_List_Types.Nil) {-            return Data_List_Types.Nil.value;-        };-        if (v1 instanceof Data_List_Types.Cons) {-            var v2 = span(v(v1.value0))(v1.value1);-            return new Data_List_Types.Cons(new Data_NonEmpty.NonEmpty(v1.value0, v2.init), groupBy(v)(v2.rest));-        };-        throw new Error("Failed pattern match at Data.List line 560, column 1 - line 560, column 20: " + [ v.constructor.name, v1.constructor.name ]);-    };-};-var group = function (dictEq) {-    return groupBy(Data_Eq.eq(dictEq));-};-var group$prime = function (dictOrd) {-    return function ($305) {-        return group(dictOrd.Eq0())(sort(dictOrd)($305));-    };-};-var fromFoldable = function (dictFoldable) {-    return Data_Foldable.foldr(dictFoldable)(Data_List_Types.Cons.create)(Data_List_Types.Nil.value);-};-var foldM = function (dictMonad) {-    return function (v) {-        return function (a) {-            return function (v1) {-                if (v1 instanceof Data_List_Types.Nil) {-                    return Control_Applicative.pure(dictMonad.Applicative0())(a);-                };-                if (v1 instanceof Data_List_Types.Cons) {-                    return Control_Bind.bind(dictMonad.Bind1())(v(a)(v1.value0))(function (a$prime) {-                        return foldM(dictMonad)(v)(a$prime)(v1.value1);-                    });-                };-                throw new Error("Failed pattern match at Data.List line 698, column 1 - line 698, column 23: " + [ v.constructor.name, a.constructor.name, v1.constructor.name ]);-            };-        };-    };-};-var findIndex = function (fn) {-    var go = function (__copy_v) {-        return function (__copy_v1) {-            var v = __copy_v;-            var v1 = __copy_v1;-            var __tco_done = false;-            var __tco_result;-            var __tco_v;-            var __tco_v1;-            function __tco_loop(v, v1) {-                if (v1 instanceof Data_List_Types.Cons) {-                    if (fn(v1.value0)) {-                        __tco_done = true;-                        return new Data_Maybe.Just(v);-                    };-                    if (Data_Boolean.otherwise) {-                        __tco_v = v + 1 | 0;-                        __tco_v1 = v1.value1;-                        return;-                    };-                };-                if (v1 instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return Data_Maybe.Nothing.value;-                };-                throw new Error("Failed pattern match at Data.List line 295, column 3 - line 296, column 44: " + [ v.constructor.name, v1.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(v, v1);-                v = __tco_v;-                v1 = __tco_v1;-            };-            return __tco_result;-        };-    };-    return go(0);-};-var findLastIndex = function (fn) {-    return function (xs) {-        return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {-            return (length(xs) - 1 | 0) - v | 0;-        })(findIndex(fn)(reverse(xs)));-    };-};-var filterM = function (dictMonad) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Data_List_Types.Nil) {-                return Control_Applicative.pure(dictMonad.Applicative0())(Data_List_Types.Nil.value);-            };-            if (v1 instanceof Data_List_Types.Cons) {-                return Control_Bind.bind(dictMonad.Bind1())(v(v1.value0))(function (v2) {-                    return Control_Bind.bind(dictMonad.Bind1())(filterM(dictMonad)(v)(v1.value1))(function (v3) {-                        return Control_Applicative.pure(dictMonad.Applicative0())((function () {-                            if (v2) {-                                return new Data_List_Types.Cons(v1.value0, v3);-                            };-                            return v3;-                        })());-                    });-                });-            };-            throw new Error("Failed pattern match at Data.List line 397, column 1 - line 397, column 25: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var filter = function (p) {-    var go = function (__copy_acc) {-        return function (__copy_v) {-            var acc = __copy_acc;-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_acc;-            var __tco_v;-            function __tco_loop(acc, v) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return reverse(acc);-                };-                if (v instanceof Data_List_Types.Cons) {-                    if (p(v.value0)) {-                        __tco_acc = new Data_List_Types.Cons(v.value0, acc);-                        __tco_v = v.value1;-                        return;-                    };-                    if (Data_Boolean.otherwise) {-                        __tco_acc = acc;-                        __tco_v = v.value1;-                        return;-                    };-                };-                throw new Error("Failed pattern match at Data.List line 381, column 12 - line 386, column 28: " + [ acc.constructor.name, v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(acc, v);-                acc = __tco_acc;-                v = __tco_v;-            };-            return __tco_result;-        };-    };-    return go(Data_List_Types.Nil.value);-};-var intersectBy = function (v) {-    return function (v1) {-        return function (v2) {-            if (v1 instanceof Data_List_Types.Nil) {-                return Data_List_Types.Nil.value;-            };-            if (v2 instanceof Data_List_Types.Nil) {-                return Data_List_Types.Nil.value;-            };-            return filter(function (x) {-                return Data_Foldable.any(Data_List_Types.foldableList)(Data_HeytingAlgebra.heytingAlgebraBoolean)(v(x))(v2);-            })(v1);-        };-    };-};-var intersect = function (dictEq) {-    return intersectBy(Data_Eq.eq(dictEq));-};-var nubBy = function (v) {-    return function (v1) {-        if (v1 instanceof Data_List_Types.Nil) {-            return Data_List_Types.Nil.value;-        };-        if (v1 instanceof Data_List_Types.Cons) {-            return new Data_List_Types.Cons(v1.value0, nubBy(v)(filter(function (y) {-                return !v(v1.value0)(y);-            })(v1.value1)));-        };-        throw new Error("Failed pattern match at Data.List line 579, column 1 - line 579, column 22: " + [ v.constructor.name, v1.constructor.name ]);-    };-};-var nub = function (dictEq) {-    return nubBy(Data_Eq.eq(dictEq));-};-var elemLastIndex = function (dictEq) {-    return function (x) {-        return findLastIndex(function (v) {-            return Data_Eq.eq(dictEq)(v)(x);-        });-    };-};-var elemIndex = function (dictEq) {-    return function (x) {-        return findIndex(function (v) {-            return Data_Eq.eq(dictEq)(v)(x);-        });-    };-};-var dropWhile = function (p) {-    var go = function (__copy_v) {-        var v = __copy_v;-        var __tco_done = false;-        var __tco_result;-        var __tco_v;-        function __tco_loop(v) {-            if (v instanceof Data_List_Types.Cons && p(v.value0)) {-                __tco_v = v.value1;-                return;-            };-            __tco_done = true;-            return v;-        };-        while (!__tco_done) {-            __tco_result = __tco_loop(v);-            v = __tco_v;-        };-        return __tco_result;-    };-    return go;-};-var drop = function (__copy_v) {-    return function (__copy_v1) {-        var v = __copy_v;-        var v1 = __copy_v1;-        var __tco_done = false;-        var __tco_result;-        var __tco_v;-        var __tco_v1;-        function __tco_loop(v, v1) {-            if (v === 0) {-                __tco_done = true;-                return v1;-            };-            if (v1 instanceof Data_List_Types.Nil) {-                __tco_done = true;-                return Data_List_Types.Nil.value;-            };-            if (v1 instanceof Data_List_Types.Cons) {-                __tco_v = v - 1 | 0;-                __tco_v1 = v1.value1;-                return;-            };-            throw new Error("Failed pattern match at Data.List line 505, column 1 - line 505, column 15: " + [ v.constructor.name, v1.constructor.name ]);-        };-        while (!__tco_done) {-            __tco_result = __tco_loop(v, v1);-            v = __tco_v;-            v1 = __tco_v1;-        };-        return __tco_result;-    };-};-var slice = function (start) {-    return function (end) {-        return function (xs) {-            return take(end - start | 0)(drop(start)(xs));-        };-    };-};-var deleteBy = function (v) {-    return function (v1) {-        return function (v2) {-            if (v2 instanceof Data_List_Types.Nil) {-                return Data_List_Types.Nil.value;-            };-            if (v2 instanceof Data_List_Types.Cons && v(v1)(v2.value0)) {-                return v2.value1;-            };-            if (v2 instanceof Data_List_Types.Cons) {-                return new Data_List_Types.Cons(v2.value0, deleteBy(v)(v1)(v2.value1));-            };-            throw new Error("Failed pattern match at Data.List line 606, column 1 - line 606, column 23: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-        };-    };-};-var unionBy = function (eq) {-    return function (xs) {-        return function (ys) {-            return Data_Semigroup.append(Data_List_Types.semigroupList)(xs)(Data_Foldable.foldl(Data_List_Types.foldableList)(Data_Function.flip(deleteBy(eq)))(nubBy(eq)(ys))(xs));-        };-    };-};-var union = function (dictEq) {-    return unionBy(Data_Eq.eq(dictEq));-};-var deleteAt = function (v) {-    return function (v1) {-        if (v === 0 && v1 instanceof Data_List_Types.Cons) {-            return new Data_Maybe.Just(v1.value1);-        };-        if (v1 instanceof Data_List_Types.Cons) {-            return Data_Functor.map(Data_Maybe.functorMaybe)(function (v2) {-                return new Data_List_Types.Cons(v1.value0, v2);-            })(deleteAt(v - 1 | 0)(v1.value1));-        };-        return Data_Maybe.Nothing.value;-    };-};-var $$delete = function (dictEq) {-    return deleteBy(Data_Eq.eq(dictEq));-};-var difference = function (dictEq) {-    return Data_Foldable.foldl(Data_List_Types.foldableList)(Data_Function.flip($$delete(dictEq)));-};-var concatMap = Data_Function.flip(Control_Bind.bind(Data_List_Types.bindList));-var concat = function (v) {-    return Control_Bind.bind(Data_List_Types.bindList)(v)(Control_Category.id(Control_Category.categoryFn));-};-var catMaybes = mapMaybe(Control_Category.id(Control_Category.categoryFn));-var alterAt = function (v) {-    return function (v1) {-        return function (v2) {-            if (v === 0 && v2 instanceof Data_List_Types.Cons) {-                return Data_Maybe.Just.create((function () {-                    var v3 = v1(v2.value0);-                    if (v3 instanceof Data_Maybe.Nothing) {-                        return v2.value1;-                    };-                    if (v3 instanceof Data_Maybe.Just) {-                        return new Data_List_Types.Cons(v3.value0, v2.value1);-                    };-                    throw new Error("Failed pattern match at Data.List line 345, column 3 - line 347, column 23: " + [ v3.constructor.name ]);-                })());-            };-            if (v2 instanceof Data_List_Types.Cons) {-                return Data_Functor.map(Data_Maybe.functorMaybe)(function (v3) {-                    return new Data_List_Types.Cons(v2.value0, v3);-                })(alterAt(v - 1 | 0)(v1)(v2.value1));-            };-            return Data_Maybe.Nothing.value;-        };-    };-};-var modifyAt = function (n) {-    return function (f) {-        return alterAt(n)(function ($306) {-            return Data_Maybe.Just.create(f($306));-        });-    };-};-module.exports = {-    alterAt: alterAt, -    catMaybes: catMaybes, -    concat: concat, -    concatMap: concatMap, -    "delete": $$delete, -    deleteAt: deleteAt, -    deleteBy: deleteBy, -    difference: difference, -    drop: drop, -    dropWhile: dropWhile, -    elemIndex: elemIndex, -    elemLastIndex: elemLastIndex, -    filter: filter, -    filterM: filterM, -    findIndex: findIndex, -    findLastIndex: findLastIndex, -    foldM: foldM, -    fromFoldable: fromFoldable, -    group: group, -    "group'": group$prime, -    groupBy: groupBy, -    head: head, -    index: index, -    init: init, -    insert: insert, -    insertAt: insertAt, -    insertBy: insertBy, -    intersect: intersect, -    intersectBy: intersectBy, -    last: last, -    length: length, -    many: many, -    manyRec: manyRec, -    mapMaybe: mapMaybe, -    mapWithIndex: mapWithIndex, -    modifyAt: modifyAt, -    nub: nub, -    nubBy: nubBy, -    "null": $$null, -    range: range, -    reverse: reverse, -    singleton: singleton, -    slice: slice, -    snoc: snoc, -    some: some, -    someRec: someRec, -    sort: sort, -    sortBy: sortBy, -    span: span, -    tail: tail, -    take: take, -    takeWhile: takeWhile, -    toUnfoldable: toUnfoldable, -    transpose: transpose, -    uncons: uncons, -    union: union, -    unionBy: unionBy, -    unsnoc: unsnoc, -    unzip: unzip, -    updateAt: updateAt, -    zip: zip, -    zipWith: zipWith, -    zipWithA: zipWithA-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Lazy":50,"../Control.Monad.Rec.Class":77,"../Control.Semigroupoid":92,"../Data.Bifunctor":127,"../Data.Boolean":129,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.NonEmpty":210,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Data.Unit":249,"../Prelude":268}],195:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_List = require("../Data.List");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Partial_Unsafe = require("../Partial.Unsafe");-var Prelude = require("../Prelude");-var Leaf = (function () {-    function Leaf() {--    };-    Leaf.value = new Leaf();-    return Leaf;-})();-var Two = (function () {-    function Two(value0, value1, value2, value3) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-        this.value3 = value3;-    };-    Two.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return function (value3) {-                    return new Two(value0, value1, value2, value3);-                };-            };-        };-    };-    return Two;-})();-var Three = (function () {-    function Three(value0, value1, value2, value3, value4, value5, value6) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-        this.value3 = value3;-        this.value4 = value4;-        this.value5 = value5;-        this.value6 = value6;-    };-    Three.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return function (value3) {-                    return function (value4) {-                        return function (value5) {-                            return function (value6) {-                                return new Three(value0, value1, value2, value3, value4, value5, value6);-                            };-                        };-                    };-                };-            };-        };-    };-    return Three;-})();-var TwoLeft = (function () {-    function TwoLeft(value0, value1, value2) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-    };-    TwoLeft.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return new TwoLeft(value0, value1, value2);-            };-        };-    };-    return TwoLeft;-})();-var TwoRight = (function () {-    function TwoRight(value0, value1, value2) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-    };-    TwoRight.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return new TwoRight(value0, value1, value2);-            };-        };-    };-    return TwoRight;-})();-var ThreeLeft = (function () {-    function ThreeLeft(value0, value1, value2, value3, value4, value5) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-        this.value3 = value3;-        this.value4 = value4;-        this.value5 = value5;-    };-    ThreeLeft.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return function (value3) {-                    return function (value4) {-                        return function (value5) {-                            return new ThreeLeft(value0, value1, value2, value3, value4, value5);-                        };-                    };-                };-            };-        };-    };-    return ThreeLeft;-})();-var ThreeMiddle = (function () {-    function ThreeMiddle(value0, value1, value2, value3, value4, value5) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-        this.value3 = value3;-        this.value4 = value4;-        this.value5 = value5;-    };-    ThreeMiddle.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return function (value3) {-                    return function (value4) {-                        return function (value5) {-                            return new ThreeMiddle(value0, value1, value2, value3, value4, value5);-                        };-                    };-                };-            };-        };-    };-    return ThreeMiddle;-})();-var ThreeRight = (function () {-    function ThreeRight(value0, value1, value2, value3, value4, value5) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-        this.value3 = value3;-        this.value4 = value4;-        this.value5 = value5;-    };-    ThreeRight.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return function (value3) {-                    return function (value4) {-                        return function (value5) {-                            return new ThreeRight(value0, value1, value2, value3, value4, value5);-                        };-                    };-                };-            };-        };-    };-    return ThreeRight;-})();-var KickUp = (function () {-    function KickUp(value0, value1, value2, value3) {-        this.value0 = value0;-        this.value1 = value1;-        this.value2 = value2;-        this.value3 = value3;-    };-    KickUp.create = function (value0) {-        return function (value1) {-            return function (value2) {-                return function (value3) {-                    return new KickUp(value0, value1, value2, value3);-                };-            };-        };-    };-    return KickUp;-})();-var values = function (v) {-    if (v instanceof Leaf) {-        return Data_List_Types.Nil.value;-    };-    if (v instanceof Two) {-        return Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value2))(values(v.value3)));-    };-    if (v instanceof Three) {-        return Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value2))(Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value3))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value5))(values(v.value6)))));-    };-    throw new Error("Failed pattern match at Data.Map line 425, column 1 - line 425, column 18: " + [ v.constructor.name ]);-};-var size = function ($673) {-    return Data_List.length(values($673));-};-var singleton = function (k) {-    return function (v) {-        return new Two(Leaf.value, k, v, Leaf.value);-    };-};-var toAscUnfoldable = function (dictUnfoldable) {-    return function (m) {-        var go = function (__copy_v) {-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_v;-            function __tco_loop(v) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return Data_Maybe.Nothing.value;-                };-                if (v instanceof Data_List_Types.Cons) {-                    if (v.value0 instanceof Leaf) {-                        __tco_v = v.value1;-                        return;-                    };-                    if (v.value0 instanceof Two && (v.value0.value0 instanceof Leaf && v.value0.value3 instanceof Leaf)) {-                        __tco_done = true;-                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), v.value1));-                    };-                    if (v.value0 instanceof Two && v.value0.value0 instanceof Leaf) {-                        __tco_done = true;-                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(v.value0.value3, v.value1)));-                    };-                    if (v.value0 instanceof Two) {-                        __tco_v = new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(singleton(v.value0.value1)(v.value0.value2), new Data_List_Types.Cons(v.value0.value3, v.value1)));-                        return;-                    };-                    if (v.value0 instanceof Three) {-                        __tco_v = new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(singleton(v.value0.value1)(v.value0.value2), new Data_List_Types.Cons(v.value0.value3, new Data_List_Types.Cons(singleton(v.value0.value4)(v.value0.value5), new Data_List_Types.Cons(v.value0.value6, v.value1)))));-                        return;-                    };-                    throw new Error("Failed pattern match at Data.Map line 406, column 18 - line 415, column 71: " + [ v.value0.constructor.name ]);-                };-                throw new Error("Failed pattern match at Data.Map line 404, column 21 - line 415, column 71: " + [ v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(v);-                v = __tco_v;-            };-            return __tco_result;-        };-        return Data_Unfoldable.unfoldr(dictUnfoldable)(go)(new Data_List_Types.Cons(m, Data_List_Types.Nil.value));-    };-};-var toAscArray = toAscUnfoldable(Data_Unfoldable.unfoldableArray);-var toUnfoldable = function (dictUnfoldable) {-    return function (m) {-        var go = function (__copy_v) {-            var v = __copy_v;-            var __tco_done = false;-            var __tco_result;-            var __tco_v;-            function __tco_loop(v) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return Data_Maybe.Nothing.value;-                };-                if (v instanceof Data_List_Types.Cons) {-                    if (v.value0 instanceof Leaf) {-                        __tco_v = v.value1;-                        return;-                    };-                    if (v.value0 instanceof Two) {-                        __tco_done = true;-                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(v.value0.value3, v.value1))));-                    };-                    if (v.value0 instanceof Three) {-                        __tco_done = true;-                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(singleton(v.value0.value4)(v.value0.value5), new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(v.value0.value3, new Data_List_Types.Cons(v.value0.value6, v.value1))))));-                    };-                    throw new Error("Failed pattern match at Data.Map line 395, column 18 - line 400, column 77: " + [ v.value0.constructor.name ]);-                };-                throw new Error("Failed pattern match at Data.Map line 393, column 18 - line 400, column 77: " + [ v.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(v);-                v = __tco_v;-            };-            return __tco_result;-        };-        return Data_Unfoldable.unfoldr(dictUnfoldable)(go)(new Data_List_Types.Cons(m, Data_List_Types.Nil.value));-    };-};-var showTree = function (dictShow) {-    return function (dictShow1) {-        return function (v) {-            if (v instanceof Leaf) {-                return "Leaf";-            };-            if (v instanceof Two) {-                return "Two (" + (showTree(dictShow)(dictShow1)(v.value0) + (") (" + (Data_Show.show(dictShow)(v.value1) + (") (" + (Data_Show.show(dictShow1)(v.value2) + (") (" + (showTree(dictShow)(dictShow1)(v.value3) + ")")))))));-            };-            if (v instanceof Three) {-                return "Three (" + (showTree(dictShow)(dictShow1)(v.value0) + (") (" + (Data_Show.show(dictShow)(v.value1) + (") (" + (Data_Show.show(dictShow1)(v.value2) + (") (" + (showTree(dictShow)(dictShow1)(v.value3) + (") (" + (Data_Show.show(dictShow)(v.value4) + (") (" + (Data_Show.show(dictShow1)(v.value5) + (") (" + (showTree(dictShow)(dictShow1)(v.value6) + ")")))))))))))));-            };-            throw new Error("Failed pattern match at Data.Map line 109, column 1 - line 110, column 1: " + [ v.constructor.name ]);-        };-    };-};-var showMap = function (dictShow) {-    return function (dictShow1) {-        return new Data_Show.Show(function (m) {-            return "(fromFoldable " + (Data_Show.show(Data_Show.showArray(Data_Tuple.showTuple(dictShow)(dictShow1)))(toAscArray(m)) + ")");-        });-    };-};-var mapWithKey = function (v) {-    return function (v1) {-        if (v1 instanceof Leaf) {-            return Leaf.value;-        };-        if (v1 instanceof Two) {-            return new Two(mapWithKey(v)(v1.value0), v1.value1, v(v1.value1)(v1.value2), mapWithKey(v)(v1.value3));-        };-        if (v1 instanceof Three) {-            return new Three(mapWithKey(v)(v1.value0), v1.value1, v(v1.value1)(v1.value2), mapWithKey(v)(v1.value3), v1.value4, v(v1.value4)(v1.value5), mapWithKey(v)(v1.value6));-        };-        throw new Error("Failed pattern match at Data.Map line 451, column 1 - line 451, column 25: " + [ v.constructor.name, v1.constructor.name ]);-    };-};-var lookupLE = function (dictOrd) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Leaf) {-                return Data_Maybe.Nothing.value;-            };-            if (v1 instanceof Two) {-                var v2 = Data_Ord.compare(dictOrd)(v)(v1.value1);-                if (v2 instanceof Data_Ordering.EQ) {-                    return new Data_Maybe.Just({-                        key: v1.value1, -                        value: v1.value2-                    });-                };-                if (v2 instanceof Data_Ordering.GT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value1, -                        value: v1.value2-                    })(lookupLE(dictOrd)(v)(v1.value3)));-                };-                if (v2 instanceof Data_Ordering.LT) {-                    return lookupLE(dictOrd)(v)(v1.value0);-                };-                throw new Error("Failed pattern match at Data.Map line 176, column 37 - line 179, column 24: " + [ v2.constructor.name ]);-            };-            if (v1 instanceof Three) {-                var v3 = Data_Ord.compare(dictOrd)(v)(v1.value4);-                if (v3 instanceof Data_Ordering.EQ) {-                    return new Data_Maybe.Just({-                        key: v1.value4, -                        value: v1.value5-                    });-                };-                if (v3 instanceof Data_Ordering.GT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value4, -                        value: v1.value5-                    })(lookupLE(dictOrd)(v)(v1.value6)));-                };-                if (v3 instanceof Data_Ordering.LT) {-                    return lookupLE(dictOrd)(v)(new Two(v1.value0, v1.value1, v1.value2, v1.value3));-                };-                throw new Error("Failed pattern match at Data.Map line 180, column 49 - line 183, column 40: " + [ v3.constructor.name ]);-            };-            throw new Error("Failed pattern match at Data.Map line 175, column 1 - line 175, column 26: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var lookupGE = function (dictOrd) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Leaf) {-                return Data_Maybe.Nothing.value;-            };-            if (v1 instanceof Two) {-                var v2 = Data_Ord.compare(dictOrd)(v)(v1.value1);-                if (v2 instanceof Data_Ordering.EQ) {-                    return new Data_Maybe.Just({-                        key: v1.value1, -                        value: v1.value2-                    });-                };-                if (v2 instanceof Data_Ordering.LT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value1, -                        value: v1.value2-                    })(lookupGE(dictOrd)(v)(v1.value0)));-                };-                if (v2 instanceof Data_Ordering.GT) {-                    return lookupGE(dictOrd)(v)(v1.value3);-                };-                throw new Error("Failed pattern match at Data.Map line 200, column 37 - line 203, column 25: " + [ v2.constructor.name ]);-            };-            if (v1 instanceof Three) {-                var v3 = Data_Ord.compare(dictOrd)(v)(v1.value1);-                if (v3 instanceof Data_Ordering.EQ) {-                    return new Data_Maybe.Just({-                        key: v1.value1, -                        value: v1.value2-                    });-                };-                if (v3 instanceof Data_Ordering.LT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value1, -                        value: v1.value2-                    })(lookupGE(dictOrd)(v)(v1.value0)));-                };-                if (v3 instanceof Data_Ordering.GT) {-                    return lookupGE(dictOrd)(v)(new Two(v1.value3, v1.value4, v1.value5, v1.value6));-                };-                throw new Error("Failed pattern match at Data.Map line 204, column 49 - line 207, column 41: " + [ v3.constructor.name ]);-            };-            throw new Error("Failed pattern match at Data.Map line 199, column 1 - line 199, column 26: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var lookup = function (dictOrd) {-    return function (k) {-        return function (tree) {-            if (tree instanceof Leaf) {-                return Data_Maybe.Nothing.value;-            };-            var comp = Data_Ord.compare(dictOrd);-            var __unused = function (dictPartial1) {-                return function ($dollar45) {-                    return $dollar45;-                };-            };-            return __unused()((function () {-                if (tree instanceof Two) {-                    var v1 = comp(k)(tree.value1);-                    if (v1 instanceof Data_Ordering.EQ) {-                        return new Data_Maybe.Just(tree.value2);-                    };-                    if (v1 instanceof Data_Ordering.LT) {-                        return lookup(dictOrd)(k)(tree.value0);-                    };-                    return lookup(dictOrd)(k)(tree.value3);-                };-                if (tree instanceof Three) {-                    var v = comp(k)(tree.value1);-                    if (v instanceof Data_Ordering.EQ) {-                        return new Data_Maybe.Just(tree.value2);-                    };-                    var v3 = comp(k)(tree.value4);-                    if (v3 instanceof Data_Ordering.EQ) {-                        return new Data_Maybe.Just(tree.value5);-                    };-                    if (v instanceof Data_Ordering.LT) {-                        return lookup(dictOrd)(k)(tree.value0);-                    };-                    if (v3 instanceof Data_Ordering.GT) {-                        return lookup(dictOrd)(k)(tree.value6);-                    };-                    return lookup(dictOrd)(k)(tree.value3);-                };-                throw new Error("Failed pattern match at Data.Map line 156, column 10 - line 170, column 39: " + [ tree.constructor.name ]);-            })());-        };-    };-};-var member = function (dictOrd) {-    return function (k) {-        return function (m) {-            return Data_Maybe.isJust(lookup(dictOrd)(k)(m));-        };-    };-};-var keys = function (v) {-    if (v instanceof Leaf) {-        return Data_List_Types.Nil.value;-    };-    if (v instanceof Two) {-        return Data_Semigroup.append(Data_List_Types.semigroupList)(keys(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value1))(keys(v.value3)));-    };-    if (v instanceof Three) {-        return Data_Semigroup.append(Data_List_Types.semigroupList)(keys(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value1))(Data_Semigroup.append(Data_List_Types.semigroupList)(keys(v.value3))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value4))(keys(v.value6)))));-    };-    throw new Error("Failed pattern match at Data.Map line 419, column 1 - line 419, column 16: " + [ v.constructor.name ]);-};-var isEmpty = function (v) {-    if (v instanceof Leaf) {-        return true;-    };-    return false;-};-var functorMap = new Data_Functor.Functor(function (v) {-    return function (v1) {-        if (v1 instanceof Leaf) {-            return Leaf.value;-        };-        if (v1 instanceof Two) {-            return new Two(Data_Functor.map(functorMap)(v)(v1.value0), v1.value1, v(v1.value2), Data_Functor.map(functorMap)(v)(v1.value3));-        };-        if (v1 instanceof Three) {-            return new Three(Data_Functor.map(functorMap)(v)(v1.value0), v1.value1, v(v1.value2), Data_Functor.map(functorMap)(v)(v1.value3), v1.value4, v(v1.value5), Data_Functor.map(functorMap)(v)(v1.value6));-        };-        throw new Error("Failed pattern match at Data.Map line 81, column 3 - line 81, column 20: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var fromZipper = function (__copy_dictOrd) {-    return function (__copy_v) {-        return function (__copy_tree) {-            var dictOrd = __copy_dictOrd;-            var v = __copy_v;-            var tree = __copy_tree;-            var __tco_done = false;-            var __tco_result;-            var __tco_dictOrd;-            var __tco_v;-            var __tco_tree;-            function __tco_loop(dictOrd, v, tree) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return tree;-                };-                if (v instanceof Data_List_Types.Cons) {-                    if (v.value0 instanceof TwoLeft) {-                        __tco_dictOrd = dictOrd;-                        __tco_v = v.value1;-                        __tco_tree = new Two(tree, v.value0.value0, v.value0.value1, v.value0.value2);-                        return;-                    };-                    if (v.value0 instanceof TwoRight) {-                        __tco_dictOrd = dictOrd;-                        __tco_v = v.value1;-                        __tco_tree = new Two(v.value0.value0, v.value0.value1, v.value0.value2, tree);-                        return;-                    };-                    if (v.value0 instanceof ThreeLeft) {-                        __tco_dictOrd = dictOrd;-                        __tco_v = v.value1;-                        __tco_tree = new Three(tree, v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5);-                        return;-                    };-                    if (v.value0 instanceof ThreeMiddle) {-                        __tco_dictOrd = dictOrd;-                        __tco_v = v.value1;-                        __tco_tree = new Three(v.value0.value0, v.value0.value1, v.value0.value2, tree, v.value0.value3, v.value0.value4, v.value0.value5);-                        return;-                    };-                    if (v.value0 instanceof ThreeRight) {-                        __tco_dictOrd = dictOrd;-                        __tco_v = v.value1;-                        __tco_tree = new Three(v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5, tree);-                        return;-                    };-                    throw new Error("Failed pattern match at Data.Map line 247, column 3 - line 252, column 88: " + [ v.value0.constructor.name ]);-                };-                throw new Error("Failed pattern match at Data.Map line 245, column 1 - line 245, column 27: " + [ v.constructor.name, tree.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(dictOrd, v, tree);-                dictOrd = __tco_dictOrd;-                v = __tco_v;-                tree = __tco_tree;-            };-            return __tco_result;-        };-    };-};-var insert = function (dictOrd) {-    var up = function (__copy_v) {-        return function (__copy_v1) {-            var v = __copy_v;-            var v1 = __copy_v1;-            var __tco_done = false;-            var __tco_result;-            var __tco_v;-            var __tco_v1;-            function __tco_loop(v, v1) {-                if (v instanceof Data_List_Types.Nil) {-                    __tco_done = true;-                    return new Two(v1.value0, v1.value1, v1.value2, v1.value3);-                };-                if (v instanceof Data_List_Types.Cons) {-                    if (v.value0 instanceof TwoLeft) {-                        __tco_done = true;-                        return fromZipper(dictOrd)(v.value1)(new Three(v1.value0, v1.value1, v1.value2, v1.value3, v.value0.value0, v.value0.value1, v.value0.value2));-                    };-                    if (v.value0 instanceof TwoRight) {-                        __tco_done = true;-                        return fromZipper(dictOrd)(v.value1)(new Three(v.value0.value0, v.value0.value1, v.value0.value2, v1.value0, v1.value1, v1.value2, v1.value3));-                    };-                    if (v.value0 instanceof ThreeLeft) {-                        __tco_v = v.value1;-                        __tco_v1 = new KickUp(new Two(v1.value0, v1.value1, v1.value2, v1.value3), v.value0.value0, v.value0.value1, new Two(v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5));-                        return;-                    };-                    if (v.value0 instanceof ThreeMiddle) {-                        __tco_v = v.value1;-                        __tco_v1 = new KickUp(new Two(v.value0.value0, v.value0.value1, v.value0.value2, v1.value0), v1.value1, v1.value2, new Two(v1.value3, v.value0.value3, v.value0.value4, v.value0.value5));-                        return;-                    };-                    if (v.value0 instanceof ThreeRight) {-                        __tco_v = v.value1;-                        __tco_v1 = new KickUp(new Two(v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3), v.value0.value4, v.value0.value5, new Two(v1.value0, v1.value1, v1.value2, v1.value3));-                        return;-                    };-                    throw new Error("Failed pattern match at Data.Map line 283, column 5 - line 288, column 104: " + [ v.value0.constructor.name, v1.constructor.name ]);-                };-                throw new Error("Failed pattern match at Data.Map line 281, column 3 - line 281, column 54: " + [ v.constructor.name, v1.constructor.name ]);-            };-            while (!__tco_done) {-                __tco_result = __tco_loop(v, v1);-                v = __tco_v;-                v1 = __tco_v1;-            };-            return __tco_result;-        };-    };-    var comp = Data_Ord.compare(dictOrd);-    var down = function (__copy_ctx) {-        return function (__copy_k) {-            return function (__copy_v) {-                return function (__copy_v1) {-                    var ctx = __copy_ctx;-                    var k = __copy_k;-                    var v = __copy_v;-                    var v1 = __copy_v1;-                    var __tco_done = false;-                    var __tco_result;-                    var __tco_ctx;-                    var __tco_k;-                    var __tco_v;-                    var __tco_v1;-                    function __tco_loop(ctx, k, v, v1) {-                        if (v1 instanceof Leaf) {-                            __tco_done = true;-                            return up(ctx)(new KickUp(Leaf.value, k, v, Leaf.value));-                        };-                        if (v1 instanceof Two) {-                            var v3 = comp(k)(v1.value1);-                            if (v3 instanceof Data_Ordering.EQ) {-                                __tco_done = true;-                                return fromZipper(dictOrd)(ctx)(new Two(v1.value0, k, v, v1.value3));-                            };-                            if (v3 instanceof Data_Ordering.LT) {-                                __tco_ctx = new Data_List_Types.Cons(new TwoLeft(v1.value1, v1.value2, v1.value3), ctx);-                                __tco_k = k;-                                __tco_v = v;-                                __tco_v1 = v1.value0;-                                return;-                            };-                            __tco_ctx = new Data_List_Types.Cons(new TwoRight(v1.value0, v1.value1, v1.value2), ctx);-                            __tco_k = k;-                            __tco_v = v;-                            __tco_v1 = v1.value3;-                            return;-                        };-                        if (v1 instanceof Three) {-                            var v3 = comp(k)(v1.value1);-                            if (v3 instanceof Data_Ordering.EQ) {-                                __tco_done = true;-                                return fromZipper(dictOrd)(ctx)(new Three(v1.value0, k, v, v1.value3, v1.value4, v1.value5, v1.value6));-                            };-                            var v4 = comp(k)(v1.value4);-                            if (v4 instanceof Data_Ordering.EQ) {-                                __tco_done = true;-                                return fromZipper(dictOrd)(ctx)(new Three(v1.value0, v1.value1, v1.value2, v1.value3, k, v, v1.value6));-                            };-                            if (v3 instanceof Data_Ordering.LT) {-                                __tco_ctx = new Data_List_Types.Cons(new ThreeLeft(v1.value1, v1.value2, v1.value3, v1.value4, v1.value5, v1.value6), ctx);-                                __tco_k = k;-                                __tco_v = v;-                                __tco_v1 = v1.value0;-                                return;-                            };-                            if (v3 instanceof Data_Ordering.GT && v4 instanceof Data_Ordering.LT) {-                                __tco_ctx = new Data_List_Types.Cons(new ThreeMiddle(v1.value0, v1.value1, v1.value2, v1.value4, v1.value5, v1.value6), ctx);-                                __tco_k = k;-                                __tco_v = v;-                                __tco_v1 = v1.value3;-                                return;-                            };-                            __tco_ctx = new Data_List_Types.Cons(new ThreeRight(v1.value0, v1.value1, v1.value2, v1.value3, v1.value4, v1.value5), ctx);-                            __tco_k = k;-                            __tco_v = v;-                            __tco_v1 = v1.value6;-                            return;-                        };-                        throw new Error("Failed pattern match at Data.Map line 264, column 3 - line 264, column 52: " + [ ctx.constructor.name, k.constructor.name, v.constructor.name, v1.constructor.name ]);-                    };-                    while (!__tco_done) {-                        __tco_result = __tco_loop(ctx, k, v, v1);-                        ctx = __tco_ctx;-                        k = __tco_k;-                        v = __tco_v;-                        v1 = __tco_v1;-                    };-                    return __tco_result;-                };-            };-        };-    };-    return down(Data_List_Types.Nil.value);-};-var pop = function (dictOrd) {-    var up = function (ctxs) {-        return function (tree) {-            if (ctxs instanceof Data_List_Types.Nil) {-                return tree;-            };-            if (ctxs instanceof Data_List_Types.Cons) {-                var __unused = function (dictPartial1) {-                    return function ($dollar53) {-                        return $dollar53;-                    };-                };-                return __unused()((function () {-                    if (ctxs.value0 instanceof TwoLeft && (ctxs.value0.value2 instanceof Leaf && tree instanceof Leaf)) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(Leaf.value, ctxs.value0.value0, ctxs.value0.value1, Leaf.value));-                    };-                    if (ctxs.value0 instanceof TwoRight && (ctxs.value0.value0 instanceof Leaf && tree instanceof Leaf)) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(Leaf.value, ctxs.value0.value1, ctxs.value0.value2, Leaf.value));-                    };-                    if (ctxs.value0 instanceof TwoLeft && ctxs.value0.value2 instanceof Two) {-                        return up(ctxs.value1)(new Three(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0, ctxs.value0.value2.value1, ctxs.value0.value2.value2, ctxs.value0.value2.value3));-                    };-                    if (ctxs.value0 instanceof TwoRight && ctxs.value0.value0 instanceof Two) {-                        return up(ctxs.value1)(new Three(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3, ctxs.value0.value1, ctxs.value0.value2, tree));-                    };-                    if (ctxs.value0 instanceof TwoLeft && ctxs.value0.value2 instanceof Three) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(new Two(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0), ctxs.value0.value2.value1, ctxs.value0.value2.value2, new Two(ctxs.value0.value2.value3, ctxs.value0.value2.value4, ctxs.value0.value2.value5, ctxs.value0.value2.value6)));-                    };-                    if (ctxs.value0 instanceof TwoRight && ctxs.value0.value0 instanceof Three) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(new Two(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3), ctxs.value0.value0.value4, ctxs.value0.value0.value5, new Two(ctxs.value0.value0.value6, ctxs.value0.value1, ctxs.value0.value2, tree)));-                    };-                    if (ctxs.value0 instanceof ThreeLeft && (ctxs.value0.value2 instanceof Leaf && (ctxs.value0.value5 instanceof Leaf && tree instanceof Leaf))) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(Leaf.value, ctxs.value0.value0, ctxs.value0.value1, Leaf.value, ctxs.value0.value3, ctxs.value0.value4, Leaf.value));-                    };-                    if (ctxs.value0 instanceof ThreeMiddle && (ctxs.value0.value0 instanceof Leaf && (ctxs.value0.value5 instanceof Leaf && tree instanceof Leaf))) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(Leaf.value, ctxs.value0.value1, ctxs.value0.value2, Leaf.value, ctxs.value0.value3, ctxs.value0.value4, Leaf.value));-                    };-                    if (ctxs.value0 instanceof ThreeRight && (ctxs.value0.value0 instanceof Leaf && (ctxs.value0.value3 instanceof Leaf && tree instanceof Leaf))) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(Leaf.value, ctxs.value0.value1, ctxs.value0.value2, Leaf.value, ctxs.value0.value4, ctxs.value0.value5, Leaf.value));-                    };-                    if (ctxs.value0 instanceof ThreeLeft && ctxs.value0.value2 instanceof Two) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(new Three(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0, ctxs.value0.value2.value1, ctxs.value0.value2.value2, ctxs.value0.value2.value3), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));-                    };-                    if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value0 instanceof Two) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(new Three(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3, ctxs.value0.value1, ctxs.value0.value2, tree), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));-                    };-                    if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value5 instanceof Two) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Three(tree, ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5.value0, ctxs.value0.value5.value1, ctxs.value0.value5.value2, ctxs.value0.value5.value3)));-                    };-                    if (ctxs.value0 instanceof ThreeRight && ctxs.value0.value3 instanceof Two) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Two(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Three(ctxs.value0.value3.value0, ctxs.value0.value3.value1, ctxs.value0.value3.value2, ctxs.value0.value3.value3, ctxs.value0.value4, ctxs.value0.value5, tree)));-                    };-                    if (ctxs.value0 instanceof ThreeLeft && ctxs.value0.value2 instanceof Three) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(new Two(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0), ctxs.value0.value2.value1, ctxs.value0.value2.value2, new Two(ctxs.value0.value2.value3, ctxs.value0.value2.value4, ctxs.value0.value2.value5, ctxs.value0.value2.value6), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));-                    };-                    if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value0 instanceof Three) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(new Two(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3), ctxs.value0.value0.value4, ctxs.value0.value0.value5, new Two(ctxs.value0.value0.value6, ctxs.value0.value1, ctxs.value0.value2, tree), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));-                    };-                    if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value5 instanceof Three) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Two(tree, ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5.value0), ctxs.value0.value5.value1, ctxs.value0.value5.value2, new Two(ctxs.value0.value5.value3, ctxs.value0.value5.value4, ctxs.value0.value5.value5, ctxs.value0.value5.value6)));-                    };-                    if (ctxs.value0 instanceof ThreeRight && ctxs.value0.value3 instanceof Three) {-                        return fromZipper(dictOrd)(ctxs.value1)(new Three(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Two(ctxs.value0.value3.value0, ctxs.value0.value3.value1, ctxs.value0.value3.value2, ctxs.value0.value3.value3), ctxs.value0.value3.value4, ctxs.value0.value3.value5, new Two(ctxs.value0.value3.value6, ctxs.value0.value4, ctxs.value0.value5, tree)));-                    };-                    throw new Error("Failed pattern match at Data.Map line 333, column 9 - line 350, column 136: " + [ ctxs.value0.constructor.name, tree.constructor.name ]);-                })());-            };-            throw new Error("Failed pattern match at Data.Map line 330, column 5 - line 350, column 136: " + [ ctxs.constructor.name ]);-        };-    };-    var removeMaxNode = function (ctx) {-        return function (m) {-            var __unused = function (dictPartial1) {-                return function ($dollar55) {-                    return $dollar55;-                };-            };-            return __unused()((function () {-                if (m instanceof Two && (m.value0 instanceof Leaf && m.value3 instanceof Leaf)) {-                    return up(ctx)(Leaf.value);-                };-                if (m instanceof Two) {-                    return removeMaxNode(new Data_List_Types.Cons(new TwoRight(m.value0, m.value1, m.value2), ctx))(m.value3);-                };-                if (m instanceof Three && (m.value0 instanceof Leaf && (m.value3 instanceof Leaf && m.value6 instanceof Leaf))) {-                    return up(new Data_List_Types.Cons(new TwoRight(Leaf.value, m.value1, m.value2), ctx))(Leaf.value);-                };-                if (m instanceof Three) {-                    return removeMaxNode(new Data_List_Types.Cons(new ThreeRight(m.value0, m.value1, m.value2, m.value3, m.value4, m.value5), ctx))(m.value6);-                };-                throw new Error("Failed pattern match at Data.Map line 362, column 5 - line 366, column 107: " + [ m.constructor.name ]);-            })());-        };-    };-    var maxNode = function (m) {-        var __unused = function (dictPartial1) {-            return function ($dollar57) {-                return $dollar57;-            };-        };-        return __unused()((function () {-            if (m instanceof Two && m.value3 instanceof Leaf) {-                return {-                    key: m.value1, -                    value: m.value2-                };-            };-            if (m instanceof Two) {-                return maxNode(m.value3);-            };-            if (m instanceof Three && m.value6 instanceof Leaf) {-                return {-                    key: m.value4, -                    value: m.value5-                };-            };-            if (m instanceof Three) {-                return maxNode(m.value6);-            };-            throw new Error("Failed pattern match at Data.Map line 353, column 33 - line 357, column 45: " + [ m.constructor.name ]);-        })());-    };-    var comp = Data_Ord.compare(dictOrd);-    var down = function (__copy_ctx) {-        return function (__copy_k) {-            return function (__copy_m) {-                var ctx = __copy_ctx;-                var k = __copy_k;-                var m = __copy_m;-                var __tco_done = false;-                var __tco_result;-                var __tco_ctx;-                var __tco_k;-                var __tco_m;-                function __tco_loop(ctx, k, m) {-                    if (m instanceof Leaf) {-                        __tco_done = true;-                        return Data_Maybe.Nothing.value;-                    };-                    if (m instanceof Two) {-                        var v = comp(k)(m.value1);-                        if (m.value3 instanceof Leaf && v instanceof Data_Ordering.EQ) {-                            __tco_done = true;-                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, up(ctx)(Leaf.value)));-                        };-                        if (v instanceof Data_Ordering.EQ) {-                            var max = maxNode(m.value0);-                            __tco_done = true;-                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, removeMaxNode(new Data_List_Types.Cons(new TwoLeft(max.key, max.value, m.value3), ctx))(m.value0)));-                        };-                        if (v instanceof Data_Ordering.LT) {-                            __tco_ctx = new Data_List_Types.Cons(new TwoLeft(m.value1, m.value2, m.value3), ctx);-                            __tco_k = k;-                            __tco_m = m.value0;-                            return;-                        };-                        __tco_ctx = new Data_List_Types.Cons(new TwoRight(m.value0, m.value1, m.value2), ctx);-                        __tco_k = k;-                        __tco_m = m.value3;-                        return;-                    };-                    if (m instanceof Three) {-                        var leaves = (function () {-                            if (m.value0 instanceof Leaf && (m.value3 instanceof Leaf && m.value6 instanceof Leaf)) {-                                return true;-                            };-                            return false;-                        })();-                        var v = comp(k)(m.value4);-                        var v3 = comp(k)(m.value1);-                        if (leaves && v3 instanceof Data_Ordering.EQ) {-                            __tco_done = true;-                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, fromZipper(dictOrd)(ctx)(new Two(Leaf.value, m.value4, m.value5, Leaf.value))));-                        };-                        if (leaves && v instanceof Data_Ordering.EQ) {-                            __tco_done = true;-                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value5, fromZipper(dictOrd)(ctx)(new Two(Leaf.value, m.value1, m.value2, Leaf.value))));-                        };-                        if (v3 instanceof Data_Ordering.EQ) {-                            var max = maxNode(m.value0);-                            __tco_done = true;-                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, removeMaxNode(new Data_List_Types.Cons(new ThreeLeft(max.key, max.value, m.value3, m.value4, m.value5, m.value6), ctx))(m.value0)));-                        };-                        if (v instanceof Data_Ordering.EQ) {-                            var max = maxNode(m.value3);-                            __tco_done = true;-                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value5, removeMaxNode(new Data_List_Types.Cons(new ThreeMiddle(m.value0, m.value1, m.value2, max.key, max.value, m.value6), ctx))(m.value3)));-                        };-                        if (v3 instanceof Data_Ordering.LT) {-                            __tco_ctx = new Data_List_Types.Cons(new ThreeLeft(m.value1, m.value2, m.value3, m.value4, m.value5, m.value6), ctx);-                            __tco_k = k;-                            __tco_m = m.value0;-                            return;-                        };-                        if (v3 instanceof Data_Ordering.GT && v instanceof Data_Ordering.LT) {-                            __tco_ctx = new Data_List_Types.Cons(new ThreeMiddle(m.value0, m.value1, m.value2, m.value4, m.value5, m.value6), ctx);-                            __tco_k = k;-                            __tco_m = m.value3;-                            return;-                        };-                        __tco_ctx = new Data_List_Types.Cons(new ThreeRight(m.value0, m.value1, m.value2, m.value3, m.value4, m.value5), ctx);-                        __tco_k = k;-                        __tco_m = m.value6;-                        return;-                    };-                    throw new Error("Failed pattern match at Data.Map line 303, column 36 - line 326, column 82: " + [ m.constructor.name ]);-                };-                while (!__tco_done) {-                    __tco_result = __tco_loop(ctx, k, m);-                    ctx = __tco_ctx;-                    k = __tco_k;-                    m = __tco_m;-                };-                return __tco_result;-            };-        };-    };-    return down(Data_List_Types.Nil.value);-};-var foldableMap = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (f) {-        return function (m) {-            return Data_Foldable.foldMap(Data_List_Types.foldableList)(dictMonoid)(f)(values(m));-        };-    };-}, function (f) {-    return function (z) {-        return function (m) {-            return Data_Foldable.foldl(Data_List_Types.foldableList)(f)(z)(values(m));-        };-    };-}, function (f) {-    return function (z) {-        return function (m) {-            return Data_Foldable.foldr(Data_List_Types.foldableList)(f)(z)(values(m));-        };-    };-});-var traversableMap = new Data_Traversable.Traversable(function () {-    return foldableMap;-}, function () {-    return functorMap;-}, function (dictApplicative) {-    return Data_Traversable.traverse(traversableMap)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            if (v instanceof Leaf) {-                return Control_Applicative.pure(dictApplicative)(Leaf.value);-            };-            if (v instanceof Two) {-                return Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Two.create)(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value0)))(Control_Applicative.pure(dictApplicative)(v.value1)))(f(v.value2)))(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value3));-            };-            if (v instanceof Three) {-                return Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Three.create)(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value0)))(Control_Applicative.pure(dictApplicative)(v.value1)))(f(v.value2)))(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value3)))(Control_Applicative.pure(dictApplicative)(v.value4)))(f(v.value5)))(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value6));-            };-            throw new Error("Failed pattern match at Data.Map line 91, column 3 - line 91, column 30: " + [ f.constructor.name, v.constructor.name ]);-        };-    };-});-var findMin = function (v) {-    if (v instanceof Leaf) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Two) {-        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-            key: v.value1, -            value: v.value2-        })(findMin(v.value0)));-    };-    if (v instanceof Three) {-        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-            key: v.value1, -            value: v.value2-        })(findMin(v.value0)));-    };-    throw new Error("Failed pattern match at Data.Map line 229, column 1 - line 229, column 23: " + [ v.constructor.name ]);-};-var lookupGT = function (dictOrd) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Leaf) {-                return Data_Maybe.Nothing.value;-            };-            if (v1 instanceof Two) {-                var v2 = Data_Ord.compare(dictOrd)(v)(v1.value1);-                if (v2 instanceof Data_Ordering.EQ) {-                    return findMin(v1.value3);-                };-                if (v2 instanceof Data_Ordering.LT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value1, -                        value: v1.value2-                    })(lookupGT(dictOrd)(v)(v1.value0)));-                };-                if (v2 instanceof Data_Ordering.GT) {-                    return lookupGT(dictOrd)(v)(v1.value3);-                };-                throw new Error("Failed pattern match at Data.Map line 212, column 37 - line 215, column 25: " + [ v2.constructor.name ]);-            };-            if (v1 instanceof Three) {-                var v3 = Data_Ord.compare(dictOrd)(v)(v1.value1);-                if (v3 instanceof Data_Ordering.EQ) {-                    return findMin(new Two(v1.value3, v1.value4, v1.value5, v1.value6));-                };-                if (v3 instanceof Data_Ordering.LT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value1, -                        value: v1.value2-                    })(lookupGT(dictOrd)(v)(v1.value0)));-                };-                if (v3 instanceof Data_Ordering.GT) {-                    return lookupGT(dictOrd)(v)(new Two(v1.value3, v1.value4, v1.value5, v1.value6));-                };-                throw new Error("Failed pattern match at Data.Map line 216, column 49 - line 219, column 41: " + [ v3.constructor.name ]);-            };-            throw new Error("Failed pattern match at Data.Map line 211, column 1 - line 211, column 26: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var findMax = function (v) {-    if (v instanceof Leaf) {-        return Data_Maybe.Nothing.value;-    };-    if (v instanceof Two) {-        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-            key: v.value1, -            value: v.value2-        })(findMax(v.value3)));-    };-    if (v instanceof Three) {-        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-            key: v.value4, -            value: v.value5-        })(findMax(v.value6)));-    };-    throw new Error("Failed pattern match at Data.Map line 223, column 1 - line 223, column 23: " + [ v.constructor.name ]);-};-var lookupLT = function (dictOrd) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Leaf) {-                return Data_Maybe.Nothing.value;-            };-            if (v1 instanceof Two) {-                var v2 = Data_Ord.compare(dictOrd)(v)(v1.value1);-                if (v2 instanceof Data_Ordering.EQ) {-                    return findMax(v1.value0);-                };-                if (v2 instanceof Data_Ordering.GT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value1, -                        value: v1.value2-                    })(lookupLT(dictOrd)(v)(v1.value3)));-                };-                if (v2 instanceof Data_Ordering.LT) {-                    return lookupLT(dictOrd)(v)(v1.value0);-                };-                throw new Error("Failed pattern match at Data.Map line 188, column 37 - line 191, column 24: " + [ v2.constructor.name ]);-            };-            if (v1 instanceof Three) {-                var v3 = Data_Ord.compare(dictOrd)(v)(v1.value4);-                if (v3 instanceof Data_Ordering.EQ) {-                    return findMax(new Two(v1.value0, v1.value1, v1.value2, v1.value3));-                };-                if (v3 instanceof Data_Ordering.GT) {-                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({-                        key: v1.value4, -                        value: v1.value5-                    })(lookupLT(dictOrd)(v)(v1.value6)));-                };-                if (v3 instanceof Data_Ordering.LT) {-                    return lookupLT(dictOrd)(v)(new Two(v1.value0, v1.value1, v1.value2, v1.value3));-                };-                throw new Error("Failed pattern match at Data.Map line 192, column 49 - line 195, column 40: " + [ v3.constructor.name ]);-            };-            throw new Error("Failed pattern match at Data.Map line 187, column 1 - line 187, column 26: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-};-var eqMap = function (dictEq) {-    return function (dictEq1) {-        return new Data_Eq.Eq(function (m1) {-            return function (m2) {-                return Data_Eq.eq(Data_Eq.eqArray(Data_Tuple.eqTuple(dictEq)(dictEq1)))(toAscArray(m1))(toAscArray(m2));-            };-        });-    };-};-var ordMap = function (dictOrd) {-    return function (dictOrd1) {-        return new Data_Ord.Ord(function () {-            return eqMap(dictOrd.Eq0())(dictOrd1.Eq0());-        }, function (m1) {-            return function (m2) {-                return Data_Ord.compare(Data_Ord.ordArray(Data_Tuple.ordTuple(dictOrd)(dictOrd1)))(toAscArray(m1))(toAscArray(m2));-            };-        });-    };-};-var eq1Map = function (dictEq) {-    return new Data_Eq.Eq1(function (dictEq1) {-        return Data_Eq.eq(eqMap(dictEq)(dictEq1));-    });-};-var ord1Map = function (dictOrd) {-    return new Data_Ord.Ord1(function () {-        return eq1Map(dictOrd.Eq0());-    }, function (dictOrd1) {-        return Data_Ord.compare(ordMap(dictOrd)(dictOrd1));-    });-};-var empty = Leaf.value;-var fromFoldable = function (dictOrd) {-    return function (dictFoldable) {-        return Data_Foldable.foldl(dictFoldable)(function (m) {-            return function (v) {-                return insert(dictOrd)(v.value0)(v.value1)(m);-            };-        })(empty);-    };-};-var $$delete = function (dictOrd) {-    return function (k) {-        return function (m) {-            return Data_Maybe.maybe(m)(Data_Tuple.snd)(pop(dictOrd)(k)(m));-        };-    };-};-var checkValid = function (tree) {-    var allHeights = function (v) {-        if (v instanceof Leaf) {-            return Control_Applicative.pure(Data_List_Types.applicativeList)(0);-        };-        if (v instanceof Two) {-            return Data_Functor.map(Data_List_Types.functorList)(function (n) {-                return n + 1 | 0;-            })(Data_Semigroup.append(Data_List_Types.semigroupList)(allHeights(v.value0))(allHeights(v.value3)));-        };-        if (v instanceof Three) {-            return Data_Functor.map(Data_List_Types.functorList)(function (n) {-                return n + 1 | 0;-            })(Data_Semigroup.append(Data_List_Types.semigroupList)(allHeights(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(allHeights(v.value3))(allHeights(v.value6))));-        };-        throw new Error("Failed pattern match at Data.Map line 144, column 3 - line 144, column 30: " + [ v.constructor.name ]);-    };-    return Data_List.length(Data_List.nub(Data_Eq.eqInt)(allHeights(tree))) === 1;-};-var alter = function (dictOrd) {-    return function (f) {-        return function (k) {-            return function (m) {-                var v = f(lookup(dictOrd)(k)(m));-                if (v instanceof Data_Maybe.Nothing) {-                    return $$delete(dictOrd)(k)(m);-                };-                if (v instanceof Data_Maybe.Just) {-                    return insert(dictOrd)(k)(v.value0)(m);-                };-                throw new Error("Failed pattern match at Data.Map line 371, column 15 - line 373, column 25: " + [ v.constructor.name ]);-            };-        };-    };-};-var fromFoldableWith = function (dictOrd) {-    return function (dictFoldable) {-        return function (f) {-            var combine = function (v) {-                return function (v1) {-                    if (v1 instanceof Data_Maybe.Just) {-                        return Data_Maybe.Just.create(f(v)(v1.value0));-                    };-                    if (v1 instanceof Data_Maybe.Nothing) {-                        return new Data_Maybe.Just(v);-                    };-                    throw new Error("Failed pattern match at Data.Map line 388, column 3 - line 388, column 38: " + [ v.constructor.name, v1.constructor.name ]);-                };-            };-            return Data_Foldable.foldl(dictFoldable)(function (m) {-                return function (v) {-                    return alter(dictOrd)(combine(v.value1))(v.value0)(m);-                };-            })(empty);-        };-    };-};-var unionWith = function (dictOrd) {-    return function (f) {-        return function (m1) {-            return function (m2) {-                var go = function (m) {-                    return function (v) {-                        return alter(dictOrd)(function ($674) {-                            return Data_Maybe.Just.create(Data_Maybe.maybe(v.value1)(f(v.value1))($674));-                        })(v.value0)(m);-                    };-                };-                return Data_Foldable.foldl(Data_List_Types.foldableList)(go)(m2)(toUnfoldable(Data_List_Types.unfoldableList)(m1));-            };-        };-    };-};-var union = function (dictOrd) {-    return unionWith(dictOrd)(Data_Function["const"]);-};-var semigroupMap = function (dictOrd) {-    return new Data_Semigroup.Semigroup(union(dictOrd));-};-var monoidMap = function (dictOrd) {-    return new Data_Monoid.Monoid(function () {-        return semigroupMap(dictOrd);-    }, empty);-};-var unions = function (dictOrd) {-    return function (dictFoldable) {-        return Data_Foldable.foldl(dictFoldable)(union(dictOrd))(empty);-    };-};-var update = function (dictOrd) {-    return function (f) {-        return function (k) {-            return function (m) {-                return alter(dictOrd)(Data_Maybe.maybe(Data_Maybe.Nothing.value)(f))(k)(m);-            };-        };-    };-};-module.exports = {-    alter: alter, -    checkValid: checkValid, -    "delete": $$delete, -    empty: empty, -    findMax: findMax, -    findMin: findMin, -    fromFoldable: fromFoldable, -    fromFoldableWith: fromFoldableWith, -    insert: insert, -    isEmpty: isEmpty, -    keys: keys, -    lookup: lookup, -    lookupGE: lookupGE, -    lookupGT: lookupGT, -    lookupLE: lookupLE, -    lookupLT: lookupLT, -    mapWithKey: mapWithKey, -    member: member, -    pop: pop, -    showTree: showTree, -    singleton: singleton, -    size: size, -    toAscUnfoldable: toAscUnfoldable, -    toUnfoldable: toUnfoldable, -    union: union, -    unionWith: unionWith, -    unions: unions, -    update: update, -    values: values, -    eq1Map: eq1Map, -    eqMap: eqMap, -    ord1Map: ord1Map, -    ordMap: ordMap, -    showMap: showMap, -    semigroupMap: semigroupMap, -    monoidMap: monoidMap, -    functorMap: functorMap, -    foldableMap: foldableMap, -    traversableMap: traversableMap-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.List":194,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Partial.Unsafe":265,"../Prelude":268}],196:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var First = function (x) {-    return x;-};-var showFirst = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "First (" + (Data_Show.show(Data_Maybe.showMaybe(dictShow))(v) + ")");-    });-};-var semigroupFirst = new Data_Semigroup.Semigroup(function (v) {-    return function (v1) {-        if (v instanceof Data_Maybe.Just) {-            return v;-        };-        return v1;-    };-});-var ordFirst = function (dictOrd) {-    return Data_Maybe.ordMaybe(dictOrd);-};-var ord1First = Data_Maybe.ord1Maybe;-var newtypeFirst = new Data_Newtype.Newtype(function (n) {-    return n;-}, First);-var monoidFirst = new Data_Monoid.Monoid(function () {-    return semigroupFirst;-}, Data_Maybe.Nothing.value);-var monadFirst = Data_Maybe.monadMaybe;-var invariantFirst = Data_Maybe.invariantMaybe;-var functorFirst = Data_Maybe.functorMaybe;-var extendFirst = Data_Maybe.extendMaybe;-var eqFirst = function (dictEq) {-    return Data_Maybe.eqMaybe(dictEq);-};-var eq1First = Data_Maybe.eq1Maybe;-var boundedFirst = function (dictBounded) {-    return Data_Maybe.boundedMaybe(dictBounded);-};-var bindFirst = Data_Maybe.bindMaybe;-var applyFirst = Data_Maybe.applyMaybe;-var applicativeFirst = Data_Maybe.applicativeMaybe;-module.exports = {-    First: First, -    newtypeFirst: newtypeFirst, -    eqFirst: eqFirst, -    eq1First: eq1First, -    ordFirst: ordFirst, -    ord1First: ord1First, -    boundedFirst: boundedFirst, -    functorFirst: functorFirst, -    invariantFirst: invariantFirst, -    applyFirst: applyFirst, -    applicativeFirst: applicativeFirst, -    bindFirst: bindFirst, -    monadFirst: monadFirst, -    extendFirst: extendFirst, -    showFirst: showFirst, -    semigroupFirst: semigroupFirst, -    monoidFirst: monoidFirst-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],197:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Last = function (x) {-    return x;-};-var showLast = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Last " + (Data_Show.show(Data_Maybe.showMaybe(dictShow))(v) + ")");-    });-};-var semigroupLast = new Data_Semigroup.Semigroup(function (v) {-    return function (v1) {-        if (v1 instanceof Data_Maybe.Just) {-            return v1;-        };-        if (v1 instanceof Data_Maybe.Nothing) {-            return v;-        };-        throw new Error("Failed pattern match at Data.Maybe.Last line 54, column 3 - line 54, column 39: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var ordLast = function (dictOrd) {-    return Data_Maybe.ordMaybe(dictOrd);-};-var ord1Last = Data_Maybe.ord1Maybe;-var newtypeLast = new Data_Newtype.Newtype(function (n) {-    return n;-}, Last);-var monoidLast = new Data_Monoid.Monoid(function () {-    return semigroupLast;-}, Data_Maybe.Nothing.value);-var monadLast = Data_Maybe.monadMaybe;-var invariantLast = Data_Maybe.invariantMaybe;-var functorLast = Data_Maybe.functorMaybe;-var extendLast = Data_Maybe.extendMaybe;-var eqLast = function (dictEq) {-    return Data_Maybe.eqMaybe(dictEq);-};-var eq1Last = Data_Maybe.eq1Maybe;-var boundedLast = function (dictBounded) {-    return Data_Maybe.boundedMaybe(dictBounded);-};-var bindLast = Data_Maybe.bindMaybe;-var applyLast = Data_Maybe.applyMaybe;-var applicativeLast = Data_Maybe.applicativeMaybe;-module.exports = {-    Last: Last, -    newtypeLast: newtypeLast, -    eqLast: eqLast, -    eq1Last: eq1Last, -    ordLast: ordLast, -    ord1Last: ord1Last, -    boundedLast: boundedLast, -    functorLast: functorLast, -    invariantLast: invariantLast, -    applyLast: applyLast, -    applicativeLast: applicativeLast, -    bindLast: bindLast, -    monadLast: monadLast, -    extendLast: extendLast, -    showLast: showLast, -    semigroupLast: semigroupLast, -    monoidLast: monoidLast-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],198:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Monoid = require("../Data.Monoid");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Nothing = (function () {-    function Nothing() {--    };-    Nothing.value = new Nothing();-    return Nothing;-})();-var Just = (function () {-    function Just(value0) {-        this.value0 = value0;-    };-    Just.create = function (value0) {-        return new Just(value0);-    };-    return Just;-})();-var showMaybe = function (dictShow) {-    return new Data_Show.Show(function (v) {-        if (v instanceof Just) {-            return "(Just " + (Data_Show.show(dictShow)(v.value0) + ")");-        };-        if (v instanceof Nothing) {-            return "Nothing";-        };-        throw new Error("Failed pattern match at Data.Maybe line 208, column 3 - line 209, column 3: " + [ v.constructor.name ]);-    });-};-var semigroupMaybe = function (dictSemigroup) {-    return new Data_Semigroup.Semigroup(function (v) {-        return function (v1) {-            if (v instanceof Nothing) {-                return v1;-            };-            if (v1 instanceof Nothing) {-                return v;-            };-            if (v instanceof Just && v1 instanceof Just) {-                return new Just(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0));-            };-            throw new Error("Failed pattern match at Data.Maybe line 177, column 3 - line 177, column 23: " + [ v.constructor.name, v1.constructor.name ]);-        };-    });-};-var monoidMaybe = function (dictSemigroup) {-    return new Data_Monoid.Monoid(function () {-        return semigroupMaybe(dictSemigroup);-    }, Nothing.value);-};-var maybe$prime = function (v) {-    return function (v1) {-        return function (v2) {-            if (v2 instanceof Nothing) {-                return v(Data_Unit.unit);-            };-            if (v2 instanceof Just) {-                return v1(v2.value0);-            };-            throw new Error("Failed pattern match at Data.Maybe line 233, column 1 - line 233, column 28: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-        };-    };-};-var maybe = function (v) {-    return function (v1) {-        return function (v2) {-            if (v2 instanceof Nothing) {-                return v;-            };-            if (v2 instanceof Just) {-                return v1(v2.value0);-            };-            throw new Error("Failed pattern match at Data.Maybe line 220, column 1 - line 220, column 22: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);-        };-    };-};-var isNothing = maybe(true)(Data_Function["const"](false));-var isJust = maybe(false)(Data_Function["const"](true));-var functorMaybe = new Data_Functor.Functor(function (v) {-    return function (v1) {-        if (v1 instanceof Just) {-            return new Just(v(v1.value0));-        };-        return Nothing.value;-    };-});-var invariantMaybe = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorMaybe));-var fromMaybe$prime = function (a) {-    return maybe$prime(a)(Control_Category.id(Control_Category.categoryFn));-};-var fromMaybe = function (a) {-    return maybe(a)(Control_Category.id(Control_Category.categoryFn));-};-var fromJust = function (dictPartial) {-    return function (v) {-        var __unused = function (dictPartial1) {-            return function ($dollar34) {-                return $dollar34;-            };-        };-        return __unused(dictPartial)((function () {-            if (v instanceof Just) {-                return v.value0;-            };-            throw new Error("Failed pattern match at Data.Maybe line 271, column 1 - line 271, column 21: " + [ v.constructor.name ]);-        })());-    };-};-var extendMaybe = new Control_Extend.Extend(function () {-    return functorMaybe;-}, function (v) {-    return function (v1) {-        if (v1 instanceof Nothing) {-            return Nothing.value;-        };-        return new Just(v(v1));-    };-});-var eqMaybe = function (dictEq) {-    return new Data_Eq.Eq(function (x) {-        return function (y) {-            if (x instanceof Nothing && y instanceof Nothing) {-                return true;-            };-            if (x instanceof Just && y instanceof Just) {-                return Data_Eq.eq(dictEq)(x.value0)(y.value0);-            };-            return false;-        };-    });-};-var ordMaybe = function (dictOrd) {-    return new Data_Ord.Ord(function () {-        return eqMaybe(dictOrd.Eq0());-    }, function (x) {-        return function (y) {-            if (x instanceof Nothing && y instanceof Nothing) {-                return Data_Ordering.EQ.value;-            };-            if (x instanceof Nothing) {-                return Data_Ordering.LT.value;-            };-            if (y instanceof Nothing) {-                return Data_Ordering.GT.value;-            };-            if (x instanceof Just && y instanceof Just) {-                return Data_Ord.compare(dictOrd)(x.value0)(y.value0);-            };-            throw new Error("Failed pattern match at Data.Maybe line 196, column 1 - line 196, column 51: " + [ x.constructor.name, y.constructor.name ]);-        };-    });-};-var eq1Maybe = new Data_Eq.Eq1(function (dictEq) {-    return Data_Eq.eq(eqMaybe(dictEq));-});-var ord1Maybe = new Data_Ord.Ord1(function () {-    return eq1Maybe;-}, function (dictOrd) {-    return Data_Ord.compare(ordMaybe(dictOrd));-});-var boundedMaybe = function (dictBounded) {-    return new Data_Bounded.Bounded(function () {-        return ordMaybe(dictBounded.Ord0());-    }, Nothing.value, new Just(Data_Bounded.top(dictBounded)));-};-var applyMaybe = new Control_Apply.Apply(function () {-    return functorMaybe;-}, function (v) {-    return function (v1) {-        if (v instanceof Just) {-            return Data_Functor.map(functorMaybe)(v.value0)(v1);-        };-        if (v instanceof Nothing) {-            return Nothing.value;-        };-        throw new Error("Failed pattern match at Data.Maybe line 69, column 3 - line 69, column 31: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var bindMaybe = new Control_Bind.Bind(function () {-    return applyMaybe;-}, function (v) {-    return function (v1) {-        if (v instanceof Just) {-            return v1(v.value0);-        };-        if (v instanceof Nothing) {-            return Nothing.value;-        };-        throw new Error("Failed pattern match at Data.Maybe line 128, column 3 - line 128, column 24: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var applicativeMaybe = new Control_Applicative.Applicative(function () {-    return applyMaybe;-}, Just.create);-var monadMaybe = new Control_Monad.Monad(function () {-    return applicativeMaybe;-}, function () {-    return bindMaybe;-});-var altMaybe = new Control_Alt.Alt(function () {-    return functorMaybe;-}, function (v) {-    return function (v1) {-        if (v instanceof Nothing) {-            return v1;-        };-        return v;-    };-});-var plusMaybe = new Control_Plus.Plus(function () {-    return altMaybe;-}, Nothing.value);-var alternativeMaybe = new Control_Alternative.Alternative(function () {-    return applicativeMaybe;-}, function () {-    return plusMaybe;-});-var monadZeroMaybe = new Control_MonadZero.MonadZero(function () {-    return alternativeMaybe;-}, function () {-    return monadMaybe;-});-module.exports = {-    Nothing: Nothing, -    Just: Just, -    fromJust: fromJust, -    fromMaybe: fromMaybe, -    "fromMaybe'": fromMaybe$prime, -    isJust: isJust, -    isNothing: isNothing, -    maybe: maybe, -    "maybe'": maybe$prime, -    functorMaybe: functorMaybe, -    applyMaybe: applyMaybe, -    applicativeMaybe: applicativeMaybe, -    altMaybe: altMaybe, -    plusMaybe: plusMaybe, -    alternativeMaybe: alternativeMaybe, -    bindMaybe: bindMaybe, -    monadMaybe: monadMaybe, -    monadZeroMaybe: monadZeroMaybe, -    extendMaybe: extendMaybe, -    invariantMaybe: invariantMaybe, -    semigroupMaybe: semigroupMaybe, -    monoidMaybe: monoidMaybe, -    eqMaybe: eqMaybe, -    eq1Maybe: eq1Maybe, -    ordMaybe: ordMaybe, -    ord1Maybe: ord1Maybe, -    boundedMaybe: boundedMaybe, -    showMaybe: showMaybe-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Extend":49,"../Control.Monad":86,"../Control.MonadZero":88,"../Control.Plus":91,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Monoid":207,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Unit":249,"../Prelude":268}],199:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_MediaType = require("../Data.MediaType");-var textXML = "text/xml";-var textPlain = "text/plain";-var textHTML = "text/html";-var textCSV = "text/csv";-var multipartFormData = "multipart/form-data";-var imagePNG = "image/png";-var imageJPEG = "image/jpeg";-var imageGIF = "image/gif";-var applicationXML = "application/xml";-var applicationOctetStream = "application/octet-stream";-var applicationJavascript = "application/javascript";-var applicationJSON = "application/json";-var applicationFormURLEncoded = "application/x-www-form-urlencoded";-module.exports = {-    applicationFormURLEncoded: applicationFormURLEncoded, -    applicationJSON: applicationJSON, -    applicationJavascript: applicationJavascript, -    applicationOctetStream: applicationOctetStream, -    applicationXML: applicationXML, -    imageGIF: imageGIF, -    imageJPEG: imageJPEG, -    imagePNG: imagePNG, -    multipartFormData: multipartFormData, -    textCSV: textCSV, -    textHTML: textHTML, -    textPlain: textPlain, -    textXML: textXML-};--},{"../Data.MediaType":200}],200:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Data_Eq = require("../Data.Eq");-var Data_Generic = require("../Data.Generic");-var Data_Maybe = require("../Data.Maybe");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var MediaType = function (x) {-    return x;-};-var showMediaType = new Data_Show.Show(function (v) {-    return "(MediaType " + (Data_Show.show(Data_Show.showString)(v) + ")");-});-var newtypeMediaType = new Data_Newtype.Newtype(function (n) {-    return n;-}, MediaType);-var genericMediaType = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.MediaType.MediaType" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(MediaType))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.MediaType.MediaType", [ {-        sigConstructor: "Data.MediaType.MediaType", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.MediaType.MediaType", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericString)(v);-    } ]);-});-var eqMediaType = new Data_Eq.Eq(function (x) {-    return function (y) {-        return x === y;-    };-});-var ordMediaType = new Data_Ord.Ord(function () {-    return eqMediaType;-}, function (x) {-    return function (y) {-        return Data_Ord.compare(Data_Ord.ordString)(x)(y);-    };-});-module.exports = {-    MediaType: MediaType, -    newtypeMediaType: newtypeMediaType, -    eqMediaType: eqMediaType, -    ordMediaType: ordMediaType, -    genericMediaType: genericMediaType, -    showMediaType: showMediaType-};--},{"../Control.Apply":42,"../Data.Eq":138,"../Data.Generic":157,"../Data.Maybe":198,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Unit":249,"../Prelude":268}],201:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Additive = function (x) {-    return x;-};-var showAdditive = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Additive " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semigroupAdditive = function (dictSemiring) {-    return new Data_Semigroup.Semigroup(function (v) {-        return function (v1) {-            return Data_Semiring.add(dictSemiring)(v)(v1);-        };-    });-};-var ordAdditive = function (dictOrd) {-    return dictOrd;-};-var newtypeAdditive = new Data_Newtype.Newtype(function (n) {-    return n;-}, Additive);-var monoidAdditive = function (dictSemiring) {-    return new Data_Monoid.Monoid(function () {-        return semigroupAdditive(dictSemiring);-    }, Data_Semiring.zero(dictSemiring));-};-var invariantAdditive = new Data_Functor_Invariant.Invariant(function (f) {-    return function (v) {-        return function (v1) {-            return f(v1);-        };-    };-});-var functorAdditive = new Data_Functor.Functor(function (f) {-    return function (v) {-        return f(v);-    };-});-var extendAdditive = new Control_Extend.Extend(function () {-    return functorAdditive;-}, function (f) {-    return function (x) {-        return f(x);-    };-});-var eqAdditive = function (dictEq) {-    return dictEq;-};-var comonadAdditive = new Control_Comonad.Comonad(function () {-    return extendAdditive;-}, Data_Newtype.unwrap(newtypeAdditive));-var boundedAdditive = function (dictBounded) {-    return dictBounded;-};-var applyAdditive = new Control_Apply.Apply(function () {-    return functorAdditive;-}, function (v) {-    return function (v1) {-        return v(v1);-    };-});-var bindAdditive = new Control_Bind.Bind(function () {-    return applyAdditive;-}, function (v) {-    return function (f) {-        return f(v);-    };-});-var applicativeAdditive = new Control_Applicative.Applicative(function () {-    return applyAdditive;-}, Additive);-var monadAdditive = new Control_Monad.Monad(function () {-    return applicativeAdditive;-}, function () {-    return bindAdditive;-});-module.exports = {-    Additive: Additive, -    newtypeAdditive: newtypeAdditive, -    eqAdditive: eqAdditive, -    ordAdditive: ordAdditive, -    boundedAdditive: boundedAdditive, -    functorAdditive: functorAdditive, -    invariantAdditive: invariantAdditive, -    applyAdditive: applyAdditive, -    applicativeAdditive: applicativeAdditive, -    bindAdditive: bindAdditive, -    monadAdditive: monadAdditive, -    extendAdditive: extendAdditive, -    comonadAdditive: comonadAdditive, -    showAdditive: showAdditive, -    semigroupAdditive: semigroupAdditive, -    monoidAdditive: monoidAdditive-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Prelude":268}],202:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Conj = function (x) {-    return x;-};-var showConj = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Conj " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semiringConj = function (dictHeytingAlgebra) {-    return new Data_Semiring.Semiring(function (v) {-        return function (v1) {-            return Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v)(v1);-        };-    }, function (v) {-        return function (v1) {-            return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1);-        };-    }, Data_HeytingAlgebra.ff(dictHeytingAlgebra), Data_HeytingAlgebra.tt(dictHeytingAlgebra));-};-var semigroupConj = function (dictHeytingAlgebra) {-    return new Data_Semigroup.Semigroup(function (v) {-        return function (v1) {-            return Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v)(v1);-        };-    });-};-var ordConj = function (dictOrd) {-    return dictOrd;-};-var newtypeConj = new Data_Newtype.Newtype(function (n) {-    return n;-}, Conj);-var monoidConj = function (dictHeytingAlgebra) {-    return new Data_Monoid.Monoid(function () {-        return semigroupConj(dictHeytingAlgebra);-    }, Data_HeytingAlgebra.tt(dictHeytingAlgebra));-};-var invariantConj = new Data_Functor_Invariant.Invariant(function (f) {-    return function (v) {-        return function (v1) {-            return f(v1);-        };-    };-});-var functorConj = new Data_Functor.Functor(function (f) {-    return function (v) {-        return f(v);-    };-});-var extendConj = new Control_Extend.Extend(function () {-    return functorConj;-}, function (f) {-    return function (x) {-        return f(x);-    };-});-var eqConj = function (dictEq) {-    return dictEq;-};-var comonadConj = new Control_Comonad.Comonad(function () {-    return extendConj;-}, Data_Newtype.unwrap(newtypeConj));-var boundedConj = function (dictBounded) {-    return dictBounded;-};-var applyConj = new Control_Apply.Apply(function () {-    return functorConj;-}, function (v) {-    return function (v1) {-        return v(v1);-    };-});-var bindConj = new Control_Bind.Bind(function () {-    return applyConj;-}, function (v) {-    return function (f) {-        return f(v);-    };-});-var applicativeConj = new Control_Applicative.Applicative(function () {-    return applyConj;-}, Conj);-var monadConj = new Control_Monad.Monad(function () {-    return applicativeConj;-}, function () {-    return bindConj;-});-module.exports = {-    Conj: Conj, -    newtypeConj: newtypeConj, -    eqConj: eqConj, -    ordConj: ordConj, -    boundedConj: boundedConj, -    functorConj: functorConj, -    invariantConj: invariantConj, -    applyConj: applyConj, -    applicativeConj: applicativeConj, -    bindConj: bindConj, -    monadConj: monadConj, -    extendConj: extendConj, -    comonadConj: comonadConj, -    showConj: showConj, -    semigroupConj: semigroupConj, -    monoidConj: monoidConj, -    semiringConj: semiringConj-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.HeytingAlgebra":160,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Prelude":268}],203:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Disj = function (x) {-    return x;-};-var showDisj = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Disj " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semiringDisj = function (dictHeytingAlgebra) {-    return new Data_Semiring.Semiring(function (v) {-        return function (v1) {-            return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1);-        };-    }, function (v) {-        return function (v1) {-            return Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v)(v1);-        };-    }, Data_HeytingAlgebra.tt(dictHeytingAlgebra), Data_HeytingAlgebra.ff(dictHeytingAlgebra));-};-var semigroupDisj = function (dictHeytingAlgebra) {-    return new Data_Semigroup.Semigroup(function (v) {-        return function (v1) {-            return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1);-        };-    });-};-var ordDisj = function (dictOrd) {-    return dictOrd;-};-var newtypeDisj = new Data_Newtype.Newtype(function (n) {-    return n;-}, Disj);-var monoidDisj = function (dictHeytingAlgebra) {-    return new Data_Monoid.Monoid(function () {-        return semigroupDisj(dictHeytingAlgebra);-    }, Data_HeytingAlgebra.ff(dictHeytingAlgebra));-};-var invariantDisj = new Data_Functor_Invariant.Invariant(function (f) {-    return function (v) {-        return function (v1) {-            return f(v1);-        };-    };-});-var functorDisj = new Data_Functor.Functor(function (f) {-    return function (v) {-        return f(v);-    };-});-var extendDisj = new Control_Extend.Extend(function () {-    return functorDisj;-}, function (f) {-    return function (x) {-        return f(x);-    };-});-var eqDisj = function (dictEq) {-    return dictEq;-};-var comonadDisj = new Control_Comonad.Comonad(function () {-    return extendDisj;-}, Data_Newtype.unwrap(newtypeDisj));-var boundedDisj = function (dictBounded) {-    return dictBounded;-};-var applyDisj = new Control_Apply.Apply(function () {-    return functorDisj;-}, function (v) {-    return function (v1) {-        return v(v1);-    };-});-var bindDisj = new Control_Bind.Bind(function () {-    return applyDisj;-}, function (v) {-    return function (f) {-        return f(v);-    };-});-var applicativeDisj = new Control_Applicative.Applicative(function () {-    return applyDisj;-}, Disj);-var monadDisj = new Control_Monad.Monad(function () {-    return applicativeDisj;-}, function () {-    return bindDisj;-});-module.exports = {-    Disj: Disj, -    newtypeDisj: newtypeDisj, -    eqDisj: eqDisj, -    ordDisj: ordDisj, -    boundedDisj: boundedDisj, -    functorDisj: functorDisj, -    invariantDisj: invariantDisj, -    applyDisj: applyDisj, -    applicativeDisj: applicativeDisj, -    bindDisj: bindDisj, -    monadDisj: monadDisj, -    extendDisj: extendDisj, -    comonadDisj: comonadDisj, -    showDisj: showDisj, -    semigroupDisj: semigroupDisj, -    monoidDisj: monoidDisj, -    semiringDisj: semiringDisj-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.HeytingAlgebra":160,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Prelude":268}],204:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Dual = function (x) {-    return x;-};-var showDual = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Dual " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semigroupDual = function (dictSemigroup) {-    return new Data_Semigroup.Semigroup(function (v) {-        return function (v1) {-            return Data_Semigroup.append(dictSemigroup)(v1)(v);-        };-    });-};-var ordDual = function (dictOrd) {-    return dictOrd;-};-var newtypeDual = new Data_Newtype.Newtype(function (n) {-    return n;-}, Dual);-var monoidDual = function (dictMonoid) {-    return new Data_Monoid.Monoid(function () {-        return semigroupDual(dictMonoid.Semigroup0());-    }, Data_Monoid.mempty(dictMonoid));-};-var invariantDual = new Data_Functor_Invariant.Invariant(function (f) {-    return function (v) {-        return function (v1) {-            return f(v1);-        };-    };-});-var functorDual = new Data_Functor.Functor(function (f) {-    return function (v) {-        return f(v);-    };-});-var extendDual = new Control_Extend.Extend(function () {-    return functorDual;-}, function (f) {-    return function (x) {-        return f(x);-    };-});-var eqDual = function (dictEq) {-    return dictEq;-};-var comonadDual = new Control_Comonad.Comonad(function () {-    return extendDual;-}, Data_Newtype.unwrap(newtypeDual));-var boundedDual = function (dictBounded) {-    return dictBounded;-};-var applyDual = new Control_Apply.Apply(function () {-    return functorDual;-}, function (v) {-    return function (v1) {-        return v(v1);-    };-});-var bindDual = new Control_Bind.Bind(function () {-    return applyDual;-}, function (v) {-    return function (f) {-        return f(v);-    };-});-var applicativeDual = new Control_Applicative.Applicative(function () {-    return applyDual;-}, Dual);-var monadDual = new Control_Monad.Monad(function () {-    return applicativeDual;-}, function () {-    return bindDual;-});-module.exports = {-    Dual: Dual, -    newtypeDual: newtypeDual, -    eqDual: eqDual, -    ordDual: ordDual, -    boundedDual: boundedDual, -    functorDual: functorDual, -    invariantDual: invariantDual, -    applyDual: applyDual, -    applicativeDual: applicativeDual, -    bindDual: bindDual, -    monadDual: monadDual, -    extendDual: extendDual, -    comonadDual: comonadDual, -    showDual: showDual, -    semigroupDual: semigroupDual, -    monoidDual: monoidDual-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],205:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Semigroup = require("../Data.Semigroup");-var Prelude = require("../Prelude");-var Endo = function (x) {-    return x;-};-var semigroupEndo = new Data_Semigroup.Semigroup(function (v) {-    return function (v1) {-        return function ($11) {-            return v(v1($11));-        };-    };-});-var newtypeEndo = new Data_Newtype.Newtype(function (n) {-    return n;-}, Endo);-var monoidEndo = new Data_Monoid.Monoid(function () {-    return semigroupEndo;-}, Control_Category.id(Control_Category.categoryFn));-var invariantEndo = new Data_Functor_Invariant.Invariant(function (ab) {-    return function (ba) {-        return function (v) {-            return function ($12) {-                return ab(v(ba($12)));-            };-        };-    };-});-module.exports = {-    Endo: Endo, -    newtypeEndo: newtypeEndo, -    invariantEndo: invariantEndo, -    semigroupEndo: semigroupEndo, -    monoidEndo: monoidEndo-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Functor.Invariant":153,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Semigroup":229,"../Prelude":268}],206:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Data_Bounded = require("../Data.Bounded");-var Data_Eq = require("../Data.Eq");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Multiplicative = function (x) {-    return x;-};-var showMultiplicative = function (dictShow) {-    return new Data_Show.Show(function (v) {-        return "(Multiplicative " + (Data_Show.show(dictShow)(v) + ")");-    });-};-var semigroupMultiplicative = function (dictSemiring) {-    return new Data_Semigroup.Semigroup(function (v) {-        return function (v1) {-            return Data_Semiring.mul(dictSemiring)(v)(v1);-        };-    });-};-var ordMultiplicative = function (dictOrd) {-    return dictOrd;-};-var newtypeMultiplicative = new Data_Newtype.Newtype(function (n) {-    return n;-}, Multiplicative);-var monoidMultiplicative = function (dictSemiring) {-    return new Data_Monoid.Monoid(function () {-        return semigroupMultiplicative(dictSemiring);-    }, Data_Semiring.one(dictSemiring));-};-var invariantMultiplicative = new Data_Functor_Invariant.Invariant(function (f) {-    return function (v) {-        return function (v1) {-            return f(v1);-        };-    };-});-var functorMultiplicative = new Data_Functor.Functor(function (f) {-    return function (v) {-        return f(v);-    };-});-var extendMultiplicative = new Control_Extend.Extend(function () {-    return functorMultiplicative;-}, function (f) {-    return function (x) {-        return f(x);-    };-});-var eqMultiplicative = function (dictEq) {-    return dictEq;-};-var comonadMultiplicative = new Control_Comonad.Comonad(function () {-    return extendMultiplicative;-}, Data_Newtype.unwrap(newtypeMultiplicative));-var boundedMultiplicative = function (dictBounded) {-    return dictBounded;-};-var applyMultiplicative = new Control_Apply.Apply(function () {-    return functorMultiplicative;-}, function (v) {-    return function (v1) {-        return v(v1);-    };-});-var bindMultiplicative = new Control_Bind.Bind(function () {-    return applyMultiplicative;-}, function (v) {-    return function (f) {-        return f(v);-    };-});-var applicativeMultiplicative = new Control_Applicative.Applicative(function () {-    return applyMultiplicative;-}, Multiplicative);-var monadMultiplicative = new Control_Monad.Monad(function () {-    return applicativeMultiplicative;-}, function () {-    return bindMultiplicative;-});-module.exports = {-    Multiplicative: Multiplicative, -    newtypeMultiplicative: newtypeMultiplicative, -    eqMultiplicative: eqMultiplicative, -    ordMultiplicative: ordMultiplicative, -    boundedMultiplicative: boundedMultiplicative, -    functorMultiplicative: functorMultiplicative, -    invariantMultiplicative: invariantMultiplicative, -    applyMultiplicative: applyMultiplicative, -    applicativeMultiplicative: applicativeMultiplicative, -    bindMultiplicative: bindMultiplicative, -    monadMultiplicative: monadMultiplicative, -    extendMultiplicative: extendMultiplicative, -    comonadMultiplicative: comonadMultiplicative, -    showMultiplicative: showMultiplicative, -    semigroupMultiplicative: semigroupMultiplicative, -    monoidMultiplicative: monoidMultiplicative-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Data.Bounded":132,"../Data.Eq":138,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Prelude":268}],207:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Boolean = require("../Data.Boolean");-var Data_Eq = require("../Data.Eq");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Function = require("../Data.Function");-var Data_Ord = require("../Data.Ord");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Monoid = function (Semigroup0, mempty) {-    this.Semigroup0 = Semigroup0;-    this.mempty = mempty;-};-var monoidUnit = new Monoid(function () {-    return Data_Semigroup.semigroupUnit;-}, Data_Unit.unit);-var monoidString = new Monoid(function () {-    return Data_Semigroup.semigroupString;-}, "");-var monoidArray = new Monoid(function () {-    return Data_Semigroup.semigroupArray;-}, [  ]);-var mempty = function (dict) {-    return dict.mempty;-};-var monoidFn = function (dictMonoid) {-    return new Monoid(function () {-        return Data_Semigroup.semigroupFn(dictMonoid.Semigroup0());-    }, Data_Function["const"](mempty(dictMonoid)));-};-var power = function (dictMonoid) {-    return function (x) {-        var go = function (p) {-            if (p <= 0) {-                return mempty(dictMonoid);-            };-            if (p === 1) {-                return x;-            };-            if (p % 2 === 0) {-                var x$prime = go(p / 2 | 0);-                return Data_Semigroup.append(dictMonoid.Semigroup0())(x$prime)(x$prime);-            };-            if (Data_Boolean.otherwise) {-                var x$prime = go(p / 2 | 0);-                return Data_Semigroup.append(dictMonoid.Semigroup0())(x$prime)(Data_Semigroup.append(dictMonoid.Semigroup0())(x$prime)(x));-            };-            throw new Error("Failed pattern match at Data.Monoid line 49, column 3 - line 53, column 57: " + [ p.constructor.name ]);-        };-        return go;-    };-};-module.exports = {-    Monoid: Monoid, -    mempty: mempty, -    power: power, -    monoidUnit: monoidUnit, -    monoidFn: monoidFn, -    monoidString: monoidString, -    monoidArray: monoidArray-};--},{"../Data.Boolean":129,"../Data.Eq":138,"../Data.EuclideanRing":140,"../Data.Function":149,"../Data.Ord":216,"../Data.Semigroup":229,"../Data.Unit":249,"../Prelude":268}],208:[function(require,module,exports){-arguments[4][99][0].apply(exports,arguments)-},{"dup":99}],209:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Prelude = require("../Prelude");-var Newtype = function (unwrap, wrap) {-    this.unwrap = unwrap;-    this.wrap = wrap;-};-var wrap = function (dict) {-    return dict.wrap;-};-var unwrap = function (dict) {-    return dict.unwrap;-};-var underF2 = function (dictFunctor) {-    return function (dictFunctor1) {-        return function (dictNewtype) {-            return function (dictNewtype1) {-                return function (v) {-                    return function (f) {-                        return function ($50) {-                            return function ($51) {-                                return Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1))(Data_Function.on(f)(Data_Functor.map(dictFunctor)(wrap(dictNewtype)))($50)($51));-                            };-                        };-                    };-                };-            };-        };-    };-};-var underF = function (dictFunctor) {-    return function (dictFunctor1) {-        return function (dictNewtype) {-            return function (dictNewtype1) {-                return function (v) {-                    return function (f) {-                        return function ($52) {-                            return Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1))(f(Data_Functor.map(dictFunctor)(wrap(dictNewtype))($52)));-                        };-                    };-                };-            };-        };-    };-};-var under2 = function (dictNewtype) {-    return function (dictNewtype1) {-        return function (v) {-            return function (f) {-                return function ($53) {-                    return function ($54) {-                        return unwrap(dictNewtype1)(Data_Function.on(f)(wrap(dictNewtype))($53)($54));-                    };-                };-            };-        };-    };-};-var under = function (dictNewtype) {-    return function (dictNewtype1) {-        return function (v) {-            return function (f) {-                return function ($55) {-                    return unwrap(dictNewtype1)(f(wrap(dictNewtype)($55)));-                };-            };-        };-    };-};-var un = function (dictNewtype) {-    return function (v) {-        return unwrap(dictNewtype);-    };-};-var traverse = function (dictFunctor) {-    return function (dictNewtype) {-        return function (v) {-            return function (f) {-                return function ($56) {-                    return Data_Functor.map(dictFunctor)(wrap(dictNewtype))(f(unwrap(dictNewtype)($56)));-                };-            };-        };-    };-};-var overF2 = function (dictFunctor) {-    return function (dictFunctor1) {-        return function (dictNewtype) {-            return function (dictNewtype1) {-                return function (v) {-                    return function (f) {-                        return function ($57) {-                            return function ($58) {-                                return Data_Functor.map(dictFunctor1)(wrap(dictNewtype1))(Data_Function.on(f)(Data_Functor.map(dictFunctor)(unwrap(dictNewtype)))($57)($58));-                            };-                        };-                    };-                };-            };-        };-    };-};-var overF = function (dictFunctor) {-    return function (dictFunctor1) {-        return function (dictNewtype) {-            return function (dictNewtype1) {-                return function (v) {-                    return function (f) {-                        return function ($59) {-                            return Data_Functor.map(dictFunctor1)(wrap(dictNewtype1))(f(Data_Functor.map(dictFunctor)(unwrap(dictNewtype))($59)));-                        };-                    };-                };-            };-        };-    };-};-var over2 = function (dictNewtype) {-    return function (dictNewtype1) {-        return function (v) {-            return function (f) {-                return function ($60) {-                    return function ($61) {-                        return wrap(dictNewtype1)(Data_Function.on(f)(unwrap(dictNewtype))($60)($61));-                    };-                };-            };-        };-    };-};-var over = function (dictNewtype) {-    return function (dictNewtype1) {-        return function (v) {-            return function (f) {-                return function ($62) {-                    return wrap(dictNewtype1)(f(unwrap(dictNewtype)($62)));-                };-            };-        };-    };-};-var op = function (dictNewtype) {-    return un(dictNewtype);-};-var collect = function (dictFunctor) {-    return function (dictNewtype) {-        return function (v) {-            return function (f) {-                return function ($63) {-                    return wrap(dictNewtype)(f(Data_Functor.map(dictFunctor)(unwrap(dictNewtype))($63)));-                };-            };-        };-    };-};-var alaF = function (dictFunctor) {-    return function (dictFunctor1) {-        return function (dictNewtype) {-            return function (dictNewtype1) {-                return function (v) {-                    return function (f) {-                        return function ($64) {-                            return Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1))(f(Data_Functor.map(dictFunctor)(wrap(dictNewtype))($64)));-                        };-                    };-                };-            };-        };-    };-};-var ala = function (dictFunctor) {-    return function (dictNewtype) {-        return function (dictNewtype1) {-            return function (v) {-                return function (f) {-                    return Data_Functor.map(dictFunctor)(unwrap(dictNewtype))(f(wrap(dictNewtype1)));-                };-            };-        };-    };-};-module.exports = {-    Newtype: Newtype, -    ala: ala, -    alaF: alaF, -    collect: collect, -    op: op, -    over: over, -    over2: over2, -    overF: overF, -    overF2: overF2, -    traverse: traverse, -    un: un, -    under: under, -    under2: under2, -    underF: underF, -    underF2: underF2, -    unwrap: unwrap, -    wrap: wrap-};--},{"../Control.Semigroupoid":92,"../Data.Function":149,"../Data.Functor":155,"../Prelude":268}],210:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Plus = require("../Control.Plus");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Prelude = require("../Prelude");-var NonEmpty = (function () {-    function NonEmpty(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    NonEmpty.create = function (value0) {-        return function (value1) {-            return new NonEmpty(value0, value1);-        };-    };-    return NonEmpty;-})();-var tail = function (v) {-    return v.value1;-};-var singleton = function (dictPlus) {-    return function (a) {-        return new NonEmpty(a, Control_Plus.empty(dictPlus));-    };-};-var showNonEmpty = function (dictShow) {-    return function (dictShow1) {-        return new Data_Show.Show(function (v) {-            return "(NonEmpty " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")")));-        });-    };-};-var oneOf = function (dictAlternative) {-    return function (v) {-        return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(Control_Applicative.pure(dictAlternative.Applicative0())(v.value0))(v.value1);-    };-};-var head = function (v) {-    return v.value0;-};-var functorNonEmpty = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return new NonEmpty(f(v.value0), Data_Functor.map(dictFunctor)(f)(v.value1));-        };-    });-};-var fromNonEmpty = function (f) {-    return function (v) {-        return f(v.value0)(v.value1);-    };-};-var foldl1 = function (dictFoldable) {-    return function (f) {-        return function (v) {-            return Data_Foldable.foldl(dictFoldable)(f)(v.value0)(v.value1);-        };-    };-};-var foldableNonEmpty = function (dictFoldable) {-    return new Data_Foldable.Foldable(function (dictMonoid) {-        return function (f) {-            return function (v) {-                return Data_Semigroup.append(dictMonoid.Semigroup0())(f(v.value0))(Data_Foldable.foldMap(dictFoldable)(dictMonoid)(f)(v.value1));-            };-        };-    }, function (f) {-        return function (b) {-            return function (v) {-                return Data_Foldable.foldl(dictFoldable)(f)(f(b)(v.value0))(v.value1);-            };-        };-    }, function (f) {-        return function (b) {-            return function (v) {-                return f(v.value0)(Data_Foldable.foldr(dictFoldable)(f)(b)(v.value1));-            };-        };-    });-};-var traversableNonEmpty = function (dictTraversable) {-    return new Data_Traversable.Traversable(function () {-        return foldableNonEmpty(dictTraversable.Foldable1());-    }, function () {-        return functorNonEmpty(dictTraversable.Functor0());-    }, function (dictApplicative) {-        return function (v) {-            return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(NonEmpty.create)(v.value0))(Data_Traversable.sequence(dictTraversable)(dictApplicative)(v.value1));-        };-    }, function (dictApplicative) {-        return function (f) {-            return function (v) {-                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(NonEmpty.create)(f(v.value0)))(Data_Traversable.traverse(dictTraversable)(dictApplicative)(f)(v.value1));-            };-        };-    });-};-var foldMap1 = function (dictSemigroup) {-    return function (dictFoldable) {-        return function (f) {-            return function (v) {-                return Data_Foldable.foldl(dictFoldable)(function (s) {-                    return function (a1) {-                        return Data_Semigroup.append(dictSemigroup)(s)(f(a1));-                    };-                })(f(v.value0))(v.value1);-            };-        };-    };-};-var fold1 = function (dictSemigroup) {-    return function (dictFoldable) {-        return foldMap1(dictSemigroup)(dictFoldable)(Control_Category.id(Control_Category.categoryFn));-    };-};-var eq1NonEmpty = function (dictEq1) {-    return new Data_Eq.Eq1(function (dictEq) {-        return function (v) {-            return function (v1) {-                return Data_Eq.eq(dictEq)(v.value0)(v1.value0) && Data_Eq.eq1(dictEq1)(dictEq)(v.value1)(v1.value1);-            };-        };-    });-};-var eqNonEmpty = function (dictEq1) {-    return function (dictEq) {-        return new Data_Eq.Eq(Data_Eq.eq1(eq1NonEmpty(dictEq1))(dictEq));-    };-};-var ord1NonEmpty = function (dictOrd1) {-    return new Data_Ord.Ord1(function () {-        return eq1NonEmpty(dictOrd1.Eq10());-    }, function (dictOrd) {-        return function (v) {-            return function (v1) {-                var v2 = Data_Ord.compare(dictOrd)(v.value0)(v1.value0);-                if (v2 instanceof Data_Ordering.EQ) {-                    return Data_Ord.compare1(dictOrd1)(dictOrd)(v.value1)(v1.value1);-                };-                return v2;-            };-        };-    });-};-var ordNonEmpty = function (dictOrd1) {-    return function (dictOrd) {-        return new Data_Ord.Ord(function () {-            return eqNonEmpty(dictOrd1.Eq10())(dictOrd.Eq0());-        }, Data_Ord.compare1(ord1NonEmpty(dictOrd1))(dictOrd));-    };-};-module.exports = {-    NonEmpty: NonEmpty, -    fold1: fold1, -    foldMap1: foldMap1, -    foldl1: foldl1, -    fromNonEmpty: fromNonEmpty, -    head: head, -    oneOf: oneOf, -    singleton: singleton, -    tail: tail, -    showNonEmpty: showNonEmpty, -    eqNonEmpty: eqNonEmpty, -    eq1NonEmpty: eq1NonEmpty, -    ordNonEmpty: ordNonEmpty, -    ord1NonEmpty: ord1NonEmpty, -    functorNonEmpty: functorNonEmpty, -    foldableNonEmpty: foldableNonEmpty, -    traversableNonEmpty: traversableNonEmpty-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Plus":91,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Traversable":244,"../Prelude":268}],211:[function(require,module,exports){-"use strict";--exports["null"] = null;--exports.nullable = function (a, r, f) {-  return a == null ? r : f(a);-};--exports.notNull = function (x) {-  return x;-};--},{}],212:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Maybe = require("../Data.Maybe");-var Data_Ord = require("../Data.Ord");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var toNullable = Data_Maybe.maybe($foreign["null"])($foreign.notNull);-var toMaybe = function (n) {-    return $foreign.nullable(n, Data_Maybe.Nothing.value, Data_Maybe.Just.create);-};-var showNullable = function (dictShow) {-    return new Data_Show.Show(function ($5) {-        return Data_Maybe.maybe("null")(Data_Show.show(dictShow))(toMaybe($5));-    });-};-var eqNullable = function (dictEq) {-    return new Data_Eq.Eq(Data_Function.on(Data_Eq.eq(Data_Maybe.eqMaybe(dictEq)))(toMaybe));-};-var ordNullable = function (dictOrd) {-    return new Data_Ord.Ord(function () {-        return eqNullable(dictOrd.Eq0());-    }, Data_Function.on(Data_Ord.compare(Data_Maybe.ordMaybe(dictOrd)))(toMaybe));-};-var eq1Nullable = new Data_Eq.Eq1(function (dictEq) {-    return Data_Eq.eq(eqNullable(dictEq));-});-var ord1Nullable = new Data_Ord.Ord1(function () {-    return eq1Nullable;-}, function (dictOrd) {-    return Data_Ord.compare(ordNullable(dictOrd));-});-module.exports = {-    toMaybe: toMaybe, -    toNullable: toNullable, -    showNullable: showNullable, -    eqNullable: eqNullable, -    eq1Nullable: eq1Nullable, -    ordNullable: ordNullable, -    ord1Nullable: ord1Nullable-};--},{"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Maybe":198,"../Data.Ord":216,"../Data.Show":233,"../Prelude":268,"./foreign":211}],213:[function(require,module,exports){-"use strict";--exports.unsafeCompareImpl = function (lt) {-  return function (eq) {-    return function (gt) {-      return function (x) {-        return function (y) {-          return x < y ? lt : x === y ? eq : gt;-        };-      };-    };-  };-};--},{}],214:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Ordering = require("../Data.Ordering");-var unsafeCompare = $foreign.unsafeCompareImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value);-module.exports = {-    unsafeCompare: unsafeCompare-};--},{"../Data.Ordering":217,"./foreign":213}],215:[function(require,module,exports){-"use strict";--exports.ordArrayImpl = function (f) {-  return function (xs) {-    return function (ys) {-      var i = 0;-      var xlen = xs.length;-      var ylen = ys.length;-      while (i < xlen && i < ylen) {-        var x = xs[i];-        var y = ys[i];-        var o = f(x)(y);-        if (o !== 0) {-          return o;-        }-        i++;-      }-      if (xlen === ylen) {-        return 0;-      } else if (xlen > ylen) {-        return -1;-      } else {-        return 1;-      }-    };-  };-};--},{}],216:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Ord_Unsafe = require("../Data.Ord.Unsafe");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semiring = require("../Data.Semiring");-var Data_Unit = require("../Data.Unit");-var Data_Void = require("../Data.Void");-var Ord = function (Eq0, compare) {-    this.Eq0 = Eq0;-    this.compare = compare;-};-var Ord1 = function (Eq10, compare1) {-    this.Eq10 = Eq10;-    this.compare1 = compare1;-};-var ordVoid = new Ord(function () {-    return Data_Eq.eqVoid;-}, function (v) {-    return function (v1) {-        return Data_Ordering.EQ.value;-    };-});-var ordUnit = new Ord(function () {-    return Data_Eq.eqUnit;-}, function (v) {-    return function (v1) {-        return Data_Ordering.EQ.value;-    };-});-var ordString = new Ord(function () {-    return Data_Eq.eqString;-}, Data_Ord_Unsafe.unsafeCompare);-var ordOrdering = new Ord(function () {-    return Data_Ordering.eqOrdering;-}, function (v) {-    return function (v1) {-        if (v instanceof Data_Ordering.LT && v1 instanceof Data_Ordering.LT) {-            return Data_Ordering.EQ.value;-        };-        if (v instanceof Data_Ordering.EQ && v1 instanceof Data_Ordering.EQ) {-            return Data_Ordering.EQ.value;-        };-        if (v instanceof Data_Ordering.GT && v1 instanceof Data_Ordering.GT) {-            return Data_Ordering.EQ.value;-        };-        if (v instanceof Data_Ordering.LT) {-            return Data_Ordering.LT.value;-        };-        if (v instanceof Data_Ordering.EQ && v1 instanceof Data_Ordering.LT) {-            return Data_Ordering.GT.value;-        };-        if (v instanceof Data_Ordering.EQ && v1 instanceof Data_Ordering.GT) {-            return Data_Ordering.LT.value;-        };-        if (v instanceof Data_Ordering.GT) {-            return Data_Ordering.GT.value;-        };-        throw new Error("Failed pattern match at Data.Ord line 69, column 3 - line 69, column 21: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var ordNumber = new Ord(function () {-    return Data_Eq.eqNumber;-}, Data_Ord_Unsafe.unsafeCompare);-var ordInt = new Ord(function () {-    return Data_Eq.eqInt;-}, Data_Ord_Unsafe.unsafeCompare);-var ordChar = new Ord(function () {-    return Data_Eq.eqChar;-}, Data_Ord_Unsafe.unsafeCompare);-var ordBoolean = new Ord(function () {-    return Data_Eq.eqBoolean;-}, Data_Ord_Unsafe.unsafeCompare);-var compare1 = function (dict) {-    return dict.compare1;-};-var compare = function (dict) {-    return dict.compare;-};-var comparing = function (dictOrd) {-    return function (f) {-        return Data_Function.on(compare(dictOrd))(f);-    };-};-var greaterThan = function (dictOrd) {-    return function (a1) {-        return function (a2) {-            var v = compare(dictOrd)(a1)(a2);-            if (v instanceof Data_Ordering.GT) {-                return true;-            };-            return false;-        };-    };-};-var greaterThanOrEq = function (dictOrd) {-    return function (a1) {-        return function (a2) {-            var v = compare(dictOrd)(a1)(a2);-            if (v instanceof Data_Ordering.LT) {-                return false;-            };-            return true;-        };-    };-};-var signum = function (dictOrd) {-    return function (dictRing) {-        return function (x) {-            var $33 = greaterThanOrEq(dictOrd)(x)(Data_Semiring.zero(dictRing.Semiring0()));-            if ($33) {-                return Data_Semiring.one(dictRing.Semiring0());-            };-            return Data_Ring.negate(dictRing)(Data_Semiring.one(dictRing.Semiring0()));-        };-    };-};-var lessThan = function (dictOrd) {-    return function (a1) {-        return function (a2) {-            var v = compare(dictOrd)(a1)(a2);-            if (v instanceof Data_Ordering.LT) {-                return true;-            };-            return false;-        };-    };-};-var lessThanOrEq = function (dictOrd) {-    return function (a1) {-        return function (a2) {-            var v = compare(dictOrd)(a1)(a2);-            if (v instanceof Data_Ordering.GT) {-                return false;-            };-            return true;-        };-    };-};-var max = function (dictOrd) {-    return function (x) {-        return function (y) {-            var v = compare(dictOrd)(x)(y);-            if (v instanceof Data_Ordering.LT) {-                return y;-            };-            if (v instanceof Data_Ordering.EQ) {-                return x;-            };-            if (v instanceof Data_Ordering.GT) {-                return x;-            };-            throw new Error("Failed pattern match at Data.Ord line 123, column 3 - line 126, column 12: " + [ v.constructor.name ]);-        };-    };-};-var min = function (dictOrd) {-    return function (x) {-        return function (y) {-            var v = compare(dictOrd)(x)(y);-            if (v instanceof Data_Ordering.LT) {-                return x;-            };-            if (v instanceof Data_Ordering.EQ) {-                return x;-            };-            if (v instanceof Data_Ordering.GT) {-                return y;-            };-            throw new Error("Failed pattern match at Data.Ord line 114, column 3 - line 117, column 12: " + [ v.constructor.name ]);-        };-    };-};-var ordArray = function (dictOrd) {-    return new Ord(function () {-        return Data_Eq.eqArray(dictOrd.Eq0());-    }, (function () {-        var toDelta = function (x) {-            return function (y) {-                var v = compare(dictOrd)(x)(y);-                if (v instanceof Data_Ordering.EQ) {-                    return 0;-                };-                if (v instanceof Data_Ordering.LT) {-                    return 1;-                };-                if (v instanceof Data_Ordering.GT) {-                    return -1 | 0;-                };-                throw new Error("Failed pattern match at Data.Ord line 61, column 7 - line 66, column 1: " + [ v.constructor.name ]);-            };-        };-        return function (xs) {-            return function (ys) {-                return compare(ordInt)(0)($foreign.ordArrayImpl(toDelta)(xs)(ys));-            };-        };-    })());-};-var ord1Array = new Ord1(function () {-    return Data_Eq.eq1Array;-}, function (dictOrd) {-    return compare(ordArray(dictOrd));-});-var clamp = function (dictOrd) {-    return function (low) {-        return function (hi) {-            return function (x) {-                return min(dictOrd)(hi)(max(dictOrd)(low)(x));-            };-        };-    };-};-var between = function (dictOrd) {-    return function (low) {-        return function (hi) {-            return function (x) {-                if (lessThan(dictOrd)(x)(low)) {-                    return false;-                };-                if (greaterThan(dictOrd)(x)(hi)) {-                    return false;-                };-                return true;-            };-        };-    };-};-var abs = function (dictOrd) {-    return function (dictRing) {-        return function (x) {-            var $42 = greaterThanOrEq(dictOrd)(x)(Data_Semiring.zero(dictRing.Semiring0()));-            if ($42) {-                return x;-            };-            return Data_Ring.negate(dictRing)(x);-        };-    };-};-module.exports = {-    Ord: Ord, -    Ord1: Ord1, -    abs: abs, -    between: between, -    clamp: clamp, -    compare: compare, -    compare1: compare1, -    comparing: comparing, -    greaterThan: greaterThan, -    greaterThanOrEq: greaterThanOrEq, -    lessThan: lessThan, -    lessThanOrEq: lessThanOrEq, -    max: max, -    min: min, -    signum: signum, -    ordBoolean: ordBoolean, -    ordInt: ordInt, -    ordNumber: ordNumber, -    ordString: ordString, -    ordChar: ordChar, -    ordUnit: ordUnit, -    ordVoid: ordVoid, -    ordArray: ordArray, -    ordOrdering: ordOrdering, -    ord1Array: ord1Array-};--},{"../Data.Eq":138,"../Data.Function":149,"../Data.Ord.Unsafe":214,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semiring":231,"../Data.Unit":249,"../Data.Void":250,"./foreign":215}],217:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Eq = require("../Data.Eq");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var LT = (function () {-    function LT() {--    };-    LT.value = new LT();-    return LT;-})();-var GT = (function () {-    function GT() {--    };-    GT.value = new GT();-    return GT;-})();-var EQ = (function () {-    function EQ() {--    };-    EQ.value = new EQ();-    return EQ;-})();-var showOrdering = new Data_Show.Show(function (v) {-    if (v instanceof LT) {-        return "LT";-    };-    if (v instanceof GT) {-        return "GT";-    };-    if (v instanceof EQ) {-        return "EQ";-    };-    throw new Error("Failed pattern match at Data.Ordering line 27, column 3 - line 28, column 3: " + [ v.constructor.name ]);-});-var semigroupOrdering = new Data_Semigroup.Semigroup(function (v) {-    return function (v1) {-        if (v instanceof LT) {-            return LT.value;-        };-        if (v instanceof GT) {-            return GT.value;-        };-        if (v instanceof EQ) {-            return v1;-        };-        throw new Error("Failed pattern match at Data.Ordering line 22, column 3 - line 22, column 19: " + [ v.constructor.name, v1.constructor.name ]);-    };-});-var invert = function (v) {-    if (v instanceof GT) {-        return LT.value;-    };-    if (v instanceof EQ) {-        return EQ.value;-    };-    if (v instanceof LT) {-        return GT.value;-    };-    throw new Error("Failed pattern match at Data.Ordering line 34, column 1 - line 34, column 15: " + [ v.constructor.name ]);-};-var eqOrdering = new Data_Eq.Eq(function (v) {-    return function (v1) {-        if (v instanceof LT && v1 instanceof LT) {-            return true;-        };-        if (v instanceof GT && v1 instanceof GT) {-            return true;-        };-        if (v instanceof EQ && v1 instanceof EQ) {-            return true;-        };-        return false;-    };-});-module.exports = {-    LT: LT, -    GT: GT, -    EQ: EQ, -    invert: invert, -    eqOrdering: eqOrdering, -    semigroupOrdering: semigroupOrdering, -    showOrdering: showOrdering-};--},{"../Data.Eq":138,"../Data.Semigroup":229,"../Data.Show":233}],218:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Profunctor = require("../Data.Profunctor");-var Prelude = require("../Prelude");-var Choice = function (Profunctor0, left, right) {-    this.Profunctor0 = Profunctor0;-    this.left = left;-    this.right = right;-};-var right = function (dict) {-    return dict.right;-};-var left = function (dict) {-    return dict.left;-};-var splitChoice = function (dictCategory) {-    return function (dictChoice) {-        return function (l) {-            return function (r) {-                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(left(dictChoice)(l))(right(dictChoice)(r));-            };-        };-    };-};-var fanin = function (dictCategory) {-    return function (dictChoice) {-        return function (l) {-            return function (r) {-                var join = Data_Profunctor.dimap(dictChoice.Profunctor0())(Data_Either.either(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn)))(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(dictCategory));-                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(splitChoice(dictCategory)(dictChoice)(l)(r))(join);-            };-        };-    };-};-var choiceFn = new Choice(function () {-    return Data_Profunctor.profunctorFn;-}, function (v) {-    return function (v1) {-        if (v1 instanceof Data_Either.Left) {-            return Data_Either.Left.create(v(v1.value0));-        };-        if (v1 instanceof Data_Either.Right) {-            return new Data_Either.Right(v1.value0);-        };-        throw new Error("Failed pattern match at Data.Profunctor.Choice line 33, column 3 - line 33, column 36: " + [ v.constructor.name, v1.constructor.name ]);-    };-}, Data_Functor.map(Data_Either.functorEither));-module.exports = {-    Choice: Choice, -    fanin: fanin, -    left: left, -    right: right, -    splitChoice: splitChoice, -    choiceFn: choiceFn-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Profunctor":225,"../Prelude":268}],219:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Profunctor = require("../Data.Profunctor");-var Prelude = require("../Prelude");-var Closed = function (Profunctor0, closed) {-    this.Profunctor0 = Profunctor0;-    this.closed = closed;-};-var closedFunction = new Closed(function () {-    return Data_Profunctor.profunctorFn;-}, Control_Semigroupoid.compose(Control_Semigroupoid.semigroupoidFn));-var closed = function (dict) {-    return dict.closed;-};-module.exports = {-    Closed: Closed, -    closed: closed, -    closedFunction: closedFunction-};--},{"../Control.Semigroupoid":92,"../Data.Profunctor":225,"../Prelude":268}],220:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Either = require("../Data.Either");-var Data_Profunctor = require("../Data.Profunctor");-var Cochoice = function (Profunctor0, unleft, unright) {-    this.Profunctor0 = Profunctor0;-    this.unleft = unleft;-    this.unright = unright;-};-var unright = function (dict) {-    return dict.unright;-};-var unleft = function (dict) {-    return dict.unleft;-};-module.exports = {-    Cochoice: Cochoice, -    unleft: unleft, -    unright: unright-};--},{"../Data.Either":136,"../Data.Profunctor":225}],221:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Monad = require("../Control.Monad");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Distributive = require("../Data.Distributive");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");-var Data_Profunctor_Cochoice = require("../Data.Profunctor.Cochoice");-var Data_Profunctor_Costrong = require("../Data.Profunctor.Costrong");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Costar = function (x) {-    return x;-};-var semigroupoidCostar = function (dictExtend) {-    return new Control_Semigroupoid.Semigroupoid(function (v) {-        return function (v1) {-            return Control_Extend.composeCoKleisliFlipped(dictExtend)(v)(v1);-        };-    });-};-var profunctorCostar = function (dictFunctor) {-    return new Data_Profunctor.Profunctor(function (f) {-        return function (g) {-            return function (v) {-                return function ($51) {-                    return g(v(Data_Functor.map(dictFunctor)(f)($51)));-                };-            };-        };-    });-};-var strongCostar = function (dictComonad) {-    return new Data_Profunctor_Strong.Strong(function () {-        return profunctorCostar((dictComonad.Extend0()).Functor0());-    }, function (v) {-        return function (x) {-            return new Data_Tuple.Tuple(v(Data_Functor.map((dictComonad.Extend0()).Functor0())(Data_Tuple.fst)(x)), Data_Tuple.snd(Control_Comonad.extract(dictComonad)(x)));-        };-    }, function (v) {-        return function (x) {-            return new Data_Tuple.Tuple(Data_Tuple.fst(Control_Comonad.extract(dictComonad)(x)), v(Data_Functor.map((dictComonad.Extend0()).Functor0())(Data_Tuple.snd)(x)));-        };-    });-};-var newtypeCostar = new Data_Newtype.Newtype(function (n) {-    return n;-}, Costar);-var functorCostar = new Data_Functor.Functor(function (f) {-    return function (v) {-        return function ($52) {-            return f(v($52));-        };-    };-});-var invariantCostar = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorCostar));-var distributiveCostar = new Data_Distributive.Distributive(function () {-    return functorCostar;-}, function (dictFunctor) {-    return function (f) {-        return function ($53) {-            return Data_Distributive.distribute(distributiveCostar)(dictFunctor)(Data_Functor.map(dictFunctor)(f)($53));-        };-    };-}, function (dictFunctor) {-    return function (f) {-        return function (a) {-            return Data_Functor.map(dictFunctor)(function (v) {-                return v(a);-            })(f);-        };-    };-});-var costrongCostar = function (dictFunctor) {-    return new Data_Profunctor_Costrong.Costrong(function () {-        return profunctorCostar(dictFunctor);-    }, function (v) {-        return function (fb) {-            var bd = v(Data_Functor.map(dictFunctor)(function (a) {-                return new Data_Tuple.Tuple(a, Data_Tuple.snd(bd));-            })(fb));-            return Data_Tuple.fst(bd);-        };-    }, function (v) {-        return function (fb) {-            var db = v(Data_Functor.map(dictFunctor)(function (a) {-                return new Data_Tuple.Tuple(Data_Tuple.fst(db), a);-            })(fb));-            return Data_Tuple.snd(db);-        };-    });-};-var cochoiceCostar = function (dictApplicative) {-    return new Data_Profunctor_Cochoice.Cochoice(function () {-        return profunctorCostar((dictApplicative.Apply0()).Functor0());-    }, function (v) {-        var g = function ($54) {-            return Data_Either.either(Control_Category.id(Control_Category.categoryFn))(function (r) {-                return g(Control_Applicative.pure(dictApplicative)(new Data_Either.Right(r)));-            })(v($54));-        };-        return function ($55) {-            return g(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Left.create)($55));-        };-    }, function (v) {-        var g = function ($56) {-            return Data_Either.either(function (l) {-                return g(Control_Applicative.pure(dictApplicative)(new Data_Either.Left(l)));-            })(Control_Category.id(Control_Category.categoryFn))(v($56));-        };-        return function ($57) {-            return g(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Right.create)($57));-        };-    });-};-var closedCostar = function (dictFunctor) {-    return new Data_Profunctor_Closed.Closed(function () {-        return profunctorCostar(dictFunctor);-    }, function (v) {-        return function (g) {-            return function (x) {-                return v(Data_Functor.map(dictFunctor)(function (v1) {-                    return v1(x);-                })(g));-            };-        };-    });-};-var categoryCostar = function (dictComonad) {-    return new Control_Category.Category(function () {-        return semigroupoidCostar(dictComonad.Extend0());-    }, Control_Comonad.extract(dictComonad));-};-var applyCostar = new Control_Apply.Apply(function () {-    return functorCostar;-}, function (v) {-    return function (v1) {-        return function (a) {-            return v(a)(v1(a));-        };-    };-});-var bindCostar = new Control_Bind.Bind(function () {-    return applyCostar;-}, function (v) {-    return function (f) {-        return function (x) {-            var v1 = f(v(x));-            return v1(x);-        };-    };-});-var applicativeCostar = new Control_Applicative.Applicative(function () {-    return applyCostar;-}, function (a) {-    return function (v) {-        return a;-    };-});-var monadCostar = new Control_Monad.Monad(function () {-    return applicativeCostar;-}, function () {-    return bindCostar;-});-module.exports = {-    Costar: Costar, -    newtypeCostar: newtypeCostar, -    semigroupoidCostar: semigroupoidCostar, -    categoryCostar: categoryCostar, -    functorCostar: functorCostar, -    invariantCostar: invariantCostar, -    applyCostar: applyCostar, -    applicativeCostar: applicativeCostar, -    bindCostar: bindCostar, -    monadCostar: monadCostar, -    distributiveCostar: distributiveCostar, -    profunctorCostar: profunctorCostar, -    strongCostar: strongCostar, -    costrongCostar: costrongCostar, -    cochoiceCostar: cochoiceCostar, -    closedCostar: closedCostar-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Monad":86,"../Control.Semigroupoid":92,"../Data.Distributive":135,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Closed":219,"../Data.Profunctor.Cochoice":220,"../Data.Profunctor.Costrong":222,"../Data.Profunctor.Strong":224,"../Data.Tuple":245,"../Prelude":268}],222:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Profunctor = require("../Data.Profunctor");-var Data_Tuple = require("../Data.Tuple");-var Costrong = function (Profunctor0, unfirst, unsecond) {-    this.Profunctor0 = Profunctor0;-    this.unfirst = unfirst;-    this.unsecond = unsecond;-};-var unsecond = function (dict) {-    return dict.unsecond;-};-var unfirst = function (dict) {-    return dict.unfirst;-};-module.exports = {-    Costrong: Costrong, -    unfirst: unfirst, -    unsecond: unsecond-};--},{"../Data.Profunctor":225,"../Data.Tuple":245}],223:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Alt = require("../Control.Alt");-var Control_Alternative = require("../Control.Alternative");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Monad = require("../Control.Monad");-var Control_MonadPlus = require("../Control.MonadPlus");-var Control_MonadZero = require("../Control.MonadZero");-var Control_Plus = require("../Control.Plus");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Distributive = require("../Data.Distributive");-var Data_Either = require("../Data.Either");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_Newtype = require("../Data.Newtype");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");-var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");-var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Star = function (x) {-    return x;-};-var semigroupoidStar = function (dictBind) {-    return new Control_Semigroupoid.Semigroupoid(function (v) {-        return function (v1) {-            return function (x) {-                return Control_Bind.bind(dictBind)(v1(x))(v);-            };-        };-    });-};-var profunctorStar = function (dictFunctor) {-    return new Data_Profunctor.Profunctor(function (f) {-        return function (g) {-            return function (v) {-                return function ($75) {-                    return Data_Functor.map(dictFunctor)(g)(v(f($75)));-                };-            };-        };-    });-};-var strongStar = function (dictFunctor) {-    return new Data_Profunctor_Strong.Strong(function () {-        return profunctorStar(dictFunctor);-    }, function (v) {-        return function (v1) {-            return Data_Functor.map(dictFunctor)(function (v2) {-                return new Data_Tuple.Tuple(v2, v1.value1);-            })(v(v1.value0));-        };-    }, function (v) {-        return function (v1) {-            return Data_Functor.map(dictFunctor)(Data_Tuple.Tuple.create(v1.value0))(v(v1.value1));-        };-    });-};-var newtypeStar = new Data_Newtype.Newtype(function (n) {-    return n;-}, Star);-var invariantStar = function (dictInvariant) {-    return new Data_Functor_Invariant.Invariant(function (f) {-        return function (g) {-            return function (v) {-                return function ($76) {-                    return Data_Functor_Invariant.imap(dictInvariant)(f)(g)(v($76));-                };-            };-        };-    });-};-var functorStar = function (dictFunctor) {-    return new Data_Functor.Functor(function (f) {-        return function (v) {-            return function ($77) {-                return Data_Functor.map(dictFunctor)(f)(v($77));-            };-        };-    });-};-var distributiveStar = function (dictDistributive) {-    return new Data_Distributive.Distributive(function () {-        return functorStar(dictDistributive.Functor0());-    }, function (dictFunctor) {-        return function (f) {-            return function ($78) {-                return Data_Distributive.distribute(distributiveStar(dictDistributive))(dictFunctor)(Data_Functor.map(dictFunctor)(f)($78));-            };-        };-    }, function (dictFunctor) {-        return function (f) {-            return function (a) {-                return Data_Distributive.collect(dictDistributive)(dictFunctor)(function (v) {-                    return v(a);-                })(f);-            };-        };-    });-};-var closedStar = function (dictDistributive) {-    return new Data_Profunctor_Closed.Closed(function () {-        return profunctorStar(dictDistributive.Functor0());-    }, function (v) {-        return function (g) {-            return Data_Distributive.distribute(dictDistributive)(Data_Functor.functorFn)(function ($79) {-                return v(g($79));-            });-        };-    });-};-var choiceStar = function (dictApplicative) {-    return new Data_Profunctor_Choice.Choice(function () {-        return profunctorStar((dictApplicative.Apply0()).Functor0());-    }, function (v) {-        return Star(Data_Either.either(function ($80) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Left.create)(v($80));-        })(function ($81) {-            return Control_Applicative.pure(dictApplicative)(Data_Either.Right.create($81));-        }));-    }, function (v) {-        return Star(Data_Either.either(function ($82) {-            return Control_Applicative.pure(dictApplicative)(Data_Either.Left.create($82));-        })(function ($83) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Right.create)(v($83));-        }));-    });-};-var categoryStar = function (dictMonad) {-    return new Control_Category.Category(function () {-        return semigroupoidStar(dictMonad.Bind1());-    }, Control_Applicative.pure(dictMonad.Applicative0()));-};-var applyStar = function (dictApply) {-    return new Control_Apply.Apply(function () {-        return functorStar(dictApply.Functor0());-    }, function (v) {-        return function (v1) {-            return function (a) {-                return Control_Apply.apply(dictApply)(v(a))(v1(a));-            };-        };-    });-};-var bindStar = function (dictBind) {-    return new Control_Bind.Bind(function () {-        return applyStar(dictBind.Apply0());-    }, function (v) {-        return function (f) {-            return function (x) {-                return Control_Bind.bind(dictBind)(v(x))(function (a) {-                    var v1 = f(a);-                    return v1(x);-                });-            };-        };-    });-};-var applicativeStar = function (dictApplicative) {-    return new Control_Applicative.Applicative(function () {-        return applyStar(dictApplicative.Apply0());-    }, function (a) {-        return function (v) {-            return Control_Applicative.pure(dictApplicative)(a);-        };-    });-};-var monadStar = function (dictMonad) {-    return new Control_Monad.Monad(function () {-        return applicativeStar(dictMonad.Applicative0());-    }, function () {-        return bindStar(dictMonad.Bind1());-    });-};-var altStar = function (dictAlt) {-    return new Control_Alt.Alt(function () {-        return functorStar(dictAlt.Functor0());-    }, function (v) {-        return function (v1) {-            return function (a) {-                return Control_Alt.alt(dictAlt)(v(a))(v1(a));-            };-        };-    });-};-var plusStar = function (dictPlus) {-    return new Control_Plus.Plus(function () {-        return altStar(dictPlus.Alt0());-    }, function (v) {-        return Control_Plus.empty(dictPlus);-    });-};-var alternativeStar = function (dictAlternative) {-    return new Control_Alternative.Alternative(function () {-        return applicativeStar(dictAlternative.Applicative0());-    }, function () {-        return plusStar(dictAlternative.Plus1());-    });-};-var monadZeroStar = function (dictMonadZero) {-    return new Control_MonadZero.MonadZero(function () {-        return alternativeStar(dictMonadZero.Alternative1());-    }, function () {-        return monadStar(dictMonadZero.Monad0());-    });-};-var monadPlusStar = function (dictMonadPlus) {-    return new Control_MonadPlus.MonadPlus(function () {-        return monadZeroStar(dictMonadPlus.MonadZero0());-    });-};-module.exports = {-    Star: Star, -    newtypeStar: newtypeStar, -    semigroupoidStar: semigroupoidStar, -    categoryStar: categoryStar, -    functorStar: functorStar, -    invariantStar: invariantStar, -    applyStar: applyStar, -    applicativeStar: applicativeStar, -    bindStar: bindStar, -    monadStar: monadStar, -    altStar: altStar, -    plusStar: plusStar, -    alternativeStar: alternativeStar, -    monadZeroStar: monadZeroStar, -    monadPlusStar: monadPlusStar, -    distributiveStar: distributiveStar, -    profunctorStar: profunctorStar, -    strongStar: strongStar, -    choiceStar: choiceStar, -    closedStar: closedStar-};--},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":86,"../Control.MonadPlus":87,"../Control.MonadZero":88,"../Control.Plus":91,"../Control.Semigroupoid":92,"../Data.Distributive":135,"../Data.Either":136,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.Newtype":209,"../Data.Profunctor":225,"../Data.Profunctor.Choice":218,"../Data.Profunctor.Closed":219,"../Data.Profunctor.Strong":224,"../Data.Tuple":245,"../Prelude":268}],224:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Functor = require("../Data.Functor");-var Data_Profunctor = require("../Data.Profunctor");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Strong = function (Profunctor0, first, second) {-    this.Profunctor0 = Profunctor0;-    this.first = first;-    this.second = second;-};-var strongFn = new Strong(function () {-    return Data_Profunctor.profunctorFn;-}, function (a2b) {-    return function (v) {-        return new Data_Tuple.Tuple(a2b(v.value0), v.value1);-    };-}, Data_Functor.map(Data_Tuple.functorTuple));-var second = function (dict) {-    return dict.second;-};-var first = function (dict) {-    return dict.first;-};-var splitStrong = function (dictCategory) {-    return function (dictStrong) {-        return function (l) {-            return function (r) {-                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(first(dictStrong)(l))(second(dictStrong)(r));-            };-        };-    };-};-var fanout = function (dictCategory) {-    return function (dictStrong) {-        return function (l) {-            return function (r) {-                var split = Data_Profunctor.dimap(dictStrong.Profunctor0())(Control_Category.id(Control_Category.categoryFn))(function (a) {-                    return new Data_Tuple.Tuple(a, a);-                })(Control_Category.id(dictCategory));-                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(split)(splitStrong(dictCategory)(dictStrong)(l)(r));-            };-        };-    };-};-module.exports = {-    Strong: Strong, -    fanout: fanout, -    first: first, -    second: second, -    splitStrong: splitStrong, -    strongFn: strongFn-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Functor":155,"../Data.Profunctor":225,"../Data.Tuple":245,"../Prelude":268}],225:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Newtype = require("../Data.Newtype");-var Prelude = require("../Prelude");-var Profunctor = function (dimap) {-    this.dimap = dimap;-};-var profunctorFn = new Profunctor(function (a2b) {-    return function (c2d) {-        return function (b2c) {-            return function ($9) {-                return c2d(b2c(a2b($9)));-            };-        };-    };-});-var dimap = function (dict) {-    return dict.dimap;-};-var lmap = function (dictProfunctor) {-    return function (a2b) {-        return dimap(dictProfunctor)(a2b)(Control_Category.id(Control_Category.categoryFn));-    };-};-var rmap = function (dictProfunctor) {-    return function (b2c) {-        return dimap(dictProfunctor)(Control_Category.id(Control_Category.categoryFn))(b2c);-    };-};-var unwrapIso = function (dictProfunctor) {-    return function (dictNewtype) {-        return dimap(dictProfunctor)(Data_Newtype.wrap(dictNewtype))(Data_Newtype.unwrap(dictNewtype));-    };-};-var wrapIso = function (dictProfunctor) {-    return function (dictNewtype) {-        return function (v) {-            return dimap(dictProfunctor)(Data_Newtype.unwrap(dictNewtype))(Data_Newtype.wrap(dictNewtype));-        };-    };-};-var arr = function (dictCategory) {-    return function (dictProfunctor) {-        return function (f) {-            return rmap(dictProfunctor)(f)(Control_Category.id(dictCategory));-        };-    };-};-module.exports = {-    Profunctor: Profunctor, -    arr: arr, -    dimap: dimap, -    lmap: lmap, -    rmap: rmap, -    unwrapIso: unwrapIso, -    wrapIso: wrapIso, -    profunctorFn: profunctorFn-};--},{"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Newtype":209,"../Prelude":268}],226:[function(require,module,exports){-"use strict";--exports.intSub = function (x) {-  return function (y) {-    /* jshint bitwise: false */-    return x - y | 0;-  };-};--exports.numSub = function (n1) {-  return function (n2) {-    return n1 - n2;-  };-};--},{}],227:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Semiring = require("../Data.Semiring");-var Data_Unit = require("../Data.Unit");-var Ring = function (Semiring0, sub) {-    this.Semiring0 = Semiring0;-    this.sub = sub;-};-var sub = function (dict) {-    return dict.sub;-};-var ringUnit = new Ring(function () {-    return Data_Semiring.semiringUnit;-}, function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-});-var ringNumber = new Ring(function () {-    return Data_Semiring.semiringNumber;-}, $foreign.numSub);-var ringInt = new Ring(function () {-    return Data_Semiring.semiringInt;-}, $foreign.intSub);-var ringFn = function (dictRing) {-    return new Ring(function () {-        return Data_Semiring.semiringFn(dictRing.Semiring0());-    }, function (f) {-        return function (g) {-            return function (x) {-                return sub(dictRing)(f(x))(g(x));-            };-        };-    });-};-var negate = function (dictRing) {-    return function (a) {-        return sub(dictRing)(Data_Semiring.zero(dictRing.Semiring0()))(a);-    };-};-module.exports = {-    Ring: Ring, -    negate: negate, -    sub: sub, -    ringInt: ringInt, -    ringNumber: ringNumber, -    ringUnit: ringUnit, -    ringFn: ringFn-};--},{"../Data.Semiring":231,"../Data.Unit":249,"./foreign":226}],228:[function(require,module,exports){-"use strict";--exports.concatString = function (s1) {-  return function (s2) {-    return s1 + s2;-  };-};--exports.concatArray = function (xs) {-  return function (ys) {-    if (xs.length === 0) return ys;-    if (ys.length === 0) return xs;-    return xs.concat(ys);-  };-};--},{}],229:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Unit = require("../Data.Unit");-var Data_Void = require("../Data.Void");-var Semigroup = function (append) {-    this.append = append;-};-var semigroupVoid = new Semigroup(function (v) {-    return Data_Void.absurd;-});-var semigroupUnit = new Semigroup(function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-});-var semigroupString = new Semigroup($foreign.concatString);-var semigroupArray = new Semigroup($foreign.concatArray);-var append = function (dict) {-    return dict.append;-};-var semigroupFn = function (dictSemigroup) {-    return new Semigroup(function (f) {-        return function (g) {-            return function (x) {-                return append(dictSemigroup)(f(x))(g(x));-            };-        };-    });-};-module.exports = {-    Semigroup: Semigroup, -    append: append, -    semigroupString: semigroupString, -    semigroupUnit: semigroupUnit, -    semigroupVoid: semigroupVoid, -    semigroupFn: semigroupFn, -    semigroupArray: semigroupArray-};--},{"../Data.Unit":249,"../Data.Void":250,"./foreign":228}],230:[function(require,module,exports){-"use strict";--exports.intAdd = function (x) {-  return function (y) {-    /* jshint bitwise: false */-    return x + y | 0;-  };-};--exports.intMul = function (x) {-  return function (y) {-    /* jshint bitwise: false */-    return x * y | 0;-  };-};--exports.numAdd = function (n1) {-  return function (n2) {-    return n1 + n2;-  };-};--exports.numMul = function (n1) {-  return function (n2) {-    return n1 * n2;-  };-};--},{}],231:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Unit = require("../Data.Unit");-var Semiring = function (add, mul, one, zero) {-    this.add = add;-    this.mul = mul;-    this.one = one;-    this.zero = zero;-};-var zero = function (dict) {-    return dict.zero;-};-var semiringUnit = new Semiring(function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-}, function (v) {-    return function (v1) {-        return Data_Unit.unit;-    };-}, Data_Unit.unit, Data_Unit.unit);-var semiringNumber = new Semiring($foreign.numAdd, $foreign.numMul, 1.0, 0.0);-var semiringInt = new Semiring($foreign.intAdd, $foreign.intMul, 1, 0);-var one = function (dict) {-    return dict.one;-};-var mul = function (dict) {-    return dict.mul;-};-var add = function (dict) {-    return dict.add;-};-var semiringFn = function (dictSemiring) {-    return new Semiring(function (f) {-        return function (g) {-            return function (x) {-                return add(dictSemiring)(f(x))(g(x));-            };-        };-    }, function (f) {-        return function (g) {-            return function (x) {-                return mul(dictSemiring)(f(x))(g(x));-            };-        };-    }, function (v) {-        return one(dictSemiring);-    }, function (v) {-        return zero(dictSemiring);-    });-};-module.exports = {-    Semiring: Semiring, -    add: add, -    mul: mul, -    one: one, -    zero: zero, -    semiringInt: semiringInt, -    semiringNumber: semiringNumber, -    semiringFn: semiringFn, -    semiringUnit: semiringUnit-};--},{"../Data.Unit":249,"./foreign":230}],232:[function(require,module,exports){-"use strict";--exports.showIntImpl = function (n) {-  return n.toString();-};--exports.showNumberImpl = function (n) {-  var str = n.toString();-  return isNaN(str + ".0") ? str : str + ".0";-};--exports.showCharImpl = function (c) {-  var code = c.charCodeAt(0);-  if (code < 0x20 || code === 0x7F) {-    switch (c) {-      case "\x07": return "'\\a'";-      case "\b": return "'\\b'";-      case "\f": return "'\\f'";-      case "\n": return "'\\n'";-      case "\r": return "'\\r'";-      case "\t": return "'\\t'";-      case "\v": return "'\\v'";-    }-    return "'\\" + code.toString(10) + "'";-  }-  return c === "'" || c === "\\" ? "'\\" + c + "'" : "'" + c + "'";-};--exports.showStringImpl = function (s) {-  var l = s.length;-  return "\"" + s.replace(-    /[\0-\x1F\x7F"\\]/g, // eslint-disable-line no-control-regex-    function (c, i) {-      switch (c) {-        case "\"":-        case "\\":-          return "\\" + c;-        case "\x07": return "\\a";-        case "\b": return "\\b";-        case "\f": return "\\f";-        case "\n": return "\\n";-        case "\r": return "\\r";-        case "\t": return "\\t";-        case "\v": return "\\v";-      }-      var k = i + 1;-      var empty = k < l && s[k] >= "0" && s[k] <= "9" ? "\\&" : "";-      return "\\" + c.charCodeAt(0).toString(10) + empty;-    }-  ) + "\"";-};--exports.showArrayImpl = function (f) {-  return function (xs) {-    var ss = [];-    for (var i = 0, l = xs.length; i < l; i++) {-      ss[i] = f(xs[i]);-    }-    return "[" + ss.join(",") + "]";-  };-};--},{}],233:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Show = function (show) {-    this.show = show;-};-var showString = new Show($foreign.showStringImpl);-var showNumber = new Show($foreign.showNumberImpl);-var showInt = new Show($foreign.showIntImpl);-var showChar = new Show($foreign.showCharImpl);-var showBoolean = new Show(function (v) {-    if (v) {-        return "true";-    };-    if (!v) {-        return "false";-    };-    throw new Error("Failed pattern match at Data.Show line 13, column 3 - line 14, column 3: " + [ v.constructor.name ]);-});-var show = function (dict) {-    return dict.show;-};-var showArray = function (dictShow) {-    return new Show($foreign.showArrayImpl(show(dictShow)));-};-module.exports = {-    Show: Show, -    show: show, -    showBoolean: showBoolean, -    showInt: showInt, -    showNumber: showNumber, -    showChar: showChar, -    showString: showString, -    showArray: showArray-};--},{"./foreign":232}],234:[function(require,module,exports){-"use strict";--exports["new"] = function () {-  return {};-};--exports.peekImpl = function (just) {-  return function (nothing) {-    return function (m) {-      return function (k) {-        return function () {-          return {}.hasOwnProperty.call(m, k) ? just(m[k]) : nothing;-        };-      };-    };-  };-};--exports.poke = function (m) {-  return function (k) {-    return function (v) {-      return function () {-        m[k] = v;-        return m;-      };-    };-  };-};--exports["delete"] = function (m) {-  return function (k) {-    return function () {-      delete m[k];-      return m;-    };-  };-};--},{}],235:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_ST = require("../Control.Monad.ST");-var Data_Maybe = require("../Data.Maybe");-var peek = $foreign.peekImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-module.exports = {-    peek: peek, -    "delete": $foreign["delete"], -    "new": $foreign["new"], -    poke: $foreign.poke-};--},{"../Control.Monad.Eff":70,"../Control.Monad.ST":79,"../Data.Maybe":198,"./foreign":234}],236:[function(require,module,exports){-"use strict";--exports._copyEff = function (m) {-  return function () {-    var r = {};-    for (var k in m) {-      if (hasOwnProperty.call(m, k)) {-        r[k] = m[k];-      }-    }-    return r;-  };-};--exports.empty = {};--exports.runST = function (f) {-  return f;-};--exports._fmapStrMap = function (m0, f) {-  var m = {};-  for (var k in m0) {-    if (hasOwnProperty.call(m0, k)) {-      m[k] = f(m0[k]);-    }-  }-  return m;-};--exports._mapWithKey = function (m0, f) {-  var m = {};-  for (var k in m0) {-    if (hasOwnProperty.call(m0, k)) {-      m[k] = f(k)(m0[k]);-    }-  }-  return m;-};--exports._foldM = function (bind) {-  return function (f) {-    return function (mz) {-      return function (m) {-        var acc = mz;-        function g(k) {-          return function (z) {-            return f(z)(k)(m[k]);-          };-        }-        for (var k in m) {-          if (hasOwnProperty.call(m, k)) {-            acc = bind(acc)(g(k));-          }-        }-        return acc;-      };-    };-  };-};--exports._foldSCStrMap = function (m, z, f, fromMaybe) {-  var acc = z;-  for (var k in m) {-    if (hasOwnProperty.call(m, k)) {-      var maybeR = f(acc)(k)(m[k]);-      var r = fromMaybe(null)(maybeR);-      if (r === null) return acc;-      else acc = r;-    }-  }-  return acc;-};--exports.all = function (f) {-  return function (m) {-    for (var k in m) {-      if (hasOwnProperty.call(m, k) && !f(k)(m[k])) return false;-    }-    return true;-  };-};--exports.size = function (m) {-  var s = 0;-  for (var k in m) {-    if (hasOwnProperty.call(m, k)) {-      ++s;-    }-  }-  return s;-};--exports._lookup = function (no, yes, k, m) {-  return k in m ? yes(m[k]) : no;-};--exports._unsafeDeleteStrMap = function (m, k) {-  delete m[k];-  return m;-};--exports._lookupST = function (no, yes, k, m) {-  return function () {-    return k in m ? yes(m[k]) : no;-  };-};--function _collect(f) {-  return function (m) {-    var r = [];-    for (var k in m) {-      if (hasOwnProperty.call(m, k)) {-        r.push(f(k)(m[k]));-      }-    }-    return r;-  };-}--exports._collect = _collect;--exports.keys = Object.keys || _collect(function (k) {-  return function () { return k; };-});--},{}],237:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_ST = require("../Control.Monad.ST");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Array = require("../Data.Array");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Monoid = require("../Data.Monoid");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_StrMap_ST = require("../Data.StrMap.ST");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unfoldable = require("../Data.Unfoldable");-var Prelude = require("../Prelude");-var values = $foreign._collect(function (v) {-    return function (v1) {-        return v1;-    };-});-var toUnfoldable = function (dictUnfoldable) {-    return function ($40) {-        return Data_Array.toUnfoldable(dictUnfoldable)($foreign._collect(Data_Tuple.Tuple.create)($40));-    };-};-var toArray = $foreign._collect(Data_Tuple.Tuple.create);-var thawST = $foreign._copyEff;-var showStrMap = function (dictShow) {-    return new Data_Show.Show(function (m) {-        return "(fromFoldable " + (Data_Show.show(Data_Show.showArray(Data_Tuple.showTuple(Data_Show.showString)(dictShow)))(toArray(m)) + ")");-    });-};-var pureST = function (f) {-    return Control_Monad_Eff.runPure($foreign.runST(f));-};-var singleton = function (k) {-    return function (v) {-        return pureST(function __do() {-            var v1 = Data_StrMap_ST["new"]();-            var v2 = Data_StrMap_ST.poke(v1)(k)(v)();-            return v1;-        });-    };-};-var mutate = function (f) {-    return function (m) {-        return pureST(function __do() {-            var v = thawST(m)();-            var v1 = f(v)();-            return v;-        });-    };-};-var member = Data_Function_Uncurried.runFn4($foreign._lookup)(false)(Data_Function["const"](true));-var mapWithKey = function (f) {-    return function (m) {-        return $foreign._mapWithKey(m, f);-    };-};-var lookup = Data_Function_Uncurried.runFn4($foreign._lookup)(Data_Maybe.Nothing.value)(Data_Maybe.Just.create);-var isSubmap = function (dictEq) {-    return function (m1) {-        return function (m2) {-            var f = function (k) {-                return function (v) {-                    return $foreign._lookup(false, Data_Eq.eq(dictEq)(v), k, m2);-                };-            };-            return $foreign.all(f)(m1);-        };-    };-};-var isEmpty = $foreign.all(function (v) {-    return function (v1) {-        return false;-    };-});-var insert = function (k) {-    return function (v) {-        return mutate(function (s) {-            return Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_StrMap_ST.poke(s)(k)(v));-        });-    };-};-var functorStrMap = new Data_Functor.Functor(function (f) {-    return function (m) {-        return $foreign._fmapStrMap(m, f);-    };-});-var fromFoldableWith = function (dictFoldable) {-    return function (f) {-        return function (l) {-            return pureST(function __do() {-                var v = Data_StrMap_ST["new"]();-                Data_Foldable.for_(Control_Monad_Eff.applicativeEff)(dictFoldable)(l)(function (v1) {-                    return Control_Bind.bind(Control_Monad_Eff.bindEff)($foreign._lookupST(v1.value1, f(v1.value1), v1.value0, v))(Data_StrMap_ST.poke(v)(v1.value0));-                })();-                return v;-            });-        };-    };-};-var fromFoldable = function (dictFoldable) {-    return function (l) {-        return pureST(function __do() {-            var v = Data_StrMap_ST["new"]();-            Data_Foldable.for_(Control_Monad_Eff.applicativeEff)(dictFoldable)(l)(function (v1) {-                return Data_StrMap_ST.poke(v)(v1.value0)(v1.value1);-            })();-            return v;-        });-    };-};-var freezeST = $foreign._copyEff;-var foldMaybe = function (f) {-    return function (z) {-        return function (m) {-            return $foreign._foldSCStrMap(m, z, f, Data_Maybe.fromMaybe);-        };-    };-};-var foldM = function (dictMonad) {-    return function (f) {-        return function (z) {-            return $foreign._foldM(Control_Bind.bind(dictMonad.Bind1()))(f)(Control_Applicative.pure(dictMonad.Applicative0())(z));-        };-    };-};-var semigroupStrMap = function (dictSemigroup) {-    return new Data_Semigroup.Semigroup(function (m1) {-        return function (m2) {-            return mutate(function (s1) {-                return Data_Functor["void"](Control_Monad_Eff.functorEff)(foldM(Control_Monad_Eff.monadEff)(function (s2) {-                    return function (k) {-                        return function (v2) {-                            return Data_StrMap_ST.poke(s2)(k)($foreign._lookup(v2, function (v1) {-                                return Data_Semigroup.append(dictSemigroup)(v1)(v2);-                            }, k, m2));-                        };-                    };-                })(s1)(m1));-            })(m2);-        };-    });-};-var monoidStrMap = function (dictSemigroup) {-    return new Data_Monoid.Monoid(function () {-        return semigroupStrMap(dictSemigroup);-    }, $foreign.empty);-};-var union = function (m) {-    return mutate(function (s) {-        return Data_Functor["void"](Control_Monad_Eff.functorEff)(foldM(Control_Monad_Eff.monadEff)(Data_StrMap_ST.poke)(s)(m));-    });-};-var unions = function (dictFoldable) {-    return Data_Foldable.foldl(dictFoldable)(union)($foreign.empty);-};-var fold = $foreign._foldM(Data_Function.applyFlipped);-var foldMap = function (dictMonoid) {-    return function (f) {-        return fold(function (acc) {-            return function (k) {-                return function (v) {-                    return Data_Semigroup.append(dictMonoid.Semigroup0())(acc)(f(k)(v));-                };-            };-        })(Data_Monoid.mempty(dictMonoid));-    };-};-var foldableStrMap = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (f) {-        return foldMap(dictMonoid)(Data_Function["const"](f));-    };-}, function (f) {-    return fold(function (z) {-        return function (v) {-            return f(z);-        };-    });-}, function (f) {-    return function (z) {-        return function (m) {-            return Data_Foldable.foldr(Data_Foldable.foldableArray)(f)(z)(values(m));-        };-    };-});-var traversableStrMap = new Data_Traversable.Traversable(function () {-    return foldableStrMap;-}, function () {-    return functorStrMap;-}, function (dictApplicative) {-    return Data_Traversable.traverse(traversableStrMap)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));-}, function (dictApplicative) {-    return function (f) {-        return function (ms) {-            return Data_Foldable.foldr(Data_Foldable.foldableArray)(function (x) {-                return function (acc) {-                    return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(union)(x))(acc);-                };-            })(Control_Applicative.pure(dictApplicative)($foreign.empty))(Data_Functor.map(Data_Functor.functorArray)(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Tuple.uncurry(singleton)))(Data_Functor.map(Data_Functor.functorArray)(Data_Traversable.traverse(Data_Tuple.traversableTuple)(dictApplicative)(f))(toArray(ms))));-        };-    };-});-var eqStrMap = function (dictEq) {-    return new Data_Eq.Eq(function (m1) {-        return function (m2) {-            return isSubmap(dictEq)(m1)(m2) && isSubmap(dictEq)(m2)(m1);-        };-    });-};-var eq1StrMap = new Data_Eq.Eq1(function (dictEq) {-    return Data_Eq.eq(eqStrMap(dictEq));-});-var $$delete = function (k) {-    return mutate(function (s) {-        return Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_StrMap_ST["delete"](s)(k));-    });-};-var pop = function (k) {-    return function (m) {-        return Data_Functor.mapFlipped(Data_Maybe.functorMaybe)(lookup(k)(m))(function (a) {-            return new Data_Tuple.Tuple(a, $$delete(k)(m));-        });-    };-};-var alter = function (f) {-    return function (k) {-        return function (m) {-            var v = f(lookup(k)(m));-            if (v instanceof Data_Maybe.Nothing) {-                return $$delete(k)(m);-            };-            if (v instanceof Data_Maybe.Just) {-                return insert(k)(v.value0)(m);-            };-            throw new Error("Failed pattern match at Data.StrMap line 187, column 15 - line 189, column 25: " + [ v.constructor.name ]);-        };-    };-};-var update = function (f) {-    return function (k) {-        return function (m) {-            return alter(Data_Maybe.maybe(Data_Maybe.Nothing.value)(f))(k)(m);-        };-    };-};-module.exports = {-    alter: alter, -    "delete": $$delete, -    fold: fold, -    foldM: foldM, -    foldMap: foldMap, -    foldMaybe: foldMaybe, -    freezeST: freezeST, -    fromFoldable: fromFoldable, -    fromFoldableWith: fromFoldableWith, -    insert: insert, -    isEmpty: isEmpty, -    isSubmap: isSubmap, -    lookup: lookup, -    mapWithKey: mapWithKey, -    member: member, -    pop: pop, -    pureST: pureST, -    singleton: singleton, -    thawST: thawST, -    toUnfoldable: toUnfoldable, -    union: union, -    unions: unions, -    update: update, -    values: values, -    functorStrMap: functorStrMap, -    foldableStrMap: foldableStrMap, -    traversableStrMap: traversableStrMap, -    eqStrMap: eqStrMap, -    eq1StrMap: eq1StrMap, -    showStrMap: showStrMap, -    semigroupStrMap: semigroupStrMap, -    monoidStrMap: monoidStrMap, -    all: $foreign.all, -    empty: $foreign.empty, -    keys: $foreign.keys, -    runST: $foreign.runST, -    size: $foreign.size-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad.Eff":70,"../Control.Monad.ST":79,"../Control.Semigroupoid":92,"../Data.Array":119,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Monoid":207,"../Data.Semigroup":229,"../Data.Show":233,"../Data.StrMap.ST":235,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unfoldable":247,"../Prelude":268,"./foreign":236}],238:[function(require,module,exports){-"use strict";--exports.charCodeAt = function (i) {-  return function (s) {-    if (i >= 0 && i < s.length) return s.charCodeAt(i);-    throw new Error("Data.String.Unsafe.charCodeAt: Invalid index.");-  };-};--exports.charAt = function (i) {-  return function (s) {-    if (i >= 0 && i < s.length) return s.charAt(i);-    throw new Error("Data.String.Unsafe.charAt: Invalid index.");-  };-};--exports.char = function (s) {-  if (s.length === 1) return s.charAt(0);-  throw new Error("Data.String.Unsafe.char: Expected string of length 1.");-};--},{}],239:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-module.exports = {-    "char": $foreign["char"], -    charAt: $foreign.charAt, -    charCodeAt: $foreign.charCodeAt-};--},{"./foreign":238}],240:[function(require,module,exports){-"use strict";--exports._charAt = function (just) {-  return function (nothing) {-    return function (i) {-      return function (s) {-        return i >= 0 && i < s.length ? just(s.charAt(i)) : nothing;-      };-    };-  };-};--exports.singleton = function (c) {-  return c;-};--exports._charCodeAt = function (just) {-  return function (nothing) {-    return function (i) {-      return function (s) {-        return i >= 0 && i < s.length ? just(s.charCodeAt(i)) : nothing;-      };-    };-  };-};--exports._toChar = function (just) {-  return function (nothing) {-    return function (s) {-      return s.length === 1 ? just(s) : nothing;-    };-  };-};--exports.fromCharArray = function (a) {-  return a.join("");-};--exports._indexOf = function (just) {-  return function (nothing) {-    return function (x) {-      return function (s) {-        var i = s.indexOf(x);-        return i === -1 ? nothing : just(i);-      };-    };-  };-};--exports["_indexOf'"] = function (just) {-  return function (nothing) {-    return function (x) {-      return function (startAt) {-        return function (s) {-          if (startAt < 0 || startAt > s.length) return nothing;-          var i = s.indexOf(x, startAt);-          return i === -1 ? nothing : just(i);-        };-      };-    };-  };-};--exports._lastIndexOf = function (just) {-  return function (nothing) {-    return function (x) {-      return function (s) {-        var i = s.lastIndexOf(x);-        return i === -1 ? nothing : just(i);-      };-    };-  };-};--exports["_lastIndexOf'"] = function (just) {-  return function (nothing) {-    return function (x) {-      return function (startAt) {-        return function (s) {-          if (startAt < 0 || startAt > s.length) return nothing;-          var i = s.lastIndexOf(x, startAt);-          return i === -1 ? nothing : just(i);-        };-      };-    };-  };-};--exports.length = function (s) {-  return s.length;-};--exports._localeCompare = function (lt) {-  return function (eq) {-    return function (gt) {-      return function (s1) {-        return function (s2) {-          var result = s1.localeCompare(s2);-          return result < 0 ? lt : result > 0 ? gt : eq;-        };-      };-    };-  };-};--exports.replace = function (s1) {-  return function (s2) {-    return function (s3) {-      return s3.replace(s1, s2);-    };-  };-};--exports.replaceAll = function (s1) {-  return function (s2) {-    return function (s3) {-      return s3.replace(new RegExp(s1.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&"), "g"), s2);-    };-  };-};--exports.take = function (n) {-  return function (s) {-    return s.substr(0, n);-  };-};--exports.drop = function (n) {-  return function (s) {-    return s.substring(n);-  };-};--exports.count = function (p) {-  return function (s) {-    var i = 0;-    while (i < s.length && p(s.charAt(i))) i++;-    return i;-  };-};--exports.split = function (sep) {-  return function (s) {-    return s.split(sep);-  };-};--exports._splitAt = function (just) {-  return function (nothing) {-    return function (i) {-      return function (s) {-        return i >= 0 && i < s.length ?-               just({ before: s.substring(0, i), after: s.substring(i) }) :-               nothing;-      };-    };-  };-};--exports.toCharArray = function (s) {-  return s.split("");-};--exports.toLower = function (s) {-  return s.toLowerCase();-};--exports.toUpper = function (s) {-  return s.toUpperCase();-};--exports.trim = function (s) {-  return s.trim();-};--exports.joinWith = function (s) {-  return function (xs) {-    return xs.join(s);-  };-};--},{}],241:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_Function = require("../Data.Function");-var Data_Maybe = require("../Data.Maybe");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_String_Unsafe = require("../Data.String.Unsafe");-var Prelude = require("../Prelude");-var Replacement = function (x) {-    return x;-};-var Pattern = function (x) {-    return x;-};-var uncons = function (v) {-    if (v === "") {-        return Data_Maybe.Nothing.value;-    };-    return new Data_Maybe.Just({-        head: Data_String_Unsafe.charAt(0)(v), -        tail: $foreign.drop(1)(v)-    });-};-var toChar = $foreign._toChar(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var takeWhile = function (p) {-    return function (s) {-        return $foreign.take($foreign.count(p)(s))(s);-    };-};-var splitAt = $foreign._splitAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var showReplacement = new Data_Show.Show(function (v) {-    return "(Replacement " + (v + ")");-});-var showPattern = new Data_Show.Show(function (v) {-    return "(Pattern " + (v + ")");-});-var $$null = function (s) {-    return s === "";-};-var newtypeReplacement = new Data_Newtype.Newtype(function (n) {-    return n;-}, Replacement);-var newtypePattern = new Data_Newtype.Newtype(function (n) {-    return n;-}, Pattern);-var localeCompare = $foreign._localeCompare(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value);-var lastIndexOf$prime = $foreign["_lastIndexOf'"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var lastIndexOf = $foreign._lastIndexOf(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var stripSuffix = function (v) {-    return function (str) {-        var v1 = lastIndexOf(v)(str);-        if (v1 instanceof Data_Maybe.Just && v1.value0 === ($foreign.length(str) - $foreign.length(v) | 0)) {-            return Data_Maybe.Just.create($foreign.take(v1.value0)(str));-        };-        return Data_Maybe.Nothing.value;-    };-};-var indexOf$prime = $foreign["_indexOf'"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var indexOf = $foreign._indexOf(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var stripPrefix = function (v) {-    return function (str) {-        var v1 = indexOf(v)(str);-        if (v1 instanceof Data_Maybe.Just && v1.value0 === 0) {-            return Data_Maybe.Just.create($foreign.drop($foreign.length(v))(str));-        };-        return Data_Maybe.Nothing.value;-    };-};-var eqReplacement = new Data_Eq.Eq(function (x) {-    return function (y) {-        return x === y;-    };-});-var ordReplacement = new Data_Ord.Ord(function () {-    return eqReplacement;-}, function (x) {-    return function (y) {-        return Data_Ord.compare(Data_Ord.ordString)(x)(y);-    };-});-var eqPattern = new Data_Eq.Eq(function (x) {-    return function (y) {-        return x === y;-    };-});-var ordPattern = new Data_Ord.Ord(function () {-    return eqPattern;-}, function (x) {-    return function (y) {-        return Data_Ord.compare(Data_Ord.ordString)(x)(y);-    };-});-var dropWhile = function (p) {-    return function (s) {-        return $foreign.drop($foreign.count(p)(s))(s);-    };-};-var contains = function (pat) {-    return function ($48) {-        return Data_Maybe.isJust(indexOf(pat)($48));-    };-};-var charCodeAt = $foreign._charCodeAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-var charAt = $foreign._charAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);-module.exports = {-    Pattern: Pattern, -    Replacement: Replacement, -    charAt: charAt, -    charCodeAt: charCodeAt, -    contains: contains, -    dropWhile: dropWhile, -    indexOf: indexOf, -    "indexOf'": indexOf$prime, -    lastIndexOf: lastIndexOf, -    "lastIndexOf'": lastIndexOf$prime, -    localeCompare: localeCompare, -    "null": $$null, -    splitAt: splitAt, -    stripPrefix: stripPrefix, -    stripSuffix: stripSuffix, -    takeWhile: takeWhile, -    toChar: toChar, -    uncons: uncons, -    eqPattern: eqPattern, -    ordPattern: ordPattern, -    newtypePattern: newtypePattern, -    showPattern: showPattern, -    eqReplacement: eqReplacement, -    ordReplacement: ordReplacement, -    newtypeReplacement: newtypeReplacement, -    showReplacement: showReplacement, -    count: $foreign.count, -    drop: $foreign.drop, -    fromCharArray: $foreign.fromCharArray, -    joinWith: $foreign.joinWith, -    length: $foreign.length, -    replace: $foreign.replace, -    replaceAll: $foreign.replaceAll, -    singleton: $foreign.singleton, -    split: $foreign.split, -    take: $foreign.take, -    toCharArray: $foreign.toCharArray, -    toLower: $foreign.toLower, -    toUpper: $foreign.toUpper, -    trim: $foreign.trim-};--},{"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.Function":149,"../Data.Maybe":198,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.String.Unsafe":239,"../Prelude":268,"./foreign":240}],242:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Eq = require("../Data.Eq");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Generic = require("../Data.Generic");-var Data_Maybe = require("../Data.Maybe");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Seconds = function (x) {-    return x;-};-var Minutes = function (x) {-    return x;-};-var Milliseconds = function (x) {-    return x;-};-var Hours = function (x) {-    return x;-};-var Days = function (x) {-    return x;-};-var Duration = function (fromDuration, toDuration) {-    this.fromDuration = fromDuration;-    this.toDuration = toDuration;-};-var toDuration = function (dict) {-    return dict.toDuration;-};-var showSeconds = new Data_Show.Show(function (v) {-    return "(Seconds " + (Data_Show.show(Data_Show.showNumber)(v) + ")");-});-var showMinutes = new Data_Show.Show(function (v) {-    return "(Minutes " + (Data_Show.show(Data_Show.showNumber)(v) + ")");-});-var showMilliseconds = new Data_Show.Show(function (v) {-    return "(Milliseconds " + (Data_Show.show(Data_Show.showNumber)(v) + ")");-});-var showHours = new Data_Show.Show(function (v) {-    return "(Hours " + (Data_Show.show(Data_Show.showNumber)(v) + ")");-});-var showDays = new Data_Show.Show(function (v) {-    return "(Days " + (Data_Show.show(Data_Show.showNumber)(v) + ")");-});-var semiringSeconds = Data_Semiring.semiringNumber;-var semiringMinutes = Data_Semiring.semiringNumber;-var semiringMilliseconds = Data_Semiring.semiringNumber;-var semiringHours = Data_Semiring.semiringNumber;-var semiringDays = Data_Semiring.semiringNumber;-var ringSeconds = Data_Ring.ringNumber;-var ringMinutes = Data_Ring.ringNumber;-var ringMilliseconds = Data_Ring.ringNumber;-var ringHours = Data_Ring.ringNumber;-var ringDays = Data_Ring.ringNumber;-var ordSeconds = Data_Ord.ordNumber;-var ordMinutes = Data_Ord.ordNumber;-var ordMilliseconds = Data_Ord.ordNumber;-var ordHours = Data_Ord.ordNumber;-var ordDays = Data_Ord.ordNumber;-var newtypeSeconds = new Data_Newtype.Newtype(function (n) {-    return n;-}, Seconds);-var newtypeMinutes = new Data_Newtype.Newtype(function (n) {-    return n;-}, Minutes);-var newtypeMilliseconds = new Data_Newtype.Newtype(function (n) {-    return n;-}, Milliseconds);-var newtypeHours = new Data_Newtype.Newtype(function (n) {-    return n;-}, Hours);-var newtypeDays = new Data_Newtype.Newtype(function (n) {-    return n;-}, Days);-var genericSeconds = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Seconds" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Seconds))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.Time.Duration.Seconds", [ {-        sigConstructor: "Data.Time.Duration.Seconds", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.Time.Duration.Seconds", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);-    } ]);-});-var genericMinutes = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Minutes" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Minutes))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.Time.Duration.Minutes", [ {-        sigConstructor: "Data.Time.Duration.Minutes", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.Time.Duration.Minutes", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);-    } ]);-});-var genericMilliseconds = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Milliseconds" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Milliseconds))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.Time.Duration.Milliseconds", [ {-        sigConstructor: "Data.Time.Duration.Milliseconds", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.Time.Duration.Milliseconds", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);-    } ]);-});-var genericHours = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Hours" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Hours))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.Time.Duration.Hours", [ {-        sigConstructor: "Data.Time.Duration.Hours", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.Time.Duration.Hours", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);-    } ]);-});-var genericDays = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Days" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Days))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Data.Time.Duration.Days", [ {-        sigConstructor: "Data.Time.Duration.Days", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Data.Time.Duration.Days", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);-    } ]);-});-var fromDuration = function (dict) {-    return dict.fromDuration;-};-var eqSeconds = Data_Eq.eqNumber;-var eqMinutes = Data_Eq.eqNumber;-var eqMilliseconds = Data_Eq.eqNumber;-var eqHours = Data_Eq.eqNumber;-var eqDays = Data_Eq.eqNumber;-var durationSeconds = new Duration(Data_Newtype.over(newtypeSeconds)(newtypeMilliseconds)(Seconds)(function (v) {-    return v * 1000.0;-}), Data_Newtype.over(newtypeMilliseconds)(newtypeSeconds)(Milliseconds)(function (v) {-    return v / 1000.0;-}));-var durationMinutes = new Duration(Data_Newtype.over(newtypeMinutes)(newtypeMilliseconds)(Minutes)(function (v) {-    return v * 60000.0;-}), Data_Newtype.over(newtypeMilliseconds)(newtypeMinutes)(Milliseconds)(function (v) {-    return v / 60000.0;-}));-var durationMilliseconds = new Duration(Control_Category.id(Control_Category.categoryFn), Control_Category.id(Control_Category.categoryFn));-var durationHours = new Duration(Data_Newtype.over(newtypeHours)(newtypeMilliseconds)(Hours)(function (v) {-    return v * 3600000.0;-}), Data_Newtype.over(newtypeMilliseconds)(newtypeHours)(Milliseconds)(function (v) {-    return v / 3600000.0;-}));-var durationDays = new Duration(Data_Newtype.over(newtypeDays)(newtypeMilliseconds)(Days)(function (v) {-    return v * 8.64e7;-}), Data_Newtype.over(newtypeMilliseconds)(newtypeDays)(Milliseconds)(function (v) {-    return v / 8.64e7;-}));-var convertDuration = function (dictDuration) {-    return function (dictDuration1) {-        return function ($80) {-            return toDuration(dictDuration1)(fromDuration(dictDuration)($80));-        };-    };-};-module.exports = {-    Days: Days, -    Hours: Hours, -    Milliseconds: Milliseconds, -    Minutes: Minutes, -    Seconds: Seconds, -    Duration: Duration, -    convertDuration: convertDuration, -    fromDuration: fromDuration, -    toDuration: toDuration, -    newtypeMilliseconds: newtypeMilliseconds, -    genericMilliseconds: genericMilliseconds, -    eqMilliseconds: eqMilliseconds, -    ordMilliseconds: ordMilliseconds, -    semiringMilliseconds: semiringMilliseconds, -    ringMilliseconds: ringMilliseconds, -    showMilliseconds: showMilliseconds, -    newtypeSeconds: newtypeSeconds, -    genericSeconds: genericSeconds, -    eqSeconds: eqSeconds, -    ordSeconds: ordSeconds, -    semiringSeconds: semiringSeconds, -    ringSeconds: ringSeconds, -    showSeconds: showSeconds, -    newtypeMinutes: newtypeMinutes, -    genericMinutes: genericMinutes, -    eqMinutes: eqMinutes, -    ordMinutes: ordMinutes, -    semiringMinutes: semiringMinutes, -    ringMinutes: ringMinutes, -    showMinutes: showMinutes, -    newtypeHours: newtypeHours, -    genericHours: genericHours, -    eqHours: eqHours, -    ordHours: ordHours, -    semiringHours: semiringHours, -    ringHours: ringHours, -    showHours: showHours, -    newtypeDays: newtypeDays, -    genericDays: genericDays, -    eqDays: eqDays, -    ordDays: ordDays, -    semiringDays: semiringDays, -    ringDays: ringDays, -    showDays: showDays, -    durationMilliseconds: durationMilliseconds, -    durationSeconds: durationSeconds, -    durationMinutes: durationMinutes, -    durationHours: durationHours, -    durationDays: durationDays-};--},{"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":92,"../Data.Eq":138,"../Data.EuclideanRing":140,"../Data.Generic":157,"../Data.Maybe":198,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Unit":249,"../Prelude":268}],243:[function(require,module,exports){-"use strict";--// jshint maxparams: 3--exports.traverseArrayImpl = function () {-  function Cont(fn) {-    this.fn = fn;-  }--  var emptyList = {};--  var ConsCell = function (head, tail) {-    this.head = head;-    this.tail = tail;-  };--  function consList(x) {-    return function (xs) {-      return new ConsCell(x, xs);-    };-  }--  function listToArray(list) {-    var arr = [];-    var xs = list;-    while (xs !== emptyList) {-      arr.push(xs.head);-      xs = xs.tail;-    }-    return arr;-  }--  return function (apply) {-    return function (map) {-      return function (pure) {-        return function (f) {-          var buildFrom = function (x, ys) {-            return apply(map(consList)(f(x)))(ys);-          };--          var go = function (acc, currentLen, xs) {-            if (currentLen === 0) {-              return acc;-            } else {-              var last = xs[currentLen - 1];-              return new Cont(function () {-                return go(buildFrom(last, acc), currentLen - 1, xs);-              });-            }-          };--          return function (array) {-            var result = go(pure(emptyList), array.length, array);-            while (result instanceof Cont) {-              result = result.fn();-            }--            return map(listToArray)(result);-          };-        };-      };-    };-  };-}();--},{}],244:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Category = require("../Control.Category");-var Data_Foldable = require("../Data.Foldable");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Data_Maybe_First = require("../Data.Maybe.First");-var Data_Maybe_Last = require("../Data.Maybe.Last");-var Data_Monoid_Additive = require("../Data.Monoid.Additive");-var Data_Monoid_Conj = require("../Data.Monoid.Conj");-var Data_Monoid_Disj = require("../Data.Monoid.Disj");-var Data_Monoid_Dual = require("../Data.Monoid.Dual");-var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");-var Prelude = require("../Prelude");-var StateL = function (x) {-    return x;-};-var StateR = function (x) {-    return x;-};-var Traversable = function (Foldable1, Functor0, sequence, traverse) {-    this.Foldable1 = Foldable1;-    this.Functor0 = Functor0;-    this.sequence = sequence;-    this.traverse = traverse;-};-var traverse = function (dict) {-    return dict.traverse;-};-var traversableMultiplicative = new Traversable(function () {-    return Data_Foldable.foldableMultiplicative;-}, function () {-    return Data_Monoid_Multiplicative.functorMultiplicative;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Multiplicative.Multiplicative)(v);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Multiplicative.Multiplicative)(f(v));-        };-    };-});-var traversableMaybe = new Traversable(function () {-    return Data_Foldable.foldableMaybe;-}, function () {-    return Data_Maybe.functorMaybe;-}, function (dictApplicative) {-    return function (v) {-        if (v instanceof Data_Maybe.Nothing) {-            return Control_Applicative.pure(dictApplicative)(Data_Maybe.Nothing.value);-        };-        if (v instanceof Data_Maybe.Just) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe.Just.create)(v.value0);-        };-        throw new Error("Failed pattern match at Data.Traversable line 87, column 3 - line 87, column 35: " + [ v.constructor.name ]);-    };-}, function (dictApplicative) {-    return function (v) {-        return function (v1) {-            if (v1 instanceof Data_Maybe.Nothing) {-                return Control_Applicative.pure(dictApplicative)(Data_Maybe.Nothing.value);-            };-            if (v1 instanceof Data_Maybe.Just) {-                return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe.Just.create)(v(v1.value0));-            };-            throw new Error("Failed pattern match at Data.Traversable line 85, column 3 - line 85, column 37: " + [ v.constructor.name, v1.constructor.name ]);-        };-    };-});-var traversableDual = new Traversable(function () {-    return Data_Foldable.foldableDual;-}, function () {-    return Data_Monoid_Dual.functorDual;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Dual.Dual)(v);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Dual.Dual)(f(v));-        };-    };-});-var traversableDisj = new Traversable(function () {-    return Data_Foldable.foldableDisj;-}, function () {-    return Data_Monoid_Disj.functorDisj;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Disj.Disj)(v);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Disj.Disj)(f(v));-        };-    };-});-var traversableConj = new Traversable(function () {-    return Data_Foldable.foldableConj;-}, function () {-    return Data_Monoid_Conj.functorConj;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Conj.Conj)(v);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Conj.Conj)(f(v));-        };-    };-});-var traversableAdditive = new Traversable(function () {-    return Data_Foldable.foldableAdditive;-}, function () {-    return Data_Monoid_Additive.functorAdditive;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Additive.Additive)(v);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Additive.Additive)(f(v));-        };-    };-});-var stateR = function (v) {-    return v;-};-var stateL = function (v) {-    return v;-};-var sequenceDefault = function (dictTraversable) {-    return function (dictApplicative) {-        return traverse(dictTraversable)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));-    };-};-var traversableArray = new Traversable(function () {-    return Data_Foldable.foldableArray;-}, function () {-    return Data_Functor.functorArray;-}, function (dictApplicative) {-    return sequenceDefault(traversableArray)(dictApplicative);-}, function (dictApplicative) {-    return $foreign.traverseArrayImpl(Control_Apply.apply(dictApplicative.Apply0()))(Data_Functor.map((dictApplicative.Apply0()).Functor0()))(Control_Applicative.pure(dictApplicative));-});-var sequence = function (dict) {-    return dict.sequence;-};-var traversableFirst = new Traversable(function () {-    return Data_Foldable.foldableFirst;-}, function () {-    return Data_Maybe_First.functorFirst;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_First.First)(sequence(traversableMaybe)(dictApplicative)(v));-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_First.First)(traverse(traversableMaybe)(dictApplicative)(f)(v));-        };-    };-});-var traversableLast = new Traversable(function () {-    return Data_Foldable.foldableLast;-}, function () {-    return Data_Maybe_Last.functorLast;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_Last.Last)(sequence(traversableMaybe)(dictApplicative)(v));-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_Last.Last)(traverse(traversableMaybe)(dictApplicative)(f)(v));-        };-    };-});-var traverseDefault = function (dictTraversable) {-    return function (dictApplicative) {-        return function (f) {-            return function (ta) {-                return sequence(dictTraversable)(dictApplicative)(Data_Functor.map(dictTraversable.Functor0())(f)(ta));-            };-        };-    };-};-var functorStateR = new Data_Functor.Functor(function (f) {-    return function (k) {-        return function (s) {-            var v = stateR(k)(s);-            return {-                accum: v.accum, -                value: f(v.value)-            };-        };-    };-});-var functorStateL = new Data_Functor.Functor(function (f) {-    return function (k) {-        return function (s) {-            var v = stateL(k)(s);-            return {-                accum: v.accum, -                value: f(v.value)-            };-        };-    };-});-var $$for = function (dictApplicative) {-    return function (dictTraversable) {-        return function (x) {-            return function (f) {-                return traverse(dictTraversable)(dictApplicative)(f)(x);-            };-        };-    };-};-var applyStateR = new Control_Apply.Apply(function () {-    return functorStateR;-}, function (f) {-    return function (x) {-        return function (s) {-            var v = stateR(x)(s);-            var v1 = stateR(f)(v.accum);-            return {-                accum: v1.accum, -                value: v1.value(v.value)-            };-        };-    };-});-var applyStateL = new Control_Apply.Apply(function () {-    return functorStateL;-}, function (f) {-    return function (x) {-        return function (s) {-            var v = stateL(f)(s);-            var v1 = stateL(x)(v.accum);-            return {-                accum: v1.accum, -                value: v.value(v1.value)-            };-        };-    };-});-var applicativeStateR = new Control_Applicative.Applicative(function () {-    return applyStateR;-}, function (a) {-    return function (s) {-        return {-            accum: s, -            value: a-        };-    };-});-var mapAccumR = function (dictTraversable) {-    return function (f) {-        return function (s0) {-            return function (xs) {-                return stateR(traverse(dictTraversable)(applicativeStateR)(function (a) {-                    return function (s) {-                        return f(s)(a);-                    };-                })(xs))(s0);-            };-        };-    };-};-var scanr = function (dictTraversable) {-    return function (f) {-        return function (b0) {-            return function (xs) {-                return (mapAccumR(dictTraversable)(function (b) {-                    return function (a) {-                        var b$prime = f(a)(b);-                        return {-                            accum: b$prime, -                            value: b$prime-                        };-                    };-                })(b0)(xs)).value;-            };-        };-    };-};-var applicativeStateL = new Control_Applicative.Applicative(function () {-    return applyStateL;-}, function (a) {-    return function (s) {-        return {-            accum: s, -            value: a-        };-    };-});-var mapAccumL = function (dictTraversable) {-    return function (f) {-        return function (s0) {-            return function (xs) {-                return stateL(traverse(dictTraversable)(applicativeStateL)(function (a) {-                    return function (s) {-                        return f(s)(a);-                    };-                })(xs))(s0);-            };-        };-    };-};-var scanl = function (dictTraversable) {-    return function (f) {-        return function (b0) {-            return function (xs) {-                return (mapAccumL(dictTraversable)(function (b) {-                    return function (a) {-                        var b$prime = f(b)(a);-                        return {-                            accum: b$prime, -                            value: b$prime-                        };-                    };-                })(b0)(xs)).value;-            };-        };-    };-};-module.exports = {-    Traversable: Traversable, -    "for": $$for, -    mapAccumL: mapAccumL, -    mapAccumR: mapAccumR, -    scanl: scanl, -    scanr: scanr, -    sequence: sequence, -    sequenceDefault: sequenceDefault, -    traverse: traverse, -    traverseDefault: traverseDefault, -    traversableArray: traversableArray, -    traversableMaybe: traversableMaybe, -    traversableFirst: traversableFirst, -    traversableLast: traversableLast, -    traversableAdditive: traversableAdditive, -    traversableDual: traversableDual, -    traversableConj: traversableConj, -    traversableDisj: traversableDisj, -    traversableMultiplicative: traversableMultiplicative-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Data.Foldable":143,"../Data.Functor":155,"../Data.Maybe":198,"../Data.Maybe.First":196,"../Data.Maybe.Last":197,"../Data.Monoid.Additive":201,"../Data.Monoid.Conj":202,"../Data.Monoid.Disj":203,"../Data.Monoid.Dual":204,"../Data.Monoid.Multiplicative":206,"../Prelude":268,"./foreign":243}],245:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Biapplicative = require("../Control.Biapplicative");-var Control_Biapply = require("../Control.Biapply");-var Control_Bind = require("../Control.Bind");-var Control_Comonad = require("../Control.Comonad");-var Control_Extend = require("../Control.Extend");-var Control_Lazy = require("../Control.Lazy");-var Control_Monad = require("../Control.Monad");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Bifoldable = require("../Data.Bifoldable");-var Data_Bifunctor = require("../Data.Bifunctor");-var Data_Bitraversable = require("../Data.Bitraversable");-var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");-var Data_Bounded = require("../Data.Bounded");-var Data_CommutativeRing = require("../Data.CommutativeRing");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Functor_Invariant = require("../Data.Functor.Invariant");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Maybe_First = require("../Data.Maybe.First");-var Data_Monoid = require("../Data.Monoid");-var Data_Newtype = require("../Data.Newtype");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Traversable = require("../Data.Traversable");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Tuple = (function () {-    function Tuple(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    Tuple.create = function (value0) {-        return function (value1) {-            return new Tuple(value0, value1);-        };-    };-    return Tuple;-})();-var uncurry = function (f) {-    return function (v) {-        return f(v.value0)(v.value1);-    };-};-var swap = function (v) {-    return new Tuple(v.value1, v.value0);-};-var snd = function (v) {-    return v.value1;-};-var showTuple = function (dictShow) {-    return function (dictShow1) {-        return new Data_Show.Show(function (v) {-            return "(Tuple " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")")));-        });-    };-};-var semiringTuple = function (dictSemiring) {-    return function (dictSemiring1) {-        return new Data_Semiring.Semiring(function (v) {-            return function (v1) {-                return new Tuple(Data_Semiring.add(dictSemiring)(v.value0)(v1.value0), Data_Semiring.add(dictSemiring1)(v.value1)(v1.value1));-            };-        }, function (v) {-            return function (v1) {-                return new Tuple(Data_Semiring.mul(dictSemiring)(v.value0)(v1.value0), Data_Semiring.mul(dictSemiring1)(v.value1)(v1.value1));-            };-        }, new Tuple(Data_Semiring.one(dictSemiring), Data_Semiring.one(dictSemiring1)), new Tuple(Data_Semiring.zero(dictSemiring), Data_Semiring.zero(dictSemiring1)));-    };-};-var semigroupoidTuple = new Control_Semigroupoid.Semigroupoid(function (v) {-    return function (v1) {-        return new Tuple(v1.value0, v.value1);-    };-});-var semigroupTuple = function (dictSemigroup) {-    return function (dictSemigroup1) {-        return new Data_Semigroup.Semigroup(function (v) {-            return function (v1) {-                return new Tuple(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0), Data_Semigroup.append(dictSemigroup1)(v.value1)(v1.value1));-            };-        });-    };-};-var ringTuple = function (dictRing) {-    return function (dictRing1) {-        return new Data_Ring.Ring(function () {-            return semiringTuple(dictRing.Semiring0())(dictRing1.Semiring0());-        }, function (v) {-            return function (v1) {-                return new Tuple(Data_Ring.sub(dictRing)(v.value0)(v1.value0), Data_Ring.sub(dictRing1)(v.value1)(v1.value1));-            };-        });-    };-};-var monoidTuple = function (dictMonoid) {-    return function (dictMonoid1) {-        return new Data_Monoid.Monoid(function () {-            return semigroupTuple(dictMonoid.Semigroup0())(dictMonoid1.Semigroup0());-        }, new Tuple(Data_Monoid.mempty(dictMonoid), Data_Monoid.mempty(dictMonoid1)));-    };-};-var lookup = function (dictFoldable) {-    return function (dictEq) {-        return function (a) {-            return function ($261) {-                return Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst)(Data_Foldable.foldMap(dictFoldable)(Data_Maybe_First.monoidFirst)(function (v) {-                    var $143 = Data_Eq.eq(dictEq)(a)(v.value0);-                    if ($143) {-                        return new Data_Maybe.Just(v.value1);-                    };-                    return Data_Maybe.Nothing.value;-                })($261));-            };-        };-    };-};-var heytingAlgebraTuple = function (dictHeytingAlgebra) {-    return function (dictHeytingAlgebra1) {-        return new Data_HeytingAlgebra.HeytingAlgebra(function (v) {-            return function (v1) {-                return new Tuple(Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v.value0)(v1.value0), Data_HeytingAlgebra.conj(dictHeytingAlgebra1)(v.value1)(v1.value1));-            };-        }, function (v) {-            return function (v1) {-                return new Tuple(Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v.value0)(v1.value0), Data_HeytingAlgebra.disj(dictHeytingAlgebra1)(v.value1)(v1.value1));-            };-        }, new Tuple(Data_HeytingAlgebra.ff(dictHeytingAlgebra), Data_HeytingAlgebra.ff(dictHeytingAlgebra1)), function (v) {-            return function (v1) {-                return new Tuple(Data_HeytingAlgebra.implies(dictHeytingAlgebra)(v.value0)(v1.value0), Data_HeytingAlgebra.implies(dictHeytingAlgebra1)(v.value1)(v1.value1));-            };-        }, function (v) {-            return new Tuple(Data_HeytingAlgebra.not(dictHeytingAlgebra)(v.value0), Data_HeytingAlgebra.not(dictHeytingAlgebra1)(v.value1));-        }, new Tuple(Data_HeytingAlgebra.tt(dictHeytingAlgebra), Data_HeytingAlgebra.tt(dictHeytingAlgebra1)));-    };-};-var functorTuple = new Data_Functor.Functor(function (f) {-    return function (v) {-        return new Tuple(v.value0, f(v.value1));-    };-});-var invariantTuple = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorTuple));-var fst = function (v) {-    return v.value0;-};-var lazyTuple = function (dictLazy) {-    return function (dictLazy1) {-        return new Control_Lazy.Lazy(function (f) {-            return new Tuple(Control_Lazy.defer(dictLazy)(function (v) {-                return fst(f(Data_Unit.unit));-            }), Control_Lazy.defer(dictLazy1)(function (v) {-                return snd(f(Data_Unit.unit));-            }));-        });-    };-};-var foldableTuple = new Data_Foldable.Foldable(function (dictMonoid) {-    return function (f) {-        return function (v) {-            return f(v.value1);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(z)(v.value1);-        };-    };-}, function (f) {-    return function (z) {-        return function (v) {-            return f(v.value1)(z);-        };-    };-});-var traversableTuple = new Data_Traversable.Traversable(function () {-    return foldableTuple;-}, function () {-    return functorTuple;-}, function (dictApplicative) {-    return function (v) {-        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create(v.value0))(v.value1);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (v) {-            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create(v.value0))(f(v.value1));-        };-    };-});-var extendTuple = new Control_Extend.Extend(function () {-    return functorTuple;-}, function (f) {-    return function (v) {-        return new Tuple(v.value0, f(v));-    };-});-var eqTuple = function (dictEq) {-    return function (dictEq1) {-        return new Data_Eq.Eq(function (x) {-            return function (y) {-                return Data_Eq.eq(dictEq)(x.value0)(y.value0) && Data_Eq.eq(dictEq1)(x.value1)(y.value1);-            };-        });-    };-};-var ordTuple = function (dictOrd) {-    return function (dictOrd1) {-        return new Data_Ord.Ord(function () {-            return eqTuple(dictOrd.Eq0())(dictOrd1.Eq0());-        }, function (x) {-            return function (y) {-                var v = Data_Ord.compare(dictOrd)(x.value0)(y.value0);-                if (v instanceof Data_Ordering.LT) {-                    return Data_Ordering.LT.value;-                };-                if (v instanceof Data_Ordering.GT) {-                    return Data_Ordering.GT.value;-                };-                return Data_Ord.compare(dictOrd1)(x.value1)(y.value1);-            };-        });-    };-};-var eq1Tuple = function (dictEq) {-    return new Data_Eq.Eq1(function (dictEq1) {-        return Data_Eq.eq(eqTuple(dictEq)(dictEq1));-    });-};-var ord1Tuple = function (dictOrd) {-    return new Data_Ord.Ord1(function () {-        return eq1Tuple(dictOrd.Eq0());-    }, function (dictOrd1) {-        return Data_Ord.compare(ordTuple(dictOrd)(dictOrd1));-    });-};-var curry = function (f) {-    return function (a) {-        return function (b) {-            return f(new Tuple(a, b));-        };-    };-};-var comonadTuple = new Control_Comonad.Comonad(function () {-    return extendTuple;-}, snd);-var commutativeRingTuple = function (dictCommutativeRing) {-    return function (dictCommutativeRing1) {-        return new Data_CommutativeRing.CommutativeRing(function () {-            return ringTuple(dictCommutativeRing.Ring0())(dictCommutativeRing1.Ring0());-        });-    };-};-var boundedTuple = function (dictBounded) {-    return function (dictBounded1) {-        return new Data_Bounded.Bounded(function () {-            return ordTuple(dictBounded.Ord0())(dictBounded1.Ord0());-        }, new Tuple(Data_Bounded.bottom(dictBounded), Data_Bounded.bottom(dictBounded1)), new Tuple(Data_Bounded.top(dictBounded), Data_Bounded.top(dictBounded1)));-    };-};-var booleanAlgebraTuple = function (dictBooleanAlgebra) {-    return function (dictBooleanAlgebra1) {-        return new Data_BooleanAlgebra.BooleanAlgebra(function () {-            return heytingAlgebraTuple(dictBooleanAlgebra.HeytingAlgebra0())(dictBooleanAlgebra1.HeytingAlgebra0());-        });-    };-};-var bifunctorTuple = new Data_Bifunctor.Bifunctor(function (f) {-    return function (g) {-        return function (v) {-            return new Tuple(f(v.value0), g(v.value1));-        };-    };-});-var bifoldableTuple = new Data_Bifoldable.Bifoldable(function (dictMonoid) {-    return function (f) {-        return function (g) {-            return function (v) {-                return Data_Semigroup.append(dictMonoid.Semigroup0())(f(v.value0))(g(v.value1));-            };-        };-    };-}, function (f) {-    return function (g) {-        return function (z) {-            return function (v) {-                return g(f(z)(v.value0))(v.value1);-            };-        };-    };-}, function (f) {-    return function (g) {-        return function (z) {-            return function (v) {-                return f(v.value0)(g(v.value1)(z));-            };-        };-    };-});-var bitraversableTuple = new Data_Bitraversable.Bitraversable(function () {-    return bifoldableTuple;-}, function () {-    return bifunctorTuple;-}, function (dictApplicative) {-    return function (v) {-        return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create)(v.value0))(v.value1);-    };-}, function (dictApplicative) {-    return function (f) {-        return function (g) {-            return function (v) {-                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create)(f(v.value0)))(g(v.value1));-            };-        };-    };-});-var biapplyTuple = new Control_Biapply.Biapply(function () {-    return bifunctorTuple;-}, function (v) {-    return function (v1) {-        return new Tuple(v.value0(v1.value0), v.value1(v1.value1));-    };-});-var biapplicativeTuple = new Control_Biapplicative.Biapplicative(function () {-    return biapplyTuple;-}, Tuple.create);-var applyTuple = function (dictSemigroup) {-    return new Control_Apply.Apply(function () {-        return functorTuple;-    }, function (v) {-        return function (v1) {-            return new Tuple(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0), v.value1(v1.value1));-        };-    });-};-var bindTuple = function (dictSemigroup) {-    return new Control_Bind.Bind(function () {-        return applyTuple(dictSemigroup);-    }, function (v) {-        return function (f) {-            var v1 = f(v.value1);-            return new Tuple(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0), v1.value1);-        };-    });-};-var applicativeTuple = function (dictMonoid) {-    return new Control_Applicative.Applicative(function () {-        return applyTuple(dictMonoid.Semigroup0());-    }, Tuple.create(Data_Monoid.mempty(dictMonoid)));-};-var monadTuple = function (dictMonoid) {-    return new Control_Monad.Monad(function () {-        return applicativeTuple(dictMonoid);-    }, function () {-        return bindTuple(dictMonoid.Semigroup0());-    });-};-module.exports = {-    Tuple: Tuple, -    curry: curry, -    fst: fst, -    lookup: lookup, -    snd: snd, -    swap: swap, -    uncurry: uncurry, -    showTuple: showTuple, -    eqTuple: eqTuple, -    eq1Tuple: eq1Tuple, -    ordTuple: ordTuple, -    ord1Tuple: ord1Tuple, -    boundedTuple: boundedTuple, -    semigroupoidTuple: semigroupoidTuple, -    semigroupTuple: semigroupTuple, -    monoidTuple: monoidTuple, -    semiringTuple: semiringTuple, -    ringTuple: ringTuple, -    commutativeRingTuple: commutativeRingTuple, -    heytingAlgebraTuple: heytingAlgebraTuple, -    booleanAlgebraTuple: booleanAlgebraTuple, -    functorTuple: functorTuple, -    invariantTuple: invariantTuple, -    bifunctorTuple: bifunctorTuple, -    applyTuple: applyTuple, -    biapplyTuple: biapplyTuple, -    applicativeTuple: applicativeTuple, -    biapplicativeTuple: biapplicativeTuple, -    bindTuple: bindTuple, -    monadTuple: monadTuple, -    extendTuple: extendTuple, -    comonadTuple: comonadTuple, -    lazyTuple: lazyTuple, -    foldableTuple: foldableTuple, -    bifoldableTuple: bifoldableTuple, -    traversableTuple: traversableTuple, -    bitraversableTuple: bitraversableTuple-};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Biapplicative":43,"../Control.Biapply":44,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":49,"../Control.Lazy":50,"../Control.Monad":86,"../Control.Semigroupoid":92,"../Data.Bifoldable":121,"../Data.Bifunctor":127,"../Data.Bitraversable":128,"../Data.BooleanAlgebra":130,"../Data.Bounded":132,"../Data.CommutativeRing":133,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Function":149,"../Data.Functor":155,"../Data.Functor.Invariant":153,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Maybe.First":196,"../Data.Monoid":207,"../Data.Newtype":209,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Traversable":244,"../Data.Unit":249,"../Prelude":268}],246:[function(require,module,exports){-"use strict";--exports.unfoldrArrayImpl = function (isNothing) {-  return function (fromJust) {-    return function (fst) {-      return function (snd) {-        return function (f) {-          return function (b) {-            var result = [];-            var value = b;-            while (true) { // eslint-disable-line no-constant-condition-              var maybe = f(value);-              if (isNothing(maybe)) return result;-              var tuple = fromJust(maybe);-              result.push(fst(tuple));-              value = snd(tuple);-            }-          };-        };-      };-    };-  };-};--},{}],247:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_Maybe = require("../Data.Maybe");-var Data_Ord = require("../Data.Ord");-var Data_Ring = require("../Data.Ring");-var Data_Traversable = require("../Data.Traversable");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Partial_Unsafe = require("../Partial.Unsafe");-var Prelude = require("../Prelude");-var Unfoldable = function (unfoldr) {-    this.unfoldr = unfoldr;-};-var unfoldr = function (dict) {-    return dict.unfoldr;-};-var unfoldableArray = new Unfoldable($foreign.unfoldrArrayImpl(Data_Maybe.isNothing)(Data_Maybe.fromJust())(Data_Tuple.fst)(Data_Tuple.snd));-var replicate = function (dictUnfoldable) {-    return function (n) {-        return function (v) {-            var step = function (i) {-                var $8 = i <= 0;-                if ($8) {-                    return Data_Maybe.Nothing.value;-                };-                return new Data_Maybe.Just(new Data_Tuple.Tuple(v, i - 1 | 0));-            };-            return unfoldr(dictUnfoldable)(step)(n);-        };-    };-};-var replicateA = function (dictApplicative) {-    return function (dictUnfoldable) {-        return function (dictTraversable) {-            return function (n) {-                return function (m) {-                    return Data_Traversable.sequence(dictTraversable)(dictApplicative)(replicate(dictUnfoldable)(n)(m));-                };-            };-        };-    };-};-var singleton = function (dictUnfoldable) {-    return replicate(dictUnfoldable)(1);-};-var none = function (dictUnfoldable) {-    return unfoldr(dictUnfoldable)(Data_Function["const"](Data_Maybe.Nothing.value))(Data_Unit.unit);-};-var fromMaybe = function (dictUnfoldable) {-    return unfoldr(dictUnfoldable)(function (b) {-        return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Function.flip(Data_Tuple.Tuple.create)(Data_Maybe.Nothing.value))(b);-    });-};-module.exports = {-    Unfoldable: Unfoldable, -    fromMaybe: fromMaybe, -    none: none, -    replicate: replicate, -    replicateA: replicateA, -    singleton: singleton, -    unfoldr: unfoldr, -    unfoldableArray: unfoldableArray-};--},{"../Data.Function":149,"../Data.Functor":155,"../Data.Maybe":198,"../Data.Ord":216,"../Data.Ring":227,"../Data.Traversable":244,"../Data.Tuple":245,"../Data.Unit":249,"../Partial.Unsafe":265,"../Prelude":268,"./foreign":246}],248:[function(require,module,exports){-"use strict";--exports.unit = {};--},{}],249:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Data_Show = require("../Data.Show");-var showUnit = new Data_Show.Show(function (v) {-    return "unit";-});-module.exports = {-    showUnit: showUnit, -    unit: $foreign.unit-};--},{"../Data.Show":233,"./foreign":248}],250:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Show = require("../Data.Show");-var Void = function (x) {-    return x;-};-var absurd = function (a) {-    var spin = function (__copy_v) {-        var v = __copy_v;-        var __tco_result;-        var __tco_v;-        function __tco_loop(v) {-            __tco_v = v;-            return;-        };-        while (!false) {-            __tco_result = __tco_loop(v);-            v = __tco_v;-        };-        return __tco_result;-    };-    return spin(a);-};-var showVoid = new Data_Show.Show(absurd);-module.exports = {-    absurd: absurd, -    showVoid: showVoid-};--},{"../Data.Show":233}],251:[function(require,module,exports){-/* globals exports */-"use strict";--// module Global--exports.nan = NaN;--exports.isNaN = isNaN;--exports.infinity = Infinity;--exports.isFinite = isFinite;--exports.readInt = function (radix) {-  return function (n) {-    return parseInt(n, radix);-  };-};--exports.readFloat = parseFloat;--exports.decodeURI = decodeURI;-exports.encodeURI = encodeURI;-exports.decodeURIComponent = decodeURIComponent;-exports.encodeURIComponent = encodeURIComponent;--},{}],252:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-module.exports = {-    "decodeURI": $foreign["decodeURI"], -    "decodeURIComponent": $foreign["decodeURIComponent"], -    "encodeURI": $foreign["encodeURI"], -    "encodeURIComponent": $foreign["encodeURIComponent"], -    infinity: $foreign.infinity, -    "isFinite": $foreign["isFinite"], -    "isNaN": $foreign["isNaN"], -    nan: $foreign.nan, -    readFloat: $foreign.readFloat, -    readInt: $foreign.readInt-};--},{"./foreign":251}],253:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Common = require("../Common");-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Aff = require("../Control.Monad.Aff");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");-var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");-var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");-var DOM = require("../DOM");-var Data_Argonaut = require("../Data.Argonaut");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");-var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");-var Data_Either = require("../Data.Either");-var Data_FormURLEncoded = require("../Data.FormURLEncoded");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Show = require("../Data.Show");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Network_HTTP_Affjax = require("../Network.HTTP.Affjax");-var Network_HTTP_Affjax_Request = require("../Network.HTTP.Affjax.Request");-var Network_HTTP_Affjax_Response = require("../Network.HTTP.Affjax.Response");-var Partial_Unsafe = require("../Partial.Unsafe");-var Prelude = require("../Prelude");-var resp1Success = function (pass) {-    return function (j) {-        return function (loc) {-            return function __do() {-                Control_Monad_Eff_Console.log(Data_Show.show(Data_Argonaut_Core.showJson)(j))();-                var eitherChallenge = Data_Argonaut_Decode_Class.decodeJson(Common.decodeJsonChallenge)(j);-                if (eitherChallenge instanceof Data_Either.Left) {-                    var eitherErr = Data_Argonaut_Decode_Class.decodeJson(Common.decodeJsonErr)(j);-                    return Data_Either.either(Common.fail(Common.Login.value))(function (v) {-                        return Common.fail(Common.Login.value)(v.value0.err);-                    })(eitherErr)();-                };-                if (eitherChallenge instanceof Data_Either.Right) {-                    Common.progress("HMAC 1")();-                    var salted = Common.hmacSha3(Common.fromUtf8(pass), Common.fromHex(eitherChallenge.value0.value0.salt));-                    Common.progress("HMAC 2")();-                    var response = Common.hmacSha3(Common.fromUtf8(salted), Common.fromUtf8(eitherChallenge.value0.value0.token));-                    Common.progress("sending response")();-                    var data2 = Data_FormURLEncoded.fromArray([ new Data_Tuple.Tuple("token", new Data_Maybe.Just(eitherChallenge.value0.value0.token)), new Data_Tuple.Tuple("response", new Data_Maybe.Just(response)) ]);-                    var v = Control_Monad_Aff.runAff(function (e) {-                        return Common.fail(Common.Login.value)(Data_Show.show(Control_Monad_Eff_Exception.showError)(e));-                    })(function (x) {-                        return Common.welcome(x.response)(Common.Login.value);-                    })(Network_HTTP_Affjax.post(Network_HTTP_Affjax_Request.requestableFormURLEncoded)(Network_HTTP_Affjax_Response.responsableJson)(loc)(data2))();-                    return Data_Unit.unit;-                };-                throw new Error("Failed pattern match at Login line 87, column 3 - line 104, column 12: " + [ eitherChallenge.constructor.name ]);-            };-        };-    };-};-var onLoginClick = function (login) {-    return function (ev) {-        return function (x) {-            return function __do() {-                Control_Monad_Eff_Console.log("click!")();-                Control_Monad_Eff_JQuery.preventDefault(ev)();-                Control_Monad_Eff_JQuery.hide(login)();-                var v = Data_Functor.map(Control_Monad_Eff.functorEff)(Control_Monad_Eff_JQuery.setProp("disabled")(true))(Control_Monad_Eff_JQuery.select(".login input"))();-                var v1 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#username"))();-                var v2 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#password"))();-                var v3 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Common.getAttr("action"))(Control_Monad_Eff_JQuery.select("#loginform"))();-                Control_Monad_Eff_Console.log(v3)();-                var username = Common.fromForeign(v1);-                var password = Common.fromForeign(v2);-                var $17 = !(Data_Maybe.isNothing(username) && Data_Maybe.isNothing(password));-                if ($17) {-                    Common.progress("Obtaining Challenge...")();-                    var data1 = Data_FormURLEncoded.fromArray([ new Data_Tuple.Tuple("username", username) ]);-                    var v4 = Control_Monad_Aff.runAff(function (e) {-                        return Common.fail(Common.Login.value)(Data_Show.show(Control_Monad_Eff_Exception.showError)(e));-                    })(function (y) {-                        return resp1Success(Data_Maybe.fromJust()(password))(y.response)(v3);-                    })(Network_HTTP_Affjax.post(Network_HTTP_Affjax_Request.requestableFormURLEncoded)(Network_HTTP_Affjax_Response.responsableJson)(v3)(data1))();-                    return Control_Monad_Eff_Console.log("success so far")();-                };-                return Control_Monad_Eff_Console.log("error")();-            };-        };-    };-};-module.exports = {-    onLoginClick: onLoginClick, -    resp1Success: resp1Success-};--},{"../Common":37,"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":55,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Console":60,"../Control.Monad.Eff.Exception":62,"../Control.Monad.Eff.JQuery":64,"../DOM":100,"../Data.Argonaut":114,"../Data.Argonaut.Core":102,"../Data.Argonaut.Decode":105,"../Data.Argonaut.Decode.Class":103,"../Data.Either":136,"../Data.FormURLEncoded":146,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Show":233,"../Data.Tuple":245,"../Data.Unit":249,"../Network.HTTP.Affjax":260,"../Network.HTTP.Affjax.Request":257,"../Network.HTTP.Affjax.Response":258,"../Partial.Unsafe":265,"../Prelude":268}],254:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Activate = require("../Activate");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");-var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");-var DOM = require("../DOM");-var Data_Function = require("../Data.Function");-var Login = require("../Login");-var Network_HTTP_Affjax = require("../Network.HTTP.Affjax");-var Prelude = require("../Prelude");-var main = Control_Monad_Eff_JQuery.ready(function __do() {-    Control_Monad_Eff_Console.log("let's go")();-    Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.display)(Control_Monad_Eff_JQuery.select(".js-hidden"))();-    Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.hide)(Control_Monad_Eff_JQuery.select(".noscript"))();-    var v = Control_Monad_Eff_JQuery.select("#activate")();-    var v1 = Control_Monad_Eff_JQuery.select("#login")();-    Control_Monad_Eff_JQuery.on("click")(Activate.onActivateClick(v))(v)();-    return Control_Monad_Eff_JQuery.on("click")(Login.onLoginClick(v))(v1)();-});-module.exports = {-    main: main-};--},{"../Activate":35,"../Control.Bind":46,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Console":60,"../Control.Monad.Eff.JQuery":64,"../DOM":100,"../Data.Function":149,"../Login":253,"../Network.HTTP.Affjax":260,"../Prelude":268}],255:[function(require,module,exports){-"use strict";--// module Math--exports.abs = Math.abs;--exports.acos = Math.acos;--exports.asin = Math.asin;--exports.atan = Math.atan;--exports.atan2 = function (y) {-  return function (x) {-    return Math.atan2(y, x);-  };-};--exports.ceil = Math.ceil;--exports.cos = Math.cos;--exports.exp = Math.exp;--exports.floor = Math.floor;--exports.trunc = Math.trunc || function (n) {-  return n < 0 ? Math.ceil(n) : Math.floor(n);-};--exports.log = Math.log;--exports.max = function (n1) {-  return function (n2) {-    return Math.max(n1, n2);-  };-};--exports.min = function (n1) {-  return function (n2) {-    return Math.min(n1, n2);-  };-};--exports.pow = function (n) {-  return function (p) {-    return Math.pow(n, p);-  };-};--exports.remainder = function (n) {-  return function (m) {-    return n % m;-  };-};--exports.round = Math.round;--exports.sin = Math.sin;--exports.sqrt = Math.sqrt;--exports.tan = Math.tan;--exports.e = Math.E;--exports.ln2 = Math.LN2;--exports.ln10 = Math.LN10;--exports.log2e = Math.LOG2E;--exports.log10e = Math.LOG10E;--exports.pi = Math.PI;--exports.sqrt1_2 = Math.SQRT1_2;--exports.sqrt2 = Math.SQRT2;--},{}],256:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-module.exports = {-    abs: $foreign.abs, -    acos: $foreign.acos, -    asin: $foreign.asin, -    atan: $foreign.atan, -    atan2: $foreign.atan2, -    ceil: $foreign.ceil, -    cos: $foreign.cos, -    e: $foreign.e, -    exp: $foreign.exp, -    floor: $foreign.floor, -    ln10: $foreign.ln10, -    ln2: $foreign.ln2, -    log: $foreign.log, -    log10e: $foreign.log10e, -    log2e: $foreign.log2e, -    max: $foreign.max, -    min: $foreign.min, -    pi: $foreign.pi, -    pow: $foreign.pow, -    remainder: $foreign.remainder, -    round: $foreign.round, -    sin: $foreign.sin, -    sqrt: $foreign.sqrt, -    sqrt1_2: $foreign.sqrt1_2, -    sqrt2: $foreign.sqrt2, -    tan: $foreign.tan, -    trunc: $foreign.trunc-};--},{"./foreign":255}],257:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Semigroupoid = require("../Control.Semigroupoid");-var DOM_File_Types = require("../DOM.File.Types");-var DOM_Node_Types = require("../DOM.Node.Types");-var DOM_XHR_Types = require("../DOM.XHR.Types");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_ArrayBuffer_Types = require("../Data.ArrayBuffer.Types");-var Data_FormURLEncoded = require("../Data.FormURLEncoded");-var Data_Maybe = require("../Data.Maybe");-var Data_MediaType = require("../Data.MediaType");-var Data_MediaType_Common = require("../Data.MediaType.Common");-var Data_Show = require("../Data.Show");-var Data_Tuple = require("../Data.Tuple");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var Requestable = function (toRequest) {-    this.toRequest = toRequest;-};-var toRequest = function (dict) {-    return dict.toRequest;-};-var requestableJson = new Requestable(function (json) {-    return new Data_Tuple.Tuple(new Data_Maybe.Just(Data_MediaType_Common.applicationJSON), Unsafe_Coerce.unsafeCoerce(Data_Show.show(Data_Argonaut_Core.showJson)(json)));-});-var requestableFormURLEncoded = new Requestable(function (form) {-    return new Data_Tuple.Tuple(new Data_Maybe.Just(Data_MediaType_Common.applicationFormURLEncoded), Unsafe_Coerce.unsafeCoerce(Data_FormURLEncoded.encode(form)));-});-var defaultToRequest = function ($0) {-    return Data_Tuple.Tuple.create(Data_Maybe.Nothing.value)(Unsafe_Coerce.unsafeCoerce($0));-};-var requestableBlob = new Requestable(defaultToRequest);-var requestableDocument = new Requestable(defaultToRequest);-var requestableFloat32Array = new Requestable(defaultToRequest);-var requestableFloat64Array = new Requestable(defaultToRequest);-var requestableFormData = new Requestable(defaultToRequest);-var requestableInt16Array = new Requestable(defaultToRequest);-var requestableInt32Array = new Requestable(defaultToRequest);-var requestableInt8Array = new Requestable(defaultToRequest);-var requestableRequestContent = new Requestable(defaultToRequest);-var requestableString = new Requestable(defaultToRequest);-var requestableUint16Array = new Requestable(defaultToRequest);-var requestableUint32Array = new Requestable(defaultToRequest);-var requestableUint8Array = new Requestable(defaultToRequest);-var requestableUint8ClampedArray = new Requestable(defaultToRequest);-var requestableUnit = new Requestable(defaultToRequest);-module.exports = {-    Requestable: Requestable, -    toRequest: toRequest, -    requestableRequestContent: requestableRequestContent, -    requestableInt8Array: requestableInt8Array, -    requestableInt16Array: requestableInt16Array, -    requestableInt32Array: requestableInt32Array, -    requestableUint8Array: requestableUint8Array, -    requestableUint16Array: requestableUint16Array, -    requestableUint32Array: requestableUint32Array, -    requestableUint8ClampedArray: requestableUint8ClampedArray, -    requestableFloat32Array: requestableFloat32Array, -    requestableFloat64Array: requestableFloat64Array, -    requestableBlob: requestableBlob, -    requestableDocument: requestableDocument, -    requestableString: requestableString, -    requestableJson: requestableJson, -    requestableFormData: requestableFormData, -    requestableFormURLEncoded: requestableFormURLEncoded, -    requestableUnit: requestableUnit-};--},{"../Control.Semigroupoid":92,"../DOM.File.Types":95,"../DOM.Node.Types":96,"../DOM.XHR.Types":99,"../Data.Argonaut.Core":102,"../Data.ArrayBuffer.Types":120,"../Data.FormURLEncoded":146,"../Data.Maybe":198,"../Data.MediaType":200,"../Data.MediaType.Common":199,"../Data.Show":233,"../Data.Tuple":245,"../Prelude":268,"../Unsafe.Coerce":271}],258:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var DOM_File_Types = require("../DOM.File.Types");-var DOM_Node_Types = require("../DOM.Node.Types");-var Data_Argonaut_Core = require("../Data.Argonaut.Core");-var Data_ArrayBuffer_Types = require("../Data.ArrayBuffer.Types");-var Data_Eq = require("../Data.Eq");-var Data_Foreign = require("../Data.Foreign");-var Data_Function = require("../Data.Function");-var Data_Identity = require("../Data.Identity");-var Data_Maybe = require("../Data.Maybe");-var Data_MediaType = require("../Data.MediaType");-var Data_MediaType_Common = require("../Data.MediaType.Common");-var Data_Show = require("../Data.Show");-var Data_Tuple = require("../Data.Tuple");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var Unsafe_Coerce = require("../Unsafe.Coerce");-var ArrayBufferResponse = (function () {-    function ArrayBufferResponse() {--    };-    ArrayBufferResponse.value = new ArrayBufferResponse();-    return ArrayBufferResponse;-})();-var BlobResponse = (function () {-    function BlobResponse() {--    };-    BlobResponse.value = new BlobResponse();-    return BlobResponse;-})();-var DocumentResponse = (function () {-    function DocumentResponse() {--    };-    DocumentResponse.value = new DocumentResponse();-    return DocumentResponse;-})();-var JSONResponse = (function () {-    function JSONResponse() {--    };-    JSONResponse.value = new JSONResponse();-    return JSONResponse;-})();-var StringResponse = (function () {-    function StringResponse() {--    };-    StringResponse.value = new StringResponse();-    return StringResponse;-})();-var Respondable = function (fromResponse, responseType) {-    this.fromResponse = fromResponse;-    this.responseType = responseType;-};-var showResponseType = new Data_Show.Show(function (v) {-    if (v instanceof ArrayBufferResponse) {-        return "ArrayBufferResponse";-    };-    if (v instanceof BlobResponse) {-        return "BlobResponse";-    };-    if (v instanceof DocumentResponse) {-        return "DocumentResponse";-    };-    if (v instanceof JSONResponse) {-        return "JSONResponse";-    };-    if (v instanceof StringResponse) {-        return "StringResponse";-    };-    throw new Error("Failed pattern match at Network.HTTP.Affjax.Response line 42, column 3 - line 43, column 3: " + [ v.constructor.name ]);-});-var responseTypeToString = function (v) {-    if (v instanceof ArrayBufferResponse) {-        return "arraybuffer";-    };-    if (v instanceof BlobResponse) {-        return "blob";-    };-    if (v instanceof DocumentResponse) {-        return "document";-    };-    if (v instanceof JSONResponse) {-        return "text";-    };-    if (v instanceof StringResponse) {-        return "text";-    };-    throw new Error("Failed pattern match at Network.HTTP.Affjax.Response line 49, column 1 - line 50, column 1: " + [ v.constructor.name ]);-};-var responseType = function (dict) {-    return dict.responseType;-};-var responsableUnit = new Respondable(Data_Function["const"](Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Unit.unit)), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, StringResponse.value));-var responsableString = new Respondable(Data_Foreign.readString, new Data_Tuple.Tuple(Data_Maybe.Nothing.value, StringResponse.value));-var responsableJson = new Respondable(function ($8) {-    return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Unsafe_Coerce.unsafeCoerce($8));-}, new Data_Tuple.Tuple(new Data_Maybe.Just(Data_MediaType_Common.applicationJSON), JSONResponse.value));-var responsableForeign = new Respondable(function ($9) {-    return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Unsafe_Coerce.unsafeCoerce($9));-}, new Data_Tuple.Tuple(Data_Maybe.Nothing.value, JSONResponse.value));-var responsableDocument = new Respondable(Data_Foreign.unsafeReadTagged("Document"), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, DocumentResponse.value));-var responsableBlob = new Respondable(Data_Foreign.unsafeReadTagged("Blob"), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, BlobResponse.value));-var responsableArrayBuffer = new Respondable(Data_Foreign.unsafeReadTagged("ArrayBuffer"), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, ArrayBufferResponse.value));-var fromResponse = function (dict) {-    return dict.fromResponse;-};-var eqResponseType = new Data_Eq.Eq(function (v) {-    return function (v1) {-        if (v instanceof ArrayBufferResponse && v1 instanceof ArrayBufferResponse) {-            return true;-        };-        if (v instanceof BlobResponse && v1 instanceof BlobResponse) {-            return true;-        };-        if (v instanceof DocumentResponse && v1 instanceof DocumentResponse) {-            return true;-        };-        if (v instanceof JSONResponse && v1 instanceof JSONResponse) {-            return true;-        };-        if (v instanceof StringResponse && v1 instanceof StringResponse) {-            return true;-        };-        return false;-    };-});-module.exports = {-    ArrayBufferResponse: ArrayBufferResponse, -    BlobResponse: BlobResponse, -    DocumentResponse: DocumentResponse, -    JSONResponse: JSONResponse, -    StringResponse: StringResponse, -    Respondable: Respondable, -    fromResponse: fromResponse, -    responseType: responseType, -    responseTypeToString: responseTypeToString, -    eqResponseType: eqResponseType, -    showResponseType: showResponseType, -    responsableBlob: responsableBlob, -    responsableDocument: responsableDocument, -    responsableForeign: responsableForeign, -    responsableString: responsableString, -    responsableUnit: responsableUnit, -    responsableArrayBuffer: responsableArrayBuffer, -    responsableJson: responsableJson-};--},{"../Control.Applicative":40,"../Control.Monad.Except.Trans":72,"../Control.Semigroupoid":92,"../DOM.File.Types":95,"../DOM.Node.Types":96,"../Data.Argonaut.Core":102,"../Data.ArrayBuffer.Types":120,"../Data.Eq":138,"../Data.Foreign":145,"../Data.Function":149,"../Data.Identity":161,"../Data.Maybe":198,"../Data.MediaType":200,"../Data.MediaType.Common":199,"../Data.Show":233,"../Data.Tuple":245,"../Data.Unit":249,"../Prelude":268,"../Unsafe.Coerce":271}],259:[function(require,module,exports){-(function (process){-/* global exports */-/* global XMLHttpRequest */-/* global module */-/* global process */-"use strict";--// module Network.HTTP.Affjax--// jshint maxparams: 5-exports._ajax = function (mkHeader, options, canceler, errback, callback) {-  var platformSpecific = { };-  if (typeof module !== "undefined" && module.require && !(typeof process !== "undefined" && process.versions["electron"])) {-    // We are on node.js-    platformSpecific.newXHR = function () {-      var XHR = module.require("xhr2");-      return new XHR();-    };--    platformSpecific.fixupUrl = function (url) {-      var urllib = module.require("url");-      var u = urllib.parse(url);-      u.protocol = u.protocol || "http:";-      u.hostname = u.hostname || "localhost";-      return urllib.format(u);-    };--    platformSpecific.getResponse = function (xhr) {-      return xhr.response;-    };-  } else {-    // We are in the browser-    platformSpecific.newXHR = function () {-      return new XMLHttpRequest();-    };--    platformSpecific.fixupUrl = function (url) {-      return url || "/";-    };--    platformSpecific.getResponse = function (xhr) {-      return xhr.response;-    };-  }--  return function () {-    var xhr = platformSpecific.newXHR();-    var fixedUrl = platformSpecific.fixupUrl(options.url);-    xhr.open(options.method || "GET", fixedUrl, true, options.username, options.password);-    if (options.headers) {-      try {-        for (var i = 0, header; (header = options.headers[i]) != null; i++) {-          xhr.setRequestHeader(header.field, header.value);-        }-      }-      catch (e) {-        errback(e)();-      }-    }-    xhr.onerror = function () {-      errback(new Error("AJAX request failed: " + options.method + " " + options.url))();-    };-    xhr.onload = function () {-      callback({-        status: xhr.status,-        headers: xhr.getAllResponseHeaders().split("\r\n")-          .filter(function (header) {-            return header.length > 0;-          })-          .map(function (header) {-            var i = header.indexOf(":");-            return mkHeader(header.substring(0, i))(header.substring(i + 2));-          }),-        response: platformSpecific.getResponse(xhr)-      })();-    };-    xhr.responseType = options.responseType;-    xhr.withCredentials = options.withCredentials;-    xhr.send(options.content);-    return canceler(xhr);-  };-};--// jshint maxparams: 4-exports._cancelAjax = function (xhr, cancelError, errback, callback) {-  return function () {-    try { xhr.abort(); } catch (e) { return callback(false)(); }-    return callback(true)();-  };-};---}).call(this,require('_process'))-},{"_process":273}],260:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Control_Applicative = require("../Control.Applicative");-var Control_Bind = require("../Control.Bind");-var Control_Monad_Aff = require("../Control.Monad.Aff");-var Control_Monad_Aff_AVar = require("../Control.Monad.Aff.AVar");-var Control_Monad_Eff = require("../Control.Monad.Eff");-var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");-var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");-var Control_Monad_Eff_Ref = require("../Control.Monad.Eff.Ref");-var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");-var Control_Monad_Except = require("../Control.Monad.Except");-var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var DOM_XHR_Types = require("../DOM.XHR.Types");-var Data_Argonaut_Parser = require("../Data.Argonaut.Parser");-var Data_Array = require("../Data.Array");-var Data_Either = require("../Data.Either");-var Data_Eq = require("../Data.Eq");-var Data_Foldable = require("../Data.Foldable");-var Data_Foreign = require("../Data.Foreign");-var Data_Function = require("../Data.Function");-var Data_Function_Uncurried = require("../Data.Function.Uncurried");-var Data_Functor = require("../Data.Functor");-var Data_HTTP_Method = require("../Data.HTTP.Method");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Identity = require("../Data.Identity");-var Data_Int = require("../Data.Int");-var Data_List_Types = require("../Data.List.Types");-var Data_Maybe = require("../Data.Maybe");-var Data_MediaType = require("../Data.MediaType");-var Data_Nullable = require("../Data.Nullable");-var Data_Ring = require("../Data.Ring");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Time_Duration = require("../Data.Time.Duration");-var Data_Tuple = require("../Data.Tuple");-var $$Math = require("../Math");-var Network_HTTP_Affjax_Request = require("../Network.HTTP.Affjax.Request");-var Network_HTTP_Affjax_Response = require("../Network.HTTP.Affjax.Response");-var Network_HTTP_RequestHeader = require("../Network.HTTP.RequestHeader");-var Network_HTTP_ResponseHeader = require("../Network.HTTP.ResponseHeader");-var Network_HTTP_StatusCode = require("../Network.HTTP.StatusCode");-var Prelude = require("../Prelude");-var retry = function (dictRequestable) {-    return function (policy) {-        return function (run) {-            return function (req) {-                var retryState = function (v) {-                    if (v instanceof Data_Either.Left) {-                        return Data_Either.Left.create(new Data_Either.Left(v.value0));-                    };-                    if (v instanceof Data_Either.Right) {-                        if (v.value0.status === 200) {-                            return new Data_Either.Right(v.value0);-                        };-                        var $49 = policy.shouldRetryWithStatusCode(v.value0.status);-                        if ($49) {-                            return Data_Either.Left.create(new Data_Either.Right(v.value0));-                        };-                        return new Data_Either.Right(v.value0);-                    };-                    throw new Error("Failed pattern match at Network.HTTP.Affjax line 217, column 5 - line 217, column 44: " + [ v.constructor.name ]);-                };-                var go = function (failureRef) {-                    return function (n) {-                        return Control_Bind.bind(Control_Monad_Aff.bindAff)(Data_Functor.map(Control_Monad_Aff.functorAff)(retryState)(Control_Monad_Aff.attempt(run(req))))(function (v) {-                            if (v instanceof Data_Either.Left) {-                                return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Eff_Class.liftEff(Control_Monad_Aff.monadEffAff)(Control_Monad_Eff_Ref.writeRef(failureRef)(new Data_Maybe.Just(v.value0))))(function () {-                                    return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Aff.delay(policy.delayCurve(n)))(function () {-                                        return go(failureRef)(n + 1 | 0);-                                    });-                                });-                            };-                            if (v instanceof Data_Either.Right) {-                                return Control_Applicative.pure(Control_Monad_Aff.applicativeAff)(v.value0);-                            };-                            throw new Error("Failed pattern match at Network.HTTP.Affjax line 229, column 7 - line 234, column 32: " + [ v.constructor.name ]);-                        });-                    };-                };-                return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Eff_Class.liftEff(Control_Monad_Aff.monadEffAff)(Control_Monad_Eff_Ref.newRef(Data_Maybe.Nothing.value)))(function (v) {-                    var loop = go(v);-                    if (policy.timeout instanceof Data_Maybe.Nothing) {-                        return loop(1);-                    };-                    if (policy.timeout instanceof Data_Maybe.Just) {-                        return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff_AVar.makeVar)(function (v1) {-                            return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff.forkAff(Control_Bind.bind(Control_Monad_Aff.bindAff)(loop(1))(function ($104) {-                                return Control_Monad_Aff_AVar.putVar(v1)(Data_Maybe.Just.create($104));-                            })))(function (v2) {-                                return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff.forkAff(Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Aff.delay(policy.timeout.value0))(function () {-                                    return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Aff_AVar.putVar(v1)(Data_Maybe.Nothing.value))(function () {-                                        return Control_Monad_Aff.cancel(v2)(Control_Monad_Eff_Exception.error("Cancel"));-                                    });-                                })))(function (v3) {-                                    return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff_AVar.takeVar(v1))(function (v4) {-                                        if (v4 instanceof Data_Maybe.Nothing) {-                                            return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Eff_Class.liftEff(Control_Monad_Aff.monadEffAff)(Control_Monad_Eff_Ref.readRef(v)))(function (v5) {-                                                if (v5 instanceof Data_Maybe.Nothing) {-                                                    return Control_Monad_Error_Class.throwError(Control_Monad_Aff.monadThrowAff)(Control_Monad_Eff_Exception.error("Timeout"));-                                                };-                                                if (v5 instanceof Data_Maybe.Just) {-                                                    return Data_Either.either(Control_Monad_Error_Class.throwError(Control_Monad_Aff.monadThrowAff))(Control_Applicative.pure(Control_Monad_Aff.applicativeAff))(v5.value0);-                                                };-                                                throw new Error("Failed pattern match at Network.HTTP.Affjax line 209, column 11 - line 211, column 61: " + [ v5.constructor.name ]);-                                            });-                                        };-                                        if (v4 instanceof Data_Maybe.Just) {-                                            return Control_Applicative.pure(Control_Monad_Aff.applicativeAff)(v4.value0);-                                        };-                                        throw new Error("Failed pattern match at Network.HTTP.Affjax line 206, column 7 - line 212, column 31: " + [ v4.constructor.name ]);-                                    });-                                });-                            });-                        });-                    };-                    throw new Error("Failed pattern match at Network.HTTP.Affjax line 195, column 3 - line 212, column 31: " + [ policy.timeout.constructor.name ]);-                });-            };-        };-    };-};-var defaultRetryPolicy = {-    timeout: Data_Maybe.Nothing.value, -    delayCurve: function (n) {-        return Data_Time_Duration.Milliseconds($$Math.max(30.0 * 1000.0)(100.0 * $$Math.pow(2.0)(Data_Int.toNumber(n - 1 | 0))));-    }, -    shouldRetryWithStatusCode: Data_Function["const"](false)-};-var defaultRequest = {-    method: new Data_Either.Left(Data_HTTP_Method.GET.value), -    url: "/", -    headers: [  ], -    content: Data_Maybe.Nothing.value, -    username: Data_Maybe.Nothing.value, -    password: Data_Maybe.Nothing.value, -    withCredentials: false-};-var cancelAjax = function (xhr) {-    return function (err) {-        return Control_Monad_Aff.makeAff(function (eb) {-            return function (cb) {-                return $foreign._cancelAjax(xhr, err, eb, cb);-            };-        });-    };-};-var affjax$prime = function (dictRequestable) {-    return function (dictRespondable) {-        return function (req) {-            return function (eb) {-                return function (cb) {-                    var responseSettings = Network_HTTP_Affjax_Response.responseType(dictRespondable);-                    var requestSettings = (function () {-                        var v = Data_Functor.map(Data_Maybe.functorMaybe)(Network_HTTP_Affjax_Request.toRequest(dictRequestable))(req.content);-                        if (v instanceof Data_Maybe.Nothing) {-                            return new Data_Tuple.Tuple(Data_Maybe.Nothing.value, Data_Maybe.Nothing.value);-                        };-                        if (v instanceof Data_Maybe.Just) {-                            return new Data_Tuple.Tuple(v.value0.value0, new Data_Maybe.Just(v.value0.value1));-                        };-                        throw new Error("Failed pattern match at Network.HTTP.Affjax line 262, column 21 - line 264, column 49: " + [ v.constructor.name ]);-                    })();-                    var parseJSON = function ($105) {-                        return Data_Either.either(function ($106) {-                            return Data_Foreign.fail(Data_Foreign.JSONError.create($106));-                        })(function ($107) {-                            return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Foreign.toForeign($107));-                        })(Data_Argonaut_Parser.jsonParser($105));-                    };-                    var fromResponse$prime = (function () {-                        var v = Data_Tuple.snd(responseSettings);-                        if (v instanceof Network_HTTP_Affjax_Response.JSONResponse) {-                            return Control_Bind.composeKleisliFlipped(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(Network_HTTP_Affjax_Response.fromResponse(dictRespondable))(Control_Bind.composeKleisliFlipped(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(parseJSON)(Data_Foreign.readString));-                        };-                        return Network_HTTP_Affjax_Response.fromResponse(dictRespondable);-                    })();-                    var cb$prime = function (res) {-                        var v = Data_Functor.map(Data_Either.functorEither)(function (v1) {-                            var $72 = {};-                            for (var $73 in res) {-                                if ({}.hasOwnProperty.call(res, $73)) {-                                    $72[$73] = res[$73];-                                };-                            };-                            $72.response = v1;-                            return $72;-                        })(Control_Monad_Except.runExcept(fromResponse$prime(res.response)));-                        if (v instanceof Data_Either.Left) {-                            return eb(Control_Monad_Eff_Exception.error(Data_Show.show(Data_List_Types.showNonEmptyList(Data_Foreign.showForeignError))(v.value0)));-                        };-                        if (v instanceof Data_Either.Right) {-                            return cb(v.value0);-                        };-                        throw new Error("Failed pattern match at Network.HTTP.Affjax line 281, column 13 - line 283, column 26: " + [ v.constructor.name ]);-                    };-                    var addHeader = function (mh) {-                        return function (hs) {-                            if (mh instanceof Data_Maybe.Just && !Data_Foldable.any(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Function.on(Data_Eq.eq(Data_Eq.eqString))(Network_HTTP_RequestHeader.requestHeaderName)(mh.value0))(hs)) {-                                return Data_Array.snoc(hs)(mh.value0);-                            };-                            return hs;-                        };-                    };-                    var headers = addHeader(Data_Functor.map(Data_Maybe.functorMaybe)(Network_HTTP_RequestHeader.ContentType.create)(Data_Tuple.fst(requestSettings)))(addHeader(Data_Functor.map(Data_Maybe.functorMaybe)(Network_HTTP_RequestHeader.Accept.create)(Data_Tuple.fst(responseSettings)))(req.headers));-                    var req$prime = {-                        method: Data_HTTP_Method.print(req.method), -                        url: req.url, -                        headers: Data_Functor.map(Data_Functor.functorArray)(function (h) {-                            return {-                                field: Network_HTTP_RequestHeader.requestHeaderName(h), -                                value: Network_HTTP_RequestHeader.requestHeaderValue(h)-                            };-                        })(headers), -                        content: Data_Nullable.toNullable(Data_Tuple.snd(requestSettings)), -                        responseType: Network_HTTP_Affjax_Response.responseTypeToString(Data_Tuple.snd(responseSettings)), -                        username: Data_Nullable.toNullable(req.username), -                        password: Data_Nullable.toNullable(req.password), -                        withCredentials: req.withCredentials-                    };-                    return $foreign._ajax(Network_HTTP_ResponseHeader.responseHeader, req$prime, cancelAjax, eb, cb$prime);-                };-            };-        };-    };-};-var affjax = function (dictRequestable) {-    return function (dictRespondable) {-        return function ($108) {-            return Control_Monad_Aff["makeAff'"](affjax$prime(dictRequestable)(dictRespondable)($108));-        };-    };-};-var $$delete = function (dictRespondable) {-    return function (u) {-        return affjax(Network_HTTP_Affjax_Request.requestableUnit)(dictRespondable)((function () {-            var $80 = {};-            for (var $81 in defaultRequest) {-                if ({}.hasOwnProperty.call(defaultRequest, $81)) {-                    $80[$81] = defaultRequest[$81];-                };-            };-            $80.method = new Data_Either.Left(Data_HTTP_Method.DELETE.value);-            $80.url = u;-            return $80;-        })());-    };-};-var delete_ = $$delete(Network_HTTP_Affjax_Response.responsableUnit);-var get = function (dictRespondable) {-    return function (u) {-        return affjax(Network_HTTP_Affjax_Request.requestableUnit)(dictRespondable)((function () {-            var $83 = {};-            for (var $84 in defaultRequest) {-                if ({}.hasOwnProperty.call(defaultRequest, $84)) {-                    $83[$84] = defaultRequest[$84];-                };-            };-            $83.url = u;-            return $83;-        })());-    };-};-var patch = function (dictRequestable) {-    return function (dictRespondable) {-        return function (u) {-            return function (c) {-                return affjax(dictRequestable)(dictRespondable)((function () {-                    var $86 = {};-                    for (var $87 in defaultRequest) {-                        if ({}.hasOwnProperty.call(defaultRequest, $87)) {-                            $86[$87] = defaultRequest[$87];-                        };-                    };-                    $86.method = new Data_Either.Left(Data_HTTP_Method.PATCH.value);-                    $86.url = u;-                    $86.content = new Data_Maybe.Just(c);-                    return $86;-                })());-            };-        };-    };-};-var patch_ = function (dictRequestable) {-    return patch(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);-};-var patch$prime = function (dictRequestable) {-    return function (dictRespondable) {-        return function (u) {-            return function (c) {-                return affjax(dictRequestable)(dictRespondable)((function () {-                    var $89 = {};-                    for (var $90 in defaultRequest) {-                        if ({}.hasOwnProperty.call(defaultRequest, $90)) {-                            $89[$90] = defaultRequest[$90];-                        };-                    };-                    $89.method = new Data_Either.Left(Data_HTTP_Method.PATCH.value);-                    $89.url = u;-                    $89.content = c;-                    return $89;-                })());-            };-        };-    };-};-var patch_$prime = function (dictRequestable) {-    return patch$prime(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);-};-var post = function (dictRequestable) {-    return function (dictRespondable) {-        return function (u) {-            return function (c) {-                return affjax(dictRequestable)(dictRespondable)((function () {-                    var $92 = {};-                    for (var $93 in defaultRequest) {-                        if ({}.hasOwnProperty.call(defaultRequest, $93)) {-                            $92[$93] = defaultRequest[$93];-                        };-                    };-                    $92.method = new Data_Either.Left(Data_HTTP_Method.POST.value);-                    $92.url = u;-                    $92.content = new Data_Maybe.Just(c);-                    return $92;-                })());-            };-        };-    };-};-var post_ = function (dictRequestable) {-    return post(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);-};-var post$prime = function (dictRequestable) {-    return function (dictRespondable) {-        return function (u) {-            return function (c) {-                return affjax(dictRequestable)(dictRespondable)((function () {-                    var $95 = {};-                    for (var $96 in defaultRequest) {-                        if ({}.hasOwnProperty.call(defaultRequest, $96)) {-                            $95[$96] = defaultRequest[$96];-                        };-                    };-                    $95.method = new Data_Either.Left(Data_HTTP_Method.POST.value);-                    $95.url = u;-                    $95.content = c;-                    return $95;-                })());-            };-        };-    };-};-var post_$prime = function (dictRequestable) {-    return post$prime(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);-};-var put = function (dictRequestable) {-    return function (dictRespondable) {-        return function (u) {-            return function (c) {-                return affjax(dictRequestable)(dictRespondable)((function () {-                    var $98 = {};-                    for (var $99 in defaultRequest) {-                        if ({}.hasOwnProperty.call(defaultRequest, $99)) {-                            $98[$99] = defaultRequest[$99];-                        };-                    };-                    $98.method = new Data_Either.Left(Data_HTTP_Method.PUT.value);-                    $98.url = u;-                    $98.content = new Data_Maybe.Just(c);-                    return $98;-                })());-            };-        };-    };-};-var put_ = function (dictRequestable) {-    return put(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);-};-var put$prime = function (dictRequestable) {-    return function (dictRespondable) {-        return function (u) {-            return function (c) {-                return affjax(dictRequestable)(dictRespondable)((function () {-                    var $101 = {};-                    for (var $102 in defaultRequest) {-                        if ({}.hasOwnProperty.call(defaultRequest, $102)) {-                            $101[$102] = defaultRequest[$102];-                        };-                    };-                    $101.method = new Data_Either.Left(Data_HTTP_Method.PUT.value);-                    $101.url = u;-                    $101.content = c;-                    return $101;-                })());-            };-        };-    };-};-var put_$prime = function (dictRequestable) {-    return put$prime(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);-};-module.exports = {-    affjax: affjax, -    "affjax'": affjax$prime, -    defaultRequest: defaultRequest, -    defaultRetryPolicy: defaultRetryPolicy, -    "delete": $$delete, -    delete_: delete_, -    get: get, -    patch: patch, -    "patch'": patch$prime, -    patch_: patch_, -    "patch_'": patch_$prime, -    post: post, -    "post'": post$prime, -    post_: post_, -    "post_'": post_$prime, -    put: put, -    "put'": put$prime, -    put_: put_, -    "put_'": put_$prime, -    retry: retry-};--},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":55,"../Control.Monad.Aff.AVar":51,"../Control.Monad.Eff":70,"../Control.Monad.Eff.Class":58,"../Control.Monad.Eff.Exception":62,"../Control.Monad.Eff.Ref":66,"../Control.Monad.Error.Class":71,"../Control.Monad.Except":73,"../Control.Monad.Except.Trans":72,"../Control.Semigroupoid":92,"../DOM.XHR.Types":99,"../Data.Argonaut.Parser":111,"../Data.Array":119,"../Data.Either":136,"../Data.Eq":138,"../Data.Foldable":143,"../Data.Foreign":145,"../Data.Function":149,"../Data.Function.Uncurried":148,"../Data.Functor":155,"../Data.HTTP.Method":158,"../Data.HeytingAlgebra":160,"../Data.Identity":161,"../Data.Int":165,"../Data.List.Types":193,"../Data.Maybe":198,"../Data.MediaType":200,"../Data.Nullable":212,"../Data.Ring":227,"../Data.Semiring":231,"../Data.Show":233,"../Data.Time.Duration":242,"../Data.Tuple":245,"../Math":256,"../Network.HTTP.Affjax.Request":257,"../Network.HTTP.Affjax.Response":258,"../Network.HTTP.RequestHeader":261,"../Network.HTTP.ResponseHeader":262,"../Network.HTTP.StatusCode":263,"../Prelude":268,"./foreign":259}],261:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Data_Eq = require("../Data.Eq");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_MediaType = require("../Data.MediaType");-var Data_Newtype = require("../Data.Newtype");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Prelude = require("../Prelude");-var Accept = (function () {-    function Accept(value0) {-        this.value0 = value0;-    };-    Accept.create = function (value0) {-        return new Accept(value0);-    };-    return Accept;-})();-var ContentType = (function () {-    function ContentType(value0) {-        this.value0 = value0;-    };-    ContentType.create = function (value0) {-        return new ContentType(value0);-    };-    return ContentType;-})();-var RequestHeader = (function () {-    function RequestHeader(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    RequestHeader.create = function (value0) {-        return function (value1) {-            return new RequestHeader(value0, value1);-        };-    };-    return RequestHeader;-})();-var showRequestHeader = new Data_Show.Show(function (v) {-    if (v instanceof Accept) {-        return "(Accept " + (Data_Show.show(Data_MediaType.showMediaType)(v.value0) + ")");-    };-    if (v instanceof ContentType) {-        return "(ContentType " + (Data_Show.show(Data_MediaType.showMediaType)(v.value0) + ")");-    };-    if (v instanceof RequestHeader) {-        return "(RequestHeader " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(Data_Show.showString)(v.value1) + ")")));-    };-    throw new Error("Failed pattern match at Network.HTTP.RequestHeader line 20, column 3 - line 21, column 3: " + [ v.constructor.name ]);-});-var requestHeaderValue = function (v) {-    if (v instanceof Accept) {-        return Data_Newtype.unwrap(Data_MediaType.newtypeMediaType)(v.value0);-    };-    if (v instanceof ContentType) {-        return Data_Newtype.unwrap(Data_MediaType.newtypeMediaType)(v.value0);-    };-    if (v instanceof RequestHeader) {-        return v.value1;-    };-    throw new Error("Failed pattern match at Network.HTTP.RequestHeader line 30, column 1 - line 30, column 41: " + [ v.constructor.name ]);-};-var requestHeaderName = function (v) {-    if (v instanceof Accept) {-        return "Accept";-    };-    if (v instanceof ContentType) {-        return "Content-Type";-    };-    if (v instanceof RequestHeader) {-        return v.value0;-    };-    throw new Error("Failed pattern match at Network.HTTP.RequestHeader line 25, column 1 - line 26, column 1: " + [ v.constructor.name ]);-};-var eqRequestHeader = new Data_Eq.Eq(function (v) {-    return function (v1) {-        if (v instanceof Accept && v1 instanceof Accept) {-            return Data_Eq.eq(Data_MediaType.eqMediaType)(v.value0)(v1.value0);-        };-        if (v instanceof ContentType && v1 instanceof ContentType) {-            return Data_Eq.eq(Data_MediaType.eqMediaType)(v.value0)(v1.value0);-        };-        if (v instanceof RequestHeader && v1 instanceof RequestHeader) {-            return v.value0 === v1.value0 && v.value1 === v1.value1;-        };-        return false;-    };-});-module.exports = {-    Accept: Accept, -    ContentType: ContentType, -    RequestHeader: RequestHeader, -    requestHeaderName: requestHeaderName, -    requestHeaderValue: requestHeaderValue, -    eqRequestHeader: eqRequestHeader, -    showRequestHeader: showRequestHeader-};--},{"../Data.Eq":138,"../Data.HeytingAlgebra":160,"../Data.MediaType":200,"../Data.Newtype":209,"../Data.Semigroup":229,"../Data.Show":233,"../Prelude":268}],262:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Data_Eq = require("../Data.Eq");-var Data_Generic = require("../Data.Generic");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_Maybe = require("../Data.Maybe");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var ResponseHeader = (function () {-    function ResponseHeader(value0, value1) {-        this.value0 = value0;-        this.value1 = value1;-    };-    ResponseHeader.create = function (value0) {-        return function (value1) {-            return new ResponseHeader(value0, value1);-        };-    };-    return ResponseHeader;-})();-var showResponseHeader = new Data_Show.Show(function (v) {-    return "(ResponseHeader " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(Data_Show.showString)(v.value1) + ")")));-});-var responseHeaderValue = function (v) {-    return v.value1;-};-var responseHeaderName = function (v) {-    return v.value0;-};-var responseHeader = function (field) {-    return function (value) {-        return new ResponseHeader(field, value);-    };-};-var genericResponseHeader = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Network.HTTP.ResponseHeader.ResponseHeader" && v.value1.length === 2)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(ResponseHeader.create))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][0](Data_Unit.unit))))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][1](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Network.HTTP.ResponseHeader.ResponseHeader", [ {-        sigConstructor: "Network.HTTP.ResponseHeader.ResponseHeader", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);-        }, function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Network.HTTP.ResponseHeader.ResponseHeader", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericString)(v.value0);-    }, function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericString)(v.value1);-    } ]);-});-var eqResponseHeader = new Data_Eq.Eq(function (v) {-    return function (v1) {-        return v.value0 === v1.value0 && v.value1 === v1.value1;-    };-});-module.exports = {-    responseHeader: responseHeader, -    responseHeaderName: responseHeaderName, -    responseHeaderValue: responseHeaderValue, -    genericResponseHeader: genericResponseHeader, -    eqResponseHeader: eqResponseHeader, -    showResponseHeader: showResponseHeader-};--},{"../Control.Apply":42,"../Data.Eq":138,"../Data.Generic":157,"../Data.HeytingAlgebra":160,"../Data.Maybe":198,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Unit":249,"../Prelude":268}],263:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Apply = require("../Control.Apply");-var Data_Eq = require("../Data.Eq");-var Data_Generic = require("../Data.Generic");-var Data_Maybe = require("../Data.Maybe");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var Prelude = require("../Prelude");-var StatusCode = function (x) {-    return x;-};-var showStatusCode = new Data_Show.Show(function (v) {-    return "(StatusCode " + (Data_Show.show(Data_Show.showInt)(v) + ")");-});-var genericStatusCode = new Data_Generic.Generic(function (v) {-    if (v instanceof Data_Generic.SProd && (v.value0 === "Network.HTTP.StatusCode.StatusCode" && v.value1.length === 1)) {-        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(StatusCode))(Data_Generic.fromSpine(Data_Generic.genericInt)(v["value1"][0](Data_Unit.unit)));-    };-    return Data_Maybe.Nothing.value;-}, function ($dollarq) {-    return new Data_Generic.SigProd("Network.HTTP.StatusCode.StatusCode", [ {-        sigConstructor: "Network.HTTP.StatusCode.StatusCode", -        sigValues: [ function ($dollarq1) {-            return Data_Generic.toSignature(Data_Generic.genericInt)(Data_Generic.anyProxy);-        } ]-    } ]);-}, function (v) {-    return new Data_Generic.SProd("Network.HTTP.StatusCode.StatusCode", [ function ($dollarq) {-        return Data_Generic.toSpine(Data_Generic.genericInt)(v);-    } ]);-});-var eqStatusCode = new Data_Eq.Eq(function (v) {-    return function (v1) {-        return v === v1;-    };-});-module.exports = {-    StatusCode: StatusCode, -    genericStatusCode: genericStatusCode, -    eqStatusCode: eqStatusCode, -    showStatusCode: showStatusCode-};--},{"../Control.Apply":42,"../Data.Eq":138,"../Data.Generic":157,"../Data.Maybe":198,"../Data.Semigroup":229,"../Data.Show":233,"../Data.Unit":249,"../Prelude":268}],264:[function(require,module,exports){-"use strict";--// module Partial.Unsafe--exports.unsafePartial = function (f) {-  return f();-};--exports.unsafePartialBecause = function (reason) {-  return function (f) {-    try {-      return exports.unsafePartial(f);-    } catch (err) {-      throw new Error("unsafePartial failed. The following " +-                      "assumption was incorrect: '" + reason + "'.");-    }-  };-};--},{}],265:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var Partial = require("../Partial");-var unsafeCrashWith = function (msg) {-    return $foreign.unsafePartial(function (dictPartial) {-        return Partial.crashWith(dictPartial)(msg);-    });-};-module.exports = {-    unsafeCrashWith: unsafeCrashWith, -    unsafePartial: $foreign.unsafePartial, -    unsafePartialBecause: $foreign.unsafePartialBecause-};--},{"../Partial":267,"./foreign":264}],266:[function(require,module,exports){-"use strict";--// module Partial--exports.crashWith = function () {-  return function (msg) {-    throw new Error(msg);-  };-};--},{}],267:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-var crash = function (dictPartial) {-    return $foreign.crashWith(dictPartial)("Partial.crash: partial function");-};-module.exports = {-    crash: crash, -    crashWith: $foreign.crashWith-};--},{"./foreign":266}],268:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Control_Applicative = require("../Control.Applicative");-var Control_Apply = require("../Control.Apply");-var Control_Bind = require("../Control.Bind");-var Control_Category = require("../Control.Category");-var Control_Monad = require("../Control.Monad");-var Control_Semigroupoid = require("../Control.Semigroupoid");-var Data_Boolean = require("../Data.Boolean");-var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");-var Data_Bounded = require("../Data.Bounded");-var Data_CommutativeRing = require("../Data.CommutativeRing");-var Data_Eq = require("../Data.Eq");-var Data_EuclideanRing = require("../Data.EuclideanRing");-var Data_Field = require("../Data.Field");-var Data_Function = require("../Data.Function");-var Data_Functor = require("../Data.Functor");-var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");-var Data_NaturalTransformation = require("../Data.NaturalTransformation");-var Data_Ord = require("../Data.Ord");-var Data_Ordering = require("../Data.Ordering");-var Data_Ring = require("../Data.Ring");-var Data_Semigroup = require("../Data.Semigroup");-var Data_Semiring = require("../Data.Semiring");-var Data_Show = require("../Data.Show");-var Data_Unit = require("../Data.Unit");-var Data_Void = require("../Data.Void");-module.exports = {};--},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":86,"../Control.Semigroupoid":92,"../Data.Boolean":129,"../Data.BooleanAlgebra":130,"../Data.Bounded":132,"../Data.CommutativeRing":133,"../Data.Eq":138,"../Data.EuclideanRing":140,"../Data.Field":141,"../Data.Function":149,"../Data.Functor":155,"../Data.HeytingAlgebra":160,"../Data.NaturalTransformation":208,"../Data.Ord":216,"../Data.Ordering":217,"../Data.Ring":227,"../Data.Semigroup":229,"../Data.Semiring":231,"../Data.Show":233,"../Data.Unit":249,"../Data.Void":250}],269:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var Proxy3 = (function () {-    function Proxy3() {--    };-    Proxy3.value = new Proxy3();-    return Proxy3;-})();-var Proxy2 = (function () {-    function Proxy2() {--    };-    Proxy2.value = new Proxy2();-    return Proxy2;-})();-var $$Proxy = (function () {-    function $$Proxy() {--    };-    $$Proxy.value = new $$Proxy();-    return $$Proxy;-})();-module.exports = {-    "Proxy": $$Proxy, -    Proxy2: Proxy2, -    Proxy3: Proxy3-};--},{}],270:[function(require,module,exports){-"use strict";--// module Unsafe.Coerce--exports.unsafeCoerce = function (x) {-  return x;-};--},{}],271:[function(require,module,exports){-// Generated by purs version 0.11.3-"use strict";-var $foreign = require("./foreign");-module.exports = {-    unsafeCoerce: $foreign.unsafeCoerce-};--},{"./foreign":270}],272:[function(require,module,exports){-require('Main').main();--},{"Main":254}],273:[function(require,module,exports){-// shim for using process in browser-var process = module.exports = {};--// cached from whatever global is present so that test runners that stub it-// don't break things.  But we need to wrap it in a try catch in case it is-// wrapped in strict mode code which doesn't define any globals.  It's inside a-// function because try/catches deoptimize in certain engines.--var cachedSetTimeout;-var cachedClearTimeout;--function defaultSetTimout() {-    throw new Error('setTimeout has not been defined');-}-function defaultClearTimeout () {-    throw new Error('clearTimeout has not been defined');-}-(function () {-    try {-        if (typeof setTimeout === 'function') {-            cachedSetTimeout = setTimeout;-        } else {-            cachedSetTimeout = defaultSetTimout;-        }-    } catch (e) {-        cachedSetTimeout = defaultSetTimout;-    }-    try {-        if (typeof clearTimeout === 'function') {-            cachedClearTimeout = clearTimeout;-        } else {-            cachedClearTimeout = defaultClearTimeout;-        }-    } catch (e) {-        cachedClearTimeout = defaultClearTimeout;-    }-} ())-function runTimeout(fun) {-    if (cachedSetTimeout === setTimeout) {-        //normal enviroments in sane situations-        return setTimeout(fun, 0);-    }-    // if setTimeout wasn't available but was latter defined-    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {-        cachedSetTimeout = setTimeout;-        return setTimeout(fun, 0);-    }-    try {-        // when when somebody has screwed with setTimeout but no I.E. maddness-        return cachedSetTimeout(fun, 0);-    } catch(e){-        try {-            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally-            return cachedSetTimeout.call(null, fun, 0);-        } catch(e){-            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error-            return cachedSetTimeout.call(this, fun, 0);-        }-    }---}-function runClearTimeout(marker) {-    if (cachedClearTimeout === clearTimeout) {-        //normal enviroments in sane situations-        return clearTimeout(marker);-    }-    // if clearTimeout wasn't available but was latter defined-    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {-        cachedClearTimeout = clearTimeout;-        return clearTimeout(marker);-    }-    try {-        // when when somebody has screwed with setTimeout but no I.E. maddness-        return cachedClearTimeout(marker);-    } catch (e){-        try {-            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally-            return cachedClearTimeout.call(null, marker);-        } catch (e){-            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.-            // Some versions of I.E. have different rules for clearTimeout vs setTimeout-            return cachedClearTimeout.call(this, marker);-        }-    }----}-var queue = [];-var draining = false;-var currentQueue;-var queueIndex = -1;--function cleanUpNextTick() {-    if (!draining || !currentQueue) {-        return;-    }-    draining = false;-    if (currentQueue.length) {-        queue = currentQueue.concat(queue);-    } else {-        queueIndex = -1;-    }-    if (queue.length) {-        drainQueue();-    }-}--function drainQueue() {-    if (draining) {-        return;-    }-    var timeout = runTimeout(cleanUpNextTick);-    draining = true;--    var len = queue.length;-    while(len) {-        currentQueue = queue;-        queue = [];-        while (++queueIndex < len) {-            if (currentQueue) {-                currentQueue[queueIndex].run();-            }-        }-        queueIndex = -1;-        len = queue.length;-    }-    currentQueue = null;-    draining = false;-    runClearTimeout(timeout);-}--process.nextTick = function (fun) {-    var args = new Array(arguments.length - 1);-    if (arguments.length > 1) {-        for (var i = 1; i < arguments.length; i++) {-            args[i - 1] = arguments[i];-        }-    }-    queue.push(new Item(fun, args));-    if (queue.length === 1 && !draining) {-        runTimeout(drainQueue);-    }-};--// v8 likes predictible objects-function Item(fun, array) {-    this.fun = fun;-    this.array = array;-}-Item.prototype.run = function () {-    this.fun.apply(null, this.array);-};-process.title = 'browser';-process.browser = true;-process.env = {};-process.argv = [];-process.version = ''; // empty string to avoid regexp issues-process.versions = {};--function noop() {}--process.on = noop;-process.addListener = noop;-process.once = noop;-process.off = noop;-process.removeListener = noop;-process.removeAllListeners = noop;-process.emit = noop;--process.binding = function (name) {-    throw new Error('process.binding is not supported');-};--process.cwd = function () { return '/' };-process.chdir = function (dir) {-    throw new Error('process.chdir is not supported');-};-process.umask = function() { return 0; };--},{}]},{},[272]);+// Generated by purs version 0.11.4+"use strict";+var Common = require("../Common");+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Aff = require("../Control.Monad.Aff");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");+var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");+var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");+var DOM = require("../DOM");+var Data_Eq = require("../Data.Eq");+var Data_FormURLEncoded = require("../Data.FormURLEncoded");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Show = require("../Data.Show");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Network_HTTP_Affjax = require("../Network.HTTP.Affjax");+var Network_HTTP_Affjax_Request = require("../Network.HTTP.Affjax.Request");+var Network_HTTP_Affjax_Response = require("../Network.HTTP.Affjax.Response");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var onActivateClick = function (activate) {+    return function (ev) {+        return function (v) {+            return function __do() {+                Control_Monad_Eff_JQuery.preventDefault(ev)();+                var v1 = Common.getAttr("data-token")(activate)();+                var v2 = Common.getAttr("data-salt")(activate)();+                var v3 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#password1"))();+                var v4 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#password2"))();+                var v5 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Common.getAttr("action"))(Control_Monad_Eff_JQuery.select("#activateform"))();+                Control_Monad_Eff_Console.log(v5)();+                var password2 = Common.fromForeign(v4);+                var password1 = Common.fromForeign(v3);+                var $13 = !(Data_Maybe.isNothing(password1) && Data_Maybe.isNothing(password2));+                if ($13) {+                    var $14 = Data_Eq.eq(Data_Maybe.eqMaybe(Data_Eq.eqString))(password1)(password2);+                    if ($14) {+                        Common.progress("Salting password")();+                        var salted = Common.hmacSha3(Common.fromUtf8(Data_Maybe.fromJust()(password1)), Common.fromHex(v2));+                        Common.progress("Requesting account activation...")();+                        var dat = Data_FormURLEncoded.fromArray([ new Data_Tuple.Tuple("salted", new Data_Maybe.Just(salted)) ]);+                        var v6 = Control_Monad_Aff.runAff(function (e) {+                            return Common.fail(Common.Activate.value)(Data_Show.show(Control_Monad_Eff_Exception.showError)(e));+                        })(function (x) {+                            return Common.welcome(x.response)(Common.Activate.value);+                        })(Network_HTTP_Affjax.post(Network_HTTP_Affjax_Request.requestableFormURLEncoded)(Network_HTTP_Affjax_Response.responsableJson)(v5)(dat))();+                        return Data_Unit.unit;+                    };+                    return Common.fail(Common.Activate.value)("Passwords must match")();+                };+                return Common.fail(Common.Activate.value)("Passwords error")();+            };+        };+    };+};+module.exports = {+    onActivateClick: onActivateClick+};++},{"../Common":37,"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":56,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Console":61,"../Control.Monad.Eff.Exception":63,"../Control.Monad.Eff.JQuery":65,"../DOM":101,"../Data.Eq":140,"../Data.FormURLEncoded":148,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Show":241,"../Data.Tuple":255,"../Data.Unit":259,"../Network.HTTP.Affjax":270,"../Network.HTTP.Affjax.Request":267,"../Network.HTTP.Affjax.Response":268,"../Partial.Unsafe":275,"../Prelude":278}],36:[function(require,module,exports){+"use strict";++var CryptoJS = require('crypto-js');++exports.hmacSha3 = function(msg, key) {+	var hmac  = CryptoJS.HmacSHA3(msg, key);+	//console.log("bla");+	//console.log(hmac.toString());+	//console.log(CryptoJS.enc.Utf8.stringify(hmac));+	return hmac.toString();+}++exports.setLocation = function(newLoc) {+	window.location = newLoc;+  return null;+}++exports.getAttr = function(attr) {+    return function(ob) {+        return function() {+            return ob.attr(attr);+        };+    };+};++exports.toHex = function(str) {+	var repr = parseInt(str, 16);+	return repr.toString(16);+}++exports.fromHex = function(str) {+	return CryptoJS.enc.Hex.parse(str);+}++exports.fromUtf8 = function(str) {+	return CryptoJS.enc.Utf8.parse(str);+}++},{"crypto-js":9}],37:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");+var Control_Monad_Except = require("../Control.Monad.Except");+var DOM = require("../DOM");+var Data_Argonaut = require("../Data.Argonaut");+var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");+var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");+var Data_Argonaut_Decode_Combinators = require("../Data.Argonaut.Decode.Combinators");+var Data_Either = require("../Data.Either");+var Data_Foreign = require("../Data.Foreign");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Prelude = require("../Prelude");+var Welcome = (function () {+    function Welcome(value0) {+        this.value0 = value0;+    };+    Welcome.create = function (value0) {+        return new Welcome(value0);+    };+    return Welcome;+})();+var Err = (function () {+    function Err(value0) {+        this.value0 = value0;+    };+    Err.create = function (value0) {+        return new Err(value0);+    };+    return Err;+})();+var Login = (function () {+    function Login() {++    };+    Login.value = new Login();+    return Login;+})();+var Activate = (function () {+    function Activate() {++    };+    Activate.value = new Activate();+    return Activate;+})();+var Challenge = (function () {+    function Challenge(value0) {+        this.value0 = value0;+    };+    Challenge.create = function (value0) {+        return new Challenge(value0);+    };+    return Challenge;+})();+var progress = function (s) {+    return Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.setText(s))(Control_Monad_Eff_JQuery.select("#progress"));+};+var fromForeign = function (f) {+    var v = Control_Monad_Except.runExcept(Data_Foreign.readString(f));+    if (v instanceof Data_Either.Left) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Data_Either.Right) {+        return new Data_Maybe.Just(v.value0);+    };+    throw new Error("Failed pattern match at Common line 77, column 17 - line 79, column 20: " + [ v.constructor.name ]);+};+var fail = function (v) {+    return function (s) {+        if (v instanceof Login) {+            return function __do() {+                progress(s)();+                var v1 = Data_Functor.map(Control_Monad_Eff.functorEff)(Control_Monad_Eff_JQuery.setProp("disabled")(false))(Control_Monad_Eff_JQuery.select(".login input"))();+                return Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.display)(Control_Monad_Eff_JQuery.select("#login"))();+            };+        };+        if (v instanceof Activate) {+            return function __do() {+                progress(s)();+                var v1 = Data_Functor.map(Control_Monad_Eff.functorEff)(Control_Monad_Eff_JQuery.setProp("disabled")(false))(Control_Monad_Eff_JQuery.select(".activate input"))();+                return Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.display)(Control_Monad_Eff_JQuery.select("#activate"))();+            };+        };+        throw new Error("Failed pattern match at Common line 35, column 1 - line 39, column 1: " + [ v.constructor.name, s.constructor.name ]);+    };+};+var decodeJsonWelcome = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {+    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeStrMap(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(function (v) {+        return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("welcome"))(function (v1) {+            return Control_Applicative.pure(Data_Either.applicativeEither)(new Welcome({+                link: v1+            }));+        });+    });+});+var decodeJsonErr = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {+    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeStrMap(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(function (v) {+        return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("error"))(function (v1) {+            return Control_Applicative.pure(Data_Either.applicativeEither)(new Err({+                err: v1+            }));+        });+    });+});+var welcome = function (j) {+    return function (elem) {+        var eitherWelcome = Data_Argonaut_Decode_Class.decodeJson(decodeJsonWelcome)(j);+        if (eitherWelcome instanceof Data_Either.Left) {+            var eitherErr = Data_Argonaut_Decode_Class.decodeJson(decodeJsonErr)(j);+            return Data_Either.either(fail(elem))(function (v) {+                return fail(elem)(v.value0.err);+            })(eitherErr);+        };+        if (eitherWelcome instanceof Data_Either.Right) {+            return function __do() {+                progress("Welcome!")();+                return $foreign.setLocation(eitherWelcome.value0.value0.link)();+            };+        };+        throw new Error("Failed pattern match at Common line 22, column 3 - line 28, column 28: " + [ eitherWelcome.constructor.name ]);+    };+};+var decodeJsonChallenge = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {+    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeStrMap(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(function (v) {+        return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("salt"))(function (v1) {+            return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Combinators.getField(Data_Argonaut_Decode_Class.decodeJsonString)(v)("token"))(function (v2) {+                return Control_Applicative.pure(Data_Either.applicativeEither)(new Challenge({+                    salt: v1, +                    token: v2+                }));+            });+        });+    });+});+module.exports = {+    Challenge: Challenge, +    Login: Login, +    Activate: Activate, +    Err: Err, +    Welcome: Welcome, +    fail: fail, +    fromForeign: fromForeign, +    progress: progress, +    welcome: welcome, +    decodeJsonChallenge: decodeJsonChallenge, +    decodeJsonWelcome: decodeJsonWelcome, +    decodeJsonErr: decodeJsonErr, +    fromHex: $foreign.fromHex, +    fromUtf8: $foreign.fromUtf8, +    getAttr: $foreign.getAttr, +    hmacSha3: $foreign.hmacSha3, +    setLocation: $foreign.setLocation, +    toHex: $foreign.toHex+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Eff":71,"../Control.Monad.Eff.JQuery":65,"../Control.Monad.Except":74,"../DOM":101,"../Data.Argonaut":115,"../Data.Argonaut.Decode":106,"../Data.Argonaut.Decode.Class":104,"../Data.Argonaut.Decode.Combinators":105,"../Data.Either":138,"../Data.Foreign":147,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Functor":157,"../Data.Maybe":204,"../Prelude":278,"./foreign":36}],38:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Functor = require("../Data.Functor");+var Data_Semigroup = require("../Data.Semigroup");+var Alt = function (Functor0, alt) {+    this.Functor0 = Functor0;+    this.alt = alt;+};+var altArray = new Alt(function () {+    return Data_Functor.functorArray;+}, Data_Semigroup.append(Data_Semigroup.semigroupArray));+var alt = function (dict) {+    return dict.alt;+};+module.exports = {+    Alt: Alt, +    alt: alt, +    altArray: altArray+};++},{"../Data.Functor":157,"../Data.Semigroup":237}],39:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Plus = require("../Control.Plus");+var Data_Functor = require("../Data.Functor");+var Alternative = function (Applicative0, Plus1) {+    this.Applicative0 = Applicative0;+    this.Plus1 = Plus1;+};+var alternativeArray = new Alternative(function () {+    return Control_Applicative.applicativeArray;+}, function () {+    return Control_Plus.plusArray;+});+module.exports = {+    Alternative: Alternative, +    alternativeArray: alternativeArray+};++},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Plus":92,"../Data.Functor":157}],40:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Data_Functor = require("../Data.Functor");+var Data_Unit = require("../Data.Unit");+var Applicative = function (Apply0, pure) {+    this.Apply0 = Apply0;+    this.pure = pure;+};+var pure = function (dict) {+    return dict.pure;+};+var unless = function (dictApplicative) {+    return function (v) {+        return function (v1) {+            if (!v) {+                return v1;+            };+            if (v) {+                return pure(dictApplicative)(Data_Unit.unit);+            };+            throw new Error("Failed pattern match at Control.Applicative line 63, column 1 - line 63, column 19: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+};+var when = function (dictApplicative) {+    return function (v) {+        return function (v1) {+            if (v) {+                return v1;+            };+            if (!v) {+                return pure(dictApplicative)(Data_Unit.unit);+            };+            throw new Error("Failed pattern match at Control.Applicative line 58, column 1 - line 58, column 16: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+};+var liftA1 = function (dictApplicative) {+    return function (f) {+        return function (a) {+            return Control_Apply.apply(dictApplicative.Apply0())(pure(dictApplicative)(f))(a);+        };+    };+};+var applicativeFn = new Applicative(function () {+    return Control_Apply.applyFn;+}, function (x) {+    return function (v) {+        return x;+    };+});+var applicativeArray = new Applicative(function () {+    return Control_Apply.applyArray;+}, function (x) {+    return [ x ];+});+module.exports = {+    Applicative: Applicative, +    liftA1: liftA1, +    pure: pure, +    unless: unless, +    when: when, +    applicativeFn: applicativeFn, +    applicativeArray: applicativeArray+};++},{"../Control.Apply":42,"../Data.Functor":157,"../Data.Unit":259}],41:[function(require,module,exports){+"use strict";++exports.arrayApply = function (fs) {+  return function (xs) {+    var result = [];+    var n = 0;+    for (var i = 0, l = fs.length; i < l; i++) {+      for (var j = 0, k = xs.length; j < k; j++) {+        result[n++] = fs[i](xs[j]);+      }+    }+    return result;+  };+};++},{}],42:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Category = require("../Control.Category");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Apply = function (Functor0, apply) {+    this.Functor0 = Functor0;+    this.apply = apply;+};+var applyFn = new Apply(function () {+    return Data_Functor.functorFn;+}, function (f) {+    return function (g) {+        return function (x) {+            return f(x)(g(x));+        };+    };+});+var applyArray = new Apply(function () {+    return Data_Functor.functorArray;+}, $foreign.arrayApply);+var apply = function (dict) {+    return dict.apply;+};+var applyFirst = function (dictApply) {+    return function (a) {+        return function (b) {+            return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(Data_Function["const"])(a))(b);+        };+    };+};+var applySecond = function (dictApply) {+    return function (a) {+        return function (b) {+            return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(Data_Function["const"](Control_Category.id(Control_Category.categoryFn)))(a))(b);+        };+    };+};+var lift2 = function (dictApply) {+    return function (f) {+        return function (a) {+            return function (b) {+                return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b);+            };+        };+    };+};+var lift3 = function (dictApply) {+    return function (f) {+        return function (a) {+            return function (b) {+                return function (c) {+                    return apply(dictApply)(apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b))(c);+                };+            };+        };+    };+};+var lift4 = function (dictApply) {+    return function (f) {+        return function (a) {+            return function (b) {+                return function (c) {+                    return function (d) {+                        return apply(dictApply)(apply(dictApply)(apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b))(c))(d);+                    };+                };+            };+        };+    };+};+var lift5 = function (dictApply) {+    return function (f) {+        return function (a) {+            return function (b) {+                return function (c) {+                    return function (d) {+                        return function (e) {+                            return apply(dictApply)(apply(dictApply)(apply(dictApply)(apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b))(c))(d))(e);+                        };+                    };+                };+            };+        };+    };+};+module.exports = {+    Apply: Apply, +    apply: apply, +    applyFirst: applyFirst, +    applySecond: applySecond, +    lift2: lift2, +    lift3: lift3, +    lift4: lift4, +    lift5: lift5, +    applyFn: applyFn, +    applyArray: applyArray+};++},{"../Control.Category":47,"../Data.Function":151,"../Data.Functor":157,"./foreign":41}],43:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Biapply = require("../Control.Biapply");+var Biapplicative = function (Biapply0, bipure) {+    this.Biapply0 = Biapply0;+    this.bipure = bipure;+};+var bipure = function (dict) {+    return dict.bipure;+};+module.exports = {+    Biapplicative: Biapplicative, +    bipure: bipure+};++},{"../Control.Biapply":44}],44:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Function = require("../Data.Function");+var Biapply = function (Bifunctor0, biapply) {+    this.Bifunctor0 = Bifunctor0;+    this.biapply = biapply;+};+var biapply = function (dict) {+    return dict.biapply;+};+var biapplyFirst = function (dictBiapply) {+    return function (a) {+        return function (b) {+            return biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(Data_Function["const"](Control_Category.id(Control_Category.categoryFn)))(Data_Function["const"](Control_Category.id(Control_Category.categoryFn))))(a))(b);+        };+    };+};+var biapplySecond = function (dictBiapply) {+    return function (a) {+        return function (b) {+            return biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(Data_Function["const"])(Data_Function["const"]))(a))(b);+        };+    };+};+var bilift2 = function (dictBiapply) {+    return function (f) {+        return function (g) {+            return function (a) {+                return function (b) {+                    return biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(f)(g))(a))(b);+                };+            };+        };+    };+};+var bilift3 = function (dictBiapply) {+    return function (f) {+        return function (g) {+            return function (a) {+                return function (b) {+                    return function (c) {+                        return biapply(dictBiapply)(biapply(dictBiapply)(Control_Category.id(Control_Category.categoryFn)(Data_Bifunctor.bimap(dictBiapply.Bifunctor0())(f)(g))(a))(b))(c);+                    };+                };+            };+        };+    };+};+module.exports = {+    Biapply: Biapply, +    biapply: biapply, +    biapplyFirst: biapplyFirst, +    biapplySecond: biapplySecond, +    bilift2: bilift2, +    bilift3: bilift3+};++},{"../Control.Category":47,"../Data.Bifunctor":128,"../Data.Function":151}],45:[function(require,module,exports){+"use strict";++exports.arrayBind = function (arr) {+  return function (f) {+    var result = [];+    for (var i = 0, l = arr.length; i < l; i++) {+      Array.prototype.push.apply(result, f(arr[i]));+    }+    return result;+  };+};++},{}],46:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Unit = require("../Data.Unit");+var Bind = function (Apply0, bind) {+    this.Apply0 = Apply0;+    this.bind = bind;+};+var Discard = function (discard) {+    this.discard = discard;+};+var discard = function (dict) {+    return dict.discard;+};+var bindFn = new Bind(function () {+    return Control_Apply.applyFn;+}, function (m) {+    return function (f) {+        return function (x) {+            return f(m(x))(x);+        };+    };+});+var bindArray = new Bind(function () {+    return Control_Apply.applyArray;+}, $foreign.arrayBind);+var bind = function (dict) {+    return dict.bind;+};+var bindFlipped = function (dictBind) {+    return Data_Function.flip(bind(dictBind));+};+var composeKleisliFlipped = function (dictBind) {+    return function (f) {+        return function (g) {+            return function (a) {+                return bindFlipped(dictBind)(f)(g(a));+            };+        };+    };+};+var composeKleisli = function (dictBind) {+    return function (f) {+        return function (g) {+            return function (a) {+                return bind(dictBind)(f(a))(g);+            };+        };+    };+};+var discardUnit = new Discard(function (dictBind) {+    return bind(dictBind);+});+var ifM = function (dictBind) {+    return function (cond) {+        return function (t) {+            return function (f) {+                return bind(dictBind)(cond)(function (cond$prime) {+                    if (cond$prime) {+                        return t;+                    };+                    return f;+                });+            };+        };+    };+};+var join = function (dictBind) {+    return function (m) {+        return bind(dictBind)(m)(Control_Category.id(Control_Category.categoryFn));+    };+};+module.exports = {+    Bind: Bind, +    Discard: Discard, +    bind: bind, +    bindFlipped: bindFlipped, +    composeKleisli: composeKleisli, +    composeKleisliFlipped: composeKleisliFlipped, +    discard: discard, +    ifM: ifM, +    join: join, +    bindFn: bindFn, +    bindArray: bindArray, +    discardUnit: discardUnit+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Data.Function":151,"../Data.Functor":157,"../Data.Unit":259,"./foreign":45}],47:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Category = function (Semigroupoid0, id) {+    this.Semigroupoid0 = Semigroupoid0;+    this.id = id;+};+var id = function (dict) {+    return dict.id;+};+var categoryFn = new Category(function () {+    return Control_Semigroupoid.semigroupoidFn;+}, function (x) {+    return x;+});+module.exports = {+    Category: Category, +    id: id, +    categoryFn: categoryFn+};++},{"../Control.Semigroupoid":93}],48:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Extend = require("../Control.Extend");+var Data_Functor = require("../Data.Functor");+var Comonad = function (Extend0, extract) {+    this.Extend0 = Extend0;+    this.extract = extract;+};+var extract = function (dict) {+    return dict.extract;+};+module.exports = {+    Comonad: Comonad, +    extract: extract+};++},{"../Control.Extend":50,"../Data.Functor":157}],49:[function(require,module,exports){+"use strict";++exports.arrayExtend = function(f) {+  return function(xs) {+    return xs.map(function (_, i, xs) {+      return f(xs.slice(i));+    });+  };+};++},{}],50:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Category = require("../Control.Category");+var Data_Functor = require("../Data.Functor");+var Data_Semigroup = require("../Data.Semigroup");+var Extend = function (Functor0, extend) {+    this.Functor0 = Functor0;+    this.extend = extend;+};+var extendFn = function (dictSemigroup) {+    return new Extend(function () {+        return Data_Functor.functorFn;+    }, function (f) {+        return function (g) {+            return function (w) {+                return f(function (w$prime) {+                    return g(Data_Semigroup.append(dictSemigroup)(w)(w$prime));+                });+            };+        };+    });+};+var extendArray = new Extend(function () {+    return Data_Functor.functorArray;+}, $foreign.arrayExtend);+var extend = function (dict) {+    return dict.extend;+};+var extendFlipped = function (dictExtend) {+    return function (w) {+        return function (f) {+            return extend(dictExtend)(f)(w);+        };+    };+};+var duplicate = function (dictExtend) {+    return extend(dictExtend)(Control_Category.id(Control_Category.categoryFn));+};+var composeCoKleisliFlipped = function (dictExtend) {+    return function (f) {+        return function (g) {+            return function (w) {+                return f(extend(dictExtend)(g)(w));+            };+        };+    };+};+var composeCoKleisli = function (dictExtend) {+    return function (f) {+        return function (g) {+            return function (w) {+                return g(extend(dictExtend)(f)(w));+            };+        };+    };+};+module.exports = {+    Extend: Extend, +    composeCoKleisli: composeCoKleisli, +    composeCoKleisliFlipped: composeCoKleisliFlipped, +    duplicate: duplicate, +    extend: extend, +    extendFlipped: extendFlipped, +    extendFn: extendFn, +    extendArray: extendArray+};++},{"../Control.Category":47,"../Data.Functor":157,"../Data.Semigroup":237,"./foreign":49}],51:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Unit = require("../Data.Unit");+var Lazy = function (defer) {+    this.defer = defer;+};+var lazyUnit = new Lazy(function (v) {+    return Data_Unit.unit;+});+var lazyFn = new Lazy(function (f) {+    return function (x) {+        return f(Data_Unit.unit)(x);+    };+});+var defer = function (dict) {+    return dict.defer;+};+var fix = function (dictLazy) {+    return function (f) {+        return defer(dictLazy)(function (v) {+            return f(fix(dictLazy)(f));+        });+    };+};+module.exports = {+    Lazy: Lazy, +    defer: defer, +    fix: fix, +    lazyFn: lazyFn, +    lazyUnit: lazyUnit+};++},{"../Data.Unit":259}],52:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Aff = require("../Control.Monad.Aff");+var Control_Monad_Aff_Internal = require("../Control.Monad.Aff.Internal");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Maybe = require("../Data.Maybe");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var fromAVBox = Unsafe_Coerce.unsafeCoerce;+var killVar = function (q) {+    return function (e) {+        return fromAVBox(Control_Monad_Aff_Internal._killVar(Control_Monad_Aff.nonCanceler, q, e));+    };+};+var makeVar = fromAVBox(Control_Monad_Aff_Internal._makeVar(Control_Monad_Aff.nonCanceler));+var peekVar = function (q) {+    return fromAVBox(Control_Monad_Aff_Internal._peekVar(Control_Monad_Aff.nonCanceler, q));+};+var putVar = function (q) {+    return function (a) {+        return fromAVBox(Control_Monad_Aff_Internal._putVar(Control_Monad_Aff.nonCanceler, q, a));+    };+};+var makeVar$prime = function (a) {+    return Control_Bind.bind(Control_Monad_Aff.bindAff)(makeVar)(function (v) {+        return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(putVar(v)(a))(function () {+            return Control_Applicative.pure(Control_Monad_Aff.applicativeAff)(v);+        });+    });+};+var takeVar = function (q) {+    return fromAVBox(Control_Monad_Aff_Internal._takeVar(Control_Monad_Aff.nonCanceler, q));+};+var modifyVar = function (f) {+    return function (v) {+        return Control_Bind.bind(Control_Monad_Aff.bindAff)(takeVar(v))(function ($2) {+            return putVar(v)(f($2));+        });+    };+};+var tryPeekVar = function (q) {+    return fromAVBox(Control_Monad_Aff_Internal._tryPeekVar(Data_Maybe.Nothing.value, Data_Maybe.Just.create, Control_Monad_Aff.nonCanceler, q));+};+var tryTakeVar = function (q) {+    return fromAVBox(Control_Monad_Aff_Internal._tryTakeVar(Data_Maybe.Nothing.value, Data_Maybe.Just.create, Control_Monad_Aff.nonCanceler, q));+};+module.exports = {+    killVar: killVar, +    makeVar: makeVar, +    "makeVar'": makeVar$prime, +    modifyVar: modifyVar, +    peekVar: peekVar, +    putVar: putVar, +    takeVar: takeVar, +    tryPeekVar: tryPeekVar, +    tryTakeVar: tryTakeVar+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":56,"../Control.Monad.Aff.Internal":54,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Exception":63,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Maybe":204,"../Prelude":278,"../Unsafe.Coerce":282}],53:[function(require,module,exports){+"use strict";++exports._makeVar = function (nonCanceler) {+  return function (success) {+    success({+      consumers: [],+      producers: [],+      error: undefined+    });+    return nonCanceler;+  };+};++exports._takeVar = function (nonCanceler, avar) {+  return function (success, error) {+    if (avar.error !== undefined) {+      error(avar.error);+    } else if (avar.producers.length > 0) {+      avar.producers.shift()(success, error);+    } else {+      avar.consumers.push({ peek: false, success: success, error: error });+    }++    return nonCanceler;+  };+};++exports._tryTakeVar = function (nothing, just, nonCanceler, avar) {+  return function (success, error) {+    if (avar.error !== undefined) {+      error(avar.error);+    } else if (avar.producers.length > 0) {+      avar.producers.shift()(function (x) {+        return success(just(x));+      }, error);+    } else {+      success(nothing);+    }+    return nonCanceler;+  };+};++exports._peekVar = function (nonCanceler, avar) {+  return function (success, error) {+    if (avar.error !== undefined) {+      error(avar.error);+    } else if (avar.producers.length > 0) {+      avar.producers[0](success, error);+    } else {+      avar.consumers.push({ peek: true, success: success, error: error });+    }+    return nonCanceler;+  };+};++exports._tryPeekVar = function (nothing, just, nonCanceler, avar) {+  return function (success, error) {+    if (avar.error !== undefined) {+      error(avar.error);+    } else if (avar.producers.length > 0) {+      avar.producers[0](function (x) {+        return success(just(x));+      }, error);+    } else {+      success(nothing);+    }+    return nonCanceler;+  };+};++exports._putVar = function (nonCanceler, avar, a) {+  return function (success, error) {+    if (avar.error !== undefined) {+      error(avar.error);+    } else {+      var shouldQueue = true;+      var consumers = [];+      var consumer;++      while (true) {+        consumer = avar.consumers.shift();+        if (consumer) {+          consumers.push(consumer);+          if (consumer.peek) {+            continue;+          } else {+            shouldQueue = false;+          }+        }+        break;+      }++      if (shouldQueue) {+        avar.producers.push(function (success) {+          success(a);+          return nonCanceler;+        });+      }++      for (var i = 0; i < consumers.length; i++) {+        consumers[i].success(a);+      }++      success({});+    }++    return nonCanceler;+  };+};++exports._killVar = function (nonCanceler, avar, e) {+  return function (success, error) {+    if (avar.error !== undefined) {+      error(avar.error);+    } else {+      avar.error = e;+      while (avar.consumers.length) {+        avar.consumers.shift().error(e);+      }+      success({});+    }++    return nonCanceler;+  };+};++},{}],54:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Maybe = require("../Data.Maybe");+var Prelude = require("../Prelude");+module.exports = {+    _killVar: $foreign._killVar, +    _makeVar: $foreign._makeVar, +    _peekVar: $foreign._peekVar, +    _putVar: $foreign._putVar, +    _takeVar: $foreign._takeVar, +    _tryPeekVar: $foreign._tryPeekVar, +    _tryTakeVar: $foreign._tryTakeVar+};++},{"../Control.Monad.Eff.Exception":63,"../Data.Function.Uncurried":150,"../Data.Maybe":204,"../Prelude":278,"./foreign":53}],55:[function(require,module,exports){+/* globals setTimeout, clearTimeout, setImmediate, clearImmediate */+"use strict";++exports._cancelWith = function (nonCanceler, aff, canceler1) {+  return function (success, error) {+    var canceler2 = aff(success, error);++    return function (e) {+      return function (success, error) {+        var cancellations = 0;+        var result = false;+        var errored = false;++        var s = function (bool) {+          cancellations = cancellations + 1;+          result = result || bool;++          if (cancellations === 2 && !errored) {+            success(result);+          }+        };++        var f = function (err) {+          if (!errored) {+            errored = true;+            error(err);+          }+        };++        canceler2(e)(s, f);+        canceler1(e)(s, f);++        return nonCanceler;+      };+    };+  };+};++exports._delay = function (nonCanceler, millis) {+  var set = setTimeout;+  var clear = clearTimeout;+  if (millis <= 0 && typeof setImmediate === "function") {+    set = setImmediate;+    clear = clearImmediate;+  }+  return function (success) {+    var timedOut = false;+    var timer = set(function () {+      timedOut = true;+      success();+    }, millis);++    return function () {+      return function (s) {+        if (timedOut) {+          s(false);+        } else {+          clear(timer);+          s(true);+        }+        return nonCanceler;+      };+    };+  };+};++exports._unsafeInterleaveAff = function (aff) {+  return aff;+};++exports._forkAff = function (nonCanceler, aff) {+  var voidF = function () {};++  return function (success) {+    var canceler = aff(voidF, voidF);+    success(canceler);+    return nonCanceler;+  };+};++exports._forkAll = function (nonCanceler, foldl, affs) {+  var voidF = function () {};++  return function (success) {+    var cancelers = foldl(function (acc) {+      return function (aff) {+        acc.push(aff(voidF, voidF));+        return acc;+      };+    })([])(affs);++    var canceler = function (e) {+      return function (success, error) {+        var cancellations = 0;+        var result        = false;+        var errored       = false;++        var s = function (bool) {+          cancellations = cancellations + 1;+          result        = result || bool;++          if (cancellations === cancelers.length && !errored) {+            success(result);+          }+        };++        var f = function (err) {+          if (!errored) {+            errored = true;+            error(err);+          }+        };++        for (var i = 0; i < cancelers.length; i++) {+          cancelers[i](e)(s, f);+        }++        return nonCanceler;+      };+    };++    success(canceler);+    return nonCanceler;+  };+};++exports._makeAff = function (cb) {+  return function (success, error) {+    try {+      return cb(function (e) {+        return function () {+          error(e);+        };+      })(function (v) {+        return function () {+          success(v);+        };+      })();+    } catch (err) {+      error(err);+    }+  };+};++exports._pure = function (nonCanceler, v) {+  return function (success) {+    success(v);+    return nonCanceler;+  };+};++exports._throwError = function (nonCanceler, e) {+  return function (success, error) {+    error(e);+    return nonCanceler;+  };+};++exports._fmap = function (f, aff) {+  return function (success, error) {+    return aff(function (v) {+      success(f(v));+    }, error);+  };+};++exports._bind = function (alwaysCanceler, aff, f) {+  return function (success, error) {+    var canceler1, canceler2;++    var isCanceled    = false;+    var requestCancel = false;++    var onCanceler = function () {};++    canceler1 = aff(function (v) {+      if (requestCancel) {+        isCanceled = true;++        return alwaysCanceler;+      } else {+        canceler2 = f(v)(success, error);++        onCanceler(canceler2);++        return canceler2;+      }+    }, error);++    return function (e) {+      return function (s, f) {+        requestCancel = true;++        if (canceler2 !== undefined) {+          return canceler2(e)(s, f);+        } else {+          return canceler1(e)(function (bool) {+            if (bool || isCanceled) {+              s(true);+            } else {+              onCanceler = function (canceler) {+                canceler(e)(s, f);+              };+            }+          }, f);+        }+      };+    };+  };+};++exports._attempt = function (Left, Right, aff) {+  return function (success) {+    return aff(function (v) {+      success(Right(v));+    }, function (e) {+      success(Left(e));+    });+  };+};++exports._runAff = function (errorT, successT, aff) {+  // If errorT or successT throw, and an Aff is comprised only of synchronous+  // effects, then it's possible for makeAff/liftEff to accidentally catch+  // it, which may end up rerunning the Aff depending on error recovery+  // behavior. To mitigate this, we observe synchronicity using mutation. If+  // an Aff is observed to be synchronous, we let the stack reset and run the+  // handlers outside of the normal callback flow.+  return function () {+    var status = 0;+    var result, success;++    var canceler = aff(function (v) {+      if (status === 2) {+        successT(v)();+      } else {+        status = 1;+        result = v;+        success = true;+      }+    }, function (e) {+      if (status === 2) {+        errorT(e)();+      } else {+        status = 1;+        result = e;+        success = false;+      }+    });++    if (status === 1) {+      if (success) {+        successT(result)();+      } else {+        errorT(result)();+      }+    } else {+      status = 2;+    }++    return canceler;+  };+};++exports._liftEff = function (nonCanceler, e) {+  return function (success, error) {+    var result;+    try {+      result = e();+    } catch (err) {+      error(err);+      return nonCanceler;+    }++    success(result);+    return nonCanceler;+  };+};++exports._tailRecM = function (isLeft, f, a) {+  return function (success, error) {+    return function go (acc) {+      var result, status, canceler;++      // Observes synchronous effects using a flag.+      //   status = 0 (unresolved status)+      //   status = 1 (synchronous effect)+      //   status = 2 (asynchronous effect)++      var csuccess = function (v) {+        // If the status is still unresolved, we have observed a+        // synchronous effect. Otherwise, the status will be `2`.+        if (status === 0) {+          // Store the result for further synchronous processing.+          result = v;+          status = 1;+        } else {+          // When we have observed an asynchronous effect, we use normal+          // recursion. This is safe because we will be on a new stack.+          if (isLeft(v)) {+            go(v.value0);+          } else {+            success(v.value0);+          }+        }+      };++      while (true) {+        status = 0;+        canceler = f(acc)(csuccess, error);++        // If the status has already resolved to `1` by our Aff handler, then+        // we have observed a synchronous effect. Otherwise it will still be+        // `0`.+        if (status === 1) {+          // When we have observed a synchronous effect, we merely swap out the+          // accumulator and continue the loop, preserving stack.+          if (isLeft(result)) {+            acc = result.value0;+            continue;+          } else {+            success(result.value0);+          }+        } else {+          // If the status has not resolved yet, then we have observed an+          // asynchronous effect.+          status = 2;+        }+        return canceler;+      }++    }(a);+  };+};++},{}],56:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Aff_Internal = require("../Control.Monad.Aff.Internal");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Parallel = require("../Control.Parallel");+var Control_Parallel_Class = require("../Control.Parallel.Class");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Time_Duration = require("../Data.Time.Duration");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var ParAff = function (x) {+    return x;+};+var Canceler = function (x) {+    return x;+};+var runAff = function (ex) {+    return function (f) {+        return function (aff) {+            return $foreign._runAff(ex, f, aff);+        };+    };+};+var newtypeParAff = new Data_Newtype.Newtype(function (n) {+    return n;+}, ParAff);+var makeAff$prime = function (h) {+    return $foreign._makeAff(h);+};+var functorAff = new Data_Functor.Functor(function (f) {+    return function (fa) {+        return $foreign._fmap(f, fa);+    };+});+var functorParAff = functorAff;+var fromAVBox = Unsafe_Coerce.unsafeCoerce;+var cancel = function (v) {+    return v;+};+var launchAff = (function () {+    var lowerEx = Data_Functor.map(Control_Monad_Eff.functorEff)(function ($54) {+        return Canceler(Data_Functor.map(Data_Functor.functorFn)($foreign._unsafeInterleaveAff)(cancel($54)));+    });+    return function ($55) {+        return lowerEx(runAff(Control_Monad_Eff_Exception.throwException)(Data_Function["const"](Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(Data_Unit.unit)))($foreign._unsafeInterleaveAff($55)));+    };+})();+var attempt = function (aff) {+    return $foreign._attempt(Data_Either.Left.create, Data_Either.Right.create, aff);+};+var apathize = function (a) {+    return Data_Functor.map(functorAff)(Data_Function["const"](Data_Unit.unit))(attempt(a));+};+var applyAff = new Control_Apply.Apply(function () {+    return functorAff;+}, function (ff) {+    return function (fa) {+        return $foreign._bind(alwaysCanceler, ff, function (f) {+            return Data_Functor.map(functorAff)(f)(fa);+        });+    };+});+var applicativeAff = new Control_Applicative.Applicative(function () {+    return applyAff;+}, function (v) {+    return $foreign._pure(nonCanceler, v);+});+var nonCanceler = Data_Function["const"](Control_Applicative.pure(applicativeAff)(false));+var alwaysCanceler = Data_Function["const"](Control_Applicative.pure(applicativeAff)(true));+var cancelWith = function (aff) {+    return function (c) {+        return $foreign._cancelWith(nonCanceler, aff, c);+    };+};+var delay = function (v) {+    return $foreign._delay(nonCanceler, v);+};+var forkAff = function (aff) {+    return $foreign._forkAff(nonCanceler, aff);+};+var forkAll = function (dictFoldable) {+    return function (affs) {+        return $foreign._forkAll(nonCanceler, Data_Foldable.foldl(dictFoldable), affs);+    };+};+var killVar = function (q) {+    return function (e) {+        return fromAVBox(Control_Monad_Aff_Internal._killVar(nonCanceler, q, e));+    };+};+var liftEff$prime = function (eff) {+    return attempt($foreign._unsafeInterleaveAff($foreign._liftEff(nonCanceler, eff)));+};+var makeAff = function (h) {+    return makeAff$prime(function (e) {+        return function (a) {+            return Data_Functor.map(Control_Monad_Eff.functorEff)(Data_Function["const"](nonCanceler))(h(e)(a));+        };+    });+};+var makeVar = fromAVBox(Control_Monad_Aff_Internal._makeVar(nonCanceler));+var putVar = function (q) {+    return function (a) {+        return fromAVBox(Control_Monad_Aff_Internal._putVar(nonCanceler, q, a));+    };+};+var takeVar = function (q) {+    return fromAVBox(Control_Monad_Aff_Internal._takeVar(nonCanceler, q));+};+var semigroupAff = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (a) {+        return function (b) {+            return Control_Apply.apply(applyAff)(Data_Functor.map(functorAff)(Data_Semigroup.append(dictSemigroup))(a))(b);+        };+    });+};+var monoidAff = function (dictMonoid) {+    return new Data_Monoid.Monoid(function () {+        return semigroupAff(dictMonoid.Semigroup0());+    }, Control_Applicative.pure(applicativeAff)(Data_Monoid.mempty(dictMonoid)));+};+var semigroupCanceler = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        return function (e) {+            return Control_Apply.apply(applyAff)(Data_Functor.map(functorAff)(Data_HeytingAlgebra.disj(Data_HeytingAlgebra.heytingAlgebraBoolean))(v(e)))(v1(e));+        };+    };+});+var monoidCanceler = new Data_Monoid.Monoid(function () {+    return semigroupCanceler;+}, Data_Function["const"](Control_Applicative.pure(applicativeAff)(true)));+var bindAff = new Control_Bind.Bind(function () {+    return applyAff;+}, function (fa) {+    return function (f) {+        return $foreign._bind(alwaysCanceler, fa, f);+    };+});+var applyParAff = new Control_Apply.Apply(function () {+    return functorParAff;+}, function (v) {+    return function (v1) {+        var putOrKill = function (v2) {+            return Data_Either.either(killVar(v2))(putVar(v2));+        };+        return Control_Bind.bind(bindAff)(makeVar)(function (v2) {+            return Control_Bind.bind(bindAff)(makeVar)(function (v3) {+                return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(putOrKill(v2))(attempt(v))))(function (v4) {+                    return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(putOrKill(v3))(attempt(v1))))(function (v5) {+                        return cancelWith(Control_Apply.apply(applyAff)(takeVar(v2))(takeVar(v3)))(Data_Semigroup.append(semigroupCanceler)(v4)(v5));+                    });+                });+            });+        });+    };+});+var applicativeParAff = new Control_Applicative.Applicative(function () {+    return applyParAff;+}, function ($56) {+    return ParAff(Control_Applicative.pure(applicativeAff)($56));+});+var semigroupParAff = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (a) {+        return function (b) {+            return Control_Apply.apply(applyParAff)(Data_Functor.map(functorParAff)(Data_Semigroup.append(dictSemigroup))(a))(b);+        };+    });+};+var monoidParAff = function (dictMonoid) {+    return new Data_Monoid.Monoid(function () {+        return semigroupParAff(dictMonoid.Semigroup0());+    }, Control_Applicative.pure(applicativeParAff)(Data_Monoid.mempty(dictMonoid)));+};+var monadAff = new Control_Monad.Monad(function () {+    return applicativeAff;+}, function () {+    return bindAff;+});+var monadEffAff = new Control_Monad_Eff_Class.MonadEff(function () {+    return monadAff;+}, function (eff) {+    return $foreign._liftEff(nonCanceler, eff);+});+var monadRecAff = new Control_Monad_Rec_Class.MonadRec(function () {+    return monadAff;+}, function (f) {+    return function (a) {+        var isLoop = function (v) {+            if (v instanceof Control_Monad_Rec_Class.Loop) {+                return true;+            };+            return false;+        };+        return $foreign._tailRecM(isLoop, f, a);+    };+});+var monadThrowAff = new Control_Monad_Error_Class.MonadThrow(function () {+    return monadAff;+}, function (e) {+    return $foreign._throwError(nonCanceler, e);+});+var $$finally = function (aff1) {+    return function (aff2) {+        return Control_Bind.bind(bindAff)(attempt(aff1))(function (v) {+            return Control_Bind.bind(bindAff)(aff2)(function (v1) {+                return Data_Either.either(Control_Monad_Error_Class.throwError(monadThrowAff))(Control_Applicative.pure(applicativeAff))(v);+            });+        });+    };+};+var parallelParAff = new Control_Parallel_Class.Parallel(function () {+    return applicativeParAff;+}, function () {+    return monadAff;+}, ParAff, function (v) {+    return v;+});+var monadErrorAff = new Control_Monad_Error_Class.MonadError(function () {+    return monadThrowAff;+}, function (aff) {+    return function (ex) {+        return Control_Bind.bind(bindAff)(attempt(aff))(Data_Either.either(ex)(Control_Applicative.pure(applicativeAff)));+    };+});+var altParAff = new Control_Alt.Alt(function () {+    return functorParAff;+}, function (v) {+    return function (v1) {+        var maybeKill = function (va) {+            return function (ve) {+                return function (err) {+                    return Control_Bind.bind(bindAff)(takeVar(ve))(function (v2) {+                        return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(Control_Applicative.when(applicativeAff)(v2 === 1)(killVar(va)(err)))(function () {+                            return putVar(ve)(v2 + 1 | 0);+                        });+                    });+                };+            };+        };+        var done = function (cs) {+            return function (get) {+                return function (va) {+                    return function (x) {+                        return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(putVar(va)(x))(function () {+                            return Control_Bind.bind(bindAff)(Data_Functor.map(functorAff)(get)(takeVar(cs)))(function (v2) {+                                return Data_Functor["void"](functorAff)(cancel(v2)(Control_Monad_Eff_Exception.error("Alt early exit")));+                            });+                        });+                    };+                };+            };+        };+        return Control_Bind.bind(bindAff)(makeVar)(function (v2) {+            return Control_Bind.bind(bindAff)(makeVar)(function (v3) {+                return Control_Bind.bind(bindAff)(makeVar)(function (v4) {+                    return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(putVar(v3)(0))(function () {+                        return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(Data_Either.either(maybeKill(v2)(v3))(done(v4)(Data_Tuple.snd)(v2)))(attempt(v))))(function (v5) {+                            return Control_Bind.bind(bindAff)(forkAff(Control_Bind.bindFlipped(bindAff)(Data_Either.either(maybeKill(v2)(v3))(done(v4)(Data_Tuple.fst)(v2)))(attempt(v1))))(function (v6) {+                                return Control_Bind.discard(Control_Bind.discardUnit)(bindAff)(putVar(v4)(new Data_Tuple.Tuple(v5, v6)))(function () {+                                    return cancelWith(takeVar(v2))(Data_Semigroup.append(semigroupCanceler)(v5)(v6));+                                });+                            });+                        });+                    });+                });+            });+        });+    };+});+var altAff = new Control_Alt.Alt(function () {+    return functorAff;+}, function (a1) {+    return function (a2) {+        return Control_Bind.bind(bindAff)(attempt(a1))(Data_Either.either(Data_Function["const"](a2))(Control_Applicative.pure(applicativeAff)));+    };+});+var plusAff = new Control_Plus.Plus(function () {+    return altAff;+}, Control_Monad_Error_Class.throwError(monadThrowAff)(Control_Monad_Eff_Exception.error("Always fails")));+var alternativeAff = new Control_Alternative.Alternative(function () {+    return applicativeAff;+}, function () {+    return plusAff;+});+var monadZero = new Control_MonadZero.MonadZero(function () {+    return alternativeAff;+}, function () {+    return monadAff;+});+var monadPlusAff = new Control_MonadPlus.MonadPlus(function () {+    return monadZero;+});+var plusParAff = new Control_Plus.Plus(function () {+    return altParAff;+}, Control_Plus.empty(plusAff));+var alternativeParAff = new Control_Alternative.Alternative(function () {+    return applicativeParAff;+}, function () {+    return plusParAff;+});+module.exports = {+    Canceler: Canceler, +    ParAff: ParAff, +    apathize: apathize, +    attempt: attempt, +    cancel: cancel, +    cancelWith: cancelWith, +    delay: delay, +    "finally": $$finally, +    forkAff: forkAff, +    forkAll: forkAll, +    launchAff: launchAff, +    "liftEff'": liftEff$prime, +    makeAff: makeAff, +    "makeAff'": makeAff$prime, +    nonCanceler: nonCanceler, +    runAff: runAff, +    semigroupAff: semigroupAff, +    monoidAff: monoidAff, +    functorAff: functorAff, +    applyAff: applyAff, +    applicativeAff: applicativeAff, +    bindAff: bindAff, +    monadAff: monadAff, +    monadEffAff: monadEffAff, +    monadThrowAff: monadThrowAff, +    monadErrorAff: monadErrorAff, +    altAff: altAff, +    plusAff: plusAff, +    alternativeAff: alternativeAff, +    monadZero: monadZero, +    monadPlusAff: monadPlusAff, +    monadRecAff: monadRecAff, +    semigroupCanceler: semigroupCanceler, +    monoidCanceler: monoidCanceler, +    newtypeParAff: newtypeParAff, +    semigroupParAff: semigroupParAff, +    monoidParAff: monoidParAff, +    functorParAff: functorParAff, +    applyParAff: applyParAff, +    applicativeParAff: applicativeParAff, +    altParAff: altParAff, +    plusParAff: plusParAff, +    alternativeParAff: alternativeParAff, +    parallelParAff: parallelParAff+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Control.Monad.Aff.Internal":54,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Class":59,"../Control.Monad.Eff.Exception":63,"../Control.Monad.Error.Class":72,"../Control.Monad.Rec.Class":78,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Parallel":91,"../Control.Parallel.Class":90,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Time.Duration":250,"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278,"../Unsafe.Coerce":282,"./foreign":55}],57:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Prelude = require("../Prelude");+var MonadCont = function (Monad0, callCC) {+    this.Monad0 = Monad0;+    this.callCC = callCC;+};+var callCC = function (dict) {+    return dict.callCC;+};+module.exports = {+    MonadCont: MonadCont, +    callCC: callCC+};++},{"../Prelude":278}],58:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Newtype = require("../Data.Newtype");+var Prelude = require("../Prelude");+var ContT = function (x) {+    return x;+};+var withContT = function (f) {+    return function (v) {+        return function (k) {+            return v(f(k));+        };+    };+};+var runContT = function (v) {+    return function (k) {+        return v(k);+    };+};+var newtypeContT = new Data_Newtype.Newtype(function (n) {+    return n;+}, ContT);+var monadTransContT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {+    return function (m) {+        return function (k) {+            return Control_Bind.bind(dictMonad.Bind1())(m)(k);+        };+    };+});+var mapContT = function (f) {+    return function (v) {+        return function (k) {+            return f(v(k));+        };+    };+};+var functorContT = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return function (k) {+                return v(function (a) {+                    return k(f(a));+                });+            };+        };+    });+};+var applyContT = function (dictApply) {+    return new Control_Apply.Apply(function () {+        return functorContT(dictApply.Functor0());+    }, function (v) {+        return function (v1) {+            return function (k) {+                return v(function (g) {+                    return v1(function (a) {+                        return k(g(a));+                    });+                });+            };+        };+    });+};+var bindContT = function (dictBind) {+    return new Control_Bind.Bind(function () {+        return applyContT(dictBind.Apply0());+    }, function (v) {+        return function (k) {+            return function (k$prime) {+                return v(function (a) {+                    var v1 = k(a);+                    return v1(k$prime);+                });+            };+        };+    });+};+var applicativeContT = function (dictApplicative) {+    return new Control_Applicative.Applicative(function () {+        return applyContT(dictApplicative.Apply0());+    }, function (a) {+        return function (k) {+            return k(a);+        };+    });+};+var monadContT = function (dictMonad) {+    return new Control_Monad.Monad(function () {+        return applicativeContT(dictMonad.Applicative0());+    }, function () {+        return bindContT(dictMonad.Bind1());+    });+};+var monadAskContT = function (dictMonadAsk) {+    return new Control_Monad_Reader_Class.MonadAsk(function () {+        return monadContT(dictMonadAsk.Monad0());+    }, Control_Monad_Trans_Class.lift(monadTransContT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));+};+var monadReaderContT = function (dictMonadReader) {+    return new Control_Monad_Reader_Class.MonadReader(function () {+        return monadAskContT(dictMonadReader.MonadAsk0());+    }, function (f) {+        return function (v) {+            return function (k) {+                return Control_Bind.bind(((dictMonadReader.MonadAsk0()).Monad0()).Bind1())(Control_Monad_Reader_Class.ask(dictMonadReader.MonadAsk0()))(function (v1) {+                    return Control_Monad_Reader_Class.local(dictMonadReader)(f)(v(function ($45) {+                        return Control_Monad_Reader_Class.local(dictMonadReader)(Data_Function["const"](v1))(k($45));+                    }));+                });+            };+        };+    });+};+var monadContContT = function (dictMonad) {+    return new Control_Monad_Cont_Class.MonadCont(function () {+        return monadContT(dictMonad);+    }, function (f) {+        return function (k) {+            var v = f(function (a) {+                return function (v1) {+                    return k(a);+                };+            });+            return v(k);+        };+    });+};+var monadEffContT = function (dictMonadEff) {+    return new Control_Monad_Eff_Class.MonadEff(function () {+        return monadContT(dictMonadEff.Monad0());+    }, function ($46) {+        return Control_Monad_Trans_Class.lift(monadTransContT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($46));+    });+};+var monadStateContT = function (dictMonadState) {+    return new Control_Monad_State_Class.MonadState(function () {+        return monadContT(dictMonadState.Monad0());+    }, function ($47) {+        return Control_Monad_Trans_Class.lift(monadTransContT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)($47));+    });+};+module.exports = {+    ContT: ContT, +    mapContT: mapContT, +    runContT: runContT, +    withContT: withContT, +    newtypeContT: newtypeContT, +    monadContContT: monadContContT, +    functorContT: functorContT, +    applyContT: applyContT, +    applicativeContT: applicativeContT, +    bindContT: bindContT, +    monadContT: monadContT, +    monadTransContT: monadTransContT, +    monadEffContT: monadEffContT, +    monadAskContT: monadAskContT, +    monadReaderContT: monadReaderContT, +    monadStateContT: monadStateContT+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Control.Monad.Cont.Class":57,"../Control.Monad.Eff.Class":59,"../Control.Monad.Reader.Class":76,"../Control.Monad.State.Class":81,"../Control.Monad.Trans.Class":84,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Data.Newtype":215,"../Prelude":278}],59:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var MonadEff = function (Monad0, liftEff) {+    this.Monad0 = Monad0;+    this.liftEff = liftEff;+};+var monadEffEff = new MonadEff(function () {+    return Control_Monad_Eff.monadEff;+}, Control_Category.id(Control_Category.categoryFn));+var liftEff = function (dict) {+    return dict.liftEff;+};+module.exports = {+    MonadEff: MonadEff, +    liftEff: liftEff, +    monadEffEff: monadEffEff+};++},{"../Control.Category":47,"../Control.Monad":87,"../Control.Monad.Eff":71}],60:[function(require,module,exports){+"use strict";++exports.log = function (s) {+  return function () {+    console.log(s);+    return {};+  };+};++exports.warn = function (s) {+  return function () {+    console.warn(s);+    return {};+  };+};++exports.error = function (s) {+  return function () {+    console.error(s);+    return {};+  };+};++exports.info = function (s) {+  return function () {+    console.info(s);+    return {};+  };+};++},{}],61:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var warnShow = function (dictShow) {+    return function (a) {+        return $foreign.warn(Data_Show.show(dictShow)(a));+    };+};+var logShow = function (dictShow) {+    return function (a) {+        return $foreign.log(Data_Show.show(dictShow)(a));+    };+};+var infoShow = function (dictShow) {+    return function (a) {+        return $foreign.info(Data_Show.show(dictShow)(a));+    };+};+var errorShow = function (dictShow) {+    return function (a) {+        return $foreign.error(Data_Show.show(dictShow)(a));+    };+};+module.exports = {+    errorShow: errorShow, +    infoShow: infoShow, +    logShow: logShow, +    warnShow: warnShow, +    error: $foreign.error, +    info: $foreign.info, +    log: $foreign.log, +    warn: $foreign.warn+};++},{"../Control.Monad.Eff":71,"../Data.Show":241,"../Data.Unit":259,"./foreign":60}],62:[function(require,module,exports){+"use strict";++exports.showErrorImpl = function (err) {+  return err.stack || err.toString();+};++exports.error = function (msg) {+  return new Error(msg);+};++exports.message = function (e) {+  return e.message;+};++exports.stackImpl = function (just) {+  return function (nothing) {+    return function (e) {+      return e.stack ? just(e.stack) : nothing;+    };+  };+};++exports.throwException = function (e) {+  return function () {+    throw e;+  };+};++exports.catchException = function (c) {+  return function (t) {+    return function () {+      try {+        return t();+      } catch (e) {+        if (e instanceof Error || Object.prototype.toString.call(e) === "[object Error]") {+          return c(e)();+        } else {+          return c(new Error(e.toString()))();+        }+      }+    };+  };+};++},{}],63:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var $$try = function (action) {+    return $foreign.catchException(function ($0) {+        return Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(Data_Either.Left.create($0));+    })(Data_Functor.map(Control_Monad_Eff.functorEff)(Data_Either.Right.create)(action));+};+var $$throw = function ($1) {+    return $foreign.throwException($foreign.error($1));+};+var stack = $foreign.stackImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var showError = new Data_Show.Show($foreign.showErrorImpl);+module.exports = {+    stack: stack, +    "throw": $$throw, +    "try": $$try, +    showError: showError, +    catchException: $foreign.catchException, +    error: $foreign.error, +    message: $foreign.message, +    throwException: $foreign.throwException+};++},{"../Control.Applicative":40,"../Control.Monad.Eff":71,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Functor":157,"../Data.Maybe":204,"../Data.Show":241,"../Prelude":278,"./foreign":62}],64:[function(require,module,exports){+/* global exports */+"use strict";++exports.ready = function(func) {+    return function() {+        jQuery(document).ready(func);+    };+};++exports.select = function(selector) {+    return function() {+        return jQuery(selector);+    };+};++exports.find = function(selector) {+    return function(ob) {+        return function() {+            return ob.find(selector);+        };+    };+};++exports.parent = function(ob) {+    return function() {+        return ob.parent();+    };+};++exports.closest = function(selector) {+    return function(ob) {+        return function() {+            return ob.closest(selector);+        };+    };+};++exports.create = function(html) {+    return function() {+        return jQuery(html);+    };+};++exports.setAttr = function(attr) {+    return function(val) {+        return function(ob) {+            return function() {+                ob.attr(attr, val);+            };+        };+    };+};++exports.getAttrImpl = function(attr) {+    return function(ob) {+        return function() {+            return ob.attr(attr);+        };+    };+};++exports.attr = function(attrs) {+    return function(ob) {+        return function() {+            ob.attr(attrs);+        };+    };+};++exports.css = function(props) {+    return function(ob) {+        return function() {+            ob.css(props);+        };+    };+};++exports.hasClass = function(cls) {+    return function(ob) {+        return function() {+            return ob.hasClass(cls);+        };+    };+};++exports.toggleClass = function(cls) {+    return function(ob) {+        return function() {+            ob.toggleClass(cls);+        };+    };+};++exports.setClass = function(cls) {+    return function(flag) {+        return function(ob) {+            return function() {+                ob.toggleClass(cls, flag);+            };+        };+    };+};++exports.setProp = function(p) {+    return function(val) {+        return function(ob) {+            return function() {+                ob.prop(p, val);+            };+        };+    };+};++exports.getProp = function(p) {+    return function(ob) {+        return function() {+            return ob.prop(p);+        };+    };+};++exports.append = function(ob1) {+    return function(ob) {+        return function() {+            ob.append(ob1);+        };+    };+};++exports.appendText = function(s) {+    return function(ob) {+        return function() {+            ob.append(s);+        };+    };+};++exports.body = function() {+    return jQuery(document.body);+};++exports.remove = function(ob) {+    return function() {+        ob.remove();+    };+};++exports.clear = function(ob) {+    return function() {+        ob.empty();+    };+};++exports.before = function(ob) {+    return function(ob1) {+        return function() {+            ob1.before(ob);+        };+    };+};++exports.getText = function(ob) {+    return function() {+        return ob.text();+    };+};++exports.setText = function(text) {+    return function(ob) {+        return function() {+            ob.text(text);+        };+    };+};++exports.getHtml = function(ob) {+    return function() {+        return ob.html();+    };+};++exports.setHtml = function(html) {+    return function(ob) {+        return function() {+            ob.html(html);+        };+    };+};++exports.getValue = function(ob) {+    return function() {+        return ob.val();+    };+};++exports.setValue = function(val) {+    return function(ob) {+        return function() {+            ob.val(val);+        };+    };+};++exports.toggle = function(ob) {+    return function() {+        ob.toggle();+    };+};++exports.setVisible = function(flag) {+    return function(ob) {+        return function() {+            ob.toggle(flag);+        };+    };+};++exports.toArray = function(ob) {+    return function() {+        var els = ob.toArray();+        var copy = [];+        for (var i = 0; i < els.length; i++) {+            copy.push(jQuery(els[i]));+        }+        return copy;+    };+};++exports.on = function(evt) {+    return function(act) {+        return function(ob) {+            return function() {+                ob.on(evt, function(e) {+                    act(e)(jQuery(this))();+                });+            };+        };+    };+};++exports["on'"] = function(evt) {+    return function(sel) {+        return function(act) {+            return function(ob) {+                return function() {+                    ob.on(evt, sel, function(e) {+                        act(e)(jQuery(this))();+                    });+                };+            };+        };+    };+};+++exports.off = function(evt) {+    return function(ob) {+        return function() {+            return ob.off(evt);+        };+    };+};+++exports["off'"] = function(ob) {+    return function() {+        return ob.off();+    };+};++exports.preventDefault = function(e) {+    return function() {+        e.preventDefault();+    };+};++exports.stopPropagation = function(e) {+    return function() {+        e.stopPropagation();+    };+};++exports.stopImmediatePropagation = function(e) {+    return function() {+        e.stopImmediatePropagation();+    };+};++exports.getTarget = function(e) {+    return function() {+        return jQuery(e.target);+    };+};++exports.getCurrentTarget = function(e) {+    return function() {+        return jQuery(e.currentTarget);+    };+};++exports.getPageX = function(e) {+    return function() {+        return e.pageX;+    };+};++exports.getPageY = function(e) {+    return function() {+        return e.pageY;+    };+};++exports.getWhich = function(e) {+    return function() {+        return e.which;+    };+};++exports.getMetaKey = function(e) {+    return function() {+        return e.metaKey;+    };+};+++exports.clone = function(ob) {+    return function() {+        return ob.clone();+    };+};++exports.cloneWithDataAndEvents = function(ob) {+    return function() {+        return ob.clone(true);+    };+};++},{}],65:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var DOM = require("../DOM");+var Data_Foreign = require("../Data.Foreign");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Prelude = require("../Prelude");+var removeClass = function (cls) {+    return $foreign.setClass(cls)(false);+};+var hide = $foreign.setVisible(false);+var getAttr = function (str) {+    return function (jq) {+        var foreignToString = function (f) {+            var $0 = Data_Foreign.isUndefined(f);+            if ($0) {+                return Data_Maybe.Nothing.value;+            };+            return new Data_Maybe.Just(Data_Foreign.unsafeFromForeign(f));+        };+        return Data_Functor.map(Control_Monad_Eff.functorEff)(foreignToString)($foreign.getAttrImpl(str)(jq));+    };+};+var display = $foreign.setVisible(true);+var addClass = function (cls) {+    return $foreign.setClass(cls)(true);+};+module.exports = {+    addClass: addClass, +    display: display, +    getAttr: getAttr, +    hide: hide, +    removeClass: removeClass, +    append: $foreign.append, +    appendText: $foreign.appendText, +    attr: $foreign.attr, +    before: $foreign.before, +    body: $foreign.body, +    clear: $foreign.clear, +    clone: $foreign.clone, +    cloneWithDataAndEvents: $foreign.cloneWithDataAndEvents, +    closest: $foreign.closest, +    create: $foreign.create, +    css: $foreign.css, +    find: $foreign.find, +    getCurrentTarget: $foreign.getCurrentTarget, +    getHtml: $foreign.getHtml, +    getMetaKey: $foreign.getMetaKey, +    getPageX: $foreign.getPageX, +    getPageY: $foreign.getPageY, +    getProp: $foreign.getProp, +    getTarget: $foreign.getTarget, +    getText: $foreign.getText, +    getValue: $foreign.getValue, +    getWhich: $foreign.getWhich, +    hasClass: $foreign.hasClass, +    off: $foreign.off, +    "off'": $foreign["off'"], +    on: $foreign.on, +    "on'": $foreign["on'"], +    parent: $foreign.parent, +    preventDefault: $foreign.preventDefault, +    ready: $foreign.ready, +    remove: $foreign.remove, +    select: $foreign.select, +    setAttr: $foreign.setAttr, +    setClass: $foreign.setClass, +    setHtml: $foreign.setHtml, +    setProp: $foreign.setProp, +    setText: $foreign.setText, +    setValue: $foreign.setValue, +    setVisible: $foreign.setVisible, +    stopImmediatePropagation: $foreign.stopImmediatePropagation, +    stopPropagation: $foreign.stopPropagation, +    toArray: $foreign.toArray, +    toggle: $foreign.toggle, +    toggleClass: $foreign.toggleClass+};++},{"../Control.Monad.Eff":71,"../DOM":101,"../Data.Foreign":147,"../Data.Functor":157,"../Data.Maybe":204,"../Prelude":278,"./foreign":64}],66:[function(require,module,exports){+"use strict";++exports.newRef = function (val) {+  return function () {+    return { value: val };+  };+};++exports.readRef = function (ref) {+  return function () {+    return ref.value;+  };+};++exports["modifyRef'"] = function (ref) {+  return function (f) {+    return function () {+      var t = f(ref.value);+      ref.value = t.state;+      return t.value;+    };+  };+};++exports.writeRef = function (ref) {+  return function (val) {+    return function () {+      ref.value = val;+      return {};+    };+  };+};++},{}],67:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var modifyRef = function (ref) {+    return function (f) {+        return $foreign["modifyRef'"](ref)(function (s) {+            return {+                state: f(s), +                value: Data_Unit.unit+            };+        });+    };+};+module.exports = {+    modifyRef: modifyRef, +    "modifyRef'": $foreign["modifyRef'"], +    newRef: $foreign.newRef, +    readRef: $foreign.readRef, +    writeRef: $foreign.writeRef+};++},{"../Control.Monad.Eff":71,"../Data.Unit":259,"../Prelude":278,"./foreign":66}],68:[function(require,module,exports){+"use strict";++exports.unsafeCoerceEff = function (f) {+  return f;+};++},{}],69:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var unsafePerformEff = function ($0) {+    return Control_Monad_Eff.runPure($foreign.unsafeCoerceEff($0));+};+module.exports = {+    unsafePerformEff: unsafePerformEff, +    unsafeCoerceEff: $foreign.unsafeCoerceEff+};++},{"../Control.Monad.Eff":71,"../Control.Semigroupoid":93,"./foreign":68}],70:[function(require,module,exports){+"use strict";++exports.pureE = function (a) {+  return function () {+    return a;+  };+};++exports.bindE = function (a) {+  return function (f) {+    return function () {+      return f(a())();+    };+  };+};++exports.runPure = function (f) {+  return f();+};++exports.untilE = function (f) {+  return function () {+    while (!f());+    return {};+  };+};++exports.whileE = function (f) {+  return function (a) {+    return function () {+      while (f()) {+        a();+      }+      return {};+    };+  };+};++exports.forE = function (lo) {+  return function (hi) {+    return function (f) {+      return function () {+        for (var i = lo; i < hi; i++) {+          f(i)();+        }+      };+    };+  };+};++exports.foreachE = function (as) {+  return function (f) {+    return function () {+      for (var i = 0, l = as.length; i < l; i++) {+        f(as[i])();+      }+    };+  };+};++},{}],71:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Data_Functor = require("../Data.Functor");+var Data_Unit = require("../Data.Unit");+var monadEff = new Control_Monad.Monad(function () {+    return applicativeEff;+}, function () {+    return bindEff;+});+var bindEff = new Control_Bind.Bind(function () {+    return applyEff;+}, $foreign.bindE);+var applyEff = new Control_Apply.Apply(function () {+    return functorEff;+}, Control_Monad.ap(monadEff));+var applicativeEff = new Control_Applicative.Applicative(function () {+    return applyEff;+}, $foreign.pureE);+var functorEff = new Data_Functor.Functor(Control_Applicative.liftA1(applicativeEff));+module.exports = {+    functorEff: functorEff, +    applyEff: applyEff, +    applicativeEff: applicativeEff, +    bindEff: bindEff, +    monadEff: monadEff, +    forE: $foreign.forE, +    foreachE: $foreign.foreachE, +    runPure: $foreign.runPure, +    untilE: $foreign.untilE, +    whileE: $foreign.whileE+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Data.Functor":157,"../Data.Unit":259,"./foreign":70}],72:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var MonadThrow = function (Monad0, throwError) {+    this.Monad0 = Monad0;+    this.throwError = throwError;+};+var MonadError = function (MonadThrow0, catchError) {+    this.MonadThrow0 = MonadThrow0;+    this.catchError = catchError;+};+var throwError = function (dict) {+    return dict.throwError;+};+var monadThrowMaybe = new MonadThrow(function () {+    return Data_Maybe.monadMaybe;+}, Data_Function["const"](Data_Maybe.Nothing.value));+var monadThrowEither = new MonadThrow(function () {+    return Data_Either.monadEither;+}, Data_Either.Left.create);+var monadErrorMaybe = new MonadError(function () {+    return monadThrowMaybe;+}, function (v) {+    return function (v1) {+        if (v instanceof Data_Maybe.Nothing) {+            return v1(Data_Unit.unit);+        };+        if (v instanceof Data_Maybe.Just) {+            return new Data_Maybe.Just(v.value0);+        };+        throw new Error("Failed pattern match at Control.Monad.Error.Class line 77, column 3 - line 77, column 33: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var monadErrorEither = new MonadError(function () {+    return monadThrowEither;+}, function (v) {+    return function (v1) {+        if (v instanceof Data_Either.Left) {+            return v1(v.value0);+        };+        if (v instanceof Data_Either.Right) {+            return new Data_Either.Right(v.value0);+        };+        throw new Error("Failed pattern match at Control.Monad.Error.Class line 70, column 3 - line 70, column 30: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var catchError = function (dict) {+    return dict.catchError;+};+var catchJust = function (dictMonadError) {+    return function (p) {+        return function (act) {+            return function (handler) {+                var handle = function (e) {+                    var v = p(e);+                    if (v instanceof Data_Maybe.Nothing) {+                        return throwError(dictMonadError.MonadThrow0())(e);+                    };+                    if (v instanceof Data_Maybe.Just) {+                        return handler(v.value0);+                    };+                    throw new Error("Failed pattern match at Control.Monad.Error.Class line 54, column 5 - line 56, column 26: " + [ v.constructor.name ]);+                };+                return catchError(dictMonadError)(act)(handle);+            };+        };+    };+};+var $$try = function (dictMonadError) {+    return function (a) {+        return catchError(dictMonadError)(Data_Functor.map(((((dictMonadError.MonadThrow0()).Monad0()).Bind1()).Apply0()).Functor0())(Data_Either.Right.create)(a))(function ($21) {+            return Control_Applicative.pure(((dictMonadError.MonadThrow0()).Monad0()).Applicative0())(Data_Either.Left.create($21));+        });+    };+};+var withResource = function (dictMonadError) {+    return function (acquire) {+        return function (release) {+            return function (kleisli) {+                return Control_Bind.bind(((dictMonadError.MonadThrow0()).Monad0()).Bind1())(acquire)(function (v) {+                    return Control_Bind.bind(((dictMonadError.MonadThrow0()).Monad0()).Bind1())($$try(dictMonadError)(kleisli(v)))(function (v1) {+                        return Control_Bind.discard(Control_Bind.discardUnit)(((dictMonadError.MonadThrow0()).Monad0()).Bind1())(release(v))(function () {+                            return Data_Either.either(throwError(dictMonadError.MonadThrow0()))(Control_Applicative.pure(((dictMonadError.MonadThrow0()).Monad0()).Applicative0()))(v1);+                        });+                    });+                });+            };+        };+    };+};+module.exports = {+    MonadError: MonadError, +    MonadThrow: MonadThrow, +    catchError: catchError, +    catchJust: catchJust, +    throwError: throwError, +    "try": $$try, +    withResource: withResource, +    monadThrowEither: monadThrowEither, +    monadErrorEither: monadErrorEither, +    monadThrowMaybe: monadThrowMaybe, +    monadErrorMaybe: monadErrorMaybe+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Maybe":204,"../Data.Unit":259,"../Prelude":278}],73:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");+var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var ExceptT = function (x) {+    return x;+};+var withExceptT = function (dictFunctor) {+    return function (f) {+        return function (v) {+            var mapLeft = function (v1) {+                return function (v2) {+                    if (v2 instanceof Data_Either.Right) {+                        return new Data_Either.Right(v2.value0);+                    };+                    if (v2 instanceof Data_Either.Left) {+                        return new Data_Either.Left(v1(v2.value0));+                    };+                    throw new Error("Failed pattern match at Control.Monad.Except.Trans line 44, column 3 - line 44, column 32: " + [ v1.constructor.name, v2.constructor.name ]);+                };+            };+            return ExceptT(Data_Functor.map(dictFunctor)(mapLeft(f))(v));+        };+    };+};+var runExceptT = function (v) {+    return v;+};+var newtypeExceptT = new Data_Newtype.Newtype(function (n) {+    return n;+}, ExceptT);+var monadTransExceptT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {+    return function (m) {+        return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {+            return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Right(v));+        });+    };+});+var mapExceptT = function (f) {+    return function (v) {+        return f(v);+    };+};+var functorExceptT = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return mapExceptT(Data_Functor.map(dictFunctor)(Data_Functor.map(Data_Either.functorEither)(f)));+    });+};+var except = function (dictApplicative) {+    return function ($96) {+        return ExceptT(Control_Applicative.pure(dictApplicative)($96));+    };+};+var monadExceptT = function (dictMonad) {+    return new Control_Monad.Monad(function () {+        return applicativeExceptT(dictMonad);+    }, function () {+        return bindExceptT(dictMonad);+    });+};+var bindExceptT = function (dictMonad) {+    return new Control_Bind.Bind(function () {+        return applyExceptT(dictMonad);+    }, function (v) {+        return function (k) {+            return Control_Bind.bind(dictMonad.Bind1())(v)(Data_Either.either(function ($97) {+                return Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Left.create($97));+            })(function (a) {+                var v1 = k(a);+                return v1;+            }));+        };+    });+};+var applyExceptT = function (dictMonad) {+    return new Control_Apply.Apply(function () {+        return functorExceptT(((dictMonad.Bind1()).Apply0()).Functor0());+    }, Control_Monad.ap(monadExceptT(dictMonad)));+};+var applicativeExceptT = function (dictMonad) {+    return new Control_Applicative.Applicative(function () {+        return applyExceptT(dictMonad);+    }, function ($98) {+        return ExceptT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Right.create($98)));+    });+};+var monadAskExceptT = function (dictMonadAsk) {+    return new Control_Monad_Reader_Class.MonadAsk(function () {+        return monadExceptT(dictMonadAsk.Monad0());+    }, Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));+};+var monadReaderExceptT = function (dictMonadReader) {+    return new Control_Monad_Reader_Class.MonadReader(function () {+        return monadAskExceptT(dictMonadReader.MonadAsk0());+    }, function (f) {+        return mapExceptT(Control_Monad_Reader_Class.local(dictMonadReader)(f));+    });+};+var monadContExceptT = function (dictMonadCont) {+    return new Control_Monad_Cont_Class.MonadCont(function () {+        return monadExceptT(dictMonadCont.Monad0());+    }, function (f) {+        return ExceptT(Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {+            var v = f(function (a) {+                return ExceptT(c(new Data_Either.Right(a)));+            });+            return v;+        }));+    });+};+var monadEffExceptT = function (dictMonadEff) {+    return new Control_Monad_Eff_Class.MonadEff(function () {+        return monadExceptT(dictMonadEff.Monad0());+    }, function ($99) {+        return Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($99));+    });+};+var monadRecExceptT = function (dictMonadRec) {+    return new Control_Monad_Rec_Class.MonadRec(function () {+        return monadExceptT(dictMonadRec.Monad0());+    }, function (f) {+        return function ($100) {+            return ExceptT(Control_Monad_Rec_Class.tailRecM(dictMonadRec)(function (a) {+                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {+                    var v = f(a);+                    return v;+                })())(function (m$prime) {+                    return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {+                        if (m$prime instanceof Data_Either.Left) {+                            return new Control_Monad_Rec_Class.Done(new Data_Either.Left(m$prime.value0));+                        };+                        if (m$prime instanceof Data_Either.Right && m$prime.value0 instanceof Control_Monad_Rec_Class.Loop) {+                            return new Control_Monad_Rec_Class.Loop(m$prime.value0.value0);+                        };+                        if (m$prime instanceof Data_Either.Right && m$prime.value0 instanceof Control_Monad_Rec_Class.Done) {+                            return new Control_Monad_Rec_Class.Done(new Data_Either.Right(m$prime.value0.value0));+                        };+                        throw new Error("Failed pattern match at Control.Monad.Except.Trans line 76, column 14 - line 79, column 43: " + [ m$prime.constructor.name ]);+                    })());+                });+            })($100));+        };+    });+};+var monadStateExceptT = function (dictMonadState) {+    return new Control_Monad_State_Class.MonadState(function () {+        return monadExceptT(dictMonadState.Monad0());+    }, function (f) {+        return Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)(f));+    });+};+var monadTellExceptT = function (dictMonadTell) {+    return new Control_Monad_Writer_Class.MonadTell(function () {+        return monadExceptT(dictMonadTell.Monad0());+    }, function ($101) {+        return Control_Monad_Trans_Class.lift(monadTransExceptT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($101));+    });+};+var monadWriterExceptT = function (dictMonadWriter) {+    return new Control_Monad_Writer_Class.MonadWriter(function () {+        return monadTellExceptT(dictMonadWriter.MonadTell0());+    }, mapExceptT(function (m) {+        return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(Control_Monad_Writer_Class.listen(dictMonadWriter)(m))(function (v) {+            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(Data_Functor.map(Data_Either.functorEither)(function (r) {+                return new Data_Tuple.Tuple(r, v.value1);+            })(v.value0));+        });+    }), mapExceptT(function (m) {+        return Control_Monad_Writer_Class.pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m)(function (v) {+            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())((function () {+                if (v instanceof Data_Either.Left) {+                    return new Data_Tuple.Tuple(new Data_Either.Left(v.value0), Control_Category.id(Control_Category.categoryFn));+                };+                if (v instanceof Data_Either.Right) {+                    return new Data_Tuple.Tuple(new Data_Either.Right(v.value0.value0), v.value0.value1);+                };+                throw new Error("Failed pattern match at Control.Monad.Except.Trans line 138, column 10 - line 140, column 44: " + [ v.constructor.name ]);+            })());+        }));+    }));+};+var monadThrowExceptT = function (dictMonad) {+    return new Control_Monad_Error_Class.MonadThrow(function () {+        return monadExceptT(dictMonad);+    }, function ($102) {+        return ExceptT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Left.create($102)));+    });+};+var monadErrorExceptT = function (dictMonad) {+    return new Control_Monad_Error_Class.MonadError(function () {+        return monadThrowExceptT(dictMonad);+    }, function (v) {+        return function (k) {+            return Control_Bind.bind(dictMonad.Bind1())(v)(Data_Either.either(function (a) {+                var v1 = k(a);+                return v1;+            })(function ($103) {+                return Control_Applicative.pure(dictMonad.Applicative0())(Data_Either.Right.create($103));+            }));+        };+    });+};+var altExceptT = function (dictSemigroup) {+    return function (dictMonad) {+        return new Control_Alt.Alt(function () {+            return functorExceptT(((dictMonad.Bind1()).Apply0()).Functor0());+        }, function (v) {+            return function (v1) {+                return Control_Bind.bind(dictMonad.Bind1())(v)(function (v2) {+                    if (v2 instanceof Data_Either.Right) {+                        return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Right(v2.value0));+                    };+                    if (v2 instanceof Data_Either.Left) {+                        return Control_Bind.bind(dictMonad.Bind1())(v1)(function (v3) {+                            if (v3 instanceof Data_Either.Right) {+                                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Right(v3.value0));+                            };+                            if (v3 instanceof Data_Either.Left) {+                                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Either.Left(Data_Semigroup.append(dictSemigroup)(v2.value0)(v3.value0)));+                            };+                            throw new Error("Failed pattern match at Control.Monad.Except.Trans line 88, column 9 - line 90, column 49: " + [ v3.constructor.name ]);+                        });+                    };+                    throw new Error("Failed pattern match at Control.Monad.Except.Trans line 84, column 5 - line 90, column 49: " + [ v2.constructor.name ]);+                });+            };+        });+    };+};+var plusExceptT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_Plus.Plus(function () {+            return altExceptT(dictMonoid.Semigroup0())(dictMonad);+        }, Control_Monad_Error_Class.throwError(monadThrowExceptT(dictMonad))(Data_Monoid.mempty(dictMonoid)));+    };+};+var alternativeExceptT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_Alternative.Alternative(function () {+            return applicativeExceptT(dictMonad);+        }, function () {+            return plusExceptT(dictMonoid)(dictMonad);+        });+    };+};+var monadZeroExceptT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_MonadZero.MonadZero(function () {+            return alternativeExceptT(dictMonoid)(dictMonad);+        }, function () {+            return monadExceptT(dictMonad);+        });+    };+};+var monadPlusExceptT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_MonadPlus.MonadPlus(function () {+            return monadZeroExceptT(dictMonoid)(dictMonad);+        });+    };+};+module.exports = {+    ExceptT: ExceptT, +    except: except, +    mapExceptT: mapExceptT, +    runExceptT: runExceptT, +    withExceptT: withExceptT, +    newtypeExceptT: newtypeExceptT, +    functorExceptT: functorExceptT, +    applyExceptT: applyExceptT, +    applicativeExceptT: applicativeExceptT, +    bindExceptT: bindExceptT, +    monadExceptT: monadExceptT, +    monadRecExceptT: monadRecExceptT, +    altExceptT: altExceptT, +    plusExceptT: plusExceptT, +    alternativeExceptT: alternativeExceptT, +    monadPlusExceptT: monadPlusExceptT, +    monadZeroExceptT: monadZeroExceptT, +    monadTransExceptT: monadTransExceptT, +    monadEffExceptT: monadEffExceptT, +    monadContExceptT: monadContExceptT, +    monadThrowExceptT: monadThrowExceptT, +    monadErrorExceptT: monadErrorExceptT, +    monadAskExceptT: monadAskExceptT, +    monadReaderExceptT: monadReaderExceptT, +    monadStateExceptT: monadStateExceptT, +    monadTellExceptT: monadTellExceptT, +    monadWriterExceptT: monadWriterExceptT+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":87,"../Control.Monad.Cont.Class":57,"../Control.Monad.Eff.Class":59,"../Control.Monad.Error.Class":72,"../Control.Monad.Reader.Class":76,"../Control.Monad.Rec.Class":78,"../Control.Monad.State.Class":81,"../Control.Monad.Trans.Class":84,"../Control.Monad.Writer.Class":85,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Semigroup":237,"../Data.Tuple":255,"../Prelude":278}],74:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Identity = require("../Data.Identity");+var Data_Newtype = require("../Data.Newtype");+var Prelude = require("../Prelude");+var withExcept = Control_Monad_Except_Trans.withExceptT(Data_Identity.functorIdentity);+var runExcept = function ($0) {+    return Data_Newtype.unwrap(Data_Identity.newtypeIdentity)(Control_Monad_Except_Trans.runExceptT($0));+};+var mapExcept = function (f) {+    return Control_Monad_Except_Trans.mapExceptT(function ($1) {+        return Data_Identity.Identity(f(Data_Newtype.unwrap(Data_Identity.newtypeIdentity)($1)));+    });+};+module.exports = {+    mapExcept: mapExcept, +    runExcept: runExcept, +    withExcept: withExcept+};++},{"../Control.Monad.Error.Class":72,"../Control.Monad.Except.Trans":73,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Identity":163,"../Data.Newtype":215,"../Prelude":278}],75:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");+var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var MaybeT = function (x) {+    return x;+};+var runMaybeT = function (v) {+    return v;+};+var newtypeMaybeT = new Data_Newtype.Newtype(function (n) {+    return n;+}, MaybeT);+var monadTransMaybeT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {+    return function ($75) {+        return MaybeT(Control_Monad.liftM1(dictMonad)(Data_Maybe.Just.create)($75));+    };+});+var mapMaybeT = function (f) {+    return function (v) {+        return f(v);+    };+};+var functorMaybeT = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return Data_Functor.map(dictFunctor)(Data_Functor.map(Data_Maybe.functorMaybe)(f))(v);+        };+    });+};+var monadMaybeT = function (dictMonad) {+    return new Control_Monad.Monad(function () {+        return applicativeMaybeT(dictMonad);+    }, function () {+        return bindMaybeT(dictMonad);+    });+};+var bindMaybeT = function (dictMonad) {+    return new Control_Bind.Bind(function () {+        return applyMaybeT(dictMonad);+    }, function (v) {+        return function (f) {+            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v1) {+                if (v1 instanceof Data_Maybe.Nothing) {+                    return Control_Applicative.pure(dictMonad.Applicative0())(Data_Maybe.Nothing.value);+                };+                if (v1 instanceof Data_Maybe.Just) {+                    var v2 = f(v1.value0);+                    return v2;+                };+                throw new Error("Failed pattern match at Control.Monad.Maybe.Trans line 55, column 11 - line 57, column 42: " + [ v1.constructor.name ]);+            });+        };+    });+};+var applyMaybeT = function (dictMonad) {+    return new Control_Apply.Apply(function () {+        return functorMaybeT(((dictMonad.Bind1()).Apply0()).Functor0());+    }, Control_Monad.ap(monadMaybeT(dictMonad)));+};+var applicativeMaybeT = function (dictMonad) {+    return new Control_Applicative.Applicative(function () {+        return applyMaybeT(dictMonad);+    }, function ($76) {+        return MaybeT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Maybe.Just.create($76)));+    });+};+var monadAskMaybeT = function (dictMonadAsk) {+    return new Control_Monad_Reader_Class.MonadAsk(function () {+        return monadMaybeT(dictMonadAsk.Monad0());+    }, Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));+};+var monadReaderMaybeT = function (dictMonadReader) {+    return new Control_Monad_Reader_Class.MonadReader(function () {+        return monadAskMaybeT(dictMonadReader.MonadAsk0());+    }, function (f) {+        return mapMaybeT(Control_Monad_Reader_Class.local(dictMonadReader)(f));+    });+};+var monadContMaybeT = function (dictMonadCont) {+    return new Control_Monad_Cont_Class.MonadCont(function () {+        return monadMaybeT(dictMonadCont.Monad0());+    }, function (f) {+        return MaybeT(Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {+            var v = f(function (a) {+                return MaybeT(c(new Data_Maybe.Just(a)));+            });+            return v;+        }));+    });+};+var monadEffMaybe = function (dictMonadEff) {+    return new Control_Monad_Eff_Class.MonadEff(function () {+        return monadMaybeT(dictMonadEff.Monad0());+    }, function ($77) {+        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($77));+    });+};+var monadRecMaybeT = function (dictMonadRec) {+    return new Control_Monad_Rec_Class.MonadRec(function () {+        return monadMaybeT(dictMonadRec.Monad0());+    }, function (f) {+        return function ($78) {+            return MaybeT(Control_Monad_Rec_Class.tailRecM(dictMonadRec)(function (a) {+                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {+                    var v = f(a);+                    return v;+                })())(function (m$prime) {+                    return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {+                        if (m$prime instanceof Data_Maybe.Nothing) {+                            return new Control_Monad_Rec_Class.Done(Data_Maybe.Nothing.value);+                        };+                        if (m$prime instanceof Data_Maybe.Just && m$prime.value0 instanceof Control_Monad_Rec_Class.Loop) {+                            return new Control_Monad_Rec_Class.Loop(m$prime.value0.value0);+                        };+                        if (m$prime instanceof Data_Maybe.Just && m$prime.value0 instanceof Control_Monad_Rec_Class.Done) {+                            return new Control_Monad_Rec_Class.Done(new Data_Maybe.Just(m$prime.value0.value0));+                        };+                        throw new Error("Failed pattern match at Control.Monad.Maybe.Trans line 85, column 16 - line 88, column 43: " + [ m$prime.constructor.name ]);+                    })());+                });+            })($78));+        };+    });+};+var monadStateMaybeT = function (dictMonadState) {+    return new Control_Monad_State_Class.MonadState(function () {+        return monadMaybeT(dictMonadState.Monad0());+    }, function (f) {+        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)(f));+    });+};+var monadTellMaybeT = function (dictMonadTell) {+    return new Control_Monad_Writer_Class.MonadTell(function () {+        return monadMaybeT(dictMonadTell.Monad0());+    }, function ($79) {+        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($79));+    });+};+var monadWriterMaybeT = function (dictMonadWriter) {+    return new Control_Monad_Writer_Class.MonadWriter(function () {+        return monadTellMaybeT(dictMonadWriter.MonadTell0());+    }, mapMaybeT(function (m) {+        return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(Control_Monad_Writer_Class.listen(dictMonadWriter)(m))(function (v) {+            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(Data_Functor.map(Data_Maybe.functorMaybe)(function (r) {+                return new Data_Tuple.Tuple(r, v.value1);+            })(v.value0));+        });+    }), mapMaybeT(function (m) {+        return Control_Monad_Writer_Class.pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m)(function (v) {+            return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())((function () {+                if (v instanceof Data_Maybe.Nothing) {+                    return new Data_Tuple.Tuple(Data_Maybe.Nothing.value, Control_Category.id(Control_Category.categoryFn));+                };+                if (v instanceof Data_Maybe.Just) {+                    return new Data_Tuple.Tuple(new Data_Maybe.Just(v.value0.value0), v.value0.value1);+                };+                throw new Error("Failed pattern match at Control.Monad.Maybe.Trans line 122, column 10 - line 124, column 42: " + [ v.constructor.name ]);+            })());+        }));+    }));+};+var monadThrowMaybeT = function (dictMonadThrow) {+    return new Control_Monad_Error_Class.MonadThrow(function () {+        return monadMaybeT(dictMonadThrow.Monad0());+    }, function (e) {+        return Control_Monad_Trans_Class.lift(monadTransMaybeT)(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)(e));+    });+};+var monadErrorMaybeT = function (dictMonadError) {+    return new Control_Monad_Error_Class.MonadError(function () {+        return monadThrowMaybeT(dictMonadError.MonadThrow0());+    }, function (v) {+        return function (h) {+            return MaybeT(Control_Monad_Error_Class.catchError(dictMonadError)(v)(function (a) {+                var v1 = h(a);+                return v1;+            }));+        };+    });+};+var altMaybeT = function (dictMonad) {+    return new Control_Alt.Alt(function () {+        return functorMaybeT(((dictMonad.Bind1()).Apply0()).Functor0());+    }, function (v) {+        return function (v1) {+            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v2) {+                if (v2 instanceof Data_Maybe.Nothing) {+                    return v1;+                };+                return Control_Applicative.pure(dictMonad.Applicative0())(v2);+            });+        };+    });+};+var plusMaybeT = function (dictMonad) {+    return new Control_Plus.Plus(function () {+        return altMaybeT(dictMonad);+    }, Control_Applicative.pure(dictMonad.Applicative0())(Data_Maybe.Nothing.value));+};+var alternativeMaybeT = function (dictMonad) {+    return new Control_Alternative.Alternative(function () {+        return applicativeMaybeT(dictMonad);+    }, function () {+        return plusMaybeT(dictMonad);+    });+};+var monadZeroMaybeT = function (dictMonad) {+    return new Control_MonadZero.MonadZero(function () {+        return alternativeMaybeT(dictMonad);+    }, function () {+        return monadMaybeT(dictMonad);+    });+};+var monadPlusMaybeT = function (dictMonad) {+    return new Control_MonadPlus.MonadPlus(function () {+        return monadZeroMaybeT(dictMonad);+    });+};+module.exports = {+    MaybeT: MaybeT, +    mapMaybeT: mapMaybeT, +    runMaybeT: runMaybeT, +    newtypeMaybeT: newtypeMaybeT, +    functorMaybeT: functorMaybeT, +    applyMaybeT: applyMaybeT, +    applicativeMaybeT: applicativeMaybeT, +    bindMaybeT: bindMaybeT, +    monadMaybeT: monadMaybeT, +    monadTransMaybeT: monadTransMaybeT, +    altMaybeT: altMaybeT, +    plusMaybeT: plusMaybeT, +    alternativeMaybeT: alternativeMaybeT, +    monadPlusMaybeT: monadPlusMaybeT, +    monadZeroMaybeT: monadZeroMaybeT, +    monadRecMaybeT: monadRecMaybeT, +    monadEffMaybe: monadEffMaybe, +    monadContMaybeT: monadContMaybeT, +    monadThrowMaybeT: monadThrowMaybeT, +    monadErrorMaybeT: monadErrorMaybeT, +    monadAskMaybeT: monadAskMaybeT, +    monadReaderMaybeT: monadReaderMaybeT, +    monadStateMaybeT: monadStateMaybeT, +    monadTellMaybeT: monadTellMaybeT, +    monadWriterMaybeT: monadWriterMaybeT+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":87,"../Control.Monad.Cont.Class":57,"../Control.Monad.Eff.Class":59,"../Control.Monad.Error.Class":72,"../Control.Monad.Reader.Class":76,"../Control.Monad.Rec.Class":78,"../Control.Monad.State.Class":81,"../Control.Monad.Trans.Class":84,"../Control.Monad.Writer.Class":85,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.Tuple":255,"../Prelude":278}],76:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Monad = require("../Control.Monad");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Functor = require("../Data.Functor");+var Prelude = require("../Prelude");+var MonadAsk = function (Monad0, ask) {+    this.Monad0 = Monad0;+    this.ask = ask;+};+var MonadReader = function (MonadAsk0, local) {+    this.MonadAsk0 = MonadAsk0;+    this.local = local;+};+var monadAskFun = new MonadAsk(function () {+    return Control_Monad.monadFn;+}, Control_Category.id(Control_Category.categoryFn));+var monadReaderFun = new MonadReader(function () {+    return monadAskFun;+}, Control_Semigroupoid.composeFlipped(Control_Semigroupoid.semigroupoidFn));+var local = function (dict) {+    return dict.local;+};+var ask = function (dict) {+    return dict.ask;+};+var asks = function (dictMonadAsk) {+    return function (f) {+        return Data_Functor.map((((dictMonadAsk.Monad0()).Bind1()).Apply0()).Functor0())(f)(ask(dictMonadAsk));+    };+};+module.exports = {+    MonadAsk: MonadAsk, +    MonadReader: MonadReader, +    ask: ask, +    asks: asks, +    local: local, +    monadAskFun: monadAskFun, +    monadReaderFun: monadReaderFun+};++},{"../Control.Category":47,"../Control.Monad":87,"../Control.Semigroupoid":93,"../Data.Functor":157,"../Prelude":278}],77:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");+var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Distributive = require("../Data.Distributive");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Prelude = require("../Prelude");+var ReaderT = function (x) {+    return x;+};+var withReaderT = function (f) {+    return function (v) {+        return function ($66) {+            return v(f($66));+        };+    };+};+var runReaderT = function (v) {+    return v;+};+var newtypeReaderT = new Data_Newtype.Newtype(function (n) {+    return n;+}, ReaderT);+var monadTransReaderT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {+    return function ($67) {+        return ReaderT(Data_Function["const"]($67));+    };+});+var mapReaderT = function (f) {+    return function (v) {+        return function ($68) {+            return f(v($68));+        };+    };+};+var functorReaderT = function (dictFunctor) {+    return new Data_Functor.Functor(function ($69) {+        return mapReaderT(Data_Functor.map(dictFunctor)($69));+    });+};+var distributiveReaderT = function (dictDistributive) {+    return new Data_Distributive.Distributive(function () {+        return functorReaderT(dictDistributive.Functor0());+    }, function (dictFunctor) {+        return function (f) {+            return function ($70) {+                return Data_Distributive.distribute(distributiveReaderT(dictDistributive))(dictFunctor)(Data_Functor.map(dictFunctor)(f)($70));+            };+        };+    }, function (dictFunctor) {+        return function (a) {+            return function (e) {+                return Data_Distributive.collect(dictDistributive)(dictFunctor)(function (r) {+                    return r(e);+                })(a);+            };+        };+    });+};+var applyReaderT = function (dictApply) {+    return new Control_Apply.Apply(function () {+        return functorReaderT(dictApply.Functor0());+    }, function (v) {+        return function (v1) {+            return function (r) {+                return Control_Apply.apply(dictApply)(v(r))(v1(r));+            };+        };+    });+};+var bindReaderT = function (dictBind) {+    return new Control_Bind.Bind(function () {+        return applyReaderT(dictBind.Apply0());+    }, function (v) {+        return function (k) {+            return function (r) {+                return Control_Bind.bind(dictBind)(v(r))(function (a) {+                    var v1 = k(a);+                    return v1(r);+                });+            };+        };+    });+};+var semigroupReaderT = function (dictApply) {+    return function (dictSemigroup) {+        return new Data_Semigroup.Semigroup(Control_Apply.lift2(applyReaderT(dictApply))(Data_Semigroup.append(dictSemigroup)));+    };+};+var applicativeReaderT = function (dictApplicative) {+    return new Control_Applicative.Applicative(function () {+        return applyReaderT(dictApplicative.Apply0());+    }, function ($71) {+        return ReaderT(Data_Function["const"](Control_Applicative.pure(dictApplicative)($71)));+    });+};+var monadReaderT = function (dictMonad) {+    return new Control_Monad.Monad(function () {+        return applicativeReaderT(dictMonad.Applicative0());+    }, function () {+        return bindReaderT(dictMonad.Bind1());+    });+};+var monadAskReaderT = function (dictMonad) {+    return new Control_Monad_Reader_Class.MonadAsk(function () {+        return monadReaderT(dictMonad);+    }, Control_Applicative.pure(dictMonad.Applicative0()));+};+var monadReaderReaderT = function (dictMonad) {+    return new Control_Monad_Reader_Class.MonadReader(function () {+        return monadAskReaderT(dictMonad);+    }, withReaderT);+};+var monadContReaderT = function (dictMonadCont) {+    return new Control_Monad_Cont_Class.MonadCont(function () {+        return monadReaderT(dictMonadCont.Monad0());+    }, function (f) {+        return function (r) {+            return Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {+                var v = f(function ($72) {+                    return ReaderT(Data_Function["const"](c($72)));+                });+                return v(r);+            });+        };+    });+};+var monadEffReader = function (dictMonadEff) {+    return new Control_Monad_Eff_Class.MonadEff(function () {+        return monadReaderT(dictMonadEff.Monad0());+    }, function ($73) {+        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($73));+    });+};+var monadRecReaderT = function (dictMonadRec) {+    return new Control_Monad_Rec_Class.MonadRec(function () {+        return monadReaderT(dictMonadRec.Monad0());+    }, function (k) {+        return function (a) {+            var k$prime = function (r) {+                return function (a$prime) {+                    var v = k(a$prime);+                    return Control_Bind.bindFlipped((dictMonadRec.Monad0()).Bind1())(Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0()))(v(r));+                };+            };+            return function (r) {+                return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(k$prime(r))(a);+            };+        };+    });+};+var monadStateReaderT = function (dictMonadState) {+    return new Control_Monad_State_Class.MonadState(function () {+        return monadReaderT(dictMonadState.Monad0());+    }, function ($74) {+        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)($74));+    });+};+var monadTellReaderT = function (dictMonadTell) {+    return new Control_Monad_Writer_Class.MonadTell(function () {+        return monadReaderT(dictMonadTell.Monad0());+    }, function ($75) {+        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($75));+    });+};+var monadWriterReaderT = function (dictMonadWriter) {+    return new Control_Monad_Writer_Class.MonadWriter(function () {+        return monadTellReaderT(dictMonadWriter.MonadTell0());+    }, mapReaderT(Control_Monad_Writer_Class.listen(dictMonadWriter)), mapReaderT(Control_Monad_Writer_Class.pass(dictMonadWriter)));+};+var monadThrowReaderT = function (dictMonadThrow) {+    return new Control_Monad_Error_Class.MonadThrow(function () {+        return monadReaderT(dictMonadThrow.Monad0());+    }, function ($76) {+        return Control_Monad_Trans_Class.lift(monadTransReaderT)(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)($76));+    });+};+var monadErrorReaderT = function (dictMonadError) {+    return new Control_Monad_Error_Class.MonadError(function () {+        return monadThrowReaderT(dictMonadError.MonadThrow0());+    }, function (v) {+        return function (h) {+            return function (r) {+                return Control_Monad_Error_Class.catchError(dictMonadError)(v(r))(function (e) {+                    var v1 = h(e);+                    return v1(r);+                });+            };+        };+    });+};+var monoidReaderT = function (dictApplicative) {+    return function (dictMonoid) {+        return new Data_Monoid.Monoid(function () {+            return semigroupReaderT(dictApplicative.Apply0())(dictMonoid.Semigroup0());+        }, Control_Applicative.pure(applicativeReaderT(dictApplicative))(Data_Monoid.mempty(dictMonoid)));+    };+};+var altReaderT = function (dictAlt) {+    return new Control_Alt.Alt(function () {+        return functorReaderT(dictAlt.Functor0());+    }, function (v) {+        return function (v1) {+            return function (r) {+                return Control_Alt.alt(dictAlt)(v(r))(v1(r));+            };+        };+    });+};+var plusReaderT = function (dictPlus) {+    return new Control_Plus.Plus(function () {+        return altReaderT(dictPlus.Alt0());+    }, Data_Function["const"](Control_Plus.empty(dictPlus)));+};+var alternativeReaderT = function (dictAlternative) {+    return new Control_Alternative.Alternative(function () {+        return applicativeReaderT(dictAlternative.Applicative0());+    }, function () {+        return plusReaderT(dictAlternative.Plus1());+    });+};+var monadZeroReaderT = function (dictMonadZero) {+    return new Control_MonadZero.MonadZero(function () {+        return alternativeReaderT(dictMonadZero.Alternative1());+    }, function () {+        return monadReaderT(dictMonadZero.Monad0());+    });+};+var monadPlusReaderT = function (dictMonadPlus) {+    return new Control_MonadPlus.MonadPlus(function () {+        return monadZeroReaderT(dictMonadPlus.MonadZero0());+    });+};+module.exports = {+    ReaderT: ReaderT, +    mapReaderT: mapReaderT, +    runReaderT: runReaderT, +    withReaderT: withReaderT, +    newtypeReaderT: newtypeReaderT, +    functorReaderT: functorReaderT, +    applyReaderT: applyReaderT, +    applicativeReaderT: applicativeReaderT, +    altReaderT: altReaderT, +    plusReaderT: plusReaderT, +    alternativeReaderT: alternativeReaderT, +    bindReaderT: bindReaderT, +    monadReaderT: monadReaderT, +    monadZeroReaderT: monadZeroReaderT, +    semigroupReaderT: semigroupReaderT, +    monoidReaderT: monoidReaderT, +    monadPlusReaderT: monadPlusReaderT, +    monadTransReaderT: monadTransReaderT, +    monadEffReader: monadEffReader, +    monadContReaderT: monadContReaderT, +    monadThrowReaderT: monadThrowReaderT, +    monadErrorReaderT: monadErrorReaderT, +    monadAskReaderT: monadAskReaderT, +    monadReaderReaderT: monadReaderReaderT, +    monadStateReaderT: monadStateReaderT, +    monadTellReaderT: monadTellReaderT, +    monadWriterReaderT: monadWriterReaderT, +    distributiveReaderT: distributiveReaderT, +    monadRecReaderT: monadRecReaderT+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Control.Monad.Cont.Class":57,"../Control.Monad.Eff.Class":59,"../Control.Monad.Error.Class":72,"../Control.Monad.Reader.Class":76,"../Control.Monad.Rec.Class":78,"../Control.Monad.State.Class":81,"../Control.Monad.Trans.Class":84,"../Control.Monad.Writer.Class":85,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Distributive":136,"../Data.Function":151,"../Data.Functor":157,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Semigroup":237,"../Prelude":278}],78:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Unsafe = require("../Control.Monad.Eff.Unsafe");+var Control_Monad_ST = require("../Control.Monad.ST");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Either = require("../Data.Either");+var Data_Functor = require("../Data.Functor");+var Data_Identity = require("../Data.Identity");+var Data_Maybe = require("../Data.Maybe");+var Data_Unit = require("../Data.Unit");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var Loop = (function () {+    function Loop(value0) {+        this.value0 = value0;+    };+    Loop.create = function (value0) {+        return new Loop(value0);+    };+    return Loop;+})();+var Done = (function () {+    function Done(value0) {+        this.value0 = value0;+    };+    Done.create = function (value0) {+        return new Done(value0);+    };+    return Done;+})();+var MonadRec = function (Monad0, tailRecM) {+    this.Monad0 = Monad0;+    this.tailRecM = tailRecM;+};+var tailRecM = function (dict) {+    return dict.tailRecM;+};+var tailRecM2 = function (dictMonadRec) {+    return function (f) {+        return function (a) {+            return function (b) {+                return tailRecM(dictMonadRec)(function (o) {+                    return f(o.a)(o.b);+                })({+                    a: a, +                    b: b+                });+            };+        };+    };+};+var tailRecM3 = function (dictMonadRec) {+    return function (f) {+        return function (a) {+            return function (b) {+                return function (c) {+                    return tailRecM(dictMonadRec)(function (o) {+                        return f(o.a)(o.b)(o.c);+                    })({+                        a: a, +                        b: b, +                        c: c+                    });+                };+            };+        };+    };+};+var tailRecEff = function (f) {+    return function (a) {+        var fromDone = function (v) {+            var __unused = function (dictPartial1) {+                return function ($dollar16) {+                    return $dollar16;+                };+            };+            return __unused()((function () {+                if (v instanceof Done) {+                    return v.value0;+                };+                throw new Error("Failed pattern match at Control.Monad.Rec.Class line 141, column 28 - line 141, column 42: " + [ v.constructor.name ]);+            })());+        };+        var f$prime = function ($52) {+            return Control_Monad_Eff_Unsafe.unsafeCoerceEff(f($52));+        };+        return function __do() {+            var v = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_ST.newSTRef)(f$prime(a))();+            (function () {+                while (!(function __do() {+                    var v1 = v.value;+                    if (v1 instanceof Loop) {+                        var v2 = f$prime(v1.value0)();+                        var v3 = v.value = v2;+                        return false;+                    };+                    if (v1 instanceof Done) {+                        return true;+                    };+                    throw new Error("Failed pattern match at Control.Monad.Rec.Class line 130, column 5 - line 135, column 26: " + [ v1.constructor.name ]);+                })()) {++                };+                return {};+            })();+            return Data_Functor.map(Control_Monad_Eff.functorEff)(fromDone)(Control_Monad_ST.readSTRef(v))();+        };+    };+};+var tailRec = function (f) {+    var go = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Loop) {+                __copy_v = f(v.value0);+                return;+            };+            if (v instanceof Done) {+                __tco_done = true;+                return v.value0;+            };+            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 94, column 13 - line 97, column 18: " + [ v.constructor.name ]);+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return function ($53) {+        return go(f($53));+    };+};+var monadRecMaybe = new MonadRec(function () {+    return Data_Maybe.monadMaybe;+}, function (f) {+    return function (a0) {+        var g = function (v) {+            if (v instanceof Data_Maybe.Nothing) {+                return new Done(Data_Maybe.Nothing.value);+            };+            if (v instanceof Data_Maybe.Just && v.value0 instanceof Loop) {+                return new Loop(f(v.value0.value0));+            };+            if (v instanceof Data_Maybe.Just && v.value0 instanceof Done) {+                return new Done(new Data_Maybe.Just(v.value0.value0));+            };+            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 120, column 7 - line 120, column 31: " + [ v.constructor.name ]);+        };+        return tailRec(g)(f(a0));+    };+});+var monadRecIdentity = new MonadRec(function () {+    return Data_Identity.monadIdentity;+}, function (f) {+    var runIdentity = function (v) {+        return v;+    };+    return function ($54) {+        return Data_Identity.Identity(tailRec(function ($55) {+            return runIdentity(f($55));+        })($54));+    };+});+var monadRecFunction = new MonadRec(function () {+    return Control_Monad.monadFn;+}, function (f) {+    return function (a0) {+        return function (e) {+            return tailRec(function (a) {+                return f(a)(e);+            })(a0);+        };+    };+});+var monadRecEither = new MonadRec(function () {+    return Data_Either.monadEither;+}, function (f) {+    return function (a0) {+        var g = function (v) {+            if (v instanceof Data_Either.Left) {+                return new Done(new Data_Either.Left(v.value0));+            };+            if (v instanceof Data_Either.Right && v.value0 instanceof Loop) {+                return new Loop(f(v.value0.value0));+            };+            if (v instanceof Data_Either.Right && v.value0 instanceof Done) {+                return new Done(new Data_Either.Right(v.value0.value0));+            };+            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 112, column 7 - line 112, column 33: " + [ v.constructor.name ]);+        };+        return tailRec(g)(f(a0));+    };+});+var monadRecEff = new MonadRec(function () {+    return Control_Monad_Eff.monadEff;+}, tailRecEff);+var functorStep = new Data_Functor.Functor(function (f) {+    return function (v) {+        if (v instanceof Loop) {+            return new Loop(v.value0);+        };+        if (v instanceof Done) {+            return new Done(f(v.value0));+        };+        throw new Error("Failed pattern match at Control.Monad.Rec.Class line 29, column 3 - line 29, column 26: " + [ f.constructor.name, v.constructor.name ]);+    };+});+var forever = function (dictMonadRec) {+    return function (ma) {+        return tailRecM(dictMonadRec)(function (u) {+            return Data_Functor.voidRight((((dictMonadRec.Monad0()).Bind1()).Apply0()).Functor0())(new Loop(u))(ma);+        })(Data_Unit.unit);+    };+};+var bifunctorStep = new Data_Bifunctor.Bifunctor(function (v) {+    return function (v1) {+        return function (v2) {+            if (v2 instanceof Loop) {+                return new Loop(v(v2.value0));+            };+            if (v2 instanceof Done) {+                return new Done(v1(v2.value0));+            };+            throw new Error("Failed pattern match at Control.Monad.Rec.Class line 33, column 3 - line 33, column 34: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+        };+    };+});+module.exports = {+    Loop: Loop, +    Done: Done, +    MonadRec: MonadRec, +    forever: forever, +    tailRec: tailRec, +    tailRecM: tailRecM, +    tailRecM2: tailRecM2, +    tailRecM3: tailRecM3, +    functorStep: functorStep, +    bifunctorStep: bifunctorStep, +    monadRecIdentity: monadRecIdentity, +    monadRecEff: monadRecEff, +    monadRecFunction: monadRecFunction, +    monadRecEither: monadRecEither, +    monadRecMaybe: monadRecMaybe+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad":87,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Unsafe":69,"../Control.Monad.ST":80,"../Control.Semigroupoid":93,"../Data.Bifunctor":128,"../Data.Either":138,"../Data.Functor":157,"../Data.Identity":163,"../Data.Maybe":204,"../Data.Unit":259,"../Partial.Unsafe":275,"../Prelude":278}],79:[function(require,module,exports){+"use strict";++exports.newSTRef = function (val) {+  return function () {+    return { value: val };+  };+};++exports.readSTRef = function (ref) {+  return function () {+    return ref.value;+  };+};++exports.modifySTRef = function (ref) {+  return function (f) {+    return function () {+      return ref.value = f(ref.value); // eslint-disable-line no-return-assign+    };+  };+};++exports.writeSTRef = function (ref) {+  return function (a) {+    return function () {+      return ref.value = a; // eslint-disable-line no-return-assign+    };+  };+};++exports.runST = function (f) {+  return f;+};++},{}],80:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var pureST = function (st) {+    return Control_Monad_Eff.runPure($foreign.runST(st));+};+module.exports = {+    pureST: pureST, +    modifySTRef: $foreign.modifySTRef, +    newSTRef: $foreign.newSTRef, +    readSTRef: $foreign.readSTRef, +    runST: $foreign.runST, +    writeSTRef: $foreign.writeSTRef+};++},{"../Control.Monad.Eff":71,"./foreign":79}],81:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var MonadState = function (Monad0, state) {+    this.Monad0 = Monad0;+    this.state = state;+};+var state = function (dict) {+    return dict.state;+};+var put = function (dictMonadState) {+    return function (s) {+        return state(dictMonadState)(function (v) {+            return new Data_Tuple.Tuple(Data_Unit.unit, s);+        });+    };+};+var modify = function (dictMonadState) {+    return function (f) {+        return state(dictMonadState)(function (s) {+            return new Data_Tuple.Tuple(Data_Unit.unit, f(s));+        });+    };+};+var gets = function (dictMonadState) {+    return function (f) {+        return state(dictMonadState)(function (s) {+            return new Data_Tuple.Tuple(f(s), s);+        });+    };+};+var get = function (dictMonadState) {+    return state(dictMonadState)(function (s) {+        return new Data_Tuple.Tuple(s, s);+    });+};+module.exports = {+    MonadState: MonadState, +    get: get, +    gets: gets, +    modify: modify, +    put: put, +    state: state+};++},{"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278}],82:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");+var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Newtype = require("../Data.Newtype");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var StateT = function (x) {+    return x;+};+var withStateT = function (f) {+    return function (v) {+        return function ($107) {+            return v(f($107));+        };+    };+};+var runStateT = function (v) {+    return v;+};+var newtypeStateT = new Data_Newtype.Newtype(function (n) {+    return n;+}, StateT);+var monadTransStateT = new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {+    return function (m) {+        return function (s) {+            return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {+                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(v, s));+            });+        };+    };+});+var mapStateT = function (f) {+    return function (v) {+        return function ($108) {+            return f(v($108));+        };+    };+};+var lazyStateT = new Control_Lazy.Lazy(function (f) {+    return function (s) {+        var v = f(Data_Unit.unit);+        return v(s);+    };+});+var functorStateT = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return function (s) {+                return Data_Functor.map(dictFunctor)(function (v1) {+                    return new Data_Tuple.Tuple(f(v1.value0), v1.value1);+                })(v(s));+            };+        };+    });+};+var execStateT = function (dictFunctor) {+    return function (v) {+        return function (s) {+            return Data_Functor.map(dictFunctor)(Data_Tuple.snd)(v(s));+        };+    };+};+var evalStateT = function (dictFunctor) {+    return function (v) {+        return function (s) {+            return Data_Functor.map(dictFunctor)(Data_Tuple.fst)(v(s));+        };+    };+};+var monadStateT = function (dictMonad) {+    return new Control_Monad.Monad(function () {+        return applicativeStateT(dictMonad);+    }, function () {+        return bindStateT(dictMonad);+    });+};+var bindStateT = function (dictMonad) {+    return new Control_Bind.Bind(function () {+        return applyStateT(dictMonad);+    }, function (v) {+        return function (f) {+            return function (s) {+                return Control_Bind.bind(dictMonad.Bind1())(v(s))(function (v1) {+                    var v3 = f(v1.value0);+                    return v3(v1.value1);+                });+            };+        };+    });+};+var applyStateT = function (dictMonad) {+    return new Control_Apply.Apply(function () {+        return functorStateT(((dictMonad.Bind1()).Apply0()).Functor0());+    }, Control_Monad.ap(monadStateT(dictMonad)));+};+var applicativeStateT = function (dictMonad) {+    return new Control_Applicative.Applicative(function () {+        return applyStateT(dictMonad);+    }, function (a) {+        return function (s) {+            return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(a, s));+        };+    });+};+var monadAskStateT = function (dictMonadAsk) {+    return new Control_Monad_Reader_Class.MonadAsk(function () {+        return monadStateT(dictMonadAsk.Monad0());+    }, Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));+};+var monadReaderStateT = function (dictMonadReader) {+    return new Control_Monad_Reader_Class.MonadReader(function () {+        return monadAskStateT(dictMonadReader.MonadAsk0());+    }, function ($109) {+        return mapStateT(Control_Monad_Reader_Class.local(dictMonadReader)($109));+    });+};+var monadContStateT = function (dictMonadCont) {+    return new Control_Monad_Cont_Class.MonadCont(function () {+        return monadStateT(dictMonadCont.Monad0());+    }, function (f) {+        return function (s) {+            return Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {+                var v = f(function (a) {+                    return function (s$prime) {+                        return c(new Data_Tuple.Tuple(a, s$prime));+                    };+                });+                return v(s);+            });+        };+    });+};+var monadEffState = function (dictMonadEff) {+    return new Control_Monad_Eff_Class.MonadEff(function () {+        return monadStateT(dictMonadEff.Monad0());+    }, function ($110) {+        return Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($110));+    });+};+var monadRecStateT = function (dictMonadRec) {+    return new Control_Monad_Rec_Class.MonadRec(function () {+        return monadStateT(dictMonadRec.Monad0());+    }, function (f) {+        return function (a) {+            var f$prime = function (v) {+                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {+                    var v1 = f(v.value0);+                    return v1;+                })()(v.value1))(function (v1) {+                    return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {+                        if (v1.value0 instanceof Control_Monad_Rec_Class.Loop) {+                            return new Control_Monad_Rec_Class.Loop(new Data_Tuple.Tuple(v1.value0.value0, v1.value1));+                        };+                        if (v1.value0 instanceof Control_Monad_Rec_Class.Done) {+                            return new Control_Monad_Rec_Class.Done(new Data_Tuple.Tuple(v1.value0.value0, v1.value1));+                        };+                        throw new Error("Failed pattern match at Control.Monad.State.Trans line 88, column 16 - line 90, column 40: " + [ v1.value0.constructor.name ]);+                    })());+                });+            };+            return function (s) {+                return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(f$prime)(new Data_Tuple.Tuple(a, s));+            };+        };+    });+};+var monadStateStateT = function (dictMonad) {+    return new Control_Monad_State_Class.MonadState(function () {+        return monadStateT(dictMonad);+    }, function (f) {+        return StateT(function ($111) {+            return Control_Applicative.pure(dictMonad.Applicative0())(f($111));+        });+    });+};+var monadTellStateT = function (dictMonadTell) {+    return new Control_Monad_Writer_Class.MonadTell(function () {+        return monadStateT(dictMonadTell.Monad0());+    }, function ($112) {+        return Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadTell.Monad0())(Control_Monad_Writer_Class.tell(dictMonadTell)($112));+    });+};+var monadWriterStateT = function (dictMonadWriter) {+    return new Control_Monad_Writer_Class.MonadWriter(function () {+        return monadTellStateT(dictMonadWriter.MonadTell0());+    }, function (m) {+        return function (s) {+            return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(Control_Monad_Writer_Class.listen(dictMonadWriter)(m(s)))(function (v) {+                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value0, v.value1), v.value0.value1));+            });+        };+    }, function (m) {+        return function (s) {+            return Control_Monad_Writer_Class.pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m(s))(function (v) {+                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value0, v.value1), v.value0.value1));+            }));+        };+    });+};+var monadThrowStateT = function (dictMonadThrow) {+    return new Control_Monad_Error_Class.MonadThrow(function () {+        return monadStateT(dictMonadThrow.Monad0());+    }, function (e) {+        return Control_Monad_Trans_Class.lift(monadTransStateT)(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)(e));+    });+};+var monadErrorStateT = function (dictMonadError) {+    return new Control_Monad_Error_Class.MonadError(function () {+        return monadThrowStateT(dictMonadError.MonadThrow0());+    }, function (v) {+        return function (h) {+            return function (s) {+                return Control_Monad_Error_Class.catchError(dictMonadError)(v(s))(function (e) {+                    var v1 = h(e);+                    return v1(s);+                });+            };+        };+    });+};+var altStateT = function (dictMonad) {+    return function (dictAlt) {+        return new Control_Alt.Alt(function () {+            return functorStateT(dictAlt.Functor0());+        }, function (v) {+            return function (v1) {+                return function (s) {+                    return Control_Alt.alt(dictAlt)(v(s))(v1(s));+                };+            };+        });+    };+};+var plusStateT = function (dictMonad) {+    return function (dictPlus) {+        return new Control_Plus.Plus(function () {+            return altStateT(dictMonad)(dictPlus.Alt0());+        }, function (v) {+            return Control_Plus.empty(dictPlus);+        });+    };+};+var alternativeStateT = function (dictMonad) {+    return function (dictAlternative) {+        return new Control_Alternative.Alternative(function () {+            return applicativeStateT(dictMonad);+        }, function () {+            return plusStateT(dictMonad)(dictAlternative.Plus1());+        });+    };+};+var monadZeroStateT = function (dictMonadZero) {+    return new Control_MonadZero.MonadZero(function () {+        return alternativeStateT(dictMonadZero.Monad0())(dictMonadZero.Alternative1());+    }, function () {+        return monadStateT(dictMonadZero.Monad0());+    });+};+var monadPlusStateT = function (dictMonadPlus) {+    return new Control_MonadPlus.MonadPlus(function () {+        return monadZeroStateT(dictMonadPlus.MonadZero0());+    });+};+module.exports = {+    StateT: StateT, +    evalStateT: evalStateT, +    execStateT: execStateT, +    mapStateT: mapStateT, +    runStateT: runStateT, +    withStateT: withStateT, +    newtypeStateT: newtypeStateT, +    functorStateT: functorStateT, +    applyStateT: applyStateT, +    applicativeStateT: applicativeStateT, +    altStateT: altStateT, +    plusStateT: plusStateT, +    alternativeStateT: alternativeStateT, +    bindStateT: bindStateT, +    monadStateT: monadStateT, +    monadRecStateT: monadRecStateT, +    monadZeroStateT: monadZeroStateT, +    monadPlusStateT: monadPlusStateT, +    monadTransStateT: monadTransStateT, +    lazyStateT: lazyStateT, +    monadEffState: monadEffState, +    monadContStateT: monadContStateT, +    monadThrowStateT: monadThrowStateT, +    monadErrorStateT: monadErrorStateT, +    monadAskStateT: monadAskStateT, +    monadReaderStateT: monadReaderStateT, +    monadStateStateT: monadStateStateT, +    monadTellStateT: monadTellStateT, +    monadWriterStateT: monadWriterStateT+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Lazy":51,"../Control.Monad":87,"../Control.Monad.Cont.Class":57,"../Control.Monad.Eff.Class":59,"../Control.Monad.Error.Class":72,"../Control.Monad.Reader.Class":76,"../Control.Monad.Rec.Class":78,"../Control.Monad.State.Class":81,"../Control.Monad.Trans.Class":84,"../Control.Monad.Writer.Class":85,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Data.Newtype":215,"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278}],83:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_State_Trans = require("../Control.Monad.State.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Identity = require("../Data.Identity");+var Data_Newtype = require("../Data.Newtype");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var withState = Control_Monad_State_Trans.withStateT;+var runState = function (v) {+    return function ($16) {+        return Data_Newtype.unwrap(Data_Identity.newtypeIdentity)(v($16));+    };+};+var mapState = function (f) {+    return Control_Monad_State_Trans.mapStateT(function ($17) {+        return Data_Identity.Identity(f(Data_Newtype.unwrap(Data_Identity.newtypeIdentity)($17)));+    });+};+var execState = function (v) {+    return function (s) {+        var v1 = v(s);+        return v1.value1;+    };+};+var evalState = function (v) {+    return function (s) {+        var v1 = v(s);+        return v1.value0;+    };+};+module.exports = {+    evalState: evalState, +    execState: execState, +    mapState: mapState, +    runState: runState, +    withState: withState+};++},{"../Control.Monad.State.Class":81,"../Control.Monad.State.Trans":82,"../Control.Semigroupoid":93,"../Data.Identity":163,"../Data.Newtype":215,"../Data.Tuple":255,"../Prelude":278}],84:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Prelude = require("../Prelude");+var MonadTrans = function (lift) {+    this.lift = lift;+};+var lift = function (dict) {+    return dict.lift;+};+module.exports = {+    MonadTrans: MonadTrans, +    lift: lift+};++},{"../Prelude":278}],85:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Data_Function = require("../Data.Function");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var MonadTell = function (Monad0, tell) {+    this.Monad0 = Monad0;+    this.tell = tell;+};+var MonadWriter = function (MonadTell0, listen, pass) {+    this.MonadTell0 = MonadTell0;+    this.listen = listen;+    this.pass = pass;+};+var tell = function (dict) {+    return dict.tell;+};+var pass = function (dict) {+    return dict.pass;+};+var listen = function (dict) {+    return dict.listen;+};+var listens = function (dictMonadWriter) {+    return function (f) {+        return function (m) {+            return Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(listen(dictMonadWriter)(m))(function (v) {+                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(v.value0, f(v.value1)));+            });+        };+    };+};+var censor = function (dictMonadWriter) {+    return function (f) {+        return function (m) {+            return pass(dictMonadWriter)(Control_Bind.bind(((dictMonadWriter.MonadTell0()).Monad0()).Bind1())(m)(function (v) {+                return Control_Applicative.pure(((dictMonadWriter.MonadTell0()).Monad0()).Applicative0())(new Data_Tuple.Tuple(v, f));+            }));+        };+    };+};+module.exports = {+    MonadTell: MonadTell, +    MonadWriter: MonadWriter, +    censor: censor, +    listen: listen, +    listens: listens, +    pass: pass, +    tell: tell+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Data.Function":151,"../Data.Tuple":255,"../Prelude":278}],86:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_Monad_Cont_Class = require("../Control.Monad.Cont.Class");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Reader_Class = require("../Control.Monad.Reader.Class");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_Trans_Class = require("../Control.Monad.Trans.Class");+var Control_Monad_Writer_Class = require("../Control.Monad.Writer.Class");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var WriterT = function (x) {+    return x;+};+var runWriterT = function (v) {+    return v;+};+var newtypeWriterT = new Data_Newtype.Newtype(function (n) {+    return n;+}, WriterT);+var monadTransWriterT = function (dictMonoid) {+    return new Control_Monad_Trans_Class.MonadTrans(function (dictMonad) {+        return function (m) {+            return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {+                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(v, Data_Monoid.mempty(dictMonoid)));+            });+        };+    });+};+var mapWriterT = function (f) {+    return function (v) {+        return f(v);+    };+};+var functorWriterT = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return mapWriterT(Data_Functor.map(dictFunctor)(function (v) {+            return new Data_Tuple.Tuple(f(v.value0), v.value1);+        }));+    });+};+var execWriterT = function (dictFunctor) {+    return function (v) {+        return Data_Functor.map(dictFunctor)(Data_Tuple.snd)(v);+    };+};+var applyWriterT = function (dictSemigroup) {+    return function (dictApply) {+        return new Control_Apply.Apply(function () {+            return functorWriterT(dictApply.Functor0());+        }, function (v) {+            return function (v1) {+                var k = function (v3) {+                    return function (v4) {+                        return new Data_Tuple.Tuple(v3.value0(v4.value0), Data_Semigroup.append(dictSemigroup)(v3.value1)(v4.value1));+                    };+                };+                return Control_Apply.apply(dictApply)(Data_Functor.map(dictApply.Functor0())(k)(v))(v1);+            };+        });+    };+};+var bindWriterT = function (dictSemigroup) {+    return function (dictBind) {+        return new Control_Bind.Bind(function () {+            return applyWriterT(dictSemigroup)(dictBind.Apply0());+        }, function (v) {+            return function (k) {+                return WriterT(Control_Bind.bind(dictBind)(v)(function (v1) {+                    var v2 = k(v1.value0);+                    return Data_Functor.map((dictBind.Apply0()).Functor0())(function (v3) {+                        return new Data_Tuple.Tuple(v3.value0, Data_Semigroup.append(dictSemigroup)(v1.value1)(v3.value1));+                    })(v2);+                }));+            };+        });+    };+};+var applicativeWriterT = function (dictMonoid) {+    return function (dictApplicative) {+        return new Control_Applicative.Applicative(function () {+            return applyWriterT(dictMonoid.Semigroup0())(dictApplicative.Apply0());+        }, function (a) {+            return WriterT(Control_Applicative.pure(dictApplicative)(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid))));+        });+    };+};+var monadWriterT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_Monad.Monad(function () {+            return applicativeWriterT(dictMonoid)(dictMonad.Applicative0());+        }, function () {+            return bindWriterT(dictMonoid.Semigroup0())(dictMonad.Bind1());+        });+    };+};+var monadAskWriterT = function (dictMonoid) {+    return function (dictMonadAsk) {+        return new Control_Monad_Reader_Class.MonadAsk(function () {+            return monadWriterT(dictMonoid)(dictMonadAsk.Monad0());+        }, Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadAsk.Monad0())(Control_Monad_Reader_Class.ask(dictMonadAsk)));+    };+};+var monadReaderWriterT = function (dictMonoid) {+    return function (dictMonadReader) {+        return new Control_Monad_Reader_Class.MonadReader(function () {+            return monadAskWriterT(dictMonoid)(dictMonadReader.MonadAsk0());+        }, function (f) {+            return mapWriterT(Control_Monad_Reader_Class.local(dictMonadReader)(f));+        });+    };+};+var monadContWriterT = function (dictMonoid) {+    return function (dictMonadCont) {+        return new Control_Monad_Cont_Class.MonadCont(function () {+            return monadWriterT(dictMonoid)(dictMonadCont.Monad0());+        }, function (f) {+            return WriterT(Control_Monad_Cont_Class.callCC(dictMonadCont)(function (c) {+                var v = f(function (a) {+                    return WriterT(c(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid))));+                });+                return v;+            }));+        });+    };+};+var monadEffWriter = function (dictMonoid) {+    return function (dictMonadEff) {+        return new Control_Monad_Eff_Class.MonadEff(function () {+            return monadWriterT(dictMonoid)(dictMonadEff.Monad0());+        }, function ($123) {+            return Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadEff.Monad0())(Control_Monad_Eff_Class.liftEff(dictMonadEff)($123));+        });+    };+};+var monadRecWriterT = function (dictMonoid) {+    return function (dictMonadRec) {+        return new Control_Monad_Rec_Class.MonadRec(function () {+            return monadWriterT(dictMonoid)(dictMonadRec.Monad0());+        }, function (f) {+            return function (a) {+                var f$prime = function (v) {+                    return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())((function () {+                        var v1 = f(v.value0);+                        return v1;+                    })())(function (v1) {+                        return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())((function () {+                            if (v1.value0 instanceof Control_Monad_Rec_Class.Loop) {+                                return new Control_Monad_Rec_Class.Loop(new Data_Tuple.Tuple(v1.value0.value0, Data_Semigroup.append(dictMonoid.Semigroup0())(v.value1)(v1.value1)));+                            };+                            if (v1.value0 instanceof Control_Monad_Rec_Class.Done) {+                                return new Control_Monad_Rec_Class.Done(new Data_Tuple.Tuple(v1.value0.value0, Data_Semigroup.append(dictMonoid.Semigroup0())(v.value1)(v1.value1)));+                            };+                            throw new Error("Failed pattern match at Control.Monad.Writer.Trans line 85, column 16 - line 87, column 47: " + [ v1.value0.constructor.name ]);+                        })());+                    });+                };+                return WriterT(Control_Monad_Rec_Class.tailRecM(dictMonadRec)(f$prime)(new Data_Tuple.Tuple(a, Data_Monoid.mempty(dictMonoid))));+            };+        });+    };+};+var monadStateWriterT = function (dictMonoid) {+    return function (dictMonadState) {+        return new Control_Monad_State_Class.MonadState(function () {+            return monadWriterT(dictMonoid)(dictMonadState.Monad0());+        }, function (f) {+            return Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadState.Monad0())(Control_Monad_State_Class.state(dictMonadState)(f));+        });+    };+};+var monadTellWriterT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_Monad_Writer_Class.MonadTell(function () {+            return monadWriterT(dictMonoid)(dictMonad);+        }, function ($124) {+            return WriterT(Control_Applicative.pure(dictMonad.Applicative0())(Data_Tuple.Tuple.create(Data_Unit.unit)($124)));+        });+    };+};+var monadWriterWriterT = function (dictMonoid) {+    return function (dictMonad) {+        return new Control_Monad_Writer_Class.MonadWriter(function () {+            return monadTellWriterT(dictMonoid)(dictMonad);+        }, function (v) {+            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v1) {+                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v1.value0, v1.value1), v1.value1));+            });+        }, function (v) {+            return Control_Bind.bind(dictMonad.Bind1())(v)(function (v1) {+                return Control_Applicative.pure(dictMonad.Applicative0())(new Data_Tuple.Tuple(v1.value0.value0, v1.value0.value1(v1.value1)));+            });+        });+    };+};+var monadThrowWriterT = function (dictMonoid) {+    return function (dictMonadThrow) {+        return new Control_Monad_Error_Class.MonadThrow(function () {+            return monadWriterT(dictMonoid)(dictMonadThrow.Monad0());+        }, function (e) {+            return Control_Monad_Trans_Class.lift(monadTransWriterT(dictMonoid))(dictMonadThrow.Monad0())(Control_Monad_Error_Class.throwError(dictMonadThrow)(e));+        });+    };+};+var monadErrorWriterT = function (dictMonoid) {+    return function (dictMonadError) {+        return new Control_Monad_Error_Class.MonadError(function () {+            return monadThrowWriterT(dictMonoid)(dictMonadError.MonadThrow0());+        }, function (v) {+            return function (h) {+                return WriterT(Control_Monad_Error_Class.catchError(dictMonadError)(v)(function (e) {+                    var v1 = h(e);+                    return v1;+                }));+            };+        });+    };+};+var altWriterT = function (dictAlt) {+    return new Control_Alt.Alt(function () {+        return functorWriterT(dictAlt.Functor0());+    }, function (v) {+        return function (v1) {+            return Control_Alt.alt(dictAlt)(v)(v1);+        };+    });+};+var plusWriterT = function (dictPlus) {+    return new Control_Plus.Plus(function () {+        return altWriterT(dictPlus.Alt0());+    }, Control_Plus.empty(dictPlus));+};+var alternativeWriterT = function (dictMonoid) {+    return function (dictAlternative) {+        return new Control_Alternative.Alternative(function () {+            return applicativeWriterT(dictMonoid)(dictAlternative.Applicative0());+        }, function () {+            return plusWriterT(dictAlternative.Plus1());+        });+    };+};+var monadZeroWriterT = function (dictMonoid) {+    return function (dictMonadZero) {+        return new Control_MonadZero.MonadZero(function () {+            return alternativeWriterT(dictMonoid)(dictMonadZero.Alternative1());+        }, function () {+            return monadWriterT(dictMonoid)(dictMonadZero.Monad0());+        });+    };+};+var monadPlusWriterT = function (dictMonoid) {+    return function (dictMonadPlus) {+        return new Control_MonadPlus.MonadPlus(function () {+            return monadZeroWriterT(dictMonoid)(dictMonadPlus.MonadZero0());+        });+    };+};+module.exports = {+    WriterT: WriterT, +    execWriterT: execWriterT, +    mapWriterT: mapWriterT, +    runWriterT: runWriterT, +    newtypeWriterT: newtypeWriterT, +    functorWriterT: functorWriterT, +    applyWriterT: applyWriterT, +    applicativeWriterT: applicativeWriterT, +    altWriterT: altWriterT, +    plusWriterT: plusWriterT, +    alternativeWriterT: alternativeWriterT, +    bindWriterT: bindWriterT, +    monadWriterT: monadWriterT, +    monadRecWriterT: monadRecWriterT, +    monadZeroWriterT: monadZeroWriterT, +    monadPlusWriterT: monadPlusWriterT, +    monadTransWriterT: monadTransWriterT, +    monadEffWriter: monadEffWriter, +    monadContWriterT: monadContWriterT, +    monadThrowWriterT: monadThrowWriterT, +    monadErrorWriterT: monadErrorWriterT, +    monadAskWriterT: monadAskWriterT, +    monadReaderWriterT: monadReaderWriterT, +    monadStateWriterT: monadStateWriterT, +    monadTellWriterT: monadTellWriterT, +    monadWriterWriterT: monadWriterWriterT+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Control.Monad.Cont.Class":57,"../Control.Monad.Eff.Class":59,"../Control.Monad.Error.Class":72,"../Control.Monad.Reader.Class":76,"../Control.Monad.Rec.Class":78,"../Control.Monad.State.Class":81,"../Control.Monad.Trans.Class":84,"../Control.Monad.Writer.Class":85,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Semigroup":237,"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278}],87:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Data_Functor = require("../Data.Functor");+var Data_Unit = require("../Data.Unit");+var Monad = function (Applicative0, Bind1) {+    this.Applicative0 = Applicative0;+    this.Bind1 = Bind1;+};+var whenM = function (dictMonad) {+    return function (mb) {+        return function (m) {+            return Control_Bind.bind(dictMonad.Bind1())(mb)(function (v) {+                return Control_Applicative.when(dictMonad.Applicative0())(v)(m);+            });+        };+    };+};+var unlessM = function (dictMonad) {+    return function (mb) {+        return function (m) {+            return Control_Bind.bind(dictMonad.Bind1())(mb)(function (v) {+                return Control_Applicative.unless(dictMonad.Applicative0())(v)(m);+            });+        };+    };+};+var monadFn = new Monad(function () {+    return Control_Applicative.applicativeFn;+}, function () {+    return Control_Bind.bindFn;+});+var monadArray = new Monad(function () {+    return Control_Applicative.applicativeArray;+}, function () {+    return Control_Bind.bindArray;+});+var liftM1 = function (dictMonad) {+    return function (f) {+        return function (a) {+            return Control_Bind.bind(dictMonad.Bind1())(a)(function (v) {+                return Control_Applicative.pure(dictMonad.Applicative0())(f(v));+            });+        };+    };+};+var ap = function (dictMonad) {+    return function (f) {+        return function (a) {+            return Control_Bind.bind(dictMonad.Bind1())(f)(function (v) {+                return Control_Bind.bind(dictMonad.Bind1())(a)(function (v1) {+                    return Control_Applicative.pure(dictMonad.Applicative0())(v(v1));+                });+            });+        };+    };+};+module.exports = {+    Monad: Monad, +    ap: ap, +    liftM1: liftM1, +    unlessM: unlessM, +    whenM: whenM, +    monadFn: monadFn, +    monadArray: monadArray+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Data.Functor":157,"../Data.Unit":259}],88:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Data_Functor = require("../Data.Functor");+var MonadPlus = function (MonadZero0) {+    this.MonadZero0 = MonadZero0;+};+var monadPlusArray = new MonadPlus(function () {+    return Control_MonadZero.monadZeroArray;+});+module.exports = {+    MonadPlus: MonadPlus, +    monadPlusArray: monadPlusArray+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Control.MonadZero":89,"../Control.Plus":92,"../Data.Functor":157}],89:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Control_Plus = require("../Control.Plus");+var Data_Functor = require("../Data.Functor");+var Data_Unit = require("../Data.Unit");+var MonadZero = function (Alternative1, Monad0) {+    this.Alternative1 = Alternative1;+    this.Monad0 = Monad0;+};+var monadZeroArray = new MonadZero(function () {+    return Control_Alternative.alternativeArray;+}, function () {+    return Control_Monad.monadArray;+});+var guard = function (dictMonadZero) {+    return function (v) {+        if (v) {+            return Control_Applicative.pure((dictMonadZero.Alternative1()).Applicative0())(Data_Unit.unit);+        };+        if (!v) {+            return Control_Plus.empty((dictMonadZero.Alternative1()).Plus1());+        };+        throw new Error("Failed pattern match at Control.MonadZero line 55, column 1 - line 55, column 23: " + [ v.constructor.name ]);+    };+};+module.exports = {+    MonadZero: MonadZero, +    guard: guard, +    monadZeroArray: monadZeroArray+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Control.Plus":92,"../Data.Functor":157,"../Data.Unit":259}],90:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Cont_Trans = require("../Control.Monad.Cont.Trans");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Eff_Ref = require("../Control.Monad.Eff.Ref");+var Control_Monad_Eff_Unsafe = require("../Control.Monad.Eff.Unsafe");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Monad_Maybe_Trans = require("../Control.Monad.Maybe.Trans");+var Control_Monad_Reader_Trans = require("../Control.Monad.Reader.Trans");+var Control_Monad_Writer_Trans = require("../Control.Monad.Writer.Trans");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Compose = require("../Data.Functor.Compose");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var ParCont = function (x) {+    return x;+};+var Parallel = function (Applicative1, Monad0, parallel, sequential) {+    this.Applicative1 = Applicative1;+    this.Monad0 = Monad0;+    this.parallel = parallel;+    this.sequential = sequential;+};+var unsafeWithRef = Control_Monad_Eff_Unsafe.unsafeCoerceEff;+var sequential = function (dict) {+    return dict.sequential;+};+var parallel = function (dict) {+    return dict.parallel;+};+var newtypeParCont = new Data_Newtype.Newtype(function (n) {+    return n;+}, ParCont);+var monadParWriterT = function (dictMonoid) {+    return function (dictParallel) {+        return new Parallel(function () {+            return Control_Monad_Writer_Trans.applicativeWriterT(dictMonoid)(dictParallel.Applicative1());+        }, function () {+            return Control_Monad_Writer_Trans.monadWriterT(dictMonoid)(dictParallel.Monad0());+        }, Control_Monad_Writer_Trans.mapWriterT(parallel(dictParallel)), Control_Monad_Writer_Trans.mapWriterT(sequential(dictParallel)));+    };+};+var monadParReaderT = function (dictParallel) {+    return new Parallel(function () {+        return Control_Monad_Reader_Trans.applicativeReaderT(dictParallel.Applicative1());+    }, function () {+        return Control_Monad_Reader_Trans.monadReaderT(dictParallel.Monad0());+    }, Control_Monad_Reader_Trans.mapReaderT(parallel(dictParallel)), Control_Monad_Reader_Trans.mapReaderT(sequential(dictParallel)));+};+var monadParMaybeT = function (dictParallel) {+    return new Parallel(function () {+        return Data_Functor_Compose.applicativeCompose(dictParallel.Applicative1())(Data_Maybe.applicativeMaybe);+    }, function () {+        return Control_Monad_Maybe_Trans.monadMaybeT(dictParallel.Monad0());+    }, function (v) {+        return parallel(dictParallel)(v);+    }, function (v) {+        return sequential(dictParallel)(v);+    });+};+var monadParExceptT = function (dictParallel) {+    return new Parallel(function () {+        return Data_Functor_Compose.applicativeCompose(dictParallel.Applicative1())(Data_Either.applicativeEither);+    }, function () {+        return Control_Monad_Except_Trans.monadExceptT(dictParallel.Monad0());+    }, function (v) {+        return parallel(dictParallel)(v);+    }, function (v) {+        return sequential(dictParallel)(v);+    });+};+var monadParParCont = function (dictMonadEff) {+    return new Parallel(function () {+        return applicativeParCont(dictMonadEff);+    }, function () {+        return Control_Monad_Cont_Trans.monadContT(dictMonadEff.Monad0());+    }, ParCont, function (v) {+        return v;+    });+};+var functorParCont = function (dictMonadEff) {+    return new Data_Functor.Functor(function (f) {+        return function ($54) {+            return parallel(monadParParCont(dictMonadEff))(Data_Functor.map(Control_Monad_Cont_Trans.functorContT((((dictMonadEff.Monad0()).Bind1()).Apply0()).Functor0()))(f)(sequential(monadParParCont(dictMonadEff))($54)));+        };+    });+};+var applyParCont = function (dictMonadEff) {+    return new Control_Apply.Apply(function () {+        return functorParCont(dictMonadEff);+    }, function (v) {+        return function (v1) {+            return ParCont(function (k) {+                return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.newRef(Data_Maybe.Nothing.value))))(function (v2) {+                    return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.newRef(Data_Maybe.Nothing.value))))(function (v3) {+                        return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Cont_Trans.runContT(v)(function (a) {+                            return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v3))))(function (v4) {+                                if (v4 instanceof Data_Maybe.Nothing) {+                                    return Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v2)(new Data_Maybe.Just(a))));+                                };+                                if (v4 instanceof Data_Maybe.Just) {+                                    return k(a(v4.value0));+                                };+                                throw new Error("Failed pattern match at Control.Parallel.Class line 81, column 7 - line 83, column 26: " + [ v4.constructor.name ]);+                            });+                        }))(function () {+                            return Control_Monad_Cont_Trans.runContT(v1)(function (b) {+                                return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v2))))(function (v4) {+                                    if (v4 instanceof Data_Maybe.Nothing) {+                                        return Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v3)(new Data_Maybe.Just(b))));+                                    };+                                    if (v4 instanceof Data_Maybe.Just) {+                                        return k(v4.value0(b));+                                    };+                                    throw new Error("Failed pattern match at Control.Parallel.Class line 87, column 7 - line 89, column 26: " + [ v4.constructor.name ]);+                                });+                            });+                        });+                    });+                });+            });+        };+    });+};+var applicativeParCont = function (dictMonadEff) {+    return new Control_Applicative.Applicative(function () {+        return applyParCont(dictMonadEff);+    }, function ($55) {+        return parallel(monadParParCont(dictMonadEff))(Control_Applicative.pure(Control_Monad_Cont_Trans.applicativeContT((dictMonadEff.Monad0()).Applicative0()))($55));+    });+};+var altParCont = function (dictMonadEff) {+    return new Control_Alt.Alt(function () {+        return functorParCont(dictMonadEff);+    }, function (v) {+        return function (v1) {+            return ParCont(function (k) {+                return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.newRef(false))))(function (v2) {+                    return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Cont_Trans.runContT(v)(function (a) {+                        return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v2))))(function (v3) {+                            if (v3) {+                                return Control_Applicative.pure((dictMonadEff.Monad0()).Applicative0())(Data_Unit.unit);+                            };+                            return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v2)(true))))(function () {+                                return k(a);+                            });+                        });+                    }))(function () {+                        return Control_Monad_Cont_Trans.runContT(v1)(function (a) {+                            return Control_Bind.bind((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.readRef(v2))))(function (v3) {+                                if (v3) {+                                    return Control_Applicative.pure((dictMonadEff.Monad0()).Applicative0())(Data_Unit.unit);+                                };+                                return Control_Bind.discard(Control_Bind.discardUnit)((dictMonadEff.Monad0()).Bind1())(Control_Monad_Eff_Class.liftEff(dictMonadEff)(unsafeWithRef(Control_Monad_Eff_Ref.writeRef(v2)(true))))(function () {+                                    return k(a);+                                });+                            });+                        });+                    });+                });+            });+        };+    });+};+var plusParCont = function (dictMonadEff) {+    return new Control_Plus.Plus(function () {+        return altParCont(dictMonadEff);+    }, ParCont(function (v) {+        return Control_Applicative.pure((dictMonadEff.Monad0()).Applicative0())(Data_Unit.unit);+    }));+};+var alternativeParCont = function (dictMonadEff) {+    return new Control_Alternative.Alternative(function () {+        return applicativeParCont(dictMonadEff);+    }, function () {+        return plusParCont(dictMonadEff);+    });+};+module.exports = {+    ParCont: ParCont, +    Parallel: Parallel, +    parallel: parallel, +    sequential: sequential, +    monadParExceptT: monadParExceptT, +    monadParReaderT: monadParReaderT, +    monadParWriterT: monadParWriterT, +    monadParMaybeT: monadParMaybeT, +    newtypeParCont: newtypeParCont, +    functorParCont: functorParCont, +    applyParCont: applyParCont, +    applicativeParCont: applicativeParCont, +    altParCont: altParCont, +    plusParCont: plusParCont, +    alternativeParCont: alternativeParCont, +    monadParParCont: monadParParCont+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad.Cont.Trans":58,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Class":59,"../Control.Monad.Eff.Ref":67,"../Control.Monad.Eff.Unsafe":69,"../Control.Monad.Except.Trans":73,"../Control.Monad.Maybe.Trans":75,"../Control.Monad.Reader.Trans":77,"../Control.Monad.Writer.Trans":86,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Compose":153,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Unit":259,"../Prelude":278}],91:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Parallel_Class = require("../Control.Parallel.Class");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Foldable = require("../Data.Foldable");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var parTraverse_ = function (dictParallel) {+    return function (dictFoldable) {+        return function (f) {+            return function ($8) {+                return Control_Parallel_Class.sequential(dictParallel)(Data_Foldable.traverse_(dictParallel.Applicative1())(dictFoldable)(function ($9) {+                    return Control_Parallel_Class.parallel(dictParallel)(f($9));+                })($8));+            };+        };+    };+};+var parTraverse = function (dictParallel) {+    return function (dictTraversable) {+        return function (f) {+            return function ($10) {+                return Control_Parallel_Class.sequential(dictParallel)(Data_Traversable.traverse(dictTraversable)(dictParallel.Applicative1())(function ($11) {+                    return Control_Parallel_Class.parallel(dictParallel)(f($11));+                })($10));+            };+        };+    };+};+var parSequence_ = function (dictParallel) {+    return function (dictFoldable) {+        return parTraverse_(dictParallel)(dictFoldable)(Control_Category.id(Control_Category.categoryFn));+    };+};+var parSequence = function (dictParallel) {+    return function (dictTraversable) {+        return parTraverse(dictParallel)(dictTraversable)(Control_Category.id(Control_Category.categoryFn));+    };+};+module.exports = {+    parSequence: parSequence, +    parSequence_: parSequence_, +    parTraverse: parTraverse, +    parTraverse_: parTraverse_+};++},{"../Control.Category":47,"../Control.Parallel.Class":90,"../Control.Semigroupoid":93,"../Data.Foldable":145,"../Data.Traversable":254,"../Prelude":278}],92:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Data_Functor = require("../Data.Functor");+var Plus = function (Alt0, empty) {+    this.Alt0 = Alt0;+    this.empty = empty;+};+var plusArray = new Plus(function () {+    return Control_Alt.altArray;+}, [  ]);+var empty = function (dict) {+    return dict.empty;+};+module.exports = {+    Plus: Plus, +    empty: empty, +    plusArray: plusArray+};++},{"../Control.Alt":38,"../Data.Functor":157}],93:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Semigroupoid = function (compose) {+    this.compose = compose;+};+var semigroupoidFn = new Semigroupoid(function (f) {+    return function (g) {+        return function (x) {+            return f(g(x));+        };+    };+});+var compose = function (dict) {+    return dict.compose;+};+var composeFlipped = function (dictSemigroupoid) {+    return function (f) {+        return function (g) {+            return compose(dictSemigroupoid)(g)(f);+        };+    };+};+module.exports = {+    Semigroupoid: Semigroupoid, +    compose: compose, +    composeFlipped: composeFlipped, +    semigroupoidFn: semigroupoidFn+};++},{}],94:[function(require,module,exports){+/* global EventTarget */+"use strict";++exports._readEventTarget = function (left) {+  return function (right) {+    return function (foreign) {+      return foreign instanceof EventTarget ? right(foreign) : left("Value is not an EventTarget");+    };+  };+};++},{}],95:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Foreign = require("../Data.Foreign");+var Data_Identity = require("../Data.Identity");+var Data_List_Types = require("../Data.List.Types");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var EventType = function (x) {+    return x;+};+var wheelEventToEvent = Unsafe_Coerce.unsafeCoerce;+var uiEventToEvent = Unsafe_Coerce.unsafeCoerce;+var touchEventToEvent = Unsafe_Coerce.unsafeCoerce;+var readWheelEvent = Data_Foreign.unsafeReadTagged("WheelEvent");+var readUIEvent = Data_Foreign.unsafeReadTagged("UIEvent");+var readTouchEvent = Data_Foreign.unsafeReadTagged("TouchEvent");+var readProgressEvent = Data_Foreign.unsafeReadTagged("ProgressEvent");+var readMouseEvent = Data_Foreign.unsafeReadTagged("MouseEvent");+var readKeyboardEvent = Data_Foreign.unsafeReadTagged("KeyboardEvent");+var readInputEvent = Data_Foreign.unsafeReadTagged("InputEvent");+var readFocusEvent = Data_Foreign.unsafeReadTagged("FocusEvent");+var readEventTarget = function ($3) {+    return Data_Newtype.wrap(Control_Monad_Except_Trans.newtypeExceptT)(Data_Newtype.wrap(Data_Identity.newtypeIdentity)(Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function ($4) {+        return Control_Applicative.pure(Data_List_Types.applicativeNonEmptyList)(Data_Foreign.ForeignError.create($4));+    })($foreign._readEventTarget(Data_Either.Left.create)(Data_Either.Right.create)($3))));+};+var readCustomEvent = Data_Foreign.unsafeReadTagged("CustomEvent");+var readCompositionEvent = Data_Foreign.unsafeReadTagged("CompositionEvent");+var readClipboardEvent = Data_Foreign.unsafeReadTagged("ClipboardEvent");+var progressEventToEvent = Unsafe_Coerce.unsafeCoerce;+var ordEventType = Data_Ord.ordString;+var newtypeEventType = new Data_Newtype.Newtype(function (n) {+    return n;+}, EventType);+var mouseEventToEvent = Unsafe_Coerce.unsafeCoerce;+var keyboardEventToEvent = Unsafe_Coerce.unsafeCoerce;+var inputEventToEvent = Unsafe_Coerce.unsafeCoerce;+var focusEventToEvent = Unsafe_Coerce.unsafeCoerce;+var eqEventType = Data_Eq.eqString;+var customEventToEvent = Unsafe_Coerce.unsafeCoerce;+var compositionEventToEvent = Unsafe_Coerce.unsafeCoerce;+var clipboardEventToEvent = Unsafe_Coerce.unsafeCoerce;+module.exports = {+    EventType: EventType, +    clipboardEventToEvent: clipboardEventToEvent, +    compositionEventToEvent: compositionEventToEvent, +    customEventToEvent: customEventToEvent, +    focusEventToEvent: focusEventToEvent, +    inputEventToEvent: inputEventToEvent, +    keyboardEventToEvent: keyboardEventToEvent, +    mouseEventToEvent: mouseEventToEvent, +    progressEventToEvent: progressEventToEvent, +    readClipboardEvent: readClipboardEvent, +    readCompositionEvent: readCompositionEvent, +    readCustomEvent: readCustomEvent, +    readEventTarget: readEventTarget, +    readFocusEvent: readFocusEvent, +    readInputEvent: readInputEvent, +    readKeyboardEvent: readKeyboardEvent, +    readMouseEvent: readMouseEvent, +    readProgressEvent: readProgressEvent, +    readTouchEvent: readTouchEvent, +    readUIEvent: readUIEvent, +    readWheelEvent: readWheelEvent, +    touchEventToEvent: touchEventToEvent, +    uiEventToEvent: uiEventToEvent, +    wheelEventToEvent: wheelEventToEvent, +    newtypeEventType: newtypeEventType, +    eqEventType: eqEventType, +    ordEventType: ordEventType+};++},{"../Control.Applicative":40,"../Control.Monad.Except.Trans":73,"../Control.Semigroupoid":93,"../Data.Bifunctor":128,"../Data.Either":138,"../Data.Eq":140,"../Data.Foreign":147,"../Data.Identity":163,"../Data.List.Types":199,"../Data.Newtype":215,"../Data.Ord":222,"../Prelude":278,"../Unsafe.Coerce":282,"./foreign":94}],96:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var DOM_Event_Types = require("../DOM.Event.Types");+var Data_Foreign = require("../Data.Foreign");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var readFileList = Data_Foreign.unsafeReadTagged("FileList");+var fileToBlob = Unsafe_Coerce.unsafeCoerce;+var fileReaderToEventTarget = Unsafe_Coerce.unsafeCoerce;+module.exports = {+    fileReaderToEventTarget: fileReaderToEventTarget, +    fileToBlob: fileToBlob, +    readFileList: readFileList+};++},{"../DOM.Event.Types":95,"../Data.Foreign":147,"../Unsafe.Coerce":282}],97:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var DOM_Event_Types = require("../DOM.Event.Types");+var DOM_Util_FFI = require("../DOM.Util.FFI");+var Data_Eq = require("../Data.Eq");+var Data_Foreign = require("../Data.Foreign");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var ElementId = function (x) {+    return x;+};+var textToNode = Unsafe_Coerce.unsafeCoerce;+var readNode = DOM_Util_FFI.unsafeReadProtoTagged("Node");+var readElement = DOM_Util_FFI.unsafeReadProtoTagged("Element");+var readDocument = DOM_Util_FFI.unsafeReadProtoTagged("Document");+var processingInstructionToNode = Unsafe_Coerce.unsafeCoerce;+var oOrdElementId = Data_Ord.ordString;+var newtypeElementId = new Data_Newtype.Newtype(function (n) {+    return n;+}, ElementId);+var eqElementId = Data_Eq.eqString;+var elementToParentNode = Unsafe_Coerce.unsafeCoerce;+var elementToNonDocumentTypeChildNode = Unsafe_Coerce.unsafeCoerce;+var elementToNode = Unsafe_Coerce.unsafeCoerce;+var elementToEventTarget = Unsafe_Coerce.unsafeCoerce;+var documentTypeToNode = Unsafe_Coerce.unsafeCoerce;+var documentToParentNode = Unsafe_Coerce.unsafeCoerce;+var documentToNonElementParentNode = Unsafe_Coerce.unsafeCoerce;+var documentToNode = Unsafe_Coerce.unsafeCoerce;+var documentToEventTarget = Unsafe_Coerce.unsafeCoerce;+var documentFragmentToParentNode = Unsafe_Coerce.unsafeCoerce;+var documentFragmentToNonElementParentNode = Unsafe_Coerce.unsafeCoerce;+var documentFragmentToNode = Unsafe_Coerce.unsafeCoerce;+var commentToNode = Unsafe_Coerce.unsafeCoerce;+var characterDataToNonDocumentTypeChildNode = Unsafe_Coerce.unsafeCoerce;+module.exports = {+    ElementId: ElementId, +    characterDataToNonDocumentTypeChildNode: characterDataToNonDocumentTypeChildNode, +    commentToNode: commentToNode, +    documentFragmentToNode: documentFragmentToNode, +    documentFragmentToNonElementParentNode: documentFragmentToNonElementParentNode, +    documentFragmentToParentNode: documentFragmentToParentNode, +    documentToEventTarget: documentToEventTarget, +    documentToNode: documentToNode, +    documentToNonElementParentNode: documentToNonElementParentNode, +    documentToParentNode: documentToParentNode, +    documentTypeToNode: documentTypeToNode, +    elementToEventTarget: elementToEventTarget, +    elementToNode: elementToNode, +    elementToNonDocumentTypeChildNode: elementToNonDocumentTypeChildNode, +    elementToParentNode: elementToParentNode, +    processingInstructionToNode: processingInstructionToNode, +    readDocument: readDocument, +    readElement: readElement, +    readNode: readNode, +    textToNode: textToNode, +    newtypeElementId: newtypeElementId, +    eqElementId: eqElementId, +    oOrdElementId: oOrdElementId+};++},{"../DOM.Event.Types":95,"../DOM.Util.FFI":99,"../Data.Eq":140,"../Data.Foreign":147,"../Data.Newtype":215,"../Data.Ord":222,"../Prelude":278,"../Unsafe.Coerce":282}],98:[function(require,module,exports){+"use strict";++exports._unsafeReadProtoTagged = function (name) {+  return function (failure) {+    return function (success) {+      return function (value) {+        var obj = value;+        while (obj != null) {+          var proto = Object.getPrototypeOf(obj);+          var ctor = proto.constructor.name;+          if (ctor === name) {+            return success(value);+          } else if (ctor === "Object") {+            return failure(Object.getPrototypeOf(value).constructor.name);+          }+          obj = proto;+        }+        return failure(Object.getPrototypeOf(value).constructor.name);+      };+    };+  };+};++},{}],99:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Monad_Except = require("../Control.Monad.Except");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Foreign = require("../Data.Foreign");+var Data_Identity = require("../Data.Identity");+var Data_List_Types = require("../Data.List.Types");+var Prelude = require("../Prelude");+var unsafeReadProtoTagged = function (name) {+    return $foreign._unsafeReadProtoTagged(name)(function ($0) {+        return Control_Monad_Except_Trans.except(Data_Identity.applicativeIdentity)(Data_Either.Left.create(Control_Applicative.pure(Data_List_Types.applicativeNonEmptyList)(Data_Foreign.TypeMismatch.create(name)($0))));+    })(function ($1) {+        return Control_Monad_Except_Trans.except(Data_Identity.applicativeIdentity)(Data_Either.Right.create($1));+    });+};+module.exports = {+    unsafeReadProtoTagged: unsafeReadProtoTagged+};++},{"../Control.Applicative":40,"../Control.Monad.Except":74,"../Control.Monad.Except.Trans":73,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Foreign":147,"../Data.Identity":163,"../Data.List.Types":199,"../Prelude":278,"./foreign":98}],100:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+module.exports = {};++},{}],101:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Monad_Eff = require("../Control.Monad.Eff");+module.exports = {};++},{"../Control.Monad.Eff":71}],102:[function(require,module,exports){+"use strict";++function id(x) {+  return x;+}++exports.fromNull = function () {+  return null;+};++exports.fromBoolean = id;+exports.fromNumber = id;+exports.fromString = id;+exports.fromArray = id;+exports.fromObject = id;++exports.jsonNull = null;++exports.stringify = function (j) {+  return JSON.stringify(j);+};++var objToString = Object.prototype.toString;+var objKeys = Object.keys;++function isArray(a) {+  return objToString.call(a) === "[object Array]";+}++exports._foldJson = function (isNull, isBool, isNum, isStr, isArr, isObj, j) {+  if (j == null) return isNull(null);+  else if (typeof j === "boolean") return isBool(j);+  else if (typeof j === "number") return isNum(j);+  else if (typeof j === "string") return isStr(j);+  else if (objToString.call(j) === "[object Array]")+    return isArr(j);+  else return isObj(j);+};++exports._compare = function _compare (EQ, GT, LT, a, b) {+  if (a == null) {+    if (b == null) return EQ;+    else return LT;+  } else if (typeof a === "boolean") {+    if (typeof b === "boolean") {+      // boolean / boolean+      if (a === b) return EQ;+      else if (a === false) return LT;+      else return GT;+    } else if (b == null) return GT;+    else return LT;+  } else if (typeof a === "number") {+    if (typeof b === "number") {+      if (a === b) return EQ;+      else if (a < b) return LT;+      else return GT;+    } else if (b == null) return GT;+    else if (typeof b === "boolean") return GT;+    else return LT;+  } else if (typeof a === "string") {+    if (typeof b === "string") {+      if (a === b) return EQ;+      else if (a < b) return LT;+      else return GT;+    } else if (b == null) return GT;+    else if (typeof b === "boolean") return GT;+    else if (typeof b === "number") return GT;+    else return LT;+  } else if (isArray(a)) {+    if (isArray(b)) {+      for (var i = 0; i < Math.min(a.length, b.length); i++) {+        var ca = _compare(EQ, GT, LT, a[i], b[i]);+        if (ca !== EQ) return ca;+      }+      if (a.length === b.length) return EQ;+      else if (a.length < b.length) return LT;+      else return GT;+    } else if (b == null) return GT;+    else if (typeof b === "boolean") return GT;+    else if (typeof b === "number") return GT;+    else if (typeof b === "string") return GT;+    else return LT;+  } else {+    if (b == null) return GT;+    else if (typeof b === "boolean") return GT;+    else if (typeof b === "number") return GT;+    else if (typeof b === "string") return GT;+    else if (isArray(b)) return GT;+    else {+      var akeys = objKeys(a);+      var bkeys = objKeys(b);+      if (akeys.length < bkeys.length) return LT;+      else if (akeys.length > bkeys.length) return GT;+      var keys = akeys.concat(bkeys).sort();+      for (var j = 0; j < keys.length; j++) {+        var k = keys[j];+        if (a[k] === undefined) return LT;+        else if (b[k] === undefined) return GT;+        var ck = _compare(EQ, GT, LT, a[k], b[k]);+        if (ck !== EQ) return ck;+      }+      return EQ;+    }+  }+};++},{}],103:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Maybe = require("../Data.Maybe");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Show = require("../Data.Show");+var Data_StrMap = require("../Data.StrMap");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var verbJsonType = function (def) {+    return function (f) {+        return function (fold) {+            return fold(def)(f);+        };+    };+};+var toJsonType = verbJsonType(Data_Maybe.Nothing.value)(Data_Maybe.Just.create);+var showJson = new Data_Show.Show($foreign.stringify);+var showJNull = new Data_Show.Show(function (v) {+    return "null";+});+var jsonZero = $foreign.fromNumber(0.0);+var jsonTrue = $foreign.fromBoolean(true);+var jsonSingletonObject = function (key) {+    return function (val) {+        return $foreign.fromObject(Data_StrMap.singleton(key)(val));+    };+};+var jsonSingletonArray = function (j) {+    return $foreign.fromArray([ j ]);+};+var jsonFalse = $foreign.fromBoolean(false);+var jsonEmptyString = $foreign.fromString("");+var jsonEmptyObject = $foreign.fromObject(Data_StrMap.empty);+var jsonEmptyArray = $foreign.fromArray([  ]);+var jNull = Unsafe_Coerce.unsafeCoerce($foreign.jsonNull);+var isJsonType = verbJsonType(false)(Data_Function["const"](true));+var foldJsonString = function (d) {+    return function (f) {+        return function (j) {+            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), f, Data_Function["const"](d), Data_Function["const"](d), j);+        };+    };+};+var isString = isJsonType(foldJsonString);+var toString = toJsonType(foldJsonString);+var foldJsonObject = function (d) {+    return function (f) {+        return function (j) {+            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), f, j);+        };+    };+};+var isObject = isJsonType(foldJsonObject);+var toObject = toJsonType(foldJsonObject);+var foldJsonNumber = function (d) {+    return function (f) {+        return function (j) {+            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), f, Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), j);+        };+    };+};+var isNumber = isJsonType(foldJsonNumber);+var toNumber = toJsonType(foldJsonNumber);+var foldJsonNull = function (d) {+    return function (f) {+        return function (j) {+            return $foreign._foldJson(f, Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), j);+        };+    };+};+var isNull = isJsonType(foldJsonNull);+var toNull = toJsonType(foldJsonNull);+var foldJsonBoolean = function (d) {+    return function (f) {+        return function (j) {+            return $foreign._foldJson(Data_Function["const"](d), f, Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), j);+        };+    };+};+var isBoolean = isJsonType(foldJsonBoolean);+var toBoolean = toJsonType(foldJsonBoolean);+var foldJsonArray = function (d) {+    return function (f) {+        return function (j) {+            return $foreign._foldJson(Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), Data_Function["const"](d), f, Data_Function["const"](d), j);+        };+    };+};+var isArray = isJsonType(foldJsonArray);+var toArray = toJsonType(foldJsonArray);+var foldJson = function (a) {+    return function (b) {+        return function (c) {+            return function (d) {+                return function (e) {+                    return function (f) {+                        return function (json) {+                            return $foreign._foldJson(a, b, c, d, e, f, json);+                        };+                    };+                };+            };+        };+    };+};+var ordJson = new Data_Ord.Ord(function () {+    return eqJson;+}, function (a) {+    return function (b) {+        return $foreign._compare(Data_Ordering.EQ.value, Data_Ordering.GT.value, Data_Ordering.LT.value, a, b);+    };+});+var eqJson = new Data_Eq.Eq(function (j1) {+    return function (j2) {+        return Data_Eq.eq(Data_Ordering.eqOrdering)(Data_Ord.compare(ordJson)(j1)(j2))(Data_Ordering.EQ.value);+    };+});+var eqJNull = new Data_Eq.Eq(function (v) {+    return function (v1) {+        return true;+    };+});+var ordJNull = new Data_Ord.Ord(function () {+    return eqJNull;+}, function (v) {+    return function (v1) {+        return Data_Ordering.EQ.value;+    };+});+module.exports = {+    foldJson: foldJson, +    foldJsonArray: foldJsonArray, +    foldJsonBoolean: foldJsonBoolean, +    foldJsonNull: foldJsonNull, +    foldJsonNumber: foldJsonNumber, +    foldJsonObject: foldJsonObject, +    foldJsonString: foldJsonString, +    isArray: isArray, +    isBoolean: isBoolean, +    isNull: isNull, +    isNumber: isNumber, +    isObject: isObject, +    isString: isString, +    jNull: jNull, +    jsonEmptyArray: jsonEmptyArray, +    jsonEmptyObject: jsonEmptyObject, +    jsonEmptyString: jsonEmptyString, +    jsonFalse: jsonFalse, +    jsonSingletonArray: jsonSingletonArray, +    jsonSingletonObject: jsonSingletonObject, +    jsonTrue: jsonTrue, +    jsonZero: jsonZero, +    toArray: toArray, +    toBoolean: toBoolean, +    toNull: toNull, +    toNumber: toNumber, +    toObject: toObject, +    toString: toString, +    eqJNull: eqJNull, +    ordJNull: ordJNull, +    showJNull: showJNull, +    eqJson: eqJson, +    ordJson: ordJson, +    showJson: showJson, +    fromArray: $foreign.fromArray, +    fromBoolean: $foreign.fromBoolean, +    fromNull: $foreign.fromNull, +    fromNumber: $foreign.fromNumber, +    fromObject: $foreign.fromObject, +    fromString: $foreign.fromString, +    jsonNull: $foreign.jsonNull, +    stringify: $foreign.stringify+};++},{"../Data.Eq":140,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Maybe":204,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Show":241,"../Data.StrMap":245,"../Data.Tuple":255,"../Prelude":278,"../Unsafe.Coerce":282,"./foreign":102}],104:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Boolean = require("../Data.Boolean");+var Data_Either = require("../Data.Either");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Int = require("../Data.Int");+var Data_List = require("../Data.List");+var Data_List_Types = require("../Data.List.Types");+var Data_Map = require("../Data.Map");+var Data_Maybe = require("../Data.Maybe");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_StrMap = require("../Data.StrMap");+var Data_String = require("../Data.String");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var DecodeJson = function (decodeJson) {+    this.decodeJson = decodeJson;+};+var decodeVoid = new DecodeJson(function (v) {+    return new Data_Either.Left("Value cannot be Void");+});+var decodeJsonString = new DecodeJson(Data_Argonaut_Core.foldJsonString(new Data_Either.Left("Value is not a String"))(Data_Either.Right.create));+var decodeJsonNumber = new DecodeJson(Data_Argonaut_Core.foldJsonNumber(new Data_Either.Left("Value is not a Number"))(Data_Either.Right.create));+var decodeJsonNull = new DecodeJson(Data_Argonaut_Core.foldJsonNull(new Data_Either.Left("Value is not a null"))(Data_Function["const"](new Data_Either.Right(Data_Unit.unit))));+var decodeJsonJson = new DecodeJson(Data_Either.Right.create);+var decodeJsonBoolean = new DecodeJson(Data_Argonaut_Core.foldJsonBoolean(new Data_Either.Left("Value is not a Boolean"))(Data_Either.Right.create));+var decodeJson = function (dict) {+    return dict.decodeJson;+};+var decodeJsonChar = new DecodeJson(function (j) {+    return Control_Bind.bindFlipped(Data_Either.bindEither)(Data_Maybe.maybe(Data_Either.Left.create("Expected character but found: " + Data_Show.show(Data_Argonaut_Core.showJson)(j)))(Data_Either.Right.create))(Data_Functor.map(Data_Either.functorEither)(Data_String.charAt(0))(decodeJson(decodeJsonString)(j)));+});+var decodeJsonInt = new DecodeJson(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(function ($32) {+    return Data_Maybe.maybe(new Data_Either.Left("Value is not an integer"))(Data_Either.Right.create)(Data_Int.fromNumber($32));+})(decodeJson(decodeJsonNumber)));+var decodeJsonMaybe = function (dictDecodeJson) {+    return new DecodeJson(function (j) {+        if (Data_Argonaut_Core.isNull(j)) {+            return Control_Applicative.pure(Data_Either.applicativeEither)(Data_Maybe.Nothing.value);+        };+        if (Data_Boolean.otherwise) {+            return Data_Functor.map(Data_Either.functorEither)(Data_Maybe.Just.create)(decodeJson(dictDecodeJson)(j));+        };+        throw new Error("Failed pattern match at Data.Argonaut.Decode.Class line 24, column 3 - line 26, column 40: " + [ j.constructor.name ]);+    });+};+var decodeJObject = function ($33) {+    return Data_Maybe.maybe(new Data_Either.Left("Value is not an Object"))(Data_Either.Right.create)(Data_Argonaut_Core.toObject($33));+};+var decodeJsonEither = function (dictDecodeJson) {+    return function (dictDecodeJson1) {+        return new DecodeJson(function (json) {+            return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {+                return "Couldn't decode Either: " + v;+            })(Control_Bind.bind(Data_Either.bindEither)(decodeJObject(json))(function (obj) {+                return Control_Bind.bind(Data_Either.bindEither)(Data_Maybe.maybe(new Data_Either.Left("Expected field 'tag'"))(Data_Either.Right.create)(Data_StrMap.lookup("tag")(obj)))(function (v) {+                    return Control_Bind.bind(Data_Either.bindEither)(Data_Maybe.maybe(new Data_Either.Left("Expected field 'value'"))(Data_Either.Right.create)(Data_StrMap.lookup("value")(obj)))(function (v1) {+                        var v2 = Data_Argonaut_Core.toString(v);+                        if (v2 instanceof Data_Maybe.Just && v2.value0 === "Right") {+                            return Data_Functor.map(Data_Either.functorEither)(Data_Either.Right.create)(decodeJson(dictDecodeJson1)(v1));+                        };+                        if (v2 instanceof Data_Maybe.Just && v2.value0 === "Left") {+                            return Data_Functor.map(Data_Either.functorEither)(Data_Either.Left.create)(decodeJson(dictDecodeJson)(v1));+                        };+                        return new Data_Either.Left("'tag' field was not \"Left\" or \"Right\"");+                    });+                });+            }));+        });+    };+};+var decodeStrMap = function (dictDecodeJson) {+    return new DecodeJson(function ($34) {+        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {+            return "Couldn't decode StrMap: " + v;+        })(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(Data_Traversable.traverse(Data_StrMap.traversableStrMap)(Data_Either.applicativeEither)(decodeJson(dictDecodeJson)))(decodeJObject)($34));+    });+};+var decodeJArray = function ($35) {+    return Data_Maybe.maybe(new Data_Either.Left("Value is not an Array"))(Data_Either.Right.create)(Data_Argonaut_Core.toArray($35));+};+var decodeList = function (dictDecodeJson) {+    return new DecodeJson(function ($36) {+        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {+            return "Couldn't decode List: " + v;+        })(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(Data_Traversable.traverse(Data_List_Types.traversableList)(Data_Either.applicativeEither)(decodeJson(dictDecodeJson)))(Data_Functor.map(Data_Functor.functorFn)(Data_Functor.map(Data_Either.functorEither)(Data_List.fromFoldable(Data_Foldable.foldableArray)))(decodeJArray))($36));+    });+};+var decodeJsonTuple = function (dictDecodeJson) {+    return function (dictDecodeJson1) {+        return new DecodeJson(function (j) {+            var f = function (v) {+                if (v instanceof Data_List_Types.Cons && (v.value1 instanceof Data_List_Types.Cons && v.value1.value1 instanceof Data_List_Types.Nil)) {+                    return Control_Apply.apply(Data_Either.applyEither)(Data_Functor.map(Data_Either.functorEither)(Data_Tuple.Tuple.create)(decodeJson(dictDecodeJson)(v.value0)))(decodeJson(dictDecodeJson1)(v.value1.value0));+                };+                return new Data_Either.Left("Couldn't decode Tuple");+            };+            return Control_Bind.bind(Data_Either.bindEither)(decodeJson(decodeList(decodeJsonJson))(j))(f);+        });+    };+};+var decodeMap = function (dictOrd) {+    return function (dictDecodeJson) {+        return function (dictDecodeJson1) {+            return new DecodeJson(function ($37) {+                return Data_Functor.map(Data_Either.functorEither)(Data_Map.fromFoldable(dictOrd)(Data_List_Types.foldableList))(decodeJson(decodeList(decodeJsonTuple(dictDecodeJson)(dictDecodeJson1)))($37));+            });+        };+    };+};+var decodeArray = function (dictDecodeJson) {+    return new DecodeJson(function ($38) {+        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(function (v) {+            return "Couldn't decode Array: " + v;+        })(Control_Bind.composeKleisliFlipped(Data_Either.bindEither)(Data_Traversable.traverse(Data_Traversable.traversableArray)(Data_Either.applicativeEither)(decodeJson(dictDecodeJson)))(decodeJArray)($38));+    });+};+module.exports = {+    DecodeJson: DecodeJson, +    decodeJson: decodeJson, +    decodeJsonMaybe: decodeJsonMaybe, +    decodeJsonTuple: decodeJsonTuple, +    decodeJsonEither: decodeJsonEither, +    decodeJsonNull: decodeJsonNull, +    decodeJsonBoolean: decodeJsonBoolean, +    decodeJsonNumber: decodeJsonNumber, +    decodeJsonInt: decodeJsonInt, +    decodeJsonString: decodeJsonString, +    decodeJsonJson: decodeJsonJson, +    decodeJsonChar: decodeJsonChar, +    decodeStrMap: decodeStrMap, +    decodeArray: decodeArray, +    decodeList: decodeList, +    decodeMap: decodeMap, +    decodeVoid: decodeVoid+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Semigroupoid":93,"../Data.Argonaut.Core":103,"../Data.Bifunctor":128,"../Data.Boolean":130,"../Data.Either":138,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.Int":167,"../Data.List":200,"../Data.List.Types":199,"../Data.Map":201,"../Data.Maybe":204,"../Data.Semigroup":237,"../Data.Show":241,"../Data.StrMap":245,"../Data.String":249,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278}],105:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_StrMap = require("../Data.StrMap");+var Prelude = require("../Prelude");+var getFieldOptional = function (dictDecodeJson) {+    return function (o) {+        return function (s) {+            var decode = function (json) {+                return Data_Functor.map(Data_Either.functorEither)(Data_Maybe.Just.create)(Data_Argonaut_Decode_Class.decodeJson(dictDecodeJson)(json));+            };+            return Data_Maybe.maybe(Control_Applicative.pure(Data_Either.applicativeEither)(Data_Maybe.Nothing.value))(decode)(Data_StrMap.lookup(s)(o));+        };+    };+};+var getField = function (dictDecodeJson) {+    return function (o) {+        return function (s) {+            return Data_Maybe.maybe(Data_Either.Left.create("Expected field " + Data_Show.show(Data_Show.showString)(s)))(Data_Argonaut_Decode_Class.decodeJson(dictDecodeJson))(Data_StrMap.lookup(s)(o));+        };+    };+};+var defaultField = function (parser) {+    return function ($$default) {+        return Data_Functor.map(Data_Either.functorEither)(Data_Maybe.fromMaybe($$default))(parser);+    };+};+module.exports = {+    defaultField: defaultField, +    getField: getField, +    getFieldOptional: getFieldOptional+};++},{"../Control.Applicative":40,"../Data.Argonaut.Core":103,"../Data.Argonaut.Decode.Class":104,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Maybe":204,"../Data.Semigroup":237,"../Data.Show":241,"../Data.StrMap":245,"../Prelude":278}],106:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");+var Data_Argonaut_Decode_Combinators = require("../Data.Argonaut.Decode.Combinators");+module.exports = {};++},{"../Data.Argonaut.Decode.Class":104,"../Data.Argonaut.Decode.Combinators":105}],107:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Int = require("../Data.Int");+var Data_List = require("../Data.List");+var Data_List_Types = require("../Data.List.Types");+var Data_Map = require("../Data.Map");+var Data_Maybe = require("../Data.Maybe");+var Data_StrMap = require("../Data.StrMap");+var Data_String = require("../Data.String");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Data_Void = require("../Data.Void");+var Prelude = require("../Prelude");+var EncodeJson = function (encodeJson) {+    this.encodeJson = encodeJson;+};+var encodeVoid = new EncodeJson(Data_Void.absurd);+var encodeJsonUnit = new EncodeJson(Data_Function["const"](Data_Argonaut_Core.jsonNull));+var encodeJsonJson = new EncodeJson(Control_Category.id(Control_Category.categoryFn));+var encodeJsonJString = new EncodeJson(Data_Argonaut_Core.fromString);+var encodeJsonJNumber = new EncodeJson(Data_Argonaut_Core.fromNumber);+var encodeJsonJBoolean = new EncodeJson(Data_Argonaut_Core.fromBoolean);+var encodeJsonInt = new EncodeJson(function ($19) {+    return Data_Argonaut_Core.fromNumber(Data_Int.toNumber($19));+});+var encodeJson = function (dict) {+    return dict.encodeJson;+};+var encodeJsonArray = function (dictEncodeJson) {+    return new EncodeJson(function (json) {+        return Data_Argonaut_Core.fromArray(Data_Functor.map(Data_Functor.functorArray)(encodeJson(dictEncodeJson))(json));+    });+};+var encodeJsonChar = new EncodeJson(function ($20) {+    return encodeJson(encodeJsonJString)(Data_String.singleton($20));+});+var encodeJsonEither = function (dictEncodeJson) {+    return function (dictEncodeJson1) {+        return new EncodeJson((function () {+            var obj = function (dictEncodeJson2) {+                return function (tag) {+                    return function (x) {+                        return Data_Argonaut_Core.fromObject(Data_StrMap.fromFoldable(Data_List_Types.foldableList)(new Data_List_Types.Cons(new Data_Tuple.Tuple("tag", Data_Argonaut_Core.fromString(tag)), new Data_List_Types.Cons(new Data_Tuple.Tuple("value", encodeJson(dictEncodeJson2)(x)), Data_List_Types.Nil.value))));+                    };+                };+            };+            return Data_Either.either(obj(dictEncodeJson)("Left"))(obj(dictEncodeJson1)("Right"));+        })());+    };+};+var encodeJsonList = function (dictEncodeJson) {+    return new EncodeJson(function ($21) {+        return Data_Argonaut_Core.fromArray(Data_Functor.map(Data_Functor.functorArray)(encodeJson(dictEncodeJson))(Data_List.toUnfoldable(Data_Unfoldable.unfoldableArray)($21)));+    });+};+var encodeJsonMaybe = function (dictEncodeJson) {+    return new EncodeJson(function (v) {+        if (v instanceof Data_Maybe.Nothing) {+            return Data_Argonaut_Core.jsonNull;+        };+        if (v instanceof Data_Maybe.Just) {+            return encodeJson(dictEncodeJson)(v.value0);+        };+        throw new Error("Failed pattern match at Data.Argonaut.Encode.Class line 19, column 3 - line 19, column 33: " + [ v.constructor.name ]);+    });+};+var encodeJsonTuple = function (dictEncodeJson) {+    return function (dictEncodeJson1) {+        return new EncodeJson(function (v) {+            return encodeJson(encodeJsonArray(encodeJsonJson))([ encodeJson(dictEncodeJson)(v.value0), encodeJson(dictEncodeJson1)(v.value1) ]);+        });+    };+};+var encodeMap = function (dictOrd) {+    return function (dictEncodeJson) {+        return function (dictEncodeJson1) {+            return new EncodeJson(function ($22) {+                return encodeJson(encodeJsonList(encodeJsonTuple(dictEncodeJson)(dictEncodeJson1)))(Data_Map.toUnfoldable(Data_List_Types.unfoldableList)($22));+            });+        };+    };+};+var encodeStrMap = function (dictEncodeJson) {+    return new EncodeJson(function ($23) {+        return Data_Argonaut_Core.fromObject(Data_Functor.map(Data_StrMap.functorStrMap)(encodeJson(dictEncodeJson))($23));+    });+};+module.exports = {+    EncodeJson: EncodeJson, +    encodeJson: encodeJson, +    encodeJsonMaybe: encodeJsonMaybe, +    encodeJsonTuple: encodeJsonTuple, +    encodeJsonEither: encodeJsonEither, +    encodeJsonUnit: encodeJsonUnit, +    encodeJsonJBoolean: encodeJsonJBoolean, +    encodeJsonJNumber: encodeJsonJNumber, +    encodeJsonInt: encodeJsonInt, +    encodeJsonJString: encodeJsonJString, +    encodeJsonJson: encodeJsonJson, +    encodeJsonChar: encodeJsonChar, +    encodeJsonArray: encodeJsonArray, +    encodeJsonList: encodeJsonList, +    encodeStrMap: encodeStrMap, +    encodeMap: encodeMap, +    encodeVoid: encodeVoid+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Argonaut.Core":103,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Int":167,"../Data.List":200,"../Data.List.Types":199,"../Data.Map":201,"../Data.Maybe":204,"../Data.StrMap":245,"../Data.String":249,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Data.Void":260,"../Prelude":278}],108:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Argonaut_Encode_Class = require("../Data.Argonaut.Encode.Class");+var Data_StrMap = require("../Data.StrMap");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var extend = function (dictEncodeJson) {+    return function (v) {+        return function ($6) {+            return Data_Argonaut_Core.foldJsonObject(Data_Argonaut_Core.jsonSingletonObject(v.value0)(v.value1))(function ($7) {+                return Data_Argonaut_Core.fromObject(Data_StrMap.insert(v.value0)(v.value1)($7));+            })(Data_Argonaut_Encode_Class.encodeJson(dictEncodeJson)($6));+        };+    };+};+var assoc = function (dictEncodeJson) {+    return function (k) {+        return function ($8) {+            return Data_Tuple.Tuple.create(k)(Data_Argonaut_Encode_Class.encodeJson(dictEncodeJson)($8));+        };+    };+};+module.exports = {+    assoc: assoc, +    extend: extend+};++},{"../Control.Semigroupoid":93,"../Data.Argonaut.Core":103,"../Data.Argonaut.Encode.Class":107,"../Data.StrMap":245,"../Data.Tuple":255,"../Prelude":278}],109:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Argonaut_Encode_Class = require("../Data.Argonaut.Encode.Class");+var Data_Argonaut_Encode_Combinators = require("../Data.Argonaut.Encode.Combinators");+module.exports = {};++},{"../Data.Argonaut.Encode.Class":107,"../Data.Argonaut.Encode.Combinators":108}],110:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");+var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");+var Data_Argonaut_Encode = require("../Data.Argonaut.Encode");+var Data_Argonaut_Encode_Class = require("../Data.Argonaut.Encode.Class");+var Data_Array = require("../Data.Array");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Int = require("../Data.Int");+var Data_List = require("../Data.List");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_StrMap = require("../Data.StrMap");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Prelude = require("../Prelude");+var JsonPrim = function (x) {+    return x;+};+var JCursorTop = (function () {+    function JCursorTop() {++    };+    JCursorTop.value = new JCursorTop();+    return JCursorTop;+})();+var JField = (function () {+    function JField(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    JField.create = function (value0) {+        return function (value1) {+            return new JField(value0, value1);+        };+    };+    return JField;+})();+var JIndex = (function () {+    function JIndex(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    JIndex.create = function (value0) {+        return function (value1) {+            return new JIndex(value0, value1);+        };+    };+    return JIndex;+})();+var showJCursor = new Data_Show.Show(function (v) {+    if (v instanceof JCursorTop) {+        return "JCursorTop";+    };+    if (v instanceof JField) {+        return "(JField " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(showJCursor)(v.value1) + ")")));+    };+    if (v instanceof JIndex) {+        return "(JIndex " + (Data_Show.show(Data_Show.showInt)(v.value0) + (" " + (Data_Show.show(showJCursor)(v.value1) + ")")));+    };+    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 28, column 3 - line 29, column 3: " + [ v.constructor.name ]);+});+var semigroupJCursor = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        if (v1 instanceof JCursorTop) {+            return v;+        };+        if (v instanceof JCursorTop) {+            return v1;+        };+        if (v instanceof JField) {+            return new JField(v.value0, Data_Semigroup.append(semigroupJCursor)(v.value1)(v1));+        };+        if (v instanceof JIndex) {+            return new JIndex(v.value0, Data_Semigroup.append(semigroupJCursor)(v.value1)(v1));+        };+        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 38, column 3 - line 38, column 26: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var runJsonPrim = function (v) {+    return v;+};+var showJsonPrim = new Data_Show.Show(function (p) {+    return runJsonPrim(p)(Data_Show.show(Data_Argonaut_Core.showJNull))(Data_Show.show(Data_Show.showBoolean))(Data_Show.show(Data_Show.showNumber))(Data_Show.show(Data_Show.showString));+});+var print = function (v) {+    if (v instanceof JCursorTop) {+        return "";+    };+    if (v instanceof JField) {+        return "." + (v.value0 + Data_Show.show(showJCursor)(v.value1));+    };+    if (v instanceof JIndex) {+        return "[" + (Data_Show.show(Data_Show.showInt)(v.value0) + ("]" + Data_Show.show(showJCursor)(v.value1)));+    };+    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 33, column 1 - line 34, column 1: " + [ v.constructor.name ]);+};+var primToJson = function (p) {+    return runJsonPrim(p)(Data_Argonaut_Core.fromNull)(Data_Argonaut_Core.fromBoolean)(Data_Argonaut_Core.fromNumber)(Data_Argonaut_Core.fromString);+};+var primStr = function (v) {+    return function (v1) {+        return function (v2) {+            return function (v3) {+                return function (f) {+                    return f(v);+                };+            };+        };+    };+};+var primNum = function (v) {+    return function (v1) {+        return function (v2) {+            return function (f) {+                return function (v3) {+                    return f(v);+                };+            };+        };+    };+};+var primNull = function (f) {+    return function (v) {+        return function (v1) {+            return function (v2) {+                return f(Data_Argonaut_Core.jNull);+            };+        };+    };+};+var primBool = function (v) {+    return function (v1) {+        return function (f) {+            return function (v2) {+                return function (v3) {+                    return f(v);+                };+            };+        };+    };+};+var toPrims = (function () {+    var objFn = function (obj) {+        var f = function (v) {+            return Data_Functor.map(Data_List_Types.functorList)(function (t) {+                return new Data_Tuple.Tuple(new JField(v.value0, Data_Tuple.fst(t)), Data_Tuple.snd(t));+            })(toPrims(v.value1));+        };+        return Control_Bind.bind(Data_List_Types.bindList)(Data_StrMap.toUnfoldable(Data_List_Types.unfoldableList)(obj))(f);+    };+    var mkTop = function (p) {+        return Data_List.singleton(new Data_Tuple.Tuple(JCursorTop.value, p));+    };+    var nullFn = function (v) {+        return mkTop(primNull);+    };+    var numFn = function (n) {+        return mkTop(primNum(n));+    };+    var strFn = function (s) {+        return mkTop(primStr(s));+    };+    var boolFn = function (b) {+        return mkTop(primBool(b));+    };+    var arrFn$prime = function (v) {+        return Data_List.fromFoldable(Data_List_Types.foldableList)(Data_Functor.map(Data_List_Types.functorList)(function (t) {+            return new Data_Tuple.Tuple(new JIndex(v.value0, Data_Tuple.fst(t)), Data_Tuple.snd(t));+        })(toPrims(v.value1)));+    };+    var arrFn = function (arr) {+        var zipped = Data_List.zipWith(Data_Tuple.Tuple.create)(Data_List.range(0)(Data_Array.length(arr) - 1 | 0))(Data_List.fromFoldable(Data_Foldable.foldableArray)(arr));+        return Control_Bind.bind(Data_List_Types.bindList)(zipped)(arrFn$prime);+    };+    return Data_Argonaut_Core.foldJson(nullFn)(boolFn)(numFn)(strFn)(arrFn)(objFn);+})();+var monoidJCursor = new Data_Monoid.Monoid(function () {+    return semigroupJCursor;+}, JCursorTop.value);+var inferEmpty = function (v) {+    if (v instanceof JCursorTop) {+        return Data_Argonaut_Core.jsonNull;+    };+    if (v instanceof JField) {+        return Data_Argonaut_Core.jsonEmptyObject;+    };+    if (v instanceof JIndex) {+        return Data_Argonaut_Core.jsonEmptyArray;+    };+    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 98, column 1 - line 98, column 37: " + [ v.constructor.name ]);+};+var fail = function (dictShow) {+    return function (x) {+        return Data_Either.Left.create("Expected String or Number but found: " + Data_Show.show(dictShow)(x));+    };+};+var eqJCursor = new Data_Eq.Eq(function (x) {+    return function (y) {+        if (x instanceof JCursorTop && y instanceof JCursorTop) {+            return true;+        };+        if (x instanceof JField && y instanceof JField) {+            return x.value0 === y.value0 && Data_Eq.eq(eqJCursor)(x.value1)(y.value1);+        };+        if (x instanceof JIndex && y instanceof JIndex) {+            return x.value0 === y.value0 && Data_Eq.eq(eqJCursor)(x.value1)(y.value1);+        };+        return false;+    };+});+var ordJCursor = new Data_Ord.Ord(function () {+    return eqJCursor;+}, function (x) {+    return function (y) {+        if (x instanceof JCursorTop && y instanceof JCursorTop) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof JCursorTop) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof JCursorTop) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof JField && y instanceof JField) {+            var v = Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);+            if (v instanceof Data_Ordering.LT) {+                return Data_Ordering.LT.value;+            };+            if (v instanceof Data_Ordering.GT) {+                return Data_Ordering.GT.value;+            };+            return Data_Ord.compare(ordJCursor)(x.value1)(y.value1);+        };+        if (x instanceof JField) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof JField) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof JIndex && y instanceof JIndex) {+            var v = Data_Ord.compare(Data_Ord.ordInt)(x.value0)(y.value0);+            if (v instanceof Data_Ordering.LT) {+                return Data_Ordering.LT.value;+            };+            if (v instanceof Data_Ordering.GT) {+                return Data_Ordering.GT.value;+            };+            return Data_Ord.compare(ordJCursor)(x.value1)(y.value1);+        };+        throw new Error("Failed pattern match: " + [ x.constructor.name, y.constructor.name ]);+    };+});+var encodeJsonJCursor = new Data_Argonaut_Encode_Class.EncodeJson((function () {+    var loop = function (v) {+        if (v instanceof JCursorTop) {+            return [  ];+        };+        if (v instanceof JField) {+            return Data_Semigroup.append(Data_Semigroup.semigroupArray)([ Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonJString)(v.value0) ])(loop(v.value1));+        };+        if (v instanceof JIndex) {+            return Data_Semigroup.append(Data_Semigroup.semigroupArray)([ Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonInt)(v.value0) ])(loop(v.value1));+        };+        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 47, column 16 - line 50, column 49: " + [ v.constructor.name ]);+    };+    return function ($151) {+        return Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonArray(Data_Argonaut_Encode_Class.encodeJsonJson))(loop($151));+    };+})());+var downIndex = function (i) {+    var downIndex$prime = function (v) {+        if (v instanceof JCursorTop) {+            return new JIndex(i, JCursorTop.value);+        };+        if (v instanceof JField) {+            return new JField(v.value0, downIndex$prime(v.value1));+        };+        if (v instanceof JIndex) {+            return new JIndex(v.value0, downIndex$prime(v.value1));+        };+        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 87, column 15 - line 90, column 54: " + [ v.constructor.name ]);+    };+    return downIndex$prime;+};+var downField = function (i) {+    var downField$prime = function (v) {+        if (v instanceof JCursorTop) {+            return new JField(i, JCursorTop.value);+        };+        if (v instanceof JField) {+            return new JField(v.value0, downField$prime(v.value1));+        };+        if (v instanceof JIndex) {+            return new JIndex(v.value0, downField$prime(v.value1));+        };+        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 81, column 15 - line 84, column 54: " + [ v.constructor.name ]);+    };+    return downField$prime;+};+var insideOut = function (v) {+    if (v instanceof JCursorTop) {+        return JCursorTop.value;+    };+    if (v instanceof JField) {+        return downField(v.value0)(insideOut(v.value1));+    };+    if (v instanceof JIndex) {+        return downIndex(v.value0)(insideOut(v.value1));+    };+    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 76, column 1 - line 76, column 34: " + [ v.constructor.name ]);+};+var decodeJsonJCursor = new Data_Argonaut_Decode_Class.DecodeJson(function (j) {+    var goNum = function (c) {+        return function ($152) {+            return Data_Maybe.maybe(new Data_Either.Left("Not an Int"))(function ($153) {+                return Data_Either.Right.create(Data_Function.flip(JIndex.create)(c)($153));+            })(Data_Int.fromNumber($152));+        };+    };+    var loop = function (arr) {+        return Data_Maybe.maybe(new Data_Either.Right(JCursorTop.value))(goLoop)(Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_Tuple.Tuple.create)(Data_Array.head(arr)))(Data_Array.tail(arr)));+    };+    var goLoop = function (v) {+        return Control_Bind.bind(Data_Either.bindEither)(loop(v.value1))(function (v1) {+            return Data_Argonaut_Core.foldJson(fail(Data_Argonaut_Core.showJNull))(fail(Data_Show.showBoolean))(goNum(v1))(function ($154) {+                return Data_Either.Right.create(Data_Function.flip(JField.create)(v1)($154));+            })(fail(Data_Show.showArray(Data_Argonaut_Core.showJson)))(fail(Data_StrMap.showStrMap(Data_Argonaut_Core.showJson)))(v.value0);+        });+    };+    return Control_Bind.bind(Data_Either.bindEither)(Data_Argonaut_Decode_Class.decodeJson(Data_Argonaut_Decode_Class.decodeArray(Data_Argonaut_Decode_Class.decodeJsonJson))(j))(loop);+});+var cursorSet = function (v) {+    return function (v1) {+        if (v instanceof JCursorTop) {+            return function ($155) {+                return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(Data_Function["const"](v1)($155));+            };+        };+        if (v instanceof JField) {+            var mergeObjs = function (m) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function ($156) {+                    return Data_Argonaut_Core.fromObject(Data_Function.flip(Data_StrMap.insert(v.value0))(m)($156));+                })(cursorSet(v.value1)(v1)(Data_Maybe.fromMaybe(inferEmpty(v.value1))(Data_StrMap.lookup(v.value0)(m))));+            };+            var defaultObj = Data_Functor.map(Data_Maybe.functorMaybe)(function ($157) {+                return Data_Argonaut_Core.fromObject(Data_StrMap.singleton(v.value0)($157));+            })(cursorSet(v.value1)(v1)(inferEmpty(v.value1)));+            return Data_Argonaut_Core.foldJsonObject(defaultObj)(mergeObjs);+        };+        if (v instanceof JIndex) {+            var setArr = function (__copy_xs) {+                return function (__copy_i$prime) {+                    return function (__copy_v$prime) {+                        var __tco_xs = __copy_xs;+                        var __tco_i$prime = __copy_i$prime;+                        var __tco_done = false;+                        var __tco_result;+                        function __tco_loop(xs, i$prime, v$prime) {+                            var len = Data_Array.length(xs);+                            var $138 = i$prime < 0;+                            if ($138) {+                                __tco_done = true;+                                return Data_Maybe.Nothing.value;+                            };+                            var $139 = i$prime >= len;+                            if ($139) {+                                __tco_xs = Data_Semigroup.append(Data_Semigroup.semigroupArray)(xs)(Data_Unfoldable.replicate(Data_Unfoldable.unfoldableArray)((i$prime - len | 0) + 1 | 0)(Data_Argonaut_Core.jsonNull));+                                __tco_i$prime = i$prime;+                                __copy_v$prime = v$prime;+                                return;+                            };+                            __tco_done = true;+                            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Argonaut_Core.fromArray)(Data_Array.updateAt(i$prime)(v$prime)(xs));+                        };+                        while (!__tco_done) {+                            __tco_result = __tco_loop(__tco_xs, __tco_i$prime, __copy_v$prime);+                        };+                        return __tco_result;+                    };+                };+            };+            var mergeArrs = function (a) {+                return Control_Bind.bindFlipped(Data_Maybe.bindMaybe)(setArr(a)(v.value0))(cursorSet(v.value1)(v1)(Data_Maybe.fromMaybe(inferEmpty(v.value1))(Data_Array.index(a)(v.value0))));+            };+            var defaultArr = Data_Functor.map(Data_Maybe.functorMaybe)(Data_Argonaut_Core.fromArray)(Control_Bind.bindFlipped(Data_Maybe.bindMaybe)(Data_Function.flip(Data_Array.updateAt(v.value0))(Data_Unfoldable.replicate(Data_Unfoldable.unfoldableArray)(v.value0 + 1 | 0)(Data_Argonaut_Core.jsonNull)))(cursorSet(v.value1)(v1)(inferEmpty(v.value1))));+            return Data_Argonaut_Core.foldJsonArray(defaultArr)(mergeArrs);+        };+        throw new Error("Failed pattern match at Data.Argonaut.JCursor line 103, column 1 - line 103, column 42: " + [ v.constructor.name, v1.constructor.name ]);+    };+};+var fromPrims = function (lst) {+    var f = function (j) {+        return function (v) {+            return Control_Bind.bind(Data_Maybe.bindMaybe)(j)(cursorSet(v.value0)(primToJson(v.value1)));+        };+    };+    return Data_Foldable.foldl(Data_List_Types.foldableList)(f)(Data_Functor.map(Data_Maybe.functorMaybe)(function ($158) {+        return inferEmpty(Data_Tuple.fst($158));+    })(Data_List.head(lst)))(lst);+};+var cursorGet = function (v) {+    if (v instanceof JCursorTop) {+        return Data_Maybe.Just.create;+    };+    if (v instanceof JField) {+        return Data_Argonaut_Core.foldJsonObject(Data_Maybe.Nothing.value)(Control_Bind.composeKleisliFlipped(Data_Maybe.bindMaybe)(cursorGet(v.value1))(Data_StrMap.lookup(v.value0)));+    };+    if (v instanceof JIndex) {+        return Data_Argonaut_Core.foldJsonArray(Data_Maybe.Nothing.value)(Control_Bind.composeKleisliFlipped(Data_Maybe.bindMaybe)(cursorGet(v.value1))(function (v1) {+            return Data_Array.index(v1)(v.value0);+        }));+    };+    throw new Error("Failed pattern match at Data.Argonaut.JCursor line 93, column 1 - line 93, column 28: " + [ v.constructor.name ]);+};+module.exports = {+    JCursorTop: JCursorTop, +    JField: JField, +    JIndex: JIndex, +    JsonPrim: JsonPrim, +    cursorGet: cursorGet, +    cursorSet: cursorSet, +    downField: downField, +    downIndex: downIndex, +    fail: fail, +    fromPrims: fromPrims, +    inferEmpty: inferEmpty, +    insideOut: insideOut, +    primBool: primBool, +    primNull: primNull, +    primNum: primNum, +    primStr: primStr, +    primToJson: primToJson, +    print: print, +    runJsonPrim: runJsonPrim, +    toPrims: toPrims, +    eqJCursor: eqJCursor, +    ordJCursor: ordJCursor, +    showJCursor: showJCursor, +    semigroupJCursor: semigroupJCursor, +    monoidJCursor: monoidJCursor, +    encodeJsonJCursor: encodeJsonJCursor, +    showJsonPrim: showJsonPrim, +    decodeJsonJCursor: decodeJsonJCursor+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Semigroupoid":93,"../Data.Argonaut.Core":103,"../Data.Argonaut.Decode":106,"../Data.Argonaut.Decode.Class":104,"../Data.Argonaut.Encode":109,"../Data.Argonaut.Encode.Class":107,"../Data.Array":120,"../Data.Either":138,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Int":167,"../Data.List":200,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.StrMap":245,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Prelude":278}],111:[function(require,module,exports){+"use strict";++exports._jsonParser = function (fail, succ, s) {+  try {+    return succ(JSON.parse(s));+  }+  catch (e) {+    return fail(e.message);+  }+};++},{}],112:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Either = require("../Data.Either");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var jsonParser = function (j) {+    return $foreign._jsonParser(Data_Either.Left.create, Data_Either.Right.create, j);+};+module.exports = {+    jsonParser: jsonParser+};++},{"../Data.Argonaut.Core":103,"../Data.Either":138,"../Data.Function.Uncurried":150,"./foreign":111}],113:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Lens = require("../Data.Lens");+var Data_Lens_Prism = require("../Data.Lens.Prism");+var _String = function (dictChoice) {+    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromString)(Data_Argonaut_Core.toString)(dictChoice);+};+var _Object = function (dictChoice) {+    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromObject)(Data_Argonaut_Core.toObject)(dictChoice);+};+var _Number = function (dictChoice) {+    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromNumber)(Data_Argonaut_Core.toNumber)(dictChoice);+};+var _Null = function (dictChoice) {+    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromNull)(Data_Argonaut_Core.toNull)(dictChoice);+};+var _Boolean = function (dictChoice) {+    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromBoolean)(Data_Argonaut_Core.toBoolean)(dictChoice);+};+var _Array = function (dictChoice) {+    return Data_Lens_Prism["prism'"](Data_Argonaut_Core.fromArray)(Data_Argonaut_Core.toArray)(dictChoice);+};+module.exports = {+    _Array: _Array, +    _Boolean: _Boolean, +    _Null: _Null, +    _Number: _Number, +    _Object: _Object, +    _String: _String+};++},{"../Data.Argonaut.Core":103,"../Data.Lens":195,"../Data.Lens.Prism":191}],114:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Lens = require("../Data.Lens");+var Data_Lens_Fold = require("../Data.Lens.Fold");+var Prelude = require("../Prelude");+var _JsonString = function (dictWander) {+    return function ($6) {+        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isString)($6));+    };+};+var _JsonObject = function (dictWander) {+    return function ($7) {+        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isObject)($7));+    };+};+var _JsonNumber = function (dictWander) {+    return function ($8) {+        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isNumber)($8));+    };+};+var _JsonNull = function (dictWander) {+    return function ($9) {+        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isNull)($9));+    };+};+var _JsonBoolean = function (dictWander) {+    return function ($10) {+        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isBoolean)($10));+    };+};+var _JsonArray = function (dictWander) {+    return function ($11) {+        return Control_Category.id(Control_Category.categoryFn)(Data_Lens_Fold.filtered(dictWander.Choice1())(Data_Argonaut_Core.isArray)($11));+    };+};+module.exports = {+    _JsonArray: _JsonArray, +    _JsonBoolean: _JsonBoolean, +    _JsonNull: _JsonNull, +    _JsonNumber: _JsonNumber, +    _JsonObject: _JsonObject, +    _JsonString: _JsonString+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Argonaut.Core":103,"../Data.Lens":195,"../Data.Lens.Fold":171,"../Prelude":278}],115:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");+var Data_Argonaut_Encode = require("../Data.Argonaut.Encode");+var Data_Argonaut_JCursor = require("../Data.Argonaut.JCursor");+var Data_Argonaut_Parser = require("../Data.Argonaut.Parser");+var Data_Argonaut_Prisms = require("../Data.Argonaut.Prisms");+var Data_Argonaut_Traversals = require("../Data.Argonaut.Traversals");+module.exports = {};++},{"../Data.Argonaut.Core":103,"../Data.Argonaut.Decode":106,"../Data.Argonaut.Encode":109,"../Data.Argonaut.JCursor":110,"../Data.Argonaut.Parser":112,"../Data.Argonaut.Prisms":113,"../Data.Argonaut.Traversals":114}],116:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_ST = require("../Control.Monad.ST");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Array_ST = require("../Data.Array.ST");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Semiring = require("../Data.Semiring");+var Prelude = require("../Prelude");+var Iterator = (function () {+    function Iterator(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Iterator.create = function (value0) {+        return function (value1) {+            return new Iterator(value0, value1);+        };+    };+    return Iterator;+})();+var peek = function (v) {+    return function __do() {+        var v1 = Control_Monad_ST.readSTRef(v.value1)();+        return v.value0(v1);+    };+};+var next = function (v) {+    return function __do() {+        var v1 = Control_Monad_ST.readSTRef(v.value1)();+        var v2 = Control_Monad_ST.modifySTRef(v.value1)(function (v2) {+            return v2 + 1 | 0;+        })();+        return v.value0(v1);+    };+};+var pushWhile = function (p) {+    return function (iter) {+        return function (array) {+            return function __do() {+                var v = Control_Monad_ST.newSTRef(false)();+                while (Data_Functor.map(Control_Monad_Eff.functorEff)(Data_HeytingAlgebra.not(Data_HeytingAlgebra.heytingAlgebraBoolean))(Control_Monad_ST.readSTRef(v))()) {+                    (function __do() {+                        var v1 = peek(iter)();+                        if (v1 instanceof Data_Maybe.Just && p(v1.value0)) {+                            var v2 = Data_Array_ST.pushSTArray(array)(v1.value0)();+                            return Data_Functor["void"](Control_Monad_Eff.functorEff)(next(iter))();+                        };+                        return Data_Functor["void"](Control_Monad_Eff.functorEff)(Control_Monad_ST.writeSTRef(v)(true))();+                    })();+                };+                return {};+            };+        };+    };+};+var pushAll = pushWhile(Data_Function["const"](true));+var iterator = function (f) {+    return Data_Functor.map(Control_Monad_Eff.functorEff)(Iterator.create(f))(Control_Monad_ST.newSTRef(0));+};+var iterate = function (iter) {+    return function (f) {+        return function __do() {+            var v = Control_Monad_ST.newSTRef(false)();+            while (Data_Functor.map(Control_Monad_Eff.functorEff)(Data_HeytingAlgebra.not(Data_HeytingAlgebra.heytingAlgebraBoolean))(Control_Monad_ST.readSTRef(v))()) {+                (function __do() {+                    var v1 = next(iter)();+                    if (v1 instanceof Data_Maybe.Just) {+                        return f(v1.value0)();+                    };+                    if (v1 instanceof Data_Maybe.Nothing) {+                        return Data_Functor["void"](Control_Monad_Eff.functorEff)(Control_Monad_ST.writeSTRef(v)(true))();+                    };+                    throw new Error("Failed pattern match at Data.Array.ST.Iterator line 39, column 5 - line 41, column 46: " + [ v1.constructor.name ]);+                })();+            };+            return {};+        };+    };+};+var exhausted = function ($27) {+    return Data_Functor.map(Control_Monad_Eff.functorEff)(Data_Maybe.isNothing)(peek($27));+};+module.exports = {+    exhausted: exhausted, +    iterate: iterate, +    iterator: iterator, +    next: next, +    peek: peek, +    pushAll: pushAll, +    pushWhile: pushWhile+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Eff":71,"../Control.Monad.ST":80,"../Control.Semigroupoid":93,"../Data.Array.ST":118,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Semiring":239,"../Prelude":278}],117:[function(require,module,exports){+"use strict";++exports.runSTArray = function (f) {+  return f;+};++exports.emptySTArray = function () {+  return [];+};++exports.peekSTArrayImpl = function (just) {+  return function (nothing) {+    return function (xs) {+      return function (i) {+        return function () {+          return i >= 0 && i < xs.length ? just(xs[i]) : nothing;+        };+      };+    };+  };+};++exports.pokeSTArray = function (xs) {+  return function (i) {+    return function (a) {+      return function () {+        var ret = i >= 0 && i < xs.length;+        if (ret) xs[i] = a;+        return ret;+      };+    };+  };+};++exports.pushAllSTArray = function (xs) {+  return function (as) {+    return function () {+      return xs.push.apply(xs, as);+    };+  };+};++exports.spliceSTArray = function (xs) {+  return function (i) {+    return function (howMany) {+      return function (bs) {+        return function () {+          return xs.splice.apply(xs, [i, howMany].concat(bs));+        };+      };+    };+  };+};++exports.copyImpl = function (xs) {+  return function () {+    return xs.slice();+  };+};++exports.toAssocArray = function (xs) {+  return function () {+    var n = xs.length;+    var as = new Array(n);+    for (var i = 0; i < n; i++) as[i] = { value: xs[i], index: i };+    return as;+  };+};++},{}],118:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_ST = require("../Control.Monad.ST");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Maybe = require("../Data.Maybe");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var unsafeFreeze = function ($7) {+    return Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(Unsafe_Coerce.unsafeCoerce($7));+};+var thaw = $foreign.copyImpl;+var withArray = function (f) {+    return function (xs) {+        return function __do() {+            var v = thaw(xs)();+            var v1 = f(v)();+            return unsafeFreeze(v)();+        };+    };+};+var pushSTArray = function (arr) {+    return function (a) {+        return $foreign.pushAllSTArray(arr)([ a ]);+    };+};+var peekSTArray = $foreign.peekSTArrayImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var modifySTArray = function (xs) {+    return function (i) {+        return function (f) {+            return function __do() {+                var v = peekSTArray(xs)(i)();+                if (v instanceof Data_Maybe.Just) {+                    return $foreign.pokeSTArray(xs)(i)(f(v.value0))();+                };+                if (v instanceof Data_Maybe.Nothing) {+                    return false;+                };+                throw new Error("Failed pattern match at Data.Array.ST line 120, column 3 - line 122, column 26: " + [ v.constructor.name ]);+            };+        };+    };+};+var freeze = $foreign.copyImpl;+module.exports = {+    freeze: freeze, +    modifySTArray: modifySTArray, +    peekSTArray: peekSTArray, +    pushSTArray: pushSTArray, +    thaw: thaw, +    unsafeFreeze: unsafeFreeze, +    withArray: withArray, +    emptySTArray: $foreign.emptySTArray, +    pokeSTArray: $foreign.pokeSTArray, +    pushAllSTArray: $foreign.pushAllSTArray, +    runSTArray: $foreign.runSTArray, +    spliceSTArray: $foreign.spliceSTArray, +    toAssocArray: $foreign.toAssocArray+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Eff":71,"../Control.Monad.ST":80,"../Control.Semigroupoid":93,"../Data.Maybe":204,"../Prelude":278,"../Unsafe.Coerce":282,"./foreign":117}],119:[function(require,module,exports){+"use strict";++//------------------------------------------------------------------------------+// Array creation --------------------------------------------------------------+//------------------------------------------------------------------------------++exports.range = function (start) {+  return function (end) {+    var step = start > end ? -1 : 1;+    var result = [];+    var i = start, n = 0;+    while (i !== end) {+      result[n++] = i;+      i += step;+    }+    result[n] = i;+    return result;+  };+};++var replicate = function (count) {+  return function (value) {+    if (count < 1) {+      return [];+    }+    var result = new Array(count);+    return result.fill(value);+  };+};++var replicatePolyfill = function (count) {+  return function (value) {+    var result = [];+    var n = 0;+    for (var i = 0; i < count; i++) {+      result[n++] = value;+    }+    return result;+  };+};++// In browsers that have Array.prototype.fill we use it, as it's faster.+exports.replicate = typeof Array.prototype.fill === "function" ?+    replicate :+    replicatePolyfill;++exports.fromFoldableImpl = (function () {+  // jshint maxparams: 2+  function Cons(head, tail) {+    this.head = head;+    this.tail = tail;+  }+  var emptyList = {};++  function curryCons(head) {+    return function (tail) {+      return new Cons(head, tail);+    };+  }++  function listToArray(list) {+    var result = [];+    var count = 0;+    var xs = list;+    while (xs !== emptyList) {+      result[count++] = xs.head;+      xs = xs.tail;+    }+    return result;+  }++  return function (foldr) {+    return function (xs) {+      return listToArray(foldr(curryCons)(emptyList)(xs));+    };+  };+})();++//------------------------------------------------------------------------------+// Array size ------------------------------------------------------------------+//------------------------------------------------------------------------------++exports.length = function (xs) {+  return xs.length;+};++//------------------------------------------------------------------------------+// Extending arrays ------------------------------------------------------------+//------------------------------------------------------------------------------++exports.cons = function (e) {+  return function (l) {+    return [e].concat(l);+  };+};++exports.snoc = function (l) {+  return function (e) {+    var l1 = l.slice();+    l1.push(e);+    return l1;+  };+};++//------------------------------------------------------------------------------+// Non-indexed reads -----------------------------------------------------------+//------------------------------------------------------------------------------++exports["uncons'"] = function (empty) {+  return function (next) {+    return function (xs) {+      return xs.length === 0 ? empty({}) : next(xs[0])(xs.slice(1));+    };+  };+};++//------------------------------------------------------------------------------+// Indexed operations ----------------------------------------------------------+//------------------------------------------------------------------------------++exports.indexImpl = function (just) {+  return function (nothing) {+    return function (xs) {+      return function (i) {+        return i < 0 || i >= xs.length ? nothing :  just(xs[i]);+      };+    };+  };+};++exports.findIndexImpl = function (just) {+  return function (nothing) {+    return function (f) {+      return function (xs) {+        for (var i = 0, l = xs.length; i < l; i++) {+          if (f(xs[i])) return just(i);+        }+        return nothing;+      };+    };+  };+};++exports.findLastIndexImpl = function (just) {+  return function (nothing) {+    return function (f) {+      return function (xs) {+        for (var i = xs.length - 1; i >= 0; i--) {+          if (f(xs[i])) return just(i);+        }+        return nothing;+      };+    };+  };+};++exports._insertAt = function (just) {+  return function (nothing) {+    return function (i) {+      return function (a) {+        return function (l) {+          if (i < 0 || i > l.length) return nothing;+          var l1 = l.slice();+          l1.splice(i, 0, a);+          return just(l1);+        };+      };+    };+  };+};++exports._deleteAt = function (just) {+  return function (nothing) {+    return function (i) {+      return function (l) {+        if (i < 0 || i >= l.length) return nothing;+        var l1 = l.slice();+        l1.splice(i, 1);+        return just(l1);+      };+    };+  };+};++exports._updateAt = function (just) {+  return function (nothing) {+    return function (i) {+      return function (a) {+        return function (l) {+          if (i < 0 || i >= l.length) return nothing;+          var l1 = l.slice();+          l1[i] = a;+          return just(l1);+        };+      };+    };+  };+};++//------------------------------------------------------------------------------+// Transformations -------------------------------------------------------------+//------------------------------------------------------------------------------++exports.reverse = function (l) {+  return l.slice().reverse();+};++exports.concat = function (xss) {+  if (xss.length <= 10000) {+    // This method is faster, but it crashes on big arrays.+    // So we use it when can and fallback to simple variant otherwise.+    return Array.prototype.concat.apply([], xss);+  }++  var result = [];+  for (var i = 0, l = xss.length; i < l; i++) {+    var xs = xss[i];+    for (var j = 0, m = xs.length; j < m; j++) {+      result.push(xs[j]);+    }+  }+  return result;+};++exports.filter = function (f) {+  return function (xs) {+    return xs.filter(f);+  };+};++exports.partition = function (f) {+  return function (xs) {+    var yes = [];+    var no  = [];+    for (var i = 0; i < xs.length; i++) {+      var x = xs[i];+      if (f(x))+        yes.push(x);+      else+        no.push(x);+    }+    return { yes: yes, no: no };+  };+};++//------------------------------------------------------------------------------+// Sorting ---------------------------------------------------------------------+//------------------------------------------------------------------------------++exports.sortImpl = function (f) {+  return function (l) {+    // jshint maxparams: 2+    return l.slice().sort(function (x, y) {+      return f(x)(y);+    });+  };+};++//------------------------------------------------------------------------------+// Subarrays -------------------------------------------------------------------+//------------------------------------------------------------------------------++exports.slice = function (s) {+  return function (e) {+    return function (l) {+      return l.slice(s, e);+    };+  };+};++exports.take = function (n) {+  return function (l) {+    return n < 1 ? [] : l.slice(0, n);+  };+};++exports.drop = function (n) {+  return function (l) {+    return n < 1 ? l : l.slice(n);+  };+};++//------------------------------------------------------------------------------+// Zipping ---------------------------------------------------------------------+//------------------------------------------------------------------------------++exports.zipWith = function (f) {+  return function (xs) {+    return function (ys) {+      var l = xs.length < ys.length ? xs.length : ys.length;+      var result = new Array(l);+      for (var i = 0; i < l; i++) {+        result[i] = f(xs[i])(ys[i]);+      }+      return result;+    };+  };+};++//------------------------------------------------------------------------------+// Partial ---------------------------------------------------------------------+//------------------------------------------------------------------------------++exports.unsafeIndexImpl = function (xs) {+  return function (n) {+    return xs[n];+  };+};++},{}],120:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Monad_ST = require("../Control.Monad.ST");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Array_ST = require("../Data.Array.ST");+var Data_Array_ST_Iterator = require("../Data.Array.ST.Iterator");+var Data_Boolean = require("../Data.Boolean");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var zipWithA = function (dictApplicative) {+    return function (f) {+        return function (xs) {+            return function (ys) {+                return Data_Traversable.sequence(Data_Traversable.traversableArray)(dictApplicative)($foreign.zipWith(f)(xs)(ys));+            };+        };+    };+};+var zip = $foreign.zipWith(Data_Tuple.Tuple.create);+var updateAtIndices = function (dictFoldable) {+    return function (us) {+        return function (xs) {+            return Control_Monad_ST.pureST(Data_Array_ST.withArray(function (res) {+                return Data_Foldable.traverse_(Control_Monad_Eff.applicativeEff)(dictFoldable)(Data_Tuple.uncurry(Data_Array_ST.pokeSTArray(res)))(us);+            })(xs));+        };+    };+};+var updateAt = $foreign._updateAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var unsafeIndex = function (dictPartial) {+    return $foreign.unsafeIndexImpl;+};+var uncons = $foreign["uncons'"](Data_Function["const"](Data_Maybe.Nothing.value))(function (x) {+    return function (xs) {+        return new Data_Maybe.Just({+            head: x, +            tail: xs+        });+    };+});+var toUnfoldable = function (dictUnfoldable) {+    return function (xs) {+        var len = $foreign.length(xs);+        var f = function (i) {+            if (i < len) {+                return new Data_Maybe.Just(new Data_Tuple.Tuple(unsafeIndex()(xs)(i), i + 1 | 0));+            };+            if (Data_Boolean.otherwise) {+                return Data_Maybe.Nothing.value;+            };+            throw new Error("Failed pattern match at Data.Array line 134, column 19 - line 139, column 26: " + [ i.constructor.name ]);+        };+        return Data_Unfoldable.unfoldr(dictUnfoldable)(f)(0);+    };+};+var tail = $foreign["uncons'"](Data_Function["const"](Data_Maybe.Nothing.value))(function (v) {+    return function (xs) {+        return new Data_Maybe.Just(xs);+    };+});+var sortBy = function (comp) {+    return function (xs) {+        var comp$prime = function (x) {+            return function (y) {+                var v = comp(x)(y);+                if (v instanceof Data_Ordering.GT) {+                    return 1;+                };+                if (v instanceof Data_Ordering.EQ) {+                    return 0;+                };+                if (v instanceof Data_Ordering.LT) {+                    return -1 | 0;+                };+                throw new Error("Failed pattern match at Data.Array line 475, column 15 - line 480, column 1: " + [ v.constructor.name ]);+            };+        };+        return $foreign.sortImpl(comp$prime)(xs);+    };+};+var sortWith = function (dictOrd) {+    return function (f) {+        return sortBy(Data_Ord.comparing(dictOrd)(f));+    };+};+var sort = function (dictOrd) {+    return function (xs) {+        return sortBy(Data_Ord.compare(dictOrd))(xs);+    };+};+var singleton = function (a) {+    return [ a ];+};+var $$null = function (xs) {+    return $foreign.length(xs) === 0;+};+var nubBy = function (eq) {+    return function (xs) {+        var v = uncons(xs);+        if (v instanceof Data_Maybe.Just) {+            return $foreign.cons(v.value0.head)(nubBy(eq)($foreign.filter(function (y) {+                return !eq(v.value0.head)(y);+            })(v.value0.tail)));+        };+        if (v instanceof Data_Maybe.Nothing) {+            return [  ];+        };+        throw new Error("Failed pattern match at Data.Array line 583, column 3 - line 585, column 18: " + [ v.constructor.name ]);+    };+};+var nub = function (dictEq) {+    return nubBy(Data_Eq.eq(dictEq));+};+var modifyAtIndices = function (dictFoldable) {+    return function (is) {+        return function (f) {+            return function (xs) {+                return Control_Monad_ST.pureST(Data_Array_ST.withArray(function (res) {+                    return Data_Foldable.traverse_(Control_Monad_Eff.applicativeEff)(dictFoldable)(function (i) {+                        return Data_Array_ST.modifySTArray(res)(i)(f);+                    })(is);+                })(xs));+            };+        };+    };+};+var mapWithIndex = function (f) {+    return function (xs) {+        return $foreign.zipWith(f)($foreign.range(0)($foreign.length(xs) - 1 | 0))(xs);+    };+};+var some = function (dictAlternative) {+    return function (dictLazy) {+        return function (v) {+            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())($foreign.cons)(v))(Control_Lazy.defer(dictLazy)(function (v1) {+                return many(dictAlternative)(dictLazy)(v);+            }));+        };+    };+};+var many = function (dictAlternative) {+    return function (dictLazy) {+        return function (v) {+            return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(some(dictAlternative)(dictLazy)(v))(Control_Applicative.pure(dictAlternative.Applicative0())([  ]));+        };+    };+};+var insertAt = $foreign._insertAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var init = function (xs) {+    if ($$null(xs)) {+        return Data_Maybe.Nothing.value;+    };+    if (Data_Boolean.otherwise) {+        return new Data_Maybe.Just($foreign.slice(0)($foreign.length(xs) - 1 | 0)(xs));+    };+    throw new Error("Failed pattern match at Data.Array line 250, column 1 - line 252, column 55: " + [ xs.constructor.name ]);+};+var index = $foreign.indexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var last = function (xs) {+    return index(xs)($foreign.length(xs) - 1 | 0);+};+var unsnoc = function (xs) {+    return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {+        return function (v1) {+            return {+                init: v, +                last: v1+            };+        };+    })(init(xs)))(last(xs));+};+var modifyAt = function (i) {+    return function (f) {+        return function (xs) {+            var go = function (x) {+                return updateAt(i)(f(x))(xs);+            };+            return Data_Maybe.maybe(Data_Maybe.Nothing.value)(go)(index(xs)(i));+        };+    };+};+var span = function (p) {+    return function (arr) {+        var go = function (__copy_i) {+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(i) {+                var v = index(arr)(i);+                if (v instanceof Data_Maybe.Just) {+                    var $64 = p(v.value0);+                    if ($64) {+                        __copy_i = i + 1 | 0;+                        return;+                    };+                    __tco_done = true;+                    return new Data_Maybe.Just(i);+                };+                if (v instanceof Data_Maybe.Nothing) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                throw new Error("Failed pattern match at Data.Array line 541, column 5 - line 543, column 25: " + [ v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__copy_i);+            };+            return __tco_result;+        };+        var breakIndex = go(0);+        if (breakIndex instanceof Data_Maybe.Just && breakIndex.value0 === 0) {+            return {+                init: [  ], +                rest: arr+            };+        };+        if (breakIndex instanceof Data_Maybe.Just) {+            return {+                init: $foreign.slice(0)(breakIndex.value0)(arr), +                rest: $foreign.slice(breakIndex.value0)($foreign.length(arr))(arr)+            };+        };+        if (breakIndex instanceof Data_Maybe.Nothing) {+            return {+                init: arr, +                rest: [  ]+            };+        };+        throw new Error("Failed pattern match at Data.Array line 528, column 3 - line 534, column 30: " + [ breakIndex.constructor.name ]);+    };+};+var takeWhile = function (p) {+    return function (xs) {+        return (span(p)(xs)).init;+    };+};+var unzip = function (xs) {+    return Control_Monad_ST.pureST(function __do() {+        var v = Data_Array_ST.emptySTArray();+        var v1 = Data_Array_ST.emptySTArray();+        var v2 = Data_Array_ST_Iterator.iterator(function (v2) {+            return index(xs)(v2);+        })();+        Data_Array_ST_Iterator.iterate(v2)(function (v3) {+            return function __do() {+                Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_Array_ST.pushSTArray(v)(v3.value0))();+                return Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_Array_ST.pushSTArray(v1)(v3.value1))();+            };+        })();+        var v3 = Data_Array_ST.unsafeFreeze(v)();+        var v4 = Data_Array_ST.unsafeFreeze(v1)();+        return new Data_Tuple.Tuple(v3, v4);+    });+};+var head = function (xs) {+    return index(xs)(0);+};+var groupBy = function (op) {+    return function (xs) {+        return Control_Monad_ST.pureST(function __do() {+            var v = Data_Array_ST.emptySTArray();+            var v1 = Data_Array_ST_Iterator.iterator(function (v1) {+                return index(xs)(v1);+            })();+            Data_Array_ST_Iterator.iterate(v1)(function (x) {+                return Data_Functor["void"](Control_Monad_Eff.functorEff)(function __do() {+                    var v2 = Data_Array_ST.emptySTArray();+                    Data_Array_ST_Iterator.pushWhile(op(x))(v1)(v2)();+                    var v3 = Data_Array_ST.unsafeFreeze(v2)();+                    return Data_Array_ST.pushSTArray(v)(new Data_NonEmpty.NonEmpty(x, v3))();+                });+            })();+            return Data_Array_ST.unsafeFreeze(v)();+        });+    };+};+var group = function (dictEq) {+    return function (xs) {+        return groupBy(Data_Eq.eq(dictEq))(xs);+    };+};+var group$prime = function (dictOrd) {+    return function ($93) {+        return group(dictOrd.Eq0())(sort(dictOrd)($93));+    };+};+var fromFoldable = function (dictFoldable) {+    return $foreign.fromFoldableImpl(Data_Foldable.foldr(dictFoldable));+};+var foldRecM = function (dictMonadRec) {+    return function (f) {+        return function (a) {+            return function (array) {+                var go = function (res) {+                    return function (i) {+                        if (i >= $foreign.length(array)) {+                            return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())(new Control_Monad_Rec_Class.Done(res));+                        };+                        if (Data_Boolean.otherwise) {+                            return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())(f(res)(unsafeIndex()(array)(i)))(function (v) {+                                return Control_Applicative.pure((dictMonadRec.Monad0()).Applicative0())(new Control_Monad_Rec_Class.Loop({+                                    a: v, +                                    b: i + 1 | 0+                                }));+                            });+                        };+                        throw new Error("Failed pattern match at Data.Array line 693, column 3 - line 697, column 42: " + [ res.constructor.name, i.constructor.name ]);+                    };+                };+                return Control_Monad_Rec_Class.tailRecM2(dictMonadRec)(go)(a)(0);+            };+        };+    };+};+var foldM = function (dictMonad) {+    return function (f) {+        return function (a) {+            return $foreign["uncons'"](function (v) {+                return Control_Applicative.pure(dictMonad.Applicative0())(a);+            })(function (b) {+                return function (bs) {+                    return Control_Bind.bind(dictMonad.Bind1())(f(a)(b))(function (a$prime) {+                        return foldM(dictMonad)(f)(a$prime)(bs);+                    });+                };+            });+        };+    };+};+var findLastIndex = $foreign.findLastIndexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var insertBy = function (cmp) {+    return function (x) {+        return function (ys) {+            var i = Data_Maybe.maybe(0)(function (v) {+                return v + 1 | 0;+            })(findLastIndex(function (y) {+                return Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(x)(y))(Data_Ordering.GT.value);+            })(ys));+            return Data_Maybe.fromJust()(insertAt(i)(x)(ys));+        };+    };+};+var insert = function (dictOrd) {+    return insertBy(Data_Ord.compare(dictOrd));+};+var findIndex = $foreign.findIndexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var intersectBy = function (eq) {+    return function (xs) {+        return function (ys) {+            return $foreign.filter(function (x) {+                return Data_Maybe.isJust(findIndex(eq(x))(ys));+            })(xs);+        };+    };+};+var intersect = function (dictEq) {+    return intersectBy(Data_Eq.eq(dictEq));+};+var elemLastIndex = function (dictEq) {+    return function (x) {+        return findLastIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var elemIndex = function (dictEq) {+    return function (x) {+        return findIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var dropWhile = function (p) {+    return function (xs) {+        return (span(p)(xs)).rest;+    };+};+var deleteAt = $foreign._deleteAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var deleteBy = function (v) {+    return function (v1) {+        return function (v2) {+            if (v2.length === 0) {+                return [  ];+            };+            return Data_Maybe.maybe(v2)(function (i) {+                return Data_Maybe.fromJust()(deleteAt(i)(v2));+            })(findIndex(v(v1))(v2));+        };+    };+};+var unionBy = function (eq) {+    return function (xs) {+        return function (ys) {+            return Data_Semigroup.append(Data_Semigroup.semigroupArray)(xs)(Data_Foldable.foldl(Data_Foldable.foldableArray)(Data_Function.flip(deleteBy(eq)))(nubBy(eq)(ys))(xs));+        };+    };+};+var union = function (dictEq) {+    return unionBy(Data_Eq.eq(dictEq));+};+var $$delete = function (dictEq) {+    return deleteBy(Data_Eq.eq(dictEq));+};+var difference = function (dictEq) {+    return Data_Foldable.foldr(Data_Foldable.foldableArray)($$delete(dictEq));+};+var concatMap = Data_Function.flip(Control_Bind.bind(Control_Bind.bindArray));+var mapMaybe = function (f) {+    return concatMap(function ($94) {+        return Data_Maybe.maybe([  ])(singleton)(f($94));+    });+};+var filterA = function (dictApplicative) {+    return function (p) {+        return function ($95) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(mapMaybe(function (v) {+                if (v.value1) {+                    return new Data_Maybe.Just(v.value0);+                };+                return Data_Maybe.Nothing.value;+            }))(Data_Traversable.traverse(Data_Traversable.traversableArray)(dictApplicative)(function (x) {+                return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Tuple.Tuple.create(x))(p(x));+            })($95));+        };+    };+};+var catMaybes = mapMaybe(Control_Category.id(Control_Category.categoryFn));+var alterAt = function (i) {+    return function (f) {+        return function (xs) {+            var go = function (x) {+                var v = f(x);+                if (v instanceof Data_Maybe.Nothing) {+                    return deleteAt(i)(xs);+                };+                if (v instanceof Data_Maybe.Just) {+                    return updateAt(i)(v.value0)(xs);+                };+                throw new Error("Failed pattern match at Data.Array line 390, column 10 - line 392, column 32: " + [ v.constructor.name ]);+            };+            return Data_Maybe.maybe(Data_Maybe.Nothing.value)(go)(index(xs)(i));+        };+    };+};+module.exports = {+    alterAt: alterAt, +    catMaybes: catMaybes, +    concatMap: concatMap, +    "delete": $$delete, +    deleteAt: deleteAt, +    deleteBy: deleteBy, +    difference: difference, +    dropWhile: dropWhile, +    elemIndex: elemIndex, +    elemLastIndex: elemLastIndex, +    filterA: filterA, +    findIndex: findIndex, +    findLastIndex: findLastIndex, +    foldM: foldM, +    foldRecM: foldRecM, +    fromFoldable: fromFoldable, +    group: group, +    "group'": group$prime, +    groupBy: groupBy, +    head: head, +    index: index, +    init: init, +    insert: insert, +    insertAt: insertAt, +    insertBy: insertBy, +    intersect: intersect, +    intersectBy: intersectBy, +    last: last, +    many: many, +    mapMaybe: mapMaybe, +    mapWithIndex: mapWithIndex, +    modifyAt: modifyAt, +    modifyAtIndices: modifyAtIndices, +    nub: nub, +    nubBy: nubBy, +    "null": $$null, +    singleton: singleton, +    some: some, +    sort: sort, +    sortBy: sortBy, +    sortWith: sortWith, +    span: span, +    tail: tail, +    takeWhile: takeWhile, +    toUnfoldable: toUnfoldable, +    uncons: uncons, +    union: union, +    unionBy: unionBy, +    unsafeIndex: unsafeIndex, +    unsnoc: unsnoc, +    unzip: unzip, +    updateAt: updateAt, +    updateAtIndices: updateAtIndices, +    zip: zip, +    zipWithA: zipWithA, +    concat: $foreign.concat, +    cons: $foreign.cons, +    drop: $foreign.drop, +    filter: $foreign.filter, +    length: $foreign.length, +    partition: $foreign.partition, +    range: $foreign.range, +    replicate: $foreign.replicate, +    reverse: $foreign.reverse, +    slice: $foreign.slice, +    snoc: $foreign.snoc, +    take: $foreign.take, +    zipWith: $foreign.zipWith+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Lazy":51,"../Control.Monad.Eff":71,"../Control.Monad.Rec.Class":78,"../Control.Monad.ST":80,"../Control.Semigroupoid":93,"../Data.Array.ST":118,"../Data.Array.ST.Iterator":116,"../Data.Boolean":130,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Partial.Unsafe":275,"../Prelude":278,"./foreign":119}],121:[function(require,module,exports){+arguments[4][100][0].apply(exports,arguments)+},{"dup":100}],122:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Bifunctor_Clown = require("../Data.Bifunctor.Clown");+var Data_Bifunctor_Flip = require("../Data.Bifunctor.Flip");+var Data_Bifunctor_Joker = require("../Data.Bifunctor.Joker");+var Data_Bifunctor_Product = require("../Data.Bifunctor.Product");+var Data_Bifunctor_Wrap = require("../Data.Bifunctor.Wrap");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Monoid = require("../Data.Monoid");+var Data_Monoid_Conj = require("../Data.Monoid.Conj");+var Data_Monoid_Disj = require("../Data.Monoid.Disj");+var Data_Monoid_Dual = require("../Data.Monoid.Dual");+var Data_Monoid_Endo = require("../Data.Monoid.Endo");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Bifoldable = function (bifoldMap, bifoldl, bifoldr) {+    this.bifoldMap = bifoldMap;+    this.bifoldl = bifoldl;+    this.bifoldr = bifoldr;+};+var bifoldr = function (dict) {+    return dict.bifoldr;+};+var bitraverse_ = function (dictBifoldable) {+    return function (dictApplicative) {+        return function (f) {+            return function (g) {+                return bifoldr(dictBifoldable)(function ($97) {+                    return Control_Apply.applySecond(dictApplicative.Apply0())(f($97));+                })(function ($98) {+                    return Control_Apply.applySecond(dictApplicative.Apply0())(g($98));+                })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));+            };+        };+    };+};+var bifor_ = function (dictBifoldable) {+    return function (dictApplicative) {+        return function (t) {+            return function (f) {+                return function (g) {+                    return bitraverse_(dictBifoldable)(dictApplicative)(f)(g)(t);+                };+            };+        };+    };+};+var bisequence_ = function (dictBifoldable) {+    return function (dictApplicative) {+        return bitraverse_(dictBifoldable)(dictApplicative)(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn));+    };+};+var bifoldl = function (dict) {+    return dict.bifoldl;+};+var bifoldableJoker = function (dictFoldable) {+    return new Bifoldable(function (dictMonoid) {+        return function (v) {+            return function (r) {+                return function (v1) {+                    return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(r)(v1);+                };+            };+        };+    }, function (v) {+        return function (r) {+            return function (u) {+                return function (v1) {+                    return Data_Foldable.foldl(dictFoldable)(r)(u)(v1);+                };+            };+        };+    }, function (v) {+        return function (r) {+            return function (u) {+                return function (v1) {+                    return Data_Foldable.foldr(dictFoldable)(r)(u)(v1);+                };+            };+        };+    });+};+var bifoldableClown = function (dictFoldable) {+    return new Bifoldable(function (dictMonoid) {+        return function (l) {+            return function (v) {+                return function (v1) {+                    return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(l)(v1);+                };+            };+        };+    }, function (l) {+        return function (v) {+            return function (u) {+                return function (v1) {+                    return Data_Foldable.foldl(dictFoldable)(l)(u)(v1);+                };+            };+        };+    }, function (l) {+        return function (v) {+            return function (u) {+                return function (v1) {+                    return Data_Foldable.foldr(dictFoldable)(l)(u)(v1);+                };+            };+        };+    });+};+var bifoldMapDefaultR = function (dictBifoldable) {+    return function (dictMonoid) {+        return function (f) {+            return function (g) {+                return bifoldr(dictBifoldable)(function ($99) {+                    return Data_Semigroup.append(dictMonoid.Semigroup0())(f($99));+                })(function ($100) {+                    return Data_Semigroup.append(dictMonoid.Semigroup0())(g($100));+                })(Data_Monoid.mempty(dictMonoid));+            };+        };+    };+};+var bifoldMapDefaultL = function (dictBifoldable) {+    return function (dictMonoid) {+        return function (f) {+            return function (g) {+                return bifoldl(dictBifoldable)(function (m) {+                    return function (a) {+                        return Data_Semigroup.append(dictMonoid.Semigroup0())(m)(f(a));+                    };+                })(function (m) {+                    return function (b) {+                        return Data_Semigroup.append(dictMonoid.Semigroup0())(m)(g(b));+                    };+                })(Data_Monoid.mempty(dictMonoid));+            };+        };+    };+};+var bifoldMap = function (dict) {+    return dict.bifoldMap;+};+var bifoldableFlip = function (dictBifoldable) {+    return new Bifoldable(function (dictMonoid) {+        return function (r) {+            return function (l) {+                return function (v) {+                    return bifoldMap(dictBifoldable)(dictMonoid)(l)(r)(v);+                };+            };+        };+    }, function (r) {+        return function (l) {+            return function (u) {+                return function (v) {+                    return bifoldl(dictBifoldable)(l)(r)(u)(v);+                };+            };+        };+    }, function (r) {+        return function (l) {+            return function (u) {+                return function (v) {+                    return bifoldr(dictBifoldable)(l)(r)(u)(v);+                };+            };+        };+    });+};+var bifoldableWrap = function (dictBifoldable) {+    return new Bifoldable(function (dictMonoid) {+        return function (l) {+            return function (r) {+                return function (v) {+                    return bifoldMap(dictBifoldable)(dictMonoid)(l)(r)(v);+                };+            };+        };+    }, function (l) {+        return function (r) {+            return function (u) {+                return function (v) {+                    return bifoldl(dictBifoldable)(l)(r)(u)(v);+                };+            };+        };+    }, function (l) {+        return function (r) {+            return function (u) {+                return function (v) {+                    return bifoldr(dictBifoldable)(l)(r)(u)(v);+                };+            };+        };+    });+};+var bifoldlDefault = function (dictBifoldable) {+    return function (f) {+        return function (g) {+            return function (z) {+                return function (p) {+                    return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(bifoldMap(dictBifoldable)(Data_Monoid_Dual.monoidDual(Data_Monoid_Endo.monoidEndo))(function ($101) {+                        return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(f)($101)));+                    })(function ($102) {+                        return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(g)($102)));+                    })(p)))(z);+                };+            };+        };+    };+};+var bifoldrDefault = function (dictBifoldable) {+    return function (f) {+        return function (g) {+            return function (z) {+                return function (p) {+                    return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(bifoldMap(dictBifoldable)(Data_Monoid_Endo.monoidEndo)(function ($103) {+                        return Data_Monoid_Endo.Endo(f($103));+                    })(function ($104) {+                        return Data_Monoid_Endo.Endo(g($104));+                    })(p))(z);+                };+            };+        };+    };+};+var bifoldableProduct = function (dictBifoldable) {+    return function (dictBifoldable1) {+        return new Bifoldable(function (dictMonoid) {+            return function (l) {+                return function (r) {+                    return function (v) {+                        return Data_Semigroup.append(dictMonoid.Semigroup0())(bifoldMap(dictBifoldable)(dictMonoid)(l)(r)(v.value0))(bifoldMap(dictBifoldable1)(dictMonoid)(l)(r)(v.value1));+                    };+                };+            };+        }, function (l) {+            return function (r) {+                return function (u) {+                    return function (m) {+                        return bifoldlDefault(bifoldableProduct(dictBifoldable)(dictBifoldable1))(l)(r)(u)(m);+                    };+                };+            };+        }, function (l) {+            return function (r) {+                return function (u) {+                    return function (m) {+                        return bifoldrDefault(bifoldableProduct(dictBifoldable)(dictBifoldable1))(l)(r)(u)(m);+                    };+                };+            };+        });+    };+};+var bifold = function (dictBifoldable) {+    return function (dictMonoid) {+        return bifoldMap(dictBifoldable)(dictMonoid)(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn));+    };+};+var biany = function (dictBifoldable) {+    return function (dictBooleanAlgebra) {+        return function (p) {+            return function (q) {+                return function ($105) {+                    return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(bifoldMap(dictBifoldable)(Data_Monoid_Disj.monoidDisj(dictBooleanAlgebra.HeytingAlgebra0()))(function ($106) {+                        return Data_Monoid_Disj.Disj(p($106));+                    })(function ($107) {+                        return Data_Monoid_Disj.Disj(q($107));+                    })($105));+                };+            };+        };+    };+};+var biall = function (dictBifoldable) {+    return function (dictBooleanAlgebra) {+        return function (p) {+            return function (q) {+                return function ($108) {+                    return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(bifoldMap(dictBifoldable)(Data_Monoid_Conj.monoidConj(dictBooleanAlgebra.HeytingAlgebra0()))(function ($109) {+                        return Data_Monoid_Conj.Conj(p($109));+                    })(function ($110) {+                        return Data_Monoid_Conj.Conj(q($110));+                    })($108));+                };+            };+        };+    };+};+module.exports = {+    Bifoldable: Bifoldable, +    biall: biall, +    biany: biany, +    bifold: bifold, +    bifoldMap: bifoldMap, +    bifoldMapDefaultL: bifoldMapDefaultL, +    bifoldMapDefaultR: bifoldMapDefaultR, +    bifoldl: bifoldl, +    bifoldlDefault: bifoldlDefault, +    bifoldr: bifoldr, +    bifoldrDefault: bifoldrDefault, +    bifor_: bifor_, +    bisequence_: bisequence_, +    bitraverse_: bitraverse_, +    bifoldableClown: bifoldableClown, +    bifoldableJoker: bifoldableJoker, +    bifoldableFlip: bifoldableFlip, +    bifoldableProduct: bifoldableProduct, +    bifoldableWrap: bifoldableWrap+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Bifunctor.Clown":123,"../Data.Bifunctor.Flip":124,"../Data.Bifunctor.Joker":125,"../Data.Bifunctor.Product":126,"../Data.Bifunctor.Wrap":127,"../Data.Foldable":145,"../Data.Function":151,"../Data.Monoid":213,"../Data.Monoid.Conj":208,"../Data.Monoid.Disj":209,"../Data.Monoid.Dual":210,"../Data.Monoid.Endo":211,"../Data.Newtype":215,"../Data.Semigroup":237,"../Data.Unit":259,"../Prelude":278}],123:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Biapplicative = require("../Control.Biapplicative");+var Control_Biapply = require("../Control.Biapply");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Clown = function (x) {+    return x;+};+var showClown = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Clown " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var ordClown = function (dictOrd) {+    return dictOrd;+};+var newtypeClown = new Data_Newtype.Newtype(function (n) {+    return n;+}, Clown);+var functorClown = new Data_Functor.Functor(function (v) {+    return function (v1) {+        return v1;+    };+});+var eqClown = function (dictEq) {+    return dictEq;+};+var bifunctorClown = function (dictFunctor) {+    return new Data_Bifunctor.Bifunctor(function (f) {+        return function (v) {+            return function (v1) {+                return Data_Functor.map(dictFunctor)(f)(v1);+            };+        };+    });+};+var biapplyClown = function (dictApply) {+    return new Control_Biapply.Biapply(function () {+        return bifunctorClown(dictApply.Functor0());+    }, function (v) {+        return function (v1) {+            return Control_Apply.apply(dictApply)(v)(v1);+        };+    });+};+var biapplicativeClown = function (dictApplicative) {+    return new Control_Biapplicative.Biapplicative(function () {+        return biapplyClown(dictApplicative.Apply0());+    }, function (a) {+        return function (v) {+            return Control_Applicative.pure(dictApplicative)(a);+        };+    });+};+module.exports = {+    Clown: Clown, +    newtypeClown: newtypeClown, +    eqClown: eqClown, +    ordClown: ordClown, +    showClown: showClown, +    functorClown: functorClown, +    bifunctorClown: bifunctorClown, +    biapplyClown: biapplyClown, +    biapplicativeClown: biapplicativeClown+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":128,"../Data.Eq":140,"../Data.Functor":157,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],124:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Biapplicative = require("../Control.Biapplicative");+var Control_Biapply = require("../Control.Biapply");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Flip = function (x) {+    return x;+};+var showFlip = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Flip " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var ordFlip = function (dictOrd) {+    return dictOrd;+};+var newtypeFlip = new Data_Newtype.Newtype(function (n) {+    return n;+}, Flip);+var functorFlip = function (dictBifunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return Data_Bifunctor.lmap(dictBifunctor)(f)(v);+        };+    });+};+var eqFlip = function (dictEq) {+    return dictEq;+};+var bifunctorFlip = function (dictBifunctor) {+    return new Data_Bifunctor.Bifunctor(function (f) {+        return function (g) {+            return function (v) {+                return Data_Bifunctor.bimap(dictBifunctor)(g)(f)(v);+            };+        };+    });+};+var biapplyFlip = function (dictBiapply) {+    return new Control_Biapply.Biapply(function () {+        return bifunctorFlip(dictBiapply.Bifunctor0());+    }, function (v) {+        return function (v1) {+            return Control_Biapply.biapply(dictBiapply)(v)(v1);+        };+    });+};+var biapplicativeFlip = function (dictBiapplicative) {+    return new Control_Biapplicative.Biapplicative(function () {+        return biapplyFlip(dictBiapplicative.Biapply0());+    }, function (a) {+        return function (b) {+            return Control_Biapplicative.bipure(dictBiapplicative)(b)(a);+        };+    });+};+module.exports = {+    Flip: Flip, +    newtypeFlip: newtypeFlip, +    eqFlip: eqFlip, +    ordFlip: ordFlip, +    showFlip: showFlip, +    functorFlip: functorFlip, +    bifunctorFlip: bifunctorFlip, +    biapplyFlip: biapplyFlip, +    biapplicativeFlip: biapplicativeFlip+};++},{"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":128,"../Data.Eq":140,"../Data.Functor":157,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],125:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Biapplicative = require("../Control.Biapplicative");+var Control_Biapply = require("../Control.Biapply");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Joker = function (x) {+    return x;+};+var showJoker = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Joker " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var ordJoker = function (dictOrd) {+    return dictOrd;+};+var newtypeJoker = new Data_Newtype.Newtype(function (n) {+    return n;+}, Joker);+var functorJoker = function (dictFunctor) {+    return new Data_Functor.Functor(function (g) {+        return function (v) {+            return Data_Functor.map(dictFunctor)(g)(v);+        };+    });+};+var eqJoker = function (dictEq) {+    return dictEq;+};+var bifunctorJoker = function (dictFunctor) {+    return new Data_Bifunctor.Bifunctor(function (v) {+        return function (g) {+            return function (v1) {+                return Data_Functor.map(dictFunctor)(g)(v1);+            };+        };+    });+};+var biapplyJoker = function (dictApply) {+    return new Control_Biapply.Biapply(function () {+        return bifunctorJoker(dictApply.Functor0());+    }, function (v) {+        return function (v1) {+            return Control_Apply.apply(dictApply)(v)(v1);+        };+    });+};+var biapplicativeJoker = function (dictApplicative) {+    return new Control_Biapplicative.Biapplicative(function () {+        return biapplyJoker(dictApplicative.Apply0());+    }, function (v) {+        return function (b) {+            return Control_Applicative.pure(dictApplicative)(b);+        };+    });+};+module.exports = {+    Joker: Joker, +    newtypeJoker: newtypeJoker, +    eqJoker: eqJoker, +    ordJoker: ordJoker, +    showJoker: showJoker, +    functorJoker: functorJoker, +    bifunctorJoker: bifunctorJoker, +    biapplyJoker: biapplyJoker, +    biapplicativeJoker: biapplicativeJoker+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":128,"../Data.Eq":140,"../Data.Functor":157,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],126:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Biapplicative = require("../Control.Biapplicative");+var Control_Biapply = require("../Control.Biapply");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Eq = require("../Data.Eq");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Product = (function () {+    function Product(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Product.create = function (value0) {+        return function (value1) {+            return new Product(value0, value1);+        };+    };+    return Product;+})();+var showProduct = function (dictShow) {+    return function (dictShow1) {+        return new Data_Show.Show(function (v) {+            return "(Product " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")")));+        });+    };+};+var eqProduct = function (dictEq) {+    return function (dictEq1) {+        return new Data_Eq.Eq(function (x) {+            return function (y) {+                return Data_Eq.eq(dictEq)(x.value0)(y.value0) && Data_Eq.eq(dictEq1)(x.value1)(y.value1);+            };+        });+    };+};+var ordProduct = function (dictOrd) {+    return function (dictOrd1) {+        return new Data_Ord.Ord(function () {+            return eqProduct(dictOrd.Eq0())(dictOrd1.Eq0());+        }, function (x) {+            return function (y) {+                var v = Data_Ord.compare(dictOrd)(x.value0)(y.value0);+                if (v instanceof Data_Ordering.LT) {+                    return Data_Ordering.LT.value;+                };+                if (v instanceof Data_Ordering.GT) {+                    return Data_Ordering.GT.value;+                };+                return Data_Ord.compare(dictOrd1)(x.value1)(y.value1);+            };+        });+    };+};+var bifunctorProduct = function (dictBifunctor) {+    return function (dictBifunctor1) {+        return new Data_Bifunctor.Bifunctor(function (f) {+            return function (g) {+                return function (v) {+                    return new Product(Data_Bifunctor.bimap(dictBifunctor)(f)(g)(v.value0), Data_Bifunctor.bimap(dictBifunctor1)(f)(g)(v.value1));+                };+            };+        });+    };+};+var biapplyProduct = function (dictBiapply) {+    return function (dictBiapply1) {+        return new Control_Biapply.Biapply(function () {+            return bifunctorProduct(dictBiapply.Bifunctor0())(dictBiapply1.Bifunctor0());+        }, function (v) {+            return function (v1) {+                return new Product(Control_Biapply.biapply(dictBiapply)(v.value0)(v1.value0), Control_Biapply.biapply(dictBiapply1)(v.value1)(v1.value1));+            };+        });+    };+};+var biapplicativeProduct = function (dictBiapplicative) {+    return function (dictBiapplicative1) {+        return new Control_Biapplicative.Biapplicative(function () {+            return biapplyProduct(dictBiapplicative.Biapply0())(dictBiapplicative1.Biapply0());+        }, function (a) {+            return function (b) {+                return new Product(Control_Biapplicative.bipure(dictBiapplicative)(a)(b), Control_Biapplicative.bipure(dictBiapplicative1)(a)(b));+            };+        });+    };+};+module.exports = {+    Product: Product, +    eqProduct: eqProduct, +    ordProduct: ordProduct, +    showProduct: showProduct, +    bifunctorProduct: bifunctorProduct, +    biapplyProduct: biapplyProduct, +    biapplicativeProduct: biapplicativeProduct+};++},{"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":128,"../Data.Eq":140,"../Data.HeytingAlgebra":162,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],127:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Biapplicative = require("../Control.Biapplicative");+var Control_Biapply = require("../Control.Biapply");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Wrap = function (x) {+    return x;+};+var showWrap = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Wrap " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var ordWrap = function (dictOrd) {+    return dictOrd;+};+var newtypeWrap = new Data_Newtype.Newtype(function (n) {+    return n;+}, Wrap);+var functorWrap = function (dictBifunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return Data_Bifunctor.rmap(dictBifunctor)(f)(v);+        };+    });+};+var eqWrap = function (dictEq) {+    return dictEq;+};+var bifunctorWrap = function (dictBifunctor) {+    return new Data_Bifunctor.Bifunctor(function (f) {+        return function (g) {+            return function (v) {+                return Data_Bifunctor.bimap(dictBifunctor)(f)(g)(v);+            };+        };+    });+};+var biapplyWrap = function (dictBiapply) {+    return new Control_Biapply.Biapply(function () {+        return bifunctorWrap(dictBiapply.Bifunctor0());+    }, function (v) {+        return function (v1) {+            return Control_Biapply.biapply(dictBiapply)(v)(v1);+        };+    });+};+var biapplicativeWrap = function (dictBiapplicative) {+    return new Control_Biapplicative.Biapplicative(function () {+        return biapplyWrap(dictBiapplicative.Biapply0());+    }, function (a) {+        return function (b) {+            return Control_Biapplicative.bipure(dictBiapplicative)(a)(b);+        };+    });+};+module.exports = {+    Wrap: Wrap, +    newtypeWrap: newtypeWrap, +    eqWrap: eqWrap, +    ordWrap: ordWrap, +    showWrap: showWrap, +    functorWrap: functorWrap, +    bifunctorWrap: bifunctorWrap, +    biapplyWrap: biapplyWrap, +    biapplicativeWrap: biapplicativeWrap+};++},{"../Control.Biapplicative":43,"../Control.Biapply":44,"../Data.Bifunctor":128,"../Data.Eq":140,"../Data.Functor":157,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],128:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Bifunctor = function (bimap) {+    this.bimap = bimap;+};+var bimap = function (dict) {+    return dict.bimap;+};+var lmap = function (dictBifunctor) {+    return function (f) {+        return bimap(dictBifunctor)(f)(Control_Category.id(Control_Category.categoryFn));+    };+};+var rmap = function (dictBifunctor) {+    return bimap(dictBifunctor)(Control_Category.id(Control_Category.categoryFn));+};+module.exports = {+    Bifunctor: Bifunctor, +    bimap: bimap, +    lmap: lmap, +    rmap: rmap+};++},{"../Control.Category":47}],129:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Data_Bifoldable = require("../Data.Bifoldable");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Bifunctor_Clown = require("../Data.Bifunctor.Clown");+var Data_Bifunctor_Flip = require("../Data.Bifunctor.Flip");+var Data_Bifunctor_Joker = require("../Data.Bifunctor.Joker");+var Data_Bifunctor_Product = require("../Data.Bifunctor.Product");+var Data_Bifunctor_Wrap = require("../Data.Bifunctor.Wrap");+var Data_Functor = require("../Data.Functor");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Bitraversable = function (Bifoldable1, Bifunctor0, bisequence, bitraverse) {+    this.Bifoldable1 = Bifoldable1;+    this.Bifunctor0 = Bifunctor0;+    this.bisequence = bisequence;+    this.bitraverse = bitraverse;+};+var bitraverse = function (dict) {+    return dict.bitraverse;+};+var lfor = function (dictBitraversable) {+    return function (dictApplicative) {+        return function (t) {+            return function (f) {+                return bitraverse(dictBitraversable)(dictApplicative)(f)(Control_Applicative.pure(dictApplicative))(t);+            };+        };+    };+};+var ltraverse = function (dictBitraversable) {+    return function (dictApplicative) {+        return function (f) {+            return bitraverse(dictBitraversable)(dictApplicative)(f)(Control_Applicative.pure(dictApplicative));+        };+    };+};+var rfor = function (dictBitraversable) {+    return function (dictApplicative) {+        return function (t) {+            return function (f) {+                return bitraverse(dictBitraversable)(dictApplicative)(Control_Applicative.pure(dictApplicative))(f)(t);+            };+        };+    };+};+var rtraverse = function (dictBitraversable) {+    return function (dictApplicative) {+        return bitraverse(dictBitraversable)(dictApplicative)(Control_Applicative.pure(dictApplicative));+    };+};+var bitraversableJoker = function (dictTraversable) {+    return new Bitraversable(function () {+        return Data_Bifoldable.bifoldableJoker(dictTraversable.Foldable1());+    }, function () {+        return Data_Bifunctor_Joker.bifunctorJoker(dictTraversable.Functor0());+    }, function (dictApplicative) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Joker.Joker)(Data_Traversable.sequence(dictTraversable)(dictApplicative)(v));+        };+    }, function (dictApplicative) {+        return function (v) {+            return function (r) {+                return function (v1) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Joker.Joker)(Data_Traversable.traverse(dictTraversable)(dictApplicative)(r)(v1));+                };+            };+        };+    });+};+var bitraversableClown = function (dictTraversable) {+    return new Bitraversable(function () {+        return Data_Bifoldable.bifoldableClown(dictTraversable.Foldable1());+    }, function () {+        return Data_Bifunctor_Clown.bifunctorClown(dictTraversable.Functor0());+    }, function (dictApplicative) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Clown.Clown)(Data_Traversable.sequence(dictTraversable)(dictApplicative)(v));+        };+    }, function (dictApplicative) {+        return function (l) {+            return function (v) {+                return function (v1) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Clown.Clown)(Data_Traversable.traverse(dictTraversable)(dictApplicative)(l)(v1));+                };+            };+        };+    });+};+var bisequenceDefault = function (dictBitraversable) {+    return function (dictApplicative) {+        return bitraverse(dictBitraversable)(dictApplicative)(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn));+    };+};+var bisequence = function (dict) {+    return dict.bisequence;+};+var bitraversableFlip = function (dictBitraversable) {+    return new Bitraversable(function () {+        return Data_Bifoldable.bifoldableFlip(dictBitraversable.Bifoldable1());+    }, function () {+        return Data_Bifunctor_Flip.bifunctorFlip(dictBitraversable.Bifunctor0());+    }, function (dictApplicative) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Flip.Flip)(bisequence(dictBitraversable)(dictApplicative)(v));+        };+    }, function (dictApplicative) {+        return function (r) {+            return function (l) {+                return function (v) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Flip.Flip)(bitraverse(dictBitraversable)(dictApplicative)(l)(r)(v));+                };+            };+        };+    });+};+var bitraversableProduct = function (dictBitraversable) {+    return function (dictBitraversable1) {+        return new Bitraversable(function () {+            return Data_Bifoldable.bifoldableProduct(dictBitraversable.Bifoldable1())(dictBitraversable1.Bifoldable1());+        }, function () {+            return Data_Bifunctor_Product.bifunctorProduct(dictBitraversable.Bifunctor0())(dictBitraversable1.Bifunctor0());+        }, function (dictApplicative) {+            return function (v) {+                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Product.Product.create)(bisequence(dictBitraversable)(dictApplicative)(v.value0)))(bisequence(dictBitraversable1)(dictApplicative)(v.value1));+            };+        }, function (dictApplicative) {+            return function (l) {+                return function (r) {+                    return function (v) {+                        return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Product.Product.create)(bitraverse(dictBitraversable)(dictApplicative)(l)(r)(v.value0)))(bitraverse(dictBitraversable1)(dictApplicative)(l)(r)(v.value1));+                    };+                };+            };+        });+    };+};+var bitraversableWrap = function (dictBitraversable) {+    return new Bitraversable(function () {+        return Data_Bifoldable.bifoldableWrap(dictBitraversable.Bifoldable1());+    }, function () {+        return Data_Bifunctor_Wrap.bifunctorWrap(dictBitraversable.Bifunctor0());+    }, function (dictApplicative) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Wrap.Wrap)(bisequence(dictBitraversable)(dictApplicative)(v));+        };+    }, function (dictApplicative) {+        return function (l) {+            return function (r) {+                return function (v) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Bifunctor_Wrap.Wrap)(bitraverse(dictBitraversable)(dictApplicative)(l)(r)(v));+                };+            };+        };+    });+};+var bitraverseDefault = function (dictBitraversable) {+    return function (dictApplicative) {+        return function (f) {+            return function (g) {+                return function (t) {+                    return bisequence(dictBitraversable)(dictApplicative)(Data_Bifunctor.bimap(dictBitraversable.Bifunctor0())(f)(g)(t));+                };+            };+        };+    };+};+var bifor = function (dictBitraversable) {+    return function (dictApplicative) {+        return function (t) {+            return function (f) {+                return function (g) {+                    return bitraverse(dictBitraversable)(dictApplicative)(f)(g)(t);+                };+            };+        };+    };+};+module.exports = {+    Bitraversable: Bitraversable, +    bifor: bifor, +    bisequence: bisequence, +    bisequenceDefault: bisequenceDefault, +    bitraverse: bitraverse, +    bitraverseDefault: bitraverseDefault, +    lfor: lfor, +    ltraverse: ltraverse, +    rfor: rfor, +    rtraverse: rtraverse, +    bitraversableClown: bitraversableClown, +    bitraversableJoker: bitraversableJoker, +    bitraversableFlip: bitraversableFlip, +    bitraversableProduct: bitraversableProduct, +    bitraversableWrap: bitraversableWrap+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Data.Bifoldable":122,"../Data.Bifunctor":128,"../Data.Bifunctor.Clown":123,"../Data.Bifunctor.Flip":124,"../Data.Bifunctor.Joker":125,"../Data.Bifunctor.Product":126,"../Data.Bifunctor.Wrap":127,"../Data.Functor":157,"../Data.Traversable":254,"../Prelude":278}],130:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var otherwise = true;+module.exports = {+    otherwise: otherwise+};++},{}],131:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Unit = require("../Data.Unit");+var BooleanAlgebra = function (HeytingAlgebra0) {+    this.HeytingAlgebra0 = HeytingAlgebra0;+};+var booleanAlgebraUnit = new BooleanAlgebra(function () {+    return Data_HeytingAlgebra.heytingAlgebraUnit;+});+var booleanAlgebraFn = function (dictBooleanAlgebra) {+    return new BooleanAlgebra(function () {+        return Data_HeytingAlgebra.heytingAlgebraFunction(dictBooleanAlgebra.HeytingAlgebra0());+    });+};+var booleanAlgebraBoolean = new BooleanAlgebra(function () {+    return Data_HeytingAlgebra.heytingAlgebraBoolean;+});+module.exports = {+    BooleanAlgebra: BooleanAlgebra, +    booleanAlgebraBoolean: booleanAlgebraBoolean, +    booleanAlgebraUnit: booleanAlgebraUnit, +    booleanAlgebraFn: booleanAlgebraFn+};++},{"../Data.HeytingAlgebra":162,"../Data.Unit":259}],132:[function(require,module,exports){+"use strict";++exports.topInt = 2147483647;+exports.bottomInt = -2147483648;++exports.topChar = String.fromCharCode(65535);+exports.bottomChar = String.fromCharCode(0);++},{}],133:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Unit = require("../Data.Unit");+var Bounded = function (Ord0, bottom, top) {+    this.Ord0 = Ord0;+    this.bottom = bottom;+    this.top = top;+};+var top = function (dict) {+    return dict.top;+};+var boundedUnit = new Bounded(function () {+    return Data_Ord.ordUnit;+}, Data_Unit.unit, Data_Unit.unit);+var boundedOrdering = new Bounded(function () {+    return Data_Ord.ordOrdering;+}, Data_Ordering.LT.value, Data_Ordering.GT.value);+var boundedInt = new Bounded(function () {+    return Data_Ord.ordInt;+}, $foreign.bottomInt, $foreign.topInt);+var boundedChar = new Bounded(function () {+    return Data_Ord.ordChar;+}, $foreign.bottomChar, $foreign.topChar);+var boundedBoolean = new Bounded(function () {+    return Data_Ord.ordBoolean;+}, false, true);+var bottom = function (dict) {+    return dict.bottom;+};+module.exports = {+    Bounded: Bounded, +    bottom: bottom, +    top: top, +    boundedBoolean: boundedBoolean, +    boundedInt: boundedInt, +    boundedChar: boundedChar, +    boundedOrdering: boundedOrdering, +    boundedUnit: boundedUnit+};++},{"../Data.Ord":222,"../Data.Ordering":223,"../Data.Unit":259,"./foreign":132}],134:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Ring = require("../Data.Ring");+var Data_Semiring = require("../Data.Semiring");+var Data_Unit = require("../Data.Unit");+var CommutativeRing = function (Ring0) {+    this.Ring0 = Ring0;+};+var commutativeRingUnit = new CommutativeRing(function () {+    return Data_Ring.ringUnit;+});+var commutativeRingNumber = new CommutativeRing(function () {+    return Data_Ring.ringNumber;+});+var commutativeRingInt = new CommutativeRing(function () {+    return Data_Ring.ringInt;+});+var commutativeRingFn = function (dictCommutativeRing) {+    return new CommutativeRing(function () {+        return Data_Ring.ringFn(dictCommutativeRing.Ring0());+    });+};+module.exports = {+    CommutativeRing: CommutativeRing, +    commutativeRingInt: commutativeRingInt, +    commutativeRingNumber: commutativeRingNumber, +    commutativeRingUnit: commutativeRingUnit, +    commutativeRingFn: commutativeRingFn+};++},{"../Data.Ring":233,"../Data.Semiring":239,"../Data.Unit":259}],135:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_Bounded = require("../Data.Bounded");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_Eq = require("../Data.Eq");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Field = require("../Data.Field");+var Data_Foldable = require("../Data.Foldable");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Contravariant = require("../Data.Functor.Contravariant");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Const = function (x) {+    return x;+};+var showConst = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Const " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semiringConst = function (dictSemiring) {+    return dictSemiring;+};+var semigroupoidConst = new Control_Semigroupoid.Semigroupoid(function (v) {+    return function (v1) {+        return v1;+    };+});+var semigroupConst = function (dictSemigroup) {+    return dictSemigroup;+};+var ringConst = function (dictRing) {+    return dictRing;+};+var ordConst = function (dictOrd) {+    return dictOrd;+};+var newtypeConst = new Data_Newtype.Newtype(function (n) {+    return n;+}, Const);+var monoidConst = function (dictMonoid) {+    return dictMonoid;+};+var heytingAlgebraConst = function (dictHeytingAlgebra) {+    return dictHeytingAlgebra;+};+var functorConst = new Data_Functor.Functor(function (v) {+    return function (v1) {+        return v1;+    };+});+var invariantConst = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorConst));+var foldableConst = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (v) {+        return function (v1) {+            return Data_Monoid.mempty(dictMonoid);+        };+    };+}, function (v) {+    return function (z) {+        return function (v1) {+            return z;+        };+    };+}, function (v) {+    return function (z) {+        return function (v1) {+            return z;+        };+    };+});+var traversableConst = new Data_Traversable.Traversable(function () {+    return foldableConst;+}, function () {+    return functorConst;+}, function (dictApplicative) {+    return function (v) {+        return Control_Applicative.pure(dictApplicative)(v);+    };+}, function (dictApplicative) {+    return function (v) {+        return function (v1) {+            return Control_Applicative.pure(dictApplicative)(v1);+        };+    };+});+var fieldConst = function (dictField) {+    return dictField;+};+var euclideanRingConst = function (dictEuclideanRing) {+    return dictEuclideanRing;+};+var eqConst = function (dictEq) {+    return dictEq;+};+var contravariantConst = new Data_Functor_Contravariant.Contravariant(function (v) {+    return function (v1) {+        return v1;+    };+});+var commutativeRingConst = function (dictCommutativeRing) {+    return dictCommutativeRing;+};+var boundedConst = function (dictBounded) {+    return dictBounded;+};+var booleanAlgebraConst = function (dictBooleanAlgebra) {+    return dictBooleanAlgebra;+};+var applyConst = function (dictSemigroup) {+    return new Control_Apply.Apply(function () {+        return functorConst;+    }, function (v) {+        return function (v1) {+            return Data_Semigroup.append(dictSemigroup)(v)(v1);+        };+    });+};+var bindConst = function (dictSemigroup) {+    return new Control_Bind.Bind(function () {+        return applyConst(dictSemigroup);+    }, function (v) {+        return function (v1) {+            return v;+        };+    });+};+var applicativeConst = function (dictMonoid) {+    return new Control_Applicative.Applicative(function () {+        return applyConst(dictMonoid.Semigroup0());+    }, function (v) {+        return Data_Monoid.mempty(dictMonoid);+    });+};+module.exports = {+    Const: Const, +    newtypeConst: newtypeConst, +    eqConst: eqConst, +    ordConst: ordConst, +    boundedConst: boundedConst, +    showConst: showConst, +    semigroupoidConst: semigroupoidConst, +    semigroupConst: semigroupConst, +    monoidConst: monoidConst, +    semiringConst: semiringConst, +    ringConst: ringConst, +    euclideanRingConst: euclideanRingConst, +    commutativeRingConst: commutativeRingConst, +    fieldConst: fieldConst, +    heytingAlgebraConst: heytingAlgebraConst, +    booleanAlgebraConst: booleanAlgebraConst, +    functorConst: functorConst, +    invariantConst: invariantConst, +    contravariantConst: contravariantConst, +    applyConst: applyConst, +    bindConst: bindConst, +    applicativeConst: applicativeConst, +    foldableConst: foldableConst, +    traversableConst: traversableConst+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Semigroupoid":93,"../Data.BooleanAlgebra":131,"../Data.Bounded":133,"../Data.CommutativeRing":134,"../Data.Eq":140,"../Data.EuclideanRing":142,"../Data.Field":143,"../Data.Foldable":145,"../Data.Functor":157,"../Data.Functor.Contravariant":154,"../Data.Functor.Invariant":155,"../Data.HeytingAlgebra":162,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Prelude":278}],136:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Identity = require("../Data.Identity");+var Data_Newtype = require("../Data.Newtype");+var Prelude = require("../Prelude");+var Distributive = function (Functor0, collect, distribute) {+    this.Functor0 = Functor0;+    this.collect = collect;+    this.distribute = distribute;+};+var distributiveIdentity = new Distributive(function () {+    return Data_Identity.functorIdentity;+}, function (dictFunctor) {+    return function (f) {+        return function ($11) {+            return Data_Identity.Identity(Data_Functor.map(dictFunctor)(function ($12) {+                return Data_Newtype.unwrap(Data_Identity.newtypeIdentity)(f($12));+            })($11));+        };+    };+}, function (dictFunctor) {+    return function ($13) {+        return Data_Identity.Identity(Data_Functor.map(dictFunctor)(Data_Newtype.unwrap(Data_Identity.newtypeIdentity))($13));+    };+});+var distribute = function (dict) {+    return dict.distribute;+};+var distributiveFunction = new Distributive(function () {+    return Data_Functor.functorFn;+}, function (dictFunctor) {+    return function (f) {+        return function ($14) {+            return distribute(distributiveFunction)(dictFunctor)(Data_Functor.map(dictFunctor)(f)($14));+        };+    };+}, function (dictFunctor) {+    return function (a) {+        return function (e) {+            return Data_Functor.map(dictFunctor)(function (v) {+                return v(e);+            })(a);+        };+    };+});+var cotraverse = function (dictDistributive) {+    return function (dictFunctor) {+        return function (f) {+            return function ($15) {+                return Data_Functor.map(dictDistributive.Functor0())(f)(distribute(dictDistributive)(dictFunctor)($15));+            };+        };+    };+};+var collectDefault = function (dictDistributive) {+    return function (dictFunctor) {+        return function (f) {+            return function ($16) {+                return distribute(dictDistributive)(dictFunctor)(Data_Functor.map(dictFunctor)(f)($16));+            };+        };+    };+};+var collect = function (dict) {+    return dict.collect;+};+var distributeDefault = function (dictDistributive) {+    return function (dictFunctor) {+        return collect(dictDistributive)(dictFunctor)(Control_Category.id(Control_Category.categoryFn));+    };+};+module.exports = {+    Distributive: Distributive, +    collect: collect, +    collectDefault: collectDefault, +    cotraverse: cotraverse, +    distribute: distribute, +    distributeDefault: distributeDefault, +    distributiveIdentity: distributiveIdentity, +    distributiveFunction: distributiveFunction+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Data.Identity":163,"../Data.Newtype":215,"../Prelude":278}],137:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Ring = require("../Data.Ring");+var Data_Semiring = require("../Data.Semiring");+var DivisionRing = function (Ring0, recip) {+    this.Ring0 = Ring0;+    this.recip = recip;+};+var recip = function (dict) {+    return dict.recip;+};+var rightDiv = function (dictDivisionRing) {+    return function (a) {+        return function (b) {+            return Data_Semiring.mul((dictDivisionRing.Ring0()).Semiring0())(a)(recip(dictDivisionRing)(b));+        };+    };+};+var leftDiv = function (dictDivisionRing) {+    return function (a) {+        return function (b) {+            return Data_Semiring.mul((dictDivisionRing.Ring0()).Semiring0())(recip(dictDivisionRing)(b))(a);+        };+    };+};+var divisionringNumber = new DivisionRing(function () {+    return Data_Ring.ringNumber;+}, function (x) {+    return 1.0 / x;+});+module.exports = {+    DivisionRing: DivisionRing, +    leftDiv: leftDiv, +    recip: recip, +    rightDiv: rightDiv, +    divisionringNumber: divisionringNumber+};++},{"../Data.EuclideanRing":142,"../Data.Ring":233,"../Data.Semiring":239}],138:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bifoldable = require("../Data.Bifoldable");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Bitraversable = require("../Data.Bitraversable");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Left = (function () {+    function Left(value0) {+        this.value0 = value0;+    };+    Left.create = function (value0) {+        return new Left(value0);+    };+    return Left;+})();+var Right = (function () {+    function Right(value0) {+        this.value0 = value0;+    };+    Right.create = function (value0) {+        return new Right(value0);+    };+    return Right;+})();+var showEither = function (dictShow) {+    return function (dictShow1) {+        return new Data_Show.Show(function (v) {+            if (v instanceof Left) {+                return "(Left " + (Data_Show.show(dictShow)(v.value0) + ")");+            };+            if (v instanceof Right) {+                return "(Right " + (Data_Show.show(dictShow1)(v.value0) + ")");+            };+            throw new Error("Failed pattern match at Data.Either line 161, column 3 - line 162, column 3: " + [ v.constructor.name ]);+        });+    };+};+var note = function (a) {+    return Data_Maybe.maybe(new Left(a))(Right.create);+};+var functorEither = new Data_Functor.Functor(function (v) {+    return function (v1) {+        if (v1 instanceof Left) {+            return new Left(v1.value0);+        };+        if (v1 instanceof Right) {+            return new Right(v(v1.value0));+        };+        throw new Error("Failed pattern match at Data.Either line 37, column 3 - line 37, column 26: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var invariantEither = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorEither));+var fromRight = function (dictPartial) {+    return function (v) {+        var __unused = function (dictPartial1) {+            return function ($dollar62) {+                return $dollar62;+            };+        };+        return __unused(dictPartial)((function () {+            if (v instanceof Right) {+                return v.value0;+            };+            throw new Error("Failed pattern match at Data.Either line 253, column 1 - line 253, column 24: " + [ v.constructor.name ]);+        })());+    };+};+var fromLeft = function (dictPartial) {+    return function (v) {+        var __unused = function (dictPartial1) {+            return function ($dollar66) {+                return $dollar66;+            };+        };+        return __unused(dictPartial)((function () {+            if (v instanceof Left) {+                return v.value0;+            };+            throw new Error("Failed pattern match at Data.Either line 248, column 1 - line 248, column 22: " + [ v.constructor.name ]);+        })());+    };+};+var foldableEither = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            if (v instanceof Left) {+                return Data_Monoid.mempty(dictMonoid);+            };+            if (v instanceof Right) {+                return f(v.value0);+            };+            throw new Error("Failed pattern match at Data.Either line 189, column 3 - line 189, column 31: " + [ f.constructor.name, v.constructor.name ]);+        };+    };+}, function (v) {+    return function (z) {+        return function (v1) {+            if (v1 instanceof Left) {+                return z;+            };+            if (v1 instanceof Right) {+                return v(z)(v1.value0);+            };+            throw new Error("Failed pattern match at Data.Either line 187, column 3 - line 187, column 26: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);+        };+    };+}, function (v) {+    return function (z) {+        return function (v1) {+            if (v1 instanceof Left) {+                return z;+            };+            if (v1 instanceof Right) {+                return v(v1.value0)(z);+            };+            throw new Error("Failed pattern match at Data.Either line 185, column 3 - line 185, column 26: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);+        };+    };+});+var traversableEither = new Data_Traversable.Traversable(function () {+    return foldableEither;+}, function () {+    return functorEither;+}, function (dictApplicative) {+    return function (v) {+        if (v instanceof Left) {+            return Control_Applicative.pure(dictApplicative)(new Left(v.value0));+        };+        if (v instanceof Right) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v.value0);+        };+        throw new Error("Failed pattern match at Data.Either line 203, column 3 - line 203, column 36: " + [ v.constructor.name ]);+    };+}, function (dictApplicative) {+    return function (v) {+        return function (v1) {+            if (v1 instanceof Left) {+                return Control_Applicative.pure(dictApplicative)(new Left(v1.value0));+            };+            if (v1 instanceof Right) {+                return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v(v1.value0));+            };+            throw new Error("Failed pattern match at Data.Either line 201, column 3 - line 201, column 39: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+});+var extendEither = new Control_Extend.Extend(function () {+    return functorEither;+}, function (v) {+    return function (v1) {+        if (v1 instanceof Left) {+            return new Left(v1.value0);+        };+        return new Right(v(v1));+    };+});+var eqEither = function (dictEq) {+    return function (dictEq1) {+        return new Data_Eq.Eq(function (x) {+            return function (y) {+                if (x instanceof Left && y instanceof Left) {+                    return Data_Eq.eq(dictEq)(x.value0)(y.value0);+                };+                if (x instanceof Right && y instanceof Right) {+                    return Data_Eq.eq(dictEq1)(x.value0)(y.value0);+                };+                return false;+            };+        });+    };+};+var ordEither = function (dictOrd) {+    return function (dictOrd1) {+        return new Data_Ord.Ord(function () {+            return eqEither(dictOrd.Eq0())(dictOrd1.Eq0());+        }, function (x) {+            return function (y) {+                if (x instanceof Left && y instanceof Left) {+                    return Data_Ord.compare(dictOrd)(x.value0)(y.value0);+                };+                if (x instanceof Left) {+                    return Data_Ordering.LT.value;+                };+                if (y instanceof Left) {+                    return Data_Ordering.GT.value;+                };+                if (x instanceof Right && y instanceof Right) {+                    return Data_Ord.compare(dictOrd1)(x.value0)(y.value0);+                };+                throw new Error("Failed pattern match at Data.Either line 176, column 1 - line 176, column 64: " + [ x.constructor.name, y.constructor.name ]);+            };+        });+    };+};+var eq1Either = function (dictEq) {+    return new Data_Eq.Eq1(function (dictEq1) {+        return Data_Eq.eq(eqEither(dictEq)(dictEq1));+    });+};+var ord1Either = function (dictOrd) {+    return new Data_Ord.Ord1(function () {+        return eq1Either(dictOrd.Eq0());+    }, function (dictOrd1) {+        return Data_Ord.compare(ordEither(dictOrd)(dictOrd1));+    });+};+var either = function (v) {+    return function (v1) {+        return function (v2) {+            if (v2 instanceof Left) {+                return v(v2.value0);+            };+            if (v2 instanceof Right) {+                return v1(v2.value0);+            };+            throw new Error("Failed pattern match at Data.Either line 230, column 1 - line 230, column 26: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+        };+    };+};+var hush = either(Data_Function["const"](Data_Maybe.Nothing.value))(Data_Maybe.Just.create);+var isLeft = either(Data_Function["const"](true))(Data_Function["const"](false));+var isRight = either(Data_Function["const"](false))(Data_Function["const"](true));+var choose = function (dictAlt) {+    return function (a) {+        return function (b) {+            return Control_Alt.alt(dictAlt)(Data_Functor.map(dictAlt.Functor0())(Left.create)(a))(Data_Functor.map(dictAlt.Functor0())(Right.create)(b));+        };+    };+};+var boundedEither = function (dictBounded) {+    return function (dictBounded1) {+        return new Data_Bounded.Bounded(function () {+            return ordEither(dictBounded.Ord0())(dictBounded1.Ord0());+        }, new Left(Data_Bounded.bottom(dictBounded)), new Right(Data_Bounded.top(dictBounded1)));+    };+};+var bifunctorEither = new Data_Bifunctor.Bifunctor(function (v) {+    return function (v1) {+        return function (v2) {+            if (v2 instanceof Left) {+                return new Left(v(v2.value0));+            };+            if (v2 instanceof Right) {+                return new Right(v1(v2.value0));+            };+            throw new Error("Failed pattern match at Data.Either line 44, column 3 - line 44, column 34: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+        };+    };+});+var bifoldableEither = new Data_Bifoldable.Bifoldable(function (dictMonoid) {+    return function (v) {+        return function (v1) {+            return function (v2) {+                if (v2 instanceof Left) {+                    return v(v2.value0);+                };+                if (v2 instanceof Right) {+                    return v1(v2.value0);+                };+                throw new Error("Failed pattern match at Data.Either line 197, column 3 - line 197, column 31: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+            };+        };+    };+}, function (v) {+    return function (v1) {+        return function (z) {+            return function (v2) {+                if (v2 instanceof Left) {+                    return v(z)(v2.value0);+                };+                if (v2 instanceof Right) {+                    return v1(z)(v2.value0);+                };+                throw new Error("Failed pattern match at Data.Either line 195, column 3 - line 195, column 33: " + [ v.constructor.name, v1.constructor.name, z.constructor.name, v2.constructor.name ]);+            };+        };+    };+}, function (v) {+    return function (v1) {+        return function (z) {+            return function (v2) {+                if (v2 instanceof Left) {+                    return v(v2.value0)(z);+                };+                if (v2 instanceof Right) {+                    return v1(v2.value0)(z);+                };+                throw new Error("Failed pattern match at Data.Either line 193, column 3 - line 193, column 33: " + [ v.constructor.name, v1.constructor.name, z.constructor.name, v2.constructor.name ]);+            };+        };+    };+});+var bitraversableEither = new Data_Bitraversable.Bitraversable(function () {+    return bifoldableEither;+}, function () {+    return bifunctorEither;+}, function (dictApplicative) {+    return function (v) {+        if (v instanceof Left) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Left.create)(v.value0);+        };+        if (v instanceof Right) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v.value0);+        };+        throw new Error("Failed pattern match at Data.Either line 209, column 3 - line 209, column 35: " + [ v.constructor.name ]);+    };+}, function (dictApplicative) {+    return function (v) {+        return function (v1) {+            return function (v2) {+                if (v2 instanceof Left) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Left.create)(v(v2.value0));+                };+                if (v2 instanceof Right) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Right.create)(v1(v2.value0));+                };+                throw new Error("Failed pattern match at Data.Either line 207, column 3 - line 207, column 41: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+            };+        };+    };+});+var applyEither = new Control_Apply.Apply(function () {+    return functorEither;+}, function (v) {+    return function (v1) {+        if (v instanceof Left) {+            return new Left(v.value0);+        };+        if (v instanceof Right) {+            return Data_Functor.map(functorEither)(v.value0)(v1);+        };+        throw new Error("Failed pattern match at Data.Either line 80, column 3 - line 80, column 28: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var bindEither = new Control_Bind.Bind(function () {+    return applyEither;+}, either(function (e) {+    return function (v) {+        return new Left(e);+    };+})(function (a) {+    return function (f) {+        return f(a);+    };+}));+var semigroupEither = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (x) {+        return function (y) {+            return Control_Apply.apply(applyEither)(Data_Functor.map(functorEither)(Data_Semigroup.append(dictSemigroup))(x))(y);+        };+    });+};+var semiringEither = function (dictSemiring) {+    return new Data_Semiring.Semiring(function (x) {+        return function (y) {+            return Control_Apply.apply(applyEither)(Data_Functor.map(functorEither)(Data_Semiring.add(dictSemiring))(x))(y);+        };+    }, function (x) {+        return function (y) {+            return Control_Apply.apply(applyEither)(Data_Functor.map(functorEither)(Data_Semiring.mul(dictSemiring))(x))(y);+        };+    }, new Right(Data_Semiring.one(dictSemiring)), new Right(Data_Semiring.zero(dictSemiring)));+};+var applicativeEither = new Control_Applicative.Applicative(function () {+    return applyEither;+}, Right.create);+var monadEither = new Control_Monad.Monad(function () {+    return applicativeEither;+}, function () {+    return bindEither;+});+var altEither = new Control_Alt.Alt(function () {+    return functorEither;+}, function (v) {+    return function (v1) {+        if (v instanceof Left) {+            return v1;+        };+        return v;+    };+});+module.exports = {+    Left: Left, +    Right: Right, +    choose: choose, +    either: either, +    fromLeft: fromLeft, +    fromRight: fromRight, +    hush: hush, +    isLeft: isLeft, +    isRight: isRight, +    note: note, +    functorEither: functorEither, +    invariantEither: invariantEither, +    bifunctorEither: bifunctorEither, +    applyEither: applyEither, +    applicativeEither: applicativeEither, +    altEither: altEither, +    bindEither: bindEither, +    monadEither: monadEither, +    extendEither: extendEither, +    showEither: showEither, +    eqEither: eqEither, +    eq1Either: eq1Either, +    ordEither: ordEither, +    ord1Either: ord1Either, +    boundedEither: boundedEither, +    foldableEither: foldableEither, +    bifoldableEither: bifoldableEither, +    traversableEither: traversableEither, +    bitraversableEither: bitraversableEither, +    semiringEither: semiringEither, +    semigroupEither: semigroupEither+};++},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bifoldable":122,"../Data.Bifunctor":128,"../Data.Bitraversable":129,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Prelude":278}],139:[function(require,module,exports){+"use strict";++exports.refEq = function (r1) {+  return function (r2) {+    return r1 === r2;+  };+};++exports.refIneq = function (r1) {+  return function (r2) {+    return r1 !== r2;+  };+};++exports.eqArrayImpl = function (f) {+  return function (xs) {+    return function (ys) {+      if (xs.length !== ys.length) return false;+      for (var i = 0; i < xs.length; i++) {+        if (!f(xs[i])(ys[i])) return false;+      }+      return true;+    };+  };+};++},{}],140:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Unit = require("../Data.Unit");+var Data_Void = require("../Data.Void");+var Eq = function (eq) {+    this.eq = eq;+};+var Eq1 = function (eq1) {+    this.eq1 = eq1;+};+var eqVoid = new Eq(function (v) {+    return function (v1) {+        return true;+    };+});+var eqUnit = new Eq(function (v) {+    return function (v1) {+        return true;+    };+});+var eqString = new Eq($foreign.refEq);+var eqNumber = new Eq($foreign.refEq);+var eqInt = new Eq($foreign.refEq);+var eqChar = new Eq($foreign.refEq);+var eqBoolean = new Eq($foreign.refEq);+var eq1 = function (dict) {+    return dict.eq1;+};+var eq = function (dict) {+    return dict.eq;+};+var eqArray = function (dictEq) {+    return new Eq($foreign.eqArrayImpl(eq(dictEq)));+};+var eq1Array = new Eq1(function (dictEq) {+    return eq(eqArray(dictEq));+});+var notEq = function (dictEq) {+    return function (x) {+        return function (y) {+            return eq(eqBoolean)(eq(dictEq)(x)(y))(false);+        };+    };+};+var notEq1 = function (dictEq1) {+    return function (dictEq) {+        return function (x) {+            return function (y) {+                return eq(eqBoolean)(eq1(dictEq1)(dictEq)(x)(y))(false);+            };+        };+    };+};+module.exports = {+    Eq: Eq, +    Eq1: Eq1, +    eq: eq, +    eq1: eq1, +    notEq: notEq, +    notEq1: notEq1, +    eqBoolean: eqBoolean, +    eqInt: eqInt, +    eqNumber: eqNumber, +    eqChar: eqChar, +    eqString: eqString, +    eqUnit: eqUnit, +    eqVoid: eqVoid, +    eqArray: eqArray, +    eq1Array: eq1Array+};++},{"../Data.Unit":259,"../Data.Void":260,"./foreign":139}],141:[function(require,module,exports){+"use strict";++exports.intDegree = function (x) {+  return Math.min(Math.abs(x), 2147483647);+};++exports.intDiv = function (x) {+  return function (y) {+    /* jshint bitwise: false */+    return x / y | 0;+  };+};++exports.intMod = function (x) {+  return function (y) {+    return x % y;+  };+};++exports.numDiv = function (n1) {+  return function (n2) {+    return n1 / n2;+  };+};++},{}],142:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_Eq = require("../Data.Eq");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Ring = require("../Data.Ring");+var Data_Semiring = require("../Data.Semiring");+var EuclideanRing = function (CommutativeRing0, degree, div, mod) {+    this.CommutativeRing0 = CommutativeRing0;+    this.degree = degree;+    this.div = div;+    this.mod = mod;+};+var mod = function (dict) {+    return dict.mod;+};+var gcd = function (__copy_dictEq) {+    return function (__copy_dictEuclideanRing) {+        return function (__copy_a) {+            return function (__copy_b) {+                var __tco_dictEq = __copy_dictEq;+                var __tco_dictEuclideanRing = __copy_dictEuclideanRing;+                var __tco_a = __copy_a;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(dictEq, dictEuclideanRing, a, b) {+                    var $7 = Data_Eq.eq(dictEq)(b)(Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0()));+                    if ($7) {+                        __tco_done = true;+                        return a;+                    };+                    __tco_dictEq = dictEq;+                    __tco_dictEuclideanRing = dictEuclideanRing;+                    __tco_a = b;+                    __copy_b = mod(dictEuclideanRing)(a)(b);+                    return;+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_dictEq, __tco_dictEuclideanRing, __tco_a, __copy_b);+                };+                return __tco_result;+            };+        };+    };+};+var euclideanRingNumber = new EuclideanRing(function () {+    return Data_CommutativeRing.commutativeRingNumber;+}, function (v) {+    return 1;+}, $foreign.numDiv, function (v) {+    return function (v1) {+        return 0.0;+    };+});+var euclideanRingInt = new EuclideanRing(function () {+    return Data_CommutativeRing.commutativeRingInt;+}, $foreign.intDegree, $foreign.intDiv, $foreign.intMod);+var div = function (dict) {+    return dict.div;+};+var lcm = function (dictEq) {+    return function (dictEuclideanRing) {+        return function (a) {+            return function (b) {+                var $8 = Data_Eq.eq(dictEq)(a)(Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0())) || Data_Eq.eq(dictEq)(b)(Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0()));+                if ($8) {+                    return Data_Semiring.zero(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0());+                };+                return div(dictEuclideanRing)(Data_Semiring.mul(((dictEuclideanRing.CommutativeRing0()).Ring0()).Semiring0())(a)(b))(gcd(dictEq)(dictEuclideanRing)(a)(b));+            };+        };+    };+};+var degree = function (dict) {+    return dict.degree;+};+module.exports = {+    EuclideanRing: EuclideanRing, +    degree: degree, +    div: div, +    gcd: gcd, +    lcm: lcm, +    mod: mod, +    euclideanRingInt: euclideanRingInt, +    euclideanRingNumber: euclideanRingNumber+};++},{"../Data.BooleanAlgebra":131,"../Data.CommutativeRing":134,"../Data.Eq":140,"../Data.HeytingAlgebra":162,"../Data.Ring":233,"../Data.Semiring":239,"./foreign":141}],143:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_DivisionRing = require("../Data.DivisionRing");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Ring = require("../Data.Ring");+var Data_Semiring = require("../Data.Semiring");+var Field = function (EuclideanRing0) {+    this.EuclideanRing0 = EuclideanRing0;+};+var fieldNumber = new Field(function () {+    return Data_EuclideanRing.euclideanRingNumber;+});+module.exports = {+    Field: Field, +    fieldNumber: fieldNumber+};++},{"../Data.CommutativeRing":134,"../Data.DivisionRing":137,"../Data.EuclideanRing":142,"../Data.Ring":233,"../Data.Semiring":239}],144:[function(require,module,exports){+"use strict";++exports.foldrArray = function (f) {+  return function (init) {+    return function (xs) {+      var acc = init;+      var len = xs.length;+      for (var i = len - 1; i >= 0; i--) {+        acc = f(xs[i])(acc);+      }+      return acc;+    };+  };+};++exports.foldlArray = function (f) {+  return function (init) {+    return function (xs) {+      var acc = init;+      var len = xs.length;+      for (var i = 0; i < len; i++) {+        acc = f(acc)(xs[i]);+      }+      return acc;+    };+  };+};++},{}],145:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Alt = require("../Control.Alt");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Maybe_First = require("../Data.Maybe.First");+var Data_Maybe_Last = require("../Data.Maybe.Last");+var Data_Monoid = require("../Data.Monoid");+var Data_Monoid_Additive = require("../Data.Monoid.Additive");+var Data_Monoid_Conj = require("../Data.Monoid.Conj");+var Data_Monoid_Disj = require("../Data.Monoid.Disj");+var Data_Monoid_Dual = require("../Data.Monoid.Dual");+var Data_Monoid_Endo = require("../Data.Monoid.Endo");+var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Foldable = function (foldMap, foldl, foldr) {+    this.foldMap = foldMap;+    this.foldl = foldl;+    this.foldr = foldr;+};+var foldr = function (dict) {+    return dict.foldr;+};+var $$null = function (dictFoldable) {+    return foldr(dictFoldable)(function (v) {+        return function (v1) {+            return false;+        };+    })(true);+};+var oneOf = function (dictFoldable) {+    return function (dictPlus) {+        return foldr(dictFoldable)(Control_Alt.alt(dictPlus.Alt0()))(Control_Plus.empty(dictPlus));+    };+};+var traverse_ = function (dictApplicative) {+    return function (dictFoldable) {+        return function (f) {+            return foldr(dictFoldable)(function ($181) {+                return Control_Apply.applySecond(dictApplicative.Apply0())(f($181));+            })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));+        };+    };+};+var for_ = function (dictApplicative) {+    return function (dictFoldable) {+        return Data_Function.flip(traverse_(dictApplicative)(dictFoldable));+    };+};+var sequence_ = function (dictApplicative) {+    return function (dictFoldable) {+        return traverse_(dictApplicative)(dictFoldable)(Control_Category.id(Control_Category.categoryFn));+    };+};+var foldl = function (dict) {+    return dict.foldl;+};+var intercalate = function (dictFoldable) {+    return function (dictMonoid) {+        return function (sep) {+            return function (xs) {+                var go = function (v) {+                    return function (x) {+                        if (v.init) {+                            return {+                                init: false, +                                acc: x+                            };+                        };+                        return {+                            init: false, +                            acc: Data_Semigroup.append(dictMonoid.Semigroup0())(v.acc)(Data_Semigroup.append(dictMonoid.Semigroup0())(sep)(x))+                        };+                    };+                };+                return (foldl(dictFoldable)(go)({+                    init: true, +                    acc: Data_Monoid.mempty(dictMonoid)+                })(xs)).acc;+            };+        };+    };+};+var length = function (dictFoldable) {+    return function (dictSemiring) {+        return foldl(dictFoldable)(function (c) {+            return function (v) {+                return Data_Semiring.add(dictSemiring)(Data_Semiring.one(dictSemiring))(c);+            };+        })(Data_Semiring.zero(dictSemiring));+    };+};+var maximumBy = function (dictFoldable) {+    return function (cmp) {+        var max$prime = function (v) {+            return function (v1) {+                if (v instanceof Data_Maybe.Nothing) {+                    return new Data_Maybe.Just(v1);+                };+                if (v instanceof Data_Maybe.Just) {+                    return new Data_Maybe.Just((function () {+                        var $104 = Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v1))(Data_Ordering.GT.value);+                        if ($104) {+                            return v.value0;+                        };+                        return v1;+                    })());+                };+                throw new Error("Failed pattern match at Data.Foldable line 347, column 3 - line 347, column 27: " + [ v.constructor.name, v1.constructor.name ]);+            };+        };+        return foldl(dictFoldable)(max$prime)(Data_Maybe.Nothing.value);+    };+};+var maximum = function (dictOrd) {+    return function (dictFoldable) {+        return maximumBy(dictFoldable)(Data_Ord.compare(dictOrd));+    };+};+var minimumBy = function (dictFoldable) {+    return function (cmp) {+        var min$prime = function (v) {+            return function (v1) {+                if (v instanceof Data_Maybe.Nothing) {+                    return new Data_Maybe.Just(v1);+                };+                if (v instanceof Data_Maybe.Just) {+                    return new Data_Maybe.Just((function () {+                        var $108 = Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v1))(Data_Ordering.LT.value);+                        if ($108) {+                            return v.value0;+                        };+                        return v1;+                    })());+                };+                throw new Error("Failed pattern match at Data.Foldable line 360, column 3 - line 360, column 27: " + [ v.constructor.name, v1.constructor.name ]);+            };+        };+        return foldl(dictFoldable)(min$prime)(Data_Maybe.Nothing.value);+    };+};+var minimum = function (dictOrd) {+    return function (dictFoldable) {+        return minimumBy(dictFoldable)(Data_Ord.compare(dictOrd));+    };+};+var product = function (dictFoldable) {+    return function (dictSemiring) {+        return foldl(dictFoldable)(Data_Semiring.mul(dictSemiring))(Data_Semiring.one(dictSemiring));+    };+};+var sum = function (dictFoldable) {+    return function (dictSemiring) {+        return foldl(dictFoldable)(Data_Semiring.add(dictSemiring))(Data_Semiring.zero(dictSemiring));+    };+};+var foldableMultiplicative = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v)(z);+        };+    };+});+var foldableMaybe = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            if (v instanceof Data_Maybe.Nothing) {+                return Data_Monoid.mempty(dictMonoid);+            };+            if (v instanceof Data_Maybe.Just) {+                return f(v.value0);+            };+            throw new Error("Failed pattern match at Data.Foldable line 133, column 3 - line 133, column 30: " + [ f.constructor.name, v.constructor.name ]);+        };+    };+}, function (v) {+    return function (z) {+        return function (v1) {+            if (v1 instanceof Data_Maybe.Nothing) {+                return z;+            };+            if (v1 instanceof Data_Maybe.Just) {+                return v(z)(v1.value0);+            };+            throw new Error("Failed pattern match at Data.Foldable line 131, column 3 - line 131, column 25: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);+        };+    };+}, function (v) {+    return function (z) {+        return function (v1) {+            if (v1 instanceof Data_Maybe.Nothing) {+                return z;+            };+            if (v1 instanceof Data_Maybe.Just) {+                return v(v1.value0)(z);+            };+            throw new Error("Failed pattern match at Data.Foldable line 129, column 3 - line 129, column 25: " + [ v.constructor.name, z.constructor.name, v1.constructor.name ]);+        };+    };+});+var foldableDual = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v)(z);+        };+    };+});+var foldableDisj = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v)(z);+        };+    };+});+var foldableConj = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v)(z);+        };+    };+});+var foldableAdditive = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v)(z);+        };+    };+});+var foldMapDefaultR = function (dictFoldable) {+    return function (dictMonoid) {+        return function (f) {+            return foldr(dictFoldable)(function (x) {+                return function (acc) {+                    return Data_Semigroup.append(dictMonoid.Semigroup0())(f(x))(acc);+                };+            })(Data_Monoid.mempty(dictMonoid));+        };+    };+};+var foldableArray = new Foldable(function (dictMonoid) {+    return foldMapDefaultR(foldableArray)(dictMonoid);+}, $foreign.foldlArray, $foreign.foldrArray);+var foldMapDefaultL = function (dictFoldable) {+    return function (dictMonoid) {+        return function (f) {+            return foldl(dictFoldable)(function (acc) {+                return function (x) {+                    return Data_Semigroup.append(dictMonoid.Semigroup0())(acc)(f(x));+                };+            })(Data_Monoid.mempty(dictMonoid));+        };+    };+};+var foldMap = function (dict) {+    return dict.foldMap;+};+var foldableFirst = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return foldMap(foldableMaybe)(dictMonoid)(f)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return foldl(foldableMaybe)(f)(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return foldr(foldableMaybe)(f)(z)(v);+        };+    };+});+var foldableLast = new Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return foldMap(foldableMaybe)(dictMonoid)(f)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return foldl(foldableMaybe)(f)(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return foldr(foldableMaybe)(f)(z)(v);+        };+    };+});+var foldlDefault = function (dictFoldable) {+    return function (c) {+        return function (u) {+            return function (xs) {+                return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(foldMap(dictFoldable)(Data_Monoid_Dual.monoidDual(Data_Monoid_Endo.monoidEndo))(function ($182) {+                    return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(c)($182)));+                })(xs)))(u);+            };+        };+    };+};+var foldrDefault = function (dictFoldable) {+    return function (c) {+        return function (u) {+            return function (xs) {+                return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(foldMap(dictFoldable)(Data_Monoid_Endo.monoidEndo)(function ($183) {+                    return Data_Monoid_Endo.Endo(c($183));+                })(xs))(u);+            };+        };+    };+};+var surroundMap = function (dictFoldable) {+    return function (dictSemigroup) {+        return function (d) {+            return function (t) {+                return function (f) {+                    var joined = function (a) {+                        return function (m) {+                            return Data_Semigroup.append(dictSemigroup)(d)(Data_Semigroup.append(dictSemigroup)(t(a))(m));+                        };+                    };+                    return Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo)(foldMap(dictFoldable)(Data_Monoid_Endo.monoidEndo)(joined)(f))(d);+                };+            };+        };+    };+};+var surround = function (dictFoldable) {+    return function (dictSemigroup) {+        return function (d) {+            return surroundMap(dictFoldable)(dictSemigroup)(d)(Control_Category.id(Control_Category.categoryFn));+        };+    };+};+var foldM = function (dictFoldable) {+    return function (dictMonad) {+        return function (f) {+            return function (a0) {+                return foldl(dictFoldable)(function (ma) {+                    return function (b) {+                        return Control_Bind.bind(dictMonad.Bind1())(ma)(Data_Function.flip(f)(b));+                    };+                })(Control_Applicative.pure(dictMonad.Applicative0())(a0));+            };+        };+    };+};+var fold = function (dictFoldable) {+    return function (dictMonoid) {+        return foldMap(dictFoldable)(dictMonoid)(Control_Category.id(Control_Category.categoryFn));+    };+};+var findMap = function (dictFoldable) {+    return function (p) {+        var go = function (v) {+            return function (v1) {+                if (v instanceof Data_Maybe.Nothing) {+                    return p(v1);+                };+                return v;+            };+        };+        return foldl(dictFoldable)(go)(Data_Maybe.Nothing.value);+    };+};+var find = function (dictFoldable) {+    return function (p) {+        var go = function (v) {+            return function (v1) {+                if (v instanceof Data_Maybe.Nothing && p(v1)) {+                    return new Data_Maybe.Just(v1);+                };+                return v;+            };+        };+        return foldl(dictFoldable)(go)(Data_Maybe.Nothing.value);+    };+};+var any = function (dictFoldable) {+    return function (dictHeytingAlgebra) {+        return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Monoid_Disj.newtypeDisj)(Data_Monoid_Disj.newtypeDisj)(Data_Monoid_Disj.Disj)(foldMap(dictFoldable)(Data_Monoid_Disj.monoidDisj(dictHeytingAlgebra)));+    };+};+var elem = function (dictFoldable) {+    return function (dictEq) {+        return function ($184) {+            return any(dictFoldable)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Eq.eq(dictEq)($184));+        };+    };+};+var notElem = function (dictFoldable) {+    return function (dictEq) {+        return function (x) {+            return function ($185) {+                return !elem(dictFoldable)(dictEq)(x)($185);+            };+        };+    };+};+var or = function (dictFoldable) {+    return function (dictHeytingAlgebra) {+        return any(dictFoldable)(dictHeytingAlgebra)(Control_Category.id(Control_Category.categoryFn));+    };+};+var all = function (dictFoldable) {+    return function (dictHeytingAlgebra) {+        return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Monoid_Conj.newtypeConj)(Data_Monoid_Conj.newtypeConj)(Data_Monoid_Conj.Conj)(foldMap(dictFoldable)(Data_Monoid_Conj.monoidConj(dictHeytingAlgebra)));+    };+};+var and = function (dictFoldable) {+    return function (dictHeytingAlgebra) {+        return all(dictFoldable)(dictHeytingAlgebra)(Control_Category.id(Control_Category.categoryFn));+    };+};+module.exports = {+    Foldable: Foldable, +    all: all, +    and: and, +    any: any, +    elem: elem, +    find: find, +    findMap: findMap, +    fold: fold, +    foldM: foldM, +    foldMap: foldMap, +    foldMapDefaultL: foldMapDefaultL, +    foldMapDefaultR: foldMapDefaultR, +    foldl: foldl, +    foldlDefault: foldlDefault, +    foldr: foldr, +    foldrDefault: foldrDefault, +    for_: for_, +    intercalate: intercalate, +    length: length, +    maximum: maximum, +    maximumBy: maximumBy, +    minimum: minimum, +    minimumBy: minimumBy, +    notElem: notElem, +    "null": $$null, +    oneOf: oneOf, +    or: or, +    product: product, +    sequence_: sequence_, +    sum: sum, +    surround: surround, +    surroundMap: surroundMap, +    traverse_: traverse_, +    foldableArray: foldableArray, +    foldableMaybe: foldableMaybe, +    foldableFirst: foldableFirst, +    foldableLast: foldableLast, +    foldableAdditive: foldableAdditive, +    foldableDual: foldableDual, +    foldableDisj: foldableDisj, +    foldableConj: foldableConj, +    foldableMultiplicative: foldableMultiplicative+};++},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Maybe.First":202,"../Data.Maybe.Last":203,"../Data.Monoid":213,"../Data.Monoid.Additive":207,"../Data.Monoid.Conj":208,"../Data.Monoid.Disj":209,"../Data.Monoid.Dual":210,"../Data.Monoid.Endo":211,"../Data.Monoid.Multiplicative":212,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Unit":259,"../Prelude":278,"./foreign":144}],146:[function(require,module,exports){+"use strict";++exports.toForeign = function (value) {+  return value;+};++exports.unsafeFromForeign = function (value) {+  return value;+};++exports.typeOf = function (value) {+  return typeof value;+};++exports.tagOf = function (value) {+  return Object.prototype.toString.call(value).slice(8, -1);+};++exports.isNull = function (value) {+  return value === null;+};++exports.isUndefined = function (value) {+  return value === undefined;+};++exports.isArray = Array.isArray || function (value) {+  return Object.prototype.toString.call(value) === "[object Array]";+};++},{}],147:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Except = require("../Control.Monad.Except");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Boolean = require("../Data.Boolean");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Identity = require("../Data.Identity");+var Data_Int = require("../Data.Int");+var Data_List_NonEmpty = require("../Data.List.NonEmpty");+var Data_Maybe = require("../Data.Maybe");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_String = require("../Data.String");+var Prelude = require("../Prelude");+var ForeignError = (function () {+    function ForeignError(value0) {+        this.value0 = value0;+    };+    ForeignError.create = function (value0) {+        return new ForeignError(value0);+    };+    return ForeignError;+})();+var TypeMismatch = (function () {+    function TypeMismatch(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    TypeMismatch.create = function (value0) {+        return function (value1) {+            return new TypeMismatch(value0, value1);+        };+    };+    return TypeMismatch;+})();+var ErrorAtIndex = (function () {+    function ErrorAtIndex(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    ErrorAtIndex.create = function (value0) {+        return function (value1) {+            return new ErrorAtIndex(value0, value1);+        };+    };+    return ErrorAtIndex;+})();+var ErrorAtProperty = (function () {+    function ErrorAtProperty(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    ErrorAtProperty.create = function (value0) {+        return function (value1) {+            return new ErrorAtProperty(value0, value1);+        };+    };+    return ErrorAtProperty;+})();+var JSONError = (function () {+    function JSONError(value0) {+        this.value0 = value0;+    };+    JSONError.create = function (value0) {+        return new JSONError(value0);+    };+    return JSONError;+})();+var showForeignError = new Data_Show.Show(function (v) {+    if (v instanceof ForeignError) {+        return "(ForeignError " + (Data_Show.show(Data_Show.showString)(v.value0) + ")");+    };+    if (v instanceof ErrorAtIndex) {+        return "(ErrorAtIndex " + (Data_Show.show(Data_Show.showInt)(v.value0) + (" " + (Data_Show.show(showForeignError)(v.value1) + ")")));+    };+    if (v instanceof ErrorAtProperty) {+        return "(ErrorAtProperty " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(showForeignError)(v.value1) + ")")));+    };+    if (v instanceof JSONError) {+        return "(JSONError " + (Data_Show.show(Data_Show.showString)(v.value0) + ")");+    };+    if (v instanceof TypeMismatch) {+        return "(TypeMismatch " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(Data_Show.showString)(v.value1) + ")")));+    };+    throw new Error("Failed pattern match at Data.Foreign line 65, column 3 - line 66, column 3: " + [ v.constructor.name ]);+});+var renderForeignError = function (v) {+    if (v instanceof ForeignError) {+        return v.value0;+    };+    if (v instanceof ErrorAtIndex) {+        return "Error at array index " + (Data_Show.show(Data_Show.showInt)(v.value0) + (": " + Data_Show.show(showForeignError)(v.value1)));+    };+    if (v instanceof ErrorAtProperty) {+        return "Error at property " + (Data_Show.show(Data_Show.showString)(v.value0) + (": " + Data_Show.show(showForeignError)(v.value1)));+    };+    if (v instanceof JSONError) {+        return "JSON error: " + v.value0;+    };+    if (v instanceof TypeMismatch) {+        return "Type mismatch: expected " + (v.value0 + (", found " + v.value1));+    };+    throw new Error("Failed pattern match at Data.Foreign line 75, column 1 - line 75, column 44: " + [ v.constructor.name ]);+};+var readUndefined = function (value) {+    if ($foreign.isUndefined(value)) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Maybe.Nothing.value);+    };+    if (Data_Boolean.otherwise) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(new Data_Maybe.Just(value));+    };+    throw new Error("Failed pattern match at Data.Foreign line 156, column 1 - line 158, column 34: " + [ value.constructor.name ]);+};+var readNullOrUndefined = function (value) {+    if ($foreign.isNull(value) || $foreign.isUndefined(value)) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Maybe.Nothing.value);+    };+    if (Data_Boolean.otherwise) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(new Data_Maybe.Just(value));+    };+    throw new Error("Failed pattern match at Data.Foreign line 161, column 1 - line 163, column 34: " + [ value.constructor.name ]);+};+var readNull = function (value) {+    if ($foreign.isNull(value)) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Maybe.Nothing.value);+    };+    if (Data_Boolean.otherwise) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(new Data_Maybe.Just(value));+    };+    throw new Error("Failed pattern match at Data.Foreign line 151, column 1 - line 153, column 34: " + [ value.constructor.name ]);+};+var fail = function ($121) {+    return Control_Monad_Error_Class.throwError(Control_Monad_Except_Trans.monadThrowExceptT(Data_Identity.monadIdentity))(Data_List_NonEmpty.singleton($121));+};+var readArray = function (value) {+    if ($foreign.isArray(value)) {+        return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))($foreign.unsafeFromForeign(value));+    };+    if (Data_Boolean.otherwise) {+        return fail(new TypeMismatch("array", $foreign.tagOf(value)));+    };+    throw new Error("Failed pattern match at Data.Foreign line 146, column 1 - line 148, column 58: " + [ value.constructor.name ]);+};+var unsafeReadTagged = function (tag) {+    return function (value) {+        if ($foreign.tagOf(value) === tag) {+            return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))($foreign.unsafeFromForeign(value));+        };+        if (Data_Boolean.otherwise) {+            return fail(new TypeMismatch(tag, $foreign.tagOf(value)));+        };+        throw new Error("Failed pattern match at Data.Foreign line 105, column 1 - line 107, column 54: " + [ tag.constructor.name, value.constructor.name ]);+    };+};+var readBoolean = unsafeReadTagged("Boolean");+var readNumber = unsafeReadTagged("Number");+var readInt = function (value) {+    var error = Data_Either.Left.create(Data_List_NonEmpty.singleton(new TypeMismatch("Int", $foreign.tagOf(value))));+    var fromNumber = function ($122) {+        return Data_Maybe.maybe(error)(Control_Applicative.pure(Data_Either.applicativeEither))(Data_Int.fromNumber($122));+    };+    return Control_Monad_Except.mapExcept(Data_Either.either(Data_Function["const"](error))(fromNumber))(readNumber(value));+};+var readString = unsafeReadTagged("String");+var readChar = function (value) {+    var error = Data_Either.Left.create(Data_List_NonEmpty.singleton(new TypeMismatch("Char", $foreign.tagOf(value))));+    var fromString = function ($123) {+        return Data_Maybe.maybe(error)(Control_Applicative.pure(Data_Either.applicativeEither))(Data_String.toChar($123));+    };+    return Control_Monad_Except.mapExcept(Data_Either.either(Data_Function["const"](error))(fromString))(readString(value));+};+var eqForeignError = new Data_Eq.Eq(function (x) {+    return function (y) {+        if (x instanceof ForeignError && y instanceof ForeignError) {+            return x.value0 === y.value0;+        };+        if (x instanceof TypeMismatch && y instanceof TypeMismatch) {+            return x.value0 === y.value0 && x.value1 === y.value1;+        };+        if (x instanceof ErrorAtIndex && y instanceof ErrorAtIndex) {+            return x.value0 === y.value0 && Data_Eq.eq(eqForeignError)(x.value1)(y.value1);+        };+        if (x instanceof ErrorAtProperty && y instanceof ErrorAtProperty) {+            return x.value0 === y.value0 && Data_Eq.eq(eqForeignError)(x.value1)(y.value1);+        };+        if (x instanceof JSONError && y instanceof JSONError) {+            return x.value0 === y.value0;+        };+        return false;+    };+});+var ordForeignError = new Data_Ord.Ord(function () {+    return eqForeignError;+}, function (x) {+    return function (y) {+        if (x instanceof ForeignError && y instanceof ForeignError) {+            return Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);+        };+        if (x instanceof ForeignError) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof ForeignError) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof TypeMismatch && y instanceof TypeMismatch) {+            var v = Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);+            if (v instanceof Data_Ordering.LT) {+                return Data_Ordering.LT.value;+            };+            if (v instanceof Data_Ordering.GT) {+                return Data_Ordering.GT.value;+            };+            return Data_Ord.compare(Data_Ord.ordString)(x.value1)(y.value1);+        };+        if (x instanceof TypeMismatch) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof TypeMismatch) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof ErrorAtIndex && y instanceof ErrorAtIndex) {+            var v = Data_Ord.compare(Data_Ord.ordInt)(x.value0)(y.value0);+            if (v instanceof Data_Ordering.LT) {+                return Data_Ordering.LT.value;+            };+            if (v instanceof Data_Ordering.GT) {+                return Data_Ordering.GT.value;+            };+            return Data_Ord.compare(ordForeignError)(x.value1)(y.value1);+        };+        if (x instanceof ErrorAtIndex) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof ErrorAtIndex) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof ErrorAtProperty && y instanceof ErrorAtProperty) {+            var v = Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);+            if (v instanceof Data_Ordering.LT) {+                return Data_Ordering.LT.value;+            };+            if (v instanceof Data_Ordering.GT) {+                return Data_Ordering.GT.value;+            };+            return Data_Ord.compare(ordForeignError)(x.value1)(y.value1);+        };+        if (x instanceof ErrorAtProperty) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof ErrorAtProperty) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof JSONError && y instanceof JSONError) {+            return Data_Ord.compare(Data_Ord.ordString)(x.value0)(y.value0);+        };+        throw new Error("Failed pattern match: " + [ x.constructor.name, y.constructor.name ]);+    };+});+module.exports = {+    ForeignError: ForeignError, +    TypeMismatch: TypeMismatch, +    ErrorAtIndex: ErrorAtIndex, +    ErrorAtProperty: ErrorAtProperty, +    JSONError: JSONError, +    fail: fail, +    readArray: readArray, +    readBoolean: readBoolean, +    readChar: readChar, +    readInt: readInt, +    readNull: readNull, +    readNullOrUndefined: readNullOrUndefined, +    readNumber: readNumber, +    readString: readString, +    readUndefined: readUndefined, +    renderForeignError: renderForeignError, +    unsafeReadTagged: unsafeReadTagged, +    eqForeignError: eqForeignError, +    ordForeignError: ordForeignError, +    showForeignError: showForeignError, +    isArray: $foreign.isArray, +    isNull: $foreign.isNull, +    isUndefined: $foreign.isUndefined, +    tagOf: $foreign.tagOf, +    toForeign: $foreign.toForeign, +    typeOf: $foreign.typeOf, +    unsafeFromForeign: $foreign.unsafeFromForeign+};++},{"../Control.Applicative":40,"../Control.Monad.Error.Class":72,"../Control.Monad.Except":74,"../Control.Monad.Except.Trans":73,"../Control.Semigroupoid":93,"../Data.Boolean":130,"../Data.Either":138,"../Data.Eq":140,"../Data.Function":151,"../Data.HeytingAlgebra":162,"../Data.Identity":163,"../Data.Int":167,"../Data.List.NonEmpty":198,"../Data.Maybe":204,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Show":241,"../Data.String":249,"../Prelude":278,"./foreign":146}],148:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Generic = require("../Data.Generic");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_String = require("../Data.String");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Global = require("../Global");+var Prelude = require("../Prelude");+var FormURLEncoded = function (x) {+    return x;+};+var toArray = function (v) {+    return v;+};+var showFormUrlEncoded = Data_Show.showArray(Data_Tuple.showTuple(Data_Show.showString)(Data_Maybe.showMaybe(Data_Show.showString)));+var semigroupFormUrlEncoded = Data_Semigroup.semigroupArray;+var ordFormUrlEncoded = Data_Ord.ordArray(Data_Tuple.ordTuple(Data_Ord.ordString)(Data_Maybe.ordMaybe(Data_Ord.ordString)));+var newtypeFormUrlEncoded = new Data_Newtype.Newtype(function (n) {+    return n;+}, FormURLEncoded);+var monoidFormUrlEncoded = Data_Monoid.monoidArray;+var genericFormUrlEncoded = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.FormURLEncoded.FormURLEncoded" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(FormURLEncoded))(Data_Generic.fromSpine(Data_Generic.genericArray(Data_Generic.genericTuple(Data_Generic.genericString)(Data_Generic.genericMaybe(Data_Generic.genericString))))(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.FormURLEncoded.FormURLEncoded", [ {+        sigConstructor: "Data.FormURLEncoded.FormURLEncoded", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericArray(Data_Generic.genericTuple(Data_Generic.genericString)(Data_Generic.genericMaybe(Data_Generic.genericString))))(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.FormURLEncoded.FormURLEncoded", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericArray(Data_Generic.genericTuple(Data_Generic.genericString)(Data_Generic.genericMaybe(Data_Generic.genericString))))(v);+    } ]);+});+var fromArray = FormURLEncoded;+var eqFormUrlEncoded = Data_Eq.eqArray(Data_Tuple.eqTuple(Data_Eq.eqString)(Data_Maybe.eqMaybe(Data_Eq.eqString)));+var encode = (function () {+    var encodePart = function (v) {+        if (v.value1 instanceof Data_Maybe.Nothing) {+            return Global["encodeURIComponent"](v.value0);+        };+        if (v.value1 instanceof Data_Maybe.Just) {+            return Global["encodeURIComponent"](v.value0) + ("=" + Global["encodeURIComponent"](v.value1.value0));+        };+        throw new Error("Failed pattern match at Data.FormURLEncoded line 43, column 5 - line 43, column 56: " + [ v.constructor.name ]);+    };+    return function ($21) {+        return Data_String.joinWith("&")(Data_Functor.map(Data_Functor.functorArray)(encodePart)(toArray($21)));+    };+})();+module.exports = {+    FormURLEncoded: FormURLEncoded, +    encode: encode, +    fromArray: fromArray, +    toArray: toArray, +    genericFormUrlEncoded: genericFormUrlEncoded, +    newtypeFormUrlEncoded: newtypeFormUrlEncoded, +    eqFormUrlEncoded: eqFormUrlEncoded, +    ordFormUrlEncoded: ordFormUrlEncoded, +    showFormUrlEncoded: showFormUrlEncoded, +    semigroupFormUrlEncoded: semigroupFormUrlEncoded, +    monoidFormUrlEncoded: monoidFormUrlEncoded+};++},{"../Control.Apply":42,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Functor":157,"../Data.Generic":159,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Data.String":249,"../Data.Tuple":255,"../Data.Unit":259,"../Global":262,"../Prelude":278}],149:[function(require,module,exports){+"use strict";++// module Data.Function.Uncurried++exports.mkFn0 = function (fn) {+  return function () {+    return fn({});+  };+};++exports.mkFn2 = function (fn) {+  /* jshint maxparams: 2 */+  return function (a, b) {+    return fn(a)(b);+  };+};++exports.mkFn3 = function (fn) {+  /* jshint maxparams: 3 */+  return function (a, b, c) {+    return fn(a)(b)(c);+  };+};++exports.mkFn4 = function (fn) {+  /* jshint maxparams: 4 */+  return function (a, b, c, d) {+    return fn(a)(b)(c)(d);+  };+};++exports.mkFn5 = function (fn) {+  /* jshint maxparams: 5 */+  return function (a, b, c, d, e) {+    return fn(a)(b)(c)(d)(e);+  };+};++exports.mkFn6 = function (fn) {+  /* jshint maxparams: 6 */+  return function (a, b, c, d, e, f) {+    return fn(a)(b)(c)(d)(e)(f);+  };+};++exports.mkFn7 = function (fn) {+  /* jshint maxparams: 7 */+  return function (a, b, c, d, e, f, g) {+    return fn(a)(b)(c)(d)(e)(f)(g);+  };+};++exports.mkFn8 = function (fn) {+  /* jshint maxparams: 8 */+  return function (a, b, c, d, e, f, g, h) {+    return fn(a)(b)(c)(d)(e)(f)(g)(h);+  };+};++exports.mkFn9 = function (fn) {+  /* jshint maxparams: 9 */+  return function (a, b, c, d, e, f, g, h, i) {+    return fn(a)(b)(c)(d)(e)(f)(g)(h)(i);+  };+};++exports.mkFn10 = function (fn) {+  /* jshint maxparams: 10 */+  return function (a, b, c, d, e, f, g, h, i, j) {+    return fn(a)(b)(c)(d)(e)(f)(g)(h)(i)(j);+  };+};++exports.runFn0 = function (fn) {+  return fn();+};++exports.runFn2 = function (fn) {+  return function (a) {+    return function (b) {+      return fn(a, b);+    };+  };+};++exports.runFn3 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return fn(a, b, c);+      };+    };+  };+};++exports.runFn4 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return fn(a, b, c, d);+        };+      };+    };+  };+};++exports.runFn5 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return function (e) {+            return fn(a, b, c, d, e);+          };+        };+      };+    };+  };+};++exports.runFn6 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return function (e) {+            return function (f) {+              return fn(a, b, c, d, e, f);+            };+          };+        };+      };+    };+  };+};++exports.runFn7 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return function (e) {+            return function (f) {+              return function (g) {+                return fn(a, b, c, d, e, f, g);+              };+            };+          };+        };+      };+    };+  };+};++exports.runFn8 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return function (e) {+            return function (f) {+              return function (g) {+                return function (h) {+                  return fn(a, b, c, d, e, f, g, h);+                };+              };+            };+          };+        };+      };+    };+  };+};++exports.runFn9 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return function (e) {+            return function (f) {+              return function (g) {+                return function (h) {+                  return function (i) {+                    return fn(a, b, c, d, e, f, g, h, i);+                  };+                };+              };+            };+          };+        };+      };+    };+  };+};++exports.runFn10 = function (fn) {+  return function (a) {+    return function (b) {+      return function (c) {+        return function (d) {+          return function (e) {+            return function (f) {+              return function (g) {+                return function (h) {+                  return function (i) {+                    return function (j) {+                      return fn(a, b, c, d, e, f, g, h, i, j);+                    };+                  };+                };+              };+            };+          };+        };+      };+    };+  };+};++},{}],150:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Unit = require("../Data.Unit");+var runFn1 = function (f) {+    return f;+};+var mkFn1 = function (f) {+    return f;+};+module.exports = {+    mkFn1: mkFn1, +    runFn1: runFn1, +    mkFn0: $foreign.mkFn0, +    mkFn10: $foreign.mkFn10, +    mkFn2: $foreign.mkFn2, +    mkFn3: $foreign.mkFn3, +    mkFn4: $foreign.mkFn4, +    mkFn5: $foreign.mkFn5, +    mkFn6: $foreign.mkFn6, +    mkFn7: $foreign.mkFn7, +    mkFn8: $foreign.mkFn8, +    mkFn9: $foreign.mkFn9, +    runFn0: $foreign.runFn0, +    runFn10: $foreign.runFn10, +    runFn2: $foreign.runFn2, +    runFn3: $foreign.runFn3, +    runFn4: $foreign.runFn4, +    runFn5: $foreign.runFn5, +    runFn6: $foreign.runFn6, +    runFn7: $foreign.runFn7, +    runFn8: $foreign.runFn8, +    runFn9: $foreign.runFn9+};++},{"../Data.Unit":259,"./foreign":149}],151:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var on = function (f) {+    return function (g) {+        return function (x) {+            return function (y) {+                return f(g(x))(g(y));+            };+        };+    };+};+var flip = function (f) {+    return function (b) {+        return function (a) {+            return f(a)(b);+        };+    };+};+var $$const = function (a) {+    return function (v) {+        return a;+    };+};+var applyFlipped = function (x) {+    return function (f) {+        return f(x);+    };+};+var apply = function (f) {+    return function (x) {+        return f(x);+    };+};+module.exports = {+    apply: apply, +    applyFlipped: applyFlipped, +    "const": $$const, +    flip: flip, +    on: on+};++},{"../Control.Category":47}],152:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad = require("../Control.Monad");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Functor = require("../Data.Functor");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var App = function (x) {+    return x;+};+var traversableApp = function (dictTraversable) {+    return dictTraversable;+};+var showApp = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(App " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semigroupApp = function (dictApply) {+    return function (dictSemigroup) {+        return new Data_Semigroup.Semigroup(function (v) {+            return function (v1) {+                return Control_Apply.lift2(dictApply)(Data_Semigroup.append(dictSemigroup))(v)(v1);+            };+        });+    };+};+var plusApp = function (dictPlus) {+    return dictPlus;+};+var newtypeApp = new Data_Newtype.Newtype(function (n) {+    return n;+}, App);+var monoidApp = function (dictApplicative) {+    return function (dictMonoid) {+        return new Data_Monoid.Monoid(function () {+            return semigroupApp(dictApplicative.Apply0())(dictMonoid.Semigroup0());+        }, Control_Applicative.pure(dictApplicative)(Data_Monoid.mempty(dictMonoid)));+    };+};+var monadZeroApp = function (dictMonadZero) {+    return dictMonadZero;+};+var monadPlusApp = function (dictMonadPlus) {+    return dictMonadPlus;+};+var monadApp = function (dictMonad) {+    return dictMonad;+};+var lazyApp = function (dictLazy) {+    return dictLazy;+};+var hoistLowerApp = Unsafe_Coerce.unsafeCoerce;+var hoistLiftApp = Unsafe_Coerce.unsafeCoerce;+var hoistApp = function (f) {+    return function (v) {+        return f(v);+    };+};+var functorApp = function (dictFunctor) {+    return dictFunctor;+};+var foldableApp = function (dictFoldable) {+    return dictFoldable;+};+var extendApp = function (dictExtend) {+    return dictExtend;+};+var eq1App = function (dictEq1) {+    return new Data_Eq.Eq1(function (dictEq) {+        return function (v) {+            return function (v1) {+                return Data_Eq.eq1(dictEq1)(dictEq)(v)(v1);+            };+        };+    });+};+var eqApp = function (dictEq1) {+    return function (dictEq) {+        return new Data_Eq.Eq(Data_Eq.eq1(eq1App(dictEq1))(dictEq));+    };+};+var ord1App = function (dictOrd1) {+    return new Data_Ord.Ord1(function () {+        return eq1App(dictOrd1.Eq10());+    }, function (dictOrd) {+        return function (v) {+            return function (v1) {+                return Data_Ord.compare1(dictOrd1)(dictOrd)(v)(v1);+            };+        };+    });+};+var ordApp = function (dictOrd1) {+    return function (dictOrd) {+        return new Data_Ord.Ord(function () {+            return eqApp(dictOrd1.Eq10())(dictOrd.Eq0());+        }, Data_Ord.compare1(ord1App(dictOrd1))(dictOrd));+    };+};+var comonadApp = function (dictComonad) {+    return dictComonad;+};+var bindApp = function (dictBind) {+    return dictBind;+};+var applyApp = function (dictApply) {+    return dictApply;+};+var applicativeApp = function (dictApplicative) {+    return dictApplicative;+};+var alternativeApp = function (dictAlternative) {+    return dictAlternative;+};+var altApp = function (dictAlt) {+    return dictAlt;+};+module.exports = {+    App: App, +    hoistApp: hoistApp, +    hoistLiftApp: hoistLiftApp, +    hoistLowerApp: hoistLowerApp, +    newtypeApp: newtypeApp, +    eqApp: eqApp, +    eq1App: eq1App, +    ordApp: ordApp, +    ord1App: ord1App, +    showApp: showApp, +    semigroupApp: semigroupApp, +    monoidApp: monoidApp, +    functorApp: functorApp, +    applyApp: applyApp, +    applicativeApp: applicativeApp, +    bindApp: bindApp, +    monadApp: monadApp, +    altApp: altApp, +    plusApp: plusApp, +    alternativeApp: alternativeApp, +    monadZeroApp: monadZeroApp, +    monadPlusApp: monadPlusApp, +    lazyApp: lazyApp, +    foldableApp: foldableApp, +    traversableApp: traversableApp, +    extendApp: extendApp, +    comonadApp: comonadApp+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Lazy":51,"../Control.Monad":87,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Functor":157,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Traversable":254,"../Prelude":278,"../Unsafe.Coerce":282}],153:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_App = require("../Data.Functor.App");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Compose = function (x) {+    return x;+};+var showCompose = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Compose " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var newtypeCompose = new Data_Newtype.Newtype(function (n) {+    return n;+}, Compose);+var functorCompose = function (dictFunctor) {+    return function (dictFunctor1) {+        return new Data_Functor.Functor(function (f) {+            return function (v) {+                return Compose(Data_Functor.map(dictFunctor)(Data_Functor.map(dictFunctor1)(f))(v));+            };+        });+    };+};+var foldableCompose = function (dictFoldable) {+    return function (dictFoldable1) {+        return new Data_Foldable.Foldable(function (dictMonoid) {+            return function (f) {+                return function (v) {+                    return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(Data_Foldable.foldMap(dictFoldable1)(dictMonoid)(f))(v);+                };+            };+        }, function (f) {+            return function (i) {+                return function (v) {+                    return Data_Foldable.foldl(dictFoldable)(Data_Foldable.foldl(dictFoldable1)(f))(i)(v);+                };+            };+        }, function (f) {+            return function (i) {+                return function (v) {+                    return Data_Foldable.foldr(dictFoldable)(Data_Function.flip(Data_Foldable.foldr(dictFoldable1)(f)))(i)(v);+                };+            };+        });+    };+};+var traversableCompose = function (dictTraversable) {+    return function (dictTraversable1) {+        return new Data_Traversable.Traversable(function () {+            return foldableCompose(dictTraversable.Foldable1())(dictTraversable1.Foldable1());+        }, function () {+            return functorCompose(dictTraversable.Functor0())(dictTraversable1.Functor0());+        }, function (dictApplicative) {+            return Data_Traversable.traverse(traversableCompose(dictTraversable)(dictTraversable1))(dictApplicative)(Control_Category.id(Control_Category.categoryFn));+        }, function (dictApplicative) {+            return function (f) {+                return function (v) {+                    return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Compose)(Data_Traversable.traverse(dictTraversable)(dictApplicative)(Data_Traversable.traverse(dictTraversable1)(dictApplicative)(f))(v));+                };+            };+        });+    };+};+var eq1Compose = function (dictEq1) {+    return function (dictEq11) {+        return new Data_Eq.Eq1(function (dictEq) {+            return function (v) {+                return function (v1) {+                    return Data_Eq.eq1(dictEq1)(Data_Functor_App.eqApp(dictEq11)(dictEq))(Data_Functor_App.hoistLiftApp(v))(Data_Functor_App.hoistLiftApp(v1));+                };+            };+        });+    };+};+var eqCompose = function (dictEq1) {+    return function (dictEq11) {+        return function (dictEq) {+            return new Data_Eq.Eq(Data_Eq.eq1(eq1Compose(dictEq1)(dictEq11))(dictEq));+        };+    };+};+var ord1Compose = function (dictOrd1) {+    return function (dictOrd11) {+        return new Data_Ord.Ord1(function () {+            return eq1Compose(dictOrd1.Eq10())(dictOrd11.Eq10());+        }, function (dictOrd) {+            return function (v) {+                return function (v1) {+                    return Data_Ord.compare1(dictOrd1)(Data_Functor_App.ordApp(dictOrd11)(dictOrd))(Data_Functor_App.hoistLiftApp(v))(Data_Functor_App.hoistLiftApp(v1));+                };+            };+        });+    };+};+var ordCompose = function (dictOrd1) {+    return function (dictOrd11) {+        return function (dictOrd) {+            return new Data_Ord.Ord(function () {+                return eqCompose(dictOrd1.Eq10())(dictOrd11.Eq10())(dictOrd.Eq0());+            }, Data_Ord.compare1(ord1Compose(dictOrd1)(dictOrd11))(dictOrd));+        };+    };+};+var bihoistCompose = function (dictFunctor) {+    return function (natF) {+        return function (natG) {+            return function (v) {+                return natF(Data_Functor.map(dictFunctor)(natG)(v));+            };+        };+    };+};+var applyCompose = function (dictApply) {+    return function (dictApply1) {+        return new Control_Apply.Apply(function () {+            return functorCompose(dictApply.Functor0())(dictApply1.Functor0());+        }, function (v) {+            return function (v1) {+                return Compose(Control_Apply.apply(dictApply)(Data_Functor.map(dictApply.Functor0())(Control_Apply.apply(dictApply1))(v))(v1));+            };+        });+    };+};+var applicativeCompose = function (dictApplicative) {+    return function (dictApplicative1) {+        return new Control_Applicative.Applicative(function () {+            return applyCompose(dictApplicative.Apply0())(dictApplicative1.Apply0());+        }, function ($75) {+            return Compose(Control_Applicative.pure(dictApplicative)(Control_Applicative.pure(dictApplicative1)($75)));+        });+    };+};+var altCompose = function (dictAlt) {+    return function (dictFunctor) {+        return new Control_Alt.Alt(function () {+            return functorCompose(dictAlt.Functor0())(dictFunctor);+        }, function (v) {+            return function (v1) {+                return Compose(Control_Alt.alt(dictAlt)(v)(v1));+            };+        });+    };+};+var plusCompose = function (dictPlus) {+    return function (dictFunctor) {+        return new Control_Plus.Plus(function () {+            return altCompose(dictPlus.Alt0())(dictFunctor);+        }, Control_Plus.empty(dictPlus));+    };+};+var alternativeCompose = function (dictAlternative) {+    return function (dictApplicative) {+        return new Control_Alternative.Alternative(function () {+            return applicativeCompose(dictAlternative.Applicative0())(dictApplicative);+        }, function () {+            return plusCompose(dictAlternative.Plus1())((dictApplicative.Apply0()).Functor0());+        });+    };+};+module.exports = {+    Compose: Compose, +    bihoistCompose: bihoistCompose, +    newtypeCompose: newtypeCompose, +    eq1Compose: eq1Compose, +    eqCompose: eqCompose, +    ord1Compose: ord1Compose, +    ordCompose: ordCompose, +    showCompose: showCompose, +    functorCompose: functorCompose, +    applyCompose: applyCompose, +    applicativeCompose: applicativeCompose, +    foldableCompose: foldableCompose, +    traversableCompose: traversableCompose, +    altCompose: altCompose, +    plusCompose: plusCompose, +    alternativeCompose: alternativeCompose+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.App":152,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Traversable":254,"../Prelude":278}],154:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Functor = require("../Data.Functor");+var Data_Void = require("../Data.Void");+var Prelude = require("../Prelude");+var Contravariant = function (cmap) {+    this.cmap = cmap;+};+var cmap = function (dict) {+    return dict.cmap;+};+var cmapFlipped = function (dictContravariant) {+    return function (x) {+        return function (f) {+            return cmap(dictContravariant)(f)(x);+        };+    };+};+var coerce = function (dictContravariant) {+    return function (dictFunctor) {+        return function (a) {+            return Data_Functor.map(dictFunctor)(Data_Void.absurd)(cmap(dictContravariant)(Data_Void.absurd)(a));+        };+    };+};+module.exports = {+    Contravariant: Contravariant, +    cmap: cmap, +    cmapFlipped: cmapFlipped, +    coerce: coerce+};++},{"../Data.Functor":157,"../Data.Void":260,"../Prelude":278}],155:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Functor = require("../Data.Functor");+var Invariant = function (imap) {+    this.imap = imap;+};+var imapF = function (dictFunctor) {+    return function (f) {+        return function (v) {+            return Data_Functor.map(dictFunctor)(f);+        };+    };+};+var invariantArray = new Invariant(imapF(Data_Functor.functorArray));+var invariantFn = new Invariant(imapF(Data_Functor.functorFn));+var imap = function (dict) {+    return dict.imap;+};+module.exports = {+    Invariant: Invariant, +    imap: imap, +    imapF: imapF, +    invariantFn: invariantFn, +    invariantArray: invariantArray+};++},{"../Data.Functor":157}],156:[function(require,module,exports){+"use strict";++exports.arrayMap = function (f) {+  return function (arr) {+    var l = arr.length;+    var result = new Array(l);+    for (var i = 0; i < l; i++) {+      result[i] = f(arr[i]);+    }+    return result;+  };+};++},{}],157:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Unit = require("../Data.Unit");+var Functor = function (map) {+    this.map = map;+};+var map = function (dict) {+    return dict.map;+};+var mapFlipped = function (dictFunctor) {+    return function (fa) {+        return function (f) {+            return map(dictFunctor)(f)(fa);+        };+    };+};+var $$void = function (dictFunctor) {+    return map(dictFunctor)(Data_Function["const"](Data_Unit.unit));+};+var voidLeft = function (dictFunctor) {+    return function (f) {+        return function (x) {+            return map(dictFunctor)(Data_Function["const"](x))(f);+        };+    };+};+var voidRight = function (dictFunctor) {+    return function (x) {+        return map(dictFunctor)(Data_Function["const"](x));+    };+};+var functorFn = new Functor(Control_Semigroupoid.compose(Control_Semigroupoid.semigroupoidFn));+var functorArray = new Functor($foreign.arrayMap);+var flap = function (dictFunctor) {+    return function (ff) {+        return function (x) {+            return map(dictFunctor)(function (f) {+                return f(x);+            })(ff);+        };+    };+};+module.exports = {+    Functor: Functor, +    flap: flap, +    map: map, +    mapFlipped: mapFlipped, +    "void": $$void, +    voidLeft: voidLeft, +    voidRight: voidRight, +    functorFn: functorFn, +    functorArray: functorArray+};++},{"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Unit":259,"./foreign":156}],158:[function(require,module,exports){+"use strict";++// module Data.Generic++exports.zipAll = function (f) {+  return function (xs) {+    return function (ys) {+      var l = xs.length < ys.length ? xs.length : ys.length;+      for (var i = 0; i < l; i++) {+        if (!f(xs[i])(ys[i])) {+          return false;+        }+      }+      return true;+    };+  };+};++exports.zipCompare = function (f) {+  return function (xs) {+    return function (ys) {+      var i = 0;+      var xlen = xs.length;+      var ylen = ys.length;+      while (i < xlen && i < ylen) {+        var o = f(xs[i])(ys[i]);+        if (o !== 0) {+          return o;+        }+        i++;+      }+      if (xlen === ylen) {+        return 0;+      } else if (xlen > ylen) {+        return -1;+      } else {+        return 1;+      }+    };+  };+};++},{}],159:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Array = require("../Data.Array");+var Data_Boolean = require("../Data.Boolean");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Identity = require("../Data.Identity");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_String = require("../Data.String");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Data_Void = require("../Data.Void");+var Prelude = require("../Prelude");+var Type_Proxy = require("../Type.Proxy");+var SProd = (function () {+    function SProd(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    SProd.create = function (value0) {+        return function (value1) {+            return new SProd(value0, value1);+        };+    };+    return SProd;+})();+var SRecord = (function () {+    function SRecord(value0) {+        this.value0 = value0;+    };+    SRecord.create = function (value0) {+        return new SRecord(value0);+    };+    return SRecord;+})();+var SNumber = (function () {+    function SNumber(value0) {+        this.value0 = value0;+    };+    SNumber.create = function (value0) {+        return new SNumber(value0);+    };+    return SNumber;+})();+var SBoolean = (function () {+    function SBoolean(value0) {+        this.value0 = value0;+    };+    SBoolean.create = function (value0) {+        return new SBoolean(value0);+    };+    return SBoolean;+})();+var SInt = (function () {+    function SInt(value0) {+        this.value0 = value0;+    };+    SInt.create = function (value0) {+        return new SInt(value0);+    };+    return SInt;+})();+var SString = (function () {+    function SString(value0) {+        this.value0 = value0;+    };+    SString.create = function (value0) {+        return new SString(value0);+    };+    return SString;+})();+var SChar = (function () {+    function SChar(value0) {+        this.value0 = value0;+    };+    SChar.create = function (value0) {+        return new SChar(value0);+    };+    return SChar;+})();+var SArray = (function () {+    function SArray(value0) {+        this.value0 = value0;+    };+    SArray.create = function (value0) {+        return new SArray(value0);+    };+    return SArray;+})();+var SUnit = (function () {+    function SUnit() {++    };+    SUnit.value = new SUnit();+    return SUnit;+})();+var SigProd = (function () {+    function SigProd(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    SigProd.create = function (value0) {+        return function (value1) {+            return new SigProd(value0, value1);+        };+    };+    return SigProd;+})();+var SigRecord = (function () {+    function SigRecord(value0) {+        this.value0 = value0;+    };+    SigRecord.create = function (value0) {+        return new SigRecord(value0);+    };+    return SigRecord;+})();+var SigNumber = (function () {+    function SigNumber() {++    };+    SigNumber.value = new SigNumber();+    return SigNumber;+})();+var SigBoolean = (function () {+    function SigBoolean() {++    };+    SigBoolean.value = new SigBoolean();+    return SigBoolean;+})();+var SigInt = (function () {+    function SigInt() {++    };+    SigInt.value = new SigInt();+    return SigInt;+})();+var SigString = (function () {+    function SigString() {++    };+    SigString.value = new SigString();+    return SigString;+})();+var SigChar = (function () {+    function SigChar() {++    };+    SigChar.value = new SigChar();+    return SigChar;+})();+var SigArray = (function () {+    function SigArray(value0) {+        this.value0 = value0;+    };+    SigArray.create = function (value0) {+        return new SigArray(value0);+    };+    return SigArray;+})();+var SigUnit = (function () {+    function SigUnit() {++    };+    SigUnit.value = new SigUnit();+    return SigUnit;+})();+var Generic = function (fromSpine, toSignature, toSpine) {+    this.fromSpine = fromSpine;+    this.toSignature = toSignature;+    this.toSpine = toSpine;+};+var toSpine = function (dict) {+    return dict.toSpine;+};+var toSignature = function (dict) {+    return dict.toSignature;+};+var showSuspended = function (dictShow) {+    return function (e) {+        return "\\_ -> " + Data_Show.show(dictShow)(e(Data_Unit.unit));+    };+};+var showArray = function (v) {+    return function (v1) {+        if (v1.length === 0) {+            return "[]";+        };+        return "[ " + (Data_Foldable.intercalate(Data_Foldable.foldableArray)(Data_Monoid.monoidString)(", ")(Data_Functor.map(Data_Functor.functorArray)(v)(v1)) + " ]");+    };+};+var showGenericSpine = new Data_Show.Show(function (v) {+    if (v instanceof SUnit) {+        return "SUnit";+    };+    if (v instanceof SChar) {+        return "SChar " + Data_Show.show(Data_Show.showChar)(v.value0);+    };+    if (v instanceof SString) {+        return "SString " + Data_Show.show(Data_Show.showString)(v.value0);+    };+    if (v instanceof SBoolean) {+        return "SBoolean " + Data_Show.show(Data_Show.showBoolean)(v.value0);+    };+    if (v instanceof SNumber) {+        return "SNumber " + Data_Show.show(Data_Show.showNumber)(v.value0);+    };+    if (v instanceof SInt) {+        return "SInt " + Data_Show.show(Data_Show.showInt)(v.value0);+    };+    if (v instanceof SArray) {+        return "SArray " + showArray(showSuspended(showGenericSpine))(v.value0);+    };+    if (v instanceof SProd) {+        return "SProd " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + showArray(showSuspended(showGenericSpine))(v.value1)));+    };+    if (v instanceof SRecord) {+        var showElt = function (v1) {+            return Data_Foldable.fold(Data_Foldable.foldableArray)(Data_Monoid.monoidString)([ "{ recLabel: ", Data_Show.show(Data_Show.showString)(v1.recLabel), ", recValue: ", showSuspended(showGenericSpine)(v1.recValue), " }" ]);+        };+        return "SRecord " + showArray(showElt)(v.value0);+    };+    throw new Error("Failed pattern match at Data.Generic line 272, column 9 - line 273, column 9: " + [ v.constructor.name ]);+});+var orderingToInt = function (v) {+    if (v instanceof Data_Ordering.EQ) {+        return 0;+    };+    if (v instanceof Data_Ordering.LT) {+        return 1;+    };+    if (v instanceof Data_Ordering.GT) {+        return -1 | 0;+    };+    throw new Error("Failed pattern match at Data.Generic line 538, column 17 - line 541, column 10: " + [ v.constructor.name ]);+};+var genericVoid = new Generic(function (v) {+    return Data_Maybe.Nothing.value;+}, function (v) {+    return new SigProd("Data.Void.Void", [  ]);+}, Data_Void.absurd);+var genericUnit = new Generic(function (v) {+    if (v instanceof SUnit) {+        return new Data_Maybe.Just(Data_Unit.unit);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return SigUnit.value;+}, function (v) {+    return SUnit.value;+});+var genericString = new Generic(function (v) {+    if (v instanceof SString) {+        return new Data_Maybe.Just(v.value0);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return SigString.value;+}, SString.create);+var genericOrdering = new Generic(function (v) {+    if (v instanceof SProd && (v.value0 === "Data.Ordering.LT" && v.value1.length === 0)) {+        return new Data_Maybe.Just(Data_Ordering.LT.value);+    };+    if (v instanceof SProd && (v.value0 === "Data.Ordering.EQ" && v.value1.length === 0)) {+        return new Data_Maybe.Just(Data_Ordering.EQ.value);+    };+    if (v instanceof SProd && (v.value0 === "Data.Ordering.GT" && v.value1.length === 0)) {+        return new Data_Maybe.Just(Data_Ordering.GT.value);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return new SigProd("Data.Ordering.Ordering", [ {+        sigConstructor: "Data.Ordering.LT", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.Ordering.EQ", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.Ordering.GT", +        sigValues: [  ]+    } ]);+}, function (v) {+    if (v instanceof Data_Ordering.LT) {+        return new SProd("Data.Ordering.LT", [  ]);+    };+    if (v instanceof Data_Ordering.EQ) {+        return new SProd("Data.Ordering.EQ", [  ]);+    };+    if (v instanceof Data_Ordering.GT) {+        return new SProd("Data.Ordering.GT", [  ]);+    };+    throw new Error("Failed pattern match at Data.Generic line 218, column 13 - line 221, column 38: " + [ v.constructor.name ]);+});+var genericNumber = new Generic(function (v) {+    if (v instanceof SNumber) {+        return new Data_Maybe.Just(v.value0);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return SigNumber.value;+}, SNumber.create);+var genericInt = new Generic(function (v) {+    if (v instanceof SInt) {+        return new Data_Maybe.Just(v.value0);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return SigInt.value;+}, SInt.create);+var genericChar = new Generic(function (v) {+    if (v instanceof SChar) {+        return new Data_Maybe.Just(v.value0);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return SigChar.value;+}, SChar.create);+var genericBool = new Generic(function (v) {+    if (v instanceof SBoolean) {+        return new Data_Maybe.Just(v.value0);+    };+    return Data_Maybe.Nothing.value;+}, function (v) {+    return SigBoolean.value;+}, SBoolean.create);+var fromSpine = function (dict) {+    return dict.fromSpine;+};+var force = function (f) {+    return f(Data_Unit.unit);+};+var genericArray = function (dictGeneric) {+    return new Generic(function (v) {+        if (v instanceof SArray) {+            return Data_Traversable.traverse(Data_Traversable.traversableArray)(Data_Maybe.applicativeMaybe)(function ($310) {+                return fromSpine(dictGeneric)(force($310));+            })(v.value0);+        };+        return Data_Maybe.Nothing.value;+    }, function (x) {+        var lowerProxy = function (v) {+            return Type_Proxy["Proxy"].value;+        };+        return new SigArray(function (v) {+            return toSignature(dictGeneric)(lowerProxy(x));+        });+    }, function ($311) {+        return SArray.create(Data_Functor.map(Data_Functor.functorArray)(function (x) {+            return function (v) {+                return toSpine(dictGeneric)(x);+            };+        })($311));+    });+};+var genericEither = function (dictGeneric) {+    return function (dictGeneric1) {+        return new Generic(function (v) {+            if (v instanceof SProd && (v.value0 === "Data.Either.Left" && v.value1.length === 1)) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Either.Left.create)(fromSpine(dictGeneric)(force(v["value1"][0])));+            };+            if (v instanceof SProd && (v.value0 === "Data.Either.Right" && v.value1.length === 1)) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Either.Right.create)(fromSpine(dictGeneric1)(force(v["value1"][0])));+            };+            return Data_Maybe.Nothing.value;+        }, function (x) {+            var rproxy = function (v) {+                return Type_Proxy["Proxy"].value;+            };+            var lproxy = function (v) {+                return Type_Proxy["Proxy"].value;+            };+            return new SigProd("Data.Either.Either", [ {+                sigConstructor: "Data.Either.Left", +                sigValues: [ function (v) {+                    return toSignature(dictGeneric)(lproxy(x));+                } ]+            }, {+                sigConstructor: "Data.Either.Right", +                sigValues: [ function (v) {+                    return toSignature(dictGeneric1)(rproxy(x));+                } ]+            } ]);+        }, function (v) {+            if (v instanceof Data_Either.Left) {+                return new SProd("Data.Either.Left", [ function (v1) {+                    return toSpine(dictGeneric)(v.value0);+                } ]);+            };+            if (v instanceof Data_Either.Right) {+                return new SProd("Data.Either.Right", [ function (v1) {+                    return toSpine(dictGeneric1)(v.value0);+                } ]);+            };+            throw new Error("Failed pattern match at Data.Generic line 181, column 3 - line 181, column 64: " + [ v.constructor.name ]);+        });+    };+};+var genericIdentity = function (dictGeneric) {+    return new Generic(function (v) {+        if (v instanceof SProd && (v.value0 === "Data.Identity.Identity" && v.value1.length === 1)) {+            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Identity.Identity)(fromSpine(dictGeneric)(force(v["value1"][0])));+        };+        return Data_Maybe.Nothing.value;+    }, function (x) {+        var iproxy = function (v) {+            return Type_Proxy["Proxy"].value;+        };+        return new SigProd("Data.Identity.Identity", [ {+            sigConstructor: "Data.Identity.Identity", +            sigValues: [ function (v) {+                return toSignature(dictGeneric)(iproxy(x));+            } ]+        } ]);+    }, function (v) {+        return new SProd("Data.Identity.Identity", [ function (v1) {+            return toSpine(dictGeneric)(v);+        } ]);+    });+};+var genericList = function (dictGeneric) {+    return new Generic(function (v) {+        if (v instanceof SProd && (v.value0 === "Data.List.Types.Cons" && v.value1.length === 2)) {+            return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_List_Types.Cons.create)(fromSpine(dictGeneric)(force(v["value1"][0]))))(fromSpine(genericList(dictGeneric))(force(v["value1"][1])));+        };+        if (v instanceof SProd && (v.value0 === "Data.List.Types.Nil" && v.value1.length === 0)) {+            return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(Data_List_Types.Nil.value);+        };+        return Data_Maybe.Nothing.value;+    }, function (x) {+        var headProxy = function (v) {+            return Type_Proxy["Proxy"].value;+        };+        return new SigProd("Data.List.Types.List", [ {+            sigConstructor: "Data.List.Types.Cons", +            sigValues: [ function (v) {+                return toSignature(dictGeneric)(headProxy(x));+            }, function (v) {+                return toSignature(genericList(dictGeneric))(x);+            } ]+        }, {+            sigConstructor: "Data.List.Types.Nil", +            sigValues: [  ]+        } ]);+    }, function (v) {+        if (v instanceof Data_List_Types.Cons) {+            return new SProd("Data.List.Types.Cons", [ function (v1) {+                return toSpine(dictGeneric)(v.value0);+            }, function (v1) {+                return toSpine(genericList(dictGeneric))(v.value1);+            } ]);+        };+        if (v instanceof Data_List_Types.Nil) {+            return new SProd("Data.List.Types.Nil", [  ]);+        };+        throw new Error("Failed pattern match at Data.Generic line 117, column 3 - line 118, column 68: " + [ v.constructor.name ]);+    });+};+var genericMaybe = function (dictGeneric) {+    return new Generic(function (v) {+        if (v instanceof SProd && (v.value0 === "Data.Maybe.Just" && v.value1.length === 1)) {+            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Maybe.Just.create)(fromSpine(dictGeneric)(force(v["value1"][0])));+        };+        if (v instanceof SProd && (v.value0 === "Data.Maybe.Nothing" && v.value1.length === 0)) {+            return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(Data_Maybe.Nothing.value);+        };+        return Data_Maybe.Nothing.value;+    }, function (x) {+        var mbProxy = function (v) {+            return Type_Proxy["Proxy"].value;+        };+        return new SigProd("Data.Maybe.Maybe", [ {+            sigConstructor: "Data.Maybe.Just", +            sigValues: [ function (v) {+                return toSignature(dictGeneric)(mbProxy(x));+            } ]+        }, {+            sigConstructor: "Data.Maybe.Nothing", +            sigValues: [  ]+        } ]);+    }, function (v) {+        if (v instanceof Data_Maybe.Just) {+            return new SProd("Data.Maybe.Just", [ function (v1) {+                return toSpine(dictGeneric)(v.value0);+            } ]);+        };+        if (v instanceof Data_Maybe.Nothing) {+            return new SProd("Data.Maybe.Nothing", [  ]);+        };+        throw new Error("Failed pattern match at Data.Generic line 161, column 3 - line 161, column 63: " + [ v.constructor.name ]);+    });+};+var genericNonEmpty = function (dictGeneric) {+    return function (dictGeneric1) {+        return new Generic(function (v) {+            if (v instanceof SProd && (v.value0 === "Data.NonEmpty.NonEmpty" && v.value1.length === 2)) {+                return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_NonEmpty.NonEmpty.create)(fromSpine(dictGeneric1)(force(v["value1"][0]))))(fromSpine(dictGeneric)(force(v["value1"][1])));+            };+            return Data_Maybe.Nothing.value;+        }, function (x) {+            var tailProxy = function (v) {+                return Type_Proxy["Proxy"].value;+            };+            var headProxy = function (v) {+                return Type_Proxy["Proxy"].value;+            };+            return new SigProd("Data.NonEmpty.NonEmpty", [ {+                sigConstructor: "Data.NonEmpty.NonEmpty", +                sigValues: [ function (v) {+                    return toSignature(dictGeneric1)(headProxy(x));+                }, function (v) {+                    return toSignature(dictGeneric)(tailProxy(x));+                } ]+            } ]);+        }, function (v) {+            return new SProd("Data.NonEmpty.NonEmpty", [ function (v1) {+                return toSpine(dictGeneric1)(v.value0);+            }, function (v1) {+                return toSpine(dictGeneric)(v.value1);+            } ]);+        });+    };+};+var genericNonEmptyList = function (dictGeneric) {+    return new Generic(function (v) {+        if (v instanceof SProd && (v.value0 === "Data.List.Types.NonEmptyList" && v.value1.length === 1)) {+            return Data_Functor.map(Data_Maybe.functorMaybe)(Data_List_Types.NonEmptyList)(fromSpine(genericNonEmpty(genericList(dictGeneric))(dictGeneric))(force(v["value1"][0])));+        };+        return Data_Maybe.Nothing.value;+    }, function (x) {+        var listProxy = function (v) {+            return Type_Proxy["Proxy"].value;+        };+        return new SigProd("Data.List.Types.NonEmptyList", [ {+            sigConstructor: "Data.List.Types.NonEmptyList", +            sigValues: [ function (v) {+                return toSignature(genericList(dictGeneric))(listProxy(x));+            } ]+        } ]);+    }, function (v) {+        return new SProd("Data.List.Types.NonEmptyList", [ function (v1) {+            return toSpine(genericNonEmpty(genericList(dictGeneric))(dictGeneric))(v);+        } ]);+    });+};+var genericShowPrec = function (v) {+    return function (v1) {+        if (v1 instanceof SProd) {+            if (Data_Array["null"](v1.value1)) {+                return v1.value0;+            };+            if (Data_Boolean.otherwise) {+                var showParen = function (v2) {+                    return function (x) {+                        if (!v2) {+                            return x;+                        };+                        if (v2) {+                            return "(" + (x + ")");+                        };+                        throw new Error("Failed pattern match at Data.Generic line 467, column 7 - line 467, column 28: " + [ v2.constructor.name, x.constructor.name ]);+                    };+                };+                return showParen(v > 10)(v1.value0 + (" " + Data_String.joinWith(" ")(Data_Functor.map(Data_Functor.functorArray)(function (x) {+                    return genericShowPrec(11)(force(x));+                })(v1.value1))));+            };+        };+        if (v1 instanceof SRecord) {+            var showLabelPart = function (x) {+                return x.recLabel + (": " + genericShowPrec(0)(force(x.recValue)));+            };+            return "{" + (Data_String.joinWith(", ")(Data_Functor.map(Data_Functor.functorArray)(showLabelPart)(v1.value0)) + "}");+        };+        if (v1 instanceof SBoolean) {+            return Data_Show.show(Data_Show.showBoolean)(v1.value0);+        };+        if (v1 instanceof SInt) {+            return Data_Show.show(Data_Show.showInt)(v1.value0);+        };+        if (v1 instanceof SNumber) {+            return Data_Show.show(Data_Show.showNumber)(v1.value0);+        };+        if (v1 instanceof SString) {+            return Data_Show.show(Data_Show.showString)(v1.value0);+        };+        if (v1 instanceof SChar) {+            return Data_Show.show(Data_Show.showChar)(v1.value0);+        };+        if (v1 instanceof SArray) {+            return "[" + (Data_String.joinWith(", ")(Data_Functor.map(Data_Functor.functorArray)(function (x) {+                return genericShowPrec(0)(force(x));+            })(v1.value0)) + "]");+        };+        if (v1 instanceof SUnit) {+            return "unit";+        };+        throw new Error("Failed pattern match at Data.Generic line 461, column 1 - line 469, column 1: " + [ v.constructor.name, v1.constructor.name ]);+    };+};+var gShow = function (dictGeneric) {+    return function ($312) {+        return genericShowPrec(0)(toSpine(dictGeneric)($312));+    };+};+var genericTuple = function (dictGeneric) {+    return function (dictGeneric1) {+        return new Generic(function (v) {+            if (v instanceof SProd && (v.value0 === "Data.Tuple.Tuple" && v.value1.length === 2)) {+                return Control_Apply.apply(Data_Maybe.applyMaybe)(Data_Functor.map(Data_Maybe.functorMaybe)(Data_Tuple.Tuple.create)(fromSpine(dictGeneric)(force(v["value1"][0]))))(fromSpine(dictGeneric1)(force(v["value1"][1])));+            };+            return Data_Maybe.Nothing.value;+        }, function (x) {+            var sndProxy = function (v) {+                return Type_Proxy["Proxy"].value;+            };+            var fstProxy = function (v) {+                return Type_Proxy["Proxy"].value;+            };+            return new SigProd("Data.Tuple.Tuple", [ {+                sigConstructor: "Data.Tuple.Tuple", +                sigValues: [ function (v) {+                    return toSignature(dictGeneric)(fstProxy(x));+                }, function (v) {+                    return toSignature(dictGeneric1)(sndProxy(x));+                } ]+            } ]);+        }, function (v) {+            return new SProd("Data.Tuple.Tuple", [ function (v1) {+                return toSpine(dictGeneric)(v.value0);+            }, function (v1) {+                return toSpine(dictGeneric1)(v.value1);+            } ]);+        });+    };+};+var isValidSpine = function (v) {+    return function (v1) {+        if (v instanceof SigBoolean && v1 instanceof SBoolean) {+            return true;+        };+        if (v instanceof SigNumber && v1 instanceof SNumber) {+            return true;+        };+        if (v instanceof SigInt && v1 instanceof SInt) {+            return true;+        };+        if (v instanceof SigString && v1 instanceof SString) {+            return true;+        };+        if (v instanceof SigChar && v1 instanceof SChar) {+            return true;+        };+        if (v instanceof SigArray && v1 instanceof SArray) {+            return Data_Foldable.all(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(function ($313) {+                return isValidSpine(force(v.value0))(force($313));+            })(v1.value0);+        };+        if (v instanceof SigProd && v1 instanceof SProd) {+            var v2 = Data_Foldable.find(Data_Foldable.foldableArray)(function (alt) {+                return alt.sigConstructor === v1.value0;+            })(v.value1);+            if (v2 instanceof Data_Maybe.Nothing) {+                return false;+            };+            if (v2 instanceof Data_Maybe.Just) {+                return Data_Foldable.and(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Array.zipWith(function (sig) {+                    return function (spine) {+                        return isValidSpine(force(sig))(force(spine));+                    };+                })(v2.value0.sigValues)(v1.value1));+            };+            throw new Error("Failed pattern match at Data.Generic line 438, column 3 - line 444, column 15: " + [ v2.constructor.name ]);+        };+        if (v instanceof SigRecord && v1 instanceof SRecord) {+            return Data_Foldable.and(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Array.zipWith(function (sig) {+                return function (val) {+                    return isValidSpine(force(sig.recValue))(force(val.recValue));+                };+            })(Data_Array.sortBy(function (a) {+                return function (b) {+                    return Data_Ord.compare(Data_Ord.ordString)(a.recLabel)(b.recLabel);+                };+            })(v.value0))(Data_Array.sortBy(function (a) {+                return function (b) {+                    return Data_Ord.compare(Data_Ord.ordString)(a.recLabel)(b.recLabel);+                };+            })(v1.value0)));+        };+        if (v instanceof SigUnit && v1 instanceof SUnit) {+            return true;+        };+        return false;+    };+};+var showSignature = function (sig) {+    var needsParen = function (s) {+        if (s instanceof SigProd) {+            return true;+        };+        if (s instanceof SigRecord) {+            return true;+        };+        if (s instanceof SigNumber) {+            return false;+        };+        if (s instanceof SigBoolean) {+            return false;+        };+        if (s instanceof SigInt) {+            return false;+        };+        if (s instanceof SigString) {+            return false;+        };+        if (s instanceof SigChar) {+            return false;+        };+        if (s instanceof SigArray) {+            return true;+        };+        if (s instanceof SigUnit) {+            return false;+        };+        throw new Error("Failed pattern match at Data.Generic line 403, column 18 - line 412, column 21: " + [ s.constructor.name ]);+    };+    var paren = function (s) {+        if (needsParen(s)) {+            return "(" + (showSignature(s) + ")");+        };+        if (Data_Boolean.otherwise) {+            return showSignature(s);+        };+        throw new Error("Failed pattern match at Data.Generic line 386, column 3 - line 412, column 21: " + [ s.constructor.name ]);+    };+    return Data_Foldable.fold(Data_Foldable.foldableArray)(Data_Monoid.monoidString)((function () {+        if (sig instanceof SigProd) {+            return [ "SigProd ", Data_Show.show(Data_Show.showString)(sig.value0), " ", showArray(showDataConstructor)(sig.value1) ];+        };+        if (sig instanceof SigRecord) {+            return [ "SigRecord ", showArray(showLabel)(sig.value0) ];+        };+        if (sig instanceof SigNumber) {+            return [ "SigNumber" ];+        };+        if (sig instanceof SigBoolean) {+            return [ "SigBoolean" ];+        };+        if (sig instanceof SigInt) {+            return [ "SigInt" ];+        };+        if (sig instanceof SigString) {+            return [ "SigString" ];+        };+        if (sig instanceof SigChar) {+            return [ "SigChar" ];+        };+        if (sig instanceof SigArray) {+            return [ "SigArray ", paren(force(sig.value0)) ];+        };+        if (sig instanceof SigUnit) {+            return [ "SigUnit" ];+        };+        throw new Error("Failed pattern match at Data.Generic line 386, column 10 - line 396, column 27: " + [ sig.constructor.name ]);+    })());+};+var showLabel = function (l) {+    return "{ recLabel: " + (Data_Show.show(Data_Show.showString)(l.recLabel) + (", recValue: " + (showSignature(force(l.recValue)) + " }")));+};+var showDataConstructor = function (dc) {+    return "{ sigConstructor: " + (Data_Show.show(Data_Show.showString)(dc.sigConstructor) + (", sigValues: " + (showArray(function ($314) {+        return showSignature(force($314));+    })(dc.sigValues) + " }")));+};+var showGenericSignature = new Data_Show.Show(showSignature);+var eqThunk = function (dictEq) {+    return function (x) {+        return function (y) {+            return Data_Eq.eq(dictEq)(force(x))(force(y));+        };+    };+};+var eqRecordSigs = function (dictEq) {+    return function (arr1) {+        return function (arr2) {+            var labelCompare = function (r1) {+                return function (r2) {+                    return Data_Ord.compare(Data_Ord.ordString)(r1.recLabel)(r2.recLabel);+                };+            };+            var sorted1 = Data_Array.sortBy(labelCompare)(arr1);+            var sorted2 = Data_Array.sortBy(labelCompare)(arr2);+            var doCmp = function (x) {+                return function (y) {+                    return x.recLabel === y.recLabel && Data_Eq.eq(dictEq)(force(x.recValue))(force(y.recValue));+                };+            };+            return Data_Array.length(arr1) === Data_Array.length(arr2) && $foreign.zipAll(doCmp)(sorted1)(sorted2);+        };+    };+};+var eqGenericSpine = new Data_Eq.Eq(function (v) {+    return function (v1) {+        if (v instanceof SProd && v1 instanceof SProd) {+            return v.value0 === v1.value0 && (Data_Array.length(v.value1) === Data_Array.length(v1.value1) && $foreign.zipAll(eqThunk(eqGenericSpine))(v.value1)(v1.value1));+        };+        if (v instanceof SRecord && v1 instanceof SRecord) {+            return eqRecordSigs(eqGenericSpine)(v.value0)(v1.value0);+        };+        if (v instanceof SNumber && v1 instanceof SNumber) {+            return v.value0 === v1.value0;+        };+        if (v instanceof SBoolean && v1 instanceof SBoolean) {+            return v.value0 === v1.value0;+        };+        if (v instanceof SInt && v1 instanceof SInt) {+            return v.value0 === v1.value0;+        };+        if (v instanceof SString && v1 instanceof SString) {+            return v.value0 === v1.value0;+        };+        if (v instanceof SChar && v1 instanceof SChar) {+            return v.value0 === v1.value0;+        };+        if (v instanceof SArray && v1 instanceof SArray) {+            return Data_Array.length(v.value0) === Data_Array.length(v1.value0) && $foreign.zipAll(eqThunk(eqGenericSpine))(v.value0)(v1.value0);+        };+        if (v instanceof SUnit && v1 instanceof SUnit) {+            return true;+        };+        return false;+    };+});+var gEq = function (dictGeneric) {+    return function (x) {+        return function (y) {+            return Data_Eq.eq(eqGenericSpine)(toSpine(dictGeneric)(x))(toSpine(dictGeneric)(y));+        };+    };+};+var eqGenericSignature = new Data_Eq.Eq(function (v) {+    return function (v1) {+        if (v instanceof SigProd && v1 instanceof SigProd) {+            return v.value0 === v1.value0 && (Data_Array.length(v.value1) === Data_Array.length(v1.value1) && $foreign.zipAll(eqDataConstructor)(v.value1)(v1.value1));+        };+        if (v instanceof SigRecord && v1 instanceof SigRecord) {+            return eqRecordSigs(eqGenericSignature)(v.value0)(v1.value0);+        };+        if (v instanceof SigNumber && v1 instanceof SigNumber) {+            return true;+        };+        if (v instanceof SigBoolean && v1 instanceof SigBoolean) {+            return true;+        };+        if (v instanceof SigInt && v1 instanceof SigInt) {+            return true;+        };+        if (v instanceof SigString && v1 instanceof SigString) {+            return true;+        };+        if (v instanceof SigChar && v1 instanceof SigChar) {+            return true;+        };+        if (v instanceof SigArray && v1 instanceof SigArray) {+            return eqThunk(eqGenericSignature)(v.value0)(v1.value0);+        };+        if (v instanceof SigUnit && v1 instanceof SigUnit) {+            return true;+        };+        return false;+    };+});+var eqDataConstructor = function (p1) {+    return function (p2) {+        return p1.sigConstructor === p2.sigConstructor && $foreign.zipAll(eqThunk(eqGenericSignature))(p1.sigValues)(p2.sigValues);+    };+};+var compareThunk = function (dictOrd) {+    return function (x) {+        return function (y) {+            return orderingToInt(Data_Ord.compare(dictOrd)(force(x))(force(y)));+        };+    };+};+var ordGenericSpine = new Data_Ord.Ord(function () {+    return eqGenericSpine;+}, function (v) {+    return function (v1) {+        if (v instanceof SProd && v1 instanceof SProd) {+            var v2 = Data_Ord.compare(Data_Ord.ordString)(v.value0)(v1.value0);+            if (v2 instanceof Data_Ordering.EQ) {+                return Data_Ord.compare(Data_Ord.ordInt)(0)($foreign.zipCompare(compareThunk(ordGenericSpine))(v.value1)(v1.value1));+            };+            return v2;+        };+        if (v instanceof SProd) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SProd) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SRecord && v1 instanceof SRecord) {+            var go = function (x) {+                return function (y) {+                    var v2 = Data_Ord.compare(Data_Ord.ordString)(x.recLabel)(y.recLabel);+                    if (v2 instanceof Data_Ordering.EQ) {+                        return orderingToInt(Data_Ord.compare(ordGenericSpine)(force(x.recValue))(force(y.recValue)));+                    };+                    return orderingToInt(v2);+                };+            };+            return Data_Ord.compare(Data_Ord.ordInt)(0)($foreign.zipCompare(go)(v.value0)(v1.value0));+        };+        if (v instanceof SRecord) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SRecord) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SInt && v1 instanceof SInt) {+            return Data_Ord.compare(Data_Ord.ordInt)(v.value0)(v1.value0);+        };+        if (v instanceof SInt) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SInt) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SBoolean && v1 instanceof SBoolean) {+            return Data_Ord.compare(Data_Ord.ordBoolean)(v.value0)(v1.value0);+        };+        if (v instanceof SBoolean) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SBoolean) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SNumber && v1 instanceof SNumber) {+            return Data_Ord.compare(Data_Ord.ordNumber)(v.value0)(v1.value0);+        };+        if (v instanceof SNumber) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SNumber) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SString && v1 instanceof SString) {+            return Data_Ord.compare(Data_Ord.ordString)(v.value0)(v1.value0);+        };+        if (v instanceof SString) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SString) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SChar && v1 instanceof SChar) {+            return Data_Ord.compare(Data_Ord.ordChar)(v.value0)(v1.value0);+        };+        if (v instanceof SChar) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SChar) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SArray && v1 instanceof SArray) {+            return Data_Ord.compare(Data_Ord.ordInt)(0)($foreign.zipCompare(compareThunk(ordGenericSpine))(v.value0)(v1.value0));+        };+        if (v instanceof SArray) {+            return Data_Ordering.LT.value;+        };+        if (v1 instanceof SArray) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof SUnit && v1 instanceof SUnit) {+            return Data_Ordering.EQ.value;+        };+        throw new Error("Failed pattern match at Data.Generic line 304, column 3 - line 307, column 15: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var gCompare = function (dictGeneric) {+    return function (x) {+        return function (y) {+            return Data_Ord.compare(ordGenericSpine)(toSpine(dictGeneric)(x))(toSpine(dictGeneric)(y));+        };+    };+};+module.exports = {+    SigProd: SigProd, +    SigRecord: SigRecord, +    SigNumber: SigNumber, +    SigBoolean: SigBoolean, +    SigInt: SigInt, +    SigString: SigString, +    SigChar: SigChar, +    SigArray: SigArray, +    SigUnit: SigUnit, +    SProd: SProd, +    SRecord: SRecord, +    SNumber: SNumber, +    SBoolean: SBoolean, +    SInt: SInt, +    SString: SString, +    SChar: SChar, +    SArray: SArray, +    SUnit: SUnit, +    Generic: Generic, +    fromSpine: fromSpine, +    gCompare: gCompare, +    gEq: gEq, +    gShow: gShow, +    isValidSpine: isValidSpine, +    showDataConstructor: showDataConstructor, +    showSignature: showSignature, +    toSignature: toSignature, +    toSpine: toSpine, +    genericNumber: genericNumber, +    genericInt: genericInt, +    genericString: genericString, +    genericChar: genericChar, +    genericBool: genericBool, +    genericArray: genericArray, +    genericUnit: genericUnit, +    genericVoid: genericVoid, +    genericTuple: genericTuple, +    genericList: genericList, +    genericNonEmptyList: genericNonEmptyList, +    genericMaybe: genericMaybe, +    genericEither: genericEither, +    genericIdentity: genericIdentity, +    genericOrdering: genericOrdering, +    genericNonEmpty: genericNonEmpty, +    showGenericSpine: showGenericSpine, +    eqGenericSpine: eqGenericSpine, +    ordGenericSpine: ordGenericSpine, +    eqGenericSignature: eqGenericSignature, +    showGenericSignature: showGenericSignature+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Semigroupoid":93,"../Data.Array":120,"../Data.Boolean":130,"../Data.Either":138,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Identity":163,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Show":241,"../Data.String":249,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unit":259,"../Data.Void":260,"../Prelude":278,"../Type.Proxy":280,"./foreign":158}],160:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Generic = require("../Data.Generic");+var Data_Maybe = require("../Data.Maybe");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_String = require("../Data.String");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var OPTIONS = (function () {+    function OPTIONS() {++    };+    OPTIONS.value = new OPTIONS();+    return OPTIONS;+})();+var GET = (function () {+    function GET() {++    };+    GET.value = new GET();+    return GET;+})();+var HEAD = (function () {+    function HEAD() {++    };+    HEAD.value = new HEAD();+    return HEAD;+})();+var POST = (function () {+    function POST() {++    };+    POST.value = new POST();+    return POST;+})();+var PUT = (function () {+    function PUT() {++    };+    PUT.value = new PUT();+    return PUT;+})();+var DELETE = (function () {+    function DELETE() {++    };+    DELETE.value = new DELETE();+    return DELETE;+})();+var TRACE = (function () {+    function TRACE() {++    };+    TRACE.value = new TRACE();+    return TRACE;+})();+var CONNECT = (function () {+    function CONNECT() {++    };+    CONNECT.value = new CONNECT();+    return CONNECT;+})();+var PROPFIND = (function () {+    function PROPFIND() {++    };+    PROPFIND.value = new PROPFIND();+    return PROPFIND;+})();+var PROPPATCH = (function () {+    function PROPPATCH() {++    };+    PROPPATCH.value = new PROPPATCH();+    return PROPPATCH;+})();+var MKCOL = (function () {+    function MKCOL() {++    };+    MKCOL.value = new MKCOL();+    return MKCOL;+})();+var COPY = (function () {+    function COPY() {++    };+    COPY.value = new COPY();+    return COPY;+})();+var MOVE = (function () {+    function MOVE() {++    };+    MOVE.value = new MOVE();+    return MOVE;+})();+var LOCK = (function () {+    function LOCK() {++    };+    LOCK.value = new LOCK();+    return LOCK;+})();+var UNLOCK = (function () {+    function UNLOCK() {++    };+    UNLOCK.value = new UNLOCK();+    return UNLOCK;+})();+var PATCH = (function () {+    function PATCH() {++    };+    PATCH.value = new PATCH();+    return PATCH;+})();+var CustomMethod = function (x) {+    return x;+};+var unCustomMethod = function (v) {+    return v;+};+var showMethod = new Data_Show.Show(function (v) {+    if (v instanceof OPTIONS) {+        return "OPTIONS";+    };+    if (v instanceof GET) {+        return "GET";+    };+    if (v instanceof HEAD) {+        return "HEAD";+    };+    if (v instanceof POST) {+        return "POST";+    };+    if (v instanceof PUT) {+        return "PUT";+    };+    if (v instanceof DELETE) {+        return "DELETE";+    };+    if (v instanceof TRACE) {+        return "TRACE";+    };+    if (v instanceof CONNECT) {+        return "CONNECT";+    };+    if (v instanceof PROPFIND) {+        return "PROPFIND";+    };+    if (v instanceof PROPPATCH) {+        return "PROPPATCH";+    };+    if (v instanceof MKCOL) {+        return "MKCOL";+    };+    if (v instanceof COPY) {+        return "COPY";+    };+    if (v instanceof MOVE) {+        return "MOVE";+    };+    if (v instanceof LOCK) {+        return "LOCK";+    };+    if (v instanceof UNLOCK) {+        return "UNLOCK";+    };+    if (v instanceof PATCH) {+        return "PATCH";+    };+    throw new Error("Failed pattern match at Data.HTTP.Method line 43, column 3 - line 44, column 3: " + [ v.constructor.name ]);+});+var showCustomMethod = new Data_Show.Show(function (v) {+    return "(CustomMethod " + (Data_Show.show(Data_Show.showString)(v) + ")");+});+var print = Data_Either.either(Data_Show.show(showMethod))(unCustomMethod);+var genericMethod = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.OPTIONS" && v.value1.length === 0)) {+        return new Data_Maybe.Just(OPTIONS.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.GET" && v.value1.length === 0)) {+        return new Data_Maybe.Just(GET.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.HEAD" && v.value1.length === 0)) {+        return new Data_Maybe.Just(HEAD.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.POST" && v.value1.length === 0)) {+        return new Data_Maybe.Just(POST.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PUT" && v.value1.length === 0)) {+        return new Data_Maybe.Just(PUT.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.DELETE" && v.value1.length === 0)) {+        return new Data_Maybe.Just(DELETE.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.TRACE" && v.value1.length === 0)) {+        return new Data_Maybe.Just(TRACE.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.CONNECT" && v.value1.length === 0)) {+        return new Data_Maybe.Just(CONNECT.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PROPFIND" && v.value1.length === 0)) {+        return new Data_Maybe.Just(PROPFIND.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PROPPATCH" && v.value1.length === 0)) {+        return new Data_Maybe.Just(PROPPATCH.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.MKCOL" && v.value1.length === 0)) {+        return new Data_Maybe.Just(MKCOL.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.COPY" && v.value1.length === 0)) {+        return new Data_Maybe.Just(COPY.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.MOVE" && v.value1.length === 0)) {+        return new Data_Maybe.Just(MOVE.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.LOCK" && v.value1.length === 0)) {+        return new Data_Maybe.Just(LOCK.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.UNLOCK" && v.value1.length === 0)) {+        return new Data_Maybe.Just(UNLOCK.value);+    };+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.PATCH" && v.value1.length === 0)) {+        return new Data_Maybe.Just(PATCH.value);+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.HTTP.Method.Method", [ {+        sigConstructor: "Data.HTTP.Method.OPTIONS", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.GET", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.HEAD", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.POST", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.PUT", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.DELETE", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.TRACE", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.CONNECT", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.PROPFIND", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.PROPPATCH", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.MKCOL", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.COPY", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.MOVE", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.LOCK", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.UNLOCK", +        sigValues: [  ]+    }, {+        sigConstructor: "Data.HTTP.Method.PATCH", +        sigValues: [  ]+    } ]);+}, function (v) {+    if (v instanceof OPTIONS) {+        return new Data_Generic.SProd("Data.HTTP.Method.OPTIONS", [  ]);+    };+    if (v instanceof GET) {+        return new Data_Generic.SProd("Data.HTTP.Method.GET", [  ]);+    };+    if (v instanceof HEAD) {+        return new Data_Generic.SProd("Data.HTTP.Method.HEAD", [  ]);+    };+    if (v instanceof POST) {+        return new Data_Generic.SProd("Data.HTTP.Method.POST", [  ]);+    };+    if (v instanceof PUT) {+        return new Data_Generic.SProd("Data.HTTP.Method.PUT", [  ]);+    };+    if (v instanceof DELETE) {+        return new Data_Generic.SProd("Data.HTTP.Method.DELETE", [  ]);+    };+    if (v instanceof TRACE) {+        return new Data_Generic.SProd("Data.HTTP.Method.TRACE", [  ]);+    };+    if (v instanceof CONNECT) {+        return new Data_Generic.SProd("Data.HTTP.Method.CONNECT", [  ]);+    };+    if (v instanceof PROPFIND) {+        return new Data_Generic.SProd("Data.HTTP.Method.PROPFIND", [  ]);+    };+    if (v instanceof PROPPATCH) {+        return new Data_Generic.SProd("Data.HTTP.Method.PROPPATCH", [  ]);+    };+    if (v instanceof MKCOL) {+        return new Data_Generic.SProd("Data.HTTP.Method.MKCOL", [  ]);+    };+    if (v instanceof COPY) {+        return new Data_Generic.SProd("Data.HTTP.Method.COPY", [  ]);+    };+    if (v instanceof MOVE) {+        return new Data_Generic.SProd("Data.HTTP.Method.MOVE", [  ]);+    };+    if (v instanceof LOCK) {+        return new Data_Generic.SProd("Data.HTTP.Method.LOCK", [  ]);+    };+    if (v instanceof UNLOCK) {+        return new Data_Generic.SProd("Data.HTTP.Method.UNLOCK", [  ]);+    };+    if (v instanceof PATCH) {+        return new Data_Generic.SProd("Data.HTTP.Method.PATCH", [  ]);+    };+    throw new Error("Failed pattern match at Data.HTTP.Method line 40, column 1 - line 40, column 48: " + [ v.constructor.name ]);+});+var genericCustomMethod = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.HTTP.Method.CustomMethod" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(CustomMethod))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.HTTP.Method.CustomMethod", [ {+        sigConstructor: "Data.HTTP.Method.CustomMethod", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.HTTP.Method.CustomMethod", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericString)(v);+    } ]);+});+var fromString = function (s) {+    var v = Data_String.toUpper(s);+    if (v === "OPTIONS") {+        return new Data_Either.Left(OPTIONS.value);+    };+    if (v === "GET") {+        return new Data_Either.Left(GET.value);+    };+    if (v === "HEAD") {+        return new Data_Either.Left(HEAD.value);+    };+    if (v === "POST") {+        return new Data_Either.Left(POST.value);+    };+    if (v === "PUT") {+        return new Data_Either.Left(PUT.value);+    };+    if (v === "DELETE") {+        return new Data_Either.Left(DELETE.value);+    };+    if (v === "TRACE") {+        return new Data_Either.Left(TRACE.value);+    };+    if (v === "CONNECT") {+        return new Data_Either.Left(CONNECT.value);+    };+    if (v === "PROPFIND") {+        return new Data_Either.Left(PROPFIND.value);+    };+    if (v === "PROPPATCH") {+        return new Data_Either.Left(PROPPATCH.value);+    };+    if (v === "MKCOL") {+        return new Data_Either.Left(MKCOL.value);+    };+    if (v === "COPY") {+        return new Data_Either.Left(COPY.value);+    };+    if (v === "MOVE") {+        return new Data_Either.Left(MOVE.value);+    };+    if (v === "LOCK") {+        return new Data_Either.Left(LOCK.value);+    };+    if (v === "UNLOCK") {+        return new Data_Either.Left(UNLOCK.value);+    };+    return new Data_Either.Right(v);+};+var eqMethod = new Data_Eq.Eq(function (x) {+    return function (y) {+        if (x instanceof OPTIONS && y instanceof OPTIONS) {+            return true;+        };+        if (x instanceof GET && y instanceof GET) {+            return true;+        };+        if (x instanceof HEAD && y instanceof HEAD) {+            return true;+        };+        if (x instanceof POST && y instanceof POST) {+            return true;+        };+        if (x instanceof PUT && y instanceof PUT) {+            return true;+        };+        if (x instanceof DELETE && y instanceof DELETE) {+            return true;+        };+        if (x instanceof TRACE && y instanceof TRACE) {+            return true;+        };+        if (x instanceof CONNECT && y instanceof CONNECT) {+            return true;+        };+        if (x instanceof PROPFIND && y instanceof PROPFIND) {+            return true;+        };+        if (x instanceof PROPPATCH && y instanceof PROPPATCH) {+            return true;+        };+        if (x instanceof MKCOL && y instanceof MKCOL) {+            return true;+        };+        if (x instanceof COPY && y instanceof COPY) {+            return true;+        };+        if (x instanceof MOVE && y instanceof MOVE) {+            return true;+        };+        if (x instanceof LOCK && y instanceof LOCK) {+            return true;+        };+        if (x instanceof UNLOCK && y instanceof UNLOCK) {+            return true;+        };+        if (x instanceof PATCH && y instanceof PATCH) {+            return true;+        };+        return false;+    };+});+var ordMethod = new Data_Ord.Ord(function () {+    return eqMethod;+}, function (x) {+    return function (y) {+        if (x instanceof OPTIONS && y instanceof OPTIONS) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof OPTIONS) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof OPTIONS) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof GET && y instanceof GET) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof GET) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof GET) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof HEAD && y instanceof HEAD) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof HEAD) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof HEAD) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof POST && y instanceof POST) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof POST) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof POST) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof PUT && y instanceof PUT) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof PUT) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof PUT) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof DELETE && y instanceof DELETE) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof DELETE) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof DELETE) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof TRACE && y instanceof TRACE) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof TRACE) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof TRACE) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof CONNECT && y instanceof CONNECT) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof CONNECT) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof CONNECT) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof PROPFIND && y instanceof PROPFIND) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof PROPFIND) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof PROPFIND) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof PROPPATCH && y instanceof PROPPATCH) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof PROPPATCH) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof PROPPATCH) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof MKCOL && y instanceof MKCOL) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof MKCOL) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof MKCOL) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof COPY && y instanceof COPY) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof COPY) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof COPY) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof MOVE && y instanceof MOVE) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof MOVE) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof MOVE) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof LOCK && y instanceof LOCK) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof LOCK) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof LOCK) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof UNLOCK && y instanceof UNLOCK) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof UNLOCK) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof UNLOCK) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof PATCH && y instanceof PATCH) {+            return Data_Ordering.EQ.value;+        };+        throw new Error("Failed pattern match at Data.HTTP.Method line 39, column 1 - line 39, column 40: " + [ x.constructor.name, y.constructor.name ]);+    };+});+var eqCustomMethod = new Data_Eq.Eq(function (x) {+    return function (y) {+        return x === y;+    };+});+var ordCustomMethod = new Data_Ord.Ord(function () {+    return eqCustomMethod;+}, function (x) {+    return function (y) {+        return Data_Ord.compare(Data_Ord.ordString)(x)(y);+    };+});+module.exports = {+    OPTIONS: OPTIONS, +    GET: GET, +    HEAD: HEAD, +    POST: POST, +    PUT: PUT, +    DELETE: DELETE, +    TRACE: TRACE, +    CONNECT: CONNECT, +    PROPFIND: PROPFIND, +    PROPPATCH: PROPPATCH, +    MKCOL: MKCOL, +    COPY: COPY, +    MOVE: MOVE, +    LOCK: LOCK, +    UNLOCK: UNLOCK, +    PATCH: PATCH, +    fromString: fromString, +    print: print, +    unCustomMethod: unCustomMethod, +    eqMethod: eqMethod, +    ordMethod: ordMethod, +    genericMethod: genericMethod, +    showMethod: showMethod, +    eqCustomMethod: eqCustomMethod, +    ordCustomMethod: ordCustomMethod, +    genericCustomMethod: genericCustomMethod, +    showCustomMethod: showCustomMethod+};++},{"../Control.Apply":42,"../Data.Either":138,"../Data.Eq":140,"../Data.Generic":159,"../Data.Maybe":204,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Show":241,"../Data.String":249,"../Data.Unit":259,"../Prelude":278}],161:[function(require,module,exports){+"use strict";++exports.boolConj = function (b1) {+  return function (b2) {+    return b1 && b2;+  };+};++exports.boolDisj = function (b1) {+  return function (b2) {+    return b1 || b2;+  };+};++exports.boolNot = function (b) {+  return !b;+};++},{}],162:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Unit = require("../Data.Unit");+var HeytingAlgebra = function (conj, disj, ff, implies, not, tt) {+    this.conj = conj;+    this.disj = disj;+    this.ff = ff;+    this.implies = implies;+    this.not = not;+    this.tt = tt;+};+var tt = function (dict) {+    return dict.tt;+};+var not = function (dict) {+    return dict.not;+};+var implies = function (dict) {+    return dict.implies;+};+var heytingAlgebraUnit = new HeytingAlgebra(function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+}, function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+}, Data_Unit.unit, function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+}, function (v) {+    return Data_Unit.unit;+}, Data_Unit.unit);+var ff = function (dict) {+    return dict.ff;+};+var disj = function (dict) {+    return dict.disj;+};+var heytingAlgebraBoolean = new HeytingAlgebra($foreign.boolConj, $foreign.boolDisj, false, function (a) {+    return function (b) {+        return disj(heytingAlgebraBoolean)(not(heytingAlgebraBoolean)(a))(b);+    };+}, $foreign.boolNot, true);+var conj = function (dict) {+    return dict.conj;+};+var heytingAlgebraFunction = function (dictHeytingAlgebra) {+    return new HeytingAlgebra(function (f) {+        return function (g) {+            return function (a) {+                return conj(dictHeytingAlgebra)(f(a))(g(a));+            };+        };+    }, function (f) {+        return function (g) {+            return function (a) {+                return disj(dictHeytingAlgebra)(f(a))(g(a));+            };+        };+    }, function (v) {+        return ff(dictHeytingAlgebra);+    }, function (f) {+        return function (g) {+            return function (a) {+                return implies(dictHeytingAlgebra)(f(a))(g(a));+            };+        };+    }, function (f) {+        return function (a) {+            return not(dictHeytingAlgebra)(f(a));+        };+    }, function (v) {+        return tt(dictHeytingAlgebra);+    });+};+module.exports = {+    HeytingAlgebra: HeytingAlgebra, +    conj: conj, +    disj: disj, +    ff: ff, +    implies: implies, +    not: not, +    tt: tt, +    heytingAlgebraBoolean: heytingAlgebraBoolean, +    heytingAlgebraUnit: heytingAlgebraUnit, +    heytingAlgebraFunction: heytingAlgebraFunction+};++},{"../Data.Unit":259,"./foreign":161}],163:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad = require("../Control.Monad");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_Bounded = require("../Data.Bounded");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_Eq = require("../Data.Eq");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Field = require("../Data.Field");+var Data_Foldable = require("../Data.Foldable");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Identity = function (x) {+    return x;+};+var showIdentity = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Identity " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semiringIdentity = function (dictSemiring) {+    return dictSemiring;+};+var semigroupIdenity = function (dictSemigroup) {+    return dictSemigroup;+};+var ringIdentity = function (dictRing) {+    return dictRing;+};+var ordIdentity = function (dictOrd) {+    return dictOrd;+};+var newtypeIdentity = new Data_Newtype.Newtype(function (n) {+    return n;+}, Identity);+var monoidIdentity = function (dictMonoid) {+    return dictMonoid;+};+var lazyIdentity = function (dictLazy) {+    return dictLazy;+};+var heytingAlgebraIdentity = function (dictHeytingAlgebra) {+    return dictHeytingAlgebra;+};+var functorIdentity = new Data_Functor.Functor(function (f) {+    return function (v) {+        return f(v);+    };+});+var invariantIdentity = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorIdentity));+var foldableIdentity = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v)(z);+        };+    };+});+var traversableIdentity = new Data_Traversable.Traversable(function () {+    return foldableIdentity;+}, function () {+    return functorIdentity;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Identity)(v);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Identity)(f(v));+        };+    };+});+var fieldIdentity = function (dictField) {+    return dictField;+};+var extendIdentity = new Control_Extend.Extend(function () {+    return functorIdentity;+}, function (f) {+    return function (m) {+        return f(m);+    };+});+var euclideanRingIdentity = function (dictEuclideanRing) {+    return dictEuclideanRing;+};+var eqIdentity = function (dictEq) {+    return dictEq;+};+var eq1Identity = new Data_Eq.Eq1(function (dictEq) {+    return Data_Eq.eq(eqIdentity(dictEq));+});+var ord1Identity = new Data_Ord.Ord1(function () {+    return eq1Identity;+}, function (dictOrd) {+    return Data_Ord.compare(ordIdentity(dictOrd));+});+var comonadIdentity = new Control_Comonad.Comonad(function () {+    return extendIdentity;+}, function (v) {+    return v;+});+var commutativeRingIdentity = function (dictCommutativeRing) {+    return dictCommutativeRing;+};+var boundedIdentity = function (dictBounded) {+    return dictBounded;+};+var booleanAlgebraIdentity = function (dictBooleanAlgebra) {+    return dictBooleanAlgebra;+};+var applyIdentity = new Control_Apply.Apply(function () {+    return functorIdentity;+}, function (v) {+    return function (v1) {+        return v(v1);+    };+});+var bindIdentity = new Control_Bind.Bind(function () {+    return applyIdentity;+}, function (v) {+    return function (f) {+        return f(v);+    };+});+var applicativeIdentity = new Control_Applicative.Applicative(function () {+    return applyIdentity;+}, Identity);+var monadIdentity = new Control_Monad.Monad(function () {+    return applicativeIdentity;+}, function () {+    return bindIdentity;+});+var altIdentity = new Control_Alt.Alt(function () {+    return functorIdentity;+}, function (x) {+    return function (v) {+        return x;+    };+});+module.exports = {+    Identity: Identity, +    newtypeIdentity: newtypeIdentity, +    eqIdentity: eqIdentity, +    ordIdentity: ordIdentity, +    boundedIdentity: boundedIdentity, +    heytingAlgebraIdentity: heytingAlgebraIdentity, +    booleanAlgebraIdentity: booleanAlgebraIdentity, +    semigroupIdenity: semigroupIdenity, +    monoidIdentity: monoidIdentity, +    semiringIdentity: semiringIdentity, +    euclideanRingIdentity: euclideanRingIdentity, +    ringIdentity: ringIdentity, +    commutativeRingIdentity: commutativeRingIdentity, +    fieldIdentity: fieldIdentity, +    lazyIdentity: lazyIdentity, +    showIdentity: showIdentity, +    eq1Identity: eq1Identity, +    ord1Identity: ord1Identity, +    functorIdentity: functorIdentity, +    invariantIdentity: invariantIdentity, +    altIdentity: altIdentity, +    applyIdentity: applyIdentity, +    applicativeIdentity: applicativeIdentity, +    bindIdentity: bindIdentity, +    monadIdentity: monadIdentity, +    extendIdentity: extendIdentity, +    comonadIdentity: comonadIdentity, +    foldableIdentity: foldableIdentity, +    traversableIdentity: traversableIdentity+};++},{"../Control.Alt":38,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Lazy":51,"../Control.Monad":87,"../Data.BooleanAlgebra":131,"../Data.Bounded":133,"../Data.CommutativeRing":134,"../Data.Eq":140,"../Data.EuclideanRing":142,"../Data.Field":143,"../Data.Foldable":145,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.HeytingAlgebra":162,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Prelude":278}],164:[function(require,module,exports){+"use strict";++// module Data.Int.Bits++exports.and = function (n1) {+  return function (n2) {+    /* jshint bitwise: false */+    return n1 & n2;+  };+};++exports.or = function (n1) {+  return function (n2) {+    /* jshint bitwise: false */+    return n1 | n2;+  };+};++exports.xor = function (n1) {+  return function (n2) {+    /* jshint bitwise: false */+    return n1 ^ n2;+  };+};++exports.shl = function (n1) {+  return function (n2) {+    /* jshint bitwise: false */+    return n1 << n2;+  };+};++exports.shr = function (n1) {+  return function (n2) {+    /* jshint bitwise: false */+    return n1 >> n2;+  };+};++exports.zshr = function (n1) {+  return function (n2) {+    /* jshint bitwise: false */+    return n1 >>> n2;+  };+};++exports.complement = function (n) {+  /* jshint bitwise: false */+  return ~n;+};++},{}],165:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+module.exports = {+    and: $foreign.and, +    complement: $foreign.complement, +    or: $foreign.or, +    shl: $foreign.shl, +    shr: $foreign.shr, +    xor: $foreign.xor, +    zshr: $foreign.zshr+};++},{"./foreign":164}],166:[function(require,module,exports){+"use strict";++// module Data.Int++exports.fromNumberImpl = function (just) {+  return function (nothing) {+    return function (n) {+      /* jshint bitwise: false */+      return (n | 0) === n ? just(n) : nothing;+    };+  };+};++exports.toNumber = function (n) {+  return n;+};++exports.fromStringAsImpl = function (just) {+  return function (nothing) {+    return function (radix) {+      var digits;+      if (radix < 11) {+        digits = "[0-" + (radix - 1).toString() + "]";+      } else if (radix === 11) {+        digits = "[0-9a]";+      } else {+        digits = "[0-9a-" + String.fromCharCode(86 + radix) + "]";+      }+      var pattern = new RegExp("^[\\+\\-]?" + digits + "+$", "i");++      return function (s) {+        /* jshint bitwise: false */+        if (pattern.test(s)) {+          var i = parseInt(s, radix);+          return (i | 0) === i ? just(i) : nothing;+        } else {+          return nothing;+        }+      };+    };+  };+};++exports.toStringAs = function (radix) {+  return function (i) {+    return i.toString(radix);+  };+};++exports.pow = function (x) {+  return function (y) {+    /* jshint bitwise: false */+    return Math.pow(x,y) | 0;+  };+};++},{}],167:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Boolean = require("../Data.Boolean");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Int_Bits = require("../Data.Int.Bits");+var Data_Maybe = require("../Data.Maybe");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Show = require("../Data.Show");+var Global = require("../Global");+var $$Math = require("../Math");+var Prelude = require("../Prelude");+var Radix = function (x) {+    return x;+};+var Even = (function () {+    function Even() {++    };+    Even.value = new Even();+    return Even;+})();+var Odd = (function () {+    function Odd() {++    };+    Odd.value = new Odd();+    return Odd;+})();+var showParity = new Data_Show.Show(function (v) {+    if (v instanceof Even) {+        return "Even";+    };+    if (v instanceof Odd) {+        return "Odd";+    };+    throw new Error("Failed pattern match at Data.Int line 89, column 3 - line 90, column 3: " + [ v.constructor.name ]);+});+var radix = function (n) {+    if (n >= 2 && n <= 36) {+        return new Data_Maybe.Just(n);+    };+    if (Data_Boolean.otherwise) {+        return Data_Maybe.Nothing.value;+    };+    throw new Error("Failed pattern match at Data.Int line 149, column 1 - line 150, column 38: " + [ n.constructor.name ]);+};+var odd = function (x) {+    return (x & 1) !== 0;+};+var octal = 8;+var hexadecimal = 16;+var fromStringAs = $foreign.fromStringAsImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var fromString = fromStringAs(10);+var fromNumber = $foreign.fromNumberImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var unsafeClamp = function (x) {+    if (x === Global.infinity) {+        return 0;+    };+    if (x === -Global.infinity) {+        return 0;+    };+    if (x >= $foreign.toNumber(Data_Bounded.top(Data_Bounded.boundedInt))) {+        return Data_Bounded.top(Data_Bounded.boundedInt);+    };+    if (x <= $foreign.toNumber(Data_Bounded.bottom(Data_Bounded.boundedInt))) {+        return Data_Bounded.bottom(Data_Bounded.boundedInt);+    };+    if (Data_Boolean.otherwise) {+        return Data_Maybe.fromMaybe(0)(fromNumber(x));+    };+    throw new Error("Failed pattern match at Data.Int line 65, column 1 - line 70, column 43: " + [ x.constructor.name ]);+};+var round = function ($13) {+    return unsafeClamp($$Math.round($13));+};+var floor = function ($14) {+    return unsafeClamp($$Math.floor($14));+};+var even = function (x) {+    return (x & 1) === 0;+};+var parity = function (n) {+    var $8 = even(n);+    if ($8) {+        return Even.value;+    };+    return Odd.value;+};+var eqParity = new Data_Eq.Eq(function (x) {+    return function (y) {+        if (x instanceof Even && y instanceof Even) {+            return true;+        };+        if (x instanceof Odd && y instanceof Odd) {+            return true;+        };+        return false;+    };+});+var ordParity = new Data_Ord.Ord(function () {+    return eqParity;+}, function (x) {+    return function (y) {+        if (x instanceof Even && y instanceof Even) {+            return Data_Ordering.EQ.value;+        };+        if (x instanceof Even) {+            return Data_Ordering.LT.value;+        };+        if (y instanceof Even) {+            return Data_Ordering.GT.value;+        };+        if (x instanceof Odd && y instanceof Odd) {+            return Data_Ordering.EQ.value;+        };+        throw new Error("Failed pattern match at Data.Int line 86, column 1 - line 86, column 40: " + [ x.constructor.name, y.constructor.name ]);+    };+});+var decimal = 10;+var ceil = function ($15) {+    return unsafeClamp($$Math.ceil($15));+};+var boundedParity = new Data_Bounded.Bounded(function () {+    return ordParity;+}, Even.value, Odd.value);+var binary = 2;+var base36 = 36;+module.exports = {+    Even: Even, +    Odd: Odd, +    base36: base36, +    binary: binary, +    ceil: ceil, +    decimal: decimal, +    even: even, +    floor: floor, +    fromNumber: fromNumber, +    fromString: fromString, +    fromStringAs: fromStringAs, +    hexadecimal: hexadecimal, +    octal: octal, +    odd: odd, +    parity: parity, +    radix: radix, +    round: round, +    eqParity: eqParity, +    ordParity: ordParity, +    showParity: showParity, +    boundedParity: boundedParity, +    pow: $foreign.pow, +    toNumber: $foreign.toNumber, +    toStringAs: $foreign.toStringAs+};++},{"../Control.Semigroupoid":93,"../Data.Boolean":130,"../Data.Bounded":133,"../Data.Eq":140,"../Data.HeytingAlgebra":162,"../Data.Int.Bits":165,"../Data.Maybe":204,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Show":241,"../Global":262,"../Math":266,"../Prelude":278,"./foreign":166}],168:[function(require,module,exports){+"use strict";++exports.defer = function () {++  function Defer(thunk) {+    if (this instanceof Defer) {+      this.thunk = thunk;+      return this;+    } else {+      return new Defer(thunk);+    }+  }++  Defer.prototype.force = function () {+    var value = this.thunk();+    this.thunk = null;+    this.force = function () {+      return value;+    };+    return value;+  };++  return Defer;++}();++exports.force = function (l) {+  return l.force();+};++},{}],169:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad = require("../Control.Monad");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_Bounded = require("../Data.Bounded");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_Eq = require("../Data.Eq");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Field = require("../Data.Field");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Monoid = require("../Data.Monoid");+var Data_Ord = require("../Data.Ord");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var showLazy = function (dictShow) {+    return new Data_Show.Show(function (x) {+        return "(defer \\_ -> " + (Data_Show.show(dictShow)($foreign.force(x)) + ")");+    });+};+var semiringLazy = function (dictSemiring) {+    return new Data_Semiring.Semiring(function (a) {+        return function (b) {+            return $foreign.defer(function (v) {+                return Data_Semiring.add(dictSemiring)($foreign.force(a))($foreign.force(b));+            });+        };+    }, function (a) {+        return function (b) {+            return $foreign.defer(function (v) {+                return Data_Semiring.mul(dictSemiring)($foreign.force(a))($foreign.force(b));+            });+        };+    }, $foreign.defer(function (v) {+        return Data_Semiring.one(dictSemiring);+    }), $foreign.defer(function (v) {+        return Data_Semiring.zero(dictSemiring);+    }));+};+var semigroupLazy = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (a) {+        return function (b) {+            return $foreign.defer(function (v) {+                return Data_Semigroup.append(dictSemigroup)($foreign.force(a))($foreign.force(b));+            });+        };+    });+};+var ringLazy = function (dictRing) {+    return new Data_Ring.Ring(function () {+        return semiringLazy(dictRing.Semiring0());+    }, function (a) {+        return function (b) {+            return $foreign.defer(function (v) {+                return Data_Ring.sub(dictRing)($foreign.force(a))($foreign.force(b));+            });+        };+    });+};+var monoidLazy = function (dictMonoid) {+    return new Data_Monoid.Monoid(function () {+        return semigroupLazy(dictMonoid.Semigroup0());+    }, $foreign.defer(function (v) {+        return Data_Monoid.mempty(dictMonoid);+    }));+};+var lazyLazy = new Control_Lazy.Lazy(function (f) {+    return $foreign.defer(function (v) {+        return $foreign.force(f(Data_Unit.unit));+    });+});+var functorLazy = new Data_Functor.Functor(function (f) {+    return function (l) {+        return $foreign.defer(function (v) {+            return f($foreign.force(l));+        });+    };+});+var invariantLazy = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorLazy));+var extendLazy = new Control_Extend.Extend(function () {+    return functorLazy;+}, function (f) {+    return function (x) {+        return $foreign.defer(function (v) {+            return f(x);+        });+    };+});+var eqLazy = function (dictEq) {+    return new Data_Eq.Eq(function (x) {+        return function (y) {+            return Data_Eq.eq(dictEq)($foreign.force(x))($foreign.force(y));+        };+    });+};+var ordLazy = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqLazy(dictOrd.Eq0());+    }, function (x) {+        return function (y) {+            return Data_Ord.compare(dictOrd)($foreign.force(x))($foreign.force(y));+        };+    });+};+var comonadLazy = new Control_Comonad.Comonad(function () {+    return extendLazy;+}, $foreign.force);+var commutativeRingLazy = function (dictCommutativeRing) {+    return new Data_CommutativeRing.CommutativeRing(function () {+        return ringLazy(dictCommutativeRing.Ring0());+    });+};+var euclideanRingLazy = function (dictEuclideanRing) {+    return new Data_EuclideanRing.EuclideanRing(function () {+        return commutativeRingLazy(dictEuclideanRing.CommutativeRing0());+    }, function ($32) {+        return Data_EuclideanRing.degree(dictEuclideanRing)($foreign.force($32));+    }, function (a) {+        return function (b) {+            return $foreign.defer(function (v) {+                return Data_EuclideanRing.div(dictEuclideanRing)($foreign.force(a))($foreign.force(b));+            });+        };+    }, function (a) {+        return function (b) {+            return $foreign.defer(function (v) {+                return Data_EuclideanRing.mod(dictEuclideanRing)($foreign.force(a))($foreign.force(b));+            });+        };+    });+};+var fieldLazy = function (dictField) {+    return new Data_Field.Field(function () {+        return euclideanRingLazy(dictField.EuclideanRing0());+    });+};+var boundedLazy = function (dictBounded) {+    return new Data_Bounded.Bounded(function () {+        return ordLazy(dictBounded.Ord0());+    }, $foreign.defer(function (v) {+        return Data_Bounded.bottom(dictBounded);+    }), $foreign.defer(function (v) {+        return Data_Bounded.top(dictBounded);+    }));+};+var applyLazy = new Control_Apply.Apply(function () {+    return functorLazy;+}, function (f) {+    return function (x) {+        return $foreign.defer(function (v) {+            return $foreign.force(f)($foreign.force(x));+        });+    };+});+var bindLazy = new Control_Bind.Bind(function () {+    return applyLazy;+}, function (l) {+    return function (f) {+        return $foreign.defer(function (v) {+            return $foreign.force(f($foreign.force(l)));+        });+    };+});+var heytingAlgebraLazy = function (dictHeytingAlgebra) {+    return new Data_HeytingAlgebra.HeytingAlgebra(function (a) {+        return function (b) {+            return Control_Apply.apply(applyLazy)(Data_Functor.map(functorLazy)(Data_HeytingAlgebra.conj(dictHeytingAlgebra))(a))(b);+        };+    }, function (a) {+        return function (b) {+            return Control_Apply.apply(applyLazy)(Data_Functor.map(functorLazy)(Data_HeytingAlgebra.disj(dictHeytingAlgebra))(a))(b);+        };+    }, $foreign.defer(function (v) {+        return Data_HeytingAlgebra.ff(dictHeytingAlgebra);+    }), function (a) {+        return function (b) {+            return Control_Apply.apply(applyLazy)(Data_Functor.map(functorLazy)(Data_HeytingAlgebra.implies(dictHeytingAlgebra))(a))(b);+        };+    }, function (a) {+        return Data_Functor.map(functorLazy)(Data_HeytingAlgebra.not(dictHeytingAlgebra))(a);+    }, $foreign.defer(function (v) {+        return Data_HeytingAlgebra.tt(dictHeytingAlgebra);+    }));+};+var booleanAlgebraLazy = function (dictBooleanAlgebra) {+    return new Data_BooleanAlgebra.BooleanAlgebra(function () {+        return heytingAlgebraLazy(dictBooleanAlgebra.HeytingAlgebra0());+    });+};+var applicativeLazy = new Control_Applicative.Applicative(function () {+    return applyLazy;+}, function (a) {+    return $foreign.defer(function (v) {+        return a;+    });+});+var monadLazy = new Control_Monad.Monad(function () {+    return applicativeLazy;+}, function () {+    return bindLazy;+});+module.exports = {+    semiringLazy: semiringLazy, +    ringLazy: ringLazy, +    commutativeRingLazy: commutativeRingLazy, +    euclideanRingLazy: euclideanRingLazy, +    fieldLazy: fieldLazy, +    eqLazy: eqLazy, +    ordLazy: ordLazy, +    boundedLazy: boundedLazy, +    semigroupLazy: semigroupLazy, +    monoidLazy: monoidLazy, +    heytingAlgebraLazy: heytingAlgebraLazy, +    booleanAlgebraLazy: booleanAlgebraLazy, +    functorLazy: functorLazy, +    invariantLazy: invariantLazy, +    applyLazy: applyLazy, +    applicativeLazy: applicativeLazy, +    bindLazy: bindLazy, +    monadLazy: monadLazy, +    extendLazy: extendLazy, +    comonadLazy: comonadLazy, +    showLazy: showLazy, +    lazyLazy: lazyLazy, +    defer: $foreign.defer, +    force: $foreign.force+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Lazy":51,"../Control.Monad":87,"../Control.Semigroupoid":93,"../Data.BooleanAlgebra":131,"../Data.Bounded":133,"../Data.CommutativeRing":134,"../Data.Eq":140,"../Data.EuclideanRing":142,"../Data.Field":143,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.HeytingAlgebra":162,"../Data.Monoid":213,"../Data.Ord":222,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Unit":259,"../Prelude":278,"./foreign":168}],170:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Lens_Lens_Tuple = require("../Data.Lens.Lens.Tuple");+var Data_Lens_Lens_Unit = require("../Data.Lens.Lens.Unit");+var Data_Lens_Prism_Either = require("../Data.Lens.Prism.Either");+var Data_Lens_Prism_Maybe = require("../Data.Lens.Prism.Maybe");+module.exports = {};++},{"../Data.Lens.Lens.Tuple":186,"../Data.Lens.Lens.Unit":187,"../Data.Lens.Prism.Either":189,"../Data.Lens.Prism.Maybe":190}],171:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Lens_Internal_Forget = require("../Data.Lens.Internal.Forget");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_List = require("../Data.List");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Maybe_First = require("../Data.Maybe.First");+var Data_Maybe_Last = require("../Data.Maybe.Last");+var Data_Monoid = require("../Data.Monoid");+var Data_Monoid_Additive = require("../Data.Monoid.Additive");+var Data_Monoid_Conj = require("../Data.Monoid.Conj");+var Data_Monoid_Disj = require("../Data.Monoid.Disj");+var Data_Monoid_Dual = require("../Data.Monoid.Dual");+var Data_Monoid_Endo = require("../Data.Monoid.Endo");+var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var unfolded = function (dictMonoid) {+    return function (f) {+        return function (p) {+            var go = function ($42) {+                return Data_Maybe.maybe(Data_Monoid.mempty(dictMonoid))(function (v) {+                    return Data_Semigroup.append(dictMonoid.Semigroup0())(Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(p)(v.value0))(go(v.value1));+                })(f($42));+            };+            return go;+        };+    };+};+var replicated = function (dictMonoid) {+    return function (i) {+        return function (v) {+            var go = function (v1) {+                return function (x) {+                    if (v1 === 0) {+                        return Data_Monoid.mempty(Data_Monoid.monoidFn(dictMonoid));+                    };+                    return Data_Semigroup.append(Data_Semigroup.semigroupFn(dictMonoid.Semigroup0()))(x)(go(v1 - 1 | 0)(x));+                };+            };+            return go(i)(v);+        };+    };+};+var ifoldMapOf = function (p) {+    return function (f) {+        return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(p(Data_Lens_Internal_Indexed.Indexed(Data_Tuple.uncurry(f))));+    };+};+var ifoldlOf = function (p) {+    return function (f) {+        return function (r) {+            return function ($43) {+                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(ifoldMapOf(p)(function (i) {+                    return function ($44) {+                        return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(f(i))($44)));+                    };+                })($43)));+            };+        };+    };+};+var ifoldrOf = function (p) {+    return function (f) {+        return function (r) {+            return function ($45) {+                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(ifoldMapOf(p)(function (i) {+                    return function ($46) {+                        return Data_Monoid_Endo.Endo(f(i)($46));+                    };+                })($45));+            };+        };+    };+};+var itoListOf = function (p) {+    return ifoldrOf(p)(function (i) {+        return function (x) {+            return function (xs) {+                return new Data_List_Types.Cons(new Data_Tuple.Tuple(i, x), xs);+            };+        };+    })(Data_List_Types.Nil.value);+};+var itraverseOf_ = function (dictApplicative) {+    return function (p) {+        return function (f) {+            return ifoldrOf(p)(function (i) {+                return function (a) {+                    return function (fu) {+                        return Control_Apply.applySecond(dictApplicative.Apply0())(Data_Functor["void"]((dictApplicative.Apply0()).Functor0())(f(i)(a)))(fu);+                    };+                };+            })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));+        };+    };+};+var ifindOf = function (p) {+    return function (f) {+        return ifoldrOf(p)(function (i) {+            return function (a) {+                return Data_Maybe.maybe((function () {+                    var $36 = f(i)(a);+                    if ($36) {+                        return new Data_Maybe.Just(a);+                    };+                    return Data_Maybe.Nothing.value;+                })())(Data_Maybe.Just.create);+            };+        })(Data_Maybe.Nothing.value);+    };+};+var ianyOf = function (dictHeytingAlgebra) {+    return function (p) {+        return function (f) {+            return function ($47) {+                return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(ifoldMapOf(p)(function (i) {+                    return function ($48) {+                        return Data_Monoid_Disj.Disj(f(i)($48));+                    };+                })($47));+            };+        };+    };+};+var iallOf = function (dictHeytingAlgebra) {+    return function (p) {+        return function (f) {+            return function ($49) {+                return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(ifoldMapOf(p)(function (i) {+                    return function ($50) {+                        return Data_Monoid_Conj.Conj(f(i)($50));+                    };+                })($49));+            };+        };+    };+};+var folded = function (dictMonoid) {+    return function (dictFoldable) {+        return function (v) {+            return Data_Foldable.foldMap(dictFoldable)(dictMonoid)(v);+        };+    };+};+var foldMapOf = Data_Newtype.under(Data_Lens_Internal_Forget.newtypeForget)(Data_Lens_Internal_Forget.newtypeForget)(Data_Lens_Internal_Forget.Forget);+var foldOf = function (p) {+    return foldMapOf(p)(Control_Category.id(Control_Category.categoryFn));+};+var foldlOf = function (p) {+    return function (f) {+        return function (r) {+            return function ($51) {+                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(Data_Newtype.unwrap(Data_Monoid_Dual.newtypeDual)(foldMapOf(p)(function ($52) {+                    return Data_Monoid_Dual.Dual(Data_Monoid_Endo.Endo(Data_Function.flip(f)($52)));+                })($51)));+            };+        };+    };+};+var foldrOf = function (p) {+    return function (f) {+        return function (r) {+            return function ($53) {+                return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(r)(foldMapOf(p)(function ($54) {+                    return Data_Monoid_Endo.Endo(f($54));+                })($53));+            };+        };+    };+};+var maximumOf = function (dictOrd) {+    return function (p) {+        var max = function (a) {+            return function (b) {+                var $38 = Data_Ord.greaterThan(dictOrd)(a)(b);+                if ($38) {+                    return a;+                };+                return b;+            };+        };+        return foldrOf(p)(function (a) {+            return function ($55) {+                return Data_Maybe.Just.create(Data_Maybe.maybe(a)(max(a))($55));+            };+        })(Data_Maybe.Nothing.value);+    };+};+var minimumOf = function (dictOrd) {+    return function (p) {+        var min = function (a) {+            return function (b) {+                var $39 = Data_Ord.lessThan(dictOrd)(a)(b);+                if ($39) {+                    return a;+                };+                return b;+            };+        };+        return foldrOf(p)(function (a) {+            return function ($56) {+                return Data_Maybe.Just.create(Data_Maybe.maybe(a)(min(a))($56));+            };+        })(Data_Maybe.Nothing.value);+    };+};+var toListOf = function (p) {+    return foldrOf(p)(Data_List_Types.Cons.create)(Data_List_Types.Nil.value);+};+var toListOfOn = function (s) {+    return function (p) {+        return toListOf(p)(s);+    };+};+var traverseOf_ = function (dictApplicative) {+    return function (p) {+        return function (f) {+            return foldrOf(p)(function (a) {+                return function (fu) {+                    return Control_Apply.applySecond(dictApplicative.Apply0())(Data_Functor["void"]((dictApplicative.Apply0()).Functor0())(f(a)))(fu);+                };+            })(Control_Applicative.pure(dictApplicative)(Data_Unit.unit));+        };+    };+};+var has = function (dictHeytingAlgebra) {+    return function (p) {+        return function ($57) {+            return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(foldMapOf(p)(Data_Function["const"](Data_HeytingAlgebra.tt(dictHeytingAlgebra)))($57));+        };+    };+};+var hasn$primet = function (dictHeytingAlgebra) {+    return function (p) {+        return function ($58) {+            return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(foldMapOf(p)(Data_Function["const"](Data_HeytingAlgebra.ff(dictHeytingAlgebra)))($58));+        };+    };+};+var lastOf = function (p) {+    return function ($59) {+        return Data_Newtype.unwrap(Data_Maybe_Last.newtypeLast)(foldMapOf(p)(function ($60) {+            return Data_Maybe_Last.Last(Data_Maybe.Just.create($60));+        })($59));+    };+};+var lengthOf = function (p) {+    return function ($61) {+        return Data_Newtype.unwrap(Data_Monoid_Additive.newtypeAdditive)(foldMapOf(p)(Data_Function["const"](1))($61));+    };+};+var preview = function (p) {+    return function ($62) {+        return Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst)(foldMapOf(p)(function ($63) {+            return Data_Maybe_First.First(Data_Maybe.Just.create($63));+        })($62));+    };+};+var previewOn = function (s) {+    return function (p) {+        return preview(p)(s);+    };+};+var productOf = function (dictSemiring) {+    return function (p) {+        return function ($64) {+            return Data_Newtype.unwrap(Data_Monoid_Multiplicative.newtypeMultiplicative)(foldMapOf(p)(Data_Monoid_Multiplicative.Multiplicative)($64));+        };+    };+};+var sequenceOf_ = function (dictApplicative) {+    return function (p) {+        return function ($65) {+            return Data_Function.flip(Data_Newtype.unwrap(Data_Monoid_Endo.newtypeEndo))(Control_Applicative.pure(dictApplicative)(Data_Unit.unit))(foldMapOf(p)(function (f) {+                return function (v) {+                    return Control_Apply.applySecond(dictApplicative.Apply0())(f)(v);+                };+            })($65));+        };+    };+};+var sumOf = function (dictSemiring) {+    return function (p) {+        return function ($66) {+            return Data_Newtype.unwrap(Data_Monoid_Additive.newtypeAdditive)(foldMapOf(p)(Data_Monoid_Additive.Additive)($66));+        };+    };+};+var firstOf = function (p) {+    return function ($67) {+        return Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst)(foldMapOf(p)(function ($68) {+            return Data_Maybe_First.First(Data_Maybe.Just.create($68));+        })($67));+    };+};+var findOf = function (p) {+    return function (f) {+        return foldrOf(p)(function (a) {+            return Data_Maybe.maybe((function () {+                var $40 = f(a);+                if ($40) {+                    return new Data_Maybe.Just(a);+                };+                return Data_Maybe.Nothing.value;+            })())(Data_Maybe.Just.create);+        })(Data_Maybe.Nothing.value);+    };+};+var filtered = function (dictChoice) {+    return function (f) {+        return function ($69) {+            return Data_Profunctor.dimap(dictChoice.Profunctor0())(function (x) {+                var $41 = f(x);+                if ($41) {+                    return new Data_Either.Right(x);+                };+                return new Data_Either.Left(x);+            })(Data_Either.either(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn)))(Data_Profunctor_Choice.right(dictChoice)($69));+        };+    };+};+var anyOf = function (dictHeytingAlgebra) {+    return function (p) {+        return function (f) {+            return function ($70) {+                return Data_Newtype.unwrap(Data_Monoid_Disj.newtypeDisj)(foldMapOf(p)(function ($71) {+                    return Data_Monoid_Disj.Disj(f($71));+                })($70));+            };+        };+    };+};+var elemOf = function (dictEq) {+    return function (p) {+        return function (a) {+            return anyOf(Data_HeytingAlgebra.heytingAlgebraBoolean)(p)(function (v) {+                return Data_Eq.eq(dictEq)(v)(a);+            });+        };+    };+};+var orOf = function (dictHeytingAlgebra) {+    return function (p) {+        return anyOf(dictHeytingAlgebra)(p)(Control_Category.id(Control_Category.categoryFn));+    };+};+var allOf = function (dictHeytingAlgebra) {+    return function (p) {+        return function (f) {+            return function ($72) {+                return Data_Newtype.unwrap(Data_Monoid_Conj.newtypeConj)(foldMapOf(p)(function ($73) {+                    return Data_Monoid_Conj.Conj(f($73));+                })($72));+            };+        };+    };+};+var andOf = function (dictHeytingAlgebra) {+    return function (p) {+        return allOf(dictHeytingAlgebra)(p)(Control_Category.id(Control_Category.categoryFn));+    };+};+var notElemOf = function (dictEq) {+    return function (p) {+        return function (a) {+            return allOf(Data_HeytingAlgebra.heytingAlgebraBoolean)(p)(function (v) {+                return Data_Eq.notEq(dictEq)(v)(a);+            });+        };+    };+};+module.exports = {+    allOf: allOf, +    andOf: andOf, +    anyOf: anyOf, +    elemOf: elemOf, +    filtered: filtered, +    findOf: findOf, +    firstOf: firstOf, +    foldMapOf: foldMapOf, +    foldOf: foldOf, +    folded: folded, +    foldlOf: foldlOf, +    foldrOf: foldrOf, +    has: has, +    "hasn't": hasn$primet, +    iallOf: iallOf, +    ianyOf: ianyOf, +    ifoldMapOf: ifoldMapOf, +    ifoldlOf: ifoldlOf, +    ifoldrOf: ifoldrOf, +    itoListOf: itoListOf, +    itraverseOf_: itraverseOf_, +    lastOf: lastOf, +    lengthOf: lengthOf, +    maximumOf: maximumOf, +    minimumOf: minimumOf, +    notElemOf: notElemOf, +    orOf: orOf, +    preview: preview, +    previewOn: previewOn, +    productOf: productOf, +    replicated: replicated, +    sequenceOf_: sequenceOf_, +    sumOf: sumOf, +    toListOf: toListOf, +    toListOfOn: toListOfOn, +    traverseOf_: traverseOf_, +    unfolded: unfolded+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Lens.Internal.Forget":176,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Types":194,"../Data.List":200,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.Maybe.First":202,"../Data.Maybe.Last":203,"../Data.Monoid":213,"../Data.Monoid.Additive":207,"../Data.Monoid.Conj":208,"../Data.Monoid.Disj":209,"../Data.Monoid.Dual":210,"../Data.Monoid.Endo":211,"../Data.Monoid.Multiplicative":212,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278}],172:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Lens_Internal_Forget = require("../Data.Lens.Internal.Forget");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Newtype = require("../Data.Newtype");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var view = function (l) {+    return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(l(Control_Category.id(Control_Category.categoryFn)));+};+var viewOn = function (s) {+    return function (l) {+        return view(l)(s);+    };+};+var use = function (dictMonadState) {+    return function (p) {+        return Control_Monad_State_Class.gets(dictMonadState)(function (v) {+            return viewOn(v)(p);+        });+    };+};+var to = function (f) {+    return function (p) {+        return function ($3) {+            return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(p)(f($3));+        };+    };+};+var iview = function (l) {+    return Data_Newtype.unwrap(Data_Lens_Internal_Forget.newtypeForget)(l(Data_Lens_Internal_Indexed.Indexed(Control_Category.id(Control_Category.categoryFn))));+};+var iuse = function (dictMonadState) {+    return function (p) {+        return Control_Monad_State_Class.gets(dictMonadState)(iview(p));+    };+};+module.exports = {+    iuse: iuse, +    iview: iview, +    to: to, +    use: use, +    view: view, +    viewOn: viewOn+};++},{"../Control.Category":47,"../Control.Monad.State.Class":81,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Lens.Internal.Forget":176,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Types":194,"../Data.Newtype":215,"../Data.Tuple":255,"../Prelude":278}],173:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Data_Distributive = require("../Data.Distributive");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Lens_Internal_Grating = require("../Data.Lens.Internal.Grating");+var Data_Lens_Internal_Zipping = require("../Data.Lens.Internal.Zipping");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");+var Data_Profunctor_Costar = require("../Data.Profunctor.Costar");+var Data_Profunctor_Star = require("../Data.Profunctor.Star");+var Prelude = require("../Prelude");+var zipWithOf = function (g) {+    return function (f) {+        return Data_Newtype.unwrap(Data_Lens_Internal_Zipping.newtypeZipping)(g(f));+    };+};+var zipFWithOf = function (g) {+    return function (f) {+        return Data_Newtype.unwrap(Data_Profunctor_Costar.newtypeCostar)(g(f));+    };+};+var withGrate = function (g) {+    return Data_Newtype.unwrap(Data_Lens_Internal_Grating.newtypeGrating)(g(function (f) {+        return f(Control_Category.id(Control_Category.categoryFn));+    }));+};+var grate = function (f) {+    return function (dictClosed) {+        return function (pab) {+            return Data_Profunctor.dimap(dictClosed.Profunctor0())(Data_Function.applyFlipped)(f)(Data_Profunctor_Closed.closed(dictClosed)(pab));+        };+    };+};+var cotraversed = function (dictDistributive) {+    return function (dictClosed) {+        return grate(function (f) {+            return Data_Distributive.cotraverse(dictDistributive)(Data_Functor.functorFn)(f)(Control_Category.id(Control_Category.categoryFn));+        })(dictClosed);+    };+};+var collectOf = function (g) {+    return function (f) {+        return Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar)(g(f));+    };+};+var cloneGrate = function (g) {+    return function (dictClosed) {+        return grate(withGrate(g))(dictClosed);+    };+};+module.exports = {+    cloneGrate: cloneGrate, +    collectOf: collectOf, +    cotraversed: cotraversed, +    grate: grate, +    withGrate: withGrate, +    zipFWithOf: zipFWithOf, +    zipWithOf: zipWithOf+};++},{"../Control.Category":47,"../Data.Distributive":136,"../Data.Function":151,"../Data.Functor":157,"../Data.Lens.Internal.Grating":177,"../Data.Lens.Internal.Zipping":184,"../Data.Lens.Types":194,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Closed":225,"../Data.Profunctor.Costar":227,"../Data.Profunctor.Star":229,"../Prelude":278}],174:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Monad_State = require("../Control.Monad.State");+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Monad_State_Trans = require("../Control.Monad.State.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Compose = require("../Data.Functor.Compose");+var Data_Identity = require("../Data.Identity");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Star = require("../Data.Profunctor.Star");+var Data_Semiring = require("../Data.Semiring");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var unIndex = function (dictProfunctor) {+    return function (l) {+        return function ($7) {+            return l(Data_Lens_Internal_Indexed.Indexed(Data_Profunctor.dimap(dictProfunctor)(Data_Tuple.snd)(Control_Category.id(Control_Category.categoryFn))($7)));+        };+    };+};+var iwander = function (itr) {+    return function (dictWander) {+        return function ($8) {+            return Data_Lens_Internal_Wander.wander(dictWander)(function (dictApplicative) {+                return function (f) {+                    return function (s) {+                        return itr(dictApplicative)(Data_Tuple.curry(f))(s);+                    };+                };+            })(Data_Newtype.unwrap(Data_Lens_Internal_Indexed.newtypeIndexed)($8));+        };+    };+};+var positions = function (tr) {+    return function (dictWander) {+        return iwander(function (dictApplicative) {+            return function (f) {+                return function (s) {+                    return Data_Function.flip(Control_Monad_State.evalState)(0)(Data_Newtype.unwrap(Data_Functor_Compose.newtypeCompose)(Data_Function.flip(Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar))(s)(tr(Data_Lens_Internal_Wander.wanderStar(Data_Functor_Compose.applicativeCompose(Control_Monad_State_Trans.applicativeStateT(Data_Identity.monadIdentity))(dictApplicative)))(function (a) {+                        return Data_Functor_Compose.Compose(Control_Apply.applyFirst(Control_Monad_State_Trans.applyStateT(Data_Identity.monadIdentity))(Control_Apply.apply(Control_Monad_State_Trans.applyStateT(Data_Identity.monadIdentity))(Data_Functor.map(Control_Monad_State_Trans.functorStateT(Data_Identity.functorIdentity))(f)(Control_Monad_State_Class.get(Control_Monad_State_Trans.monadStateStateT(Data_Identity.monadIdentity))))(Control_Applicative.pure(Control_Monad_State_Trans.applicativeStateT(Data_Identity.monadIdentity))(a)))(Control_Monad_State_Class.modify(Control_Monad_State_Trans.monadStateStateT(Data_Identity.monadIdentity))(function (v) {+                            return v + 1 | 0;+                        })));+                    }))));+                };+            };+        })(dictWander);+    };+};+var asIndex = function (dictProfunctor) {+    return function (l) {+        return function ($9) {+            return l(Data_Lens_Internal_Indexed.Indexed(Data_Profunctor.dimap(dictProfunctor)(Data_Tuple.fst)(Control_Category.id(Control_Category.categoryFn))($9)));+        };+    };+};+module.exports = {+    asIndex: asIndex, +    iwander: iwander, +    positions: positions, +    unIndex: unIndex+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Monad.State":83,"../Control.Monad.State.Class":81,"../Control.Monad.State.Trans":82,"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Compose":153,"../Data.Identity":163,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Internal.Wander":183,"../Data.Lens.Types":194,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Star":229,"../Data.Semiring":239,"../Data.Tuple":255,"../Prelude":278}],175:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Functor = require("../Data.Functor");+var Data_Profunctor = require("../Data.Profunctor");+var Prelude = require("../Prelude");+var Exchange = (function () {+    function Exchange(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Exchange.create = function (value0) {+        return function (value1) {+            return new Exchange(value0, value1);+        };+    };+    return Exchange;+})();+var profunctorExchange = new Data_Profunctor.Profunctor(function (f) {+    return function (g) {+        return function (v) {+            return new Exchange(function ($11) {+                return v.value0(f($11));+            }, function ($12) {+                return g(v.value1($12));+            });+        };+    };+});+var functorExchange = new Data_Functor.Functor(function (f) {+    return function (v) {+        return new Exchange(v.value0, function ($13) {+            return f(v.value1($13));+        });+    };+});+module.exports = {+    Exchange: Exchange, +    functorExchange: functorExchange, +    profunctorExchange: profunctorExchange+};++},{"../Control.Semigroupoid":93,"../Data.Functor":157,"../Data.Profunctor":231,"../Prelude":278}],176:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Const = require("../Data.Const");+var Data_Either = require("../Data.Either");+var Data_Functor = require("../Data.Functor");+var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Cochoice = require("../Data.Profunctor.Cochoice");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Forget = function (x) {+    return x;+};+var profunctorForget = new Data_Profunctor.Profunctor(function (f) {+    return function (v) {+        return function (v1) {+            return function ($25) {+                return v1(f($25));+            };+        };+    };+});+var strongForget = new Data_Profunctor_Strong.Strong(function () {+    return profunctorForget;+}, function (v) {+    return function ($26) {+        return v(Data_Tuple.fst($26));+    };+}, function (v) {+    return function ($27) {+        return v(Data_Tuple.snd($27));+    };+});+var newtypeForget = new Data_Newtype.Newtype(function (n) {+    return n;+}, Forget);+var cochoiceForget = new Data_Profunctor_Cochoice.Cochoice(function () {+    return profunctorForget;+}, function (v) {+    return function ($28) {+        return v(Data_Either.Left.create($28));+    };+}, function (v) {+    return function ($29) {+        return v(Data_Either.Right.create($29));+    };+});+var choiceForget = function (dictMonoid) {+    return new Data_Profunctor_Choice.Choice(function () {+        return profunctorForget;+    }, function (v) {+        return Data_Either.either(v)(Data_Monoid.mempty(Data_Monoid.monoidFn(dictMonoid)));+    }, function (v) {+        return Data_Either.either(Data_Monoid.mempty(Data_Monoid.monoidFn(dictMonoid)))(v);+    });+};+var wanderForget = function (dictMonoid) {+    return new Data_Lens_Internal_Wander.Wander(function () {+        return choiceForget(dictMonoid);+    }, function () {+        return strongForget;+    }, function (f) {+        return function (v) {+            return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Const.newtypeConst)(Data_Const.newtypeConst)(Data_Const.Const)(f(Data_Const.applicativeConst(dictMonoid)))(v);+        };+    });+};+module.exports = {+    Forget: Forget, +    newtypeForget: newtypeForget, +    profunctorForget: profunctorForget, +    choiceForget: choiceForget, +    strongForget: strongForget, +    cochoiceForget: cochoiceForget, +    wanderForget: wanderForget+};++},{"../Control.Semigroupoid":93,"../Data.Const":135,"../Data.Either":138,"../Data.Functor":157,"../Data.Lens.Internal.Wander":183,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Cochoice":226,"../Data.Profunctor.Strong":230,"../Data.Tuple":255,"../Prelude":278}],177:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");+var Prelude = require("../Prelude");+var Grating = function (x) {+    return x;+};+var profunctorGrating = new Data_Profunctor.Profunctor(function (f) {+    return function (g) {+        return function (v) {+            return function (d) {+                return g(v(function (k) {+                    return d(function ($9) {+                        return k(f($9));+                    });+                }));+            };+        };+    };+});+var newtypeGrating = new Data_Newtype.Newtype(function (n) {+    return n;+}, Grating);+var closedGrating = new Data_Profunctor_Closed.Closed(function () {+    return profunctorGrating;+}, function (v) {+    return function (f) {+        return function (x) {+            return v(function (k) {+                return f(function (g) {+                    return k(g(x));+                });+            });+        };+    };+});+module.exports = {+    Grating: Grating, +    newtypeGrating: newtypeGrating, +    profunctorGrating: profunctorGrating, +    closedGrating: closedGrating+};++},{"../Control.Semigroupoid":93,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Closed":225,"../Prelude":278}],178:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Indexed = function (x) {+    return x;+};+var profunctorIndexed = function (dictProfunctor) {+    return new Data_Profunctor.Profunctor(function (f) {+        return function (g) {+            return function (v) {+                return Data_Profunctor.dimap(dictProfunctor)(Data_Profunctor_Strong.second(Data_Profunctor_Strong.strongFn)(f))(g)(v);+            };+        };+    });+};+var strongIndexed = function (dictStrong) {+    return new Data_Profunctor_Strong.Strong(function () {+        return profunctorIndexed(dictStrong.Profunctor0());+    }, function (v) {+        return Indexed(Data_Profunctor.lmap(dictStrong.Profunctor0())(function (v1) {+            return new Data_Tuple.Tuple(new Data_Tuple.Tuple(v1.value0, v1.value1.value0), v1.value1.value1);+        })(Data_Profunctor_Strong.first(dictStrong)(v)));+    }, function (v) {+        return Indexed(Data_Profunctor.lmap(dictStrong.Profunctor0())(function (v1) {+            return new Data_Tuple.Tuple(v1.value1.value0, new Data_Tuple.Tuple(v1.value0, v1.value1.value1));+        })(Data_Profunctor_Strong.second(dictStrong)(v)));+    });+};+var newtypeIndexed = new Data_Newtype.Newtype(function (n) {+    return n;+}, Indexed);+var choiceIndexed = function (dictChoice) {+    return new Data_Profunctor_Choice.Choice(function () {+        return profunctorIndexed(dictChoice.Profunctor0());+    }, function (v) {+        return Indexed(Data_Profunctor.lmap(dictChoice.Profunctor0())(function (v1) {+            return Data_Either.either(function ($47) {+                return Data_Either.Left.create(Data_Tuple.Tuple.create(v1.value0)($47));+            })(Data_Either.Right.create)(v1.value1);+        })(Data_Profunctor_Choice.left(dictChoice)(v)));+    }, function (v) {+        return Indexed(Data_Profunctor.lmap(dictChoice.Profunctor0())(function (v1) {+            return Data_Either.either(Data_Either.Left.create)(function ($48) {+                return Data_Either.Right.create(Data_Tuple.Tuple.create(v1.value0)($48));+            })(v1.value1);+        })(Data_Profunctor_Choice.right(dictChoice)(v)));+    });+};+var wanderIndexed = function (dictWander) {+    return new Data_Lens_Internal_Wander.Wander(function () {+        return choiceIndexed(dictWander.Choice1());+    }, function () {+        return strongIndexed(dictWander.Strong0());+    }, function (trav) {+        return function (v) {+            return Indexed(Data_Lens_Internal_Wander.wander(dictWander)(function (dictApplicative) {+                return function (ia2fb) {+                    return function (v1) {+                        return trav(dictApplicative)(function ($49) {+                            return ia2fb(Data_Tuple.Tuple.create(v1.value0)($49));+                        })(v1.value1);+                    };+                };+            })(v));+        };+    });+};+module.exports = {+    Indexed: Indexed, +    newtypeIndexed: newtypeIndexed, +    profunctorIndexed: profunctorIndexed, +    strongIndexed: strongIndexed, +    choiceIndexed: choiceIndexed, +    wanderIndexed: wanderIndexed+};++},{"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Function":151,"../Data.Lens.Internal.Wander":183,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Strong":230,"../Data.Tuple":255,"../Prelude":278}],179:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Either = require("../Data.Either");+var Data_Functor = require("../Data.Functor");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Prelude = require("../Prelude");+var Market = (function () {+    function Market(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Market.create = function (value0) {+        return function (value1) {+            return new Market(value0, value1);+        };+    };+    return Market;+})();+var profunctorMarket = new Data_Profunctor.Profunctor(function (f) {+    return function (g) {+        return function (v) {+            return new Market(function ($19) {+                return g(v.value0($19));+            }, function ($20) {+                return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(g)(v.value1(f($20)));+            });+        };+    };+});+var functorMarket = new Data_Functor.Functor(function (f) {+    return function (v) {+        return new Market(function ($21) {+            return f(v.value0($21));+        }, function ($22) {+            return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(f)(v.value1($22));+        });+    };+});+var choiceMarket = new Data_Profunctor_Choice.Choice(function () {+    return profunctorMarket;+}, function (v) {+    return new Market(function ($23) {+        return Data_Either.Left.create(v.value0($23));+    }, Data_Either.either(function ($24) {+        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(Data_Either.Left.create)(v.value1($24));+    })(function ($25) {+        return Data_Either.Left.create(Data_Either.Right.create($25));+    }));+}, function (v) {+    return new Market(function ($26) {+        return Data_Either.Right.create(v.value0($26));+    }, Data_Either.either(function ($27) {+        return Data_Either.Left.create(Data_Either.Left.create($27));+    })(function ($28) {+        return Data_Bifunctor.lmap(Data_Either.bifunctorEither)(Data_Either.Right.create)(v.value1($28));+    }));+});+module.exports = {+    Market: Market, +    functorMarket: functorMarket, +    profunctorMarket: profunctorMarket, +    choiceMarket: choiceMarket+};++},{"../Control.Semigroupoid":93,"../Data.Bifunctor":128,"../Data.Either":138,"../Data.Functor":157,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Prelude":278}],180:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Cochoice = require("../Data.Profunctor.Cochoice");+var Data_Profunctor_Costrong = require("../Data.Profunctor.Costrong");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Prelude = require("../Prelude");+var Re = function (x) {+    return x;+};+var profunctorRe = function (dictProfunctor) {+    return new Data_Profunctor.Profunctor(function (f) {+        return function (g) {+            return function (v) {+                return function ($28) {+                    return v(Data_Profunctor.dimap(dictProfunctor)(g)(f)($28));+                };+            };+        };+    });+};+var strongRe = function (dictStrong) {+    return new Data_Profunctor_Costrong.Costrong(function () {+        return profunctorRe(dictStrong.Profunctor0());+    }, function (v) {+        return function ($29) {+            return v(Data_Profunctor_Strong.first(dictStrong)($29));+        };+    }, function (v) {+        return function ($30) {+            return v(Data_Profunctor_Strong.second(dictStrong)($30));+        };+    });+};+var newtypeRe = new Data_Newtype.Newtype(function (n) {+    return n;+}, Re);+var costrongRe = function (dictCostrong) {+    return new Data_Profunctor_Strong.Strong(function () {+        return profunctorRe(dictCostrong.Profunctor0());+    }, function (v) {+        return function ($31) {+            return v(Data_Profunctor_Costrong.unfirst(dictCostrong)($31));+        };+    }, function (v) {+        return function ($32) {+            return v(Data_Profunctor_Costrong.unsecond(dictCostrong)($32));+        };+    });+};+var cochoiceRe = function (dictCochoice) {+    return new Data_Profunctor_Choice.Choice(function () {+        return profunctorRe(dictCochoice.Profunctor0());+    }, function (v) {+        return function ($33) {+            return v(Data_Profunctor_Cochoice.unleft(dictCochoice)($33));+        };+    }, function (v) {+        return function ($34) {+            return v(Data_Profunctor_Cochoice.unright(dictCochoice)($34));+        };+    });+};+var choiceRe = function (dictChoice) {+    return new Data_Profunctor_Cochoice.Cochoice(function () {+        return profunctorRe(dictChoice.Profunctor0());+    }, function (v) {+        return function ($35) {+            return v(Data_Profunctor_Choice.left(dictChoice)($35));+        };+    }, function (v) {+        return function ($36) {+            return v(Data_Profunctor_Choice.right(dictChoice)($36));+        };+    });+};+module.exports = {+    Re: Re, +    newtypeRe: newtypeRe, +    profunctorRe: profunctorRe, +    choiceRe: choiceRe, +    cochoiceRe: cochoiceRe, +    strongRe: strongRe, +    costrongRe: costrongRe+};++},{"../Control.Semigroupoid":93,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Cochoice":226,"../Data.Profunctor.Costrong":228,"../Data.Profunctor.Strong":230,"../Prelude":278}],181:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Shop = (function () {+    function Shop(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Shop.create = function (value0) {+        return function (value1) {+            return new Shop(value0, value1);+        };+    };+    return Shop;+})();+var profunctorShop = new Data_Profunctor.Profunctor(function (f) {+    return function (g) {+        return function (v) {+            return new Shop(function ($30) {+                return v.value0(f($30));+            }, function (s) {+                return function ($31) {+                    return g(v.value1(f(s))($31));+                };+            });+        };+    };+});+var strongShop = new Data_Profunctor_Strong.Strong(function () {+    return profunctorShop;+}, function (v) {+    return new Shop(function (v1) {+        return v.value0(v1.value0);+    }, function (v1) {+        return function (b) {+            return new Data_Tuple.Tuple(v.value1(v1.value0)(b), v1.value1);+        };+    });+}, function (v) {+    return new Shop(function (v1) {+        return v.value0(v1.value1);+    }, function (v1) {+        return function (b) {+            return new Data_Tuple.Tuple(v1.value0, v.value1(v1.value1)(b));+        };+    });+});+module.exports = {+    Shop: Shop, +    profunctorShop: profunctorShop, +    strongShop: strongShop+};++},{"../Control.Semigroupoid":93,"../Data.Profunctor":231,"../Data.Profunctor.Strong":230,"../Data.Tuple":255,"../Prelude":278}],182:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Either = require("../Data.Either");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Costrong = require("../Data.Profunctor.Costrong");+var Data_Tuple = require("../Data.Tuple");+var Tagged = function (x) {+    return x;+};+var taggedProfunctor = new Data_Profunctor.Profunctor(function (v) {+    return function (g) {+        return function (v1) {+            return g(v1);+        };+    };+});+var taggedCostrong = new Data_Profunctor_Costrong.Costrong(function () {+    return taggedProfunctor;+}, function (v) {+    return v.value0;+}, function (v) {+    return v.value1;+});+var taggedChoice = new Data_Profunctor_Choice.Choice(function () {+    return taggedProfunctor;+}, function (v) {+    return new Data_Either.Left(v);+}, function (v) {+    return new Data_Either.Right(v);+});+var newtypeTagged = new Data_Newtype.Newtype(function (n) {+    return n;+}, Tagged);+module.exports = {+    Tagged: Tagged, +    newtypeTagged: newtypeTagged, +    taggedProfunctor: taggedProfunctor, +    taggedChoice: taggedChoice, +    taggedCostrong: taggedCostrong+};++},{"../Data.Either":138,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Costrong":228,"../Data.Tuple":255}],183:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Functor = require("../Data.Functor");+var Data_Identity = require("../Data.Identity");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Star = require("../Data.Profunctor.Star");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Prelude = require("../Prelude");+var Wander = function (Choice1, Strong0, wander) {+    this.Choice1 = Choice1;+    this.Strong0 = Strong0;+    this.wander = wander;+};+var wanderStar = function (dictApplicative) {+    return new Wander(function () {+        return Data_Profunctor_Star.choiceStar(dictApplicative);+    }, function () {+        return Data_Profunctor_Star.strongStar((dictApplicative.Apply0()).Functor0());+    }, function (t) {+        return function (v) {+            return t(dictApplicative)(v);+        };+    });+};+var wanderFunction = new Wander(function () {+    return Data_Profunctor_Choice.choiceFn;+}, function () {+    return Data_Profunctor_Strong.strongFn;+}, function (t) {+    return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Identity.newtypeIdentity)(Data_Identity.newtypeIdentity)(Data_Identity.Identity)(t(Data_Identity.applicativeIdentity));+});+var wander = function (dict) {+    return dict.wander;+};+module.exports = {+    Wander: Wander, +    wander: wander, +    wanderFunction: wanderFunction, +    wanderStar: wanderStar+};++},{"../Data.Functor":157,"../Data.Identity":163,"../Data.Newtype":215,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Star":229,"../Data.Profunctor.Strong":230,"../Prelude":278}],184:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");+var Zipping = function (x) {+    return x;+};+var profunctorZipping = new Data_Profunctor.Profunctor(function (f) {+    return function (g) {+        return function (v) {+            return function (a1) {+                return function (a2) {+                    return g(v(f(a1))(f(a2)));+                };+            };+        };+    };+});+var newtypeZipping = new Data_Newtype.Newtype(function (n) {+    return n;+}, Zipping);+var closedZipping = new Data_Profunctor_Closed.Closed(function () {+    return profunctorZipping;+}, function (v) {+    return function (f1) {+        return function (f2) {+            return function (x) {+                return v(f1(x))(f2(x));+            };+        };+    };+});+module.exports = {+    Zipping: Zipping, +    newtypeZipping: newtypeZipping, +    profunctorZipping: profunctorZipping, +    closedZipping: closedZipping+};++},{"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Closed":225}],185:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Boolean = require("../Data.Boolean");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Lens_Internal_Exchange = require("../Data.Lens.Internal.Exchange");+var Data_Lens_Internal_Re = require("../Data.Lens.Internal.Re");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var withIso = function (l) {+    return function (f) {+        var v = l(new Data_Lens_Internal_Exchange.Exchange(Control_Category.id(Control_Category.categoryFn), Control_Category.id(Control_Category.categoryFn)));+        return f(v.value0)(v.value1);+    };+};+var under = function (l) {+    return withIso(l)(function (sa) {+        return function (bt) {+            return function (ts) {+                return function ($19) {+                    return sa(ts(bt($19)));+                };+            };+        };+    });+};+var re = function (t) {+    return Data_Newtype.unwrap(Data_Lens_Internal_Re.newtypeRe)(t(Control_Category.id(Control_Category.categoryFn)));+};+var iso = function (f) {+    return function (g) {+        return function (dictProfunctor) {+            return function (pab) {+                return Data_Profunctor.dimap(dictProfunctor)(f)(g)(pab);+            };+        };+    };+};+var mapping = function (dictFunctor) {+    return function (dictFunctor1) {+        return function (l) {+            return function (dictProfunctor) {+                return withIso(l)(function (sa) {+                    return function (bt) {+                        return iso(Data_Functor.map(dictFunctor)(sa))(Data_Functor.map(dictFunctor1)(bt))(dictProfunctor);+                    };+                });+            };+        };+    };+};+var non = function (dictEq) {+    return function (def) {+        return function (dictProfunctor) {+            var g = function (a) {+                if (Data_Eq.eq(dictEq)(a)(def)) {+                    return Data_Maybe.Nothing.value;+                };+                if (Data_Boolean.otherwise) {+                    return new Data_Maybe.Just(a);+                };+                throw new Error("Failed pattern match at Data.Lens.Iso line 44, column 9 - line 45, column 33: " + [ a.constructor.name ]);+            };+            return iso(Data_Maybe.fromMaybe(def))(g)(dictProfunctor);+        };+    };+};+var uncurried = function (dictProfunctor) {+    return iso(Data_Tuple.uncurry)(Data_Tuple.curry)(dictProfunctor);+};+var flipped = function (dictProfunctor) {+    return iso(Data_Function.flip)(Data_Function.flip)(dictProfunctor);+};+var dimapping = function (dictProfunctor) {+    return function (dictProfunctor1) {+        return function (f) {+            return function (g) {+                return function (dictProfunctor2) {+                    return withIso(f)(function (sa) {+                        return function (bt) {+                            return withIso(g)(function (ssaa) {+                                return function (bbtt) {+                                    return iso(Data_Profunctor.dimap(dictProfunctor)(sa)(ssaa))(Data_Profunctor.dimap(dictProfunctor1)(bt)(bbtt))(dictProfunctor2);+                                };+                            });+                        };+                    });+                };+            };+        };+    };+};+var curried = function (dictProfunctor) {+    return iso(Data_Tuple.curry)(Data_Tuple.uncurry)(dictProfunctor);+};+var cloneIso = function (l) {+    return function (dictProfunctor) {+        return withIso(l)(function (x) {+            return function (y) {+                return function (p) {+                    return iso(x)(y)(dictProfunctor)(p);+                };+            };+        });+    };+};+var auf = function (dictProfunctor) {+    return function (l) {+        return withIso(l)(function (sa) {+            return function (bt) {+                return function (f) {+                    return function (g) {+                        return function (e) {+                            return bt(f(Data_Profunctor.rmap(dictProfunctor)(sa)(g))(e));+                        };+                    };+                };+            };+        });+    };+};+var au = function (l) {+    return withIso(l)(function (sa) {+        return function (bt) {+            return function (f) {+                return function (e) {+                    return sa(f(bt)(e));+                };+            };+        };+    });+};+module.exports = {+    au: au, +    auf: auf, +    cloneIso: cloneIso, +    curried: curried, +    dimapping: dimapping, +    flipped: flipped, +    iso: iso, +    mapping: mapping, +    non: non, +    re: re, +    uncurried: uncurried, +    under: under, +    withIso: withIso+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Boolean":130,"../Data.Eq":140,"../Data.Function":151,"../Data.Functor":157,"../Data.Lens.Internal.Exchange":175,"../Data.Lens.Internal.Re":180,"../Data.Lens.Types":194,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Tuple":255,"../Prelude":278}],186:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Lens_Lens = require("../Data.Lens.Lens");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var _2 = function (dictStrong) {+    return Data_Profunctor_Strong.second(dictStrong);+};+var _1 = function (dictStrong) {+    return Data_Profunctor_Strong.first(dictStrong);+};+module.exports = {+    _1: _1, +    _2: _2+};++},{"../Data.Lens.Lens":188,"../Data.Profunctor.Strong":230,"../Data.Tuple":255}],187:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Function = require("../Data.Function");+var Data_Lens_Lens = require("../Data.Lens.Lens");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var united = function (dictStrong) {+    return Data_Lens_Lens.lens(Data_Function["const"](Data_Unit.unit))(Data_Function["const"])(dictStrong);+};+module.exports = {+    united: united+};++},{"../Data.Function":151,"../Data.Lens.Lens":188,"../Data.Unit":259,"../Prelude":278}],188:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Internal_Shop = require("../Data.Lens.Internal.Shop");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var withLens = function (l) {+    return function (f) {+        var v = l(new Data_Lens_Internal_Shop.Shop(Control_Category.id(Control_Category.categoryFn), function (v1) {+            return function (b) {+                return b;+            };+        }));+        return f(v.value0)(v.value1);+    };+};+var withIndexedLens = function (l) {+    return function (f) {+        var v = l(new Data_Lens_Internal_Shop.Shop(Control_Category.id(Control_Category.categoryFn), function (v1) {+            return function (b) {+                return b;+            };+        }));+        return f(v.value0)(v.value1);+    };+};+var lens$prime = function (to) {+    return function (dictStrong) {+        return function (pab) {+            return Data_Profunctor.dimap(dictStrong.Profunctor0())(to)(function (v) {+                return v.value1(v.value0);+            })(Data_Profunctor_Strong.first(dictStrong)(pab));+        };+    };+};+var lens = function (get) {+    return function (set) {+        return function (dictStrong) {+            return lens$prime(function (s) {+                return new Data_Tuple.Tuple(get(s), function (b) {+                    return set(s)(b);+                });+            })(dictStrong);+        };+    };+};+var ilens$prime = function (to) {+    return function (dictStrong) {+        return function (pab) {+            return Data_Profunctor.dimap(dictStrong.Profunctor0())(to)(function (v) {+                return v.value1(v.value0);+            })(Data_Profunctor_Strong.first(dictStrong)(Data_Newtype.un(Data_Lens_Internal_Indexed.newtypeIndexed)(Data_Lens_Internal_Indexed.Indexed)(pab)));+        };+    };+};+var ilens = function (get) {+    return function (set) {+        return function (dictStrong) {+            return ilens$prime(function (s) {+                return new Data_Tuple.Tuple(get(s), function (b) {+                    return set(s)(b);+                });+            })(dictStrong);+        };+    };+};+var cloneLens = function (l) {+    return function (dictStrong) {+        return withLens(l)(function (x) {+            return function (y) {+                return function (p) {+                    return lens(x)(y)(dictStrong)(p);+                };+            };+        });+    };+};+var cloneIndexedLens = function (l) {+    return function (dictStrong) {+        return withIndexedLens(l)(function (x) {+            return function (y) {+                return function (p) {+                    return ilens(x)(y)(dictStrong)(p);+                };+            };+        });+    };+};+module.exports = {+    cloneIndexedLens: cloneIndexedLens, +    cloneLens: cloneLens, +    ilens: ilens, +    "ilens'": ilens$prime, +    lens: lens, +    "lens'": lens$prime, +    withIndexedLens: withIndexedLens, +    withLens: withLens+};++},{"../Control.Category":47,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Internal.Shop":181,"../Data.Lens.Types":194,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Strong":230,"../Data.Tuple":255,"../Prelude":278}],189:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Either = require("../Data.Either");+var Data_Lens_Prism = require("../Data.Lens.Prism");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var _Right = function (dictChoice) {+    return Data_Profunctor_Choice.right(dictChoice);+};+var _Left = function (dictChoice) {+    return Data_Profunctor_Choice.left(dictChoice);+};+module.exports = {+    _Left: _Left, +    _Right: _Right+};++},{"../Data.Either":138,"../Data.Lens.Prism":191,"../Data.Profunctor.Choice":224}],190:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Lens_Prism = require("../Data.Lens.Prism");+var Data_Maybe = require("../Data.Maybe");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var _Nothing = function (dictChoice) {+    return Data_Lens_Prism.prism(Data_Function["const"](Data_Maybe.Nothing.value))(Data_Maybe.maybe(new Data_Either.Right(Data_Unit.unit))(Data_Function["const"](new Data_Either.Left(Data_Maybe.Nothing.value))))(dictChoice);+};+var _Just = function (dictChoice) {+    return Data_Lens_Prism.prism(Data_Maybe.Just.create)(Data_Maybe.maybe(new Data_Either.Left(Data_Maybe.Nothing.value))(Data_Either.Right.create))(dictChoice);+};+module.exports = {+    _Just: _Just, +    _Nothing: _Nothing+};++},{"../Data.Either":138,"../Data.Function":151,"../Data.Lens.Prism":191,"../Data.Maybe":204,"../Data.Unit":259,"../Prelude":278}],191:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Lens_Internal_Market = require("../Data.Lens.Internal.Market");+var Data_Lens_Internal_Tagged = require("../Data.Lens.Internal.Tagged");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Prelude = require("../Prelude");+var withPrism = function (l) {+    return function (f) {+        var v = l(new Data_Lens_Internal_Market.Market(Control_Category.id(Control_Category.categoryFn), Data_Either.Right.create));+        return f(v.value0)(v.value1);+    };+};+var review = Data_Newtype.under(Data_Lens_Internal_Tagged.newtypeTagged)(Data_Lens_Internal_Tagged.newtypeTagged)(Data_Lens_Internal_Tagged.Tagged);+var prism = function (to) {+    return function (fro) {+        return function (dictChoice) {+            return function (pab) {+                return Data_Profunctor.dimap(dictChoice.Profunctor0())(fro)(Data_Either.either(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn)))(Data_Profunctor_Choice.right(dictChoice)(Data_Profunctor.rmap(dictChoice.Profunctor0())(to)(pab)));+            };+        };+    };+};+var prism$prime = function (to) {+    return function (fro) {+        return function (dictChoice) {+            return prism(to)(function (s) {+                return Data_Maybe.maybe(new Data_Either.Left(s))(Data_Either.Right.create)(fro(s));+            })(dictChoice);+        };+    };+};+var nearly = function (x) {+    return function (f) {+        return function (dictChoice) {+            return prism$prime(Data_Function["const"](x))(function ($14) {+                return Control_MonadZero.guard(Data_Maybe.monadZeroMaybe)(f($14));+            })(dictChoice);+        };+    };+};+var only = function (dictEq) {+    return function (x) {+        return function (dictChoice) {+            return nearly(x)(function (v) {+                return Data_Eq.eq(dictEq)(v)(x);+            })(dictChoice);+        };+    };+};+var matching = function (l) {+    return withPrism(l)(function (v) {+        return function (f) {+            return f;+        };+    });+};+var is = function (dictHeytingAlgebra) {+    return function (l) {+        return function ($15) {+            return Data_Either.either(Data_Function["const"](Data_HeytingAlgebra.ff(dictHeytingAlgebra)))(Data_Function["const"](Data_HeytingAlgebra.tt(dictHeytingAlgebra)))(matching(l)($15));+        };+    };+};+var isn$primet = function (dictHeytingAlgebra) {+    return function (l) {+        return function ($16) {+            return Data_HeytingAlgebra.not(dictHeytingAlgebra)(is(dictHeytingAlgebra)(l)($16));+        };+    };+};+var clonePrism = function (l) {+    return function (dictChoice) {+        return withPrism(l)(function (x) {+            return function (y) {+                return function (p) {+                    return prism(x)(y)(dictChoice)(p);+                };+            };+        });+    };+};+module.exports = {+    clonePrism: clonePrism, +    is: is, +    "isn't": isn$primet, +    matching: matching, +    nearly: nearly, +    only: only, +    prism: prism, +    "prism'": prism$prime, +    review: review, +    withPrism: withPrism+};++},{"../Control.Category":47,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Eq":140,"../Data.Function":151,"../Data.HeytingAlgebra":162,"../Data.Lens.Internal.Market":179,"../Data.Lens.Internal.Tagged":182,"../Data.Lens.Types":194,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Prelude":278}],192:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Monad_State_Class = require("../Control.Monad.State.Class");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Function = require("../Data.Function");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var over = function (l) {+    return l;+};+var set = function (l) {+    return function (b) {+        return over(l)(Data_Function["const"](b));+    };+};+var setJust = function (p) {+    return function ($24) {+        return set(p)(Data_Maybe.Just.create($24));+    };+};+var subOver = function (dictRing) {+    return function (p) {+        return function ($25) {+            return over(p)(Data_Function.flip(Data_Ring.sub(dictRing))($25));+        };+    };+};+var mulOver = function (dictSemiring) {+    return function (p) {+        return function ($26) {+            return over(p)(Data_Function.flip(Data_Semiring.mul(dictSemiring))($26));+        };+    };+};+var modifying = function (dictMonadState) {+    return function (p) {+        return function (f) {+            return Control_Monad_State_Class.modify(dictMonadState)(over(p)(f));+        };+    };+};+var mulModifying = function (dictMonadState) {+    return function (dictSemiring) {+        return function (p) {+            return function ($27) {+                return modifying(dictMonadState)(p)(Data_Function.flip(Data_Semiring.mul(dictSemiring))($27));+            };+        };+    };+};+var subModifying = function (dictMonadState) {+    return function (dictRing) {+        return function (p) {+            return function ($28) {+                return modifying(dictMonadState)(p)(Data_Function.flip(Data_Ring.sub(dictRing))($28));+            };+        };+    };+};+var iover = function (l) {+    return function (f) {+        return l(Data_Lens_Internal_Indexed.Indexed(Data_Tuple.uncurry(f)));+    };+};+var divOver = function (dictEuclideanRing) {+    return function (p) {+        return function ($29) {+            return over(p)(Data_Function.flip(Data_EuclideanRing.div(dictEuclideanRing))($29));+        };+    };+};+var divModifying = function (dictMonadState) {+    return function (dictEuclideanRing) {+        return function (p) {+            return function ($30) {+                return modifying(dictMonadState)(p)(Data_Function.flip(Data_EuclideanRing.div(dictEuclideanRing))($30));+            };+        };+    };+};+var disjOver = function (dictHeytingAlgebra) {+    return function (p) {+        return function ($31) {+            return over(p)(Data_Function.flip(Data_HeytingAlgebra.disj(dictHeytingAlgebra))($31));+        };+    };+};+var disjModifying = function (dictMonadState) {+    return function (dictHeytingAlgebra) {+        return function (p) {+            return function ($32) {+                return modifying(dictMonadState)(p)(Data_Function.flip(Data_HeytingAlgebra.disj(dictHeytingAlgebra))($32));+            };+        };+    };+};+var conjOver = function (dictHeytingAlgebra) {+    return function (p) {+        return function ($33) {+            return over(p)(Data_Function.flip(Data_HeytingAlgebra.conj(dictHeytingAlgebra))($33));+        };+    };+};+var conjModifying = function (dictMonadState) {+    return function (dictHeytingAlgebra) {+        return function (p) {+            return function ($34) {+                return modifying(dictMonadState)(p)(Data_Function.flip(Data_HeytingAlgebra.conj(dictHeytingAlgebra))($34));+            };+        };+    };+};+var assign = function (dictMonadState) {+    return function (p) {+        return function (b) {+            return Control_Monad_State_Class.modify(dictMonadState)(set(p)(b));+        };+    };+};+var assignJust = function (dictMonadState) {+    return function (p) {+        return function ($35) {+            return assign(dictMonadState)(p)(Data_Maybe.Just.create($35));+        };+    };+};+var appendOver = function (dictSemigroup) {+    return function (p) {+        return function ($36) {+            return over(p)(Data_Function.flip(Data_Semigroup.append(dictSemigroup))($36));+        };+    };+};+var appendModifying = function (dictMonadState) {+    return function (dictSemigroup) {+        return function (p) {+            return function ($37) {+                return modifying(dictMonadState)(p)(Data_Function.flip(Data_Semigroup.append(dictSemigroup))($37));+            };+        };+    };+};+var addOver = function (dictSemiring) {+    return function (p) {+        return function ($38) {+            return over(p)(Data_Semiring.add(dictSemiring)($38));+        };+    };+};+var addModifying = function (dictMonadState) {+    return function (dictSemiring) {+        return function (p) {+            return function ($39) {+                return modifying(dictMonadState)(p)(Data_Semiring.add(dictSemiring)($39));+            };+        };+    };+};+module.exports = {+    addModifying: addModifying, +    addOver: addOver, +    appendModifying: appendModifying, +    appendOver: appendOver, +    assign: assign, +    assignJust: assignJust, +    conjModifying: conjModifying, +    conjOver: conjOver, +    disjModifying: disjModifying, +    disjOver: disjOver, +    divModifying: divModifying, +    divOver: divOver, +    iover: iover, +    modifying: modifying, +    mulModifying: mulModifying, +    mulOver: mulOver, +    over: over, +    set: set, +    setJust: setJust, +    subModifying: subModifying, +    subOver: subOver+};++},{"../Control.Monad.State.Class":81,"../Control.Semigroupoid":93,"../Data.EuclideanRing":142,"../Data.Function":151,"../Data.HeytingAlgebra":162,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Types":194,"../Data.Maybe":204,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Tuple":255,"../Prelude":278}],193:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Category = require("../Control.Category");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Lens_Indexed = require("../Data.Lens.Indexed");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");+var Data_Lens_Types = require("../Data.Lens.Types");+var Data_Monoid_Disj = require("../Data.Monoid.Disj");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor_Star = require("../Data.Profunctor.Star");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var traversed = function (dictTraversable) {+    return function (dictWander) {+        return Data_Lens_Internal_Wander.wander(dictWander)(function (dictApplicative) {+            return Data_Traversable.traverse(dictTraversable)(dictApplicative);+        });+    };+};+var traverseOf = function (dictApplicative) {+    return Data_Newtype.under(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.Star);+};+var sequenceOf = function (dictApplicative) {+    return function (t) {+        return traverseOf(dictApplicative)(t)(Control_Category.id(Control_Category.categoryFn));+    };+};+var itraverseOf = function (dictApplicative) {+    return function (t) {+        return function ($24) {+            return Data_Newtype.under(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.newtypeStar)(Data_Profunctor_Star.Star)(function ($25) {+                return t(Data_Lens_Internal_Indexed.Indexed($25));+            })(Data_Tuple.uncurry($24));+        };+    };+};+var failover = function (dictAlternative) {+    return function (t) {+        return function (f) {+            return function (s) {+                var v = Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar)(t(Data_Profunctor_Star.Star(function ($26) {+                    return Data_Tuple.Tuple.create(true)(f($26));+                })))(s);+                if (v.value0) {+                    return Control_Applicative.pure(dictAlternative.Applicative0())(v.value1);+                };+                if (!v.value0) {+                    return Control_Plus.empty(dictAlternative.Plus1());+                };+                throw new Error("Failed pattern match at Data.Lens.Traversal line 55, column 18 - line 57, column 32: " + [ v.constructor.name ]);+            };+        };+    };+};+var elementsOf = function (dictWander) {+    return function (tr) {+        return function (pr) {+            return Data_Lens_Indexed.iwander(function (dictApplicative) {+                return function (f) {+                    return Data_Newtype.unwrap(Data_Profunctor_Star.newtypeStar)(tr(Data_Lens_Internal_Wander.wanderStar(dictApplicative))(Data_Lens_Internal_Indexed.Indexed(Data_Profunctor_Star.Star(function (v) {+                        var $21 = pr(v.value0);+                        if ($21) {+                            return f(v.value0)(v.value1);+                        };+                        return Control_Applicative.pure(dictApplicative)(v.value1);+                    }))));+                };+            })(dictWander);+        };+    };+};+var element = function (dictWander) {+    return function (n) {+        return function (tr) {+            return Data_Lens_Indexed.unIndex((dictWander.Choice1()).Profunctor0())(elementsOf(dictWander)(function (dictWander1) {+                return Data_Lens_Indexed.positions(function (dictWander2) {+                    return tr(dictWander2);+                })(dictWander1);+            })(function (v) {+                return v === n;+            }));+        };+    };+};+module.exports = {+    element: element, +    elementsOf: elementsOf, +    failover: failover, +    itraverseOf: itraverseOf, +    sequenceOf: sequenceOf, +    traverseOf: traverseOf, +    traversed: traversed+};++},{"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Category":47,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Function":151,"../Data.Lens.Indexed":174,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Internal.Wander":183,"../Data.Lens.Types":194,"../Data.Monoid.Disj":209,"../Data.Newtype":215,"../Data.Profunctor.Star":229,"../Data.Traversable":254,"../Data.Tuple":255,"../Prelude":278}],194:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Lens_Internal_Exchange = require("../Data.Lens.Internal.Exchange");+var Data_Lens_Internal_Forget = require("../Data.Lens.Internal.Forget");+var Data_Lens_Internal_Grating = require("../Data.Lens.Internal.Grating");+var Data_Lens_Internal_Indexed = require("../Data.Lens.Internal.Indexed");+var Data_Lens_Internal_Market = require("../Data.Lens.Internal.Market");+var Data_Lens_Internal_Re = require("../Data.Lens.Internal.Re");+var Data_Lens_Internal_Shop = require("../Data.Lens.Internal.Shop");+var Data_Lens_Internal_Tagged = require("../Data.Lens.Internal.Tagged");+var Data_Lens_Internal_Wander = require("../Data.Lens.Internal.Wander");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+module.exports = {};++},{"../Data.Lens.Internal.Exchange":175,"../Data.Lens.Internal.Forget":176,"../Data.Lens.Internal.Grating":177,"../Data.Lens.Internal.Indexed":178,"../Data.Lens.Internal.Market":179,"../Data.Lens.Internal.Re":180,"../Data.Lens.Internal.Shop":181,"../Data.Lens.Internal.Tagged":182,"../Data.Lens.Internal.Wander":183,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Closed":225,"../Data.Profunctor.Strong":230,"../Data.Tuple":255}],195:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Lens_Common = require("../Data.Lens.Common");+var Data_Lens_Fold = require("../Data.Lens.Fold");+var Data_Lens_Getter = require("../Data.Lens.Getter");+var Data_Lens_Grate = require("../Data.Lens.Grate");+var Data_Lens_Iso = require("../Data.Lens.Iso");+var Data_Lens_Lens = require("../Data.Lens.Lens");+var Data_Lens_Prism = require("../Data.Lens.Prism");+var Data_Lens_Setter = require("../Data.Lens.Setter");+var Data_Lens_Traversal = require("../Data.Lens.Traversal");+var Data_Lens_Types = require("../Data.Lens.Types");+module.exports = {};++},{"../Data.Lens.Common":170,"../Data.Lens.Fold":171,"../Data.Lens.Getter":172,"../Data.Lens.Grate":173,"../Data.Lens.Iso":185,"../Data.Lens.Lens":188,"../Data.Lens.Prism":191,"../Data.Lens.Setter":192,"../Data.Lens.Traversal":193,"../Data.Lens.Types":194}],196:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad = require("../Control.Monad");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Lazy = require("../Data.Lazy");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Prelude = require("../Prelude");+var List = function (x) {+    return x;+};+var Nil = (function () {+    function Nil() {++    };+    Nil.value = new Nil();+    return Nil;+})();+var Cons = (function () {+    function Cons(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Cons.create = function (value0) {+        return function (value1) {+            return new Cons(value0, value1);+        };+    };+    return Cons;+})();+var NonEmptyList = function (x) {+    return x;+};+var nil = List(Data_Lazy.defer(function (v) {+    return Nil.value;+}));+var newtypeNonEmptyList = new Data_Newtype.Newtype(function (n) {+    return n;+}, NonEmptyList);+var newtypeList = new Data_Newtype.Newtype(function (n) {+    return n;+}, List);+var step = function ($165) {+    return Data_Lazy.force(Data_Newtype.unwrap(newtypeList)($165));+};+var semigroupList = new Data_Semigroup.Semigroup(function (xs) {+    return function (ys) {+        var go = function (v) {+            if (v instanceof Nil) {+                return step(ys);+            };+            if (v instanceof Cons) {+                return new Cons(v.value0, Data_Semigroup.append(semigroupList)(v.value1)(ys));+            };+            throw new Error("Failed pattern match at Data.List.Lazy.Types line 96, column 5 - line 96, column 21: " + [ v.constructor.name ]);+        };+        return Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(newtypeList)(xs));+    };+});+var showList = function (dictShow) {+    return new Data_Show.Show(function (xs) {+        var go = function (v) {+            if (v instanceof Nil) {+                return "Nil";+            };+            if (v instanceof Cons) {+                return "(Cons " + (Data_Show.show(dictShow)(v.value0) + (" " + (go(step(v.value1)) + ")")));+            };+            throw new Error("Failed pattern match at Data.List.Lazy.Types line 60, column 13 - line 65, column 1: " + [ v.constructor.name ]);+        };+        return "fromStrict (" + (go(step(xs)) + ")");+    });+};+var showNonEmptyList = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(NonEmptyList " + (Data_Show.show(Data_Lazy.showLazy(Data_NonEmpty.showNonEmpty(dictShow)(showList(dictShow))))(v) + ")");+    });+};+var monoidList = new Data_Monoid.Monoid(function () {+    return semigroupList;+}, nil);+var lazyList = new Control_Lazy.Lazy(function (f) {+    return List(Data_Lazy.defer(function ($166) {+        return step(f($166));+    }));+});+var functorList = new Data_Functor.Functor(function (f) {+    return function (xs) {+        var go = function (v) {+            if (v instanceof Nil) {+                return Nil.value;+            };+            if (v instanceof Cons) {+                return new Cons(f(v.value0), Data_Functor.map(functorList)(f)(v.value1));+            };+            throw new Error("Failed pattern match at Data.List.Lazy.Types line 105, column 5 - line 105, column 17: " + [ v.constructor.name ]);+        };+        return Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(newtypeList)(xs));+    };+});+var functorNonEmptyList = new Data_Functor.Functor(function (f) {+    return function (v) {+        return Data_Functor.map(Data_Lazy.functorLazy)(Data_Functor.map(Data_NonEmpty.functorNonEmpty(functorList))(f))(v);+    };+});+var eq1List = new Data_Eq.Eq1(function (dictEq) {+    return function (xs) {+        return function (ys) {+            var go = function (__copy_v) {+                return function (__copy_v1) {+                    var __tco_v = __copy_v;+                    var __tco_done = false;+                    var __tco_result;+                    function __tco_loop(v, v1) {+                        if (v instanceof Nil && v1 instanceof Nil) {+                            __tco_done = true;+                            return true;+                        };+                        if (v instanceof Cons && (v1 instanceof Cons && Data_Eq.eq(dictEq)(v.value0)(v1.value0))) {+                            __tco_v = step(v.value1);+                            __copy_v1 = step(v1.value1);+                            return;+                        };+                        __tco_done = true;+                        return false;+                    };+                    while (!__tco_done) {+                        __tco_result = __tco_loop(__tco_v, __copy_v1);+                    };+                    return __tco_result;+                };+            };+            return go(step(xs))(step(ys));+        };+    };+});+var eqList = function (dictEq) {+    return new Data_Eq.Eq(Data_Eq.eq1(eq1List)(dictEq));+};+var eqNonEmptyList = function (dictEq) {+    return Data_Lazy.eqLazy(Data_NonEmpty.eqNonEmpty(eq1List)(dictEq));+};+var ord1List = new Data_Ord.Ord1(function () {+    return eq1List;+}, function (dictOrd) {+    return function (xs) {+        return function (ys) {+            var go = function (__copy_v) {+                return function (__copy_v1) {+                    var __tco_v = __copy_v;+                    var __tco_done = false;+                    var __tco_result;+                    function __tco_loop(v, v1) {+                        if (v instanceof Nil && v1 instanceof Nil) {+                            __tco_done = true;+                            return Data_Ordering.EQ.value;+                        };+                        if (v instanceof Nil) {+                            __tco_done = true;+                            return Data_Ordering.LT.value;+                        };+                        if (v1 instanceof Nil) {+                            __tco_done = true;+                            return Data_Ordering.GT.value;+                        };+                        if (v instanceof Cons && v1 instanceof Cons) {+                            var v2 = Data_Ord.compare(dictOrd)(v.value0)(v1.value0);+                            if (v2 instanceof Data_Ordering.EQ) {+                                __tco_v = step(v.value1);+                                __copy_v1 = step(v1.value1);+                                return;+                            };+                            __tco_done = true;+                            return v2;+                        };+                        throw new Error("Failed pattern match at Data.List.Lazy.Types line 80, column 20 - line 88, column 23: " + [ v.constructor.name, v1.constructor.name ]);+                    };+                    while (!__tco_done) {+                        __tco_result = __tco_loop(__tco_v, __copy_v1);+                    };+                    return __tco_result;+                };+            };+            return go(step(xs))(step(ys));+        };+    };+});+var ordList = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqList(dictOrd.Eq0());+    }, Data_Ord.compare1(ord1List)(dictOrd));+};+var ordNonEmptyList = function (dictOrd) {+    return Data_Lazy.ordLazy(Data_NonEmpty.ordNonEmpty(ord1List)(dictOrd));+};+var cons = function (x) {+    return function (xs) {+        return List(Data_Lazy.defer(function (v) {+            return new Cons(x, xs);+        }));+    };+};+var foldableList = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return Data_Foldable.foldl(foldableList)(function (b) {+            return function (a) {+                return Data_Semigroup.append(dictMonoid.Semigroup0())(b)(f(a));+            };+        })(Data_Monoid.mempty(dictMonoid));+    };+}, function (op) {+    var go = function (__copy_b) {+        return function (__copy_xs) {+            var __tco_b = __copy_b;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(b, xs) {+                var v = step(xs);+                if (v instanceof Nil) {+                    __tco_done = true;+                    return b;+                };+                if (v instanceof Cons) {+                    __tco_b = op(b)(v.value0);+                    __copy_xs = v.value1;+                    return;+                };+                throw new Error("Failed pattern match at Data.List.Lazy.Types line 117, column 7 - line 119, column 40: " + [ v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_b, __copy_xs);+            };+            return __tco_result;+        };+    };+    return go;+}, function (op) {+    return function (z) {+        return function (xs) {+            var rev = Data_Foldable.foldl(foldableList)(Data_Function.flip(cons))(nil);+            return Data_Foldable.foldl(foldableList)(Data_Function.flip(op))(z)(rev(xs));+        };+    };+});+var extendList = new Control_Extend.Extend(function () {+    return functorList;+}, function (f) {+    return function (l) {+        var go = function (a) {+            return function (v) {+                var acc$prime = cons(a)(v.acc);+                return {+                    val: cons(f(acc$prime))(v.val), +                    acc: acc$prime+                };+            };+        };+        var v = step(l);+        if (v instanceof Nil) {+            return nil;+        };+        if (v instanceof Cons) {+            return cons(f(l))((Data_Foldable.foldr(foldableList)(go)({+                val: nil, +                acc: nil+            })(v.value1)).val);+        };+        throw new Error("Failed pattern match at Data.List.Lazy.Types line 163, column 5 - line 166, column 55: " + [ v.constructor.name ]);+    };+});+var extendNonEmptyList = new Control_Extend.Extend(function () {+    return functorNonEmptyList;+}, function (f) {+    return function (v) {+        var go = function (a) {+            return function (v1) {+                return {+                    val: cons(f(Data_Lazy.defer(function (v2) {+                        return new Data_NonEmpty.NonEmpty(a, v1.acc);+                    })))(v1.val), +                    acc: cons(a)(v1.acc)+                };+            };+        };+        var v1 = Data_Lazy.force(v);+        return NonEmptyList(Data_Lazy.defer(function (v2) {+            return new Data_NonEmpty.NonEmpty(f(v), (Data_Foldable.foldr(foldableList)(go)({+                val: nil, +                acc: nil+            })(v1.value1)).val);+        }));+    };+});+var foldableNonEmptyList = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return Data_Foldable.foldMap(Data_NonEmpty.foldableNonEmpty(foldableList))(dictMonoid)(f)(Data_Lazy.force(v));+        };+    };+}, function (f) {+    return function (b) {+        return function (v) {+            return Data_Foldable.foldl(Data_NonEmpty.foldableNonEmpty(foldableList))(f)(b)(Data_Lazy.force(v));+        };+    };+}, function (f) {+    return function (b) {+        return function (v) {+            return Data_Foldable.foldr(Data_NonEmpty.foldableNonEmpty(foldableList))(f)(b)(Data_Lazy.force(v));+        };+    };+});+var toList = function (v) {+    return Control_Lazy.defer(lazyList)(function (v1) {+        var v2 = Data_Lazy.force(v);+        return cons(v2.value0)(v2.value1);+    });+};+var semigroupNonEmptyList = new Data_Semigroup.Semigroup(function (v) {+    return function (as$prime) {+        var v1 = Data_Lazy.force(v);+        return Data_Lazy.defer(function (v2) {+            return new Data_NonEmpty.NonEmpty(v1.value0, Data_Semigroup.append(semigroupList)(v1.value1)(toList(as$prime)));+        });+    };+});+var traversableList = new Data_Traversable.Traversable(function () {+    return foldableList;+}, function () {+    return functorList;+}, function (dictApplicative) {+    return Data_Traversable.traverse(traversableList)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));+}, function (dictApplicative) {+    return function (f) {+        return Data_Foldable.foldr(foldableList)(function (a) {+            return function (b) {+                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(cons)(f(a)))(b);+            };+        })(Control_Applicative.pure(dictApplicative)(nil));+    };+});+var traversableNonEmptyList = new Data_Traversable.Traversable(function () {+    return foldableNonEmptyList;+}, function () {+    return functorNonEmptyList;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(function (xxs) {+            return NonEmptyList(Data_Lazy.defer(function (v1) {+                return xxs;+            }));+        })(Data_Traversable.sequence(Data_NonEmpty.traversableNonEmpty(traversableList))(dictApplicative)(Data_Lazy.force(v)));+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(function (xxs) {+                return NonEmptyList(Data_Lazy.defer(function (v1) {+                    return xxs;+                }));+            })(Data_Traversable.traverse(Data_NonEmpty.traversableNonEmpty(traversableList))(dictApplicative)(f)(Data_Lazy.force(v)));+        };+    };+});+var unfoldableList = new Data_Unfoldable.Unfoldable((function () {+    var go = function (f) {+        return function (b) {+            return Control_Lazy.defer(lazyList)(function (v) {+                var v1 = f(b);+                if (v1 instanceof Data_Maybe.Nothing) {+                    return nil;+                };+                if (v1 instanceof Data_Maybe.Just) {+                    return cons(v1.value0.value0)(go(f)(v1.value0.value1));+                };+                throw new Error("Failed pattern match at Data.List.Lazy.Types line 125, column 28 - line 127, column 39: " + [ v1.constructor.name ]);+            });+        };+    };+    return go;+})());+var comonadNonEmptyList = new Control_Comonad.Comonad(function () {+    return extendNonEmptyList;+}, function (v) {+    return Data_NonEmpty.head(Data_Lazy.force(v));+});+var monadList = new Control_Monad.Monad(function () {+    return applicativeList;+}, function () {+    return bindList;+});+var bindList = new Control_Bind.Bind(function () {+    return applyList;+}, function (xs) {+    return function (f) {+        var go = function (v) {+            if (v instanceof Nil) {+                return Nil.value;+            };+            if (v instanceof Cons) {+                return step(Data_Semigroup.append(semigroupList)(f(v.value0))(Control_Bind.bind(bindList)(v.value1)(f)));+            };+            throw new Error("Failed pattern match at Data.List.Lazy.Types line 144, column 5 - line 144, column 17: " + [ v.constructor.name ]);+        };+        return Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(newtypeList)(xs));+    };+});+var applyList = new Control_Apply.Apply(function () {+    return functorList;+}, Control_Monad.ap(monadList));+var applicativeList = new Control_Applicative.Applicative(function () {+    return applyList;+}, function (a) {+    return cons(a)(nil);+});+var applyNonEmptyList = new Control_Apply.Apply(function () {+    return functorNonEmptyList;+}, function (v) {+    return function (v1) {+        var v2 = Data_Lazy.force(v1);+        var v3 = Data_Lazy.force(v);+        return Data_Lazy.defer(function (v4) {+            return new Data_NonEmpty.NonEmpty(v3.value0(v2.value0), Data_Semigroup.append(semigroupList)(Control_Apply.apply(applyList)(v3.value1)(cons(v2.value0)(nil)))(Control_Apply.apply(applyList)(cons(v3.value0)(v3.value1))(v2.value1)));+        });+    };+});+var bindNonEmptyList = new Control_Bind.Bind(function () {+    return applyNonEmptyList;+}, function (v) {+    return function (f) {+        var v1 = Data_Lazy.force(v);+        var v2 = Data_Lazy.force(Data_Newtype.unwrap(newtypeNonEmptyList)(f(v1.value0)));+        return Data_Lazy.defer(function (v3) {+            return new Data_NonEmpty.NonEmpty(v2.value0, Data_Semigroup.append(semigroupList)(v2.value1)(Control_Bind.bind(bindList)(v1.value1)(function ($167) {+                return toList(f($167));+            })));+        });+    };+});+var altNonEmptyList = new Control_Alt.Alt(function () {+    return functorNonEmptyList;+}, Data_Semigroup.append(semigroupNonEmptyList));+var altList = new Control_Alt.Alt(function () {+    return functorList;+}, Data_Semigroup.append(semigroupList));+var plusList = new Control_Plus.Plus(function () {+    return altList;+}, nil);+var alternativeList = new Control_Alternative.Alternative(function () {+    return applicativeList;+}, function () {+    return plusList;+});+var monadZeroList = new Control_MonadZero.MonadZero(function () {+    return alternativeList;+}, function () {+    return monadList;+});+var monadPlusList = new Control_MonadPlus.MonadPlus(function () {+    return monadZeroList;+});+var applicativeNonEmptyList = new Control_Applicative.Applicative(function () {+    return applyNonEmptyList;+}, function (a) {+    return Data_Lazy.defer(function (v) {+        return Data_NonEmpty.singleton(plusList)(a);+    });+});+var monadNonEmptyList = new Control_Monad.Monad(function () {+    return applicativeNonEmptyList;+}, function () {+    return bindNonEmptyList;+});+module.exports = {+    List: List, +    NonEmptyList: NonEmptyList, +    Nil: Nil, +    Cons: Cons, +    cons: cons, +    nil: nil, +    step: step, +    toList: toList, +    newtypeList: newtypeList, +    showList: showList, +    eqList: eqList, +    eq1List: eq1List, +    ordList: ordList, +    ord1List: ord1List, +    lazyList: lazyList, +    semigroupList: semigroupList, +    monoidList: monoidList, +    functorList: functorList, +    foldableList: foldableList, +    unfoldableList: unfoldableList, +    traversableList: traversableList, +    applyList: applyList, +    applicativeList: applicativeList, +    bindList: bindList, +    monadList: monadList, +    altList: altList, +    plusList: plusList, +    alternativeList: alternativeList, +    monadZeroList: monadZeroList, +    monadPlusList: monadPlusList, +    extendList: extendList, +    newtypeNonEmptyList: newtypeNonEmptyList, +    eqNonEmptyList: eqNonEmptyList, +    ordNonEmptyList: ordNonEmptyList, +    showNonEmptyList: showNonEmptyList, +    functorNonEmptyList: functorNonEmptyList, +    applyNonEmptyList: applyNonEmptyList, +    applicativeNonEmptyList: applicativeNonEmptyList, +    bindNonEmptyList: bindNonEmptyList, +    monadNonEmptyList: monadNonEmptyList, +    altNonEmptyList: altNonEmptyList, +    extendNonEmptyList: extendNonEmptyList, +    comonadNonEmptyList: comonadNonEmptyList, +    semigroupNonEmptyList: semigroupNonEmptyList, +    foldableNonEmptyList: foldableNonEmptyList, +    traversableNonEmptyList: traversableNonEmptyList+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Lazy":51,"../Control.Monad":87,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.Lazy":169,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Prelude":278}],197:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Boolean = require("../Data.Boolean");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Lazy = require("../Data.Lazy");+var Data_List_Lazy_Types = require("../Data.List.Lazy.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Prelude = require("../Prelude");+var Pattern = function (x) {+    return x;+};+var zipWith = function (f) {+    return function (xs) {+        return function (ys) {+            var go = function (v) {+                return function (v1) {+                    if (v instanceof Data_List_Lazy_Types.Nil) {+                        return Data_List_Lazy_Types.Nil.value;+                    };+                    if (v1 instanceof Data_List_Lazy_Types.Nil) {+                        return Data_List_Lazy_Types.Nil.value;+                    };+                    if (v instanceof Data_List_Lazy_Types.Cons && v1 instanceof Data_List_Lazy_Types.Cons) {+                        return new Data_List_Lazy_Types.Cons(f(v.value0)(v1.value0), zipWith(f)(v.value1)(v1.value1));+                    };+                    throw new Error("Failed pattern match at Data.List.Lazy line 692, column 3 - line 692, column 17: " + [ v.constructor.name, v1.constructor.name ]);+                };+            };+            return Control_Apply.apply(Data_Lazy.applyLazy)(Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs)))(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(ys));+        };+    };+};+var zipWithA = function (dictApplicative) {+    return function (f) {+        return function (xs) {+            return function (ys) {+                return Data_Traversable.sequence(Data_List_Lazy_Types.traversableList)(dictApplicative)(zipWith(f)(xs)(ys));+            };+        };+    };+};+var zip = zipWith(Data_Tuple.Tuple.create);+var updateAt = function (n) {+    return function (x) {+        return function (xs) {+            var go = function (v) {+                return function (v1) {+                    if (v1 instanceof Data_List_Lazy_Types.Nil) {+                        return Data_List_Lazy_Types.Nil.value;+                    };+                    if (v === 0 && v1 instanceof Data_List_Lazy_Types.Cons) {+                        return new Data_List_Lazy_Types.Cons(x, v1.value1);+                    };+                    if (v1 instanceof Data_List_Lazy_Types.Cons) {+                        return new Data_List_Lazy_Types.Cons(v1.value0, updateAt(v - 1 | 0)(x)(v1.value1));+                    };+                    throw new Error("Failed pattern match at Data.List.Lazy line 366, column 3 - line 366, column 17: " + [ v.constructor.name, v1.constructor.name ]);+                };+            };+            return Data_Functor.map(Data_Lazy.functorLazy)(go(n))(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs));+        };+    };+};+var unzip = Data_Foldable.foldr(Data_List_Lazy_Types.foldableList)(function (v) {+    return function (v1) {+        return new Data_Tuple.Tuple(Data_List_Lazy_Types.cons(v.value0)(v1.value0), Data_List_Lazy_Types.cons(v.value1)(v1.value1));+    };+})(new Data_Tuple.Tuple(Data_List_Lazy_Types.nil, Data_List_Lazy_Types.nil));+var uncons = function (xs) {+    var v = Data_List_Lazy_Types.step(xs);+    if (v instanceof Data_List_Lazy_Types.Nil) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Data_List_Lazy_Types.Cons) {+        return new Data_Maybe.Just({+            head: v.value0, +            tail: v.value1+        });+    };+    throw new Error("Failed pattern match at Data.List.Lazy line 284, column 13 - line 286, column 44: " + [ v.constructor.name ]);+};+var toUnfoldable = function (dictUnfoldable) {+    return Data_Unfoldable.unfoldr(dictUnfoldable)(function (xs) {+        return Data_Functor.map(Data_Maybe.functorMaybe)(function (rec) {+            return new Data_Tuple.Tuple(rec.head, rec.tail);+        })(uncons(xs));+    });+};+var takeWhile = function (p) {+    var go = function (v) {+        if (v instanceof Data_List_Lazy_Types.Cons && p(v.value0)) {+            return new Data_List_Lazy_Types.Cons(v.value0, takeWhile(p)(v.value1));+        };+        return Data_List_Lazy_Types.Nil.value;+    };+    return function ($244) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($244)));+    };+};+var take = function (n) {+    var go = function (v) {+        return function (v1) {+            if (v <= 0) {+                return Data_List_Lazy_Types.Nil.value;+            };+            if (v1 instanceof Data_List_Lazy_Types.Nil) {+                return Data_List_Lazy_Types.Nil.value;+            };+            if (v1 instanceof Data_List_Lazy_Types.Cons) {+                return new Data_List_Lazy_Types.Cons(v1.value0, take(v - 1 | 0)(v1.value1));+            };+            throw new Error("Failed pattern match at Data.List.Lazy line 515, column 3 - line 515, column 24: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+    return function ($245) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go(n))(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($245)));+    };+};+var tail = function (xs) {+    return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {+        return v.tail;+    })(uncons(xs));+};+var stripPrefix = function (dictEq) {+    return function (v) {+        return function (s) {+            var go = function (prefix) {+                return function (input) {+                    var v1 = Data_List_Lazy_Types.step(prefix);+                    if (v1 instanceof Data_List_Lazy_Types.Nil) {+                        return Data_Maybe.Just.create(new Control_Monad_Rec_Class.Done(input));+                    };+                    if (v1 instanceof Data_List_Lazy_Types.Cons) {+                        var v2 = Data_List_Lazy_Types.step(input);+                        if (v2 instanceof Data_List_Lazy_Types.Cons && Data_Eq.eq(dictEq)(v1.value0)(v2.value0)) {+                            return Data_Maybe.Just.create(new Control_Monad_Rec_Class.Loop({+                                a: v1.value1, +                                b: v2.value1+                            }));+                        };+                        return Data_Maybe.Nothing.value;+                    };+                    throw new Error("Failed pattern match at Data.List.Lazy line 498, column 21 - line 502, column 19: " + [ v1.constructor.name ]);+                };+            };+            return Control_Monad_Rec_Class.tailRecM2(Control_Monad_Rec_Class.monadRecMaybe)(go)(v)(s);+        };+    };+};+var span = function (p) {+    return function (xs) {+        var v = uncons(xs);+        if (v instanceof Data_Maybe.Just && p(v.value0.head)) {+            var v1 = span(p)(v.value0.tail);+            return {+                init: Data_List_Lazy_Types.cons(v.value0.head)(v1.init), +                rest: v1.rest+            };+        };+        return {+            init: Data_List_Lazy_Types.nil, +            rest: xs+        };+    };+};+var snoc = function (xs) {+    return function (x) {+        return Data_Foldable.foldr(Data_List_Lazy_Types.foldableList)(Data_List_Lazy_Types.cons)(Data_List_Lazy_Types.cons(x)(Data_List_Lazy_Types.nil))(xs);+    };+};+var singleton = function (a) {+    return Data_List_Lazy_Types.cons(a)(Data_List_Lazy_Types.nil);+};+var showPattern = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Pattern " + (Data_Show.show(Data_List_Lazy_Types.showList(dictShow))(v) + ")");+    });+};+var reverse = function (xs) {+    return Control_Lazy.defer(Data_List_Lazy_Types.lazyList)(function (v) {+        return Data_Foldable.foldl(Data_List_Lazy_Types.foldableList)(Data_Function.flip(Data_List_Lazy_Types.cons))(Data_List_Lazy_Types.nil)(xs);+    });+};+var replicateM = function (dictMonad) {+    return function (n) {+        return function (m) {+            if (n < 1) {+                return Control_Applicative.pure(dictMonad.Applicative0())(Data_List_Lazy_Types.nil);+            };+            if (Data_Boolean.otherwise) {+                return Control_Bind.bind(dictMonad.Bind1())(m)(function (v) {+                    return Control_Bind.bind(dictMonad.Bind1())(replicateM(dictMonad)(n - 1 | 0)(m))(function (v1) {+                        return Control_Applicative.pure(dictMonad.Applicative0())(Data_List_Lazy_Types.cons(v)(v1));+                    });+                });+            };+            throw new Error("Failed pattern match at Data.List.Lazy line 161, column 1 - line 166, column 23: " + [ n.constructor.name, m.constructor.name ]);+        };+    };+};+var repeat = function (x) {+    return Control_Lazy.fix(Data_List_Lazy_Types.lazyList)(function (xs) {+        return Data_List_Lazy_Types.cons(x)(xs);+    });+};+var replicate = function (i) {+    return function (xs) {+        return take(i)(repeat(xs));+    };+};+var range = function (start) {+    return function (end) {+        if (start > end) {+            var g = function (x) {+                if (x >= end) {+                    return new Data_Maybe.Just(new Data_Tuple.Tuple(x, x - 1 | 0));+                };+                if (Data_Boolean.otherwise) {+                    return Data_Maybe.Nothing.value;+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 147, column 13 - line 148, column 38: " + [ x.constructor.name ]);+            };+            return Data_Unfoldable.unfoldr(Data_List_Lazy_Types.unfoldableList)(g)(start);+        };+        if (Data_Boolean.otherwise) {+            var f = function (x) {+                if (x <= end) {+                    return new Data_Maybe.Just(new Data_Tuple.Tuple(x, x + 1 | 0));+                };+                if (Data_Boolean.otherwise) {+                    return Data_Maybe.Nothing.value;+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 152, column 5 - line 153, column 30: " + [ x.constructor.name ]);+            };+            return Data_Unfoldable.unfoldr(Data_List_Lazy_Types.unfoldableList)(f)(start);+        };+        throw new Error("Failed pattern match at Data.List.Lazy line 145, column 1 - line 153, column 30: " + [ start.constructor.name, end.constructor.name ]);+    };+};+var partition = function (f) {+    var go = function (x) {+        return function (v) {+            var $149 = f(x);+            if ($149) {+                return {+                    yes: Data_List_Lazy_Types.cons(x)(v.yes), +                    no: v.no+                };+            };+            return {+                yes: v.yes, +                no: Data_List_Lazy_Types.cons(x)(v.no)+            };+        };+    };+    return Data_Foldable.foldr(Data_List_Lazy_Types.foldableList)(go)({+        yes: Data_List_Lazy_Types.nil, +        no: Data_List_Lazy_Types.nil+    });+};+var $$null = function ($246) {+    return Data_Maybe.isNothing(uncons($246));+};+var newtypePattern = new Data_Newtype.Newtype(function (n) {+    return n;+}, Pattern);+var mapMaybe = function (f) {+    var go = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Data_List_Lazy_Types.Nil) {+                __tco_done = true;+                return Data_List_Lazy_Types.Nil.value;+            };+            if (v instanceof Data_List_Lazy_Types.Cons) {+                var v1 = f(v.value0);+                if (v1 instanceof Data_Maybe.Nothing) {+                    __copy_v = Data_List_Lazy_Types.step(v.value1);+                    return;+                };+                if (v1 instanceof Data_Maybe.Just) {+                    __tco_done = true;+                    return new Data_List_Lazy_Types.Cons(v1.value0, mapMaybe(f)(v.value1));+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 459, column 5 - line 461, column 39: " + [ v1.constructor.name ]);+            };+            throw new Error("Failed pattern match at Data.List.Lazy line 455, column 14 - line 461, column 39: " + [ v.constructor.name ]);+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return function ($247) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($247)));+    };+};+var some = function (dictAlternative) {+    return function (dictLazy) {+        return function (v) {+            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Data_List_Lazy_Types.cons)(v))(Control_Lazy.defer(dictLazy)(function (v1) {+                return many(dictAlternative)(dictLazy)(v);+            }));+        };+    };+};+var many = function (dictAlternative) {+    return function (dictLazy) {+        return function (v) {+            return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(some(dictAlternative)(dictLazy)(v))(Control_Applicative.pure(dictAlternative.Applicative0())(Data_List_Lazy_Types.nil));+        };+    };+};+var length = Data_Foldable.foldl(Data_List_Lazy_Types.foldableList)(function (l) {+    return function (v) {+        return l + 1 | 0;+    };+})(0);+var last = (function () {+    var go = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Data_List_Lazy_Types.Cons) {+                if ($$null(v.value1)) {+                    __tco_done = true;+                    return new Data_Maybe.Just(v.value0);+                };+                if (Data_Boolean.otherwise) {+                    __copy_v = Data_List_Lazy_Types.step(v.value1);+                    return;+                };+            };+            __tco_done = true;+            return Data_Maybe.Nothing.value;+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return function ($248) {+        return go(Data_List_Lazy_Types.step($248));+    };+})();+var iterate = function (f) {+    return function (x) {+        return Control_Lazy.fix(Data_List_Lazy_Types.lazyList)(function (xs) {+            return Data_List_Lazy_Types.cons(x)(Data_Functor.map(Data_List_Lazy_Types.functorList)(f)(xs));+        });+    };+};+var insertAt = function (v) {+    return function (x) {+        return function (xs) {+            if (v === 0) {+                return Data_List_Lazy_Types.cons(x)(xs);+            };+            var go = function (v1) {+                if (v1 instanceof Data_List_Lazy_Types.Nil) {+                    return new Data_List_Lazy_Types.Cons(x, Data_List_Lazy_Types.nil);+                };+                if (v1 instanceof Data_List_Lazy_Types.Cons) {+                    return new Data_List_Lazy_Types.Cons(v1.value0, insertAt(v - 1 | 0)(x)(v1.value1));+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 339, column 3 - line 339, column 22: " + [ v1.constructor.name ]);+            };+            return Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs));+        };+    };+};+var init = (function () {+    var go = function (v) {+        if (v instanceof Data_List_Lazy_Types.Cons) {+            if ($$null(v.value1)) {+                return new Data_Maybe.Just(Data_List_Lazy_Types.nil);+            };+            if (Data_Boolean.otherwise) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(Data_List_Lazy_Types.cons(v.value0))(go(Data_List_Lazy_Types.step(v.value1)));+            };+        };+        return Data_Maybe.Nothing.value;+    };+    return function ($249) {+        return go(Data_List_Lazy_Types.step($249));+    };+})();+var index = function (xs) {+    var go = function (__copy_v) {+        return function (__copy_v1) {+            var __tco_v = __copy_v;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v, v1) {+                if (v instanceof Data_List_Lazy_Types.Nil) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                if (v instanceof Data_List_Lazy_Types.Cons && v1 === 0) {+                    __tco_done = true;+                    return new Data_Maybe.Just(v.value0);+                };+                if (v instanceof Data_List_Lazy_Types.Cons) {+                    __tco_v = Data_List_Lazy_Types.step(v.value1);+                    __copy_v1 = v1 - 1 | 0;+                    return;+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 296, column 12 - line 300, column 42: " + [ v.constructor.name, v1.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_v, __copy_v1);+            };+            return __tco_result;+        };+    };+    return go(Data_List_Lazy_Types.step(xs));+};+var head = function (xs) {+    return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {+        return v.head;+    })(uncons(xs));+};+var transpose = function (xs) {+    var v = uncons(xs);+    if (v instanceof Data_Maybe.Nothing) {+        return xs;+    };+    if (v instanceof Data_Maybe.Just) {+        var v1 = uncons(v.value0.head);+        if (v1 instanceof Data_Maybe.Nothing) {+            return transpose(v.value0.tail);+        };+        if (v1 instanceof Data_Maybe.Just) {+            return Data_List_Lazy_Types.cons(Data_List_Lazy_Types.cons(v1.value0.head)(mapMaybe(head)(v.value0.tail)))(transpose(Data_List_Lazy_Types.cons(v1.value0.tail)(mapMaybe(tail)(v.value0.tail))));+        };+        throw new Error("Failed pattern match at Data.List.Lazy line 732, column 7 - line 736, column 72: " + [ v1.constructor.name ]);+    };+    throw new Error("Failed pattern match at Data.List.Lazy line 728, column 3 - line 736, column 72: " + [ v.constructor.name ]);+};+var groupBy = function (eq) {+    var go = function (v) {+        if (v instanceof Data_List_Lazy_Types.Nil) {+            return Data_List_Lazy_Types.Nil.value;+        };+        if (v instanceof Data_List_Lazy_Types.Cons) {+            var v1 = span(eq(v.value0))(v.value1);+            return new Data_List_Lazy_Types.Cons(Data_Lazy.defer(function (v2) {+                return new Data_NonEmpty.NonEmpty(v.value0, v1.init);+            }), groupBy(eq)(v1.rest));+        };+        throw new Error("Failed pattern match at Data.List.Lazy line 586, column 3 - line 586, column 15: " + [ v.constructor.name ]);+    };+    return function ($250) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($250)));+    };+};+var group = function (dictEq) {+    return groupBy(Data_Eq.eq(dictEq));+};+var fromStep = function ($251) {+    return Data_List_Lazy_Types.List(Control_Applicative.pure(Data_Lazy.applicativeLazy)($251));+};+var insertBy = function (cmp) {+    return function (x) {+        return function (xs) {+            var go = function (v) {+                if (v instanceof Data_List_Lazy_Types.Nil) {+                    return new Data_List_Lazy_Types.Cons(x, Data_List_Lazy_Types.nil);+                };+                if (v instanceof Data_List_Lazy_Types.Cons) {+                    var v1 = cmp(x)(v.value0);+                    if (v1 instanceof Data_Ordering.GT) {+                        return new Data_List_Lazy_Types.Cons(v.value0, insertBy(cmp)(x)(v.value1));+                    };+                    return new Data_List_Lazy_Types.Cons(x, fromStep(v));+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 234, column 3 - line 234, column 22: " + [ v.constructor.name ]);+            };+            return Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs));+        };+    };+};+var insert = function (dictOrd) {+    return insertBy(Data_Ord.compare(dictOrd));+};+var fromFoldable = function (dictFoldable) {+    return Data_Foldable.foldr(dictFoldable)(Data_List_Lazy_Types.cons)(Data_List_Lazy_Types.nil);+};+var foldrLazy = function (dictLazy) {+    return function (op) {+        return function (z) {+            var go = function (xs) {+                var v = Data_List_Lazy_Types.step(xs);+                if (v instanceof Data_List_Lazy_Types.Cons) {+                    return Control_Lazy.defer(dictLazy)(function (v1) {+                        return op(v.value0)(go(v.value1));+                    });+                };+                if (v instanceof Data_List_Lazy_Types.Nil) {+                    return z;+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 754, column 13 - line 756, column 14: " + [ v.constructor.name ]);+            };+            return go;+        };+    };+};+var foldM = function (dictMonad) {+    return function (f) {+        return function (a) {+            return function (xs) {+                var v = uncons(xs);+                if (v instanceof Data_Maybe.Nothing) {+                    return Control_Applicative.pure(dictMonad.Applicative0())(a);+                };+                if (v instanceof Data_Maybe.Just) {+                    return Control_Bind.bind(dictMonad.Bind1())(f(a)(v.value0.head))(function (a$prime) {+                        return foldM(dictMonad)(f)(a$prime)(v.value0.tail);+                    });+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 745, column 5 - line 748, column 54: " + [ v.constructor.name ]);+            };+        };+    };+};+var findIndex = function (fn) {+    var go = function (n) {+        return function (list) {+            return Control_Bind.bind(Data_Maybe.bindMaybe)(uncons(list))(function (v) {+                var $202 = fn(v.head);+                if ($202) {+                    return Control_Applicative.pure(Data_Maybe.applicativeMaybe)(n);+                };+                return go(n + 1 | 0)(v.tail);+            });+        };+    };+    return go(0);+};+var findLastIndex = function (fn) {+    return function (xs) {+        return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {+            return (length(xs) - 1 | 0) - v | 0;+        })(findIndex(fn)(reverse(xs)));+    };+};+var filterM = function (dictMonad) {+    return function (p) {+        return function (list) {+            var v = uncons(list);+            if (v instanceof Data_Maybe.Nothing) {+                return Control_Applicative.pure(dictMonad.Applicative0())(Data_List_Lazy_Types.nil);+            };+            if (v instanceof Data_Maybe.Just) {+                return Control_Bind.bind(dictMonad.Bind1())(p(v.value0.head))(function (v1) {+                    return Control_Bind.bind(dictMonad.Bind1())(filterM(dictMonad)(p)(v.value0.tail))(function (v2) {+                        return Control_Applicative.pure(dictMonad.Applicative0())((function () {+                            if (v1) {+                                return Data_List_Lazy_Types.cons(v.value0.head)(v2);+                            };+                            return v2;+                        })());+                    });+                });+            };+            throw new Error("Failed pattern match at Data.List.Lazy line 442, column 5 - line 447, column 48: " + [ v.constructor.name ]);+        };+    };+};+var filter = function (p) {+    var go = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Data_List_Lazy_Types.Nil) {+                __tco_done = true;+                return Data_List_Lazy_Types.Nil.value;+            };+            if (v instanceof Data_List_Lazy_Types.Cons) {+                if (p(v.value0)) {+                    __tco_done = true;+                    return new Data_List_Lazy_Types.Cons(v.value0, filter(p)(v.value1));+                };+                if (Data_Boolean.otherwise) {+                    __copy_v = Data_List_Lazy_Types.step(v.value1);+                    return;+                };+            };+            throw new Error("Failed pattern match at Data.List.Lazy line 425, column 12 - line 430, column 31: " + [ v.constructor.name ]);+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return function ($252) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($252)));+    };+};+var intersectBy = function (eq) {+    return function (xs) {+        return function (ys) {+            return filter(function (x) {+                return Data_Foldable.any(Data_List_Lazy_Types.foldableList)(Data_HeytingAlgebra.heytingAlgebraBoolean)(eq(x))(ys);+            })(xs);+        };+    };+};+var intersect = function (dictEq) {+    return intersectBy(Data_Eq.eq(dictEq));+};+var nubBy = function (eq) {+    var go = function (v) {+        if (v instanceof Data_List_Lazy_Types.Nil) {+            return Data_List_Lazy_Types.Nil.value;+        };+        if (v instanceof Data_List_Lazy_Types.Cons) {+            return new Data_List_Lazy_Types.Cons(v.value0, nubBy(eq)(filter(function (y) {+                return !eq(v.value0)(y);+            })(v.value1)));+        };+        throw new Error("Failed pattern match at Data.List.Lazy line 619, column 3 - line 619, column 15: " + [ v.constructor.name ]);+    };+    return function ($253) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($253)));+    };+};+var nub = function (dictEq) {+    return nubBy(Data_Eq.eq(dictEq));+};+var eqPattern = function (dictEq) {+    return new Data_Eq.Eq(function (x) {+        return function (y) {+            return Data_Eq.eq(Data_List_Lazy_Types.eqList(dictEq))(x)(y);+        };+    });+};+var ordPattern = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqPattern(dictOrd.Eq0());+    }, function (x) {+        return function (y) {+            return Data_Ord.compare(Data_List_Lazy_Types.ordList(dictOrd))(x)(y);+        };+    });+};+var elemLastIndex = function (dictEq) {+    return function (x) {+        return findLastIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var elemIndex = function (dictEq) {+    return function (x) {+        return findIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var dropWhile = function (p) {+    var go = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Data_List_Lazy_Types.Cons && p(v.value0)) {+                __copy_v = Data_List_Lazy_Types.step(v.value1);+                return;+            };+            __tco_done = true;+            return fromStep(v);+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return function ($254) {+        return go(Data_List_Lazy_Types.step($254));+    };+};+var drop = function (n) {+    var go = function (__copy_v) {+        return function (__copy_v1) {+            var __tco_v = __copy_v;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v, v1) {+                if (v === 0) {+                    __tco_done = true;+                    return v1;+                };+                if (v1 instanceof Data_List_Lazy_Types.Nil) {+                    __tco_done = true;+                    return Data_List_Lazy_Types.Nil.value;+                };+                if (v1 instanceof Data_List_Lazy_Types.Cons) {+                    __tco_v = v - 1 | 0;+                    __copy_v1 = Data_List_Lazy_Types.step(v1.value1);+                    return;+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 532, column 10 - line 536, column 44: " + [ v.constructor.name, v1.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_v, __copy_v1);+            };+            return __tco_result;+        };+    };+    return function ($255) {+        return Data_List_Lazy_Types.List(Data_Functor.map(Data_Lazy.functorLazy)(go(n))(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)($255)));+    };+};+var slice = function (start) {+    return function (end) {+        return function (xs) {+            return take(end - start | 0)(drop(start)(xs));+        };+    };+};+var deleteBy = function (eq) {+    return function (x) {+        return function (xs) {+            var go = function (v) {+                if (v instanceof Data_List_Lazy_Types.Nil) {+                    return Data_List_Lazy_Types.Nil.value;+                };+                if (v instanceof Data_List_Lazy_Types.Cons) {+                    if (eq(x)(v.value0)) {+                        return Data_List_Lazy_Types.step(v.value1);+                    };+                    if (Data_Boolean.otherwise) {+                        return new Data_List_Lazy_Types.Cons(v.value0, deleteBy(eq)(x)(v.value1));+                    };+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 648, column 3 - line 648, column 15: " + [ v.constructor.name ]);+            };+            return Data_Functor.map(Data_Lazy.functorLazy)(go)(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs));+        };+    };+};+var unionBy = function (eq) {+    return function (xs) {+        return function (ys) {+            return Data_Semigroup.append(Data_List_Lazy_Types.semigroupList)(xs)(Data_Foldable.foldl(Data_List_Lazy_Types.foldableList)(Data_Function.flip(deleteBy(eq)))(nubBy(eq)(ys))(xs));+        };+    };+};+var union = function (dictEq) {+    return unionBy(Data_Eq.eq(dictEq));+};+var deleteAt = function (n) {+    return function (xs) {+        var go = function (v) {+            return function (v1) {+                if (v1 instanceof Data_List_Lazy_Types.Nil) {+                    return Data_List_Lazy_Types.Nil.value;+                };+                if (v === 0 && v1 instanceof Data_List_Lazy_Types.Cons) {+                    return Data_List_Lazy_Types.step(v1.value1);+                };+                if (v1 instanceof Data_List_Lazy_Types.Cons) {+                    return new Data_List_Lazy_Types.Cons(v1.value0, deleteAt(v - 1 | 0)(v1.value1));+                };+                throw new Error("Failed pattern match at Data.List.Lazy line 352, column 3 - line 352, column 17: " + [ v.constructor.name, v1.constructor.name ]);+            };+        };+        return Data_Functor.map(Data_Lazy.functorLazy)(go(n))(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs));+    };+};+var $$delete = function (dictEq) {+    return deleteBy(Data_Eq.eq(dictEq));+};+var difference = function (dictEq) {+    return Data_Foldable.foldl(Data_List_Lazy_Types.foldableList)(Data_Function.flip($$delete(dictEq)));+};+var cycle = function (xs) {+    return Control_Lazy.fix(Data_List_Lazy_Types.lazyList)(function (ys) {+        return Data_Semigroup.append(Data_List_Lazy_Types.semigroupList)(xs)(ys);+    });+};+var concatMap = Data_Function.flip(Control_Bind.bind(Data_List_Lazy_Types.bindList));+var concat = function (v) {+    return Control_Bind.bind(Data_List_Lazy_Types.bindList)(v)(Control_Category.id(Control_Category.categoryFn));+};+var catMaybes = mapMaybe(Control_Category.id(Control_Category.categoryFn));+var alterAt = function (n) {+    return function (f) {+        return function (xs) {+            var go = function (v) {+                return function (v1) {+                    if (v1 instanceof Data_List_Lazy_Types.Nil) {+                        return Data_List_Lazy_Types.Nil.value;+                    };+                    if (v === 0 && v1 instanceof Data_List_Lazy_Types.Cons) {+                        var v2 = f(v1.value0);+                        if (v2 instanceof Data_Maybe.Nothing) {+                            return Data_List_Lazy_Types.step(v1.value1);+                        };+                        if (v2 instanceof Data_Maybe.Just) {+                            return new Data_List_Lazy_Types.Cons(v2.value0, v1.value1);+                        };+                        throw new Error("Failed pattern match at Data.List.Lazy line 393, column 22 - line 395, column 26: " + [ v2.constructor.name ]);+                    };+                    if (v1 instanceof Data_List_Lazy_Types.Cons) {+                        return new Data_List_Lazy_Types.Cons(v1.value0, alterAt(v - 1 | 0)(f)(v1.value1));+                    };+                    throw new Error("Failed pattern match at Data.List.Lazy line 392, column 3 - line 392, column 17: " + [ v.constructor.name, v1.constructor.name ]);+                };+            };+            return Data_Functor.map(Data_Lazy.functorLazy)(go(n))(Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList)(xs));+        };+    };+};+var modifyAt = function (n) {+    return function (f) {+        return alterAt(n)(function ($256) {+            return Data_Maybe.Just.create(f($256));+        });+    };+};+module.exports = {+    Pattern: Pattern, +    alterAt: alterAt, +    catMaybes: catMaybes, +    concat: concat, +    concatMap: concatMap, +    cycle: cycle, +    "delete": $$delete, +    deleteAt: deleteAt, +    deleteBy: deleteBy, +    difference: difference, +    drop: drop, +    dropWhile: dropWhile, +    elemIndex: elemIndex, +    elemLastIndex: elemLastIndex, +    filter: filter, +    filterM: filterM, +    findIndex: findIndex, +    findLastIndex: findLastIndex, +    foldM: foldM, +    foldrLazy: foldrLazy, +    fromFoldable: fromFoldable, +    group: group, +    groupBy: groupBy, +    head: head, +    index: index, +    init: init, +    insert: insert, +    insertAt: insertAt, +    insertBy: insertBy, +    intersect: intersect, +    intersectBy: intersectBy, +    iterate: iterate, +    last: last, +    length: length, +    many: many, +    mapMaybe: mapMaybe, +    modifyAt: modifyAt, +    nub: nub, +    nubBy: nubBy, +    "null": $$null, +    partition: partition, +    range: range, +    repeat: repeat, +    replicate: replicate, +    replicateM: replicateM, +    reverse: reverse, +    singleton: singleton, +    slice: slice, +    snoc: snoc, +    some: some, +    span: span, +    stripPrefix: stripPrefix, +    tail: tail, +    take: take, +    takeWhile: takeWhile, +    toUnfoldable: toUnfoldable, +    transpose: transpose, +    uncons: uncons, +    union: union, +    unionBy: unionBy, +    unzip: unzip, +    updateAt: updateAt, +    zip: zip, +    zipWith: zipWith, +    zipWithA: zipWithA, +    eqPattern: eqPattern, +    ordPattern: ordPattern, +    newtypePattern: newtypePattern, +    showPattern: showPattern+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Lazy":51,"../Control.Monad.Rec.Class":78,"../Control.Semigroupoid":93,"../Data.Boolean":130,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Lazy":169,"../Data.List.Lazy.Types":196,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Prelude":278}],198:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Boolean = require("../Data.Boolean");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_List = require("../Data.List");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semigroup_Foldable = require("../Data.Semigroup.Foldable");+var Data_Semigroup_Traversable = require("../Data.Semigroup.Traversable");+var Data_Semiring = require("../Data.Semiring");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var zipWith = function (f) {+    return function (v) {+        return function (v1) {+            return new Data_NonEmpty.NonEmpty(f(v.value0)(v1.value0), Data_List.zipWith(f)(v.value1)(v1.value1));+        };+    };+};+var zipWithA = function (dictApplicative) {+    return function (f) {+        return function (xs) {+            return function (ys) {+                return Data_Semigroup_Traversable.sequence1(Data_List_Types.traversable1NonEmptyList)(dictApplicative.Apply0())(zipWith(f)(xs)(ys));+            };+        };+    };+};+var zip = zipWith(Data_Tuple.Tuple.create);+var wrappedOperation2 = function (name) {+    return function (f) {+        return function (v) {+            return function (v1) {+                var v2 = f(new Data_List_Types.Cons(v.value0, v.value1))(new Data_List_Types.Cons(v1.value0, v1.value1));+                if (v2 instanceof Data_List_Types.Cons) {+                    return new Data_NonEmpty.NonEmpty(v2.value0, v2.value1);+                };+                if (v2 instanceof Data_List_Types.Nil) {+                    return Partial_Unsafe.unsafeCrashWith("Impossible: empty list in NonEmptyList " + name);+                };+                throw new Error("Failed pattern match at Data.List.NonEmpty line 101, column 3 - line 103, column 81: " + [ v2.constructor.name ]);+            };+        };+    };+};+var wrappedOperation = function (name) {+    return function (f) {+        return function (v) {+            var v1 = f(new Data_List_Types.Cons(v.value0, v.value1));+            if (v1 instanceof Data_List_Types.Cons) {+                return new Data_NonEmpty.NonEmpty(v1.value0, v1.value1);+            };+            if (v1 instanceof Data_List_Types.Nil) {+                return Partial_Unsafe.unsafeCrashWith("Impossible: empty list in NonEmptyList " + name);+            };+            throw new Error("Failed pattern match at Data.List.NonEmpty line 88, column 3 - line 90, column 81: " + [ v1.constructor.name ]);+        };+    };+};+var updateAt = function (i) {+    return function (a) {+        return function (v) {+            if (i === 0) {+                return new Data_Maybe.Just(new Data_NonEmpty.NonEmpty(a, v.value1));+            };+            if (Data_Boolean.otherwise) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function ($156) {+                    return Data_List_Types.NonEmptyList((function (v1) {+                        return new Data_NonEmpty.NonEmpty(v.value0, v1);+                    })($156));+                })(Data_List.updateAt(i - 1 | 0)(a)(v.value1));+            };+            throw new Error("Failed pattern match at Data.List.NonEmpty line 188, column 1 - line 190, column 70: " + [ i.constructor.name, a.constructor.name, v.constructor.name ]);+        };+    };+};+var unzip = function (ts) {+    return new Data_Tuple.Tuple(Data_Functor.map(Data_List_Types.functorNonEmptyList)(Data_Tuple.fst)(ts), Data_Functor.map(Data_List_Types.functorNonEmptyList)(Data_Tuple.snd)(ts));+};+var unsnoc = function (v) {+    var v1 = Data_List.unsnoc(v.value1);+    if (v1 instanceof Data_Maybe.Nothing) {+        return {+            init: Data_List_Types.Nil.value, +            last: v.value0+        };+    };+    if (v1 instanceof Data_Maybe.Just) {+        return {+            init: new Data_List_Types.Cons(v.value0, v1.value0.init), +            last: v1.value0.last+        };+    };+    throw new Error("Failed pattern match at Data.List.NonEmpty line 149, column 35 - line 151, column 50: " + [ v1.constructor.name ]);+};+var unionBy = function ($157) {+    return wrappedOperation2("unionBy")(Data_List.unionBy($157));+};+var union = function (dictEq) {+    return wrappedOperation2("union")(Data_List.union(dictEq));+};+var uncons = function (v) {+    return {+        head: v.value0, +        tail: v.value1+    };+};+var toList = function (v) {+    return new Data_List_Types.Cons(v.value0, v.value1);+};+var toUnfoldable = function (dictUnfoldable) {+    return function ($158) {+        return Data_Unfoldable.unfoldr(dictUnfoldable)(function (xs) {+            return Data_Functor.map(Data_Maybe.functorMaybe)(function (rec) {+                return new Data_Tuple.Tuple(rec.head, rec.tail);+            })(Data_List.uncons(xs));+        })(toList($158));+    };+};+var tail = function (v) {+    return v.value1;+};+var sortBy = function ($159) {+    return wrappedOperation("sortBy")(Data_List.sortBy($159));+};+var sort = function (dictOrd) {+    return function (xs) {+        return sortBy(Data_Ord.compare(dictOrd))(xs);+    };+};+var snoc = function (v) {+    return function (y) {+        return new Data_NonEmpty.NonEmpty(v.value0, Data_List.snoc(v.value1)(y));+    };+};+var singleton = function ($160) {+    return Data_List_Types.NonEmptyList(Data_NonEmpty.singleton(Data_List_Types.plusList)($160));+};+var reverse = wrappedOperation("reverse")(Data_List.reverse);+var nubBy = function ($161) {+    return wrappedOperation("nubBy")(Data_List.nubBy($161));+};+var nub = function (dictEq) {+    return wrappedOperation("nub")(Data_List.nub(dictEq));+};+var modifyAt = function (i) {+    return function (f) {+        return function (v) {+            if (i === 0) {+                return new Data_Maybe.Just(new Data_NonEmpty.NonEmpty(f(v.value0), v.value1));+            };+            if (Data_Boolean.otherwise) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function ($162) {+                    return Data_List_Types.NonEmptyList((function (v1) {+                        return new Data_NonEmpty.NonEmpty(v.value0, v1);+                    })($162));+                })(Data_List.modifyAt(i - 1 | 0)(f)(v.value1));+            };+            throw new Error("Failed pattern match at Data.List.NonEmpty line 193, column 1 - line 195, column 70: " + [ i.constructor.name, f.constructor.name, v.constructor.name ]);+        };+    };+};+var mapWithIndex = function ($163) {+    return wrappedOperation("mapWithIndex")(Data_List.mapWithIndex($163));+};+var lift = function (f) {+    return function (v) {+        return f(new Data_List_Types.Cons(v.value0, v.value1));+    };+};+var mapMaybe = function ($164) {+    return lift(Data_List.mapMaybe($164));+};+var partition = function ($165) {+    return lift(Data_List.partition($165));+};+var span = function ($166) {+    return lift(Data_List.span($166));+};+var take = function ($167) {+    return lift(Data_List.take($167));+};+var takeWhile = function ($168) {+    return lift(Data_List.takeWhile($168));+};+var length = function (v) {+    return 1 + Data_List.length(v.value1) | 0;+};+var last = function (v) {+    return Data_Maybe.fromMaybe(v.value0)(Data_List.last(v.value1));+};+var intersectBy = function ($169) {+    return wrappedOperation2("intersectBy")(Data_List.intersectBy($169));+};+var intersect = function (dictEq) {+    return wrappedOperation2("intersect")(Data_List.intersect(dictEq));+};+var insertAt = function (i) {+    return function (a) {+        return function (v) {+            if (i === 0) {+                return new Data_Maybe.Just(new Data_NonEmpty.NonEmpty(a, new Data_List_Types.Cons(v.value0, v.value1)));+            };+            if (Data_Boolean.otherwise) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function ($170) {+                    return Data_List_Types.NonEmptyList((function (v1) {+                        return new Data_NonEmpty.NonEmpty(v.value0, v1);+                    })($170));+                })(Data_List.insertAt(i - 1 | 0)(a)(v.value1));+            };+            throw new Error("Failed pattern match at Data.List.NonEmpty line 183, column 1 - line 185, column 70: " + [ i.constructor.name, a.constructor.name, v.constructor.name ]);+        };+    };+};+var init = function (v) {+    return Data_Maybe.maybe(Data_List_Types.Nil.value)(function (v1) {+        return new Data_List_Types.Cons(v.value0, v1);+    })(Data_List.init(v.value1));+};+var index = function (v) {+    return function (i) {+        if (i === 0) {+            return new Data_Maybe.Just(v.value0);+        };+        if (Data_Boolean.otherwise) {+            return Data_List.index(v.value1)(i - 1 | 0);+        };+        throw new Error("Failed pattern match at Data.List.NonEmpty line 157, column 1 - line 159, column 35: " + [ v.constructor.name, i.constructor.name ]);+    };+};+var head = function (v) {+    return v.value0;+};+var groupBy = function ($171) {+    return wrappedOperation("groupBy")(Data_List.groupBy($171));+};+var group$prime = function (dictOrd) {+    return wrappedOperation("group'")(Data_List["group'"](dictOrd));+};+var group = function (dictEq) {+    return wrappedOperation("group")(Data_List.group(dictEq));+};+var fromList = function (v) {+    if (v instanceof Data_List_Types.Nil) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Data_List_Types.Cons) {+        return new Data_Maybe.Just(new Data_NonEmpty.NonEmpty(v.value0, v.value1));+    };+    throw new Error("Failed pattern match at Data.List.NonEmpty line 118, column 1 - line 118, column 25: " + [ v.constructor.name ]);+};+var fromFoldable = function (dictFoldable) {+    return function ($172) {+        return fromList(Data_List.fromFoldable(dictFoldable)($172));+    };+};+var foldM = function (dictMonad) {+    return function (f) {+        return function (a) {+            return function (v) {+                return Control_Bind.bind(dictMonad.Bind1())(f(a)(v.value0))(function (a$prime) {+                    return Data_List.foldM(dictMonad)(f)(a$prime)(v.value1);+                });+            };+        };+    };+};+var findLastIndex = function (f) {+    return function (v) {+        var v1 = Data_List.findLastIndex(f)(v.value1);+        if (v1 instanceof Data_Maybe.Just) {+            return new Data_Maybe.Just(v1.value0 + 1 | 0);+        };+        if (v1 instanceof Data_Maybe.Nothing) {+            if (f(v.value0)) {+                return new Data_Maybe.Just(0);+            };+            if (Data_Boolean.otherwise) {+                return Data_Maybe.Nothing.value;+            };+        };+        throw new Error("Failed pattern match at Data.List.NonEmpty line 176, column 3 - line 180, column 29: " + [ v1.constructor.name ]);+    };+};+var findIndex = function (f) {+    return function (v) {+        if (f(v.value0)) {+            return new Data_Maybe.Just(0);+        };+        if (Data_Boolean.otherwise) {+            return Data_Functor.map(Data_Maybe.functorMaybe)(function (v1) {+                return v1 + 1 | 0;+            })(Data_List.findIndex(f)(v.value1));+        };+        throw new Error("Failed pattern match at Data.List.NonEmpty line 170, column 1 - line 172, column 45: " + [ f.constructor.name, v.constructor.name ]);+    };+};+var filterM = function (dictMonad) {+    return function ($173) {+        return lift(Data_List.filterM(dictMonad)($173));+    };+};+var filter = function ($174) {+    return lift(Data_List.filter($174));+};+var elemLastIndex = function (dictEq) {+    return function (x) {+        return findLastIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var elemIndex = function (dictEq) {+    return function (x) {+        return findIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var dropWhile = function ($175) {+    return lift(Data_List.dropWhile($175));+};+var drop = function ($176) {+    return lift(Data_List.drop($176));+};+var cons = function (y) {+    return function (v) {+        return new Data_NonEmpty.NonEmpty(y, new Data_List_Types.Cons(v.value0, v.value1));+    };+};+var concatMap = Data_Function.flip(Control_Bind.bind(Data_List_Types.bindNonEmptyList));+var concat = function (v) {+    return Control_Bind.bind(Data_List_Types.bindNonEmptyList)(v)(Control_Category.id(Control_Category.categoryFn));+};+var catMaybes = lift(Data_List.catMaybes);+var appendFoldable = function (dictFoldable) {+    return function (v) {+        return function (ys) {+            return new Data_NonEmpty.NonEmpty(v.value0, Data_Semigroup.append(Data_List_Types.semigroupList)(v.value1)(Data_List.fromFoldable(dictFoldable)(ys)));+        };+    };+};+module.exports = {+    appendFoldable: appendFoldable, +    catMaybes: catMaybes, +    concat: concat, +    concatMap: concatMap, +    cons: cons, +    drop: drop, +    dropWhile: dropWhile, +    elemIndex: elemIndex, +    elemLastIndex: elemLastIndex, +    filter: filter, +    filterM: filterM, +    findIndex: findIndex, +    findLastIndex: findLastIndex, +    foldM: foldM, +    fromFoldable: fromFoldable, +    fromList: fromList, +    group: group, +    "group'": group$prime, +    groupBy: groupBy, +    head: head, +    index: index, +    init: init, +    insertAt: insertAt, +    intersect: intersect, +    intersectBy: intersectBy, +    last: last, +    length: length, +    mapMaybe: mapMaybe, +    mapWithIndex: mapWithIndex, +    modifyAt: modifyAt, +    nub: nub, +    nubBy: nubBy, +    partition: partition, +    reverse: reverse, +    singleton: singleton, +    snoc: snoc, +    sort: sort, +    sortBy: sortBy, +    span: span, +    tail: tail, +    take: take, +    takeWhile: takeWhile, +    toList: toList, +    toUnfoldable: toUnfoldable, +    uncons: uncons, +    union: union, +    unionBy: unionBy, +    unsnoc: unsnoc, +    unzip: unzip, +    updateAt: updateAt, +    zip: zip, +    zipWith: zipWith, +    zipWithA: zipWithA+};++},{"../Control.Bind":46,"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Boolean":130,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.List":200,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semigroup.Foldable":234,"../Data.Semigroup.Traversable":235,"../Data.Semiring":239,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Partial.Unsafe":275,"../Prelude":278}],199:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semigroup_Foldable = require("../Data.Semigroup.Foldable");+var Data_Semigroup_Traversable = require("../Data.Semigroup.Traversable");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Prelude = require("../Prelude");+var Nil = (function () {+    function Nil() {++    };+    Nil.value = new Nil();+    return Nil;+})();+var Cons = (function () {+    function Cons(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Cons.create = function (value0) {+        return function (value1) {+            return new Cons(value0, value1);+        };+    };+    return Cons;+})();+var NonEmptyList = function (x) {+    return x;+};+var toList = function (v) {+    return new Cons(v.value0, v.value1);+};+var newtypeNonEmptyList = new Data_Newtype.Newtype(function (n) {+    return n;+}, NonEmptyList);+var nelCons = function (a) {+    return function (v) {+        return new Data_NonEmpty.NonEmpty(a, new Cons(v.value0, v.value1));+    };+};+var foldableList = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return Data_Foldable.foldl(foldableList)(function (acc) {+            return function ($143) {+                return Data_Semigroup.append(dictMonoid.Semigroup0())(acc)(f($143));+            };+        })(Data_Monoid.mempty(dictMonoid));+    };+}, function (f) {+    var go = function (__copy_b) {+        return function (__copy_v) {+            var __tco_b = __copy_b;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(b, v) {+                if (v instanceof Nil) {+                    __tco_done = true;+                    return b;+                };+                if (v instanceof Cons) {+                    __tco_b = f(b)(v.value0);+                    __copy_v = v.value1;+                    return;+                };+                throw new Error("Failed pattern match at Data.List.Types line 78, column 12 - line 80, column 30: " + [ v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_b, __copy_v);+            };+            return __tco_result;+        };+    };+    return go;+}, function (f) {+    return function (b) {+        var rev = function (__copy_acc) {+            return function (__copy_v) {+                var __tco_acc = __copy_acc;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(acc, v) {+                    if (v instanceof Nil) {+                        __tco_done = true;+                        return acc;+                    };+                    if (v instanceof Cons) {+                        __tco_acc = new Cons(v.value0, acc);+                        __copy_v = v.value1;+                        return;+                    };+                    throw new Error("Failed pattern match at Data.List.Types line 73, column 15 - line 75, column 33: " + [ v.constructor.name ]);+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_acc, __copy_v);+                };+                return __tco_result;+            };+        };+        return function ($144) {+            return Data_Foldable.foldl(foldableList)(Data_Function.flip(f))(b)(rev(Nil.value)($144));+        };+    };+});+var foldableNonEmptyList = Data_NonEmpty.foldableNonEmpty(foldableList);+var functorList = new Data_Functor.Functor(function (f) {+    return Data_Foldable.foldr(foldableList)(function (x) {+        return function (acc) {+            return new Cons(f(x), acc);+        };+    })(Nil.value);+});+var functorNonEmptyList = Data_NonEmpty.functorNonEmpty(functorList);+var semigroupList = new Data_Semigroup.Semigroup(function (xs) {+    return function (ys) {+        return Data_Foldable.foldr(foldableList)(Cons.create)(ys)(xs);+    };+});+var monoidList = new Data_Monoid.Monoid(function () {+    return semigroupList;+}, Nil.value);+var semigroupNonEmptyList = new Data_Semigroup.Semigroup(function (v) {+    return function (as$prime) {+        return new Data_NonEmpty.NonEmpty(v.value0, Data_Semigroup.append(semigroupList)(v.value1)(toList(as$prime)));+    };+});+var showList = function (dictShow) {+    return new Data_Show.Show(function (v) {+        if (v instanceof Nil) {+            return "Nil";+        };+        return "(" + (Data_Foldable.intercalate(foldableList)(Data_Monoid.monoidString)(" : ")(Data_Functor.map(functorList)(Data_Show.show(dictShow))(v)) + " : Nil)");+    });+};+var showNonEmptyList = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(NonEmptyList " + (Data_Show.show(Data_NonEmpty.showNonEmpty(dictShow)(showList(dictShow)))(v) + ")");+    });+};+var traversableList = new Data_Traversable.Traversable(function () {+    return foldableList;+}, function () {+    return functorList;+}, function (dictApplicative) {+    return Data_Traversable.traverse(traversableList)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));+}, function (dictApplicative) {+    return function (f) {+        return function ($145) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Foldable.foldl(foldableList)(Data_Function.flip(Cons.create))(Nil.value))(Data_Foldable.foldl(foldableList)(function (acc) {+                return function ($146) {+                    return Control_Apply.lift2(dictApplicative.Apply0())(Data_Function.flip(Cons.create))(acc)(f($146));+                };+            })(Control_Applicative.pure(dictApplicative)(Nil.value))($145));+        };+    };+});+var traversableNonEmptyList = Data_NonEmpty.traversableNonEmpty(traversableList);+var unfoldableList = new Data_Unfoldable.Unfoldable(function (f) {+    return function (b) {+        var go = function (__copy_source) {+            return function (__copy_memo) {+                var __tco_source = __copy_source;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(source, memo) {+                    var v = f(source);+                    if (v instanceof Data_Maybe.Nothing) {+                        __tco_done = true;+                        return Data_Foldable.foldl(foldableList)(Data_Function.flip(Cons.create))(Nil.value)(memo);+                    };+                    if (v instanceof Data_Maybe.Just) {+                        __tco_source = v.value0.value1;+                        __copy_memo = new Cons(v.value0.value0, memo);+                        return;+                    };+                    throw new Error("Failed pattern match at Data.List.Types line 86, column 22 - line 88, column 52: " + [ v.constructor.name ]);+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_source, __copy_memo);+                };+                return __tco_result;+            };+        };+        return go(b)(Nil.value);+    };+});+var foldable1NonEmptyList = new Data_Semigroup_Foldable.Foldable1(function () {+    return foldableNonEmptyList;+}, function (dictSemigroup) {+    return function (v) {+        return Data_Foldable.foldl(foldableList)(Data_Semigroup.append(dictSemigroup))(v.value0)(v.value1);+    };+}, function (dictSemigroup) {+    return function (f) {+        return function (v) {+            return Data_Foldable.foldl(foldableList)(function (acc) {+                return function ($147) {+                    return Data_Semigroup.append(dictSemigroup)(acc)(f($147));+                };+            })(f(v.value0))(v.value1);+        };+    };+});+var extendNonEmptyList = new Control_Extend.Extend(function () {+    return functorNonEmptyList;+}, function (f) {+    return function (v) {+        var go = function (a) {+            return function (v1) {+                return {+                    val: new Cons(f(new Data_NonEmpty.NonEmpty(a, v1.acc)), v1.val), +                    acc: new Cons(a, v1.acc)+                };+            };+        };+        return new Data_NonEmpty.NonEmpty(f(v), (Data_Foldable.foldr(foldableList)(go)({+            val: Nil.value, +            acc: Nil.value+        })(v.value1)).val);+    };+});+var extendList = new Control_Extend.Extend(function () {+    return functorList;+}, function (f) {+    return function (v) {+        if (v instanceof Nil) {+            return Nil.value;+        };+        if (v instanceof Cons) {+            var go = function (a$prime) {+                return function (v1) {+                    var acc$prime = new Cons(a$prime, v1.acc);+                    return {+                        val: new Cons(f(acc$prime), v1.val), +                        acc: acc$prime+                    };+                };+            };+            return new Cons(f(v), (Data_Foldable.foldr(foldableList)(go)({+                val: Nil.value, +                acc: Nil.value+            })(v.value1)).val);+        };+        throw new Error("Failed pattern match at Data.List.Types line 120, column 3 - line 120, column 21: " + [ f.constructor.name, v.constructor.name ]);+    };+});+var eq1List = new Data_Eq.Eq1(function (dictEq) {+    return function (xs) {+        return function (ys) {+            var go = function (__copy_v) {+                return function (__copy_v1) {+                    return function (__copy_v2) {+                        var __tco_v = __copy_v;+                        var __tco_v1 = __copy_v1;+                        var __tco_done = false;+                        var __tco_result;+                        function __tco_loop(v, v1, v2) {+                            if (!v2) {+                                __tco_done = true;+                                return false;+                            };+                            if (v instanceof Nil && v1 instanceof Nil) {+                                __tco_done = true;+                                return v2;+                            };+                            if (v instanceof Cons && v1 instanceof Cons) {+                                __tco_v = v.value1;+                                __tco_v1 = v1.value1;+                                __copy_v2 = v2 && Data_Eq.eq(dictEq)(v1.value0)(v.value0);+                                return;+                            };+                            __tco_done = true;+                            return false;+                        };+                        while (!__tco_done) {+                            __tco_result = __tco_loop(__tco_v, __tco_v1, __copy_v2);+                        };+                        return __tco_result;+                    };+                };+            };+            return go(xs)(ys)(true);+        };+    };+});+var eqList = function (dictEq) {+    return new Data_Eq.Eq(Data_Eq.eq1(eq1List)(dictEq));+};+var eqNonEmptyList = function (dictEq) {+    return Data_NonEmpty.eqNonEmpty(eq1List)(dictEq);+};+var ord1List = new Data_Ord.Ord1(function () {+    return eq1List;+}, function (dictOrd) {+    return function (xs) {+        return function (ys) {+            var go = function (__copy_v) {+                return function (__copy_v1) {+                    var __tco_v = __copy_v;+                    var __tco_done = false;+                    var __tco_result;+                    function __tco_loop(v, v1) {+                        if (v instanceof Nil && v1 instanceof Nil) {+                            __tco_done = true;+                            return Data_Ordering.EQ.value;+                        };+                        if (v instanceof Nil) {+                            __tco_done = true;+                            return Data_Ordering.LT.value;+                        };+                        if (v1 instanceof Nil) {+                            __tco_done = true;+                            return Data_Ordering.GT.value;+                        };+                        if (v instanceof Cons && v1 instanceof Cons) {+                            var v2 = Data_Ord.compare(dictOrd)(v.value0)(v1.value0);+                            if (v2 instanceof Data_Ordering.EQ) {+                                __tco_v = v.value1;+                                __copy_v1 = v1.value1;+                                return;+                            };+                            __tco_done = true;+                            return v2;+                        };+                        throw new Error("Failed pattern match at Data.List.Types line 51, column 20 - line 59, column 23: " + [ v.constructor.name, v1.constructor.name ]);+                    };+                    while (!__tco_done) {+                        __tco_result = __tco_loop(__tco_v, __copy_v1);+                    };+                    return __tco_result;+                };+            };+            return go(xs)(ys);+        };+    };+});+var ordList = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqList(dictOrd.Eq0());+    }, Data_Ord.compare1(ord1List)(dictOrd));+};+var ordNonEmptyList = function (dictOrd) {+    return Data_NonEmpty.ordNonEmpty(ord1List)(dictOrd);+};+var comonadNonEmptyList = new Control_Comonad.Comonad(function () {+    return extendNonEmptyList;+}, function (v) {+    return v.value0;+});+var applyList = new Control_Apply.Apply(function () {+    return functorList;+}, function (v) {+    return function (v1) {+        if (v instanceof Nil) {+            return Nil.value;+        };+        if (v instanceof Cons) {+            return Data_Semigroup.append(semigroupList)(Data_Functor.map(functorList)(v.value0)(v1))(Control_Apply.apply(applyList)(v.value1)(v1));+        };+        throw new Error("Failed pattern match at Data.List.Types line 95, column 3 - line 95, column 20: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var applyNonEmptyList = new Control_Apply.Apply(function () {+    return functorNonEmptyList;+}, function (v) {+    return function (v1) {+        return new Data_NonEmpty.NonEmpty(v.value0(v1.value0), Data_Semigroup.append(semigroupList)(Control_Apply.apply(applyList)(v.value1)(new Cons(v1.value0, Nil.value)))(Control_Apply.apply(applyList)(new Cons(v.value0, v.value1))(v1.value1)));+    };+});+var bindList = new Control_Bind.Bind(function () {+    return applyList;+}, function (v) {+    return function (v1) {+        if (v instanceof Nil) {+            return Nil.value;+        };+        if (v instanceof Cons) {+            return Data_Semigroup.append(semigroupList)(v1(v.value0))(Control_Bind.bind(bindList)(v.value1)(v1));+        };+        throw new Error("Failed pattern match at Data.List.Types line 102, column 3 - line 102, column 19: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var bindNonEmptyList = new Control_Bind.Bind(function () {+    return applyNonEmptyList;+}, function (v) {+    return function (f) {+        var v1 = f(v.value0);+        return new Data_NonEmpty.NonEmpty(v1.value0, Data_Semigroup.append(semigroupList)(v1.value1)(Control_Bind.bind(bindList)(v.value1)(function ($148) {+            return toList(f($148));+        })));+    };+});+var applicativeList = new Control_Applicative.Applicative(function () {+    return applyList;+}, function (a) {+    return new Cons(a, Nil.value);+});+var monadList = new Control_Monad.Monad(function () {+    return applicativeList;+}, function () {+    return bindList;+});+var altNonEmptyList = new Control_Alt.Alt(function () {+    return functorNonEmptyList;+}, Data_Semigroup.append(semigroupNonEmptyList));+var altList = new Control_Alt.Alt(function () {+    return functorList;+}, Data_Semigroup.append(semigroupList));+var plusList = new Control_Plus.Plus(function () {+    return altList;+}, Nil.value);+var alternativeList = new Control_Alternative.Alternative(function () {+    return applicativeList;+}, function () {+    return plusList;+});+var monadZeroList = new Control_MonadZero.MonadZero(function () {+    return alternativeList;+}, function () {+    return monadList;+});+var monadPlusList = new Control_MonadPlus.MonadPlus(function () {+    return monadZeroList;+});+var applicativeNonEmptyList = new Control_Applicative.Applicative(function () {+    return applyNonEmptyList;+}, function ($149) {+    return NonEmptyList(Data_NonEmpty.singleton(plusList)($149));+});+var monadNonEmptyList = new Control_Monad.Monad(function () {+    return applicativeNonEmptyList;+}, function () {+    return bindNonEmptyList;+});+var traversable1NonEmptyList = new Data_Semigroup_Traversable.Traversable1(function () {+    return foldable1NonEmptyList;+}, function () {+    return traversableNonEmptyList;+}, function (dictApply) {+    return Data_Semigroup_Traversable.traverse1(traversable1NonEmptyList)(dictApply)(Control_Category.id(Control_Category.categoryFn));+}, function (dictApply) {+    return function (f) {+        return function (v) {+            return Data_Functor.mapFlipped(dictApply.Functor0())(Data_Foldable.foldl(foldableList)(function (acc) {+                return function ($150) {+                    return Control_Apply.lift2(dictApply)(Data_Function.flip(nelCons))(acc)(f($150));+                };+            })(Data_Functor.map(dictApply.Functor0())(Control_Applicative.pure(applicativeNonEmptyList))(f(v.value0)))(v.value1))(function (v1) {+                return Data_Foldable.foldl(foldableList)(Data_Function.flip(nelCons))(Control_Applicative.pure(applicativeNonEmptyList)(v1.value0))(v1.value1);+            });+        };+    };+});+module.exports = {+    Nil: Nil, +    Cons: Cons, +    NonEmptyList: NonEmptyList, +    nelCons: nelCons, +    toList: toList, +    showList: showList, +    eqList: eqList, +    eq1List: eq1List, +    ordList: ordList, +    ord1List: ord1List, +    semigroupList: semigroupList, +    monoidList: monoidList, +    functorList: functorList, +    foldableList: foldableList, +    unfoldableList: unfoldableList, +    traversableList: traversableList, +    applyList: applyList, +    applicativeList: applicativeList, +    bindList: bindList, +    monadList: monadList, +    altList: altList, +    plusList: plusList, +    alternativeList: alternativeList, +    monadZeroList: monadZeroList, +    monadPlusList: monadPlusList, +    extendList: extendList, +    newtypeNonEmptyList: newtypeNonEmptyList, +    eqNonEmptyList: eqNonEmptyList, +    ordNonEmptyList: ordNonEmptyList, +    showNonEmptyList: showNonEmptyList, +    functorNonEmptyList: functorNonEmptyList, +    applyNonEmptyList: applyNonEmptyList, +    applicativeNonEmptyList: applicativeNonEmptyList, +    bindNonEmptyList: bindNonEmptyList, +    monadNonEmptyList: monadNonEmptyList, +    altNonEmptyList: altNonEmptyList, +    extendNonEmptyList: extendNonEmptyList, +    comonadNonEmptyList: comonadNonEmptyList, +    semigroupNonEmptyList: semigroupNonEmptyList, +    foldableNonEmptyList: foldableNonEmptyList, +    traversableNonEmptyList: traversableNonEmptyList, +    foldable1NonEmptyList: foldable1NonEmptyList, +    traversable1NonEmptyList: traversable1NonEmptyList+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Semigroup.Foldable":234,"../Data.Semigroup.Traversable":235,"../Data.Show":241,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Prelude":278}],200:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad_Rec_Class = require("../Control.Monad.Rec.Class");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Boolean = require("../Data.Boolean");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_NonEmpty = require("../Data.NonEmpty");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Pattern = function (x) {+    return x;+};+var updateAt = function (v) {+    return function (v1) {+        return function (v2) {+            if (v === 0 && v2 instanceof Data_List_Types.Cons) {+                return new Data_Maybe.Just(new Data_List_Types.Cons(v1, v2.value1));+            };+            if (v2 instanceof Data_List_Types.Cons) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function (v3) {+                    return new Data_List_Types.Cons(v2.value0, v3);+                })(updateAt(v - 1 | 0)(v1)(v2.value1));+            };+            return Data_Maybe.Nothing.value;+        };+    };+};+var unzip = Data_Foldable.foldr(Data_List_Types.foldableList)(function (v) {+    return function (v1) {+        return new Data_Tuple.Tuple(new Data_List_Types.Cons(v.value0, v1.value0), new Data_List_Types.Cons(v.value1, v1.value1));+    };+})(new Data_Tuple.Tuple(Data_List_Types.Nil.value, Data_List_Types.Nil.value));+var uncons = function (v) {+    if (v instanceof Data_List_Types.Nil) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Data_List_Types.Cons) {+        return new Data_Maybe.Just({+            head: v.value0, +            tail: v.value1+        });+    };+    throw new Error("Failed pattern match at Data.List line 257, column 1 - line 257, column 21: " + [ v.constructor.name ]);+};+var toUnfoldable = function (dictUnfoldable) {+    return Data_Unfoldable.unfoldr(dictUnfoldable)(function (xs) {+        return Data_Functor.map(Data_Maybe.functorMaybe)(function (rec) {+            return new Data_Tuple.Tuple(rec.head, rec.tail);+        })(uncons(xs));+    });+};+var tail = function (v) {+    if (v instanceof Data_List_Types.Nil) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Data_List_Types.Cons) {+        return new Data_Maybe.Just(v.value1);+    };+    throw new Error("Failed pattern match at Data.List line 243, column 1 - line 243, column 19: " + [ v.constructor.name ]);+};+var stripPrefix = function (dictEq) {+    return function (v) {+        return function (s) {+            var go = function (prefix) {+                return function (input) {+                    if (prefix instanceof Data_List_Types.Cons && (input instanceof Data_List_Types.Cons && Data_Eq.eq(dictEq)(prefix.value0)(input.value0))) {+                        return Data_Maybe.Just.create(new Control_Monad_Rec_Class.Loop({+                            a: prefix.value1, +                            b: input.value1+                        }));+                    };+                    if (prefix instanceof Data_List_Types.Nil) {+                        return Data_Maybe.Just.create(new Control_Monad_Rec_Class.Done(input));+                    };+                    return Data_Maybe.Nothing.value;+                };+            };+            return Control_Monad_Rec_Class.tailRecM2(Control_Monad_Rec_Class.monadRecMaybe)(go)(v)(s);+        };+    };+};+var span = function (v) {+    return function (v1) {+        if (v1 instanceof Data_List_Types.Cons && v(v1.value0)) {+            var v2 = span(v)(v1.value1);+            return {+                init: new Data_List_Types.Cons(v1.value0, v2.init), +                rest: v2.rest+            };+        };+        return {+            init: Data_List_Types.Nil.value, +            rest: v1+        };+    };+};+var snoc = function (xs) {+    return function (x) {+        return Data_Foldable.foldr(Data_List_Types.foldableList)(Data_List_Types.Cons.create)(new Data_List_Types.Cons(x, Data_List_Types.Nil.value))(xs);+    };+};+var singleton = function (a) {+    return new Data_List_Types.Cons(a, Data_List_Types.Nil.value);+};+var sortBy = function (cmp) {+    var merge = function (v) {+        return function (v1) {+            if (v instanceof Data_List_Types.Cons && v1 instanceof Data_List_Types.Cons) {+                if (Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v1.value0))(Data_Ordering.GT.value)) {+                    return new Data_List_Types.Cons(v1.value0, merge(v)(v1.value1));+                };+                if (Data_Boolean.otherwise) {+                    return new Data_List_Types.Cons(v.value0, merge(v.value1)(v1));+                };+            };+            if (v instanceof Data_List_Types.Nil) {+                return v1;+            };+            if (v1 instanceof Data_List_Types.Nil) {+                return v;+            };+            throw new Error("Failed pattern match at Data.List line 472, column 3 - line 474, column 41: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+    var mergePairs = function (v) {+        if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Cons) {+            return new Data_List_Types.Cons(merge(v.value0)(v.value1.value0), mergePairs(v.value1.value1));+        };+        return v;+    };+    var mergeAll = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Nil) {+                __tco_done = true;+                return v.value0;+            };+            __copy_v = mergePairs(v);+            return;+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    var sequences = function (v) {+        if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Cons) {+            if (Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(v.value0)(v.value1.value0))(Data_Ordering.GT.value)) {+                return descending(v.value1.value0)(singleton(v.value0))(v.value1.value1);+            };+            if (Data_Boolean.otherwise) {+                return ascending(v.value1.value0)(function (v1) {+                    return new Data_List_Types.Cons(v.value0, v1);+                })(v.value1.value1);+            };+        };+        return singleton(v);+    };+    var descending = function (__copy_a) {+        return function (__copy_as) {+            return function (__copy_v) {+                var __tco_a = __copy_a;+                var __tco_as = __copy_as;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(a, as, v) {+                    if (v instanceof Data_List_Types.Cons && Data_Eq.eq(Data_Ordering.eqOrdering)(cmp(a)(v.value0))(Data_Ordering.GT.value)) {+                        __tco_a = v.value0;+                        __tco_as = new Data_List_Types.Cons(a, as);+                        __copy_v = v.value1;+                        return;+                    };+                    __tco_done = true;+                    return new Data_List_Types.Cons(new Data_List_Types.Cons(a, as), sequences(v));+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_a, __tco_as, __copy_v);+                };+                return __tco_result;+            };+        };+    };+    var ascending = function (__copy_a) {+        return function (__copy_as) {+            return function (__copy_v) {+                var __tco_a = __copy_a;+                var __tco_as = __copy_as;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(a, as, v) {+                    if (v instanceof Data_List_Types.Cons && Data_Eq.notEq(Data_Ordering.eqOrdering)(cmp(a)(v.value0))(Data_Ordering.GT.value)) {+                        __tco_a = v.value0;+                        __tco_as = function (ys) {+                            return as(new Data_List_Types.Cons(a, ys));+                        };+                        __copy_v = v.value1;+                        return;+                    };+                    __tco_done = true;+                    return new Data_List_Types.Cons(as(singleton(a)), sequences(v));+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_a, __tco_as, __copy_v);+                };+                return __tco_result;+            };+        };+    };+    return function ($340) {+        return mergeAll(sequences($340));+    };+};+var sort = function (dictOrd) {+    return function (xs) {+        return sortBy(Data_Ord.compare(dictOrd))(xs);+    };+};+var showPattern = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Pattern " + (Data_Show.show(Data_List_Types.showList(dictShow))(v) + ")");+    });+};+var reverse = (function () {+    var go = function (__copy_acc) {+        return function (__copy_v) {+            var __tco_acc = __copy_acc;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(acc, v) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return acc;+                };+                if (v instanceof Data_List_Types.Cons) {+                    __tco_acc = new Data_List_Types.Cons(v.value0, acc);+                    __copy_v = v.value1;+                    return;+                };+                throw new Error("Failed pattern match at Data.List line 363, column 11 - line 366, column 36: " + [ acc.constructor.name, v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_acc, __copy_v);+            };+            return __tco_result;+        };+    };+    return go(Data_List_Types.Nil.value);+})();+var take = (function () {+    var go = function (__copy_acc) {+        return function (__copy_v) {+            return function (__copy_v1) {+                var __tco_acc = __copy_acc;+                var __tco_v = __copy_v;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(acc, v, v1) {+                    if (v === 0) {+                        __tco_done = true;+                        return reverse(acc);+                    };+                    if (v1 instanceof Data_List_Types.Nil) {+                        __tco_done = true;+                        return reverse(acc);+                    };+                    if (v1 instanceof Data_List_Types.Cons) {+                        __tco_acc = new Data_List_Types.Cons(v1.value0, acc);+                        __tco_v = v - 1 | 0;+                        __copy_v1 = v1.value1;+                        return;+                    };+                    throw new Error("Failed pattern match at Data.List line 516, column 8 - line 520, column 46: " + [ acc.constructor.name, v.constructor.name, v1.constructor.name ]);+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_acc, __tco_v, __copy_v1);+                };+                return __tco_result;+            };+        };+    };+    return go(Data_List_Types.Nil.value);+})();+var takeWhile = function (p) {+    var go = function (__copy_acc) {+        return function (__copy_v) {+            var __tco_acc = __copy_acc;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(acc, v) {+                if (v instanceof Data_List_Types.Cons && p(v.value0)) {+                    __tco_acc = new Data_List_Types.Cons(v.value0, acc);+                    __copy_v = v.value1;+                    return;+                };+                __tco_done = true;+                return reverse(acc);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_acc, __copy_v);+            };+            return __tco_result;+        };+    };+    return go(Data_List_Types.Nil.value);+};+var unsnoc = function (lst) {+    var go = function (__copy_v) {+        return function (__copy_acc) {+            var __tco_v = __copy_v;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v, acc) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return new Data_Maybe.Just({+                        revInit: acc, +                        last: v.value0+                    });+                };+                if (v instanceof Data_List_Types.Cons) {+                    __tco_v = v.value1;+                    __copy_acc = new Data_List_Types.Cons(v.value0, acc);+                    return;+                };+                throw new Error("Failed pattern match at Data.List line 265, column 14 - line 269, column 36: " + [ v.constructor.name, acc.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_v, __copy_acc);+            };+            return __tco_result;+        };+    };+    return Data_Functor.map(Data_Maybe.functorMaybe)(function (h) {+        return {+            init: reverse(h.revInit), +            last: h.last+        };+    })(go(lst)(Data_List_Types.Nil.value));+};+var zipWith = function (f) {+    return function (xs) {+        return function (ys) {+            var go = function (__copy_v) {+                return function (__copy_v1) {+                    return function (__copy_acc) {+                        var __tco_v = __copy_v;+                        var __tco_v1 = __copy_v1;+                        var __tco_done = false;+                        var __tco_result;+                        function __tco_loop(v, v1, acc) {+                            if (v instanceof Data_List_Types.Nil) {+                                __tco_done = true;+                                return acc;+                            };+                            if (v1 instanceof Data_List_Types.Nil) {+                                __tco_done = true;+                                return acc;+                            };+                            if (v instanceof Data_List_Types.Cons && v1 instanceof Data_List_Types.Cons) {+                                __tco_v = v.value1;+                                __tco_v1 = v1.value1;+                                __copy_acc = new Data_List_Types.Cons(f(v.value0)(v1.value0), acc);+                                return;+                            };+                            throw new Error("Failed pattern match at Data.List line 690, column 19 - line 694, column 52: " + [ v.constructor.name, v1.constructor.name, acc.constructor.name ]);+                        };+                        while (!__tco_done) {+                            __tco_result = __tco_loop(__tco_v, __tco_v1, __copy_acc);+                        };+                        return __tco_result;+                    };+                };+            };+            return reverse(go(xs)(ys)(Data_List_Types.Nil.value));+        };+    };+};+var zip = zipWith(Data_Tuple.Tuple.create);+var zipWithA = function (dictApplicative) {+    return function (f) {+        return function (xs) {+            return function (ys) {+                return Data_Traversable.sequence(Data_List_Types.traversableList)(dictApplicative)(zipWith(f)(xs)(ys));+            };+        };+    };+};+var range = function (start) {+    return function (end) {+        if (start === end) {+            return singleton(start);+        };+        if (Data_Boolean.otherwise) {+            var go = function (__copy_s) {+                return function (__copy_e) {+                    return function (__copy_step) {+                        return function (__copy_rest) {+                            var __tco_s = __copy_s;+                            var __tco_e = __copy_e;+                            var __tco_step = __copy_step;+                            var __tco_done = false;+                            var __tco_result;+                            function __tco_loop(s, e, step, rest) {+                                if (s === e) {+                                    __tco_done = true;+                                    return new Data_List_Types.Cons(s, rest);+                                };+                                if (Data_Boolean.otherwise) {+                                    __tco_s = s + step | 0;+                                    __tco_e = e;+                                    __tco_step = step;+                                    __copy_rest = new Data_List_Types.Cons(s, rest);+                                    return;+                                };+                                throw new Error("Failed pattern match at Data.List line 143, column 31 - line 146, column 65: " + [ s.constructor.name, e.constructor.name, step.constructor.name, rest.constructor.name ]);+                            };+                            while (!__tco_done) {+                                __tco_result = __tco_loop(__tco_s, __tco_e, __tco_step, __copy_rest);+                            };+                            return __tco_result;+                        };+                    };+                };+            };+            return go(end)(start)((function () {+                var $221 = start > end;+                if ($221) {+                    return 1;+                };+                return -1 | 0;+            })())(Data_List_Types.Nil.value);+        };+        throw new Error("Failed pattern match at Data.List line 142, column 1 - line 146, column 65: " + [ start.constructor.name, end.constructor.name ]);+    };+};+var partition = function (p) {+    return function (xs) {+        var select = function (x) {+            return function (v) {+                var $224 = p(x);+                if ($224) {+                    return {+                        no: v.no, +                        yes: new Data_List_Types.Cons(x, v.yes)+                    };+                };+                return {+                    no: new Data_List_Types.Cons(x, v.no), +                    yes: v.yes+                };+            };+        };+        return Data_Foldable.foldr(Data_List_Types.foldableList)(select)({+            no: Data_List_Types.Nil.value, +            yes: Data_List_Types.Nil.value+        })(xs);+    };+};+var $$null = function (v) {+    if (v instanceof Data_List_Types.Nil) {+        return true;+    };+    return false;+};+var newtypePattern = new Data_Newtype.Newtype(function (n) {+    return n;+}, Pattern);+var mapWithIndex = function (f) {+    return function (lst) {+        var go = function (__copy_v) {+            return function (__copy_v1) {+                return function (__copy_acc) {+                    var __tco_v = __copy_v;+                    var __tco_v1 = __copy_v1;+                    var __tco_done = false;+                    var __tco_result;+                    function __tco_loop(v, v1, acc) {+                        if (v1 instanceof Data_List_Types.Nil) {+                            __tco_done = true;+                            return acc;+                        };+                        if (v1 instanceof Data_List_Types.Cons) {+                            __tco_v = v + 1 | 0;+                            __tco_v1 = v1.value1;+                            __copy_acc = new Data_List_Types.Cons(f(v)(v1.value0), acc);+                            return;+                        };+                        throw new Error("Failed pattern match at Data.List line 428, column 22 - line 431, column 48: " + [ v.constructor.name, v1.constructor.name, acc.constructor.name ]);+                    };+                    while (!__tco_done) {+                        __tco_result = __tco_loop(__tco_v, __tco_v1, __copy_acc);+                    };+                    return __tco_result;+                };+            };+        };+        return reverse(go(0)(lst)(Data_List_Types.Nil.value));+    };+};+var mapMaybe = function (f) {+    var go = function (__copy_acc) {+        return function (__copy_v) {+            var __tco_acc = __copy_acc;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(acc, v) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return reverse(acc);+                };+                if (v instanceof Data_List_Types.Cons) {+                    var v1 = f(v.value0);+                    if (v1 instanceof Data_Maybe.Nothing) {+                        __tco_acc = acc;+                        __copy_v = v.value1;+                        return;+                    };+                    if (v1 instanceof Data_Maybe.Just) {+                        __tco_acc = new Data_List_Types.Cons(v1.value0, acc);+                        __copy_v = v.value1;+                        return;+                    };+                    throw new Error("Failed pattern match at Data.List line 416, column 5 - line 418, column 32: " + [ v1.constructor.name ]);+                };+                throw new Error("Failed pattern match at Data.List line 412, column 14 - line 418, column 32: " + [ acc.constructor.name, v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_acc, __copy_v);+            };+            return __tco_result;+        };+    };+    return go(Data_List_Types.Nil.value);+};+var manyRec = function (dictMonadRec) {+    return function (dictAlternative) {+        return function (p) {+            var go = function (acc) {+                return Control_Bind.bind((dictMonadRec.Monad0()).Bind1())(Control_Alt.alt((dictAlternative.Plus1()).Alt0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Control_Monad_Rec_Class.Loop.create)(p))(Control_Applicative.pure(dictAlternative.Applicative0())(new Control_Monad_Rec_Class.Done(Data_Unit.unit))))(function (v) {+                    return Control_Applicative.pure(dictAlternative.Applicative0())(Data_Bifunctor.bimap(Control_Monad_Rec_Class.bifunctorStep)(function (v1) {+                        return new Data_List_Types.Cons(v1, acc);+                    })(function (v1) {+                        return reverse(acc);+                    })(v));+                });+            };+            return Control_Monad_Rec_Class.tailRecM(dictMonadRec)(go)(Data_List_Types.Nil.value);+        };+    };+};+var someRec = function (dictMonadRec) {+    return function (dictAlternative) {+        return function (v) {+            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Data_List_Types.Cons.create)(v))(manyRec(dictMonadRec)(dictAlternative)(v));+        };+    };+};+var some = function (dictAlternative) {+    return function (dictLazy) {+        return function (v) {+            return Control_Apply.apply((dictAlternative.Applicative0()).Apply0())(Data_Functor.map(((dictAlternative.Plus1()).Alt0()).Functor0())(Data_List_Types.Cons.create)(v))(Control_Lazy.defer(dictLazy)(function (v1) {+                return many(dictAlternative)(dictLazy)(v);+            }));+        };+    };+};+var many = function (dictAlternative) {+    return function (dictLazy) {+        return function (v) {+            return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(some(dictAlternative)(dictLazy)(v))(Control_Applicative.pure(dictAlternative.Applicative0())(Data_List_Types.Nil.value));+        };+    };+};+var length = Data_Foldable.foldl(Data_List_Types.foldableList)(function (acc) {+    return function (v) {+        return acc + 1 | 0;+    };+})(0);+var last = function (__copy_v) {+    var __tco_done = false;+    var __tco_result;+    function __tco_loop(v) {+        if (v instanceof Data_List_Types.Cons && v.value1 instanceof Data_List_Types.Nil) {+            __tco_done = true;+            return new Data_Maybe.Just(v.value0);+        };+        if (v instanceof Data_List_Types.Cons) {+            __copy_v = v.value1;+            return;+        };+        __tco_done = true;+        return Data_Maybe.Nothing.value;+    };+    while (!__tco_done) {+        __tco_result = __tco_loop(__copy_v);+    };+    return __tco_result;+};+var insertBy = function (v) {+    return function (x) {+        return function (v1) {+            if (v1 instanceof Data_List_Types.Nil) {+                return singleton(x);+            };+            if (v1 instanceof Data_List_Types.Cons) {+                var v2 = v(x)(v1.value0);+                if (v2 instanceof Data_Ordering.GT) {+                    return new Data_List_Types.Cons(v1.value0, insertBy(v)(x)(v1.value1));+                };+                return new Data_List_Types.Cons(x, v1);+            };+            throw new Error("Failed pattern match at Data.List line 214, column 1 - line 214, column 31: " + [ v.constructor.name, x.constructor.name, v1.constructor.name ]);+        };+    };+};+var insertAt = function (v) {+    return function (v1) {+        return function (v2) {+            if (v === 0) {+                return new Data_Maybe.Just(new Data_List_Types.Cons(v1, v2));+            };+            if (v2 instanceof Data_List_Types.Cons) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function (v3) {+                    return new Data_List_Types.Cons(v2.value0, v3);+                })(insertAt(v - 1 | 0)(v1)(v2.value1));+            };+            return Data_Maybe.Nothing.value;+        };+    };+};+var insert = function (dictOrd) {+    return insertBy(Data_Ord.compare(dictOrd));+};+var init = function (lst) {+    return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {+        return v.init;+    })(unsnoc(lst));+};+var index = function (__copy_v) {+    return function (__copy_v1) {+        var __tco_v = __copy_v;+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v, v1) {+            if (v instanceof Data_List_Types.Nil) {+                __tco_done = true;+                return Data_Maybe.Nothing.value;+            };+            if (v instanceof Data_List_Types.Cons && v1 === 0) {+                __tco_done = true;+                return new Data_Maybe.Just(v.value0);+            };+            if (v instanceof Data_List_Types.Cons) {+                __tco_v = v.value1;+                __copy_v1 = v1 - 1 | 0;+                return;+            };+            throw new Error("Failed pattern match at Data.List line 279, column 1 - line 279, column 22: " + [ v.constructor.name, v1.constructor.name ]);+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__tco_v, __copy_v1);+        };+        return __tco_result;+    };+};+var head = function (v) {+    if (v instanceof Data_List_Types.Nil) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Data_List_Types.Cons) {+        return new Data_Maybe.Just(v.value0);+    };+    throw new Error("Failed pattern match at Data.List line 228, column 1 - line 228, column 19: " + [ v.constructor.name ]);+};+var transpose = function (v) {+    if (v instanceof Data_List_Types.Nil) {+        return Data_List_Types.Nil.value;+    };+    if (v instanceof Data_List_Types.Cons && v.value0 instanceof Data_List_Types.Nil) {+        return transpose(v.value1);+    };+    if (v instanceof Data_List_Types.Cons && v.value0 instanceof Data_List_Types.Cons) {+        return new Data_List_Types.Cons(new Data_List_Types.Cons(v.value0.value0, mapMaybe(head)(v.value1)), transpose(new Data_List_Types.Cons(v.value0.value1, mapMaybe(tail)(v.value1))));+    };+    throw new Error("Failed pattern match at Data.List line 727, column 1 - line 727, column 20: " + [ v.constructor.name ]);+};+var groupBy = function (v) {+    return function (v1) {+        if (v1 instanceof Data_List_Types.Nil) {+            return Data_List_Types.Nil.value;+        };+        if (v1 instanceof Data_List_Types.Cons) {+            var v2 = span(v(v1.value0))(v1.value1);+            return new Data_List_Types.Cons(new Data_NonEmpty.NonEmpty(v1.value0, v2.init), groupBy(v)(v2.rest));+        };+        throw new Error("Failed pattern match at Data.List line 590, column 1 - line 590, column 20: " + [ v.constructor.name, v1.constructor.name ]);+    };+};+var group = function (dictEq) {+    return groupBy(Data_Eq.eq(dictEq));+};+var group$prime = function (dictOrd) {+    return function ($341) {+        return group(dictOrd.Eq0())(sort(dictOrd)($341));+    };+};+var fromFoldable = function (dictFoldable) {+    return Data_Foldable.foldr(dictFoldable)(Data_List_Types.Cons.create)(Data_List_Types.Nil.value);+};+var foldM = function (dictMonad) {+    return function (v) {+        return function (a) {+            return function (v1) {+                if (v1 instanceof Data_List_Types.Nil) {+                    return Control_Applicative.pure(dictMonad.Applicative0())(a);+                };+                if (v1 instanceof Data_List_Types.Cons) {+                    return Control_Bind.bind(dictMonad.Bind1())(v(a)(v1.value0))(function (a$prime) {+                        return foldM(dictMonad)(v)(a$prime)(v1.value1);+                    });+                };+                throw new Error("Failed pattern match at Data.List line 738, column 1 - line 738, column 23: " + [ v.constructor.name, a.constructor.name, v1.constructor.name ]);+            };+        };+    };+};+var findIndex = function (fn) {+    var go = function (__copy_v) {+        return function (__copy_v1) {+            var __tco_v = __copy_v;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v, v1) {+                if (v1 instanceof Data_List_Types.Cons) {+                    if (fn(v1.value0)) {+                        __tco_done = true;+                        return new Data_Maybe.Just(v);+                    };+                    if (Data_Boolean.otherwise) {+                        __tco_v = v + 1 | 0;+                        __copy_v1 = v1.value1;+                        return;+                    };+                };+                if (v1 instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                throw new Error("Failed pattern match at Data.List line 299, column 3 - line 300, column 44: " + [ v.constructor.name, v1.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_v, __copy_v1);+            };+            return __tco_result;+        };+    };+    return go(0);+};+var findLastIndex = function (fn) {+    return function (xs) {+        return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {+            return (length(xs) - 1 | 0) - v | 0;+        })(findIndex(fn)(reverse(xs)));+    };+};+var filterM = function (dictMonad) {+    return function (v) {+        return function (v1) {+            if (v1 instanceof Data_List_Types.Nil) {+                return Control_Applicative.pure(dictMonad.Applicative0())(Data_List_Types.Nil.value);+            };+            if (v1 instanceof Data_List_Types.Cons) {+                return Control_Bind.bind(dictMonad.Bind1())(v(v1.value0))(function (v2) {+                    return Control_Bind.bind(dictMonad.Bind1())(filterM(dictMonad)(v)(v1.value1))(function (v3) {+                        return Control_Applicative.pure(dictMonad.Applicative0())((function () {+                            if (v2) {+                                return new Data_List_Types.Cons(v1.value0, v3);+                            };+                            return v3;+                        })());+                    });+                });+            };+            throw new Error("Failed pattern match at Data.List line 401, column 1 - line 401, column 25: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+};+var filter = function (p) {+    var go = function (__copy_acc) {+        return function (__copy_v) {+            var __tco_acc = __copy_acc;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(acc, v) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return reverse(acc);+                };+                if (v instanceof Data_List_Types.Cons) {+                    if (p(v.value0)) {+                        __tco_acc = new Data_List_Types.Cons(v.value0, acc);+                        __copy_v = v.value1;+                        return;+                    };+                    if (Data_Boolean.otherwise) {+                        __tco_acc = acc;+                        __copy_v = v.value1;+                        return;+                    };+                };+                throw new Error("Failed pattern match at Data.List line 385, column 12 - line 390, column 28: " + [ acc.constructor.name, v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_acc, __copy_v);+            };+            return __tco_result;+        };+    };+    return go(Data_List_Types.Nil.value);+};+var intersectBy = function (v) {+    return function (v1) {+        return function (v2) {+            if (v1 instanceof Data_List_Types.Nil) {+                return Data_List_Types.Nil.value;+            };+            if (v2 instanceof Data_List_Types.Nil) {+                return Data_List_Types.Nil.value;+            };+            return filter(function (x) {+                return Data_Foldable.any(Data_List_Types.foldableList)(Data_HeytingAlgebra.heytingAlgebraBoolean)(v(x))(v2);+            })(v1);+        };+    };+};+var intersect = function (dictEq) {+    return intersectBy(Data_Eq.eq(dictEq));+};+var nubBy = function (v) {+    return function (v1) {+        if (v1 instanceof Data_List_Types.Nil) {+            return Data_List_Types.Nil.value;+        };+        if (v1 instanceof Data_List_Types.Cons) {+            return new Data_List_Types.Cons(v1.value0, nubBy(v)(filter(function (y) {+                return !v(v1.value0)(y);+            })(v1.value1)));+        };+        throw new Error("Failed pattern match at Data.List line 619, column 1 - line 619, column 22: " + [ v.constructor.name, v1.constructor.name ]);+    };+};+var nub = function (dictEq) {+    return nubBy(Data_Eq.eq(dictEq));+};+var eqPattern = function (dictEq) {+    return new Data_Eq.Eq(function (x) {+        return function (y) {+            return Data_Eq.eq(Data_List_Types.eqList(dictEq))(x)(y);+        };+    });+};+var ordPattern = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqPattern(dictOrd.Eq0());+    }, function (x) {+        return function (y) {+            return Data_Ord.compare(Data_List_Types.ordList(dictOrd))(x)(y);+        };+    });+};+var elemLastIndex = function (dictEq) {+    return function (x) {+        return findLastIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var elemIndex = function (dictEq) {+    return function (x) {+        return findIndex(function (v) {+            return Data_Eq.eq(dictEq)(v)(x);+        });+    };+};+var dropWhile = function (p) {+    var go = function (__copy_v) {+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v) {+            if (v instanceof Data_List_Types.Cons && p(v.value0)) {+                __copy_v = v.value1;+                return;+            };+            __tco_done = true;+            return v;+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return go;+};+var drop = function (__copy_v) {+    return function (__copy_v1) {+        var __tco_v = __copy_v;+        var __tco_done = false;+        var __tco_result;+        function __tco_loop(v, v1) {+            if (v === 0) {+                __tco_done = true;+                return v1;+            };+            if (v1 instanceof Data_List_Types.Nil) {+                __tco_done = true;+                return Data_List_Types.Nil.value;+            };+            if (v1 instanceof Data_List_Types.Cons) {+                __tco_v = v - 1 | 0;+                __copy_v1 = v1.value1;+                return;+            };+            throw new Error("Failed pattern match at Data.List line 535, column 1 - line 535, column 15: " + [ v.constructor.name, v1.constructor.name ]);+        };+        while (!__tco_done) {+            __tco_result = __tco_loop(__tco_v, __copy_v1);+        };+        return __tco_result;+    };+};+var slice = function (start) {+    return function (end) {+        return function (xs) {+            return take(end - start | 0)(drop(start)(xs));+        };+    };+};+var deleteBy = function (v) {+    return function (v1) {+        return function (v2) {+            if (v2 instanceof Data_List_Types.Nil) {+                return Data_List_Types.Nil.value;+            };+            if (v2 instanceof Data_List_Types.Cons && v(v1)(v2.value0)) {+                return v2.value1;+            };+            if (v2 instanceof Data_List_Types.Cons) {+                return new Data_List_Types.Cons(v2.value0, deleteBy(v)(v1)(v2.value1));+            };+            throw new Error("Failed pattern match at Data.List line 646, column 1 - line 646, column 23: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+        };+    };+};+var unionBy = function (eq) {+    return function (xs) {+        return function (ys) {+            return Data_Semigroup.append(Data_List_Types.semigroupList)(xs)(Data_Foldable.foldl(Data_List_Types.foldableList)(Data_Function.flip(deleteBy(eq)))(nubBy(eq)(ys))(xs));+        };+    };+};+var union = function (dictEq) {+    return unionBy(Data_Eq.eq(dictEq));+};+var deleteAt = function (v) {+    return function (v1) {+        if (v === 0 && v1 instanceof Data_List_Types.Cons) {+            return new Data_Maybe.Just(v1.value1);+        };+        if (v1 instanceof Data_List_Types.Cons) {+            return Data_Functor.map(Data_Maybe.functorMaybe)(function (v2) {+                return new Data_List_Types.Cons(v1.value0, v2);+            })(deleteAt(v - 1 | 0)(v1.value1));+        };+        return Data_Maybe.Nothing.value;+    };+};+var $$delete = function (dictEq) {+    return deleteBy(Data_Eq.eq(dictEq));+};+var difference = function (dictEq) {+    return Data_Foldable.foldl(Data_List_Types.foldableList)(Data_Function.flip($$delete(dictEq)));+};+var concatMap = Data_Function.flip(Control_Bind.bind(Data_List_Types.bindList));+var concat = function (v) {+    return Control_Bind.bind(Data_List_Types.bindList)(v)(Control_Category.id(Control_Category.categoryFn));+};+var catMaybes = mapMaybe(Control_Category.id(Control_Category.categoryFn));+var alterAt = function (v) {+    return function (v1) {+        return function (v2) {+            if (v === 0 && v2 instanceof Data_List_Types.Cons) {+                return Data_Maybe.Just.create((function () {+                    var v3 = v1(v2.value0);+                    if (v3 instanceof Data_Maybe.Nothing) {+                        return v2.value1;+                    };+                    if (v3 instanceof Data_Maybe.Just) {+                        return new Data_List_Types.Cons(v3.value0, v2.value1);+                    };+                    throw new Error("Failed pattern match at Data.List line 349, column 3 - line 351, column 23: " + [ v3.constructor.name ]);+                })());+            };+            if (v2 instanceof Data_List_Types.Cons) {+                return Data_Functor.map(Data_Maybe.functorMaybe)(function (v3) {+                    return new Data_List_Types.Cons(v2.value0, v3);+                })(alterAt(v - 1 | 0)(v1)(v2.value1));+            };+            return Data_Maybe.Nothing.value;+        };+    };+};+var modifyAt = function (n) {+    return function (f) {+        return alterAt(n)(function ($342) {+            return Data_Maybe.Just.create(f($342));+        });+    };+};+module.exports = {+    Pattern: Pattern, +    alterAt: alterAt, +    catMaybes: catMaybes, +    concat: concat, +    concatMap: concatMap, +    "delete": $$delete, +    deleteAt: deleteAt, +    deleteBy: deleteBy, +    difference: difference, +    drop: drop, +    dropWhile: dropWhile, +    elemIndex: elemIndex, +    elemLastIndex: elemLastIndex, +    filter: filter, +    filterM: filterM, +    findIndex: findIndex, +    findLastIndex: findLastIndex, +    foldM: foldM, +    fromFoldable: fromFoldable, +    group: group, +    "group'": group$prime, +    groupBy: groupBy, +    head: head, +    index: index, +    init: init, +    insert: insert, +    insertAt: insertAt, +    insertBy: insertBy, +    intersect: intersect, +    intersectBy: intersectBy, +    last: last, +    length: length, +    many: many, +    manyRec: manyRec, +    mapMaybe: mapMaybe, +    mapWithIndex: mapWithIndex, +    modifyAt: modifyAt, +    nub: nub, +    nubBy: nubBy, +    "null": $$null, +    partition: partition, +    range: range, +    reverse: reverse, +    singleton: singleton, +    slice: slice, +    snoc: snoc, +    some: some, +    someRec: someRec, +    sort: sort, +    sortBy: sortBy, +    span: span, +    stripPrefix: stripPrefix, +    tail: tail, +    take: take, +    takeWhile: takeWhile, +    toUnfoldable: toUnfoldable, +    transpose: transpose, +    uncons: uncons, +    union: union, +    unionBy: unionBy, +    unsnoc: unsnoc, +    unzip: unzip, +    updateAt: updateAt, +    zip: zip, +    zipWith: zipWith, +    zipWithA: zipWithA, +    eqPattern: eqPattern, +    ordPattern: ordPattern, +    newtypePattern: newtypePattern, +    showPattern: showPattern+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Lazy":51,"../Control.Monad.Rec.Class":78,"../Control.Semigroupoid":93,"../Data.Bifunctor":128,"../Data.Boolean":130,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.NonEmpty":216,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Data.Unit":259,"../Prelude":278}],201:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_List = require("../Data.List");+var Data_List_Lazy = require("../Data.List.Lazy");+var Data_List_Lazy_Types = require("../Data.List.Lazy.Types");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var Leaf = (function () {+    function Leaf() {++    };+    Leaf.value = new Leaf();+    return Leaf;+})();+var Two = (function () {+    function Two(value0, value1, value2, value3) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+        this.value3 = value3;+    };+    Two.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return function (value3) {+                    return new Two(value0, value1, value2, value3);+                };+            };+        };+    };+    return Two;+})();+var Three = (function () {+    function Three(value0, value1, value2, value3, value4, value5, value6) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+        this.value3 = value3;+        this.value4 = value4;+        this.value5 = value5;+        this.value6 = value6;+    };+    Three.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return function (value3) {+                    return function (value4) {+                        return function (value5) {+                            return function (value6) {+                                return new Three(value0, value1, value2, value3, value4, value5, value6);+                            };+                        };+                    };+                };+            };+        };+    };+    return Three;+})();+var TwoLeft = (function () {+    function TwoLeft(value0, value1, value2) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+    };+    TwoLeft.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return new TwoLeft(value0, value1, value2);+            };+        };+    };+    return TwoLeft;+})();+var TwoRight = (function () {+    function TwoRight(value0, value1, value2) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+    };+    TwoRight.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return new TwoRight(value0, value1, value2);+            };+        };+    };+    return TwoRight;+})();+var ThreeLeft = (function () {+    function ThreeLeft(value0, value1, value2, value3, value4, value5) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+        this.value3 = value3;+        this.value4 = value4;+        this.value5 = value5;+    };+    ThreeLeft.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return function (value3) {+                    return function (value4) {+                        return function (value5) {+                            return new ThreeLeft(value0, value1, value2, value3, value4, value5);+                        };+                    };+                };+            };+        };+    };+    return ThreeLeft;+})();+var ThreeMiddle = (function () {+    function ThreeMiddle(value0, value1, value2, value3, value4, value5) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+        this.value3 = value3;+        this.value4 = value4;+        this.value5 = value5;+    };+    ThreeMiddle.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return function (value3) {+                    return function (value4) {+                        return function (value5) {+                            return new ThreeMiddle(value0, value1, value2, value3, value4, value5);+                        };+                    };+                };+            };+        };+    };+    return ThreeMiddle;+})();+var ThreeRight = (function () {+    function ThreeRight(value0, value1, value2, value3, value4, value5) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+        this.value3 = value3;+        this.value4 = value4;+        this.value5 = value5;+    };+    ThreeRight.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return function (value3) {+                    return function (value4) {+                        return function (value5) {+                            return new ThreeRight(value0, value1, value2, value3, value4, value5);+                        };+                    };+                };+            };+        };+    };+    return ThreeRight;+})();+var KickUp = (function () {+    function KickUp(value0, value1, value2, value3) {+        this.value0 = value0;+        this.value1 = value1;+        this.value2 = value2;+        this.value3 = value3;+    };+    KickUp.create = function (value0) {+        return function (value1) {+            return function (value2) {+                return function (value3) {+                    return new KickUp(value0, value1, value2, value3);+                };+            };+        };+    };+    return KickUp;+})();+var values = function (v) {+    if (v instanceof Leaf) {+        return Data_List_Types.Nil.value;+    };+    if (v instanceof Two) {+        return Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value2))(values(v.value3)));+    };+    if (v instanceof Three) {+        return Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value2))(Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value3))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value5))(values(v.value6)))));+    };+    throw new Error("Failed pattern match at Data.Map line 554, column 1 - line 554, column 18: " + [ v.constructor.name ]);+};+var size = function (v) {+    if (v instanceof Leaf) {+        return 0;+    };+    if (v instanceof Two) {+        return (1 + size(v.value0) | 0) + size(v.value3) | 0;+    };+    if (v instanceof Three) {+        return ((2 + size(v.value0) | 0) + size(v.value3) | 0) + size(v.value6) | 0;+    };+    throw new Error("Failed pattern match at Data.Map line 581, column 1 - line 582, column 1: " + [ v.constructor.name ]);+};+var singleton = function (k) {+    return function (v) {+        return new Two(Leaf.value, k, v, Leaf.value);+    };+};+var toAscUnfoldable = function (dictUnfoldable) {+    return function (m) {+        var go = function (__copy_v) {+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                if (v instanceof Data_List_Types.Cons) {+                    if (v.value0 instanceof Leaf) {+                        __copy_v = v.value1;+                        return;+                    };+                    if (v.value0 instanceof Two && (v.value0.value0 instanceof Leaf && v.value0.value3 instanceof Leaf)) {+                        __tco_done = true;+                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), v.value1));+                    };+                    if (v.value0 instanceof Two && v.value0.value0 instanceof Leaf) {+                        __tco_done = true;+                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(v.value0.value3, v.value1)));+                    };+                    if (v.value0 instanceof Two) {+                        __copy_v = new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(singleton(v.value0.value1)(v.value0.value2), new Data_List_Types.Cons(v.value0.value3, v.value1)));+                        return;+                    };+                    if (v.value0 instanceof Three) {+                        __copy_v = new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(singleton(v.value0.value1)(v.value0.value2), new Data_List_Types.Cons(v.value0.value3, new Data_List_Types.Cons(singleton(v.value0.value4)(v.value0.value5), new Data_List_Types.Cons(v.value0.value6, v.value1)))));+                        return;+                    };+                    throw new Error("Failed pattern match at Data.Map line 535, column 18 - line 544, column 71: " + [ v.value0.constructor.name ]);+                };+                throw new Error("Failed pattern match at Data.Map line 533, column 21 - line 544, column 71: " + [ v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__copy_v);+            };+            return __tco_result;+        };+        return Data_Unfoldable.unfoldr(dictUnfoldable)(go)(new Data_List_Types.Cons(m, Data_List_Types.Nil.value));+    };+};+var toAscArray = toAscUnfoldable(Data_Unfoldable.unfoldableArray);+var toUnfoldable = function (dictUnfoldable) {+    return function (m) {+        var go = function (__copy_v) {+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                if (v instanceof Data_List_Types.Cons) {+                    if (v.value0 instanceof Leaf) {+                        __copy_v = v.value1;+                        return;+                    };+                    if (v.value0 instanceof Two) {+                        __tco_done = true;+                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(v.value0.value3, v.value1))));+                    };+                    if (v.value0 instanceof Three) {+                        __tco_done = true;+                        return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(singleton(v.value0.value4)(v.value0.value5), new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(v.value0.value3, new Data_List_Types.Cons(v.value0.value6, v.value1))))));+                    };+                    throw new Error("Failed pattern match at Data.Map line 524, column 18 - line 529, column 77: " + [ v.value0.constructor.name ]);+                };+                throw new Error("Failed pattern match at Data.Map line 522, column 18 - line 529, column 77: " + [ v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__copy_v);+            };+            return __tco_result;+        };+        return Data_Unfoldable.unfoldr(dictUnfoldable)(go)(new Data_List_Types.Cons(m, Data_List_Types.Nil.value));+    };+};+var showTree = function (dictShow) {+    return function (dictShow1) {+        return function (v) {+            if (v instanceof Leaf) {+                return "Leaf";+            };+            if (v instanceof Two) {+                return "Two (" + (showTree(dictShow)(dictShow1)(v.value0) + (") (" + (Data_Show.show(dictShow)(v.value1) + (") (" + (Data_Show.show(dictShow1)(v.value2) + (") (" + (showTree(dictShow)(dictShow1)(v.value3) + ")")))))));+            };+            if (v instanceof Three) {+                return "Three (" + (showTree(dictShow)(dictShow1)(v.value0) + (") (" + (Data_Show.show(dictShow)(v.value1) + (") (" + (Data_Show.show(dictShow1)(v.value2) + (") (" + (showTree(dictShow)(dictShow1)(v.value3) + (") (" + (Data_Show.show(dictShow)(v.value4) + (") (" + (Data_Show.show(dictShow1)(v.value5) + (") (" + (showTree(dictShow)(dictShow1)(v.value6) + ")")))))))))))));+            };+            throw new Error("Failed pattern match at Data.Map line 116, column 1 - line 117, column 1: " + [ v.constructor.name ]);+        };+    };+};+var showMap = function (dictShow) {+    return function (dictShow1) {+        return new Data_Show.Show(function (m) {+            return "(fromFoldable " + (Data_Show.show(Data_Show.showArray(Data_Tuple.showTuple(dictShow)(dictShow1)))(toAscArray(m)) + ")");+        });+    };+};+var mapWithKey = function (v) {+    return function (v1) {+        if (v1 instanceof Leaf) {+            return Leaf.value;+        };+        if (v1 instanceof Two) {+            return new Two(mapWithKey(v)(v1.value0), v1.value1, v(v1.value1)(v1.value2), mapWithKey(v)(v1.value3));+        };+        if (v1 instanceof Three) {+            return new Three(mapWithKey(v)(v1.value0), v1.value1, v(v1.value1)(v1.value2), mapWithKey(v)(v1.value3), v1.value4, v(v1.value4)(v1.value5), mapWithKey(v)(v1.value6));+        };+        throw new Error("Failed pattern match at Data.Map line 587, column 1 - line 587, column 25: " + [ v.constructor.name, v1.constructor.name ]);+    };+};+var lookupLE = function (dictOrd) {+    return function (k) {+        var comp = Data_Ord.compare(dictOrd);+        var go = function (v) {+            if (v instanceof Leaf) {+                return Data_Maybe.Nothing.value;+            };+            if (v instanceof Two) {+                var v2 = comp(k)(v.value1);+                if (v2 instanceof Data_Ordering.EQ) {+                    return new Data_Maybe.Just({+                        key: v.value1, +                        value: v.value2+                    });+                };+                if (v2 instanceof Data_Ordering.GT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value1, +                        value: v.value2+                    })(go(v.value3)));+                };+                if (v2 instanceof Data_Ordering.LT) {+                    return go(v.value0);+                };+                throw new Error("Failed pattern match at Data.Map line 187, column 33 - line 190, column 20: " + [ v2.constructor.name ]);+            };+            if (v instanceof Three) {+                var v3 = comp(k)(v.value4);+                if (v3 instanceof Data_Ordering.EQ) {+                    return new Data_Maybe.Just({+                        key: v.value4, +                        value: v.value5+                    });+                };+                if (v3 instanceof Data_Ordering.GT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value4, +                        value: v.value5+                    })(go(v.value6)));+                };+                if (v3 instanceof Data_Ordering.LT) {+                    return go(new Two(v.value0, v.value1, v.value2, v.value3));+                };+                throw new Error("Failed pattern match at Data.Map line 191, column 45 - line 194, column 36: " + [ v3.constructor.name ]);+            };+            throw new Error("Failed pattern match at Data.Map line 181, column 14 - line 194, column 36: " + [ v.constructor.name ]);+        };+        return go;+    };+};+var lookupGE = function (dictOrd) {+    return function (k) {+        var comp = Data_Ord.compare(dictOrd);+        var go = function (v) {+            if (v instanceof Leaf) {+                return Data_Maybe.Nothing.value;+            };+            if (v instanceof Two) {+                var v2 = comp(k)(v.value1);+                if (v2 instanceof Data_Ordering.EQ) {+                    return new Data_Maybe.Just({+                        key: v.value1, +                        value: v.value2+                    });+                };+                if (v2 instanceof Data_Ordering.LT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value1, +                        value: v.value2+                    })(go(v.value0)));+                };+                if (v2 instanceof Data_Ordering.GT) {+                    return go(v.value3);+                };+                throw new Error("Failed pattern match at Data.Map line 221, column 33 - line 224, column 21: " + [ v2.constructor.name ]);+            };+            if (v instanceof Three) {+                var v3 = comp(k)(v.value1);+                if (v3 instanceof Data_Ordering.EQ) {+                    return new Data_Maybe.Just({+                        key: v.value1, +                        value: v.value2+                    });+                };+                if (v3 instanceof Data_Ordering.LT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value1, +                        value: v.value2+                    })(go(v.value0)));+                };+                if (v3 instanceof Data_Ordering.GT) {+                    return go(new Two(v.value3, v.value4, v.value5, v.value6));+                };+                throw new Error("Failed pattern match at Data.Map line 225, column 45 - line 228, column 37: " + [ v3.constructor.name ]);+            };+            throw new Error("Failed pattern match at Data.Map line 215, column 14 - line 228, column 37: " + [ v.constructor.name ]);+        };+        return go;+    };+};+var lookup = function (dictOrd) {+    return function (k) {+        var comp = Data_Ord.compare(dictOrd);+        var go = function (__copy_v) {+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(v) {+                if (v instanceof Leaf) {+                    __tco_done = true;+                    return Data_Maybe.Nothing.value;+                };+                if (v instanceof Two) {+                    var v2 = comp(k)(v.value1);+                    if (v2 instanceof Data_Ordering.EQ) {+                        __tco_done = true;+                        return new Data_Maybe.Just(v.value2);+                    };+                    if (v2 instanceof Data_Ordering.LT) {+                        __copy_v = v.value0;+                        return;+                    };+                    __copy_v = v.value3;+                    return;+                };+                if (v instanceof Three) {+                    var v3 = comp(k)(v.value1);+                    if (v3 instanceof Data_Ordering.EQ) {+                        __tco_done = true;+                        return new Data_Maybe.Just(v.value2);+                    };+                    var v4 = comp(k)(v.value4);+                    if (v4 instanceof Data_Ordering.EQ) {+                        __tco_done = true;+                        return new Data_Maybe.Just(v.value5);+                    };+                    if (v3 instanceof Data_Ordering.LT) {+                        __copy_v = v.value0;+                        return;+                    };+                    if (v4 instanceof Data_Ordering.GT) {+                        __copy_v = v.value6;+                        return;+                    };+                    __copy_v = v.value3;+                    return;+                };+                throw new Error("Failed pattern match at Data.Map line 157, column 12 - line 176, column 29: " + [ v.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__copy_v);+            };+            return __tco_result;+        };+        return go;+    };+};+var member = function (dictOrd) {+    return function (k) {+        return function (m) {+            return Data_Maybe.isJust(lookup(dictOrd)(k)(m));+        };+    };+};+var keys = function (v) {+    if (v instanceof Leaf) {+        return Data_List_Types.Nil.value;+    };+    if (v instanceof Two) {+        return Data_Semigroup.append(Data_List_Types.semigroupList)(keys(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value1))(keys(v.value3)));+    };+    if (v instanceof Three) {+        return Data_Semigroup.append(Data_List_Types.semigroupList)(keys(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value1))(Data_Semigroup.append(Data_List_Types.semigroupList)(keys(v.value3))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value4))(keys(v.value6)))));+    };+    throw new Error("Failed pattern match at Data.Map line 548, column 1 - line 548, column 16: " + [ v.constructor.name ]);+};+var isSubmap = function (dictOrd) {+    return function (dictEq) {+        return function (m1) {+            return function (m2) {+                var f = function (v) {+                    return Data_Eq.eq(Data_Maybe.eqMaybe(dictEq))(lookup(dictOrd)(v.value0)(m2))(new Data_Maybe.Just(v.value1));+                };+                return Data_Foldable.all(Data_List_Lazy_Types.foldableList)(Data_HeytingAlgebra.heytingAlgebraBoolean)(f)(toUnfoldable(Data_List_Lazy_Types.unfoldableList)(m1));+            };+        };+    };+};+var isEmpty = function (v) {+    if (v instanceof Leaf) {+        return true;+    };+    return false;+};+var functorMap = new Data_Functor.Functor(function (v) {+    return function (v1) {+        if (v1 instanceof Leaf) {+            return Leaf.value;+        };+        if (v1 instanceof Two) {+            return new Two(Data_Functor.map(functorMap)(v)(v1.value0), v1.value1, v(v1.value2), Data_Functor.map(functorMap)(v)(v1.value3));+        };+        if (v1 instanceof Three) {+            return new Three(Data_Functor.map(functorMap)(v)(v1.value0), v1.value1, v(v1.value2), Data_Functor.map(functorMap)(v)(v1.value3), v1.value4, v(v1.value5), Data_Functor.map(functorMap)(v)(v1.value6));+        };+        throw new Error("Failed pattern match at Data.Map line 88, column 3 - line 88, column 20: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var fromZipper = function (__copy_dictOrd) {+    return function (__copy_v) {+        return function (__copy_tree) {+            var __tco_dictOrd = __copy_dictOrd;+            var __tco_v = __copy_v;+            var __tco_done = false;+            var __tco_result;+            function __tco_loop(dictOrd, v, tree) {+                if (v instanceof Data_List_Types.Nil) {+                    __tco_done = true;+                    return tree;+                };+                if (v instanceof Data_List_Types.Cons) {+                    if (v.value0 instanceof TwoLeft) {+                        __tco_dictOrd = dictOrd;+                        __tco_v = v.value1;+                        __copy_tree = new Two(tree, v.value0.value0, v.value0.value1, v.value0.value2);+                        return;+                    };+                    if (v.value0 instanceof TwoRight) {+                        __tco_dictOrd = dictOrd;+                        __tco_v = v.value1;+                        __copy_tree = new Two(v.value0.value0, v.value0.value1, v.value0.value2, tree);+                        return;+                    };+                    if (v.value0 instanceof ThreeLeft) {+                        __tco_dictOrd = dictOrd;+                        __tco_v = v.value1;+                        __copy_tree = new Three(tree, v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5);+                        return;+                    };+                    if (v.value0 instanceof ThreeMiddle) {+                        __tco_dictOrd = dictOrd;+                        __tco_v = v.value1;+                        __copy_tree = new Three(v.value0.value0, v.value0.value1, v.value0.value2, tree, v.value0.value3, v.value0.value4, v.value0.value5);+                        return;+                    };+                    if (v.value0 instanceof ThreeRight) {+                        __tco_dictOrd = dictOrd;+                        __tco_v = v.value1;+                        __copy_tree = new Three(v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5, tree);+                        return;+                    };+                    throw new Error("Failed pattern match at Data.Map line 376, column 3 - line 381, column 88: " + [ v.value0.constructor.name ]);+                };+                throw new Error("Failed pattern match at Data.Map line 374, column 1 - line 374, column 27: " + [ v.constructor.name, tree.constructor.name ]);+            };+            while (!__tco_done) {+                __tco_result = __tco_loop(__tco_dictOrd, __tco_v, __copy_tree);+            };+            return __tco_result;+        };+    };+};+var insert = function (dictOrd) {+    return function (k) {+        return function (v) {+            var up = function (__copy_v1) {+                return function (__copy_v2) {+                    var __tco_v1 = __copy_v1;+                    var __tco_done = false;+                    var __tco_result;+                    function __tco_loop(v1, v2) {+                        if (v1 instanceof Data_List_Types.Nil) {+                            __tco_done = true;+                            return new Two(v2.value0, v2.value1, v2.value2, v2.value3);+                        };+                        if (v1 instanceof Data_List_Types.Cons) {+                            if (v1.value0 instanceof TwoLeft) {+                                __tco_done = true;+                                return fromZipper(dictOrd)(v1.value1)(new Three(v2.value0, v2.value1, v2.value2, v2.value3, v1.value0.value0, v1.value0.value1, v1.value0.value2));+                            };+                            if (v1.value0 instanceof TwoRight) {+                                __tco_done = true;+                                return fromZipper(dictOrd)(v1.value1)(new Three(v1.value0.value0, v1.value0.value1, v1.value0.value2, v2.value0, v2.value1, v2.value2, v2.value3));+                            };+                            if (v1.value0 instanceof ThreeLeft) {+                                __tco_v1 = v1.value1;+                                __copy_v2 = new KickUp(new Two(v2.value0, v2.value1, v2.value2, v2.value3), v1.value0.value0, v1.value0.value1, new Two(v1.value0.value2, v1.value0.value3, v1.value0.value4, v1.value0.value5));+                                return;+                            };+                            if (v1.value0 instanceof ThreeMiddle) {+                                __tco_v1 = v1.value1;+                                __copy_v2 = new KickUp(new Two(v1.value0.value0, v1.value0.value1, v1.value0.value2, v2.value0), v2.value1, v2.value2, new Two(v2.value3, v1.value0.value3, v1.value0.value4, v1.value0.value5));+                                return;+                            };+                            if (v1.value0 instanceof ThreeRight) {+                                __tco_v1 = v1.value1;+                                __copy_v2 = new KickUp(new Two(v1.value0.value0, v1.value0.value1, v1.value0.value2, v1.value0.value3), v1.value0.value4, v1.value0.value5, new Two(v2.value0, v2.value1, v2.value2, v2.value3));+                                return;+                            };+                            throw new Error("Failed pattern match at Data.Map line 412, column 5 - line 417, column 108: " + [ v1.value0.constructor.name, v2.constructor.name ]);+                        };+                        throw new Error("Failed pattern match at Data.Map line 410, column 3 - line 410, column 58: " + [ v1.constructor.name, v2.constructor.name ]);+                    };+                    while (!__tco_done) {+                        __tco_result = __tco_loop(__tco_v1, __copy_v2);+                    };+                    return __tco_result;+                };+            };+            var comp = Data_Ord.compare(dictOrd);+            var down = function (__copy_ctx) {+                return function (__copy_v1) {+                    var __tco_ctx = __copy_ctx;+                    var __tco_done = false;+                    var __tco_result;+                    function __tco_loop(ctx, v1) {+                        if (v1 instanceof Leaf) {+                            __tco_done = true;+                            return up(ctx)(new KickUp(Leaf.value, k, v, Leaf.value));+                        };+                        if (v1 instanceof Two) {+                            var v2 = comp(k)(v1.value1);+                            if (v2 instanceof Data_Ordering.EQ) {+                                __tco_done = true;+                                return fromZipper(dictOrd)(ctx)(new Two(v1.value0, k, v, v1.value3));+                            };+                            if (v2 instanceof Data_Ordering.LT) {+                                __tco_ctx = new Data_List_Types.Cons(new TwoLeft(v1.value1, v1.value2, v1.value3), ctx);+                                __copy_v1 = v1.value0;+                                return;+                            };+                            __tco_ctx = new Data_List_Types.Cons(new TwoRight(v1.value0, v1.value1, v1.value2), ctx);+                            __copy_v1 = v1.value3;+                            return;+                        };+                        if (v1 instanceof Three) {+                            var v3 = comp(k)(v1.value1);+                            if (v3 instanceof Data_Ordering.EQ) {+                                __tco_done = true;+                                return fromZipper(dictOrd)(ctx)(new Three(v1.value0, k, v, v1.value3, v1.value4, v1.value5, v1.value6));+                            };+                            var v4 = comp(k)(v1.value4);+                            if (v4 instanceof Data_Ordering.EQ) {+                                __tco_done = true;+                                return fromZipper(dictOrd)(ctx)(new Three(v1.value0, v1.value1, v1.value2, v1.value3, k, v, v1.value6));+                            };+                            if (v3 instanceof Data_Ordering.LT) {+                                __tco_ctx = new Data_List_Types.Cons(new ThreeLeft(v1.value1, v1.value2, v1.value3, v1.value4, v1.value5, v1.value6), ctx);+                                __copy_v1 = v1.value0;+                                return;+                            };+                            if (v3 instanceof Data_Ordering.GT && v4 instanceof Data_Ordering.LT) {+                                __tco_ctx = new Data_List_Types.Cons(new ThreeMiddle(v1.value0, v1.value1, v1.value2, v1.value4, v1.value5, v1.value6), ctx);+                                __copy_v1 = v1.value3;+                                return;+                            };+                            __tco_ctx = new Data_List_Types.Cons(new ThreeRight(v1.value0, v1.value1, v1.value2, v1.value3, v1.value4, v1.value5), ctx);+                            __copy_v1 = v1.value6;+                            return;+                        };+                        throw new Error("Failed pattern match at Data.Map line 393, column 3 - line 393, column 48: " + [ ctx.constructor.name, v1.constructor.name ]);+                    };+                    while (!__tco_done) {+                        __tco_result = __tco_loop(__tco_ctx, __copy_v1);+                    };+                    return __tco_result;+                };+            };+            return down(Data_List_Types.Nil.value);+        };+    };+};+var pop = function (dictOrd) {+    return function (k) {+        var up = function (ctxs) {+            return function (tree) {+                if (ctxs instanceof Data_List_Types.Nil) {+                    return tree;+                };+                if (ctxs instanceof Data_List_Types.Cons) {+                    var __unused = function (dictPartial1) {+                        return function ($dollar51) {+                            return $dollar51;+                        };+                    };+                    return __unused()((function () {+                        if (ctxs.value0 instanceof TwoLeft && (ctxs.value0.value2 instanceof Leaf && tree instanceof Leaf)) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(Leaf.value, ctxs.value0.value0, ctxs.value0.value1, Leaf.value));+                        };+                        if (ctxs.value0 instanceof TwoRight && (ctxs.value0.value0 instanceof Leaf && tree instanceof Leaf)) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(Leaf.value, ctxs.value0.value1, ctxs.value0.value2, Leaf.value));+                        };+                        if (ctxs.value0 instanceof TwoLeft && ctxs.value0.value2 instanceof Two) {+                            return up(ctxs.value1)(new Three(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0, ctxs.value0.value2.value1, ctxs.value0.value2.value2, ctxs.value0.value2.value3));+                        };+                        if (ctxs.value0 instanceof TwoRight && ctxs.value0.value0 instanceof Two) {+                            return up(ctxs.value1)(new Three(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3, ctxs.value0.value1, ctxs.value0.value2, tree));+                        };+                        if (ctxs.value0 instanceof TwoLeft && ctxs.value0.value2 instanceof Three) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(new Two(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0), ctxs.value0.value2.value1, ctxs.value0.value2.value2, new Two(ctxs.value0.value2.value3, ctxs.value0.value2.value4, ctxs.value0.value2.value5, ctxs.value0.value2.value6)));+                        };+                        if (ctxs.value0 instanceof TwoRight && ctxs.value0.value0 instanceof Three) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(new Two(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3), ctxs.value0.value0.value4, ctxs.value0.value0.value5, new Two(ctxs.value0.value0.value6, ctxs.value0.value1, ctxs.value0.value2, tree)));+                        };+                        if (ctxs.value0 instanceof ThreeLeft && (ctxs.value0.value2 instanceof Leaf && (ctxs.value0.value5 instanceof Leaf && tree instanceof Leaf))) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(Leaf.value, ctxs.value0.value0, ctxs.value0.value1, Leaf.value, ctxs.value0.value3, ctxs.value0.value4, Leaf.value));+                        };+                        if (ctxs.value0 instanceof ThreeMiddle && (ctxs.value0.value0 instanceof Leaf && (ctxs.value0.value5 instanceof Leaf && tree instanceof Leaf))) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(Leaf.value, ctxs.value0.value1, ctxs.value0.value2, Leaf.value, ctxs.value0.value3, ctxs.value0.value4, Leaf.value));+                        };+                        if (ctxs.value0 instanceof ThreeRight && (ctxs.value0.value0 instanceof Leaf && (ctxs.value0.value3 instanceof Leaf && tree instanceof Leaf))) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(Leaf.value, ctxs.value0.value1, ctxs.value0.value2, Leaf.value, ctxs.value0.value4, ctxs.value0.value5, Leaf.value));+                        };+                        if (ctxs.value0 instanceof ThreeLeft && ctxs.value0.value2 instanceof Two) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(new Three(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0, ctxs.value0.value2.value1, ctxs.value0.value2.value2, ctxs.value0.value2.value3), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));+                        };+                        if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value0 instanceof Two) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(new Three(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3, ctxs.value0.value1, ctxs.value0.value2, tree), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));+                        };+                        if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value5 instanceof Two) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Three(tree, ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5.value0, ctxs.value0.value5.value1, ctxs.value0.value5.value2, ctxs.value0.value5.value3)));+                        };+                        if (ctxs.value0 instanceof ThreeRight && ctxs.value0.value3 instanceof Two) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Two(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Three(ctxs.value0.value3.value0, ctxs.value0.value3.value1, ctxs.value0.value3.value2, ctxs.value0.value3.value3, ctxs.value0.value4, ctxs.value0.value5, tree)));+                        };+                        if (ctxs.value0 instanceof ThreeLeft && ctxs.value0.value2 instanceof Three) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(new Two(tree, ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2.value0), ctxs.value0.value2.value1, ctxs.value0.value2.value2, new Two(ctxs.value0.value2.value3, ctxs.value0.value2.value4, ctxs.value0.value2.value5, ctxs.value0.value2.value6), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));+                        };+                        if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value0 instanceof Three) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(new Two(ctxs.value0.value0.value0, ctxs.value0.value0.value1, ctxs.value0.value0.value2, ctxs.value0.value0.value3), ctxs.value0.value0.value4, ctxs.value0.value0.value5, new Two(ctxs.value0.value0.value6, ctxs.value0.value1, ctxs.value0.value2, tree), ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5));+                        };+                        if (ctxs.value0 instanceof ThreeMiddle && ctxs.value0.value5 instanceof Three) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Two(tree, ctxs.value0.value3, ctxs.value0.value4, ctxs.value0.value5.value0), ctxs.value0.value5.value1, ctxs.value0.value5.value2, new Two(ctxs.value0.value5.value3, ctxs.value0.value5.value4, ctxs.value0.value5.value5, ctxs.value0.value5.value6)));+                        };+                        if (ctxs.value0 instanceof ThreeRight && ctxs.value0.value3 instanceof Three) {+                            return fromZipper(dictOrd)(ctxs.value1)(new Three(ctxs.value0.value0, ctxs.value0.value1, ctxs.value0.value2, new Two(ctxs.value0.value3.value0, ctxs.value0.value3.value1, ctxs.value0.value3.value2, ctxs.value0.value3.value3), ctxs.value0.value3.value4, ctxs.value0.value3.value5, new Two(ctxs.value0.value3.value6, ctxs.value0.value4, ctxs.value0.value5, tree)));+                        };+                        throw new Error("Failed pattern match at Data.Map line 462, column 9 - line 479, column 136: " + [ ctxs.value0.constructor.name, tree.constructor.name ]);+                    })());+                };+                throw new Error("Failed pattern match at Data.Map line 459, column 5 - line 479, column 136: " + [ ctxs.constructor.name ]);+            };+        };+        var removeMaxNode = function (ctx) {+            return function (m) {+                var __unused = function (dictPartial1) {+                    return function ($dollar53) {+                        return $dollar53;+                    };+                };+                return __unused()((function () {+                    if (m instanceof Two && (m.value0 instanceof Leaf && m.value3 instanceof Leaf)) {+                        return up(ctx)(Leaf.value);+                    };+                    if (m instanceof Two) {+                        return removeMaxNode(new Data_List_Types.Cons(new TwoRight(m.value0, m.value1, m.value2), ctx))(m.value3);+                    };+                    if (m instanceof Three && (m.value0 instanceof Leaf && (m.value3 instanceof Leaf && m.value6 instanceof Leaf))) {+                        return up(new Data_List_Types.Cons(new TwoRight(Leaf.value, m.value1, m.value2), ctx))(Leaf.value);+                    };+                    if (m instanceof Three) {+                        return removeMaxNode(new Data_List_Types.Cons(new ThreeRight(m.value0, m.value1, m.value2, m.value3, m.value4, m.value5), ctx))(m.value6);+                    };+                    throw new Error("Failed pattern match at Data.Map line 491, column 5 - line 495, column 107: " + [ m.constructor.name ]);+                })());+            };+        };+        var maxNode = function (m) {+            var __unused = function (dictPartial1) {+                return function ($dollar55) {+                    return $dollar55;+                };+            };+            return __unused()((function () {+                if (m instanceof Two && m.value3 instanceof Leaf) {+                    return {+                        key: m.value1, +                        value: m.value2+                    };+                };+                if (m instanceof Two) {+                    return maxNode(m.value3);+                };+                if (m instanceof Three && m.value6 instanceof Leaf) {+                    return {+                        key: m.value4, +                        value: m.value5+                    };+                };+                if (m instanceof Three) {+                    return maxNode(m.value6);+                };+                throw new Error("Failed pattern match at Data.Map line 482, column 33 - line 486, column 45: " + [ m.constructor.name ]);+            })());+        };+        var comp = Data_Ord.compare(dictOrd);+        var down = function (__copy_ctx) {+            return function (__copy_m) {+                var __tco_ctx = __copy_ctx;+                var __tco_done = false;+                var __tco_result;+                function __tco_loop(ctx, m) {+                    if (m instanceof Leaf) {+                        __tco_done = true;+                        return Data_Maybe.Nothing.value;+                    };+                    if (m instanceof Two) {+                        var v = comp(k)(m.value1);+                        if (m.value3 instanceof Leaf && v instanceof Data_Ordering.EQ) {+                            __tco_done = true;+                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, up(ctx)(Leaf.value)));+                        };+                        if (v instanceof Data_Ordering.EQ) {+                            var max = maxNode(m.value0);+                            __tco_done = true;+                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, removeMaxNode(new Data_List_Types.Cons(new TwoLeft(max.key, max.value, m.value3), ctx))(m.value0)));+                        };+                        if (v instanceof Data_Ordering.LT) {+                            __tco_ctx = new Data_List_Types.Cons(new TwoLeft(m.value1, m.value2, m.value3), ctx);+                            __copy_m = m.value0;+                            return;+                        };+                        __tco_ctx = new Data_List_Types.Cons(new TwoRight(m.value0, m.value1, m.value2), ctx);+                        __copy_m = m.value3;+                        return;+                    };+                    if (m instanceof Three) {+                        var leaves = (function () {+                            if (m.value0 instanceof Leaf && (m.value3 instanceof Leaf && m.value6 instanceof Leaf)) {+                                return true;+                            };+                            return false;+                        })();+                        var v = comp(k)(m.value4);+                        var v3 = comp(k)(m.value1);+                        if (leaves && v3 instanceof Data_Ordering.EQ) {+                            __tco_done = true;+                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, fromZipper(dictOrd)(ctx)(new Two(Leaf.value, m.value4, m.value5, Leaf.value))));+                        };+                        if (leaves && v instanceof Data_Ordering.EQ) {+                            __tco_done = true;+                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value5, fromZipper(dictOrd)(ctx)(new Two(Leaf.value, m.value1, m.value2, Leaf.value))));+                        };+                        if (v3 instanceof Data_Ordering.EQ) {+                            var max = maxNode(m.value0);+                            __tco_done = true;+                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value2, removeMaxNode(new Data_List_Types.Cons(new ThreeLeft(max.key, max.value, m.value3, m.value4, m.value5, m.value6), ctx))(m.value0)));+                        };+                        if (v instanceof Data_Ordering.EQ) {+                            var max = maxNode(m.value3);+                            __tco_done = true;+                            return new Data_Maybe.Just(new Data_Tuple.Tuple(m.value5, removeMaxNode(new Data_List_Types.Cons(new ThreeMiddle(m.value0, m.value1, m.value2, max.key, max.value, m.value6), ctx))(m.value3)));+                        };+                        if (v3 instanceof Data_Ordering.LT) {+                            __tco_ctx = new Data_List_Types.Cons(new ThreeLeft(m.value1, m.value2, m.value3, m.value4, m.value5, m.value6), ctx);+                            __copy_m = m.value0;+                            return;+                        };+                        if (v3 instanceof Data_Ordering.GT && v instanceof Data_Ordering.LT) {+                            __tco_ctx = new Data_List_Types.Cons(new ThreeMiddle(m.value0, m.value1, m.value2, m.value4, m.value5, m.value6), ctx);+                            __copy_m = m.value3;+                            return;+                        };+                        __tco_ctx = new Data_List_Types.Cons(new ThreeRight(m.value0, m.value1, m.value2, m.value3, m.value4, m.value5), ctx);+                        __copy_m = m.value6;+                        return;+                    };+                    throw new Error("Failed pattern match at Data.Map line 432, column 34 - line 455, column 80: " + [ m.constructor.name ]);+                };+                while (!__tco_done) {+                    __tco_result = __tco_loop(__tco_ctx, __copy_m);+                };+                return __tco_result;+            };+        };+        return down(Data_List_Types.Nil.value);+    };+};+var foldableMap = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return function (m) {+            return Data_Foldable.foldMap(Data_List_Types.foldableList)(dictMonoid)(f)(values(m));+        };+    };+}, function (f) {+    return function (z) {+        return function (m) {+            return Data_Foldable.foldl(Data_List_Types.foldableList)(f)(z)(values(m));+        };+    };+}, function (f) {+    return function (z) {+        return function (m) {+            return Data_Foldable.foldr(Data_List_Types.foldableList)(f)(z)(values(m));+        };+    };+});+var traversableMap = new Data_Traversable.Traversable(function () {+    return foldableMap;+}, function () {+    return functorMap;+}, function (dictApplicative) {+    return Data_Traversable.traverse(traversableMap)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            if (v instanceof Leaf) {+                return Control_Applicative.pure(dictApplicative)(Leaf.value);+            };+            if (v instanceof Two) {+                return Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Two.create)(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value0)))(Control_Applicative.pure(dictApplicative)(v.value1)))(f(v.value2)))(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value3));+            };+            if (v instanceof Three) {+                return Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Three.create)(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value0)))(Control_Applicative.pure(dictApplicative)(v.value1)))(f(v.value2)))(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value3)))(Control_Applicative.pure(dictApplicative)(v.value4)))(f(v.value5)))(Data_Traversable.traverse(traversableMap)(dictApplicative)(f)(v.value6));+            };+            throw new Error("Failed pattern match at Data.Map line 98, column 3 - line 98, column 30: " + [ f.constructor.name, v.constructor.name ]);+        };+    };+});+var foldSubmap = function (dictOrd) {+    return function (dictMonoid) {+        return function (kmin) {+            return function (kmax) {+                return function (f) {+                    var tooSmall = (function () {+                        if (kmin instanceof Data_Maybe.Just) {+                            return function (k) {+                                return Data_Ord.lessThan(dictOrd)(k)(kmin.value0);+                            };+                        };+                        if (kmin instanceof Data_Maybe.Nothing) {+                            return Data_Function["const"](false);+                        };+                        throw new Error("Failed pattern match at Data.Map line 277, column 7 - line 281, column 22: " + [ kmin.constructor.name ]);+                    })();+                    var tooLarge = (function () {+                        if (kmax instanceof Data_Maybe.Just) {+                            return function (k) {+                                return Data_Ord.greaterThan(dictOrd)(k)(kmax.value0);+                            };+                        };+                        if (kmax instanceof Data_Maybe.Nothing) {+                            return Data_Function["const"](false);+                        };+                        throw new Error("Failed pattern match at Data.Map line 284, column 7 - line 288, column 22: " + [ kmax.constructor.name ]);+                    })();+                    var inBounds = (function () {+                        if (kmin instanceof Data_Maybe.Just && kmax instanceof Data_Maybe.Just) {+                            return function (k) {+                                return Data_Ord.lessThanOrEq(dictOrd)(kmin.value0)(k) && Data_Ord.lessThanOrEq(dictOrd)(k)(kmax.value0);+                            };+                        };+                        if (kmin instanceof Data_Maybe.Just && kmax instanceof Data_Maybe.Nothing) {+                            return function (k) {+                                return Data_Ord.lessThanOrEq(dictOrd)(kmin.value0)(k);+                            };+                        };+                        if (kmin instanceof Data_Maybe.Nothing && kmax instanceof Data_Maybe.Just) {+                            return function (k) {+                                return Data_Ord.lessThanOrEq(dictOrd)(k)(kmax.value0);+                            };+                        };+                        if (kmin instanceof Data_Maybe.Nothing && kmax instanceof Data_Maybe.Nothing) {+                            return Data_Function["const"](true);+                        };+                        throw new Error("Failed pattern match at Data.Map line 291, column 7 - line 299, column 21: " + [ kmin.constructor.name, kmax.constructor.name ]);+                    })();+                    var go = function (v) {+                        if (v instanceof Leaf) {+                            return Data_Monoid.mempty(dictMonoid);+                        };+                        if (v instanceof Two) {+                            return Data_Semigroup.append(dictMonoid.Semigroup0())((function () {+                                var $617 = tooSmall(v.value1);+                                if ($617) {+                                    return Data_Monoid.mempty(dictMonoid);+                                };+                                return go(v.value0);+                            })())(Data_Semigroup.append(dictMonoid.Semigroup0())((function () {+                                var $618 = inBounds(v.value1);+                                if ($618) {+                                    return f(v.value1)(v.value2);+                                };+                                return Data_Monoid.mempty(dictMonoid);+                            })())((function () {+                                var $619 = tooLarge(v.value1);+                                if ($619) {+                                    return Data_Monoid.mempty(dictMonoid);+                                };+                                return go(v.value3);+                            })()));+                        };+                        if (v instanceof Three) {+                            return Data_Semigroup.append(dictMonoid.Semigroup0())((function () {+                                var $624 = tooSmall(v.value1);+                                if ($624) {+                                    return Data_Monoid.mempty(dictMonoid);+                                };+                                return go(v.value0);+                            })())(Data_Semigroup.append(dictMonoid.Semigroup0())((function () {+                                var $625 = inBounds(v.value1);+                                if ($625) {+                                    return f(v.value1)(v.value2);+                                };+                                return Data_Monoid.mempty(dictMonoid);+                            })())(Data_Semigroup.append(dictMonoid.Semigroup0())((function () {+                                var $626 = tooSmall(v.value4) || tooLarge(v.value1);+                                if ($626) {+                                    return Data_Monoid.mempty(dictMonoid);+                                };+                                return go(v.value3);+                            })())(Data_Semigroup.append(dictMonoid.Semigroup0())((function () {+                                var $627 = inBounds(v.value4);+                                if ($627) {+                                    return f(v.value4)(v.value5);+                                };+                                return Data_Monoid.mempty(dictMonoid);+                            })())((function () {+                                var $628 = tooLarge(v.value4);+                                if ($628) {+                                    return Data_Monoid.mempty(dictMonoid);+                                };+                                return go(v.value6);+                            })()))));+                        };+                        throw new Error("Failed pattern match at Data.Map line 317, column 10 - line 329, column 54: " + [ v.constructor.name ]);+                    };+                    return go;+                };+            };+        };+    };+};+var findMin = function (v) {+    if (v instanceof Leaf) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Two) {+        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+            key: v.value1, +            value: v.value2+        })(findMin(v.value0)));+    };+    if (v instanceof Three) {+        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+            key: v.value1, +            value: v.value2+        })(findMin(v.value0)));+    };+    throw new Error("Failed pattern match at Data.Map line 255, column 1 - line 255, column 23: " + [ v.constructor.name ]);+};+var lookupGT = function (dictOrd) {+    return function (k) {+        var comp = Data_Ord.compare(dictOrd);+        var go = function (v) {+            if (v instanceof Leaf) {+                return Data_Maybe.Nothing.value;+            };+            if (v instanceof Two) {+                var v2 = comp(k)(v.value1);+                if (v2 instanceof Data_Ordering.EQ) {+                    return findMin(v.value3);+                };+                if (v2 instanceof Data_Ordering.LT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value1, +                        value: v.value2+                    })(go(v.value0)));+                };+                if (v2 instanceof Data_Ordering.GT) {+                    return go(v.value3);+                };+                throw new Error("Failed pattern match at Data.Map line 238, column 33 - line 241, column 21: " + [ v2.constructor.name ]);+            };+            if (v instanceof Three) {+                var v3 = comp(k)(v.value1);+                if (v3 instanceof Data_Ordering.EQ) {+                    return findMin(new Two(v.value3, v.value4, v.value5, v.value6));+                };+                if (v3 instanceof Data_Ordering.LT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value1, +                        value: v.value2+                    })(go(v.value0)));+                };+                if (v3 instanceof Data_Ordering.GT) {+                    return go(new Two(v.value3, v.value4, v.value5, v.value6));+                };+                throw new Error("Failed pattern match at Data.Map line 242, column 45 - line 245, column 37: " + [ v3.constructor.name ]);+            };+            throw new Error("Failed pattern match at Data.Map line 232, column 14 - line 245, column 37: " + [ v.constructor.name ]);+        };+        return go;+    };+};+var findMax = function (v) {+    if (v instanceof Leaf) {+        return Data_Maybe.Nothing.value;+    };+    if (v instanceof Two) {+        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+            key: v.value1, +            value: v.value2+        })(findMax(v.value3)));+    };+    if (v instanceof Three) {+        return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+            key: v.value4, +            value: v.value5+        })(findMax(v.value6)));+    };+    throw new Error("Failed pattern match at Data.Map line 249, column 1 - line 249, column 23: " + [ v.constructor.name ]);+};+var lookupLT = function (dictOrd) {+    return function (k) {+        var comp = Data_Ord.compare(dictOrd);+        var go = function (v) {+            if (v instanceof Leaf) {+                return Data_Maybe.Nothing.value;+            };+            if (v instanceof Two) {+                var v2 = comp(k)(v.value1);+                if (v2 instanceof Data_Ordering.EQ) {+                    return findMax(v.value0);+                };+                if (v2 instanceof Data_Ordering.GT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value1, +                        value: v.value2+                    })(go(v.value3)));+                };+                if (v2 instanceof Data_Ordering.LT) {+                    return go(v.value0);+                };+                throw new Error("Failed pattern match at Data.Map line 204, column 33 - line 207, column 20: " + [ v2.constructor.name ]);+            };+            if (v instanceof Three) {+                var v3 = comp(k)(v.value4);+                if (v3 instanceof Data_Ordering.EQ) {+                    return findMax(new Two(v.value0, v.value1, v.value2, v.value3));+                };+                if (v3 instanceof Data_Ordering.GT) {+                    return Data_Maybe.Just.create(Data_Maybe.fromMaybe({+                        key: v.value4, +                        value: v.value5+                    })(go(v.value6)));+                };+                if (v3 instanceof Data_Ordering.LT) {+                    return go(new Two(v.value0, v.value1, v.value2, v.value3));+                };+                throw new Error("Failed pattern match at Data.Map line 208, column 45 - line 211, column 36: " + [ v3.constructor.name ]);+            };+            throw new Error("Failed pattern match at Data.Map line 198, column 14 - line 211, column 36: " + [ v.constructor.name ]);+        };+        return go;+    };+};+var eqMap = function (dictEq) {+    return function (dictEq1) {+        return new Data_Eq.Eq(function (m1) {+            return function (m2) {+                return Data_Eq.eq(Data_Eq.eqArray(Data_Tuple.eqTuple(dictEq)(dictEq1)))(toAscArray(m1))(toAscArray(m2));+            };+        });+    };+};+var ordMap = function (dictOrd) {+    return function (dictOrd1) {+        return new Data_Ord.Ord(function () {+            return eqMap(dictOrd.Eq0())(dictOrd1.Eq0());+        }, function (m1) {+            return function (m2) {+                return Data_Ord.compare(Data_Ord.ordArray(Data_Tuple.ordTuple(dictOrd)(dictOrd1)))(toAscArray(m1))(toAscArray(m2));+            };+        });+    };+};+var eq1Map = function (dictEq) {+    return new Data_Eq.Eq1(function (dictEq1) {+        return Data_Eq.eq(eqMap(dictEq)(dictEq1));+    });+};+var ord1Map = function (dictOrd) {+    return new Data_Ord.Ord1(function () {+        return eq1Map(dictOrd.Eq0());+    }, function (dictOrd1) {+        return Data_Ord.compare(ordMap(dictOrd)(dictOrd1));+    });+};+var empty = Leaf.value;+var fromFoldable = function (dictOrd) {+    return function (dictFoldable) {+        return Data_Foldable.foldl(dictFoldable)(function (m) {+            return function (v) {+                return insert(dictOrd)(v.value0)(v.value1)(m);+            };+        })(empty);+    };+};+var filterWithKey = function (dictOrd) {+    return function (predicate) {+        return function ($715) {+            return fromFoldable(dictOrd)(Data_List_Lazy_Types.foldableList)(Data_List_Lazy.filter(Data_Tuple.uncurry(predicate))(toUnfoldable(Data_List_Lazy_Types.unfoldableList)($715)));+        };+    };+};+var filter = function (dictOrd) {+    return function (predicate) {+        return filterWithKey(dictOrd)(Data_Function["const"](predicate));+    };+};+var filterKeys = function (dictOrd) {+    return function (predicate) {+        return filterWithKey(dictOrd)(function ($716) {+            return Data_Function["const"](predicate($716));+        });+    };+};+var $$delete = function (dictOrd) {+    return function (k) {+        return function (m) {+            return Data_Maybe.maybe(m)(Data_Tuple.snd)(pop(dictOrd)(k)(m));+        };+    };+};+var checkValid = function (tree) {+    var allHeights = function (v) {+        if (v instanceof Leaf) {+            return Control_Applicative.pure(Data_List_Types.applicativeList)(0);+        };+        if (v instanceof Two) {+            return Data_Functor.map(Data_List_Types.functorList)(function (n) {+                return n + 1 | 0;+            })(Data_Semigroup.append(Data_List_Types.semigroupList)(allHeights(v.value0))(allHeights(v.value3)));+        };+        if (v instanceof Three) {+            return Data_Functor.map(Data_List_Types.functorList)(function (n) {+                return n + 1 | 0;+            })(Data_Semigroup.append(Data_List_Types.semigroupList)(allHeights(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(allHeights(v.value3))(allHeights(v.value6))));+        };+        throw new Error("Failed pattern match at Data.Map line 151, column 3 - line 151, column 30: " + [ v.constructor.name ]);+    };+    return Data_List.length(Data_List.nub(Data_Eq.eqInt)(allHeights(tree))) === 1;+};+var alter = function (dictOrd) {+    return function (f) {+        return function (k) {+            return function (m) {+                var v = f(lookup(dictOrd)(k)(m));+                if (v instanceof Data_Maybe.Nothing) {+                    return $$delete(dictOrd)(k)(m);+                };+                if (v instanceof Data_Maybe.Just) {+                    return insert(dictOrd)(k)(v.value0)(m);+                };+                throw new Error("Failed pattern match at Data.Map line 500, column 15 - line 502, column 25: " + [ v.constructor.name ]);+            };+        };+    };+};+var fromFoldableWith = function (dictOrd) {+    return function (dictFoldable) {+        return function (f) {+            var combine = function (v) {+                return function (v1) {+                    if (v1 instanceof Data_Maybe.Just) {+                        return Data_Maybe.Just.create(f(v)(v1.value0));+                    };+                    if (v1 instanceof Data_Maybe.Nothing) {+                        return new Data_Maybe.Just(v);+                    };+                    throw new Error("Failed pattern match at Data.Map line 517, column 3 - line 517, column 38: " + [ v.constructor.name, v1.constructor.name ]);+                };+            };+            return Data_Foldable.foldl(dictFoldable)(function (m) {+                return function (v) {+                    return alter(dictOrd)(combine(v.value1))(v.value0)(m);+                };+            })(empty);+        };+    };+};+var unionWith = function (dictOrd) {+    return function (f) {+        return function (m1) {+            return function (m2) {+                var go = function (m) {+                    return function (v) {+                        return alter(dictOrd)(function ($717) {+                            return Data_Maybe.Just.create(Data_Maybe.maybe(v.value1)(f(v.value1))($717));+                        })(v.value0)(m);+                    };+                };+                return Data_Foldable.foldl(Data_List_Types.foldableList)(go)(m2)(toUnfoldable(Data_List_Types.unfoldableList)(m1));+            };+        };+    };+};+var union = function (dictOrd) {+    return unionWith(dictOrd)(Data_Function["const"]);+};+var semigroupMap = function (dictOrd) {+    return new Data_Semigroup.Semigroup(union(dictOrd));+};+var monoidMap = function (dictOrd) {+    return new Data_Monoid.Monoid(function () {+        return semigroupMap(dictOrd);+    }, empty);+};+var submap = function (dictOrd) {+    return function (kmin) {+        return function (kmax) {+            return foldSubmap(dictOrd)(monoidMap(dictOrd))(kmin)(kmax)(singleton);+        };+    };+};+var unions = function (dictOrd) {+    return function (dictFoldable) {+        return Data_Foldable.foldl(dictFoldable)(union(dictOrd))(empty);+    };+};+var update = function (dictOrd) {+    return function (f) {+        return function (k) {+            return function (m) {+                return alter(dictOrd)(Data_Maybe.maybe(Data_Maybe.Nothing.value)(f))(k)(m);+            };+        };+    };+};+module.exports = {+    alter: alter, +    checkValid: checkValid, +    "delete": $$delete, +    empty: empty, +    filter: filter, +    filterKeys: filterKeys, +    filterWithKey: filterWithKey, +    findMax: findMax, +    findMin: findMin, +    foldSubmap: foldSubmap, +    fromFoldable: fromFoldable, +    fromFoldableWith: fromFoldableWith, +    insert: insert, +    isEmpty: isEmpty, +    isSubmap: isSubmap, +    keys: keys, +    lookup: lookup, +    lookupGE: lookupGE, +    lookupGT: lookupGT, +    lookupLE: lookupLE, +    lookupLT: lookupLT, +    mapWithKey: mapWithKey, +    member: member, +    pop: pop, +    showTree: showTree, +    singleton: singleton, +    size: size, +    submap: submap, +    toAscUnfoldable: toAscUnfoldable, +    toUnfoldable: toUnfoldable, +    union: union, +    unionWith: unionWith, +    unions: unions, +    update: update, +    values: values, +    eq1Map: eq1Map, +    eqMap: eqMap, +    ord1Map: ord1Map, +    ordMap: ordMap, +    showMap: showMap, +    semigroupMap: semigroupMap, +    monoidMap: monoidMap, +    functorMap: functorMap, +    foldableMap: foldableMap, +    traversableMap: traversableMap+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.List":200,"../Data.List.Lazy":197,"../Data.List.Lazy.Types":196,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Partial.Unsafe":275,"../Prelude":278}],202:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var First = function (x) {+    return x;+};+var showFirst = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "First (" + (Data_Show.show(Data_Maybe.showMaybe(dictShow))(v) + ")");+    });+};+var semigroupFirst = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        if (v instanceof Data_Maybe.Just) {+            return v;+        };+        return v1;+    };+});+var ordFirst = function (dictOrd) {+    return Data_Maybe.ordMaybe(dictOrd);+};+var ord1First = Data_Maybe.ord1Maybe;+var newtypeFirst = new Data_Newtype.Newtype(function (n) {+    return n;+}, First);+var monoidFirst = new Data_Monoid.Monoid(function () {+    return semigroupFirst;+}, Data_Maybe.Nothing.value);+var monadFirst = Data_Maybe.monadMaybe;+var invariantFirst = Data_Maybe.invariantMaybe;+var functorFirst = Data_Maybe.functorMaybe;+var extendFirst = Data_Maybe.extendMaybe;+var eqFirst = function (dictEq) {+    return Data_Maybe.eqMaybe(dictEq);+};+var eq1First = Data_Maybe.eq1Maybe;+var boundedFirst = function (dictBounded) {+    return Data_Maybe.boundedMaybe(dictBounded);+};+var bindFirst = Data_Maybe.bindMaybe;+var applyFirst = Data_Maybe.applyMaybe;+var applicativeFirst = Data_Maybe.applicativeMaybe;+module.exports = {+    First: First, +    newtypeFirst: newtypeFirst, +    eqFirst: eqFirst, +    eq1First: eq1First, +    ordFirst: ordFirst, +    ord1First: ord1First, +    boundedFirst: boundedFirst, +    functorFirst: functorFirst, +    invariantFirst: invariantFirst, +    applyFirst: applyFirst, +    applicativeFirst: applicativeFirst, +    bindFirst: bindFirst, +    monadFirst: monadFirst, +    extendFirst: extendFirst, +    showFirst: showFirst, +    semigroupFirst: semigroupFirst, +    monoidFirst: monoidFirst+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],203:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Last = function (x) {+    return x;+};+var showLast = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Last " + (Data_Show.show(Data_Maybe.showMaybe(dictShow))(v) + ")");+    });+};+var semigroupLast = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        if (v1 instanceof Data_Maybe.Just) {+            return v1;+        };+        if (v1 instanceof Data_Maybe.Nothing) {+            return v;+        };+        throw new Error("Failed pattern match at Data.Maybe.Last line 54, column 3 - line 54, column 39: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var ordLast = function (dictOrd) {+    return Data_Maybe.ordMaybe(dictOrd);+};+var ord1Last = Data_Maybe.ord1Maybe;+var newtypeLast = new Data_Newtype.Newtype(function (n) {+    return n;+}, Last);+var monoidLast = new Data_Monoid.Monoid(function () {+    return semigroupLast;+}, Data_Maybe.Nothing.value);+var monadLast = Data_Maybe.monadMaybe;+var invariantLast = Data_Maybe.invariantMaybe;+var functorLast = Data_Maybe.functorMaybe;+var extendLast = Data_Maybe.extendMaybe;+var eqLast = function (dictEq) {+    return Data_Maybe.eqMaybe(dictEq);+};+var eq1Last = Data_Maybe.eq1Maybe;+var boundedLast = function (dictBounded) {+    return Data_Maybe.boundedMaybe(dictBounded);+};+var bindLast = Data_Maybe.bindMaybe;+var applyLast = Data_Maybe.applyMaybe;+var applicativeLast = Data_Maybe.applicativeMaybe;+module.exports = {+    Last: Last, +    newtypeLast: newtypeLast, +    eqLast: eqLast, +    eq1Last: eq1Last, +    ordLast: ordLast, +    ord1Last: ord1Last, +    boundedLast: boundedLast, +    functorLast: functorLast, +    invariantLast: invariantLast, +    applyLast: applyLast, +    applicativeLast: applicativeLast, +    bindLast: bindLast, +    monadLast: monadLast, +    extendLast: extendLast, +    showLast: showLast, +    semigroupLast: semigroupLast, +    monoidLast: monoidLast+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],204:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Monoid = require("../Data.Monoid");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Nothing = (function () {+    function Nothing() {++    };+    Nothing.value = new Nothing();+    return Nothing;+})();+var Just = (function () {+    function Just(value0) {+        this.value0 = value0;+    };+    Just.create = function (value0) {+        return new Just(value0);+    };+    return Just;+})();+var showMaybe = function (dictShow) {+    return new Data_Show.Show(function (v) {+        if (v instanceof Just) {+            return "(Just " + (Data_Show.show(dictShow)(v.value0) + ")");+        };+        if (v instanceof Nothing) {+            return "Nothing";+        };+        throw new Error("Failed pattern match at Data.Maybe line 208, column 3 - line 209, column 3: " + [ v.constructor.name ]);+    });+};+var semigroupMaybe = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            if (v instanceof Nothing) {+                return v1;+            };+            if (v1 instanceof Nothing) {+                return v;+            };+            if (v instanceof Just && v1 instanceof Just) {+                return new Just(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0));+            };+            throw new Error("Failed pattern match at Data.Maybe line 177, column 3 - line 177, column 23: " + [ v.constructor.name, v1.constructor.name ]);+        };+    });+};+var monoidMaybe = function (dictSemigroup) {+    return new Data_Monoid.Monoid(function () {+        return semigroupMaybe(dictSemigroup);+    }, Nothing.value);+};+var maybe$prime = function (v) {+    return function (v1) {+        return function (v2) {+            if (v2 instanceof Nothing) {+                return v(Data_Unit.unit);+            };+            if (v2 instanceof Just) {+                return v1(v2.value0);+            };+            throw new Error("Failed pattern match at Data.Maybe line 233, column 1 - line 233, column 28: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+        };+    };+};+var maybe = function (v) {+    return function (v1) {+        return function (v2) {+            if (v2 instanceof Nothing) {+                return v;+            };+            if (v2 instanceof Just) {+                return v1(v2.value0);+            };+            throw new Error("Failed pattern match at Data.Maybe line 220, column 1 - line 220, column 22: " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]);+        };+    };+};+var isNothing = maybe(true)(Data_Function["const"](false));+var isJust = maybe(false)(Data_Function["const"](true));+var functorMaybe = new Data_Functor.Functor(function (v) {+    return function (v1) {+        if (v1 instanceof Just) {+            return new Just(v(v1.value0));+        };+        return Nothing.value;+    };+});+var invariantMaybe = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorMaybe));+var fromMaybe$prime = function (a) {+    return maybe$prime(a)(Control_Category.id(Control_Category.categoryFn));+};+var fromMaybe = function (a) {+    return maybe(a)(Control_Category.id(Control_Category.categoryFn));+};+var fromJust = function (dictPartial) {+    return function (v) {+        var __unused = function (dictPartial1) {+            return function ($dollar34) {+                return $dollar34;+            };+        };+        return __unused(dictPartial)((function () {+            if (v instanceof Just) {+                return v.value0;+            };+            throw new Error("Failed pattern match at Data.Maybe line 271, column 1 - line 271, column 21: " + [ v.constructor.name ]);+        })());+    };+};+var extendMaybe = new Control_Extend.Extend(function () {+    return functorMaybe;+}, function (v) {+    return function (v1) {+        if (v1 instanceof Nothing) {+            return Nothing.value;+        };+        return new Just(v(v1));+    };+});+var eqMaybe = function (dictEq) {+    return new Data_Eq.Eq(function (x) {+        return function (y) {+            if (x instanceof Nothing && y instanceof Nothing) {+                return true;+            };+            if (x instanceof Just && y instanceof Just) {+                return Data_Eq.eq(dictEq)(x.value0)(y.value0);+            };+            return false;+        };+    });+};+var ordMaybe = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqMaybe(dictOrd.Eq0());+    }, function (x) {+        return function (y) {+            if (x instanceof Nothing && y instanceof Nothing) {+                return Data_Ordering.EQ.value;+            };+            if (x instanceof Nothing) {+                return Data_Ordering.LT.value;+            };+            if (y instanceof Nothing) {+                return Data_Ordering.GT.value;+            };+            if (x instanceof Just && y instanceof Just) {+                return Data_Ord.compare(dictOrd)(x.value0)(y.value0);+            };+            throw new Error("Failed pattern match at Data.Maybe line 196, column 1 - line 196, column 51: " + [ x.constructor.name, y.constructor.name ]);+        };+    });+};+var eq1Maybe = new Data_Eq.Eq1(function (dictEq) {+    return Data_Eq.eq(eqMaybe(dictEq));+});+var ord1Maybe = new Data_Ord.Ord1(function () {+    return eq1Maybe;+}, function (dictOrd) {+    return Data_Ord.compare(ordMaybe(dictOrd));+});+var boundedMaybe = function (dictBounded) {+    return new Data_Bounded.Bounded(function () {+        return ordMaybe(dictBounded.Ord0());+    }, Nothing.value, new Just(Data_Bounded.top(dictBounded)));+};+var applyMaybe = new Control_Apply.Apply(function () {+    return functorMaybe;+}, function (v) {+    return function (v1) {+        if (v instanceof Just) {+            return Data_Functor.map(functorMaybe)(v.value0)(v1);+        };+        if (v instanceof Nothing) {+            return Nothing.value;+        };+        throw new Error("Failed pattern match at Data.Maybe line 69, column 3 - line 69, column 31: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var bindMaybe = new Control_Bind.Bind(function () {+    return applyMaybe;+}, function (v) {+    return function (v1) {+        if (v instanceof Just) {+            return v1(v.value0);+        };+        if (v instanceof Nothing) {+            return Nothing.value;+        };+        throw new Error("Failed pattern match at Data.Maybe line 128, column 3 - line 128, column 24: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var applicativeMaybe = new Control_Applicative.Applicative(function () {+    return applyMaybe;+}, Just.create);+var monadMaybe = new Control_Monad.Monad(function () {+    return applicativeMaybe;+}, function () {+    return bindMaybe;+});+var altMaybe = new Control_Alt.Alt(function () {+    return functorMaybe;+}, function (v) {+    return function (v1) {+        if (v instanceof Nothing) {+            return v1;+        };+        return v;+    };+});+var plusMaybe = new Control_Plus.Plus(function () {+    return altMaybe;+}, Nothing.value);+var alternativeMaybe = new Control_Alternative.Alternative(function () {+    return applicativeMaybe;+}, function () {+    return plusMaybe;+});+var monadZeroMaybe = new Control_MonadZero.MonadZero(function () {+    return alternativeMaybe;+}, function () {+    return monadMaybe;+});+module.exports = {+    Nothing: Nothing, +    Just: Just, +    fromJust: fromJust, +    fromMaybe: fromMaybe, +    "fromMaybe'": fromMaybe$prime, +    isJust: isJust, +    isNothing: isNothing, +    maybe: maybe, +    "maybe'": maybe$prime, +    functorMaybe: functorMaybe, +    applyMaybe: applyMaybe, +    applicativeMaybe: applicativeMaybe, +    altMaybe: altMaybe, +    plusMaybe: plusMaybe, +    alternativeMaybe: alternativeMaybe, +    bindMaybe: bindMaybe, +    monadMaybe: monadMaybe, +    monadZeroMaybe: monadZeroMaybe, +    extendMaybe: extendMaybe, +    invariantMaybe: invariantMaybe, +    semigroupMaybe: semigroupMaybe, +    monoidMaybe: monoidMaybe, +    eqMaybe: eqMaybe, +    eq1Maybe: eq1Maybe, +    ordMaybe: ordMaybe, +    ord1Maybe: ord1Maybe, +    boundedMaybe: boundedMaybe, +    showMaybe: showMaybe+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Extend":50,"../Control.Monad":87,"../Control.MonadZero":89,"../Control.Plus":92,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Monoid":213,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Unit":259,"../Prelude":278}],205:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_MediaType = require("../Data.MediaType");+var textXML = "text/xml";+var textPlain = "text/plain";+var textHTML = "text/html";+var textCSV = "text/csv";+var multipartFormData = "multipart/form-data";+var imagePNG = "image/png";+var imageJPEG = "image/jpeg";+var imageGIF = "image/gif";+var applicationXML = "application/xml";+var applicationOctetStream = "application/octet-stream";+var applicationJavascript = "application/javascript";+var applicationJSON = "application/json";+var applicationFormURLEncoded = "application/x-www-form-urlencoded";+module.exports = {+    applicationFormURLEncoded: applicationFormURLEncoded, +    applicationJSON: applicationJSON, +    applicationJavascript: applicationJavascript, +    applicationOctetStream: applicationOctetStream, +    applicationXML: applicationXML, +    imageGIF: imageGIF, +    imageJPEG: imageJPEG, +    imagePNG: imagePNG, +    multipartFormData: multipartFormData, +    textCSV: textCSV, +    textHTML: textHTML, +    textPlain: textPlain, +    textXML: textXML+};++},{"../Data.MediaType":206}],206:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Data_Eq = require("../Data.Eq");+var Data_Generic = require("../Data.Generic");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var MediaType = function (x) {+    return x;+};+var showMediaType = new Data_Show.Show(function (v) {+    return "(MediaType " + (Data_Show.show(Data_Show.showString)(v) + ")");+});+var newtypeMediaType = new Data_Newtype.Newtype(function (n) {+    return n;+}, MediaType);+var genericMediaType = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.MediaType.MediaType" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(MediaType))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.MediaType.MediaType", [ {+        sigConstructor: "Data.MediaType.MediaType", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.MediaType.MediaType", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericString)(v);+    } ]);+});+var eqMediaType = new Data_Eq.Eq(function (x) {+    return function (y) {+        return x === y;+    };+});+var ordMediaType = new Data_Ord.Ord(function () {+    return eqMediaType;+}, function (x) {+    return function (y) {+        return Data_Ord.compare(Data_Ord.ordString)(x)(y);+    };+});+module.exports = {+    MediaType: MediaType, +    newtypeMediaType: newtypeMediaType, +    eqMediaType: eqMediaType, +    ordMediaType: ordMediaType, +    genericMediaType: genericMediaType, +    showMediaType: showMediaType+};++},{"../Control.Apply":42,"../Data.Eq":140,"../Data.Generic":159,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Unit":259,"../Prelude":278}],207:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Additive = function (x) {+    return x;+};+var showAdditive = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Additive " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semigroupAdditive = function (dictSemiring) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            return Data_Semiring.add(dictSemiring)(v)(v1);+        };+    });+};+var ordAdditive = function (dictOrd) {+    return dictOrd;+};+var newtypeAdditive = new Data_Newtype.Newtype(function (n) {+    return n;+}, Additive);+var monoidAdditive = function (dictSemiring) {+    return new Data_Monoid.Monoid(function () {+        return semigroupAdditive(dictSemiring);+    }, Data_Semiring.zero(dictSemiring));+};+var invariantAdditive = new Data_Functor_Invariant.Invariant(function (f) {+    return function (v) {+        return function (v1) {+            return f(v1);+        };+    };+});+var functorAdditive = new Data_Functor.Functor(function (f) {+    return function (v) {+        return f(v);+    };+});+var extendAdditive = new Control_Extend.Extend(function () {+    return functorAdditive;+}, function (f) {+    return function (x) {+        return f(x);+    };+});+var eqAdditive = function (dictEq) {+    return dictEq;+};+var comonadAdditive = new Control_Comonad.Comonad(function () {+    return extendAdditive;+}, Data_Newtype.unwrap(newtypeAdditive));+var boundedAdditive = function (dictBounded) {+    return dictBounded;+};+var applyAdditive = new Control_Apply.Apply(function () {+    return functorAdditive;+}, function (v) {+    return function (v1) {+        return v(v1);+    };+});+var bindAdditive = new Control_Bind.Bind(function () {+    return applyAdditive;+}, function (v) {+    return function (f) {+        return f(v);+    };+});+var applicativeAdditive = new Control_Applicative.Applicative(function () {+    return applyAdditive;+}, Additive);+var monadAdditive = new Control_Monad.Monad(function () {+    return applicativeAdditive;+}, function () {+    return bindAdditive;+});+module.exports = {+    Additive: Additive, +    newtypeAdditive: newtypeAdditive, +    eqAdditive: eqAdditive, +    ordAdditive: ordAdditive, +    boundedAdditive: boundedAdditive, +    functorAdditive: functorAdditive, +    invariantAdditive: invariantAdditive, +    applyAdditive: applyAdditive, +    applicativeAdditive: applicativeAdditive, +    bindAdditive: bindAdditive, +    monadAdditive: monadAdditive, +    extendAdditive: extendAdditive, +    comonadAdditive: comonadAdditive, +    showAdditive: showAdditive, +    semigroupAdditive: semigroupAdditive, +    monoidAdditive: monoidAdditive+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Prelude":278}],208:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Conj = function (x) {+    return x;+};+var showConj = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Conj " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semiringConj = function (dictHeytingAlgebra) {+    return new Data_Semiring.Semiring(function (v) {+        return function (v1) {+            return Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v)(v1);+        };+    }, function (v) {+        return function (v1) {+            return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1);+        };+    }, Data_HeytingAlgebra.ff(dictHeytingAlgebra), Data_HeytingAlgebra.tt(dictHeytingAlgebra));+};+var semigroupConj = function (dictHeytingAlgebra) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            return Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v)(v1);+        };+    });+};+var ordConj = function (dictOrd) {+    return dictOrd;+};+var newtypeConj = new Data_Newtype.Newtype(function (n) {+    return n;+}, Conj);+var monoidConj = function (dictHeytingAlgebra) {+    return new Data_Monoid.Monoid(function () {+        return semigroupConj(dictHeytingAlgebra);+    }, Data_HeytingAlgebra.tt(dictHeytingAlgebra));+};+var invariantConj = new Data_Functor_Invariant.Invariant(function (f) {+    return function (v) {+        return function (v1) {+            return f(v1);+        };+    };+});+var functorConj = new Data_Functor.Functor(function (f) {+    return function (v) {+        return f(v);+    };+});+var extendConj = new Control_Extend.Extend(function () {+    return functorConj;+}, function (f) {+    return function (x) {+        return f(x);+    };+});+var eqConj = function (dictEq) {+    return dictEq;+};+var comonadConj = new Control_Comonad.Comonad(function () {+    return extendConj;+}, Data_Newtype.unwrap(newtypeConj));+var boundedConj = function (dictBounded) {+    return dictBounded;+};+var applyConj = new Control_Apply.Apply(function () {+    return functorConj;+}, function (v) {+    return function (v1) {+        return v(v1);+    };+});+var bindConj = new Control_Bind.Bind(function () {+    return applyConj;+}, function (v) {+    return function (f) {+        return f(v);+    };+});+var applicativeConj = new Control_Applicative.Applicative(function () {+    return applyConj;+}, Conj);+var monadConj = new Control_Monad.Monad(function () {+    return applicativeConj;+}, function () {+    return bindConj;+});+module.exports = {+    Conj: Conj, +    newtypeConj: newtypeConj, +    eqConj: eqConj, +    ordConj: ordConj, +    boundedConj: boundedConj, +    functorConj: functorConj, +    invariantConj: invariantConj, +    applyConj: applyConj, +    applicativeConj: applicativeConj, +    bindConj: bindConj, +    monadConj: monadConj, +    extendConj: extendConj, +    comonadConj: comonadConj, +    showConj: showConj, +    semigroupConj: semigroupConj, +    monoidConj: monoidConj, +    semiringConj: semiringConj+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.HeytingAlgebra":162,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Prelude":278}],209:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Disj = function (x) {+    return x;+};+var showDisj = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Disj " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semiringDisj = function (dictHeytingAlgebra) {+    return new Data_Semiring.Semiring(function (v) {+        return function (v1) {+            return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1);+        };+    }, function (v) {+        return function (v1) {+            return Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v)(v1);+        };+    }, Data_HeytingAlgebra.tt(dictHeytingAlgebra), Data_HeytingAlgebra.ff(dictHeytingAlgebra));+};+var semigroupDisj = function (dictHeytingAlgebra) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1);+        };+    });+};+var ordDisj = function (dictOrd) {+    return dictOrd;+};+var newtypeDisj = new Data_Newtype.Newtype(function (n) {+    return n;+}, Disj);+var monoidDisj = function (dictHeytingAlgebra) {+    return new Data_Monoid.Monoid(function () {+        return semigroupDisj(dictHeytingAlgebra);+    }, Data_HeytingAlgebra.ff(dictHeytingAlgebra));+};+var invariantDisj = new Data_Functor_Invariant.Invariant(function (f) {+    return function (v) {+        return function (v1) {+            return f(v1);+        };+    };+});+var functorDisj = new Data_Functor.Functor(function (f) {+    return function (v) {+        return f(v);+    };+});+var extendDisj = new Control_Extend.Extend(function () {+    return functorDisj;+}, function (f) {+    return function (x) {+        return f(x);+    };+});+var eqDisj = function (dictEq) {+    return dictEq;+};+var comonadDisj = new Control_Comonad.Comonad(function () {+    return extendDisj;+}, Data_Newtype.unwrap(newtypeDisj));+var boundedDisj = function (dictBounded) {+    return dictBounded;+};+var applyDisj = new Control_Apply.Apply(function () {+    return functorDisj;+}, function (v) {+    return function (v1) {+        return v(v1);+    };+});+var bindDisj = new Control_Bind.Bind(function () {+    return applyDisj;+}, function (v) {+    return function (f) {+        return f(v);+    };+});+var applicativeDisj = new Control_Applicative.Applicative(function () {+    return applyDisj;+}, Disj);+var monadDisj = new Control_Monad.Monad(function () {+    return applicativeDisj;+}, function () {+    return bindDisj;+});+module.exports = {+    Disj: Disj, +    newtypeDisj: newtypeDisj, +    eqDisj: eqDisj, +    ordDisj: ordDisj, +    boundedDisj: boundedDisj, +    functorDisj: functorDisj, +    invariantDisj: invariantDisj, +    applyDisj: applyDisj, +    applicativeDisj: applicativeDisj, +    bindDisj: bindDisj, +    monadDisj: monadDisj, +    extendDisj: extendDisj, +    comonadDisj: comonadDisj, +    showDisj: showDisj, +    semigroupDisj: semigroupDisj, +    monoidDisj: monoidDisj, +    semiringDisj: semiringDisj+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.HeytingAlgebra":162,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Prelude":278}],210:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Dual = function (x) {+    return x;+};+var showDual = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Dual " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semigroupDual = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            return Data_Semigroup.append(dictSemigroup)(v1)(v);+        };+    });+};+var ordDual = function (dictOrd) {+    return dictOrd;+};+var newtypeDual = new Data_Newtype.Newtype(function (n) {+    return n;+}, Dual);+var monoidDual = function (dictMonoid) {+    return new Data_Monoid.Monoid(function () {+        return semigroupDual(dictMonoid.Semigroup0());+    }, Data_Monoid.mempty(dictMonoid));+};+var invariantDual = new Data_Functor_Invariant.Invariant(function (f) {+    return function (v) {+        return function (v1) {+            return f(v1);+        };+    };+});+var functorDual = new Data_Functor.Functor(function (f) {+    return function (v) {+        return f(v);+    };+});+var extendDual = new Control_Extend.Extend(function () {+    return functorDual;+}, function (f) {+    return function (x) {+        return f(x);+    };+});+var eqDual = function (dictEq) {+    return dictEq;+};+var comonadDual = new Control_Comonad.Comonad(function () {+    return extendDual;+}, Data_Newtype.unwrap(newtypeDual));+var boundedDual = function (dictBounded) {+    return dictBounded;+};+var applyDual = new Control_Apply.Apply(function () {+    return functorDual;+}, function (v) {+    return function (v1) {+        return v(v1);+    };+});+var bindDual = new Control_Bind.Bind(function () {+    return applyDual;+}, function (v) {+    return function (f) {+        return f(v);+    };+});+var applicativeDual = new Control_Applicative.Applicative(function () {+    return applyDual;+}, Dual);+var monadDual = new Control_Monad.Monad(function () {+    return applicativeDual;+}, function () {+    return bindDual;+});+module.exports = {+    Dual: Dual, +    newtypeDual: newtypeDual, +    eqDual: eqDual, +    ordDual: ordDual, +    boundedDual: boundedDual, +    functorDual: functorDual, +    invariantDual: invariantDual, +    applyDual: applyDual, +    applicativeDual: applicativeDual, +    bindDual: bindDual, +    monadDual: monadDual, +    extendDual: extendDual, +    comonadDual: comonadDual, +    showDual: showDual, +    semigroupDual: semigroupDual, +    monoidDual: monoidDual+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],211:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Prelude = require("../Prelude");+var Endo = function (x) {+    return x;+};+var semigroupEndo = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        return function ($11) {+            return v(v1($11));+        };+    };+});+var newtypeEndo = new Data_Newtype.Newtype(function (n) {+    return n;+}, Endo);+var monoidEndo = new Data_Monoid.Monoid(function () {+    return semigroupEndo;+}, Control_Category.id(Control_Category.categoryFn));+var invariantEndo = new Data_Functor_Invariant.Invariant(function (ab) {+    return function (ba) {+        return function (v) {+            return function ($12) {+                return ab(v(ba($12)));+            };+        };+    };+});+module.exports = {+    Endo: Endo, +    newtypeEndo: newtypeEndo, +    invariantEndo: invariantEndo, +    semigroupEndo: semigroupEndo, +    monoidEndo: monoidEndo+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Functor.Invariant":155,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Semigroup":237,"../Prelude":278}],212:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Data_Bounded = require("../Data.Bounded");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Multiplicative = function (x) {+    return x;+};+var showMultiplicative = function (dictShow) {+    return new Data_Show.Show(function (v) {+        return "(Multiplicative " + (Data_Show.show(dictShow)(v) + ")");+    });+};+var semigroupMultiplicative = function (dictSemiring) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            return Data_Semiring.mul(dictSemiring)(v)(v1);+        };+    });+};+var ordMultiplicative = function (dictOrd) {+    return dictOrd;+};+var newtypeMultiplicative = new Data_Newtype.Newtype(function (n) {+    return n;+}, Multiplicative);+var monoidMultiplicative = function (dictSemiring) {+    return new Data_Monoid.Monoid(function () {+        return semigroupMultiplicative(dictSemiring);+    }, Data_Semiring.one(dictSemiring));+};+var invariantMultiplicative = new Data_Functor_Invariant.Invariant(function (f) {+    return function (v) {+        return function (v1) {+            return f(v1);+        };+    };+});+var functorMultiplicative = new Data_Functor.Functor(function (f) {+    return function (v) {+        return f(v);+    };+});+var extendMultiplicative = new Control_Extend.Extend(function () {+    return functorMultiplicative;+}, function (f) {+    return function (x) {+        return f(x);+    };+});+var eqMultiplicative = function (dictEq) {+    return dictEq;+};+var comonadMultiplicative = new Control_Comonad.Comonad(function () {+    return extendMultiplicative;+}, Data_Newtype.unwrap(newtypeMultiplicative));+var boundedMultiplicative = function (dictBounded) {+    return dictBounded;+};+var applyMultiplicative = new Control_Apply.Apply(function () {+    return functorMultiplicative;+}, function (v) {+    return function (v1) {+        return v(v1);+    };+});+var bindMultiplicative = new Control_Bind.Bind(function () {+    return applyMultiplicative;+}, function (v) {+    return function (f) {+        return f(v);+    };+});+var applicativeMultiplicative = new Control_Applicative.Applicative(function () {+    return applyMultiplicative;+}, Multiplicative);+var monadMultiplicative = new Control_Monad.Monad(function () {+    return applicativeMultiplicative;+}, function () {+    return bindMultiplicative;+});+module.exports = {+    Multiplicative: Multiplicative, +    newtypeMultiplicative: newtypeMultiplicative, +    eqMultiplicative: eqMultiplicative, +    ordMultiplicative: ordMultiplicative, +    boundedMultiplicative: boundedMultiplicative, +    functorMultiplicative: functorMultiplicative, +    invariantMultiplicative: invariantMultiplicative, +    applyMultiplicative: applyMultiplicative, +    applicativeMultiplicative: applicativeMultiplicative, +    bindMultiplicative: bindMultiplicative, +    monadMultiplicative: monadMultiplicative, +    extendMultiplicative: extendMultiplicative, +    comonadMultiplicative: comonadMultiplicative, +    showMultiplicative: showMultiplicative, +    semigroupMultiplicative: semigroupMultiplicative, +    monoidMultiplicative: monoidMultiplicative+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Data.Bounded":133,"../Data.Eq":140,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Prelude":278}],213:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Boolean = require("../Data.Boolean");+var Data_Eq = require("../Data.Eq");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Function = require("../Data.Function");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Monoid = function (Semigroup0, mempty) {+    this.Semigroup0 = Semigroup0;+    this.mempty = mempty;+};+var monoidUnit = new Monoid(function () {+    return Data_Semigroup.semigroupUnit;+}, Data_Unit.unit);+var monoidString = new Monoid(function () {+    return Data_Semigroup.semigroupString;+}, "");+var monoidOrdering = new Monoid(function () {+    return Data_Ordering.semigroupOrdering;+}, Data_Ordering.EQ.value);+var monoidArray = new Monoid(function () {+    return Data_Semigroup.semigroupArray;+}, [  ]);+var mempty = function (dict) {+    return dict.mempty;+};+var monoidFn = function (dictMonoid) {+    return new Monoid(function () {+        return Data_Semigroup.semigroupFn(dictMonoid.Semigroup0());+    }, Data_Function["const"](mempty(dictMonoid)));+};+var power = function (dictMonoid) {+    return function (x) {+        var go = function (p) {+            if (p <= 0) {+                return mempty(dictMonoid);+            };+            if (p === 1) {+                return x;+            };+            if (p % 2 === 0) {+                var x$prime = go(p / 2 | 0);+                return Data_Semigroup.append(dictMonoid.Semigroup0())(x$prime)(x$prime);+            };+            if (Data_Boolean.otherwise) {+                var x$prime = go(p / 2 | 0);+                return Data_Semigroup.append(dictMonoid.Semigroup0())(x$prime)(Data_Semigroup.append(dictMonoid.Semigroup0())(x$prime)(x));+            };+            throw new Error("Failed pattern match at Data.Monoid line 52, column 3 - line 56, column 57: " + [ p.constructor.name ]);+        };+        return go;+    };+};+module.exports = {+    Monoid: Monoid, +    mempty: mempty, +    power: power, +    monoidUnit: monoidUnit, +    monoidOrdering: monoidOrdering, +    monoidFn: monoidFn, +    monoidString: monoidString, +    monoidArray: monoidArray+};++},{"../Data.Boolean":130,"../Data.Eq":140,"../Data.EuclideanRing":142,"../Data.Function":151,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Unit":259,"../Prelude":278}],214:[function(require,module,exports){+arguments[4][100][0].apply(exports,arguments)+},{"dup":100}],215:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Prelude = require("../Prelude");+var Newtype = function (unwrap, wrap) {+    this.unwrap = unwrap;+    this.wrap = wrap;+};+var wrap = function (dict) {+    return dict.wrap;+};+var unwrap = function (dict) {+    return dict.unwrap;+};+var underF2 = function (dictFunctor) {+    return function (dictFunctor1) {+        return function (dictNewtype) {+            return function (dictNewtype1) {+                return function (v) {+                    return function (f) {+                        return function ($50) {+                            return function ($51) {+                                return Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1))(Data_Function.on(f)(Data_Functor.map(dictFunctor)(wrap(dictNewtype)))($50)($51));+                            };+                        };+                    };+                };+            };+        };+    };+};+var underF = function (dictFunctor) {+    return function (dictFunctor1) {+        return function (dictNewtype) {+            return function (dictNewtype1) {+                return function (v) {+                    return function (f) {+                        return function ($52) {+                            return Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1))(f(Data_Functor.map(dictFunctor)(wrap(dictNewtype))($52)));+                        };+                    };+                };+            };+        };+    };+};+var under2 = function (dictNewtype) {+    return function (dictNewtype1) {+        return function (v) {+            return function (f) {+                return function ($53) {+                    return function ($54) {+                        return unwrap(dictNewtype1)(Data_Function.on(f)(wrap(dictNewtype))($53)($54));+                    };+                };+            };+        };+    };+};+var under = function (dictNewtype) {+    return function (dictNewtype1) {+        return function (v) {+            return function (f) {+                return function ($55) {+                    return unwrap(dictNewtype1)(f(wrap(dictNewtype)($55)));+                };+            };+        };+    };+};+var un = function (dictNewtype) {+    return function (v) {+        return unwrap(dictNewtype);+    };+};+var traverse = function (dictFunctor) {+    return function (dictNewtype) {+        return function (v) {+            return function (f) {+                return function ($56) {+                    return Data_Functor.map(dictFunctor)(wrap(dictNewtype))(f(unwrap(dictNewtype)($56)));+                };+            };+        };+    };+};+var overF2 = function (dictFunctor) {+    return function (dictFunctor1) {+        return function (dictNewtype) {+            return function (dictNewtype1) {+                return function (v) {+                    return function (f) {+                        return function ($57) {+                            return function ($58) {+                                return Data_Functor.map(dictFunctor1)(wrap(dictNewtype1))(Data_Function.on(f)(Data_Functor.map(dictFunctor)(unwrap(dictNewtype)))($57)($58));+                            };+                        };+                    };+                };+            };+        };+    };+};+var overF = function (dictFunctor) {+    return function (dictFunctor1) {+        return function (dictNewtype) {+            return function (dictNewtype1) {+                return function (v) {+                    return function (f) {+                        return function ($59) {+                            return Data_Functor.map(dictFunctor1)(wrap(dictNewtype1))(f(Data_Functor.map(dictFunctor)(unwrap(dictNewtype))($59)));+                        };+                    };+                };+            };+        };+    };+};+var over2 = function (dictNewtype) {+    return function (dictNewtype1) {+        return function (v) {+            return function (f) {+                return function ($60) {+                    return function ($61) {+                        return wrap(dictNewtype1)(Data_Function.on(f)(unwrap(dictNewtype))($60)($61));+                    };+                };+            };+        };+    };+};+var over = function (dictNewtype) {+    return function (dictNewtype1) {+        return function (v) {+            return function (f) {+                return function ($62) {+                    return wrap(dictNewtype1)(f(unwrap(dictNewtype)($62)));+                };+            };+        };+    };+};+var op = function (dictNewtype) {+    return un(dictNewtype);+};+var collect = function (dictFunctor) {+    return function (dictNewtype) {+        return function (v) {+            return function (f) {+                return function ($63) {+                    return wrap(dictNewtype)(f(Data_Functor.map(dictFunctor)(unwrap(dictNewtype))($63)));+                };+            };+        };+    };+};+var alaF = function (dictFunctor) {+    return function (dictFunctor1) {+        return function (dictNewtype) {+            return function (dictNewtype1) {+                return function (v) {+                    return function (f) {+                        return function ($64) {+                            return Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1))(f(Data_Functor.map(dictFunctor)(wrap(dictNewtype))($64)));+                        };+                    };+                };+            };+        };+    };+};+var ala = function (dictFunctor) {+    return function (dictNewtype) {+        return function (dictNewtype1) {+            return function (v) {+                return function (f) {+                    return Data_Functor.map(dictFunctor)(unwrap(dictNewtype))(f(wrap(dictNewtype1)));+                };+            };+        };+    };+};+module.exports = {+    Newtype: Newtype, +    ala: ala, +    alaF: alaF, +    collect: collect, +    op: op, +    over: over, +    over2: over2, +    overF: overF, +    overF2: overF2, +    traverse: traverse, +    un: un, +    under: under, +    under2: under2, +    underF: underF, +    underF2: underF2, +    unwrap: unwrap, +    wrap: wrap+};++},{"../Control.Semigroupoid":93,"../Data.Function":151,"../Data.Functor":157,"../Prelude":278}],216:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Plus = require("../Control.Plus");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var NonEmpty = (function () {+    function NonEmpty(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    NonEmpty.create = function (value0) {+        return function (value1) {+            return new NonEmpty(value0, value1);+        };+    };+    return NonEmpty;+})();+var tail = function (v) {+    return v.value1;+};+var singleton = function (dictPlus) {+    return function (a) {+        return new NonEmpty(a, Control_Plus.empty(dictPlus));+    };+};+var showNonEmpty = function (dictShow) {+    return function (dictShow1) {+        return new Data_Show.Show(function (v) {+            return "(NonEmpty " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")")));+        });+    };+};+var oneOf = function (dictAlternative) {+    return function (v) {+        return Control_Alt.alt((dictAlternative.Plus1()).Alt0())(Control_Applicative.pure(dictAlternative.Applicative0())(v.value0))(v.value1);+    };+};+var head = function (v) {+    return v.value0;+};+var functorNonEmpty = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return new NonEmpty(f(v.value0), Data_Functor.map(dictFunctor)(f)(v.value1));+        };+    });+};+var fromNonEmpty = function (f) {+    return function (v) {+        return f(v.value0)(v.value1);+    };+};+var foldl1 = function (dictFoldable) {+    return function (f) {+        return function (v) {+            return Data_Foldable.foldl(dictFoldable)(f)(v.value0)(v.value1);+        };+    };+};+var foldableNonEmpty = function (dictFoldable) {+    return new Data_Foldable.Foldable(function (dictMonoid) {+        return function (f) {+            return function (v) {+                return Data_Semigroup.append(dictMonoid.Semigroup0())(f(v.value0))(Data_Foldable.foldMap(dictFoldable)(dictMonoid)(f)(v.value1));+            };+        };+    }, function (f) {+        return function (b) {+            return function (v) {+                return Data_Foldable.foldl(dictFoldable)(f)(f(b)(v.value0))(v.value1);+            };+        };+    }, function (f) {+        return function (b) {+            return function (v) {+                return f(v.value0)(Data_Foldable.foldr(dictFoldable)(f)(b)(v.value1));+            };+        };+    });+};+var traversableNonEmpty = function (dictTraversable) {+    return new Data_Traversable.Traversable(function () {+        return foldableNonEmpty(dictTraversable.Foldable1());+    }, function () {+        return functorNonEmpty(dictTraversable.Functor0());+    }, function (dictApplicative) {+        return function (v) {+            return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(NonEmpty.create)(v.value0))(Data_Traversable.sequence(dictTraversable)(dictApplicative)(v.value1));+        };+    }, function (dictApplicative) {+        return function (f) {+            return function (v) {+                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(NonEmpty.create)(f(v.value0)))(Data_Traversable.traverse(dictTraversable)(dictApplicative)(f)(v.value1));+            };+        };+    });+};+var foldMap1 = function (dictSemigroup) {+    return function (dictFoldable) {+        return function (f) {+            return function (v) {+                return Data_Foldable.foldl(dictFoldable)(function (s) {+                    return function (a1) {+                        return Data_Semigroup.append(dictSemigroup)(s)(f(a1));+                    };+                })(f(v.value0))(v.value1);+            };+        };+    };+};+var fold1 = function (dictSemigroup) {+    return function (dictFoldable) {+        return foldMap1(dictSemigroup)(dictFoldable)(Control_Category.id(Control_Category.categoryFn));+    };+};+var eq1NonEmpty = function (dictEq1) {+    return new Data_Eq.Eq1(function (dictEq) {+        return function (v) {+            return function (v1) {+                return Data_Eq.eq(dictEq)(v.value0)(v1.value0) && Data_Eq.eq1(dictEq1)(dictEq)(v.value1)(v1.value1);+            };+        };+    });+};+var eqNonEmpty = function (dictEq1) {+    return function (dictEq) {+        return new Data_Eq.Eq(Data_Eq.eq1(eq1NonEmpty(dictEq1))(dictEq));+    };+};+var ord1NonEmpty = function (dictOrd1) {+    return new Data_Ord.Ord1(function () {+        return eq1NonEmpty(dictOrd1.Eq10());+    }, function (dictOrd) {+        return function (v) {+            return function (v1) {+                var v2 = Data_Ord.compare(dictOrd)(v.value0)(v1.value0);+                if (v2 instanceof Data_Ordering.EQ) {+                    return Data_Ord.compare1(dictOrd1)(dictOrd)(v.value1)(v1.value1);+                };+                return v2;+            };+        };+    });+};+var ordNonEmpty = function (dictOrd1) {+    return function (dictOrd) {+        return new Data_Ord.Ord(function () {+            return eqNonEmpty(dictOrd1.Eq10())(dictOrd.Eq0());+        }, Data_Ord.compare1(ord1NonEmpty(dictOrd1))(dictOrd));+    };+};+module.exports = {+    NonEmpty: NonEmpty, +    fold1: fold1, +    foldMap1: foldMap1, +    foldl1: foldl1, +    fromNonEmpty: fromNonEmpty, +    head: head, +    oneOf: oneOf, +    singleton: singleton, +    tail: tail, +    showNonEmpty: showNonEmpty, +    eqNonEmpty: eqNonEmpty, +    eq1NonEmpty: eq1NonEmpty, +    ordNonEmpty: ordNonEmpty, +    ord1NonEmpty: ord1NonEmpty, +    functorNonEmpty: functorNonEmpty, +    foldableNonEmpty: foldableNonEmpty, +    traversableNonEmpty: traversableNonEmpty+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Control.Plus":92,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Traversable":254,"../Prelude":278}],217:[function(require,module,exports){+"use strict";++exports["null"] = null;++exports.nullable = function (a, r, f) {+  return a == null ? r : f(a);+};++exports.notNull = function (x) {+  return x;+};++},{}],218:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Maybe = require("../Data.Maybe");+var Data_Ord = require("../Data.Ord");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var toNullable = Data_Maybe.maybe($foreign["null"])($foreign.notNull);+var toMaybe = function (n) {+    return $foreign.nullable(n, Data_Maybe.Nothing.value, Data_Maybe.Just.create);+};+var showNullable = function (dictShow) {+    return new Data_Show.Show(function ($5) {+        return Data_Maybe.maybe("null")(Data_Show.show(dictShow))(toMaybe($5));+    });+};+var eqNullable = function (dictEq) {+    return new Data_Eq.Eq(Data_Function.on(Data_Eq.eq(Data_Maybe.eqMaybe(dictEq)))(toMaybe));+};+var ordNullable = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqNullable(dictOrd.Eq0());+    }, Data_Function.on(Data_Ord.compare(Data_Maybe.ordMaybe(dictOrd)))(toMaybe));+};+var eq1Nullable = new Data_Eq.Eq1(function (dictEq) {+    return Data_Eq.eq(eqNullable(dictEq));+});+var ord1Nullable = new Data_Ord.Ord1(function () {+    return eq1Nullable;+}, function (dictOrd) {+    return Data_Ord.compare(ordNullable(dictOrd));+});+module.exports = {+    toMaybe: toMaybe, +    toNullable: toNullable, +    showNullable: showNullable, +    eqNullable: eqNullable, +    eq1Nullable: eq1Nullable, +    ordNullable: ordNullable, +    ord1Nullable: ord1Nullable+};++},{"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Maybe":204,"../Data.Ord":222,"../Data.Show":241,"../Prelude":278,"./foreign":217}],219:[function(require,module,exports){+"use strict";++exports.unsafeCompareImpl = function (lt) {+  return function (eq) {+    return function (gt) {+      return function (x) {+        return function (y) {+          return x < y ? lt : x === y ? eq : gt;+        };+      };+    };+  };+};++},{}],220:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Ordering = require("../Data.Ordering");+var unsafeCompare = $foreign.unsafeCompareImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value);+module.exports = {+    unsafeCompare: unsafeCompare+};++},{"../Data.Ordering":223,"./foreign":219}],221:[function(require,module,exports){+"use strict";++exports.ordArrayImpl = function (f) {+  return function (xs) {+    return function (ys) {+      var i = 0;+      var xlen = xs.length;+      var ylen = ys.length;+      while (i < xlen && i < ylen) {+        var x = xs[i];+        var y = ys[i];+        var o = f(x)(y);+        if (o !== 0) {+          return o;+        }+        i++;+      }+      if (xlen === ylen) {+        return 0;+      } else if (xlen > ylen) {+        return -1;+      } else {+        return 1;+      }+    };+  };+};++},{}],222:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Ord_Unsafe = require("../Data.Ord.Unsafe");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semiring = require("../Data.Semiring");+var Data_Unit = require("../Data.Unit");+var Data_Void = require("../Data.Void");+var Ord = function (Eq0, compare) {+    this.Eq0 = Eq0;+    this.compare = compare;+};+var Ord1 = function (Eq10, compare1) {+    this.Eq10 = Eq10;+    this.compare1 = compare1;+};+var ordVoid = new Ord(function () {+    return Data_Eq.eqVoid;+}, function (v) {+    return function (v1) {+        return Data_Ordering.EQ.value;+    };+});+var ordUnit = new Ord(function () {+    return Data_Eq.eqUnit;+}, function (v) {+    return function (v1) {+        return Data_Ordering.EQ.value;+    };+});+var ordString = new Ord(function () {+    return Data_Eq.eqString;+}, Data_Ord_Unsafe.unsafeCompare);+var ordOrdering = new Ord(function () {+    return Data_Ordering.eqOrdering;+}, function (v) {+    return function (v1) {+        if (v instanceof Data_Ordering.LT && v1 instanceof Data_Ordering.LT) {+            return Data_Ordering.EQ.value;+        };+        if (v instanceof Data_Ordering.EQ && v1 instanceof Data_Ordering.EQ) {+            return Data_Ordering.EQ.value;+        };+        if (v instanceof Data_Ordering.GT && v1 instanceof Data_Ordering.GT) {+            return Data_Ordering.EQ.value;+        };+        if (v instanceof Data_Ordering.LT) {+            return Data_Ordering.LT.value;+        };+        if (v instanceof Data_Ordering.EQ && v1 instanceof Data_Ordering.LT) {+            return Data_Ordering.GT.value;+        };+        if (v instanceof Data_Ordering.EQ && v1 instanceof Data_Ordering.GT) {+            return Data_Ordering.LT.value;+        };+        if (v instanceof Data_Ordering.GT) {+            return Data_Ordering.GT.value;+        };+        throw new Error("Failed pattern match at Data.Ord line 69, column 3 - line 69, column 21: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var ordNumber = new Ord(function () {+    return Data_Eq.eqNumber;+}, Data_Ord_Unsafe.unsafeCompare);+var ordInt = new Ord(function () {+    return Data_Eq.eqInt;+}, Data_Ord_Unsafe.unsafeCompare);+var ordChar = new Ord(function () {+    return Data_Eq.eqChar;+}, Data_Ord_Unsafe.unsafeCompare);+var ordBoolean = new Ord(function () {+    return Data_Eq.eqBoolean;+}, Data_Ord_Unsafe.unsafeCompare);+var compare1 = function (dict) {+    return dict.compare1;+};+var compare = function (dict) {+    return dict.compare;+};+var comparing = function (dictOrd) {+    return function (f) {+        return Data_Function.on(compare(dictOrd))(f);+    };+};+var greaterThan = function (dictOrd) {+    return function (a1) {+        return function (a2) {+            var v = compare(dictOrd)(a1)(a2);+            if (v instanceof Data_Ordering.GT) {+                return true;+            };+            return false;+        };+    };+};+var greaterThanOrEq = function (dictOrd) {+    return function (a1) {+        return function (a2) {+            var v = compare(dictOrd)(a1)(a2);+            if (v instanceof Data_Ordering.LT) {+                return false;+            };+            return true;+        };+    };+};+var signum = function (dictOrd) {+    return function (dictRing) {+        return function (x) {+            var $33 = greaterThanOrEq(dictOrd)(x)(Data_Semiring.zero(dictRing.Semiring0()));+            if ($33) {+                return Data_Semiring.one(dictRing.Semiring0());+            };+            return Data_Ring.negate(dictRing)(Data_Semiring.one(dictRing.Semiring0()));+        };+    };+};+var lessThan = function (dictOrd) {+    return function (a1) {+        return function (a2) {+            var v = compare(dictOrd)(a1)(a2);+            if (v instanceof Data_Ordering.LT) {+                return true;+            };+            return false;+        };+    };+};+var lessThanOrEq = function (dictOrd) {+    return function (a1) {+        return function (a2) {+            var v = compare(dictOrd)(a1)(a2);+            if (v instanceof Data_Ordering.GT) {+                return false;+            };+            return true;+        };+    };+};+var max = function (dictOrd) {+    return function (x) {+        return function (y) {+            var v = compare(dictOrd)(x)(y);+            if (v instanceof Data_Ordering.LT) {+                return y;+            };+            if (v instanceof Data_Ordering.EQ) {+                return x;+            };+            if (v instanceof Data_Ordering.GT) {+                return x;+            };+            throw new Error("Failed pattern match at Data.Ord line 123, column 3 - line 126, column 12: " + [ v.constructor.name ]);+        };+    };+};+var min = function (dictOrd) {+    return function (x) {+        return function (y) {+            var v = compare(dictOrd)(x)(y);+            if (v instanceof Data_Ordering.LT) {+                return x;+            };+            if (v instanceof Data_Ordering.EQ) {+                return x;+            };+            if (v instanceof Data_Ordering.GT) {+                return y;+            };+            throw new Error("Failed pattern match at Data.Ord line 114, column 3 - line 117, column 12: " + [ v.constructor.name ]);+        };+    };+};+var ordArray = function (dictOrd) {+    return new Ord(function () {+        return Data_Eq.eqArray(dictOrd.Eq0());+    }, (function () {+        var toDelta = function (x) {+            return function (y) {+                var v = compare(dictOrd)(x)(y);+                if (v instanceof Data_Ordering.EQ) {+                    return 0;+                };+                if (v instanceof Data_Ordering.LT) {+                    return 1;+                };+                if (v instanceof Data_Ordering.GT) {+                    return -1 | 0;+                };+                throw new Error("Failed pattern match at Data.Ord line 61, column 7 - line 66, column 1: " + [ v.constructor.name ]);+            };+        };+        return function (xs) {+            return function (ys) {+                return compare(ordInt)(0)($foreign.ordArrayImpl(toDelta)(xs)(ys));+            };+        };+    })());+};+var ord1Array = new Ord1(function () {+    return Data_Eq.eq1Array;+}, function (dictOrd) {+    return compare(ordArray(dictOrd));+});+var clamp = function (dictOrd) {+    return function (low) {+        return function (hi) {+            return function (x) {+                return min(dictOrd)(hi)(max(dictOrd)(low)(x));+            };+        };+    };+};+var between = function (dictOrd) {+    return function (low) {+        return function (hi) {+            return function (x) {+                if (lessThan(dictOrd)(x)(low)) {+                    return false;+                };+                if (greaterThan(dictOrd)(x)(hi)) {+                    return false;+                };+                return true;+            };+        };+    };+};+var abs = function (dictOrd) {+    return function (dictRing) {+        return function (x) {+            var $42 = greaterThanOrEq(dictOrd)(x)(Data_Semiring.zero(dictRing.Semiring0()));+            if ($42) {+                return x;+            };+            return Data_Ring.negate(dictRing)(x);+        };+    };+};+module.exports = {+    Ord: Ord, +    Ord1: Ord1, +    abs: abs, +    between: between, +    clamp: clamp, +    compare: compare, +    compare1: compare1, +    comparing: comparing, +    greaterThan: greaterThan, +    greaterThanOrEq: greaterThanOrEq, +    lessThan: lessThan, +    lessThanOrEq: lessThanOrEq, +    max: max, +    min: min, +    signum: signum, +    ordBoolean: ordBoolean, +    ordInt: ordInt, +    ordNumber: ordNumber, +    ordString: ordString, +    ordChar: ordChar, +    ordUnit: ordUnit, +    ordVoid: ordVoid, +    ordArray: ordArray, +    ordOrdering: ordOrdering, +    ord1Array: ord1Array+};++},{"../Data.Eq":140,"../Data.Function":151,"../Data.Ord.Unsafe":220,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semiring":239,"../Data.Unit":259,"../Data.Void":260,"./foreign":221}],223:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Eq = require("../Data.Eq");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var LT = (function () {+    function LT() {++    };+    LT.value = new LT();+    return LT;+})();+var GT = (function () {+    function GT() {++    };+    GT.value = new GT();+    return GT;+})();+var EQ = (function () {+    function EQ() {++    };+    EQ.value = new EQ();+    return EQ;+})();+var showOrdering = new Data_Show.Show(function (v) {+    if (v instanceof LT) {+        return "LT";+    };+    if (v instanceof GT) {+        return "GT";+    };+    if (v instanceof EQ) {+        return "EQ";+    };+    throw new Error("Failed pattern match at Data.Ordering line 27, column 3 - line 28, column 3: " + [ v.constructor.name ]);+});+var semigroupOrdering = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        if (v instanceof LT) {+            return LT.value;+        };+        if (v instanceof GT) {+            return GT.value;+        };+        if (v instanceof EQ) {+            return v1;+        };+        throw new Error("Failed pattern match at Data.Ordering line 22, column 3 - line 22, column 19: " + [ v.constructor.name, v1.constructor.name ]);+    };+});+var invert = function (v) {+    if (v instanceof GT) {+        return LT.value;+    };+    if (v instanceof EQ) {+        return EQ.value;+    };+    if (v instanceof LT) {+        return GT.value;+    };+    throw new Error("Failed pattern match at Data.Ordering line 34, column 1 - line 34, column 15: " + [ v.constructor.name ]);+};+var eqOrdering = new Data_Eq.Eq(function (v) {+    return function (v1) {+        if (v instanceof LT && v1 instanceof LT) {+            return true;+        };+        if (v instanceof GT && v1 instanceof GT) {+            return true;+        };+        if (v instanceof EQ && v1 instanceof EQ) {+            return true;+        };+        return false;+    };+});+module.exports = {+    LT: LT, +    GT: GT, +    EQ: EQ, +    invert: invert, +    eqOrdering: eqOrdering, +    semigroupOrdering: semigroupOrdering, +    showOrdering: showOrdering+};++},{"../Data.Eq":140,"../Data.Semigroup":237,"../Data.Show":241}],224:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Profunctor = require("../Data.Profunctor");+var Prelude = require("../Prelude");+var Choice = function (Profunctor0, left, right) {+    this.Profunctor0 = Profunctor0;+    this.left = left;+    this.right = right;+};+var right = function (dict) {+    return dict.right;+};+var left = function (dict) {+    return dict.left;+};+var splitChoice = function (dictCategory) {+    return function (dictChoice) {+        return function (l) {+            return function (r) {+                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(left(dictChoice)(l))(right(dictChoice)(r));+            };+        };+    };+};+var fanin = function (dictCategory) {+    return function (dictChoice) {+        return function (l) {+            return function (r) {+                var join = Data_Profunctor.dimap(dictChoice.Profunctor0())(Data_Either.either(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(Control_Category.categoryFn)))(Control_Category.id(Control_Category.categoryFn))(Control_Category.id(dictCategory));+                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(splitChoice(dictCategory)(dictChoice)(l)(r))(join);+            };+        };+    };+};+var choiceFn = new Choice(function () {+    return Data_Profunctor.profunctorFn;+}, function (v) {+    return function (v1) {+        if (v1 instanceof Data_Either.Left) {+            return Data_Either.Left.create(v(v1.value0));+        };+        if (v1 instanceof Data_Either.Right) {+            return new Data_Either.Right(v1.value0);+        };+        throw new Error("Failed pattern match at Data.Profunctor.Choice line 33, column 3 - line 33, column 36: " + [ v.constructor.name, v1.constructor.name ]);+    };+}, Data_Functor.map(Data_Either.functorEither));+module.exports = {+    Choice: Choice, +    fanin: fanin, +    left: left, +    right: right, +    splitChoice: splitChoice, +    choiceFn: choiceFn+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Profunctor":231,"../Prelude":278}],225:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Profunctor = require("../Data.Profunctor");+var Prelude = require("../Prelude");+var Closed = function (Profunctor0, closed) {+    this.Profunctor0 = Profunctor0;+    this.closed = closed;+};+var closedFunction = new Closed(function () {+    return Data_Profunctor.profunctorFn;+}, Control_Semigroupoid.compose(Control_Semigroupoid.semigroupoidFn));+var closed = function (dict) {+    return dict.closed;+};+module.exports = {+    Closed: Closed, +    closed: closed, +    closedFunction: closedFunction+};++},{"../Control.Semigroupoid":93,"../Data.Profunctor":231,"../Prelude":278}],226:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Either = require("../Data.Either");+var Data_Profunctor = require("../Data.Profunctor");+var Cochoice = function (Profunctor0, unleft, unright) {+    this.Profunctor0 = Profunctor0;+    this.unleft = unleft;+    this.unright = unright;+};+var unright = function (dict) {+    return dict.unright;+};+var unleft = function (dict) {+    return dict.unleft;+};+module.exports = {+    Cochoice: Cochoice, +    unleft: unleft, +    unright: unright+};++},{"../Data.Either":138,"../Data.Profunctor":231}],227:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Monad = require("../Control.Monad");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Distributive = require("../Data.Distributive");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");+var Data_Profunctor_Cochoice = require("../Data.Profunctor.Cochoice");+var Data_Profunctor_Costrong = require("../Data.Profunctor.Costrong");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Costar = function (x) {+    return x;+};+var semigroupoidCostar = function (dictExtend) {+    return new Control_Semigroupoid.Semigroupoid(function (v) {+        return function (v1) {+            return Control_Extend.composeCoKleisliFlipped(dictExtend)(v)(v1);+        };+    });+};+var profunctorCostar = function (dictFunctor) {+    return new Data_Profunctor.Profunctor(function (f) {+        return function (g) {+            return function (v) {+                return function ($54) {+                    return g(v(Data_Functor.map(dictFunctor)(f)($54)));+                };+            };+        };+    });+};+var strongCostar = function (dictComonad) {+    return new Data_Profunctor_Strong.Strong(function () {+        return profunctorCostar((dictComonad.Extend0()).Functor0());+    }, function (v) {+        return function (x) {+            return new Data_Tuple.Tuple(v(Data_Functor.map((dictComonad.Extend0()).Functor0())(Data_Tuple.fst)(x)), Data_Tuple.snd(Control_Comonad.extract(dictComonad)(x)));+        };+    }, function (v) {+        return function (x) {+            return new Data_Tuple.Tuple(Data_Tuple.fst(Control_Comonad.extract(dictComonad)(x)), v(Data_Functor.map((dictComonad.Extend0()).Functor0())(Data_Tuple.snd)(x)));+        };+    });+};+var newtypeCostar = new Data_Newtype.Newtype(function (n) {+    return n;+}, Costar);+var hoistCostar = function (f) {+    return function (v) {+        return Data_Profunctor.lmap(Data_Profunctor.profunctorFn)(f)(v);+    };+};+var functorCostar = new Data_Functor.Functor(function (f) {+    return function (v) {+        return function ($55) {+            return f(v($55));+        };+    };+});+var invariantCostar = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorCostar));+var distributiveCostar = new Data_Distributive.Distributive(function () {+    return functorCostar;+}, function (dictFunctor) {+    return function (f) {+        return function ($56) {+            return Data_Distributive.distribute(distributiveCostar)(dictFunctor)(Data_Functor.map(dictFunctor)(f)($56));+        };+    };+}, function (dictFunctor) {+    return function (f) {+        return function (a) {+            return Data_Functor.map(dictFunctor)(function (v) {+                return v(a);+            })(f);+        };+    };+});+var costrongCostar = function (dictFunctor) {+    return new Data_Profunctor_Costrong.Costrong(function () {+        return profunctorCostar(dictFunctor);+    }, function (v) {+        return function (fb) {+            var bd = v(Data_Functor.map(dictFunctor)(function (a) {+                return new Data_Tuple.Tuple(a, Data_Tuple.snd(bd));+            })(fb));+            return Data_Tuple.fst(bd);+        };+    }, function (v) {+        return function (fb) {+            var db = v(Data_Functor.map(dictFunctor)(function (a) {+                return new Data_Tuple.Tuple(Data_Tuple.fst(db), a);+            })(fb));+            return Data_Tuple.snd(db);+        };+    });+};+var cochoiceCostar = function (dictApplicative) {+    return new Data_Profunctor_Cochoice.Cochoice(function () {+        return profunctorCostar((dictApplicative.Apply0()).Functor0());+    }, function (v) {+        var g = function ($57) {+            return Data_Either.either(Control_Category.id(Control_Category.categoryFn))(function (r) {+                return g(Control_Applicative.pure(dictApplicative)(new Data_Either.Right(r)));+            })(v($57));+        };+        return function ($58) {+            return g(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Left.create)($58));+        };+    }, function (v) {+        var g = function ($59) {+            return Data_Either.either(function (l) {+                return g(Control_Applicative.pure(dictApplicative)(new Data_Either.Left(l)));+            })(Control_Category.id(Control_Category.categoryFn))(v($59));+        };+        return function ($60) {+            return g(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Right.create)($60));+        };+    });+};+var closedCostar = function (dictFunctor) {+    return new Data_Profunctor_Closed.Closed(function () {+        return profunctorCostar(dictFunctor);+    }, function (v) {+        return function (g) {+            return function (x) {+                return v(Data_Functor.map(dictFunctor)(function (v1) {+                    return v1(x);+                })(g));+            };+        };+    });+};+var categoryCostar = function (dictComonad) {+    return new Control_Category.Category(function () {+        return semigroupoidCostar(dictComonad.Extend0());+    }, Control_Comonad.extract(dictComonad));+};+var applyCostar = new Control_Apply.Apply(function () {+    return functorCostar;+}, function (v) {+    return function (v1) {+        return function (a) {+            return v(a)(v1(a));+        };+    };+});+var bindCostar = new Control_Bind.Bind(function () {+    return applyCostar;+}, function (v) {+    return function (f) {+        return function (x) {+            var v1 = f(v(x));+            return v1(x);+        };+    };+});+var applicativeCostar = new Control_Applicative.Applicative(function () {+    return applyCostar;+}, function (a) {+    return function (v) {+        return a;+    };+});+var monadCostar = new Control_Monad.Monad(function () {+    return applicativeCostar;+}, function () {+    return bindCostar;+});+module.exports = {+    Costar: Costar, +    hoistCostar: hoistCostar, +    newtypeCostar: newtypeCostar, +    semigroupoidCostar: semigroupoidCostar, +    categoryCostar: categoryCostar, +    functorCostar: functorCostar, +    invariantCostar: invariantCostar, +    applyCostar: applyCostar, +    applicativeCostar: applicativeCostar, +    bindCostar: bindCostar, +    monadCostar: monadCostar, +    distributiveCostar: distributiveCostar, +    profunctorCostar: profunctorCostar, +    strongCostar: strongCostar, +    costrongCostar: costrongCostar, +    cochoiceCostar: cochoiceCostar, +    closedCostar: closedCostar+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Monad":87,"../Control.Semigroupoid":93,"../Data.Distributive":136,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Closed":225,"../Data.Profunctor.Cochoice":226,"../Data.Profunctor.Costrong":228,"../Data.Profunctor.Strong":230,"../Data.Tuple":255,"../Prelude":278}],228:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Profunctor = require("../Data.Profunctor");+var Data_Tuple = require("../Data.Tuple");+var Costrong = function (Profunctor0, unfirst, unsecond) {+    this.Profunctor0 = Profunctor0;+    this.unfirst = unfirst;+    this.unsecond = unsecond;+};+var unsecond = function (dict) {+    return dict.unsecond;+};+var unfirst = function (dict) {+    return dict.unfirst;+};+module.exports = {+    Costrong: Costrong, +    unfirst: unfirst, +    unsecond: unsecond+};++},{"../Data.Profunctor":231,"../Data.Tuple":255}],229:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Alt = require("../Control.Alt");+var Control_Alternative = require("../Control.Alternative");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Monad = require("../Control.Monad");+var Control_MonadPlus = require("../Control.MonadPlus");+var Control_MonadZero = require("../Control.MonadZero");+var Control_Plus = require("../Control.Plus");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Distributive = require("../Data.Distributive");+var Data_Either = require("../Data.Either");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_Newtype = require("../Data.Newtype");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Profunctor_Choice = require("../Data.Profunctor.Choice");+var Data_Profunctor_Closed = require("../Data.Profunctor.Closed");+var Data_Profunctor_Strong = require("../Data.Profunctor.Strong");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Star = function (x) {+    return x;+};+var semigroupoidStar = function (dictBind) {+    return new Control_Semigroupoid.Semigroupoid(function (v) {+        return function (v1) {+            return function (x) {+                return Control_Bind.bind(dictBind)(v1(x))(v);+            };+        };+    });+};+var profunctorStar = function (dictFunctor) {+    return new Data_Profunctor.Profunctor(function (f) {+        return function (g) {+            return function (v) {+                return function ($78) {+                    return Data_Functor.map(dictFunctor)(g)(v(f($78)));+                };+            };+        };+    });+};+var strongStar = function (dictFunctor) {+    return new Data_Profunctor_Strong.Strong(function () {+        return profunctorStar(dictFunctor);+    }, function (v) {+        return function (v1) {+            return Data_Functor.map(dictFunctor)(function (v2) {+                return new Data_Tuple.Tuple(v2, v1.value1);+            })(v(v1.value0));+        };+    }, function (v) {+        return function (v1) {+            return Data_Functor.map(dictFunctor)(Data_Tuple.Tuple.create(v1.value0))(v(v1.value1));+        };+    });+};+var newtypeStar = new Data_Newtype.Newtype(function (n) {+    return n;+}, Star);+var invariantStar = function (dictInvariant) {+    return new Data_Functor_Invariant.Invariant(function (f) {+        return function (g) {+            return function (v) {+                return function ($79) {+                    return Data_Functor_Invariant.imap(dictInvariant)(f)(g)(v($79));+                };+            };+        };+    });+};+var hoistStar = function (f) {+    return function (v) {+        return function ($80) {+            return f(v($80));+        };+    };+};+var functorStar = function (dictFunctor) {+    return new Data_Functor.Functor(function (f) {+        return function (v) {+            return function ($81) {+                return Data_Functor.map(dictFunctor)(f)(v($81));+            };+        };+    });+};+var distributiveStar = function (dictDistributive) {+    return new Data_Distributive.Distributive(function () {+        return functorStar(dictDistributive.Functor0());+    }, function (dictFunctor) {+        return function (f) {+            return function ($82) {+                return Data_Distributive.distribute(distributiveStar(dictDistributive))(dictFunctor)(Data_Functor.map(dictFunctor)(f)($82));+            };+        };+    }, function (dictFunctor) {+        return function (f) {+            return function (a) {+                return Data_Distributive.collect(dictDistributive)(dictFunctor)(function (v) {+                    return v(a);+                })(f);+            };+        };+    });+};+var closedStar = function (dictDistributive) {+    return new Data_Profunctor_Closed.Closed(function () {+        return profunctorStar(dictDistributive.Functor0());+    }, function (v) {+        return function (g) {+            return Data_Distributive.distribute(dictDistributive)(Data_Functor.functorFn)(function ($83) {+                return v(g($83));+            });+        };+    });+};+var choiceStar = function (dictApplicative) {+    return new Data_Profunctor_Choice.Choice(function () {+        return profunctorStar((dictApplicative.Apply0()).Functor0());+    }, function (v) {+        return Star(Data_Either.either(function ($84) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Left.create)(v($84));+        })(function ($85) {+            return Control_Applicative.pure(dictApplicative)(Data_Either.Right.create($85));+        }));+    }, function (v) {+        return Star(Data_Either.either(function ($86) {+            return Control_Applicative.pure(dictApplicative)(Data_Either.Left.create($86));+        })(function ($87) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Either.Right.create)(v($87));+        }));+    });+};+var categoryStar = function (dictMonad) {+    return new Control_Category.Category(function () {+        return semigroupoidStar(dictMonad.Bind1());+    }, Control_Applicative.pure(dictMonad.Applicative0()));+};+var applyStar = function (dictApply) {+    return new Control_Apply.Apply(function () {+        return functorStar(dictApply.Functor0());+    }, function (v) {+        return function (v1) {+            return function (a) {+                return Control_Apply.apply(dictApply)(v(a))(v1(a));+            };+        };+    });+};+var bindStar = function (dictBind) {+    return new Control_Bind.Bind(function () {+        return applyStar(dictBind.Apply0());+    }, function (v) {+        return function (f) {+            return function (x) {+                return Control_Bind.bind(dictBind)(v(x))(function (a) {+                    var v1 = f(a);+                    return v1(x);+                });+            };+        };+    });+};+var applicativeStar = function (dictApplicative) {+    return new Control_Applicative.Applicative(function () {+        return applyStar(dictApplicative.Apply0());+    }, function (a) {+        return function (v) {+            return Control_Applicative.pure(dictApplicative)(a);+        };+    });+};+var monadStar = function (dictMonad) {+    return new Control_Monad.Monad(function () {+        return applicativeStar(dictMonad.Applicative0());+    }, function () {+        return bindStar(dictMonad.Bind1());+    });+};+var altStar = function (dictAlt) {+    return new Control_Alt.Alt(function () {+        return functorStar(dictAlt.Functor0());+    }, function (v) {+        return function (v1) {+            return function (a) {+                return Control_Alt.alt(dictAlt)(v(a))(v1(a));+            };+        };+    });+};+var plusStar = function (dictPlus) {+    return new Control_Plus.Plus(function () {+        return altStar(dictPlus.Alt0());+    }, function (v) {+        return Control_Plus.empty(dictPlus);+    });+};+var alternativeStar = function (dictAlternative) {+    return new Control_Alternative.Alternative(function () {+        return applicativeStar(dictAlternative.Applicative0());+    }, function () {+        return plusStar(dictAlternative.Plus1());+    });+};+var monadZeroStar = function (dictMonadZero) {+    return new Control_MonadZero.MonadZero(function () {+        return alternativeStar(dictMonadZero.Alternative1());+    }, function () {+        return monadStar(dictMonadZero.Monad0());+    });+};+var monadPlusStar = function (dictMonadPlus) {+    return new Control_MonadPlus.MonadPlus(function () {+        return monadZeroStar(dictMonadPlus.MonadZero0());+    });+};+module.exports = {+    Star: Star, +    hoistStar: hoistStar, +    newtypeStar: newtypeStar, +    semigroupoidStar: semigroupoidStar, +    categoryStar: categoryStar, +    functorStar: functorStar, +    invariantStar: invariantStar, +    applyStar: applyStar, +    applicativeStar: applicativeStar, +    bindStar: bindStar, +    monadStar: monadStar, +    altStar: altStar, +    plusStar: plusStar, +    alternativeStar: alternativeStar, +    monadZeroStar: monadZeroStar, +    monadPlusStar: monadPlusStar, +    distributiveStar: distributiveStar, +    profunctorStar: profunctorStar, +    strongStar: strongStar, +    choiceStar: choiceStar, +    closedStar: closedStar+};++},{"../Control.Alt":38,"../Control.Alternative":39,"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":87,"../Control.MonadPlus":88,"../Control.MonadZero":89,"../Control.Plus":92,"../Control.Semigroupoid":93,"../Data.Distributive":136,"../Data.Either":138,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.Newtype":215,"../Data.Profunctor":231,"../Data.Profunctor.Choice":224,"../Data.Profunctor.Closed":225,"../Data.Profunctor.Strong":230,"../Data.Tuple":255,"../Prelude":278}],230:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Functor = require("../Data.Functor");+var Data_Profunctor = require("../Data.Profunctor");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Strong = function (Profunctor0, first, second) {+    this.Profunctor0 = Profunctor0;+    this.first = first;+    this.second = second;+};+var strongFn = new Strong(function () {+    return Data_Profunctor.profunctorFn;+}, function (a2b) {+    return function (v) {+        return new Data_Tuple.Tuple(a2b(v.value0), v.value1);+    };+}, Data_Functor.map(Data_Tuple.functorTuple));+var second = function (dict) {+    return dict.second;+};+var first = function (dict) {+    return dict.first;+};+var splitStrong = function (dictCategory) {+    return function (dictStrong) {+        return function (l) {+            return function (r) {+                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(first(dictStrong)(l))(second(dictStrong)(r));+            };+        };+    };+};+var fanout = function (dictCategory) {+    return function (dictStrong) {+        return function (l) {+            return function (r) {+                var split = Data_Profunctor.dimap(dictStrong.Profunctor0())(Control_Category.id(Control_Category.categoryFn))(function (a) {+                    return new Data_Tuple.Tuple(a, a);+                })(Control_Category.id(dictCategory));+                return Control_Semigroupoid.composeFlipped(dictCategory.Semigroupoid0())(split)(splitStrong(dictCategory)(dictStrong)(l)(r));+            };+        };+    };+};+module.exports = {+    Strong: Strong, +    fanout: fanout, +    first: first, +    second: second, +    splitStrong: splitStrong, +    strongFn: strongFn+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Functor":157,"../Data.Profunctor":231,"../Data.Tuple":255,"../Prelude":278}],231:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Newtype = require("../Data.Newtype");+var Prelude = require("../Prelude");+var Profunctor = function (dimap) {+    this.dimap = dimap;+};+var profunctorFn = new Profunctor(function (a2b) {+    return function (c2d) {+        return function (b2c) {+            return function ($9) {+                return c2d(b2c(a2b($9)));+            };+        };+    };+});+var dimap = function (dict) {+    return dict.dimap;+};+var lmap = function (dictProfunctor) {+    return function (a2b) {+        return dimap(dictProfunctor)(a2b)(Control_Category.id(Control_Category.categoryFn));+    };+};+var rmap = function (dictProfunctor) {+    return function (b2c) {+        return dimap(dictProfunctor)(Control_Category.id(Control_Category.categoryFn))(b2c);+    };+};+var unwrapIso = function (dictProfunctor) {+    return function (dictNewtype) {+        return dimap(dictProfunctor)(Data_Newtype.wrap(dictNewtype))(Data_Newtype.unwrap(dictNewtype));+    };+};+var wrapIso = function (dictProfunctor) {+    return function (dictNewtype) {+        return function (v) {+            return dimap(dictProfunctor)(Data_Newtype.unwrap(dictNewtype))(Data_Newtype.wrap(dictNewtype));+        };+    };+};+var arr = function (dictCategory) {+    return function (dictProfunctor) {+        return function (f) {+            return rmap(dictProfunctor)(f)(Control_Category.id(dictCategory));+        };+    };+};+module.exports = {+    Profunctor: Profunctor, +    arr: arr, +    dimap: dimap, +    lmap: lmap, +    rmap: rmap, +    unwrapIso: unwrapIso, +    wrapIso: wrapIso, +    profunctorFn: profunctorFn+};++},{"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Newtype":215,"../Prelude":278}],232:[function(require,module,exports){+"use strict";++exports.intSub = function (x) {+  return function (y) {+    /* jshint bitwise: false */+    return x - y | 0;+  };+};++exports.numSub = function (n1) {+  return function (n2) {+    return n1 - n2;+  };+};++},{}],233:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Semiring = require("../Data.Semiring");+var Data_Unit = require("../Data.Unit");+var Ring = function (Semiring0, sub) {+    this.Semiring0 = Semiring0;+    this.sub = sub;+};+var sub = function (dict) {+    return dict.sub;+};+var ringUnit = new Ring(function () {+    return Data_Semiring.semiringUnit;+}, function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+});+var ringNumber = new Ring(function () {+    return Data_Semiring.semiringNumber;+}, $foreign.numSub);+var ringInt = new Ring(function () {+    return Data_Semiring.semiringInt;+}, $foreign.intSub);+var ringFn = function (dictRing) {+    return new Ring(function () {+        return Data_Semiring.semiringFn(dictRing.Semiring0());+    }, function (f) {+        return function (g) {+            return function (x) {+                return sub(dictRing)(f(x))(g(x));+            };+        };+    });+};+var negate = function (dictRing) {+    return function (a) {+        return sub(dictRing)(Data_Semiring.zero(dictRing.Semiring0()))(a);+    };+};+module.exports = {+    Ring: Ring, +    negate: negate, +    sub: sub, +    ringInt: ringInt, +    ringNumber: ringNumber, +    ringUnit: ringUnit, +    ringFn: ringFn+};++},{"../Data.Semiring":239,"../Data.Unit":259,"./foreign":232}],234:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Monoid_Dual = require("../Data.Monoid.Dual");+var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Act = function (x) {+    return x;+};+var Foldable1 = function (Foldable0, fold1, foldMap1) {+    this.Foldable0 = Foldable0;+    this.fold1 = fold1;+    this.foldMap1 = foldMap1;+};+var semigroupAct = function (dictApply) {+    return new Data_Semigroup.Semigroup(function (v) {+        return function (v1) {+            return Control_Apply.applySecond(dictApply)(v)(v1);+        };+    });+};+var getAct = function (v) {+    return v;+};+var foldMap1 = function (dict) {+    return dict.foldMap1;+};+var traverse1_ = function (dictFoldable1) {+    return function (dictApply) {+        return function (f) {+            return function (t) {+                return Data_Functor.voidRight(dictApply.Functor0())(Data_Unit.unit)(getAct(foldMap1(dictFoldable1)(semigroupAct(dictApply))(function ($28) {+                    return Act(f($28));+                })(t)));+            };+        };+    };+};+var for1_ = function (dictFoldable1) {+    return function (dictApply) {+        return Data_Function.flip(traverse1_(dictFoldable1)(dictApply));+    };+};+var sequence1_ = function (dictFoldable1) {+    return function (dictApply) {+        return traverse1_(dictFoldable1)(dictApply)(Control_Category.id(Control_Category.categoryFn));+    };+};+var fold1Default = function (dictFoldable1) {+    return function (dictSemigroup) {+        return foldMap1(dictFoldable1)(dictSemigroup)(Control_Category.id(Control_Category.categoryFn));+    };+};+var foldableDual = new Foldable1(function () {+    return Data_Foldable.foldableDual;+}, function (dictSemigroup) {+    return fold1Default(foldableDual)(dictSemigroup);+}, function (dictSemigroup) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+});+var foldableMultiplicative = new Foldable1(function () {+    return Data_Foldable.foldableMultiplicative;+}, function (dictSemigroup) {+    return fold1Default(foldableMultiplicative)(dictSemigroup);+}, function (dictSemigroup) {+    return function (f) {+        return function (v) {+            return f(v);+        };+    };+});+var fold1 = function (dict) {+    return dict.fold1;+};+var foldMap1Default = function (dictFoldable1) {+    return function (dictFunctor) {+        return function (dictSemigroup) {+            return function (f) {+                return function ($29) {+                    return fold1(dictFoldable1)(dictSemigroup)(Data_Functor.map(dictFunctor)(f)($29));+                };+            };+        };+    };+};+module.exports = {+    Foldable1: Foldable1, +    fold1: fold1, +    fold1Default: fold1Default, +    foldMap1: foldMap1, +    foldMap1Default: foldMap1Default, +    for1_: for1_, +    sequence1_: sequence1_, +    traverse1_: traverse1_, +    foldableDual: foldableDual, +    foldableMultiplicative: foldableMultiplicative+};++},{"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.Monoid.Dual":210,"../Data.Monoid.Multiplicative":212,"../Data.Semigroup":237,"../Data.Unit":259,"../Prelude":278}],235:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Category = require("../Control.Category");+var Data_Functor = require("../Data.Functor");+var Data_Semigroup_Foldable = require("../Data.Semigroup.Foldable");+var Data_Traversable = require("../Data.Traversable");+var Prelude = require("../Prelude");+var Traversable1 = function (Foldable10, Traversable1, sequence1, traverse1) {+    this.Foldable10 = Foldable10;+    this.Traversable1 = Traversable1;+    this.sequence1 = sequence1;+    this.traverse1 = traverse1;+};+var traverse1 = function (dict) {+    return dict.traverse1;+};+var sequence1Default = function (dictTraversable1) {+    return function (dictApply) {+        return traverse1(dictTraversable1)(dictApply)(Control_Category.id(Control_Category.categoryFn));+    };+};+var sequence1 = function (dict) {+    return dict.sequence1;+};+var traverse1Default = function (dictTraversable1) {+    return function (dictApply) {+        return function (f) {+            return function (ta) {+                return sequence1(dictTraversable1)(dictApply)(Data_Functor.map((dictTraversable1.Traversable1()).Functor0())(f)(ta));+            };+        };+    };+};+module.exports = {+    Traversable1: Traversable1, +    sequence1: sequence1, +    sequence1Default: sequence1Default, +    traverse1: traverse1, +    traverse1Default: traverse1Default+};++},{"../Control.Category":47,"../Data.Functor":157,"../Data.Semigroup.Foldable":234,"../Data.Traversable":254,"../Prelude":278}],236:[function(require,module,exports){+"use strict";++exports.concatString = function (s1) {+  return function (s2) {+    return s1 + s2;+  };+};++exports.concatArray = function (xs) {+  return function (ys) {+    if (xs.length === 0) return ys;+    if (ys.length === 0) return xs;+    return xs.concat(ys);+  };+};++},{}],237:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Unit = require("../Data.Unit");+var Data_Void = require("../Data.Void");+var Semigroup = function (append) {+    this.append = append;+};+var semigroupVoid = new Semigroup(function (v) {+    return Data_Void.absurd;+});+var semigroupUnit = new Semigroup(function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+});+var semigroupString = new Semigroup($foreign.concatString);+var semigroupArray = new Semigroup($foreign.concatArray);+var append = function (dict) {+    return dict.append;+};+var semigroupFn = function (dictSemigroup) {+    return new Semigroup(function (f) {+        return function (g) {+            return function (x) {+                return append(dictSemigroup)(f(x))(g(x));+            };+        };+    });+};+module.exports = {+    Semigroup: Semigroup, +    append: append, +    semigroupString: semigroupString, +    semigroupUnit: semigroupUnit, +    semigroupVoid: semigroupVoid, +    semigroupFn: semigroupFn, +    semigroupArray: semigroupArray+};++},{"../Data.Unit":259,"../Data.Void":260,"./foreign":236}],238:[function(require,module,exports){+"use strict";++exports.intAdd = function (x) {+  return function (y) {+    /* jshint bitwise: false */+    return x + y | 0;+  };+};++exports.intMul = function (x) {+  return function (y) {+    /* jshint bitwise: false */+    return x * y | 0;+  };+};++exports.numAdd = function (n1) {+  return function (n2) {+    return n1 + n2;+  };+};++exports.numMul = function (n1) {+  return function (n2) {+    return n1 * n2;+  };+};++},{}],239:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Unit = require("../Data.Unit");+var Semiring = function (add, mul, one, zero) {+    this.add = add;+    this.mul = mul;+    this.one = one;+    this.zero = zero;+};+var zero = function (dict) {+    return dict.zero;+};+var semiringUnit = new Semiring(function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+}, function (v) {+    return function (v1) {+        return Data_Unit.unit;+    };+}, Data_Unit.unit, Data_Unit.unit);+var semiringNumber = new Semiring($foreign.numAdd, $foreign.numMul, 1.0, 0.0);+var semiringInt = new Semiring($foreign.intAdd, $foreign.intMul, 1, 0);+var one = function (dict) {+    return dict.one;+};+var mul = function (dict) {+    return dict.mul;+};+var add = function (dict) {+    return dict.add;+};+var semiringFn = function (dictSemiring) {+    return new Semiring(function (f) {+        return function (g) {+            return function (x) {+                return add(dictSemiring)(f(x))(g(x));+            };+        };+    }, function (f) {+        return function (g) {+            return function (x) {+                return mul(dictSemiring)(f(x))(g(x));+            };+        };+    }, function (v) {+        return one(dictSemiring);+    }, function (v) {+        return zero(dictSemiring);+    });+};+module.exports = {+    Semiring: Semiring, +    add: add, +    mul: mul, +    one: one, +    zero: zero, +    semiringInt: semiringInt, +    semiringNumber: semiringNumber, +    semiringFn: semiringFn, +    semiringUnit: semiringUnit+};++},{"../Data.Unit":259,"./foreign":238}],240:[function(require,module,exports){+"use strict";++exports.showIntImpl = function (n) {+  return n.toString();+};++exports.showNumberImpl = function (n) {+  var str = n.toString();+  return isNaN(str + ".0") ? str : str + ".0";+};++exports.showCharImpl = function (c) {+  var code = c.charCodeAt(0);+  if (code < 0x20 || code === 0x7F) {+    switch (c) {+      case "\x07": return "'\\a'";+      case "\b": return "'\\b'";+      case "\f": return "'\\f'";+      case "\n": return "'\\n'";+      case "\r": return "'\\r'";+      case "\t": return "'\\t'";+      case "\v": return "'\\v'";+    }+    return "'\\" + code.toString(10) + "'";+  }+  return c === "'" || c === "\\" ? "'\\" + c + "'" : "'" + c + "'";+};++exports.showStringImpl = function (s) {+  var l = s.length;+  return "\"" + s.replace(+    /[\0-\x1F\x7F"\\]/g, // eslint-disable-line no-control-regex+    function (c, i) {+      switch (c) {+        case "\"":+        case "\\":+          return "\\" + c;+        case "\x07": return "\\a";+        case "\b": return "\\b";+        case "\f": return "\\f";+        case "\n": return "\\n";+        case "\r": return "\\r";+        case "\t": return "\\t";+        case "\v": return "\\v";+      }+      var k = i + 1;+      var empty = k < l && s[k] >= "0" && s[k] <= "9" ? "\\&" : "";+      return "\\" + c.charCodeAt(0).toString(10) + empty;+    }+  ) + "\"";+};++exports.showArrayImpl = function (f) {+  return function (xs) {+    var ss = [];+    for (var i = 0, l = xs.length; i < l; i++) {+      ss[i] = f(xs[i]);+    }+    return "[" + ss.join(",") + "]";+  };+};++},{}],241:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Show = function (show) {+    this.show = show;+};+var showString = new Show($foreign.showStringImpl);+var showNumber = new Show($foreign.showNumberImpl);+var showInt = new Show($foreign.showIntImpl);+var showChar = new Show($foreign.showCharImpl);+var showBoolean = new Show(function (v) {+    if (v) {+        return "true";+    };+    if (!v) {+        return "false";+    };+    throw new Error("Failed pattern match at Data.Show line 13, column 3 - line 14, column 3: " + [ v.constructor.name ]);+});+var show = function (dict) {+    return dict.show;+};+var showArray = function (dictShow) {+    return new Show($foreign.showArrayImpl(show(dictShow)));+};+module.exports = {+    Show: Show, +    show: show, +    showBoolean: showBoolean, +    showInt: showInt, +    showNumber: showNumber, +    showChar: showChar, +    showString: showString, +    showArray: showArray+};++},{"./foreign":240}],242:[function(require,module,exports){+"use strict";++exports["new"] = function () {+  return {};+};++exports.peekImpl = function (just) {+  return function (nothing) {+    return function (m) {+      return function (k) {+        return function () {+          return {}.hasOwnProperty.call(m, k) ? just(m[k]) : nothing;+        };+      };+    };+  };+};++exports.poke = function (m) {+  return function (k) {+    return function (v) {+      return function () {+        m[k] = v;+        return m;+      };+    };+  };+};++exports["delete"] = function (m) {+  return function (k) {+    return function () {+      delete m[k];+      return m;+    };+  };+};++},{}],243:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_ST = require("../Control.Monad.ST");+var Data_Maybe = require("../Data.Maybe");+var peek = $foreign.peekImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+module.exports = {+    peek: peek, +    "delete": $foreign["delete"], +    "new": $foreign["new"], +    poke: $foreign.poke+};++},{"../Control.Monad.Eff":71,"../Control.Monad.ST":80,"../Data.Maybe":204,"./foreign":242}],244:[function(require,module,exports){+"use strict";++exports._copyEff = function (m) {+  return function () {+    var r = {};+    for (var k in m) {+      if (hasOwnProperty.call(m, k)) {+        r[k] = m[k];+      }+    }+    return r;+  };+};++exports.empty = {};++exports.runST = function (f) {+  return f;+};++exports._fmapStrMap = function (m0, f) {+  var m = {};+  for (var k in m0) {+    if (hasOwnProperty.call(m0, k)) {+      m[k] = f(m0[k]);+    }+  }+  return m;+};++exports._mapWithKey = function (m0, f) {+  var m = {};+  for (var k in m0) {+    if (hasOwnProperty.call(m0, k)) {+      m[k] = f(k)(m0[k]);+    }+  }+  return m;+};++exports._foldM = function (bind) {+  return function (f) {+    return function (mz) {+      return function (m) {+        var acc = mz;+        function g(k) {+          return function (z) {+            return f(z)(k)(m[k]);+          };+        }+        for (var k in m) {+          if (hasOwnProperty.call(m, k)) {+            acc = bind(acc)(g(k));+          }+        }+        return acc;+      };+    };+  };+};++exports._foldSCStrMap = function (m, z, f, fromMaybe) {+  var acc = z;+  for (var k in m) {+    if (hasOwnProperty.call(m, k)) {+      var maybeR = f(acc)(k)(m[k]);+      var r = fromMaybe(null)(maybeR);+      if (r === null) return acc;+      else acc = r;+    }+  }+  return acc;+};++exports.all = function (f) {+  return function (m) {+    for (var k in m) {+      if (hasOwnProperty.call(m, k) && !f(k)(m[k])) return false;+    }+    return true;+  };+};++exports.size = function (m) {+  var s = 0;+  for (var k in m) {+    if (hasOwnProperty.call(m, k)) {+      ++s;+    }+  }+  return s;+};++exports._lookup = function (no, yes, k, m) {+  return k in m ? yes(m[k]) : no;+};++exports._unsafeDeleteStrMap = function (m, k) {+  delete m[k];+  return m;+};++exports._lookupST = function (no, yes, k, m) {+  return function () {+    return k in m ? yes(m[k]) : no;+  };+};++function toArrayWithKey(f) {+  return function (m) {+    var r = [];+    for (var k in m) {+      if (hasOwnProperty.call(m, k)) {+        r.push(f(k)(m[k]));+      }+    }+    return r;+  };+}++exports.toArrayWithKey = toArrayWithKey;++exports.keys = Object.keys || toArrayWithKey(function (k) {+  return function () { return k; };+});++},{}],245:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_ST = require("../Control.Monad.ST");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Array = require("../Data.Array");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Monoid = require("../Data.Monoid");+var Data_Ord = require("../Data.Ord");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_StrMap_ST = require("../Data.StrMap.ST");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unfoldable = require("../Data.Unfoldable");+var Prelude = require("../Prelude");+var values = $foreign.toArrayWithKey(function (v) {+    return function (v1) {+        return v1;+    };+});+var toUnfoldable = function (dictUnfoldable) {+    return function ($44) {+        return Data_Array.toUnfoldable(dictUnfoldable)($foreign.toArrayWithKey(Data_Tuple.Tuple.create)($44));+    };+};+var toAscUnfoldable = function (dictUnfoldable) {+    return function ($45) {+        return Data_Array.toUnfoldable(dictUnfoldable)(Data_Array.sortWith(Data_Ord.ordString)(Data_Tuple.fst)($foreign.toArrayWithKey(Data_Tuple.Tuple.create)($45)));+    };+};+var toAscArray = toAscUnfoldable(Data_Unfoldable.unfoldableArray);+var toArray = $foreign.toArrayWithKey(Data_Tuple.Tuple.create);+var thawST = $foreign._copyEff;+var showStrMap = function (dictShow) {+    return new Data_Show.Show(function (m) {+        return "(fromFoldable " + (Data_Show.show(Data_Show.showArray(Data_Tuple.showTuple(Data_Show.showString)(dictShow)))(toArray(m)) + ")");+    });+};+var pureST = function (f) {+    return Control_Monad_Eff.runPure($foreign.runST(f));+};+var singleton = function (k) {+    return function (v) {+        return pureST(function __do() {+            var v1 = Data_StrMap_ST["new"]();+            return Data_StrMap_ST.poke(v1)(k)(v)();+        });+    };+};+var mutate = function (f) {+    return function (m) {+        return pureST(function __do() {+            var v = thawST(m)();+            var v1 = f(v)();+            return v;+        });+    };+};+var member = Data_Function_Uncurried.runFn4($foreign._lookup)(false)(Data_Function["const"](true));+var mapWithKey = function (f) {+    return function (m) {+        return $foreign._mapWithKey(m, f);+    };+};+var lookup = Data_Function_Uncurried.runFn4($foreign._lookup)(Data_Maybe.Nothing.value)(Data_Maybe.Just.create);+var isSubmap = function (dictEq) {+    return function (m1) {+        return function (m2) {+            var f = function (k) {+                return function (v) {+                    return $foreign._lookup(false, Data_Eq.eq(dictEq)(v), k, m2);+                };+            };+            return $foreign.all(f)(m1);+        };+    };+};+var isEmpty = $foreign.all(function (v) {+    return function (v1) {+        return false;+    };+});+var insert = function (k) {+    return function (v) {+        return mutate(function (s) {+            return Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_StrMap_ST.poke(s)(k)(v));+        });+    };+};+var functorStrMap = new Data_Functor.Functor(function (f) {+    return function (m) {+        return $foreign._fmapStrMap(m, f);+    };+});+var fromFoldableWith = function (dictFoldable) {+    return function (f) {+        return function (l) {+            return pureST(function __do() {+                var v = Data_StrMap_ST["new"]();+                Data_Foldable.for_(Control_Monad_Eff.applicativeEff)(dictFoldable)(l)(function (v1) {+                    return Control_Bind.bind(Control_Monad_Eff.bindEff)($foreign._lookupST(v1.value1, f(v1.value1), v1.value0, v))(Data_StrMap_ST.poke(v)(v1.value0));+                })();+                return v;+            });+        };+    };+};+var fromFoldable = function (dictFoldable) {+    return function (l) {+        return pureST(function __do() {+            var v = Data_StrMap_ST["new"]();+            Control_Monad_Eff.foreachE(Data_Array.fromFoldable(dictFoldable)(l))(function (v1) {+                return Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_StrMap_ST.poke(v)(v1.value0)(v1.value1));+            })();+            return v;+        });+    };+};+var freezeST = $foreign._copyEff;+var foldMaybe = function (f) {+    return function (z) {+        return function (m) {+            return $foreign._foldSCStrMap(m, z, f, Data_Maybe.fromMaybe);+        };+    };+};+var foldM = function (dictMonad) {+    return function (f) {+        return function (z) {+            return $foreign._foldM(Control_Bind.bind(dictMonad.Bind1()))(f)(Control_Applicative.pure(dictMonad.Applicative0())(z));+        };+    };+};+var semigroupStrMap = function (dictSemigroup) {+    return new Data_Semigroup.Semigroup(function (m1) {+        return function (m2) {+            return mutate(function (s1) {+                return Data_Functor["void"](Control_Monad_Eff.functorEff)(foldM(Control_Monad_Eff.monadEff)(function (s2) {+                    return function (k) {+                        return function (v2) {+                            return Data_StrMap_ST.poke(s2)(k)($foreign._lookup(v2, function (v1) {+                                return Data_Semigroup.append(dictSemigroup)(v1)(v2);+                            }, k, m2));+                        };+                    };+                })(s1)(m1));+            })(m2);+        };+    });+};+var monoidStrMap = function (dictSemigroup) {+    return new Data_Monoid.Monoid(function () {+        return semigroupStrMap(dictSemigroup);+    }, $foreign.empty);+};+var union = function (m) {+    return mutate(function (s) {+        return Data_Functor["void"](Control_Monad_Eff.functorEff)(foldM(Control_Monad_Eff.monadEff)(Data_StrMap_ST.poke)(s)(m));+    });+};+var unions = function (dictFoldable) {+    return Data_Foldable.foldl(dictFoldable)(union)($foreign.empty);+};+var fold = $foreign._foldM(Data_Function.applyFlipped);+var foldMap = function (dictMonoid) {+    return function (f) {+        return fold(function (acc) {+            return function (k) {+                return function (v) {+                    return Data_Semigroup.append(dictMonoid.Semigroup0())(acc)(f(k)(v));+                };+            };+        })(Data_Monoid.mempty(dictMonoid));+    };+};+var foldableStrMap = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return foldMap(dictMonoid)(Data_Function["const"](f));+    };+}, function (f) {+    return fold(function (z) {+        return function (v) {+            return f(z);+        };+    });+}, function (f) {+    return function (z) {+        return function (m) {+            return Data_Foldable.foldr(Data_Foldable.foldableArray)(f)(z)(values(m));+        };+    };+});+var traversableStrMap = new Data_Traversable.Traversable(function () {+    return foldableStrMap;+}, function () {+    return functorStrMap;+}, function (dictApplicative) {+    return Data_Traversable.traverse(traversableStrMap)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));+}, function (dictApplicative) {+    return function (f) {+        return function (ms) {+            return fold(function (acc) {+                return function (k) {+                    return function (v) {+                        return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(insert(k))(f(v)))(acc);+                    };+                };+            })(Control_Applicative.pure(dictApplicative)($foreign.empty))(ms);+        };+    };+});+var filterWithKey = function (predicate) {+    return function (m) {+        var go = (function () {+            var step = function (acc) {+                return function (k) {+                    return function (v) {+                        var $40 = predicate(k)(v);+                        if ($40) {+                            return Data_StrMap_ST.poke(acc)(k)(v);+                        };+                        return Control_Applicative.pure(Control_Monad_Eff.applicativeEff)(acc);+                    };+                };+            };+            return function __do() {+                var v = Data_StrMap_ST["new"]();+                return foldM(Control_Monad_Eff.monadEff)(step)(v)(m)();+            };+        })();+        return pureST(go);+    };+};+var filterKeys = function (predicate) {+    return filterWithKey(function ($46) {+        return Data_Function["const"](predicate($46));+    });+};+var filter = function (predicate) {+    return filterWithKey(Data_Function["const"](predicate));+};+var eqStrMap = function (dictEq) {+    return new Data_Eq.Eq(function (m1) {+        return function (m2) {+            return isSubmap(dictEq)(m1)(m2) && isSubmap(dictEq)(m2)(m1);+        };+    });+};+var ordStrMap = function (dictOrd) {+    return new Data_Ord.Ord(function () {+        return eqStrMap(dictOrd.Eq0());+    }, function (m1) {+        return function (m2) {+            return Data_Ord.compare(Data_Ord.ordArray(Data_Tuple.ordTuple(Data_Ord.ordString)(dictOrd)))(toAscArray(m1))(toAscArray(m2));+        };+    });+};+var eq1StrMap = new Data_Eq.Eq1(function (dictEq) {+    return Data_Eq.eq(eqStrMap(dictEq));+});+var $$delete = function (k) {+    return mutate(function (s) {+        return Data_Functor["void"](Control_Monad_Eff.functorEff)(Data_StrMap_ST["delete"](s)(k));+    });+};+var pop = function (k) {+    return function (m) {+        return Data_Functor.mapFlipped(Data_Maybe.functorMaybe)(lookup(k)(m))(function (a) {+            return new Data_Tuple.Tuple(a, $$delete(k)(m));+        });+    };+};+var alter = function (f) {+    return function (k) {+        return function (m) {+            var v = f(lookup(k)(m));+            if (v instanceof Data_Maybe.Nothing) {+                return $$delete(k)(m);+            };+            if (v instanceof Data_Maybe.Just) {+                return insert(k)(v.value0)(m);+            };+            throw new Error("Failed pattern match at Data.StrMap line 198, column 15 - line 200, column 25: " + [ v.constructor.name ]);+        };+    };+};+var update = function (f) {+    return function (k) {+        return function (m) {+            return alter(Data_Maybe.maybe(Data_Maybe.Nothing.value)(f))(k)(m);+        };+    };+};+module.exports = {+    alter: alter, +    "delete": $$delete, +    filter: filter, +    filterKeys: filterKeys, +    filterWithKey: filterWithKey, +    fold: fold, +    foldM: foldM, +    foldMap: foldMap, +    foldMaybe: foldMaybe, +    freezeST: freezeST, +    fromFoldable: fromFoldable, +    fromFoldableWith: fromFoldableWith, +    insert: insert, +    isEmpty: isEmpty, +    isSubmap: isSubmap, +    lookup: lookup, +    mapWithKey: mapWithKey, +    member: member, +    pop: pop, +    pureST: pureST, +    singleton: singleton, +    thawST: thawST, +    toAscUnfoldable: toAscUnfoldable, +    toUnfoldable: toUnfoldable, +    union: union, +    unions: unions, +    update: update, +    values: values, +    functorStrMap: functorStrMap, +    foldableStrMap: foldableStrMap, +    traversableStrMap: traversableStrMap, +    eqStrMap: eqStrMap, +    eq1StrMap: eq1StrMap, +    ordStrMap: ordStrMap, +    showStrMap: showStrMap, +    semigroupStrMap: semigroupStrMap, +    monoidStrMap: monoidStrMap, +    all: $foreign.all, +    empty: $foreign.empty, +    keys: $foreign.keys, +    runST: $foreign.runST, +    size: $foreign.size, +    toArrayWithKey: $foreign.toArrayWithKey+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad.Eff":71,"../Control.Monad.ST":80,"../Control.Semigroupoid":93,"../Data.Array":120,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Monoid":213,"../Data.Ord":222,"../Data.Semigroup":237,"../Data.Show":241,"../Data.StrMap.ST":243,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unfoldable":257,"../Prelude":278,"./foreign":244}],246:[function(require,module,exports){+"use strict";++exports.charCodeAt = function (i) {+  return function (s) {+    if (i >= 0 && i < s.length) return s.charCodeAt(i);+    throw new Error("Data.String.Unsafe.charCodeAt: Invalid index.");+  };+};++exports.charAt = function (i) {+  return function (s) {+    if (i >= 0 && i < s.length) return s.charAt(i);+    throw new Error("Data.String.Unsafe.charAt: Invalid index.");+  };+};++exports.char = function (s) {+  if (s.length === 1) return s.charAt(0);+  throw new Error("Data.String.Unsafe.char: Expected string of length 1.");+};++},{}],247:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+module.exports = {+    "char": $foreign["char"], +    charAt: $foreign.charAt, +    charCodeAt: $foreign.charCodeAt+};++},{"./foreign":246}],248:[function(require,module,exports){+"use strict";++exports._charAt = function (just) {+  return function (nothing) {+    return function (i) {+      return function (s) {+        return i >= 0 && i < s.length ? just(s.charAt(i)) : nothing;+      };+    };+  };+};++exports.singleton = function (c) {+  return c;+};++exports._charCodeAt = function (just) {+  return function (nothing) {+    return function (i) {+      return function (s) {+        return i >= 0 && i < s.length ? just(s.charCodeAt(i)) : nothing;+      };+    };+  };+};++exports._toChar = function (just) {+  return function (nothing) {+    return function (s) {+      return s.length === 1 ? just(s) : nothing;+    };+  };+};++exports.fromCharArray = function (a) {+  return a.join("");+};++exports._indexOf = function (just) {+  return function (nothing) {+    return function (x) {+      return function (s) {+        var i = s.indexOf(x);+        return i === -1 ? nothing : just(i);+      };+    };+  };+};++exports["_indexOf'"] = function (just) {+  return function (nothing) {+    return function (x) {+      return function (startAt) {+        return function (s) {+          if (startAt < 0 || startAt > s.length) return nothing;+          var i = s.indexOf(x, startAt);+          return i === -1 ? nothing : just(i);+        };+      };+    };+  };+};++exports._lastIndexOf = function (just) {+  return function (nothing) {+    return function (x) {+      return function (s) {+        var i = s.lastIndexOf(x);+        return i === -1 ? nothing : just(i);+      };+    };+  };+};++exports["_lastIndexOf'"] = function (just) {+  return function (nothing) {+    return function (x) {+      return function (startAt) {+        return function (s) {+          if (startAt < 0 || startAt > s.length) return nothing;+          var i = s.lastIndexOf(x, startAt);+          return i === -1 ? nothing : just(i);+        };+      };+    };+  };+};++exports.length = function (s) {+  return s.length;+};++exports._localeCompare = function (lt) {+  return function (eq) {+    return function (gt) {+      return function (s1) {+        return function (s2) {+          var result = s1.localeCompare(s2);+          return result < 0 ? lt : result > 0 ? gt : eq;+        };+      };+    };+  };+};++exports.replace = function (s1) {+  return function (s2) {+    return function (s3) {+      return s3.replace(s1, s2);+    };+  };+};++exports.replaceAll = function (s1) {+  return function (s2) {+    return function (s3) {+      return s3.replace(new RegExp(s1.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&"), "g"), s2);+    };+  };+};++exports.take = function (n) {+  return function (s) {+    return s.substr(0, n);+  };+};++exports.drop = function (n) {+  return function (s) {+    return s.substring(n);+  };+};++exports.count = function (p) {+  return function (s) {+    var i = 0;+    while (i < s.length && p(s.charAt(i))) i++;+    return i;+  };+};++exports.split = function (sep) {+  return function (s) {+    return s.split(sep);+  };+};++exports._splitAt = function (just) {+  return function (nothing) {+    return function (i) {+      return function (s) {+        return i >= 0 && i < s.length ?+               just({ before: s.substring(0, i), after: s.substring(i) }) :+               nothing;+      };+    };+  };+};++exports.toCharArray = function (s) {+  return s.split("");+};++exports.toLower = function (s) {+  return s.toLowerCase();+};++exports.toUpper = function (s) {+  return s.toUpperCase();+};++exports.trim = function (s) {+  return s.trim();+};++exports.joinWith = function (s) {+  return function (xs) {+    return xs.join(s);+  };+};++},{}],249:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_Function = require("../Data.Function");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_String_Unsafe = require("../Data.String.Unsafe");+var Prelude = require("../Prelude");+var Replacement = function (x) {+    return x;+};+var Pattern = function (x) {+    return x;+};+var uncons = function (v) {+    if (v === "") {+        return Data_Maybe.Nothing.value;+    };+    return new Data_Maybe.Just({+        head: Data_String_Unsafe.charAt(0)(v), +        tail: $foreign.drop(1)(v)+    });+};+var toChar = $foreign._toChar(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var takeWhile = function (p) {+    return function (s) {+        return $foreign.take($foreign.count(p)(s))(s);+    };+};+var splitAt = $foreign._splitAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var showReplacement = new Data_Show.Show(function (v) {+    return "(Replacement " + (v + ")");+});+var showPattern = new Data_Show.Show(function (v) {+    return "(Pattern " + (v + ")");+});+var $$null = function (s) {+    return s === "";+};+var newtypeReplacement = new Data_Newtype.Newtype(function (n) {+    return n;+}, Replacement);+var newtypePattern = new Data_Newtype.Newtype(function (n) {+    return n;+}, Pattern);+var localeCompare = $foreign._localeCompare(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value);+var lastIndexOf$prime = $foreign["_lastIndexOf'"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var lastIndexOf = $foreign._lastIndexOf(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var stripSuffix = function (v) {+    return function (str) {+        var v1 = lastIndexOf(v)(str);+        if (v1 instanceof Data_Maybe.Just && v1.value0 === ($foreign.length(str) - $foreign.length(v) | 0)) {+            return Data_Maybe.Just.create($foreign.take(v1.value0)(str));+        };+        return Data_Maybe.Nothing.value;+    };+};+var indexOf$prime = $foreign["_indexOf'"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var indexOf = $foreign._indexOf(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var stripPrefix = function (v) {+    return function (str) {+        var v1 = indexOf(v)(str);+        if (v1 instanceof Data_Maybe.Just && v1.value0 === 0) {+            return Data_Maybe.Just.create($foreign.drop($foreign.length(v))(str));+        };+        return Data_Maybe.Nothing.value;+    };+};+var eqReplacement = new Data_Eq.Eq(function (x) {+    return function (y) {+        return x === y;+    };+});+var ordReplacement = new Data_Ord.Ord(function () {+    return eqReplacement;+}, function (x) {+    return function (y) {+        return Data_Ord.compare(Data_Ord.ordString)(x)(y);+    };+});+var eqPattern = new Data_Eq.Eq(function (x) {+    return function (y) {+        return x === y;+    };+});+var ordPattern = new Data_Ord.Ord(function () {+    return eqPattern;+}, function (x) {+    return function (y) {+        return Data_Ord.compare(Data_Ord.ordString)(x)(y);+    };+});+var dropWhile = function (p) {+    return function (s) {+        return $foreign.drop($foreign.count(p)(s))(s);+    };+};+var contains = function (pat) {+    return function ($48) {+        return Data_Maybe.isJust(indexOf(pat)($48));+    };+};+var charCodeAt = $foreign._charCodeAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+var charAt = $foreign._charAt(Data_Maybe.Just.create)(Data_Maybe.Nothing.value);+module.exports = {+    Pattern: Pattern, +    Replacement: Replacement, +    charAt: charAt, +    charCodeAt: charCodeAt, +    contains: contains, +    dropWhile: dropWhile, +    indexOf: indexOf, +    "indexOf'": indexOf$prime, +    lastIndexOf: lastIndexOf, +    "lastIndexOf'": lastIndexOf$prime, +    localeCompare: localeCompare, +    "null": $$null, +    splitAt: splitAt, +    stripPrefix: stripPrefix, +    stripSuffix: stripSuffix, +    takeWhile: takeWhile, +    toChar: toChar, +    uncons: uncons, +    eqPattern: eqPattern, +    ordPattern: ordPattern, +    newtypePattern: newtypePattern, +    showPattern: showPattern, +    eqReplacement: eqReplacement, +    ordReplacement: ordReplacement, +    newtypeReplacement: newtypeReplacement, +    showReplacement: showReplacement, +    count: $foreign.count, +    drop: $foreign.drop, +    fromCharArray: $foreign.fromCharArray, +    joinWith: $foreign.joinWith, +    length: $foreign.length, +    replace: $foreign.replace, +    replaceAll: $foreign.replaceAll, +    singleton: $foreign.singleton, +    split: $foreign.split, +    take: $foreign.take, +    toCharArray: $foreign.toCharArray, +    toLower: $foreign.toLower, +    toUpper: $foreign.toUpper, +    trim: $foreign.trim+};++},{"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.Function":151,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.String.Unsafe":247,"../Prelude":278,"./foreign":248}],250:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Eq = require("../Data.Eq");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Generic = require("../Data.Generic");+var Data_Maybe = require("../Data.Maybe");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Seconds = function (x) {+    return x;+};+var Minutes = function (x) {+    return x;+};+var Milliseconds = function (x) {+    return x;+};+var Hours = function (x) {+    return x;+};+var Days = function (x) {+    return x;+};+var Duration = function (fromDuration, toDuration) {+    this.fromDuration = fromDuration;+    this.toDuration = toDuration;+};+var toDuration = function (dict) {+    return dict.toDuration;+};+var showSeconds = new Data_Show.Show(function (v) {+    return "(Seconds " + (Data_Show.show(Data_Show.showNumber)(v) + ")");+});+var showMinutes = new Data_Show.Show(function (v) {+    return "(Minutes " + (Data_Show.show(Data_Show.showNumber)(v) + ")");+});+var showMilliseconds = new Data_Show.Show(function (v) {+    return "(Milliseconds " + (Data_Show.show(Data_Show.showNumber)(v) + ")");+});+var showHours = new Data_Show.Show(function (v) {+    return "(Hours " + (Data_Show.show(Data_Show.showNumber)(v) + ")");+});+var showDays = new Data_Show.Show(function (v) {+    return "(Days " + (Data_Show.show(Data_Show.showNumber)(v) + ")");+});+var semiringSeconds = Data_Semiring.semiringNumber;+var semiringMinutes = Data_Semiring.semiringNumber;+var semiringMilliseconds = Data_Semiring.semiringNumber;+var semiringHours = Data_Semiring.semiringNumber;+var semiringDays = Data_Semiring.semiringNumber;+var ringSeconds = Data_Ring.ringNumber;+var ringMinutes = Data_Ring.ringNumber;+var ringMilliseconds = Data_Ring.ringNumber;+var ringHours = Data_Ring.ringNumber;+var ringDays = Data_Ring.ringNumber;+var ordSeconds = Data_Ord.ordNumber;+var ordMinutes = Data_Ord.ordNumber;+var ordMilliseconds = Data_Ord.ordNumber;+var ordHours = Data_Ord.ordNumber;+var ordDays = Data_Ord.ordNumber;+var newtypeSeconds = new Data_Newtype.Newtype(function (n) {+    return n;+}, Seconds);+var newtypeMinutes = new Data_Newtype.Newtype(function (n) {+    return n;+}, Minutes);+var newtypeMilliseconds = new Data_Newtype.Newtype(function (n) {+    return n;+}, Milliseconds);+var newtypeHours = new Data_Newtype.Newtype(function (n) {+    return n;+}, Hours);+var newtypeDays = new Data_Newtype.Newtype(function (n) {+    return n;+}, Days);+var genericSeconds = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Seconds" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Seconds))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.Time.Duration.Seconds", [ {+        sigConstructor: "Data.Time.Duration.Seconds", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.Time.Duration.Seconds", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);+    } ]);+});+var genericMinutes = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Minutes" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Minutes))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.Time.Duration.Minutes", [ {+        sigConstructor: "Data.Time.Duration.Minutes", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.Time.Duration.Minutes", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);+    } ]);+});+var genericMilliseconds = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Milliseconds" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Milliseconds))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.Time.Duration.Milliseconds", [ {+        sigConstructor: "Data.Time.Duration.Milliseconds", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.Time.Duration.Milliseconds", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);+    } ]);+});+var genericHours = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Hours" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Hours))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.Time.Duration.Hours", [ {+        sigConstructor: "Data.Time.Duration.Hours", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.Time.Duration.Hours", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);+    } ]);+});+var genericDays = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Data.Time.Duration.Days" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(Days))(Data_Generic.fromSpine(Data_Generic.genericNumber)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Data.Time.Duration.Days", [ {+        sigConstructor: "Data.Time.Duration.Days", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericNumber)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Data.Time.Duration.Days", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericNumber)(v);+    } ]);+});+var fromDuration = function (dict) {+    return dict.fromDuration;+};+var eqSeconds = Data_Eq.eqNumber;+var eqMinutes = Data_Eq.eqNumber;+var eqMilliseconds = Data_Eq.eqNumber;+var eqHours = Data_Eq.eqNumber;+var eqDays = Data_Eq.eqNumber;+var durationSeconds = new Duration(Data_Newtype.over(newtypeSeconds)(newtypeMilliseconds)(Seconds)(function (v) {+    return v * 1000.0;+}), Data_Newtype.over(newtypeMilliseconds)(newtypeSeconds)(Milliseconds)(function (v) {+    return v / 1000.0;+}));+var durationMinutes = new Duration(Data_Newtype.over(newtypeMinutes)(newtypeMilliseconds)(Minutes)(function (v) {+    return v * 60000.0;+}), Data_Newtype.over(newtypeMilliseconds)(newtypeMinutes)(Milliseconds)(function (v) {+    return v / 60000.0;+}));+var durationMilliseconds = new Duration(Control_Category.id(Control_Category.categoryFn), Control_Category.id(Control_Category.categoryFn));+var durationHours = new Duration(Data_Newtype.over(newtypeHours)(newtypeMilliseconds)(Hours)(function (v) {+    return v * 3600000.0;+}), Data_Newtype.over(newtypeMilliseconds)(newtypeHours)(Milliseconds)(function (v) {+    return v / 3600000.0;+}));+var durationDays = new Duration(Data_Newtype.over(newtypeDays)(newtypeMilliseconds)(Days)(function (v) {+    return v * 8.64e7;+}), Data_Newtype.over(newtypeMilliseconds)(newtypeDays)(Milliseconds)(function (v) {+    return v / 8.64e7;+}));+var convertDuration = function (dictDuration) {+    return function (dictDuration1) {+        return function ($80) {+            return toDuration(dictDuration1)(fromDuration(dictDuration)($80));+        };+    };+};+module.exports = {+    Days: Days, +    Hours: Hours, +    Milliseconds: Milliseconds, +    Minutes: Minutes, +    Seconds: Seconds, +    Duration: Duration, +    convertDuration: convertDuration, +    fromDuration: fromDuration, +    toDuration: toDuration, +    newtypeMilliseconds: newtypeMilliseconds, +    genericMilliseconds: genericMilliseconds, +    eqMilliseconds: eqMilliseconds, +    ordMilliseconds: ordMilliseconds, +    semiringMilliseconds: semiringMilliseconds, +    ringMilliseconds: ringMilliseconds, +    showMilliseconds: showMilliseconds, +    newtypeSeconds: newtypeSeconds, +    genericSeconds: genericSeconds, +    eqSeconds: eqSeconds, +    ordSeconds: ordSeconds, +    semiringSeconds: semiringSeconds, +    ringSeconds: ringSeconds, +    showSeconds: showSeconds, +    newtypeMinutes: newtypeMinutes, +    genericMinutes: genericMinutes, +    eqMinutes: eqMinutes, +    ordMinutes: ordMinutes, +    semiringMinutes: semiringMinutes, +    ringMinutes: ringMinutes, +    showMinutes: showMinutes, +    newtypeHours: newtypeHours, +    genericHours: genericHours, +    eqHours: eqHours, +    ordHours: ordHours, +    semiringHours: semiringHours, +    ringHours: ringHours, +    showHours: showHours, +    newtypeDays: newtypeDays, +    genericDays: genericDays, +    eqDays: eqDays, +    ordDays: ordDays, +    semiringDays: semiringDays, +    ringDays: ringDays, +    showDays: showDays, +    durationMilliseconds: durationMilliseconds, +    durationSeconds: durationSeconds, +    durationMinutes: durationMinutes, +    durationHours: durationHours, +    durationDays: durationDays+};++},{"../Control.Apply":42,"../Control.Category":47,"../Control.Semigroupoid":93,"../Data.Eq":140,"../Data.EuclideanRing":142,"../Data.Generic":159,"../Data.Maybe":204,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Unit":259,"../Prelude":278}],251:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Data_Functor = require("../Data.Functor");+var Data_Traversable_Accum = require("../Data.Traversable.Accum");+var Prelude = require("../Prelude");+var StateR = function (x) {+    return x;+};+var StateL = function (x) {+    return x;+};+var stateR = function (v) {+    return v;+};+var stateL = function (v) {+    return v;+};+var functorStateR = new Data_Functor.Functor(function (f) {+    return function (k) {+        return function (s) {+            var v = stateR(k)(s);+            return {+                accum: v.accum, +                value: f(v.value)+            };+        };+    };+});+var functorStateL = new Data_Functor.Functor(function (f) {+    return function (k) {+        return function (s) {+            var v = stateL(k)(s);+            return {+                accum: v.accum, +                value: f(v.value)+            };+        };+    };+});+var applyStateR = new Control_Apply.Apply(function () {+    return functorStateR;+}, function (f) {+    return function (x) {+        return function (s) {+            var v = stateR(x)(s);+            var v1 = stateR(f)(v.accum);+            return {+                accum: v1.accum, +                value: v1.value(v.value)+            };+        };+    };+});+var applyStateL = new Control_Apply.Apply(function () {+    return functorStateL;+}, function (f) {+    return function (x) {+        return function (s) {+            var v = stateL(f)(s);+            var v1 = stateL(x)(v.accum);+            return {+                accum: v1.accum, +                value: v.value(v1.value)+            };+        };+    };+});+var applicativeStateR = new Control_Applicative.Applicative(function () {+    return applyStateR;+}, function (a) {+    return function (s) {+        return {+            accum: s, +            value: a+        };+    };+});+var applicativeStateL = new Control_Applicative.Applicative(function () {+    return applyStateL;+}, function (a) {+    return function (s) {+        return {+            accum: s, +            value: a+        };+    };+});+module.exports = {+    StateL: StateL, +    StateR: StateR, +    stateL: stateL, +    stateR: stateR, +    functorStateL: functorStateL, +    applyStateL: applyStateL, +    applicativeStateL: applicativeStateL, +    functorStateR: functorStateR, +    applyStateR: applyStateR, +    applicativeStateR: applicativeStateR+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Data.Functor":157,"../Data.Traversable.Accum":252,"../Prelude":278}],252:[function(require,module,exports){+arguments[4][100][0].apply(exports,arguments)+},{"dup":100}],253:[function(require,module,exports){+"use strict";++// jshint maxparams: 3++exports.traverseArrayImpl = function () {+  function Cont(fn) {+    this.fn = fn;+  }++  var emptyList = {};++  var ConsCell = function (head, tail) {+    this.head = head;+    this.tail = tail;+  };++  function consList(x) {+    return function (xs) {+      return new ConsCell(x, xs);+    };+  }++  function listToArray(list) {+    var arr = [];+    var xs = list;+    while (xs !== emptyList) {+      arr.push(xs.head);+      xs = xs.tail;+    }+    return arr;+  }++  return function (apply) {+    return function (map) {+      return function (pure) {+        return function (f) {+          var buildFrom = function (x, ys) {+            return apply(map(consList)(f(x)))(ys);+          };++          var go = function (acc, currentLen, xs) {+            if (currentLen === 0) {+              return acc;+            } else {+              var last = xs[currentLen - 1];+              return new Cont(function () {+                return go(buildFrom(last, acc), currentLen - 1, xs);+              });+            }+          };++          return function (array) {+            var result = go(pure(emptyList), array.length, array);+            while (result instanceof Cont) {+              result = result.fn();+            }++            return map(listToArray)(result);+          };+        };+      };+    };+  };+}();++},{}],254:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Category = require("../Control.Category");+var Data_Foldable = require("../Data.Foldable");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Data_Maybe_First = require("../Data.Maybe.First");+var Data_Maybe_Last = require("../Data.Maybe.Last");+var Data_Monoid_Additive = require("../Data.Monoid.Additive");+var Data_Monoid_Conj = require("../Data.Monoid.Conj");+var Data_Monoid_Disj = require("../Data.Monoid.Disj");+var Data_Monoid_Dual = require("../Data.Monoid.Dual");+var Data_Monoid_Multiplicative = require("../Data.Monoid.Multiplicative");+var Data_Traversable_Accum = require("../Data.Traversable.Accum");+var Data_Traversable_Accum_Internal = require("../Data.Traversable.Accum.Internal");+var Prelude = require("../Prelude");+var Traversable = function (Foldable1, Functor0, sequence, traverse) {+    this.Foldable1 = Foldable1;+    this.Functor0 = Functor0;+    this.sequence = sequence;+    this.traverse = traverse;+};+var traverse = function (dict) {+    return dict.traverse;+};+var traversableMultiplicative = new Traversable(function () {+    return Data_Foldable.foldableMultiplicative;+}, function () {+    return Data_Monoid_Multiplicative.functorMultiplicative;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Multiplicative.Multiplicative)(v);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Multiplicative.Multiplicative)(f(v));+        };+    };+});+var traversableMaybe = new Traversable(function () {+    return Data_Foldable.foldableMaybe;+}, function () {+    return Data_Maybe.functorMaybe;+}, function (dictApplicative) {+    return function (v) {+        if (v instanceof Data_Maybe.Nothing) {+            return Control_Applicative.pure(dictApplicative)(Data_Maybe.Nothing.value);+        };+        if (v instanceof Data_Maybe.Just) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe.Just.create)(v.value0);+        };+        throw new Error("Failed pattern match at Data.Traversable line 89, column 3 - line 89, column 35: " + [ v.constructor.name ]);+    };+}, function (dictApplicative) {+    return function (v) {+        return function (v1) {+            if (v1 instanceof Data_Maybe.Nothing) {+                return Control_Applicative.pure(dictApplicative)(Data_Maybe.Nothing.value);+            };+            if (v1 instanceof Data_Maybe.Just) {+                return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe.Just.create)(v(v1.value0));+            };+            throw new Error("Failed pattern match at Data.Traversable line 87, column 3 - line 87, column 37: " + [ v.constructor.name, v1.constructor.name ]);+        };+    };+});+var traversableDual = new Traversable(function () {+    return Data_Foldable.foldableDual;+}, function () {+    return Data_Monoid_Dual.functorDual;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Dual.Dual)(v);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Dual.Dual)(f(v));+        };+    };+});+var traversableDisj = new Traversable(function () {+    return Data_Foldable.foldableDisj;+}, function () {+    return Data_Monoid_Disj.functorDisj;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Disj.Disj)(v);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Disj.Disj)(f(v));+        };+    };+});+var traversableConj = new Traversable(function () {+    return Data_Foldable.foldableConj;+}, function () {+    return Data_Monoid_Conj.functorConj;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Conj.Conj)(v);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Conj.Conj)(f(v));+        };+    };+});+var traversableAdditive = new Traversable(function () {+    return Data_Foldable.foldableAdditive;+}, function () {+    return Data_Monoid_Additive.functorAdditive;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Additive.Additive)(v);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Monoid_Additive.Additive)(f(v));+        };+    };+});+var sequenceDefault = function (dictTraversable) {+    return function (dictApplicative) {+        return traverse(dictTraversable)(dictApplicative)(Control_Category.id(Control_Category.categoryFn));+    };+};+var traversableArray = new Traversable(function () {+    return Data_Foldable.foldableArray;+}, function () {+    return Data_Functor.functorArray;+}, function (dictApplicative) {+    return sequenceDefault(traversableArray)(dictApplicative);+}, function (dictApplicative) {+    return $foreign.traverseArrayImpl(Control_Apply.apply(dictApplicative.Apply0()))(Data_Functor.map((dictApplicative.Apply0()).Functor0()))(Control_Applicative.pure(dictApplicative));+});+var sequence = function (dict) {+    return dict.sequence;+};+var traversableFirst = new Traversable(function () {+    return Data_Foldable.foldableFirst;+}, function () {+    return Data_Maybe_First.functorFirst;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_First.First)(sequence(traversableMaybe)(dictApplicative)(v));+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_First.First)(traverse(traversableMaybe)(dictApplicative)(f)(v));+        };+    };+});+var traversableLast = new Traversable(function () {+    return Data_Foldable.foldableLast;+}, function () {+    return Data_Maybe_Last.functorLast;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_Last.Last)(sequence(traversableMaybe)(dictApplicative)(v));+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Maybe_Last.Last)(traverse(traversableMaybe)(dictApplicative)(f)(v));+        };+    };+});+var traverseDefault = function (dictTraversable) {+    return function (dictApplicative) {+        return function (f) {+            return function (ta) {+                return sequence(dictTraversable)(dictApplicative)(Data_Functor.map(dictTraversable.Functor0())(f)(ta));+            };+        };+    };+};+var mapAccumR = function (dictTraversable) {+    return function (f) {+        return function (s0) {+            return function (xs) {+                return Data_Traversable_Accum_Internal.stateR(traverse(dictTraversable)(Data_Traversable_Accum_Internal.applicativeStateR)(function (a) {+                    return function (s) {+                        return f(s)(a);+                    };+                })(xs))(s0);+            };+        };+    };+};+var scanr = function (dictTraversable) {+    return function (f) {+        return function (b0) {+            return function (xs) {+                return (mapAccumR(dictTraversable)(function (b) {+                    return function (a) {+                        var b$prime = f(a)(b);+                        return {+                            accum: b$prime, +                            value: b$prime+                        };+                    };+                })(b0)(xs)).value;+            };+        };+    };+};+var mapAccumL = function (dictTraversable) {+    return function (f) {+        return function (s0) {+            return function (xs) {+                return Data_Traversable_Accum_Internal.stateL(traverse(dictTraversable)(Data_Traversable_Accum_Internal.applicativeStateL)(function (a) {+                    return function (s) {+                        return f(s)(a);+                    };+                })(xs))(s0);+            };+        };+    };+};+var scanl = function (dictTraversable) {+    return function (f) {+        return function (b0) {+            return function (xs) {+                return (mapAccumL(dictTraversable)(function (b) {+                    return function (a) {+                        var b$prime = f(b)(a);+                        return {+                            accum: b$prime, +                            value: b$prime+                        };+                    };+                })(b0)(xs)).value;+            };+        };+    };+};+var $$for = function (dictApplicative) {+    return function (dictTraversable) {+        return function (x) {+            return function (f) {+                return traverse(dictTraversable)(dictApplicative)(f)(x);+            };+        };+    };+};+module.exports = {+    Traversable: Traversable, +    "for": $$for, +    mapAccumL: mapAccumL, +    mapAccumR: mapAccumR, +    scanl: scanl, +    scanr: scanr, +    sequence: sequence, +    sequenceDefault: sequenceDefault, +    traverse: traverse, +    traverseDefault: traverseDefault, +    traversableArray: traversableArray, +    traversableMaybe: traversableMaybe, +    traversableFirst: traversableFirst, +    traversableLast: traversableLast, +    traversableAdditive: traversableAdditive, +    traversableDual: traversableDual, +    traversableConj: traversableConj, +    traversableDisj: traversableDisj, +    traversableMultiplicative: traversableMultiplicative+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Category":47,"../Data.Foldable":145,"../Data.Functor":157,"../Data.Maybe":204,"../Data.Maybe.First":202,"../Data.Maybe.Last":203,"../Data.Monoid.Additive":207,"../Data.Monoid.Conj":208,"../Data.Monoid.Disj":209,"../Data.Monoid.Dual":210,"../Data.Monoid.Multiplicative":212,"../Data.Traversable.Accum":252,"../Data.Traversable.Accum.Internal":251,"../Prelude":278,"./foreign":253}],255:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Biapplicative = require("../Control.Biapplicative");+var Control_Biapply = require("../Control.Biapply");+var Control_Bind = require("../Control.Bind");+var Control_Comonad = require("../Control.Comonad");+var Control_Extend = require("../Control.Extend");+var Control_Lazy = require("../Control.Lazy");+var Control_Monad = require("../Control.Monad");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Bifoldable = require("../Data.Bifoldable");+var Data_Bifunctor = require("../Data.Bifunctor");+var Data_Bitraversable = require("../Data.Bitraversable");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_Bounded = require("../Data.Bounded");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_Distributive = require("../Data.Distributive");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Functor_Invariant = require("../Data.Functor.Invariant");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Maybe_First = require("../Data.Maybe.First");+var Data_Monoid = require("../Data.Monoid");+var Data_Newtype = require("../Data.Newtype");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Traversable = require("../Data.Traversable");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Type_Equality = require("../Type.Equality");+var Tuple = (function () {+    function Tuple(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    Tuple.create = function (value0) {+        return function (value1) {+            return new Tuple(value0, value1);+        };+    };+    return Tuple;+})();+var uncurry = function (f) {+    return function (v) {+        return f(v.value0)(v.value1);+    };+};+var swap = function (v) {+    return new Tuple(v.value1, v.value0);+};+var snd = function (v) {+    return v.value1;+};+var showTuple = function (dictShow) {+    return function (dictShow1) {+        return new Data_Show.Show(function (v) {+            return "(Tuple " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")")));+        });+    };+};+var semiringTuple = function (dictSemiring) {+    return function (dictSemiring1) {+        return new Data_Semiring.Semiring(function (v) {+            return function (v1) {+                return new Tuple(Data_Semiring.add(dictSemiring)(v.value0)(v1.value0), Data_Semiring.add(dictSemiring1)(v.value1)(v1.value1));+            };+        }, function (v) {+            return function (v1) {+                return new Tuple(Data_Semiring.mul(dictSemiring)(v.value0)(v1.value0), Data_Semiring.mul(dictSemiring1)(v.value1)(v1.value1));+            };+        }, new Tuple(Data_Semiring.one(dictSemiring), Data_Semiring.one(dictSemiring1)), new Tuple(Data_Semiring.zero(dictSemiring), Data_Semiring.zero(dictSemiring1)));+    };+};+var semigroupoidTuple = new Control_Semigroupoid.Semigroupoid(function (v) {+    return function (v1) {+        return new Tuple(v1.value0, v.value1);+    };+});+var semigroupTuple = function (dictSemigroup) {+    return function (dictSemigroup1) {+        return new Data_Semigroup.Semigroup(function (v) {+            return function (v1) {+                return new Tuple(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0), Data_Semigroup.append(dictSemigroup1)(v.value1)(v1.value1));+            };+        });+    };+};+var ringTuple = function (dictRing) {+    return function (dictRing1) {+        return new Data_Ring.Ring(function () {+            return semiringTuple(dictRing.Semiring0())(dictRing1.Semiring0());+        }, function (v) {+            return function (v1) {+                return new Tuple(Data_Ring.sub(dictRing)(v.value0)(v1.value0), Data_Ring.sub(dictRing1)(v.value1)(v1.value1));+            };+        });+    };+};+var monoidTuple = function (dictMonoid) {+    return function (dictMonoid1) {+        return new Data_Monoid.Monoid(function () {+            return semigroupTuple(dictMonoid.Semigroup0())(dictMonoid1.Semigroup0());+        }, new Tuple(Data_Monoid.mempty(dictMonoid), Data_Monoid.mempty(dictMonoid1)));+    };+};+var lookup = function (dictFoldable) {+    return function (dictEq) {+        return function (a) {+            return function ($264) {+                return Data_Newtype.unwrap(Data_Maybe_First.newtypeFirst)(Data_Foldable.foldMap(dictFoldable)(Data_Maybe_First.monoidFirst)(function (v) {+                    var $146 = Data_Eq.eq(dictEq)(a)(v.value0);+                    if ($146) {+                        return new Data_Maybe.Just(v.value1);+                    };+                    return Data_Maybe.Nothing.value;+                })($264));+            };+        };+    };+};+var heytingAlgebraTuple = function (dictHeytingAlgebra) {+    return function (dictHeytingAlgebra1) {+        return new Data_HeytingAlgebra.HeytingAlgebra(function (v) {+            return function (v1) {+                return new Tuple(Data_HeytingAlgebra.conj(dictHeytingAlgebra)(v.value0)(v1.value0), Data_HeytingAlgebra.conj(dictHeytingAlgebra1)(v.value1)(v1.value1));+            };+        }, function (v) {+            return function (v1) {+                return new Tuple(Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v.value0)(v1.value0), Data_HeytingAlgebra.disj(dictHeytingAlgebra1)(v.value1)(v1.value1));+            };+        }, new Tuple(Data_HeytingAlgebra.ff(dictHeytingAlgebra), Data_HeytingAlgebra.ff(dictHeytingAlgebra1)), function (v) {+            return function (v1) {+                return new Tuple(Data_HeytingAlgebra.implies(dictHeytingAlgebra)(v.value0)(v1.value0), Data_HeytingAlgebra.implies(dictHeytingAlgebra1)(v.value1)(v1.value1));+            };+        }, function (v) {+            return new Tuple(Data_HeytingAlgebra.not(dictHeytingAlgebra)(v.value0), Data_HeytingAlgebra.not(dictHeytingAlgebra1)(v.value1));+        }, new Tuple(Data_HeytingAlgebra.tt(dictHeytingAlgebra), Data_HeytingAlgebra.tt(dictHeytingAlgebra1)));+    };+};+var functorTuple = new Data_Functor.Functor(function (f) {+    return function (v) {+        return new Tuple(v.value0, f(v.value1));+    };+});+var invariantTuple = new Data_Functor_Invariant.Invariant(Data_Functor_Invariant.imapF(functorTuple));+var fst = function (v) {+    return v.value0;+};+var lazyTuple = function (dictLazy) {+    return function (dictLazy1) {+        return new Control_Lazy.Lazy(function (f) {+            return new Tuple(Control_Lazy.defer(dictLazy)(function (v) {+                return fst(f(Data_Unit.unit));+            }), Control_Lazy.defer(dictLazy1)(function (v) {+                return snd(f(Data_Unit.unit));+            }));+        });+    };+};+var foldableTuple = new Data_Foldable.Foldable(function (dictMonoid) {+    return function (f) {+        return function (v) {+            return f(v.value1);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(z)(v.value1);+        };+    };+}, function (f) {+    return function (z) {+        return function (v) {+            return f(v.value1)(z);+        };+    };+});+var traversableTuple = new Data_Traversable.Traversable(function () {+    return foldableTuple;+}, function () {+    return functorTuple;+}, function (dictApplicative) {+    return function (v) {+        return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create(v.value0))(v.value1);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (v) {+            return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create(v.value0))(f(v.value1));+        };+    };+});+var extendTuple = new Control_Extend.Extend(function () {+    return functorTuple;+}, function (f) {+    return function (v) {+        return new Tuple(v.value0, f(v));+    };+});+var eqTuple = function (dictEq) {+    return function (dictEq1) {+        return new Data_Eq.Eq(function (x) {+            return function (y) {+                return Data_Eq.eq(dictEq)(x.value0)(y.value0) && Data_Eq.eq(dictEq1)(x.value1)(y.value1);+            };+        });+    };+};+var ordTuple = function (dictOrd) {+    return function (dictOrd1) {+        return new Data_Ord.Ord(function () {+            return eqTuple(dictOrd.Eq0())(dictOrd1.Eq0());+        }, function (x) {+            return function (y) {+                var v = Data_Ord.compare(dictOrd)(x.value0)(y.value0);+                if (v instanceof Data_Ordering.LT) {+                    return Data_Ordering.LT.value;+                };+                if (v instanceof Data_Ordering.GT) {+                    return Data_Ordering.GT.value;+                };+                return Data_Ord.compare(dictOrd1)(x.value1)(y.value1);+            };+        });+    };+};+var eq1Tuple = function (dictEq) {+    return new Data_Eq.Eq1(function (dictEq1) {+        return Data_Eq.eq(eqTuple(dictEq)(dictEq1));+    });+};+var ord1Tuple = function (dictOrd) {+    return new Data_Ord.Ord1(function () {+        return eq1Tuple(dictOrd.Eq0());+    }, function (dictOrd1) {+        return Data_Ord.compare(ordTuple(dictOrd)(dictOrd1));+    });+};+var distributiveTuple = function (dictTypeEquals) {+    return new Data_Distributive.Distributive(function () {+        return functorTuple;+    }, function (dictFunctor) {+        return Data_Distributive.collectDefault(distributiveTuple(dictTypeEquals))(dictFunctor);+    }, function (dictFunctor) {+        return function ($265) {+            return Tuple.create(Type_Equality.from(dictTypeEquals)(Data_Unit.unit))(Data_Functor.map(dictFunctor)(snd)($265));+        };+    });+};+var curry = function (f) {+    return function (a) {+        return function (b) {+            return f(new Tuple(a, b));+        };+    };+};+var comonadTuple = new Control_Comonad.Comonad(function () {+    return extendTuple;+}, snd);+var commutativeRingTuple = function (dictCommutativeRing) {+    return function (dictCommutativeRing1) {+        return new Data_CommutativeRing.CommutativeRing(function () {+            return ringTuple(dictCommutativeRing.Ring0())(dictCommutativeRing1.Ring0());+        });+    };+};+var boundedTuple = function (dictBounded) {+    return function (dictBounded1) {+        return new Data_Bounded.Bounded(function () {+            return ordTuple(dictBounded.Ord0())(dictBounded1.Ord0());+        }, new Tuple(Data_Bounded.bottom(dictBounded), Data_Bounded.bottom(dictBounded1)), new Tuple(Data_Bounded.top(dictBounded), Data_Bounded.top(dictBounded1)));+    };+};+var booleanAlgebraTuple = function (dictBooleanAlgebra) {+    return function (dictBooleanAlgebra1) {+        return new Data_BooleanAlgebra.BooleanAlgebra(function () {+            return heytingAlgebraTuple(dictBooleanAlgebra.HeytingAlgebra0())(dictBooleanAlgebra1.HeytingAlgebra0());+        });+    };+};+var bifunctorTuple = new Data_Bifunctor.Bifunctor(function (f) {+    return function (g) {+        return function (v) {+            return new Tuple(f(v.value0), g(v.value1));+        };+    };+});+var bifoldableTuple = new Data_Bifoldable.Bifoldable(function (dictMonoid) {+    return function (f) {+        return function (g) {+            return function (v) {+                return Data_Semigroup.append(dictMonoid.Semigroup0())(f(v.value0))(g(v.value1));+            };+        };+    };+}, function (f) {+    return function (g) {+        return function (z) {+            return function (v) {+                return g(f(z)(v.value0))(v.value1);+            };+        };+    };+}, function (f) {+    return function (g) {+        return function (z) {+            return function (v) {+                return f(v.value0)(g(v.value1)(z));+            };+        };+    };+});+var bitraversableTuple = new Data_Bitraversable.Bitraversable(function () {+    return bifoldableTuple;+}, function () {+    return bifunctorTuple;+}, function (dictApplicative) {+    return function (v) {+        return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create)(v.value0))(v.value1);+    };+}, function (dictApplicative) {+    return function (f) {+        return function (g) {+            return function (v) {+                return Control_Apply.apply(dictApplicative.Apply0())(Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create)(f(v.value0)))(g(v.value1));+            };+        };+    };+});+var biapplyTuple = new Control_Biapply.Biapply(function () {+    return bifunctorTuple;+}, function (v) {+    return function (v1) {+        return new Tuple(v.value0(v1.value0), v.value1(v1.value1));+    };+});+var biapplicativeTuple = new Control_Biapplicative.Biapplicative(function () {+    return biapplyTuple;+}, Tuple.create);+var applyTuple = function (dictSemigroup) {+    return new Control_Apply.Apply(function () {+        return functorTuple;+    }, function (v) {+        return function (v1) {+            return new Tuple(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0), v.value1(v1.value1));+        };+    });+};+var bindTuple = function (dictSemigroup) {+    return new Control_Bind.Bind(function () {+        return applyTuple(dictSemigroup);+    }, function (v) {+        return function (f) {+            var v1 = f(v.value1);+            return new Tuple(Data_Semigroup.append(dictSemigroup)(v.value0)(v1.value0), v1.value1);+        };+    });+};+var applicativeTuple = function (dictMonoid) {+    return new Control_Applicative.Applicative(function () {+        return applyTuple(dictMonoid.Semigroup0());+    }, Tuple.create(Data_Monoid.mempty(dictMonoid)));+};+var monadTuple = function (dictMonoid) {+    return new Control_Monad.Monad(function () {+        return applicativeTuple(dictMonoid);+    }, function () {+        return bindTuple(dictMonoid.Semigroup0());+    });+};+module.exports = {+    Tuple: Tuple, +    curry: curry, +    fst: fst, +    lookup: lookup, +    snd: snd, +    swap: swap, +    uncurry: uncurry, +    showTuple: showTuple, +    eqTuple: eqTuple, +    eq1Tuple: eq1Tuple, +    ordTuple: ordTuple, +    ord1Tuple: ord1Tuple, +    boundedTuple: boundedTuple, +    semigroupoidTuple: semigroupoidTuple, +    semigroupTuple: semigroupTuple, +    monoidTuple: monoidTuple, +    semiringTuple: semiringTuple, +    ringTuple: ringTuple, +    commutativeRingTuple: commutativeRingTuple, +    heytingAlgebraTuple: heytingAlgebraTuple, +    booleanAlgebraTuple: booleanAlgebraTuple, +    functorTuple: functorTuple, +    invariantTuple: invariantTuple, +    bifunctorTuple: bifunctorTuple, +    applyTuple: applyTuple, +    biapplyTuple: biapplyTuple, +    applicativeTuple: applicativeTuple, +    biapplicativeTuple: biapplicativeTuple, +    bindTuple: bindTuple, +    monadTuple: monadTuple, +    extendTuple: extendTuple, +    comonadTuple: comonadTuple, +    lazyTuple: lazyTuple, +    foldableTuple: foldableTuple, +    bifoldableTuple: bifoldableTuple, +    traversableTuple: traversableTuple, +    bitraversableTuple: bitraversableTuple, +    distributiveTuple: distributiveTuple+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Biapplicative":43,"../Control.Biapply":44,"../Control.Bind":46,"../Control.Comonad":48,"../Control.Extend":50,"../Control.Lazy":51,"../Control.Monad":87,"../Control.Semigroupoid":93,"../Data.Bifoldable":122,"../Data.Bifunctor":128,"../Data.Bitraversable":129,"../Data.BooleanAlgebra":131,"../Data.Bounded":133,"../Data.CommutativeRing":134,"../Data.Distributive":136,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Function":151,"../Data.Functor":157,"../Data.Functor.Invariant":155,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Maybe.First":202,"../Data.Monoid":213,"../Data.Newtype":215,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Traversable":254,"../Data.Unit":259,"../Prelude":278,"../Type.Equality":279}],256:[function(require,module,exports){+"use strict";++exports.unfoldrArrayImpl = function (isNothing) {+  return function (fromJust) {+    return function (fst) {+      return function (snd) {+        return function (f) {+          return function (b) {+            var result = [];+            var value = b;+            while (true) { // eslint-disable-line no-constant-condition+              var maybe = f(value);+              if (isNothing(maybe)) return result;+              var tuple = fromJust(maybe);+              result.push(fst(tuple));+              value = snd(tuple);+            }+          };+        };+      };+    };+  };+};++},{}],257:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_Maybe = require("../Data.Maybe");+var Data_Ord = require("../Data.Ord");+var Data_Ring = require("../Data.Ring");+var Data_Traversable = require("../Data.Traversable");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var Unfoldable = function (unfoldr) {+    this.unfoldr = unfoldr;+};+var unfoldr = function (dict) {+    return dict.unfoldr;+};+var unfoldableArray = new Unfoldable($foreign.unfoldrArrayImpl(Data_Maybe.isNothing)(Data_Maybe.fromJust())(Data_Tuple.fst)(Data_Tuple.snd));+var replicate = function (dictUnfoldable) {+    return function (n) {+        return function (v) {+            var step = function (i) {+                var $8 = i <= 0;+                if ($8) {+                    return Data_Maybe.Nothing.value;+                };+                return new Data_Maybe.Just(new Data_Tuple.Tuple(v, i - 1 | 0));+            };+            return unfoldr(dictUnfoldable)(step)(n);+        };+    };+};+var replicateA = function (dictApplicative) {+    return function (dictUnfoldable) {+        return function (dictTraversable) {+            return function (n) {+                return function (m) {+                    return Data_Traversable.sequence(dictTraversable)(dictApplicative)(replicate(dictUnfoldable)(n)(m));+                };+            };+        };+    };+};+var singleton = function (dictUnfoldable) {+    return replicate(dictUnfoldable)(1);+};+var none = function (dictUnfoldable) {+    return unfoldr(dictUnfoldable)(Data_Function["const"](Data_Maybe.Nothing.value))(Data_Unit.unit);+};+var fromMaybe = function (dictUnfoldable) {+    return unfoldr(dictUnfoldable)(function (b) {+        return Data_Functor.map(Data_Maybe.functorMaybe)(Data_Function.flip(Data_Tuple.Tuple.create)(Data_Maybe.Nothing.value))(b);+    });+};+module.exports = {+    Unfoldable: Unfoldable, +    fromMaybe: fromMaybe, +    none: none, +    replicate: replicate, +    replicateA: replicateA, +    singleton: singleton, +    unfoldr: unfoldr, +    unfoldableArray: unfoldableArray+};++},{"../Data.Function":151,"../Data.Functor":157,"../Data.Maybe":204,"../Data.Ord":222,"../Data.Ring":233,"../Data.Traversable":254,"../Data.Tuple":255,"../Data.Unit":259,"../Partial.Unsafe":275,"../Prelude":278,"./foreign":256}],258:[function(require,module,exports){+"use strict";++exports.unit = {};++},{}],259:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Data_Show = require("../Data.Show");+var showUnit = new Data_Show.Show(function (v) {+    return "unit";+});+module.exports = {+    showUnit: showUnit, +    unit: $foreign.unit+};++},{"../Data.Show":241,"./foreign":258}],260:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Show = require("../Data.Show");+var Void = function (x) {+    return x;+};+var absurd = function (a) {+    var spin = function (__copy_v) {+        var __tco_result;+        function __tco_loop(v) {+            __copy_v = v;+            return;+        };+        while (!false) {+            __tco_result = __tco_loop(__copy_v);+        };+        return __tco_result;+    };+    return spin(a);+};+var showVoid = new Data_Show.Show(absurd);+module.exports = {+    absurd: absurd, +    showVoid: showVoid+};++},{"../Data.Show":241}],261:[function(require,module,exports){+/* globals exports */+"use strict";++// module Global++exports.nan = NaN;++exports.isNaN = isNaN;++exports.infinity = Infinity;++exports.isFinite = isFinite;++exports.readInt = function (radix) {+  return function (n) {+    return parseInt(n, radix);+  };+};++exports.readFloat = parseFloat;++exports.decodeURI = decodeURI;+exports.encodeURI = encodeURI;+exports.decodeURIComponent = decodeURIComponent;+exports.encodeURIComponent = encodeURIComponent;++},{}],262:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+module.exports = {+    "decodeURI": $foreign["decodeURI"], +    "decodeURIComponent": $foreign["decodeURIComponent"], +    "encodeURI": $foreign["encodeURI"], +    "encodeURIComponent": $foreign["encodeURIComponent"], +    infinity: $foreign.infinity, +    "isFinite": $foreign["isFinite"], +    "isNaN": $foreign["isNaN"], +    nan: $foreign.nan, +    readFloat: $foreign.readFloat, +    readInt: $foreign.readInt+};++},{"./foreign":261}],263:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Common = require("../Common");+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Aff = require("../Control.Monad.Aff");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");+var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");+var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");+var DOM = require("../DOM");+var Data_Argonaut = require("../Data.Argonaut");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_Argonaut_Decode = require("../Data.Argonaut.Decode");+var Data_Argonaut_Decode_Class = require("../Data.Argonaut.Decode.Class");+var Data_Either = require("../Data.Either");+var Data_FormURLEncoded = require("../Data.FormURLEncoded");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Show = require("../Data.Show");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Network_HTTP_Affjax = require("../Network.HTTP.Affjax");+var Network_HTTP_Affjax_Request = require("../Network.HTTP.Affjax.Request");+var Network_HTTP_Affjax_Response = require("../Network.HTTP.Affjax.Response");+var Partial_Unsafe = require("../Partial.Unsafe");+var Prelude = require("../Prelude");+var resp1Success = function (pass) {+    return function (j) {+        return function (loc) {+            return function __do() {+                Control_Monad_Eff_Console.log(Data_Show.show(Data_Argonaut_Core.showJson)(j))();+                var eitherChallenge = Data_Argonaut_Decode_Class.decodeJson(Common.decodeJsonChallenge)(j);+                if (eitherChallenge instanceof Data_Either.Left) {+                    var eitherErr = Data_Argonaut_Decode_Class.decodeJson(Common.decodeJsonErr)(j);+                    return Data_Either.either(Common.fail(Common.Login.value))(function (v) {+                        return Common.fail(Common.Login.value)(v.value0.err);+                    })(eitherErr)();+                };+                if (eitherChallenge instanceof Data_Either.Right) {+                    Common.progress("HMAC 1")();+                    var salted = Common.hmacSha3(Common.fromUtf8(pass), Common.fromHex(eitherChallenge.value0.value0.salt));+                    Common.progress("HMAC 2")();+                    var response = Common.hmacSha3(Common.fromUtf8(salted), Common.fromUtf8(eitherChallenge.value0.value0.token));+                    Common.progress("sending response")();+                    var data2 = Data_FormURLEncoded.fromArray([ new Data_Tuple.Tuple("token", new Data_Maybe.Just(eitherChallenge.value0.value0.token)), new Data_Tuple.Tuple("response", new Data_Maybe.Just(response)) ]);+                    var v = Control_Monad_Aff.runAff(function (e) {+                        return Common.fail(Common.Login.value)(Data_Show.show(Control_Monad_Eff_Exception.showError)(e));+                    })(function (x) {+                        return Common.welcome(x.response)(Common.Login.value);+                    })(Network_HTTP_Affjax.post(Network_HTTP_Affjax_Request.requestableFormURLEncoded)(Network_HTTP_Affjax_Response.responsableJson)(loc)(data2))();+                    return Data_Unit.unit;+                };+                throw new Error("Failed pattern match at Login line 87, column 3 - line 104, column 12: " + [ eitherChallenge.constructor.name ]);+            };+        };+    };+};+var onLoginClick = function (login) {+    return function (ev) {+        return function (x) {+            return function __do() {+                Control_Monad_Eff_Console.log("click!")();+                Control_Monad_Eff_JQuery.preventDefault(ev)();+                Control_Monad_Eff_JQuery.hide(login)();+                var v = Data_Functor.map(Control_Monad_Eff.functorEff)(Control_Monad_Eff_JQuery.setProp("disabled")(true))(Control_Monad_Eff_JQuery.select(".login input"))();+                var v1 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#username"))();+                var v2 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.getValue)(Control_Monad_Eff_JQuery.select("#password"))();+                var v3 = Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Common.getAttr("action"))(Control_Monad_Eff_JQuery.select("#loginform"))();+                Control_Monad_Eff_Console.log(v3)();+                var username = Common.fromForeign(v1);+                var password = Common.fromForeign(v2);+                var $17 = !(Data_Maybe.isNothing(username) && Data_Maybe.isNothing(password));+                if ($17) {+                    Common.progress("Obtaining Challenge...")();+                    var data1 = Data_FormURLEncoded.fromArray([ new Data_Tuple.Tuple("username", username) ]);+                    var v4 = Control_Monad_Aff.runAff(function (e) {+                        return Common.fail(Common.Login.value)(Data_Show.show(Control_Monad_Eff_Exception.showError)(e));+                    })(function (y) {+                        return resp1Success(Data_Maybe.fromJust()(password))(y.response)(v3);+                    })(Network_HTTP_Affjax.post(Network_HTTP_Affjax_Request.requestableFormURLEncoded)(Network_HTTP_Affjax_Response.responsableJson)(v3)(data1))();+                    return Control_Monad_Eff_Console.log("success so far")();+                };+                return Control_Monad_Eff_Console.log("error")();+            };+        };+    };+};+module.exports = {+    onLoginClick: onLoginClick, +    resp1Success: resp1Success+};++},{"../Common":37,"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":56,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Console":61,"../Control.Monad.Eff.Exception":63,"../Control.Monad.Eff.JQuery":65,"../DOM":101,"../Data.Argonaut":115,"../Data.Argonaut.Core":103,"../Data.Argonaut.Decode":106,"../Data.Argonaut.Decode.Class":104,"../Data.Either":138,"../Data.FormURLEncoded":148,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Show":241,"../Data.Tuple":255,"../Data.Unit":259,"../Network.HTTP.Affjax":270,"../Network.HTTP.Affjax.Request":267,"../Network.HTTP.Affjax.Response":268,"../Partial.Unsafe":275,"../Prelude":278}],264:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Activate = require("../Activate");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");+var Control_Monad_Eff_JQuery = require("../Control.Monad.Eff.JQuery");+var DOM = require("../DOM");+var Data_Function = require("../Data.Function");+var Login = require("../Login");+var Network_HTTP_Affjax = require("../Network.HTTP.Affjax");+var Prelude = require("../Prelude");+var main = Control_Monad_Eff_JQuery.ready(function __do() {+    Control_Monad_Eff_Console.log("let's go")();+    Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.display)(Control_Monad_Eff_JQuery.select(".js-hidden"))();+    Control_Bind.bindFlipped(Control_Monad_Eff.bindEff)(Control_Monad_Eff_JQuery.hide)(Control_Monad_Eff_JQuery.select(".noscript"))();+    var v = Control_Monad_Eff_JQuery.select("#activate")();+    var v1 = Control_Monad_Eff_JQuery.select("#login")();+    Control_Monad_Eff_JQuery.on("click")(Activate.onActivateClick(v))(v)();+    return Control_Monad_Eff_JQuery.on("click")(Login.onLoginClick(v))(v1)();+});+module.exports = {+    main: main+};++},{"../Activate":35,"../Control.Bind":46,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Console":61,"../Control.Monad.Eff.JQuery":65,"../DOM":101,"../Data.Function":151,"../Login":263,"../Network.HTTP.Affjax":270,"../Prelude":278}],265:[function(require,module,exports){+"use strict";++// module Math++exports.abs = Math.abs;++exports.acos = Math.acos;++exports.asin = Math.asin;++exports.atan = Math.atan;++exports.atan2 = function (y) {+  return function (x) {+    return Math.atan2(y, x);+  };+};++exports.ceil = Math.ceil;++exports.cos = Math.cos;++exports.exp = Math.exp;++exports.floor = Math.floor;++exports.trunc = Math.trunc || function (n) {+  return n < 0 ? Math.ceil(n) : Math.floor(n);+};++exports.log = Math.log;++exports.max = function (n1) {+  return function (n2) {+    return Math.max(n1, n2);+  };+};++exports.min = function (n1) {+  return function (n2) {+    return Math.min(n1, n2);+  };+};++exports.pow = function (n) {+  return function (p) {+    return Math.pow(n, p);+  };+};++exports.remainder = function (n) {+  return function (m) {+    return n % m;+  };+};++exports.round = Math.round;++exports.sin = Math.sin;++exports.sqrt = Math.sqrt;++exports.tan = Math.tan;++exports.e = Math.E;++exports.ln2 = Math.LN2;++exports.ln10 = Math.LN10;++exports.log2e = Math.LOG2E;++exports.log10e = Math.LOG10E;++exports.pi = Math.PI;++exports.tau = 2 * Math.PI;++exports.sqrt1_2 = Math.SQRT1_2;++exports.sqrt2 = Math.SQRT2;++},{}],266:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+module.exports = {+    abs: $foreign.abs, +    acos: $foreign.acos, +    asin: $foreign.asin, +    atan: $foreign.atan, +    atan2: $foreign.atan2, +    ceil: $foreign.ceil, +    cos: $foreign.cos, +    e: $foreign.e, +    exp: $foreign.exp, +    floor: $foreign.floor, +    ln10: $foreign.ln10, +    ln2: $foreign.ln2, +    log: $foreign.log, +    log10e: $foreign.log10e, +    log2e: $foreign.log2e, +    max: $foreign.max, +    min: $foreign.min, +    pi: $foreign.pi, +    pow: $foreign.pow, +    remainder: $foreign.remainder, +    round: $foreign.round, +    sin: $foreign.sin, +    sqrt: $foreign.sqrt, +    sqrt1_2: $foreign.sqrt1_2, +    sqrt2: $foreign.sqrt2, +    tan: $foreign.tan, +    tau: $foreign.tau, +    trunc: $foreign.trunc+};++},{"./foreign":265}],267:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Semigroupoid = require("../Control.Semigroupoid");+var DOM_File_Types = require("../DOM.File.Types");+var DOM_Node_Types = require("../DOM.Node.Types");+var DOM_XHR_Types = require("../DOM.XHR.Types");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_ArrayBuffer_Types = require("../Data.ArrayBuffer.Types");+var Data_FormURLEncoded = require("../Data.FormURLEncoded");+var Data_Maybe = require("../Data.Maybe");+var Data_MediaType = require("../Data.MediaType");+var Data_MediaType_Common = require("../Data.MediaType.Common");+var Data_Show = require("../Data.Show");+var Data_Tuple = require("../Data.Tuple");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var Requestable = function (toRequest) {+    this.toRequest = toRequest;+};+var toRequest = function (dict) {+    return dict.toRequest;+};+var requestableJson = new Requestable(function (json) {+    return new Data_Tuple.Tuple(new Data_Maybe.Just(Data_MediaType_Common.applicationJSON), Unsafe_Coerce.unsafeCoerce(Data_Show.show(Data_Argonaut_Core.showJson)(json)));+});+var requestableFormURLEncoded = new Requestable(function (form) {+    return new Data_Tuple.Tuple(new Data_Maybe.Just(Data_MediaType_Common.applicationFormURLEncoded), Unsafe_Coerce.unsafeCoerce(Data_FormURLEncoded.encode(form)));+});+var defaultToRequest = function ($0) {+    return Data_Tuple.Tuple.create(Data_Maybe.Nothing.value)(Unsafe_Coerce.unsafeCoerce($0));+};+var requestableBlob = new Requestable(defaultToRequest);+var requestableDocument = new Requestable(defaultToRequest);+var requestableFloat32Array = new Requestable(defaultToRequest);+var requestableFloat64Array = new Requestable(defaultToRequest);+var requestableFormData = new Requestable(defaultToRequest);+var requestableInt16Array = new Requestable(defaultToRequest);+var requestableInt32Array = new Requestable(defaultToRequest);+var requestableInt8Array = new Requestable(defaultToRequest);+var requestableRequestContent = new Requestable(defaultToRequest);+var requestableString = new Requestable(defaultToRequest);+var requestableUint16Array = new Requestable(defaultToRequest);+var requestableUint32Array = new Requestable(defaultToRequest);+var requestableUint8Array = new Requestable(defaultToRequest);+var requestableUint8ClampedArray = new Requestable(defaultToRequest);+var requestableUnit = new Requestable(defaultToRequest);+module.exports = {+    Requestable: Requestable, +    toRequest: toRequest, +    requestableRequestContent: requestableRequestContent, +    requestableInt8Array: requestableInt8Array, +    requestableInt16Array: requestableInt16Array, +    requestableInt32Array: requestableInt32Array, +    requestableUint8Array: requestableUint8Array, +    requestableUint16Array: requestableUint16Array, +    requestableUint32Array: requestableUint32Array, +    requestableUint8ClampedArray: requestableUint8ClampedArray, +    requestableFloat32Array: requestableFloat32Array, +    requestableFloat64Array: requestableFloat64Array, +    requestableBlob: requestableBlob, +    requestableDocument: requestableDocument, +    requestableString: requestableString, +    requestableJson: requestableJson, +    requestableFormData: requestableFormData, +    requestableFormURLEncoded: requestableFormURLEncoded, +    requestableUnit: requestableUnit+};++},{"../Control.Semigroupoid":93,"../DOM.File.Types":96,"../DOM.Node.Types":97,"../DOM.XHR.Types":100,"../Data.Argonaut.Core":103,"../Data.ArrayBuffer.Types":121,"../Data.FormURLEncoded":148,"../Data.Maybe":204,"../Data.MediaType":206,"../Data.MediaType.Common":205,"../Data.Show":241,"../Data.Tuple":255,"../Prelude":278,"../Unsafe.Coerce":282}],268:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var DOM_File_Types = require("../DOM.File.Types");+var DOM_Node_Types = require("../DOM.Node.Types");+var Data_Argonaut_Core = require("../Data.Argonaut.Core");+var Data_ArrayBuffer_Types = require("../Data.ArrayBuffer.Types");+var Data_Eq = require("../Data.Eq");+var Data_Foreign = require("../Data.Foreign");+var Data_Function = require("../Data.Function");+var Data_Identity = require("../Data.Identity");+var Data_Maybe = require("../Data.Maybe");+var Data_MediaType = require("../Data.MediaType");+var Data_MediaType_Common = require("../Data.MediaType.Common");+var Data_Show = require("../Data.Show");+var Data_Tuple = require("../Data.Tuple");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var Unsafe_Coerce = require("../Unsafe.Coerce");+var ArrayBufferResponse = (function () {+    function ArrayBufferResponse() {++    };+    ArrayBufferResponse.value = new ArrayBufferResponse();+    return ArrayBufferResponse;+})();+var BlobResponse = (function () {+    function BlobResponse() {++    };+    BlobResponse.value = new BlobResponse();+    return BlobResponse;+})();+var DocumentResponse = (function () {+    function DocumentResponse() {++    };+    DocumentResponse.value = new DocumentResponse();+    return DocumentResponse;+})();+var JSONResponse = (function () {+    function JSONResponse() {++    };+    JSONResponse.value = new JSONResponse();+    return JSONResponse;+})();+var StringResponse = (function () {+    function StringResponse() {++    };+    StringResponse.value = new StringResponse();+    return StringResponse;+})();+var Respondable = function (fromResponse, responseType) {+    this.fromResponse = fromResponse;+    this.responseType = responseType;+};+var showResponseType = new Data_Show.Show(function (v) {+    if (v instanceof ArrayBufferResponse) {+        return "ArrayBufferResponse";+    };+    if (v instanceof BlobResponse) {+        return "BlobResponse";+    };+    if (v instanceof DocumentResponse) {+        return "DocumentResponse";+    };+    if (v instanceof JSONResponse) {+        return "JSONResponse";+    };+    if (v instanceof StringResponse) {+        return "StringResponse";+    };+    throw new Error("Failed pattern match at Network.HTTP.Affjax.Response line 42, column 3 - line 43, column 3: " + [ v.constructor.name ]);+});+var responseTypeToString = function (v) {+    if (v instanceof ArrayBufferResponse) {+        return "arraybuffer";+    };+    if (v instanceof BlobResponse) {+        return "blob";+    };+    if (v instanceof DocumentResponse) {+        return "document";+    };+    if (v instanceof JSONResponse) {+        return "text";+    };+    if (v instanceof StringResponse) {+        return "text";+    };+    throw new Error("Failed pattern match at Network.HTTP.Affjax.Response line 49, column 1 - line 50, column 1: " + [ v.constructor.name ]);+};+var responseType = function (dict) {+    return dict.responseType;+};+var responsableUnit = new Respondable(Data_Function["const"](Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Unit.unit)), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, StringResponse.value));+var responsableString = new Respondable(Data_Foreign.readString, new Data_Tuple.Tuple(Data_Maybe.Nothing.value, StringResponse.value));+var responsableJson = new Respondable(function ($8) {+    return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Unsafe_Coerce.unsafeCoerce($8));+}, new Data_Tuple.Tuple(new Data_Maybe.Just(Data_MediaType_Common.applicationJSON), JSONResponse.value));+var responsableForeign = new Respondable(function ($9) {+    return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Unsafe_Coerce.unsafeCoerce($9));+}, new Data_Tuple.Tuple(Data_Maybe.Nothing.value, JSONResponse.value));+var responsableDocument = new Respondable(Data_Foreign.unsafeReadTagged("Document"), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, DocumentResponse.value));+var responsableBlob = new Respondable(Data_Foreign.unsafeReadTagged("Blob"), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, BlobResponse.value));+var responsableArrayBuffer = new Respondable(Data_Foreign.unsafeReadTagged("ArrayBuffer"), new Data_Tuple.Tuple(Data_Maybe.Nothing.value, ArrayBufferResponse.value));+var fromResponse = function (dict) {+    return dict.fromResponse;+};+var eqResponseType = new Data_Eq.Eq(function (v) {+    return function (v1) {+        if (v instanceof ArrayBufferResponse && v1 instanceof ArrayBufferResponse) {+            return true;+        };+        if (v instanceof BlobResponse && v1 instanceof BlobResponse) {+            return true;+        };+        if (v instanceof DocumentResponse && v1 instanceof DocumentResponse) {+            return true;+        };+        if (v instanceof JSONResponse && v1 instanceof JSONResponse) {+            return true;+        };+        if (v instanceof StringResponse && v1 instanceof StringResponse) {+            return true;+        };+        return false;+    };+});+module.exports = {+    ArrayBufferResponse: ArrayBufferResponse, +    BlobResponse: BlobResponse, +    DocumentResponse: DocumentResponse, +    JSONResponse: JSONResponse, +    StringResponse: StringResponse, +    Respondable: Respondable, +    fromResponse: fromResponse, +    responseType: responseType, +    responseTypeToString: responseTypeToString, +    eqResponseType: eqResponseType, +    showResponseType: showResponseType, +    responsableBlob: responsableBlob, +    responsableDocument: responsableDocument, +    responsableForeign: responsableForeign, +    responsableString: responsableString, +    responsableUnit: responsableUnit, +    responsableArrayBuffer: responsableArrayBuffer, +    responsableJson: responsableJson+};++},{"../Control.Applicative":40,"../Control.Monad.Except.Trans":73,"../Control.Semigroupoid":93,"../DOM.File.Types":96,"../DOM.Node.Types":97,"../Data.Argonaut.Core":103,"../Data.ArrayBuffer.Types":121,"../Data.Eq":140,"../Data.Foreign":147,"../Data.Function":151,"../Data.Identity":163,"../Data.Maybe":204,"../Data.MediaType":206,"../Data.MediaType.Common":205,"../Data.Show":241,"../Data.Tuple":255,"../Data.Unit":259,"../Prelude":278,"../Unsafe.Coerce":282}],269:[function(require,module,exports){+(function (process){+/* global exports */+/* global XMLHttpRequest */+/* global module */+/* global process */+"use strict";++// module Network.HTTP.Affjax++// jshint maxparams: 5+exports._ajax = function (mkHeader, options, canceler, errback, callback) {+  var platformSpecific = { };+  if (typeof module !== "undefined" && module.require && !(typeof process !== "undefined" && process.versions["electron"])) {+    // We are on node.js+    platformSpecific.newXHR = function () {+      var XHR = module.require("xhr2");+      return new XHR();+    };++    platformSpecific.fixupUrl = function (url) {+      var urllib = module.require("url");+      var u = urllib.parse(url);+      u.protocol = u.protocol || "http:";+      u.hostname = u.hostname || "localhost";+      return urllib.format(u);+    };++    platformSpecific.getResponse = function (xhr) {+      return xhr.response;+    };+  } else {+    // We are in the browser+    platformSpecific.newXHR = function () {+      return new XMLHttpRequest();+    };++    platformSpecific.fixupUrl = function (url) {+      return url || "/";+    };++    platformSpecific.getResponse = function (xhr) {+      return xhr.response;+    };+  }++  return function () {+    var xhr = platformSpecific.newXHR();+    var fixedUrl = platformSpecific.fixupUrl(options.url);+    xhr.open(options.method || "GET", fixedUrl, true, options.username, options.password);+    if (options.headers) {+      try {+        for (var i = 0, header; (header = options.headers[i]) != null; i++) {+          xhr.setRequestHeader(header.field, header.value);+        }+      }+      catch (e) {+        errback(e)();+      }+    }+    xhr.onerror = function () {+      errback(new Error("AJAX request failed: " + options.method + " " + options.url))();+    };+    xhr.onload = function () {+      callback({+        status: xhr.status,+        headers: xhr.getAllResponseHeaders().split("\r\n")+          .filter(function (header) {+            return header.length > 0;+          })+          .map(function (header) {+            var i = header.indexOf(":");+            return mkHeader(header.substring(0, i))(header.substring(i + 2));+          }),+        response: platformSpecific.getResponse(xhr)+      })();+    };+    xhr.responseType = options.responseType;+    xhr.withCredentials = options.withCredentials;+    xhr.send(options.content);+    return canceler(xhr);+  };+};++// jshint maxparams: 4+exports._cancelAjax = function (xhr, cancelError, errback, callback) {+  return function () {+    try { xhr.abort(); } catch (e) { return callback(false)(); }+    return callback(true)();+  };+};+++}).call(this,require('_process'))+},{"_process":284}],270:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Control_Applicative = require("../Control.Applicative");+var Control_Bind = require("../Control.Bind");+var Control_Monad_Aff = require("../Control.Monad.Aff");+var Control_Monad_Aff_AVar = require("../Control.Monad.Aff.AVar");+var Control_Monad_Eff = require("../Control.Monad.Eff");+var Control_Monad_Eff_Class = require("../Control.Monad.Eff.Class");+var Control_Monad_Eff_Exception = require("../Control.Monad.Eff.Exception");+var Control_Monad_Eff_Ref = require("../Control.Monad.Eff.Ref");+var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");+var Control_Monad_Except = require("../Control.Monad.Except");+var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var DOM_XHR_Types = require("../DOM.XHR.Types");+var Data_Argonaut_Parser = require("../Data.Argonaut.Parser");+var Data_Array = require("../Data.Array");+var Data_Either = require("../Data.Either");+var Data_Eq = require("../Data.Eq");+var Data_Foldable = require("../Data.Foldable");+var Data_Foreign = require("../Data.Foreign");+var Data_Function = require("../Data.Function");+var Data_Function_Uncurried = require("../Data.Function.Uncurried");+var Data_Functor = require("../Data.Functor");+var Data_HTTP_Method = require("../Data.HTTP.Method");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Identity = require("../Data.Identity");+var Data_Int = require("../Data.Int");+var Data_List_Types = require("../Data.List.Types");+var Data_Maybe = require("../Data.Maybe");+var Data_MediaType = require("../Data.MediaType");+var Data_Nullable = require("../Data.Nullable");+var Data_Ring = require("../Data.Ring");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Time_Duration = require("../Data.Time.Duration");+var Data_Tuple = require("../Data.Tuple");+var $$Math = require("../Math");+var Network_HTTP_Affjax_Request = require("../Network.HTTP.Affjax.Request");+var Network_HTTP_Affjax_Response = require("../Network.HTTP.Affjax.Response");+var Network_HTTP_RequestHeader = require("../Network.HTTP.RequestHeader");+var Network_HTTP_ResponseHeader = require("../Network.HTTP.ResponseHeader");+var Network_HTTP_StatusCode = require("../Network.HTTP.StatusCode");+var Prelude = require("../Prelude");+var retry = function (dictRequestable) {+    return function (policy) {+        return function (run) {+            return function (req) {+                var retryState = function (v) {+                    if (v instanceof Data_Either.Left) {+                        return Data_Either.Left.create(new Data_Either.Left(v.value0));+                    };+                    if (v instanceof Data_Either.Right) {+                        if (v.value0.status === 200) {+                            return new Data_Either.Right(v.value0);+                        };+                        var $49 = policy.shouldRetryWithStatusCode(v.value0.status);+                        if ($49) {+                            return Data_Either.Left.create(new Data_Either.Right(v.value0));+                        };+                        return new Data_Either.Right(v.value0);+                    };+                    throw new Error("Failed pattern match at Network.HTTP.Affjax line 217, column 5 - line 217, column 44: " + [ v.constructor.name ]);+                };+                var go = function (failureRef) {+                    return function (n) {+                        return Control_Bind.bind(Control_Monad_Aff.bindAff)(Data_Functor.map(Control_Monad_Aff.functorAff)(retryState)(Control_Monad_Aff.attempt(run(req))))(function (v) {+                            if (v instanceof Data_Either.Left) {+                                return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Eff_Class.liftEff(Control_Monad_Aff.monadEffAff)(Control_Monad_Eff_Ref.writeRef(failureRef)(new Data_Maybe.Just(v.value0))))(function () {+                                    return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Aff.delay(policy.delayCurve(n)))(function () {+                                        return go(failureRef)(n + 1 | 0);+                                    });+                                });+                            };+                            if (v instanceof Data_Either.Right) {+                                return Control_Applicative.pure(Control_Monad_Aff.applicativeAff)(v.value0);+                            };+                            throw new Error("Failed pattern match at Network.HTTP.Affjax line 229, column 7 - line 234, column 32: " + [ v.constructor.name ]);+                        });+                    };+                };+                return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Eff_Class.liftEff(Control_Monad_Aff.monadEffAff)(Control_Monad_Eff_Ref.newRef(Data_Maybe.Nothing.value)))(function (v) {+                    var loop = go(v);+                    if (policy.timeout instanceof Data_Maybe.Nothing) {+                        return loop(1);+                    };+                    if (policy.timeout instanceof Data_Maybe.Just) {+                        return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff_AVar.makeVar)(function (v1) {+                            return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff.forkAff(Control_Bind.bind(Control_Monad_Aff.bindAff)(loop(1))(function ($104) {+                                return Control_Monad_Aff_AVar.putVar(v1)(Data_Maybe.Just.create($104));+                            })))(function (v2) {+                                return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff.forkAff(Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Aff.delay(policy.timeout.value0))(function () {+                                    return Control_Bind.discard(Control_Bind.discardUnit)(Control_Monad_Aff.bindAff)(Control_Monad_Aff_AVar.putVar(v1)(Data_Maybe.Nothing.value))(function () {+                                        return Control_Monad_Aff.cancel(v2)(Control_Monad_Eff_Exception.error("Cancel"));+                                    });+                                })))(function (v3) {+                                    return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Aff_AVar.takeVar(v1))(function (v4) {+                                        if (v4 instanceof Data_Maybe.Nothing) {+                                            return Control_Bind.bind(Control_Monad_Aff.bindAff)(Control_Monad_Eff_Class.liftEff(Control_Monad_Aff.monadEffAff)(Control_Monad_Eff_Ref.readRef(v)))(function (v5) {+                                                if (v5 instanceof Data_Maybe.Nothing) {+                                                    return Control_Monad_Error_Class.throwError(Control_Monad_Aff.monadThrowAff)(Control_Monad_Eff_Exception.error("Timeout"));+                                                };+                                                if (v5 instanceof Data_Maybe.Just) {+                                                    return Data_Either.either(Control_Monad_Error_Class.throwError(Control_Monad_Aff.monadThrowAff))(Control_Applicative.pure(Control_Monad_Aff.applicativeAff))(v5.value0);+                                                };+                                                throw new Error("Failed pattern match at Network.HTTP.Affjax line 209, column 11 - line 211, column 61: " + [ v5.constructor.name ]);+                                            });+                                        };+                                        if (v4 instanceof Data_Maybe.Just) {+                                            return Control_Applicative.pure(Control_Monad_Aff.applicativeAff)(v4.value0);+                                        };+                                        throw new Error("Failed pattern match at Network.HTTP.Affjax line 206, column 7 - line 212, column 31: " + [ v4.constructor.name ]);+                                    });+                                });+                            });+                        });+                    };+                    throw new Error("Failed pattern match at Network.HTTP.Affjax line 195, column 3 - line 212, column 31: " + [ policy.timeout.constructor.name ]);+                });+            };+        };+    };+};+var defaultRetryPolicy = {+    timeout: Data_Maybe.Nothing.value, +    delayCurve: function (n) {+        return Data_Time_Duration.Milliseconds($$Math.max(30.0 * 1000.0)(100.0 * $$Math.pow(2.0)(Data_Int.toNumber(n - 1 | 0))));+    }, +    shouldRetryWithStatusCode: Data_Function["const"](false)+};+var defaultRequest = {+    method: new Data_Either.Left(Data_HTTP_Method.GET.value), +    url: "/", +    headers: [  ], +    content: Data_Maybe.Nothing.value, +    username: Data_Maybe.Nothing.value, +    password: Data_Maybe.Nothing.value, +    withCredentials: false+};+var cancelAjax = function (xhr) {+    return function (err) {+        return Control_Monad_Aff.makeAff(function (eb) {+            return function (cb) {+                return $foreign._cancelAjax(xhr, err, eb, cb);+            };+        });+    };+};+var affjax$prime = function (dictRequestable) {+    return function (dictRespondable) {+        return function (req) {+            return function (eb) {+                return function (cb) {+                    var responseSettings = Network_HTTP_Affjax_Response.responseType(dictRespondable);+                    var requestSettings = (function () {+                        var v = Data_Functor.map(Data_Maybe.functorMaybe)(Network_HTTP_Affjax_Request.toRequest(dictRequestable))(req.content);+                        if (v instanceof Data_Maybe.Nothing) {+                            return new Data_Tuple.Tuple(Data_Maybe.Nothing.value, Data_Maybe.Nothing.value);+                        };+                        if (v instanceof Data_Maybe.Just) {+                            return new Data_Tuple.Tuple(v.value0.value0, new Data_Maybe.Just(v.value0.value1));+                        };+                        throw new Error("Failed pattern match at Network.HTTP.Affjax line 262, column 21 - line 264, column 49: " + [ v.constructor.name ]);+                    })();+                    var parseJSON = function ($105) {+                        return Data_Either.either(function ($106) {+                            return Data_Foreign.fail(Data_Foreign.JSONError.create($106));+                        })(function ($107) {+                            return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Foreign.toForeign($107));+                        })(Data_Argonaut_Parser.jsonParser($105));+                    };+                    var fromResponse$prime = (function () {+                        var v = Data_Tuple.snd(responseSettings);+                        if (v instanceof Network_HTTP_Affjax_Response.JSONResponse) {+                            return Control_Bind.composeKleisliFlipped(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(Network_HTTP_Affjax_Response.fromResponse(dictRespondable))(Control_Bind.composeKleisliFlipped(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(parseJSON)(Data_Foreign.readString));+                        };+                        return Network_HTTP_Affjax_Response.fromResponse(dictRespondable);+                    })();+                    var cb$prime = function (res) {+                        var v = Data_Functor.map(Data_Either.functorEither)(function (v1) {+                            var $72 = {};+                            for (var $73 in res) {+                                if ({}.hasOwnProperty.call(res, $73)) {+                                    $72[$73] = res[$73];+                                };+                            };+                            $72.response = v1;+                            return $72;+                        })(Control_Monad_Except.runExcept(fromResponse$prime(res.response)));+                        if (v instanceof Data_Either.Left) {+                            return eb(Control_Monad_Eff_Exception.error(Data_Show.show(Data_List_Types.showNonEmptyList(Data_Foreign.showForeignError))(v.value0)));+                        };+                        if (v instanceof Data_Either.Right) {+                            return cb(v.value0);+                        };+                        throw new Error("Failed pattern match at Network.HTTP.Affjax line 281, column 13 - line 283, column 26: " + [ v.constructor.name ]);+                    };+                    var addHeader = function (mh) {+                        return function (hs) {+                            if (mh instanceof Data_Maybe.Just && !Data_Foldable.any(Data_Foldable.foldableArray)(Data_HeytingAlgebra.heytingAlgebraBoolean)(Data_Function.on(Data_Eq.eq(Data_Eq.eqString))(Network_HTTP_RequestHeader.requestHeaderName)(mh.value0))(hs)) {+                                return Data_Array.snoc(hs)(mh.value0);+                            };+                            return hs;+                        };+                    };+                    var headers = addHeader(Data_Functor.map(Data_Maybe.functorMaybe)(Network_HTTP_RequestHeader.ContentType.create)(Data_Tuple.fst(requestSettings)))(addHeader(Data_Functor.map(Data_Maybe.functorMaybe)(Network_HTTP_RequestHeader.Accept.create)(Data_Tuple.fst(responseSettings)))(req.headers));+                    var req$prime = {+                        method: Data_HTTP_Method.print(req.method), +                        url: req.url, +                        headers: Data_Functor.map(Data_Functor.functorArray)(function (h) {+                            return {+                                field: Network_HTTP_RequestHeader.requestHeaderName(h), +                                value: Network_HTTP_RequestHeader.requestHeaderValue(h)+                            };+                        })(headers), +                        content: Data_Nullable.toNullable(Data_Tuple.snd(requestSettings)), +                        responseType: Network_HTTP_Affjax_Response.responseTypeToString(Data_Tuple.snd(responseSettings)), +                        username: Data_Nullable.toNullable(req.username), +                        password: Data_Nullable.toNullable(req.password), +                        withCredentials: req.withCredentials+                    };+                    return $foreign._ajax(Network_HTTP_ResponseHeader.responseHeader, req$prime, cancelAjax, eb, cb$prime);+                };+            };+        };+    };+};+var affjax = function (dictRequestable) {+    return function (dictRespondable) {+        return function ($108) {+            return Control_Monad_Aff["makeAff'"](affjax$prime(dictRequestable)(dictRespondable)($108));+        };+    };+};+var $$delete = function (dictRespondable) {+    return function (u) {+        return affjax(Network_HTTP_Affjax_Request.requestableUnit)(dictRespondable)((function () {+            var $80 = {};+            for (var $81 in defaultRequest) {+                if ({}.hasOwnProperty.call(defaultRequest, $81)) {+                    $80[$81] = defaultRequest[$81];+                };+            };+            $80.method = new Data_Either.Left(Data_HTTP_Method.DELETE.value);+            $80.url = u;+            return $80;+        })());+    };+};+var delete_ = $$delete(Network_HTTP_Affjax_Response.responsableUnit);+var get = function (dictRespondable) {+    return function (u) {+        return affjax(Network_HTTP_Affjax_Request.requestableUnit)(dictRespondable)((function () {+            var $83 = {};+            for (var $84 in defaultRequest) {+                if ({}.hasOwnProperty.call(defaultRequest, $84)) {+                    $83[$84] = defaultRequest[$84];+                };+            };+            $83.url = u;+            return $83;+        })());+    };+};+var patch = function (dictRequestable) {+    return function (dictRespondable) {+        return function (u) {+            return function (c) {+                return affjax(dictRequestable)(dictRespondable)((function () {+                    var $86 = {};+                    for (var $87 in defaultRequest) {+                        if ({}.hasOwnProperty.call(defaultRequest, $87)) {+                            $86[$87] = defaultRequest[$87];+                        };+                    };+                    $86.method = new Data_Either.Left(Data_HTTP_Method.PATCH.value);+                    $86.url = u;+                    $86.content = new Data_Maybe.Just(c);+                    return $86;+                })());+            };+        };+    };+};+var patch_ = function (dictRequestable) {+    return patch(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);+};+var patch$prime = function (dictRequestable) {+    return function (dictRespondable) {+        return function (u) {+            return function (c) {+                return affjax(dictRequestable)(dictRespondable)((function () {+                    var $89 = {};+                    for (var $90 in defaultRequest) {+                        if ({}.hasOwnProperty.call(defaultRequest, $90)) {+                            $89[$90] = defaultRequest[$90];+                        };+                    };+                    $89.method = new Data_Either.Left(Data_HTTP_Method.PATCH.value);+                    $89.url = u;+                    $89.content = c;+                    return $89;+                })());+            };+        };+    };+};+var patch_$prime = function (dictRequestable) {+    return patch$prime(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);+};+var post = function (dictRequestable) {+    return function (dictRespondable) {+        return function (u) {+            return function (c) {+                return affjax(dictRequestable)(dictRespondable)((function () {+                    var $92 = {};+                    for (var $93 in defaultRequest) {+                        if ({}.hasOwnProperty.call(defaultRequest, $93)) {+                            $92[$93] = defaultRequest[$93];+                        };+                    };+                    $92.method = new Data_Either.Left(Data_HTTP_Method.POST.value);+                    $92.url = u;+                    $92.content = new Data_Maybe.Just(c);+                    return $92;+                })());+            };+        };+    };+};+var post_ = function (dictRequestable) {+    return post(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);+};+var post$prime = function (dictRequestable) {+    return function (dictRespondable) {+        return function (u) {+            return function (c) {+                return affjax(dictRequestable)(dictRespondable)((function () {+                    var $95 = {};+                    for (var $96 in defaultRequest) {+                        if ({}.hasOwnProperty.call(defaultRequest, $96)) {+                            $95[$96] = defaultRequest[$96];+                        };+                    };+                    $95.method = new Data_Either.Left(Data_HTTP_Method.POST.value);+                    $95.url = u;+                    $95.content = c;+                    return $95;+                })());+            };+        };+    };+};+var post_$prime = function (dictRequestable) {+    return post$prime(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);+};+var put = function (dictRequestable) {+    return function (dictRespondable) {+        return function (u) {+            return function (c) {+                return affjax(dictRequestable)(dictRespondable)((function () {+                    var $98 = {};+                    for (var $99 in defaultRequest) {+                        if ({}.hasOwnProperty.call(defaultRequest, $99)) {+                            $98[$99] = defaultRequest[$99];+                        };+                    };+                    $98.method = new Data_Either.Left(Data_HTTP_Method.PUT.value);+                    $98.url = u;+                    $98.content = new Data_Maybe.Just(c);+                    return $98;+                })());+            };+        };+    };+};+var put_ = function (dictRequestable) {+    return put(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);+};+var put$prime = function (dictRequestable) {+    return function (dictRespondable) {+        return function (u) {+            return function (c) {+                return affjax(dictRequestable)(dictRespondable)((function () {+                    var $101 = {};+                    for (var $102 in defaultRequest) {+                        if ({}.hasOwnProperty.call(defaultRequest, $102)) {+                            $101[$102] = defaultRequest[$102];+                        };+                    };+                    $101.method = new Data_Either.Left(Data_HTTP_Method.PUT.value);+                    $101.url = u;+                    $101.content = c;+                    return $101;+                })());+            };+        };+    };+};+var put_$prime = function (dictRequestable) {+    return put$prime(dictRequestable)(Network_HTTP_Affjax_Response.responsableUnit);+};+module.exports = {+    affjax: affjax, +    "affjax'": affjax$prime, +    defaultRequest: defaultRequest, +    defaultRetryPolicy: defaultRetryPolicy, +    "delete": $$delete, +    delete_: delete_, +    get: get, +    patch: patch, +    "patch'": patch$prime, +    patch_: patch_, +    "patch_'": patch_$prime, +    post: post, +    "post'": post$prime, +    post_: post_, +    "post_'": post_$prime, +    put: put, +    "put'": put$prime, +    put_: put_, +    "put_'": put_$prime, +    retry: retry+};++},{"../Control.Applicative":40,"../Control.Bind":46,"../Control.Monad.Aff":56,"../Control.Monad.Aff.AVar":52,"../Control.Monad.Eff":71,"../Control.Monad.Eff.Class":59,"../Control.Monad.Eff.Exception":63,"../Control.Monad.Eff.Ref":67,"../Control.Monad.Error.Class":72,"../Control.Monad.Except":74,"../Control.Monad.Except.Trans":73,"../Control.Semigroupoid":93,"../DOM.XHR.Types":100,"../Data.Argonaut.Parser":112,"../Data.Array":120,"../Data.Either":138,"../Data.Eq":140,"../Data.Foldable":145,"../Data.Foreign":147,"../Data.Function":151,"../Data.Function.Uncurried":150,"../Data.Functor":157,"../Data.HTTP.Method":160,"../Data.HeytingAlgebra":162,"../Data.Identity":163,"../Data.Int":167,"../Data.List.Types":199,"../Data.Maybe":204,"../Data.MediaType":206,"../Data.Nullable":218,"../Data.Ring":233,"../Data.Semiring":239,"../Data.Show":241,"../Data.Time.Duration":250,"../Data.Tuple":255,"../Math":266,"../Network.HTTP.Affjax.Request":267,"../Network.HTTP.Affjax.Response":268,"../Network.HTTP.RequestHeader":271,"../Network.HTTP.ResponseHeader":272,"../Network.HTTP.StatusCode":273,"../Prelude":278,"./foreign":269}],271:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Data_Eq = require("../Data.Eq");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_MediaType = require("../Data.MediaType");+var Data_Newtype = require("../Data.Newtype");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Accept = (function () {+    function Accept(value0) {+        this.value0 = value0;+    };+    Accept.create = function (value0) {+        return new Accept(value0);+    };+    return Accept;+})();+var ContentType = (function () {+    function ContentType(value0) {+        this.value0 = value0;+    };+    ContentType.create = function (value0) {+        return new ContentType(value0);+    };+    return ContentType;+})();+var RequestHeader = (function () {+    function RequestHeader(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    RequestHeader.create = function (value0) {+        return function (value1) {+            return new RequestHeader(value0, value1);+        };+    };+    return RequestHeader;+})();+var showRequestHeader = new Data_Show.Show(function (v) {+    if (v instanceof Accept) {+        return "(Accept " + (Data_Show.show(Data_MediaType.showMediaType)(v.value0) + ")");+    };+    if (v instanceof ContentType) {+        return "(ContentType " + (Data_Show.show(Data_MediaType.showMediaType)(v.value0) + ")");+    };+    if (v instanceof RequestHeader) {+        return "(RequestHeader " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(Data_Show.showString)(v.value1) + ")")));+    };+    throw new Error("Failed pattern match at Network.HTTP.RequestHeader line 20, column 3 - line 21, column 3: " + [ v.constructor.name ]);+});+var requestHeaderValue = function (v) {+    if (v instanceof Accept) {+        return Data_Newtype.unwrap(Data_MediaType.newtypeMediaType)(v.value0);+    };+    if (v instanceof ContentType) {+        return Data_Newtype.unwrap(Data_MediaType.newtypeMediaType)(v.value0);+    };+    if (v instanceof RequestHeader) {+        return v.value1;+    };+    throw new Error("Failed pattern match at Network.HTTP.RequestHeader line 30, column 1 - line 30, column 41: " + [ v.constructor.name ]);+};+var requestHeaderName = function (v) {+    if (v instanceof Accept) {+        return "Accept";+    };+    if (v instanceof ContentType) {+        return "Content-Type";+    };+    if (v instanceof RequestHeader) {+        return v.value0;+    };+    throw new Error("Failed pattern match at Network.HTTP.RequestHeader line 25, column 1 - line 26, column 1: " + [ v.constructor.name ]);+};+var eqRequestHeader = new Data_Eq.Eq(function (v) {+    return function (v1) {+        if (v instanceof Accept && v1 instanceof Accept) {+            return Data_Eq.eq(Data_MediaType.eqMediaType)(v.value0)(v1.value0);+        };+        if (v instanceof ContentType && v1 instanceof ContentType) {+            return Data_Eq.eq(Data_MediaType.eqMediaType)(v.value0)(v1.value0);+        };+        if (v instanceof RequestHeader && v1 instanceof RequestHeader) {+            return v.value0 === v1.value0 && v.value1 === v1.value1;+        };+        return false;+    };+});+module.exports = {+    Accept: Accept, +    ContentType: ContentType, +    RequestHeader: RequestHeader, +    requestHeaderName: requestHeaderName, +    requestHeaderValue: requestHeaderValue, +    eqRequestHeader: eqRequestHeader, +    showRequestHeader: showRequestHeader+};++},{"../Data.Eq":140,"../Data.HeytingAlgebra":162,"../Data.MediaType":206,"../Data.Newtype":215,"../Data.Semigroup":237,"../Data.Show":241,"../Prelude":278}],272:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Data_Eq = require("../Data.Eq");+var Data_Generic = require("../Data.Generic");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Maybe = require("../Data.Maybe");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var ResponseHeader = (function () {+    function ResponseHeader(value0, value1) {+        this.value0 = value0;+        this.value1 = value1;+    };+    ResponseHeader.create = function (value0) {+        return function (value1) {+            return new ResponseHeader(value0, value1);+        };+    };+    return ResponseHeader;+})();+var showResponseHeader = new Data_Show.Show(function (v) {+    return "(ResponseHeader " + (Data_Show.show(Data_Show.showString)(v.value0) + (" " + (Data_Show.show(Data_Show.showString)(v.value1) + ")")));+});+var responseHeaderValue = function (v) {+    return v.value1;+};+var responseHeaderName = function (v) {+    return v.value0;+};+var responseHeader = function (field) {+    return function (value) {+        return new ResponseHeader(field, value);+    };+};+var genericResponseHeader = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Network.HTTP.ResponseHeader.ResponseHeader" && v.value1.length === 2)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(ResponseHeader.create))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][0](Data_Unit.unit))))(Data_Generic.fromSpine(Data_Generic.genericString)(v["value1"][1](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Network.HTTP.ResponseHeader.ResponseHeader", [ {+        sigConstructor: "Network.HTTP.ResponseHeader.ResponseHeader", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);+        }, function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericString)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Network.HTTP.ResponseHeader.ResponseHeader", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericString)(v.value0);+    }, function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericString)(v.value1);+    } ]);+});+var eqResponseHeader = new Data_Eq.Eq(function (v) {+    return function (v1) {+        return v.value0 === v1.value0 && v.value1 === v1.value1;+    };+});+module.exports = {+    responseHeader: responseHeader, +    responseHeaderName: responseHeaderName, +    responseHeaderValue: responseHeaderValue, +    genericResponseHeader: genericResponseHeader, +    eqResponseHeader: eqResponseHeader, +    showResponseHeader: showResponseHeader+};++},{"../Control.Apply":42,"../Data.Eq":140,"../Data.Generic":159,"../Data.HeytingAlgebra":162,"../Data.Maybe":204,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Unit":259,"../Prelude":278}],273:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Apply = require("../Control.Apply");+var Data_Eq = require("../Data.Eq");+var Data_Generic = require("../Data.Generic");+var Data_Maybe = require("../Data.Maybe");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Prelude = require("../Prelude");+var StatusCode = function (x) {+    return x;+};+var showStatusCode = new Data_Show.Show(function (v) {+    return "(StatusCode " + (Data_Show.show(Data_Show.showInt)(v) + ")");+});+var genericStatusCode = new Data_Generic.Generic(function (v) {+    if (v instanceof Data_Generic.SProd && (v.value0 === "Network.HTTP.StatusCode.StatusCode" && v.value1.length === 1)) {+        return Control_Apply.apply(Data_Maybe.applyMaybe)(new Data_Maybe.Just(StatusCode))(Data_Generic.fromSpine(Data_Generic.genericInt)(v["value1"][0](Data_Unit.unit)));+    };+    return Data_Maybe.Nothing.value;+}, function ($dollarq) {+    return new Data_Generic.SigProd("Network.HTTP.StatusCode.StatusCode", [ {+        sigConstructor: "Network.HTTP.StatusCode.StatusCode", +        sigValues: [ function ($dollarq1) {+            return Data_Generic.toSignature(Data_Generic.genericInt)(Data_Generic.anyProxy);+        } ]+    } ]);+}, function (v) {+    return new Data_Generic.SProd("Network.HTTP.StatusCode.StatusCode", [ function ($dollarq) {+        return Data_Generic.toSpine(Data_Generic.genericInt)(v);+    } ]);+});+var eqStatusCode = new Data_Eq.Eq(function (v) {+    return function (v1) {+        return v === v1;+    };+});+module.exports = {+    StatusCode: StatusCode, +    genericStatusCode: genericStatusCode, +    eqStatusCode: eqStatusCode, +    showStatusCode: showStatusCode+};++},{"../Control.Apply":42,"../Data.Eq":140,"../Data.Generic":159,"../Data.Maybe":204,"../Data.Semigroup":237,"../Data.Show":241,"../Data.Unit":259,"../Prelude":278}],274:[function(require,module,exports){+"use strict";++// module Partial.Unsafe++exports.unsafePartial = function (f) {+  return f();+};++},{}],275:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var Partial = require("../Partial");+var unsafePartialBecause = function (v) {+    return function (x) {+        return $foreign.unsafePartial(function (dictPartial) {+            return x(dictPartial);+        });+    };+};+var unsafeCrashWith = function (msg) {+    return $foreign.unsafePartial(function (dictPartial) {+        return Partial.crashWith(dictPartial)(msg);+    });+};+module.exports = {+    unsafeCrashWith: unsafeCrashWith, +    unsafePartialBecause: unsafePartialBecause, +    unsafePartial: $foreign.unsafePartial+};++},{"../Partial":277,"./foreign":274}],276:[function(require,module,exports){+"use strict";++// module Partial++exports.crashWith = function () {+  return function (msg) {+    throw new Error(msg);+  };+};++},{}],277:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+var crash = function (dictPartial) {+    return $foreign.crashWith(dictPartial)("Partial.crash: partial function");+};+module.exports = {+    crash: crash, +    crashWith: $foreign.crashWith+};++},{"./foreign":276}],278:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Category = require("../Control.Category");+var Control_Monad = require("../Control.Monad");+var Control_Semigroupoid = require("../Control.Semigroupoid");+var Data_Boolean = require("../Data.Boolean");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_Bounded = require("../Data.Bounded");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_DivisionRing = require("../Data.DivisionRing");+var Data_Eq = require("../Data.Eq");+var Data_EuclideanRing = require("../Data.EuclideanRing");+var Data_Field = require("../Data.Field");+var Data_Function = require("../Data.Function");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_NaturalTransformation = require("../Data.NaturalTransformation");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Data_Unit = require("../Data.Unit");+var Data_Void = require("../Data.Void");+module.exports = {};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Category":47,"../Control.Monad":87,"../Control.Semigroupoid":93,"../Data.Boolean":130,"../Data.BooleanAlgebra":131,"../Data.Bounded":133,"../Data.CommutativeRing":134,"../Data.DivisionRing":137,"../Data.Eq":140,"../Data.EuclideanRing":142,"../Data.Field":143,"../Data.Function":151,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.NaturalTransformation":214,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Data.Unit":259,"../Data.Void":260}],279:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var TypeEquals = function (from, to) {+    this.from = from;+    this.to = to;+};+var to = function (dict) {+    return dict.to;+};+var refl = new TypeEquals(function (a) {+    return a;+}, function (a) {+    return a;+});+var from = function (dict) {+    return dict.from;+};+module.exports = {+    TypeEquals: TypeEquals, +    from: from, +    to: to, +    refl: refl+};++},{}],280:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var Control_Applicative = require("../Control.Applicative");+var Control_Apply = require("../Control.Apply");+var Control_Bind = require("../Control.Bind");+var Control_Monad = require("../Control.Monad");+var Data_BooleanAlgebra = require("../Data.BooleanAlgebra");+var Data_Bounded = require("../Data.Bounded");+var Data_CommutativeRing = require("../Data.CommutativeRing");+var Data_Eq = require("../Data.Eq");+var Data_Functor = require("../Data.Functor");+var Data_HeytingAlgebra = require("../Data.HeytingAlgebra");+var Data_Ord = require("../Data.Ord");+var Data_Ordering = require("../Data.Ordering");+var Data_Ring = require("../Data.Ring");+var Data_Semigroup = require("../Data.Semigroup");+var Data_Semiring = require("../Data.Semiring");+var Data_Show = require("../Data.Show");+var Prelude = require("../Prelude");+var Proxy3 = (function () {+    function Proxy3() {++    };+    Proxy3.value = new Proxy3();+    return Proxy3;+})();+var Proxy2 = (function () {+    function Proxy2() {++    };+    Proxy2.value = new Proxy2();+    return Proxy2;+})();+var $$Proxy = (function () {+    function $$Proxy() {++    };+    $$Proxy.value = new $$Proxy();+    return $$Proxy;+})();+var showProxy3 = new Data_Show.Show(function (v) {+    return "Proxy3";+});+var showProxy2 = new Data_Show.Show(function (v) {+    return "Proxy2";+});+var showProxy = new Data_Show.Show(function (v) {+    return "Proxy";+});+var semiringProxy3 = new Data_Semiring.Semiring(function (v) {+    return function (v1) {+        return Proxy3.value;+    };+}, function (v) {+    return function (v1) {+        return Proxy3.value;+    };+}, Proxy3.value, Proxy3.value);+var semiringProxy2 = new Data_Semiring.Semiring(function (v) {+    return function (v1) {+        return Proxy2.value;+    };+}, function (v) {+    return function (v1) {+        return Proxy2.value;+    };+}, Proxy2.value, Proxy2.value);+var semiringProxy = new Data_Semiring.Semiring(function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+}, function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+}, $$Proxy.value, $$Proxy.value);+var semigroupProxy3 = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        return Proxy3.value;+    };+});+var semigroupProxy2 = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        return Proxy2.value;+    };+});+var semigroupProxy = new Data_Semigroup.Semigroup(function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+});+var ringProxy3 = new Data_Ring.Ring(function () {+    return semiringProxy3;+}, function (v) {+    return function (v1) {+        return Proxy3.value;+    };+});+var ringProxy2 = new Data_Ring.Ring(function () {+    return semiringProxy2;+}, function (v) {+    return function (v1) {+        return Proxy2.value;+    };+});+var ringProxy = new Data_Ring.Ring(function () {+    return semiringProxy;+}, function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+});+var heytingAlgebraProxy3 = new Data_HeytingAlgebra.HeytingAlgebra(function (v) {+    return function (v1) {+        return Proxy3.value;+    };+}, function (v) {+    return function (v1) {+        return Proxy3.value;+    };+}, Proxy3.value, function (v) {+    return function (v1) {+        return Proxy3.value;+    };+}, function (v) {+    return Proxy3.value;+}, Proxy3.value);+var heytingAlgebraProxy2 = new Data_HeytingAlgebra.HeytingAlgebra(function (v) {+    return function (v1) {+        return Proxy2.value;+    };+}, function (v) {+    return function (v1) {+        return Proxy2.value;+    };+}, Proxy2.value, function (v) {+    return function (v1) {+        return Proxy2.value;+    };+}, function (v) {+    return Proxy2.value;+}, Proxy2.value);+var heytingAlgebraProxy = new Data_HeytingAlgebra.HeytingAlgebra(function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+}, function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+}, $$Proxy.value, function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+}, function (v) {+    return $$Proxy.value;+}, $$Proxy.value);+var functorProxy = new Data_Functor.Functor(function (f) {+    return function (m) {+        return $$Proxy.value;+    };+});+var eqProxy3 = new Data_Eq.Eq(function (x) {+    return function (y) {+        return true;+    };+});+var ordProxy3 = new Data_Ord.Ord(function () {+    return eqProxy3;+}, function (x) {+    return function (y) {+        return Data_Ordering.EQ.value;+    };+});+var eqProxy2 = new Data_Eq.Eq(function (x) {+    return function (y) {+        return true;+    };+});+var ordProxy2 = new Data_Ord.Ord(function () {+    return eqProxy2;+}, function (x) {+    return function (y) {+        return Data_Ordering.EQ.value;+    };+});+var eqProxy = new Data_Eq.Eq(function (x) {+    return function (y) {+        return true;+    };+});+var ordProxy = new Data_Ord.Ord(function () {+    return eqProxy;+}, function (x) {+    return function (y) {+        return Data_Ordering.EQ.value;+    };+});+var discardProxy3 = new Control_Bind.Discard(function (dictBind) {+    return Control_Bind.bind(dictBind);+});+var discardProxy2 = new Control_Bind.Discard(function (dictBind) {+    return Control_Bind.bind(dictBind);+});+var discardProxy = new Control_Bind.Discard(function (dictBind) {+    return Control_Bind.bind(dictBind);+});+var commutativeRingProxy3 = new Data_CommutativeRing.CommutativeRing(function () {+    return ringProxy3;+});+var commutativeRingProxy2 = new Data_CommutativeRing.CommutativeRing(function () {+    return ringProxy2;+});+var commutativeRingProxy = new Data_CommutativeRing.CommutativeRing(function () {+    return ringProxy;+});+var boundedProxy3 = new Data_Bounded.Bounded(function () {+    return ordProxy3;+}, Proxy3.value, Proxy3.value);+var boundedProxy2 = new Data_Bounded.Bounded(function () {+    return ordProxy2;+}, Proxy2.value, Proxy2.value);+var boundedProxy = new Data_Bounded.Bounded(function () {+    return ordProxy;+}, $$Proxy.value, $$Proxy.value);+var booleanAlgebraProxy3 = new Data_BooleanAlgebra.BooleanAlgebra(function () {+    return heytingAlgebraProxy3;+});+var booleanAlgebraProxy2 = new Data_BooleanAlgebra.BooleanAlgebra(function () {+    return heytingAlgebraProxy2;+});+var booleanAlgebraProxy = new Data_BooleanAlgebra.BooleanAlgebra(function () {+    return heytingAlgebraProxy;+});+var applyProxy = new Control_Apply.Apply(function () {+    return functorProxy;+}, function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+});+var bindProxy = new Control_Bind.Bind(function () {+    return applyProxy;+}, function (v) {+    return function (v1) {+        return $$Proxy.value;+    };+});+var applicativeProxy = new Control_Applicative.Applicative(function () {+    return applyProxy;+}, function (v) {+    return $$Proxy.value;+});+var monadProxy = new Control_Monad.Monad(function () {+    return applicativeProxy;+}, function () {+    return bindProxy;+});+module.exports = {+    "Proxy": $$Proxy, +    Proxy2: Proxy2, +    Proxy3: Proxy3, +    eqProxy: eqProxy, +    functorProxy: functorProxy, +    ordProxy: ordProxy, +    applicativeProxy: applicativeProxy, +    applyProxy: applyProxy, +    bindProxy: bindProxy, +    booleanAlgebraProxy: booleanAlgebraProxy, +    boundedProxy: boundedProxy, +    commutativeRingProxy: commutativeRingProxy, +    discardProxy: discardProxy, +    heytingAlgebraProxy: heytingAlgebraProxy, +    monadProxy: monadProxy, +    ringProxy: ringProxy, +    semigroupProxy: semigroupProxy, +    semiringProxy: semiringProxy, +    showProxy: showProxy, +    eqProxy2: eqProxy2, +    ordProxy2: ordProxy2, +    booleanAlgebraProxy2: booleanAlgebraProxy2, +    boundedProxy2: boundedProxy2, +    commutativeRingProxy2: commutativeRingProxy2, +    discardProxy2: discardProxy2, +    heytingAlgebraProxy2: heytingAlgebraProxy2, +    ringProxy2: ringProxy2, +    semigroupProxy2: semigroupProxy2, +    semiringProxy2: semiringProxy2, +    showProxy2: showProxy2, +    eqProxy3: eqProxy3, +    ordProxy3: ordProxy3, +    booleanAlgebraProxy3: booleanAlgebraProxy3, +    boundedProxy3: boundedProxy3, +    commutativeRingProxy3: commutativeRingProxy3, +    discardProxy3: discardProxy3, +    heytingAlgebraProxy3: heytingAlgebraProxy3, +    ringProxy3: ringProxy3, +    semigroupProxy3: semigroupProxy3, +    semiringProxy3: semiringProxy3, +    showProxy3: showProxy3+};++},{"../Control.Applicative":40,"../Control.Apply":42,"../Control.Bind":46,"../Control.Monad":87,"../Data.BooleanAlgebra":131,"../Data.Bounded":133,"../Data.CommutativeRing":134,"../Data.Eq":140,"../Data.Functor":157,"../Data.HeytingAlgebra":162,"../Data.Ord":222,"../Data.Ordering":223,"../Data.Ring":233,"../Data.Semigroup":237,"../Data.Semiring":239,"../Data.Show":241,"../Prelude":278}],281:[function(require,module,exports){+"use strict";++// module Unsafe.Coerce++exports.unsafeCoerce = function (x) {+  return x;+};++},{}],282:[function(require,module,exports){+// Generated by purs version 0.11.4+"use strict";+var $foreign = require("./foreign");+module.exports = {+    unsafeCoerce: $foreign.unsafeCoerce+};++},{"./foreign":281}],283:[function(require,module,exports){+require('Main').main();++},{"Main":264}],284:[function(require,module,exports){+// shim for using process in browser+var process = module.exports = {};++// cached from whatever global is present so that test runners that stub it+// don't break things.  But we need to wrap it in a try catch in case it is+// wrapped in strict mode code which doesn't define any globals.  It's inside a+// function because try/catches deoptimize in certain engines.++var cachedSetTimeout;+var cachedClearTimeout;++function defaultSetTimout() {+    throw new Error('setTimeout has not been defined');+}+function defaultClearTimeout () {+    throw new Error('clearTimeout has not been defined');+}+(function () {+    try {+        if (typeof setTimeout === 'function') {+            cachedSetTimeout = setTimeout;+        } else {+            cachedSetTimeout = defaultSetTimout;+        }+    } catch (e) {+        cachedSetTimeout = defaultSetTimout;+    }+    try {+        if (typeof clearTimeout === 'function') {+            cachedClearTimeout = clearTimeout;+        } else {+            cachedClearTimeout = defaultClearTimeout;+        }+    } catch (e) {+        cachedClearTimeout = defaultClearTimeout;+    }+} ())+function runTimeout(fun) {+    if (cachedSetTimeout === setTimeout) {+        //normal enviroments in sane situations+        return setTimeout(fun, 0);+    }+    // if setTimeout wasn't available but was latter defined+    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {+        cachedSetTimeout = setTimeout;+        return setTimeout(fun, 0);+    }+    try {+        // when when somebody has screwed with setTimeout but no I.E. maddness+        return cachedSetTimeout(fun, 0);+    } catch(e){+        try {+            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally+            return cachedSetTimeout.call(null, fun, 0);+        } catch(e){+            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error+            return cachedSetTimeout.call(this, fun, 0);+        }+    }+++}+function runClearTimeout(marker) {+    if (cachedClearTimeout === clearTimeout) {+        //normal enviroments in sane situations+        return clearTimeout(marker);+    }+    // if clearTimeout wasn't available but was latter defined+    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {+        cachedClearTimeout = clearTimeout;+        return clearTimeout(marker);+    }+    try {+        // when when somebody has screwed with setTimeout but no I.E. maddness+        return cachedClearTimeout(marker);+    } catch (e){+        try {+            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally+            return cachedClearTimeout.call(null, marker);+        } catch (e){+            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.+            // Some versions of I.E. have different rules for clearTimeout vs setTimeout+            return cachedClearTimeout.call(this, marker);+        }+    }++++}+var queue = [];+var draining = false;+var currentQueue;+var queueIndex = -1;++function cleanUpNextTick() {+    if (!draining || !currentQueue) {+        return;+    }+    draining = false;+    if (currentQueue.length) {+        queue = currentQueue.concat(queue);+    } else {+        queueIndex = -1;+    }+    if (queue.length) {+        drainQueue();+    }+}++function drainQueue() {+    if (draining) {+        return;+    }+    var timeout = runTimeout(cleanUpNextTick);+    draining = true;++    var len = queue.length;+    while(len) {+        currentQueue = queue;+        queue = [];+        while (++queueIndex < len) {+            if (currentQueue) {+                currentQueue[queueIndex].run();+            }+        }+        queueIndex = -1;+        len = queue.length;+    }+    currentQueue = null;+    draining = false;+    runClearTimeout(timeout);+}++process.nextTick = function (fun) {+    var args = new Array(arguments.length - 1);+    if (arguments.length > 1) {+        for (var i = 1; i < arguments.length; i++) {+            args[i - 1] = arguments[i];+        }+    }+    queue.push(new Item(fun, args));+    if (queue.length === 1 && !draining) {+        runTimeout(drainQueue);+    }+};++// v8 likes predictible objects+function Item(fun, array) {+    this.fun = fun;+    this.array = array;+}+Item.prototype.run = function () {+    this.fun.apply(null, this.array);+};+process.title = 'browser';+process.browser = true;+process.env = {};+process.argv = [];+process.version = ''; // empty string to avoid regexp issues+process.versions = {};++function noop() {}++process.on = noop;+process.addListener = noop;+process.once = noop;+process.off = noop;+process.removeListener = noop;+process.removeAllListeners = noop;+process.emit = noop;+process.prependListener = noop;+process.prependOnceListener = noop;++process.listeners = function (name) { return [] }++process.binding = function (name) {+    throw new Error('process.binding is not supported');+};++process.cwd = function () { return '/' };+process.chdir = function (dir) {+    throw new Error('process.chdir is not supported');+};+process.umask = function() { return 0; };++},{}]},{},[283]);
yesod-auth-hmac-keccak.cabal view
@@ -2,7 +2,7 @@ -- further documentation, see http://haskell.org/cabal/users-guide/  name:                yesod-auth-hmac-keccak-version:             0.0.0.2+version:             0.0.0.3 synopsis:            An account authentication plugin for yesod with encrypted                      token transfer. description:         This authentication plugin for Yesod uses a challenge-response@@ -36,12 +36,12 @@                        Yesod.Auth.Message                      , Yesod.Auth.Import                      , Yesod.Auth.Types-  other-modules:       Paths_yesod_auth_hmac_keccak                      , Yesod.Auth.JsPath+  other-modules:       Paths_yesod_auth_hmac_keccak   -- other-extensions:       default-extensions:  OverloadedStrings   ghc-options:         -Wall-  build-depends:       base >=4.9 && <4.10+  build-depends:       base >=4.9 && <4.11                      , text                      , bytestring                      , aeson