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¼ì—üýðS•Dªºªë2}Îé1¼ÛgÕlUQ¢(RüH©Û_nêö‡OjçSÓ¿ÕMß|ô£µæÓ‚¿ýöû§܈è·BùI6'û¿šéÿzjŒ9*Vt¢Fû?ì~=˜G¥b¼
Žžé]Ò7íÃèTÈþ–éW*{ûçß>ýtûôuîozKú­C²ôô†zD¯Ó?òïß~ï~ݘ’™~µ.å×_¹½{Ò×Ûüÿt 
þÔ£ÎÞ[0ûǛsJôÛúù§òZÿu–zÐqtÙæp³ô’ƪoÖUÌö¦Ã˜•¡Q\(íFíÍ&5jόÖuÚ,Ҙ¦©£?”ÙO¿~ú—_Œ½å1Üí×?ߚTÍä•ú×ßoüA)•Òš>ݏúõß>ýü+‹a
 
¡ñù&ºs235®¾2çý¸®4ñxš”G­½wb<㨼1‡ÓdOŸæÄp¦Qý`8óHÏl´cšz4šÑŒ‘F³RÏ£©ÍÖ(ŠnWFQ0³ÅBˆµzD”&ŽÙ9ïI
 
-+£üí÷®9Ç1… 2I–“öô‚NÓ,GGj‡Æi
Ù#Ú~£ŸÓxø¨]–¤ÉÎ‘Š‘]r[{:~ÎÍ‚yã.­§ÑIÙȧs~Þ^T2CÜå
ïôó¿Rܱ•{é£i¤Y'Õ̙¥¬GHø¦ì)KohÀ!„yw)Ïä•z>k”R™þñôþþòã`­…
Xê"–üû<ڈ•i£iÂ[~ñ;ú'-~AG/á°M¤öÄ@„Ÿ¿ÌOÄ?ŸïÄ_é1Ð^&â_s£¹%ü÷-<•†„+8–b¬Í˜
i=!ÆÖtX笤Ö։± eÙä.[?½cCRDÄ›HÃ¥n
q['ł”Ùl=®p¾ânL¶„XùѧtJˆSN…Ø—6Húc_†=6ʼnx_„ͪ[^C/u\„m ÊÙó",øºaË&­     
ڋ2þB;úm“hþÛíÓ–î91å?COo֔Y™°?¶'©ÛÿÜè­µ#+-¿Ó¿ƒûš61êŸfUÇT¾þ[ûzàïÿzûéöõV­.~õꫝÎÍG^]ˆð›¿ºÐ,ÓÜurk!ÓǬ¦ïÆèlŠ·`ISºèIh÷do'´r½ÙÒ£JþÌâ¢6³½ºœö#©úÒåáwVW¥ž‰«uòóXJeÍ‹l^V“K0ýûoò¿þ½½t^ô¨~žÞ{0x|rþæ
¦žVå¼¢?)oãž¡ê÷(§§ÕæYŸnkµº™tRÖþO‹NmW49ŒÐ¦õ=õòs}}
àhuÚ¾yè¥       7Ïø 
¦ük/ÿüË­n\µí´²›t4¡,-Mš‹$Ú§bÉxg´k‹ä‘ÜÒA4[ѹÛüÁíšÞ>“$Ó¯ÓèM~{5QÅáâè„g#i†àÚ$²*¹_Žæ€ø
Ýx¯±Ybm¦2Ó'ƒ14&9R–67mí/=
´«x§lÙßÈm°¶BÐZÃ)2‘}7¤²èßY{KO™?çf@&¯•Ä€4x&óñÃ@pI/çR StÁe 
¡!7+-¹ÌmqI~­[r9>œË&ъVµÏÎ/$ÚҢΆ–ý½DA~ Ñ6‹ilxV'V¶uܝ#:&̊cŵ©À´¦íą
wgt×QðyÁý0A¿÷ídu*0chõ9–v KÊїd<‘»ˆª5þVŽçÈ  
1ëŽ8Ñ(ëEŸ­¥=½üº5Ó6lu%w¨h¼HèB÷ôÖX~ϯ*ˆ™%îu…ýÙ#}ˑY;MäބÉpŠg
'r,í¶Ým§Iv&»ÉíØM•z&žíc&›¡Z°ŠÉò¥³6 “sʓÕ#¬Ÿ~ô?Ì&Æg˜LsG_š©Ñ: 
ŸGbÅæiJ±mpJçîŸÝ       ۆ-2PkW¨«}ó¯õ͗vÅsh'å¡é]§     
Č4»f"ùç_nÕlž¬f”+ÅÿÆè¶œ+N÷p…{ã%“U°Øé[R
õ“¿Ñƒá!\äÞêd´}ßåÿ˜×n½ëŒ“ଢhäiûeE2#ÎëðF&¸'SÞ,ç‘|½èÍB‰OÓ%æïÁDRä^ùüzüñ±´£ÍX™PΊÂ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]ŒE6nD—+ŒßYälYÙd*=?RˆˆY'#…
•új¤Ðd;â€áH˜G—醽˜þa„5)yï¨{‰ø/ÞK¼¿ïÍ·£Þ;ðÌæ²…L¸aØ»0˜Í+‘JMù 
b¿„´#59Mb       iòӉ#Ÿ6uKˆ    y]pÜVŸÜ¯ «¨b¥Ì4
´¯jñäÖÔ­&dN¸¿{ž—«GÆÆâièR|z„’üy˜‹PVâ«Jƒs¾|,ÈNæ«"&ȋ4îۗFzµ·¥£èL–Ž×»¥#æò\„t±ñ´0ck>fd%þŽÒ~½×7o­G^œ—Ï
†Gµ#ží
§Ã£1’¬7š@3õÁøh¥~b€tÑåN„ÔЀE¾%Bj,YÜAcˆ[[Rá[C¤bø×b¤bÞ¿5F:-é`õ"Ä@ºvtAk)FŠC*çÒLJvƀvP¨5âÚ{•G”#åCÏô£.¤äÒ)»’Nߔ’#š:
 yÊÊé—GNa€‰N6§KÐ:-|hq„KÈD8‡]øP• …*AÐp«ŸüM      "ºY"%yû
¡ÒÊ«¶‘˜S>óJ®KJÁÇ^‹x%ƒÎ*²í^!Š8‰·&g0hEÝB¼ƒÐFéñ^˜Þ‰w¤´³¯1-=ýïNï@*Ó]Š˜ÂêŠ<ûE¦ek
 }kShÛ6¤àeÈÔ(š7’Š,ƒ–Ü؇L%q„Ê^[[{ƒ.hŠ“tú,ÎLëS[ç¥âD´àÆ>j*‰™/ÑíÊ Ü…
M»ñÙ›êd¤x~Ø´lèAŒ›VêkÓb   
ätഘB^ŒœÂä‰9|KäTŒÎZèTÌʱÐ)‚‘lN¿¹iøì享±SRû£&(¾P|±_ú;åöc±S±z^‡7r\PÞ-'Ò#pCûÏÕØ):
 5Ì+ÇNµ§õ
)LŽæ‘\‡‘SŒžqgŽ{ûÚÎ&£ý)tÞBï÷TòJ½:µÄÙø(y‰ÞÀm£wðqÇOÔô2p«zb<ßýtø(H{X‰w½<8EÕaŠ£-~¡ÃñgFš·p÷ÈíÓ'óÚ#ݗ¥î­c1«÷c!KÇ"ƽ2âˆñ1eÄãRF[ãrD“pš×"ÆØ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\‚XVŠK$ ×úl3­Ç˜ŸJÐä@ç¢*õaT‚è~-‡¹1u
”0ÐN¤Ž"Ï¡rÿüf²Bb&ÚýôåÚåýð1ï‡Fp†l(µÀ"ÐʳÑjGä‹‡²ˆf¶¦.ŽÊ„-:Êݵ¦úØ>Õ.`DÆqë-Ð§í¢·µ¥
¡62´¾îX]ÆOÅl„OQÈÁ½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ӏ
Š¢p‡82å£kSùm}G¦kœpow,Ïúûc±b–E¸$–åSVz›è~£ÍàõžJi¯ÄN%¯Ôg
d5!HŽd¶æ€tVÎä΄â‰ýÛ<n¸    ¶¤•<æÀÃyb
ç¹Öåwài¯²1¬ÑÐIQ7AÚ¤RôÈmë<Yç>×ÖÏÐ/ 
öª‚–Y½Þ³'ËÃ!ap<•ã9i~´¡C<s¦Çû´ënUê™øì–^e™M§í      Y&×Öù
²ÌL­ˆ2åØX@\T”5y±8‰¬¡E"à¸ùo]ó0·çÒνtíÝøÉºHãcW%s4œ’€Ð¶sµl¢I†¬•’f»1әz&~MÇâÃõ}nšÙ„
ò}#9X— h–,ú¬HZH 
.âÏl"Ƒ‡óúË:Ð!¼Ûy¾žð‹à3h>²Quž7Ð8—eÿٓ%Á‹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ê‰C‡E!ºlmÅ®À/[Ë 
ÈZwÃÚ£‡þÙí5%qãGvÛ±]Af­Ûy,Vàe. ˧˜J61•vàe6ŽÙϖ’Ú;«Ô3ñIp™%+Ç¥
Ø2šc3lw‹rÐÃ"™1°flº„,3©DÌx`$°lžŽç㮬SœLnÉ €œ·1i[’Ç}H
¨|(9zBL±~ò7HâMÉӘT‘#øÞõxrÊ˚6•kÿ¿N   5ÂjMŠ_‘aš3¿˜²¡ÌYÔyeΦ©²uîìêœ
Ó¤å÷Ä>³¶ÚåߔûQÎ)Á̄•¦¥Bjõl‘Êâ{[$g“04ڞ3ˆ?¦o
ÖÚyØ8нIeý]ä~ ÀAÈó@hÓÛådµñ’SSm<í¡’çOþèPNÛA.•¿ƒœ䉓-­G±(p„BT}æ
m|~šrgKUµé“¿ÁeìtP…$ó:)ïXn³ú:œV™V…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ÅQ4Š„‹pëd
<ŀ½28ú4û‰(ú’q8o€>ÂõRQŤ¦}) Ópþàv“5Ù¨L‰ÌFrÅÜÇ;WM^ÎxÉ) ¾£§b_ښ×p'ÃúŒ
¦Œ§jsʆ™³sYFå˜\¥S9Fäû†ôü#£díÁ£™øó‹ÂøéXzQO{1»hñÀýä¢þçs‹ÜO-객Yij¹R‰²
У´"ìÖdžj¶8¡hOÑp*ÑÇD+IDCI¯MʝN"¢ÝG¥÷Í!Â~¸°œˆgÚCD=íµ¢Åóvó‡zúóéC‹çífõôËä!Mr—Šy¤Ó~îPMҋz3aDIá3ð
éB)ށ´ïw+[ȎØ:ﰙ,MÅ7ÈbQ]Mj‹ç«@MþýÖCÙã|7áàm¯Š,k…
(P†ŸLêŒ:iÔáoǔtr[wEF¨Ÿ¹žî©ª¦$nq;'A|+Ã$óÓñ¸¾6Ò;ò5^ædƕèJ‡“)WqÛfÑÔ±ÃéI<*UìY-•¾’ï&]Q+­rMÄV²®c×Ò®œÏÔNƒuˆs{ý´´«2B%؏µë‚ÙфËVo•|3ûª¤èxe$Cå½Ah^T³ôØê\Á;´|
ßÉ=ÕR0¸­K+¤-[DtÉmíé]b‰Ç]*Á-Ñ%Y/&–óU~zkëK)3Ä]®ð¾Ì,éFe=µD!«n*tr.5kYÓÀR¹}5žv×t¥¯äg±Õš–}
  É\&Ž «é'×    =KiñØTzÛXRCs‹TU²Û 
^ɑ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º ͂¹iƒz.yi¡—k"7É
îS˜K°e^µæC¹W,Í/X2Õ%ò<
òJϕLÅ6F»}©Dx¢dª{p²NîûXŽþ}&Ót÷f‘J^©Ÿ‚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¥~Šï31³ìt#f=ʂB‡Øb·œ?q`3ùmnò    ¥‚‹>ЃIW®¤y# 
Q—:PËÇü²u³aôç}s"!]³,BŽ•6íÕ  î·2fÇÔ        €ƒä åS'‡@AˆƒZ8ÌÞiª
*Tû$›·pA(]ŒR&ÃçLhÒâJÒ­`X"3ÏÓaô¯°J^©OÝÛ 
X%а‰Ýŋ[iŒFŒ§@¡ç=T½¨KbGÔñ¸
PÓm1ËGn.‘ÓÓ¢3Oå æò‘maÉyR&Ùåq
Pò.‘œ’îC—wȲÊ
=¡DV$›)‹ûbŠ&G»…Ü1¾Rq q}bÇAêöic ï
PÉÒýbܕ¼R·G*d÷S•¸54—GQXx/ü@‰œ˜§[‘•¦ˆœÓO—dMä$Ùøç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ëÄY2›­ÇÎï®@–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Ðulfˆh¸pY™¯°8&éÔúâiQÆ1"6©E/›G7
   »Y¸‰Ùí
MB5©:Q4f€D†ŒNS†AÀùè”jŸG—ýº¶?Þ#Po6’¨AÿṞ®${ùN“JºQ!Տy~¸ÿ‘±gNϘþµA;SÜ25¢©qÄBQ
  lîCFÉ3—œvP>ù­ œ|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. =“³Ho‹6
]Dãë`˜Šïa‘²´Ðe¨äsŠ+ºL¨°ºL%`ý_ƄCøTZn^ÜTIp-/ü²Pª9C1»9ƒ/è¨EãT›‚F]'ŠQÛ:å&ÞÐK>vk7´HÊ]è¢O0An)„Ó
´ÆÒ¿-®Z¯k#P‹ªpßrpÖpH˜mîø¼[ž#BÓ1Í6÷î
•¼RŸC1á×aXÁöŒ)҆XX±|c؁1áqѨF_A2ET?v718]<~š“ALÊÃ+ÈéYãÀ8#’ŸÒG‘FP(–Ûí:ŒFÑтDÕå.é“¿xÚ/é×
      …`Ì”YaN;cÜd2Ò
