@explorable-viz/fluid 0.7.88 → 0.7.89

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -533,12 +533,12 @@ var foldableArray = {
533
533
  }
534
534
  };
535
535
  var foldrDefault = (dictFoldable) => {
536
- const foldMap2 = dictFoldable.foldMap(monoidEndo);
537
- return (c) => (u) => (xs) => foldMap2((x) => c(x))(xs)(u);
536
+ const foldMap22 = dictFoldable.foldMap(monoidEndo);
537
+ return (c) => (u) => (xs) => foldMap22((x) => c(x))(xs)(u);
538
538
  };
539
539
  var lookup = (dictFoldable) => {
540
- const foldMap2 = dictFoldable.foldMap(monoidFirst);
541
- return (dictEq) => (a) => foldMap2((v) => {
540
+ const foldMap22 = dictFoldable.foldMap(monoidFirst);
541
+ return (dictEq) => (a) => foldMap22((v) => {
542
542
  if (dictEq.eq(a)(v._1)) {
543
543
  return $Maybe("Just", v._2);
544
544
  }
@@ -807,6 +807,19 @@ var _updateAt = function(just) {
807
807
  var reverse = function(l) {
808
808
  return l.slice().reverse();
809
809
  };
810
+ var concat = function(xss) {
811
+ if (xss.length <= 1e4) {
812
+ return Array.prototype.concat.apply([], xss);
813
+ }
814
+ var result = [];
815
+ for (var i = 0, l = xss.length; i < l; i++) {
816
+ var xs = xss[i];
817
+ for (var j = 0, m = xs.length; j < m; j++) {
818
+ result.push(xs[j]);
819
+ }
820
+ }
821
+ return result;
822
+ };
810
823
  var filter = function(f) {
811
824
  return function(xs) {
812
825
  return xs.filter(f);
@@ -4181,10 +4194,10 @@ var eqMap = (dictEq) => (dictEq1) => {
4181
4194
  };
4182
4195
  var fromFoldable = (dictOrd) => (dictFoldable) => dictFoldable.foldl((m) => (v) => insert(dictOrd)(v._1)(v._2)(m))(Leaf2);
4183
4196
  var filterWithKey = (dictOrd) => {
4184
- const fromFoldable114 = fromFoldable(dictOrd)(foldableList2);
4197
+ const fromFoldable113 = fromFoldable(dictOrd)(foldableList2);
4185
4198
  return (predicate) => {
4186
4199
  const $0 = filter2((v) => predicate(v._1)(v._2));
4187
- return (x) => fromFoldable114($0(toUnfoldable3(unfoldableList2)(x)));
4200
+ return (x) => fromFoldable113($0(toUnfoldable3(unfoldableList2)(x)));
4188
4201
  };
4189
4202
  };
4190
4203
  var $$delete = (dictOrd) => (k) => (m) => {
@@ -9621,10 +9634,10 @@ var insert2 = (k) => (v) => mutate(($0) => () => {
9621
9634
  var functorObject = { map: (f) => (m) => _fmapObject(m, f) };
9622
9635
  var functorWithIndexObject = { mapWithIndex: mapWithKey, Functor0: () => functorObject };
9623
9636
  var fromFoldable2 = (dictFoldable) => {
9624
- const fromFoldable114 = fromFoldableImpl(dictFoldable.foldr);
9637
+ const fromFoldable113 = fromFoldableImpl(dictFoldable.foldr);
9625
9638
  return (l) => {
9626
9639
  const s = {};
9627
- for (const v of fromFoldable114(l)) {
9640
+ for (const v of fromFoldable113(l)) {
9628
9641
  s[v._1] = v._2;
9629
9642
  }
9630
9643
  return s;
@@ -10291,6 +10304,101 @@ var traversableDict = {
10291
10304
  Foldable1: () => foldableDict
10292
10305
  };
10293
10306
 
10307
+ // output-es/Graph/index.js
10308
+ var fromFoldable4 = /* @__PURE__ */ (() => fromFoldableImpl(foldableSet.foldr))();
10309
+ var fromFoldable13 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
10310
+ var fromFoldable22 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
10311
+ var Vertex = (x) => x;
10312
+ var eqVertex = { eq: (x) => (y) => x === y };
10313
+ var ordVertex = { compare: (x) => (y) => ordString.compare(x)(y), Eq0: () => eqVertex };
10314
+ var eqDVertex = { eq: (v) => (v1) => v._1 === v1._1 };
10315
+ var ordDVertex = { compare: (v) => (v1) => ordString.compare(v._1)(v1._1), Eq0: () => eqDVertex };
10316
+ var unions1 = /* @__PURE__ */ foldlArray(/* @__PURE__ */ union(ordDVertex))(Leaf2);
10317
+ var verticesDict = (dictVertices) => {
10318
+ const vertices1 = dictVertices.vertices;
10319
+ return { vertices: (d) => unions1(arrayMap(vertices1)(values(d))) };
10320
+ };
10321
+ var typeNameVertexData = { typeName: (v) => v((dictTypeName) => dictTypeName.typeName) };
10322
+ var showVertices = (\u03B1s) => "{" + joinWith(", ")(fromFoldable4(map(ordString)(unsafeCoerce)(\u03B1s))) + "}";
10323
+ var showEdgeList = (es) => joinWith("\n")([
10324
+ "digraph G {",
10325
+ ...arrayMap((v) => " " + v)([
10326
+ "rankdir = RL",
10327
+ ...arrayMap((v) => v._1._1 + " -> {" + joinWith(", ")(fromFoldable4(map(ordString)(unsafeCoerce)(v._2))) + "}")(fromFoldable13(reverse2(es)))
10328
+ ]),
10329
+ "}"
10330
+ ]);
10331
+ var toEdgeList = (dictGraph) => (g) => {
10332
+ const $0 = (v) => {
10333
+ if (v._1.tag === "Nil") {
10334
+ return $Step("Done", v._2);
10335
+ }
10336
+ if (v._1.tag === "Cons") {
10337
+ return $Step(
10338
+ "Loop",
10339
+ $Tuple(
10340
+ v._1._2,
10341
+ $List("Cons", $Tuple($Tuple(v._1._1, dictGraph.vertexData(g)(v._1._1)), dictGraph.outN(g)(v._1._1)), v._2)
10342
+ )
10343
+ );
10344
+ }
10345
+ fail();
10346
+ };
10347
+ const go = (go$a0$copy) => {
10348
+ let go$a0 = go$a0$copy, go$c = true, go$r;
10349
+ while (go$c) {
10350
+ const v = go$a0;
10351
+ if (v.tag === "Loop") {
10352
+ go$a0 = $0(v._1);
10353
+ continue;
10354
+ }
10355
+ if (v.tag === "Done") {
10356
+ go$c = false;
10357
+ go$r = v._1;
10358
+ continue;
10359
+ }
10360
+ fail();
10361
+ }
10362
+ return go$r;
10363
+ };
10364
+ return go($0($Tuple(dictGraph.topologicalSort(g), Nil)));
10365
+ };
10366
+ var showGraph = (dictGraph) => (x) => showEdgeList(toEdgeList(dictGraph)(x));
10367
+ var inEdges$p = (dictGraph) => (g) => (\u03B1) => fromFoldable22(map(ordTuple(ordVertex)(ordVertex))((v) => $Tuple(v, \u03B1))(dictGraph.inN(g)(\u03B1)));
10368
+ var inEdges = (dictGraph) => (g) => (\u03B1s) => {
10369
+ const $0 = (v) => {
10370
+ if (v._1.tag === "Nil") {
10371
+ return $Step("Done", v._2);
10372
+ }
10373
+ if (v._1.tag === "Cons") {
10374
+ return $Step(
10375
+ "Loop",
10376
+ $Tuple(v._1._2, foldableList.foldr(Cons)(v._2)(inEdges$p(dictGraph)(g)(v._1._1)))
10377
+ );
10378
+ }
10379
+ fail();
10380
+ };
10381
+ const go = (go$a0$copy) => {
10382
+ let go$a0 = go$a0$copy, go$c = true, go$r;
10383
+ while (go$c) {
10384
+ const v = go$a0;
10385
+ if (v.tag === "Loop") {
10386
+ go$a0 = $0(v._1);
10387
+ continue;
10388
+ }
10389
+ if (v.tag === "Done") {
10390
+ go$c = false;
10391
+ go$r = v._1;
10392
+ continue;
10393
+ }
10394
+ fail();
10395
+ }
10396
+ return go$r;
10397
+ };
10398
+ return go($0($Tuple(fromFoldable22(\u03B1s), Nil)));
10399
+ };
10400
+ var addresses = /* @__PURE__ */ map(ordVertex)((x) => x._1);
10401
+
10294
10402
  // output-es/Util.Pair/index.js
10295
10403
  var $Pair = (_1, _2) => ({ tag: "Pair", _1, _2 });
10296
10404
  var Pair = (value0) => (value1) => $Pair(value0, value1);
@@ -10399,12 +10507,34 @@ var $Elim = (tag, _1, _2) => ({ tag, _1, _2 });
10399
10507
  var $Expr = (tag, _1, _2, _3, _4) => ({ tag, _1, _2, _3, _4 });
10400
10508
  var $RecDefs = (_1, _2) => ({ tag: "RecDefs", _1, _2 });
10401
10509
  var $VarDef = (_1, _2) => ({ tag: "VarDef", _1, _2 });
10510
+ var union4 = /* @__PURE__ */ (() => setSet(ordDVertex).union)();
10511
+ var unions12 = /* @__PURE__ */ (() => {
10512
+ const go = (go$a0$copy) => (go$a1$copy) => {
10513
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
10514
+ while (go$c) {
10515
+ const b = go$a0, v = go$a1;
10516
+ if (v.tag === "Nil") {
10517
+ go$c = false;
10518
+ go$r = b;
10519
+ continue;
10520
+ }
10521
+ if (v.tag === "Cons") {
10522
+ go$a0 = unionWith(ordDVertex)($$const)(b)(v._1);
10523
+ go$a1 = v._2;
10524
+ continue;
10525
+ }
10526
+ fail();
10527
+ }
10528
+ return go$r;
10529
+ };
10530
+ return go(Leaf2);
10531
+ })();
10402
10532
  var eqSet = { eq: (v) => (v1) => eqMap(eqString)(eqUnit).eq(v)(v1) };
10403
10533
  var identity17 = (x) => x;
10404
10534
  var setSet2 = /* @__PURE__ */ setSet(ordString);
10405
- var fromFoldable4 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
10535
+ var fromFoldable5 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
10406
10536
  var asMaplet2 = /* @__PURE__ */ asMaplet(mapDictString);
10407
- var unions1 = /* @__PURE__ */ (() => {
10537
+ var unions3 = /* @__PURE__ */ (() => {
10408
10538
  const go = (go$a0$copy) => (go$a1$copy) => {
10409
10539
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
10410
10540
  while (go$c) {
@@ -10440,6 +10570,97 @@ var ElimDict = (value0) => (value1) => $Elim("ElimDict", value0, value1);
10440
10570
  var VarDef = (value0) => (value1) => $VarDef(value0, value1);
10441
10571
  var RecDefs = (value0) => (value1) => $RecDefs(value0, value1);
10442
10572
  var Module = (x) => x;
10573
+ var typeNameRecDefs = { typeName: (v) => "RecDefs" };
10574
+ var pack = (x) => (k) => k(typeNameRecDefs)(x);
10575
+ var typeNameExpr = { typeName: (v) => "Expr" };
10576
+ var pack1 = (x) => (k) => k(typeNameExpr)(x);
10577
+ var verticesVarDefVertex = { vertices: (v) => union4(verticesElimVertex.vertices(v._1))(verticesExprVertex.vertices(v._2)) };
10578
+ var verticesRecDefsVertex = {
10579
+ vertices: (v) => union4($$$Map("Two", Leaf2, $Tuple(v._1, pack(v)), void 0, Leaf2))(verticesDict(verticesElimVertex).vertices(v._2))
10580
+ };
10581
+ var verticesExprVertex = {
10582
+ vertices: (v) => {
10583
+ if (v.tag === "Var") {
10584
+ return Leaf2;
10585
+ }
10586
+ if (v.tag === "Op") {
10587
+ return Leaf2;
10588
+ }
10589
+ if (v.tag === "Int") {
10590
+ return $$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2);
10591
+ }
10592
+ if (v.tag === "Float") {
10593
+ return $$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2);
10594
+ }
10595
+ if (v.tag === "Str") {
10596
+ return $$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2);
10597
+ }
10598
+ if (v.tag === "Dictionary") {
10599
+ return union4($$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2))(unions12(listMap((v1) => union4(verticesExprVertex.vertices(v1._1))(verticesExprVertex.vertices(v1._2)))(v._2)));
10600
+ }
10601
+ if (v.tag === "Constr") {
10602
+ return union4($$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2))(unions12(listMap(verticesExprVertex.vertices)(v._3)));
10603
+ }
10604
+ if (v.tag === "Matrix") {
10605
+ return union4($$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2))(union4(verticesExprVertex.vertices(v._2))(verticesExprVertex.vertices(v._4)));
10606
+ }
10607
+ if (v.tag === "Lambda") {
10608
+ return union4($$$Map("Two", Leaf2, $Tuple(v._1, pack1(v)), void 0, Leaf2))(verticesElimVertex.vertices(v._2));
10609
+ }
10610
+ if (v.tag === "Project") {
10611
+ return verticesExprVertex.vertices(v._1);
10612
+ }
10613
+ if (v.tag === "DProject") {
10614
+ return union4(verticesExprVertex.vertices(v._1))(verticesExprVertex.vertices(v._2));
10615
+ }
10616
+ if (v.tag === "App") {
10617
+ return union4(verticesExprVertex.vertices(v._1))(verticesExprVertex.vertices(v._2));
10618
+ }
10619
+ if (v.tag === "Let") {
10620
+ return union4(verticesVarDefVertex.vertices(v._1))(verticesExprVertex.vertices(v._2));
10621
+ }
10622
+ if (v.tag === "LetRec") {
10623
+ return union4(verticesRecDefsVertex.vertices(v._1))(verticesExprVertex.vertices(v._2));
10624
+ }
10625
+ fail();
10626
+ }
10627
+ };
10628
+ var verticesElimVertex = {
10629
+ vertices: (v) => {
10630
+ if (v.tag === "ElimVar") {
10631
+ return verticesContVertex.vertices(v._2);
10632
+ }
10633
+ if (v.tag === "ElimConstr") {
10634
+ return verticesDict(verticesContVertex).vertices(v._1);
10635
+ }
10636
+ if (v.tag === "ElimDict") {
10637
+ return verticesContVertex.vertices(v._2);
10638
+ }
10639
+ fail();
10640
+ }
10641
+ };
10642
+ var verticesContVertex = {
10643
+ vertices: (v) => {
10644
+ if (v.tag === "ContExpr") {
10645
+ return verticesExprVertex.vertices(v._1);
10646
+ }
10647
+ if (v.tag === "ContElim") {
10648
+ return verticesElimVertex.vertices(v._1);
10649
+ }
10650
+ fail();
10651
+ }
10652
+ };
10653
+ var verticesModuleVertex = {
10654
+ vertices: (v) => unions12(listMap((v1) => {
10655
+ if (v1.tag === "Left") {
10656
+ return verticesVarDefVertex.vertices(v1._1);
10657
+ }
10658
+ if (v1.tag === "Right") {
10659
+ return verticesRecDefsVertex.vertices(v1._1);
10660
+ }
10661
+ fail();
10662
+ })(v))
10663
+ };
10443
10664
  var joinSemilatticeVarDef = (dictJoinSemilattice) => ({ join: (v) => (v1) => $VarDef(joinSemilatticeElim(dictJoinSemilattice).join(v._1)(v1._1), joinSemilatticeExpr(dictJoinSemilattice).join(v._2)(v1._2)) });
10444
10665
  var joinSemilatticeRecDefs = (dictJoinSemilattice) => ({ join: (v) => (v1) => $RecDefs(dictJoinSemilattice.join(v._1)(v1._1), unionWith2(joinSemilatticeElim(dictJoinSemilattice).join)(v._2)(v1._2)) });
10445
10666
  var joinSemilatticeExpr = (dictJoinSemilattice) => ({
@@ -11367,7 +11588,7 @@ var applyCont = {
11367
11588
  var fVDict = (dictFV) => {
11368
11589
  const fv1 = dictFV.fv;
11369
11590
  return {
11370
- fv: (\u03C1) => setSet2.difference(fold((z) => (v) => union(ordString)(z))(Leaf2)(_fmapObject(\u03C1, fv1)))(fromFoldable4(mapObjectString.keys(\u03C1)))
11591
+ fv: (\u03C1) => setSet2.difference(fold((z) => (v) => union(ordString)(z))(Leaf2)(_fmapObject(\u03C1, fv1)))(fromFoldable5(mapObjectString.keys(\u03C1)))
11371
11592
  };
11372
11593
  };
11373
11594
  var foldlModuleDef = (v) => (v1) => (v2) => {
@@ -11501,10 +11722,10 @@ var fVExpr = {
11501
11722
  return Leaf2;
11502
11723
  }
11503
11724
  if (v.tag === "Dictionary") {
11504
- return unions1(listMap((v1) => setSet2.union(fVExpr.fv(v1._1))(fVExpr.fv(v1._2)))(v._2));
11725
+ return unions3(listMap((v1) => setSet2.union(fVExpr.fv(v1._1))(fVExpr.fv(v1._2)))(v._2));
11505
11726
  }
11506
11727
  if (v.tag === "Constr") {
11507
- return unions1(listMap(fVExpr.fv)(v._3));
11728
+ return unions3(listMap(fVExpr.fv)(v._3));
11508
11729
  }
11509
11730
  if (v.tag === "Matrix") {
11510
11731
  return setSet2.union(fVExpr.fv(v._2))(fVExpr.fv(v._4));
@@ -11562,86 +11783,6 @@ var asElim = (v) => {
11562
11783
  return throwException(error("Eliminator expected"))();
11563
11784
  };
11564
11785
 
11565
- // output-es/Graph/index.js
11566
- var fromFoldable5 = /* @__PURE__ */ (() => fromFoldableImpl(foldableSet.foldr))();
11567
- var fromFoldable13 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
11568
- var fromFoldable22 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
11569
- var Vertex = (x) => x;
11570
- var eqVertex = { eq: (x) => (y) => x === y };
11571
- var ordVertex = { compare: (x) => (y) => ordString.compare(x)(y), Eq0: () => eqVertex };
11572
- var showVertices = (\u03B1s) => "{" + joinWith(", ")(fromFoldable5(map(ordString)(unsafeCoerce)(\u03B1s))) + "}";
11573
- var showEdgeList = (es) => joinWith("\n")([
11574
- "digraph G {",
11575
- ...arrayMap((v) => " " + v)([
11576
- "rankdir = RL",
11577
- ...arrayMap((v) => v._1 + " -> {" + joinWith(", ")(fromFoldable5(map(ordString)(unsafeCoerce)(v._2))) + "}")(fromFoldable13(reverse2(es)))
11578
- ]),
11579
- "}"
11580
- ]);
11581
- var toEdgeList = (dictGraph) => (g) => {
11582
- const $0 = (v) => {
11583
- if (v._1.tag === "Nil") {
11584
- return $Step("Done", v._2);
11585
- }
11586
- if (v._1.tag === "Cons") {
11587
- return $Step("Loop", $Tuple(v._1._2, $List("Cons", $Tuple(v._1._1, dictGraph.outN(g)(v._1._1)), v._2)));
11588
- }
11589
- fail();
11590
- };
11591
- const go = (go$a0$copy) => {
11592
- let go$a0 = go$a0$copy, go$c = true, go$r;
11593
- while (go$c) {
11594
- const v = go$a0;
11595
- if (v.tag === "Loop") {
11596
- go$a0 = $0(v._1);
11597
- continue;
11598
- }
11599
- if (v.tag === "Done") {
11600
- go$c = false;
11601
- go$r = v._1;
11602
- continue;
11603
- }
11604
- fail();
11605
- }
11606
- return go$r;
11607
- };
11608
- return go($0($Tuple(dictGraph.topologicalSort(g), Nil)));
11609
- };
11610
- var showGraph = (dictGraph) => (x) => showEdgeList(toEdgeList(dictGraph)(x));
11611
- var inEdges$p = (dictGraph) => (g) => (\u03B1) => fromFoldable22(map(ordTuple(ordVertex)(ordVertex))((v) => $Tuple(v, \u03B1))(dictGraph.inN(g)(\u03B1)));
11612
- var inEdges = (dictGraph) => (g) => (\u03B1s) => {
11613
- const $0 = (v) => {
11614
- if (v._1.tag === "Nil") {
11615
- return $Step("Done", v._2);
11616
- }
11617
- if (v._1.tag === "Cons") {
11618
- return $Step(
11619
- "Loop",
11620
- $Tuple(v._1._2, foldableList.foldr(Cons)(v._2)(inEdges$p(dictGraph)(g)(v._1._1)))
11621
- );
11622
- }
11623
- fail();
11624
- };
11625
- const go = (go$a0$copy) => {
11626
- let go$a0 = go$a0$copy, go$c = true, go$r;
11627
- while (go$c) {
11628
- const v = go$a0;
11629
- if (v.tag === "Loop") {
11630
- go$a0 = $0(v._1);
11631
- continue;
11632
- }
11633
- if (v.tag === "Done") {
11634
- go$c = false;
11635
- go$r = v._1;
11636
- continue;
11637
- }
11638
- fail();
11639
- }
11640
- return go$r;
11641
- };
11642
- return go($0($Tuple(fromFoldable22(\u03B1s), Nil)));
11643
- };
11644
-
11645
11786
  // output-es/Data.CatQueue/index.js
11646
11787
  var $CatQueue = (_1, _2) => ({ tag: "CatQueue", _1, _2 });
11647
11788
  var uncons3 = (uncons$a0$copy) => {
@@ -11871,15 +12012,20 @@ var peek = /* @__PURE__ */ peekImpl2(Just)(Nothing);
11871
12012
  var $GraphImpl = (_1) => ({ tag: "GraphImpl", _1 });
11872
12013
  var eqSet2 = { eq: (v) => (v1) => eqMap(eqVertex)(eqUnit).eq(v)(v1) };
11873
12014
  var eq = /* @__PURE__ */ (() => eqObject(eqSet2).eq)();
11874
- var fromFoldable7 = /* @__PURE__ */ foldlArray((m) => (a) => insert(ordVertex)(a)()(m))(Leaf2);
12015
+ var fromFoldable15 = /* @__PURE__ */ foldlArray((m) => (a) => insert(ordVertex)(a)()(m))(Leaf2);
11875
12016
  var toUnfoldable6 = /* @__PURE__ */ toUnfoldable4(unfoldableList);
11876
- var fromFoldable15 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
11877
- var fromFoldable23 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordVertex)(a)()(m))(Leaf2))();
12017
+ var fromFoldable23 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
12018
+ var fromFoldable32 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordVertex)(a)()(m))(Leaf2))();
11878
12019
  var toUnfoldable12 = /* @__PURE__ */ toAscUnfoldable(unfoldableArray);
11879
- var fromFoldable32 = /* @__PURE__ */ fromFoldable(ordVertex)(foldableArray);
11880
- var verticesGraphImpl = { vertices: (v) => v._1.vertices };
11881
- var eqGraphImpl = { eq: (v) => (v1) => eq(v._1.out)(v1._1.out) };
11882
- var sinks$p = (m) => fromFoldable7(arrayMap((x) => x._1)(filter((x) => x._2.tag === "Leaf")(toArrayWithKey(Tuple)(m))));
12020
+ var fromFoldable42 = /* @__PURE__ */ fromFoldable(ordVertex)(foldableArray);
12021
+ var verticesGraphImpl = {
12022
+ vertices: (v) => fold((z) => (v$1) => (a) => insert(ordDVertex)(a)()(z))(Leaf2)(_mapWithKey(
12023
+ v._1.out,
12024
+ (k) => (v1) => $Tuple(k, v1._2)
12025
+ ))
12026
+ };
12027
+ var eqGraphImpl = { eq: (v) => (v1) => eq(_fmapObject(v._1.out, fst))(_fmapObject(v1._1.out, fst)) };
12028
+ var sinks$p = (m) => fromFoldable15(arrayMap((x) => x._1)(filter((x) => x._2._1.tag === "Leaf")(toArrayWithKey(Tuple)(m))));
11883
12029
  var init4 = (\u03B1s) => () => {
11884
12030
  const obj = {};
11885
12031
  return monadRecST.tailRecM((v) => {
@@ -11887,11 +12033,11 @@ var init4 = (\u03B1s) => () => {
11887
12033
  return () => $Step("Done", v._2);
11888
12034
  }
11889
12035
  if (v._1.tag === "Cons") {
11890
- const $0 = v._1._1;
12036
+ const $0 = v._1._1._1;
11891
12037
  const $1 = v._1._2;
11892
12038
  const $2 = v._2;
11893
12039
  return () => {
11894
- $2[$0] = Leaf2;
12040
+ $2[$0] = $Tuple(Leaf2, v._1._1._2);
11895
12041
  return $Step("Loop", $Tuple($1, $2));
11896
12042
  };
11897
12043
  }
@@ -11922,36 +12068,8 @@ var assertPresent = (v) => (v1) => {
11922
12068
  }
11923
12069
  fail();
11924
12070
  };
11925
- var addIfMissing = (acc) => (v) => {
11926
- const $0 = peek(v)(acc);
11927
- return () => {
11928
- const v1 = $0();
11929
- if (v1.tag === "Nothing") {
11930
- acc[v] = Leaf2;
11931
- return acc;
11932
- }
11933
- if (v1.tag === "Just") {
11934
- return acc;
11935
- }
11936
- fail();
11937
- };
11938
- };
11939
- var addIfMissing$p = (\u03B1s) => (acc) => monadRecST.tailRecM((v) => {
11940
- if (v._1.tag === "Nil") {
11941
- return () => $Step("Done", v._2);
11942
- }
11943
- if (v._1.tag === "Cons") {
11944
- const $0 = v._1._2;
11945
- const $1 = addIfMissing(v._2)(v._1._1);
11946
- return () => {
11947
- const acc$p$p = $1();
11948
- return $Step("Loop", $Tuple($0, acc$p$p));
11949
- };
11950
- }
11951
- fail();
11952
- })($Tuple(\u03B1s, acc));
11953
- var outMap = (\u03B1s) => (es) => {
11954
- const $0 = init4(\u03B1s);
12071
+ var outMap = (\u03B1s) => (es) => {
12072
+ const $0 = init4(\u03B1s);
11955
12073
  return () => {
11956
12074
  const out = $0();
11957
12075
  return monadRecST.tailRecM((v) => {
@@ -11961,33 +12079,48 @@ var outMap = (\u03B1s) => (es) => {
11961
12079
  if (v._1.tag === "Cons") {
11962
12080
  const $1 = v._2;
11963
12081
  const $2 = v._1._2;
11964
- const $3 = v._1._1._1;
11965
- const $4 = v._1._1._2;
11966
- const $5 = peek($3)($1);
12082
+ const $3 = v._1._1._1._2;
12083
+ const $4 = v._1._1._1._1;
12084
+ const $5 = v._1._1._2;
12085
+ const $6 = peek($4)($1);
11967
12086
  return () => {
11968
- const $6 = $5();
12087
+ const $7 = $6();
11969
12088
  if ((() => {
11970
- if ($6.tag === "Nothing") {
12089
+ if ($7.tag === "Nothing") {
11971
12090
  return true;
11972
12091
  }
11973
- if ($6.tag === "Just") {
11974
- return eqMap(eqVertex)(eqUnit).eq($6._1)(Leaf2);
12092
+ if ($7.tag === "Just") {
12093
+ return eqMap(eqVertex)(eqUnit).eq($7._1._1)(Leaf2);
11975
12094
  }
11976
12095
  fail();
11977
12096
  })()) {
11978
- const \u03B2s$p = toUnfoldable6($4);
11979
- monadRecST.tailRecM(assertPresent($1))(\u03B2s$p)();
11980
- $1[$3] = $4;
11981
- const acc$p = addIfMissing$p(\u03B2s$p)($1)();
11982
- return $Step("Loop", $Tuple($2, acc$p));
12097
+ monadRecST.tailRecM(assertPresent($1))(toUnfoldable6($5))();
12098
+ $1[$4] = $Tuple($5, $3);
12099
+ return $Step("Loop", $Tuple($2, $1));
11983
12100
  }
11984
- return throwException(error("Duplicate edge list entry for " + showStringImpl($3)))()();
12101
+ return throwException(error("Duplicate edge list entry for " + showStringImpl($4)))()();
11985
12102
  };
11986
12103
  }
11987
12104
  fail();
11988
12105
  })($Tuple(es, out))();
11989
12106
  };
11990
12107
  };
12108
+ var addIfMissing = (acc) => (v) => {
12109
+ const $0 = v._2;
12110
+ const $1 = v._1;
12111
+ const $2 = peek($1)(acc);
12112
+ return () => {
12113
+ const v1 = $2();
12114
+ if (v1.tag === "Nothing") {
12115
+ acc[$1] = $Tuple(Leaf2, $0);
12116
+ return acc;
12117
+ }
12118
+ if (v1.tag === "Just") {
12119
+ return acc;
12120
+ }
12121
+ fail();
12122
+ };
12123
+ };
11991
12124
  var inMap = (\u03B1s) => (es) => {
11992
12125
  const $0 = init4(\u03B1s);
11993
12126
  return () => {
@@ -11998,37 +12131,38 @@ var inMap = (\u03B1s) => (es) => {
11998
12131
  }
11999
12132
  if (v._1.tag === "Cons") {
12000
12133
  const $1 = v._1._2;
12001
- const $2 = v._1._1._1;
12002
- const $3 = monadRecST.tailRecM((v1) => {
12003
- if (v1._1.tag === "Nil") {
12004
- return () => $Step("Done", v1._2);
12134
+ const $2 = v._1._1._1._2;
12135
+ const $3 = v._1._1._1._1;
12136
+ const $4 = monadRecST.tailRecM((v2) => {
12137
+ if (v2._1.tag === "Nil") {
12138
+ return () => $Step("Done", v2._2);
12005
12139
  }
12006
- if (v1._1.tag === "Cons") {
12007
- const $32 = v1._2;
12008
- const $4 = v1._1._1;
12009
- const $5 = v1._1._2;
12010
- const $6 = peek($4)($32);
12140
+ if (v2._1.tag === "Cons") {
12141
+ const $42 = v2._2;
12142
+ const $5 = v2._1._1;
12143
+ const $6 = v2._1._2;
12144
+ const $7 = peek($5)($42);
12011
12145
  return () => {
12012
- const v1$1 = $6();
12146
+ const v1 = $7();
12013
12147
  const acc$p = (() => {
12014
- if (v1$1.tag === "Nothing") {
12015
- $32[$4] = $$$Map("Two", Leaf2, $2, void 0, Leaf2);
12016
- return $32;
12148
+ if (v1.tag === "Nothing") {
12149
+ $42[$5] = $Tuple($$$Map("Two", Leaf2, $3, void 0, Leaf2), $2);
12150
+ return $42;
12017
12151
  }
12018
- if (v1$1.tag === "Just") {
12019
- $32[$4] = insert(ordVertex)($2)()(v1$1._1);
12020
- return $32;
12152
+ if (v1.tag === "Just") {
12153
+ $42[$5] = $Tuple(insert(ordVertex)($3)()(v1._1._1), $2);
12154
+ return $42;
12021
12155
  }
12022
12156
  fail();
12023
12157
  })();
12024
- return $Step("Loop", $Tuple($5, acc$p));
12158
+ return $Step("Loop", $Tuple($6, acc$p));
12025
12159
  };
12026
12160
  }
12027
12161
  fail();
12028
12162
  })($Tuple(toUnfoldable6(v._1._1._2), v._2));
12029
12163
  return () => {
12030
- const a = $3();
12031
- const acc$p = addIfMissing(a)($2)();
12164
+ const $5 = $4();
12165
+ const acc$p = addIfMissing($5)($Tuple($3, $2))();
12032
12166
  return $Step("Loop", $Tuple($1, acc$p));
12033
12167
  };
12034
12168
  }
@@ -12037,7 +12171,8 @@ var inMap = (\u03B1s) => (es) => {
12037
12171
  };
12038
12172
  };
12039
12173
  var graphGraphImpl = {
12040
- outN: (v) => (\u03B1) => definitely("in graph")(_lookup(Nothing, Just, \u03B1, v._1.out)),
12174
+ outN: (v) => (\u03B1) => definitely("in graph")(_lookup(Nothing, Just, \u03B1, v._1.out))._1,
12175
+ vertexData: (v) => (\u03B1) => definitely("in graph")(_lookup(Nothing, Just, \u03B1, v._1.out))._2,
12041
12176
  inN: (g) => graphGraphImpl.outN(graphGraphImpl.op(g)),
12042
12177
  elem: (\u03B1) => (v) => {
12043
12178
  const $0 = _lookup(Nothing, Just, \u03B1, v._1.out);
@@ -12061,7 +12196,7 @@ var graphGraphImpl = {
12061
12196
  vertices: Leaf2
12062
12197
  }),
12063
12198
  fromEdgeList: (\u03B1s) => (es) => {
12064
- const \u03B1s$p = fromFoldable15(\u03B1s);
12199
+ const \u03B1s$p = fromFoldable23(\u03B1s);
12065
12200
  const es$p = reverse2(es);
12066
12201
  const in_ = inMap(\u03B1s$p)(es$p)();
12067
12202
  const out = outMap(\u03B1s$p)(es$p)();
@@ -12070,19 +12205,19 @@ var graphGraphImpl = {
12070
12205
  in_,
12071
12206
  sinks: sinks$p(out),
12072
12207
  sources: sinks$p(in_),
12073
- vertices: fromFoldable23(map(ordVertex)(Vertex)(mapObjectString.keys(out)))
12208
+ vertices: fromFoldable32(map(ordVertex)(Vertex)(mapObjectString.keys(out)))
12074
12209
  });
12075
12210
  },
12076
- topologicalSort: (v) => reverse2(topologicalSort(ordVertex)(fromFoldable32(arrayMap((x) => $Tuple(
12211
+ topologicalSort: (v) => reverse2(topologicalSort(ordVertex)(fromFoldable42(arrayMap((x) => $Tuple(
12077
12212
  x._1,
12078
12213
  $Tuple(void 0, x._2)
12079
- ))(toUnfoldable12(_fmapObject(v._1.out, toUnfoldable6)))))),
12214
+ ))(toUnfoldable12(_fmapObject(_fmapObject(v._1.out, fst), toUnfoldable6)))))),
12080
12215
  Eq0: () => eqGraphImpl,
12081
12216
  Vertices1: () => verticesGraphImpl
12082
12217
  };
12083
12218
 
12084
12219
  // output-es/Graph.WithGraph/index.js
12085
- var fromFoldable8 = /* @__PURE__ */ (() => {
12220
+ var fromFoldable7 = /* @__PURE__ */ (() => {
12086
12221
  const go = (go$a0$copy) => (go$a1$copy) => {
12087
12222
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
12088
12223
  while (go$c) {
@@ -12129,7 +12264,7 @@ var monadAllocAllocT = (dictMonad) => {
12129
12264
  var runAllocT = (dictMonad) => (m) => (n) => dictMonad.Bind1().bind(m(n))((v) => dictMonad.Applicative0().pure($Tuple(
12130
12265
  v._2,
12131
12266
  $Tuple(
12132
- fromFoldable8(listMap((x) => showIntImpl(x))((() => {
12267
+ fromFoldable7(listMap((x) => showIntImpl(x))((() => {
12133
12268
  const $0 = n + 1 | 0;
12134
12269
  if (v._2 < $0) {
12135
12270
  return Nil;
@@ -12174,9 +12309,8 @@ var runWithGraphT_spy = (dictMonad) => {
12174
12309
  const runWithGraphT2 = runWithGraphT(dictMonad);
12175
12310
  const spyFunWhenM2 = spyFunWhenM(dictMonad.Bind1().Apply0().Functor0());
12176
12311
  return (dictGraph) => {
12177
- const $0 = runWithGraphT2(dictGraph);
12178
- const $1 = spyFunWhenM2(false)("runWithGraphT")(showVertices)((x) => showEdgeList(toEdgeList(dictGraph)(x._1)));
12179
- return (x) => $1($0(x));
12312
+ const runWithGraphT3 = runWithGraphT2(dictGraph);
12313
+ return (wg) => (\u03B1s) => spyFunWhenM2(false)("runWithGraphT")((x) => showVertices(addresses(x)))((x) => showEdgeList(toEdgeList(dictGraph)(x._1)))(runWithGraphT3(wg))(\u03B1s);
12180
12314
  };
12181
12315
  };
12182
12316
  var runWithGraphT_spy1 = /* @__PURE__ */ runWithGraphT_spy(monadIdentity);
@@ -12189,7 +12323,7 @@ var monadWithGraphAllocWithGr = (dictMonadError) => {
12189
12323
  const monadWithGraphWithGraphT1 = monadWithGraphWithGraphT(monadStateT2);
12190
12324
  const monadErrorStateT2 = monadErrorStateT(monadErrorStateT(dictMonadError));
12191
12325
  return {
12192
- new: (\u03B1s) => bindStateT2.bind(fresh1)((\u03B1) => bindStateT2.bind(monadWithGraphWithGraphT1.extend(\u03B1)(\u03B1s))(() => applicativeStateT(monadStateT2).pure(\u03B1))),
12326
+ new: (dictTypeName) => (constr) => (\u03B1s) => (vd) => bindStateT2.bind(fresh1)((\u03B1) => bindStateT2.bind(monadWithGraphWithGraphT1.extend($Tuple(\u03B1, (k) => k(dictTypeName)(vd)))(\u03B1s))(() => applicativeStateT(monadStateT2).pure(constr(\u03B1)(vd)))),
12193
12327
  MonadAlloc0: () => monadAllocWithGraphAllocT1,
12194
12328
  MonadError1: () => monadErrorStateT2,
12195
12329
  MonadWithGraph2: () => monadWithGraphWithGraphT1
@@ -12201,30 +12335,29 @@ var pure = /* @__PURE__ */ (() => applicativeStateT(monadIdentity).pure)();
12201
12335
  var extend = /* @__PURE__ */ (() => monadWithGraphWithGraphT(monadIdentity).extend)();
12202
12336
  var tailRecM = /* @__PURE__ */ (() => monadRecStateT(monadRecIdentity).tailRecM)();
12203
12337
  var member3 = /* @__PURE__ */ (() => setSet(ordVertex).member)();
12204
- var fromFoldable9 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
12338
+ var fromFoldable8 = /* @__PURE__ */ (() => foldableSet.foldr(Cons)(Nil))();
12205
12339
  var intersection2 = /* @__PURE__ */ intersection(ordVertex);
12206
12340
  var fwdSlice = (dictGraph) => {
12207
12341
  const runWithGraph_spy = runWithGraphT_spy1(dictGraph);
12208
12342
  return (v) => {
12209
12343
  const $0 = v._2;
12210
- const $1 = v._1;
12211
12344
  return runWithGraph_spy(tailRecM((v1) => {
12212
12345
  if (v1.es.tag === "Nil") {
12213
12346
  return pure($Step("Done", void 0));
12214
12347
  }
12215
12348
  if (v1.es.tag === "Cons") {
12216
- const $2 = lookup2(ordVertex)(v1.es._1._1)(v1.pending);
12349
+ const $1 = lookup2(ordVertex)(v1.es._1._1)(v1.pending);
12217
12350
  const \u03B2s = (() => {
12218
- if ($2.tag === "Nothing") {
12351
+ if ($1.tag === "Nothing") {
12219
12352
  return $$$Map("Two", Leaf2, v1.es._1._2, void 0, Leaf2);
12220
12353
  }
12221
- if ($2.tag === "Just") {
12222
- return insert(ordVertex)(v1.es._1._2)()($2._1);
12354
+ if ($1.tag === "Just") {
12355
+ return insert(ordVertex)(v1.es._1._2)()($1._1);
12223
12356
  }
12224
12357
  fail();
12225
12358
  })();
12226
12359
  if (eqMap(eqVertex)(eqUnit).eq(\u03B2s)(dictGraph.outN($0)(v1.es._1._1))) {
12227
- return bindStateT(monadIdentity).bind(extend(v1.es._1._1)(\u03B2s))(() => pure($Step(
12360
+ return bindStateT(monadIdentity).bind(extend($Tuple(v1.es._1._1, dictGraph.vertexData($0)(v1.es._1._1)))(\u03B2s))(() => pure($Step(
12228
12361
  "Loop",
12229
12362
  {
12230
12363
  pending: $$delete(ordVertex)(v1.es._1._1)(v1.pending),
@@ -12235,26 +12368,37 @@ var fwdSlice = (dictGraph) => {
12235
12368
  return pure($Step("Loop", { pending: insert(ordVertex)(v1.es._1._1)(\u03B2s)(v1.pending), es: v1.es._2 }));
12236
12369
  }
12237
12370
  fail();
12238
- })({ pending: Leaf2, es: inEdges(dictGraph)($0)($1) }))(assertWhen(true)("inputs are sinks")((v$1) => difference2(ordVertex)($1)(dictGraph.sinks($0)).tag === "Leaf")($1))._1;
12371
+ })({ pending: Leaf2, es: inEdges(dictGraph)($0)(v._1) }))((() => {
12372
+ const $1 = map(ordDVertex)((\u03B1) => $Tuple(\u03B1, dictGraph.vertexData($0)(\u03B1)))(v._1);
12373
+ return assertWhen(true)("inputs are sinks")((v$1) => difference2(ordVertex)(addresses($1))(dictGraph.sinks($0)).tag === "Leaf")($1);
12374
+ })())._1;
12239
12375
  };
12240
12376
  };
12241
12377
  var bwdSlice = (dictGraph) => {
12242
12378
  const runWithGraph_spy = runWithGraphT_spy1(dictGraph);
12243
12379
  return (v) => {
12244
12380
  const $0 = v._2;
12245
- const $1 = v._1;
12381
+ const $1 = map(ordDVertex)((\u03B1) => $Tuple(
12382
+ \u03B1,
12383
+ spyWhen(false)("Vertex data found at " + showStringImpl(\u03B1))(typeNameVertexData.typeName)(dictGraph.vertexData($0)(\u03B1))
12384
+ ))(v._1);
12246
12385
  return runWithGraph_spy(tailRecM((v1) => {
12247
12386
  if (v1["\u03B1s"].tag === "Nil") {
12248
12387
  if (v1.pending.tag === "Nil") {
12249
12388
  return pure($Step("Done", void 0));
12250
12389
  }
12251
12390
  if (v1.pending.tag === "Cons") {
12252
- if (member3(v1.pending._1._1)(v1.visited)) {
12391
+ const $2 = v1.pending._1._1._2;
12392
+ const $3 = v1.pending._1._1._1;
12393
+ if (member3($3)(v1.visited)) {
12253
12394
  return pure($Step("Loop", { visited: v1.visited, "\u03B1s": Nil, pending: v1.pending._2 }));
12254
12395
  }
12255
- return bindStateT(monadIdentity).bind(extend(v1.pending._1._1)(v1.pending._1._2))(() => pure($Step(
12396
+ return bindStateT(monadIdentity).bind(extend($Tuple(
12397
+ $3,
12398
+ spyWhen(false)("Vertex data found at " + showStringImpl($3))(typeNameVertexData.typeName)($2)
12399
+ ))(v1.pending._1._2))(() => pure($Step(
12256
12400
  "Loop",
12257
- { visited: insert(ordVertex)(v1.pending._1._1)()(v1.visited), "\u03B1s": Nil, pending: v1.pending._2 }
12401
+ { visited: insert(ordVertex)($3)()(v1.visited), "\u03B1s": Nil, pending: v1.pending._2 }
12258
12402
  )));
12259
12403
  }
12260
12404
  fail();
@@ -12265,15 +12409,15 @@ var bwdSlice = (dictGraph) => {
12265
12409
  "Loop",
12266
12410
  {
12267
12411
  visited: v1.visited,
12268
- "\u03B1s": foldableList.foldr(Cons)(v1["\u03B1s"]._2)(fromFoldable9(\u03B2s)),
12269
- pending: $List("Cons", $Tuple(v1["\u03B1s"]._1, \u03B2s), v1.pending)
12412
+ "\u03B1s": foldableList.foldr(Cons)(v1["\u03B1s"]._2)(fromFoldable8(\u03B2s)),
12413
+ pending: $List("Cons", $Tuple($Tuple(v1["\u03B1s"]._1, dictGraph.vertexData($0)(v1["\u03B1s"]._1)), \u03B2s), v1.pending)
12270
12414
  }
12271
12415
  ));
12272
12416
  }
12273
12417
  fail();
12274
12418
  })({
12275
12419
  visited: Leaf2,
12276
- "\u03B1s": fromFoldable9(intersection2(assertWhen(true)("inputs are sinks")((v$1) => difference2(ordVertex)($1)(dictGraph.Vertices1().vertices($0)).tag === "Leaf")($1))(dictGraph.sources($0))),
12420
+ "\u03B1s": fromFoldable8(intersection2(addresses(assertWhen(true)("inputs are sinks")((v$1) => difference2(ordDVertex)($1)(dictGraph.Vertices1().vertices($0)).tag === "Leaf")($1)))(dictGraph.sources($0))),
12277
12421
  pending: Nil
12278
12422
  }))(Leaf2)._1;
12279
12423
  };
@@ -13335,13 +13479,13 @@ var opDefs = /* @__PURE__ */ fromFoldable(ordString)(foldableArray)([
13335
13479
  ]);
13336
13480
 
13337
13481
  // output-es/Bind/index.js
13338
- var union4 = /* @__PURE__ */ (() => setSet(ordString).union)();
13482
+ var union5 = /* @__PURE__ */ (() => setSet(ordString).union)();
13339
13483
  var keys2 = (v) => {
13340
13484
  if (v.tag === "Nil") {
13341
13485
  return Leaf2;
13342
13486
  }
13343
13487
  if (v.tag === "Cons") {
13344
- return union4($$$Map("Two", Leaf2, v._1._1, void 0, Leaf2))(keys2(v._2));
13488
+ return union5($$$Map("Two", Leaf2, v._1._1, void 0, Leaf2))(keys2(v._2));
13345
13489
  }
13346
13490
  fail();
13347
13491
  };
@@ -13510,7 +13654,7 @@ var ClauseIsSymbol = { reflectSymbol: () => "Clause" };
13510
13654
  var difference3 = /* @__PURE__ */ difference(eqString);
13511
13655
  var toUnfoldable7 = /* @__PURE__ */ toUnfoldable4(unfoldableList);
13512
13656
  var monadThrowExceptT2 = /* @__PURE__ */ monadThrowExceptT(monadIdentity);
13513
- var fromFoldable10 = /* @__PURE__ */ fromFoldable2(foldableArray);
13657
+ var fromFoldable9 = /* @__PURE__ */ fromFoldable2(foldableArray);
13514
13658
  var fromFoldable16 = /* @__PURE__ */ fromFoldable2(foldableNonEmptyList);
13515
13659
  var fromFoldable24 = /* @__PURE__ */ fromFoldable2(foldableList);
13516
13660
  var monadErrorExceptT2 = /* @__PURE__ */ monadErrorExceptT(monadIdentity);
@@ -15250,7 +15394,7 @@ var forConstrBwd = (v) => (v1) => {
15250
15394
  }
15251
15395
  fail();
15252
15396
  };
15253
- var elimBool = (\u03BA) => (\u03BA$p) => $Elim("ElimConstr", fromFoldable10([$Tuple("True", \u03BA), $Tuple("False", \u03BA$p)]));
15397
+ var elimBool = (\u03BA) => (\u03BA$p) => $Elim("ElimConstr", fromFoldable9([$Tuple("True", \u03BA), $Tuple("False", \u03BA$p)]));
15254
15398
  var econs = (\u03B1) => (e) => (e$p) => $Expr("Constr", \u03B1, ":", $List("Cons", e, $List("Cons", e$p, Nil)));
15255
15399
  var ctrFor = (v) => {
15256
15400
  if (v.tag === "Left") {
@@ -15711,7 +15855,7 @@ var listCompFwd = (dictMonadError) => {
15711
15855
  $1,
15712
15856
  $Elim(
15713
15857
  "ElimConstr",
15714
- fromFoldable10([
15858
+ fromFoldable9([
15715
15859
  $Tuple("True", $Cont("ContExpr", e)),
15716
15860
  $Tuple("False", $Cont("ContExpr", $Expr("Constr", $1, "Nil", Nil)))
15717
15861
  ])
@@ -17068,10 +17212,35 @@ var $EnvExpr = (_1, _2) => ({ tag: "EnvExpr", _1, _2 });
17068
17212
  var $ForeignOp$p = (_1) => ({ tag: "ForeignOp'", _1 });
17069
17213
  var $Fun = (tag, _1, _2, _3) => ({ tag, _1, _2, _3 });
17070
17214
  var $Val = (_1, _2) => ({ tag: "Val", _1, _2 });
17215
+ var setSet3 = /* @__PURE__ */ setSet(ordDVertex);
17216
+ var unions = /* @__PURE__ */ foldlArray(/* @__PURE__ */ union(ordDVertex))(Leaf2);
17217
+ var vertices = /* @__PURE__ */ (() => verticesDict(verticesElimVertex).vertices)();
17218
+ var unions13 = /* @__PURE__ */ (() => {
17219
+ const go = (go$a0$copy) => (go$a1$copy) => {
17220
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
17221
+ while (go$c) {
17222
+ const b = go$a0, v = go$a1;
17223
+ if (v.tag === "Nil") {
17224
+ go$c = false;
17225
+ go$r = b;
17226
+ continue;
17227
+ }
17228
+ if (v.tag === "Cons") {
17229
+ go$a0 = unionWith(ordDVertex)($$const)(b)(v._1);
17230
+ go$a1 = v._2;
17231
+ continue;
17232
+ }
17233
+ fail();
17234
+ }
17235
+ return go$r;
17236
+ };
17237
+ return go(Leaf2);
17238
+ })();
17239
+ var foldMap2 = /* @__PURE__ */ foldMap({ mempty: Leaf2, Semigroup0: () => ({ append: union(ordDVertex) }) });
17071
17240
  var identity22 = (x) => x;
17072
17241
  var boundedLattice = { BoundedJoinSemilattice0: () => boundedJoinSemilatticeUni, BoundedMeetSemilattice1: () => boundedMeetSemilatticeUni };
17073
- var fromFoldable11 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
17074
- var setSet3 = /* @__PURE__ */ setSet(ordString);
17242
+ var fromFoldable10 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
17243
+ var setSet1 = /* @__PURE__ */ setSet(ordString);
17075
17244
  var toUnfoldable14 = /* @__PURE__ */ toUnfoldable4(unfoldableList);
17076
17245
  var intersection3 = /* @__PURE__ */ intersection(ordString);
17077
17246
  var Val = (value0) => (value1) => $Val(value0, value1);
@@ -17082,6 +17251,78 @@ var Dictionary3 = (value0) => $BaseVal("Dictionary", value0);
17082
17251
  var DictRep = (x) => x;
17083
17252
  var MatrixRep = (x) => x;
17084
17253
  var Env = (x) => x;
17254
+ var typeNameMatrixDim = { typeName: (v) => "MatrixDim" };
17255
+ var pack2 = (x) => (k) => k(typeNameMatrixDim)(x);
17256
+ var typeNameDictKey = { typeName: (v) => "DictKey" };
17257
+ var pack12 = (x) => (k) => k(typeNameDictKey)(x);
17258
+ var typeNameBaseVal = { typeName: (v) => "BaseVal" };
17259
+ var pack22 = (x) => (k) => k(typeNameBaseVal)(x);
17260
+ var verticesValVertex = {
17261
+ vertices: (v) => setSet3.union($$$Map("Two", Leaf2, $Tuple(v._1, pack22(v._2)), void 0, Leaf2))(verticesBaseValVertex.vertices(v._2))
17262
+ };
17263
+ var verticesMatrixRepVertex = {
17264
+ vertices: (v) => setSet3.union(unions(concat(arrayMap(arrayMap(verticesValVertex.vertices))(v._1))))(setSet3.union($$$Map(
17265
+ "Two",
17266
+ Leaf2,
17267
+ $Tuple(v._2._1._2, pack2(v._2._1)),
17268
+ void 0,
17269
+ Leaf2
17270
+ ))($$$Map("Two", Leaf2, $Tuple(v._2._2._2, pack2(v._2._2)), void 0, Leaf2)))
17271
+ };
17272
+ var verticesFunVertex = {
17273
+ vertices: (v) => {
17274
+ if (v.tag === "Closure") {
17275
+ return setSet3.union(verticesEnvVertex.vertices(v._1))(setSet3.union(vertices(v._2))(verticesElimVertex.vertices(v._3)));
17276
+ }
17277
+ if (v.tag === "Foreign") {
17278
+ return unions13(listMap(verticesValVertex.vertices)(v._2));
17279
+ }
17280
+ if (v.tag === "PartialConstr") {
17281
+ return unions13(listMap(verticesValVertex.vertices)(v._2));
17282
+ }
17283
+ fail();
17284
+ }
17285
+ };
17286
+ var verticesEnvVertex = { vertices: (v) => unions13(listMap(verticesValVertex.vertices)(mapObjectString.values(v))) };
17287
+ var verticesDictRepVertex = {
17288
+ vertices: (v) => foldMap2((k) => (v1) => setSet3.union($$$Map(
17289
+ "Two",
17290
+ Leaf2,
17291
+ $Tuple(v1._1, pack12($Tuple(k, v1._1))),
17292
+ void 0,
17293
+ Leaf2
17294
+ ))(verticesValVertex.vertices(v1._2)))(v)
17295
+ };
17296
+ var verticesBaseValVertex = {
17297
+ vertices: (v) => {
17298
+ if (v.tag === "Int") {
17299
+ return setSet3.empty;
17300
+ }
17301
+ if (v.tag === "Float") {
17302
+ return setSet3.empty;
17303
+ }
17304
+ if (v.tag === "Str") {
17305
+ return setSet3.empty;
17306
+ }
17307
+ if (v.tag === "Constr") {
17308
+ return unions13(listMap(verticesValVertex.vertices)(v._2));
17309
+ }
17310
+ if (v.tag === "Dictionary") {
17311
+ return verticesDictRepVertex.vertices(v._1);
17312
+ }
17313
+ if (v.tag === "Matrix") {
17314
+ return verticesMatrixRepVertex.vertices(v._1);
17315
+ }
17316
+ if (v.tag === "Fun") {
17317
+ return verticesFunVertex.vertices(v._1);
17318
+ }
17319
+ fail();
17320
+ }
17321
+ };
17322
+ var verticesEnvExprVertex = {
17323
+ vertices: (v) => setSet3.union(unions13(listMap(verticesValVertex.vertices)(mapObjectString.values(v._1))))(verticesExprVertex.vertices(v._2))
17324
+ };
17325
+ var joinSemilatticeMatrixDim = (dictJoinSemilattice) => ({ join: (v) => (v1) => $Tuple(mustEq(eqInt)(showInt)(v._1)(v1._1), dictJoinSemilattice.join(v._2)(v1._2)) });
17085
17326
  var isEmptyEnv = { isEmpty: (v) => isEmpty2(v) };
17086
17327
  var setEnvString = {
17087
17328
  empty,
@@ -17124,6 +17365,7 @@ var highlightableVertex = {
17124
17365
  highlightIf: (v) => (doc) => beside(beside(doc)(checkOneLine(split("\n")(" _"))))(checkOneLine(split("\n")(" \u27E8" + v + "\u27E9")))
17125
17366
  };
17126
17367
  var highlightableUnit = { highlightIf: (v) => identity22 };
17368
+ var functorMatrixDim = { map: (f) => (m) => $Tuple(m._1, f(m._2)) };
17127
17369
  var functorVal = { map: (f) => (m) => $Val(f(m._1), functorBaseVal.map(f)(m._2)) };
17128
17370
  var functorMatrixRep = {
17129
17371
  map: (f) => (m) => $Tuple(
@@ -17183,6 +17425,13 @@ var botOfUnit$x215Raw$x215 = (dictBoundedJoinSemilattice) => ({
17183
17425
  return (x) => $Tuple($0, $1(x._2));
17184
17426
  })()
17185
17427
  });
17428
+ var foldableMatrixDim = { foldl: (f) => (z) => (m) => f(z)(m._2), foldr: (f) => (z) => (m) => f(m._2)(z), foldMap: (dictMonoid) => (f) => (m) => f(m._2) };
17429
+ var traversableMatrixDim = {
17430
+ traverse: (dictApplicative) => (f) => (m) => dictApplicative.Apply0().Functor0().map((v1) => v1)(traversableTuple.traverse(dictApplicative)(f)(m)),
17431
+ sequence: (dictApplicative) => (v) => traversableMatrixDim.traverse(dictApplicative)(identity22)(v),
17432
+ Functor0: () => functorMatrixDim,
17433
+ Foldable1: () => foldableMatrixDim
17434
+ };
17186
17435
  var foldableVal = {
17187
17436
  foldl: (f) => (z) => (m) => foldableBaseVal.foldl(f)(f(z)(m._1))(m._2),
17188
17437
  foldr: (f) => (z) => (m) => f(m._1)(foldableBaseVal.foldr(f)(z)(m._2)),
@@ -17257,20 +17506,20 @@ var foldableFun = {
17257
17506
  foldMap: (dictMonoid) => {
17258
17507
  const $0 = dictMonoid.Semigroup0();
17259
17508
  const foldMap1 = foldMap(dictMonoid);
17260
- const foldMap6 = foldableElim.foldMap(dictMonoid);
17261
- const foldMap7 = foldableList.foldMap(dictMonoid);
17509
+ const foldMap8 = foldableElim.foldMap(dictMonoid);
17510
+ const foldMap9 = foldableList.foldMap(dictMonoid);
17262
17511
  return (f) => (m) => {
17263
17512
  if (m.tag === "Closure") {
17264
17513
  return $0.append(foldableEnv.foldMap(dictMonoid)(f)(m._1))($0.append((() => {
17265
- const $1 = foldMap6(f);
17514
+ const $1 = foldMap8(f);
17266
17515
  return foldMap1((v) => $1)(m._2);
17267
- })())(foldMap6(f)(m._3)));
17516
+ })())(foldMap8(f)(m._3)));
17268
17517
  }
17269
17518
  if (m.tag === "Foreign") {
17270
- return foldMap7(foldableVal.foldMap(dictMonoid)(f))(m._2);
17519
+ return foldMap9(foldableVal.foldMap(dictMonoid)(f))(m._2);
17271
17520
  }
17272
17521
  if (m.tag === "PartialConstr") {
17273
- return foldMap7(foldableVal.foldMap(dictMonoid)(f))(m._2);
17522
+ return foldMap9(foldableVal.foldMap(dictMonoid)(f))(m._2);
17274
17523
  }
17275
17524
  fail();
17276
17525
  };
@@ -17358,7 +17607,7 @@ var foldableBaseVal = {
17358
17607
  },
17359
17608
  foldMap: (dictMonoid) => {
17360
17609
  const mempty = dictMonoid.mempty;
17361
- const foldMap5 = foldableList.foldMap(dictMonoid);
17610
+ const foldMap7 = foldableList.foldMap(dictMonoid);
17362
17611
  return (f) => (m) => {
17363
17612
  if (m.tag === "Int") {
17364
17613
  return mempty;
@@ -17370,7 +17619,7 @@ var foldableBaseVal = {
17370
17619
  return mempty;
17371
17620
  }
17372
17621
  if (m.tag === "Constr") {
17373
- return foldMap5(foldableVal.foldMap(dictMonoid)(f))(m._2);
17622
+ return foldMap7(foldableVal.foldMap(dictMonoid)(f))(m._2);
17374
17623
  }
17375
17624
  if (m.tag === "Dictionary") {
17376
17625
  return foldableDictRep.foldMap(dictMonoid)(f)(m._1);
@@ -17385,15 +17634,6 @@ var foldableBaseVal = {
17385
17634
  };
17386
17635
  }
17387
17636
  };
17388
- var foldableEnvExpr = {
17389
- foldl: (f) => (z) => (m) => foldableExpr.foldl(f)(fold((z$1) => (v) => foldableVal.foldl(f)(z$1))(z)(m._1))(m._2),
17390
- foldr: (f) => (z) => (m) => foldableEnv.foldr(f)(foldableExpr.foldr(f)(z)(m._2))(m._1),
17391
- foldMap: (dictMonoid) => {
17392
- const foldMap5 = foldableEnv.foldMap(dictMonoid);
17393
- const foldMap6 = foldableExpr.foldMap(dictMonoid);
17394
- return (f) => (m) => dictMonoid.Semigroup0().append(foldMap5(f)(m._1))(foldMap6(f)(m._2));
17395
- }
17396
- };
17397
17637
  var traversableVal = {
17398
17638
  traverse: (dictApplicative) => {
17399
17639
  const Apply0 = dictApplicative.Apply0();
@@ -17406,8 +17646,8 @@ var traversableVal = {
17406
17646
  var traversableMatrixRep = {
17407
17647
  traverse: (dictApplicative) => {
17408
17648
  const bitraverse1 = bitraversableTuple.bitraverse(dictApplicative);
17409
- const traverse7 = traversableArray.traverse(dictApplicative);
17410
- return (f) => (v) => dictApplicative.Apply0().Functor0().map(MatrixRep)(bitraverse1(traverse7(traverse7(traversableVal.traverse(dictApplicative)(f))))(bitraverse1(traversableTuple.traverse(dictApplicative)(f))(traversableTuple.traverse(dictApplicative)(f)))(v));
17649
+ const traverse8 = traversableArray.traverse(dictApplicative);
17650
+ return (f) => (v) => dictApplicative.Apply0().Functor0().map(MatrixRep)(bitraverse1(traverse8(traverse8(traversableVal.traverse(dictApplicative)(f))))(bitraverse1(traversableMatrixDim.traverse(dictApplicative)(f))(traversableMatrixDim.traverse(dictApplicative)(f)))(v));
17411
17651
  },
17412
17652
  sequence: (dictApplicative) => traversableMatrixRep.traverse(dictApplicative)(identity4),
17413
17653
  Functor0: () => functorMatrixRep,
@@ -17417,20 +17657,20 @@ var traversableFun = {
17417
17657
  traverse: (dictApplicative) => {
17418
17658
  const Apply0 = dictApplicative.Apply0();
17419
17659
  const $0 = Apply0.Functor0();
17420
- const traverse7 = traversableDict.traverse(dictApplicative);
17421
- const traverse8 = traversableElim.traverse(dictApplicative);
17422
- const traverse9 = traversableList.traverse(dictApplicative);
17660
+ const traverse8 = traversableDict.traverse(dictApplicative);
17661
+ const traverse9 = traversableElim.traverse(dictApplicative);
17662
+ const traverse10 = traversableList.traverse(dictApplicative);
17423
17663
  return (f) => (m) => {
17424
17664
  if (m.tag === "Closure") {
17425
- return Apply0.apply(Apply0.apply($0.map((v3) => (v4) => (v5) => $Fun("Closure", v3, v4, v5))(traversableEnv.traverse(dictApplicative)(f)(m._1)))(traverse7(traverse8(f))(m._2)))(traverse8(f)(m._3));
17665
+ return Apply0.apply(Apply0.apply($0.map((v3) => (v4) => (v5) => $Fun("Closure", v3, v4, v5))(traversableEnv.traverse(dictApplicative)(f)(m._1)))(traverse8(traverse9(f))(m._2)))(traverse9(f)(m._3));
17426
17666
  }
17427
17667
  if (m.tag === "Foreign") {
17428
17668
  const $1 = m._1;
17429
- return $0.map((v2) => $Fun("Foreign", $1, v2))(traverse9(traversableVal.traverse(dictApplicative)(f))(m._2));
17669
+ return $0.map((v2) => $Fun("Foreign", $1, v2))(traverse10(traversableVal.traverse(dictApplicative)(f))(m._2));
17430
17670
  }
17431
17671
  if (m.tag === "PartialConstr") {
17432
17672
  const $1 = m._1;
17433
- return $0.map((v2) => $Fun("PartialConstr", $1, v2))(traverse9(traversableVal.traverse(dictApplicative)(f))(m._2));
17673
+ return $0.map((v2) => $Fun("PartialConstr", $1, v2))(traverse10(traversableVal.traverse(dictApplicative)(f))(m._2));
17434
17674
  }
17435
17675
  fail();
17436
17676
  };
@@ -17441,8 +17681,8 @@ var traversableFun = {
17441
17681
  };
17442
17682
  var traversableEnv = {
17443
17683
  traverse: (dictApplicative) => {
17444
- const traverse7 = traversableDict.traverse(dictApplicative);
17445
- return (f) => (m) => dictApplicative.Apply0().Functor0().map((v1) => v1)(traverse7(traversableVal.traverse(dictApplicative)(f))(m));
17684
+ const traverse8 = traversableDict.traverse(dictApplicative);
17685
+ return (f) => (m) => dictApplicative.Apply0().Functor0().map((v1) => v1)(traverse8(traversableVal.traverse(dictApplicative)(f))(m));
17446
17686
  },
17447
17687
  sequence: (dictApplicative) => (v) => traversableEnv.traverse(dictApplicative)(identity22)(v),
17448
17688
  Functor0: () => functorEnv,
@@ -17450,9 +17690,9 @@ var traversableEnv = {
17450
17690
  };
17451
17691
  var traversableDictRep = {
17452
17692
  traverse: (dictApplicative) => {
17453
- const traverse7 = traversableDict.traverse(dictApplicative);
17693
+ const traverse8 = traversableDict.traverse(dictApplicative);
17454
17694
  const bitraverse1 = bitraversableTuple.bitraverse(dictApplicative);
17455
- return (f) => (v) => dictApplicative.Apply0().Functor0().map(DictRep)(traverse7(bitraverse1(f)(traversableVal.traverse(dictApplicative)(f)))(v));
17695
+ return (f) => (v) => dictApplicative.Apply0().Functor0().map(DictRep)(traverse8(bitraverse1(f)(traversableVal.traverse(dictApplicative)(f)))(v));
17456
17696
  },
17457
17697
  sequence: (dictApplicative) => traversableDictRep.traverse(dictApplicative)(identity4),
17458
17698
  Functor0: () => functorDictRep,
@@ -17461,7 +17701,7 @@ var traversableDictRep = {
17461
17701
  var traversableBaseVal = {
17462
17702
  traverse: (dictApplicative) => {
17463
17703
  const $0 = dictApplicative.Apply0().Functor0();
17464
- const traverse7 = traversableList.traverse(dictApplicative);
17704
+ const traverse8 = traversableList.traverse(dictApplicative);
17465
17705
  return (f) => (m) => {
17466
17706
  if (m.tag === "Int") {
17467
17707
  return dictApplicative.pure($BaseVal("Int", m._1));
@@ -17474,7 +17714,7 @@ var traversableBaseVal = {
17474
17714
  }
17475
17715
  if (m.tag === "Constr") {
17476
17716
  const $1 = m._1;
17477
- return $0.map((v2) => $BaseVal("Constr", $1, v2))(traverse7(traversableVal.traverse(dictApplicative)(f))(m._2));
17717
+ return $0.map((v2) => $BaseVal("Constr", $1, v2))(traverse8(traversableVal.traverse(dictApplicative)(f))(m._2));
17478
17718
  }
17479
17719
  if (m.tag === "Dictionary") {
17480
17720
  return $0.map((v1) => $BaseVal("Dictionary", v1))(traversableDictRep.traverse(dictApplicative)(f)(m._1));
@@ -17608,14 +17848,12 @@ var expandableBaseValRawBaseV = (dictBoundedJoinSemilattice) => ({
17608
17848
  return throwException(error("Shape mismatch"))();
17609
17849
  }
17610
17850
  });
17851
+ var applyMatrixDim = { apply: (v) => (v1) => $Tuple(mustEq(eqInt)(showInt)(v._1)(v1._1), v._2(v1._2)), Functor0: () => functorMatrixDim };
17611
17852
  var applyVal = { apply: (v) => (v1) => $Val(v._1(v1._1), applyBaseVal.apply(v._2)(v1._2)), Functor0: () => functorVal };
17612
17853
  var applyMatrixRep = {
17613
17854
  apply: (v) => (v1) => $Tuple(
17614
17855
  zipWith(zipWith(applyVal.apply))(v._1)(v1._1),
17615
- $Tuple(
17616
- $Tuple(mustEq(eqInt)(showInt)(v._2._1._1)(v1._2._1._1), v._2._1._2(v1._2._1._2)),
17617
- $Tuple(mustEq(eqInt)(showInt)(v._2._2._1)(v1._2._2._1), v._2._2._2(v1._2._2._2))
17618
- )
17856
+ $Tuple(applyMatrixDim.apply(v._2._1)(v1._2._1), applyMatrixDim.apply(v._2._2)(v1._2._2))
17619
17857
  ),
17620
17858
  Functor0: () => functorMatrixRep
17621
17859
  };
@@ -17699,15 +17937,15 @@ var applyBaseVal = {
17699
17937
  Functor0: () => functorBaseVal
17700
17938
  };
17701
17939
  var joinSemilatticeVal = (dictJoinSemilattice) => ({ join: (v) => (v1) => $Val(dictJoinSemilattice.join(v._1)(v1._1), joinSemilatticeBaseVal(dictJoinSemilattice).join(v._2)(v1._2)) });
17702
- var joinSemilatticeMatrixRep = (dictJoinSemilattice) => ({
17703
- join: (v) => (v1) => $Tuple(
17704
- joinSemilatticeArray(joinSemilatticeArray(joinSemilatticeVal(dictJoinSemilattice))).join(v._1)(v1._1),
17705
- $Tuple(
17706
- $Tuple(mustEq(eqInt)(showInt)(v._2._1._1)(v1._2._1._1), dictJoinSemilattice.join(v._2._1._2)(v1._2._1._2)),
17707
- $Tuple(mustEq(eqInt)(showInt)(v._2._2._1)(v1._2._2._1), dictJoinSemilattice.join(v._2._2._2)(v1._2._2._2))
17940
+ var joinSemilatticeMatrixRep = (dictJoinSemilattice) => {
17941
+ const $0 = joinSemilatticeMatrixDim(dictJoinSemilattice);
17942
+ return {
17943
+ join: (v) => (v1) => $Tuple(
17944
+ joinSemilatticeArray(joinSemilatticeArray(joinSemilatticeVal(dictJoinSemilattice))).join(v._1)(v1._1),
17945
+ $Tuple($0.join(v._2._1)(v1._2._1), $0.join(v._2._2)(v1._2._2))
17708
17946
  )
17709
- )
17710
- });
17947
+ };
17948
+ };
17711
17949
  var joinSemilatticeFun = (dictJoinSemilattice) => {
17712
17950
  const joinSemilatticeElim2 = joinSemilatticeElim(dictJoinSemilattice);
17713
17951
  return {
@@ -17800,7 +18038,7 @@ var joinSemilatticeBaseVal = (dictJoinSemilattice) => {
17800
18038
  };
17801
18039
  var annUnit = { Highlightable0: () => highlightableUnit, BoundedLattice1: () => boundedLattice };
17802
18040
  var reaches = (\u03C1) => (xs) => {
17803
- const dom_\u03C1 = fromFoldable11(mapObjectString.keys(\u03C1));
18041
+ const dom_\u03C1 = fromFoldable10(mapObjectString.keys(\u03C1));
17804
18042
  const go = (go$a0$copy) => (go$a1$copy) => {
17805
18043
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
17806
18044
  while (go$c) {
@@ -17811,20 +18049,20 @@ var reaches = (\u03C1) => (xs) => {
17811
18049
  continue;
17812
18050
  }
17813
18051
  if (v.tag === "Cons") {
17814
- if (setSet3.member(v._1)(v1)) {
18052
+ if (setSet1.member(v._1)(v1)) {
17815
18053
  go$a0 = v._2;
17816
18054
  go$a1 = v1;
17817
18055
  continue;
17818
18056
  }
17819
18057
  go$a0 = foldableList.foldr(Cons)(v._2)(toUnfoldable14(intersection3(fVElim.fv($$get(showString)(mapDictString)(v._1)(\u03C1)))(dom_\u03C1)));
17820
- go$a1 = setSet3.union($$$Map("Two", Leaf2, v._1, void 0, Leaf2))(v1);
18058
+ go$a1 = setSet1.union($$$Map("Two", Leaf2, v._1, void 0, Leaf2))(v1);
17821
18059
  continue;
17822
18060
  }
17823
18061
  fail();
17824
18062
  }
17825
18063
  return go$r;
17826
18064
  };
17827
- return go(toUnfoldable14(xs))(setSet3.empty);
18065
+ return go(toUnfoldable14(xs))(setSet1.empty);
17828
18066
  };
17829
18067
  var matrixPut = (i) => (j) => (\u03B4v) => (v) => {
17830
18068
  const vs_i = definitely("index within bounds")(index(v._1)(i - 1 | 0));
@@ -17844,7 +18082,7 @@ var matrixGet = (i) => (j) => (v) => definitely("index out of bounds!")((() => {
17844
18082
  fail();
17845
18083
  })());
17846
18084
  var forDefs = (\u03C1) => (\u03C3) => {
17847
- const $0 = reaches(\u03C1)(intersection3(fVElim.fv(\u03C3))(fromFoldable11(mapObjectString.keys(\u03C1))));
18085
+ const $0 = reaches(\u03C1)(intersection3(fVElim.fv(\u03C3))(fromFoldable10(mapObjectString.keys(\u03C1))));
17848
18086
  return filterWithKey2((x) => {
17849
18087
  const $1 = setSet(ordString).member(x)($0);
17850
18088
  return (v) => $1;
@@ -17880,21 +18118,11 @@ var unary = (dictBoundedJoinSemilattice) => {
17880
18118
  id,
17881
18119
  $ForeignOp$p({
17882
18120
  arity: 1,
17883
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
17884
- const $0 = dictMonadError.MonadThrow0().Monad0().Bind1().Apply0().Functor0();
17885
- return (v) => {
18121
+ "op'": (dictMonadWithGraphAlloc) => {
18122
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
18123
+ return (dictMonadError) => (v) => {
17886
18124
  if (v.tag === "Cons" && v._2.tag === "Nil") {
17887
- const $1 = v._1._2;
17888
- return $0.map((() => {
17889
- const $2 = f.o;
17890
- return (v$1) => $Val(v$1._2, $2.pack(v$1._1));
17891
- })())($0.map((v2) => $Tuple(f.fwd(f.i.unpack($1)), v2))(dictMonadWithGraphAlloc.new($$$Map(
17892
- "Two",
17893
- Leaf2,
17894
- v._1._1,
17895
- void 0,
17896
- Leaf2
17897
- ))));
18125
+ return $$new(Val)($$$Map("Two", Leaf2, v._1._1, void 0, Leaf2))(f.o.pack(f.fwd(f.i.unpack(v._1._2))));
17898
18126
  }
17899
18127
  fail();
17900
18128
  };
@@ -18037,20 +18265,17 @@ var binaryZero = (dictBoundedJoinSemilattice) => {
18037
18265
  id,
18038
18266
  $ForeignOp$p({
18039
18267
  arity: 2,
18040
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
18041
- const $0 = dictMonadError.MonadThrow0().Monad0().Bind1().Apply0().Functor0();
18042
- return (v) => {
18268
+ "op'": (dictMonadWithGraphAlloc) => {
18269
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
18270
+ return (dictMonadError) => (v) => {
18043
18271
  if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._2.tag === "Nil") {
18044
- const $1 = f.i.unpack(v._1._2);
18045
- const $2 = f.i.unpack(v._2._1._2);
18046
- return $0.map((() => {
18047
- const $3 = f.o;
18048
- return (v$1) => $Val(v$1._2, $3.pack(v$1._1));
18049
- })())($0.map((v4) => $Tuple(f.fwd($1)($2), v4))(dictMonadWithGraphAlloc.new((() => {
18050
- if (dictIsZero.isZero($1)) {
18272
+ const $0 = f.i.unpack(v._1._2);
18273
+ const $1 = f.i.unpack(v._2._1._2);
18274
+ return $$new(Val)((() => {
18275
+ if (dictIsZero.isZero($0)) {
18051
18276
  return $$$Map("Two", Leaf2, v._1._1, void 0, Leaf2);
18052
18277
  }
18053
- if (dictIsZero.isZero($2)) {
18278
+ if (dictIsZero.isZero($1)) {
18054
18279
  return $$$Map("Two", Leaf2, v._2._1._1, void 0, Leaf2);
18055
18280
  }
18056
18281
  return insert(ordVertex)(v._2._1._1)()($$$Map(
@@ -18060,7 +18285,7 @@ var binaryZero = (dictBoundedJoinSemilattice) => {
18060
18285
  void 0,
18061
18286
  Leaf2
18062
18287
  ));
18063
- })())));
18288
+ })())(f.o.pack(f.fwd($0)($1)));
18064
18289
  }
18065
18290
  fail();
18066
18291
  };
@@ -18125,22 +18350,17 @@ var binary = (dictBoundedJoinSemilattice) => {
18125
18350
  id,
18126
18351
  $ForeignOp$p({
18127
18352
  arity: 2,
18128
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
18129
- const $0 = dictMonadError.MonadThrow0().Monad0().Bind1().Apply0().Functor0();
18130
- return (v) => {
18353
+ "op'": (dictMonadWithGraphAlloc) => {
18354
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
18355
+ return (dictMonadError) => (v) => {
18131
18356
  if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._2.tag === "Nil") {
18132
- const $1 = v._1._2;
18133
- const $2 = v._2._1._2;
18134
- return $0.map((() => {
18135
- const $3 = f.o;
18136
- return (v$1) => $Val(v$1._2, $3.pack(v$1._1));
18137
- })())($0.map((v3) => $Tuple(f.fwd(f.i1.unpack($1))(f.i2.unpack($2)), v3))(dictMonadWithGraphAlloc.new(insert(ordVertex)(v._2._1._1)()($$$Map(
18357
+ return $$new(Val)(insert(ordVertex)(v._2._1._1)()($$$Map(
18138
18358
  "Two",
18139
18359
  Leaf2,
18140
18360
  v._1._1,
18141
18361
  void 0,
18142
18362
  Leaf2
18143
- )))));
18363
+ )))(f.o.pack(f.fwd(f.i1.unpack(v._1._2))(f.i2.unpack(v._2._1._2))));
18144
18364
  }
18145
18365
  fail();
18146
18366
  };
@@ -18178,7 +18398,7 @@ var asIntNumberOrString = { as: (x) => $Either("Left", toNumber(x)) };
18178
18398
  var asIntNumber = { as: toNumber };
18179
18399
  var asIntIntOrNumber = { as: Left };
18180
18400
  var asBooleanBoolean = { as: (x) => x };
18181
- var union5 = (dictAs) => (dictAs1) => (dictAs2) => (dictAs3) => (v) => (v1) => (v2) => (v3) => {
18401
+ var union6 = (dictAs) => (dictAs1) => (dictAs2) => (dictAs3) => (v) => (v1) => (v2) => (v3) => {
18182
18402
  if (v2.tag === "Left") {
18183
18403
  if (v3.tag === "Left") {
18184
18404
  return dictAs.as(v(v2._1)(v3._1));
@@ -18198,17 +18418,17 @@ var union5 = (dictAs) => (dictAs1) => (dictAs2) => (dictAs3) => (v) => (v1) => (
18198
18418
  }
18199
18419
  fail();
18200
18420
  };
18201
- var unionStr = (dictAs) => (dictAs1) => union5(dictAs)(dictAs)(dictAs1)(dictAs1);
18421
+ var unionStr = (dictAs) => (dictAs1) => union6(dictAs)(dictAs)(dictAs1)(dictAs1);
18202
18422
 
18203
18423
  // output-es/EvalGraph/index.js
18204
18424
  var setSet4 = /* @__PURE__ */ setSet(ordVertex);
18205
18425
  var disjointUnion2 = /* @__PURE__ */ disjointUnion(mapEnvStringVal);
18206
- var fromFoldable17 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
18426
+ var fromFoldable11 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
18207
18427
  var show22 = /* @__PURE__ */ (() => showSet(showString).show)();
18208
18428
  var toUnfoldable9 = /* @__PURE__ */ toUnfoldable4(unfoldableList);
18209
18429
  var union1 = /* @__PURE__ */ (() => setSet(ordString).union)();
18210
18430
  var fv = /* @__PURE__ */ (() => fVDict(fVElim).fv)();
18211
- var fromFoldable18 = /* @__PURE__ */ fromFoldable2(foldableList);
18431
+ var fromFoldable17 = /* @__PURE__ */ fromFoldable2(foldableList);
18212
18432
  var greaterThanOrEq = /* @__PURE__ */ (() => {
18213
18433
  const $0 = ordTuple(ordInt)(ordInt);
18214
18434
  return (a1) => (a2) => $0.compare(a1)(a2) !== "LT";
@@ -18315,7 +18535,7 @@ var match = (dictMonadWithGraphAlloc) => {
18315
18535
  const $2 = v._2._1;
18316
18536
  const $3 = v._1;
18317
18537
  const $4 = v1._2;
18318
- return Bind1.bind(check(MonadThrow0)(difference2(ordString)($1)(fromFoldable17(mapObjectString.keys($2))).tag === "Leaf")("Pattern mismatch: found " + show22(mapObjectString.keys($2)) + ", expected " + show22($1)))(() => Bind1.bind(matchMany(dictMonadWithGraphAlloc)(listMap((k) => $$get(showString)(mapObjectString)(k)($2)._2)(toUnfoldable9($1)))($4))((v2) => $0.pure($Tuple(
18538
+ return Bind1.bind(check(MonadThrow0)(difference2(ordString)($1)(fromFoldable11(mapObjectString.keys($2))).tag === "Leaf")("Pattern mismatch: found " + show22(mapObjectString.keys($2)) + ", expected " + show22($1)))(() => Bind1.bind(matchMany(dictMonadWithGraphAlloc)(listMap((k) => $$get(showString)(mapObjectString)(k)($2)._2)(toUnfoldable9($1)))($4))((v2) => $0.pure($Tuple(
18319
18539
  v2._1,
18320
18540
  $Tuple(v2._2._1, insert(ordVertex)($3)()(v2._2._2))
18321
18541
  ))));
@@ -18327,35 +18547,35 @@ var match = (dictMonadWithGraphAlloc) => {
18327
18547
  };
18328
18548
  var closeDefs = (dictMonadWithGraphAlloc) => {
18329
18549
  const Monad0 = dictMonadWithGraphAlloc.MonadWithGraph2().Monad0();
18330
- const Functor0 = Monad0.Bind1().Apply0().Functor0();
18331
18550
  const traverse2 = traversableDict.traverse(Monad0.Applicative0());
18332
- return (\u03B3) => (\u03C1) => (\u03B1s) => Functor0.map(Env)(traverse2((\u03C3) => {
18551
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
18552
+ return (\u03B3) => (\u03C1) => (\u03B1s) => Monad0.Bind1().Apply0().Functor0().map(Env)(traverse2((\u03C3) => {
18333
18553
  const \u03C1$p = forDefs(\u03C1)(\u03C3);
18334
- const $0 = $BaseVal(
18554
+ return $$new(Val)(\u03B1s)($BaseVal(
18335
18555
  "Fun",
18336
18556
  $Fun(
18337
18557
  "Closure",
18338
18558
  (() => {
18339
- const $02 = union1(fv(\u03C1$p))(fVElim.fv(\u03C3));
18559
+ const $0 = union1(fv(\u03C1$p))(fVElim.fv(\u03C3));
18340
18560
  return filterWithKey2((x) => {
18341
- const $1 = setSet(ordString).member(x)($02);
18561
+ const $1 = setSet(ordString).member(x)($0);
18342
18562
  return (v) => $1;
18343
18563
  })(\u03B3);
18344
18564
  })(),
18345
18565
  \u03C1$p,
18346
18566
  \u03C3
18347
18567
  )
18348
- );
18349
- return Functor0.map((f) => f($0))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(\u03B1s)));
18568
+ ));
18350
18569
  })(\u03C1));
18351
18570
  };
18352
18571
  var $$eval = (dictMonadWithGraphAlloc) => {
18353
18572
  const MonadError1 = dictMonadWithGraphAlloc.MonadError1();
18354
18573
  const withMsg2 = withMsg(MonadError1);
18355
18574
  const MonadThrow0 = MonadError1.MonadThrow0();
18575
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
18356
18576
  const Monad0 = dictMonadWithGraphAlloc.MonadWithGraph2().Monad0();
18357
18577
  const Bind1 = Monad0.Bind1();
18358
- const Functor0 = Bind1.Apply0().Functor0();
18578
+ const $0 = Bind1.Apply0().Functor0();
18359
18579
  const Applicative0 = Monad0.Applicative0();
18360
18580
  const traverse2 = traversableList.traverse(Applicative0);
18361
18581
  const traverse3 = traversablePair.traverse(Applicative0);
@@ -18371,30 +18591,32 @@ var $$eval = (dictMonadWithGraphAlloc) => {
18371
18591
  return withMsg2("Variable lookup")(lookup$p(MonadThrow0)(showString)(mapEnvStringVal)(v1._1)(v));
18372
18592
  }
18373
18593
  if (v1.tag === "Int") {
18374
- return Functor0.map((f) => f($BaseVal("Int", v1._2)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v1._1)()(v2))));
18594
+ return $$new(Val)(insert(ordVertex)(v1._1)()(v2))($BaseVal("Int", v1._2));
18375
18595
  }
18376
18596
  if (v1.tag === "Float") {
18377
- return Functor0.map((f) => f($BaseVal("Float", v1._2)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v1._1)()(v2))));
18597
+ return $$new(Val)(insert(ordVertex)(v1._1)()(v2))($BaseVal("Float", v1._2));
18378
18598
  }
18379
18599
  if (v1.tag === "Str") {
18380
- return Functor0.map((f) => f($BaseVal("Str", v1._2)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v1._1)()(v2))));
18600
+ return $$new(Val)(insert(ordVertex)(v1._1)()(v2))($BaseVal("Str", v1._2));
18381
18601
  }
18382
18602
  if (v1.tag === "Dictionary") {
18383
- const $0 = v1._1;
18384
- return Bind1.bind(Functor0.map(unzip4)(traverse2(traverse3((() => {
18385
- const $1 = $$eval(dictMonadWithGraphAlloc)(v);
18386
- return (a) => $1(a)(v2);
18603
+ const $1 = v1._1;
18604
+ return Bind1.bind($0.map(unzip4)(traverse2(traverse3((() => {
18605
+ const $2 = $$eval(dictMonadWithGraphAlloc)(v);
18606
+ return (a) => $2(a)(v2);
18387
18607
  })()))(v1._2)))((v3) => {
18388
18608
  const v4 = unzip(listMap((v$1) => $Tuple(v$1._2.tag === "Str" ? v$1._2._1 : typeError(v$1._2)("Str"), v$1._1))(v3._1));
18389
- const $1 = $BaseVal("Dictionary", fromFoldable18(zipWith2(Tuple)(v4._1)(zipWith2(Tuple)(v4._2)(v3._2))));
18390
- return Functor0.map((f) => f($1))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)($0)()(v2))));
18609
+ return $$new(Val)(insert(ordVertex)($1)()(v2))($BaseVal(
18610
+ "Dictionary",
18611
+ fromFoldable17(zipWith2(Tuple)(v4._1)(zipWith2(Tuple)(v4._2)(v3._2)))
18612
+ ));
18391
18613
  });
18392
18614
  }
18393
18615
  if (v1.tag === "Constr") {
18394
- const $0 = v1._2;
18395
- const $1 = v1._3;
18396
- const $2 = v1._1;
18397
- return Bind1.bind(checkArity3($0)((() => {
18616
+ const $1 = v1._2;
18617
+ const $2 = v1._3;
18618
+ const $3 = v1._1;
18619
+ return Bind1.bind(checkArity3($1)((() => {
18398
18620
  const go = (go$a0$copy) => (go$a1$copy) => {
18399
18621
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
18400
18622
  while (go$c) {
@@ -18413,67 +18635,69 @@ var $$eval = (dictMonadWithGraphAlloc) => {
18413
18635
  }
18414
18636
  return go$r;
18415
18637
  };
18416
- return go(0)($1);
18638
+ return go(0)($2);
18417
18639
  })()))(() => Bind1.bind(traverse2((() => {
18418
- const $3 = $$eval(dictMonadWithGraphAlloc)(v);
18419
- return (a) => $3(a)(v2);
18420
- })())($1))((vs) => Functor0.map((f) => f($BaseVal("Constr", $0, vs)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)($2)()(v2))))));
18640
+ const $4 = $$eval(dictMonadWithGraphAlloc)(v);
18641
+ return (a) => $4(a)(v2);
18642
+ })())($2))((vs) => $$new(Val)(insert(ordVertex)($3)()(v2))($BaseVal("Constr", $1, vs))));
18421
18643
  }
18422
18644
  if (v1.tag === "Matrix") {
18423
- const $0 = v1._2;
18424
- const $1 = v1._3._1;
18425
- const $2 = v1._3._2;
18426
- const $3 = v1._1;
18645
+ const $1 = v1._2;
18646
+ const $2 = v1._3._1;
18647
+ const $3 = v1._3._2;
18648
+ const $4 = v1._1;
18427
18649
  return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._4)(v2))((v3) => {
18428
18650
  const v5 = intPair.unpack(v3._2);
18429
- const $4 = v5._1._1;
18430
- const $5 = v5._2._1;
18431
- const $6 = v5._1._2;
18432
- const $7 = v5._2._2;
18433
- return Bind1.bind(check(MonadThrow0)(greaterThanOrEq($Tuple($4, $5))($Tuple(1, 1)))("array must be at least (" + show3($Tuple(1, 1)) + "); got (" + show3($Tuple(
18434
- $4,
18435
- $5
18436
- )) + ")"))(() => Bind1.bind(sequence1(arrayBind(range(1)($4))((i) => [
18437
- sequence1(arrayBind(range(1)($5))((j) => [
18651
+ const $5 = v5._1._1;
18652
+ const $6 = v5._2._1;
18653
+ const $7 = v5._1._2;
18654
+ const $8 = v5._2._2;
18655
+ return Bind1.bind(check(MonadThrow0)(greaterThanOrEq($Tuple($5, $6))($Tuple(1, 1)))("array must be at least (" + show3($Tuple(1, 1)) + "); got (" + show3($Tuple(
18656
+ $5,
18657
+ $6
18658
+ )) + ")"))(() => Bind1.bind(sequence1(arrayBind(range(1)($5))((i) => [
18659
+ sequence1(arrayBind(range(1)($6))((j) => [
18438
18660
  $$eval(dictMonadWithGraphAlloc)(unionWith2((v$1) => identity14)(v)(disjointUnion2((() => {
18439
- const $8 = {};
18440
- $8[$1] = $Val($6, $BaseVal("Int", i));
18441
- return $8;
18661
+ const $9 = {};
18662
+ $9[$2] = $Val($7, $BaseVal("Int", i));
18663
+ return $9;
18442
18664
  })())((() => {
18443
- const $8 = {};
18444
- $8[$2] = $Val($7, $BaseVal("Int", j));
18445
- return $8;
18446
- })())))($0)(v2)
18665
+ const $9 = {};
18666
+ $9[$3] = $Val($8, $BaseVal("Int", j));
18667
+ return $9;
18668
+ })())))($1)(v2)
18447
18669
  ]))
18448
- ])))((vss) => Functor0.map((f) => f($BaseVal("Matrix", $Tuple(vss, $Tuple($Tuple($4, $6), $Tuple($5, $7))))))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)($3)()(v2))))));
18670
+ ])))((vss) => $$new(Val)(insert(ordVertex)($4)()(v2))($BaseVal(
18671
+ "Matrix",
18672
+ $Tuple(vss, $Tuple($Tuple($5, $7), $Tuple($6, $8)))
18673
+ ))));
18449
18674
  });
18450
18675
  }
18451
18676
  if (v1.tag === "Lambda") {
18452
- const $0 = $BaseVal(
18677
+ return $$new(Val)(insert(ordVertex)(v1._1)()(v2))($BaseVal(
18453
18678
  "Fun",
18454
18679
  $Fun(
18455
18680
  "Closure",
18456
18681
  (() => {
18457
- const $02 = fVElim.fv(v1._2);
18682
+ const $1 = fVElim.fv(v1._2);
18458
18683
  return filterWithKey2((x) => {
18459
- const $1 = setSet(ordString).member(x)($02);
18460
- return (v$1) => $1;
18684
+ const $2 = setSet(ordString).member(x)($1);
18685
+ return (v$1) => $2;
18461
18686
  })(v);
18462
18687
  })(),
18463
18688
  empty,
18464
18689
  v1._2
18465
18690
  )
18466
- );
18467
- return Functor0.map((f) => f($0))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v1._1)()(v2))));
18691
+ ));
18468
18692
  }
18469
18693
  if (v1.tag === "Project") {
18470
- const $0 = v1._2;
18694
+ const $1 = v1._2;
18471
18695
  return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1)(v2))((v3) => {
18472
18696
  if (v3._2.tag === "Dictionary") {
18473
- return withMsg2("Dict lookup")(orElse(MonadThrow0)('Key "' + $0 + '" not found')((() => {
18474
- const $1 = _lookup(Nothing, Just, $0, v3._2._1);
18475
- if ($1.tag === "Just") {
18476
- return $Maybe("Just", $1._1._2);
18697
+ return withMsg2("Dict lookup")(orElse(MonadThrow0)('Key "' + $1 + '" not found')((() => {
18698
+ const $2 = _lookup(Nothing, Just, $1, v3._2._1);
18699
+ if ($2.tag === "Just") {
18700
+ return $Maybe("Just", $2._1._2);
18477
18701
  }
18478
18702
  return Nothing;
18479
18703
  })()));
@@ -18482,14 +18706,14 @@ var $$eval = (dictMonadWithGraphAlloc) => {
18482
18706
  });
18483
18707
  }
18484
18708
  if (v1.tag === "DProject") {
18485
- const $0 = v1._2;
18486
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)($0)(v2))((v$p) => {
18709
+ const $1 = v1._2;
18710
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)($1)(v2))((v$p) => {
18487
18711
  if (v3._2.tag === "Dictionary") {
18488
18712
  if (v$p._2.tag === "Str") {
18489
18713
  return withMsg2("Dict lookup")(orElse(MonadThrow0)('Key "' + v$p._2._1 + '" not found')((() => {
18490
- const $1 = _lookup(Nothing, Just, v$p._2._1, v3._2._1);
18491
- if ($1.tag === "Just") {
18492
- return $Maybe("Just", $1._1._2);
18714
+ const $2 = _lookup(Nothing, Just, v$p._2._1, v3._2._1);
18715
+ if ($2.tag === "Just") {
18716
+ return $Maybe("Just", $2._1._2);
18493
18717
  }
18494
18718
  return Nothing;
18495
18719
  })()));
@@ -18500,18 +18724,18 @@ var $$eval = (dictMonadWithGraphAlloc) => {
18500
18724
  }));
18501
18725
  }
18502
18726
  if (v1.tag === "App") {
18503
- const $0 = v1._2;
18504
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)($0)(v2))((v$p) => apply2(dictMonadWithGraphAlloc)(v3)(v$p)));
18727
+ const $1 = v1._2;
18728
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1)(v2))((v3) => Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)($1)(v2))((v$p) => apply2(dictMonadWithGraphAlloc)(v3)(v$p)));
18505
18729
  }
18506
18730
  if (v1.tag === "Let") {
18507
- const $0 = v1._2;
18508
- const $1 = v1._1._1;
18509
- return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1._2)(v2))((v3) => Bind1.bind(match1(v3)($1))((v4) => $$eval(dictMonadWithGraphAlloc)(unionWith2((v$1) => identity14)(v)(v4._1))($0)(v4._2._2)));
18731
+ const $1 = v1._2;
18732
+ const $2 = v1._1._1;
18733
+ return Bind1.bind($$eval(dictMonadWithGraphAlloc)(v)(v1._1._2)(v2))((v3) => Bind1.bind(match1(v3)($2))((v4) => $$eval(dictMonadWithGraphAlloc)(unionWith2((v$1) => identity14)(v)(v4._1))($1)(v4._2._2)));
18510
18734
  }
18511
18735
  if (v1.tag === "LetRec") {
18512
- const $0 = v1._2;
18513
- const $1 = v1._1._1;
18514
- return Bind1.bind(closeDefs1(v)(v1._1._2)(insert(ordVertex)($1)()(v2)))((\u03B3$p) => $$eval(dictMonadWithGraphAlloc)(unionWith2((v$1) => identity14)(v)(\u03B3$p))($0)(insert(ordVertex)($1)()(v2)));
18736
+ const $1 = v1._2;
18737
+ const $2 = v1._1._1;
18738
+ return Bind1.bind(closeDefs1(v)(v1._1._2)(insert(ordVertex)($2)()(v2)))((\u03B3$p) => $$eval(dictMonadWithGraphAlloc)(unionWith2((v$1) => identity14)(v)(\u03B3$p))($1)(insert(ordVertex)($2)()(v2)));
18515
18739
  }
18516
18740
  fail();
18517
18741
  };
@@ -18520,7 +18744,7 @@ var apply2 = (dictMonadWithGraphAlloc) => {
18520
18744
  const Bind1 = dictMonadWithGraphAlloc.MonadWithGraph2().Monad0().Bind1();
18521
18745
  const closeDefs1 = closeDefs(dictMonadWithGraphAlloc);
18522
18746
  const match1 = match(dictMonadWithGraphAlloc);
18523
- const Functor0 = Bind1.Apply0().Functor0();
18747
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
18524
18748
  const MonadError1 = dictMonadWithGraphAlloc.MonadError1();
18525
18749
  const MonadThrow0 = MonadError1.MonadThrow0();
18526
18750
  return (v) => (v1) => {
@@ -18533,8 +18757,7 @@ var apply2 = (dictMonadWithGraphAlloc) => {
18533
18757
  return Bind1.bind(closeDefs1($2)(v._2._1._2)($$$Map("Two", Leaf2, $1, void 0, Leaf2)))((\u03B32) => Bind1.bind(match1(v1)($3))((v3) => $$eval(dictMonadWithGraphAlloc)(unionWith2((v$1) => identity14)(unionWith2((v$1) => identity14)($2)(\u03B32))(v3._1))(v3._2._1.tag === "ContExpr" ? v3._2._1._1 : throwException(error("Expression expected"))())(insert(ordVertex)($1)()(v3._2._2))));
18534
18758
  }
18535
18759
  if (v._2._1.tag === "Foreign") {
18536
- const $1 = v._2._1._1._1;
18537
- const $2 = v._2._1._1._2;
18760
+ const $1 = v._2._1._1._2;
18538
18761
  const vs$p = foldableList.foldr(Cons)($List("Cons", v1, Nil))(v._2._1._2);
18539
18762
  if ((() => {
18540
18763
  const go = (go$a0$copy) => (go$a1$copy) => {
@@ -18555,24 +18778,19 @@ var apply2 = (dictMonadWithGraphAlloc) => {
18555
18778
  }
18556
18779
  return go$r;
18557
18780
  };
18558
- return $2._1.arity > go(0)(vs$p);
18781
+ return $1._1.arity > go(0)(vs$p);
18559
18782
  })()) {
18560
- return Functor0.map((f) => f($BaseVal("Fun", $Fun("Foreign", $Tuple($1, $2), vs$p))))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
18561
- "Two",
18562
- Leaf2,
18563
- v._1,
18564
- void 0,
18565
- Leaf2
18566
- ))));
18783
+ return $$new(Val)($$$Map("Two", Leaf2, v._1, void 0, Leaf2))($BaseVal(
18784
+ "Fun",
18785
+ $Fun("Foreign", $Tuple(v._2._1._1._1, $1), vs$p)
18786
+ ));
18567
18787
  }
18568
- return $2._1["op'"](dictMonadWithGraphAlloc)(MonadError1)(vs$p);
18788
+ return $1._1["op'"](dictMonadWithGraphAlloc)(MonadError1)(vs$p);
18569
18789
  }
18570
18790
  if (v._2._1.tag === "PartialConstr") {
18571
- const $1 = v._2._1._1;
18572
- const $2 = v._2._1._2;
18573
- const $3 = v._1;
18574
- const n = defined(arity(monadThrowExceptT(monadIdentity))($1));
18575
- return Bind1.bind(check(MonadThrow0)((() => {
18791
+ const $1 = v._1;
18792
+ const n = defined(arity(monadThrowExceptT(monadIdentity))(v._2._1._1));
18793
+ const v$p = (() => {
18576
18794
  const go = (go$a0$copy) => (go$a1$copy) => {
18577
18795
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
18578
18796
  while (go$c) {
@@ -18591,50 +18809,42 @@ var apply2 = (dictMonadWithGraphAlloc) => {
18591
18809
  }
18592
18810
  return go$r;
18593
18811
  };
18594
- return go(0)($2) < n;
18595
- })())("Too many arguments to " + showCtr($1)))(() => {
18596
- if ((() => {
18597
- const go = (go$a0$copy) => (go$a1$copy) => {
18598
- let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
18599
- while (go$c) {
18600
- const b = go$a0, v$1 = go$a1;
18601
- if (v$1.tag === "Nil") {
18602
- go$c = false;
18603
- go$r = b;
18604
- continue;
18605
- }
18606
- if (v$1.tag === "Cons") {
18607
- go$a0 = b + 1 | 0;
18608
- go$a1 = v$1._2;
18609
- continue;
18610
- }
18611
- fail();
18812
+ return go(0)(v._2._1._2) < (n - 1 | 0);
18813
+ })() ? $BaseVal(
18814
+ "Fun",
18815
+ $Fun(
18816
+ "PartialConstr",
18817
+ v._2._1._1,
18818
+ foldableList.foldr(Cons)($List("Cons", v1, Nil))(v._2._1._2)
18819
+ )
18820
+ ) : $BaseVal("Constr", v._2._1._1, foldableList.foldr(Cons)($List("Cons", v1, Nil))(v._2._1._2));
18821
+ return Bind1.bind(check(MonadThrow0)((() => {
18822
+ const go = (go$a0$copy) => (go$a1$copy) => {
18823
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
18824
+ while (go$c) {
18825
+ const b = go$a0, v$1 = go$a1;
18826
+ if (v$1.tag === "Nil") {
18827
+ go$c = false;
18828
+ go$r = b;
18829
+ continue;
18612
18830
  }
18613
- return go$r;
18614
- };
18615
- return go(0)($2) < (n - 1 | 0);
18616
- })()) {
18617
- const $42 = $BaseVal(
18618
- "Fun",
18619
- $Fun("PartialConstr", $1, foldableList.foldr(Cons)($List("Cons", v1, Nil))($2))
18620
- );
18621
- return Functor0.map((f) => f($42))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
18622
- "Two",
18623
- Leaf2,
18624
- $3,
18625
- void 0,
18626
- Leaf2
18627
- ))));
18628
- }
18629
- const $4 = $BaseVal("Constr", $1, foldableList.foldr(Cons)($List("Cons", v1, Nil))($2));
18630
- return Functor0.map((f) => f($4))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
18631
- "Two",
18632
- Leaf2,
18633
- $3,
18634
- void 0,
18635
- Leaf2
18636
- ))));
18637
- });
18831
+ if (v$1.tag === "Cons") {
18832
+ go$a0 = b + 1 | 0;
18833
+ go$a1 = v$1._2;
18834
+ continue;
18835
+ }
18836
+ fail();
18837
+ }
18838
+ return go$r;
18839
+ };
18840
+ return go(0)(v._2._1._2) < n;
18841
+ })())("Too many arguments to " + showCtr(v._2._1._1)))(() => $$new(Val)($$$Map(
18842
+ "Two",
18843
+ Leaf2,
18844
+ $1,
18845
+ void 0,
18846
+ Leaf2
18847
+ ))(v$p));
18638
18848
  }
18639
18849
  }
18640
18850
  return $0(v1);
@@ -18700,13 +18910,13 @@ var graphEval = (dictMonadError) => {
18700
18910
  const $1 = v["\u03B3"];
18701
18911
  const $2 = spyFunWhen(false)("fwdSlice")((x) => $Tuple(showVertices(x._1), showEdgeList(toEdgeList(graphGraphImpl)(x._2))))(showGraph(graphGraphImpl))(fwdSlice2);
18702
18912
  const $3 = spyFunWhen(false)("bwdSlice")((x) => $Tuple(showVertices(x._1), showEdgeList(toEdgeList(graphGraphImpl)(x._2))))(showGraph(graphGraphImpl))(bwdSlice2);
18703
- return Monad0.Bind1().bind(runAllocT(Monad0)(bindStateT2.bind(alloc(e))((e\u03B1) => bindStateT2.bind(runWithGraphT_spy2(eval1($1)(e\u03B1)(Leaf2))(foldableEnvExpr.foldl((m) => (a) => insert(ordVertex)(a)()(m))(Leaf2)($EnvExpr(
18913
+ return Monad0.Bind1().bind(runAllocT(Monad0)(bindStateT2.bind(alloc(e))((e\u03B1) => bindStateT2.bind(runWithGraphT_spy2(eval1($1)(e\u03B1)(Leaf2))(verticesEnvExprVertex.vertices($EnvExpr(
18704
18914
  $1,
18705
18915
  e\u03B1
18706
18916
  ))))((v1) => {
18707
18917
  const $4 = v1._1;
18708
18918
  const $5 = v1._2;
18709
- return bindStateT2.bind(check2(difference2(ordVertex)(foldableBaseVal.foldl((m) => (a) => insert(ordVertex)(a)()(m))(insert(ordVertex)($5._1)()(Leaf2))($5._2))($4._1.vertices).tag === "Leaf")("outputs in graph"))(() => applicativeStateT(Monad0).pure($Tuple(
18919
+ return bindStateT2.bind(check2(difference2(ordDVertex)(verticesValVertex.vertices($5))(verticesGraphImpl.vertices($4)).tag === "Leaf")("outputs in graph"))(() => applicativeStateT(Monad0).pure($Tuple(
18710
18920
  $4,
18711
18921
  $Tuple($EnvExpr($1, e\u03B1), $5)
18712
18922
  )));
@@ -21314,8 +21524,8 @@ var sepBy_try = (p) => (sep) => {
21314
21524
  };
21315
21525
 
21316
21526
  // output-es/Parse/index.js
21317
- var fromFoldable19 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
21318
- var fromFoldable110 = /* @__PURE__ */ (() => fromFoldableImpl(foldableNonEmptyList.foldr))();
21527
+ var fromFoldable18 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
21528
+ var fromFoldable19 = /* @__PURE__ */ (() => fromFoldableImpl(foldableNonEmptyList.foldr))();
21319
21529
  var onlyIf = (b) => (a) => {
21320
21530
  const $0 = b ? (state1, v, v1, v2, done) => done(state1, void 0) : fail2("No alternative");
21321
21531
  return (state1, more, lift12, $$throw2, done) => more((v1) => $0(state1, more, lift12, $$throw2, (state2, a$1) => more((v2) => done(state2, a))));
@@ -21323,7 +21533,7 @@ var onlyIf = (b) => (a) => {
21323
21533
  var choose2 = /* @__PURE__ */ choose(altParserT);
21324
21534
  var fanin3 = /* @__PURE__ */ fanin(categoryFn)(choiceFn);
21325
21535
  var identity24 = (x) => x;
21326
- var operators = (binaryOp) => fromFoldable19(listMap(arrayMap((v) => $Operator(
21536
+ var operators = (binaryOp) => fromFoldable18(listMap(arrayMap((v) => $Operator(
21327
21537
  "Infix",
21328
21538
  (() => {
21329
21539
  const $0 = binaryOp(v.op);
@@ -21333,7 +21543,7 @@ var operators = (binaryOp) => fromFoldable19(listMap(arrayMap((v) => $Operator(
21333
21543
  };
21334
21544
  })(),
21335
21545
  v.assoc
21336
- )))(listMap(fromFoldable110)(groupBy2((x) => (y) => x.prec === y.prec)(sortBy2((x) => (x$1) => {
21546
+ )))(listMap(fromFoldable19)(groupBy2((x) => (y) => x.prec === y.prec)(sortBy2((x) => (x$1) => {
21337
21547
  const $0 = ordInt.compare(x.prec)(x$1.prec);
21338
21548
  if ($0 === "GT") {
21339
21549
  return LT;
@@ -22824,7 +23034,7 @@ var $ForeignTrace$p = (_1, _2) => ({ tag: "ForeignTrace'", _1, _2 });
22824
23034
  var $Match = (tag, _1, _2) => ({ tag, _1, _2 });
22825
23035
  var $Trace = (tag, _1, _2, _3, _4) => ({ tag, _1, _2, _3, _4 });
22826
23036
  var $VarDef3 = (_1, _2) => ({ tag: "VarDef", _1, _2 });
22827
- var unions = /* @__PURE__ */ (() => {
23037
+ var unions2 = /* @__PURE__ */ (() => {
22828
23038
  const go = (go$a0$copy) => (go$a1$copy) => {
22829
23039
  let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
22830
23040
  while (go$c) {
@@ -22855,7 +23065,7 @@ var bVMatch = {
22855
23065
  return Leaf2;
22856
23066
  }
22857
23067
  if (v.tag === "MatchConstr") {
22858
- return unions(listMap(bVMatch.bv)(v._2));
23068
+ return unions2(listMap(bVMatch.bv)(v._2));
22859
23069
  }
22860
23070
  if (v.tag === "MatchDict") {
22861
23071
  return fold((z) => (v$1) => union(ordString)(z))(Leaf2)(_fmapObject(v._1, bVMatch.bv));
@@ -22869,8 +23079,8 @@ var disjointUnion3 = /* @__PURE__ */ disjointUnion(mapEnvStringVal);
22869
23079
  var fromFoldable20 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
22870
23080
  var show23 = /* @__PURE__ */ (() => showSet(showString).show)();
22871
23081
  var toUnfoldable11 = /* @__PURE__ */ toUnfoldable4(unfoldableList);
22872
- var fromFoldable111 = /* @__PURE__ */ fromFoldable2(foldableList);
22873
- var union6 = /* @__PURE__ */ (() => setSet(ordString).union)();
23082
+ var fromFoldable110 = /* @__PURE__ */ fromFoldable2(foldableList);
23083
+ var union7 = /* @__PURE__ */ (() => setSet(ordString).union)();
22874
23084
  var fv2 = /* @__PURE__ */ (() => fVDict(fVElim).fv)();
22875
23085
  var unzip5 = /* @__PURE__ */ unzip3(functorList);
22876
23086
  var fromFoldable25 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
@@ -22996,7 +23206,7 @@ var match4 = (dictMonadError) => {
22996
23206
  v2._1,
22997
23207
  $Tuple(
22998
23208
  v2._2._1,
22999
- $Tuple($1.meet($4)(v2._2._2._1), $Match("MatchDict", fromFoldable111(zipWith2(Tuple)(xs$p)(v2._2._2._2))))
23209
+ $Tuple($1.meet($4)(v2._2._2._1), $Match("MatchDict", fromFoldable110(zipWith2(Tuple)(xs$p)(v2._2._2._2))))
23000
23210
  )
23001
23211
  )));
23002
23212
  });
@@ -23018,7 +23228,7 @@ var closeDefs2 = (\u03B3) => (\u03C1) => (\u03B1) => _fmapObject(
23018
23228
  $Fun(
23019
23229
  "Closure",
23020
23230
  (() => {
23021
- const $0 = union6(fv2(\u03C1$p))(fVElim.fv(\u03C3));
23231
+ const $0 = union7(fv2(\u03C1$p))(fVElim.fv(\u03C3));
23022
23232
  return filterWithKey2((x) => {
23023
23233
  const $1 = setSet(ordString).member(x)($0);
23024
23234
  return (v) => $1;
@@ -23076,7 +23286,7 @@ var $$eval2 = (dictMonadError) => {
23076
23286
  return $Tuple(unzip5($3._1), unzip5($3._2));
23077
23287
  })(traverse2(traverse3((e) => $$eval2(dictMonadError)(dictAnn)($EnvExpr($2, e))(v1)))(v._2._2)))((v2) => {
23078
23288
  const v3 = unzip5(listMap((v$1) => $Tuple(v$1._2.tag === "Str" ? v$1._2._1 : typeError(v$1._2)("Str"), v$1._1))(v2._1._2));
23079
- const d = fromFoldable111(zipWith2(Tuple)(v3._1)(zipWith2(Tuple)(v3._2)(v2._2._2)));
23289
+ const d = fromFoldable110(zipWith2(Tuple)(v3._1)(zipWith2(Tuple)(v3._2)(v2._2._2)));
23080
23290
  return Applicative0.pure($Tuple(
23081
23291
  $Trace(
23082
23292
  "Dictionary",
@@ -23439,7 +23649,7 @@ var apply22 = (dictMonadError) => {
23439
23649
  var disjointUnion_inv2 = /* @__PURE__ */ disjointUnion_inv(ordString)(mapEnvStringVal);
23440
23650
  var toUnfoldable15 = /* @__PURE__ */ toAscUnfoldable(unfoldableList);
23441
23651
  var fromFoldable21 = /* @__PURE__ */ fromFoldable2(foldableList);
23442
- var fromFoldable112 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
23652
+ var fromFoldable111 = /* @__PURE__ */ (() => foldableSet.foldl((m) => (a) => insert(ordString)(a)()(m))(Leaf2))();
23443
23653
  var botOfUnit$x215Raw$x2152 = (dictBoundedJoinSemilattice) => ({
23444
23654
  botOf: (() => {
23445
23655
  const $0 = dictBoundedJoinSemilattice.bot;
@@ -23450,7 +23660,7 @@ var botOfUnit$x215Raw$x2152 = (dictBoundedJoinSemilattice) => ({
23450
23660
  return (x) => $Tuple($0, $1(x._2));
23451
23661
  })()
23452
23662
  });
23453
- var union7 = /* @__PURE__ */ (() => setSet(ordString).union)();
23663
+ var union8 = /* @__PURE__ */ (() => setSet(ordString).union)();
23454
23664
  var disjointUnion4 = /* @__PURE__ */ disjointUnion(mapEnvStringVal);
23455
23665
  var foldl1 = /* @__PURE__ */ (() => foldable1NonEmpty(foldableList).foldl1)();
23456
23666
  var matchManyBwd = (dictAnn) => (v) => (v1) => (v2) => (v3) => {
@@ -23515,7 +23725,7 @@ var matchBwd = (dictAnn) => {
23515
23725
  const v5 = matchManyBwd(dictAnn)(v)(v1)(v2)(reverse2(v4._2));
23516
23726
  return $Tuple(
23517
23727
  $Val(v2, $BaseVal("Dictionary", fromFoldable21(zipWith2(Tuple)(v4._1)(listMap((v6) => $Tuple(bot1, v6))(v5._1))))),
23518
- $Elim("ElimDict", fromFoldable112(mapObjectString.keys(v3._1)), v5._2)
23728
+ $Elim("ElimDict", fromFoldable111(mapObjectString.keys(v3._1)), v5._2)
23519
23729
  );
23520
23730
  }
23521
23731
  fail();
@@ -23618,7 +23828,7 @@ var evalBwd$p = (dictAnn) => {
23618
23828
  };
23619
23829
  const $5 = (t, v2, \u03C1) => {
23620
23830
  const v3 = evalBwd$p(dictAnn)(v2)(t);
23621
- const v4 = append_inv(ordString)(mapEnvStringVal)(fromFoldable112(mapObjectString.keys(\u03C1)))(v3._1);
23831
+ const v4 = append_inv(ordString)(mapEnvStringVal)(fromFoldable111(mapObjectString.keys(\u03C1)))(v3._1);
23622
23832
  const v5 = closeDefsBwd1(v4._2);
23623
23833
  return $Tuple(
23624
23834
  unionWith2(joinSemilatticeVal(JoinSemilattice0).join)(v4._1)(v5._1),
@@ -23766,7 +23976,7 @@ var evalBwd$p = (dictAnn) => {
23766
23976
  })((() => {
23767
23977
  const $13 = (v32) => {
23768
23978
  const v42 = evalBwd$p(dictAnn)(definitely("index within bounds")(index(definitely("index within bounds")(index($9)(v32._1 - 1 | 0)))(v32._2 - 1 | 0)))(definitely("index within bounds")(index(definitely("index within bounds")(index($8)(v32._1 - 1 | 0)))(v32._2 - 1 | 0)));
23769
- const v5 = append_inv(ordString)(mapEnvStringVal)(union7($$$Map(
23979
+ const v5 = append_inv(ordString)(mapEnvStringVal)(union8($$$Map(
23770
23980
  "Two",
23771
23981
  Leaf2,
23772
23982
  $10,
@@ -23916,7 +24126,7 @@ var binary2 = /* @__PURE__ */ binary(boundedJoinSemilatticeUni);
23916
24126
  var binaryZero2 = /* @__PURE__ */ binaryZero(boundedJoinSemilatticeUni);
23917
24127
  var binaryZero1 = /* @__PURE__ */ (() => binaryZero2({ isZero: fanin2(isZeroInt.isZero)(isZeroNumber.isZero) }))();
23918
24128
  var binaryZero22 = /* @__PURE__ */ binaryZero2(isZeroInt);
23919
- var pow3 = /* @__PURE__ */ union5(asNumberIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)((x) => (y) => pow(toNumber(x))(toNumber(y)))(pow);
24129
+ var pow3 = /* @__PURE__ */ union6(asNumberIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)((x) => (y) => pow(toNumber(x))(toNumber(y)))(pow);
23920
24130
  var numToStr = (v2) => {
23921
24131
  if (v2.tag === "Left") {
23922
24132
  return showIntImpl(v2._1);
@@ -23926,27 +24136,25 @@ var numToStr = (v2) => {
23926
24136
  }
23927
24137
  fail();
23928
24138
  };
23929
- var notEquals = /* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((x) => (y) => x !== y)(/* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((x) => (y) => x !== y)((x) => (y) => x !== y));
24139
+ var notEquals = /* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((x) => (y) => x !== y)(/* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((x) => (y) => x !== y)((x) => (y) => x !== y));
23930
24140
  var matrixUpdate = /* @__PURE__ */ $Tuple(
23931
24141
  "matrixUpdate",
23932
24142
  /* @__PURE__ */ $ForeignOp$p({
23933
24143
  arity: 3,
23934
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
23935
- const MonadThrow0 = dictMonadError.MonadThrow0();
23936
- const Functor0 = MonadThrow0.Monad0().Bind1().Apply0().Functor0();
23937
- return (v) => {
23938
- if (v.tag === "Cons" && v._1._2.tag === "Matrix" && v._2.tag === "Cons" && v._2._1._2.tag === "Constr" && v._2._1._2._2.tag === "Cons" && v._2._1._2._2._1._2.tag === "Int" && v._2._1._2._2._2.tag === "Cons" && v._2._1._2._2._2._1._2.tag === "Int" && v._2._1._2._2._2._2.tag === "Nil" && v._2._2.tag === "Cons" && v._2._2._2.tag === "Nil" && v._2._1._2._1 === "Pair") {
23939
- const $0 = v._2._2._1;
23940
- const $1 = $BaseVal("Matrix", matrixPut(v._2._1._2._2._1._2._1)(v._2._1._2._2._2._1._2._1)((v$1) => $0)(v._1._2._1));
23941
- return Functor0.map((f) => f($1))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
23942
- "Two",
23943
- Leaf2,
23944
- v._1._1,
23945
- void 0,
23946
- Leaf2
23947
- ))));
23948
- }
23949
- return MonadThrow0.throwError(error("Matrix, pair of integers and value expected"));
24144
+ "op'": (dictMonadWithGraphAlloc) => {
24145
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
24146
+ return (dictMonadError) => {
24147
+ const $$throw2 = $$throw(dictMonadError.MonadThrow0());
24148
+ return (v) => {
24149
+ if (v.tag === "Cons" && v._1._2.tag === "Matrix" && v._2.tag === "Cons" && v._2._1._2.tag === "Constr" && v._2._1._2._2.tag === "Cons" && v._2._1._2._2._1._2.tag === "Int" && v._2._1._2._2._2.tag === "Cons" && v._2._1._2._2._2._1._2.tag === "Int" && v._2._1._2._2._2._2.tag === "Nil" && v._2._2.tag === "Cons" && v._2._2._2.tag === "Nil" && v._2._1._2._1 === "Pair") {
24150
+ const $0 = v._2._2._1;
24151
+ return $$new(Val)($$$Map("Two", Leaf2, v._1._1, void 0, Leaf2))($BaseVal(
24152
+ "Matrix",
24153
+ matrixPut(v._2._1._2._2._1._2._1)(v._2._1._2._2._2._1._2._1)((v$1) => $0)(v._1._2._1)
24154
+ ));
24155
+ }
24156
+ return $$throw2("Matrix, pair of integers and value expected");
24157
+ };
23950
24158
  };
23951
24159
  },
23952
24160
  op: (dictAnn) => (dictMonadError) => {
@@ -24081,10 +24289,10 @@ var log3 = (v2) => {
24081
24289
  }
24082
24290
  fail();
24083
24291
  };
24084
- var lessThanEquals = /* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 <= a2)(/* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 <= a2)((a1) => (a2) => a1 <= a2));
24085
- var lessThan = /* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 < a2)(/* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 < a2)((a1) => (a2) => a1 < a2));
24086
- var greaterThanEquals = /* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 >= a2)(/* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 >= a2)((a1) => (a2) => a1 >= a2));
24087
- var greaterThan = /* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 > a2)(/* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 > a2)((a1) => (a2) => a1 > a2));
24292
+ var lessThanEquals = /* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 <= a2)(/* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 <= a2)((a1) => (a2) => a1 <= a2));
24293
+ var lessThan = /* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 < a2)(/* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 < a2)((a1) => (a2) => a1 < a2));
24294
+ var greaterThanEquals = /* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 >= a2)(/* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 >= a2)((a1) => (a2) => a1 >= a2));
24295
+ var greaterThan = /* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)((a1) => (a2) => a1 > a2)(/* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asNumberString)(asNumberString)((a1) => (a2) => a1 > a2)((a1) => (a2) => a1 > a2));
24088
24296
  var extern = (dictBoundedJoinSemilattice) => {
24089
24297
  const bot = dictBoundedJoinSemilattice.bot;
24090
24298
  return (v) => $Tuple(v._1, $Val(bot, $BaseVal("Fun", $Fun("Foreign", $Tuple(v._1, v._2), Nil))));
@@ -24115,41 +24323,34 @@ var error_ = /* @__PURE__ */ $Tuple(
24115
24323
  op_bwd: (dictAnn) => (v) => throwException(error("unimplemented"))()
24116
24324
  })
24117
24325
  );
24118
- var divide = /* @__PURE__ */ union5(asNumberIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)((x) => (y) => toNumber(x) / toNumber(y))(numDiv);
24326
+ var divide = /* @__PURE__ */ union6(asNumberIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)((x) => (y) => toNumber(x) / toNumber(y))(numDiv);
24119
24327
  var dims = /* @__PURE__ */ $Tuple(
24120
24328
  "dims",
24121
24329
  /* @__PURE__ */ $ForeignOp$p({
24122
24330
  arity: 1,
24123
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
24124
- const MonadThrow0 = dictMonadError.MonadThrow0();
24125
- const Bind1 = MonadThrow0.Monad0().Bind1();
24126
- const Functor0 = Bind1.Apply0().Functor0();
24127
- return (v) => {
24128
- if (v.tag === "Cons" && v._1._2.tag === "Matrix" && v._2.tag === "Nil") {
24129
- const $0 = v._1._2._1._2._2._1;
24130
- const $1 = v._1._1;
24131
- const $2 = v._1._2._1._2._2._2;
24132
- return Bind1.bind(Functor0.map((f) => f($BaseVal("Int", v._1._2._1._2._1._1)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
24133
- "Two",
24134
- Leaf2,
24135
- v._1._2._1._2._1._2,
24136
- void 0,
24137
- Leaf2
24138
- )))))((v1) => Bind1.bind(Functor0.map((f) => f($BaseVal("Int", $0)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
24139
- "Two",
24140
- Leaf2,
24141
- $2,
24142
- void 0,
24143
- Leaf2
24144
- )))))((v2) => Functor0.map((f) => f($BaseVal("Constr", "Pair", $List("Cons", v1, $List("Cons", v2, Nil)))))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
24145
- "Two",
24146
- Leaf2,
24147
- $1,
24148
- void 0,
24149
- Leaf2
24150
- ))))));
24151
- }
24152
- return MonadThrow0.throwError(error("Matrix expected"));
24331
+ "op'": (dictMonadWithGraphAlloc) => {
24332
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
24333
+ return (dictMonadError) => {
24334
+ const MonadThrow0 = dictMonadError.MonadThrow0();
24335
+ const $0 = MonadThrow0.Monad0().Bind1();
24336
+ return (v) => {
24337
+ if (v.tag === "Cons" && v._1._2.tag === "Matrix" && v._2.tag === "Nil") {
24338
+ const $1 = v._1._2._1._2._2._1;
24339
+ const $2 = v._1._1;
24340
+ const $3 = v._1._2._1._2._2._2;
24341
+ return $0.bind($$new(Val)($$$Map("Two", Leaf2, v._1._2._1._2._1._2, void 0, Leaf2))($BaseVal(
24342
+ "Int",
24343
+ v._1._2._1._2._1._1
24344
+ )))((v1) => $0.bind($$new(Val)($$$Map("Two", Leaf2, $3, void 0, Leaf2))($BaseVal("Int", $1)))((v2) => $$new(Val)($$$Map(
24345
+ "Two",
24346
+ Leaf2,
24347
+ $2,
24348
+ void 0,
24349
+ Leaf2
24350
+ ))($BaseVal("Constr", "Pair", $List("Cons", v1, $List("Cons", v2, Nil))))));
24351
+ }
24352
+ return MonadThrow0.throwError(error("Matrix expected"));
24353
+ };
24153
24354
  };
24154
24355
  },
24155
24356
  op: (dictAnn) => (dictMonadError) => {
@@ -24208,26 +24409,23 @@ var dict_map = /* @__PURE__ */ $Tuple(
24208
24409
  arity: 2,
24209
24410
  "op'": (dictMonadWithGraphAlloc) => {
24210
24411
  const apply6 = apply2(dictMonadWithGraphAlloc);
24412
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
24211
24413
  return (dictMonadError) => {
24212
24414
  const MonadThrow0 = dictMonadError.MonadThrow0();
24213
24415
  const Monad0 = MonadThrow0.Monad0();
24214
24416
  const Bind1 = Monad0.Bind1();
24215
24417
  const traverse1 = traversableDict.traverse(Monad0.Applicative0());
24216
- const Functor0 = Bind1.Apply0().Functor0();
24217
24418
  return (v) => {
24218
24419
  if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._1._2.tag === "Dictionary" && v._2._2.tag === "Nil") {
24219
24420
  const $0 = v._1;
24220
24421
  const $1 = v._2._1._1;
24221
24422
  return Bind1.bind(traverse1((v2) => {
24222
24423
  const $2 = v2._1;
24223
- return Functor0.map((v3) => $Tuple($2, v3))(apply6($0)(v2._2));
24224
- })(v._2._1._2._1))((d$p) => Functor0.map((f) => f($BaseVal("Dictionary", d$p)))(Functor0.map(Val)(dictMonadWithGraphAlloc.new($$$Map(
24225
- "Two",
24226
- Leaf2,
24227
- $1,
24228
- void 0,
24229
- Leaf2
24230
- )))));
24424
+ return Bind1.Apply0().Functor0().map((v3) => $Tuple($2, v3))(apply6($0)(v2._2));
24425
+ })(v._2._1._2._1))((d$p) => $$new(Val)($$$Map("Two", Leaf2, $1, void 0, Leaf2))($BaseVal(
24426
+ "Dictionary",
24427
+ d$p
24428
+ )));
24231
24429
  }
24232
24430
  return MonadThrow0.throwError(error("Function and dictionary expected"));
24233
24431
  };
@@ -24286,33 +24484,36 @@ var dict_intersectionWith = /* @__PURE__ */ $Tuple(
24286
24484
  arity: 3,
24287
24485
  "op'": (dictMonadWithGraphAlloc) => {
24288
24486
  const apply6 = apply2(dictMonadWithGraphAlloc);
24487
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
24289
24488
  return (dictMonadError) => {
24290
24489
  const MonadThrow0 = dictMonadError.MonadThrow0();
24291
24490
  const Monad0 = MonadThrow0.Monad0();
24292
24491
  const Bind1 = Monad0.Bind1();
24293
- const Apply0 = Bind1.Apply0();
24294
- const $0 = Apply0.Functor0();
24295
- const sequence1 = traversableDict.sequence(Monad0.Applicative0());
24492
+ const Applicative0 = Monad0.Applicative0();
24493
+ const $0 = Bind1.Apply0().Functor0();
24296
24494
  return (v) => {
24297
24495
  if (v.tag === "Cons" && v._2.tag === "Cons" && v._2._1._2.tag === "Dictionary" && v._2._2.tag === "Cons" && v._2._2._1._2.tag === "Dictionary" && v._2._2._2.tag === "Nil") {
24298
24496
  const $1 = v._1;
24299
- return Apply0.apply($0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v._2._2._1._1)()($$$Map(
24300
- "Two",
24301
- Leaf2,
24302
- v._2._1._1,
24303
- void 0,
24304
- Leaf2
24305
- )))))($0.map(Dictionary3)($0.map(DictRep)(sequence1(intersectionWith_Object((v2) => (v3) => {
24306
- const $2 = v2._2;
24307
- const $3 = v3._2;
24308
- return Bind1.bind(dictMonadWithGraphAlloc.new(insert(ordVertex)(v3._1)()($$$Map(
24497
+ const $2 = v._2._1._1;
24498
+ const $3 = v._2._2._1._1;
24499
+ return Bind1.bind($0.map(Dictionary3)($0.map(DictRep)(traversableDict.traverse(Applicative0)(identity15)(intersectionWith_Object((v2) => (v3) => {
24500
+ const $4 = v3._2;
24501
+ const $5 = v2._1;
24502
+ const $6 = v3._1;
24503
+ return Bind1.bind(Bind1.bind(apply6($1)(v2._2))((a) => apply6(a)($4)))((v4) => Bind1.bind($$new(Val)(insert(ordVertex)($6)()($$$Map(
24309
24504
  "Two",
24310
24505
  Leaf2,
24311
- v2._1,
24506
+ $5,
24312
24507
  void 0,
24313
24508
  Leaf2
24314
- ))))((\u03B2$p$p) => $0.map(Tuple(\u03B2$p$p))(Bind1.bind(apply6($1)($2))((a) => apply6(a)($3))));
24315
- })(v._2._1._2._1)(v._2._2._1._2._1)))));
24509
+ )))(v4._2))((v5) => Applicative0.pure($Tuple(v5._1, v4))));
24510
+ })(v._2._1._2._1)(v._2._2._1._2._1)))))((v$p) => $$new(Val)(insert(ordVertex)($3)()($$$Map(
24511
+ "Two",
24512
+ Leaf2,
24513
+ $2,
24514
+ void 0,
24515
+ Leaf2
24516
+ )))(v$p));
24316
24517
  }
24317
24518
  return MonadThrow0.throwError(error("Function and two dictionaries expected"));
24318
24519
  };
@@ -24540,21 +24741,22 @@ var dict_disjointUnion = /* @__PURE__ */ $Tuple(
24540
24741
  "dict_disjointUnion",
24541
24742
  /* @__PURE__ */ $ForeignOp$p({
24542
24743
  arity: 2,
24543
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
24544
- const MonadThrow0 = dictMonadError.MonadThrow0();
24545
- const Functor0 = MonadThrow0.Monad0().Bind1().Apply0().Functor0();
24546
- return (v) => {
24547
- if (v.tag === "Cons" && v._1._2.tag === "Dictionary" && v._2.tag === "Cons" && v._2._1._2.tag === "Dictionary" && v._2._2.tag === "Nil") {
24548
- const $0 = $BaseVal("Dictionary", disjointUnion5(v._1._2._1)(v._2._1._2._1));
24549
- return Functor0.map((f) => f($0))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v._2._1._1)()($$$Map(
24550
- "Two",
24551
- Leaf2,
24552
- v._1._1,
24553
- void 0,
24554
- Leaf2
24555
- )))));
24556
- }
24557
- return MonadThrow0.throwError(error("Dictionaries expected"));
24744
+ "op'": (dictMonadWithGraphAlloc) => {
24745
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
24746
+ return (dictMonadError) => {
24747
+ const $$throw2 = $$throw(dictMonadError.MonadThrow0());
24748
+ return (v) => {
24749
+ if (v.tag === "Cons" && v._1._2.tag === "Dictionary" && v._2.tag === "Cons" && v._2._1._2.tag === "Dictionary" && v._2._2.tag === "Nil") {
24750
+ return $$new(Val)(insert(ordVertex)(v._2._1._1)()($$$Map(
24751
+ "Two",
24752
+ Leaf2,
24753
+ v._1._1,
24754
+ void 0,
24755
+ Leaf2
24756
+ )))($BaseVal("Dictionary", disjointUnion5(v._1._2._1)(v._2._1._2._1)));
24757
+ }
24758
+ return $$throw2("Dictionaries expected");
24759
+ };
24558
24760
  };
24559
24761
  },
24560
24762
  op: (dictAnn) => (dictMonadError) => {
@@ -24588,21 +24790,22 @@ var dict_difference = /* @__PURE__ */ $Tuple(
24588
24790
  "dict_difference",
24589
24791
  /* @__PURE__ */ $ForeignOp$p({
24590
24792
  arity: 2,
24591
- "op'": (dictMonadWithGraphAlloc) => (dictMonadError) => {
24592
- const MonadThrow0 = dictMonadError.MonadThrow0();
24593
- const Functor0 = MonadThrow0.Monad0().Bind1().Apply0().Functor0();
24594
- return (v) => {
24595
- if (v.tag === "Cons" && v._1._2.tag === "Dictionary" && v._2.tag === "Cons" && v._2._1._2.tag === "Dictionary" && v._2._2.tag === "Nil") {
24596
- const $0 = $BaseVal("Dictionary", mapFObjectString.difference(v._1._2._1)(v._2._1._2._1));
24597
- return Functor0.map((f) => f($0))(Functor0.map(Val)(dictMonadWithGraphAlloc.new(insert(ordVertex)(v._2._1._1)()($$$Map(
24598
- "Two",
24599
- Leaf2,
24600
- v._1._1,
24601
- void 0,
24602
- Leaf2
24603
- )))));
24604
- }
24605
- return MonadThrow0.throwError(error("Dictionaries expected."));
24793
+ "op'": (dictMonadWithGraphAlloc) => {
24794
+ const $$new = dictMonadWithGraphAlloc.new(typeNameBaseVal);
24795
+ return (dictMonadError) => {
24796
+ const $$throw2 = $$throw(dictMonadError.MonadThrow0());
24797
+ return (v) => {
24798
+ if (v.tag === "Cons" && v._1._2.tag === "Dictionary" && v._2.tag === "Cons" && v._2._1._2.tag === "Dictionary" && v._2._2.tag === "Nil") {
24799
+ return $$new(Val)(insert(ordVertex)(v._2._1._1)()($$$Map(
24800
+ "Two",
24801
+ Leaf2,
24802
+ v._1._1,
24803
+ void 0,
24804
+ Leaf2
24805
+ )))($BaseVal("Dictionary", mapFObjectString.difference(v._1._2._1)(v._2._1._2._1)));
24806
+ }
24807
+ return $$throw2("Dictionaries expected.");
24808
+ };
24606
24809
  };
24607
24810
  },
24608
24811
  op: (dictAnn) => (dictMonadError) => {
@@ -24675,18 +24878,18 @@ var primitives = /* @__PURE__ */ fromFoldable2(foldableArray)([
24675
24878
  i1: intOrNumber,
24676
24879
  i2: intOrNumber,
24677
24880
  o: intOrNumber,
24678
- fwd: /* @__PURE__ */ union5(asIntIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)(intAdd)(numAdd)
24881
+ fwd: /* @__PURE__ */ union6(asIntIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)(intAdd)(numAdd)
24679
24882
  }),
24680
24883
  /* @__PURE__ */ binary2("-")({
24681
24884
  i1: intOrNumber,
24682
24885
  i2: intOrNumber,
24683
24886
  o: intOrNumber,
24684
- fwd: /* @__PURE__ */ union5(asIntIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)(intSub)(numSub)
24887
+ fwd: /* @__PURE__ */ union6(asIntIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)(intSub)(numSub)
24685
24888
  }),
24686
24889
  /* @__PURE__ */ binaryZero1("*")({
24687
24890
  i: intOrNumber,
24688
24891
  o: intOrNumber,
24689
- fwd: /* @__PURE__ */ union5(asIntIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)(intMul)(numMul)
24892
+ fwd: /* @__PURE__ */ union6(asIntIntOrNumber)(asNumberIntOrNumber)(asIntNumber)(asIntNumber)(intMul)(numMul)
24690
24893
  }),
24691
24894
  /* @__PURE__ */ binaryZero1("**")({ i: intOrNumber, o: intOrNumber, fwd: pow3 }),
24692
24895
  /* @__PURE__ */ binaryZero1("/")({ i: intOrNumber, o: intOrNumber, fwd: divide }),
@@ -24694,7 +24897,7 @@ var primitives = /* @__PURE__ */ fromFoldable2(foldableArray)([
24694
24897
  i1: intOrNumberOrString,
24695
24898
  i2: intOrNumberOrString,
24696
24899
  o: $$boolean,
24697
- fwd: /* @__PURE__ */ union5(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)(eqIntImpl)(/* @__PURE__ */ unionStr(asBooleanBoolean)(asNumberString)(eqNumberImpl)(eqStringImpl))
24900
+ fwd: /* @__PURE__ */ union6(asBooleanBoolean)(asBooleanBoolean)(asIntNumberOrString)(asIntNumberOrString)(eqIntImpl)(/* @__PURE__ */ unionStr(asBooleanBoolean)(asNumberString)(eqNumberImpl)(eqStringImpl))
24698
24901
  }),
24699
24902
  /* @__PURE__ */ binary2("/=")({ i1: intOrNumberOrString, i2: intOrNumberOrString, o: $$boolean, fwd: notEquals }),
24700
24903
  /* @__PURE__ */ binary2("<")({ i1: intOrNumberOrString, i2: intOrNumberOrString, o: $$boolean, fwd: lessThan }),
@@ -24717,7 +24920,32 @@ var primitives = /* @__PURE__ */ fromFoldable2(foldableArray)([
24717
24920
  ]);
24718
24921
 
24719
24922
  // output-es/ProgCxt/index.js
24923
+ var union9 = /* @__PURE__ */ (() => setSet(ordDVertex).union)();
24924
+ var unions4 = /* @__PURE__ */ (() => {
24925
+ const go = (go$a0$copy) => (go$a1$copy) => {
24926
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
24927
+ while (go$c) {
24928
+ const b = go$a0, v = go$a1;
24929
+ if (v.tag === "Nil") {
24930
+ go$c = false;
24931
+ go$r = b;
24932
+ continue;
24933
+ }
24934
+ if (v.tag === "Cons") {
24935
+ go$a0 = unionWith(ordDVertex)($$const)(b)(v._1);
24936
+ go$a1 = v._2;
24937
+ continue;
24938
+ }
24939
+ fail();
24940
+ }
24941
+ return go$r;
24942
+ };
24943
+ return go(Leaf2);
24944
+ })();
24720
24945
  var identity25 = (x) => x;
24946
+ var verticesProgCxtVertex = {
24947
+ vertices: (v) => union9(unions13(listMap(verticesValVertex.vertices)(mapObjectString.values(v.primitives))))(union9(unions4(listMap(verticesModuleVertex.vertices)(v.mods)))(unions4(listMap((x) => verticesExprVertex.vertices(x._2))(v.datasets))))
24948
+ };
24721
24949
  var functorProgCxt = {
24722
24950
  map: (f) => (m) => ({
24723
24951
  primitives: _fmapObject(m.primitives, functorVal.map(f)),
@@ -24854,7 +25082,7 @@ var initialConfig = (dictMonadError) => {
24854
25082
  Bind1: () => bindStateT(Monad0)
24855
25083
  })(graphGraphImpl);
24856
25084
  const eval_progCxt2 = eval_progCxt(monadWithGraphAllocWithGr(dictMonadError));
24857
- return (dictFV) => (e) => (progCxt) => Bind1.bind(Applicative0.pure())(() => Bind1.bind(runAllocT(Monad0)($1.bind(alloc(progCxt))((progCxt$p) => $1.bind(runWithGraphT_spy2(eval_progCxt2(progCxt$p))(foldableProgCxt.foldl((m) => (a) => insert(ordVertex)(a)()(m))(Leaf2)(progCxt$p)))((v) => applicativeStateT(Monad0).pure($Tuple(
25085
+ return (dictFV) => (e) => (progCxt) => Bind1.bind(Applicative0.pure())(() => Bind1.bind(runAllocT(Monad0)($1.bind(alloc(progCxt))((progCxt$p) => $1.bind(runWithGraphT_spy2(eval_progCxt2(progCxt$p))(verticesProgCxtVertex.vertices(progCxt$p)))((v) => applicativeStateT(Monad0).pure($Tuple(
24858
25086
  progCxt$p,
24859
25087
  (() => {
24860
25088
  const $2 = dictFV.fv(e);
@@ -27153,7 +27381,7 @@ var unLines = (xs) => foldlArray((v) => (v1) => {
27153
27381
  }
27154
27382
  return { init: false, acc: v.acc + "\n" + v1 };
27155
27383
  })({ init: true, acc: "" })(xs).acc;
27156
- var fromFoldable113 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
27384
+ var fromFoldable112 = /* @__PURE__ */ (() => fromFoldableImpl(foldableList.foldr))();
27157
27385
  var Standard = /* @__PURE__ */ $Richness("Standard");
27158
27386
  var Enriched = (value0) => (value1) => $Richness("Enriched", value0, value1);
27159
27387
  var zshCompletionScript = (prog) => (progn) => {
@@ -27466,7 +27694,7 @@ var bashCompletionParser = (pinfo) => (pprefs) => $Parser(
27466
27694
  ),
27467
27695
  $Parser("NilP", Standard)
27468
27696
  )),
27469
- parserFunctor.map(fromFoldable113)($Parser(
27697
+ parserFunctor.map(fromFoldable112)($Parser(
27470
27698
  "BindP",
27471
27699
  manyM(option(readerAsk)($Mod(
27472
27700
  (x) => internal._1({