úÎ! fW}ÿ³      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç èéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á  à Ä Å Æ!Ç!È!É!Ê!Ë!Ì!Í!Î!Ï!Ð!Ñ"Ò"Ó"Ô"Õ"Ö"×"Ø"Ù"Ú#Û#Ü#Ý#Þ#ß#à#á#â#ã#ä#å#æ#ç#è#é#ê#ë#ì#í#î#ï#ð#ñ#ò#ó#ô$õ$ö%÷%ø%ù%ú%û%ü%ý%þ%ÿ%%    & &'''''''((((((((((( (!("(#($(%(&('((()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((€((‚(ƒ(„(…(†(‡(ˆ(‰(Š(‹(Œ((Ž(((‘(’(“(”(•(–(—(˜(™)š)›)œ))ž)Ÿ) )¡)¢)£)¤)¥)¦)§)¨)©)ª*«*¬*­*®*¯*°*±*²*³*´*µ*¶*·*¸*¹*º*»*¼*½*¾*¿*À*Á*Â*Ã*Ä*Å*Æ*Ç*È*É*Ê*Ë*Ì*Í*Î*Ï*Ð*Ñ*Ò*Ó*Ô*Õ*Ö*×*Ø*Ù*Ú*Û*Ü*Ý*Þ*ß*à*á*â*ã*ä*å*æ*ç*è*é*ê*ë*ì*í*î*ï*ð*ñ*ò*ó*ô*õ*ö*÷*ø*ù*ú*û*ü*ý*þ*ÿ********** * * * * ******************* *!*"*#*$*%*&*'*(*)**+++,+-,.-/-0-1-2-3-4-5-6-7-8-9-:-;-<-=->.?.@.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~//€//‚/ƒ/„/…/†/‡/ˆ/‰/Š/‹/Œ//Ž///‘/’/“/”/•/–/—/˜/™/š/›/œ//ž/Ÿ/ /¡/¢/£/¤/¥/¦/§/¨/©/ª/«/¬/­/®/¯/°/±/²/³/´/µ/¶/·/¸/¹/º/»/¼/½/¾/¿/À/Á/Â/Ã/Ä/Å/Æ/Ç/È/É/Ê/Ë/Ì/Í/Î/Ï/Ð/Ñ/Ò/Ó/Ô/Õ/Ö/×/Ø/Ù/Ú/Û/Ü/Ý/Þ/ß/à/á/â/ã/ä/å/æ/ç/è/é/ê/ë/ì/í/î/ï/ð/ñ/ò/ó/ô/õ/ö/÷/ø/ù/ú/û/ü/ý/þ/ÿ////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~//€//‚/ƒ/„/…/†/‡/ˆ/‰/Š/‹/Œ//Ž///‘/’/“/”/•/–/—/˜/™/š/›/œ//ž/Ÿ/ /¡/¢/£/¤/¥/¦/§/¨/©/ª/«/¬/­/®/¯/°/±/²/³/´/µ/¶/·/¸/¹/º/»/¼/½/¾/¿/À/Á/Â/Ã/Ä/Å/Æ/Ç/È/É/Ê/Ë/Ì/Í/Î/Ï/Ð/Ñ/Ò/Ó/Ô/Õ/Ö/×/Ø/Ù/Ú0Û0Ü0Ý0Þ0ß0à0á0â0ã0ä0å0æ0ç0è0é0ê0ë0ì0í0î1ï1ð2ñ3ò3ó3ô3õ3ö3÷3ø3ù3ú3û3ü3ý3þ3ÿ3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 5 5 5 5 5 5 5 5 5 5 5 5 !5 "5 #5 $5 %5 &5 '5 (5 )5 *5 +5 ,5 -5 .5 /5 05 15 25 36 46 56 67 77 87 97 :7 ;7 <7 =7 >7 ?7 @7 A7 B7 C7 D7 E7 F7 G7 H7 I7 J7 K7 L7 M7 N7 O7 P7 Q7 R7 S7 T7 U7 V7 W7 X7 Y7 Z7 [7 \7 ]7 ^7 _7 `7 a7 b7 c7 d7 e7 f7 g7 h7 i7 j7 k7 l7 m7 n7 o7 p7 q7 r7 s7 t7 u7 v7 w7 x7 y7 z7 {7 |7 }7 ~7 7 €7 7 ‚7 ƒ7 „7 …7 †8 ‡8 ˆ8 ‰8 Š8 ‹8 Œ8 8 Ž8 8 8 ‘8 ’8 “8 ”8 •8 –8 —8 ˜8 ™8 š8 ›8 œ8 8 ž8 Ÿ8  8 ¡8 ¢8 £8 ¤8 ¥8 ¦8 §8 ¨8 ©8 ª8 «8 ¬8 ­8 ®8 ¯8 °8 ±8 ²8 ³8 ´8 µ8 ¶8 ·8 ¸8 ¹8 º8 »8 ¼8 ½8 ¾8 ¿8 À8 Á8 Â8 Ã8 Ä8 Å8 Æ8 Ç8 È8 É8 Ê8 Ë8 Ì8 Í8 Î8 Ï8 Ð8 Ñ8 Ò8 Ó8 Ô8 Õ8 Ö8 ×8 Ø9 Ù9 Ú9 Û9 Ü9 Ý9 Þ9 ß9 à9 á9 â9 ã9 ä9 å9 æ9 ç9 è9 é9 ê9 ë9 ì9 í9 î9 ï9 ð9 ñ9 ò9 ó9 ô9 õ9 ö9 ÷9 ø9 ù9 ú9 û9 ü9 ý9 þ9 ÿ9 9 9 9 9 9 9 9 9 9 : : : ; ; ; ; ; ; < < < < < < < < < < = > > > > !? "? #? $? %? &? '? (? )? *? +? ,? -? .? /? 0? 1@ 2A 3A 4A 5A 6A 7A 8A 9B :C ;C <C =C >C ?C @C AC BC CC DD EE FF GG HG IG JG KH LH MI NI OI PI QI RI SI TI UI VI WI XI YI ZI [I \I ]I ^I _I `I aI bI cI dI eI fI gI hI iI jI kI lI mI nI oI pI qI rI sI tI uI vI wI xI yI zI {I |I }I ~I I €I I ‚I ƒI „I …I †I ‡I ˆJ ‰J ŠJ ‹J ŒK L ŽL M N ‘N ’N “O ”O •O –P —P ˜P ™P šQ ›R œR R žR ŸR  R ¡R ¢R £S ¤S ¥T ¦T §T ¨U ©V ªW «W ¬X ­X ®X ¯X °Y ±Z ²Z ³Z ´Z µZ ¶Z ·Z ¸Z ¹Z ºZ »Z ¼Z ½Z ¾Z ¿Z ÀZ ÁZ ÂZ ÃZ ÄZ ÅZ ÆZ ÇZ ÈZ ÉZ ÊZ ËZ ÌZ ÍZ ÎZ ÏZ ÐZ ÑZ ÒZ ÓZ ÔZ ÕZ ÖZ ×Z ØZ ÙZ ÚZ ÛZ ÜZ ÝZ ÞZ ßZ àZ áZ âZ ãZ äZ åZ æZ çZ èZ éZ êZ ëZ ìZ íZ îZ ïZ ðZ ñZ òZ óZ ôZ õZ öZ ÷Z øZ ùZ úZ û[ ü\ ý\ þ\ ÿ\ \ ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] !] "] #] $] %] &] '] (] )] *] +] ,] -] .] /] 0] 1] 2] 3] 4] 5] 6] 7] 8] 9] :] ;] <] =] >] ?^ @_ A_ B_ C_ D_ E_ F_ G_ H_ I_ J_ K` L` Ma Na Oa Pa Qb Rb Sb Tb Ub Vb Wb Xb Yb Zc [c \d ]e ^f _g `h ah bi ci di ei fi gi hi ii ji ki li mi ni oi pi qi ri si ti ui vi wi xi yi zi {i |i }i ~i i €i i ‚i ƒi „i …i †i ‡i ˆi ‰i Ši ‹i Œi i Ži i i ‘i ’i “i ”i •i –i —i ˜i ™i ši ›i œi i ži Ÿi  i ¡i ¢i £i ¤i ¥i ¦i §i ¨i ©i ªi «i ¬i ­i ®i ¯i °i ±i ²i ³i ´i µi ¶i ·i ¸i ¹i ºi »i ¼i ½i ¾i ¿i Ài Ái Âi Ãi Äi Åi Æi Çi Èi Éi Êi Ëi Ìi Íi Îi Ïi Ði Ñi Òi Ói Ôi Õi Öi ×i Øi Ùi Úi Ûi Üi Ýi Þi ßi ài ái âi ãi äi åi æi çi èi éi êi ëi ìi íi îi ïi ði ñi òi ói ôi õi öi ÷i øi ùi úi ûi üi ýi þi ÿi i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i i !i "i #i $i %i &i 'i (i )i *i +i ,i -i .i /i 0i 1i 2i 3i 4i 5i 6i 7i 8i 9i :i ;i <i =i >i ?i @i Ai Bi Ci Di Ei Fi Gi Hi Ii Ji Ki Li Mj Nj Oj Pk Qk Rk Sk Tk Uk Vk Wk Xk Yl Zl [l \l ]m ^m _n `n an bn co dp ep fq gq hq iq jq kq lq mq nq oq pq qr rr sr tr ur vr wr xr ys zt {t |t }t ~t t €u u ‚u ƒu „u …u †u ‡u ˆu ‰u Šu ‹u Œu u Žu u u ‘u ’u “u ”u •u –u —u ˜u ™u šu ›u œv v žv Ÿv  v ¡v ¢v £v ¤v ¥v ¦v §v ¨v ©v ªv «v ¬v ­v ®v ¯v °v ±v ²v ³v ´v µv ¶v ·w ¸w ¹w ºw »w ¼w ½w ¾w ¿w Àw Áw Âw Ãw Äx Åx Æx Çy È Éz Êz Ëz Ìz Íz Îz Ïz Ðz Ñz Òz Óz Ôz Õz Öz ×z Øz Ùz Úz Ûz Üz Ýz Þz ßz àz áz âz ãz äz åz æz çz èz éz êz ëz ìz íz îz ïz ðz ñz òz óz ôz õz öz ÷z øz ùz úz ûz ü{ ý{ þ{ ÿ{ { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { { !{ "{ #{ ${ %{ &{ '{ ({ ){ *{ +{ ,{ -{ .{ /{ 0{ 1{ 2{ 3{ 4{ 5{ 6{ 7{ 8{ 9| :| ;| <| =| >| ?| @| A| B| C| D} E} F} G} H} I} J~ K~ L M N€ O€ P€ Q€ R€ S€ T€ U€ V€ W€ X€ Y Z [ \ ] ^ _‚ `‚ a‚ bƒ cƒ dƒ eƒ fƒ gƒ hƒ iƒ jƒ kƒ lƒ mƒ nƒ oƒ pƒ qƒ rƒ sƒ tƒ uƒ vƒ wƒ xƒ yƒ zƒ {ƒ |ƒ }ƒ ~ƒ „ €„ „ ‚„ ƒ„ „„ …„ †„ ‡„ ˆ„ ‰„ Š„ ‹„ Œ„ „ Ž„ „ „ ‘„ ’„ “„ ”„ •„ –„ —„ ˜„ ™„ š„ ›„ œ„ „ ž„ Ÿ„  „ ¡„ ¢„ £„ ¤„ ¥„ ¦„ §„ ¨„ ©„ ª… «… ¬… ­… ®… ¯… °… ±… ²… ³… ´… µ… ¶… ·… ¸… ¹… º… »… ¼… ½… ¾… ¿… À… Á… Â… Ã… Ä… Å… Æ… Ç… È… É… Ê… Ë… Ì… Í… Î… Ï… Ð… Ñ… Ò… Ó… Ô… Õ… Ö… ×… Ø… Ù… Ú… Û… Ü… Ý… Þ… ß… à… á… â… ã… ä… å… æ… ç… è… é… ê… ë… ì… í… î… ï… ð… ñ… ò… ó… ô… õ… ö… ÷… ø… ù… ú… û… ü… ý… þ… ÿ………………………… … … … … ………………………………………………… …!…"…#…$…%…&…'…(…)…*…+…,…-….…/…0…1…2…3…4…5…6…7…8…9…:…;…<…=…>…?…@…A…B…C…D…E…F…G…H…I…J…K…L…M…N…O…P…Q…R…S…T…U…V…W…X…Y…Z…[…\…]…^…_…`…a…b…c…d…e…f…g…h…i…j…k…l…m…n…o…p…q…r…s…t…u…v…w…x…y…z…{…|…}…~……€……‚…ƒ…„………†…‡…ˆ…‰…Š…‹…Œ……Ž………‘…’…“…”…•…–…—…˜…™…š…›…œ……ž…Ÿ… …¡…¢…£…¤…¥…¦…§…¨…©…ª…«…¬…­…®…¯…°…±…²†³‡´‡µ‡¶‡·ˆ¸ˆ¹ˆºˆ»ˆ¼ˆ½ˆ¾ˆ¿ˆÀˆÁˆˆÈĈňƉljȉɉʉˉ͉̉ΉωЊÑŠÒŠÓŠÔŠÕŠÖŠ׊؊يڊۊ܊݋ދߋà‹á‹â‹ã‹ä‹å‹æ‹ç‹è‹é‹êŒëŒìŒíŒîŒïŒðñòóôõö÷øùúŽûŽüŽýŽþŽÿ     ‘‘‘‘‘’’’“““““ “!“"“#“$“%“&“'“(“)“*”+”,”-”.”/”0”1”2”3”4”5”6”7”8”9”:•;•<•=•>•?•@–A–B–C–D–E–F–G–H–I–J–K–L–M–N–O–P–Q–R–S–T–U–V–W–X–Y–Z–[–\–]–^–_–`–a–b–c–d–e–f–g–h–i–j–k–l–m–n–o—p˜q˜r˜s˜t˜u˜v˜w˜x™y™z™{™|™}™~™™€™™‚™ƒ™„™…™†™‡™ˆ™‰™Š™‹™Œ™™Ž™š›‘›’›“›”›•›–›—›˜›™›š›››œ››ž›Ÿ› ›¡›¢›£›¤›¥›¦›§›¨›©›ª›«›¬›­›®›¯›°›±›²›£Safe"#%,.4567;=>?@AHPSVX_gÏQ purescript;A replacement for WriterT IO which uses mutable references. purescript5Run a Logger computation, starting with an empty log.None"#%,.4567;>@AHMPSX_gÐWNone"#%,.45678;>@AHPSVX_gÑ•! "! "None"#%,.4567;>@AHPSX_gÒ£&('&('None"#%,.45679;>@AHPSX_g×O3 purescript Source name4 purescriptStart of the span5 purescriptEnd of the span6 purescriptSource position information8 purescript Line number9 purescript Column number: purescript6Source annotation - position information and comments.123456798:;<=>?@ABCDEFG:6798=>12345?@ABCD<;EFGSafe"#%,.4567;>@AHPSX_gÛ4X purescript A compatibility wrapper for the GHC.Stack.HasCallStack constraint.Y purescript3Exit with an error message and a crash report link.XYXY None"#%,.4567;>@AHPSX_gÞXZ purescriptFixity data for infix operators\ purescript!Associativity for infix operators` purescript(A precedence level for an infix operator Z[\^]_`ab `\^]_abZ[ None"#%,.4567;>@AHPSX_gäRr purescriptAn embedded copy of normalize.css as a UTF-8 encoded ByteString; this should be included before pursuit.css in any HTML page using pursuit.css.s purescriptLike r , but as a .t purescriptDCSS for use with generated HTML docs, as a UTF-8 encoded ByteString.u purescriptLike t , but as a .rsturstu Safe"#%,.4567;>@AHPSX_gåPvv Safe"#%,.4567;>@AHPSX_gè`w purescript0Locates the node executable. Checks for either nodejs or node.x purescript/Grabs the filename where the history is stored.wxwx None"#%,.4567;>@AHMPSX_gþ\y purescript:A qualified name, i.e. a name with an optional module name{ purescript Module names} purescript$The closed set of proper name types.ƒ purescriptTProper names, i.e. capitalized names for e.g. module names, type//data constructors.† purescript'The closed set of operator alias types.Š purescriptOperator alias names. purescriptNames for value identifiersŽ purescriptAn alphanumeric identifier purescript"A generated name for an identifier purescript,A generated name used only for type-checking‘ purescriptEA sum of the possible name types, useful for error and lint messages.¨ purescript·Coerces a ProperName from one ProperNameType to another. This should be used with care, and is primarily used to convert ClassNames into TypeNames after classes have been desugared.® purescript7Provide a default module name, if a name is unqualified¯ purescript4Makes a qualified value from a name and module name.° purescript,Remove the module name from a qualified name± purescriptZRemove the qualification from a value when it is qualified with a particular module name.² purescriptNChecks whether a qualified value is actually qualified with a module reference³ purescriptRChecks whether a qualified value is not actually qualified with a module reference´ purescriptFChecks whether a qualified value is qualified with a particular module<yz{|}€~‚ƒ„…†‰ˆ‡Š‹ŒŽ‘™—–•”“’˜š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´<‘™—–•”“’˜š›œžŸ ¡Ž¢£¤¥Š‹Œ¦†‰ˆ‡§ƒ„…}€~‚¨{|©ª«yz¬­®¯°±²³´None"#%,.4567;>@AHMPSX_gyè purescriptnA CacheInfo contains all of the information we need to store about a particular module in the cache database.ì purescriptHDefines the hash algorithm we use for cache invalidation of input files.î purescriptðGiven a module name, and a map containing the associated input files together with current metadata i.e. timestamps and hashes, check whether the input files have changed, based on comparing with the database stored in the monadic state.SThe CacheInfo in the return value should be stored in the cache for future builds.µThe Bool in the return value indicates whether it is safe to use existing build artifacts for this module, at least based on the timestamps and hashes of the module's input files.€If the timestamps are the same as those in the database, assume the file is unchanged, and return True without checking hashes.ëIf any of the timestamps differ from what is in the database, check the hashes of those files. In this case, update the database with any changed timestamps and hashes, and return True if and only if all of the hashes are unchanged.ï purescript_Remove any modules from the given set from the cache database; used when they failed to build.ð purescript dAny path that is beneath our current working directory will be stored as a normalised relative path6Any path that isn't will be stored as an absolute path èéêëìíîïð ìíëèéêîïðNone"#%,.4567;=>?@AHPSX_gÁý purescriptThe data type of kindsþ purescript!Unification variable of type Kindÿ purescript5Kinds for labelled, unordered rows without duplicates purescriptFunction kinds purescript A named kindýþÿ     ýþÿ     None"#%,.4567;>@AHPSX_g#Ñ   purescriptData constructor metadata! purescript6The constructor is for a type with a single construcor" purescript7The constructor is for a type with multiple construcors# purescriptMetadata annotations$ purescript)The contained value is a data constructor% purescript The contained value is a newtype& purescript9The contained value is a typeclass dictionary constructor' purescript/The contained reference is for a foreign member( purescript%The contained value is a where clause  "!#('&%$ #('&%$ "!None"#%,.4567;>@AHPSX_g8)0 purescript Convert an $ into a valid JavaScript identifier:,Alphanumeric characters are kept unmodified.2Reserved javascript identifiers are prefixed with $$.1 purescript Convert a ƒ$ into a valid JavaScript identifier:,Alphanumeric characters are kept unmodified.2Reserved javascript identifiers are prefixed with $$.2 purescript4Convert any name into a valid JavaScript identifier._Note that this function assumes that the argument is a valid PureScript identifier (either an  or a ƒ}) to begin with; as such it will not produce valid JavaScript identifiers if the argument e.g. begins with a digit. Prefer 0 or 1 where possible.3 purescript]Test if a string is a valid JavaScript identifier as-is. Note that, while a return value of ³I guarantees that the string is a valid JS identifier, a return value of ´‡ does not guarantee that the string is not a valid JS identifier. That is, this check is more conservative than absolutely necessary.4 purescriptkAttempts to find a human-readable name for a symbol, if none has been specified returns the ordinal value.5 purescript<Checks whether an identifier name is reserved in JavaScript.6 purescript=Checks whether a name matches a built-in value in JavaScript./0123456789:;<=/0123456789:;<=Safe"#%,.4567;>@AHPSX_g@BA?CDGFEHI CDGFEH>@BA?INone"#%,.4567;>@AHMPSX_gY?N purescriptÿStrings in PureScript are sequences of UTF-16 code units, which do not necessarily represent UTF-16 encoded text. For example, it is permissible for a string to contain *lone surrogates,* i.e. characters in the range U+D800 to U+DFFF which do not appear as a part of a surrogate pair.The Show instance for PSString produces a string literal which would represent the same data were it inserted into a PureScript source file.ÿBecause JSON parsers vary wildly in terms of how they deal with lone surrogates in JSON strings, the ToJSON instance for PSString produces JSON strings where that would be safe (i.e. when there are no lone surrogates), and arrays of UTF-16 code units (integers) otherwise.µ purescriptÿ‡Decode a PSString to a String, representing any lone surrogates as the reserved code point with that index. Warning: if there are any lone surrogates, converting the result to Text via Data.Text.pack will result in loss of information as those lone surrogates will be replaced with U+FFFD REPLACEMENT CHARACTER. Because this function requires care to use correctly, we do not export it.P purescripteDecode a PSString as UTF-16 text. Lone surrogates will be replaced with U+FFFD REPLACEMENT CHARACTERQ purescriptËDecode a PSString as UTF-16. Lone surrogates in the input are represented in the output with the Left constructor; characters which were successfully decoded are represented with the Right constructor.R purescriptzAttempt to decode a PSString as UTF-16 text. This will fail (returning Nothing) if the argument contains lone surrogates.S purescript;Pretty print a PSString, using PureScript escape sequences.T purescriptdPretty print a PSString, using JavaScript escape sequences. Intended for use in compiled JS output.NOPQRSTUNORQPSTUNone"#%,.4567;>@AHMPSX_g\Ça purescriptŒLabels are used as record keys and row entry names. Labels newtype PSString because records are indexable by PureScript strings at runtime.abcabcNone"#%,.4567;>@AHPSX_g]½¸oputsrqvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&¸‘’“”•–—˜Ž™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙoputsrqÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúŒ‹Šûü‰ýþÿˆ‡†…„ƒ‚€~}|{zyxw     v !"#$%&None"#%,.4567;>@AHPSX_gd[ÿV'43210/.-,+*)(56:987;>=<?@BACFEDGHJIKLPONMQRVUTSWX^]\[ZY_`dcbaefihgjlkmonp‰ˆ‡†…„ƒ‚€~}|{zyxwvutsrqŠŒ‹Ž‘’“—–•”˜™š›œŸž ¡¤£¢¥§¦¨«ª©¬­³²±°¯®´¶µ·¸½¼»º¹¾¿ÂÁÀÃÄÇÆÅÈÎÍÌËÊÉÏÐÕÔÓÒÑÖØ×ÙÚÜÛÝçæåäãâáàßÞèêéëòñðïîíìóôüûúùø÷öõýþÿ      !"#&%$'(*)+,/.-0132458769:<;=>?@ACBDedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEfhgijmlknpoqrstuvxwyz|{ÿVyz|{uvxwqrstnpoijmlkfhgDedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFE@ACB=>?9:<;458760132+,/.-'(*)"#&%$!      ýþÿóôüûúùø÷öõëòñðïîíìèêéÝçæåäãâáàßÞÙÚÜÛÖØ×ÏÐÕÔÓÒÑÈÎÍÌËÊÉÃÄÇÆÅ¾¿ÂÁÀ·¸½¼»º¹´¶µ¬­³²±°¯®¨«ª©¥§¦ ¡¤£¢›œŸž˜™š’“—–•”Ž‘ŠŒ‹p‰ˆ‡†…„ƒ‚€~}|{zyxwvutsrqmonjlkefihg_`dcbaWX^]\[ZYQRVUTSKLPONMGHJICFED?@BA;>=<56:987'43210/.-,+*)(None"#%,.4567;>@AHPSX_goñÜÜNone"#%,.4567;>@AHPSX_gp×ÝÝNone"#%,.4567;>@AHPSX_gq½ÞßàáÞßàáNone"#$%,.4567;>@AHPSX_grË/âãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ     /ãäåæçèéêëìíâîïðñòóôõö÷øùúûüýþÿ     None"#%,.4567;>@AHPSX_gu!'&%$#"! ()*+,-('&%$#"! )*+,-None"#$%,.4567;>@AHPSX_gvï,126345789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\,126345789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\None"#%,.4567;>@AHPSX_gzc purescript-A bare bones, CPS'ed `StateT s (Except e) a`.bcdefhgijnmlkopqrstuvwxyz{|}~oijnmlkefhgcdbpqrstuvwxyz{|}~None"#%,.4567;>@AHPSX_g~¬ purescriptThis is to keep the Parser.y file ASCII, otherwise happy$ will break in non-unicode locales.Related GHC issue: .https://gitlab.haskell.org/ghc/ghc/issues/8167)„†…‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬)‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥„†…¦§¨©ª«¬None"#%,.4567;>@AHPSX_g†¥® purescript‰Stops at the first lexing error and replaces it with TokEof. Otherwise, the parser will fail when it attempts to draw a lookahead token.¯ purescript%Lexes according to root layout rules.° purescript7Lexes according to top-level declaration context rules.± purescript!Lexes according to some LexState.² purescript2Checks if some identifier is a valid unquoted key.®¯°±²®¯°±² None"#%,.4567;=>?@AFHPSX_gh‡Û³´¶µ·¸¹º»¼½¾¿ÀÁÂÃĸ·¹¼º»Ä½¾¿ÀÁÂó´¶µ¶9 ·9 !None"#%,.4567;>@AHPSX_g¹Æ purescriptUData type for literal values. Parameterised so it can be used for Exprs and Binders.Ç purescriptA numeric literalÈ purescriptA string literalÉ purescriptA character literalÊ purescriptA boolean literalË purescriptAn array literalÌ purescriptAn object literalÆÌËÊÉÈÇÆÌËÊÉÈÇ"None"#%,.4567;>@AHPSX_g“ Ñ purescriptData type for bindersÒ purescriptWildcard binderÓ purescript&A binder which matches a literal valueÔ purescript"A binder which binds an identifierÕ purescript)A binder which matches a data constructorÖ purescript/A binder which binds its input to an identifierÑÖÕÔÓÒ×ÑÖÕÔÓÒ×#None"#%,.4567;>@AHPSX_g¡ëÚ purescript"An alternative in a case statementÜ purescript6A collection of binders with which to match the inputsÝ purescript9The result expression or a collect of guarded expressionsÞ purescriptSA guard is just a boolean-valued expression that appears alongside a set of bindersß purescriptA let or module binding.à purescript(Non-recursive binding for a single valueá purescript3Mutually recursive binding group for several valuesâ purescript#Data type for expressions and termsã purescriptA literal valueä purescript=A data constructor (type name, constructor name, field names)å purescriptA record property accessoræ purescriptPartial record updateç purescriptFunction introductionè purescriptFunction applicationé purescriptVariableê purescriptA case expressionë purescript A let bindingì purescript"Extract the annotation from a termí purescriptModify the annotation on a termÚÛÝÜÞßàáâëêçæåèäéãìíâëêçæåèäéãßàáÞÚÛÝÜìí$None"#%,.4567;>@AHPSX_g£iôõôõ%None"#%,.4567;>@AHPSX_g§äö purescript The CoreFn module representation©The json CoreFn representation does not contain type information. When parsing it one gets back `ModuleT () Ann` rathern than `ModuleT Type Ann`, which is enough for  moduleToJs. ö÷þýùøÿüúû ö÷þýùøÿüúûSafe"#%,.4567;>@AHPSX_g©       &None"#%,.4567;>@AHPSX_g¬|  purescriptGGlob relative to the current directory, and produce relative pathnames.  purescript)Glob pattern for PureScript source files.    'Safe"#%,.4567;>@AHPSX_g­j(None"#%,.4567;=>?@AHMPSX_gÔ% purescriptA typeclass constraint purescriptconstraint annotation purescriptconstraint class name purescripttype arguments purescript+additional data relevant to this constraint  purescript2Additional data relevant to type class constraints! purescriptïData to accompany a Partial constraint generated by the exhaustivity checker. It contains (rendered) binder information for those binders which were not matched, and a flag indicating whether the list was truncated or not. Note: we use  here because using Binder: would introduce a cyclic dependency in the module graph." purescriptThe type of types# purescript#A unification variable of type Type$ purescriptA named type variable% purescriptA type-level string& purescript:A type wildcard, as would appear in a partial type synonym' purescriptA type constructor( purescriptlA type operator. This will be desugared into a type constructor during the "operators" phase of desugaring.) purescriptA type application* purescriptForall quantifier+ purescript+A type with a set of type class constraints, purescriptA skolem constant- purescript An empty row. purescriptA non-empty row/ purescriptA type with a kind annotation0 purescriptqBinary operator application. During the rebracketing phase of desugaring, this data constructor will be removed.1 purescriptjExplicit parentheses. During the rebracketing phase of desugaring, this data constructor will be removed.zNote: although it seems this constructor is not used, it _is_ useful, since it prevents certain traversals from matching.2 purescript0An identifier for the scope of a skolem variableP purescript4Convert a row to a list of pairs of labels and typesQ purescriptKConvert a row to a list of pairs of labels and types, sorted by the labels.R purescript+Convert a list of labels and types to a rowS purescript"Check whether a type is a monotypeT purescriptUniversally quantify a typeU purescript?Replace a type variable, taking into account variable shadowingV purescript'Replace named type variables with typesW purescript.Collect all type variables appearing in a typeX purescript3Collect all free type variables appearing in a typeY purescriptEUniversally quantify over all type variables appearing free in a typeZ purescript5Move all universal quantifiers to the front of a type[ purescript"Check if a type contains wildcards\ purescriptCheck if a type contains forallU !"10/.-+*%#()&'$,23456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghiU65234"10/.-+*%#()&'$,789:;<=>?@ABCDE !FGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi)None"#%,.4567;>@AHPSX_gá" š purescript;Data representing a type class dictionary which is in scopeœ purescriptThe instance chain purescriptIndex of the instance chainž purescript>The value with which the dictionary can be accessed at runtimeŸ purescript8How to obtain this instance via superclass relationships  purescriptDThe name of the type class to which this type class instance applies¡ purescript3The types to which this type class instance applies¢ purescriptLType class dependencies which must be satisfied to construct this dictionary£ purescriptPGenerate a name for a superclass reference which can be used in generated code. ™š›¢¡ Ÿžœ£ 𛢡 Ÿžœ™£*None"#%,.4567;>@AHPSX_g:¡Aª purescript The type ('data' or  'newtype') of a data type declaration« purescriptA standard data constructor¬ purescriptA newtype constructor­ purescriptThe kinds of a type® purescript Data type¯ purescript Type synonym° purescript Foreign data± purescriptA local type variable² purescriptA scoped type variable³ purescriptA flag for whether a name is for an private or public value - only public values will be included in a generated externs file.´ purescriptmA private value introduced as an artifact of code generation (class instances, class member accessors, etc.)µ purescript@A public value for a module member or foreing import declaration¶ purescript.A name for member introduced by foreign import· purescript!The visibility of a name in scope¸ purescriptDThe name is defined in the current binding group, but is not visible¹ purescript_The name is defined in the another binding group, or has been made visible by a function binderº purescriptlA functional dependency indicates a relationship between two sets of type arguments in a class declaration.¼ purescript@the type arguments which determine the determined type arguments½ purescriptthe determined type arguments¾ purescriptInformation about a type classÀ purescriptVA list of type argument names, and their kinds, where kind annotations were provided.Á purescriptoA list of type class members and their types. Type arguments listed above are considered bound in these types. purescript‰A list of superclasses of this type class. Type arguments listed above are considered bound in the types appearing in these constraints.à purescriptGA list of functional dependencies for the type arguments of this class.Ä purescriptºA set of indexes of type argument that are fully determined by other arguments via functional dependencies. This can be computed from both typeClassArguments and typeClassDependencies.Å purescriptBA sets of arguments that can be used to infer all other arguments.Æ purescriptFWhether or not dictionaries for this type class are necessarily empty.Ç purescriptThe  Environment; defines all values and types which are currently in scope:É purescriptValues currently in scopeÊ purescriptType names currently in scopeË purescriptyData constructors currently in scope, along with their associated type constructor name, argument types and return type.Ì purescript Type synonyms currently in scopeÍ purescript3Available type class dictionaries. When looking up ¸‡ in the outer map, this returns the map of type class dictionaries in local scope (ie dictionaries brought in by a constrained type).Î purescript Type classesÏ purescriptKinds in scopeÐ purescriptTThe initial environment with no values and only the default javascript types definedÑ purescriptÿgA constructor for TypeClassData that computes which type class arguments are fully determined and argument covering sets. Fully determined means that this argument cannot be used when selecting a type class instance. A covering set is a minimal collection of arguments that can be used to find an instance and therefore determine all other type arguments.›An example of the difference between determined and fully determined would be with the class: ```class C a b c | a -> b, b -> a, b -> c``` In this case, a must differ when bB differs, and vice versa - each is determined by the other. Both a and b: can be used in selecting a type class instance. However, c% cannot - it is fully determined by a and b.ÿ"Define a graph of type class arguments with edges being fundep determiners to determined. Each argument also has a self looping edge. An argument is fully determined if doesn't appear at the start of a path of strongly connected components. An argument is not fully determined otherwise.ÿ1The way we compute this is by saying: an argument X is fully determined if there are arguments that determine X that X does not determine. This is the same thing: everything X determines includes everything in its SCC, and everything determining X is either before it in an SCC path, or in the same SCC.Ó purescript)Construct a ProperName in the Prim moduleÔ purescript Construct a ƒ in the  Prim.NAME module.× purescriptKind of ground typesá purescript#Construct a type in the Prim moduleâ purescriptType constructor for functionsã purescriptType constructor for stringsä purescriptType constructor for stringså purescriptType constructor for numbersæ purescriptType constructor for integersç purescriptType constructor for booleansè purescriptType constructor for arraysé purescriptType constructor for recordsê purescript Check whether a type is a recordë purescript"Check whether a type is a functioní purescript$Smart constructor for function typesî purescript Kinds in Primï purescript Kinds in  Prim.Booleanð purescript Kinds in  Prim.Orderingñ purescript Kinds in  Prim.RowListò purescript Kinds in Prim.TypeErroró purescriptAll primitive kindsô purescriptoThe primitive types in the external javascript environment with their associated kinds. There are also pseudo Fail, Warn, and Partial; types that correspond to the classes with the same names.õ purescriptThis Map6 contains all of the prim types from all Prim modules.ü purescript0The primitive class map. This just contains the Partial class. Partial= is used as a kind of magic constraint for partial functions.ý purescript<This contains all of the type classes from all Prim modules. purescriptGFinds information about data constructors from the current environment. purescript3Checks whether a data constructor is for a newtype. purescript<Finds information about values from the current environment.[ª¬«­²±°¯®³µ´¶·¹¸º»½¼¾¿ÆÅÄÃÂÁÀÇÈÏÎÍÌËÊÉÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ[ÇÈÏÎÍÌËÊɾ¿ÆÅÄÃÂÁÀº»½¼ÐÑ·¹¸³µ´¶­²±°¯®ª¬«ÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿÚ4+None"#%,.4567;>@AHPSX_g@ü* purescript Type alias for basic annotations+ purescript9An annotation empty of metadata aside from a source span., purescript&Remove the comments from an annotation*+,*+,,None"#%,.4567;>@AHPSX_gE- purescriptCoreFn optimization pass.¹ purescriptQReturn the labels of a closed record, or Nothing for other types or open records.º purescriptSee 4https://github.com/purescript/purescript/issues/3157---None"#%,.4567;>@AHPSX_gTV . purescriptData type for binders/ purescriptWildcard binder0 purescript A binder which matches a literal1 purescript"A binder which binds an identifier2 purescript)A binder which matches a data constructor3 purescriptmA operator alias binder. During the rebracketing phase of desugaring, this data constructor will be removed.4 purescriptqBinary operator application. During the rebracketing phase of desugaring, this data constructor will be removed.5 purescriptjExplicit parentheses. During the rebracketing phase of desugaring, this data constructor will be removed.zNote: although it seems this constructor is not used, it _is_ useful, since it prevents certain traversals from matching.6 purescript/A binder which binds its input to an identifier7 purescript)A binder with source position information8 purescriptA binder with a type annotation9 purescript8Collect all names introduced in binders in an expression .875436210/9: .875436210/9:œSafe"#%,.4567;>@AHPSX_gU¤»¼½¾¿ÀÁÂ.None"#%,.4567;>@AHPSX_g–Ä> purescript>A module is just a list of elements of the types listed above.à purescript<There are four types of module element we are interested in:R1) Require statements 2) Member declarations 3) Export lists 4) Everything else|Each is labelled with the original AST node which generated it, so that we can dump it back into the output during codegen.Ä purescript¤An export is either a "regular export", which exports a name from the regular module we are in, or a reexport of a declaration in the corresponding foreign module.WRegular exports are labelled, since they might re-export an operator with another name.Å purescript±A piece of code is identified by its module, its name, and whether it is an internal variable or a public member. These keys are used to label vertices in the dependency graph.? purescript7A module is identified by its module name and its type.A purescriptkModules are either "regular modules" (i.e. those generated by the PureScript compiler) or foreign modules.D purescriptThe type of error messages. We separate generation and rendering of errors using a data type, in case we need to match on error types later.M purescriptXGiven a filename, assuming it is in the correct place on disk, infer a ModuleIdentifier.N purescript3Prepare an error message for consumption by humans.Æ purescriptFCalculate the ModuleIdentifier which a require(...) statement imports.Ç purescriptOCompute the dependencies of all elements in a module, and add them to the tree.YMembers and exports can have dependencies. A dependency is of one of the following forms: 1) module.name or member["name"]where module was imported usingvar module = require( Module.Name);2) nameAwhere name is the name of a member defined in the current module.È purescript1Attempt to create a Module from a JavaScript AST.xEach type of module element is matched using pattern guards, and everything else is bundled into the Other constructor.É purescript=Eliminate unused code based on the specified entry point set.Ê purescriptzTopologically sort the module dependency graph, so that when we generate code, modules can be defined in the right order.Ë purescript©A module is empty if it contains no exported members (in other words, if the only things left after dead code elimination are module imports and "other" foreign code).<If a module is empty, we don't want to generate code for it.Ì purescript?Generate code for a set of modules, including a call to main().8Modules get defined on the global PS object, as follows:>var PS = { }; (function(exports) { ... })(PS[ Module.Name] = PS[ Module.Name ] || {});ÿUIn particular, a module and its foreign imports share the same namespace inside PS. This saves us from having to generate unique names for a module and its foreign imports, and is safe since a module shares a namespace with its foreign imports in PureScript as well (so there is no way to have overlaps in code generated by the compiler).P purescript’The bundling function. This function performs dead code elimination, filters empty modules and generates and prints the final JavaScript bundle.Q purescript’The bundling function. This function performs dead code elimination, filters empty modules and generates and prints the final JavaScript bundle.Ì purescript main module purescript namespace purescript input modules purescriptoutput filenameP purescriptPThe input modules. Each module should be javascript rendered from the compiler. purescriptWEntry points. These module identifiers are used as the roots for dead-code elimination purescriptAn optional main module. purescriptThe namespace (e.g. PS). purescriptJThe output file name (if there is one - in which case generate source map) purescriptMOptionally report the parsed modules prior to DCE -- used by "bundle --debug"Q purescriptPThe input modules. Each module should be javascript rendered from the compiler. purescriptWEntry points. These module identifiers are used as the roots for dead-code elimination purescriptAn optional main module. purescriptThe namespace (e.g. PS).>?@ACBDEFGHIJKLMNOPQQPM?@LACBDEFGHIJKNO>/None"#%,.45679;>@AHPSX_g-ml purescript"A statement in a do-notation blockm purescript A monadic value without a bindern purescriptA monadic value with a bindero purescript0A let statement, i.e. a pure value with a binderp purescript6A do notation element with source position informationq purescript"An alternative in a case statements purescript6A collection of binders with which to match the inputst purescript9The result expression or a collect of guarded expressionsu purescript2Metadata that tells where a let binding originatedv purescript-The let binding was originally a where clausew purescript(The let binding was always a let bindingx purescript#Data type for expressions and termsy purescriptA literal valuez purescriptA prefix -, will be desugared{ purescriptqBinary operator application. During the rebracketing phase of desugaring, this data constructor will be removed.| purescriptjExplicit parentheses. During the rebracketing phase of desugaring, this data constructor will be removed.zNote: although it seems this constructor is not used, it _is_ useful, since it prevents certain traversals from matching.} purescript-An record property accessor expression (e.g. `obj.x` or `_.x`z). Anonymous arguments will be removed during desugaring and expanded into a lambda that reads a property from a record.~ purescriptPartial record update purescript_Object updates with nested support: `x { foo { bar = e } }` Replaced during desugaring into a ‰ and nested ~s€ purescriptFunction introduction purescriptFunction application‚ purescriptçHint that an expression is unused. This is used to ignore type class dictionaries that are necessarily empty. The inner expression lets us solve subgoals before eliminating the whole expression. The code gen will render this as Í-, regardless of what the inner expression is.ƒ purescriptVariable„ purescript`An operator. This will be desugared into a function during the "operators" phase of desugaring.… purescript%Conditional (if-then-else expression)† purescriptA data constructor‡ purescript¾A case expression. During the case expansion phase of desugaring, top-level binders will get desugared into case expressions, hence the need for guards and multiple binders per branch here.ˆ purescriptA value with a type annotation‰ purescript A let bindingŠ purescriptA do-notation block‹ purescriptAn ado-notation blockŒ purescript\An application of a typeclass dictionary constructor. The value should be an ObjectLiteral. purescriptÿ½A placeholder for a type class dictionary to be inserted later. At the end of type checking, these placeholders will be replaced with actual expressions representing type classes dictionaries which can be evaluated at runtime. The constructor arguments represent (in order): whether or not to look at superclass implementations when searching for a dictionary, the type class name and instance type, and the type class dictionaries in scope.Ž purescript`A typeclass dictionary accessor, the implementation is left unspecified until CoreFn desugaring. purescripteA placeholder for a superclass dictionary to be turned into a TypeClassDictionary during typechecking purescript0A placeholder for an anonymous function argument‘ purescriptFA typed hole that will be turned into a hint/error during typechecking’ purescript(A value with source position information“ purescriptLThe right hand side of a binder in value declarations and case expressions.• purescriptSA guard is just a boolean-valued expression that appears alongside a set of binders˜ purescript0The members of a type class instance declaration™ purescriptThis is a derived instanceš purescript*This is an instance derived from a newtype› purescriptnThis is an instance derived from a newtype, desugared to include a dictionary for the type under the newtype.œ purescript%This is a regular (explicit) instance¡ purescriptThe data type of declarations¢ purescriptMA data type declaration (data or newtype, name, arguments, data constructors)£ purescript:A minimal mutually recursive set of data type declarations¤ purescript2A type synonym declaration (name, arguments, type)¥ purescript)A type declaration for a value (name, ty)¦ purescriptDA value declaration (name, top-level binders, optional guard, value)§ purescript_A declaration paired with pattern matching in let-in expression (binder, optional guard, value)¨ purescript6A minimal mutually recursive set of value declarations© purescript)A foreign import declaration (name, type)ª purescript'A data type foreign import (name, kind)« purescriptA foreign kind import (name)¬ purescriptA fixity declaration­ purescript'A module import (module name, qualified unqualified%hiding, optional "qualified as" name)® purescriptGA type class declaration (name, argument, implies, member declarations)¯ purescriptA type instance declaration (instance chain, chain index, name, dependencies, class name, instance types, member declarations)µ purescriptmA value declaration assigns a name and potential binders, to an expression (or multiple guarded expressions). double x = x + xIn this example double is the identifier, x is a binder and x + x is the expression.¸ purescriptThe declared value's name¹ purescript-Whether or not this value is exported/visible¼ purescript7A type declaration assigns a type to an identifier, eg: identity :: forall a. a -> aIn this example identity is the identifier and forall a. a -> a the type.Á purescript8The data type which specifies type of import declaration purescript,An import with no explicit list: `import M`.à purescriptIAn import with an explicit list of references to import: `import M (foo)`Ä purescriptDAn import with a list of references to hide: `import M hiding (foo)`É purescript0An item in a list of explicit imports or exportsÊ purescript)A type constructor with data constructorsË purescriptA type operatorÌ purescriptA valueÍ purescriptA value-level operatorÎ purescript A type classÏ purescript]A type class instance, created during typeclass desugaring (name, class name, instance types)Ð purescriptA module, in its entiretyÑ purescript A named kindÒ purescriptgA value re-exported from another module. These will be inserted during elaboration in name desugaring.Ó purescriptÛA module declaration, consisting of comments about the module, a module name, a list of declarations, and a list of the declarations that are explicitly exported. If the export list is Nothing, everything is exported.× purescriptCategories of hintsÞ purescriptGError message hints, providing more detailed information about failure.õ purescriptA type of error messagesÿ purescriptHA description of what we were trying to do, and the error which occurred4 purescript@constructor name, expected argument count, actual argument count\ purescriptIinstance name, type class, expected argument count, actual argument count] purescript:a user-defined warning raised by using the Warn type class^ purescriptBa declaration couldn't be used because it contained free variablesb purescriptCHolds the data necessary to do type directed search for typed holesc purescriptEAn Environment captured for later consumption by type directed searchd purescriptPResults of applying type directed search to the previously captured Environmente purescript8The identifiers that fully satisfy the subsumption checkf purescriptIRecord fields that are available on the first argument to the typed holeg purescript&A map of locally-bound names in scope.n purescriptReturn a module's name.o purescriptReturn a module's source span.p purescriptReturn a module's declarations.q purescriptSAdd an import declaration for a module if it does not already explicitly import it.fWill not import an unqualified module if that module has already been imported qualified. (See #2197)r purescriptmAdds import declarations to a module for an implicit Prim import and Prim | qualified as Prim, as necessary.† purescript A traversal for TypeInstanceBodyŠ purescript,Test if a declaration is a value declaration‹ purescript@Test if a declaration is a data type or type synonym declarationŒ purescript(Test if a declaration is a module import purescript3Test if a declaration is a data type foreign importŽ purescript.Test if a declaration is a foreign kind import purescript-Test if a declaration is a fixity declaration‘ purescript)Test if a declaration is a foreign import’ purescript:Test if a declaration is a type class instance declaration“ purescript1Test if a declaration is a type class declaration” purescriptCRecursively flatten data binding groups in the list of declarationsÿ2defgihjklponmqrtsuwvx’‘ŽŒ‹Šˆ|{z‰‡€~}…‚„†ƒy“”•–—˜œ›™šžŸ ¡¯®¬«ª©¨§¤£¢¦¥­°±´³²µ¶»º¹¸·¼½À¿¾ÁÄÃÂÅÆÈÇÉÒÑÐÏÎÍÌËÊÓÔÕÖ×ÝÜÛÚÙØÞôóòñðïîíìëêéèçæåäãâàßáõa`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"      ÿþýüûúùø÷ö!bdcfeghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”×ÿ2gbdcfelmõa`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"      ÿþýüûúùø÷ö!Þôóòñðïîíìëêéèçæåäãâàßá×ÝÜÛÚÙØÕÖÓÔnopqrÉÒÑÐÏÎÍÌËÊÅÆÈÇstuvwxyz{|ÁÄÃÂ}~¼½À¿¾€µ¶»º¹¸·‚ƒk°±´³²„¡¯®¬«ª©¨§¤£¢¦¥­Ÿ žji˜œ›™š…†‡ˆ‰Š‹ŒŽ‘’“”•–—“”hx’‘ŽŒ‹Šˆ|{z‰‡€~}…‚„†ƒyuwvqrtslponmjkgihdef×0None"#%,.4567;>@AHPSX_g)Éê purescript=Map a function over type annotations appearing inside a valueÚÜÛÝÞßàáâãäåæçèéêÝÞßàáâãäåÚÜÛæçèéê1None"#%,.4567;>@AHPSX_gI]î purescriptÿReturn a list of all declarations which are exported from a module. This function descends into data declarations to filter out unexported data constructors, and also filters out type instance declarations if they refer to classes or types which are not themselves exported.]Note that this function assumes that the module has already had its imports desugared using TŒ. It will produce incorrect results if this is not the case - for example, type class instances will be incorrectly removed in some cases.¿The returned declarations are in the same order as they appear in the export list, unless there is no export list, in which case they appear in the same order as they do in the source file.Î purescript¨Filter out all data constructors from a declaration which are not exported. If the supplied declaration is not a data declaration, this function returns it unchanged.Ï purescript‰Filter out all the type instances from a list of declarations which reference a type or type class which is both local and not exported.ÿNote that this function assumes that the module has already had its imports desugared using "Language.PureScript.Sugar.Names.desugarImports". It will produce incorrect results if this is not the case - for example, type class instances will be incorrectly removed in some cases.Ð purescriptLGet all type and type class names referenced by a type instance declaration.ï purescriptãTest if a declaration is exported, given a module's export list. Note that this function does not account for type instance declarations of non-exported types, or non-exported data constructors. Therefore, you should prefer î" to this function, where possible.Ñ purescript_Test if a data constructor for a given type is exported, given a module's export list. Prefer î" to this function, where possible.Ò purescriptNReorder declarations based on the order they appear in the given export list.îïîïžNone"#%,.4567;>@AHPSX_gJKÿy125436789:;<=>?@ABCDEFGZ[\_]^`abÆÇÈÉÊËÌ./0126345789:defghijklmnopqrstuvwxyƒ†„‚…}~€‡‰z{|ˆŠ‹ŒŽ‘’“”•—–˜š™›œžŸ ¡­¥¦¢£¤§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞáßàâãäåæçèéêëìíîïðñòóôõ!ö÷øùúûüýþÿ      "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”×ÚÛÜÝÞßàáâãäåæçèéêîï2None"#%,.4567;>@AHPSX_gS>ð purescriptReplace every BoundValueDeclaration in Let expressions with Case expressions.Ó purescriptDesugar a single let expressionðð3None"#%,.4567;>@AHMPSX_g^ì ö purescript)String with length and source-map entriesý purescriptWrap a string in parentheses  purescript+Generalize intercalate slightly for monoids  purescript)Number of characters per identation level  purescript)Pretty print with a new indentation level  purescript!Get the current indentation level  purescriptPrint many lines  purescriptRPlace a box before another, vertically when the first box takes up multiple lines.  purescript*Place a Box on the bottom right of another  purescriptÄMake a monoid where append consists of concatenating the string part, adding the lengths appropriately and advancing source mappings on the right hand side to account for the length of the left.ñòóôõö÷øùúüûýþÿ         ýþÿ úüûøùö÷ôõ    ñòó     4None"#%,.4567;>@AHPSX_ga´  purescript4Generate a pretty-printed string representing a Kind  5None"#%,.4567;>@AHPSX_ghíÔ purescript3Generate a pretty-printed string representing a Row * purescript\Generate a pretty-printed string representing a Type, as it should appear inside parentheses . purescript0Generate a pretty-printed string representing a " / purescript0Generate a pretty-printed string representing a "( using unicode symbols where applicable 0 purescript:Generate a pretty-printed string representing a suggested "            ! " # $ % & ' ( ) * + , - . / 0 1 2           ! " # $ % & '  ( + , - . / 0 ) * 1 26None"#%,.4567;>@AHPSX_gn£Õ purescript5Render an aligned list of items separated with commas 3 purescriptPretty-print an expressionÖ purescriptCPretty-print an atomic expression, adding parentheses if necessary. 5 purescript6Generate a pretty-printed string representing a Binder 3 4 5 3 5 4ŸNone"#%,.4567;>@AHPSX_go™#S             ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5#S             ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 57None"#%,.4567;>@AHPSX_g‰³" 6 purescript8A type or value declaration appearing in an externs file 7 purescriptA type declaration 8 purescriptA type synonym 9 purescriptA data construtor : purescriptA value declaration ; purescriptA type class declaration < purescriptAn instance declaration = purescriptA kind declaration X purescript,A type fixity declaration in an externs file Z purescript!The associativity of the operator [ purescript$The precedence level of the operator \ purescriptThe operator symbol ] purescript&The value the operator is an alias for ^ purescript'A fixity declaration in an externs file ` purescript!The associativity of the operator a purescript$The precedence level of the operator b purescriptThe operator symbol c purescript&The value the operator is an alias for d purescript"A module import in an externs file f purescriptThe imported module g purescript-The import type: regular, qualified or hiding h purescript+The imported-as name, for qualified imports i purescript4The data which will be serialized to an externs file k purescriptThe externs version l purescript Module name m purescriptList of module exports n purescriptList of module imports o purescript$List of operators and their fixities p purescript)List of type operators and their fixities q purescript"List of type and value declaration r purescriptSource span for error reporting s purescriptTCheck whether the version in an externs file matches the currently running version. t purescript*Convert an externs file back into a module u purescript9Generate an externs file for all declarations in a moduleA 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u vA i j k l m n o p q r d e f g h ^ _ ` a b c X Y Z [ \ ] 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W s u t v8None"#$%,.4567;>@AHMPSX_g´ƒ( † purescript · Options ˆ purescript$Color code with this color... or not ‰ purescript"Should write a full error message? Š purescript)Should this report an error or a warning? ‹ purescript/Should show a link to error message's doc page? Œ purescript)FilePath to which the errors are relative  purescriptHow critical the issue is  purescriptLA map from rigid type variable name/unknown variable pairs to new variables. ’ purescriptGa map from skolems to their new names, including source and naming info “ purescript3a map from unification variables to their new names ” purescript‹unknowns and skolems share a source of names during renaming, to avoid overlaps in error messages. This is the next label for either case. • purescriptA stack trace for an error š purescript Get the source span for an error › purescript Get the module name for an error  purescript3Remove the module name and span hints from an error ž purescript.Get the error code for a particular error type Ÿ purescript5Check whether a collection of errors is empty or not.   purescript6Create an error set from a single simple error message ¡ purescriptLCreate an error set from a single simple error message and source annotation ¢ purescriptMCreate an error set from a single simple error message and source annotations £ purescriptMCreate an error from multiple (possibly empty) source spans, reversed sorted. ¤ purescript/Create an error set from a single error message ¥ purescript?Lift a function on ErrorMessage to a function on MultipleErrors ¦ purescriptAdd a hint to an error message § purescriptAdd hints to an error message © purescript1Extract nested error messages from wrapper errors µ purescript)Default color intesity and color for code ¶ purescriptDefault options for PPEOptions · purescript5Pretty print a single error, simplifying if necessary » purescriptPretty print multiple errors ¼ purescriptPretty print multiple warnings ½ purescriptPretty print warnings as a Box ¾ purescriptPretty print errors as a Box À purescript)Pretty print a Parsec ParseError as a Box Á purescript Pretty print  ParseError detail messages. Adapted from  ¡. See  Hhttps://github.com/aslatter/parsec/blob/v3.1.9/Text/Parsec/Error.hs#L173.  purescript/Indent to the right, and pad on top and bottom. Ç purescriptJRethrow an error with a more detailed error message in the case of failure Ë purescript1Rethrow an error with source position information Ñ purescriptuRuns a computation listening for warnings and then escalating any warnings that match the predicate to error status. Ò purescriptCollect errors in in parallelÿÆ125436789:;<=>?@ABCDEFGZ[\_]^`abÆÇÈÉÊËÌ./0126345789:defghijklmnopqrstuvwxyƒ†„‚…}~€‡‰z{|ˆŠ‹ŒŽ‘’“”•—–˜š™›œžŸ ¡­¥¦¢£¤§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞáßàâãäåæçèéêëìíîïðñòóôõ!ö÷øùúûüýþÿ      "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”×ÚÛÜÝÞßàáâãäåæçèéêîï † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ ÒM † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò9None"#%&',.4567;=>?@AHPSX_gåL( Ø purescriptUnification variables Ù purescript State required for type checking Û purescript The current  Environment Ü purescript"The next type unification variable Ý purescript"The next kind unification variable Þ purescriptThe next skolem variable ß purescriptThe next skolem scope constant à purescriptThe current module á purescriptThe current substitution â purescriptOThe current error message hint stack. This goes into state, rather than using  ÇR, since this way, we can provide good error messages during instance resolution. ã purescript:A substitution of unification variables for types or kinds å purescriptType substitution æ purescriptKind substitution ç purescriptAn empty substitution è purescriptCreate an empty  CheckState é purescript0Temporarily bind a collection of names to values ê purescript/Temporarily bind a collection of names to types ë purescript/Temporarily bind a collection of names to types í purescriptThese hints are added at the front, so the most nested hint occurs at the front, but the simplifier assumes the reverse order. ð purescriptBTemporarily make a collection of type class dictionaries available ñ purescript:Get the currently available map of type class dictionaries ò purescript+Lookup type class dictionaries in a module. ó purescript+Lookup type class dictionaries in a module. ô purescript9Temporarily bind a collection of names to local variables õ purescript>Temporarily bind a collection of names to local type variables ö purescript-Update the visibility of all names to Defined ÷ purescriptQUpdate the visibility of all names to Defined in the scope of the provided action ø purescript6Perform an action while preserving the names from the  Environment. ù purescript*Lookup the type of a value by name in the  Environment ú purescript0Lookup the visibility of a value by name in the  Environment û purescriptAssert that a name is visible ü purescript)Lookup the kind of a type by name in the  Environment ý purescriptGet the current  Environment þ purescript?Get locally-bound names in context, to create an error message. ÿ purescript Update the  Environment  purescript Modify the  Environment  purescriptDRun a computation in the typechecking monad, starting with an empty  Environment  purescripttRun a computation in the typechecking monad, failing with an error, or succeeding with a return value and the final  Environment.  purescript0Make an assertion, failing with an error message  purescriptbRun a computation in the substitution monad, generating a return value and the final substitution.1 Ø Ù Ú â á à ß Þ Ý Ü Û ã ä æ å ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ        1 ã ä æ å ç Ù Ú â á à ß Þ Ý Ü Û è Ø é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ        :None"#%&',.4567;>@AHPSX_gë)  purescriptNType synonym information (arguments with kinds, aliased type), indexed by name  purescript#Replace fully applied type synonyms  purescript>Replace fully applied type synonyms by explicitly providing a  .  ;None"#%,.4567;>@AHPSX_gù¿  purescriptGenerate a new skolem constant  purescript6Introduce skolem scope at every occurrence of a ForAll  purescriptGenerate a new skolem scope  purescriptPSkolemize a type variable by replacing its instances with fresh skolem constants  purescriptMThis function skolemizes type variables appearing in any type signatures or o placeholders. These type variables are the only places where scoped type variables can appear in expressions.  purescript1Ensure skolem variables do not escape their scope(Every skolem variable is created when a *c type is skolemized. This determines the scope of that skolem variable, which is copied from the 2 field of the * constructor.<This function traverses the tree top-down, and collects any 2s introduced by *s. If a , is encountered whose 2L is not in the current list, then we have found an escaped skolem variable.        <None"#%,.4567;=>?@AHPSX_g   purescriptGenerate a fresh type variable  purescript2Update the substitution to solve a type constraint  purescriptApply a substitution to a type× purescript2Make sure that an unknown does not occur in a type  purescript2Compute a list of all unknowns appearing in a type  purescript2Unify two types, updating the current substitution  purescript9Align two rows of types, splitting them into three parts:%Those types which appear in both rows#Those which appear only on the left$Those which appear only on the rightINote: importantly, we preserve the order of the types with a given label.  purescript1Unify two rows, updating the current substitution‹Common labels are identified and unified. Remaining labels and types are unified with a trailing row unification variable, if appropriate.  purescript>Replace a single type variable with a new unification variable  purescript$Replace type wildcards with unknowns  purescriptJReplace outermost unsolved unification variables with named type variables                    =None"#%&',.4567;>@AHPSVX_gÓØ purescript5This type family tracks what evidence we return from   for each mode.Ù purescript%Value-level proxies for the two modesÚ purescript%Subsumption can operate in two modes:CElaboration mode, in which we try to insert type class dictionaries;No-elaboration mode, in which we do not insert dictionariesVSome subsumption rules apply in both modes, and others are specific to certain modes.ëThe subsumption algorithm follows the structure of the types in question, and we can switch into no-elaboration mode when we move under a type constructor where we can no longer insert dictionaries, e.g. into the fields of a record.Û purescript#The default coercion for each mode.  purescriptYCheck that one type subsumes another, rethrowing errors to provide a better error messageÜ purescript$Check that one type subsumes another  >None"#%,.4567;=>?@AHPSX_g&U Ý purescriptGenerate a fresh kind variableÞ purescript2Update the substitution to solve a kind constraintß purescriptApply a substitution to a kindà purescript2Make sure that an unknown does not occur in a kindá purescriptUnify two kinds  purescriptInfer the kind of a single type  purescriptQInfer the kind of a single type, returning the kinds of any scoped type variables  purescripttInfer the kind of a type constructor with a collection of arguments and a collection of associated data constructors  purescriptNSimultaneously infer the kinds of several mutually recursive type constructorsâ purescript^Solve the set of kind constraints associated with the data constructors for a type constructorã purescript7Default all unknown kinds to the kindType kind of typesä purescriptInfer a kind for a type        ?None"#$%,.4567;>@AHPSX_gDû ! purescript!Options for the constraint solver # purescriptEShould the solver be allowed to generalize over unsolved constraints? $ purescriptEShould the solver be allowed to defer errors by skipping constraints?å purescriptQThree options for how we can handle a constraint, depending on the mode we're in.æ purescriptWe solved this constraintç purescriptCWe couldn't solve this constraint right now, it will be generalizedè purescriptDWe couldn't solve this constraint right now, so it has been deferredé purescriptGA type substitution which makes an instance head match a list of types.Note: we store many types per type variable name. For any name, all types should unify if we are going to commit to an instance. % purescriptThe  %1 tracks those constraints which can be satisfied.ê purescript=Description of a type class dictionary with instance evidenceë purescriptFDescribes what sort of dictionary to generate for type class instancesì purescriptAn existing named instanceí purescript3Warn type class with a user-defined warning messageî purescript2The IsSymbol type class for a given Symbol literalï purescript)For any solved type class with no membersð purescript*Extract the identifier of a named instance & purescriptPReplace type class dictionary placeholders with inferred type class dictionaries ' purescript’Check that the current set of type class dictionaries entail the specified type class goal, and, if so, return a type class dictionary reference. ( purescriptiAdd a dictionary for the constraint to the scope, and dictionaries for all implied superclass instances.ñ purescript5Check all pairs of values in a list match a predicateò purescript4Check any pair of values in a list match a predicate ' purescriptSolver options purescriptThe constraint to solve purescript-The contexts in which to solve the constraint purescript3Error message hints to apply to any instance errors ! " # $ % & ' ( % ! " # $ & ( '@None"#%,.4567;>@AHPSX_gNìó purescript)Additional constraints we need to satisfy purescriptGThe Environment which contains the relevant definitions and typeclasses purescriptThe typechecker state purescriptThe user supplied type purescript$The type supplied by the environmentô purescriptK(all accessors we found, all accessors we found that match the result type) 1 purescript)Additional constraints we need to satisfy purescriptGThe Environment which contains the relevant definitions and typeclasses purescriptThe typechecker state purescriptThe type we are looking for 1 1ANone"#$%,.4567;>@AHPSX_g‡Eõ purescripteA binding group contains multiple value definitions, some of which are typed and some which are not.HThis structure breaks down a binding group into typed and untyped parts.ö purescriptThe untyped expressions÷ purescript8The typed expressions, along with their type annotationsø purescript„A map containing all expressions and their assigned types (which might be fresh unification variables). These will be added to the Ç? after the binding group is checked, so the value type of the Map. is chosen to be compatible with the type of  é.ù purescript&The result of a successful type check.ú purescript1Convert an type checked value into an expression. 5 purescriptŒInfer the types of multiple mutually-recursive values, and return elaborated values including type class dictionaries and type annotations.û purescriptÿ This function breaks a binding group down into two sets of declarations: those which contain type annotations, and those which don't. This function also generates fresh unification variables for the types of declarations without type annotations, returned in the  UntypedData structure.ü purescript>Check the type annotation of a typed value in a binding group.ý purescriptFInfer a type for a value in a binding group which lacks an annotation.þ purescript9Check the kind of a type, failing if it is not of kind *.ÿ purescriptyRemove any ForAlls and ConstrainedType constructors in a type by introducing new unknowns or TypeClassDictionary values.iThis is necessary during type checking to avoid unifying a polymorphic type with a unification variable. purescriptUInfer a type for a value, rethrowing any error to provide a more useful error message purescriptInfer a type for a value purescript;Infer the types of variables brought into scope by a binder purescript£Returns true if a binder requires its argument type to be a monotype. | If this is the case, we need to instantiate any polymorphic types before checking binders. purescript9Instantiate polytypes only when necessitated by a binder. purescriptLCheck the types of the return values in a set of binders in a case statement purescriptNCheck the type of a value, rethrowing errors to provide a better error message purescriptCheck the type of a value purescript5Check the type of a collection of named record fieldsThe laxt parameter controls whether or not every record member has to be provided. For object updates, this is not the case.  purescript^Check the type of a function application, rethrowing errors to provide a better error message.!This judgment takes three inputs:.The expression of the function we are applyingThe type of that function$The expression we are applying it toand synthesizes two outputs:The return typewThe elaborated expression for the function application (since we might need to insert type class dictionaries, etc.)  purescript(Check the type of a function application  purescriptJEnsure a set of property names and value does not contain duplicate labelsü purescriptYThe identifier we are trying to define, along with the expression and its type annotation purescript.Names brought into scope in this binding groupý purescriptThe identifier we are trying to define, along with the expression and its assigned type (at this point, this should be a unification variable) purescript.Names brought into scope in this binding group  purescriptThe function expression purescriptThe type of the function purescriptThe argument expression purescript(The result type, and the elaborated term 2 3 4 5 2 3 4 5BNone"#%,.4567;>@AHPSX_g‰™ 9 purescriptIReplace all top level type declarations in a module with type annotations 9 9CNone"#%,.4567;>@AHPSX_gŠ : ; < = > ? @ A B C < ; : = > ? @ A B CDNone"#%,.4567;>@AHPSX_g‹­ D DENone"#%,.4567;>@AHPSX_gŒ“ E EFNone"#%,.4567;>@AHPSX_gy F FGNone"#%,.4567;>@AHPSX_gœï  purescriptƒAn operator associated with its declaration position, fixity, and the name of the function or data constructor it is an alias for. G purescriptARemoves unary negation operators and replaces them with calls to  . H purescriptERemove explicit parentheses and reorder binary operator applications.LThis pass requires name desugaring and export elaboration to have run first. I purescript A version of  Hÿ. which allows you to choose which declarations should be affected. This is used in docs generation, where we want to desugar type operators in instance declarations to ensure that instances are paired up with their types correctly, but we don't want to desugar type operators in value declarations. J purescriptChecks all the fixity exports within a module to ensure that members aliased by the operators are also exported from the module.LThis pass requires name desugaring and export elaboration to have run first. G H I J G H I JHNone"#%,.4567;>@AHPSX_gí K L K LINone"#%,.4567;>@AHPSX_gâà. M purescriptWhen updating the  QÏ the behaviour is slightly different depending on whether we are exporting values defined within the module or elaborating re-exported values. This type is used to indicate which behaviour should be used. P purescript9The imports and exports for a collection of modules. The 1˜ is used to store the source location of the module with a given name, used to provide useful information when there is a duplicate module definition. Q purescript(The exported declarations from a module. S purescriptCThe exported types along with the module they originally came from. T purescriptMThe exported type operators along with the module they originally came from. U purescriptEThe exported classes along with the module they originally came from. V purescriptDThe exported values along with the module they originally came from. W purescriptNThe exported value operators along with the module they originally came from. X purescriptCThe exported kinds along with the module they originally came from. Y purescriptKThe imported declarations for a module, including the module's own members. [ purescriptELocal names for types within a module mapped to their qualified names \ purescriptNLocal names for type operators within a module mapped to their qualified names ] purescriptQLocal names for data constructors within a module mapped to their qualified names ^ purescriptGLocal names for classes within a module mapped to their qualified names _ purescriptFLocal names for values within a module mapped to their qualified names ` purescriptOLocal names for value operators within a module mapped to their qualified names a purescriptzThe name of modules that have been imported into the current scope that can be re-exported. If a module is imported with as qualification, the as0 name appears here, otherwise the original name. b purescript<The "as" names of modules that have been imported qualified. c purescriptELocal names for kinds within a module mapped to their qualified names d purescriptÏUsed to track how an import was introduced into scope. This allows us to handle the one-open-import special case that allows a name conflict to become a warning rather than being an unresolvable situation. i purescriptJThe details for an import: the name of the thing that is being imported (¢£ if importing from Az), the module that the thing was originally defined in (for re-export resolution), and the import provenance (see below). p purescript An empty  Q value. q purescript Extracts the 1 from an  P value. r purescript Extracts the  Y from an  P value. s purescript Extracts the  Q from an  P value. t purescriptThe exported types from the Prim module purescriptThe exported types from the  Prim.Boolean module purescriptThe exported types from the  Prim.Ordering module purescriptThe exported types from the Prim.Row module purescriptThe exported types from the  Prim.RowList module purescriptThe exported types from the  Prim.Symbol module purescriptThe exported types from the Prim.TypeError module purescript*Create a set of exports for a Prim module. u purescript1Environment which only contains the Prim modules. v purescriptgSafely adds a type and its data constructors to some exports, returning an error if a conflict occurs. w purescriptVSafely adds a type operator to some exports, returning an error if a conflict occurs. x purescriptMSafely adds a class to some exports, returning an error if a conflict occurs. y purescriptMSafely adds a value to some exports, returning an error if a conflict occurs. z purescriptWSafely adds a value operator to some exports, returning an error if a conflict occurs. { purescriptLSafely adds a kind to some exports, returning an error if a conflict occurs. purescripteAdds an entry to a list of exports unless it is already present, in which case an error is returned. purescriptIRaises an error for when there is more than one definition for something. purescriptDRaises an error for when there are conflicting names in the exports. purescript’Raises an error for when there are conflicting names in the exports. Allows different categories of names. E.g. class and type names conflicting. | purescriptMGets the exports for a module, or raise an error if the module doesn't exist. } purescriptSWhen reading a value from the imports, check that there are no conflicts in scope.1 M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d h e f g i j k l m n o p q r s t u v w x y z { | }1 i j k l m n d h e f g Y Z [ \ ] ^ _ ` a b c o Q R S T U V W X p P u t q r s M N O v w x y z { | }JNone"#%,.4567;>@AHPSX_gêÎ ‰ purescript|Finds the imports within a module, mapping the imported module name to an optional set of explicitly imported declarations. Š purescript)Constructs a set of imports for a module. ‹ purescript7Constructs a set of imports for a single module import. purescriptTExtends the local environment for a module by resolving an import of another module. ˆ ‰ Š ‹ ˆ Š ‹ ‰KNone"#%,.4567;>@AHPSX_gìê Œ purescript;Warns about duplicate values in a list of declaration refs. Œ ŒLNone"#%,.4567;>@AHPSX_gó–  purescriptLFinds all exportable members of a module, disregarding any explicit exports. Ž purescript‚Resolves the exports for a module, filtering out members that have not been exported and elaborating re-exports of other modules. purescript~Filters the full list of exportable values, types, and classes for a module based on a list of export declaration references. Ž ŽMNone"#%,.4567;>@AHPSX_gø   purescript Replace all DoNotationBind and DoNotationValueH constructors with applications of the bind function in scope, and all  DoNotationLet$ constructors with let expressions. purescriptDesugar a single do statement  NNone"#%,.4567;>@AHPSX_gýÇ  purescript@Replace all top-level binders in a module with case expressions. purescript]Desugar case with pattern guards and pattern clauses to a series of nested case expressions. purescript2Validates that case head and binder lengths match. ’ purescript4Replace all top-level binders with case expressions. ‘ ’ ’ ‘ONone"#%,.4567;>@AHPSX_g “ purescript†Add type synonym declarations for type class dictionary types, and value declarations for type class instance dictionary expressions. “ ” • “ ” •PNone"#%,.4567;>@AHPSX_g­ – purescriptSReplace all sets of mutually-recursive declarations in a module with binding groups — purescriptBCollapse all binding groups in a module to individual declarations ™ purescript6Collapse all binding groups to individual declarations purescriptoConvert a group of mutually-recursive dependencies into a BindingGroupDeclaration (or simple ValueDeclaration). – — ˜ ™ ˜ – ™ —QNone"#%,.4567;>@AHPSX_g p š purescript Replace all AdoNotationBind and AdoNotationValueS constructors with applications of the pure and apply functions in scope, and all AdoNotationLet$ constructors with let expressions. purescriptDesugar a single ado statement š šRNone"#%,.4567;>@AHPSX_gè › purescript,A module signature for sorting dependencies.   purescript4A list of modules with their transitive dependencies ¡ purescript:Sort a collection of modules based on module dependencies.6Reports an error if the module graph contains a cycle.  purescriptOCalculate a list of used modules based on explicit imports and qualified names.! purescriptFConvert a strongly connected component of the module graph to a module › œ ž Ÿ   ¡ ¢ ¡   › œ ž Ÿ ¢SNone"#%,.4567;>@AHPSX_g¿ £ purescriptTMap of module name to list of imported names from that module which have been used. ¤ purescriptFind and warn on:3Unused import statements (qualified or unqualified),Unused references in an explicit import listImplicit imports of modulesoImplicit imports into a virtual module (unless the virtual module only has members from one module imported)Imports using hiding- (this is another form of implicit importing) ‘˜’“”•–—™ £ ¤ ¤‘˜’“”•–—™ £TNone"#%,.4567;>@AHPSX_g, ¥ purescriptReplaces all local names with qualified names within a list of modules. The modules should be topologically sorted beforehand. § purescript8Create an environment from a collection of externs files" purescriptžMake all exports for a module explicit. This may still affect modules that have an exports list, as it will also make all data constructor exports explicit.¼The exports will appear in the same order as they do in the existing exports list, or if there is no export list, declarations are order based on their order of appearance in the module.# purescriptÿGiven a list of declarations, an original exports list, and an elaborated exports list, reorder the elaborated list so that it matches the original order. If there is no original exports list, reorder declarations based on their order in the source file.$ purescriptvReplaces all local names with qualified names within a module and checks that all existing qualified names are valid.# P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d h e f g i j k l m n u ¥ ¦ §# ¥ ¦ P § u i j k l m n d h e f g Y Z [ \ ] ^ _ ` a b c Q R S T U V W XUNone"#%,.4567;>@AHPSX_g`; % purescript8There are two modes of failure for the redundancy check: WExhaustivity was incomplete due to too many cases, so we couldn't determine redundancy.OWe didn't attempt to determine redundancy for a binder, e.g. an integer binder.+We want to warn the user in the first case.& purescriptRQualifies a propername from a given qualified propername and a default module name' purescriptÏGiven an environment and a datatype or newtype name, this function returns the associated data constructors if it is the case of a datatype where: - ProperName is the name of the constructor (for example, NothingN in Maybe) - [Type] is the list of arguments, if it has (for example, Just has [TypeVar "a"])( purescriptReplicates a wildcard binder) purescriptBApplies a function over two lists of tuples that may lack elements* purescript‡Find the uncovered set between two binders: the first binder is the case we are trying to cover, the second one is the matching binder+ purescript¯Returns the uncovered set of binders the first argument is the list of uncovered binders at step i the second argument is the (i+1)th clause of a pattern matching definitionZThe idea of the algorithm is as follows: it processes each binder of the two lists (say, x and yU) one by one at each step two cases arises: - there are no missing cases between x and y²: this is very straightforward, it continues with the remaining cases but keeps the uncovered binder in its position. - there are missing cases, let us call it the set U5: on the one hand, we mix each new uncovered case in U with the current tail of uncovered set. On the other hand, it continues with the remaining cases: here we can use x. (but it will generate overlapping cases), or y,, which will generate non-overlapping cases.As an example, consider:wdata N = Z | S N f Z Z = Z --> {[S _, _], [Z, S _]} which are the right non-overlapping cases (GHC uses this). if we use x instead of y (in this case, y stands for Z and x for `_`i) we obtain: f Z Z = Z --> {[S _, _], [_, S _]} you can see that both cases overlaps each other. Up to now, we've decided to use x~ just because we expect to generate uncovered cases which might be redundant or not, but uncovered at least. If we use y‰ instead, we'll need to have a redundancy checker (which ought to be available soon), or increase the complexity of the algorithm., purescriptGuard handling+We say a guard is exhaustive iff it has an - (or truep) expression. Example: f x | x < 0 = 0 | otherwise = 1 is exhaustive, whereas `f x | x < 0` is not;or in case of a pattern guard if the pattern is exhaustive.5The function below say whether or not a guard has an -# expression It is considered that - is defined in Prelude. purescript.Returns the uncovered set of case alternatives/ purescripteMain exhaustivity checking function Starting with the set `uncovered = { _ }` (nothing covered, one `_`¶ for each function argument), it partitions that set with the new uncovered cases, until it consumes the whole set of clauses. Then, returns the uncovered set of case alternatives. ¨ purescriptExhaustivity checking ¨ ¨VNone"#%,.4567;>@AHPSX_gb£ © purescriptTLint the PureScript AST. | | Right now, this pass only performs a shadowing check. ‘˜’“”•–—™ £ ¤ ¨ © ©WNone"#%,.4567;=>?@AHPSX_gl½0 purescript4Check that type synonyms are fully-applied in a type1 purescript'Type check all declarations in a moduleWAt this point, many declarations will have been desugared, but it is still necessary to)Kind-check all types and add them to the  Environment*Type-check all values and add them to the  Environment%Bring type class instances into scopeProcess module imports « purescriptType check an entire module and ensure all types and classes defined within the module that are required by exported members are also exported.2 purescriptindex of type class argument? Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ            2 3 4 5 ª « « ªXNone"#%,.4567;>@AHPSX_g~‹3 purescriptªWhen deriving an instance for a newtype, we must ensure that all superclass instances were derived in the same way. This data structure is used to ensure this property.4 purescript~A list of superclass constraints for each type class. Since type classes have not been desugared here, we need to track this.5 purescript>A list of newtype instances which were derived in this module.6 purescriptcExtract the name of the newtype appearing in the last type argument of a derived newtype instance.ÿNote: since newtypes in newtype instances can only be applied to type arguments (no flexible instances allowed), we don't need to bother with unification when looking for matching superclass instances, which saves us a lot of work. Instead, we just match the newtype name. ¬ purescript=Elaborates deriving instance declarations by code generation.7 purescript•Takes a declaration, and if the declaration is a deriving TypeInstanceDeclaration, elaborates that into an instance declaration via code generation. ¬ ¬YNone"#%,.4567;>@AHPSX_gˆ– ° purescript,The desugaring pipeline proceeds as follows: $Remove signed literals in favour of negate applications3Desugar object literals with wildcards into lambdasDesugar operator sectionsDesugar do-notationDesugar ado-notationBDesugar top-level case declarations into explicit case expressionsPDesugar type declarations into value declarations with explicit type annotations'Qualify any unqualified names and types'Rebracket user-defined binary operators3Introduce type synonyms for type class dictionariesIGroup mutually recursive value and data declarations into binding groups.9ð 9 G H I J K L P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d h e f g i j k l m n u ‘ ’ “ ” • – — ˜ ™ š ¥ ¦ § ¬ ° °ZNone"#%,.4567;>@AHMPSX_g¡Æ ² purescript€A type representing a highly simplified version of PureScript code, intended for use in output formats like plain text or HTML. ³ purescript‘A single element in a rendered code fragment. The intention is to support multiple output formats. For example, plain text, or highlighted HTML. · purescript³Any symbol which you might or might not want to link to, in any namespace (value, type, or kind). Note that this is not related to the kind called Symbol for type-level strings. ¿ purescriptThis type is isomorphic to 8 {G. It makes code a bit easier to read, as the meaning is more explicit.9 purescriptbGiven a list of actions, attempt them all, returning the first success. If all the actions fail, 9 returns the first argument.: purescriptpTry the given parsers in sequence. If all fail, fail with the given message, and include the JSON in the error. à purescript Convert a 8 { to a  ¿!, using the obvious isomorphism. Ä purescript Convert a  ¿ to a 8 {!, using the obvious isomorphism. Å purescript A version of  fromMaybe for  ¿ values. É purescript%This function allows conversion of a  ² value into a value of some other type (for example, plain text, or HTML). The first argument is a function specifying how each individual  ³ should be rendered. Ê purescriptA  ² fragment representing a space. Ë purescript$Wrap a RenderedCode value in parens.; purescriptoConverts a FixityAlias into a different representation which is more useful to other functions in this module./ ± ² ³ ´ · ¶ µ ¸ ¹ º » ¼ ¾ ½ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß/ ³ ´ · ¶ µ Ç ¿ À Á Â Ä Ã Å Æ ¸ ¹ º » ¼ ¾ ½ ± ² È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß[None"#%,.4567;>@AHPSX_g¥  û purescript/Generate RenderedCode value representing a Kind û û\None"#%,.4567;>@AHPSX_g¨– ü purescriptRender code representing a Row ý purescriptRender code representing a Type ÿ purescriptGRender code representing a Type, as it should appear inside parentheses ü ý þ ÿ  ý þ ÿ ü¤None"#%,.4567;>@AHPSX_g©œ5 ± ² ³ ´ · ¶ µ ¸ ¹ º » ¼ ¾ ½ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß û ü ý þ ÿ ]None"#%,.4567;>@AHPSX_g¹Ö  purescript/Data type for simplified JavaScript expressions  purescriptA numeric literal  purescriptA string literal  purescriptA boolean literal  purescriptA unary operator application  purescriptA binary operator application  purescriptAn array literal  purescriptAn array indexer expression  purescriptAn object literal  purescript8A function introduction (optional name, arguments, body)  purescriptFunction application  purescriptVariable  purescript A block of expressions in braces  purescript3A variable introduction and optional initialization  purescriptA variable assignment  purescript While loop  purescriptFor loop  purescript ForIn loop  purescriptIf-then-else statement  purescriptReturn statement  purescript%Return statement with no return value  purescriptThrow statement  purescriptinstanceof check  purescriptCommented JavaScript  purescriptBuilt-in binary operators - purescriptBuilt-in unary operators8                     , + * ) ( ' $ # " !       & % - 0 . 2 / 1 3 4 5 6 7 88 - 0 . 2 / 1  , + * ) ( ' $ # " !       & %                    3 4 5 6 7 8^None"#%,.4567;>@AHPSX_g¼ö ? purescriptEliminate tail calls ? ?_None"#%,.4567;>@AHPSX_g½Ü @ A B C D E F G H I J @ A B C D E F G H I J`None"#%,.4567;>@AHPSX_g¿ K L K LaNone"#%,.4567;>@AHPSX_gÃÐ M purescriptCInline type class dictionaries for >>= and return for the Eff monadE.g.;Prelude[">>="](dict)(m1)(function(x) { return ...; })becomes-function __do { var x = m1(); ... } P purescript!Inline functions in the ST module M N O P N M O PbNone"#%,.4567;>@AHPSX_gÄÎ Q R S T U V W X Y T U V W X Y Q R ScNone"#%,.4567;>@AHPSX_gÇ& Z purescript@Collapse blocks which appear nested directly below another block Z [ Z [dNone"#%,.4567;>@AHPSX_gÉF \ purescript@Apply a series of optimizer passes to simplified JavaScript code \ \¥None"#%,.4567;>@AHPSX_gÊ,V                     % &       ! " # $ ' ( ) * + , - 1 / 2 . 0 3 4 5 6 7 8 ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \eNone"#%,.4567;>@AHPSX_gÚä ] purescript4Desugars a module from AST to CoreFn representation.< purescriptÙFind module names from qualified references to values. This is used to ensure instances are imported from any module that is referenced by the current module, not just from those that are imported explicitly (#667).= purescript?Desugars import declarations from AST to CoreFn representation.> purescript@Desugars foreign declarations from AST to CoreFn representation.? purescriptÎDesugars export declarations references from AST to CoreFn representation. CoreFn modules only export values, so all data constructors, class constructor, instances and values are flattened into one list.@ purescriptÍMakes a typeclass dictionary constructor function. The returned expression is a function that accepts the superclass instances and member implementations and returns a record for the instance dictionary.A purescript"Converts a ProperName to an Ident. ] ]¦None"#%,.4567;>@AHPSX_gÛÊ< !"#$%&'(ÆÇÈÉÊËÌÑÒÓÔÕÖ×ÚÛÜÝÞßáàâãéäèåæçêëìíôõö÷ûúüÿøùýþ*+,- ]fNone"#%,.4567;>@AHPSX_gð(B purescript$The state object used in this moduleC purescriptDA map from names bound (in the input) to their names (in the output)D purescriptDThe set of names which have been used and are in scope in the outputE purescriptCRuns renaming starting with a list of idents for the initial scope.F purescriptbCreates a new renaming scope using the current as a basis. Used to backtrack when leaving an Abs.G purescriptqAdds a new scope entry for an ident. If the ident is already present, a new unique name is generated and stored.H purescript'Finds the new name to use for an ident.I purescript(Finds idents introduced by declarations. ^ purescript,Renames within each declaration in a module.J purescriptÿPRenames within a declaration. isTopLevel is used to determine whether the declaration is a module member or appearing within a Let. At the top level declarations are not renamed or added to the scope (they should already have been added), whereas in a Let declarations are renamed if their name shadows another in the current scope.K purescriptRenames within a value.L purescriptRenames within literals.M purescript!Renames within case alternatives.N purescriptRenames within binders. ^ ^gNone"#%,.4567;>@AHPSX_gñ _ _hNone"#%,.4567;>@AHPSX_gñì ` a a `iNone"#%,.4567;>@AHPSX_g#T c purescript/A link to a declaration in the current package. d purescriptÖA link to a declaration in a different package. The arguments represent the name of the other package, the version of the other package, and the name of the module in the other package that the declaration is in. e purescriptÆA link to a declaration that is built in to the compiler, e.g. the Prim module. In this case we only need to store the module that the builtin comes from. Note that all builtin modules begin with PrimS, and that the compiler rejects attempts to define modules whose names start with Prim. w purescript`Minimum allowable version for generating data with the current parser, and actual version used. ‡ purescript@A type instance declaration, with its dependencies and its type. ˆ purescript,A data constructor, with its type arguments. ‰ purescript™A type class member, with its type. Note that the type does not include the type class constraint; this may be added manually if desired. For example, O from P would be `forall a. a -> f a`.  purescript»A value of this type contains information that is specific to a particular kind of declaration (as opposed to information which exists in all kinds of declarations, which goes into the  ˜ type directly).¿Many of the constructors are very similar to their equivalents in the real PureScript AST, except that they have their name elided, since this is already available via the rdTitle field of  ˜. ‘ purescript#A value declaration, with its type. ’ purescript˜A data/newtype declaration, with the kind of declaration (data or newtype) and its type arguments. Constructors are represented as child declarations. “ purescript*A data type foreign import, with its kind. ” purescript5A type synonym, with its type arguments and its type. • purescript’A type class, with its type arguments, its superclasses and functional dependencies. Instances and members are represented as child declarations. – purescript[An operator alias declaration, with the member the alias is for and the operator's fixity. — purescriptA kind declaration µ purescriptŠThe version of the PureScript compiler which was used to generate this data. We store this in order to reject packages which are too old. » purescript’The time format used for serializing package tag times in the JSON format. This is the ISO 8601 date format which includes a time and a timezone. ¼ purescriptRConvenience function for formatting a time in the format expected by this module. ½ purescriptOConvenience function for parsing a time in the format expected by this module. Ç purescript>Discard any children which do not satisfy the given predicate. Ï purescript™Given a links context, the current module name, the namespace of a thing to link to, its title, and its containing module, attempt to create a DocLink. ø purescriptÃGiven a function for turning association list keys into JSON object keys, and a function for turning association list values to JSON string values, turns an association list into a JSON object.For example: *assocListToJSON T.pack T.pack [("a", "b")] will give  {"a": "b"}.¨ ± ² ³ ´ · ¶ µ ¸ ¹ º » ¿ À Á Â Ç È b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ ” “ — • – ˜ ™ œ š › ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ­ ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø¨ b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ ” “ — • – ˜ ™ œ š › ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ­ ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ± ² ³ ´ · ¶ µ ¸ ¹ º » ¿ À Á Â Ç ÈjNone"#%,.4567;>@AHPSX_g)r M N O M O NkNone"#%,.4567;>@AHPSX_g*h P Q R S T U V W X P Q R S T U V W XlNone"#%,.4567;>@AHPSX_g-pQ purescriptlLookup the TypeClassData of a Prim class. This function is specifically not exported because it is partial. Y Z [ \ Z [ \ YmNone"#%,.4567;>@AHPSX_gJR purescriptESome data which will be used to augment a Declaration in the output.ÿoThe AugmentChild constructor allows us to move all children under their respective parents. It is only necessary for type instance declarations, since they appear at the top level in the AST, and since they might need to appear as children in two places (for example, if a data type defined in a module is an instance of a type class also defined in that module).S purescriptOThe data type for an intermediate stage which we go through during converting.öIn the first pass, we take all top level declarations in the module, and collect other information which will later be used to augment the top level declarations. These two situation correspond to the Right and Left constructors, respectively.†In the second pass, we go over all of the Left values and augment the relevant declarations, leaving only the augmented Right values.ÿqNote that in the Left case, we provide a [Text] as well as augment information. The [Text] value should be a list of titles of declarations that the augmentation should apply to. For example, for a type instance declaration, that would be any types or type classes mentioned in the instance. For a fixity declaration, it would be just the relevant operator's name.T purescript%Different declarations we can augmentU purescript&Augment documentation for a type classV purescript,Augment documentation for a type constructor ] purescriptoConvert a single Module, but ignore re-exports; any re-exported types or values will not appear in the result.W purescript‡Augment top-level declarations; the second pass. See the comments under the type synonym IntermediateDeclaration for more information.X purescript!Create a basic Declaration value. ] ^ ] ^nNone"#%,.4567;>@AHPSX_gyf Y purescriptËAn intermediate data type, used for either moving type class members under their parent type classes, or promoting them to normal Declaration values if their parent type class has not been re-exported.Z purescriptÍType class members which have not yet been dealt with. The Text is the name of the type class they belong to, and the constraint is used to make sure that they have the correct type if they get promoted.[ purescript€A list of normal value declarations. Type class members will be added to this list if their parent type class is not available.\ purescriptrA list of type class declarations. Type class members will be added to their parents in this list, if they exist. _ purescriptGiven:A list of externs files>A function for tagging a module with the package it comes fromiA map of modules, indexed by their names, which are assumed to not have their re-exports listed yet.This function adds all the missing re-exports.] purescript@Collect all of the re-exported declarations for a single module.¸We require that modules have already been sorted (P.sortModules) in order to ensure that by the time we convert a particular module, all its dependencies have already been converted.^ purescriptºAssemble a list of declarations re-exported from a particular module, based on the Imports and Exports value for that module, and by extracting the declarations from the current state.½This function works by searching through the lists of exported declarations in the Exports, and looking them up in the associated Imports value to find the module they were imported from. Additionally:µAttempts to move re-exported type class members under their parent type classes, if possible, or otherwise, "promote" them from ChildDeclarations to proper Declarations.]Filters data declarations to ensure that only re-exported data constructors are listed.dFilters type class declarations to ensure that only re-exported type class members are listed._ purescriptExtract a particular type declaration. For data declarations, constructors are only included in the output if they are listed in the arguments.` purescript{Get the full list of declarations for a particular module out of the state, or raise an internal error if it is not there.a purescript¡Take a TypeClassEnv and handle all of the type class members in it, either adding them to their parent classes, or promoting them to normal Declaration values.*Returns a tuple of (values, type classes).b purescriptGiven a list of exported constructor names, remove any data constructor names in the provided Map of declarations which are not in the list.c purescriptšGiven a list of exported type class member names, remove any data type class member names in the provided Map of declarations which are not in the list.d purescript‚If the provided Declaration is a TypeClassDeclaration, construct an appropriate Constraint for use with the types of its members. _ _oNone"#%,.4567;>@AHPSX_g|" c purescriptiGenerate code in the simplified JavaScript intermediate representation for all declarations in a module./0123456789:;<=  3 7 c c§None"#%,.4567;>@AHPSX_g}P/0123456789:;<=  3 7 cpNone"#%,.4567;>@AHPSX_gæ d purescriptrGenerate a pretty-printed string representing a collection of JavaScript expressions at the same indentation levele purescriptPGenerate an indented, pretty-printed string representing a JavaScript expression d e e dqNone"#%,.4567;>@AHPSX_g‚Ô f g h i j k l m n o p j k l m n o p h i f grNone"#%,.4567;>@AHPSX_g„ ÿº'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜š™›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqtsruvwxyz{|Þßàá126345789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\bcdefghopq®¯°±²³´¶µ·¸¹º»¼½¾¿ÀÁÂÃÄ f g h i j k l m n o p q r s t u v w x u s t r v w x qbcdefghopqsNone"#%,.4567;>@AHPSX_g’Þ y purescript´Convert a single module to a Docs.Module, making use of a pre-existing type-checking environment in order to fill in any missing types. Note that re-exports will not be included.f purescripttUpdates all the types of the ValueDeclarations inside the module based on their types inside the given Environment.g purescriptcPartially desugar modules so that they are suitable for extracting documentation information from. y ytNone"#%,.4567;>@AHPSX_g•¦ z purescriptlUnfortunately ByteString's readFile does not convert line endings on Windows, so we have to do it ourselves z { | } ~  z { | } ~ uNone"#%,.4567;>@AHMPSVX_g®Û € purescript A monad for running make actions ƒ purescript Execute a  €P monad, returning either errors, or the result of the compile plus any warnings. „ purescriptRun an h action in the  € monad. The i argument should describe what we were trying to do; it is used for rendering errors in the case that an IOException is thrown. … purescript&Get a file's modification time in the  €( monad, capturing any errors using the j instance. † purescript&Get a file's modification time in the  €6 monad, returning Nothing if the file does not exist. ‡ purescript!Read a text file strictly in the  €( monad, capturing any errors using the j instance. ˆ purescriptRead a JSON file in the  € monad, returning ¸S if the file does not exist or could not be parsed. Errors are captured using the j instance. Š purescript Read a Cbor encoded file in the  € monad, returning ¸S if the file does not exist or could not be parsed. Errors are captured using the j instance. Œ purescript Read an externs file, returning ¸l if the file does not exist, could not be parsed, or was generated by a different version of the compiler.k purescript If the provided action threw an isDoesNotExist[ error, catch it and return Nothing. Otherwise return Just the result of the inner action. Ž purescriptWrite a text file in the  €( monad, capturing any errors using the j instance.  purescriptWrite a JSON file in the  €( monad, capturing any errors using the j instance. ’ purescriptCopy a file in the  €( monad, capturing any errors using the j instance. € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’vNone"#%,.4567;>@AHPSX_gÒZ œ purescriptAActions that require implementations when running in "make" mode.-This type exists to make two things abstract:;The particular backend being used (JavaScript, C++11, etc.).The details of how files are read/written etc. ž purescript»Get the timestamps and content hashes for the input files for a module. The content hash is returned as a monadic action so that the file does not have to be read if it's not necessary. Ÿ purescripttGet the timestamp for the output files for a module. This should be the timestamp for the oldest modified file, or ¸2 if any of the required output files are missing.   purescript]Read the externs file for a module as a string and also return the actual path for the file. ¡ purescriptJRun the code generator for the module and write any required output files. ¢ purescript/Check ffi and print it in the output directory. £ purescriptRespond to a progress update. ¤ purescriptRead the cache database (which contains timestamps and hashes for input files) from some external source, e.g. a file on disk. ¥ purescriptNWrite the given cache database to some external source (e.g. a file on disk). ¦ purescriptAIf generating docs, output the documentation for the Prim modules § purescript'Progress messages from the make process ¨ purescript,Compilation started for the specified module © purescript#Determines when to rebuild a module ª purescriptNever rebuild this module « purescriptAlways rebuild this modulel purescriptRender a progress message ¬ purescriptIGiven the output directory, determines the location for the CacheDb file ¯ purescriptKA set of make actions that read and write modules from the given directory. ° purescriptoCheck that the declarations in a given PureScript module match with those in its corresponding foreign module. ­ purescript The path to the output directory ® purescript The path to the output directory purescriptThe CacheDb to be written ¯ purescriptthe output directory purescriptQa map between module names and paths to the file containing the PureScript module purescriptWa map between module name and the file containing the foreign javascript for the module purescriptGenerate a prefix comment? œ £ ž Ÿ   ¡ ¢ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° œ £ ž Ÿ   ¡ ¢ ¤ ¥ ¦ © ª « § ¨ ¯ ° ¬ ­ ®wNone"#%,.4567;>@AHPSX_gìÆ m purescript‚Information obtained about a particular module while constructing a build plan; used to decide whether a module needs rebuilding.n purescriptÿNew cache info for this module which should be stored for subsequent incremental builds. A value of Nothing indicates that cache info for this module should not be stored in the build cache, because it is being rebuilt according to a RebuildPolicy instead.o purescript7Prebuilt externs and timestamp for this module, if any. ¸ purescript$Succeeded, with warnings and externs ¹ purescriptFailed, with errors º purescript?The build job was not run, because an upstream build job failedp purescriptFNote: an empty MVar indicates that the build job has not yet finished. » purescriptrThe BuildPlan tracks information about our build progress, and holds all prebuilt modules for incremental builds. ¿ purescriptCalled when we finished compiling a module and want to report back the compilation result, as well as any potential errors that were thrown. À purescriptGWhether or not the module with the given ModuleName needs to be rebuilt Á purescriptžCollects results for all prebuilt as well as rebuilt modules. This will block until all build jobs are finished. Prebuilt modules always return no warnings.  purescript‘Gets the the build result for a given module name independent of whether it was rebuilt or prebuilt. Prebuilt modules always return no warnings. à purescript2Constructs a BuildPlan for the given module graph.vThe given MakeActions are used to collect various timestamps in order to determine whether a module needs rebuilding. · ¸ ¹ º » ¼ ½ ¾ ¿ À Á  à » ¼ · ¸ ¹ º ½ ¾ à  Á ¿ ÀxNone"#%,.4567;>@AHPSX_gõÌ Ä purescriptRebuild a single module.QThis function is used for fast-rebuild workflows (PSCi and psc-ide are examples). Å purescript?Compiles in "make" mode, compiling each module separately to a .js file and an  externs.cbor file.¡If timestamps or hashes have not changed, existing externs files can be used to provide upstream modules' types without having to typecheck those modules again. Æ purescriptZInfer the module name for a module by looking for the same filename with a .js extension.+ € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ œ £ ž Ÿ   ¡ ¢ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° Ä Å Æ Ä Å ÆyNone"#%,.4567;>@AHPSX_gù´ Ç purescriptˆGiven a set of filepaths, try to build the dependency graph and return that as its JSON representation (or a bunch of errors, if any) Ç ÇNone"#%,.4567;>@AHPSX_gúšÿö&'(125436789:;<=>?@ABCDEFGXYZ[\_]^`abyz{|}‚~€ƒ„…†‡ˆ‰Š‹ŒŽ‘˜’“”•–—™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´ýÿþ     >?AB@CDEFGHISÆÇÈÉÊËÌ !",$'&)(#%*+-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghiª«¬­®¯°±²³¶´µ·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ./0126345789:defghijklmnopqrstuvwxyƒ†„‚…}~€‡‰z{|ˆŠ‹ŒŽ‘’“”•—–˜š™›œžŸ ¡­¥¦¢£¤§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞáßàâãäåæçèéêëìíîïðñòóôõ!ö÷øùúûüýþÿ      "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”×ÚÛÜÝÞßàáâãäåæçèéêîïð             ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ            2 3 4 5 9 G H I J K L P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d h e f g i j k l m n u ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ° ^ € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ œ £ ž Ÿ   ¡ ¢ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° Ä Å Æ Ç Èÿö&'(125436789:;<=>?@ABCDEFGXYZ[\_]^`abyz{|}‚~€ƒ„…†‡ˆ‰Š‹ŒŽ‘˜’“”•–—™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´ýÿþ     >?AB@CDEFGHISÆÇÈÉÊËÌ !",$'&)(#%*+-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghiª«¬­®¯°±²³¶´µ·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ./0126345789:defghijklmnopqrstuvwxyƒ†„‚…}~€‡‰z{|ˆŠ‹ŒŽ‘’“”•—–˜š™›œžŸ ¡­¥¦¢£¤§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞáßàâãäåæçèéêëìíîïðñòóôõ!ö÷øùúûüýþÿ      "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”×ÚÛÜÝÞßàáâãäåæçèéêîïð             ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ            2 3 4 5 9 G H I J K L P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d h e f g i j k l m n u ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ° ^ € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ œ £ ž Ÿ   ¡ ¢ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° Ä Å Æ Ç ÈzNone"#%,.4567;>@AHPSX_gŽ Ï purescript6An error that probably indicates a bug in this module. Õ purescript*An error that should be fixed by the user. ç purescriptRAn error which meant that it was not possible to retrieve metadata for a package.' É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è ê é ë ì í î ï' ç è ê é â ã ä å æ Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á Ï Ð É Ê Ë Ñ Ò Ó Ô Ì Í Î ë ì í ï î{None"#%,.4567;>@AHPSX_g?\  purescriptValid Meta-commands for PSCI  purescriptA purescript expression  purescript&Show the help (ie, list of directives)  purescript"Import a module from a loaded file  purescriptBrowse a module  purescript Exit PSCI  purescript+Reload all the imported modules of the REPL  purescriptClear the state of the REPL  purescript7Add some declarations to the current evaluation context  purescriptFind the type of an expression  purescriptFind the kind of an expression  purescript5Shows information about the current state of the REPL  purescriptPaste multiple lines  purescript-Return auto-completion output as if pressing tab  purescript%Set the interactive printing function  purescriptOAll of the data that is contained by an ImportDeclaration in the AST. That is:=A module name, the name of the module which is being importedpAn ImportDeclarationType which specifies whether there is an explicit import list, a hiding list, or neither.gIf the module is imported qualified, its qualified name in the importing module. Otherwise, Nothing.  purescriptThe PSCI state.‡Holds a list of imported modules, loaded files, and partial let bindings, plus the currently configured interactive printing function.rThe let bindings are partial, because it makes more sense to apply the binding to the final evaluated expression.¬The last two fields are derived from the first three via updateImportExports each time a module is imported, a let binding is added, or the session is cleared or reloaded  purescriptThe PSCI configuration.:These configuration values do not change during execution. ' purescript'The default interactive print function. * purescript1Updates the imported modules in the state record. + purescript5Updates the loaded externs files in the state record. , purescript-Updates the let bindings in the state record. - purescriptOReplaces the interactive printing function in the state record with a new one. . purescriptA list of all ReplQuery values.6 ü      þ ý ÿ                      ! " # $ % & ' ( ) * + , - . / 0 16    (   % $ " # ! & ' ) * + , -               . / 0 1 ü      þ ý ÿ  |None"#%,.4567;>@AHPSX_gJ~ 9 purescript!List of all available directives. : purescriptRA mapping of directives to the different strings that can be used to invoke them. ; purescript0Like directiveStrings, but the other way around. < purescriptList of all directive strings. = purescript;Returns all possible string representations of a directive. > purescript9Returns the default string representation of a directive. ? purescript~Returns the list of directives which could be expanded from the string argument, together with the string alias that matched. C purescriptThe help menu. 9 : ; < = > ? @ A B C 9 : ; < = > ? @ A B C}None"#%,.4567;>@AHPSX_gMŒ D purescript The guide URL E purescriptThe help message. F purescriptThe welcome prologue. I purescriptThe quit message. D E F G H I D E F G H I~None"#%,.4567;>@AHPSX_gOT K purescript"Pretty print a module's signatures J K J KNone"#%,.4567;>@AHPSX_gV° L purescript5Parses a limited set of commands from from .purs-repl M purescript<Parses PSCI metacommands or expressions input from the user.q purescript,Parses expressions entered at the PSCI repl.r purescripteImports must be handled separately from other declarations, so that :show import works, for example.s purescript[Any declaration that we don't need a 'special case' parser for (like import declarations). L M L M€None"#%,.4567;>@AHPSX_g^X N purescript#The name of the PSCI support module O purescript'Checks if the Console module is defined P purescript"Loads a file for use with imports. Q purescriptLoad all modules. R purescript:Makes a volatile module to execute the current expression. S purescriptiMakes a volatile module to hold a non-qualified type synonym for a fully-qualified data type declaration. T purescript7Makes a volatile module to execute the current imports. N O P Q R S T U V W X N O P Q R S T U V W XNone"#%,.4567;>@AHPSX_gg [ purescript-Loads module, function, and file completions.t purescriptCallback for Haskeline's uZ. Expects: * Line contents to the left of the word, reversed * Word to be completed ] purescriptIConvert Haskeline completion result to results as they would be displayedv purescriptÇDecide what kind of completion we need based on input. This function expects a list of complete words (to the left of the cursor) as the first argument, and the current word as the second argument. Y Z [ \ ] Y Z [ \ ]‚None"#%,.4567;>@AHPSX_g}2w purescriptPretty-print errors _ purescript&This is different than the runMake in ¨D in that it specifies the options and ignores the warning messages.x purescriptARebuild a module, using the cached externs data for dependencies. ` purescriptNBuild the collection of modules from scratch. This is usually done on startup. a purescriptPerforms a PSCi commandy purescriptReload the application statez purescriptClear the application state{ purescriptATakes a value expression and evaluates it with the current state.| purescript‡Takes a list of declarations and updates the environment, then run a make. If the declaration fails, restore the original environment.} purescript#Show actual loaded modules in psci.~ purescript"Show the imported modules in psci. purescript:Imports a module, preserving the initial state on failure.€ purescript!Takes a value and prints its type purescript Takes a type and prints its kind‚ purescript*Browse a module and displays its signatureƒ purescriptPReturn output as would be returned by tab completion, for tools integration etc.„ purescript½Attempt to set the interactive print function. Note that the state will only be updated if the interactive print function exists and appears to work; we test it by attempting to evaluate '0'. a purescript evaluate JS purescriptreload purescriptprint into consoleUwx ü      þ ý ÿ                      ! " # $ % & ' ( ) * + , - . / 0 1 D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] _ ` a a ` _ƒNone"#%,.4567;>@AHPSX_gp b c d e f g h i k j l m n o p q r s t u v l m n h i k j e f g b c d o p q r s t u v„None"#%,.4567;>@AHPSX_g  € ‚ ƒ „ Œ ˆ … ‹ ‡ ‰ † Š Ž ‘ ’ – • ” “ ¦ § ‘ ’ – • ” “ Ž ƒ „ Œ ˆ … ‹ ‡ ‰ † Š  € ‚ ¦ §…None"#%,.45679;>@AHPSX_g”yM purescriptA name tagged with a namespaceO purescriptDDenotes the different namespaces a name in PureScript can reside in.\ purescript+A completion as it gets sent to the editorsg purescriptIdeVolatileState is derived from the  IdeFileState@ and needs to be invalidated and refreshed carefully. It holds AstData¨, which is the data we extract from the parsed ASTs, as well as the IdeDeclarations, which contain lots of denormalized data, so they need to fully rebuilt whenever  IdeFileState– changes. The vsCachedRebuild field can hold a rebuild result with open imports which is used to provide completions for module private declarationsl purescript IdeFileStateÿV holds data that corresponds 1-to-1 to an entity on the filesystem. Externs correspond to the ExternsFiles the compiler emits into the output folder, and modules are parsed ASTs from source files. This means, that we can update single modules or ExternsFiles inside this state whenever the corresponding entity changes on the file system.† purescriptgSourceSpans for the definition sites of values and types as well as type annotations found in a module± ª « ° ¯ ® ­ ¬ ± ² · ¶ µ ´ ³ ¸ ¹ ½ ¼ » º ¾ ¿  Á À Ã Ä Ç Æ Å È É Ì Ë Ê Í Î Ñ Ð Ï Ò Ó Õ Ô Ö ß Þ Ý Ü Û Ú Ù Ø × à á â ã ä å æ ç è é ê ë !"#$%&'()*+,-./0154326798:;<=>IJKLMNOSRQPT[ZYXWVU\]dcba`_^efghkjilmonpqsrtuvyxwz{~}|ƒ‚€„…†‡ˆ‰Š‹ŒŽ‘± á à Ö ß Þ Ý Ü Û Ú Ù Ø × Ò Ó Õ Ô Í Î Ñ Ð Ï È É Ì Ë Ê Ã Ä Ç Æ Å ¾ ¿  Á À ¸ ¹ ½ ¼ » º ± ² · ¶ µ ´ ³ ª « ° ¯ ® ­ ¬ â ã ä å æ ç è é ê ë #"!&%$*)('/.-,+>=<;:6798015432LKJIЉ‹ˆ‡…†ƒ‚€„z{~}|uvyxwtpqsrŒŽlmonghkjief\]dcba`_^T[ZYXWVU‘OSRQPMN†None"#%,.4567;>@AHPSX_gšß²²‡None"#%,.4567;>@AHPSWX_g›Í³´µ¶³µ¶´ˆNone"#%,.4567;>@AHMPSX_gœÓ ·¿À¹¸º»¼½¾Á ·¿À¹¸º»¼½¾Á‰None"#%,.4567;>@AHPSX_gž ÆËÉÇÈÊÌÍÆËÉÇÈÊÌÍŠNone"#%,.4567;>@AHPSX_gŸ'³´µ¶ÐÑÒÓÔÕÖרÙÚÛÜ ÐÔÑרÒÓÕÖÙÚÛÜ‹None"#%,.4567;>@AHPSX_g¨ÿÝ purescriptBContains the module with resolved reexports, and possible failuresá purescriptTUses the passed formatter to format the resolved module, and adds possible failuresâ purescript%Whether any Refs couldn't be resolvedã purescriptqResolves Reexports for the given Modules, by looking up the reexported values from the passed in DeclarationRefsá purescript!Formatter for the resolved result purescriptThe Result to be pretty printedã purescriptthe references to resolve purescript1Modules to search for the reexported declarationsÝÞßàáâãäãáâÝÞßàäŒNone"#%,.4567;=>?@AHMPSX_g®/ë purescript>Matches any occurrence of the search string with intersections³The scoring measures how far the matches span the string where closer is better. Examples: flMa matches flexMatcher. Score: 14.28 sons matches sortCompletions. Score: 6.25êëìêìëNone"#%,.4567;>@AHMPSX_g´'ñ purescript,Only keeps Declarations in the given modulesò purescript.Only keeps Identifiers in the given Namespacesó purescript:Only keeps Identifiers that are equal to the search stringô purescript7Only keeps Identifiers that start with the given prefixõ purescript5Only keeps Identifiers in the given type declarationsðñòóôõöðñòóôõöŽNone"#%,.4567;>@AHPSX_gºèü purescript-Extracts AST information from a parsed moduleý purescript;Extracts type annotations for functions from a given Moduleþ purescriptuGiven a surrounding Sourcespan and a Declaration from the PS AST, extracts definition sites inside that Declaration.þ purescript%The declaration to extract spans from purescript'Declarations and their source locationsúûüýþúûüþýNone"#%,.4567;>@AHPSWX_g»öÿÿNone"#$%,.4567;>@AHPSWX_gkÑX purescriptResets all State inside psc-ide purescriptGets the loaded Modulenames purescriptGets all loaded ExternFiles purescript(Insert a Module into Stage1 of the State… purescriptSTM version of insertModule purescript\Retrieves the FileState from the State. This includes loaded Externfiles and parsed Modules† purescriptSTM version of getFileState‡ purescripthRetrieves VolatileState from the State. This includes the denormalized Declarations and cached rebuildsˆ purescriptSTM version of getVolatileState‰ purescript)Sets the VolatileState inside Ide's state purescript˜Checks if the given ModuleName matches the last rebuild cache and if it does returns all loaded definitions + the definitions inside the rebuild cache  purescript²Adds an ExternsFile into psc-ide's FileState. This does not populate the VolatileState, which needs to be done after all the necessary Externs and SourceFiles have been loaded.  purescriptSTM version of insertExterns  purescript+Sets rebuild cache to the given ExternsFile  purescriptRetrieves the rebuild cache  purescriptOResolves reexports and populates VolatileState with data to be used in queries. purescript$STM version of populateVolatileState purescriptRLooks up the types and kinds for operators and assigns them to their declarations          ‘None"#%,.4567;>@AHPSX_gãçŠ purescript™A declaration can either be imported qualified, or unqualified. All the information we need to find usages through a Traversal is thus captured in the Š type. purescriptMHow we find usages, given an IdeDeclaration and the module it was defined in: 4Find all modules that reexport the given declarationœFind all modules that import from those modules, and while traversing the imports build a specification for how the identifier can be found in the module.AApply the collected search specifications and collect the results‹ purescriptGDetermines whether an IdeDeclaration is referenced by a DeclarationRef.TODO(Christoph): We should also extract the spans of matching refs here, since they also count as a usage (at least for rename refactorings) purescriptFinds all usages for a given Š throughout a module purescriptRThe declaration and the module it is defined in for which we are searching usages purescript7Our declaration cache. Needs to have reexports resolved purescriptYAll the modules that reexport the declaration. This does NOT include the defining module’None"#%*,.4567;>@AHPSWX_gÿ„ purescript.Given a filepath performs the following steps:7Reads and parses a PureScript module from the filepath.VBuilds a dependency graph for the parsed module from the already loaded ExternsFiles.€Attempts to find an FFI definition file for the module by looking for a file with the same filepath except for a .js extension.$Passes all the created artifacts to  rebuildModule.&If the rebuilding succeeds, returns a RebuildSuccessB with the generated warnings, and if rebuilding fails, returns a  RebuildError with the generated errors.Œ purescriptÿKWhen adjusting the cache db file after a rebuild we always pick a non-sensical timestamp ("1858-11-17T00:00:00Z"), and rely on the content hash to tell whether the module needs rebuilding. This is because IDE rebuilds may be triggered on temporary files to not force editors to save the actual source file to get at diagnostics purescriptdRebuilds a module but opens up its export list first and stores the result inside the rebuild cacheŽ purescript-Shuts the compiler up about progress messages purescriptStops any kind of codegen purescriptReturns a topologically sorted list of dependent ExternsFiles for the given module. Throws an error if there is a cyclic dependency within the ExternsFiles‘ purescriptRemoves a modules export list. purescriptThe file to rebuild purescript6The file to use as the location for parsing and errors purescriptThe targets to codegen purescript/A runner for the second build with open exports’ purescriptThe output directory purescript&The file to read the content hash from purescript$The file name to update in the cache purescript&The module name to update in the cache“None"#%,.4567;>@AHPSX_gÀ purescript…Applies the CompletionFilters and the Matcher to the given Modules and sorts the found Completions according to the Matching Score  !"#$%  !$%"#”None"#%,.4567;>@AHPSX_g#¿ “ purescript ImportParseD holds the data we extract out of a partial parse of the sourcefile” purescriptthe module name we parse• purescriptdthe beginning of the import section. If `import Prelude` was the first import, this would point at i– purescriptthe end of the import section— purescript!the extracted import declarations, purescript Reads a file and returns the parsed module name as well as the parsed imports, while ignoring eventual parse errors that aren't relevant to the import section˜ purescriptbReads a file and returns the (lines before the imports, the imports, the lines after the imports). purescriptAdds an implicit import like import Prelude to a Sourcefile.0 purescriptAdds a qualified import like import Data.Map as Map to a source file.™ purescriptAdds an explicit import like import Prelude (unit){ to a Sourcefile. If an explicit import already exists for the given module, it adds the identifier to that imports list.So &addExplicitImport "/File.purs" "bind" Prelude with an already existing import Prelude (bind) in the file File.purs returns  ["import Prelude (bind, unit)"]3 purescript>Looks up the given identifier in the currently loaded modules.2Throws an error if the identifier cannot be found.KIf exactly one match is found, adds an explicit import to the importsectionaIf more than one possible imports are found, reports the possibilities as a list of completions.6 purescriptWrites a list of lines to  Just filepath and responds with a  TextResult, or returns the lines as a MultilineTextResult if Nothing" was given as the first argument.7 purescriptTest and ghci helper. purescriptThe source file read from purescriptThe module to import0 purescriptThe sourcefile read from purescriptThe module to import purescript#The qualifier under which to import3 purescriptThe Sourcefile to read from purescriptThe identifier to import purescript,The optional qualifier under which to import purescript4Filters to apply before searching for the identifier*+,-./01234567.036,75/12-4*+•None"#%,.4567;>@AHPSX_g(®> purescript/Constructs Patterns to insert into a sourcefile> purescript Current line purescriptBegin of the split purescriptEnd of the split purescript%Whether to explicitly type the splits purescriptConstructors to split:;<=>?:;<>?=–None"#%,.4567;>@AHPSX_g)¼*@CABDGFEHTSONJIRPMVLUQKhgfedcba`_^]\[ZYXWi*HTSONJIRPMVLUQKhgfedcba`_^]\[ZYXWiDGFE@CAB—None"#%,.4567;>@AHPSWX_g4žo purescripteAccepts a Commmand and runs it against psc-ide's State. This is the main entry point for the server.š purescriptZFinds all the externs inside the output folder and returns the corresponding module names› purescript<Finds all matches for the globs specified at the commandlineœ purescriptþLooks up the ExternsFiles for the given Modulenames and loads them into the server state. Then proceeds to parse all the specified sourcefiles and inserts their ASTs into the state. Finally kicks off an async worker, which populates the VolatileState.oo˜None"#%,.4567;>@AHPSX_g5„pqrstptqrs™None"#%,.4567;>@AHPSX_g96† purescriptAAn HtmlRenderContext for when you don't want to render any links.Š purescriptQRender Markdown to HTML. Safe for untrusted input. Relative links are | removed.xyz{|}~€‚ƒ„…†‡ˆ‰Š‚ƒ„}~€xyz{|†…‡ˆ‰ŠšNone"#%,.4567;>@AHPSX_gP purescriptÿGiven a compiler output directory, a list of input PureScript source files, and a list of dependency PureScript source files, produce documentation for the input files in the intermediate documentation format. Note that dependency files are not included in the result.ËIf the output directory is not up to date with respect to the provided input and dependency files, the files will be built as if with just the "docs" codegen target, i.e. "purs compile --codegen docs". purescriptCompile with just the docsB codegen target, writing results into the given output directory.ž purescriptrPerform an operation on a list of things which are tagged, and reassociate the things with their tags afterwards.Ÿ purescriptGiven:A list of local source filesZA list of source files from external dependencies, together with their package names!This function does the following:hPartially parse all of the input and dependency source files to get the module name of each modulemAssociate each dependency module with its package name, thereby distinguishing these from local modulesÿReturn the file paths paired with the names of the modules they contain, and a Map of module names to package names for modules which come from dependencies. If a module does not exist in the map, it can safely be assumed to be local.©None"#%,.4567;>@AHPSX_gPöârstu ± ² ³ ´ · ¶ µ ¸ ¹ º » ¼ ¾ ½ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß û ü ý þ ÿ b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ ” “ — • – ˜ ™ œ š › ž Ÿ   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ­ ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø M N O P Q R S T U V W X Y Z [ \ y›None"#%,.4567;>@AHMPSX_g|c  purescript6In the resolutions file, there was no _resolution key.¡ purescriptÿÿResolved, but to something other than a version. The Text argument is the resolution type. The values it can take that I'm aware of are "commit" and "branch". Note: this constructor is deprecated, and is only used when parsing legacy resolutions files.¢ purescriptResolved to a version.“ purescriptWHow to obtain the version tag and version that the data being generated will refer to.• purescript)What to do when the working tree is dirty– purescriptuCompiler output directory (which must include up-to-date docs.json files for any modules we are producing docs for).— purescriptPath to the manifest file; a JSON file including information about the package, such as name, author, dependency version bounds.˜ purescript…Path to the resolutions file; a JSON file containing all of the package's dependencies, their versions, and their paths on the disk.š purescript~Attempt to retrieve package metadata from the current directory. Calls exitFailure if no package metadata could be retrieved.› purescriptcAttempt to retrieve package metadata from the current directory. Returns a PackageError on failure£ purescript-Given a git tag, get the time it was created.¤ purescript5Check if a string is a valid SPDX license expression.¥ purescriptŸParser for resolutions files, which contain information about the packages which this package depends on. A resolutions file should look something like this:å{ "purescript-prelude": { "version": "4.0.0", "path": "bower_components/purescript-prelude" }, "purescript-lists": { "version": "6.0.0", "path": "bower_components/purescript-lists" }, ... }¾where the version is used for generating links between packages on Pursuit, and the path is used to obtain the source files while generating documentation: all files matching the glob "src***.purs" relative to the path directory will be picked up.­The "version" field is optional, but omitting it will mean that no links will be generated for any declarations from that package on Pursuit. The "path" field is required.¦ purescriptŒExtracts all dependencies and their versions from a legacy resolutions file, which is based on the output of `bower list --json --offline`.§ purescript‘dependencies declared in package manifest file; we should emit warnings for any package name in this list which is not in the resolutions file. purescriptContents of resolutions file‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦›¡šœžŸ ‘’“”•–—˜™£¤¥¦¢¨ª«¬­®¯­®°±±²³´µ¶·¸¹º»¼¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÝÞßàááâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ                               ! " " # # $ % & ' ( ) * * + , - . / 0 0 1 2 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  €  ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ŒŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåææçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÕÖרÙÚÛÜÝÞÞßàáâãäååæçèèéêëìííîïðñòòóôõö÷øùùúûüýþþÿ      !"#$%&&'())*+,-./.001234456789:;;<=>?@ABCDEEFGHIJKKLMNOOPQRSTUVWXYZZ[\]^_`abccdefghijklmnopqrstuvwxyz{||}~€‚ƒ„¢¢…†‡‡ˆ‰Š‹ŒŽ‘’“”•–—.˜™š› (œžŸ ¡¢£¤¤¥¦§¨¨©ª««¬­®¯°±±²³´55µ¶22·¸¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßààáâãäåæÒÒçèééêëááìíö÷øùîïðñרÙÚòóôõö÷øùúûüýþÿhijk{yz |      !"#$%&'()*+,¾·¶ÀÁ¿-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´³µµ¶·¸¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ                   !!!!!!!!!!!"Ç"""" "!"""›"ž#####$#%#&#'#(#)###*#+#,#-#.#/#0#1#2#3#4#5#¾#Á#6#7$8$9%|%|%:%;%<%=%>%?%@%A%'BCDEFGHIJKL&M&N'O'P'Q'R'S'T'U(V(V(W(X(Y(‡(‡(Z([(\(](^(_(Œ(`((a((Ž(—(–(b(c(d(e(f(g(h(i(j(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((€((‚(ƒ(„(…(†(‡(ˆ(‰(Š(‹(Œ((Ž(((‘(’(“(”(•(–(—(/(˜(™(š(›(œ((ž(Ÿ( (¡(¢(£(¤(¥(D(C(=(<(¦(§(¨(©(ª(«(¬(­(®(¯(°(±(²(³(´(µ(¶(·(¸(¹(º(»(B(H(E(F(G(;(A(>(?(@(¼(½(¾(¿(À)Á)Â)Â)Ã)Ä)Å)Æ)Ç)È)É)Ê)Ë)Ì)Í)Î)Ï)Ð*Ñ*Ò*Ó*Ô*Õ*Ö*×*Ø*Ù*Ú*Û*Ü*Ý*Þ*ß*à*á*á*â*ã*ä*ä*å*æ*ç*è*é*ê*ë*ì*ì*í*î*ï*ð*ñ*ò*ó*ô*õ*ö*÷*ø*ù*ú*û*ü*ý*þ*ÿ**¢*£*¤********* * * * * ******************* *!*"*#*$*%*&*'*(*)***+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*B*C*D*E*F*G*H*I*J+K+L+M,N-Ç---- -O-P-Q-!-R-S-T-U--œ-›.|.V.V.W.X.".Y.Z.[.\.].^._.`.<.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.'/w/w/x/y/z/{/|/|/}/~//€//#/#/$/%/‚/ƒ/„///…/†/‡/+/,/ˆ/-/./‰///Š/ò/*/0/‹/1/Œ//Ž///‘/’/“/”/)/)/&/•/&/–/—/˜/™/š/›/›/œ/œ/f//ž/Ÿ/ /¡/¢/£/¤/¥/¦/§/¨/©/ª/«/«/L/M/N/¬/¬/­/®/¯/°/±/²/²/³/´/µ/¶/·/¸/¹/º/º/»/¼/½/¾/¿/À/Á/Â/Ã/Ä/Å/Æ/|/|/Y/Y/Ç/È/É/Ê/Ë/Ì/Í/Î/Ï/Ð/^/Ñ/Ò/Ó/Ô/Õ/Ö/×/Ø/Ù/Ú/Û/Ü/Ý/Þ/ß/à/á/â/ã/ä/å/æ/ç/è/é/ê/ë/ì/í/î/ï/ð/ñ/ò/ó/ô/õ/ö/÷/ø/ù/ú/û/ü/ý/þ/ÿ////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~//€//‚/ƒ/„/…/†/‡/ˆ/‰/Š/‹/Œ//Ž///‘/’/“/”/•/–/—/˜/™/š/›/œ//ž/Ÿ/ /¡/¢/£/¤/¥/¦/§/¨/©/ª/«/¬/­/®/¯/°/±/²/³/´/µ/¶/¾/·/ //¸/¹/5/º/'/»/o/¼/½/¾/¿/À/Á/Â0Ã0Ä0Å0Æ0Ç0È080É0Ê090Ë0Ì0Í0Î0Ï0Ð0Ñ0Ò0Ó0Ô1Õ1Ö2×3Ø3Ø3Ù3Ú3Ú3Û3Û3Ü3Ü3Ý3Þ3ß3à3á3â3ã3ä3å3æ3ç3è3é3ê3ë3ì3í3î3ï3ð3ñ3ò3ó3ô3õ3ö4÷5ø5ù5ú5û5ü5ý5þ5ÿ5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 7 7 7 7 7 7 7 7 7 !7 "7 #7 $7 %7 &7 '7 (7 )7 *7 +7 ,7 -7 .7 /7 07 17 27 37 47 57 67 77 87 97 :7 ;7 ;7 <7 =7 >7 ?7 @7 @7 A7 B7 C7 D7 E7 E7 F7 G7 H7 I7 I7 J7 K7 L7 M7 N7 O7 P7 Q7 R7 S7 T7 U7 V7 W7 X7 Y7 Z7 [7 \7 ]7 ^7 _7 `7 a7 b7 c7 d8 e8 e8 f8 g8 h8 i8 j8 k8 l8 m8 n8 n8 o8 p8 q8 r8 r8 s8 t8 t8 u8 v8 w8 x8 y8 z8 {8 |8 }8 ~8 8 €8 8 ‚8 ƒ8 „8 …8 †8 ‡8 ˆ8 ‰8 Š8 ‹8 Œ8 8 Ž8 8 8 ‘8 ’8 “8 ”8 •8 –8 —8 ˜8 ™8 š8 ›8 œ8Ù8 8 ž8 Ÿ8  8 ¡8 ¢8 £8 ¤8 ¥8 ¦8 §8 ¨8 ©8 ª8 «8 ¬8 ­8 ®8 ¯8 °8 ±9 ²9 ³9 ³9 ´9 µ9 ¶9 ·9 ¸9 ¹9 º9 »9 ¼9 ¼9 ½9 ¾9 ¿9 À9 Á9 Â9 Ã9 Ä9 Å9 Æ9 Ç9 È9 É9 Ê9 Ë9 Ì9 Í9 Î9 Ï9 Ð9 Ñ9 Ò9 Ó9 Ô9 Õ9 Ö9 ×9 Ø9 Ù9 Ú9 Û9 Ü9 Ý9 Þ9 ß9 à: á: â: ã; ä; å; æ; ç; è; é< ê< ë< ì< í< î< ï< ð< ñ< ò< ó= ô> õ> ö> ÷> ø? ù? ù? ú? û? ü? ý? þ? ÿ? ? ? ? ? ? ? ? @ A A A A A A A B C C C C CËC C C C C D E F G G G G H !H "I #I $I %I &I 'I 'I (I )I *I +I ,I -I .I .I /I 0I 1I 2I 3I 4I 5I 6I 7I 8I 9I :I ;I-I <I <I =I >I ?I @I AI BI CI DI EI FI GI HI II JI KI LI MI NI OI PI QI RI SI TI UI VI WI XI YJ ZJ [J \J ]K ^L _L `M aN bN cN dO eO fO gP hP iP jP kQ lR mR mR nR oR pR qR rR sS tS uTT vT wU xV yW zW {X |X }X ~X Y €Z Z ‚Z ƒZ „Z …ZçZ †Z)Z ‡Z ˆZ ‰Z ŠZ ‹Z ŠZ ŒZ Z ŽZ Z Z ‘Z ’Z “Z ”Z •Z –Z —ZàZ ˜Z ™Z šZ ›Z œZ Z žZ ŸZ  Z ¡Z ¢Z £Z ¤Z ¥Z ¦Z §Z ¨Z ©Z ªZ «Z ¬Z ­Z ®Z ¯Z °Z ±Z ²Z ³Z ´Z µZ ¶Z ·Z ¸Z ¹Z ºZ »Z ¼Z ½Z ¾Z ¿Z ÀZ ÁZ ÂZ ÃZ ÄZ ÅZ Æ[ Ç\ È\ É\ Ê\ Ë\ Ì] Í]]]] Î] Ï]] Ð]] Ñ].]/] Ò] Ó] Ô] Õ] Ö] ×] Ø] Ù] Ú] Û] Ü]Ò] Ý] Þ] ß] à] á] â] ã] ä] å] æ] ç] è] é] ê] ë] ì] í] î] ï] ð] ñ] ò] ó] ô] õ] ö] ÷] ø] ù] ú] û] ü] ý] þ] ÿ] ] ] ^ _ _ _ _ _ _ _ _ _ _ _ ` ` a a a a b b b b b b b b b c c d e !f "g #h $h %i &i 'i (i )i *i *i +i ,i -i .i .i /i 0i 1i 2i 3i 4i 5i ;i 6i 7i 8i 9i :i ;i <i =i >i ?i @i Ai Ai Bi Ci Ci Di Ei Fi Gi Hi Ii Ii Ji Ki Li Mi Ni¡ii¥iŸi©i Oi¦ififi Pi Qiwi Ri Si|i|i Ti Ui Vi Wi Xi Yi Zi [i [i \i \i ]i ^i _i `i ai bi ci di ei fi gi hi ii ji ki li mi ni oi pi qi ri si ti ui vi wi xi yi zi {i |i }i ~i i €i i ‚i ƒi „i …i †i ‡i ˆi ‰i Ši ‹i Œi i Ži i i ‘i ’i “i ”i •i –i —i ˜i ™i ši ›i œi i ži Ÿi  i ¡i ¢i £i ¤i ¥i ¦i §i ¨i ©i ªi «i ¬i ­i ®i ¯i °i ±i ²i ³i ´i µi ¶i ·i ¸i ¹i ºi »i ¼i ½ihi ¾i ¿i Ài Ái Âi Ãi Äi Åi Æi Çi Èi Éi Êi Ëi Ìi Íi Îi Ïi Ði Ñi Òi Ói Ôi i!i"i&i Õi Öi ×i Øi Ùi Úi Ûi Üi Ýi Þi ßi ài ái âi ãi äi'i(i)i-i åi æi çi èi éi êi ëi ìi íi îi ïi ði ñi òi ói ôj õj öj ÷k øk ùk úk ûk ük ýk þk ÿk l l l l m m n n n n o p p q q q q q q q q q q q r r r r r r r r s t t !t "t #t $t %u¨u¨u &u 'u (u )u *u +u ,u -u .u /u 0u 1u 2u 3u 4u 5u 6u 7u 8u 9u :u ;u <u =u >u ?v @v @v Av Bv Cv Dv Ev Fv Gv Hv Iv Jv Kv Lv Mv Nv Ov Pv Qv Rv Sv Tv Uv Vv Wv Xv Yw Zw [w \w ]w ^w _w `w aw bw cw dw ew fx gx hx iy j kz lz mz nz oz pz qz rz sz tz uz vz wz xz yz zz {z |z }z ~z z €z z ‚z ƒz „z …z †z ‡z ˆz ‰z 7z xz rz lz Šz ‹z Œz z Žz z z ‘z ’z “z ”z •z –z Ýz —z ˜z ™{ š{ ›{ œ{ { ž{ Ÿ{Œ{ {  { ¡{ ¢{ £{ ¤{ ¥{ ¦{ §{ ¨{ ©{ ª{S{ «{ ¬{ ­{ ®{ ¯{ °{ ±{ ²{ ³{ ´{ µ{ ¶{ ·{ ¸{ ¸{ ¹{ º{ »{ ¼{ ½{ ¾{ ¿{ À{ Á{ Â{ Ã{ Ä{ Å{ Æ{ Ç{ È{ É{ Ê{ Ë{ Ì{ Í{ Î{ Ï{ Ð{ Ñ{ Ò| Ó| Ô| Õ| Ö| ×| Ø| Ù| Ú| Û| Ü| Ý} Þ} ß} à} á} â} ã~ ä~ å æ ç€ è€ é€ ê€ ë€ ì€ í€ î€ ï€ ð€ ñ€ ò ó ô õ ö ÷ ø‚ '‚ h‚ ùƒ úƒ úƒ ûƒ üƒ üƒ ýƒ þƒ þƒ ÿƒ ƒ ƒ ƒ ƒ ƒMƒòƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ ƒ „ „ „ „ „ „ „ „ „ y„ „ „<„ „ „ t„ t„ „ „ „ „ „ „ „ !„ "„ #„ $„ %„ &„ '„ („ )„ *„ +„ ,„ -„ .„ /„ 0„ 1„ 2„ 3„ 4… 5… 5… 6… 7… 8… 9… :… ;… ;… <… =… >… ?… @… A… A… B… C… D… E… F… F… G… H… I… J… J… K… L… M… N… N… O… P… Q… R… R… S… T… U… V… V… W… X… Y… Z… [… \… ]… ^… _… `… a… b… c… d… e… f… g… h… i… j… k… l… m… n… o… p… q… r… s… t… u… v… w… x… y… z… {… |… }… ~… … €… … ‚… ƒ… „… …… †… ‡… ˆ… ‰… Š… ‹… Œ… … Ž… … … ‘… ’… “… ”… •… –… —… ˜… ™… š… ›… œ… … ž… Ÿ…  … ¡… ¢… £… ¤… ¥… ¦… §… ¨… ©… ª… «… ¬… ­… ®… ¯… °… ±… ²… ³… ³… ´… µ… ¶… ·… ¸… ¸… ¹… º… »… ¼… ½… ¾… ¿… À… Á… Â… Ã… Ä… Å… Æ… Ç… È… É… Ê… Ë… Ì… Í… Î… Î… Ï… Ð… Ñ… Ò… Ó… Ô… Õ… Ö… ×… Ø… Ù… Ú… Û… Ü… Ü… Ý… Þ… ß… à… á… â… ã… ä… ä… å… å… æ… ç… è… é… é… ê… ë… ì… ì… í… î… ï… ð… ð… ñ… ò… ó… ô… ô… õ… ö… ÷… ø… ù… ú… û… ü… ý… þ… þ… ÿ………………………… … … … … ………………………………………………… …!…"…#…$…%…&…'…(…)†*‡²‡+‡,‡-ˆ.ˆ/ˆŒˆ0ˆ1ˆ2ˆ3ˆ4ˆ ˆ|ˆ5ˆ6ˆ7ˆ8ˆ9‰:‰;‰<‰å‰=‰>‰?‰@‰A‰BŠCŠDŠEŠFŠGŠHŠIŠJŠKŠLŠMŠNŠO‹P‹P‹Q‹R‹S‹T‹U‹V‹W‹X‹Y‹Z‹[Œ\Œ]Œ^Œ_Œ`ŒabcdefghijkŽŽ ŽlŽmŽnopqrstuvwxyz{|}~€‚‘ƒ‘„‘…‘†‘‡’ˆ’‰’Š“‹“‹“Œ““Ž“““‘“’“““”“•“–“—“˜”S”S”™”š”›”œ””ž”Ÿ” ”¡”¢”£”¤”X”W•¥•¦•§•¨•©•ª–«–¬– .–­–®–¯–°–±– ¨–²–³–Œ– ¢–´–µ–¶–S–·–¸–¹–º–»– œ– –¼–½–¾–¿–À–Á––ÖÄ–Å–Æ–Ç–È–É–Ê–Ë–Ì–Í–ΖÏ–ЖÑ–Ò— ù˜å˜Ó˜Ô˜Õ˜Ö˜טؘٙڙڙۙܙݙޙޙߙà™á™á™â™ã™ä™å™æ™ç™è™é™ê™ë™ì™íšî›ï›ð›ð›ñ›ò›ó›ô›õ›ö›÷›ø›ù›ú›û›ü››ý›þ›ÿ›››››››››› › › › › ››  ,,œ kœœœœœœ œ!.".w.#.$.%.&.'. r.(.)*y1+1,1-1.1/20516263<4=5=6=7=8=9>:>;><>4>=>>>?>@?A?B?C?D?E?F?G?H?I?J?K?L?M?N@O@PAQARASATAUAVAWAXAYAZA[A@A\A]A^A_A`AaAbAcAdAeAfGgh_IiIjIkIlImInIoIpIqIrIsJtLuMvNwNxPyQzR{R&T|T}T~UU€UU‚UƒU„U…U†‡ˆU‰UŠW‹WŒWXŽXXX‘X’“Z”Z•Z–e—e˜e™eše›eœffžfŸf f¡f¢f£f¤f¥f¦f§f¨f©‡ª‡«l¬m­m®m¯m°m¯m±m²n³n´nµn¶n·n¸n¹nºn»n+n¼n½p¾s¿sÀÁ‡ÂÃÄÅuÆvÇwÈwÉwÊwËÌÍÎÏÐÑÒÓ‚Ô‚Õ‚Ö‚ׂ؂قڂۂ܂݂ނ߂à‚áâãäåæ‘ç‘è’é’ê’ë’ì’í’î’ï”ð”ñ”ò”ó”ô”õ”ö—÷—ø—ùšúšûšü›ý›þ›ÿ›››››(purescript-0.13.8-3suDZOoNqEmGMNoGwLr2r9Language.PureScript(Language.PureScript.Publish.BoxesHelpersControl.Monad.LoggerControl.Monad.SupplyControl.Monad.Supply.ClassLanguage.PureScript.Comments!Language.PureScript.AST.SourcePosLanguage.PureScript.Crash!Language.PureScript.AST.OperatorsLanguage.PureScript.Docs.Css+Language.PureScript.Docs.Utils.MonoidExtras"Language.PureScript.Interactive.IOLanguage.PureScript.NamesLanguage.PureScript.Make.CacheLanguage.PureScript.KindsLanguage.PureScript.CoreFn.Meta%Language.PureScript.CodeGen.JS.CommonLanguage.PureScript.OptionsLanguage.PureScript.PSStringLanguage.PureScript.LabelLanguage.PureScript.ConstantsLanguage.PureScript.CST.Types"Language.PureScript.CST.Traversals'Language.PureScript.CST.Traversals.TypeLanguage.PureScript.CST.Print!Language.PureScript.CST.PositionsLanguage.PureScript.CST.LayoutLanguage.PureScript.CST.ErrorsLanguage.PureScript.CST.MonadLanguage.PureScript.CST.UtilsLanguage.PureScript.CST.LexerLanguage.PureScript.CST.Parser Language.PureScript.AST.Literals"Language.PureScript.CoreFn.BindersLanguage.PureScript.CoreFn.Expr%Language.PureScript.CoreFn.Traversals!Language.PureScript.CoreFn.Module!Language.PureScript.Publish.UtilsLanguage.PureScript.TraversalsLanguage.PureScript.Types)Language.PureScript.TypeClassDictionariesLanguage.PureScript.EnvironmentLanguage.PureScript.CoreFn.Ann$Language.PureScript.CoreFn.OptimizerLanguage.PureScript.AST.BindersLanguage.PureScript.Bundle$Language.PureScript.AST.Declarations"Language.PureScript.AST.Traversals Language.PureScript.AST.Exported$Language.PureScript.Sugar.LetPattern!Language.PureScript.Pretty.Common Language.PureScript.Pretty.Kinds Language.PureScript.Pretty.Types!Language.PureScript.Pretty.ValuesLanguage.PureScript.ExternsLanguage.PureScript.Errors%Language.PureScript.TypeChecker.Monad(Language.PureScript.TypeChecker.Synonyms'Language.PureScript.TypeChecker.Skolems%Language.PureScript.TypeChecker.Unify+Language.PureScript.TypeChecker.Subsumption%Language.PureScript.TypeChecker.Kinds*Language.PureScript.TypeChecker.Entailment*Language.PureScript.TypeChecker.TypeSearch%Language.PureScript.TypeChecker.Types*Language.PureScript.Sugar.TypeDeclarations*Language.PureScript.Sugar.Operators.Common)Language.PureScript.Sugar.Operators.Types(Language.PureScript.Sugar.Operators.Expr+Language.PureScript.Sugar.Operators.Binders#Language.PureScript.Sugar.Operators)Language.PureScript.Sugar.ObjectWildcards#Language.PureScript.Sugar.Names.Env'Language.PureScript.Sugar.Names.Imports&Language.PureScript.Sugar.Names.Common'Language.PureScript.Sugar.Names.Exports$Language.PureScript.Sugar.DoNotation*Language.PureScript.Sugar.CaseDeclarations%Language.PureScript.Sugar.TypeClasses'Language.PureScript.Sugar.BindingGroups%Language.PureScript.Sugar.AdoNotation&Language.PureScript.ModuleDependencies"Language.PureScript.Linter.ImportsLanguage.PureScript.Sugar.Names%Language.PureScript.Linter.ExhaustiveLanguage.PureScript.LinterLanguage.PureScript.TypeChecker.Language.PureScript.Sugar.TypeClasses.DerivingLanguage.PureScript.Sugar+Language.PureScript.Docs.RenderedCode.Types0Language.PureScript.Docs.RenderedCode.RenderKind0Language.PureScript.Docs.RenderedCode.RenderTypeLanguage.PureScript.CoreImp.AST)Language.PureScript.CoreImp.Optimizer.TCO,Language.PureScript.CoreImp.Optimizer.Common,Language.PureScript.CoreImp.Optimizer.Unused-Language.PureScript.CoreImp.Optimizer.MagicDo-Language.PureScript.CoreImp.Optimizer.Inliner,Language.PureScript.CoreImp.Optimizer.Blocks%Language.PureScript.CoreImp.Optimizer"Language.PureScript.CoreFn.DesugarLanguage.PureScript.Renamer!Language.PureScript.CoreFn.ToJSON#Language.PureScript.CoreFn.FromJSONLanguage.PureScript.Docs.TypesLanguage.PureScript.Docs.TagsLanguage.PureScript.Docs.RenderLanguage.PureScript.Docs.Prim'Language.PureScript.Docs.Convert.Single*Language.PureScript.Docs.Convert.ReExportsLanguage.PureScript.CodeGen.JS&Language.PureScript.CodeGen.JS.PrinterLanguage.PureScript.CST.ConvertLanguage.PureScript.CST Language.PureScript.Docs.ConvertSystem.IO.UTF8Language.PureScript.Make.Monad Language.PureScript.Make.Actions"Language.PureScript.Make.BuildPlanLanguage.PureScript.MakeLanguage.PureScript.Graph*Language.PureScript.Publish.ErrorsWarnings%Language.PureScript.Interactive.Types)Language.PureScript.Interactive.Directive'Language.PureScript.Interactive.Message'Language.PureScript.Interactive.Printer&Language.PureScript.Interactive.Parser&Language.PureScript.Interactive.Module*Language.PureScript.Interactive.CompletionLanguage.PureScript.InteractiveLanguage.PureScript.HierarchyLanguage.PureScript.Errors.JSONLanguage.PureScript.Ide.TypesLanguage.PureScript.Ide.PrimLanguage.PureScript.Ide.Logging*Language.PureScript.Ide.Filter.DeclarationLanguage.PureScript.Ide.ErrorLanguage.PureScript.Ide.Util!Language.PureScript.Ide.ReexportsLanguage.PureScript.Ide.MatcherLanguage.PureScript.Ide.Filter"Language.PureScript.Ide.SourceFileLanguage.PureScript.Ide.ExternsLanguage.PureScript.Ide.StateLanguage.PureScript.Ide.UsageLanguage.PureScript.Ide.Rebuild"Language.PureScript.Ide.CompletionLanguage.PureScript.Ide.Imports!Language.PureScript.Ide.CaseSplitLanguage.PureScript.Ide.CommandLanguage.PureScript.Ide#Language.PureScript.Docs.AsMarkdownLanguage.PureScript.Docs.AsHtml Language.PureScript.Docs.CollectLanguage.PureScript.PublishPaths_purescriptdesugarImportsLanguage.PureScript.ASTLanguage.PureScript.PrettyText.Parsec.ErrorshowErrorMessagesAx%Language.PureScript.Docs.RenderedCodeLanguage.PureScript.CoreImpLanguage.PureScript.CoreFnLanguage.PureScript.CodeGenMakeLanguage.PureScript.Docs text-1.2.3.1Data.Text.InternalText"boxes-0.1.5-4af6tB7wEqY2Jj98zRPqwCText.PrettyPrint.BoxesnullBoxBoxLogger runLogger runLogger'$fMonadBaseControlIOLogger$fMonadBaseIOLogger$fMonadWriterwLogger$fMonadIOLogger $fMonadLogger$fApplicativeLogger$fFunctorLoggerSupplySupplyT unSupplyT runSupplyT evalSupplyT runSupply evalSupply$fFunctorSupplyT$fApplicativeSupplyT$fMonadSupplyT$fMonadTransSupplyT$fMonadErrorSupplyT$fMonadWriterSupplyT$fMonadReaderSupplyT$fAlternativeSupplyT$fMonadPlusSupplyT MonadSupplyfreshpeek freshName$fMonadSupplyWriterT$fMonadSupplyStateT$fMonadSupplySupplyTComment LineComment BlockComment$fSerialiseComment$fNFDataComment $fShowComment $fEqComment $fOrdComment$fGenericComment$fFromJSONComment$fToJSONComment SourceSpanspanName spanStartspanEnd SourcePos sourcePosLinesourcePosColumn SourceAnn NullSourceAnnNullSourceSpandisplaySourcePosdisplaySourcePosShortdisplayStartEndPosdisplayStartEndPosShortdisplaySourceSpaninternalModuleSourceSpannullSourceSpan nullSourceAnn nonEmptySpanwidenSourceSpanwidenSourceAnn$fFromJSONSourcePos$fToJSONSourcePos$fFromJSONSourceSpan$fToJSONSourceSpan$fShowSourcePos $fEqSourcePos$fOrdSourcePos$fGenericSourcePos$fNFDataSourcePos$fSerialiseSourcePos$fShowSourceSpan$fEqSourceSpan$fOrdSourceSpan$fGenericSourceSpan$fNFDataSourceSpan$fSerialiseSourceSpan HasCallStack internalErrorFixity AssociativityInfixlInfixrInfix Precedence showAssoc readAssoc$fFromJSONAssociativity$fToJSONAssociativity$fSerialiseAssociativity$fNFDataAssociativity$fToJSONFixity$fSerialiseFixity$fNFDataFixity$fShowAssociativity$fEqAssociativity$fOrdAssociativity$fGenericAssociativity $fShowFixity $fEqFixity $fOrdFixity$fGenericFixity normalizeCss normalizeCssT pursuitCss pursuitCssT minterspersefindNodeProcessgetHistoryFilename Qualified ModuleNameProperNameTypeTypeNameConstructorName ClassNameKindName Namespace ProperName runProperName OpNameType ValueOpName TypeOpName AnyOpNameOpName runOpNameIdentGenIdent UnusedIdentName IdentName ValOpNameTyNameTyOpName DctorName TyClassNameModNameKiName getIdentName getValOpName getTypeName getKindName getTypeOpName getDctorName getClassName getModNamerunIdent showIdent freshIdent freshIdent'showOp eraseOpNamecoerceProperName runModuleNamemoduleNameFromStringisBuiltinModuleName showQualifiedgetQualqualify mkQualified disqualify disqualifyFor isQualified isUnqualifiedisQualifiedWith$fSerialiseIdent $fNFDataIdent$fFromJSONOpName$fToJSONOpName$fSerialiseOpName$fNFDataOpName$fFromJSONProperName$fToJSONProperName$fSerialiseProperName$fNFDataProperName$fNFDataModuleName$fSerialiseName $fNFDataName$fSerialiseQualified$fNFDataQualified $fShowIdent $fEqIdent $fOrdIdent$fGenericIdent $fShowOpName $fEqOpName $fOrdOpName$fGenericOpName$fShowProperName$fEqProperName$fOrdProperName$fGenericProperName$fShowModuleName$fEqModuleName$fOrdModuleName$fGenericModuleName$fSerialiseModuleName$fEqName $fOrdName $fShowName $fGenericName$fShowQualified $fEqQualified$fOrdQualified$fFunctorQualified$fFoldableQualified$fTraversableQualified$fGenericQualified$fFromJSONQualified$fToJSONQualified$fFromJSONKeyModuleName$fToJSONKeyModuleName$fFromJSONModuleName$fToJSONModuleName$fFromJSONIdent $fToJSONIdent CacheInfo unCacheInfoCacheDb ContentHashhash checkChanged removeModulesnormaliseForCache$fFromJSONContentHash$fToJSONContentHash$fShowContentHash$fEqContentHash$fOrdContentHash$fShowCacheInfo $fEqCacheInfo$fOrdCacheInfo$fSemigroupCacheInfo$fMonoidCacheInfo$fFromJSONCacheInfo$fToJSONCacheInfoKindKUnknownRowFunKind NamedKind SourceKind srcKUnknownsrcRow srcFunKind srcNamedKind kindToJSON kindFromJSONeverywhereOnKindseverywhereOnKindsMeverythingOnKinds annForKind getAnnForKind setAnnForKindeqKind eqMaybeKind compareKindcompareMaybeKind $fOrdKind$fEqKind$fFromJSONKind$fFromJSONKind0$fFromJSONKind1 $fToJSONKind$fSerialiseKind $fNFDataKind $fShowKind $fGenericKind $fFunctorKind$fFoldableKind$fTraversableKindConstructorType ProductTypeSumTypeMeta IsConstructor IsNewtypeIsTypeClassConstructor IsForeignIsWhere$fShowConstructorType$fEqConstructorType$fOrdConstructorType $fShowMeta$fEqMeta $fOrdMetamoduleNameToJs identToJs properToJs anyNameToJsisValidJsIdentifieridentCharToTextnameIsJsReservednameIsJsBuiltIn jsAnyReserved jsKeywordsjsSometimesReservedjsFutureReservedjsFutureReservedStrict jsOldReserved jsLiterals CodegenTargetJS JSSourceMapCoreFnDocsOptionsoptionsVerboseErrorsoptionsNoCommentsoptionsCodegenTargetsdefaultOptionscodegenTargets$fEqCodegenTarget$fOrdCodegenTarget$fShowCodegenTarget $fShowOptionsPSStringtoUTF16CodeUnitsdecodeStringWithReplacementdecodeStringEither decodeStringprettyPrintStringprettyPrintStringJSmkString$fFromJSONPSString$fToJSONPSString$fIsStringPSString$fShowPSString$fSerialisePSString$fNFDataPSString $fEqPSString $fOrdPSString$fSemigroupPSString$fMonoidPSString$fGenericPSStringLabelrunLabel$fSerialiseLabel $fNFDataLabel $fShowLabel $fEqLabel $fOrdLabel$fIsStringLabel$fSemigroupLabel $fMonoidLabel $fToJSONLabel$fFromJSONLabel$fGenericLabelEffectDictionariesedApplicativeDict edBindDict edMonadDictedWhileedUntil ControlBindIsSymbol DataSymbolWarnFail PrimTypeError SymbolCons SymbolAppend SymbolCompare PrimSymbol RowListCons RowListNil RowToList PrimRowListRowLacksRowConsRowNubRowUnionPrimRow PrimOrdering PrimBooleanRecordPartialPrimDiscard$apply# applyFlipped<>++append>>=binddiscard+add-sub*mul/div%mod<lessThan> greaterThan<= lessThanOrEq>=greaterThanOrEq==eqeq1/=notEqcomparecompare1&&conj||disj unsafeIndexorandxor<<<compose>>>composeFlippedmapnegatenotshlshrzshr complementzeroonebottomtopreturnpure' returnEscapedunitrunST stRefValuenewSTRef readSTRef writeSTRef modifySTRefmkFnrunFnmkEffFnrunEffFn mkEffectFn runEffectFn undefinedeffDictionarieseffectDictionariesstDictionariesdiscardUnitDictionarysemiringNumber semiringInt ringNumberringIntmoduloSemiringNumbermoduloSemiringInteuclideanRingNumbereuclideanRingInt ordBoolean ordNumberordInt ordStringordChareqNumbereqInteqStringeqChar eqBooleanboundedBooleanbooleanAlgebraBooleanheytingAlgebraBooleansemigroupStringsemigroupoidFngenerictoSpine fromSpine toSignaturemainpartial booleanTrue booleanFalse orderingLT orderingEQ orderingGT primModulestyp kindBoolean kindOrdering kindRowListsymboldocprim moduleBooleanmoduleOrdering moduleRow moduleRowList moduleSymbol typeErrorprelude dataArrayeffeffectstcontrolApplicativecontrolSemigroupoid controlBindcontrolMonadEffUncurriedeffectUncurried dataBounded dataSemigroupdataHeytingAlgebradataEqdataOrd dataSemiringdataRingdataEuclideanRing dataFunctiondataFunctionUncurried dataIntBits partialUnsafe unsafePartial unsafeCoerceunsafeCoerceFnBinderBinderWildcard BinderVar BinderNamedBinderConstructor BinderBoolean BinderChar BinderString BinderNumber BinderArray BinderRecord BinderParens BinderTypedBinderOpAdoBlock adoKeyword adoStatementsadoIn adoResult DoStatementDoLet DoDiscardDoBindDoBlock doKeyword doStatements LetBindingLetBindingSignatureLetBindingNameLetBindingPatternWhere whereExpr whereBindingsLetIn letKeyword letBindingsletInletBodyCaseOf caseKeywordcaseHeadcaseOf caseBranches IfThenElseiteIfiteConditeTheniteTrueiteElseiteFalseLambda lmbSymbol lmbBinderslmbArrlmbBodyRecordAccessorrecExprrecDotrecPath RecordUpdateRecordUpdateLeafRecordUpdateBranch RecordLabeled RecordPun RecordFieldExprExprHole ExprSection ExprIdentExprConstructor ExprBooleanExprChar ExprString ExprNumber ExprArray ExprRecord ExprParens ExprTyped ExprInfixExprOp ExprOpName ExprNegateExprRecordAccessorExprRecordUpdateExprApp ExprLambdaExprIfExprCaseExprLetExprDoExprAdoForeign ForeignValue ForeignData ForeignKind PatternGuard patBinderpatExpr GuardedExprgrdBar grdPatternsgrdSepgrdWhereGuarded UnconditionalValueBindingFieldsvalName valBinders valGuarded FixityFields fxtKeywordfxtPrecfxtOpFixityOp FixityValue FixityType InstanceHead instKeywordinstNameinstSepinstConstraints instClass instTypes ClassFundepFundepDeterminedFundepDetermines ClassHead clsKeywordclsSuperclsNameclsVars clsFundepsDataCtor dataCtorAnn dataCtorNamedataCtorFieldsDataHead dataHdKeyword dataHdName dataHdVarsImport ImportValueImportOp ImportType ImportTypeOp ImportClass ImportKind ImportDeclimpAnn impKeyword impModuleimpNamesimpQualInstanceBindingInstanceBindingSignatureInstanceBindingNameInstanceinstHeadinstBody DeclarationDeclDataDeclType DeclNewtype DeclClassDeclInstanceChain DeclDerive DeclSignature DeclValue DeclFixity DeclForeign DataMembersDataAllDataEnumeratedExport ExportValueExportOp ExportType ExportTypeOp ExportClass ExportKind ExportModuleModulemodAnn modKeyword modNamespace modExportsmodWhere modImportsmodDeclsmodTrailingComments rowLabelsrowTail ConstraintConstraintParensTypeVarBinding TypeVarKinded TypeVarNameTypeTypeVarTypeConstructor TypeWildcardTypeHole TypeStringTypeRow TypeRecord TypeForall TypeKindedTypeAppTypeOpTypeArr TypeArrNameTypeConstrained TypeParensKindArrKindRow KindParensOneOrDelimitedOneManyDelimitedNonEmpty DelimitedLabeledlblLabellblSeplblValue SeparatedsepHeadsepTailWrappedwrpOpenwrpValuewrpCloselblToklblName QualifiedNamequalTok qualModulequalNamenameTok nameValuegetIdent SourceTokentokAnntokValueToken TokLeftParen TokRightParen TokLeftBrace TokRightBrace TokLeftSquareTokRightSquare TokLeftArrow TokRightArrowTokRightFatArrowTokDoubleColon TokForall TokEqualsTokPipeTokTickTokDotTokComma TokUnderscore TokBackslash TokLowerName TokUpperName TokOperator TokSymbolName TokSymbolArrTokHoleTokChar TokString TokRawStringTokInt TokNumberTokLayoutStart TokLayoutSep TokLayoutEndTokEof SourceStyleASCIIUnicodeTokenAnntokRangetokLeadingCommentstokTrailingCommentsLineFeedLFCRLFSpaceLine SourceRangesrcStartsrcEndsrcLine srcColumn$fShowSourceRange$fEqSourceRange$fOrdSourceRange$fGenericSourceRange$fFunctorComment$fShowLineFeed $fEqLineFeed $fOrdLineFeed$fGenericLineFeed$fShowTokenAnn $fEqTokenAnn $fOrdTokenAnn$fGenericTokenAnn$fShowSourceStyle$fEqSourceStyle$fOrdSourceStyle$fGenericSourceStyle $fShowToken $fEqToken $fOrdToken$fGenericToken$fShowSourceToken$fEqSourceToken$fOrdSourceToken$fGenericSourceToken $fFunctorName$fFoldableName$fTraversableName$fShowQualifiedName$fEqQualifiedName$fOrdQualifiedName$fFunctorQualifiedName$fFoldableQualifiedName$fTraversableQualifiedName$fGenericQualifiedName $fShowWrapped $fEqWrapped $fOrdWrapped$fFunctorWrapped$fFoldableWrapped$fTraversableWrapped$fGenericWrapped$fShowSeparated $fEqSeparated$fOrdSeparated$fFunctorSeparated$fFoldableSeparated$fTraversableSeparated$fGenericSeparated $fShowLabeled $fEqLabeled $fOrdLabeled$fFunctorLabeled$fFoldableLabeled$fTraversableLabeled$fGenericLabeled$fShowOneOrDelimited$fEqOneOrDelimited$fOrdOneOrDelimited$fFunctorOneOrDelimited$fFoldableOneOrDelimited$fTraversableOneOrDelimited$fGenericOneOrDelimited$fShowTypeVarBinding$fEqTypeVarBinding$fOrdTypeVarBinding$fFunctorTypeVarBinding$fFoldableTypeVarBinding$fTraversableTypeVarBinding$fGenericTypeVarBinding $fShowRow$fEqRow$fOrdRow $fFunctorRow $fFoldableRow$fTraversableRow $fGenericRow $fShowType$fEqType $fOrdType $fFunctorType$fFoldableType$fTraversableType $fGenericType$fShowConstraint$fEqConstraint$fOrdConstraint$fFunctorConstraint$fFoldableConstraint$fTraversableConstraint$fGenericConstraint$fShowDataMembers$fEqDataMembers$fOrdDataMembers$fFunctorDataMembers$fFoldableDataMembers$fTraversableDataMembers$fGenericDataMembers $fShowExport $fEqExport $fOrdExport$fFunctorExport$fFoldableExport$fTraversableExport$fGenericExport $fShowImport $fEqImport $fOrdImport$fFunctorImport$fFoldableImport$fTraversableImport$fGenericImport$fShowImportDecl$fEqImportDecl$fOrdImportDecl$fFunctorImportDecl$fFoldableImportDecl$fTraversableImportDecl$fGenericImportDecl$fShowDataHead $fEqDataHead $fOrdDataHead$fFunctorDataHead$fFoldableDataHead$fTraversableDataHead$fGenericDataHead$fShowDataCtor $fEqDataCtor $fOrdDataCtor$fFunctorDataCtor$fFoldableDataCtor$fTraversableDataCtor$fGenericDataCtor$fShowClassFundep$fEqClassFundep$fOrdClassFundep$fGenericClassFundep$fShowClassHead $fEqClassHead$fOrdClassHead$fFunctorClassHead$fFoldableClassHead$fTraversableClassHead$fGenericClassHead$fShowInstanceHead$fEqInstanceHead$fOrdInstanceHead$fFunctorInstanceHead$fFoldableInstanceHead$fTraversableInstanceHead$fGenericInstanceHead$fShowFixityOp $fEqFixityOp $fOrdFixityOp$fGenericFixityOp$fShowFixityFields$fEqFixityFields$fOrdFixityFields$fGenericFixityFields $fShowForeign $fEqForeign $fOrdForeign$fFunctorForeign$fFoldableForeign$fTraversableForeign$fGenericForeign$fShowRecordLabeled$fEqRecordLabeled$fOrdRecordLabeled$fFunctorRecordLabeled$fFoldableRecordLabeled$fTraversableRecordLabeled$fGenericRecordLabeled $fShowBinder $fEqBinder $fOrdBinder$fFunctorBinder$fFoldableBinder$fTraversableBinder$fGenericBinder$fShowValueBindingFields$fEqValueBindingFields$fOrdValueBindingFields$fFunctorValueBindingFields$fFoldableValueBindingFields$fTraversableValueBindingFields$fGenericValueBindingFields $fShowGuarded $fEqGuarded $fOrdGuarded$fFunctorGuarded$fFoldableGuarded$fTraversableGuarded$fGenericGuarded $fShowWhere $fEqWhere $fOrdWhere$fFunctorWhere$fFoldableWhere$fTraversableWhere$fGenericWhere$fShowLetBinding$fEqLetBinding$fOrdLetBinding$fFunctorLetBinding$fFoldableLetBinding$fTraversableLetBinding$fGenericLetBinding $fShowExpr$fEqExpr $fOrdExpr $fFunctorExpr$fFoldableExpr$fTraversableExpr $fGenericExpr$fShowAdoBlock $fEqAdoBlock $fOrdAdoBlock$fFunctorAdoBlock$fFoldableAdoBlock$fTraversableAdoBlock$fGenericAdoBlock$fShowDoStatement$fEqDoStatement$fOrdDoStatement$fFunctorDoStatement$fFoldableDoStatement$fTraversableDoStatement$fGenericDoStatement $fShowDoBlock $fEqDoBlock $fOrdDoBlock$fFunctorDoBlock$fFoldableDoBlock$fTraversableDoBlock$fGenericDoBlock $fShowLetIn $fEqLetIn $fOrdLetIn$fFunctorLetIn$fFoldableLetIn$fTraversableLetIn$fGenericLetIn $fShowCaseOf $fEqCaseOf $fOrdCaseOf$fFunctorCaseOf$fFoldableCaseOf$fTraversableCaseOf$fGenericCaseOf$fShowIfThenElse$fEqIfThenElse$fOrdIfThenElse$fFunctorIfThenElse$fFoldableIfThenElse$fTraversableIfThenElse$fGenericIfThenElse $fShowLambda $fEqLambda $fOrdLambda$fFunctorLambda$fFoldableLambda$fTraversableLambda$fGenericLambda$fShowRecordAccessor$fEqRecordAccessor$fOrdRecordAccessor$fFunctorRecordAccessor$fFoldableRecordAccessor$fTraversableRecordAccessor$fGenericRecordAccessor$fShowRecordUpdate$fEqRecordUpdate$fOrdRecordUpdate$fFunctorRecordUpdate$fFoldableRecordUpdate$fTraversableRecordUpdate$fGenericRecordUpdate$fShowGuardedExpr$fEqGuardedExpr$fOrdGuardedExpr$fFunctorGuardedExpr$fFoldableGuardedExpr$fTraversableGuardedExpr$fGenericGuardedExpr$fShowPatternGuard$fEqPatternGuard$fOrdPatternGuard$fFunctorPatternGuard$fFoldablePatternGuard$fTraversablePatternGuard$fGenericPatternGuard$fShowInstanceBinding$fEqInstanceBinding$fOrdInstanceBinding$fFunctorInstanceBinding$fFoldableInstanceBinding$fTraversableInstanceBinding$fGenericInstanceBinding$fShowInstance $fEqInstance $fOrdInstance$fFunctorInstance$fFoldableInstance$fTraversableInstance$fGenericInstance$fShowDeclaration$fEqDeclaration$fOrdDeclaration$fFunctorDeclaration$fFoldableDeclaration$fTraversableDeclaration$fGenericDeclaration $fShowModule $fEqModule $fOrdModule$fFunctorModule$fFoldableModule$fTraversableModule$fGenericModuleeverythingOnSeparatedeverythingOnTypes printToken printTokensprintLeadingCommentprintTrailingComment TokenRange advanceTokenadvanceLeadingadvanceTrailing tokenDelta qualDelta multiLine commentDelta lineDelta textDelta applyDeltasepLast toSourceRangewidensrcRange nameRange qualRange labelRange wrappedRange moduleRange exportRangeimportDeclRange importRangedataMembersRange declRange dataHeadRange dataCtorRangeclassHeadRangeclassFundepRange instanceRangeinstanceHeadRangeinstanceBindingRange foreignRangevalueBindingFieldsRange guardedRangeguardedExprRange whereRange kindRange typeRangeconstraintRangetypeVarBindingRange exprRangeletBindingRangedoStatementRange binderRangerecordUpdateRangerecordLabeledExprRange LayoutDelimLytRoot LytTopDeclLytTopDeclHead LytDeclGuardLytCaseLytCaseBinders LytCaseGuardLytLambdaBindersLytParenLytBrace LytSquareLytIfLytThen LytProperty LytForallLytTickLytLet LytLetStmtLytWhereLytOfLytDoLytAdo LayoutStack isIndented isTopDecllytToken insertLayout unwindLayout$fShowLayoutDelim$fEqLayoutDelim$fOrdLayoutDelim ParserErrorerrRangeerrTokserrStackerrTypeParserErrorTypeErrWildcardInType ErrHoleInTypeErrExprInBinderErrExprInDeclOrBinder ErrExprInDeclErrBinderInDeclErrRecordUpdateInCtrErrRecordPunInUpdateErrRecordCtrInUpdateErrTypeInConstraint ErrElseInDeclErrInstanceNameMismatchErrUnknownFundepErrImportInDeclErrGuardInLetBinder ErrKeywordVarErrKeywordSymbol ErrQuotedPunErrTokenErrLineFeedInStringErrAstralCodePointInChar ErrCharEscapeErrNumberOutOfRangeErrLeadingZeroErrExpectedFractionErrExpectedExponentErrExpectedHexErrReservedSymbol ErrCharInGap ErrModuleNameErrQualifiedName ErrEmptyDo ErrLexemeErrEof ErrCustomprettyPrintErrorprettyPrintErrorMessage$fShowParserErrorType$fEqParserErrorType$fOrdParserErrorType$fShowParserError$fEqParserErrorParserParserM ParserState parserBuff parserErrorsLexStatelexPos lexLeading lexSourcelexStack LexResult runParserrunTokenParserthrow parseError mkParserError addFailure addFailures parseFail' parseFailpushBack tryPrefixoneOf manyDelimitedtokenmunch$fMonadParserM$fApplicativeParserM$fFunctorParserM$fShowLexState$fShowParserState TmpModuleDecl TmpImportTmpChain placeholderunexpectedNameunexpectedQualunexpectedLabelunexpectedExprunexpectedDeclunexpectedBinderunexpectedLetBindingunexpectedInstBindingunexpectedRecordUpdateunexpectedRecordLabeled rangeToksunexpectedToks separated consSeparated toModuleNameupperToModuleNametoQualifiedNametoNametoLabel labelToIdenttoStringtoChartoNumbertoInt toBoolean toConstrainttoBinderConstructortoRecordFields checkFundeps toModuleDeclscheckNoWildcardscheckNoForallsrevert reservedNamesisValidModuleNamespaceisLeftFatArrow$fShowTmpModuleDecllenientlex lexTopLevel lexWithState isUnquotedKey PartialResult resPartialresFull parseKind parseType parseExpr parseIdent parseOperator parseDeclparseImportDeclP parseDeclP parseExprP parseTypePparseModuleNamePparseQualIdentPparse parseModule$fFunctorPartialResultLiteralNumericLiteral StringLiteral CharLiteralBooleanLiteral ArrayLiteral ObjectLiteral $fEqLiteral $fOrdLiteral $fShowLiteral$fFunctorLiteral NullBinder LiteralBinder VarBinderConstructorBinder NamedBinderextractBinderAnnCaseAlternativecaseAlternativeBinderscaseAlternativeResultGuardBindNonRecRec ConstructorAccessor ObjectUpdateAbsAppVarCaseLet extractAnn modifyAnn$fFunctorCaseAlternative$fShowCaseAlternative $fShowBind $fFunctorBindeverywhereOnValueseverythingOnValuesmoduleSourceSpanmoduleComments moduleName modulePath moduleImports moduleExports moduleForeign moduleDeclswidth indentWidthparaindentedsuccessivelyIndentedvcatspacer bulletedList bulletedListT printToStderr printToStdout globRelativepurescriptSourceFilesfstMsndMthirdMpairMmaybeMeitherMdefS RowListItem rowListAnn rowListLabel rowListType constraintAnnconstraintClassconstraintArgsconstraintDataConstraintDataPartialConstraintDataTUnknownTypeLevelStringForAllConstrainedTypeSkolemREmptyRCons KindedTypeBinaryNoParensType ParensInType SkolemScoperunSkolemScopeSourceConstraint SourceType srcTUnknown srcTypeVarsrcTypeLevelStringsrcTypeWildcardsrcTypeConstructor srcTypeOp srcTypeApp srcForAllsrcConstrainedType srcSkolem srcREmptysrcRCons srcKindedTypesrcBinaryNoParensTypesrcParensInType srcConstraintmapConstraintArgsoverConstraintArgsconstraintDataToJSONconstraintToJSON typeToJSONconstraintDataFromJSONconstraintFromJSON typeFromJSONsrcRowListItem rowToListrowToSortedList rowFromList isMonoTypemkForAllreplaceTypeVarsreplaceAllTypeVarsusedTypeVariablesfreeTypeVariablesquantifymoveQuantifiersToFrontcontainsWildcardscontainsForAlleverywhereOnTypeseverywhereOnTypesTopDowneverywhereOnTypesMeverywhereOnTypesTopDownMeverythingWithContextOnTypes annForType getAnnForType setAnnForTypeeqType compareType eqConstraintcompareConstraint$fSerialiseSkolemScope$fNFDataSkolemScope$fFromJSONConstraintData$fToJSONConstraintData$fSerialiseConstraintData$fNFDataConstraintData$fFromJSONConstraint$fFromJSONConstraint0$fFromJSONConstraint1$fFromJSONType$fFromJSONType0$fFromJSONType1$fToJSONConstraint $fToJSONType$fSerialiseConstraint$fNFDataConstraint$fSerialiseType $fNFDataType$fShowSkolemScope$fEqSkolemScope$fOrdSkolemScope$fToJSONSkolemScope$fFromJSONSkolemScope$fGenericSkolemScope$fShowConstraintData$fEqConstraintData$fOrdConstraintData$fGenericConstraintData$fShowRowListItem$fGenericRowListItem$fFunctorRowListItem$fFoldableRowListItem$fTraversableRowListItem NamedDictTypeClassDictionaryInScopetcdChaintcdIndextcdValuetcdPath tcdClassNametcdInstanceTypestcdDependenciessuperclassName"$fNFDataTypeClassDictionaryInScope $fShowTypeClassDictionaryInScope#$fFunctorTypeClassDictionaryInScope$$fFoldableTypeClassDictionaryInScope'$fTraversableTypeClassDictionaryInScope#$fGenericTypeClassDictionaryInScope DataDeclTypeDataNewtypeTypeKindDataType TypeSynonym ExternDataLocalTypeVariable ScopedTypeVarNameKindPrivatePublicExternalNameVisibility UndefinedDefinedFunctionalDependency fdDeterminers fdDetermined TypeClassDatatypeClassArgumentstypeClassMemberstypeClassSuperclassestypeClassDependenciestypeClassDeterminedArgumentstypeClassCoveringSetstypeClassIsEmpty EnvironmentnamestypesdataConstructors typeSynonymstypeClassDictionaries typeClasseskindsinitEnvironmentmakeTypeClassDatashowDataDeclTypeprimName primSubNameprimKind primSubKindkindTypekindConstraint isKindType-:> kindSymbolkindDockindRowprimTy tyFunctiontyStringtyChartyNumbertyInt tyBooleantyArraytyRecordisObject isFunctionisTypeOrAppliedfunction primKindsprimBooleanKindsprimOrderingKindsprimRowListKindsprimTypeErrorKinds allPrimKinds primTypes allPrimTypesprimBooleanTypesprimOrderingTypes primRowTypesprimRowListTypesprimSymbolTypesprimTypeErrorTypes primClassesallPrimClassesprimRowClassesprimRowListClassesprimSymbolClassesprimTypeErrorClasseslookupConstructorisNewtypeConstructor lookupValue$fToJSONFunctionalDependency$fFromJSONFunctionalDependency$fSerialiseFunctionalDependency$fNFDataFunctionalDependency$fNFDataTypeClassData$fSerialiseNameVisibility$fNFDataNameVisibility$fSerialiseNameKind$fNFDataNameKind$fFromJSONTypeKind$fToJSONTypeKind$fSerialiseTypeKind$fNFDataTypeKind$fFromJSONDataDeclType$fToJSONDataDeclType$fSerialiseDataDeclType$fNFDataDataDeclType$fNFDataEnvironment$fShowFunctionalDependency$fGenericFunctionalDependency$fShowTypeClassData$fGenericTypeClassData$fShowNameVisibility$fEqNameVisibility$fGenericNameVisibility$fShowNameKind $fEqNameKind$fGenericNameKind$fShowTypeKind $fEqTypeKind$fGenericTypeKind$fShowDataDeclType$fEqDataDeclType$fOrdDataDeclType$fGenericDataDeclType$fShowEnvironment$fGenericEnvironmentAnnssAnnremoveCommentsoptimizeCoreFnOpBinderBinaryNoParensBinderParensInBinderPositionedBinder TypedBinder binderNames isIrrefutableModuleIdentifier ModuleTypeRegular ErrorMessageUnsupportedModulePathInvalidTopLevelUnableToParseModuleUnsupportedExport ErrorInModuleMissingEntryPointMissingMainModuleguessModuleIdentifierprintErrorMessagegetExportedIdentifiersbundleSMbundle$fToJSONModuleIdentifier$fToJSONModuleElement$fToJSONModule$fShowModuleType$fEqModuleType$fOrdModuleType$fShowModuleIdentifier$fEqModuleIdentifier$fOrdModuleIdentifier$fShowErrorMessage$fShowVisibility$fEqVisibility$fOrdVisibility$fShowExportType$fEqExportType$fOrdExportType$fShowModuleElement AssocList runAssocListPathNodeLeafBranchPathTreeDoNotationElementDoNotationValueDoNotationBind DoNotationLetPositionedDoNotationElementWhereProvenance FromWhereFromLet UnaryMinusBinaryNoParensParensObjectUpdateNestedUnusedOp TypedValueDoAdo!TypeClassDictionaryConstructorAppTypeClassDictionaryTypeClassDictionaryAccessorDeferredDictionaryAnonymousArgumentHolePositionedValueConditionGuardTypeInstanceBodyDerivedInstanceNewtypeInstanceNewtypeInstanceWithDictionaryExplicitInstance TypeFixity ValueFixityDataDeclarationDataBindingGroupDeclarationTypeSynonymDeclarationTypeDeclarationValueDeclarationBoundValueDeclarationBindingGroupDeclarationExternDeclarationExternDataDeclarationExternKindDeclarationFixityDeclarationImportDeclarationTypeClassDeclarationTypeInstanceDeclarationDataConstructorDeclarationValueDeclarationDatavaldeclSourceAnn valdeclIdent valdeclNamevaldeclBindersvaldeclExpressionTypeDeclarationDatatydeclSourceAnn tydeclIdent tydeclTypeImportDeclarationTypeImplicitExplicitHiding ExportSourceexportSourceImportedFromexportSourceDefinedInDeclarationRefTypeRef TypeOpRefValueRef ValueOpRef TypeClassRefTypeInstanceRef ModuleRefKindRef ReExportRef HintCategoryExprHintKindHint CheckHint PositionHint SolverHint OtherHintErrorMessageHintErrorUnifyingTypesErrorInExpressionErrorInInstanceErrorInSubsumptionErrorCheckingAccessorErrorCheckingTypeErrorCheckingKindErrorCheckingGuardErrorInferringTypeErrorInApplicationErrorInDataConstructorErrorInTypeConstructorErrorInBindingGroupErrorInDataBindingGroupErrorInTypeSynonymErrorInValueDeclarationErrorInTypeDeclarationErrorInTypeClassDeclarationErrorInForeignImportErrorSolvingConstraintPositionedErrorSimpleErrorMessageModuleNotFoundErrorParsingFFIModuleErrorParsingModuleErrorParsingCSTModuleMissingFFIModuleUnnecessaryFFIModuleMissingFFIImplementationsUnusedFFIImplementationsInvalidFFIIdentifier FileIOError InfiniteType InfiniteKindMultipleValueOpFixitiesMultipleTypeOpFixitiesOrphanTypeDeclarationRedefinedIdentOverlappingNamesInLet UnknownName UnknownImportUnknownImportDataConstructor UnknownExportUnknownExportDataConstructor ScopeConflictScopeShadowing DeclConflictExportConflictDuplicateModuleDuplicateTypeClassDuplicateInstanceDuplicateTypeArgument InvalidDoBind InvalidDoLetCycleInDeclarationCycleInTypeSynonymCycleInTypeClassDeclarationCycleInModulesNameIsUndefinedUndefinedTypeVariablePartiallyAppliedSynonym EscapedSkolemTypesDoNotUnifyKindsDoNotUnifyConstrainedTypeUnifiedOverlappingInstancesNoInstanceFoundAmbiguousTypeVariables UnknownClassPossiblyInfiniteInstance CannotDeriveInvalidDerivedInstanceExpectedTypeConstructorInvalidNewtypeInstance MissingNewtypeSuperclassInstanceUnverifiableSuperclassInstanceCannotFindDerivingTypeDuplicateLabelDuplicateValueDeclarationArgListLengthsDifferOverlappingArgNamesMissingClassMemberExtraneousClassMember ExpectedTypeIncorrectConstructorArityExprDoesNotHaveTypePropertyIsMissingAdditionalPropertyTypeSynonymInstanceOrphanInstanceInvalidNewtypeInvalidInstanceHeadTransitiveExportErrorTransitiveDctorExportError ShadowedNameShadowedTypeVar UnusedTypeVarWildcardInferredTypeHoleInferredTypeMissingTypeDeclarationOverlappingPatternIncompleteExhaustivityCheckMisleadingEmptyTypeImportImportHidingModule UnusedImportUnusedExplicitImportUnusedDctorImportUnusedDctorExplicitImportDuplicateSelectiveImportDuplicateImportDuplicateImportRefDuplicateExportRef IntOutOfRangeImplicitQualifiedImportImplicitQualifiedImportReExportImplicitImport HidingImportCaseBinderLengthDiffersIncorrectAnonymousArgumentInvalidOperatorInBinder!CannotGeneralizeRecursiveFunctionCannotDeriveNewtypeForDataExpectedWildcardCannotUseBindWithDoClassInstanceArityMismatchUserDefinedWarningUnusableDeclarationCannotDefinePrimModulesMixedAssociativityErrorNonAssociativeError TypeSearchTSBeforeTSAftertsAfterIdentifierstsAfterRecordFieldsContext MkUnguardedTypeFixityDeclarationValueFixityDeclaration ValueDeclonTypeSearchTypesonTypeSearchTypesM getModuleNamegetModuleSourceSpangetModuleDeclarationsaddDefaultImport importPrim compDecRefdeclRefSourceSpan declRefName getTypeRef getTypeOpRef getValueRef getValueOpRefgetTypeClassRef getKindRef isModuleRef isImplicit isExplicitoverTypeDeclarationgetTypeDeclarationunwrapTypeDeclarationoverValueDeclarationgetValueDeclarationtraverseDataCtorFieldsmapTypeInstanceBodytraverseTypeInstanceBody declSourceAnndeclSourceSpandeclName isValueDecl isDataDecl isImportDeclisExternDataDeclisExternKindDecl isFixityDecl getFixityDecl isExternDeclisTypeClassInstanceDeclarationisTypeClassDeclaration flattenDecls$fEqDeclarationRef$fShowTypeSearch$fShowHintCategory$fEqHintCategory$fEqExportSource$fOrdExportSource$fShowExportSource$fGenericExportSource$fNFDataExportSource$fSerialiseExportSource$fShowDeclarationRef$fGenericDeclarationRef$fNFDataDeclarationRef$fSerialiseDeclarationRef$fEqImportDeclarationType$fShowImportDeclarationType$fGenericImportDeclarationType $fSerialiseImportDeclarationType$fShowTypeDeclarationData$fEqTypeDeclarationData$fShowValueDeclarationData$fFunctorValueDeclarationData$fFoldableValueDeclarationData!$fTraversableValueDeclarationData $fShowDataConstructorDeclaration$fEqDataConstructorDeclaration$fEqValueFixity$fOrdValueFixity$fShowValueFixity$fEqTypeFixity$fOrdTypeFixity$fShowTypeFixity$fShowWhereProvenance$fShowAssocList $fEqAssocList$fOrdAssocList$fFoldableAssocList$fFunctorAssocList$fTraversableAssocList$fShowPathTree $fEqPathTree $fOrdPathTree$fFunctorPathTree$fFoldablePathTree$fTraversablePathTree$fShowPathNode $fEqPathNode $fOrdPathNode$fFunctorPathNode$fFoldablePathNode$fTraversablePathNode$fShowDoNotationElement $fShowGuard$fShowTypeInstanceBody$fShowErrorMessageHint$fShowSimpleErrorMessage$fFromJSONDeclarationRef$fToJSONDeclarationRef$fFromJSONImportDeclarationType$fToJSONImportDeclarationType isTrueExpr$fFromJSONExportSource$fToJSONExportSource ScopedIdent LocalIdent ToplevelIdent guardedExprMmapGuardedExprlitMeverywhereOnValuesTopDownMeverywhereOnValuesMeverythingWithContextOnValueseverywhereWithContextOnValuesMinScopeeverythingWithScope accumTypes accumKinds overTypes$fShowScopedIdent$fEqScopedIdent$fOrdScopedIdentexportedDeclarations isExporteddesugarLetPatternModule PrinterStateindent PlainStringStrPosSMapEmitemit addMappingparensparensT parensPos intercalaterunPlainString addMapping'bumpPosaddPosemptyPrinterState blockIndent withIndent currentIndentprettyPrintManyobjectKeyRequiresQuotingbeforebeforeWithSpaceendWith $fEmitStrPos$fMonoidStrPos$fSemigroupStrPos$fEmitPlainString$fSemigroupPlainString$fMonoidPlainStringprettyPrintKindPrettyPrintConstraintPrettyPrintType PPTUnknown PPTypeVarPPTypeLevelStringPPTypeWildcardPPTypeConstructorPPTypeOpPPSkolem PPTypeAppPPConstrainedType PPKindedTypePPBinaryNoParensTypePPParensInTypePPForAll PPFunctionPPRecordPPRow PPTruncatedconvertPrettyPrintType typeAtomAsBoxprettyPrintTypeAtom typeAsBox typeDiffAsBoxsuggestedTypeAsBoxprettyPrintTypeprettyPrintTypeWithUnicodeprettyPrintSuggestedTypeprettyPrintLabelprettyPrintObjectKeyprettyPrintValueprettyPrintBinderAtomprettyPrintBinderExternsDeclarationEDType EDTypeSynonymEDDataConstructorEDValueEDClass EDInstanceEDKind edTypeName edTypeKindedTypeDeclarationKindedTypeSynonymNameedTypeSynonymArgumentsedTypeSynonymTypeedDataCtorNameedDataCtorOriginedDataCtorTypeCtoredDataCtorTypeedDataCtorFields edValueName edValueType edClassNameedClassTypeArgumentsedClassMembersedClassConstraintsedFunctionalDependencies edIsEmptyedInstanceClassNameedInstanceNameedInstanceTypesedInstanceConstraintsedInstanceChainedInstanceChainIndex edKindNameExternsTypeFixityefTypeAssociativityefTypePrecedenceefTypeOperator efTypeAlias ExternsFixityefAssociativity efPrecedence efOperatorefAlias ExternsImporteiModule eiImportType eiImportedAs ExternsFile efVersion efModuleName efExports efImports efFixitiesefTypeFixitiesefDeclarations efSourceSpanexternsIsCurrentVersionapplyExternsFileToEnvironmentmoduleToExternsFileexternsFileName$fSerialiseExternsImport$fSerialiseExternsFixity$fSerialiseExternsTypeFixity$fSerialiseExternsDeclaration$fSerialiseExternsFile$fShowExternsImport$fGenericExternsImport$fShowExternsFixity$fGenericExternsFixity$fShowExternsTypeFixity$fGenericExternsTypeFixity$fShowExternsDeclaration$fGenericExternsDeclaration$fShowExternsFile$fGenericExternsFile PPEOptions ppeCodeColorppeFullppeLevel ppeShowDocsppeRelativeDirectoryLevelErrorWarningTypeMap umSkolemMap umUnknownMap umNextIndexMultipleErrorsrunMultipleErrorsErrorSuggestion errorSpan errorModulefindHintstripModuleAndSpan errorCodenonEmpty errorMessage errorMessage'errorMessage''errorMessage''' singleErroronErrorMessagesaddHintaddHintsdefaultUnknownMapunwrapErrorMessagereplaceUnknownsonTypesInErrorMessageonTypesInErrorMessageM errorDocUrierrorSuggestionsuggestionSpanshowSuggestion ansiColoransiColorReset colorCode colorCodeBoxdefaultCodeColordefaultPPEOptionsprettyPrintSingleErrorprettyPrintExportprettyPrintImportprettyPrintRefprettyPrintMultipleErrorsprettyPrintMultipleWarningsprettyPrintMultipleWarningsBoxprettyPrintMultipleErrorsBoxprettyPrintMultipleErrorsWithprettyPrintParseErrorprettyPrintParseErrorMessageslinelineS renderBoxtoTypelevelStringrethrow reifyErrors reflectErrorswarnAndRethrowrethrowWithPositionwarnWithPositionwarnAndRethrowWithPosition withPositionpositionedError filterErrorsescalateWarningWhenparU$fShowMultipleErrors$fSemigroupMultipleErrors$fMonoidMultipleErrors $fShowTypeMap $fShowLevelUnknown CheckStatecheckEnv checkNextType checkNextKindcheckNextSkolemcheckNextSkolemScopecheckCurrentModulecheckSubstitution checkHints Substitution substType substKindemptySubstitutionemptyCheckState bindNames bindTypeswithScopedTypeVarswithErrorMessageHintgetHintsrethrowWithPositionTCwarnAndRethrowWithPositionTCwithTypeClassDictionariesgetTypeClassDictionarieslookupTypeClassDictionaries#lookupTypeClassDictionariesForClassbindLocalVariablesbindLocalTypeVariablesmakeBindingGroupVisiblewithBindingGroupVisiblepreservingNameslookupVariable getVisibilitycheckVisibilitylookupTypeVariablegetEnvgetLocalContextputEnv modifyEnvrunCheck runCheck' guardWithcaptureSubstitutioncapturingSubstitutionwithFreshSubstitutionwithoutWarningsunsafeCheckCurrentModule SynonymMapreplaceAllTypeSynonymsreplaceAllTypeSynonymsMnewSkolemConstantintroduceSkolemScopenewSkolemScope skolemizeskolemizeTypesInValueskolemEscapeCheck freshType solveTypesubstituteTypeunknownsInType unifyTypes alignRowsWith unifyRowsreplaceVarWithUnknownreplaceTypeWildcards varIfUnknownsubsumeskindOfkindOfWithScopedVarskindsOf kindsOfAll SolverOptionssolverShouldGeneralizesolverDeferErrorsInstanceContextreplaceTypeClassDictionariesentailsnewDictionaries$fMonoidMatched$fSemigroupMatched$fShowEvidence $fEqEvidence$fShowEntailsResult $fEqMatched $fShowMatched$fFunctorMatched typeSearchBindingGroupTypeRecursiveBindingGroupNonRecursiveBindingGrouptypesOf$fShowBindingGroupType$fEqBindingGroupType$fOrdBindingGroupTypedesugarTypeDeclarationsModuleReapplyFromOpChaintoAssoc parseValueparseOpmatchOpopTablematchOperatorsmatchTypeOperatorsmatchExprOperatorsmatchBinderOperatorsdesugarSignedLiterals rebracketrebracketFilteredcheckFixityExportsdesugarObjectConstructors desugarDecl ExportModeInternalReExportEnvExports exportedTypesexportedTypeOpsexportedTypeClassesexportedValuesexportedValueOps exportedKindsImports importedTypesimportedTypeOpsimportedDataConstructorsimportedTypeClassesimportedValuesimportedValueOpsimportedModulesimportedQualModules importedKindsImportProvenance FromImplicit FromExplicitLocal ImportRecord importNameimportSourceModuleimportSourceSpanimportProvenance nullImports nullExportsenvModuleSourceSpanenvModuleImportsenvModuleExports primExportsprimEnv exportType exportTypeOpexportTypeClass exportValue exportValueOp exportKind getExportscheckImportConflicts$fEqImportProvenance$fOrdImportProvenance$fShowImportProvenance$fEqImportRecord$fOrdImportRecord$fShowImportRecord $fShowImports $fShowExports$fEqExportMode$fShowExportMode ImportDef findImportsresolveImportsresolveModuleImportwarnDuplicateRefsfindExportableresolveExportsdesugarDoModuledesugarCasesModuledesugarCaseGuards desugarCasesdesugarTypeClassestypeClassMemberNamesuperClassDictionaryNamescreateBindingGroupsModulecollapseBindingGroupsModulecreateBindingGroupscollapseBindingGroupsdesugarAdoModuleModuleSignature sigSourceSpan sigModuleName sigImports ModuleGraph sortModulesmoduleSignature UsedImports lintImportsdesugarImportsWithEnv externsEnvcheckExhaustiveExprlint checkNewtypetypeCheckModulederiveInstances$fMonoidNewtypeDerivedInstances"$fSemigroupNewtypeDerivedInstances$fShowNewtypeDerivedInstancesdesugar FixityAlias RenderedCodeRenderedCodeElementSyntaxKeywordSymbol ValueLevel TypeLevel KindLevelLinkNoLinkContainingModule ThisModule OtherModuleasContainingModulemaybeToContainingModulecontainingModuleToMaybefromContainingModule fromQualifiedasRenderedCodeElementasRenderedCode outputWithspsyntaxkeyword keywordForall keywordDatakeywordNewtype keywordType keywordClasskeywordInstance keywordWhere keywordFixity keywordKind keywordAsidentdataCtortypeCtortypeOptypeVarkindalias aliasName$fFromJSONContainingModule$fToJSONContainingModule$fFromJSONLink $fToJSONLink$fFromJSONNamespace$fToJSONNamespace$fNFDataNamespace$fToJSONRenderedCodeElement$fToJSONRenderedCode$fShowContainingModule$fEqContainingModule$fOrdContainingModule $fShowLink$fEqLink $fOrdLink$fShowNamespace $fEqNamespace$fOrdNamespace$fGenericNamespace$fShowRenderedCodeElement$fEqRenderedCodeElement$fOrdRenderedCodeElement$fShowRenderedCode$fEqRenderedCode$fOrdRenderedCode$fSemigroupRenderedCode$fMonoidRenderedCode renderKind renderRow renderType renderType'renderTypeAtomrenderTypeAtom'ASTUnaryBinaryIndexerFunctionBlockVariableIntroduction AssignmentWhileForForInIfElseReturnReturnNoResultThrow InstanceOfBinaryOperatorAddSubtractMultiplyDivideModulusEqualTo NotEqualToLessThanLessThanOrEqualTo GreaterThanGreaterThanOrEqualToAndOr BitwiseAnd BitwiseOr BitwiseXor ShiftLeft ShiftRightZeroFillShiftRight UnaryOperatorNegateNot BitwiseNotPositiveNewwithSourceSpan getSourceSpan everywhereeverywhereTopDowneverywhereTopDownM everything$fShowUnaryOperator$fEqUnaryOperator$fShowBinaryOperator$fEqBinaryOperator $fShowAST$fEqASTtcoapplyAll replaceIdent replaceIdents isReassigned isReboundisUsedtargetVariable isUpdatedremoveFromBlockisDictisDict'removeCodeAfterReturnStatementsremoveUndefinedApp magicDoEff magicDoEffect magicDoSTinlineST etaConvertunThunk evaluateIifesinlineVariablesinlineCommonValuesinlineCommonOperatorsinlineFnCompositioninlineUnsafeCoerceinlineUnsafePartialcollapseNestedBlockscollapseNestedIfsoptimizemoduleToCoreFnrenameInModules moduleToJSON parseVersion'moduleFromJSON LinkLocation LocalModule DepsModule BuiltinModuleDocLink linkLocation linkTitle linkNamespace LinksContext ctxGithub ctxModuleMapctxResolvedDependenciesctxPackageName ctxVersion ctxVersionTag InPackageFromDep PackageErrorCompilerTooOldErrorInPackageMetaInvalidVersionInvalidDeclarationTypeInvalidChildDeclarationType InvalidFixity InvalidKindInvalidDataDeclType InvalidTime GithubRepo runGithubRepo GithubUser runGithubUserChildDeclarationInfo ChildInstanceChildDataConstructorChildTypeClassMemberChildDeclaration cdeclTitle cdeclCommentscdeclSourceSpan cdeclInfoDeclarationInfoAliasDeclaration declTitle declComments declChildrendeclInfomodName modCommentsmodDeclarations modReExports ManifestErrorVerifiedPackageUploadedPackage NotYetKnownPackagepkgMeta pkgVersion pkgVersionTag pkgTagTime pkgModules pkgModuleMappkgResolvedDependencies pkgGithub pkgUploaderpkgCompilerVersion Constraint'Kind'Type' verifyPackage packageNamejsonTimeFormat formatTime parseTimeconvertFundepsToStringsdeclInfoToStringdeclInfoNamespace isTypeClassisValueisType isValueAlias isTypeAliasisKindfilterChildrenchildDeclInfoToStringchildDeclInfoNamespaceisTypeClassMemberisDataConstructor takeLocal takeLocals ignorePackagegetLinkgetLinksContextparseUploadedPackageparseVerifiedPackage asPackageparseTimeEitherasUploadedPackage asNotYetKnownasVerifiedPackagedisplayPackageError asGithubUser asVersionasModule asDeclaration asReExportpOr asInPackageasFixity asFixityAliasparseAssociativityasAssociativityasDeclarationInfoasTypeArgumentsasKindasType asFunDepsasDataDeclTypeasChildDeclarationasChildDeclarationInfo asSourcePos asConstraintasQualifiedProperNameasQualifiedIdent asSourceAnn asModuleMapbookmarksAsModuleMapasResolvedDependenciesparsePackageName'mapLeftasGithub asSourceSpanassocListToJSON$fToJSONNotYetKnown$fFromJSONNotYetKnown$fNFDataNotYetKnown$fToJSONDeclarationInfo$fNFDataDeclarationInfo$fToJSONChildDeclarationInfo$fNFDataChildDeclarationInfo$fToJSONChildDeclaration$fNFDataChildDeclaration$fToJSONDeclaration$fNFDataDeclaration$fToJSONGithubUser$fFromJSONGithubUser$fNFDataGithubUser$fToJSONGithubRepo$fNFDataGithubRepo$fNFDataPackageError$fToJSONInPackage$fFunctorInPackage$fNFDataInPackage$fNFDataModule$fToJSONPackage$fFromJSONPackage$fNFDataPackage$fNFDataLinksContext$fNFDataLinkLocation$fNFDataDocLink$fShowNotYetKnown$fEqNotYetKnown$fOrdNotYetKnown$fGenericNotYetKnown$fShowDeclarationInfo$fEqDeclarationInfo$fOrdDeclarationInfo$fGenericDeclarationInfo$fShowChildDeclarationInfo$fEqChildDeclarationInfo$fOrdChildDeclarationInfo$fGenericChildDeclarationInfo$fShowChildDeclaration$fEqChildDeclaration$fOrdChildDeclaration$fGenericChildDeclaration$fShowGithubUser$fEqGithubUser$fOrdGithubUser$fGenericGithubUser$fShowGithubRepo$fEqGithubRepo$fOrdGithubRepo$fGenericGithubRepo$fShowPackageError$fEqPackageError$fOrdPackageError$fGenericPackageError$fShowInPackage $fEqInPackage$fOrdInPackage$fGenericInPackage $fShowPackage $fEqPackage $fOrdPackage$fGenericPackage$fShowLinksContext$fEqLinksContext$fOrdLinksContext$fGenericLinksContext$fShowLinkLocation$fEqLinkLocation$fOrdLinkLocation$fGenericLinkLocation $fShowDocLink $fEqDocLink $fOrdDocLink$fGenericDocLinktags dumpEtags dumpCtagsrenderDeclarationrenderChildDeclarationrenderConstraintrenderConstraints notQualifiedident' dataCtor'typeApp toTypeVarprimDocsModuleprimRowDocsModuleprimTypeErrorDocsModuleconvertSingleModuleconvertCommentsupdateReExports$fMonoidTypeClassEnv$fSemigroupTypeClassEnv$fShowTypeClassEnv moduleToJsprettyPrintJSWithSourceMaps prettyPrintJScommentcomments sourcePos sourceSpan convertKind convertType convertExpr convertBinderconvertDeclarationconvertImportDecl convertModule pureResultparseModulesFromFilesparseFromFilesparseModuleFromFile parseFromFileunwrapParserErrortoMultipleErrorstoPositionedErrorfixCRLFreadUTF8FilesT readUTF8FileTwriteUTF8FileT readUTF8File writeUTF8FileunMakerunMakemakeIO getTimestampgetTimestampMaybe readTextFile readJSONFilereadJSONFileIO readCborFilereadCborFileIOreadExternsFilehashFile writeTextFile writeJSONFile writeCborFilewriteCborFileIOcopyFile$fMonadBaseControlIOMake$fMonadBaseIOMake $fFunctorMake$fApplicativeMake $fMonadMake $fMonadIOMake$fMonadErrorMake$fMonadWriterMake$fMonadReaderMake MakeActionsgetInputTimestampsAndHashesgetOutputTimestamp readExternscodegen ffiCodegenprogress readCacheDb writeCacheDboutputPrimDocsProgressMessageCompilingModule RebuildPolicy RebuildNever RebuildAlways cacheDbFile readCacheDb' writeCacheDb'buildMakeActionscheckForeignDecls$fShowRebuildPolicy$fEqRebuildPolicy$fOrdRebuildPolicy$fShowProgressMessage$fEqProgressMessage$fOrdProgressMessageBuildJobResultBuildJobSucceededBuildJobFailedBuildJobSkipped BuildPlanbpEnvbuildJobSuccessbuildJobFailure markComplete needsRebuildcollectResults getResult construct rebuildModulemakeinferForeignModulesgraphversion OtherError ProcessFailedIOExceptionThrown JSONSourceFromFileFromResolutions InternalErrorCouldntParseGitTagDateRepositoryFieldErrorRepositoryFieldMissingBadRepositoryType NotOnGithub UserErrorPackageManifestNotFoundResolutionsFileNotFoundCouldntDecodePackageManifestTagMustBeCheckedOutAmbiguousVersionsBadRepositoryFieldNoLicenseSpecifiedInvalidLicenseMissingDependencies CompileErrorDirtyWorkingTreeResolutionsFileErrorPackageWarningNoResolvedVersionUnacceptableVersionDirtyWorkingTree_WarnLegacyResolutionsFormat printErrorprintErrorToStdout renderErrorrenderWarnings printWarnings$fMonoidCollectedWarnings$fSemigroupCollectedWarnings$fShowPackageWarning$fShowRepositoryFieldError$fShowUserError$fShowInternalError$fShowJSONSource$fShowOtherError$fShowCollectedWarnings$fEqCollectedWarnings$fOrdCollectedWarnings DirectiveHelpQuitReloadClearBrowseShowPasteCompletePrint ReplQuery QueryLoaded QueryImport QueryPrintCommand ExpressionShowHelp BrowseModuleQuitPSCi ReloadState ClearStateDeclsTypeOfKindOfShowInfo PasteLines CompleteStrSetInteractivePrintImportedModule PSCiState PSCiConfig psciFileGlobspsciImportedModulespsciLetBindingspsciLoadedExternspsciInteractivePrint psciImports psciExportsinitialPSCiStateinitialInteractivePrintpsciEnvironmentpsciImportedModuleNamesupdateImportedModulesupdateLoadedExterns updateLetssetInteractivePrint replQueriesreplQueryStrings showReplQueryparseReplQuery$fShowPSCiConfig$fShowPSCiState $fEqReplQuery$fShowReplQuery $fShowCommand $fEqDirective$fShowDirective directivesdirectiveStringsdirectiveStrings'strings stringsFor stringFordirectivesFor' directivesFordirectiveStringsForparseDirectivehelpguideURL helpMessageprologueMessagenoInputMessagesupportModuleMessage quitMessagetextTprintModuleSignatures parseDotFile parseCommandsupportModuleNamesupportModuleIsDefined loadModuleloadAllModulescreateTemporaryModulecreateTemporaryModuleForKindcreateTemporaryModuleForImports importDecl indexFile modulesDir internalSpan CompletionMliftCompletionM completion completion'formatCompletions$fShowCompletionContext handleCommandDigraph _unDigraph GraphName _unGraphNameGraph graphNamedigraphSuperMap _unSuperMap prettyPrinttypeClassGraphtypeClassPrologue typeClassBodytypeClassEpilogue superClasses $fOrdSuperMap $fEqSuperMap $fEqGraphName$fShowGraphName $fEqDigraph $fShowDigraph $fEqGraph $fShowGraph JSONResultwarningserrors JSONErrorpositionmessage errorLinkfilename suggestionallSpans replacement replaceRange ErrorPosition startLine startColumnendLine endColumn$fShowErrorPosition$fEqErrorPosition$fOrdErrorPosition$fShowErrorSuggestion$fEqErrorSuggestion$fShowJSONError $fEqJSONError$fShowJSONResult$fEqJSONResult$fFromJSONErrorPosition$fToJSONErrorPosition$fFromJSONJSONError$fToJSONJSONError$fFromJSONJSONResult$fToJSONJSONResult toJSONErrors toJSONError$fFromJSONErrorSuggestion$fToJSONErrorSuggestionIdeTypeOperator_ideTypeOpName_ideTypeOpAlias_ideTypeOpPrecedence_ideTypeOpAssociativity_ideTypeOpKindIdeValueOperator_ideValueOpName_ideValueOpAlias_ideValueOpPrecedence_ideValueOpAssociativity_ideValueOpType IdeInstance_ideInstanceModule_ideInstanceName_ideInstanceTypes_ideInstanceConstraints IdeTypeClass _ideTCName _ideTCKind_ideTCInstancesIdeDataConstructor _ideDtorName_ideDtorTypeName _ideDtorTypeIdeTypeSynonym_ideSynonymName_ideSynonymType_ideSynonymKindIdeType _ideTypeName _ideTypeKind _ideTypeDtorsIdeValue_ideValueIdent _ideValueTypeIdeDeclaration IdeDeclValue IdeDeclTypeIdeDeclTypeSynonymIdeDeclDataConstructorIdeDeclTypeClassIdeDeclValueOperatorIdeDeclTypeOperator IdeDeclModule IdeDeclKind ModuleMap ModuleIdent _IdeDeclValue _IdeDeclType_IdeDeclTypeSynonym_IdeDeclDataConstructor_IdeDeclTypeClass_IdeDeclValueOperator_IdeDeclTypeOperator _IdeDeclKind_IdeDeclModuleanyOf$fShowIdeValue $fEqIdeValue $fOrdIdeValue$fGenericIdeValue$fNFDataIdeValue $fShowIdeType $fEqIdeType $fOrdIdeType$fGenericIdeType$fNFDataIdeType$fShowIdeTypeSynonym$fEqIdeTypeSynonym$fOrdIdeTypeSynonym$fGenericIdeTypeSynonym$fNFDataIdeTypeSynonym$fShowIdeDataConstructor$fEqIdeDataConstructor$fOrdIdeDataConstructor$fGenericIdeDataConstructor$fNFDataIdeDataConstructor$fShowIdeInstance$fEqIdeInstance$fOrdIdeInstance$fGenericIdeInstance$fNFDataIdeInstance$fShowIdeTypeClass$fEqIdeTypeClass$fOrdIdeTypeClass$fGenericIdeTypeClass$fNFDataIdeTypeClass$fShowIdeValueOperator$fEqIdeValueOperator$fOrdIdeValueOperator$fGenericIdeValueOperator$fNFDataIdeValueOperator$fShowIdeTypeOperator$fEqIdeTypeOperator$fOrdIdeTypeOperator$fGenericIdeTypeOperator$fNFDataIdeTypeOperator$fShowIdeDeclaration$fEqIdeDeclaration$fOrdIdeDeclaration$fGenericIdeDeclaration$fNFDataIdeDeclaration ideValueIdent ideValueType ideTypeDtors ideTypeKind ideTypeNameideSynonymKindideSynonymNameideSynonymType ideDtorName ideDtorTypeideDtorTypeNameideTCInstances ideTCKind ideTCNameideInstanceConstraintsideInstanceModuleideInstanceNameideInstanceTypesideValueOpAliasideValueOpAssociativityideValueOpNameideValueOpPrecedenceideValueOpType Annotation _annLocation_annExportedFrom_annTypeAnnotation_annDocumentationIdeDeclarationAnn_idaAnnotation_idaDeclarationideTypeOpAliasideTypeOpAssociativity ideTypeOpKind ideTypeOpNameideTypeOpPrecedence$fShowAnnotation$fEqAnnotation$fOrdAnnotation$fGenericAnnotation$fNFDataAnnotation$fShowIdeDeclarationAnn$fEqIdeDeclarationAnn$fOrdIdeDeclarationAnn$fGenericIdeDeclarationAnn$fNFDataIdeDeclarationAnnannDocumentationannExportedFrom annLocationannTypeAnnotation IdeNamespaced IdeNamespace IdeNSValue IdeNSType IdeNSKind IdeNSModuleSuccessCompletionResult TextResult UsagesResultMultilineTextResult ImportList ModuleListRebuildSuccess Completion complModulecomplIdentifier complTypecomplExpandedType complLocationcomplDocumentationcomplExportedFromMatchIdeVolatileState vsAstDatavsDeclarationsvsCachedRebuild IdeFileState fsExterns fsModulesIdeState ideFileStateideVolatileStateIdeIdeEnvironment ideStateVarideConfigurationideCacheDbTimestampIdeConfigurationconfOutputPath confLogLevel confGlobs IdeLogLevelLogDebugLogPerfLogAll LogDefaultLogNoneAstDataTypeAnnotationsDefinitionSites idaAnnotationidaDeclarationemptyAnn emptyIdeStateemptyFileStateemptyVolatileStateidentifierFromDeclarationRef encodeSuccess encodeImport$fToJSONCompletion$fToJSONSuccess$fFromJSONIdeNamespace$fShowIdeLogLevel$fEqIdeLogLevel$fShowIdeFileState $fShowMatch $fEqMatch$fFunctorMatch$fShowCompletion$fEqCompletion$fOrdCompletion $fShowSuccess$fShowIdeNamespace$fEqIdeNamespace$fOrdIdeNamespace$fGenericIdeNamespace$fNFDataIdeNamespace$fShowIdeNamespaced$fEqIdeNamespaced$fOrdIdeNamespaced$fGenericIdeNamespaced$fNFDataIdeNamespaced $fShowAstData $fEqAstData $fOrdAstData$fGenericAstData$fNFDataAstData$fFunctorAstData$fFoldableAstData$fShowIdeVolatileState$fShowIdeStateidePrimDeclarations labelTimespeclogPerfdisplayTimeSpecDeclarationTypeValueSynonymDataConstructor TypeClass ValueOperator TypeOperatordeclarationType$fFromJSONDeclarationType$fShowDeclarationType$fEqDeclarationType$fOrdDeclarationTypeIdeError GeneralErrorNotFoundModuleFileNotFound ParseError RebuildErrorprettyPrintTypeSingleLine$fToJSONIdeError$fShowIdeErroridentifierFromIdeDeclarationnamespaceForDeclaration discardAnn withEmptyAnn unwrapMatchvalueOperatorAliasTtypeOperatorAliasTencodeTdecodeT properNameTidentTopNameT ideReadFileReexportResult reResolvedreFailedprettyPrintReexportResultreexportHasFailuresresolveReexportsresolveReexports'$fNFDataReexportResult$fShowReexportResult$fEqReexportResult$fFunctorReexportResult$fGenericReexportResultMatcher flexMatcher runMatcher$fFromJSONMatcher$fSemigroupMatcher$fMonoidMatcherFilter moduleFilternamespaceFilter exactFilter prefixFilterdeclarationTypeFilter applyFilters$fFromJSONFilter$fShowDeclarationFilter $fShowFilterextractAstInformationextractTypeAnnotations extractSpansreadExternFileconvertExterns resetIdeStategetOutputDirectoryupdateCacheTimestampgetLoadedModulenamesgetExternFiles insertModule getFileState getAllModules insertExternsinsertExternsSTM cacheRebuild cachedRebuildpopulateVolatileStateSyncpopulateVolatileStatepopulateVolatileStateSTMresolveInstancesresolveOperatorsForModule resolveDataConstructorsForModule findUsagesfindReexportingModulesdirectDependantseligibleModules applySearch rebuildFilerebuildFileAsyncrebuildFileSyncCompletionOptions coMaxResultscoGroupReexportsgetCompletionsgetExactMatchesgetExactCompletionsdefaultCompletionOptionsapplyCompletionOptions simpleExportcompletionFromMatch$fFromJSONCompletionOptions$fShowNamespaced$fEqNamespaced$fOrdNamespacedparseImportsFromFilesliceImportSectionaddImplicitImportaddImplicitImport'addQualifiedImportaddQualifiedImport'addExplicitImport'addImportForIdentifierprettyPrintImport'prettyPrintImportSection answerRequest parseImportWildcardAnnotationsexplicitAnnotations noAnnotations caseSplit makePattern addClauseListType LoadedModulesAvailableModules ImportCommandAddImplicitImportAddQualifiedImportAddImportForIdentifierLoadLoadSync CaseSplit AddClause FindUsagesListRebuild RebuildSyncCwdReset typeFilterstypeCurrentModulecompleteFilterscompleteMatchercompleteCurrentModulecompleteOptions caseSplitLinecaseSplitBegin caseSplitEndcaseSplitAnnotations caseSplitType addClauseLineaddClauseAnnotations usagesModuleusagesIdentifierusagesNamespacelistType commandName$fFromJSONImportCommand$fFromJSONListType$fFromJSONCommand$fShowImportCommand$fEqImportCommandmodulesAsMarkdownmoduleAsMarkdown codeToStringrunDocs $fShowFirst $fEqFirst $fOrdFirstHtmlRenderContext buildDocLink renderDocLinkrenderSourceLinkHtmlOutputModulehtmlOutputModuleLocalshtmlOutputModuleReExports HtmlOutput htmlIndex htmlModules declNamespacenullRenderContext packageAsHtml moduleAsHtml makeFragmentrenderMarkdown$fShowHtmlOutputModule$fFunctorHtmlOutputModule$fShowHtmlOutput$fFunctorHtmlOutput collectDocsPrepareMPublishOptionspublishGetVersionpublishGetTagTimepublishWorkingTreeDirtypublishCompileOutputDirpublishManifestFilepublishResolutionsFiledefaultPublishOptionsunsafePreparePackagepreparePackage runPrepareMwarn userError otherErrorpreparePackage' getModulesgetGitWorkingTreeStatuscheckCleanWorkingTreegetVersionFromGitTaggetManifestRepositoryInfo$fMonadIOPrepareM$fFunctorPrepareM$fApplicativePrepareM$fMonadPrepareM$fMonadWriterPrepareM$fMonadErrorPrepareM$fShowTreeStatus$fEqTreeStatus$fOrdTreeStatus$fEnumTreeStatus$fShowDependencyStatus$fEqDependencyStatusghc-prim GHC.TypesTrueFalse codePointsHappyStkbase GHC.MaybeNothingclosedRecordFieldsoptimizeUnusedPartialFn getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName ModuleElementKeycheckImportPathwithDepstoModulecompile isModuleEmptycodeGenGHC.ErrfilterDataConstructorsfilterInstancestypeInstanceConstituentsisDctorExportedreorderdesugarLetPatternprettyPrintRowWithlistprettyPrintValueAtom occursCheckCoercionModeSingModedefaultCoercion subsumes' freshKind solveKindsubstituteKind unifyKinds solveTypes starIfUnknowninfer EntailsResultSolvedUnsolvedDeferredMatching TypeClassDictEvidence NamedInstance WarnInstanceIsSymbolInstanceEmptyClassInstancenamedInstanceIdentifier pairwiseAll pairwiseAny checkSubsumeaccessorSearchSplitBindingGroup_splitBindingGroupUntyped_splitBindingGroupTyped_splitBindingGroupNames TypedValue'tvToExprtypeDictionaryForBindingGroupcheckTypedBindingGroupElementtypeForBindingGroupElement checkTypeKindinstantiatePolyTypeWithUnknownsinfer' inferBinderbinderRequiresMonotypeinstantiateForBinders checkBinderscheckcheck'checkPropertiescheckFunctionApplicationcheckFunctionApplication'ensureNoDuplicateProperties FixityRecordGHC.NumprimBooleanExportsprimOrderingExportsprimRowExportsprimRowListExportsprimSymbolExportsprimTypeErrorExports mkPrimExports addExportthrowDeclConflictthrowExportConflictthrowExportConflict' resolveImport filterModule desugarDodesugarGuardedExprs validateCasestoBindingGroup desugarAdo usedModuleselaborateExportsreorderExportsrenameInModuleRedundancyError qualifyNamegetConstructors initialize genericMergemissingCasesSinglemissingCasesMultipleisExhaustiveGuardGHC.Base otherwise missingCasescheckExhaustivecheckTypeSynonyms typeCheckAllcheckTypeClassInstanceNewtypeDerivedInstances ndiClassesndiDerivedInstancesextractNewtypeNamederiveInstanceMaybetryAlltryParseunpackFixityAliasfindQualModulesimportToCoreFnexternToCoreFnexportToCoreFnmkTypeClassConstructor properToIdent RenameState rsBoundNames rsUsedNames runRenamenewScope updateScope lookupIdentfindDeclIdents renameInDecl renameInValuerenameInLiteralrenameInCaseAlternativerenameInBinderpure ApplicativelookupPrimClassOfDeclarationAugmentIntermediateDeclaration AugmentType AugmentClassaugmentDeclarations mkDeclaration TypeClassEnvenvUnhandledMembers envValuesenvTypeClasses getReExportscollectDeclarationslookupTypeDeclarationlookupModuleDeclarations handleEnvfilterTypeClassMemberstypeClassConstraintForprettyPrintJS'insertValueTypespartiallyDesugarIOString mtl-2.2.2Control.Monad.Error.Class MonadErrorcatchDoesNotExistrenderProgressMessage RebuildStatusstatusNewCacheInfostatusPrebuiltbjResultpsciExpression psciImportpsciDeclarationfindCompletionshaskeline-0.7.4.3#System.Console.Haskeline.CompletioncompleteWordWithPrevcompletionContext printErrorsrebuildhandleReloadStatehandleClearStatehandleExpression handleDeclshandleShowLoadedModuleshandleShowImportedModules handleImport handleTypeOf handleKindOf handleBrowsehandleCompletehandleSetInteractivePrintinsertModuleSTMgetFileStateSTMgetVolatileStategetVolatileStateSTMsetVolatileStateSTMSearch matchesRefdayZerorebuildModuleOpen shushProgress shushCodegen sortExternsopenModuleExports updateCacheDb ImportParse ipModuleNameipStartipEnd ipImportsparseImportsFromFile'addExplicitImportfindAvailableExternsfindAllSourceFilesloadModulesAsynccompileForDocsoperateAndRetaggetModulePackageInfo NoResolution ResolvedOtherResolvedVersion getTagTime isValidSPDX asResolutionsasLegacyResolutions handleDeps