f| gdZddlZddlZddlZddlZddl Z ddl Z ddl ZddlmZddlZddlZddlZddlZejZejejzejzZeedr eej zZeZ!eedr e!ej"zZ!eedrej#Z#ndZ#dZ$eZ%d Z&d Z'd Z(Gd d Z)dZ*dZ+da,dZ-dZ.dZ/dZ0dZ1dZ2da3dZ4dZ5dZ6d/dZ7d0dZ8de$dfdZ9GddZ:Gd d!Z; d1dd%d&Zd(kre*,, gdJ55 5 5 DI#DMyr&c|Sr(r9s r__iter__z_RandomNameSequence.__iter__s r&cjd|j|jdS)N)k)joinr;choices charactersr>s r__next__z_RandomNameSequence.__next__s+wwtx''1'==>>>r&N)__name__ __module__ __qualname__rFpropertyr;r?rGr=r&rr1r1sW+9J X?????r&r1c" g}dD]-}tj|}|r||.tjdkrV|tjdtjdddddgn|gd  |tjn6#ttf$r"|tj YnwxYw|S) N)TMPDIRTEMPTMPntz~\AppData\Local\Tempz%SYSTEMROOT%\Tempzc:\tempzc:\tmpz\tempz\tmp)z/tmpz/var/tmpz/usr/tmp) rgetenvappendnameextendpath expanduser expandvarsgetcwdAttributeErrorrcurdir)dirlistenvnamedirnames r_candidate_tempdir_listr^s&&G+,,*W%% +GNN7+++ x4,,-DEE,,-ABB#Y'D E E E E 999:::#sz||$$$$ G $###sz"""""# Ns2&C0D  D c t}t}|D]}|tjkrtj|}t dD]?}t|}tj||} tj |td} tj |dtj |n#tj |wxYw tj |n#tj |wxYw|ccS#t$rYt$rUtjdkrAtj|r"tj|tjrY.Ynt($rYnwxYwt+t,jd|z)NdsblatrPz)No usable temporary directory found in %s)r1r^rrZrUabspathrangenextrDopen_bin_openflagswritecloseunlinkFileExistsErrorPermissionErrorrSisdiraccessW_OKrFileNotFoundError_errnoENOENT)namerr[r-seqrSfilenamefds r_get_default_tempdirrvs> ! !E%''G #*  (""3''C::  C;;Dx}}S$//H Xh>>)& "g... "  " Jx((((CJx(((( "   "   H$$)<)<$JsCH--%H     FMG#$ % %%sID)1CD C11D 5D) D  D)) F5AF FFc tgt ttatn#twxYwtSr()_name_sequence _once_lockacquirer1releaser=r&r_get_candidate_namesr|shA !%!4!6!6    J    AA-c tj|}t}|turt tj|}ttD]}t|}tj |||z|z}tj d| tj ||d} nj#t$rYpt$rRtjdkr@tj|r!tj|tjrYɂwxYw| |fcStt(jd)Nztempfile.mkstemprarPz#No usable temporary file name found)rrUrbr|rmapr*rcr rdrD_sysauditrerjrkrSrlrmrnrpEEXIST) r-presufflagsr.namesrsrSfilerus r_mkstemp_innerrsIH (  3  C " "EeCL%((W~~E{{x}}S#*s"233 %t,,, $u--BB    H   D  SX^^C%8%8  3))! 4x &-? A AAs3C  D1AD1/D1c|tjvr||g|RddidStjdkstj|s ||g|RdSdS)Nfollow_symlinksFrP)rsupports_follow_symlinksrSrUislink)funcrUr"s r_dont_follow_symlinksrs| s+++ T0D000%00000 T  !6!6  TD  r&c tj}t||dn#t$rYnwxYwttj|ddS)Nr)rchflagsrrYchmod)rUrs r _resetpermsrsc0+ gtQ////      #)T511111s --c6 tjtSr()rfsdecoder)r=r&rr r $sA < ! !!r&c6 tjtSr()rr*r)r=r&rr r (s@ < ! !!r&c tgt ttatn#twxYwtSr()r ryrzrvr{r=r&r _gettempdirr.sc0 !.00    J   Nr}cD tjtSr()rrrr=r&rr r :s* < & &&r&cD tjtSr()rr*rr=r&rrr>s, < & &&r&Fcx t|||\}}}}|rt}nt}t|||||Sr()r/_text_openflagsrfr)r,r+r-textr.rs rrrBsM8(8'L'L$FFC  #vvuk B BBr&c t|||\}}}}t}|turttj|}t tD]}t|}tj |||z|z}tj d| t j |dnj#t$rYot$rRtjdkr@tj |r!t j|tjrYȂwxYw|cStt(jd)Nztempfile.mkdtemprrPz(No usable temporary directory name found)r/r|rrrr*rcr rdrUrDrrmkdirrjrkrSrlrmrnrpr)r,r+r-r.rrsrSrs rrrisN (8'L'L$FFC " "EeCL%((W~~E{{x}}S&4-&"899 %t,,,  IdE " " " "    H   D  SX^^C%8%8  3))!  &-D F FFs*C D' AD'%D'rAc2 |t}t}ttD]J}t |}t j|||z|z}t|s|cSKttj d)Nz"No usable temporary filename found) r r|rcr rdrrUrDrrjrpr)r,r+r-rrsrSrs rrrs " {ll " "EW~~E{{x}}S&4-&"899t}} KKK  &-> @ @@r&cZeZdZ dZdZd dZejdkrejfdZ dZ dSdZ dS) _TemporaryFileCloserNFTc0||_||_||_dSr()rrSdeleter9rrSrs r__init__z_TemporaryFileCloser.__init__s   r&rPc|js`|j[d|_ |j|jr||jdSdS#|jr||jwwxYwdSdSNT) close_calledrrhrrS)r9ris rrhz_TemporaryFileCloser.closes$ *)>$(!*IOO%%%{*ty)))))**t{*ty))))*  * *)>)>s A A%c.|dSr()rhr>s r__del__z_TemporaryFileCloser.__del__s JJLLLLLr&cX|js"d|_|jdSdSr)rrrhr>s rrhz_TemporaryFileCloser.closes7$ "$(! !!!!! " "r&T) rHrIrJrrrrrSrirhrr=r&rrrs DL x4 #z * * * *      " " " " "r&rc6eZdZ d dZdZdZdZdZdZdS) _TemporaryFileWrapperTc\||_||_||_t||||_dSr()rrSrr_closerrs rrz_TemporaryFileWrapper.__init__s.   +D$?? r&c |jd}t||}t|dr/|tjfd}|j|_|}t |tst||||S)Nr__call__c|i|Sr(r=)r"kwargsrs r func_wrapperz7_TemporaryFileWrapper.__getattr__..func_wrapperstT,V,,,r&) __dict__r6hasattr _functoolswrapsrrintsetattr)r9rSrarrs @r __getattr__z!_TemporaryFileWrapper.__getattr__s}V$ D$   1j ! ! D  d # # - - - -$ # -$(s rrz_TemporaryFileWrapper.__enter__s  r&cf|j|||}||Sr()r__exit__rh)r9excvaluetbresults rrz_TemporaryFileWrapper.__exit__s-##C33  r&c: |jdSr()rrhr>s rrhz_TemporaryFileWrapper.close s#  r&c#&K|jD]}|VdSr()r)r9lines rr?z_TemporaryFileWrapper.__iter__s. I  DJJJJ  r&Nr) rHrIrJrrrrrhr?r=r&rrrs|@@@@ *  r&rw+bTerrorsc   t\t tjdkr|r tjz d|vrt j|}d  fd} t j|||||| } t| d| } t| d| } | _t| |S#| xYw# &tjdkr|stj xYw)NrPbc4t\}|Sr()r)r"rur-rrSr.r+r,s ropenerz"NamedTemporaryFile..opener?s!!#vvukJJD r& bufferingnewlineencodingrrbufferraw) r/rfrrS O_TEMPORARY_io text_encodingrer6rrhri)moderrrr,r+r-rrrrrrrSr.s ``` @@@rrrsU((8'L'L$FFC E x4F   $$X.. DxTY '(6%''' $$//C#uc**CCH(tV<< <  JJLLL   SX%5%5&%5 Jt    s+C9CCC+Dposixcygwin O_TMPFILEc  d|vrtj|}t\ t trmd  fd} tj||||||} t | d| } t | d| } | _| S#t$rdaYnt$rYnwxYwd  fd}tj||||||} t | d| } t | d| } | _| S)Nrcntjztjz}tj|dS)Nra)rrO_CREATre)r"flags2r-rurs rrzTemporaryFile..openerys0#-/CK<?Xc6511 r&rrrFct\} tj|n'#t$r}tjd}~wwxYwSr()rrri BaseExceptionrh) r"rSer-rurr.r+r,s rrzTemporaryFile..openersj%c665+NNHB  4         "  Is. AA  A) rrr/rf_O_TMPFILE_WORKSrer6rSIsADirectoryErrorr)rrrrr,r+r-rrrrrurr.s ``` @@@rrr_s  d??(22H+;FFC+P+P([  B         xTY(/('-f>>>dHd33c5#.. $ ) ) ) $)                 xTY '(6%'''dHd++c5#&& sAB B." B.-B.cdeZdZ dZ d'dddZeejZdZ d Z d Z d Z d Z d ZdZedZedZedZdZdZdZedZedZedZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d(d"Z$d#Z%d$Z&d%Z'd&Z(dS))rFrrrNrc  d|vrtj|_nBtj|}tjtj|| ||_||_d|_|||||||| d|_dS)Nr)rrrF)rrr,r+rrr-r)rBytesIO_filer TextIOWrapper _max_size_rolled_TemporaryFileArgs) r9max_sizerrrrr,r+r-rs rrzSpooledTemporaryFile.__init__s $;;DJJ(22H*3;==%-f$+---DJ" +/i-3v/7G*-#A#Ar&c|jrdS|j}|r.||kr|dSdSdSr()rrtellrollover)r9rrs r_checkzSpooledTemporaryFile._checksP <>   h.. MMOOOOO  ..r&c|jrdS|j}tdi|jx}|_|`|}t |dr?|j| n'|| | |dd|_dS)NrrTr=) rrrrrrrrgdetachgetvalueseek)r9rnewfileposs rrzSpooledTemporaryFile.rollovers <z,GGt/FGGG$*  #iikk 7H % % + N !7!7!9!9 : : : : MM$--// * * * S! r&c<|jjrtd|S)Nz%Cannot enter context with closed file)rclosed ValueErrorr>s rrzSpooledTemporaryFile.__enter__s$ :  FDEE E r&c8|jdSr(rrhr9rrrs rrzSpooledTemporaryFile.__exit__ r&c4|jSr()rr?r>s rr?zSpooledTemporaryFile.__iter__z""$$$r&c|jsFtjd|td||dSdS)NzUnclosed file {!r}) stacklevelsource)r _warningswarnformatResourceWarningrhr>s rrzSpooledTemporaryFile.__del__s\{  N$++D11      JJLLLLL  r&c8|jdSr(rr>s rrhzSpooledTemporaryFile.closerr&c|jjSr()rrr>s rrzSpooledTemporaryFile.closed z  r&c|jjSr()rrr>s rrzSpooledTemporaryFile.encoding z""r&c|jjSr()rrr>s rrzSpooledTemporaryFile.errorsrr&c\||jSr()rrfilenor>s rrzSpooledTemporaryFile.filenos# z  """r&c8|jdSr()rflushr>s rrzSpooledTemporaryFile.flushrr&c4|jSr()risattyr>s rrzSpooledTemporaryFile.isatty z  """r&cV |jjS#t$r|jdcYSwxYw)Nr)rrrYrr>s rrzSpooledTemporaryFile.modes@ 3:? " 3 3 3*62 2 2 2 3s ((c> |jjS#t$rYdSwxYwr()rrSrYr>s rrSzSpooledTemporaryFile.names3 :? "   44 s  c|jjSr()rnewlinesr>s rrzSpooledTemporaryFile.newlinesrr&c4|jSr()rreadabler>s rrzSpooledTemporaryFile.readable rr&c |jj|Sr()rreadr9r"s rr zSpooledTemporaryFile.read#tz%%r&c |jj|Sr()rread1r!s rr$zSpooledTemporaryFile.read1&stz&&r&c6|j|Sr()rreadintor9rs rr&zSpooledTemporaryFile.readinto)sz""1%%%r&c6|j|Sr()r readinto1r's rr)zSpooledTemporaryFile.readinto1,sz##A&&&r&c |jj|Sr()rreadliner!s rr+zSpooledTemporaryFile.readline/s"tz"D))r&c |jj|Sr()r readlinesr!s rr-zSpooledTemporaryFile.readlines2s#tz#T**r&c4|jSr()rseekabler>s rr/zSpooledTemporaryFile.seekable5rr&c |jj|Sr()rrr!s rrzSpooledTemporaryFile.seek8r"r&c4|jSr()rrr>s rrzSpooledTemporaryFile.tell;sz   r&c||jS||jkr||j|Sr()rtruncaterr)r9sizes rr3zSpooledTemporaryFile.truncate>sK <:&&(( (dn$$ :&&t,, ,r&c4|jSr()rwritabler>s rr6zSpooledTemporaryFile.writableFrr&ch|j}||}|||Sr()rrgr)r9srrvs rrgzSpooledTemporaryFile.writeIs/z ZZ]] D r&ch|j}||}|||Sr()r writelinesr)r9iterablerr9s rr;zSpooledTemporaryFile.writelinesOs1z __X & & D r&c4|jSr()rrr>s rrzSpooledTemporaryFile.detachUrr&)rrrNNNNNr())rHrIrJrr classmethod_types GenericAlias__class_getitem__rrrrr?rrhrKrrrrrrrrSrrr r$r&r)r+r-r/rrr3r6rgr;rr=r&rrrsG9;(,/3A?CAAAAA"$ F$788   * %%%!!X!##X#!!X!######33X3 X ##X#%%%&&&'''&&&'''***+++%%%&&&!!!----%%%  #####r&rceZdZ d dZed dZed dZdZdZdZ d Z ee j Z dS) rNFct||||_||_tj||j|jd||j|_dS)NzImplicitly cleaning up {!r}) warn_message ignore_errors)rrS_ignore_cleanup_errors_weakreffinalize_cleanupr  _finalizer)r9r,r+r-ignore_cleanup_errorss rrzTemporaryDirectory.__init__es\FFC00 &;#"+ $-6==dCC5777r&cJfd}tj|dS)NcJt|dtrer |krrdS |kr,ttj|t| tj|dS#t$r|Ynt$r tj |}n#t$rrYYdSwxYwtj |j sRtj|j r9t|dr/|jtjzr|jtjkrrYdS||kYnwxYwdSdS#t($rYdSwxYwt|dt(rdSsdS)NrrEst_file_attributes)rErepeated) issubclassrkrrrUr]rir_rmtreerr_statS_ISLNKst_modeS_ISDIRrrOFILE_ATTRIBUTE_REPARSE_POINTst_reparse_tagIO_REPARSE_TAG_MOUNT_POINTro)rrUexc_infostclsrErSrPs ronerrorz+TemporaryDirectory._rmtree..onerrorps*(1+77.  $#t||#CH$4$4T$:$:;;;%%%= 4(((((,GGG D FFFFF*==="!$4BB&""",' &!""M"*55" % bj 9 9"$R)=>>" 2U5WW" .%2RRR,' &! D .2dl$=====/=GF0==(DDHQK):;; $ssAE2.B!E+%E2' E+1CE+ CE+E2CA0E+E2 E+(E2*E++E22 F?F)r])_shutilrmtree)r\rSrErPr]s```` rrRzTemporaryDirectory._rmtreensL/ / / / / / / / b tW------r&ch|||tj|tdSNrN)rRrr r )r\rSrDrEs rrIzTemporaryDirectory._cleanups0 D 666|_55555r&cLd|jj|jS)Nz <{} {!r}>)r  __class__rHrSr>s r__repr__zTemporaryDirectory.__repr__s!!$."949EEEr&c|jSr()rSr>s rrzTemporaryDirectory.__enter__s yr&c.|dSr()cleanuprs rrzTemporaryDirectory.__exit__s r&c|js$tj|jr#||j|jdSdSra)rJrrrUexistsrSrRrFr>s rrgzTemporaryDirectory.cleanups^ ? ! ! # # Osxty'A'A O LL$2ML N N N N N O Or&NNNF)FF)F)rHrIrJrr>rRrIrdrrrgr?r@rAr=r&rrrYs 6:',77772.2.2.[2.h666[6FFFOOO$ F$788r&rrj)NNN)rrNNNNNT)rrNNNNN)D__all__ functoolsrwarningsriorosrshutilr^statrSerrnorprandomrr7sysrtypesr?weakrefrG_thread allocate_lock_allocate_lockO_RDWRrO_EXCLrrrrfrr r)ryrr%r/r1r^rvrxr|rrrr r r rr rrrrrrrrSplatformrrIOBaserrr=r&rr~s2   $$$$$$&*s{*SZ7 73 &s~%O  73 #cl"N 73 kGGG ^   :,,,$????????06*%*%*%X   AAA:222""""""    ''''''$C$C$C$CN&F&F&F&FPX4@@@@@("("("("("("("("V<<<<<<<<~;?9=(,78<77777r8w$-833'MM wsK009=8<I*.IIIIIVl#l#l#l#l#3:l#l#l#^\9\9\9\9\9\9\9\9\9\9r&