n>fŒÓšr8²zcœyCEMîgÑT^‰feÅômÏ£Ñ@ô¾ÿþ|eaQ.Jç|da]OE•a,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òoFQ6îRÃÏW(¡ÄOç¶.-HC¢ËÞïÒrT6Ò䱔Ê>χW˜Œ{я¢+fêËà
Cvb>ŽFþEò¢ÑÌÙJ0ZèhŽÝ}P‹R"Ú!·
0y!!䒩¾ôBkê™  Y8¹?n«OÛAÂ*4®±[DÜ֋1“23Üå=ÛK)–ã±)ĸ.øT›£ 
£üw­éF_É/ƒ*Èÿ!É:%ź˜òW¤˜y[cÒsŠ…
.n¸„Ö|—ÀJí!ýÒ«oÞZ¼8‹ñÇà)쭇ˆE™rmÉ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/šNˆi• <˜þe¢•ec§ÿ-8ãæcœ1ý÷10м@\/Ò%Œçc^é*ˏDš~¬{…
[hÚÚÅí#
4zFiƒÃ±Þ56±»&Ú?4ý¼Ã–Vbaás»-Ñe ¶|Ife*¸±/Â!‰ke
ÙkkëN\Z³ÎWŸ£,¡#y’!•C¾öÜØáÄ/ÙíÊ ÜáØ9w©U
ÙJ^ǧá@h1št¬G%¾V„£Ø—|¿Çù*ÅÚíïüØ®ÂaÑÌ·Ôác³V‡CLə£–”΁äfW,ƒéòÑ&j`*[$j      
 ¹lýÄMÚE¯­Máp+Ò:µ/¶.³Fí–EkëW… 
ežDŸ÷üß­‰Ç§8up逋o°$4qŽ.‰™øÚ’(†õ-6—D1ó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        J„NŸí`œ-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ÁŸ+…Œý7gâú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àIo’1Ü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×ç·'~
 
Ø#󓀸mˆVD‚çå[±–y~@ô¸CÛ/JÆÒ¯]¦ß¿Vk°(”î[ݐ™Mˆ¡%[6\ã?'ÏÑÚïgY¶;Ô§ëÀˆ­õ±‘¿

ÈrXçk8ÉØð*œ«ã´*ΤùöðU„Y¬ÚUÝ4<PNØ>J;íV”$O-Ðz”åE¥+öëXvBò7ŠJT¿Ð8ÍIÁ>/hšp*Œ’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Ž@pF•šI1d‡!˜>ùŒ
 
Ò°õ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çž’ ‚©‡†Œ â¾‚êâÜ@Qv‘dBՊV,š 
‹u+Š‚Êæ\(È".€"¬€2Öbm«}îçN¼´çM´}}=ï½Óü9ÉÌ?÷Þ?ßw¿{ÿüÂØ˜rç…
ËW.vœ¸,)6Xµ>.v²[hxRt`‚áÙn8÷‘ÎŒá†#à3‚SqVBNnl…Åo?›&úˆ 
ˆ_>à?ó‡B°ÙHþÊ,ßÌÚ01Ûl4!æøhthÒgÿg•!qA¡KCBcUëU)
ãâSևG¨¬Æ·²f3Í*(Åja`B\ôúØP«%!룣ãbã¦X-ˆŽ¶zg›h•šš 
™òGp«ßƒÿqÏÿDB@Ƅˆ$!!LSŒLH‰ˆ¡„91Œ° >$h‚!F¶ÄBb   ±”p&–+ ›ð'ˆ 
"’¸I´ßùPük1ƈ¿2&ì‰pâñH°P Ô)Œ\N=Ž®>2^b¬1.3¾$2­Ո£I҅
ÜNÖI†IæI"%?›L1ñ7)”:¨Ãt>‘f䫹öi,
å¬ì-ày±êQß+úÄþHOåÍr4ù&üæ4ە+W0œ™Ý¯Í¤ä«õ6Ï?õ      
⪩ê>®šœ󨘂¤Ò’‚‚Ò’¤‚ؘ¤¤XFêË[6â¹V‹Oq„Ý]ªL9¢ÙŸ²ûA{™{U2KîˆP²5M…
ðñYÈ'³2öïúrgnú-GÔMKBÛ¢Ï%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ÑôšñÃôcc8ÆgÚ¯rp°o[˜Ñ}­««Û§2ÒøM
÷¹)÷÷Y¸Í/?Pp—ô¿r3º–†Q߃\a´ÈQš¡´ÉXäç¿Jòxίu$T蓩vmåä1
¤WÙÛz;©Ỳy²öVï+-Ïò?x\ê[‹{xÒdgØw      fá)Ù\R{·…
®>­S^»"Òù]žé¾&Þ5‚‘µu’Ò1ïquõ@d¦q㩎Jj*Sâ
™†zQEÈòãi/”ªPaÝÃ&(SnªÝ.ž1ŒsƲS1—WùÉçW?륟>­!š\d[¤\•ç~¨Z!Å@>üÜv˜ 
€˜Vrjª;Å£J³7jUU2>5¢Ä„„M‘´·îú%t‚¼å°ÚW;ñyJej¸o4æm†Lñù÷i£¢SË”m7@“#ʗýÐß_Ûx‘}=‡k‡ÏIY²‡×ôyãhé\ž‹j
 —gªEwÄ:Ppa÷Xfš8vƒ&û£ƒv‡V­ÍÞqXŽ£¸y"©ú½KƒÁÅ"|Ð㓶Z¾•õ
Œúú&ŒÄù1úAÙÅ[0Üò÷ZŽoNŸŽCýœp8¬‘Kmp·Zߪ4ñØ¿$tjJ|¢ÊR­NLY‘žÿ‰¼l×¥Ý
õu5…-ǯC,w2·¨¸H2Iœ¼Ñ×.Ây8ž³KËS
1ø•÷*Ù½úNÛ~þRSVô>Ÿ¶„K
rçüœÛ:…ÞÑ’5n®Ež4޲Aºâè{8¤Ze¯±Söº‡Ï@_ëî¯o   ó¼Ì 3å³ÔfėéÀX4UÍ 
L„5TÔ±Ä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Ðy‡r'2 “pÉã86~²b⿙̔]ËÏz³)œNcõƒ›ÌÙ­,dóŠn?
'Â8÷— ºsîzÓºâjxazùöš]U¯]Ëä     n‰Û“voÍ
:á]Wvµ´õT벓òW•g¤·s«S—ïeɋúǗ*`(cُcÑ8‡ºžwk^¢”ݝä5Çe„T°€ºº¢{fçüuëÜ¢fk%kqð™þž–º®óJXŸQ®sƒxo÷ƐšrE÷­£MM-*{FÊ­EßÞĹ4°GÐÐ{¸k=Bnöaª[Û^Y_%ñÞòUX#Ý
       Wá8à,ˆÅJÌÃ͸á!،^ƒû÷
³•¾×EhŠÖoµ¦q®æ[c<?VC(l€m 
À%8K¹“q£ßç{$Ù/8_3/O¤Û®ÚÎÜZç³ß—F!ÎÁɏŠùO´Jp¥ÀL`H÷ù['œeÂÐ>9~Rh´Ë2xׯ
]|Êâ{îÛ\^o™½mäõÖ'†¼Ä¤xÓÔoj|‰5žºoôA­8º_‚‡†Éi¡eU4ÞåP–Õ̟ŽàÉ
Kô+)°ô;E8TC¢±-×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›¥€²>å
’|êL–hÂíÎÓË´Š'ø‚ڔᱷMQu°‡˜›{˲Ks$8ˆ
ö¿Æ)["”ÚÃÙòªãssk¤¬²Á`œö¦îJNo·Ò»Vä¾2<-„žîö#_Ïz¿mcO»è”—jE:÷ïQÄHFrejÈÖèVþ-ÕR¿¨ÚÁôù¦vó—}
 ë“²§°B¯ d½Íû/~C·>wÒ)ëêD:$ûG!éç`ÍLttº= êãT 1|Uã
Rº‹;!­£¯¶µ$v˜7>pf!—ÝÜ##˜ÉÉ©ûlimm_̜‘³“|}퀘Y„‡©õG“‹SÙ+bMDD”vºd"ˆç‚9x~ÿ
ƒ%N>†îfT6º´Ý’⢒“G™ôü|m-{½å>(NÂô–ˆÊuÅʽÇJrŠé¼ƒ;Ó÷+¿jåhÔYÉ´—[RXRö
‘“¨ÊÔÐsöÁ¡Ó+ÖTmPGE‡E( 
ïRüÚsª®=(;^]¢,*Ô¦ø„©Ÿ(æº8"ÍH7¤v@LЂK†nYÀ·¯´€çzÒaÈ3Ã~>ÖaYf,=½,²•œi…
¸âSÄ@´žŠ–8ƒ-°úéô\÷=J<)¾[PÕÔAK1ì=ïí‚—}Âw|7gdñl×ßöÏö¤{$ƒÿBö¬väÿ*ÎC8ÚlŒá„an8Vœ3×é¸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 
»7j´¶Olkj¹ƒŽM³M¾Ñewg7Zž{£×¿Vp*õÕÅÕaÓ=|ú/ÙëögîÿêµìÊZûpêυ
ñ¹‹Ú—ÝÙzÿߑY+»ae˜æ7˜Ö’O,¼çœ[âY«¬®\‡­*Y0ê>–Z™A*;8á^(˜*e7 
üÊʎÊï.mÕFko±`­\¶¹ ê;/x7
L©OlzC£õÙõMs§‡q/M™‚£MmgôVTÀ×þFYkÙ]nÍ᳿4ÀâËZAÛL¡Oà-ìxÊkû¤hõ—=¦¨ÃñêZw{<’‡ɈÈG"WD®ˆ\ã1H†RøœÂ³QöLá1*k
>j_…ÁT-‰(c‚Hd„æˆfKB$Aä„("$!š!šŠ   YãBäÉ        Q“bMh¨@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"n›v½Ë‹Yp@}ÚZóò©¿Z÷yÂà˜C4Í¥‚è![¶M±½cËٜÝ
…§ÞÑß"¶+vmyOͯª««‰' œp†£DVøÄi­ð…:p^2Rz!\¢
i.Ieéñ)º­Ó©$-”—Ü•y)ä¨°Ö^Z§’Ä+î,O½JœI¤×€‰ÔëÒ4ñV:Á
'¥¥·Ú)e¼µÃ•r§,®Ä)m}j‡+ƒ@#}fœFÄ,•öÀ€®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'/9žBÉ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

Reply via email to