@explorable-viz/fluid 0.12.3 → 0.12.5

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.
Files changed (793) hide show
  1. package/output-es/Affjax/foreign.js +52 -0
  2. package/output-es/Affjax/index.js +387 -0
  3. package/output-es/Affjax.RequestBody/index.js +22 -0
  4. package/output-es/Affjax.RequestHeader/index.js +58 -0
  5. package/output-es/Affjax.ResponseFormat/index.js +47 -0
  6. package/output-es/Affjax.ResponseHeader/index.js +19 -0
  7. package/output-es/Affjax.StatusCode/index.js +8 -0
  8. package/output-es/Affjax.Web/foreign.js +8 -0
  9. package/output-es/Affjax.Web/index.js +14 -0
  10. package/output-es/App.CodeMirror/foreign.js +69 -0
  11. package/output-es/App.CodeMirror/index.js +3 -0
  12. package/output-es/App.Fig/index.js +713 -0
  13. package/output-es/App.LoadFigure/index.js +131 -0
  14. package/output-es/App.Util/index.js +773 -0
  15. package/output-es/App.Util.Selector/index.js +273 -0
  16. package/output-es/App.View/index.js +310 -0
  17. package/output-es/App.View.BarChart/index.js +153 -0
  18. package/output-es/App.View.DocView/index.js +40 -0
  19. package/output-es/App.View.LineChart/index.js +437 -0
  20. package/output-es/App.View.MatrixView/foreign.js +182 -0
  21. package/output-es/App.View.MatrixView/index.js +232 -0
  22. package/output-es/App.View.MultiView/index.js +30 -0
  23. package/output-es/App.View.Paragraph/index.js +44 -0
  24. package/output-es/App.View.ScatterPlot/foreign.js +110 -0
  25. package/output-es/App.View.ScatterPlot/index.js +122 -0
  26. package/output-es/App.View.Segment/index.js +92 -0
  27. package/output-es/App.View.StackedBar/index.js +54 -0
  28. package/output-es/App.View.TableView/index.js +397 -0
  29. package/output-es/App.View.Text/index.js +157 -0
  30. package/output-es/App.View.Util/index.js +222 -0
  31. package/output-es/App.View.Util.Axes/index.js +79 -0
  32. package/output-es/App.View.Util.D3/foreign.js +263 -0
  33. package/output-es/App.View.Util.D3/index.js +678 -0
  34. package/output-es/App.View.Util.Point/index.js +3 -0
  35. package/output-es/Benchmark/index.js +63 -0
  36. package/output-es/Bind/index.js +24 -0
  37. package/output-es/Control.Alt/index.js +5 -0
  38. package/output-es/Control.Alternative/index.js +11 -0
  39. package/output-es/Control.Applicative/index.js +18 -0
  40. package/output-es/Control.Apply/foreign.js +15 -0
  41. package/output-es/Control.Apply/index.js +17 -0
  42. package/output-es/Control.Biapplicative/index.js +5 -0
  43. package/output-es/Control.Biapply/index.js +11 -0
  44. package/output-es/Control.Bind/foreign.js +9 -0
  45. package/output-es/Control.Bind/index.js +21 -0
  46. package/output-es/Control.Category/index.js +4 -0
  47. package/output-es/Control.Comonad/index.js +2 -0
  48. package/output-es/Control.Comonad.Cofree/index.js +255 -0
  49. package/output-es/Control.Comonad.Cofree.Class/index.js +43 -0
  50. package/output-es/Control.Comonad.Env/index.js +8 -0
  51. package/output-es/Control.Comonad.Env.Class/index.js +17 -0
  52. package/output-es/Control.Comonad.Env.Trans/index.js +113 -0
  53. package/output-es/Control.Comonad.Store/index.js +5 -0
  54. package/output-es/Control.Comonad.Store.Class/index.js +56 -0
  55. package/output-es/Control.Comonad.Store.Trans/index.js +27 -0
  56. package/output-es/Control.Comonad.Traced/index.js +4 -0
  57. package/output-es/Control.Comonad.Traced.Class/index.js +16 -0
  58. package/output-es/Control.Comonad.Traced.Trans/index.js +28 -0
  59. package/output-es/Control.Comonad.Trans.Class/index.js +3 -0
  60. package/output-es/Control.Extend/foreign.js +7 -0
  61. package/output-es/Control.Extend/index.js +12 -0
  62. package/output-es/Control.Lazy/index.js +10 -0
  63. package/output-es/Control.Monad/index.js +27 -0
  64. package/output-es/Control.Monad.Cont/index.js +6 -0
  65. package/output-es/Control.Monad.Cont.Class/index.js +3 -0
  66. package/output-es/Control.Monad.Cont.Trans/index.js +122 -0
  67. package/output-es/Control.Monad.Error.Class/index.js +83 -0
  68. package/output-es/Control.Monad.Except/index.js +10 -0
  69. package/output-es/Control.Monad.Except.Trans/index.js +241 -0
  70. package/output-es/Control.Monad.Free/index.js +423 -0
  71. package/output-es/Control.Monad.Free.Class/index.js +45 -0
  72. package/output-es/Control.Monad.Gen/index.js +132 -0
  73. package/output-es/Control.Monad.Gen.Class/index.js +6 -0
  74. package/output-es/Control.Monad.Gen.Common/index.js +44 -0
  75. package/output-es/Control.Monad.Identity.Trans/index.js +88 -0
  76. package/output-es/Control.Monad.List.Trans/index.js +536 -0
  77. package/output-es/Control.Monad.Maybe.Trans/index.js +217 -0
  78. package/output-es/Control.Monad.RWS/index.js +16 -0
  79. package/output-es/Control.Monad.RWS.Trans/index.js +260 -0
  80. package/output-es/Control.Monad.Reader/index.js +6 -0
  81. package/output-es/Control.Monad.Reader.Class/index.js +11 -0
  82. package/output-es/Control.Monad.Reader.Trans/index.js +320 -0
  83. package/output-es/Control.Monad.Rec.Class/index.js +265 -0
  84. package/output-es/Control.Monad.ST/index.js +1 -0
  85. package/output-es/Control.Monad.ST.Class/index.js +7 -0
  86. package/output-es/Control.Monad.ST.Global/index.js +3 -0
  87. package/output-es/Control.Monad.ST.Internal/foreign.js +90 -0
  88. package/output-es/Control.Monad.ST.Internal/index.js +75 -0
  89. package/output-es/Control.Monad.ST.Ref/index.js +1 -0
  90. package/output-es/Control.Monad.ST.Uncurried/foreign.js +229 -0
  91. package/output-es/Control.Monad.ST.Uncurried/index.js +39 -0
  92. package/output-es/Control.Monad.State/index.js +8 -0
  93. package/output-es/Control.Monad.State.Class/index.js +12 -0
  94. package/output-es/Control.Monad.State.Trans/index.js +209 -0
  95. package/output-es/Control.Monad.Trampoline/index.js +9 -0
  96. package/output-es/Control.Monad.Trans.Class/index.js +3 -0
  97. package/output-es/Control.Monad.Writer/index.js +6 -0
  98. package/output-es/Control.Monad.Writer.Class/index.js +14 -0
  99. package/output-es/Control.Monad.Writer.Trans/index.js +256 -0
  100. package/output-es/Control.MonadPlus/index.js +4 -0
  101. package/output-es/Control.Parallel/index.js +49 -0
  102. package/output-es/Control.Parallel.Class/index.js +191 -0
  103. package/output-es/Control.Plus/index.js +4 -0
  104. package/output-es/Control.Promise/foreign.js +24 -0
  105. package/output-es/Control.Promise/index.js +40 -0
  106. package/output-es/Control.Semigroupoid/index.js +4 -0
  107. package/output-es/Data.Argonaut.Core/foreign.js +102 -0
  108. package/output-es/Data.Argonaut.Core/index.js +72 -0
  109. package/output-es/Data.Argonaut.Decode/index.js +10 -0
  110. package/output-es/Data.Argonaut.Decode.Class/index.js +173 -0
  111. package/output-es/Data.Argonaut.Decode.Combinators/index.js +21 -0
  112. package/output-es/Data.Argonaut.Decode.Decoders/index.js +463 -0
  113. package/output-es/Data.Argonaut.Decode.Error/index.js +151 -0
  114. package/output-es/Data.Argonaut.Decode.Parser/index.js +11 -0
  115. package/output-es/Data.Argonaut.Encode/index.js +3 -0
  116. package/output-es/Data.Argonaut.Encode.Class/index.js +114 -0
  117. package/output-es/Data.Argonaut.Encode.Combinators/index.js +15 -0
  118. package/output-es/Data.Argonaut.Encode.Encoders/index.js +222 -0
  119. package/output-es/Data.Argonaut.Gen/index.js +68 -0
  120. package/output-es/Data.Argonaut.Parser/foreign.js +8 -0
  121. package/output-es/Data.Argonaut.Parser/index.js +5 -0
  122. package/output-es/Data.Array/foreign.js +298 -0
  123. package/output-es/Data.Array/index.js +555 -0
  124. package/output-es/Data.Array.NonEmpty/index.js +317 -0
  125. package/output-es/Data.Array.NonEmpty.Internal/foreign.js +77 -0
  126. package/output-es/Data.Array.NonEmpty.Internal/index.js +90 -0
  127. package/output-es/Data.Array.Partial/index.js +7 -0
  128. package/output-es/Data.Array.ST/foreign.js +107 -0
  129. package/output-es/Data.Array.ST/index.js +82 -0
  130. package/output-es/Data.Array.ST.Iterator/index.js +83 -0
  131. package/output-es/Data.Array.ST.Partial/foreign.js +7 -0
  132. package/output-es/Data.Array.ST.Partial/index.js +9 -0
  133. package/output-es/Data.ArrayBuffer.Types/index.js +1 -0
  134. package/output-es/Data.Bifoldable/index.js +149 -0
  135. package/output-es/Data.Bifunctor/index.js +17 -0
  136. package/output-es/Data.Bifunctor.Join/index.js +21 -0
  137. package/output-es/Data.Bitraversable/index.js +195 -0
  138. package/output-es/Data.Boolean/index.js +2 -0
  139. package/output-es/Data.BooleanAlgebra/index.js +42 -0
  140. package/output-es/Data.Bounded/foreign.js +8 -0
  141. package/output-es/Data.Bounded/index.js +76 -0
  142. package/output-es/Data.Bounded.Generic/index.js +37 -0
  143. package/output-es/Data.CatList/index.js +326 -0
  144. package/output-es/Data.CatQueue/index.js +364 -0
  145. package/output-es/Data.Char/index.js +5 -0
  146. package/output-es/Data.Char.Gen/index.js +21 -0
  147. package/output-es/Data.CodePoint.Unicode/index.js +382 -0
  148. package/output-es/Data.CodePoint.Unicode.Internal/index.js +5476 -0
  149. package/output-es/Data.CodePoint.Unicode.Internal.Casing/index.js +1636 -0
  150. package/output-es/Data.CommutativeRing/index.js +49 -0
  151. package/output-es/Data.Compactable/index.js +228 -0
  152. package/output-es/Data.Comparison/index.js +22 -0
  153. package/output-es/Data.Const/index.js +56 -0
  154. package/output-es/Data.Coyoneda/index.js +212 -0
  155. package/output-es/Data.Date/foreign.js +22 -0
  156. package/output-es/Data.Date/index.js +370 -0
  157. package/output-es/Data.Date.Component/index.js +451 -0
  158. package/output-es/Data.Date.Component.Gen/index.js +11 -0
  159. package/output-es/Data.Date.Gen/index.js +25 -0
  160. package/output-es/Data.DateTime/foreign.js +33 -0
  161. package/output-es/Data.DateTime/index.js +131 -0
  162. package/output-es/Data.DateTime.Gen/index.js +8 -0
  163. package/output-es/Data.DateTime.Instant/foreign.js +18 -0
  164. package/output-es/Data.DateTime.Instant/index.js +86 -0
  165. package/output-es/Data.Decidable/index.js +70 -0
  166. package/output-es/Data.Decide/index.js +64 -0
  167. package/output-es/Data.Distributive/index.js +55 -0
  168. package/output-es/Data.Divide/index.js +47 -0
  169. package/output-es/Data.Divisible/index.js +17 -0
  170. package/output-es/Data.DivisionRing/index.js +6 -0
  171. package/output-es/Data.Either/index.js +242 -0
  172. package/output-es/Data.Either.Inject/index.js +25 -0
  173. package/output-es/Data.Either.Nested/index.js +450 -0
  174. package/output-es/Data.Enum/foreign.js +7 -0
  175. package/output-es/Data.Enum/index.js +441 -0
  176. package/output-es/Data.Enum.Gen/index.js +19 -0
  177. package/output-es/Data.Enum.Generic/index.js +211 -0
  178. package/output-es/Data.Eq/foreign.js +23 -0
  179. package/output-es/Data.Eq/index.js +33 -0
  180. package/output-es/Data.Eq.Generic/index.js +16 -0
  181. package/output-es/Data.Equivalence/index.js +8 -0
  182. package/output-es/Data.EuclideanRing/foreign.js +26 -0
  183. package/output-es/Data.EuclideanRing/index.js +25 -0
  184. package/output-es/Data.Exists/index.js +4 -0
  185. package/output-es/Data.Field/index.js +2 -0
  186. package/output-es/Data.Filterable/index.js +317 -0
  187. package/output-es/Data.Foldable/foreign.js +25 -0
  188. package/output-es/Data.Foldable/index.js +394 -0
  189. package/output-es/Data.FoldableWithIndex/index.js +431 -0
  190. package/output-es/Data.FormURLEncoded/index.js +110 -0
  191. package/output-es/Data.Function/index.js +23 -0
  192. package/output-es/Data.Function.Memoize/index.js +242 -0
  193. package/output-es/Data.Function.Uncurried/foreign.js +218 -0
  194. package/output-es/Data.Function.Uncurried/index.js +5 -0
  195. package/output-es/Data.Functor/foreign.js +10 -0
  196. package/output-es/Data.Functor/index.js +14 -0
  197. package/output-es/Data.Functor.App/index.js +87 -0
  198. package/output-es/Data.Functor.Clown/index.js +24 -0
  199. package/output-es/Data.Functor.Compose/index.js +131 -0
  200. package/output-es/Data.Functor.Contravariant/index.js +7 -0
  201. package/output-es/Data.Functor.Coproduct/index.js +171 -0
  202. package/output-es/Data.Functor.Coproduct.Inject/index.js +25 -0
  203. package/output-es/Data.Functor.Coproduct.Nested/index.js +433 -0
  204. package/output-es/Data.Functor.Costar/index.js +82 -0
  205. package/output-es/Data.Functor.Flip/index.js +31 -0
  206. package/output-es/Data.Functor.Invariant/index.js +14 -0
  207. package/output-es/Data.Functor.Joker/index.js +88 -0
  208. package/output-es/Data.Functor.Product/index.js +127 -0
  209. package/output-es/Data.Functor.Product.Nested/index.js +46 -0
  210. package/output-es/Data.Functor.Product2/index.js +46 -0
  211. package/output-es/Data.FunctorWithIndex/foreign.js +10 -0
  212. package/output-es/Data.FunctorWithIndex/index.js +147 -0
  213. package/output-es/Data.Generic.Rep/index.js +31 -0
  214. package/output-es/Data.Graph/index.js +370 -0
  215. package/output-es/Data.HTTP.Method/index.js +223 -0
  216. package/output-es/Data.HeytingAlgebra/foreign.js +15 -0
  217. package/output-es/Data.HeytingAlgebra/index.js +104 -0
  218. package/output-es/Data.HeytingAlgebra.Generic/index.js +76 -0
  219. package/output-es/Data.Identity/index.js +54 -0
  220. package/output-es/Data.Int/foreign.js +65 -0
  221. package/output-es/Data.Int/index.js +122 -0
  222. package/output-es/Data.Int.Bits/foreign.js +48 -0
  223. package/output-es/Data.Int.Bits/index.js +4 -0
  224. package/output-es/Data.Interval/index.js +331 -0
  225. package/output-es/Data.Interval.Duration/index.js +124 -0
  226. package/output-es/Data.Interval.Duration.Iso/index.js +423 -0
  227. package/output-es/Data.JSDate/foreign.js +83 -0
  228. package/output-es/Data.JSDate/index.js +123 -0
  229. package/output-es/Data.Lazy/foreign.js +14 -0
  230. package/output-es/Data.Lazy/index.js +143 -0
  231. package/output-es/Data.List/index.js +1505 -0
  232. package/output-es/Data.List.Internal/index.js +155 -0
  233. package/output-es/Data.List.Lazy/index.js +658 -0
  234. package/output-es/Data.List.Lazy.NonEmpty/index.js +77 -0
  235. package/output-es/Data.List.Lazy.Types/index.js +511 -0
  236. package/output-es/Data.List.NonEmpty/index.js +540 -0
  237. package/output-es/Data.List.Partial/index.js +37 -0
  238. package/output-es/Data.List.Types/index.js +841 -0
  239. package/output-es/Data.List.ZipList/index.js +43 -0
  240. package/output-es/Data.Map/index.js +80 -0
  241. package/output-es/Data.Map.Gen/index.js +15 -0
  242. package/output-es/Data.Map.Internal/index.js +1216 -0
  243. package/output-es/Data.Maybe/index.js +253 -0
  244. package/output-es/Data.Maybe.First/index.js +85 -0
  245. package/output-es/Data.Maybe.Last/index.js +86 -0
  246. package/output-es/Data.MediaType/index.js +8 -0
  247. package/output-es/Data.MediaType.Common/index.js +30 -0
  248. package/output-es/Data.Monoid/index.js +66 -0
  249. package/output-es/Data.Monoid.Additive/index.js +33 -0
  250. package/output-es/Data.Monoid.Alternate/index.js +46 -0
  251. package/output-es/Data.Monoid.Conj/index.js +21 -0
  252. package/output-es/Data.Monoid.Disj/index.js +21 -0
  253. package/output-es/Data.Monoid.Dual/index.js +19 -0
  254. package/output-es/Data.Monoid.Endo/index.js +12 -0
  255. package/output-es/Data.Monoid.Generic/index.js +11 -0
  256. package/output-es/Data.Monoid.Multiplicative/index.js +33 -0
  257. package/output-es/Data.NaturalTransformation/index.js +1 -0
  258. package/output-es/Data.Newtype/index.js +51 -0
  259. package/output-es/Data.NonEmpty/index.js +217 -0
  260. package/output-es/Data.Nullable/foreign.js +12 -0
  261. package/output-es/Data.Nullable/index.js +53 -0
  262. package/output-es/Data.Number/foreign.js +80 -0
  263. package/output-es/Data.Number/index.js +15 -0
  264. package/output-es/Data.Number.Approximate/index.js +13 -0
  265. package/output-es/Data.Number.Format/foreign.js +12 -0
  266. package/output-es/Data.Number.Format/index.js +53 -0
  267. package/output-es/Data.Op/index.js +13 -0
  268. package/output-es/Data.Ord/foreign.js +43 -0
  269. package/output-es/Data.Ord/index.js +161 -0
  270. package/output-es/Data.Ord.Down/index.js +35 -0
  271. package/output-es/Data.Ord.Generic/index.js +34 -0
  272. package/output-es/Data.Ord.Max/index.js +34 -0
  273. package/output-es/Data.Ord.Min/index.js +34 -0
  274. package/output-es/Data.Ordering/index.js +35 -0
  275. package/output-es/Data.Posix/index.js +19 -0
  276. package/output-es/Data.Posix.Signal/index.js +405 -0
  277. package/output-es/Data.Predicate/index.js +14 -0
  278. package/output-es/Data.Profunctor/index.js +13 -0
  279. package/output-es/Data.Profunctor.Choice/index.js +32 -0
  280. package/output-es/Data.Profunctor.Closed/index.js +5 -0
  281. package/output-es/Data.Profunctor.Cochoice/index.js +3 -0
  282. package/output-es/Data.Profunctor.Costrong/index.js +3 -0
  283. package/output-es/Data.Profunctor.Join/index.js +13 -0
  284. package/output-es/Data.Profunctor.Split/index.js +11 -0
  285. package/output-es/Data.Profunctor.Star/index.js +250 -0
  286. package/output-es/Data.Profunctor.Strong/index.js +19 -0
  287. package/output-es/Data.Reflectable/foreign.js +5 -0
  288. package/output-es/Data.Reflectable/index.js +10 -0
  289. package/output-es/Data.Ring/foreign.js +12 -0
  290. package/output-es/Data.Ring/index.js +50 -0
  291. package/output-es/Data.Ring.Generic/index.js +10 -0
  292. package/output-es/Data.Semigroup/foreign.js +13 -0
  293. package/output-es/Data.Semigroup/index.js +25 -0
  294. package/output-es/Data.Semigroup.First/index.js +14 -0
  295. package/output-es/Data.Semigroup.Foldable/index.js +143 -0
  296. package/output-es/Data.Semigroup.Generic/index.js +11 -0
  297. package/output-es/Data.Semigroup.Last/index.js +14 -0
  298. package/output-es/Data.Semigroup.Traversable/index.js +39 -0
  299. package/output-es/Data.Semiring/foreign.js +25 -0
  300. package/output-es/Data.Semiring/index.js +66 -0
  301. package/output-es/Data.Semiring.Generic/index.js +52 -0
  302. package/output-es/Data.Set/index.js +310 -0
  303. package/output-es/Data.Set.NonEmpty/index.js +198 -0
  304. package/output-es/Data.Show/foreign.js +59 -0
  305. package/output-es/Data.Show/index.js +56 -0
  306. package/output-es/Data.Show.Generic/foreign.js +5 -0
  307. package/output-es/Data.Show.Generic/index.js +43 -0
  308. package/output-es/Data.String/index.js +1 -0
  309. package/output-es/Data.String.CaseInsensitive/index.js +12 -0
  310. package/output-es/Data.String.CodePoints/foreign.js +107 -0
  311. package/output-es/Data.String.CodePoints/index.js +201 -0
  312. package/output-es/Data.String.CodeUnits/foreign.js +116 -0
  313. package/output-es/Data.String.CodeUnits/index.js +55 -0
  314. package/output-es/Data.String.Common/foreign.js +52 -0
  315. package/output-es/Data.String.Common/index.js +6 -0
  316. package/output-es/Data.String.Gen/index.js +26 -0
  317. package/output-es/Data.String.NonEmpty/index.js +1 -0
  318. package/output-es/Data.String.NonEmpty.CaseInsensitive/index.js +12 -0
  319. package/output-es/Data.String.NonEmpty.CodePoints/index.js +89 -0
  320. package/output-es/Data.String.NonEmpty.CodeUnits/index.js +98 -0
  321. package/output-es/Data.String.NonEmpty.Internal/index.js +119 -0
  322. package/output-es/Data.String.Pattern/index.js +13 -0
  323. package/output-es/Data.String.Regex/foreign.js +103 -0
  324. package/output-es/Data.String.Regex/index.js +28 -0
  325. package/output-es/Data.String.Regex.Flags/index.js +44 -0
  326. package/output-es/Data.String.Regex.Unsafe/index.js +10 -0
  327. package/output-es/Data.String.Unicode/index.js +18 -0
  328. package/output-es/Data.String.Unsafe/foreign.js +11 -0
  329. package/output-es/Data.String.Unsafe/index.js +4 -0
  330. package/output-es/Data.Symbol/foreign.js +6 -0
  331. package/output-es/Data.Symbol/index.js +6 -0
  332. package/output-es/Data.Time/index.js +119 -0
  333. package/output-es/Data.Time.Component/index.js +138 -0
  334. package/output-es/Data.Time.Component.Gen/index.js +7 -0
  335. package/output-es/Data.Time.Duration/index.js +95 -0
  336. package/output-es/Data.Time.Duration.Gen/index.js +7 -0
  337. package/output-es/Data.Time.Gen/index.js +8 -0
  338. package/output-es/Data.Traversable/foreign.js +52 -0
  339. package/output-es/Data.Traversable/index.js +303 -0
  340. package/output-es/Data.Traversable.Accum/index.js +1 -0
  341. package/output-es/Data.Traversable.Accum.Internal/index.js +35 -0
  342. package/output-es/Data.TraversableWithIndex/index.js +280 -0
  343. package/output-es/Data.Tuple/index.js +194 -0
  344. package/output-es/Data.Tuple.Nested/index.js +290 -0
  345. package/output-es/Data.Unfoldable/foreign.js +21 -0
  346. package/output-es/Data.Unfoldable/index.js +45 -0
  347. package/output-es/Data.Unfoldable1/foreign.js +21 -0
  348. package/output-es/Data.Unfoldable1/index.js +39 -0
  349. package/output-es/Data.Unit/foreign.js +1 -0
  350. package/output-es/Data.Unit/index.js +3 -0
  351. package/output-es/Data.Void/index.js +12 -0
  352. package/output-es/Data.Witherable/index.js +371 -0
  353. package/output-es/Data.Yoneda/index.js +85 -0
  354. package/output-es/DataType/index.js +276 -0
  355. package/output-es/Debug/foreign.js +57 -0
  356. package/output-es/Debug/index.js +13 -0
  357. package/output-es/Desug/index.js +17 -0
  358. package/output-es/Desugarable/index.js +3 -0
  359. package/output-es/Dict/index.js +118 -0
  360. package/output-es/Effect/foreign.js +51 -0
  361. package/output-es/Effect/index.js +49 -0
  362. package/output-es/Effect.Aff/foreign.js +1154 -0
  363. package/output-es/Effect.Aff/index.js +268 -0
  364. package/output-es/Effect.Aff.Class/index.js +114 -0
  365. package/output-es/Effect.Aff.Compat/index.js +14 -0
  366. package/output-es/Effect.Class/index.js +4 -0
  367. package/output-es/Effect.Class.Console/index.js +25 -0
  368. package/output-es/Effect.Console/foreign.js +67 -0
  369. package/output-es/Effect.Console/index.js +17 -0
  370. package/output-es/Effect.Exception/foreign.js +45 -0
  371. package/output-es/Effect.Exception/index.js +14 -0
  372. package/output-es/Effect.Exception.Unsafe/index.js +4 -0
  373. package/output-es/Effect.Now/foreign.js +8 -0
  374. package/output-es/Effect.Now/index.js +16 -0
  375. package/output-es/Effect.Random/foreign.js +1 -0
  376. package/output-es/Effect.Random/index.js +17 -0
  377. package/output-es/Effect.Ref/foreign.js +37 -0
  378. package/output-es/Effect.Ref/index.js +34 -0
  379. package/output-es/Effect.Uncurried/foreign.js +229 -0
  380. package/output-es/Effect.Uncurried/index.js +386 -0
  381. package/output-es/Effect.Unsafe/foreign.js +3 -0
  382. package/output-es/Effect.Unsafe/index.js +3 -0
  383. package/output-es/Eval/index.js +951 -0
  384. package/output-es/ExitCodes/index.js +461 -0
  385. package/output-es/Expr/index.js +1732 -0
  386. package/output-es/File/index.js +125 -0
  387. package/output-es/Fluid/index.js +229 -0
  388. package/output-es/Foreign/foreign.js +19 -0
  389. package/output-es/Foreign/index.js +171 -0
  390. package/output-es/Foreign.Index/foreign.js +11 -0
  391. package/output-es/Foreign.Index/index.js +80 -0
  392. package/output-es/Foreign.Keys/foreign.js +9 -0
  393. package/output-es/Foreign.Keys/index.js +28 -0
  394. package/output-es/Foreign.Object/foreign.js +116 -0
  395. package/output-es/Foreign.Object/index.js +304 -0
  396. package/output-es/Foreign.Object.Gen/index.js +13 -0
  397. package/output-es/Foreign.Object.ST/foreign.js +37 -0
  398. package/output-es/Foreign.Object.ST/index.js +9 -0
  399. package/output-es/Foreign.Object.ST.Unsafe/foreign.js +5 -0
  400. package/output-es/Foreign.Object.ST.Unsafe/index.js +3 -0
  401. package/output-es/Foreign.Object.Unsafe/foreign.js +5 -0
  402. package/output-es/Foreign.Object.Unsafe/index.js +3 -0
  403. package/output-es/GaloisConnection/index.js +72 -0
  404. package/output-es/Graph/index.js +279 -0
  405. package/output-es/Graph.GraphImpl/index.js +296 -0
  406. package/output-es/Graph.Slice/index.js +125 -0
  407. package/output-es/Graph.WithGraph/index.js +190 -0
  408. package/output-es/JSURI/foreign.js +61 -0
  409. package/output-es/JSURI/index.js +10 -0
  410. package/output-es/Lattice/index.js +397 -0
  411. package/output-es/Link/index.js +84 -0
  412. package/output-es/Module/index.js +317 -0
  413. package/output-es/Module.Node/index.js +95 -0
  414. package/output-es/Module.Web/index.js +79 -0
  415. package/output-es/ModuleGraph/index.js +1 -0
  416. package/output-es/Node.Buffer/foreign.js +33 -0
  417. package/output-es/Node.Buffer/index.js +191 -0
  418. package/output-es/Node.Buffer.Class/index.js +48 -0
  419. package/output-es/Node.Buffer.Constants/foreign.js +5 -0
  420. package/output-es/Node.Buffer.Constants/index.js +3 -0
  421. package/output-es/Node.Buffer.Immutable/foreign.js +45 -0
  422. package/output-es/Node.Buffer.Immutable/index.js +121 -0
  423. package/output-es/Node.Buffer.ST/index.js +98 -0
  424. package/output-es/Node.Buffer.Types/index.js +36 -0
  425. package/output-es/Node.Encoding/foreign.js +3 -0
  426. package/output-es/Node.Encoding/index.js +55 -0
  427. package/output-es/Node.EventEmitter/foreign.js +24 -0
  428. package/output-es/Node.EventEmitter/index.js +142 -0
  429. package/output-es/Node.EventEmitter.UtilTypes/index.js +1 -0
  430. package/output-es/Node.FS/index.js +27 -0
  431. package/output-es/Node.FS.Aff/index.js +132 -0
  432. package/output-es/Node.FS.Async/foreign.js +28 -0
  433. package/output-es/Node.FS.Async/index.js +241 -0
  434. package/output-es/Node.FS.Constants/foreign.js +17 -0
  435. package/output-es/Node.FS.Constants/index.js +103 -0
  436. package/output-es/Node.FS.Perms/index.js +125 -0
  437. package/output-es/Node.FS.Stats/foreign.js +27 -0
  438. package/output-es/Node.FS.Stats/index.js +102 -0
  439. package/output-es/Node.FS.Stream/foreign.js +11 -0
  440. package/output-es/Node.FS.Stream/index.js +20 -0
  441. package/output-es/Node.FS.Sync/foreign.js +30 -0
  442. package/output-es/Node.FS.Sync/index.js +258 -0
  443. package/output-es/Node.Path/foreign.js +30 -0
  444. package/output-es/Node.Path/index.js +3 -0
  445. package/output-es/Node.Platform/index.js +104 -0
  446. package/output-es/Node.Process/foreign.js +65 -0
  447. package/output-es/Node.Process/index.js +180 -0
  448. package/output-es/Node.Stream/foreign.js +97 -0
  449. package/output-es/Node.Stream/index.js +310 -0
  450. package/output-es/Node.Stream.Aff/index.js +445 -0
  451. package/output-es/Node.Symbol/foreign.js +3 -0
  452. package/output-es/Node.Symbol/index.js +12 -0
  453. package/output-es/Options.Applicative/index.js +1 -0
  454. package/output-es/Options.Applicative.BashCompletion/index.js +417 -0
  455. package/output-es/Options.Applicative.Builder/index.js +505 -0
  456. package/output-es/Options.Applicative.Builder.Completer/foreign.js +8 -0
  457. package/output-es/Options.Applicative.Builder.Completer/index.js +133 -0
  458. package/output-es/Options.Applicative.Builder.Internal/index.js +122 -0
  459. package/output-es/Options.Applicative.Common/index.js +497 -0
  460. package/output-es/Options.Applicative.Extra/index.js +273 -0
  461. package/output-es/Options.Applicative.Help/index.js +3 -0
  462. package/output-es/Options.Applicative.Help.Chunk/index.js +229 -0
  463. package/output-es/Options.Applicative.Help.Core/index.js +450 -0
  464. package/output-es/Options.Applicative.Help.Levenshtein/index.js +22 -0
  465. package/output-es/Options.Applicative.Help.Pretty/index.js +1 -0
  466. package/output-es/Options.Applicative.Help.Types/index.js +112 -0
  467. package/output-es/Options.Applicative.Internal/index.js +447 -0
  468. package/output-es/Options.Applicative.Internal.Utils/index.js +36 -0
  469. package/output-es/Options.Applicative.Types/index.js +979 -0
  470. package/output-es/PSCI.Support/index.js +15 -0
  471. package/output-es/Parse/index.js +2003 -0
  472. package/output-es/Parse.Number/index.js +390 -0
  473. package/output-es/Parse.Parser/index.js +428 -0
  474. package/output-es/Parsing/index.js +342 -0
  475. package/output-es/Parsing.Combinators/index.js +901 -0
  476. package/output-es/Parsing.Combinators.Array/index.js +131 -0
  477. package/output-es/Parsing.Expr/index.js +317 -0
  478. package/output-es/Parsing.Indent/index.js +492 -0
  479. package/output-es/Parsing.Language/index.js +224 -0
  480. package/output-es/Parsing.String/index.js +378 -0
  481. package/output-es/Parsing.String.Basic/index.js +236 -0
  482. package/output-es/Parsing.String.Replace/index.js +342 -0
  483. package/output-es/Parsing.Token/index.js +1980 -0
  484. package/output-es/Partial/foreign.js +5 -0
  485. package/output-es/Partial/index.js +6 -0
  486. package/output-es/Partial.Unsafe/foreign.js +5 -0
  487. package/output-es/Partial.Unsafe/index.js +8 -0
  488. package/output-es/Prelude/index.js +13 -0
  489. package/output-es/Pretty/index.js +1334 -0
  490. package/output-es/Pretty.Doc/index.js +139 -0
  491. package/output-es/Pretty.Util/index.js +90 -0
  492. package/output-es/Primitive/index.js +304 -0
  493. package/output-es/Primitive.Defs/index.js +872 -0
  494. package/output-es/Primitive.Parse/index.js +93 -0
  495. package/output-es/Random.LCG/index.js +35 -0
  496. package/output-es/Record/index.js +23 -0
  497. package/output-es/Record.Builder/foreign.js +44 -0
  498. package/output-es/Record.Builder/index.js +20 -0
  499. package/output-es/Record.Unsafe/foreign.js +38 -0
  500. package/output-es/Record.Unsafe/index.js +9 -0
  501. package/output-es/Record.Unsafe.Union/foreign.js +14 -0
  502. package/output-es/Record.Unsafe.Union/index.js +4 -0
  503. package/output-es/SExpr/index.js +3972 -0
  504. package/output-es/Safe.Coerce/index.js +3 -0
  505. package/output-es/Test.Assert/foreign.js +21 -0
  506. package/output-es/Test.Assert/index.js +37 -0
  507. package/output-es/Test.Benchmark.Util/foreign.js +3 -0
  508. package/output-es/Test.Benchmark.Util/index.js +273 -0
  509. package/output-es/Test.QuickCheck/index.js +297 -0
  510. package/output-es/Test.QuickCheck.Arbitrary/index.js +482 -0
  511. package/output-es/Test.QuickCheck.Gen/foreign.js +10 -0
  512. package/output-es/Test.QuickCheck.Gen/index.js +270 -0
  513. package/output-es/Test.Specs.Bwd/index.js +220 -0
  514. package/output-es/Test.Specs.Comments/index.js +25 -0
  515. package/output-es/Test.Specs.Desugar/index.js +17 -0
  516. package/output-es/Test.Specs.Graphics/index.js +7 -0
  517. package/output-es/Test.Specs.LinkedInputs/index.js +52 -0
  518. package/output-es/Test.Specs.LinkedOutputs/index.js +61 -0
  519. package/output-es/Test.Specs.Misc/index.js +35 -0
  520. package/output-es/Test.Specs.Paragraph/index.js +5 -0
  521. package/output-es/Test.Test/index.js +106 -0
  522. package/output-es/Test.Util/index.js +239 -0
  523. package/output-es/Test.Util.Debug/index.js +6 -0
  524. package/output-es/Test.Util.Debug.Defaults/index.js +16 -0
  525. package/output-es/Test.Util.Mocha/foreign.js +55 -0
  526. package/output-es/Test.Util.Mocha/index.js +21 -0
  527. package/output-es/Test.Util.Puppeteer/index.js +83 -0
  528. package/output-es/Test.Util.Suite/index.js +197 -0
  529. package/output-es/Text.PrettyPrint.Leijen/index.js +700 -0
  530. package/output-es/Toppokki/foreign.js +170 -0
  531. package/output-es/Toppokki/index.js +122 -0
  532. package/output-es/Type.Data.Boolean/index.js +21 -0
  533. package/output-es/Type.Data.Ordering/index.js +56 -0
  534. package/output-es/Type.Data.Symbol/index.js +7 -0
  535. package/output-es/Type.Equality/index.js +5 -0
  536. package/output-es/Type.Function/index.js +1 -0
  537. package/output-es/Type.Prelude/index.js +1 -0
  538. package/output-es/Type.Proxy/index.js +51 -0
  539. package/output-es/Type.Row/index.js +1 -0
  540. package/output-es/Type.Row.Homogeneous/index.js +4 -0
  541. package/output-es/Type.RowList/index.js +10 -0
  542. package/output-es/Unsafe.Coerce/foreign.js +5 -0
  543. package/output-es/Unsafe.Coerce/index.js +3 -0
  544. package/output-es/Util/index.js +340 -0
  545. package/output-es/Util.Map/foreign.js +13 -0
  546. package/output-es/Util.Map/index.js +129 -0
  547. package/output-es/Util.Pair/index.js +90 -0
  548. package/output-es/Util.Set/index.js +75 -0
  549. package/output-es/Val/index.js +1771 -0
  550. package/output-es/Web.DOM/index.js +1 -0
  551. package/output-es/Web.DOM.CharacterData/foreign.js +61 -0
  552. package/output-es/Web.DOM.CharacterData/index.js +13 -0
  553. package/output-es/Web.DOM.ChildNode/foreign.js +5 -0
  554. package/output-es/Web.DOM.ChildNode/index.js +3 -0
  555. package/output-es/Web.DOM.Comment/index.js +13 -0
  556. package/output-es/Web.DOM.DOMTokenList/foreign.js +49 -0
  557. package/output-es/Web.DOM.DOMTokenList/index.js +15 -0
  558. package/output-es/Web.DOM.Document/foreign.js +112 -0
  559. package/output-es/Web.DOM.Document/index.js +75 -0
  560. package/output-es/Web.DOM.DocumentFragment/index.js +13 -0
  561. package/output-es/Web.DOM.DocumentType/foreign.js +9 -0
  562. package/output-es/Web.DOM.DocumentType/index.js +11 -0
  563. package/output-es/Web.DOM.Element/foreign.js +210 -0
  564. package/output-es/Web.DOM.Element/index.js +101 -0
  565. package/output-es/Web.DOM.HTMLCollection/foreign.js +27 -0
  566. package/output-es/Web.DOM.HTMLCollection/index.js +25 -0
  567. package/output-es/Web.DOM.Internal.Types/index.js +1 -0
  568. package/output-es/Web.DOM.MutationObserver/foreign.js +29 -0
  569. package/output-es/Web.DOM.MutationObserver/index.js +4 -0
  570. package/output-es/Web.DOM.MutationRecord/foreign.js +53 -0
  571. package/output-es/Web.DOM.MutationRecord/index.js +66 -0
  572. package/output-es/Web.DOM.Node/foreign.js +153 -0
  573. package/output-es/Web.DOM.Node/index.js +147 -0
  574. package/output-es/Web.DOM.NodeList/foreign.js +19 -0
  575. package/output-es/Web.DOM.NodeList/index.js +15 -0
  576. package/output-es/Web.DOM.NodeType/index.js +199 -0
  577. package/output-es/Web.DOM.NonDocumentTypeChildNode/foreign.js +11 -0
  578. package/output-es/Web.DOM.NonDocumentTypeChildNode/index.js +19 -0
  579. package/output-es/Web.DOM.NonElementParentNode/foreign.js +7 -0
  580. package/output-es/Web.DOM.NonElementParentNode/index.js +15 -0
  581. package/output-es/Web.DOM.ParentNode/foreign.js +28 -0
  582. package/output-es/Web.DOM.ParentNode/index.js +35 -0
  583. package/output-es/Web.DOM.ProcessingInstruction/foreign.js +5 -0
  584. package/output-es/Web.DOM.ProcessingInstruction/index.js +15 -0
  585. package/output-es/Web.DOM.ShadowRoot/foreign.js +9 -0
  586. package/output-es/Web.DOM.ShadowRoot/index.js +23 -0
  587. package/output-es/Web.DOM.Text/foreign.js +13 -0
  588. package/output-es/Web.DOM.Text/index.js +15 -0
  589. package/output-es/Web.Event.CustomEvent/foreign.js +18 -0
  590. package/output-es/Web.Event.CustomEvent/index.js +20 -0
  591. package/output-es/Web.Event.Event/foreign.js +51 -0
  592. package/output-es/Web.Event.Event/index.js +23 -0
  593. package/output-es/Web.Event.EventPhase/index.js +99 -0
  594. package/output-es/Web.Event.EventTarget/foreign.js +51 -0
  595. package/output-es/Web.Event.EventTarget/index.js +3 -0
  596. package/output-es/Web.Event.Internal.Types/index.js +1 -0
  597. package/output-es/Web.File.Blob/foreign.js +19 -0
  598. package/output-es/Web.File.Blob/index.js +18 -0
  599. package/output-es/Web.File.File/foreign.js +2 -0
  600. package/output-es/Web.File.File/index.js +13 -0
  601. package/output-es/Web.File.FileList/foreign.js +7 -0
  602. package/output-es/Web.File.FileList/index.js +16 -0
  603. package/output-es/Web.File.FileReader/foreign.js +51 -0
  604. package/output-es/Web.File.FileReader/index.js +19 -0
  605. package/output-es/Web.File.FileReader.ReadyState/index.js +94 -0
  606. package/output-es/Web.File.Url/foreign.js +11 -0
  607. package/output-es/Web.File.Url/index.js +3 -0
  608. package/output-es/Web.HTML/foreign.js +4 -0
  609. package/output-es/Web.HTML/index.js +3 -0
  610. package/output-es/Web.HTML.Common/index.js +15 -0
  611. package/output-es/Web.HTML.Event.BeforeUnloadEvent/foreign.js +13 -0
  612. package/output-es/Web.HTML.Event.BeforeUnloadEvent/index.js +7 -0
  613. package/output-es/Web.HTML.Event.BeforeUnloadEvent.EventTypes/index.js +2 -0
  614. package/output-es/Web.HTML.Event.DataTransfer/foreign.js +55 -0
  615. package/output-es/Web.HTML.Event.DataTransfer/index.js +63 -0
  616. package/output-es/Web.HTML.Event.DataTransfer.DataTransferItem/foreign.js +23 -0
  617. package/output-es/Web.HTML.Event.DataTransfer.DataTransferItem/index.js +41 -0
  618. package/output-es/Web.HTML.Event.DragEvent/foreign.js +3 -0
  619. package/output-es/Web.HTML.Event.DragEvent/index.js +7 -0
  620. package/output-es/Web.HTML.Event.DragEvent.EventTypes/index.js +9 -0
  621. package/output-es/Web.HTML.Event.ErrorEvent/foreign.js +15 -0
  622. package/output-es/Web.HTML.Event.ErrorEvent/index.js +7 -0
  623. package/output-es/Web.HTML.Event.EventTypes/index.js +68 -0
  624. package/output-es/Web.HTML.Event.HashChangeEvent/foreign.js +7 -0
  625. package/output-es/Web.HTML.Event.HashChangeEvent/index.js +7 -0
  626. package/output-es/Web.HTML.Event.HashChangeEvent.EventTypes/index.js +2 -0
  627. package/output-es/Web.HTML.Event.PageTransitionEvent/foreign.js +3 -0
  628. package/output-es/Web.HTML.Event.PageTransitionEvent/index.js +7 -0
  629. package/output-es/Web.HTML.Event.PageTransitionEvent.EventTypes/index.js +3 -0
  630. package/output-es/Web.HTML.Event.PopStateEvent/foreign.js +3 -0
  631. package/output-es/Web.HTML.Event.PopStateEvent/index.js +7 -0
  632. package/output-es/Web.HTML.Event.PopStateEvent.EventTypes/index.js +2 -0
  633. package/output-es/Web.HTML.Event.TrackEvent/index.js +5 -0
  634. package/output-es/Web.HTML.Event.TrackEvent.EventTypes/index.js +3 -0
  635. package/output-es/Web.HTML.HTMLAnchorElement/foreign.js +117 -0
  636. package/output-es/Web.HTML.HTMLAnchorElement/index.js +36 -0
  637. package/output-es/Web.HTML.HTMLAreaElement/foreign.js +133 -0
  638. package/output-es/Web.HTML.HTMLAreaElement/index.js +34 -0
  639. package/output-es/Web.HTML.HTMLAudioElement/foreign.js +9 -0
  640. package/output-es/Web.HTML.HTMLAudioElement/index.js +40 -0
  641. package/output-es/Web.HTML.HTMLBRElement/index.js +32 -0
  642. package/output-es/Web.HTML.HTMLBaseElement/foreign.js +29 -0
  643. package/output-es/Web.HTML.HTMLBaseElement/index.js +34 -0
  644. package/output-es/Web.HTML.HTMLBodyElement/index.js +32 -0
  645. package/output-es/Web.HTML.HTMLButtonElement/foreign.js +223 -0
  646. package/output-es/Web.HTML.HTMLButtonElement/index.js +73 -0
  647. package/output-es/Web.HTML.HTMLCanvasElement/foreign.js +29 -0
  648. package/output-es/Web.HTML.HTMLCanvasElement/index.js +34 -0
  649. package/output-es/Web.HTML.HTMLDListElement/index.js +32 -0
  650. package/output-es/Web.HTML.HTMLDataElement/foreign.js +13 -0
  651. package/output-es/Web.HTML.HTMLDataElement/index.js +34 -0
  652. package/output-es/Web.HTML.HTMLDataListElement/foreign.js +5 -0
  653. package/output-es/Web.HTML.HTMLDataListElement/index.js +34 -0
  654. package/output-es/Web.HTML.HTMLDivElement/index.js +32 -0
  655. package/output-es/Web.HTML.HTMLDocument/foreign.js +39 -0
  656. package/output-es/Web.HTML.HTMLDocument/index.js +76 -0
  657. package/output-es/Web.HTML.HTMLDocument.ReadyState/index.js +52 -0
  658. package/output-es/Web.HTML.HTMLDocument.VisibilityState/index.js +42 -0
  659. package/output-es/Web.HTML.HTMLElement/foreign.js +194 -0
  660. package/output-es/Web.HTML.HTMLElement/index.js +66 -0
  661. package/output-es/Web.HTML.HTMLEmbedElement/foreign.js +61 -0
  662. package/output-es/Web.HTML.HTMLEmbedElement/index.js +34 -0
  663. package/output-es/Web.HTML.HTMLFieldSetElement/foreign.js +103 -0
  664. package/output-es/Web.HTML.HTMLFieldSetElement/index.js +44 -0
  665. package/output-es/Web.HTML.HTMLFormElement/foreign.js +181 -0
  666. package/output-es/Web.HTML.HTMLFormElement/index.js +58 -0
  667. package/output-es/Web.HTML.HTMLHRElement/index.js +32 -0
  668. package/output-es/Web.HTML.HTMLHeadElement/index.js +32 -0
  669. package/output-es/Web.HTML.HTMLHeadingElement/index.js +32 -0
  670. package/output-es/Web.HTML.HTMLHtmlElement/index.js +32 -0
  671. package/output-es/Web.HTML.HTMLHyperlinkElementUtils/foreign.js +165 -0
  672. package/output-es/Web.HTML.HTMLHyperlinkElementUtils/index.js +26 -0
  673. package/output-es/Web.HTML.HTMLIFrameElement/foreign.js +91 -0
  674. package/output-es/Web.HTML.HTMLIFrameElement/index.js +52 -0
  675. package/output-es/Web.HTML.HTMLImageElement/foreign.js +215 -0
  676. package/output-es/Web.HTML.HTMLImageElement/index.js +140 -0
  677. package/output-es/Web.HTML.HTMLImageElement.CORSMode/index.js +43 -0
  678. package/output-es/Web.HTML.HTMLImageElement.DecodingHint/index.js +53 -0
  679. package/output-es/Web.HTML.HTMLImageElement.Laziness/index.js +43 -0
  680. package/output-es/Web.HTML.HTMLInputElement/foreign.js +727 -0
  681. package/output-es/Web.HTML.HTMLInputElement/index.js +171 -0
  682. package/output-es/Web.HTML.HTMLKeygenElement/foreign.js +151 -0
  683. package/output-es/Web.HTML.HTMLKeygenElement/index.js +64 -0
  684. package/output-es/Web.HTML.HTMLLIElement/foreign.js +13 -0
  685. package/output-es/Web.HTML.HTMLLIElement/index.js +34 -0
  686. package/output-es/Web.HTML.HTMLLabelElement/foreign.js +29 -0
  687. package/output-es/Web.HTML.HTMLLabelElement/index.js +52 -0
  688. package/output-es/Web.HTML.HTMLLegendElement/foreign.js +5 -0
  689. package/output-es/Web.HTML.HTMLLegendElement/index.js +44 -0
  690. package/output-es/Web.HTML.HTMLLinkElement/foreign.js +133 -0
  691. package/output-es/Web.HTML.HTMLLinkElement/index.js +34 -0
  692. package/output-es/Web.HTML.HTMLMapElement/foreign.js +29 -0
  693. package/output-es/Web.HTML.HTMLMapElement/index.js +34 -0
  694. package/output-es/Web.HTML.HTMLMediaElement/foreign.js +295 -0
  695. package/output-es/Web.HTML.HTMLMediaElement/index.js +103 -0
  696. package/output-es/Web.HTML.HTMLMediaElement.CanPlayType/index.js +52 -0
  697. package/output-es/Web.HTML.HTMLMediaElement.NetworkState/index.js +109 -0
  698. package/output-es/Web.HTML.HTMLMediaElement.ReadyState/index.js +124 -0
  699. package/output-es/Web.HTML.HTMLMetaElement/foreign.js +45 -0
  700. package/output-es/Web.HTML.HTMLMetaElement/index.js +34 -0
  701. package/output-es/Web.HTML.HTMLMeterElement/foreign.js +101 -0
  702. package/output-es/Web.HTML.HTMLMeterElement/index.js +34 -0
  703. package/output-es/Web.HTML.HTMLModElement/foreign.js +29 -0
  704. package/output-es/Web.HTML.HTMLModElement/index.js +34 -0
  705. package/output-es/Web.HTML.HTMLOListElement/foreign.js +45 -0
  706. package/output-es/Web.HTML.HTMLOListElement/index.js +34 -0
  707. package/output-es/Web.HTML.HTMLObjectElement/foreign.js +167 -0
  708. package/output-es/Web.HTML.HTMLObjectElement/index.js +74 -0
  709. package/output-es/Web.HTML.HTMLOptGroupElement/foreign.js +29 -0
  710. package/output-es/Web.HTML.HTMLOptGroupElement/index.js +34 -0
  711. package/output-es/Web.HTML.HTMLOptionElement/foreign.js +109 -0
  712. package/output-es/Web.HTML.HTMLOptionElement/index.js +44 -0
  713. package/output-es/Web.HTML.HTMLOutputElement/foreign.js +119 -0
  714. package/output-es/Web.HTML.HTMLOutputElement/index.js +60 -0
  715. package/output-es/Web.HTML.HTMLParagraphElement/index.js +32 -0
  716. package/output-es/Web.HTML.HTMLParamElement/foreign.js +29 -0
  717. package/output-es/Web.HTML.HTMLParamElement/index.js +34 -0
  718. package/output-es/Web.HTML.HTMLPreElement/index.js +32 -0
  719. package/output-es/Web.HTML.HTMLProgressElement/foreign.js +45 -0
  720. package/output-es/Web.HTML.HTMLProgressElement/index.js +34 -0
  721. package/output-es/Web.HTML.HTMLQuoteElement/foreign.js +13 -0
  722. package/output-es/Web.HTML.HTMLQuoteElement/index.js +34 -0
  723. package/output-es/Web.HTML.HTMLScriptElement/foreign.js +109 -0
  724. package/output-es/Web.HTML.HTMLScriptElement/index.js +34 -0
  725. package/output-es/Web.HTML.HTMLSelectElement/foreign.js +223 -0
  726. package/output-es/Web.HTML.HTMLSelectElement/index.js +73 -0
  727. package/output-es/Web.HTML.HTMLSourceElement/foreign.js +45 -0
  728. package/output-es/Web.HTML.HTMLSourceElement/index.js +34 -0
  729. package/output-es/Web.HTML.HTMLSpanElement/index.js +32 -0
  730. package/output-es/Web.HTML.HTMLStyleElement/foreign.js +29 -0
  731. package/output-es/Web.HTML.HTMLStyleElement/index.js +34 -0
  732. package/output-es/Web.HTML.HTMLTableCaptionElement/index.js +32 -0
  733. package/output-es/Web.HTML.HTMLTableCellElement/foreign.js +37 -0
  734. package/output-es/Web.HTML.HTMLTableCellElement/index.js +34 -0
  735. package/output-es/Web.HTML.HTMLTableColElement/foreign.js +13 -0
  736. package/output-es/Web.HTML.HTMLTableColElement/index.js +34 -0
  737. package/output-es/Web.HTML.HTMLTableDataCellElement/index.js +36 -0
  738. package/output-es/Web.HTML.HTMLTableElement/foreign.js +153 -0
  739. package/output-es/Web.HTML.HTMLTableElement/index.js +103 -0
  740. package/output-es/Web.HTML.HTMLTableHeaderCellElement/foreign.js +29 -0
  741. package/output-es/Web.HTML.HTMLTableHeaderCellElement/index.js +38 -0
  742. package/output-es/Web.HTML.HTMLTableRowElement/foreign.js +41 -0
  743. package/output-es/Web.HTML.HTMLTableRowElement/index.js +38 -0
  744. package/output-es/Web.HTML.HTMLTableSectionElement/foreign.js +25 -0
  745. package/output-es/Web.HTML.HTMLTableSectionElement/index.js +38 -0
  746. package/output-es/Web.HTML.HTMLTemplateElement/foreign.js +5 -0
  747. package/output-es/Web.HTML.HTMLTemplateElement/index.js +34 -0
  748. package/output-es/Web.HTML.HTMLTextAreaElement/foreign.js +403 -0
  749. package/output-es/Web.HTML.HTMLTextAreaElement/index.js +107 -0
  750. package/output-es/Web.HTML.HTMLTimeElement/foreign.js +13 -0
  751. package/output-es/Web.HTML.HTMLTimeElement/index.js +34 -0
  752. package/output-es/Web.HTML.HTMLTitleElement/foreign.js +13 -0
  753. package/output-es/Web.HTML.HTMLTitleElement/index.js +34 -0
  754. package/output-es/Web.HTML.HTMLTrackElement/foreign.js +84 -0
  755. package/output-es/Web.HTML.HTMLTrackElement/index.js +44 -0
  756. package/output-es/Web.HTML.HTMLTrackElement.ReadyState/index.js +109 -0
  757. package/output-es/Web.HTML.HTMLUListElement/index.js +32 -0
  758. package/output-es/Web.HTML.HTMLVideoElement/foreign.js +63 -0
  759. package/output-es/Web.HTML.HTMLVideoElement/index.js +38 -0
  760. package/output-es/Web.HTML.History/foreign.js +49 -0
  761. package/output-es/Web.HTML.History/index.js +16 -0
  762. package/output-es/Web.HTML.Location/foreign.js +169 -0
  763. package/output-es/Web.HTML.Location/index.js +25 -0
  764. package/output-es/Web.HTML.Navigator/foreign.js +29 -0
  765. package/output-es/Web.HTML.Navigator/index.js +3 -0
  766. package/output-es/Web.HTML.SelectionMode/index.js +62 -0
  767. package/output-es/Web.HTML.ValidityState/foreign.js +3 -0
  768. package/output-es/Web.HTML.ValidityState/index.js +15 -0
  769. package/output-es/Web.HTML.Window/foreign.js +239 -0
  770. package/output-es/Web.HTML.Window/index.js +86 -0
  771. package/output-es/Web.Internal.FFI/foreign.js +20 -0
  772. package/output-es/Web.Internal.FFI/index.js +5 -0
  773. package/output-es/Web.Storage.Event.StorageEvent/foreign.js +19 -0
  774. package/output-es/Web.Storage.Event.StorageEvent/index.js +13 -0
  775. package/output-es/Web.Storage.Storage/foreign.js +45 -0
  776. package/output-es/Web.Storage.Storage/index.js +52 -0
  777. package/output-es/Web.XHR.EventTypes/index.js +8 -0
  778. package/output-es/Web.XHR.FormData/foreign.js +32 -0
  779. package/output-es/Web.XHR.FormData/index.js +52 -0
  780. package/output-es/Web.XHR.ProgressEvent/foreign.js +11 -0
  781. package/output-es/Web.XHR.ProgressEvent/index.js +7 -0
  782. package/output-es/Web.XHR.ReadyState/index.js +99 -0
  783. package/output-es/Web.XHR.ResponseType/index.js +5 -0
  784. package/output-es/Web.XHR.XMLHttpRequest/foreign.js +41 -0
  785. package/output-es/Web.XHR.XMLHttpRequest/index.js +95 -0
  786. package/output-es/Web.XHR.XMLHttpRequestUpload/index.js +3 -0
  787. package/output-es/Website.Test.Article.EnergyScatter/index.js +12 -0
  788. package/output-es/Website.Test.Article.RenewablesLinked/index.js +14 -0
  789. package/output-es/package.json +1 -0
  790. package/output-es/runtime.js +33 -0
  791. package/package.json +5 -3
  792. package/script/install-website.sh +14 -1
  793. package/script/webtest-lib.mjs +101 -0
@@ -0,0 +1,1771 @@
1
+ import * as $runtime from "../runtime.js";
2
+ import * as Data$dArray from "../Data.Array/index.js";
3
+ import * as Data$dBitraversable from "../Data.Bitraversable/index.js";
4
+ import * as Data$dEq from "../Data.Eq/index.js";
5
+ import * as Data$dFoldable from "../Data.Foldable/index.js";
6
+ import * as Data$dFunction from "../Data.Function/index.js";
7
+ import * as Data$dFunctor from "../Data.Functor/index.js";
8
+ import * as Data$dList$dTypes from "../Data.List.Types/index.js";
9
+ import * as Data$dMap$dInternal from "../Data.Map.Internal/index.js";
10
+ import * as Data$dMaybe from "../Data.Maybe/index.js";
11
+ import * as Data$dOrd from "../Data.Ord/index.js";
12
+ import * as Data$dOrdering from "../Data.Ordering/index.js";
13
+ import * as Data$dSet from "../Data.Set/index.js";
14
+ import * as Data$dShow from "../Data.Show/index.js";
15
+ import * as Data$dString$dCommon from "../Data.String.Common/index.js";
16
+ import * as Data$dTraversable from "../Data.Traversable/index.js";
17
+ import * as Data$dTuple from "../Data.Tuple/index.js";
18
+ import * as Dict from "../Dict/index.js";
19
+ import * as Effect$dException from "../Effect.Exception/index.js";
20
+ import * as Expr from "../Expr/index.js";
21
+ import * as Foreign$dObject from "../Foreign.Object/index.js";
22
+ import * as Graph from "../Graph/index.js";
23
+ import * as Lattice from "../Lattice/index.js";
24
+ import * as Pretty$dDoc from "../Pretty.Doc/index.js";
25
+ import * as Unsafe$dCoerce from "../Unsafe.Coerce/index.js";
26
+ import * as Util from "../Util/index.js";
27
+ import * as Util$dMap from "../Util.Map/index.js";
28
+ import * as Util$dSet from "../Util.Set/index.js";
29
+ const $BaseVal = (tag, _1, _2) => ({tag, _1, _2});
30
+ const $EnvExpr = (_1, _2) => ({tag: "EnvExpr", _1, _2});
31
+ const $ForeignOp$p = _1 => ({tag: "ForeignOp'", _1});
32
+ const $Fun = (tag, _1, _2, _3) => ({tag, _1, _2, _3});
33
+ const $Val = (_1, _2, _3) => ({tag: "Val", _1, _2, _3});
34
+ const setSet = /* #__PURE__ */ Util$dSet.setSet(Graph.ordDVertex$p);
35
+ const unions = /* #__PURE__ */ Data$dSet.unions(Data$dFoldable.foldableArray)(Graph.ordDVertex$p);
36
+ const vertices = /* #__PURE__ */ (() => Graph.verticesDict(Expr.verticesElimVertex).vertices)();
37
+ const unions1 = /* #__PURE__ */ Data$dSet.unions(Data$dList$dTypes.foldableList)(Graph.ordDVertex$p);
38
+ const foldMap = /* #__PURE__ */ Foreign$dObject.foldMap(/* #__PURE__ */ Data$dSet.monoidSet(Graph.ordDVertex$p));
39
+ const identity = x => x;
40
+ const ordTuple = dictOrd1 => {
41
+ const $0 = dictOrd1.Eq0();
42
+ const eqTuple2 = {eq: x => y => x._1 === y._1 && $0.eq(x._2)(y._2)};
43
+ return {
44
+ compare: x => y => {
45
+ const v = Data$dOrd.ordInt.compare(x._1)(y._1);
46
+ if (v === "LT") { return Data$dOrdering.LT; }
47
+ if (v === "GT") { return Data$dOrdering.GT; }
48
+ return dictOrd1.compare(x._2)(y._2);
49
+ },
50
+ Eq0: () => eqTuple2
51
+ };
52
+ };
53
+ const boundedLattice = {BoundedJoinSemilattice0: () => Lattice.boundedJoinSemilatticeUni, BoundedMeetSemilattice1: () => Lattice.boundedMeetSemilatticeUni};
54
+ const boundedLattice1 = {BoundedJoinSemilattice0: () => Lattice.boundedJoinSemilatticeBoo, BoundedMeetSemilattice1: () => Lattice.boundedMeetSemilatticeBoo};
55
+ const setSet1 = /* #__PURE__ */ Util$dSet.setSet(Data$dOrd.ordString);
56
+ const toUnfoldable1 = x => {
57
+ const go = (m$p, z$p) => {
58
+ if (m$p.tag === "Leaf") { return z$p; }
59
+ if (m$p.tag === "Node") { return go(m$p._5, Data$dList$dTypes.$List("Cons", m$p._3, go(m$p._6, z$p))); }
60
+ $runtime.fail();
61
+ };
62
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
63
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
64
+ while (go$1$c) {
65
+ const source = go$1$a0, memo = go$1$a1;
66
+ if (source.tag === "Nil") {
67
+ const go$2 = go$2$a0$copy => go$2$a1$copy => {
68
+ let go$2$a0 = go$2$a0$copy, go$2$a1 = go$2$a1$copy, go$2$c = true, go$2$r;
69
+ while (go$2$c) {
70
+ const b = go$2$a0, v = go$2$a1;
71
+ if (v.tag === "Nil") {
72
+ go$2$c = false;
73
+ go$2$r = b;
74
+ continue;
75
+ }
76
+ if (v.tag === "Cons") {
77
+ go$2$a0 = Data$dList$dTypes.$List("Cons", v._1, b);
78
+ go$2$a1 = v._2;
79
+ continue;
80
+ }
81
+ $runtime.fail();
82
+ }
83
+ return go$2$r;
84
+ };
85
+ go$1$c = false;
86
+ go$1$r = go$2(Data$dList$dTypes.Nil)(memo);
87
+ continue;
88
+ }
89
+ if (source.tag === "Cons") {
90
+ go$1$a0 = source._2;
91
+ go$1$a1 = Data$dList$dTypes.$List("Cons", source._1, memo);
92
+ continue;
93
+ }
94
+ $runtime.fail();
95
+ }
96
+ return go$1$r;
97
+ };
98
+ return go$1(go(x, Data$dList$dTypes.Nil))(Data$dList$dTypes.Nil);
99
+ };
100
+ const fromFoldable1 = /* #__PURE__ */ (() => {
101
+ const go = go$a0$copy => go$a1$copy => {
102
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
103
+ while (go$c) {
104
+ const b = go$a0, v = go$a1;
105
+ if (v.tag === "Nil") {
106
+ go$c = false;
107
+ go$r = b;
108
+ continue;
109
+ }
110
+ if (v.tag === "Cons") {
111
+ go$a0 = Data$dMap$dInternal.insert(Data$dOrd.ordString)(v._1)()(b);
112
+ go$a1 = v._2;
113
+ continue;
114
+ }
115
+ $runtime.fail();
116
+ }
117
+ return go$r;
118
+ };
119
+ const $0 = go(Data$dMap$dInternal.Leaf);
120
+ return x => $0((() => {
121
+ const go$1 = (m$p, z$p) => {
122
+ if (m$p.tag === "Leaf") { return z$p; }
123
+ if (m$p.tag === "Node") { return go$1(m$p._5, Data$dList$dTypes.$List("Cons", m$p._3, go$1(m$p._6, z$p))); }
124
+ $runtime.fail();
125
+ };
126
+ return go$1(x, Data$dList$dTypes.Nil);
127
+ })());
128
+ })();
129
+ const MatrixDim = x => x;
130
+ const DictKey = x => x;
131
+ const MatrixRep = x => x;
132
+ const Val = value0 => value1 => value2 => $Val(value0, value1, value2);
133
+ const Int = value0 => $BaseVal("Int", value0);
134
+ const Float = value0 => $BaseVal("Float", value0);
135
+ const Str = value0 => $BaseVal("Str", value0);
136
+ const Constr = value0 => value1 => $BaseVal("Constr", value0, value1);
137
+ const Dictionary = value0 => $BaseVal("Dictionary", value0);
138
+ const Matrix = value0 => $BaseVal("Matrix", value0);
139
+ const Fun = value0 => $BaseVal("Fun", value0);
140
+ const DictRep = x => x;
141
+ const Closure = value0 => value1 => value2 => $Fun("Closure", value0, value1, value2);
142
+ const Foreign = value0 => value1 => $Fun("Foreign", value0, value1);
143
+ const PartialConstr = value0 => value1 => $Fun("PartialConstr", value0, value1);
144
+ const Env = x => x;
145
+ const ForeignOp = x => x;
146
+ const ForeignOp$p = value0 => $ForeignOp$p(value0);
147
+ const EnvExpr = value0 => value1 => $EnvExpr(value0, value1);
148
+ const typeNameVal = {typeName: v => "Val"};
149
+ const pack = x => k => k(typeNameVal)(x);
150
+ const typeNameMatrixDim = {typeName: v => "MatrixDim"};
151
+ const pack1 = x => k => k(typeNameMatrixDim)(x);
152
+ const verticesMatrixDimVertex = {
153
+ vertices: v => Data$dMap$dInternal.$$$Map("Node", 1, 1, Data$dTuple.$Tuple(v._2, pack1(v)), undefined, Data$dMap$dInternal.Leaf, Data$dMap$dInternal.Leaf)
154
+ };
155
+ const typeNameDictKey = {typeName: v => "DictKey"};
156
+ const pack2 = x => k => k(typeNameDictKey)(x);
157
+ const verticesDictKeyVertex = {
158
+ vertices: v => Data$dMap$dInternal.$$$Map("Node", 1, 1, Data$dTuple.$Tuple(v._2, pack2(v)), undefined, Data$dMap$dInternal.Leaf, Data$dMap$dInternal.Leaf)
159
+ };
160
+ const verticesValVertex = {
161
+ vertices: v => setSet.union(Data$dMap$dInternal.$$$Map("Node", 1, 1, Data$dTuple.$Tuple(v._1, pack(v)), undefined, Data$dMap$dInternal.Leaf, Data$dMap$dInternal.Leaf))(verticesBaseValVertex.vertices(v._3))
162
+ };
163
+ const verticesMatrixRepVertex = {
164
+ vertices: v => setSet.union(unions(Data$dArray.concat(Data$dFunctor.arrayMap(Data$dFunctor.arrayMap(verticesValVertex.vertices))(v._1))))(setSet.union(Data$dMap$dInternal.$$$Map(
165
+ "Node",
166
+ 1,
167
+ 1,
168
+ Data$dTuple.$Tuple(v._2._1._2, pack1(v._2._1)),
169
+ undefined,
170
+ Data$dMap$dInternal.Leaf,
171
+ Data$dMap$dInternal.Leaf
172
+ ))(Data$dMap$dInternal.$$$Map("Node", 1, 1, Data$dTuple.$Tuple(v._2._2._2, pack1(v._2._2)), undefined, Data$dMap$dInternal.Leaf, Data$dMap$dInternal.Leaf)))
173
+ };
174
+ const verticesFunVertex = {
175
+ vertices: v => {
176
+ if (v.tag === "Closure") { return setSet.union(verticesEnvVertex.vertices(v._1))(setSet.union(vertices(v._2))(Expr.verticesElimVertex.vertices(v._3))); }
177
+ if (v.tag === "Foreign") { return unions1(Data$dList$dTypes.listMap(verticesValVertex.vertices)(v._2)); }
178
+ if (v.tag === "PartialConstr") { return unions1(Data$dList$dTypes.listMap(verticesValVertex.vertices)(v._2)); }
179
+ $runtime.fail();
180
+ }
181
+ };
182
+ const verticesEnvVertex = {vertices: v => unions1(Data$dList$dTypes.listMap(verticesValVertex.vertices)(Util$dMap.mapObjectString.values(v)))};
183
+ const verticesDictRepVertex = {
184
+ vertices: v => foldMap(k => v1 => setSet.union(Data$dMap$dInternal.$$$Map(
185
+ "Node",
186
+ 1,
187
+ 1,
188
+ Data$dTuple.$Tuple(v1._1, pack2(Data$dTuple.$Tuple(k, v1._1))),
189
+ undefined,
190
+ Data$dMap$dInternal.Leaf,
191
+ Data$dMap$dInternal.Leaf
192
+ ))(verticesValVertex.vertices(v1._2)))(v)
193
+ };
194
+ const verticesBaseValVertex = {
195
+ vertices: v => {
196
+ if (v.tag === "Int") { return setSet.empty; }
197
+ if (v.tag === "Float") { return setSet.empty; }
198
+ if (v.tag === "Str") { return setSet.empty; }
199
+ if (v.tag === "Constr") { return unions1(Data$dList$dTypes.listMap(verticesValVertex.vertices)(v._2)); }
200
+ if (v.tag === "Dictionary") { return verticesDictRepVertex.vertices(v._1); }
201
+ if (v.tag === "Matrix") { return verticesMatrixRepVertex.vertices(v._1); }
202
+ if (v.tag === "Fun") { return verticesFunVertex.vertices(v._1); }
203
+ $runtime.fail();
204
+ }
205
+ };
206
+ const verticesEnvExprVertex = {
207
+ vertices: v => setSet.union(unions1(Data$dList$dTypes.listMap(verticesValVertex.vertices)(Util$dMap.mapObjectString.values(v._1))))(Expr.verticesExprVertex.vertices(v._2))
208
+ };
209
+ const newtypeEnv_ = {Coercible0: () => {}};
210
+ const joinSemilatticeMatrixDim = dictJoinSemilattice => (
211
+ {
212
+ join: v => v1 => {
213
+ const $0 = v._1;
214
+ const $1 = v1._1;
215
+ return Data$dTuple.$Tuple(Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0), dictJoinSemilattice.join(v._2)(v1._2));
216
+ }
217
+ }
218
+ );
219
+ const isEmptyEnv = {isEmpty: v => Foreign$dObject.isEmpty(v)};
220
+ const setEnvString = {
221
+ empty: Foreign$dObject.empty,
222
+ filter: p => v => Foreign$dObject.filterWithKey(x => {
223
+ const $0 = p(x);
224
+ return v$1 => $0;
225
+ })(v),
226
+ size: v => Foreign$dObject.size(v),
227
+ member: x => v => Object.hasOwn(v, x),
228
+ difference: v => v1 => Util$dSet.setObjectString.difference(v)(v1),
229
+ union: v => v1 => Foreign$dObject.union(v)(v1),
230
+ IsEmpty0: () => isEmptyEnv
231
+ };
232
+ const mapEnvStringVal = {
233
+ maplet: k => v => {
234
+ const $0 = {};
235
+ $0[k] = v;
236
+ return $0;
237
+ },
238
+ keys: v => Util$dMap.mapObjectString.keys(v),
239
+ values: v => Util$dMap.mapObjectString.values(v),
240
+ filterKeys: p => v => Foreign$dObject.filterWithKey(x => {
241
+ const $0 = p(x);
242
+ return v$1 => $0;
243
+ })(v),
244
+ unionWith: f => v => v1 => Foreign$dObject.unionWith(f)(v)(v1),
245
+ lookup: k => v => Foreign$dObject._lookup(Data$dMaybe.Nothing, Data$dMaybe.Just, k, v),
246
+ delete: k => v => Foreign$dObject.mutate($0 => () => {
247
+ delete $0[k];
248
+ return $0;
249
+ })(v),
250
+ insert: k => v => v1 => Foreign$dObject.mutate($0 => () => {
251
+ $0[k] = v;
252
+ return $0;
253
+ })(v1),
254
+ toUnfoldable: dictUnfoldable => Foreign$dObject.toAscUnfoldable(dictUnfoldable),
255
+ Set0: () => setEnvString
256
+ };
257
+ const highlightableVertex = {
258
+ highlightIf: v => doc => Pretty$dDoc.$Doc("Concat", doc, Pretty$dDoc.$Doc("Concat", Pretty$dDoc.$Doc("Text", "_"), Pretty$dDoc.$Doc("Text", "⟨" + v + "⟩")))
259
+ };
260
+ const highlightableUnit = {highlightIf: v => identity};
261
+ const highlightableBoolean = {
262
+ highlightIf: v => {
263
+ if (!v) { return identity; }
264
+ if (v) { return doc => Pretty$dDoc.$Doc("Concat", Pretty$dDoc.$Doc("Text", "⸨"), Pretty$dDoc.$Doc("Concat", doc, Pretty$dDoc.$Doc("Text", "⸩"))); }
265
+ $runtime.fail();
266
+ }
267
+ };
268
+ const functorMatrixDim = {map: f => m => Data$dTuple.$Tuple(m._1, f(m._2))};
269
+ const functorVal = {
270
+ map: f => m => $Val(
271
+ f(m._1),
272
+ (() => {
273
+ const $0 = functorVal.map(f);
274
+ if (m._2.tag === "Just") { return Data$dMaybe.$Maybe("Just", $0(m._2._1)); }
275
+ return Data$dMaybe.Nothing;
276
+ })(),
277
+ functorBaseVal.map(f)(m._3)
278
+ )
279
+ };
280
+ const functorMatrixRep = {
281
+ map: f => m => Data$dTuple.$Tuple(
282
+ Data$dFunctor.arrayMap(Data$dFunctor.arrayMap(functorVal.map(f)))(m._1),
283
+ Data$dTuple.$Tuple(Data$dTuple.$Tuple(m._2._1._1, f(m._2._1._2)), Data$dTuple.$Tuple(m._2._2._1, f(m._2._2._2)))
284
+ )
285
+ };
286
+ const functorFun = {
287
+ map: f => m => {
288
+ if (m.tag === "Closure") { return $Fun("Closure", functorEnv.map(f)(m._1), Foreign$dObject._fmapObject(m._2, Expr.functorElim.map(f)), Expr.functorElim.map(f)(m._3)); }
289
+ if (m.tag === "Foreign") { return $Fun("Foreign", m._1, Data$dList$dTypes.listMap(functorVal.map(f))(m._2)); }
290
+ if (m.tag === "PartialConstr") { return $Fun("PartialConstr", m._1, Data$dList$dTypes.listMap(functorVal.map(f))(m._2)); }
291
+ $runtime.fail();
292
+ }
293
+ };
294
+ const functorEnv = {map: f => m => Foreign$dObject._fmapObject(m, functorVal.map(f))};
295
+ const functorDictRep = {map: f => m => Foreign$dObject._fmapObject(m, v => Data$dTuple.$Tuple(f(v._1), functorVal.map(f)(v._2)))};
296
+ const functorBaseVal = {
297
+ map: f => m => {
298
+ if (m.tag === "Int") { return $BaseVal("Int", m._1); }
299
+ if (m.tag === "Float") { return $BaseVal("Float", m._1); }
300
+ if (m.tag === "Str") { return $BaseVal("Str", m._1); }
301
+ if (m.tag === "Constr") { return $BaseVal("Constr", m._1, Data$dList$dTypes.listMap(functorVal.map(f))(m._2)); }
302
+ if (m.tag === "Dictionary") { return $BaseVal("Dictionary", functorDictRep.map(f)(m._1)); }
303
+ if (m.tag === "Matrix") { return $BaseVal("Matrix", functorMatrixRep.map(f)(m._1)); }
304
+ if (m.tag === "Fun") { return $BaseVal("Fun", functorFun.map(f)(m._1)); }
305
+ $runtime.fail();
306
+ }
307
+ };
308
+ const botOfUnit$x215Raw$x215 = dictBoundedJoinSemilattice => (
309
+ {
310
+ botOf: (() => {
311
+ const $0 = dictBoundedJoinSemilattice.bot;
312
+ const $1 = functorVal.map((() => {
313
+ const $1 = dictBoundedJoinSemilattice.bot;
314
+ return v => $1;
315
+ })());
316
+ return x => Data$dTuple.$Tuple($0, $1(x._2));
317
+ })()
318
+ }
319
+ );
320
+ const functorEnvExpr = {map: f => m => $EnvExpr(Foreign$dObject._fmapObject(m._1, functorVal.map(f)), Expr.functorExpr.map(f)(m._2))};
321
+ const foldableMatrixDim = {foldl: f => z => m => f(z)(m._2), foldr: f => z => m => f(m._2)(z), foldMap: dictMonoid => f => m => f(m._2)};
322
+ const traversableMatrixDim = {
323
+ traverse: dictApplicative => f => m => dictApplicative.Apply0().Functor0().map(v1 => v1)(Data$dTraversable.traversableTuple.traverse(dictApplicative)(f)(m)),
324
+ sequence: dictApplicative => v => traversableMatrixDim.traverse(dictApplicative)(identity)(v),
325
+ Functor0: () => functorMatrixDim,
326
+ Foldable1: () => foldableMatrixDim
327
+ };
328
+ const foldableVal = {
329
+ foldl: f => z => m => foldableBaseVal.foldl(f)((() => {
330
+ const $0 = foldableVal.foldl(f);
331
+ const $1 = f(z)(m._1);
332
+ if (m._2.tag === "Nothing") { return $1; }
333
+ if (m._2.tag === "Just") { return $0($1)(m._2._1); }
334
+ $runtime.fail();
335
+ })())(m._3),
336
+ foldr: f => z => m => f(m._1)((() => {
337
+ const $0 = foldableVal.foldr(f);
338
+ const $1 = foldableBaseVal.foldr(f)(z)(m._3);
339
+ if (m._2.tag === "Nothing") { return $1; }
340
+ if (m._2.tag === "Just") { return $0($1)(m._2._1); }
341
+ $runtime.fail();
342
+ })()),
343
+ foldMap: dictMonoid => {
344
+ const $0 = dictMonoid.Semigroup0();
345
+ const mempty = dictMonoid.mempty;
346
+ return f => m => $0.append(f(m._1))($0.append((() => {
347
+ const $1 = foldableVal.foldMap(dictMonoid)(f);
348
+ if (m._2.tag === "Nothing") { return mempty; }
349
+ if (m._2.tag === "Just") { return $1(m._2._1); }
350
+ $runtime.fail();
351
+ })())(foldableBaseVal.foldMap(dictMonoid)(f)(m._3)));
352
+ }
353
+ };
354
+ const foldableMatrixRep = {
355
+ foldl: f => acc => v => Data$dFoldable.foldlArray(Data$dFoldable.foldlArray(foldableVal.foldl(f)))(f(f(acc)(v._2._1._2))(v._2._2._2))(v._1),
356
+ foldr: f => Data$dFoldable.foldrDefault(foldableMatrixRep)(f),
357
+ foldMap: dictMonoid => f => foldableMatrixRep.foldl(acc => x => dictMonoid.Semigroup0().append(acc)(f(x)))(dictMonoid.mempty)
358
+ };
359
+ const foldableFun = {
360
+ foldl: f => z => m => {
361
+ if (m.tag === "Closure") { return Expr.foldableElim.foldl(f)(Foreign$dObject.fold(z$1 => v => Expr.foldableElim.foldl(f)(z$1))(foldableEnv.foldl(f)(z)(m._1))(m._2))(m._3); }
362
+ if (m.tag === "Foreign") {
363
+ const go = go$a0$copy => go$a1$copy => {
364
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
365
+ while (go$c) {
366
+ const b = go$a0, v = go$a1;
367
+ if (v.tag === "Nil") {
368
+ go$c = false;
369
+ go$r = b;
370
+ continue;
371
+ }
372
+ if (v.tag === "Cons") {
373
+ go$a0 = foldableVal.foldl(f)(b)(v._1);
374
+ go$a1 = v._2;
375
+ continue;
376
+ }
377
+ $runtime.fail();
378
+ }
379
+ return go$r;
380
+ };
381
+ return go(z)(m._2);
382
+ }
383
+ if (m.tag === "PartialConstr") {
384
+ const go = go$a0$copy => go$a1$copy => {
385
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
386
+ while (go$c) {
387
+ const b = go$a0, v = go$a1;
388
+ if (v.tag === "Nil") {
389
+ go$c = false;
390
+ go$r = b;
391
+ continue;
392
+ }
393
+ if (v.tag === "Cons") {
394
+ go$a0 = foldableVal.foldl(f)(b)(v._1);
395
+ go$a1 = v._2;
396
+ continue;
397
+ }
398
+ $runtime.fail();
399
+ }
400
+ return go$r;
401
+ };
402
+ return go(z)(m._2);
403
+ }
404
+ $runtime.fail();
405
+ },
406
+ foldr: f => z => m => {
407
+ if (m.tag === "Closure") {
408
+ return foldableEnv.foldr(f)(Data$dFoldable.foldrArray(b => a => Expr.foldableElim.foldr(f)(a)(b))(Expr.foldableElim.foldr(f)(z)(m._3))(Foreign$dObject.values(m._2)))(m._1);
409
+ }
410
+ if (m.tag === "Foreign") { return Data$dList$dTypes.foldableList.foldr(b => a => foldableVal.foldr(f)(a)(b))(z)(m._2); }
411
+ if (m.tag === "PartialConstr") { return Data$dList$dTypes.foldableList.foldr(b => a => foldableVal.foldr(f)(a)(b))(z)(m._2); }
412
+ $runtime.fail();
413
+ },
414
+ foldMap: dictMonoid => {
415
+ const $0 = dictMonoid.Semigroup0();
416
+ const foldMap1 = Foreign$dObject.foldMap(dictMonoid);
417
+ const foldMap9 = Expr.foldableElim.foldMap(dictMonoid);
418
+ const foldMap10 = Data$dList$dTypes.foldableList.foldMap(dictMonoid);
419
+ return f => m => {
420
+ if (m.tag === "Closure") {
421
+ return $0.append(foldableEnv.foldMap(dictMonoid)(f)(m._1))($0.append((() => {
422
+ const $1 = foldMap9(f);
423
+ return foldMap1(v => $1)(m._2);
424
+ })())(foldMap9(f)(m._3)));
425
+ }
426
+ if (m.tag === "Foreign") { return foldMap10(foldableVal.foldMap(dictMonoid)(f))(m._2); }
427
+ if (m.tag === "PartialConstr") { return foldMap10(foldableVal.foldMap(dictMonoid)(f))(m._2); }
428
+ $runtime.fail();
429
+ };
430
+ }
431
+ };
432
+ const foldableEnv = {
433
+ foldl: f => z => m => Foreign$dObject.fold(z$1 => v => foldableVal.foldl(f)(z$1))(z)(m),
434
+ foldr: f => z => m => Data$dFoldable.foldrArray(b => a => foldableVal.foldr(f)(a)(b))(z)(Foreign$dObject.values(m)),
435
+ foldMap: dictMonoid => {
436
+ const foldMap1 = Foreign$dObject.foldMap(dictMonoid);
437
+ return f => m => {
438
+ const $0 = foldableVal.foldMap(dictMonoid)(f);
439
+ return foldMap1(v => $0)(m);
440
+ };
441
+ }
442
+ };
443
+ const foldableDictRep = {
444
+ foldl: f => acc => v => Foreign$dObject.fold(z => v$1 => v1 => foldableVal.foldl(f)(f(z)(v1._1))(v1._2))(acc)(v),
445
+ foldr: f => Data$dFoldable.foldrDefault(foldableDictRep)(f),
446
+ foldMap: dictMonoid => f => foldableDictRep.foldl(acc => x => dictMonoid.Semigroup0().append(acc)(f(x)))(dictMonoid.mempty)
447
+ };
448
+ const foldableBaseVal = {
449
+ foldl: f => z => m => {
450
+ if (m.tag === "Int") { return z; }
451
+ if (m.tag === "Float") { return z; }
452
+ if (m.tag === "Str") { return z; }
453
+ if (m.tag === "Constr") {
454
+ const go = go$a0$copy => go$a1$copy => {
455
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
456
+ while (go$c) {
457
+ const b = go$a0, v = go$a1;
458
+ if (v.tag === "Nil") {
459
+ go$c = false;
460
+ go$r = b;
461
+ continue;
462
+ }
463
+ if (v.tag === "Cons") {
464
+ go$a0 = foldableVal.foldl(f)(b)(v._1);
465
+ go$a1 = v._2;
466
+ continue;
467
+ }
468
+ $runtime.fail();
469
+ }
470
+ return go$r;
471
+ };
472
+ return go(z)(m._2);
473
+ }
474
+ if (m.tag === "Dictionary") { return foldableDictRep.foldl(f)(z)(m._1); }
475
+ if (m.tag === "Matrix") { return foldableMatrixRep.foldl(f)(z)(m._1); }
476
+ if (m.tag === "Fun") { return foldableFun.foldl(f)(z)(m._1); }
477
+ $runtime.fail();
478
+ },
479
+ foldr: f => z => m => {
480
+ if (m.tag === "Int") { return z; }
481
+ if (m.tag === "Float") { return z; }
482
+ if (m.tag === "Str") { return z; }
483
+ if (m.tag === "Constr") { return Data$dList$dTypes.foldableList.foldr(b => a => foldableVal.foldr(f)(a)(b))(z)(m._2); }
484
+ if (m.tag === "Dictionary") { return Data$dFoldable.foldrDefault(foldableDictRep)(f)(z)(m._1); }
485
+ if (m.tag === "Matrix") { return Data$dFoldable.foldrDefault(foldableMatrixRep)(f)(z)(m._1); }
486
+ if (m.tag === "Fun") { return foldableFun.foldr(f)(z)(m._1); }
487
+ $runtime.fail();
488
+ },
489
+ foldMap: dictMonoid => {
490
+ const mempty = dictMonoid.mempty;
491
+ const foldMap8 = Data$dList$dTypes.foldableList.foldMap(dictMonoid);
492
+ return f => m => {
493
+ if (m.tag === "Int") { return mempty; }
494
+ if (m.tag === "Float") { return mempty; }
495
+ if (m.tag === "Str") { return mempty; }
496
+ if (m.tag === "Constr") { return foldMap8(foldableVal.foldMap(dictMonoid)(f))(m._2); }
497
+ if (m.tag === "Dictionary") { return foldableDictRep.foldMap(dictMonoid)(f)(m._1); }
498
+ if (m.tag === "Matrix") { return foldableMatrixRep.foldMap(dictMonoid)(f)(m._1); }
499
+ if (m.tag === "Fun") { return foldableFun.foldMap(dictMonoid)(f)(m._1); }
500
+ $runtime.fail();
501
+ };
502
+ }
503
+ };
504
+ const foldableEnvExpr = {
505
+ foldl: f => z => m => Expr.foldableExpr.foldl(f)(Foreign$dObject.fold(z$1 => v => foldableVal.foldl(f)(z$1))(z)(m._1))(m._2),
506
+ foldr: f => z => m => foldableEnv.foldr(f)(Expr.foldableExpr.foldr(f)(z)(m._2))(m._1),
507
+ foldMap: dictMonoid => {
508
+ const foldMap8 = foldableEnv.foldMap(dictMonoid);
509
+ const foldMap9 = Expr.foldableExpr.foldMap(dictMonoid);
510
+ return f => m => dictMonoid.Semigroup0().append(foldMap8(f)(m._1))(foldMap9(f)(m._2));
511
+ }
512
+ };
513
+ const traversableVal = {
514
+ traverse: dictApplicative => {
515
+ const Apply0 = dictApplicative.Apply0();
516
+ return f => m => Apply0.apply(Apply0.apply(Apply0.Functor0().map(v3 => v4 => v5 => $Val(v3, v4, v5))(f(m._1)))(Data$dTraversable.traversableMaybe.traverse(dictApplicative)(traversableVal.traverse(dictApplicative)(f))(m._2)))(traversableBaseVal.traverse(dictApplicative)(f)(m._3));
517
+ },
518
+ sequence: dictApplicative => v => traversableVal.traverse(dictApplicative)(identity)(v),
519
+ Functor0: () => functorVal,
520
+ Foldable1: () => foldableVal
521
+ };
522
+ const traversableMatrixRep = {
523
+ traverse: dictApplicative => {
524
+ const bitraverse1 = Data$dBitraversable.bitraversableTuple.bitraverse(dictApplicative);
525
+ const traverse9 = Data$dTraversable.traversableArray.traverse(dictApplicative);
526
+ return f => v => dictApplicative.Apply0().Functor0().map(MatrixRep)(bitraverse1(traverse9(traverse9(traversableVal.traverse(dictApplicative)(f))))(bitraverse1(traversableMatrixDim.traverse(dictApplicative)(f))(traversableMatrixDim.traverse(dictApplicative)(f)))(v));
527
+ },
528
+ sequence: dictApplicative => traversableMatrixRep.traverse(dictApplicative)(Data$dTraversable.identity),
529
+ Functor0: () => functorMatrixRep,
530
+ Foldable1: () => foldableMatrixRep
531
+ };
532
+ const traversableFun = {
533
+ traverse: dictApplicative => {
534
+ const Apply0 = dictApplicative.Apply0();
535
+ const $0 = Apply0.Functor0();
536
+ const traverse9 = Dict.traversableDict.traverse(dictApplicative);
537
+ const traverse10 = Expr.traversableElim.traverse(dictApplicative);
538
+ const traverse11 = Data$dList$dTypes.traversableList.traverse(dictApplicative);
539
+ return f => m => {
540
+ if (m.tag === "Closure") {
541
+ return Apply0.apply(Apply0.apply($0.map(v3 => v4 => v5 => $Fun("Closure", v3, v4, v5))(traversableEnv.traverse(dictApplicative)(f)(m._1)))(traverse9(traverse10(f))(m._2)))(traverse10(f)(m._3));
542
+ }
543
+ if (m.tag === "Foreign") {
544
+ const $1 = m._1;
545
+ return $0.map(v2 => $Fun("Foreign", $1, v2))(traverse11(traversableVal.traverse(dictApplicative)(f))(m._2));
546
+ }
547
+ if (m.tag === "PartialConstr") {
548
+ const $1 = m._1;
549
+ return $0.map(v2 => $Fun("PartialConstr", $1, v2))(traverse11(traversableVal.traverse(dictApplicative)(f))(m._2));
550
+ }
551
+ $runtime.fail();
552
+ };
553
+ },
554
+ sequence: dictApplicative => v => traversableFun.traverse(dictApplicative)(identity)(v),
555
+ Functor0: () => functorFun,
556
+ Foldable1: () => foldableFun
557
+ };
558
+ const traversableEnv = {
559
+ traverse: dictApplicative => {
560
+ const traverse9 = Dict.traversableDict.traverse(dictApplicative);
561
+ return f => m => dictApplicative.Apply0().Functor0().map(v1 => v1)(traverse9(traversableVal.traverse(dictApplicative)(f))(m));
562
+ },
563
+ sequence: dictApplicative => v => traversableEnv.traverse(dictApplicative)(identity)(v),
564
+ Functor0: () => functorEnv,
565
+ Foldable1: () => foldableEnv
566
+ };
567
+ const traversableDictRep = {
568
+ traverse: dictApplicative => {
569
+ const traverse9 = Dict.traversableDict.traverse(dictApplicative);
570
+ const bitraverse1 = Data$dBitraversable.bitraversableTuple.bitraverse(dictApplicative);
571
+ return f => v => dictApplicative.Apply0().Functor0().map(DictRep)(traverse9(bitraverse1(f)(traversableVal.traverse(dictApplicative)(f)))(v));
572
+ },
573
+ sequence: dictApplicative => traversableDictRep.traverse(dictApplicative)(Data$dTraversable.identity),
574
+ Functor0: () => functorDictRep,
575
+ Foldable1: () => foldableDictRep
576
+ };
577
+ const traversableBaseVal = {
578
+ traverse: dictApplicative => {
579
+ const $0 = dictApplicative.Apply0().Functor0();
580
+ const traverse9 = Data$dList$dTypes.traversableList.traverse(dictApplicative);
581
+ return f => m => {
582
+ if (m.tag === "Int") { return dictApplicative.pure($BaseVal("Int", m._1)); }
583
+ if (m.tag === "Float") { return dictApplicative.pure($BaseVal("Float", m._1)); }
584
+ if (m.tag === "Str") { return dictApplicative.pure($BaseVal("Str", m._1)); }
585
+ if (m.tag === "Constr") {
586
+ const $1 = m._1;
587
+ return $0.map(v2 => $BaseVal("Constr", $1, v2))(traverse9(traversableVal.traverse(dictApplicative)(f))(m._2));
588
+ }
589
+ if (m.tag === "Dictionary") { return $0.map(v1 => $BaseVal("Dictionary", v1))(traversableDictRep.traverse(dictApplicative)(f)(m._1)); }
590
+ if (m.tag === "Matrix") { return $0.map(v1 => $BaseVal("Matrix", v1))(traversableMatrixRep.traverse(dictApplicative)(f)(m._1)); }
591
+ if (m.tag === "Fun") { return $0.map(v1 => $BaseVal("Fun", v1))(traversableFun.traverse(dictApplicative)(f)(m._1)); }
592
+ $runtime.fail();
593
+ };
594
+ },
595
+ sequence: dictApplicative => v => traversableBaseVal.traverse(dictApplicative)(identity)(v),
596
+ Functor0: () => functorBaseVal,
597
+ Foldable1: () => foldableBaseVal
598
+ };
599
+ const traversableEnvExpr = {
600
+ traverse: dictApplicative => {
601
+ const Apply0 = dictApplicative.Apply0();
602
+ const traverse9 = traversableEnv.traverse(dictApplicative);
603
+ const traverse10 = Expr.traversableExpr.traverse(dictApplicative);
604
+ return f => m => Apply0.apply(Apply0.Functor0().map(v2 => v3 => $EnvExpr(v2, v3))(traverse9(f)(m._1)))(traverse10(f)(m._2));
605
+ },
606
+ sequence: dictApplicative => v => traversableEnvExpr.traverse(dictApplicative)(identity)(v),
607
+ Functor0: () => functorEnvExpr,
608
+ Foldable1: () => foldableEnvExpr
609
+ };
610
+ const expandableMatrixDimRawMat = dictBoundedJoinSemilattice => (
611
+ {
612
+ expand: v => v1 => {
613
+ const $0 = v._1;
614
+ const $1 = v1._1;
615
+ return Data$dTuple.$Tuple(Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0), v._2);
616
+ }
617
+ }
618
+ );
619
+ const expandableValRawVal = dictBoundedJoinSemilattice => (
620
+ {
621
+ expand: v => v1 => $Val(
622
+ v._1,
623
+ Lattice.expandableMaybeMaybe(expandableValRawVal(dictBoundedJoinSemilattice)).expand(v._2)(v1._2),
624
+ expandableBaseValRawBaseV(dictBoundedJoinSemilattice).expand(v._3)(v1._3)
625
+ )
626
+ }
627
+ );
628
+ const expandableMatrixRepRawMat = dictBoundedJoinSemilattice => {
629
+ const $0 = expandableMatrixDimRawMat(dictBoundedJoinSemilattice);
630
+ return {
631
+ expand: v => v1 => Data$dTuple.$Tuple(
632
+ (() => {
633
+ const expand1 = expandableValRawVal(dictBoundedJoinSemilattice).expand;
634
+ return Data$dArray.zipWithImpl(xs => Data$dArray.zipWith(expand1)(xs), v._1, v1._1);
635
+ })(),
636
+ Data$dTuple.$Tuple($0.expand(v._2._1)(v1._2._1), $0.expand(v._2._2)(v1._2._2))
637
+ )
638
+ };
639
+ };
640
+ const expandableFunRawFun = dictBoundedJoinSemilattice => {
641
+ const expandableElimRawElim = Expr.expandableElimRawElim(dictBoundedJoinSemilattice);
642
+ return {
643
+ expand: v => v1 => {
644
+ if (v.tag === "Closure") {
645
+ if (v1.tag === "Closure") {
646
+ return $Fun(
647
+ "Closure",
648
+ expandableEnvRawEnv(dictBoundedJoinSemilattice).expand(v._1)(v1._1),
649
+ Lattice.expandableDictDict({
650
+ botOf: Expr.functorElim.map((() => {
651
+ const $0 = dictBoundedJoinSemilattice.bot;
652
+ return v$1 => $0;
653
+ })())
654
+ })(expandableElimRawElim).expand(v._2)(v1._2),
655
+ expandableElimRawElim.expand(v._3)(v1._3)
656
+ );
657
+ }
658
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
659
+ }
660
+ if (v.tag === "Foreign") {
661
+ if (v1.tag === "Foreign") {
662
+ return $Fun(
663
+ "Foreign",
664
+ v._1,
665
+ (() => {
666
+ const $0 = expandableValRawVal(dictBoundedJoinSemilattice);
667
+ const go = go$a0$copy => go$a1$copy => go$a2$copy => {
668
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$a2 = go$a2$copy, go$c = true, go$r;
669
+ while (go$c) {
670
+ const v$1 = go$a0, v1$1 = go$a1, v2 = go$a2;
671
+ if (v$1.tag === "Nil") {
672
+ go$c = false;
673
+ go$r = v2;
674
+ continue;
675
+ }
676
+ if (v1$1.tag === "Nil") {
677
+ go$c = false;
678
+ go$r = v2;
679
+ continue;
680
+ }
681
+ if (v$1.tag === "Cons" && v1$1.tag === "Cons") {
682
+ go$a0 = v$1._2;
683
+ go$a1 = v1$1._2;
684
+ go$a2 = Data$dList$dTypes.$List("Cons", $0.expand(v$1._1)(v1$1._1), v2);
685
+ continue;
686
+ }
687
+ $runtime.fail();
688
+ }
689
+ return go$r;
690
+ };
691
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
692
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
693
+ while (go$1$c) {
694
+ const v$1 = go$1$a0, v1$1 = go$1$a1;
695
+ if (v1$1.tag === "Nil") {
696
+ go$1$c = false;
697
+ go$1$r = v$1;
698
+ continue;
699
+ }
700
+ if (v1$1.tag === "Cons") {
701
+ go$1$a0 = Data$dList$dTypes.$List("Cons", v1$1._1, v$1);
702
+ go$1$a1 = v1$1._2;
703
+ continue;
704
+ }
705
+ $runtime.fail();
706
+ }
707
+ return go$1$r;
708
+ };
709
+ return go$1(Data$dList$dTypes.Nil)(go(v._2)(v1._2)(Data$dList$dTypes.Nil));
710
+ })()
711
+ );
712
+ }
713
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
714
+ }
715
+ if (v.tag === "PartialConstr" && v1.tag === "PartialConstr") {
716
+ const $0 = v._1;
717
+ const $1 = v1._1;
718
+ return $Fun(
719
+ "PartialConstr",
720
+ Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0),
721
+ (() => {
722
+ const $2 = expandableValRawVal(dictBoundedJoinSemilattice);
723
+ const go = go$a0$copy => go$a1$copy => go$a2$copy => {
724
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$a2 = go$a2$copy, go$c = true, go$r;
725
+ while (go$c) {
726
+ const v$1 = go$a0, v1$1 = go$a1, v2 = go$a2;
727
+ if (v$1.tag === "Nil") {
728
+ go$c = false;
729
+ go$r = v2;
730
+ continue;
731
+ }
732
+ if (v1$1.tag === "Nil") {
733
+ go$c = false;
734
+ go$r = v2;
735
+ continue;
736
+ }
737
+ if (v$1.tag === "Cons" && v1$1.tag === "Cons") {
738
+ go$a0 = v$1._2;
739
+ go$a1 = v1$1._2;
740
+ go$a2 = Data$dList$dTypes.$List("Cons", $2.expand(v$1._1)(v1$1._1), v2);
741
+ continue;
742
+ }
743
+ $runtime.fail();
744
+ }
745
+ return go$r;
746
+ };
747
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
748
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
749
+ while (go$1$c) {
750
+ const v$1 = go$1$a0, v1$1 = go$1$a1;
751
+ if (v1$1.tag === "Nil") {
752
+ go$1$c = false;
753
+ go$1$r = v$1;
754
+ continue;
755
+ }
756
+ if (v1$1.tag === "Cons") {
757
+ go$1$a0 = Data$dList$dTypes.$List("Cons", v1$1._1, v$1);
758
+ go$1$a1 = v1$1._2;
759
+ continue;
760
+ }
761
+ $runtime.fail();
762
+ }
763
+ return go$1$r;
764
+ };
765
+ return go$1(Data$dList$dTypes.Nil)(go(v._2)(v1._2)(Data$dList$dTypes.Nil));
766
+ })()
767
+ );
768
+ }
769
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
770
+ }
771
+ };
772
+ };
773
+ const expandableEnvRawEnv = dictBoundedJoinSemilattice => {
774
+ const expandableDictDict = Lattice.expandableDictDict({
775
+ botOf: functorVal.map((() => {
776
+ const $0 = dictBoundedJoinSemilattice.bot;
777
+ return v => $0;
778
+ })())
779
+ });
780
+ return {expand: v => v1 => expandableDictDict(expandableValRawVal(dictBoundedJoinSemilattice)).expand(v)(v1)};
781
+ };
782
+ const expandableDictRepRawDictR = dictBoundedJoinSemilattice => {
783
+ const expandableDictDict = Lattice.expandableDictDict(botOfUnit$x215Raw$x215(dictBoundedJoinSemilattice));
784
+ return {
785
+ expand: v => v1 => expandableDictDict((() => {
786
+ const $0 = expandableValRawVal(dictBoundedJoinSemilattice);
787
+ return {expand: v$1 => v1$1 => Data$dTuple.$Tuple(v$1._1, $0.expand(v$1._2)(v1$1._2))};
788
+ })()).expand(v)(v1)
789
+ };
790
+ };
791
+ const expandableBaseValRawBaseV = dictBoundedJoinSemilattice => (
792
+ {
793
+ expand: v => v1 => {
794
+ if (v.tag === "Int") {
795
+ if (v1.tag === "Int") {
796
+ const $0 = v._1;
797
+ const $1 = v1._1;
798
+ return $BaseVal("Int", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
799
+ }
800
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
801
+ }
802
+ if (v.tag === "Float") {
803
+ if (v1.tag === "Float") {
804
+ const $0 = v._1;
805
+ const $1 = v1._1;
806
+ return $BaseVal("Float", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
807
+ }
808
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
809
+ }
810
+ if (v.tag === "Str") {
811
+ if (v1.tag === "Str") {
812
+ const $0 = v._1;
813
+ const $1 = v1._1;
814
+ return $BaseVal("Str", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
815
+ }
816
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
817
+ }
818
+ if (v.tag === "Dictionary") {
819
+ if (v1.tag === "Dictionary") { return $BaseVal("Dictionary", expandableDictRepRawDictR(dictBoundedJoinSemilattice).expand(v._1)(v1._1)); }
820
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
821
+ }
822
+ if (v.tag === "Constr") {
823
+ if (v1.tag === "Constr") {
824
+ const $0 = v._1;
825
+ const $1 = v1._1;
826
+ return $BaseVal(
827
+ "Constr",
828
+ Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0),
829
+ (() => {
830
+ const $2 = expandableValRawVal(dictBoundedJoinSemilattice);
831
+ const go = go$a0$copy => go$a1$copy => go$a2$copy => {
832
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$a2 = go$a2$copy, go$c = true, go$r;
833
+ while (go$c) {
834
+ const v$1 = go$a0, v1$1 = go$a1, v2 = go$a2;
835
+ if (v$1.tag === "Nil") {
836
+ go$c = false;
837
+ go$r = v2;
838
+ continue;
839
+ }
840
+ if (v1$1.tag === "Nil") {
841
+ go$c = false;
842
+ go$r = v2;
843
+ continue;
844
+ }
845
+ if (v$1.tag === "Cons" && v1$1.tag === "Cons") {
846
+ go$a0 = v$1._2;
847
+ go$a1 = v1$1._2;
848
+ go$a2 = Data$dList$dTypes.$List("Cons", $2.expand(v$1._1)(v1$1._1), v2);
849
+ continue;
850
+ }
851
+ $runtime.fail();
852
+ }
853
+ return go$r;
854
+ };
855
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
856
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
857
+ while (go$1$c) {
858
+ const v$1 = go$1$a0, v1$1 = go$1$a1;
859
+ if (v1$1.tag === "Nil") {
860
+ go$1$c = false;
861
+ go$1$r = v$1;
862
+ continue;
863
+ }
864
+ if (v1$1.tag === "Cons") {
865
+ go$1$a0 = Data$dList$dTypes.$List("Cons", v1$1._1, v$1);
866
+ go$1$a1 = v1$1._2;
867
+ continue;
868
+ }
869
+ $runtime.fail();
870
+ }
871
+ return go$1$r;
872
+ };
873
+ return go$1(Data$dList$dTypes.Nil)(go(v._2)(v1._2)(Data$dList$dTypes.Nil));
874
+ })()
875
+ );
876
+ }
877
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
878
+ }
879
+ if (v.tag === "Matrix") {
880
+ if (v1.tag === "Matrix") { return $BaseVal("Matrix", expandableMatrixRepRawMat(dictBoundedJoinSemilattice).expand(v._1)(v1._1)); }
881
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
882
+ }
883
+ if (v.tag === "Fun" && v1.tag === "Fun") { return $BaseVal("Fun", expandableFunRawFun(dictBoundedJoinSemilattice).expand(v._1)(v1._1)); }
884
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
885
+ }
886
+ }
887
+ );
888
+ const eqMatrixDim = dictEq => ({eq: x => y => x._1 === y._1 && dictEq.eq(x._2)(y._2)});
889
+ const ordMatrixDim = dictOrd => {
890
+ const $0 = dictOrd.Eq0();
891
+ const eqMatrixDim1 = {eq: x => y => x._1 === y._1 && $0.eq(x._2)(y._2)};
892
+ return {compare: x => y => ordTuple(dictOrd).compare(x)(y), Eq0: () => eqMatrixDim1};
893
+ };
894
+ const eqForeignOp = {eq: v => v1 => v._1 === v1._1};
895
+ const ordForeignOp = {compare: v => v1 => Data$dOrd.ordString.compare(v._1)(v1._1), Eq0: () => eqForeignOp};
896
+ const eqVal = dictEq => (
897
+ {
898
+ eq: x => y => {
899
+ const $0 = eqVal(dictEq);
900
+ return dictEq.eq(x._1)(y._1) && (x._2.tag === "Nothing" ? y._2.tag === "Nothing" : x._2.tag === "Just" && y._2.tag === "Just" && $0.eq(x._2._1)(y._2._1)) && eqBaseVal(dictEq).eq(x._3)(y._3);
901
+ }
902
+ }
903
+ );
904
+ const eqMatrixRep = dictEq => (
905
+ {
906
+ eq: x => y => Data$dEq.eqArrayImpl(Data$dEq.eqArrayImpl(eqVal(dictEq).eq))(x._1)(y._1) && x._2._1._1 === y._2._1._1 && dictEq.eq(x._2._1._2)(y._2._1._2) && x._2._2._1 === y._2._2._1 && dictEq.eq(x._2._2._2)(y._2._2._2)
907
+ }
908
+ );
909
+ const eqFun = dictEq => {
910
+ const eqElim = Expr.eqElim(dictEq);
911
+ return {
912
+ eq: x => y => {
913
+ if (x.tag === "Closure") { return y.tag === "Closure" && eqEnv(dictEq).eq(x._1)(y._1) && Foreign$dObject.eqObject(eqElim).eq(x._2)(y._2) && eqElim.eq(x._3)(y._3); }
914
+ if (x.tag === "Foreign") {
915
+ return y.tag === "Foreign" && (() => {
916
+ const $0 = eqVal(dictEq);
917
+ return x._1._1 === y._1._1 && (() => {
918
+ const go = v => v1 => v2 => {
919
+ if (!v2) { return false; }
920
+ if (v.tag === "Nil") { return v1.tag === "Nil" && v2; }
921
+ return v.tag === "Cons" && v1.tag === "Cons" && go(v._2)(v1._2)(v2 && $0.eq(v1._1)(v._1));
922
+ };
923
+ return go(x._2)(y._2)(true);
924
+ })();
925
+ })();
926
+ }
927
+ return x.tag === "PartialConstr" && y.tag === "PartialConstr" && (() => {
928
+ const $0 = eqVal(dictEq);
929
+ return x._1 === y._1 && (() => {
930
+ const go = v => v1 => v2 => {
931
+ if (!v2) { return false; }
932
+ if (v.tag === "Nil") { return v1.tag === "Nil" && v2; }
933
+ return v.tag === "Cons" && v1.tag === "Cons" && go(v._2)(v1._2)(v2 && $0.eq(v1._1)(v._1));
934
+ };
935
+ return go(x._2)(y._2)(true);
936
+ })();
937
+ })();
938
+ }
939
+ };
940
+ };
941
+ const eqEnv = dictEq => ({eq: x => y => Foreign$dObject.eqObject(eqVal(dictEq)).eq(x)(y)});
942
+ const eqDictRep = dictEq => (
943
+ {
944
+ eq: x => y => {
945
+ const $0 = eqVal(dictEq);
946
+ return Foreign$dObject.eqObject({eq: x$1 => y$1 => dictEq.eq(x$1._1)(y$1._1) && $0.eq(x$1._2)(y$1._2)}).eq(x)(y);
947
+ }
948
+ }
949
+ );
950
+ const eqBaseVal = dictEq => (
951
+ {
952
+ eq: x => y => {
953
+ if (x.tag === "Int") { return y.tag === "Int" && x._1 === y._1; }
954
+ if (x.tag === "Float") { return y.tag === "Float" && x._1 === y._1; }
955
+ if (x.tag === "Str") { return y.tag === "Str" && x._1 === y._1; }
956
+ if (x.tag === "Constr") {
957
+ return y.tag === "Constr" && (() => {
958
+ const $0 = eqVal(dictEq);
959
+ return x._1 === y._1 && (() => {
960
+ const go = v => v1 => v2 => {
961
+ if (!v2) { return false; }
962
+ if (v.tag === "Nil") { return v1.tag === "Nil" && v2; }
963
+ return v.tag === "Cons" && v1.tag === "Cons" && go(v._2)(v1._2)(v2 && $0.eq(v1._1)(v._1));
964
+ };
965
+ return go(x._2)(y._2)(true);
966
+ })();
967
+ })();
968
+ }
969
+ if (x.tag === "Dictionary") { return y.tag === "Dictionary" && eqDictRep(dictEq).eq(x._1)(y._1); }
970
+ if (x.tag === "Matrix") { return y.tag === "Matrix" && eqMatrixRep(dictEq).eq(x._1)(y._1); }
971
+ return x.tag === "Fun" && y.tag === "Fun" && eqFun(dictEq).eq(x._1)(y._1);
972
+ }
973
+ }
974
+ );
975
+ const eqEnvExpr = dictEq => ({eq: x => y => Foreign$dObject.eqObject(eqVal(dictEq)).eq(x._1)(y._1) && Expr.eqExpr(dictEq).eq(x._2)(y._2)});
976
+ const ordVal = dictOrd => {
977
+ const eqVal1 = eqVal(dictOrd.Eq0());
978
+ return {
979
+ compare: x => y => {
980
+ const v = dictOrd.compare(x._1)(y._1);
981
+ if (v === "LT") { return Data$dOrdering.LT; }
982
+ if (v === "GT") { return Data$dOrdering.GT; }
983
+ const $0 = ordVal(dictOrd);
984
+ const v1 = (() => {
985
+ if (x._2.tag === "Nothing") {
986
+ if (y._2.tag === "Nothing") { return Data$dOrdering.EQ; }
987
+ return Data$dOrdering.LT;
988
+ }
989
+ if (y._2.tag === "Nothing") { return Data$dOrdering.GT; }
990
+ if (x._2.tag === "Just" && y._2.tag === "Just") { return $0.compare(x._2._1)(y._2._1); }
991
+ $runtime.fail();
992
+ })();
993
+ if (v1 === "LT") { return Data$dOrdering.LT; }
994
+ if (v1 === "GT") { return Data$dOrdering.GT; }
995
+ return ordBaseVal(dictOrd).compare(x._3)(y._3);
996
+ },
997
+ Eq0: () => eqVal1
998
+ };
999
+ };
1000
+ const ordMatrixRep = dictOrd => {
1001
+ const ordMatrixDim1 = ordMatrixDim(dictOrd);
1002
+ const eqMatrixRep1 = eqMatrixRep(dictOrd.Eq0());
1003
+ return {
1004
+ compare: x => y => {
1005
+ const v = Data$dOrd.ordArray(Data$dOrd.ordArray(ordVal(dictOrd))).compare(x._1)(y._1);
1006
+ if (v === "LT") { return Data$dOrdering.LT; }
1007
+ if (v === "GT") { return Data$dOrdering.GT; }
1008
+ const v$1 = ordMatrixDim1.compare(x._2._1)(y._2._1);
1009
+ if (v$1 === "LT") { return Data$dOrdering.LT; }
1010
+ if (v$1 === "GT") { return Data$dOrdering.GT; }
1011
+ return ordMatrixDim1.compare(x._2._2)(y._2._2);
1012
+ },
1013
+ Eq0: () => eqMatrixRep1
1014
+ };
1015
+ };
1016
+ const ordFun = dictOrd => {
1017
+ const ordElim = Expr.ordElim(dictOrd);
1018
+ const eqFun1 = eqFun(dictOrd.Eq0());
1019
+ return {
1020
+ compare: x => y => {
1021
+ if (x.tag === "Closure") {
1022
+ if (y.tag === "Closure") {
1023
+ const v = ordEnv(dictOrd).compare(x._1)(y._1);
1024
+ if (v === "LT") { return Data$dOrdering.LT; }
1025
+ if (v === "GT") { return Data$dOrdering.GT; }
1026
+ const v1 = Dict.ordDict(ordElim).compare(x._2)(y._2);
1027
+ if (v1 === "LT") { return Data$dOrdering.LT; }
1028
+ if (v1 === "GT") { return Data$dOrdering.GT; }
1029
+ return ordElim.compare(x._3)(y._3);
1030
+ }
1031
+ return Data$dOrdering.LT;
1032
+ }
1033
+ if (y.tag === "Closure") { return Data$dOrdering.GT; }
1034
+ if (x.tag === "Foreign") {
1035
+ if (y.tag === "Foreign") {
1036
+ const v = Data$dOrd.ordString.compare(x._1._1)(y._1._1);
1037
+ if (v === "LT") { return Data$dOrdering.LT; }
1038
+ if (v === "GT") { return Data$dOrdering.GT; }
1039
+ return Data$dList$dTypes.ordList(ordVal(dictOrd)).compare(x._2)(y._2);
1040
+ }
1041
+ return Data$dOrdering.LT;
1042
+ }
1043
+ if (y.tag === "Foreign") { return Data$dOrdering.GT; }
1044
+ if (x.tag === "PartialConstr" && y.tag === "PartialConstr") {
1045
+ const v = Data$dOrd.ordString.compare(x._1)(y._1);
1046
+ if (v === "LT") { return Data$dOrdering.LT; }
1047
+ if (v === "GT") { return Data$dOrdering.GT; }
1048
+ return Data$dList$dTypes.ordList(ordVal(dictOrd)).compare(x._2)(y._2);
1049
+ }
1050
+ $runtime.fail();
1051
+ },
1052
+ Eq0: () => eqFun1
1053
+ };
1054
+ };
1055
+ const ordEnv = dictOrd => {
1056
+ const $0 = dictOrd.Eq0();
1057
+ const eqEnv1 = {eq: x => y => Foreign$dObject.eqObject(eqVal($0)).eq(x)(y)};
1058
+ return {compare: x => y => Dict.ordDict(ordVal(dictOrd)).compare(x)(y), Eq0: () => eqEnv1};
1059
+ };
1060
+ const ordDictRep = dictOrd => {
1061
+ const $0 = dictOrd.Eq0();
1062
+ const eqDictRep1 = eqDictRep(dictOrd.Eq0());
1063
+ return {
1064
+ compare: x => y => Dict.ordDict((() => {
1065
+ const $1 = ordVal(dictOrd);
1066
+ const $2 = $1.Eq0();
1067
+ const eqTuple2 = {eq: x$1 => y$1 => $0.eq(x$1._1)(y$1._1) && $2.eq(x$1._2)(y$1._2)};
1068
+ return {
1069
+ compare: x$1 => y$1 => {
1070
+ const v = dictOrd.compare(x$1._1)(y$1._1);
1071
+ if (v === "LT") { return Data$dOrdering.LT; }
1072
+ if (v === "GT") { return Data$dOrdering.GT; }
1073
+ return $1.compare(x$1._2)(y$1._2);
1074
+ },
1075
+ Eq0: () => eqTuple2
1076
+ };
1077
+ })()).compare(x)(y),
1078
+ Eq0: () => eqDictRep1
1079
+ };
1080
+ };
1081
+ const ordBaseVal = dictOrd => {
1082
+ const eqBaseVal1 = eqBaseVal(dictOrd.Eq0());
1083
+ return {
1084
+ compare: x => y => {
1085
+ if (x.tag === "Int") {
1086
+ if (y.tag === "Int") { return Data$dOrd.ordInt.compare(x._1)(y._1); }
1087
+ return Data$dOrdering.LT;
1088
+ }
1089
+ if (y.tag === "Int") { return Data$dOrdering.GT; }
1090
+ if (x.tag === "Float") {
1091
+ if (y.tag === "Float") { return Data$dOrd.ordNumber.compare(x._1)(y._1); }
1092
+ return Data$dOrdering.LT;
1093
+ }
1094
+ if (y.tag === "Float") { return Data$dOrdering.GT; }
1095
+ if (x.tag === "Str") {
1096
+ if (y.tag === "Str") { return Data$dOrd.ordString.compare(x._1)(y._1); }
1097
+ return Data$dOrdering.LT;
1098
+ }
1099
+ if (y.tag === "Str") { return Data$dOrdering.GT; }
1100
+ if (x.tag === "Constr") {
1101
+ if (y.tag === "Constr") {
1102
+ const v = Data$dOrd.ordString.compare(x._1)(y._1);
1103
+ if (v === "LT") { return Data$dOrdering.LT; }
1104
+ if (v === "GT") { return Data$dOrdering.GT; }
1105
+ return Data$dList$dTypes.ordList(ordVal(dictOrd)).compare(x._2)(y._2);
1106
+ }
1107
+ return Data$dOrdering.LT;
1108
+ }
1109
+ if (y.tag === "Constr") { return Data$dOrdering.GT; }
1110
+ if (x.tag === "Dictionary") {
1111
+ if (y.tag === "Dictionary") { return ordDictRep(dictOrd).compare(x._1)(y._1); }
1112
+ return Data$dOrdering.LT;
1113
+ }
1114
+ if (y.tag === "Dictionary") { return Data$dOrdering.GT; }
1115
+ if (x.tag === "Matrix") {
1116
+ if (y.tag === "Matrix") { return ordMatrixRep(dictOrd).compare(x._1)(y._1); }
1117
+ return Data$dOrdering.LT;
1118
+ }
1119
+ if (y.tag === "Matrix") { return Data$dOrdering.GT; }
1120
+ if (x.tag === "Fun" && y.tag === "Fun") { return ordFun(dictOrd).compare(x._1)(y._1); }
1121
+ $runtime.fail();
1122
+ },
1123
+ Eq0: () => eqBaseVal1
1124
+ };
1125
+ };
1126
+ const ordEnvExpr = dictOrd => {
1127
+ const eqEnvExpr1 = eqEnvExpr(dictOrd.Eq0());
1128
+ return {
1129
+ compare: x => y => {
1130
+ const v = ordEnv(dictOrd).compare(x._1)(y._1);
1131
+ if (v === "LT") { return Data$dOrdering.LT; }
1132
+ if (v === "GT") { return Data$dOrdering.GT; }
1133
+ return Expr.ordExpr(dictOrd).compare(x._2)(y._2);
1134
+ },
1135
+ Eq0: () => eqEnvExpr1
1136
+ };
1137
+ };
1138
+ const applyMatrixDim = {
1139
+ apply: v => v1 => {
1140
+ const $0 = v._1;
1141
+ const $1 = v1._1;
1142
+ return Data$dTuple.$Tuple(Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0), v._2(v1._2));
1143
+ },
1144
+ Functor0: () => functorMatrixDim
1145
+ };
1146
+ const applyVal = {
1147
+ apply: v => v1 => {
1148
+ if (v._2.tag === "Nothing") {
1149
+ if (v1._2.tag === "Nothing") { return $Val(v._1(v1._1), Data$dMaybe.Nothing, applyBaseVal.apply(v._3)(v1._3)); }
1150
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1151
+ }
1152
+ if (v._2.tag === "Just" && v1._2.tag === "Just") { return $Val(v._1(v1._1), Data$dMaybe.$Maybe("Just", applyVal.apply(v._2._1)(v1._2._1)), applyBaseVal.apply(v._3)(v1._3)); }
1153
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1154
+ },
1155
+ Functor0: () => functorVal
1156
+ };
1157
+ const applyMatrixRep = {
1158
+ apply: v => v1 => Data$dTuple.$Tuple(
1159
+ Data$dArray.zipWithImpl(Data$dArray.zipWith(applyVal.apply), v._1, v1._1),
1160
+ Data$dTuple.$Tuple(applyMatrixDim.apply(v._2._1)(v1._2._1), applyMatrixDim.apply(v._2._2)(v1._2._2))
1161
+ ),
1162
+ Functor0: () => functorMatrixRep
1163
+ };
1164
+ const applyFun = {
1165
+ apply: v => v1 => {
1166
+ if (v.tag === "Closure") {
1167
+ if (v1.tag === "Closure") {
1168
+ return $Fun(
1169
+ "Closure",
1170
+ applyEnv.apply(v._1)(v1._1),
1171
+ Util$dMap.intersectionWith_Object(Data$dFunction.apply)(Foreign$dObject._fmapObject(v._2, Expr.applyElim.apply))(v1._2),
1172
+ Expr.applyElim.apply(v._3)(v1._3)
1173
+ );
1174
+ }
1175
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1176
+ }
1177
+ if (v.tag === "Foreign") {
1178
+ if (v1.tag === "Foreign") {
1179
+ return $Fun(
1180
+ "Foreign",
1181
+ v._1,
1182
+ (() => {
1183
+ const go = go$a0$copy => go$a1$copy => go$a2$copy => {
1184
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$a2 = go$a2$copy, go$c = true, go$r;
1185
+ while (go$c) {
1186
+ const v$1 = go$a0, v1$1 = go$a1, v2 = go$a2;
1187
+ if (v$1.tag === "Nil") {
1188
+ go$c = false;
1189
+ go$r = v2;
1190
+ continue;
1191
+ }
1192
+ if (v1$1.tag === "Nil") {
1193
+ go$c = false;
1194
+ go$r = v2;
1195
+ continue;
1196
+ }
1197
+ if (v$1.tag === "Cons" && v1$1.tag === "Cons") {
1198
+ go$a0 = v$1._2;
1199
+ go$a1 = v1$1._2;
1200
+ go$a2 = Data$dList$dTypes.$List("Cons", applyVal.apply(v$1._1)(v1$1._1), v2);
1201
+ continue;
1202
+ }
1203
+ $runtime.fail();
1204
+ }
1205
+ return go$r;
1206
+ };
1207
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
1208
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
1209
+ while (go$1$c) {
1210
+ const v$1 = go$1$a0, v1$1 = go$1$a1;
1211
+ if (v1$1.tag === "Nil") {
1212
+ go$1$c = false;
1213
+ go$1$r = v$1;
1214
+ continue;
1215
+ }
1216
+ if (v1$1.tag === "Cons") {
1217
+ go$1$a0 = Data$dList$dTypes.$List("Cons", v1$1._1, v$1);
1218
+ go$1$a1 = v1$1._2;
1219
+ continue;
1220
+ }
1221
+ $runtime.fail();
1222
+ }
1223
+ return go$1$r;
1224
+ };
1225
+ return go$1(Data$dList$dTypes.Nil)(go(v._2)(v1._2)(Data$dList$dTypes.Nil));
1226
+ })()
1227
+ );
1228
+ }
1229
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1230
+ }
1231
+ if (v.tag === "PartialConstr" && v1.tag === "PartialConstr") {
1232
+ const $0 = v._1;
1233
+ const $1 = v1._1;
1234
+ return $Fun(
1235
+ "PartialConstr",
1236
+ Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0),
1237
+ (() => {
1238
+ const go = go$a0$copy => go$a1$copy => go$a2$copy => {
1239
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$a2 = go$a2$copy, go$c = true, go$r;
1240
+ while (go$c) {
1241
+ const v$1 = go$a0, v1$1 = go$a1, v2 = go$a2;
1242
+ if (v$1.tag === "Nil") {
1243
+ go$c = false;
1244
+ go$r = v2;
1245
+ continue;
1246
+ }
1247
+ if (v1$1.tag === "Nil") {
1248
+ go$c = false;
1249
+ go$r = v2;
1250
+ continue;
1251
+ }
1252
+ if (v$1.tag === "Cons" && v1$1.tag === "Cons") {
1253
+ go$a0 = v$1._2;
1254
+ go$a1 = v1$1._2;
1255
+ go$a2 = Data$dList$dTypes.$List("Cons", applyVal.apply(v$1._1)(v1$1._1), v2);
1256
+ continue;
1257
+ }
1258
+ $runtime.fail();
1259
+ }
1260
+ return go$r;
1261
+ };
1262
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
1263
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
1264
+ while (go$1$c) {
1265
+ const v$1 = go$1$a0, v1$1 = go$1$a1;
1266
+ if (v1$1.tag === "Nil") {
1267
+ go$1$c = false;
1268
+ go$1$r = v$1;
1269
+ continue;
1270
+ }
1271
+ if (v1$1.tag === "Cons") {
1272
+ go$1$a0 = Data$dList$dTypes.$List("Cons", v1$1._1, v$1);
1273
+ go$1$a1 = v1$1._2;
1274
+ continue;
1275
+ }
1276
+ $runtime.fail();
1277
+ }
1278
+ return go$1$r;
1279
+ };
1280
+ return go$1(Data$dList$dTypes.Nil)(go(v._2)(v1._2)(Data$dList$dTypes.Nil));
1281
+ })()
1282
+ );
1283
+ }
1284
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1285
+ },
1286
+ Functor0: () => functorFun
1287
+ };
1288
+ const applyEnv = {apply: v => v1 => Util$dMap.intersectionWith_Object(Data$dFunction.apply)(Foreign$dObject._fmapObject(v, applyVal.apply))(v1), Functor0: () => functorEnv};
1289
+ const applyDictRep = {
1290
+ apply: v => v1 => Util$dMap.intersectionWith_Object(v2 => {
1291
+ const $0 = v2._2;
1292
+ return v3 => Data$dTuple.$Tuple(v2._1(v3._1), applyVal.apply($0)(v3._2));
1293
+ })(v)(v1),
1294
+ Functor0: () => functorDictRep
1295
+ };
1296
+ const applyBaseVal = {
1297
+ apply: v => v1 => {
1298
+ if (v.tag === "Int") {
1299
+ if (v1.tag === "Int") {
1300
+ const $0 = v._1;
1301
+ const $1 = v1._1;
1302
+ return $BaseVal("Int", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
1303
+ }
1304
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1305
+ }
1306
+ if (v.tag === "Float") {
1307
+ if (v1.tag === "Float") {
1308
+ const $0 = v._1;
1309
+ const $1 = v1._1;
1310
+ return $BaseVal("Float", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
1311
+ }
1312
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1313
+ }
1314
+ if (v.tag === "Str") {
1315
+ if (v1.tag === "Str") {
1316
+ const $0 = v._1;
1317
+ const $1 = v1._1;
1318
+ return $BaseVal("Str", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
1319
+ }
1320
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1321
+ }
1322
+ if (v.tag === "Constr") {
1323
+ if (v1.tag === "Constr") {
1324
+ const $0 = v._1;
1325
+ const $1 = v1._1;
1326
+ return $BaseVal(
1327
+ "Constr",
1328
+ Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0),
1329
+ (() => {
1330
+ const go = go$a0$copy => go$a1$copy => go$a2$copy => {
1331
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$a2 = go$a2$copy, go$c = true, go$r;
1332
+ while (go$c) {
1333
+ const v$1 = go$a0, v1$1 = go$a1, v2 = go$a2;
1334
+ if (v$1.tag === "Nil") {
1335
+ go$c = false;
1336
+ go$r = v2;
1337
+ continue;
1338
+ }
1339
+ if (v1$1.tag === "Nil") {
1340
+ go$c = false;
1341
+ go$r = v2;
1342
+ continue;
1343
+ }
1344
+ if (v$1.tag === "Cons" && v1$1.tag === "Cons") {
1345
+ go$a0 = v$1._2;
1346
+ go$a1 = v1$1._2;
1347
+ go$a2 = Data$dList$dTypes.$List("Cons", applyVal.apply(v$1._1)(v1$1._1), v2);
1348
+ continue;
1349
+ }
1350
+ $runtime.fail();
1351
+ }
1352
+ return go$r;
1353
+ };
1354
+ const go$1 = go$1$a0$copy => go$1$a1$copy => {
1355
+ let go$1$a0 = go$1$a0$copy, go$1$a1 = go$1$a1$copy, go$1$c = true, go$1$r;
1356
+ while (go$1$c) {
1357
+ const v$1 = go$1$a0, v1$1 = go$1$a1;
1358
+ if (v1$1.tag === "Nil") {
1359
+ go$1$c = false;
1360
+ go$1$r = v$1;
1361
+ continue;
1362
+ }
1363
+ if (v1$1.tag === "Cons") {
1364
+ go$1$a0 = Data$dList$dTypes.$List("Cons", v1$1._1, v$1);
1365
+ go$1$a1 = v1$1._2;
1366
+ continue;
1367
+ }
1368
+ $runtime.fail();
1369
+ }
1370
+ return go$1$r;
1371
+ };
1372
+ return go$1(Data$dList$dTypes.Nil)(go(v._2)(v1._2)(Data$dList$dTypes.Nil));
1373
+ })()
1374
+ );
1375
+ }
1376
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1377
+ }
1378
+ if (v.tag === "Dictionary") {
1379
+ if (v1.tag === "Dictionary") { return $BaseVal("Dictionary", applyDictRep.apply(v._1)(v1._1)); }
1380
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1381
+ }
1382
+ if (v.tag === "Matrix") {
1383
+ if (v1.tag === "Matrix") { return $BaseVal("Matrix", applyMatrixRep.apply(v._1)(v1._1)); }
1384
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1385
+ }
1386
+ if (v.tag === "Fun" && v1.tag === "Fun") { return $BaseVal("Fun", applyFun.apply(v._1)(v1._1)); }
1387
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1388
+ },
1389
+ Functor0: () => functorBaseVal
1390
+ };
1391
+ const applyEnvExpr = {
1392
+ apply: v => v1 => $EnvExpr(Util$dMap.intersectionWith_Object(Data$dFunction.apply)(Foreign$dObject._fmapObject(v._1, applyVal.apply))(v1._1), Expr.applyExpr.apply(v._2)(v1._2)),
1393
+ Functor0: () => functorEnvExpr
1394
+ };
1395
+ const meetSemilatticeEnv = dictMeetSemilattice => (
1396
+ {
1397
+ meet: (() => {
1398
+ const $0 = dictMeetSemilattice.meet;
1399
+ return a => b => Util$dMap.intersectionWith_Object(Data$dFunction.apply)(Foreign$dObject._fmapObject(Foreign$dObject._fmapObject(a, functorVal.map($0)), applyVal.apply))(b);
1400
+ })()
1401
+ }
1402
+ );
1403
+ const meetSemilatticeVal = dictMeetSemilattice => (
1404
+ {
1405
+ meet: (() => {
1406
+ const $0 = dictMeetSemilattice.meet;
1407
+ return a => b => applyVal.apply(functorVal.map($0)(a))(b);
1408
+ })()
1409
+ }
1410
+ );
1411
+ const joinSemilatticeVal = dictJoinSemilattice => (
1412
+ {
1413
+ join: v => v1 => $Val(
1414
+ dictJoinSemilattice.join(v._1)(v1._1),
1415
+ Lattice.joinSemilatticeMaybe(joinSemilatticeVal(dictJoinSemilattice)).join(v._2)(v1._2),
1416
+ joinSemilatticeBaseVal(dictJoinSemilattice).join(v._3)(v1._3)
1417
+ )
1418
+ }
1419
+ );
1420
+ const joinSemilatticeMatrixRep = dictJoinSemilattice => {
1421
+ const $0 = joinSemilatticeMatrixDim(dictJoinSemilattice);
1422
+ return {
1423
+ join: v => v1 => Data$dTuple.$Tuple(
1424
+ Lattice.joinSemilatticeArray(Lattice.joinSemilatticeArray(joinSemilatticeVal(dictJoinSemilattice))).join(v._1)(v1._1),
1425
+ Data$dTuple.$Tuple($0.join(v._2._1)(v1._2._1), $0.join(v._2._2)(v1._2._2))
1426
+ )
1427
+ };
1428
+ };
1429
+ const joinSemilatticeFun = dictJoinSemilattice => {
1430
+ const joinSemilatticeElim = Expr.joinSemilatticeElim(dictJoinSemilattice);
1431
+ return {
1432
+ join: v => v1 => {
1433
+ if (v.tag === "Closure") {
1434
+ if (v1.tag === "Closure") {
1435
+ return $Fun(
1436
+ "Closure",
1437
+ joinSemilatticeEnv(dictJoinSemilattice).join(v._1)(v1._1),
1438
+ Foreign$dObject.unionWith(joinSemilatticeElim.join)(v._2)(v1._2),
1439
+ joinSemilatticeElim.join(v._3)(v1._3)
1440
+ );
1441
+ }
1442
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1443
+ }
1444
+ if (v.tag === "Foreign") {
1445
+ if (v1.tag === "Foreign") { return $Fun("Foreign", v._1, Lattice.joinSemilatticeList(joinSemilatticeVal(dictJoinSemilattice)).join(v._2)(v1._2)); }
1446
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1447
+ }
1448
+ if (v.tag === "PartialConstr" && v1.tag === "PartialConstr") {
1449
+ const $0 = v._1;
1450
+ const $1 = v1._1;
1451
+ return $Fun("PartialConstr", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0), Lattice.joinSemilatticeList(joinSemilatticeVal(dictJoinSemilattice)).join(v._2)(v1._2));
1452
+ }
1453
+ return Effect$dException.throwException(Effect$dException.error("Shape mismatch"))();
1454
+ }
1455
+ };
1456
+ };
1457
+ const joinSemilatticeEnv = dictJoinSemilattice => ({join: v => v1 => Foreign$dObject.unionWith(joinSemilatticeVal(dictJoinSemilattice).join)(v)(v1)});
1458
+ const joinSemilatticeDictRep = dictJoinSemilattice => (
1459
+ {
1460
+ join: v => v1 => {
1461
+ const $0 = joinSemilatticeVal(dictJoinSemilattice);
1462
+ return Foreign$dObject.unionWith(v$1 => v1$1 => Data$dTuple.$Tuple(dictJoinSemilattice.join(v$1._1)(v1$1._1), $0.join(v$1._2)(v1$1._2)))(v)(v1);
1463
+ }
1464
+ }
1465
+ );
1466
+ const joinSemilatticeBaseVal = dictJoinSemilattice => {
1467
+ const join = dictJoinSemilattice.join;
1468
+ return {
1469
+ join: v => v1 => {
1470
+ if (v.tag === "Int") {
1471
+ if (v1.tag === "Int") {
1472
+ const $0 = v._1;
1473
+ const $1 = v1._1;
1474
+ return $BaseVal("Int", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
1475
+ }
1476
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1477
+ }
1478
+ if (v.tag === "Float") {
1479
+ if (v1.tag === "Float") {
1480
+ const $0 = v._1;
1481
+ const $1 = v1._1;
1482
+ return $BaseVal("Float", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
1483
+ }
1484
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1485
+ }
1486
+ if (v.tag === "Str") {
1487
+ if (v1.tag === "Str") {
1488
+ const $0 = v._1;
1489
+ const $1 = v1._1;
1490
+ return $BaseVal("Str", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0));
1491
+ }
1492
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1493
+ }
1494
+ if (v.tag === "Dictionary") {
1495
+ if (v1.tag === "Dictionary") { return $BaseVal("Dictionary", joinSemilatticeDictRep(dictJoinSemilattice).join(v._1)(v1._1)); }
1496
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1497
+ }
1498
+ if (v.tag === "Constr") {
1499
+ if (v1.tag === "Constr") {
1500
+ const $0 = v._1;
1501
+ const $1 = v1._1;
1502
+ return $BaseVal("Constr", Util.assertWhen(false)("mustEq")(v$1 => $0 === $1)($0), Lattice.joinSemilatticeList(joinSemilatticeVal(dictJoinSemilattice)).join(v._2)(v1._2));
1503
+ }
1504
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1505
+ }
1506
+ if (v.tag === "Matrix") {
1507
+ if (v1.tag === "Matrix") { return $BaseVal("Matrix", joinSemilatticeMatrixRep(dictJoinSemilattice).join(v._1)(v1._1)); }
1508
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1509
+ }
1510
+ if (v.tag === "Fun" && v1.tag === "Fun") { return $BaseVal("Fun", joinSemilatticeFun(dictJoinSemilattice).join(v._1)(v1._1)); }
1511
+ return applyBaseVal.apply(functorBaseVal.map(join)(v))(v1);
1512
+ }
1513
+ };
1514
+ };
1515
+ const annUnit = {Highlightable0: () => highlightableUnit, BoundedLattice1: () => boundedLattice};
1516
+ const annBoolean = {Highlightable0: () => highlightableBoolean, BoundedLattice1: () => boundedLattice1};
1517
+ const val = dictMonadWithGraphAlloc => {
1518
+ const $$new = dictMonadWithGraphAlloc.new(typeNameVal);
1519
+ return doc_opt => $$new(a => Val(a)(doc_opt));
1520
+ };
1521
+ const unrestrictGC = dictBoundedMeetSemilattice => γ => xs => {
1522
+ const unfound = setSet1.difference(xs)(Util$dMap.mapObjectString.keys(γ));
1523
+ return Util.assertWith("Variable(s) " + Data$dString$dCommon.joinWith(", ")(Data$dFunctor.arrayMap(Data$dShow.showStringImpl)(Data$dArray.fromFoldableImpl(
1524
+ Data$dSet.foldableSet.foldr,
1525
+ unfound
1526
+ ))) + " are in environment ")(unfound.tag === "Leaf")({
1527
+ fwd: γ$p => Util.assertWith("")(Data$dMap$dInternal.unsafeDifference(Data$dOrd.ordString.compare, Util$dMap.mapObjectString.keys(γ$p), Util$dMap.mapObjectString.keys(γ)).tag === "Leaf")(Foreign$dObject.union(γ$p)(Util$dSet.setObjectString.difference((() => {
1528
+ const $0 = dictBoundedMeetSemilattice.top;
1529
+ return Foreign$dObject._fmapObject(γ, functorVal.map(v => $0));
1530
+ })())(γ$p))),
1531
+ bwd: γ$p => Util.assertWith("")(Data$dMap$dInternal.eqMap(Data$dEq.eqString)(Data$dEq.eqUnit).eq(Util$dMap.mapObjectString.keys(γ$p))(Util$dMap.mapObjectString.keys(γ)))(Foreign$dObject.filterWithKey(x => {
1532
+ const $0 = Util$dSet.setSet(Data$dOrd.ordString).member(x)(xs);
1533
+ return v => $0;
1534
+ })(γ$p))
1535
+ });
1536
+ };
1537
+ const reaches = ρ => xs => {
1538
+ const dom_ρ = Util$dMap.mapObjectString.keys(ρ);
1539
+ const go = go$a0$copy => go$a1$copy => {
1540
+ let go$a0 = go$a0$copy, go$a1 = go$a1$copy, go$c = true, go$r;
1541
+ while (go$c) {
1542
+ const v = go$a0, v1 = go$a1;
1543
+ if (v.tag === "Nil") {
1544
+ go$c = false;
1545
+ go$r = v1;
1546
+ continue;
1547
+ }
1548
+ if (v.tag === "Cons") {
1549
+ if (setSet1.member(v._1)(v1)) {
1550
+ go$a0 = v._2;
1551
+ go$a1 = v1;
1552
+ continue;
1553
+ }
1554
+ go$a0 = Data$dList$dTypes.foldableList.foldr(Data$dList$dTypes.Cons)(v._2)(toUnfoldable1(Data$dMap$dInternal.unsafeIntersectionWith(
1555
+ Data$dOrd.ordString.compare,
1556
+ Data$dFunction.const,
1557
+ Expr.fVElim.fv(Util$dMap.get(Data$dShow.showString)(Dict.mapDictString)(v._1)(ρ)),
1558
+ dom_ρ
1559
+ )));
1560
+ go$a1 = setSet1.union(Data$dMap$dInternal.$$$Map("Node", 1, 1, v._1, undefined, Data$dMap$dInternal.Leaf, Data$dMap$dInternal.Leaf))(v1);
1561
+ continue;
1562
+ }
1563
+ $runtime.fail();
1564
+ }
1565
+ return go$r;
1566
+ };
1567
+ return go(toUnfoldable1(xs))(setSet1.empty);
1568
+ };
1569
+ const matrixPut = i => j => δv => v => {
1570
+ const vs_i = Util.unsafeArrayArray.unsafeIndex(v._1)(i);
1571
+ return Data$dTuple.$Tuple(
1572
+ Util.definitely("index within bounds")(Data$dArray._updateAt(
1573
+ Data$dMaybe.Just,
1574
+ Data$dMaybe.Nothing,
1575
+ i,
1576
+ Util.definitely("index within bounds")(Data$dArray._updateAt(Data$dMaybe.Just, Data$dMaybe.Nothing, j, δv(Util.unsafeArrayArray.unsafeIndex(vs_i)(j)), vs_i)),
1577
+ v._1
1578
+ )),
1579
+ Data$dTuple.$Tuple(v._2._1, v._2._2)
1580
+ );
1581
+ };
1582
+ const matrixGet = i => j => v => Util.definitely("index out of bounds!")((() => {
1583
+ if (i >= 0 && i < v._1.length) {
1584
+ const $0 = v._1[i];
1585
+ if (j >= 0 && j < $0.length) { return Data$dMaybe.$Maybe("Just", $0[j]); }
1586
+ }
1587
+ return Data$dMaybe.Nothing;
1588
+ })());
1589
+ const highlightIf = dict => dict.highlightIf;
1590
+ const highlightable$x215 = dictHighlightable => ({highlightIf: v => doc => dictHighlightable.highlightIf(v._1)(doc)});
1591
+ const ann$x215 = dictAnn => {
1592
+ const $0 = dictAnn.Highlightable0();
1593
+ const highlightable$x2151 = {highlightIf: v => doc => $0.highlightIf(v._1)(doc)};
1594
+ const BoundedLattice1 = dictAnn.BoundedLattice1();
1595
+ const $1 = BoundedLattice1.BoundedJoinSemilattice0();
1596
+ const bot1 = $1.bot;
1597
+ const $2 = $1.JoinSemilattice0();
1598
+ const $3 = BoundedLattice1.BoundedMeetSemilattice1();
1599
+ const top1 = $3.top;
1600
+ const $4 = $3.MeetSemilattice0();
1601
+ return dictBoundedLattice => {
1602
+ const $5 = dictBoundedLattice.BoundedJoinSemilattice0();
1603
+ const $6 = $5.JoinSemilattice0();
1604
+ const $7 = (() => {
1605
+ const joinSemilattice$x2152 = {join: v => v1 => Data$dTuple.$Tuple($2.join(v._1)(v1._1), $6.join(v._2)(v1._2))};
1606
+ return {bot: Data$dTuple.$Tuple(bot1, $5.bot), JoinSemilattice0: () => joinSemilattice$x2152};
1607
+ })();
1608
+ const $8 = dictBoundedLattice.BoundedMeetSemilattice1();
1609
+ const $9 = $8.MeetSemilattice0();
1610
+ const $10 = (() => {
1611
+ const meetSemilattice$x2152 = {meet: v => v1 => Data$dTuple.$Tuple($4.meet(v._1)(v1._1), $9.meet(v._2)(v1._2))};
1612
+ return {top: Data$dTuple.$Tuple(top1, $8.top), MeetSemilattice0: () => meetSemilattice$x2152};
1613
+ })();
1614
+ return {Highlightable0: () => highlightable$x2151, BoundedLattice1: () => ({BoundedJoinSemilattice0: () => $7, BoundedMeetSemilattice1: () => $10})};
1615
+ };
1616
+ };
1617
+ const forDefs = ρ => σ => {
1618
+ const $0 = reaches(ρ)(Data$dMap$dInternal.unsafeIntersectionWith(
1619
+ Data$dOrd.ordString.compare,
1620
+ Data$dFunction.const,
1621
+ Expr.fVElim.fv(σ),
1622
+ fromFoldable1(Util$dMap.mapObjectString.keys(ρ))
1623
+ ));
1624
+ return Foreign$dObject.filterWithKey(x => {
1625
+ const $1 = Util$dSet.setSet(Data$dOrd.ordString).member(x)($0);
1626
+ return v => $1;
1627
+ })(ρ);
1628
+ };
1629
+ const asVal = e => {
1630
+ if (e(dictTypeName => dictTypeName.typeName) === "Val") { return Data$dMaybe.$Maybe("Just", e(dictTypeName => Unsafe$dCoerce.unsafeCoerce)); }
1631
+ return Data$dMaybe.Nothing;
1632
+ };
1633
+ export {
1634
+ $BaseVal,
1635
+ $EnvExpr,
1636
+ $ForeignOp$p,
1637
+ $Fun,
1638
+ $Val,
1639
+ Closure,
1640
+ Constr,
1641
+ DictKey,
1642
+ DictRep,
1643
+ Dictionary,
1644
+ Env,
1645
+ EnvExpr,
1646
+ Float,
1647
+ Foreign,
1648
+ ForeignOp,
1649
+ ForeignOp$p,
1650
+ Fun,
1651
+ Int,
1652
+ Matrix,
1653
+ MatrixDim,
1654
+ MatrixRep,
1655
+ PartialConstr,
1656
+ Str,
1657
+ Val,
1658
+ ann$x215,
1659
+ annBoolean,
1660
+ annUnit,
1661
+ applyBaseVal,
1662
+ applyDictRep,
1663
+ applyEnv,
1664
+ applyEnvExpr,
1665
+ applyFun,
1666
+ applyMatrixDim,
1667
+ applyMatrixRep,
1668
+ applyVal,
1669
+ asVal,
1670
+ botOfUnit$x215Raw$x215,
1671
+ boundedLattice,
1672
+ boundedLattice1,
1673
+ eqBaseVal,
1674
+ eqDictRep,
1675
+ eqEnv,
1676
+ eqEnvExpr,
1677
+ eqForeignOp,
1678
+ eqFun,
1679
+ eqMatrixDim,
1680
+ eqMatrixRep,
1681
+ eqVal,
1682
+ expandableBaseValRawBaseV,
1683
+ expandableDictRepRawDictR,
1684
+ expandableEnvRawEnv,
1685
+ expandableFunRawFun,
1686
+ expandableMatrixDimRawMat,
1687
+ expandableMatrixRepRawMat,
1688
+ expandableValRawVal,
1689
+ foldMap,
1690
+ foldableBaseVal,
1691
+ foldableDictRep,
1692
+ foldableEnv,
1693
+ foldableEnvExpr,
1694
+ foldableFun,
1695
+ foldableMatrixDim,
1696
+ foldableMatrixRep,
1697
+ foldableVal,
1698
+ forDefs,
1699
+ fromFoldable1,
1700
+ functorBaseVal,
1701
+ functorDictRep,
1702
+ functorEnv,
1703
+ functorEnvExpr,
1704
+ functorFun,
1705
+ functorMatrixDim,
1706
+ functorMatrixRep,
1707
+ functorVal,
1708
+ highlightIf,
1709
+ highlightable$x215,
1710
+ highlightableBoolean,
1711
+ highlightableUnit,
1712
+ highlightableVertex,
1713
+ identity,
1714
+ isEmptyEnv,
1715
+ joinSemilatticeBaseVal,
1716
+ joinSemilatticeDictRep,
1717
+ joinSemilatticeEnv,
1718
+ joinSemilatticeFun,
1719
+ joinSemilatticeMatrixDim,
1720
+ joinSemilatticeMatrixRep,
1721
+ joinSemilatticeVal,
1722
+ mapEnvStringVal,
1723
+ matrixGet,
1724
+ matrixPut,
1725
+ meetSemilatticeEnv,
1726
+ meetSemilatticeVal,
1727
+ newtypeEnv_,
1728
+ ordBaseVal,
1729
+ ordDictRep,
1730
+ ordEnv,
1731
+ ordEnvExpr,
1732
+ ordForeignOp,
1733
+ ordFun,
1734
+ ordMatrixDim,
1735
+ ordMatrixRep,
1736
+ ordTuple,
1737
+ ordVal,
1738
+ pack,
1739
+ pack1,
1740
+ pack2,
1741
+ reaches,
1742
+ setEnvString,
1743
+ setSet,
1744
+ setSet1,
1745
+ toUnfoldable1,
1746
+ traversableBaseVal,
1747
+ traversableDictRep,
1748
+ traversableEnv,
1749
+ traversableEnvExpr,
1750
+ traversableFun,
1751
+ traversableMatrixDim,
1752
+ traversableMatrixRep,
1753
+ traversableVal,
1754
+ typeNameDictKey,
1755
+ typeNameMatrixDim,
1756
+ typeNameVal,
1757
+ unions,
1758
+ unions1,
1759
+ unrestrictGC,
1760
+ val,
1761
+ vertices,
1762
+ verticesBaseValVertex,
1763
+ verticesDictKeyVertex,
1764
+ verticesDictRepVertex,
1765
+ verticesEnvExprVertex,
1766
+ verticesEnvVertex,
1767
+ verticesFunVertex,
1768
+ verticesMatrixDimVertex,
1769
+ verticesMatrixRepVertex,
1770
+ verticesValVertex
1771
+ };