ÿØÿà JFIF    ÿÛ „ !.%+&8&+/1555$;@;4?.451 4,$,44444444444414444444444444444444444444444444444444ÿÀ  á á" ÿÄ     ÿÄ ?    !1AQaq"2‘¡±ÁðBRbrÑá#‚’¢²3S CñÿÄ   ÿÄ !    !1QAa‘2ÿÚ   ? 5˜Z¯V¦cø)›t/? z¨±>Õ5€¶‹Á¤·¼z¼Ü¬+ñ®v¤¨_ˆR­BFn©—˜ý®ç̝P8gýt·ÉSTŦˆìät?þé¼íìN/Þa)ì–í6ô… Ï¿øÃj´¿KÇü]ÿ ªô¹-eKànëÕHTx}ýSÜ›ÿ ”7Ø×&µ<¦  ¥ÑO¶[Ù¯ä¨ÞÃÿ PZ-¬;#õ|•oaÿ ©CìÞz3˜öː/¤­ñTûIØ}š^ mÓ%ªxˆ¥ÉŸu=Z+ISe¿45™¼u;ú&WØ÷€æßQ™®{|íx*TC“#ZŠìZ§²‹ 6pv…³¿¡äª*áZÐ%ÒOáˆo"x«OHk w±æ+¬V(kMúŸ5Vö«$ ÁrÏbàb57/luR ¸ÑÛj Òµì`Мq­û žICÀÊ•©4€Âcà¨Ï€O´<èÐ:›ù(Ë^L8þ‘ÍÌ#¸Ð_Ì©ÙK(Öz 4¬û+¸;ü’V’84‘¬ÃŽ:[â‡ÔÌáõp¢~§ªlæ£ö{®G>J¼"°‡7¯ÆÉèßû ‹É‹§ÁòÃýâßî ^ƾÙõ‹×óH#«LP½ïX=xÑÍ$|W?•~• îëÔ©ª‹ {ÝT…Kÿ ”hûâá)J*ö˜–ÔU;iÇ€/ ÆþjóZ\ýwØ=Ìm ºèËL9 ýèÆð/¨’¥öo=nË.%Îì ŽÕ¯È|{Oj²ƒE6e/ßdÄõ²Ìâ1O®ò×TsəԸhOMýíMˆ¿¼H˜l²,7Â¥#MF/Úf°Ö½± ¸–dr‹NýÊ íjqx{œÉ ä-È ¦ øÄër¨q°ð †nцýÑÄÆ’mä…n<0È™;ÁÝá¯ÁZƒ7FÀmì­ É&9ˆîéi¶ùN§Y• ÃZãAâ?•‡©‰ , ó¾IŸŠc1 4â&y­&pŠ­6;M À 0¹qç»p.á …ŸÅáK@%6·y6ƒ‰3?”úºŽ‰éX5ªPT §µ!=Mž«Ú½‹ÅgÂSâÉaþÓoö–¯ÁÔìR>5éÿ üs¶ÆUcÌ kÇR ]ÿ ù¬¼«VŽ;Â|‡~¢¦”ÏŰæ {L™Õ°Óv¹ò¸írޡעCÃ!íVÕ {¶»sŒNPg/ "uÕbkm²“$ďå¿é¹§°½æz¯6 †s¿!s–wÚÝ“™Œ °.ûj>·+™Òa…©Œ&rÝÎtÛë긪Ît’LAVp%c Úý[ÄzJ¾ÇàXXç@˜ó<êL]·T˜¾¥1Ó©V‡g´æ½¦Ý@¹óø!_@´ÞâSÁ —S3™•& ]@JHÚý©ZŽ €×æÔr»Áf!‡yÞ4Mv*èÓã_{‘åóUuљØ«Oïé*®EvÑ Œ÷‡U \"㪒ÍK+À 4“M¡ï:0¥5í!'<@î´”>Ç»&Z–ïCCV˜Ì5Šo&îhè.žû |ÓK©h$s6KìŒëã)¹hI¦GïOåóI;ììü#É$Š0…Ææ¥TØ.5­¾gn´ “ÂÖ\:hœ89G)J@„}œ:’Ò{/Š"¦_Æ×7Æ3VÇŠÊa]ÚŒÙ€Ä–=®uÁßâACZƒ§§£ Qnâ:«,×{tyø¬iÛcœÜÄ€H½ÄÍCk´÷šß .W'b¤Íåh]÷€=,Žv×cÚEÚHXJX¶îo¨FÒtèöŸ>ªª6[J®Fµ£sGÁeqõfe\íjÒÐïÄÐGˆe1Ø‹.Ø”‘Ëuø Y­ˆÜ ŽG|zùªüMpDnQWÄ”%JŠ™)â*p@Örš«ÕT2Ð%ˆG#ª„ ·¤!°ŸOTÂT¸aÚ%4&h™LµšØüÐ.F¿²ÐÞ_Ç‚¾ÅÃaÜ÷09Æ q€öy˜v‡85õN÷]¬äѼóS{°_MެúÔ#°Ç¸0åÞè2ëôPcvÆw9®ií1Ä8F™˜à‰´+‰Ik1òÝ7“Ñ×ÒsÝ\x‚h`ÞÑ`ó"|µEcý£n˜h`}GÞ !±ù²Ápü²ß6 0ïi󜵩SÈÇ7˜-ÕURO˜¦´f$ªž-Í6(œ}<„ éc øs]ŽŽ„*—¾ ìdŽ„)méª\¿êÎIg¾ØÞ~I#C/¼¼´EÁÈŽi8“©õådô·>euä ƒ'Ê×लR1ÉJE1ÐAát`t;ÇР%Ý<‡¥„ÍÆ`×Oyó)õiI€ñQaŸ4Ûù\áàaÃÔ¹HÃu¹*k€¦<„e S‡&õÏ B!ŽhüÞ`yj}mªf×\¿ Ç~æ­9‡û\՞Ǖg²1Žû5V7 !àöšm° c`ܬøÇìµÒ'P"?…´Ö,"§^•õލsÔ)6˜sæéÍR¼ ò|Sl”‹7 nPW Gòú÷½§O¯‡„l¡kSÞŒr½PÊ@æ¢pŽ-mÿ #Ÿ˜Àº¶Áä¦;ïÔæ$1££`“Õ>„—·ž)ßð³ñ#Ï Ô$¶œ‰ÊE‹À;÷º ¯«P:Ñ”8–IÊtpÞ3ª“>ê“þës4ò2OÏÕ­±zô†Õ§‰.÷ä¸;¿˜“'œ›žª}«Œ{ª±Ì 9ÔóÞÕ‡0 $íWV3Üì¬ —@kÝ4@¿r¼±½¬™›?øØæ´'Áé®CË3-g$˜ö‡×auÚi´Žp/êÛ æF›Ú2v‹ã¿¿,nB1̨ƃqÞa5͝@&Æû“él÷ \C²½UÍc ¯k×¢U ÖéQå™—-r wô ÞÏ<Ò=&=ÿ Ôê Òêˈt,i—;LîÜ á¸*ÚÃ1$êL•LÍ <É)ýÐà’ ;F™{ƒ™˜€&'}‚ãÄK`¡ÞT@I;®žZóè‚s’7®°›+§O­Åq©é»²9<Ô J ¼9O’HL»Ùïì¸rk¼Ž_ý‘TŸu[²ßÚŒ·ü÷B%¯E ŸÔX5êO´ Ç•€’I0 ÉJX` ñ¹õ%;µŸD‘«´€àwÒ™U ûئžÖö\×®×´8 ½‡ºÐÆÓ§?Àkmœ=;d5*@-ì0F Rªýš[Ü6âö̃ڸr*KA9· u*µæ£?U¸Âêí†8@¦X4 e-ò„0s{ HâUpU?¼mñRa°®a%Ð'tÉ×’\¾ÊÉ]t›h>·(Ë@R¼¡Ãt h}’O÷au<+nT…Ö…MӐ??Óe95 q>í/;&JSû °¯ÊéÞ øƒ*Ã2½Ài&:nôUl=¾¿5eˆ3”ñc|Ú2V”>„»&eE;«ÚäC p¢Û úy 9š[ŒÌx¼擼A&DåÒ¯ˆ¤ÀÌ;"˜ ÏQä¸åhÊ}Ûq«Û0WžÒ|»€ø®öCm5•\ÇÀ§Pe3£]0ÃàLDÉ‰1øªxjgwT‚÷¿LΨK‹›ùs—xˆÜ±µ kæ¸f‰‰ÜGk/LÛØ6d9ò¶ùA{ƒA3š/¬D¬khÓk‰`˜"㯒r¿±Óã jx‡°e}<Ñø\3y:'À•/h½Í€Ç4~g ?Û(¼]v‘ªlKÎâ~?O‚W%{Ì:“'©úNq¾›úo(X’¥¯ˆ nFê{Ç€ü?º'ë ø‹ì Þ09ŒÌç9Æ —ËC`j@ÓÄ(+a‹un¸#ÂꟋ{K`‘ÑÍÍ'à´»/Û,KW;Þ4²þð ï Nm|~fGÏ(…³Ã)«1ö­Õ ¥‡¨©ƒÃ™ü-s=à=U66Ï«Ýc蓦W¹íž®›nÔ%êÇìŒ<#Ü×84ån®Ð ÒåOC` ñânÑs‡¢ç 1õ%Îhì½Ã½® e:ݼUZo™`  ÅZŸŒÊ«ê1ÏÄo$q¹Þ€©ˆhÐÉä¯ñ[!…Ú˜àJ:x2$Íß&PåT£6ç— ‡Í*4Ýšçjÿ ‰É nófÐ ó(L5C•åÆ\rMÒ@ò }y-W}™üýVù—ú¢=Ù”c®‘< M ž ´Phr ¦©TD ‘ù.$´÷O‡‘V2Æò.=IUŒ=ž‡â¬i™aþÓåÙ?òUø'ØÖ•.~* šTŒ!•-×áºTâ®ä#õü'´ eýlYÅÓeÕKÂrT"CÚ@u!Óxƒ{š3€}1¿(r}%«nËamjÑ%ÑNEò v ˜à  σöK³,*º.àzù¨™Ó ÚçâU¦*¿ 9{%Ö¹ njûdaXöb) kÛÆ±ûÓ\°M7ˆÂ=û›ç¿Ã‚­V»Cg–8ÙêE- j)k$º`Ã-ùEýeBÆÇ]c¡°ñty&Òd0nõ'¡W+ƒ*|–øµFa\GQªEAÔp5\Ǽ·¼Ç8·õ -â§Ú[ ‡ uZeÖ 3}×d'+¹:ð+K†Û®s!Ï$úe€<Û”x)1»a­¡LC]¸µík…ÚàA»AYº{†ªS[¦5HÒ7ù --,ísòDØ€èk ÞÀîÜ ò@â( ËNˆë›4ô½•/¦o‡€Û7 ê•ÆêòðÜy'Án½µ á˜ݦ ndeo…[ì¶Ê,¥R³Ä=À±—–ß;£™´ñSâ*g§”ïaið‘Jå~™ÓÞ ß³Õ¢»8x埒²52>AÊb&-÷\7´éÄù€T˜,w;3{ï˜k…à¹ÄqÀ«œ{€\ ˆ¾[´¨јr &Úé„Ívˆ±8†¿]|¬ņ4I×pÞS1ÈÖz‰#Ìv‡G!YNògñ:màTz¢Ý1ô©^O=~ë|5Bã™ç•¼µõ•bÆ@úÕS¬ÈŒ#¬zünrŸ û” Z²•èðV"ÁHÚý©wÝ €7¼Ìu1hÑa3Éä û f$o¿É ™Ú›ÝçnpÒ3äÌ3†Í§,Äï]$‰/pê †«À¼¸e9­Æê_C]žƒ·ý·frÁN«, E=›Çq -‰öŒ:aÏ¿±í&£Í:-} 84‘ÿ eƒQÑeëSsuiA ³g㟥ú£?ÿ ʼn*”“÷aühe:ÊWa@ÒÞk±eØ] F Ô—r.åä˜ @ö¥ªZoÐýYL·¥S²G/‡ñ <~*ZÆ´è>JlòàÛÆ½ÿ 窘ìGN¢:I®KšJp/`íIÁÀõ#Ä-€ö­šµŒoF4|ÆQØÆ@Ì|£Ô…¢À{9˜è½Üó›€ôYÒÎYsið;ís¤€à²ˆ‚4qÉVŒI$ ‰"° æµ8cXGjœˏ¡Aâý•ËÜ¢ûï e·çLx']á"oÅÎê3¯Ç—¹”ó0nå‚âg{Œñ> S´˜îè°g238‚ãköÝfÚd´6Ò€;ò÷±¢™¼›º ¢Æ'¥Ðx'e¬ç ]bÈÆV¢ó‹kýBO ðÊâ$Ÿ!×T 3Mýמ žìٍàÌü‘8÷€àæØ8æ©6‰©L´«…oãpð„~Çk‰!ñ;‹”ÛžÍ àž±z Ÿôû øŸÝužÏ;ÿ #|u6™Þ¬ÚˆÐõA4¶â|ôl|Ê2ŽÇ¤ÝÅÇY.<#Aí.k§hóF‚”Y; M½Ö4hŸ4&›­¿tès´%FìL¥£Ãk‰ÇT¤haÁ¤ÚxfÉ`ÑìË›>i 3t‚:,–+^÷´–{Û–Nxi"x‘Ûg î¨>¥Õ܁ùZH,2Û“:8xÊ¢Çí9.É-Ìâã-=çjwµS˜dütžçwýGòú®®ûº_ˆýx$–¡ãøO EÚÛÏ÷R„×w+3£Á£öUMyR²¹âŒ°š›¸Ñãò9§Ó_Dl+Ùßc›úšGÅÌc†Ž!Ko=¶.‘Îÿ c²(2®V mª.ÿ ¹B›¹å ù„öŸSV>™ü¯$y:G¢Z×àøúdî¹û­·ýÇ´:•c LÍõi_‹ö+ÎæGÊè>OŠ•äž´§Þ{X}¨1ÚTc›»Qþ•êô°t¿OP?eæ~É{5]•ÙR£r5†nZ\ã@ &îJõ ¾àC°þV>fé¥/ü5ñÊIº_é5 ;e­h<@ Ä&æÃëE%;X,ÒãÆÞ`Oò¦kŸm#˜!ÀyÄ¢| óLšò¥Ä` ¶R=|ÈCâh5ò3DˆïF†ðÒ#ÅìÛœ?¸yhBãœí ZxßÎÄhºRK„`Þödvײ™ÀÈÑÒgŒuY w³%†ƒÓzõ ÖÏp‚dH®¦A´ù§»ÓÇMæ~)ˆð‡û:ù&Ä •vGD´À n ݇¼Ö8Fö óáà£~Ë¥x`oK|Ä?fxiØü%pìR>éò+Û±éÎ>núlFŤ'tq8LZÏvÃ?„¡ß±È⽆¯³íü@x|PöUäèØã¡ð‚ŒAìÏ"vÍwóŸÍ{ ý0.z È•Ö{,N¡£¡ŸKÕÙž>Ýœþ ÍÀ°<×EA!Å‚D™IúOÍ¡>ôG}Â` ÍßkÜL™Ž Þð™ {IøF²¹òQ3&!ÃÂÞz.d&Ï-sH¸,Ôõ˜ŽP€ 77ˆÝ¼ÊëÜw =cÕ Ú,ØÐ5ÎYÐ)ì´öœgŒ[¤ßv㙑8心>h]§µháYš£²ºÑ.{Ï7Sð•?´~×SÃKýJÛ˜ ™Íäiúu<µX¶1õ^kâçIÑ£sZ4h>j*ÔšD:4­¿_ ÷¸ Õxæÿ ¸?Mù _•­ÊÐ ä ÷ý ÑwL œ­ïnTkÛUÍN©ë:¦fV ¶ÜÔÜMªÅâA½–¿R×TXš-%iTÊT•‡Ù‚JôϐZxWÑè‰f‰òG º ×Õû2aZ7OU3[“×AT–ÞŒ…-‘¤”Ì ì&(ˆ¿­•ƒkï’:ðY¦W‘ Å)“†‘˜³Åtcø˜ñTÂwÚÇ4|üLÇªí–v- qˆèU qPE.†â‘˜µ Æ,ÐÅs]8¾„oúÑ i>ÜxxÈó)ƒ ´æÁâØ$À‰vžŸf$Ž |ãw;ÀÁIJ»b` {¦Ó¤Ú$©YÀ‘n@Óïž«9J¼êG m¤ ܯ¹ÌW4€ÐÒÅÛ‡#褕Ÿn-?í|с¥÷Ú¹¬'´ÞÜ9ÓK `hê£SÄSà?7—Wí_´…óB›»:=Ãïq`<8ñÓŒÑlú2d¬ê³£hÖ[l|$vÝro~'R®‰§°ñmY ͧäP |PUª¹·:3Œ[Û{Xÿ ºâ@‚W–Äé u‚ ¯´*=íή.pûÒdt @G‰¬ s¸ ëÉücr ÞæÑ¨Ê@>¤¢Ö±. Þ'¯°ÌME[YéïĵÂCå½ Ué©Áû'Ê9%eÔðNU”ë‘ÌsD3/®+UI˜9h.WC”빓$#:pz:YÓ ¿xž* ³$Í +$kñAŠ‹†¢ Uê>¸)_š¬÷©ßAÂÔb9ÇU ¯¾á•9¯ÏÏ÷O÷¼¼Fähal1‰3Ì[Ïr•´UCksNÐ] R‘¸¥H+§Šé†c©vÖÞ0iÓ76s†î!§=ß ¼~Ô'°Ãmäoäš³ªøi1úÉ)³yV8 CLÄØÁ‘WYïi€H6ÖÑiámø^ÈY´°Ñ7¥Û*—Ñ©L«Qƒï—Ùrÿ ›£Ð*š¸ˆL©ˆ$ˆ ÷¾D§9È®«qbqC)–ˆïv´çñsÑVT­Ø, <àïºÀO«Jý·õ àfPìð .wFšir´þ’2_Y *Æ€x\« ì€9š@ Ž|F⇥ˆkZ@hÖÄ0t¿-<“‹qµ¾*ZL¤Ú)&BJpÓF5=$„at*Zš$’ÑtdûÝRI1 2މ$€$I$#‰SÞ’Hë¬ï;Á$¡t$’`<(ñÇt)$‡Ð.Êf¢X’Kt=Éé$‚ˆªè¢oÝëòI%Rgcª÷ŠyI%¡‰ÿ !ñ)´õ $¤ Ô’IIGÿÙa 3g@sPddlZddlZddlZddlmZeeeZ ej Z gdZ ddZ ddZde vrdZd Zdd lTzdd lmZe d WneyYn0ddlZzdd lmZWneyYn0ddlZe ee[nde vrldZdZdd lTzdd lmZe d Wney"Yn0ddlZddlZe ee[zdd lmZWneyhYn0nedeejd<ddlmZmZmZm Z m!Z!m"Z"m#Z#m$Z$[ e dre%Z&ddZ'e(Z)e'dde'dde'dde'dde'dde'd d!e'd"d#e'd$d%e'd&d'e'd(d)e'd*d+e'd,d-e'd.d/e'd0d1e'd0d2e'd3de)Z*e(Z)e'dde)Z+e(Z)e'd4d5e'd6de'd7de'd8d9e'd8d:e'd;d<e),ee'd=d>e'd?de'd@de'dAdBe dCre dDre'dEdCe)Z-e(Z)e'dde'dde'dde'dFdGe'dHde dIr`e'dJde'd d!e'dKde'dLde'dde'd3de'dMde)Z.[)[[&['dZ/dNZ0dOZ1ddRdSZ2dTdUZ3dVdWZ4e gdXddZd[Z5d\d]Z6e d[e7ehe*kr8e8ehe-kr8ddQdd_d`daZ9dbdcZ:e dadddeZ;dfdgZdldmZ?dndoZ@e gdpddqdrZAddsdtZBddulmCZCmDZDGdvdwdweCZEdxdyZFeFZG[Fddzd{ZHedkZIe d|eIr d}d~ZJeEeGjKeJeLeJeLZM[JdddZNe dddZOeO\ZPZQ[Oe dre dse drdZRdNZSZTe gdddZUddZVddZWddZXddZYe gde drddZZddZ[e ddge drddZ\ddZ]e ddgdddZ^GdddZ_ddZ`ddZae dseaZbdeb_cGdddejdZeedkrLGdddZfddZgdS)N)_check_methods)altsepcurdirpardirseppathseplinesepdefpathnamepathdevnullSEEK_SETSEEK_CURSEEK_ENDfsencodefsdecode get_exec_pathfdopenpopenextsepcCs |tvSN)globals)r r!/opt/python39/lib/python3.9/os.py_exists)srcCs6z t|jWSty0ddt|DYS0dS)NcSsg|]}|ddkr|qS)r_r).0nrrr 0z%_get_exports_list..)list__all__AttributeErrordir)modulerrr_get_exports_list,s  r%posix )*)_exitr))_have_functionsntz zno os specific module foundzos.path)rrrrr rrr r*cCs"|tvr|tvrtt|dSr)_globalsr*_setadd)strfnrrr_addhsr1ZHAVE_FACCESSATaccessZ HAVE_FCHMODATchmodZ HAVE_FCHOWNATchownZ HAVE_FSTATATstatZHAVE_FUTIMESATutimeZ HAVE_LINKATlinkZ HAVE_MKDIRATmkdirZ HAVE_MKFIFOATmkfifoZ HAVE_MKNODATmknodZ HAVE_OPENATopenZHAVE_READLINKATreadlinkZ HAVE_RENAMEATrenameZHAVE_SYMLINKATsymlinkZ HAVE_UNLINKATunlinkrmdirZHAVE_UTIMENSATZ HAVE_FCHDIRchdirZ HAVE_FCHMODZ HAVE_FCHOWNZHAVE_FDOPENDIRlistdirscandirZ HAVE_FEXECVEexecveZHAVE_FTRUNCATEtruncateZ HAVE_FUTIMENSZ HAVE_FUTIMESZHAVE_FPATHCONFpathconfstatvfsfstatvfsZ HAVE_FSTATVFSZ HAVE_LCHFLAGSchflagsZ HAVE_LCHMODlchownZ HAVE_LCHOWNZ HAVE_LUTIMESZ HAVE_LSTATZ MS_WINDOWSFcCst|\}}|s t|\}}|rz|rzt|szzt||dWntyTYn0t}t|trnttd}||krzdSzt||Wn"t y|rt |sYn0dS)N)exist_okASCII) r splitexistsmakedirsFileExistsErrorr isinstancebytesr8OSErrorisdir)r moderNheadtailcdirrrrrRs$     rRcCsht|t|\}}|s(t|\}}|rd|rdz t|WntyRYqdYn0t|\}}q(dSr)r@r rPrV)r rYrZrrr removedirss    r\cCslt|\}}|r(|r(t|s(t|t||t|\}}|rh|rhz t|WntyfYn0dSr)r rPrQrRr=r\rV)oldnewrYrZrrrrenamess   r_)rRr\r_TcCs$td||||tt||||S)Nzos.walk)sysaudit_walkfspath)toptopdownonerror followlinksrrrwalks;rhc cs g}g}g}z t|}Wn6tyN}z|dur8||WYd}~dSd}~00|z,z t|} WntyYWq`Yn0WnBty}z*|dur||WYd}~WddSd}~00z | } Wntyd} Yn0| r|| jn || j|sX| rX|r"d} n,z | } WntyFd} Yn0| } | rX|| jqXWdn1sv0Y|r|||fVtj tj } }|D]4}|||}|s| |st ||||EdHqn,|D]}t ||||EdHq|||fVdS)NFT) rCrVnext StopIterationis_dirappendr is_symlinkr islinkjoinrb)rdrerfrgdirsnondirs walk_dirs scandir_iterrorentryrk walk_intormrnrodirnamenew_pathrrrrbXs\   $     .  rb.follow_symlinksdir_fdccstd|||||t|tr(t|ds0t|}|sBt|d|d}t|t|d}zJ|srt |j rt |t|rt||t|t|||EdHWt|n t|0dS)Nzos.fwalk __index__Frzr|)r`rarTinthasattrrcr5r;O_RDONLYstS_ISDIRst_moder samestat_fwalkrUclose)rdrerfr{r|orig_sttopfdrrrfwalks! rc cst|}g}g}|s|rdng} |D]} | j} |r:t| } z4| rb|| | durl| | n || Wq$tyz| r|| WntyYn0Yq$0q$|r||||fV| dur|nt|| D]} z@|s |rt| |dd} n| \} } | jdd} t | t |d} WnDty^}z*|dur>||WYd}~qWYd}~n d}~00zH|szt | t| rt || }t| |||||EdHWt| qt| 0q|s||||fVdS)NF)r|r{)r{r~)rCr rrkrlrVrmzipr5r;rr rrorr)rtoppathisbytesrerfr{rsrprqentriesrur rdirfderrdirpathrrrrsV      "  rcGst||dSr)execvfileargsrrrexeclsrcGs |d}t||dd|dSN)rDrrenvrrrexecle srcGst||dSr)execvprrrrexeclp(srcGs |d}t||dd|dSr)execvperrrrexeclpe/srcCst||dSr_execvperrrrr8srcCst|||dSrrrrrrr@sr)rrrrrrc Cs|durt}||f}nt}|f}t}t|rB||g|RdSd}t|}tdkrht|}tt|}|D]}t ||}z||g|RWqlt t fy} z| } WYd} ~ qld} ~ 0t y} z| } |dur| }WYd} ~ qld} ~ 00ql|dur|| dS)Nr+) rDrenvironr rwrr rmaproFileNotFoundErrorNotADirectoryErrorrV) rrr exec_funcargrest saved_exc path_listr#fullnameelast_excrrrrKs6    rc Csddl}|durt}||dtz|d}WntyNd}Yn0trz |d}WnttfyvYn0|durt d|}|durt |t rt |}Wdn1s0Y|durt }|tS)NrignorePATHsPATHz*env cannot contain 'PATH' and b'PATH' keys)warningsrcatch_warnings simplefilter BytesWarningget TypeErrorsupports_bytes_environKeyError ValueErrorrTrUrr rPr)rrr path_listbrrrrks0      &r)MutableMappingMappingc@sleZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZdS)_EnvironcCs"||_||_||_||_||_dSr) encodekey decodekey encodevalue decodevalue_data)selfdatarrrrrrr__init__s z_Environ.__init__cCs<z|j||}Wnty0t|dYn0||Sr)rrrrrkeyvaluerrr __getitem__s  z_Environ.__getitem__cCs,||}||}t||||j|<dSr)rrputenvrrrrr __setitem__s   z_Environ.__setitem__cCs@||}t|z |j|=Wnty:t|dYn0dSr)runsetenvrr)rr encodedkeyrrr __delitem__s    z_Environ.__delitem__ccs$t|j}|D]}||VqdSr)r rr)rkeysrrrr__iter__s z_Environ.__iter__cCs t|jSr)lenrrrrr__len__sz_Environ.__len__cs$ddfddjDS)Nzenviron({{{}}})z, c3s*|]"\}}d||VqdS)z {!r}: {!r}N)formatrr)rrrrrr sz$_Environ.__repr__..)rroritemsrrrr__repr__s  z_Environ.__repr__cCst|Sr)dictrrrrcopysz _Environ.copycCs||vr|||<||Srrrrrr setdefaultsz_Environ.setdefaultcCs|||Sr)update)rotherrrr__ior__s z_Environ.__ior__cCs$t|tstSt|}|||SrrTrNotImplementedrrrrr^rrr__or__s   z_Environ.__or__cCs$t|tstSt|}|||Srrrrrr__ror__s   z_Environ.__ror__N)__name__ __module__ __qualname__rrrrrrrrrrrrrrrrrs rcstdkrHdd}|t}fdd}i}tD]\}}||||<q0n(tfddfdd }}t}t||||S) Nr+cSs t|tstdt|j|S)Nstr expected, not %s)rTr/rtyperrrrr check_strs z!_createenviron..check_strcs |Sr)upper)r)encoderrrsz!_createenviron..encodekeycs(t|tstdt|j|dS)Nrsurrogateescape)rTr/rrrrrencodingrrrs z_createenviron..encodecs |dS)Nr)decoderrrrrsz_createenviron..decode)r r/rrr`getfilesystemencodingr)rrrrrrr)rrr_createenvirons"   rcCs t||Sr)rrrdefaultrrrgetenvsr)rrcCs t|tstdt|j|S)Nzbytes expected, not %s)rTrUrrrrrrr _check_bytes s rcCs t||Sr)environbrrrrrgetenvbsr)rrcs4ttfdd}fdd}||fS)Ncs&t|}t|tr|S|SdSr)rcrTr/rfilenamererrorsrrr$s  z_fscodec..fsencodecs&t|}t|tr|S|SdSr)rcrTrUrrrrrr0s  z_fscodec..fsdecode)r`rgetfilesystemencodeerrors)rrrrr_fscodec s   rforkspawnvr)P_WAITP_NOWAIT P_NOWAITOcCst|ttfstd|r"|ds*tdt}|spz$|durJ|||n ||||WqtdYq0n,|tkr||St|d\}}t |rq|t |SdS)Nzargv must be a tuple or a listrz"argv first element cannot be empty) rTtupler rrrr)rwaitpid WIFSTOPPEDwaitstatus_to_exitcode)rXrrrfuncpidwpidstsrrr _spawnvefMs$  r cCst|||dtSr)r rrXrrrrrrhscCst||||tSr)r rDrXrrrrrrspawnveqsr cCst|||dtSr)r rr rrrspawnvp}srcCst||||tSr)r rr rrrspawnvpesr)rr rrcGs t|||Sr)rr rrrspawnlsrcGs|d}t|||dd|Sr)r r rrrspawnlesrcGs t|||Sr)rr rrrspawnlpsrcGs|d}t|||dd|Sr)rr rrrspawnlpesrrrcCst|tstdt||dvr.td||dks>|durFtdddl}ddl}|dkr|j|d|j|d}t | |j |S|j|d|j|d }t | |j |SdS) Nz&invalid cmd type (%s, expected string))rwzinvalid mode %rrz+popen() does not support unbuffered streamsrT)shellstdoutbufsize)rstdinr) rTr/rrr subprocessioPopenPIPE _wrap_close TextIOWrapperrr)cmdrX bufferingrrprocrrrrs(  rc@s<eZdZddZddZddZddZd d Zd d Zd S)rcCs||_||_dSr)_stream_proc)rstreamr"rrrrsz_wrap_close.__init__cCs8|j|j}|dkr dStdkr,|S|d>SdS)Nrr+)r#rr$waitr )r returncoderrrrs  z_wrap_close.closecCs|Srrrrrr __enter__sz_wrap_close.__enter__cGs |dSrrrrrrr__exit__sz_wrap_close.__exit__cCs t|j|Sr)getattrr#)rr rrr __getattr__sz_wrap_close.__getattr__cCs t|jSr)iterr#rrrrrsz_wrap_close.__iter__N) rrrrrr)r,r.rrrrrrs  rcOs:t|tstdt|ddl}|j|g|Ri|S)Nz&invalid fd type (%s, expected integer)r)rTrrrrr;)fdrkwargsrrrrrs rcCst|ttfr|St|}z||}Wn.tyVt|drDntd|jYn0t|ttfrj|Std |jt|jdS)N __fspath__z/expected str, bytes or os.PathLike object, not z7expected {}.__fspath__() to return str or bytes, not {}) rTr/rUrr2r"rrrr)r path_type path_reprrrr_fspaths"   r5rcc@s.eZdZejddZeddZeeZ dS)PathLikecCstdSr)NotImplementedErrorrrrrr2,szPathLike.__fspath__cCs|turt|dStS)Nr2)r6rr)clssubclassrrr__subclasshook__1s zPathLike.__subclasshook__N) rrrabcabstractmethodr2 classmethodr: GenericAlias__class_getitem__rrrrr6(s   r6c@s4eZdZddZddZddZddZd d Zd S) _AddedDllDirectorycCs||_||_||_dSr)r _cookie_remove_dll_directory)rr cookieZremove_dll_directoryrrrr<sz_AddedDllDirectory.__init__cCs||jd|_dSr)rBrAr rrrrr@s z_AddedDllDirectory.closecCs|Srrrrrrr)Csz_AddedDllDirectory.__enter__cGs |dSrr*r+rrrr,Esz_AddedDllDirectory.__exit__cCs|jrd|jSdS)Nzz)r rrrrrrGs z_AddedDllDirectory.__repr__N)rrrrrr)r,rrrrrr@;s r@cCs ddl}||}t|||jS)Nr)r+Z_add_dll_directoryr@rB)r r+rCrrradd_dll_directoryLs  rD)rMF)TNF)ryTN)N)N)N)N)rr)hr;r`r5r_collections_abcrrr rr>builtin_module_namesZ_namesr!rr%r rr&r)rl ImportError posixpathr r*extendr+ntpathmodulesZos.pathrrrrr rrr rr,r1setr-supports_dir_fdsupports_effective_idsr. supports_fdsupports_follow_symlinksr rrrRr\r_rhrbr;rCrrrrrrrrrrrrrrrrrrrrUrrrrrrrrr rr rrrrrrrrrr5rcrABCr6r@rDrrrrs`        (                                             >R 18    -G