Maybe this is the time for me to pick up my work on the four main composition conjunctions. Actually, I don’t remember why we didn’t go on from where we got in May.
@Henry, Ian, Art: Do you remember why we didn’t go on here? Is anything missing? I don’t remember there was anything we couldn’t agree on other than Henry’s suggestions from midnight, 2020-05-04 (my local time?). I’d like to see this published as a supplemental resource for people new to J, but not without agreement. @Sean in this case, look at the left side, where ranks do not excede natural ranks we don’t have both left and right rank in your case, since we apply the verb monadically. Hauke Am 08.12.20 um 20:36 schrieb Henry Rich: > Do you know about NuVoc and the ancillary pages pointed to below the > primitive table? There is a lot written about rank. > > Henry Rich > > On 12/8/2020 2:27 PM, emacstheviking wrote: >> Hauke, >> PERFECT! >> >> ,.psz &.> pqfname@(res&;)"0 i.ncols >> ┌───────────────────┐ >> │id │ >> ├───────────────────┤ >> │invoice_id │ >> ├───────────────────┤ >> │created │ >> ├───────────────────┤ >> │status │ >> ├───────────────────┤ >> │ce_survey_id │ >> ├───────────────────┤ >> │organisation_id │ >> ├───────────────────┤ >> │payment_provider_id│ >> └───────────────────┘ >> >> I just have to go through it step at a time until I fully understand the >> magic! I have a vague understanding of rank and shape and that you >> can use >> "0 "1 etc which affects the frame/k-cell metrics but could you explain >> what >> it is doing here please? >> >> Thanks >> Sean >> >> >> On Tue, 8 Dec 2020 at 17:15, Hauke Rehr <hauke.r...@uni-jena.de> wrote: >> >>> Did I miss something or didn’t anyone answer the looping question yet? >>> >>> Without knowing much about what the names involved are doing, >>> I think it ought to be >>> pqfname@(res&;)"0 i. ncols >>> which will have the shape >>> (shape of i. ncols)×(shape of whatever pqfname res;0 returns) >>> >>> Am 08.12.20 um 14:34 schrieb emacstheviking: >>>> Apologies for the length of this email but my brain has thrown one >>> again... >>>> I am currently working on a wrapper for Postgres using libpq-fe. It's >>>> working but in need of some higher level functions to make result sets >>>> easier to work with and feel more J-like. >>>> >>>> Once the query is executed, all results have been stored in RAM by the >>>> library (not my first choice!) and then a value is obtained like so >>>> >>>> pqgetvalue result_set;row;col >>>> >>>> I've seen the source code for the library and the above translate >>> directly >>>> into an array read; >>>> >>>> char * PQgetvalue(const PGresult *res, int tup_num, int field_num) >>>> { >>>> if (!check_tuple_field_number(res, tup_num, field_num)) >>>> return NULL; >>>> return res->tuples[tup_num][field_num].value; >>>> } >>>> >>>> >>>> *# mema and management.* >>>> >>>> My plan was to write a 'pgquery' verb that takes the connection handle >>> and >>>> a SQL query (details to be settled) and then creates and executes the >>> query >>>> and returns back a table of boxed strings. My first question then is >>>> how >>> is >>>> the memory managed? I know from the documentation that memf is the >>> natural >>>> (obverse?) way to release memory but I wanted to know what happens if I >>>> allocate a string with mema then return it and assign it into a boxed >>>> structure. I have an ffi helper I wrote, I call it psz: >>>> >>>> psz=: 3 : 'memr (>y),0,_1' >>>> >>>> If I assign the return value to a variable: >>>> >>>> name =. psz a-mem-address-of-a-C-String >>>> >>>> is the pointer aliased or can I now memf the original address and still >>>> have a viable copy of the string later. I ask this because, for the >>>> lifetime of the result set object, the internally allocated memory is >>>> always around until a pqclear is executed. In this particular case I am >>>> hopefully correct in thinking that my returned box list of strings is >>>> stable up until that time. >>>> >>>> (In --this case-- I don't need to release anything as the library >>>> does it >>>> but I wanted a general asnwer about what memr actually does) >>>> >>>> I am more interested in the general case of using 'memr' though; >>>> does it >>>> allocate a copy or, as I suspect, is it merely re-typing the memory >>> address >>>> as a string, in the same manner that 'ic' can be used to process >>>> integers >>>> and floats. Some insights would be appreciated. >>>> >>>> >>>> *# looping* >>>> >>>> This brings me to how best to extract the data from the internal result >>>> set? My basic flow so far is this: >>>> >>>> conn=. pqconnectdb<'dbname=foo' >>>> res=.pqexec conn;'select * from some_table' >>>> nrows=. pqtuples res >>>> ncols=. pqfields res >>>> >>>> So I might have 7 rows and 12 columns per row. Obtaining the name of >>>> the >>>> columns is done using the pqfname call. I've been playing around and >>>> the >>>> basic loop I have is awful! >>>> >>>> pgtest =: 3 : 0 >>>> nrows=. pqntuples y >>>> ncols=. pqnfields y >>>> NB. get the column names as the first row >>>> for_j. i. ncols do. >>>> c =. pqfname y;j >>>> smoutput psz c >>>> end. >>>> '' >>>> ) >>>> >>>> I know I can do this 'looplessly' but have so far failed. It's going to >>> be >>>> a combination of bonding and maybe a hook or something but as I say, >>> total >>>> quagmire at the moment! The thing I require to be looped is this: >>>> >>>> pqfname res;col. NB. where col is i. ncols >>>> >>>> My thought process was along the lines of, produce an array of res;i >>> pairs >>>> but that feels ugly, then I thought about and played with trying to >>>> just >>>> pass the i. ncols list into a bonded call to ; but somehow got stuck... >>>> >>>> So..I am after some nice solutions to how best to iterate ncols to >>>> obtain >>>> the initial row of column names and then extract each row of data from >>> the >>>> result set...I know this can be done very succinctly, I continue to >>>> work >>> on >>>> it... >>>> >>>> Loving the challenge of thinking so differently! >>>> >>>> Thanks all, >>>> Sean >>>> ---------------------------------------------------------------------- >>>> For information about J forums see http://www.jsoftware.com/forums.htm >>>> >>> -- >>> ---------------------- >>> mail written using NEO >>> neo-layout.org >>> >>> ---------------------------------------------------------------------- >>> For information about J forums see http://www.jsoftware.com/forums.htm >>> >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm > > -- ---------------------- mail written using NEO neo-layout.org
%PDF-1.5 %ÐÔÅØ 6 0 obj <</Length 10411 /Filter/FlateDecode>> stream xÚÕ][¯$¹m~_Ñ *º_ÅÙ]ÉÓ$ûføiÛH¼ìüýðSDªºªë2}Îé1¼ÛgÕlUQ¢(RüH©Û_nêöOjçSÓ¿ÕMß|ô£µæÓ¿ýöû§Üè·BùI6'û¿éÿzj9*Vt¢Fû?ì~=G¥b¼ é]Ò7íÃèTÈþéW*{ûçß>ýtûôuîozKúC²ôôzD¯Ó?òïß~ï~Ý~µ.å×_¹½{Ò×Ûüÿt þÔ£ÎÞ[0ûÇsJôÛúù§òZÿuzÐqtÙæp³ôƪoÖUÌö¦Ã¡Q\(íFíÍ&5jÏÖuÚ,Ò¦©£?ÙO¿~ú_½å1Üí×?ßTÍäú×ßoüA)Ò>Ýúõß>ýü+a ¡ñù&ºs235®¾2çý¸®4ñxG½wb<㨼1ÓdOæÄp¦Qý`8óHÏl´cz4ÑF³RÏ£©ÍÖ(nWFQ0³ÅBµzD&Ù9ïI -+£üí÷®9Ç1 2IöôNÓ,GGjÆi Ù#Ú~£Óxø¨]¤ÉÎ]r[{:~ÎÍyã.§ÑIÙȧs~Þ^T2CÜå ïôó¿Rܱ{é£i¤Y'ÕÌ¥¬GHø¦ì)KohÀ!yw)Ïäz>kRþñôþþòã` Xê"üû<Úi£iÂ[~ñ;ú'-~AG/á°M¤öÄ@¿ÌOÄ?ïÄ_é1Ð^&â_s£¹%ü÷-<+8b¬Í i=!ÆÖtX笤ÖÖ± eÙä.[?½cCRDÃHÃ¥n q['ÅÙl=®p¾ânL¶XùѧtJSN Ø6Húc_=6Åx_ͪ[^C/u\m ÊÙó",øºaË& Ú2þB;úmhþÛíÓî91å?COoÖY°?¶'©ÛÿÜèµ#+-¿Ó¿û61êfUÇT¾þ[ûzàïÿzûéöõV.~õꫝÎÍG^]ð¿ºÐ,ÓÜurk!ÓĬ¦ïÆèl·`ISºèIh÷do'´r½ÙÒ£JþÌâ¢6³½ºö#© úÃåáwVW¥«uòóXJeÍl^VK0ýûoò¿þ½½t^ô¨~Þ{0x|rþæ ¦Vå¼¢?)oã¡ê÷(§§ÕæYnkµºtRÖþONmW49Цõ=õòs}} àhuÚ¾yè¥ 7Ïø ¦ük/ÿüËn\µí´²t4¡,-M$Ú§bÉxg´käÜÒA4[ѹÛüÁíÞ>$Ó¯ÓèM~{5QÅáâèg#iàÚ$²*¹_æø Ýx¯±Ybm¦2Ó'14&9R67mí/= ´«x§lÙßÈm°¶BÐZÃ)2}7¤²èßY{KO?çf@&¯Ä4x&óñÃ@pI/çR StÁe ¡!7+-¹ÌmqI~[r9>Ë&ÑVµÏÎ/$ÚÒ¢Îý½DA~ Ñ6ilxV'V¶uÜ#:&Ìcŵ©À´¦íÄ wgt×QðyÁý0A¿÷ídu*0chõ9v KÊÑd<»ª5þVçÈ 1ë8Ñ(ëE¥=½üº5Ó6lu %w¨h¼HèB÷ôÖX~ϯ*%îu ýÙ#}ËY;MäÞÉpg 'r,í¶Ým§Iv&»ÉíØMz&íc&¡Z°Éò¥³6 sÊÕ#¬~ô?Ì&ÆgLsG_©Ñ: GbÅæiJ±mpJçîÝ Û-2PkW¨«}ó¯õÍvÅsh'å¡é]§ Ä4»f"ùç_nÕl¬f +ÅÿÆè¶+N÷p {ã%U°Øé[R õ¿Ñá!\äÞêd´}ßåÿ×n½ëଢhäiûeE2#ÎëðF&¸'SÞ,ç|½èÍBOÓ%æïÁDRä^ùüzüñ±´£ÍXPÎÂuÖææõsPä¬/Âmù~Îc2PIÆÏKÇ7õö°lÐ;´Ê®ãWÉ+õêT¦Ãìs ·tÔM¤¡t/:éE¡H¦BæOh¡iLÔ®UÙð²1q¹ [j·Ï±eic&CM¥ðQ˲F´ÊçàmÖ´ò,©b§i¢IH]ºAE{ì+ùóHzKªØÅbcºxæÀÚêb[,Äò ä=# Ò×nï0{¦®Ä»òBái>DçB\*¿`x0|ßh¡QPuúä\´Ðà<ȧçGMJ° F+õáh¡è~-ÎÅ\]W8*ëÂÉ`¡&ËJeûô`¡QpaÓÁ`a¥Þ nWQ0ó~ÁBC&ÐÜ>Êb,¢^G/\"» GÔ¦.ÆÂ7áþ¸=º±è«4¬±CM:Ím]E6nD+ßYälYÙd*=?RY'# új¤Ðd;âáHGé½þa5)yï¨{ø/ÞK¼¿ïÍ·£Þ;ðÌæ² L¸aØ»0Í+JMù b¿´#59Mb iòÓ#Ÿ6uK y]pÜVܯ «¨b¥Ì4 ´¯jñäÖÔ&dN¸¿{«GÆÆâièR|züyPVâ«Js¾|,ÈNæ«"&È4îÛFzµ·¥£èL×»¥#æò\t±ñ´0ck>fd%þÒ~½×7oG^Ï Gµ#í §Ã£1¬7@3õÁøh¥~btÑåNÔÐE¾%Bj,YÜAc[[Rá[C¤bø×b¤bÞ¿5F:-é`õ"Ä@ºvtAk)FC*çÒÇvÆvP¨5âÚ{G#åCÏô£.¤äÒ)»Nß#: yÊÊéGNaN6§KÐ:-|hqKÈD8]øP *AÐp«üM "º Y"%yû ¡ÒÊ«¶S>óJ®KJÁÇ^x%Î*²í^!8·&g0hEÝB¼ÐFéñ^Þw¤´³¯1-=ýïNï@*Ó]Âê<ûE¦ek }kShÛ6¤àeÈÔ(7,ÜØL%qÊ^[[{.htú,ÎLëS[ç¥âD´àÆ>j*/ÑíÊ Ü M»ñÙêd¤x~Ø´lèAVêkÓb ätà´B^Âä9|KäTÎZèTÌʱÐ)lN¿¹iøì享±SRû£&(¾P|±_ú;åöc±S±z^7r\PÞ-'Ò#pCûÏÕØ): 5Ì+ÇNµ§õ )Læ\Sqg{ûÚÎ&£ý)tÞBï÷TòJ½:µÄÙø(yÞÀm£wðqÇOÔô2p«zb<ßýtø(H{Xw½<8EÕa£-~¡ÃñgF·p÷ÈíÓ'óÚ#Ý¥îc1«÷c!KÇ"ƽ2âñ1eÄãRF[ãrDp×"ÆØd3íY#Æeë:wöê»1&±±0;QWâÇ (À0Kâü ¤-¸½~¢)ûX> {ÀÝk?X> qѼüû²8a&wÖ;+ä°~À\«ªÚb9Òú; Ô,.>]D|¸ÿv|êýùóa=-m!iùYÎì?¿$æÎRtP§y2ýø¯VFàˬàëø6÷c´4 '\á5\XVK $ ×úl3ÇJÐä@ç¢*õaTè~-¹1u 0ÐN¤"Ï¡rÿüf²Bb&ÚýôåÚåýð1ïFpl(µÀ"ÐʳÑjGä²f¶¦.Ê-:Êݵ¦úØ>Õ.`DÆqë-Ð§í¢·µ¥ ¡62´¾îX]ÆOÅlOQÈÁ½A²&e¦õÑ$åJ}z õãã èÖz4Ê< z°ìmz@LÏÓáS1®wáSË+Àau½ ,mM${Ѥì6g¶Dܶºd^[ÜáÊZºÅÊ/ɤÌwyÏörí û\K|6öÀ#v09z¦½3¹tx@FöI¸ûÎö`ä©t~Ùð.W Oá9ÈA·Zjؾ6Ú7¹{G°Á°úÖÃ×Þソ®Û¼Ï7W ôxPs|¥µ"Ääi]ÚÖ,@6ª<ðuÊq©+ò¥MÉ)*!Ç{lmõÙå×5Ó ¢p82å£kSùm}G¦kpow,Ïúûc±bE¸$åSVzè~£ÍàõJi¯ÄN%¯Ôg d5! Hd¶ætVÎäÎâýÛ<n¸ ¶¤<æÀÃyb ç¹Öåwài¯²1¬ÑÐIQ7AÚ¤RôÈmë<Yç>×ÖÏÐ/ öªY½Þ³'ËÃ!ap<ã9i~´¡C<s¦Çû´ënUêøì^eM§í Y&×Öù ²ÌL2åØX@\T5y±8¬¡E"à¸ùo]ó0·çÒνtíÝøÉºH ãc W%s4жsµl¢I¬f»1Óz&~MÇâÃõ}nÙ ò}#9X h,ú¬HZH .âÏl"ÆóúË:Ð!¼Ûy¾ðà3h>²Qu7Ð8e ÿÙ%ÁU»è^Ñ:DÒ3ò7ÄMÏXx¤mÌ¿tm ÷ṟU(RÀ¢OF¤¦yïÁ91NÛ Ó'1ô>ñIÛµïß<;´EÌgÓÐJÊSä?`ßêÀäV®pgå¿)#L±þc>vÆ3§iÁiaûä=«ÃMVgNÍKp:Iõ°!Öö\ qÞëáE[h±aC ³3+zL¨¯m=6ÌÌ¿ðÄØEkÝüpÙ¢Q}Ö¢{fJ@8gÌ.ïd³¦ uà¶÷r~ÔÀAêCE!ºlmÅ®À/[Ë ÈZwÃÚ£þÙí5%qãGvÛ±]AfÛy,Vàe. ˧J61vàe6ÙÏÚ;«Ô3ñIp%+Ç¥ Ø2c3lwrÐÃ"1°flº,3©DÌx`$°lç㮬 SLnÉ ·1i[Ç}H ¨|(9zBL±~ò7HâMÉÓT#øÞõxrÊË6kÿ¿N 5ÂjM_a3¿²¡ÌYÔyeΦ©²uîìê Ó¤å÷Ä>³¶ÚåßûQÎ)Á̦¥BjõlÊâ{[$g04Ú 3?¦o ÖÚyØ8нIeý]ä~ ÀAÈó@hÓÛådµñSSm<í¡çOþèPNÛA.¿ä-G±(pBT}æ m|~rgKUµé¿Á eìtP $ó:)ïXn³ú:VV zØj!ÌR=¼X³ú6ô×ð@5ÅõH ßÓØÁÈò±åÑ8ã¿«@g¢õnuO(B¼ç<9Ñíéú¹!»I¡"N¤~Ì äö0£Ã:§ÃÄj\átæÐßêç§ÃÄj9§ýXVáËX_ä6[gì¾ùÜ JV½»ùuÀ[¤%K¦WHÌWk!ó,9cÜ*¤AAY¤]úCÆCð-7Áa³(x¢J22%T 1î±µUg[AÖºV<ôn/)hÑkÏôì+¶^7]EØ¢`8æHOKDª âϤ3Ó§X©gâs"jÏdèm0Eäla1@Ø£g¡¯G¹xÅQ4pëd <Ž28ú4û(úq8o>ÂõRQŤ¦}) Ópþàv5Ù¨LÌFrÅÜÇ;WM^ÎxÉ) ¾£§b_Ú×p'Ãú ¦§jsʳsYFå\¥S9Fäûôü#£díÁ£øóÂøéXzQO{1»hñÀýä¢þçsÜO-ê°Yij¹R² У´"ìÖdj¶8¡hOÑp*ÑÇD+IDCI¯MÊN"¢ÝG¥÷Í!Â~¸°gÚCD=íµ¢ÅóvózúóéCçífõôËä!Mry¤Ó~îPMÒz3aDIá3ð éB)´ïw+[ÈØ:ï°,MÅ7ÈbQ]Mjç«@MþýÖCÙã|7áàm¯,k (PLê:iÔáoÇtr[wEF¨¹î©ª¦$nq;'A|+Ã$óÓñ¸¾6Ò;ò5^ædÆèJ)WqÛfÑÔ±ÃéI<*UìY-¾ï&]Q+rMÄV²®c×Ò®ÏÔNus{ý´´«2B%صëÙÑËVo|3ûª¤èxe$Cïå½Ah^T³ôØê\Á;´| ßÉ=ÕR0¸K+¤-[DtÉmíé]bÇ]*Á-Ñ%Y/&óU~zkëK)3Ä]®ð¾Ì,éFe=µD!«n*tr.5kYÓÀR¹}5v×t¥¯äg±Õ} É\& «é'× =KiñÃTzÛXRCsTU²Û ^Ér$eÑzyvÉ âäe¨d°bD6^kë/CeRN"l=rS{v'ÍÉÛô3÷H¯A&r·¸fAÊìp+ßåÊ1ÙfGÖjÏ+ÓJó ðòjɼǶ+Í}%?®nÒìÉÇËÆfoôCº ͹iz.yi¡k"7É îSK°e^µæC¹W,Í/X2Õ%ò< òJÏLÅ6F»}©Dx¢dª{p²NîûXþ}&Ót÷fJ^©WÏY£já²Sõ˺ß;Ýl3«"N Ö3ÉÐ`Ò Õt³÷@LÎû4rµ±³õ\&þ&Fÿ®b*Löo:-ꤲÁ Æ^ªJ{ ùÝ9wJzWàyzq§¤Ç½Îçzïô¥¯1ỸSÒ; YÞ)éBKÜ¿SÒ%2sööuît³£É .±Ç+B<§¤GRUò9½Îe<ݸh *±6 «wJzr<µ&½j¦lìÞp¯¾`O§`ü¥©gýÑ¿ P½õ´s¢¾Bª·S¾R½ôµ×ÝµÜØWHĵì©ìµµµ7è*¤Ò.9ÚÒã¢OqÎ ÃkñÜØWHÄ/ÙíÊ ÜUHíÆg»BjÙH½; LØ>GKÄr)Vý;ìYO3u%>LÀ=V5ì}ÈÀTÅêñ~§!Âãæ 0!ùé¼PÌZmT1Çj£â,Õzï\Qg6(¸u±0*ÊUôªW*Ú¯x.ÊíÇ £Eó2¼Á XÑý,:d×W뢢Cý~Ä}?5\bKÊ8ǾYÏ))z±uߝܨ® ýJéó³×elg*oO¾!í 7÷NX*y¥~ï31³ìt#f=ÊBØb·?q`3ùmnò ¥>ÐIW®¤y# Q:PËÇü²u³aôç}s"!]³,B6íÕ î·2fÇÔ ä åS'@AZ8ÌÞiª *Tû$·pA(]R&ÃçLhÒâJÒ`X"3ÏÓaô¯°J^©OÝÛ X%°ÝÅ[iF§@¡ç=T½¨KbGÔñ¸ PÓm1ËGn.ÓÓ¢3Oå æòmaÉyR&Ùåq Pò.îCwÈ²Ê =¡DV$)ûb&G» Ü1¾Rq q}bÇAêöic ï PÉÒýbܼR·G*d÷S¸54GQXx/ü@§[¦ÓOdMä$Ùø çPýGü8@@<`,+3v `J9ÔC90° £y-ÎTò}èxíÚ]fèý 6¡§Q¾¨kOnÉ"R©áç»ÔET[[QeÒ']r[{zRµÂ%h]SAðyütnëBªâ.Wx_T»QÙ ©Ú<%!< à 1TòË +´;Ruô¹RÌTÅ ^²àtXÊ3È¢òlmá¦om<RRî« ·§÷Åq$ä»\MT¨tÐ-&nëÄY2ÇÎï®@c²-ÍärøÞ `£'Å*ùe%Ï=¹SÒTĶí iÌI3ê9ÀB/×(;7²÷ ÅlwÁ¶æCwÁ²4¿@ ãF¾q©àJ°^3 Ix ȦÁ߸("kf{Kqhè¹Þß#|ÀL^©F¼èt À6í(!ÎÉÏàp Âj Óí+÷ðäjcKm;g¯PÇ0óÛnöAÌû 3´/£"Ð$péBÞZnÇZI Ú°Õ+$Î*É5ñÌ<[Ü·J^©#n&êe[Y(}æÒõý^b*×ßÁ4w`ÉñðK9ìÁ¥éçXÐulfh¸pY¯°8&éÔúâiQÆ1"6©E/G7 »Y¸Ùí MB5©:Q4fDNSAÀùèjGýº¶?Þ#Po6¨Aÿá¹®${ùNJºQ!Õy~¸ÿ±gNÏþµA;SÜ25¢©qÄBQ lîCFÉ3vP>ù |f`væûÀ.ÙýìÚ0ñã"ô0ÊÀ8ú»Ç³$Üh®c nÇ(&å1ºÈKñ:Ð%LY²Ø¶¦A ÁAõB«Q¼ pYã,tªÔ]>ù "\o£ýhuz¸KcU]RhÈÊj.»'X jýÉ"@Âè¢r@1. =³Ho6 ]Dãë`ïa²´Ðe¨äs+ºL¨°ºL%`ý_ÆCøTZn^ÜTIp-/ü²Pª9C1»9/è¨EãTF]' QÛ:å&ÞÐK>vk7´HÊ]è¢O0An)Ó ´ÆÒ¿-®Z¯k#PªpßrpÖp Hmîø¼[#BÓ1Í6÷î ¼RC1á×aXÁö)ÒXX±|cØ1áqѨF_A2ET?v718]<~ALÊÃ+ÈéYãÀ8#ÒGFP(Ûí:FÑÑDÕå.é¿xÚ/é× `ÌYaN;cÜd2Ò n>fÓr8²zcyCEMîgÑT^feÅômÏ£Ñ@ô¾ÿþ|eaQ.Jç|da]OEa,j¥}cQ©/a, ÒÁ_ÆX¸r¤c3ìÍ=#Áإ𠴣åÓvÑb8×Ð<k Ðhk^+c+)ÆV|ØÂVÐÁ"{ì,¶Â|SWËaä¬MÛ¢Ô!ªäºÃVÌ[y^b,¶ñâ¡kø Áíâ+HtqÄê¾¥Õ©Gñ¥¦XÈGñü8¾B<` À]ÃWhÀ¬ìéúºÜ1äÞ ^è³Uþ(¼¢ïÃ+DÇ+)z?xJ£øÿâROÌTr:8ÌK©\×9rÛÚºp´ ܶ.¹=½GkòoFQ6îRÃÏW(¡ÄOç¶.-HC¢ËÞïÒrT6Òä±Ê>ÏW{Ñ¢+fêËà Cvb>FþEò¢ÑÌÙJ0ZèhÝ}PR"Ú!· 0y!!䩾ôBkê Y8¹?n«OîŸÛAÂ*4®±[DÜÖ123Üå=ÛK)ã±)ĸ.øT£ £üwéF_É/*Èÿ!É:%źòW¤y[cÒs .n¸Ö|ÀJí!ýÒ«oÞZ¼8ñÇà)ìErmÉyI.pªnØ1H~\¦¸ Â8åâ&\³² Âð®Tµ!cþH{¸éJ^©G~ãn¡020Rþú~9gÆ ±¼[;Oüü¥díÆ*db£§µz b~.ð©Pý´d =ݶðdɰFgJF¥~ªd,:Ý%õ¶d äß§H§5ÉósµÒFÝáb.çáõNa f§'9_XÈY{¹4î¦øsj"V{S~îc²ñu:ÚÇmϨ&S(Æ .2{ý÷Oöí\Æ@Y/Ni <þe¢ec§ÿ-8ãæc1ý÷ 10¼@\/Ò%çc^é*ËD~¬{ [hÚÚÅí# 4zFiñÞ56±»&Ú?4ý¼ÃVbaás»-Ñe ¶|Ife*¸±/Â!ke ÙkkëN\Z³ÎW£,¡#y!C¾öÜØáÄ/ÙíÊ ÜáØ9w©U ÙJ^ǧá@h1t¬G%¾V£Ø|¿Çù*ÅÚíïüØ®ÂaÑÌ·Ôác³VCLÉ£ÎäfW,éòÑ&j`*[$j ¹lýÂÄMÚE¯Máp+Ò:µ/¶.³FíEkëW eD÷üßǧ8upéo°$4q.øÚ(õ-6D1óc:¶$tô%ú-KÇfmI)yèØ;IêR_&Ï0Ô+!-Iû£1´¯ÑË¿R2·ú).ÿ¢ÅléESé Ú?qpz+¹Õ´ÚqägLÒÿ1ÿ±(n3ÿÐïÌ|ví ¸\.H$t+&ôÖuwSÆöãð3tàmʯTäÈhÔ¼éÕYýj[ès)Ú¶Í,: ·ú@ÙÞKj=µÛ%¼¡ ô`Ï¿¯Ä¢Æp {%@*ª®î¬¹¶U~NzÚÆ×ÙDúy)tõz¤GÕ2=ü¬ü&%p×¢>\²©R?µdÓ¢ÓMÀ¡o,Ùhàp¬mÃrär>àVж¸ÄÒ áM%NsÆQĬìA}/»¥ÄÜvBsñ«>õ.² ÁR+Æã$¸«éÎwO JNí`-Zd f¤²áãïm¬öX°êêࢽgUp¸Íª£ÙÈÚWFbjRG!`Q6(&Ê9µ kª8>¬DÆÄ1±3ñ%(¦5ñMPL£zw éÑ.=Yì\ÓìOÜEcòx®1Å,+uUâIe³crû18&Ó¿S8ì¸ë,SÒîÍd l/U#¶6â mo%Ìäzc£N?¦¦Uñ¹¯e÷ê_×XÃg ö?¶þSÁ+ ý7 gâúyõQpf%?ÎX+~UÙºÍ< ÃîI»Ã{õll&®V2á(4s¦ÞGfr·÷ȼ¼,ô²7jÊô´µö,U5õÕ: ò-W;¾*h~l_($íGÛ@){Ç𹩥G°U2\¶¾îX½»5`û,ÚPãà/µA> À¬ä¨¸YP`×p¯`×ok×_Õ½ÀVÅvàIo1ÜKÐ E¨I6yýqÛªä,âÜáʺ5Ã/É¤Ì wyÏöR#2<jõ!¿EY+DàÍáªVõeü¥±¨¯p ~I¬5WJZ5Æî%Góø²ÝvgÔÜxèÆ¨*ï»Vßz8óÚÃû½÷{Á.M&%zw[G;=Ù=o +WÌ»£Ðºú¹Ðº¾Ó=hÝú´8÷,hÓ´§çærð¦;=(Øü)Cã(7£ËQ0îDü\,n×ç·'~ Ø#ó¸mVDçå[±y~@ô¸CÛ/JÆÒ¯]¦ß¿Vk°(î[ÝM¡%[6\ã?'ÏÑÚïgY¶;Ô§ëÀõ±¿ ÈrXçk8ÉØð*«ã´*Τù öðUY¬ÚUÝ4<PNØ>J;íV$O-ÐzåE¥+öëXvBò7JT¿Ð8ÍIÁ>/hp*Iät«èvÁPõLüýÕ¤èûÜ3¤`ÊaYr#®*\ .«Fê¾öhò±\ÓJ¡;û`£´díµ]W:$/VUP£aÓàØµZÕýpù¢Ä!ªáÝzmTñ6dHB(H\rò¦]áöl²ô"§ U"Dy`Yþf£N)Ï÷""±Qpè7.,n>LÑLõÐG´òÁí(JfÍ%«û;Áu»¤Q£w'ëQÿM@pFI1d!>ù Ò°õCüðû Ð%'ÿÁúbÒtºû´q.P&Ý0ÎôÉß`qøÓBEëd_n4¬óúUÁá6«¯ÈéXÛr-ÄyK®lÉè è0Ö]:lø%v¦îáôpÙÚYï,â>ZÀºeQÀÚ¶(xȤ¡è²µk©+u8²Öݰöè¡v{MAÌün{¶ïÊÎc±]àP[ÜLýüú0¨L>XÞp&¾VÝv°óN7ŦßNmCØPlä](mÈã²VÙgãqaCä³8Tâ$ Áõ E W©Å (Ú:WmM¥@ñôÉßXEëPY ÉØÀájÿÍò® §þ2d~F)̪í9>fÒÎAç ß®@òtÎ@ßÎÓU÷ÏÎÍ.Û1àÜ¿;Ó®ÜIÜZÚ lç&/¯'vöh.|Éâi» 9ËUÐ\¿C ërg¬ÜÞrgÜ»/÷-|Ü,SM3Ãã0²ôûcxÜS²òø ±']pùÌnÅÎz&^îÈá 6nÇo°«L!пwýõùÿÏ{æå endstream endobj 11 0 obj <</Length 26 /Filter/FlateDecode>> stream xÚË¿-¤À À p¥ið T]I endstream endobj 12 0 obj <</Subtype/CIDFontType0C/Length 2850 /Filter/FlateDecode>> stream xÚ W Tç © â¾êâÜ@QvdBÕV, u+Êæ\(È"."¬2Öbm«}îçN¼´çM´}}=ï½Óü9ÉÌ?÷Þ?ßw¿{ÿüÂØrç ËW.v¸,)6Xµ>.v²[hxRt`áÙn8÷Îá#à3SqVBNnl Åo?&ú _>à?óB°ÙHþÊ,ßÌÚ01Ûl4!æøhthÒgÿg!qA¡KCBcUëU) ãâSÖG¨¬Æ·²f3Í*(Åja`B\ôúØP«%!룣ãbã¦X-¶zgh òGp«ßÿqÏÿDB@Æ$!!LSÂLH¡91° >$h!F¶ÄBb ±p&+ Âð' "¸I´ßùPük1Æ¿2&ìpâñH°P Ô)\N=®>2^b¬1.3¾$2Õ£IÒ ÜNÖIIæI"%?L1ñ7):¨Ãt>f䫹öi, å¬ì-ày±êQß+úÄþHOå Ír4ù&üæ4Û+W0ݯͤä«õ6Ï?õ ⪩ê>®ó¨¤ÒҤؤ¤XFêË[6â¹VOqÝ]ªL9¢Ù²ûA{{U2KîP²5M ðñYÈ'³2öïúrgnú-GÔMKBÛ¢Ï%R¼·G¿ÃGë²úfê×Ydλ,>Ñ´ãy[§ÎÉݤÜ|@WzT¡EJáªá· Ys`á=l¸0À|A^<{§÷çÃ|7ÑÚûâ?qËz ȧ;º¯òfîm -w g,òtóVÊjþi7PMþNß_¸k¸ôðî³ÿÍÝw>¦¶sÚ ,Ü` PLa:?L;!BÑôñÃôcc8ÆgÚ¯rp°o[Ñ}««Û§2ÒøM ÷¹)÷÷Y¸Í/?Ppô¿r3ºQß \a´ÈQ¡´ÉXäç¿Jòxίu$Tè©vmåä1 ¤WÙÛz;©YÍy²öVï+-Ïò?x\ê[{xÒdgØw fá)Ù\R{· ®>S^»"Òù]é¾&Þ5µuÒ1ïquõ@d¦qã©Jj*Sâ zQEÈòãi/ªPaÝÃ&(SnªÝ.1sƲS1WùÉçW?ë¥>!\d[¤\ç~¨Z!Å@>üÜv Vrjª;Å£J³7jUU2>5¢ÄM´·îú%t¼å°ÚW;ñyJej¸o4æmLñù÷i£¢SËm7@#ÊýÐß_Ûx}=kÏIY²×ôyãhé\j gªEwÄ:Ppa÷Xf8v&û£vVÍÞqX£¸y"©ú½KÁÅ"|Ðã¶Z¾õ úú&Äù1úAÙÅ[0Üò÷ZoNCýp8¬Kmp·Zߪ4ñØ¿$tjJ|¢ÊRNLYÿ¼l×¥Ý õu5 -ǯC,w2·¨¸H2I¼Ñ×.Ây8³KËS 1ø÷*Ù½úNÛ~þRSVô>¶K rçüÛ: ÞÑ5n®E4²Aºâè{8¤Ze¯±SöºÏ@_ëî¯o ó¼Ì 3å³ÔfÄéÀX4Uà L5TÔ±Är&m]RxlxUü|}á˪ò¨DU#Åçi|r¿¡à[ Û.QÇÊN;^v*ñXdDBb$Æÿ5'ÅýÖ.pÂ-N°E,}¯Ü.ÎWD³~ g~Ý'úQürEpZüsù<£ß'Z;JÈQé7X!Â$ñ¨ÈÜqØRZÊêYÁGBîÞÒ¹¾ÆY8'áh,Åh¾çØÓ ØqíñBËríÒ©h¡D³Ì10ì æ\üXÇHs·ôèÍz,<4Töpªeô}.t&À\&åÊ ö%] ³¿Ëûî8¿!¨BÙT'ºáå|j<íãbÐyr'2 pÉã86~²bâ¿Ì]ËÏz³)NcõÌÙ,dón? 'Â8÷ ºsîzÓºâjxazùö]U¯]Ëä nÛvoÍ :á]Wvµ´õTë²òWg¤·s«SïeÉúÇ*`(cÙcÑ8ºwk^¢Ýä5ÇeT°ºº¢{fçüuëÜ¢fk%kqðþº®óJXQ®sxo÷ÆrE÷£MM-*{FÊEßÞĹ4°GÐÐ{¸k=Bnöaª[Û^Y_%ñÞòUX#Ý Wá8à,ÅJÌÃ͸á!Ø^û÷ ³¾×EhÖoµ¦q®æ[c<?VC(lm À%8K¹q£ßç{$Ù/8_3/O¤Û®ÚÎÜZç³ßF!ÎÁÉÂùO´Jp¥ÀL`H÷ù['eÂÐ>9~Rh´Ë2xׯ ]|Êâ{îÛ\^o½mäõÖ'¼Ä¤xÓÔoj|5ºoôA8º_Éi¡eU4ÃåPÕÌàÉ Kô+)°ô;E8TC¢±-×29N"ð8R /a´¬}C÷¼£«T%_F`ÒÀWDéýÿ¦öÐÁâïSÞl2o ;^Vm=%àm.¸eÀì·bYÿ4dY;à;ê9èßr fMï¬Þ|ç#ñ½{q ±võ ÁHiAqïÁÕìjÆ LÜöÉV ÎKµsT ,·t´Õ]döDºÜP+÷(Ì8¥²>å |êLhÂíÎÓË´'øÚá±·MQu°{˲Ks$8 ö¿Æ)["ÚÃÙòªãssk¤¬²Á`ö¦îJNo·Ò»Vä¾2<-îö#_Ïz¿mcO»èjE:÷ïQÄHFrejÈÖèVþ-ÕR¿¨ÚÁôù¦vó} ë²§°B¯ d½Íû/~C·>wÒ)ëêD:$ûG!éç`ÍLttº= êãT 1|Uã Rº;!£¯¶µ$v7>pf!ÝÜ##ÉÉ©ûlimm_̳|}íY©õGSÙ+bMDDvºd"ç9x~ÿ %N>îfT6º´Ýâ¢Gôü|m-{½å>(NÂôÊuÅʽÇJré¼;Ó÷+¿jåhÔYÉ´[RXRö ¨ÊÔÐsöÁ¡Ó+ÖTmPGEE( ïRüÚsª®=(;^]¢,*Ô¦ø©(æº8"ÍH7¤v@LÐKnYÀ·¯´çzÒaÈ3Ã~>ÖaYf,=½,²i ¸âSÄ@´8-°úéô\÷=J<)¾[PÕÔAK1ì=ïí}Âw|7gdñl×ßöÏö¤{$ÿBö¬väÿ*ÎC8Úláan8V3×é¸cb<M¤OÆ=£þÀ=À endstream endobj 14 0 obj <</Length 498 /Filter/FlateDecode>> stream xÚ}SMo£0½ó+¼Héb m!%Ь²UÛ¨V½{"òï×FZm ¬÷æëÍ0üØîü¥ªàÏî9û¶î?{-o2ÉkÙW »7 j´¶Olkj¹M³M¾Ñewg7Z{£×¿Vp*õÕÅÕaÓ=|ú/ÙëögîÿêµìÊZûpêÏ ñ¹ÚÝÙzÿßY+»aeæ7ÖO,¼ç[âY«¬®\*Y0ê>ZA*;8á^(*e7 üÊÊÊï.mÕFko±`\¶¹ ê;/x7 L©OlzC£õÙõMs§q/M£MmgôVTÀ×þFYkÙ]nÍ᳿4ÀâËZAÛL¡Oà-ìxÊkû¤hõ=¦¨ÃñêZw{<ÉÈG"WD®\ã1HRøÂ³QöLá1*k >j_ ÁT-(cHdæfKB$Aä("$!! YãBäÉ QbMh¨@DÔxD»É RõTÇ"1*:'e 'DZAY(g²$[b_b²ù05ûn)¿GöÆØÁÍÅÕpKQjø^î¦n\¾x+ÆêÐûÚû% * endstream endobj 17 0 obj <</Producer (LuaTeX-0.80.0)/Creator (TeX)/CreationDate (D:20200524145422+02'00')/ModDate (D:20200524145422+02'00')/Trapped/False/PTEX.Fullbanner (This is LuaTeX, Version beta-0.80.0 (TeX Live 2015/Debian) (rev 5238))>> endobj 9 0 obj <</Type/ObjStm/N 11/First 67/Length 634 /Filter/FlateDecode>> stream xÚ SÉnÛ0½÷+æ p¸¤b;NÜ a§@ð È*ÀI.â¿ï£¶R3|÷fÓÄ)¡ &$qf¤Hd NRÁ¡(Ñ,BµRÊñAÊlúáüÝv-ó2°iS÷¡î;2¼b«Ð5û¶H¢}6U>i)ÊÎ81òÑG?#<°ã1"nv½Ë Yp@}ÚZóò©¿Z÷yÂàC4Í¥è![¶M±½cËÙÝ §ÞÑß"¶+vmyOîͯª««' p£DVøÄið :p^2Rz!\¢ i.Ieéñ)ºÓ©$-Üy)䨰Ö^Z§Ä+î,O½JI¤×ÔëÒ4ñV:Á '¥¥·Ú)e¼µÃr§,®Ä)m}j+@#}fFÄ,ö À®jk¡QyÿÚÁX¹Yè¶ÚõM;óÇÀn¦·Ë«ÙÇOûºè«¦B¹ßæ lóØÕ@9FÒj 7ñH=»èØT«9æ»ëP?aYÎ"U|I<-ú|[u¹ ÄÙºßȤìÇ3^iæÕ6`<Þ³éb®b^çå-¶Þß÷ÑÎ.ë¢ÙTuÉPVýatÍ&yèßò; Üä ¬s~yv×|+ÄÃÈ%ÿ¢¾hüíÏêǽ9~{øì¡C]õC:üVu}{ MsNÙvZ¤H'/9BÉn· ±Ê|<~§3.k·k'ÁnªMçÙ½Ms4¥)Á/[ùÎ2¾ endstream endobj 18 0 obj <</Type/XRef/Index[0 19]/Size 19/W[1 2 1]/Root 16 0 R/Info 17 0 R/ID[<DD396132163B4B71DA08ACC57C027C19> <DD396132163B4B71DA08ACC57C027C19>]/Length 66 /Filter/FlateDecode>> stream xÚÆ1@0á}!Fë )tfWrø)yñÍ.ð%J²ÁF!6ÜÙî=>«fTßøIg.¶ê:ÐÓù£ endstream endobj startxref 15095 %%EOF
---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm