Ü+%,0,E¡…áÿ,                      £´A@ A   ÿÿÿÿ èÿÿÿÿÿÿÿðÿÿÿÿÿÿÿøÿÿÿÿÿÿÿ :cc  v  mqB ÿÿÿÿÿÿÿÿ= ‚:‚‰‰‚‡ •• ‡‚‚‚•£´B•‡´B      ‚‚‚‚‚ Há Ø Ø¾Ùv ÚâÙÝ Ø  ::ô 0óö -ÿÿÿÿÿÿÿÿ ö sigil:c h   ì   œœ:¨À¶ ÿÿÿÿÿÿÿÿ•¶ ì H œ•E‚‚ ‡ ‡‚••   ‡‚‡9‡‡‡ ¶¸áˆ؈ì •…B£&Ž˜BDL,´-ˆ,u5030r0ƒ%I&ú,•,f+ð0¬.>(4ä%4Ñ1)®)n14¸.T6h'm)Y.+ì‚ïííïèÿÿÿÿÿÿÿðÿÿÿÿÿÿÿøÿÿÿÿÿÿÿ‚ : åâ«å« retro.muri®øÎkˆ dup®øٕ|drop ®ø@&ž|swap®ø•|call ®øZoˆ eq?*®øyw|-eq?3!®ø„ˆ lt?=#®ø?xˆ gt?F%®øo n1fetchO'®øR…a1storeZ)®øе+e+®øÒµ-l-®øϵ*s/®ø´³x|/modz1®ø^ˆ and„3®øyYor5®øÀˆ xor•7®øÃÕZ1shiftž´øåzœ|push©‚´øžˆ pop³|´ø°pY0;¼:¨ø»›Åprfetch-nextÄ=¨ø~ÐuÖürrstore-nextÔ ¨øKayˆŸ ÉÀs:to-numberäv¨ø‡ŒA1s:eq?õh¨øԔF{çs:lengthB¨øætföRchooseL®ø4xYifJ¨øA€‡ -if"1´øßԙ”¶Ðsigil:(+•œø@ÊÖ·®åCompiler8œøcE†|HeapF‚¨øѵ,P¨øDyYs,W–´øàµ;_S´ø¶[fc´ø¶]mœø[çcKc.krDictionarytµ¨øwyõRd:link„¶¨øì”|d:xt¸¨øù뤱Ðd:classš¾¨ø¤mzõRd:name§¨¨øQ•<°Nprclass:word³´¨ø‡_›²$zÀclass:macroÃœ¨øÏî1°Nprclass:dataÔÀ¨øÂZø‚Þ&bÏd:add-headerä2´øÚԙ”¶Ðsigil:#ö8´øñԙ”¶Ðsigil::K´øÝԙ”¶Ðsigil:&6´øÛԙ”¶Ðsigil:$r´øfì-Srepeat*t´ø¥n1again6¡¨ø2»ÌwinterpretAì¨ø=® :ææd:lookupP®¨øŽ¹‘dU(Œclass:primitive^œø+Ô¸Ó­ÐVersionsШø¶i€‚¨ø ¶d‡Ê¨ø¶rŽóœø`ì‚|Base•\¨øÄ#œ|packŸN¨ø2Ð Sunpack©º¨øT0xJææd:sourceµ¼¨ø'$wõRd:hashÃ…¨øµhª7çIÑerr:notfoundconstshctioning?@[\]^`{|}~HIJKLMNOPQRSTUVWXYZÏ ¨æ⇠EOMýÿÿÿÿÿÿÿ ¨šàI1depthÿÿÿÿÿÿÿÿ (¨·UyõRd:last ;¨ñaÚ]­Ãwd:last.xt(¶ ,S¨›.ÐûôcÏd:last.class(¸ Aj¨äô=|dwÀd:last.name(¾ Y|¨’>¶Ðreclass(¸ o‘¨´?  Ìwimmediate´| ‚ ¨_‘•|dataœ| –´¨vq¶1Õwprimitive®| ¥Ã´Öý—|hook‚‚ ¹Þ¨/‰ÿ ˆçset-hook Ðï¨ Ì Sunhook ã´Íµ( ù´Îµ) ¨‘nwʍ²zÀcompile:lit‚‚ 3¨„ZdGÑÏcompile:jump‚‚ !L¨¤.`GÑÏcompile:call‚‚ :d¨“‡wʍ²zÀcompile:ret ‚ Sy¨f¬ŠüRprcompiling?• iŠ´ՙ”¶Ðsigil:` ‚ }œ´ՙ”¶Ðsigil:\Ð ¬´ՙ”¶Ðsigil:^Ê Ÿ¹¨©Ó—|here ¯Ê´÷ԙ”¶Ðsigil:@ì¶yÚ‚‚ Óà ÞB ½ò´Øԙ”¶Ðsigil:!ì¶y‚‚ û B 娗ãR%ææd:createœÀ¹(¶ 6¨‰g1var-n‚ +D¨Îµˆ var6 ;S¨L;=1const(¶ He®\ªž|tuck [q®ñ›|over g|®Ì”ˆ nip s®ý8ÚÅwdrop-pair ~™®MT|?dup ©¨G`wü÷ædup-pair ›µ¨Bjˆ dip ¬Á¨ªˆ sipµ ¸Ï¨PwYbiÁµ ÇÞ¨zaˆ bi*µµ Õí¨aˆ bi@Þ äú¨t¯ˆ tri ÁµÁ üµ ñ ¨žž|tri*$  µµ  µµ  µ 4 ¨4žž|tri@ * D ¨~8£1whileM F  F  9 ] ¨1€‚1untilh ÿÿÿÿÿÿÿÿ_  _  R z ¨>¿¨º²Ðforever~  | Áz  m ‘ ¨‡‹m1times ”  “  † ¯ ´3ՙ”¶Ðsigil:|ì· ¶ ³ ¿ ¸ » ÏyÎ œµL Ç B ¢ ß ¨e‡Œ|TRUEÿÿÿÿÿÿÿÿ Õ í ¨P¦ 1FALSE â ú ¨á•|caseÿ  ü µ ß   í  B ð ( ¨®ÇqSs:case. v * µ: ß 5 B í > B  T ¨–•ˆ notÿÿÿÿÿÿÿÿ K c ¨ú®â1lteq?©   X s ¨u4ˆ1gteq?c h ‚ ¨Ó¥æ1n:MAXûÿÿÿÿÿÿÿ w ‘ ¨Ñ¦æ1n:MINüÿÿÿÿÿÿÿ † ¢ ¨ ði§´Ðn:zero? • ´ ¨ù­âHçn:-zero? ¦ É ¨ŸžwJÐЭÀn:negative? ¸ Þ ¨ïfÆÓ­Àn:positive?ÿÿÿÿÿÿÿÿ Í ü ¨êÀ•Hìn:strictly-positive? â ¨z÷¥´Ðn:even?¢ ¨Ã›Î Sn:odd? T  . ¨ï~ˆ if;Lµ % A ¨œˆw|-if;JµT  7 U ®š¦ˆ rot L ^ ®Ôµ/ W i ®E‘ˆ mod ` v ¨Ã@ç1n:pow~  { ‘  k ’ ¨Í£xIçn:negateÿÿÿÿÿÿÿÿ „ ¤ ¨¾k.…Içn:square – ² ¨—Ñ Sn:sqrtÄ ©¶  ¶  ¦ Ô ¨13ç1n:min© Û  Ù á  ß B É ñ ¨32ç1n:max©ø  ö þ  ü B æ  ¨Cÿæ1n:absÉ ’  " ¨¬´n¦´Ðn:limitÔ ñ  5 ¨Ç"ç1n:inc  * C ¨Y ç1n:dec  8 V ¨67=ßqrn:between?^ " Y Á F s ¨»Äû€†¯wScopeListæ*W+ d ~ ¨›zY{{(s = v ™ ¨²,ý¨---reveal---(s 5  ‡ © ¨ßzY}}s : · s  ² Ñ s Ì s 5  Á  ¿  » B ¡ à ¨Byte Ö ð ¨byte-maskÿþ ’  ù µ á  ¨replace. ) $  à  µ  µ  µ  ú H C > à : µ 8 µ 6 ú [ V à R µ P ú g à c ú  ¡ „ ¨8ÂpF”=;Ÿb:to-byte-address m • ¨ 4E ±Ðb:fetchð ˆ ° ¨î˜8 ±Ðb:storeà ¾ N ¹ µ \ £ Ö ¨‘ "زÐh:fetchÛ • Ø ç 5 • øÿÿÿÿÿÿÿ ß Ï É ú ¨tÙ²Ðh:store©ÿ þ µ° 5 ÿ  µ° í '¨à/ÌZ·Ðw:fetch 9¨Ã”¿[·Ðw:store ,P¨Ìy±ª«§¶Üw:fetch-next' >j¨oÌÿ:1Òh:fetch-nextÖ X„¨×к¦TÜûÍb:fetch-next• rž¨dæl߸Üw:store-next9µ Œ¹¨à룲Àr3Òh:store-nextú µ §Ô¨š»ïŒþÍb:store-next° µ Âë¨÷t¨Ï˜çv:inc-byï íÁ ݨIÍ[Øçv:dec-by Á õ¨Ïæw1v:incë )¨aÐw1v:dec <¨´š@·Ðv:limit"  /L¨²Éž|v:onß  B[¨Pÿw1v:offí  Pj¨!\1allotë _¨aïíR1srv:preserve‡µ ‚µ o›¨XùËë˜çv:update¢ žÁ ²¨ @•|copy» ´‘  ¨Ìœstart Áלend Îè¨terminate× ¨¨Ç¼ Üå<Ïbuffer:startÌ î¨•QÀ*0prbuffer:end× &¨Â‚QÀ*0prbuffer:add××è @¨yœQÀ*0prbuffer:get×)×è 0\¨(Ï Üå<Ïbuffer:emptyÌ×è Jt¨Tҋʂ5vÀbuffer:size×Ì cŠ¨…ÏQÀ*0prbuffer:setÌ\ z¤¨%ÙU¶žwÇÓbuffer:preserveÌ×±µÌ ªµ× Éœ…=ÌGùm'ÀTempStrings ¸ÝœÑkjѺgTempStringMaxÊë¨ÛǬÐSTRINGS ÉÝ ÞœCurrent ô¨s:pointerÝë '¨s:nextÉ 7 2 ÞG¨h*{Ss:temph5 ²' ;c¨¡xÕ&¶Ðs:empty' Vx¨ ·zSs:skip€ {D C  l”¨÷9vSs:keepyxL ˜ ¹µœ ˆ¶´Þԙ”¶Ðsigil:'y”GB ©Ì¨Ü<ã&¶Ðs:fetch ¿Ü¨¿¡Ö'¶Ðs:store Ïë¨üäqSs:chopGhC  ߨn@†ßÖws:reverse2GŠhhC Ï(&C !‘ G  ¤ ùF¨À·‹ÞÖws:prependG^hVh5 Pµ² JÁ 7q¨êòeøzçs:appendF c…¨G­úK²rrs:for-each”‡ ‡ u«¨×˜«òèÙs:index/char¹´ÿÿÿÿÿÿÿÿ ¯µ ­µÝ ÕÐÊ Èµ Ƶ Ä 5 µ À… ™ù¨ÝÆßkâs:contains/char?«ÿÿÿÿÿÿÿÿ ã ¨–…tSs:hash! … ÿ!œStr/¨extract©!²! "J¨check/µU5 µ Pµ!  ?n¨locationŠ|¢  wµ† ƒ tµ rµ `Ÿ¨setupc!h ϳh ¯µ ÿͨp*†²Ïí÷s:index/stringàŸÙJn Ô‘  еÿÿÿÿÿÿÿÿñ ¹öœSrcíœTar÷ œPadœI œF#œAt3¨terminate h $K¨extractö h² >f¨compare vz# uJ Y‰¨next ¹¦¨V,3ääÞf¦s:contains/string?öc öhÅK3f‰ ¼‘  ŽÚ¨¸{çs:filteröcŠî©&B ã… Ü¤ ̨°¬A1s:mapcŠ& … ¤ û/¨Õ×µ"{çs:substr5c 1µA²µ ;ÁN Hµ !`¨Ð]¾'¶Ðs:righth/ Su¨}ÆvSs:left/ i¨RÞòlÔòs:begins-with?hµuv {­¨"X‚AIèÙs:ends-with?hµ`v ›Å¨írSs:copyh5 ² ¹Û¨ö¦ç±zçs:DIGITSx0123456789ABCDEFÝ Í¨íäޣݑóÓs:ASCII-LOWERCASExabcdefghijklmnopqrstuvwxyz  ñ?¨ ©hóÓs:ASCII-UPPERCASExABCDEFGHIJKLMNOPQRSTUVWXYZA (t¨Kýƒ³þÖ!Ds:ASCII-LETTERSxabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZv _Á¨ì±™ýïzs:PUNCTUATIONx_!"#$%&'()*+,-./:;<=>?@[\]^`{|}~Ã_ ®ýœ¿fn÷œÈåÙs:WHITESPACE ë ´Ìµ'c¨ ´Éµ$œ œßôӗwASCII:NULœƒ¸ôӗwASCII:ESC)œÝ¯'’åASCII:BS8 œ¤°'’åASCII:HTF œ±'’åASCII:LFT œr²'’åASCII:VTb œT°'’åASCII:FFp œý¯'’åASCII:CR~ œ”—is¡Ü¼¿ASCII:SPACEŒœ}²ôӗwASCII:DELœ’óôӗwASCII:SOH¬œGôôӗwASCII:STX»œ¹¸ôӗwASCII:ETXÊœ¸ôӗwASCII:EOTÙœì·ôӗwASCII:ENQèœw¥ôӗwASCII:ACK÷œû©ôӗwASCII:BELœ ²'’åASCII:SOœ²'’åASCII:SI#œ]³ôӗwASCII:DLE1œ ²ôӗwASCII:DC1@œ!²ôӗwASCII:DC2Oœ"²ôӗwASCII:DC3^œ#²ôӗwASCII:DC4mœ‚ÜôӗwASCII:NAK|œâôôӗwASCII:SYN‹œ£¸ôӗwASCII:ETBšœº­ôӗwASCII:CAN©œ:°'’åASCII:EM¸œRôôӗwASCII:SUBÆœa°'’åASCII:FSÕœ‚°'’åASCII:GSãœí±'’åASCII:RSñœP²'’åASCII:USÿ¨¦Ð¡öHv°Îc:lowercase?azV 8¨©‰°1ó±Îc:uppercase?AZV &N¨ñ”ÅòeÂwc:letter?8Ï ?d¨r•Ä:Üæc:digit?09V V{¨/‡Õ¶ˆprc:visible? ~V k¨Î·6eÜæc:vowel?xaeiouAEIOU’ù ‚µ¨t i³ ú®Îc:consonant?N¿T ºÇí ÃB £ß¨> .áù¤c:whitespace?ýù Ìø¨Så Žêg£c:-lowercase?T å¨VžCvgi£c:-uppercase?8T ý$¨Ÿ[ þRÂwc:-digit?dT =¨[®êvޟc:-whitespace?ßT )S¨œŒho½£qÀc:-visible?{T Bg¨û}(SÂwc:-vowel?T X¨!"ÓÜRnf£c:-consonant?µT l”¨~Ç vprc:to-upper  „­¨[Ç# vprc:to-lower8  Ç¨©œH>7þqÀc:to-stringx.ÉG'Á ¶ç¨­C•¹¶²ê¤c:toggle-case”­B Ô¨; ®27þqÀc:to-numberd 0  B ñ(¨Ž$pJÖ²rrs:to-upper” =¨kÙÌIÖ²rrs:to-lower­ -S¨ÆxPÏ ÉÀs:trim-leftGa:ß´ Ï WD C Bz¨9qù_¹ÇêÙs:trim-rightGS h¨.a{Ss:trimzS ƒ¬œöyžÛt úRewriteUnderscoresÿÿÿÿÿÿÿÿ”¶¨sub_½ ºú ­Ï¨rewrite¬Ø¶ Ó Âè¨handle¶ ”ù´Þԙ”¶Ðsigil:'Ïè 쨫±¤›êÙs:split/char©«©u)µ þ2¨D¤» ¦ýþs:split/string©Í5 ©u)µ Q¨®9ßÖws:replaceh¹a2¹ YµFq BxœSplit-Onj…¨match?x y˜¨terminateC  ‰©¨step5 µ…·‚˜ ± B˨›?íÙÖ²rrs:tokenizex”¹‚á‚©… ×µ¹C  »úœNeedleLenzœTokens„œTP#¨save”5  <¨nextBƒ >Á 2R¨done?h¢ »q¨iµÎ®ÐÝs:tokenize-on-stringúÅq wˆhƒ ƒÏ™ú2#<R Ž] C  W³œString§¨check-signÉ -&   õ ¨n->digitÛ 2¨convert@ó &¢ 4]  WW¨tfDùÎØ­Àn:to-stringe³Š 2 Y¤³ Fx¨char _& |ú rŽ & ‰ú n› & –ú t¨ & £ú 0µ& °ú ^Â& ½ú & nÓ¨typecÛ& ×ú sé&… ãú nùW&… ñú  É ¨handle\ :x  ú %! :Ó  ú & F6 ¨»Þþ{çs:formatS cN ŠI : @  @  < Á 8 ¤ ( e ¨¹W²&¶Ðs:const”µS X x œValuesl ž ¨fromh° © x  ¥ ÁC £ ‘  ” ¾ ¨tohÎ :a5 x  à ‘  X á ¨ØŒà>¶Ðreorderž µ¾ Ô ó ¨z–@1curry¹ý 3 ÷ µ è !¨˕|does;ó (¶¨| !+!¨(ƾ!9prd:for-eachE!©=!8! 6!µ 4!µ/! /! ![!¨v0¬åewÀd:lookup-xtt!©¶ m!|µ g!B `!+! J!‚!¨ïwYgc z!–!¨¥tÈæa:length ˆ!¦!¨ž=wÈæa:middle¹½!‚³!5  ¯!µ¹² ª!µ ˜!Î!¨+ëyîRa:left¦! Â!á!¨>&¾°Ða:right–!¦! Ô!"¨‹NÎ Ü}a:counted-results¹"‚‚‘ "µ ê!&"¨øës=çüSva:from-string¹4"h‚‚… *"µ "I"¨Åﱺora:for-each:µY": R"‘  9"j"¨éÏû1a:dup¹w"‚‚I" n"µ _"ˆ"¨›'uîRa:copy˜"–!‚‚I" Œ" |"®"¨'23JgÀa:to-string»"j"‚5 ²"G "Ð"¨ûÄ[Èæa:append©%í¹é"‚ä"‚I" ß"í Û"µ Â"ý"¨®÷ZØ¿wa:prependÐ" î" #¨ª uîRa:chopj"ÿÿÿÿÿÿÿÿj) #%#¨æ'îfÈæa:filter4#µ‚B '#ó ¹C#‚I" <#µ¹C  #a#¨~›ÍŸgÀa:contains?m#  f#I" P#‹#¨Ƥ&hz$Ôa:contains/string?˜#v #I" s#©#¨žóû1a:mapÇ#:Á#¶# ²#Á'Á5 °#‘  ¬#Á ž#Û#¨\NÆ×Ø¿wa:reverse¹ý#:ç#C ã#Á‚÷#‚C ð#‘  ß#µ Ì# $¨\F“|a:th5 $$¨J÷J½°Ða:fetch $ $.$¨-\>¾°Ða:store $ !$?$¨h"M½°Ða:first$ 2$P$¨ÔÛyîRa:last–!C $ D$f$¨XNŸ‚Èæa:reduceµI" X$w$¨؄|FREEë ¹ m$•$œNextArray†$¢$¨arraysë  m$º$¨O~îRa:temp•$ É$•$ Â$ ¢$–!5 ²•$¢$•$ ®$ñ$œCountæ$ÿ$¨prepareñ$ ò$%¨reserve‚ %#%¨patch¹C  %9%¨cleanupº$ ,%M%¨recordñ$‚ A%^%¨match? R%p%¨iterate/n|%^%M% ñ$ r%I" a%%¨match?v % %¨iterate/s¬%%M% ñ$ ¢%I" ®$À%¨д6Ö¿wa:indicesÿ$¹Ì%%p% Æ%µ#%9% ±%ë%¨åiÉsåJSa:indices/stringÿ$¹÷%% % ñ%µ#%9% Õ% &¨x셽°Ða:index&À%$ &‚! &/&¨¦[­ÖBa:index/string8&ë%$ 1&‚! &I&¨gzîRa:make"T&Û# Q&ˆ" =&c&´ ¶{S´¨S´ \&w&´"¶}c´µ¨¨®+®C ¨c´I&¨ p&¤&¨DªwîRa:hash¯&! ©&I" ˜&¿&¨uÓû1a:eq?¤&¤& ´&Ò&¨‚`WîRa:-eq?¤&¤& Æ&í&¨Ñ›ÇãI½=a:begins-with?ý&–!µÎ!¿& ñ& Ù&'¨2‘;@-HÍa:ends-with?$'–!µá!¿& ' '9'œSubstitute)'Æ'¨extract9'Å ¹'Ø'¨combine9'qq Ë'í'¨find-endh9'h ß'(¨cleaní' '(¨´¸xâ3Á6s:replace-all4(Æ'qc-(Ø' *(I"( !( (K(¨current-lineë 9(c(¨count-tokensi( e(Úh Q(„(¨process-tokens ( ™(h´ ¡B (µ5 †(‘ ¡ (·(¨É8D²rrs:evaluateK(ÅK(c(„( §(Ë(œLPÃ(×(œIndexÌ()¨nextË(×( ÷()¨prepË(Ë(×( )*)¨doneË() §(6)¨îµIË(×( /)D)¨ïµJË(×(C  =)T)¨ðµKË(×( M)q)¨uÊ^`{ìSindexed-times)))v) v)*) ^)•)¨”JS²Ðdecimal ó ˆ)¦)¨Êœ"ôRbinaryó š)¶)¨øã1octaló «)Ä)¨Êzˆ hexó »)Ô)¨Žg1var-s”µ6 É)í)¨u »¾²pÛtail-recurse¹ Û)*¨,˖|fill*©5 *‘  ö) *¨Ý‚q×QìýÓio:enumerate *0*¨Ü½R'çio:query "*A*¨ãÁZ—Ìwio:invoke 2*T*¨ð ´“4›Àio:scan-forÿÿÿÿÿÿÿÿ *s*6)0* o*j*6) f*µ d* [*q) C*„*¨û3 1c:put†*A* y*“*¨ßxYnl „* ‹* *¨ˆyYsp „* ˜*®*¨<­ˆ tab „* ¥*¾*¨ ¼A1s:put„*… ³*Î*¨†Aç1n:putW¾* Ã*Þ*¨ˆBG1resetÞ* Ó*ö*¨Þي½Þ„prdump-stackö*Î* * æ* +¨eol?+  ++ + + +ú +3+¨valid?h´ '+B+¨bs?I+ E+Q+ M+Ï 9+e+¨check-bsB+|+ts u+@ q+ @ i+ æ*‹+¨¢ 1c:get+T*A* €+¤+¨û)ÝéR²rrs:get-wordÀ+Š·+‹+&e+ + ­+] ë ¦+¤ ”+Î+¨Åcˆ bye Å+Ü+¨@y Slisten¤+3+¡BÜ+ Ð+ÿ+œ:¿ƒìmýd:Hash-Function ê+,¨~«fGææd:rehash ,,¾ÿ+ ,Á¼ ,+! ,œ5.Ù 1BUILD