eJ D/SQrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKJ r SSK J r SSK J r SSKJrJrJr SSK Jr SS K Jr SS K Jr SS K Jr SS K Jr S r\R1S5 Sr\R6"\R\5 SVs/sHn\"\"0U5"55PM snrSr\Hr \R6"\ \5 M C C"SS\!5r"S04Sjr#Sr$"SS\%5r&Sr'Sr("SS\!5r)"SS\!5r*\ RV\ RX4\ RZ\ R\4S .r/"S!S"\!5r0"S#S$\15r2"S%S&\!5r3S'r404S(jr5ScS)jr6"S*S+\!5r7"S,S-\!5r8SdS.jr9"S/S0\35r:"S1S2\35r;"S3S4\;5r<"S5S6\35r="S7S8\35r>"S9S:\35r?"S;S<\35r@\5"S=S>5rA"S?S@\A5rB\5"SASB5rCSCSD0\ClD"SESA\C5rE\5"SFSG5rF\5"SHSI5rGSJSJSJSDSDSK.\GlD"SLSH\G5rH"SMSN\05rI\IR7SO\R5 \IR7SP\R5 \IR7SQ\R\=5 \IR7SR\R\;5 \IR7SS\R\;5 \IR7ST\R\;5 \IR7SU\R\;5 \IR7SV\R\<5 \IR7SW\R\>5 \IR7SX\R\H5 \IR7SY\S\B5 \IR7SZ\T\E5 \IR7S-\8\@5 \IR7S[\9\F5 \IR7S+\7\?5 \IR7SD\:SS\9 \IR7SJSS]9 \(a!"S^S_5rU"S`Sa\)5rV"SbS\05rWgg!\a SrGNf=fs snf)e) BaseManager SyncManager BaseProxyTokenN)getpid) format_exc) connection) reductionget_spawning_popen ProcessError)pool)process)util) get_context) shared_memoryTSharedMemoryManagerFcZ[RURUR544$N)arraytypecodetobytes)as >/opt/imh/python3.13/lib/python3.13/multiprocessing/managers.py reduce_arrayr/s ;;QYY[1 11)itemskeysvaluesc&[[U544$r)listobjs rrebuild_as_listr$4s $s) rc4\rSrSrSrSrSrSrSrSr Sr g ) r>z+ Type to uniquely identify a shared object typeidaddressidc.XUsUlUlUlgrr')selfr(r)r*s r__init__Token.__init__Ds06,dlDGrcHURURUR4$rr'r,s r __getstate__Token.__getstate__Gs T\\47733rc.UuUlUlUlgrr'r,states r __setstate__Token.__setstate__Js/4,dlDGrcURR<SUR<SUR<SUR<S3$)Nz(typeid=z , address=z, id=)) __class____name__r(r)r*r0s r__repr__Token.__repr__Ms-''dllDGGM Mr)r)r*r(N) r; __module__ __qualname____firstlineno____doc__ __slots__r-r1r6r<__static_attributes__rrrr>s$,IE45MrrrDcURXX445 UR5upVUS:XaU$[XV5e!Af=f)zD Send a message to manager using connection `c` and return response #RETURN)sendrecvconvert_to_error)cr* methodnameargskwdskindresults rdispatchrPUsDFFBD '(668LD y t,, s :=c US:XaU$US;aX[U[5(d$[SRX[ U555eUS:Xa[ SU-5$[ U5$[ SRU55$)N#ERROR) #TRACEBACK#UNSERIALIZABLEz.Result {0!r} (kind '{1}') type is {2}, not strrTzUnserializable message: %s zUnrecognized message type {!r}) isinstancestr TypeErrorformattype RemoteError ValueError)rNrOs rrIrIbs x 2 2&#&&@GG$v,01 1 $ $=FG Gv& &:AA$GHHrc\rSrSrSrSrg)rZqc>S[URS5-S-$)NzM --------------------------------------------------------------------------- rzK---------------------------------------------------------------------------)rVrLr0s r__str__RemoteError.__str__rs$s499Q<'886ABrrDN)r;r>r?r@r_rCrDrrrZrZqsCrrZc/n[U5H1n[X5n[U5(dM URU5 M3 U$)z, Return a list of names of methods of `obj` )dirgetattrcallableappend)r#tempnamefuncs r all_methodsriys= DCs! D>> KK  KrcX[U5Vs/sHoSS:wdM UPM sn$s snf)zH Return a list of names of methods of `obj` which do not start with '_' r_)ri)r#rgs rpublic_methodsrls+)- @-TaCD- @@ @s ''c\rSrSrSr/SQrSrSrSrSr Sr S r S r S r S r\ \\ S .rSrSrSrSrSrSrSrSrSrSrg)ServerzE Server class which runs in a process controlled by a manager object ) shutdowncreateaccept_connection get_methods debug_infonumber_of_objectsdummyincrefdecrefc~[U[5(d$[SRU[ U555eXl[ R"U5Ul[UupVU"USS9Ul URRUl SS0Ul 0Ul 0Ul[R "5Ulg)Nz&Authkey {0!r} is type {1!s}, not bytes)r)backlog0NrD)rUbytesrWrXrYregistryrAuthenticationStringauthkeylistener_clientlistenerr) id_to_objid_to_refcountid_to_local_proxy_obj threadingLockmutex)r,rr)r serializerListenerClients rr-Server.__init__s'5))8??T'],- -! 33G< *:6!#> }},, z* %'"^^% rc[R"5UlU[R"5l[R "URS9nSUlUR5 URR5(d<URRS5 URR5(dM<[R[R :waH["R$"S5 [R [l[R&[l[R*"S5 g![[4a Nf=f![R[R :waH["R$"S5 [R [l[R&[l[R*"S5 f=f)z Run the server forever )targetTr zresetting stdout, stderrrN)rEvent stop_eventrcurrent_process_manager_serverThreadaccepterdaemonstartis_setwaitKeyboardInterrupt SystemExitsysstdout __stdout__rdebug __stderr__stderrexit)r,rs r serve_foreverServer.serve_forevers&$//+48!1  ''t}}=H"HO NN  //0022OO((+//0022 zzS^^+ 56 ^^  ^^ HHQK&z2  zzS^^+ 56 ^^  ^^ HHQKs+5E,AEEEEEBG cURR5n[R"UR U4S9nSUlUR5 MT![a Mbf=f)NTrrL)racceptOSErrorrrhandle_requestrr)r,rJts rrServer.acceptersa MM((*  (;(;1$GAAH GGI  sA A$#A$cSn[R"XR5 [R"XR5 UR 5nUup4pVX@R ;d SU-5e[ X5nU"U/UQ70UD6nSU4n URU 5 g![a S[54n N+f=f![a S[54n NGf=f![a|n URS[545 O![a Of=f[R"SU 5 [R"SU5 [R"SU 5 Sn A gSn A ff=f)Nz%r unrecognizedrFrSzFailure to send message: %rz ... request was %r ... exception was %r) r deliver_challengeranswer_challengerHpublicrc ExceptionrrGrinfo) r,rJrequestignorefuncnamerLrMrhrOmsges r_handle_requestServer._handle_requestsC *  ( (LL 9  ' '<< 8ffhG+2 (Fd{{* H,=,H H*4*D *a/$/$/!&) 2 FF3K  3#Z\2 3  /.C / 2  jl34   II3S 9 II+W 5 II-q 1 1 2s[A9B=> B!C!B:9B:=CC E$D?E D  E D  AEEcURU5 UR5 g![a Nf=f!UR5 f=f)z Handle a new connection N)rrcloser,conns rrServer.handle_requests@    & JJL     JJLs$ 1414Acn[R"S[R"5R5 UR nUR nURnURR5(dS=pVU"5nUuppXHupkn X[;a [SU<S[U5<SU <35e[Xe5nU"U 0U D6nU =(a U RUS5nU(a4UR!UUU5unn[#UUR$U5nSUU44nOSU4nU"W5 URR5(dMgg![a-n URUupkn Sn A N![a U ef=fSn A ff=f![&anSU4nSnANzSnAff=f![aS WcS [)54nNUR*UnU"XWW/W Q70W D6nSU4nN![&a S [)54nNf=f[,aN [R"S [R"5R5 [.R0"S 5 GN4[&a S [)54nGNLf=f![&a U"S [)545 GNef=f![&an[R2"S [R"5R5 [R2"SW5 [R2"SU5 UR55 [.R0"S5 SnAGNSnAff=f)zA Handle requests from the proxies in a particular process/thread z$starting server thread to service %rNzmethod z of z object is not in exposed=#PROXYrFrRrSz$got EOF -- exiting thread serving %rrrTzexception in thread serving %rz ... message was %rrr )rrrcurrent_threadrgrHrGrrrKeyErrorrAttributeErrorrYrcgetrqrr)rrfallback_mappingEOFErrorrrrr)r,rrHrGrrKr#ridentrLrMexposed gettypeidkefunctionresr(ridentrexposedtokenrr fallback_funcrOs r serve_clientServer.serve_clients 9++-22 4yyyyNN //((**5 3#'' &07-4!.7.>+C),(#T#Y9 #33 /"D1D1C'J9==T+JF+/;;tVS+I( %fdllF C'(E):;(#.. <Iw//((** !! 66u=0i#! ! !"!(#Q-C(" ;%'6C;(,(=(=j(I !. s"59"=A" )&1$;+Z\:;  A$335::<  3#Z\2 3 !<+Z\:;<  :!002779 /5 115   s9F& E0F&F AF&F&&I4 FE3.F&3 FFFF& F#FF&F##F&&I1!G%%G?;I1>G??AI1I10I14JJJJ L4!BL//L4cU$rrDr,rrr#s rfallback_getvalueServer.fallback_getvalueBs rc[U5$rrVrs r fallback_strServer.fallback_strEs 3xrc[U5$r)reprrs r fallback_reprServer.fallback_reprHs Cyr)r_r< #GETVALUEcgrrDr,rJs rrv Server.dummyQs rc UR /n[URR55nUR 5 UHQnUS:wdM UR SU<SURU<S[ URUS5SS<35 MS SRU5sSSS5 $!,(df  g=f) z? Return some info --- useful to spot problems with refcounting r|z z: refcount=z rNK ) rr!rrsortrerVrjoin)r,rJrOrrs rrtServer.debug_infoTs ZZF++0023D IIKC<MM#($*=*=e*D#&t~~e'r?r@rArr-rrrrrrrrrrvrtrurprqrsrrrwrxrCrDrrrnrnsNF&$,2< Ob %   % ( ""%H2 "*rrnc&\rSrSrS/rSrSrSrSrg)Stateivaluerr rDN) r;r>r?r@rBINITIALSTARTEDSHUTDOWNrCrDrrrrs IGGHrr)pickle xmlrpclibc\rSrSrSr0r\rSSS.SjjrSr Sr SS jr \ SS j5r S rSS jrS rSrSrSr\S5r\S5r\ SSj5rSrg)riz Base class for managers Ng?)shutdown_timeoutcZUc[R"5RnXl[R"U5Ul[ 5Ul[ RURl X0l [UuUl Ul U=(d [5UlXPlgr)rrr_addressr_authkeyr_staterr _serializerr _Listener_Clientr_ctx_shutdown_timeout)r,r)rrctxr s rr-BaseManager.__init__sx ?--/77G 44W= g !MM %'6z'B$ (;= !1rcURR[R:waURR[R:Xa [ S5eURR[R :Xa [ S5e[ SRURR55e[URURURUR5$)zH Return server object with serve_forever() method and address attribute Already started serverManager has shut downUnknown state {!r}) rrrrrr rrXrn _registryr rrr0s r get_serverBaseManager.get_servers ;;   -{{  EMM1"#;<<""enn4"#:;;"(// 0A0ABDDdnndmmmmT%5%57 7rc[URupU"URURS9n[ USS5 [ R URlg)z. Connect manager object to the server process rNrv) rrr rrPrrrr)r,rrrs rconnectBaseManager.connectsG+4+;+;<dmmT]];tW%!MM rc URR[R:waURR[R:Xa [ S5eURR[R :Xa [ S5e[ SRURR55eUb[U5(d [S5e[R"SS9up4URR[U5RUR UR"UR$UR&XAU4S9UlS R+S UR(R,55n[U5R.S -U-UR(lUR(R35 UR55 UR75UlUR55 [RURl[8R:"U[U5R<UR(UR"UR$URUR>UR@4S S 9Ul!g)z0 Spawn a server process for this manager object rrrNzinitializer must be a callableF)duplexr:c38# UHn[U5v M g7frr).0is r $BaseManager.start..3sA)@AQ)@s-rrL exitpriority)"rrrrrr rrXrdrWr PiperProcessrY _run_serverrr rr_processr _identityr;rgrrrHrFinalize_finalize_managerrrrp)r, initializerinitargsreaderwriterrs rrBaseManager.starts ;;   -{{  EMM1"#;<<""enn4"#:;;"(// 0A0ABDD  "8K+@+@<= =$6 )):))..$--""FC* A)@)@AA!$Z00C7%?       "MM  $t*..-- t{{,, 6 68  rcV[R"[R[R5 UbU"U6 URXX45nUR UR 5 UR 5 [R"SUR 5 UR5 g)z0 Create a server, report its address and run it Nzmanager serving at %r) signalSIGINTSIG_IGN_ServerrGr)rrrr) clsrr)rrr7r4r5servers rr/BaseManager._run_serverEsv  fmmV^^4  "  "XD  FNN#  )6>>:rcNURR[R:XdS5eUR UR UR S9n[USSU4U-U5upVUR5 [XR U5U4$!UR5 f=f)z@ Create a new shared object; return the token and exposed tuple zserver not yet startedrNrq) rrrrrr rrPrr)r,r(rLrMrr*rs r_createBaseManager._create\s{{  EMM1K3KK1||DMM4==|A "4x&4NKB JJLV]]B/88 JJLs BB$cURbCURRU5 URR5(dSUlggg)z3 Join the manager process (if it has been spawned) N)r0ris_aliver,timeouts rrBaseManager.joinhsD == $ MM  w '==))++ $ , %rcURURURS9n[USS5UR 5 $!UR 5 f=f)zC Return some info about the servers shared objects and connections rNrtrr rrPrrs r _debug_infoBaseManager._debug_infoqsB||DMM4==|A D$ 5 JJLDJJL AAcURURURS9n[USS5UR 5 $!UR 5 f=f)z% Return the number of shared objects rNrurJrs r_number_of_objectsBaseManager._number_of_objects{sC||DMM4==|A D$(;< JJLDJJLrMcURR[R:XaUR 5 URR[R :waURR[R:Xa [ S5eURR[R:Xa [ S5e[ SRURR55eU$)NzUnable to start serverrr) rrrrrrr rrXr0s r __enter__BaseManager.__enter__s ;;   - JJL ;;   -{{  EMM1"#;<<""enn4"#:;;"(// 0A0ABDD rc$UR5 gr)rpr,exc_typeexc_valexc_tbs r__exit__BaseManager.__exit__s  rcUR"5(Ga [R"S5 U"XS9n[USS5 UR 5 UR "US9 UR"5(a[R"S5 [US5(a[R"S5 UR"5 UR "US9 UR"5(a8[R"S 5 UR"5 UR "5 [RUl [RU g!UR 5 f=f![ a GNf=f![a gf=f) zA Shutdown the manager process; will be registered as a finalizer z#sending shutdown message to managerrNrp)rGzmanager still alive terminatez'trying to `terminate()` manager processz#manager still alive after terminate)rErrrPrrrhasattrr\killrrrr_address_to_localr)rr)rr5rr rs rr3BaseManager._finalize_managers$      II; < w8!T44JJL LL!1 2!! /07K00IIGH%%'LL)9:'')) "GH  nn  ++G4%JJL  $   s:E" E E";E3 EE"" E0/E03 F?FcUR$r)r r0s rr)BaseManager.addresss }}rc^^SUR;aURR5UlTc[mU=(d [ TSS5nU=(d [ TSS5nU(aZ[ UR 55H=upx[U5[Ld SU-5e[U5[LaM5SU-5e X$UT4URT'U(aUU4Sjn TU l [UTU 5 gg)z) Register a typeid with the manager type rN _exposed__method_to_typeid_z%r is not a stringc>[R"ST5 UR"T/UQ70UD6up4T"X0RUURUS9nUR UR URS9n[USSUR45 U$)Nz)requesting creation of a shared %r objectmanagerrrrrx) rrrBrrrr)rPr*) r,rLrMrexpproxyrrr(s rrf"BaseManager.register..temps FO!\\&@4@4@ !++T MM3||EMM4==|ItX{; r) __dict__rcopy AutoProxyrcr!rrYrVr;setattr) r>r(rdrrr create_methodkeyrrfs ` ` rregisterBaseManager.registers cll *MM..0CM  !IBWY TB+J"9.BDI  "#3#9#9#;< CyC'C)=)CC'E{c)G+?%+GG)= /! f  #DM C & r) rrr rrr0rrrrp)NNrNr}r)NNNNT)r;r>r?r@rArrnr=r-rr r classmethodr/rBrrKrOrRrY staticmethodr3propertyr)rrrCrDrrrrsIG>F 2/2 2 7*)V/1, 9%   DEI6:%'%'rrc \rSrSrSrSrSrg)ProcessLocalSetic4[R"US5 g)Nc"UR5$r)clearr"s r*ProcessLocalSet.__init__..s 399;r)rregister_after_forkr0s rr-ProcessLocalSet.__init__s   '>?rc[U5S4$r})rYr0s r __reduce__ProcessLocalSet.__reduce__sDz2~rrDN)r;r>r?r@r-rrCrDrrrxrxs @rrxc\rSrSrSr0r\R"5rSr SSjr Sr S04Sjr S r S r\S 5rS rS rSrSrSrSrg)riz& A base for proxies of shared objects r Nc[R [RRURS5nUc<[ R "5[54nU[RUR'[RUl [=RS- slSSS5 WSUl USUl Xl URRUlX0lX l["USUlXplUb[(R*"U5UlOMURbURR,UlO$[(R."5R0UlU(aUR35 [ R4"U[R65 g!,(df  GN=f)Nr r)r_mutexr_rr)rForkAwareLocalrx _next_serial_serial_tls _all_serials_tokenr*_id_managerrrr_owned_by_managerrrrrr_increfr~ _after_fork) r,rrrhrrrw manager_owned tls_serialss rr-BaseProxy.__init__sB   #5599%--NK""113_5FF =H ++EMM:$11DL  " "a ' " N (N ;;>> %&z215 "/  #88ADM ]] & MM22DM#335==DM  LLN   y'<'<=Q s BF22 Gc[R"S5 [R"5Rn[ R "5RS:wa%US[ R "5R-- nURURRURS9n[USSU45 X Rl g)Nzmaking connection to manager MainThread|rrr)rrrrrgrrrrr)rrPrr )r,rgrs r_connectBaseProxy._connect)s 12&&(--  # # % * *l : C)224999 9D||DKK//|Gt04':# rrDcURRnURURXU45 UR5upVUS:XaU$US:XaUupxURRURSn URR UlU "XR"URUR$US9n UR'UR UR$S9n[)USSUR*45 U $[-XV5e![a^ [R"S[ R "5R5 UR5 URRnGN\f=f!Af=f) zF Try to call a method of the referent and return a copy of the result z#thread %r does not own a connectionrFrrgrNrx)rr rrrrrrgrrGrrHrrr(rr)rrrrPr*rI) r,rKrLrMrrNrOrrrrjs r _callmethodBaseProxy._callmethod2s= (99''D 488Zt45yy{  9 M X #NG // =bAI KK//EM'' wE<< t}}<ED T4EHH; 7L "40 0/ ( JJ< //166 8 MMO99''D  (2sD  E8 A$E54E58E;c$URS5$)z) Get a copy of the value of the referent rrr0s r _getvalueBaseProxy._getvalueSs ,,rc UR(a,[R"SURR5 gUR URR URS9n[USSUR45 [R"SURR5 URRUR5 UR=(a URRn[R"U[ R"URURURUUR$URUR 4SS9Ulg)Nz%owned_by_manager skipped INCREF of %rrrwz INCREF %r r+)rrrrr*rr)rrPrraddrrrr2r_decrefr_close)r,rr5s rrBaseProxy._increfYs  ! ! JJ>  O ||DKK//|GtX{3 ; / dll+ 6$--"6"6mm )##++t||T]]E))T.. >  rctURU5 UbUR[R:XaM[R "SUR 5 U"URUS9n[USSUR 45 O![R "SUR 5 U(dc[US5(aQ[R "S[R"5R5 URR5 U?ggg![a!n[R "SU5 SnANSnAff=f)Nz DECREF %rrrxz... decref failed %sz%DECREF %r -- manager already shutdownr z-thread %r has no more proxies so closing conn)discardrrrrrr*r)rPrr]rrrgr r) rserialrr5tlsidsetrrrs rrBaseProxy._decrefms f =EKK5==8 6 ;1u}}g>tX{; JJ> Il33 JJF //166 8 NN " 4u 6 1155 6sA D D7D22D7cSUlUR5 g![a#n[R"SU-5 SnAgSnAff=f)Nzincref failed: %s)rrrrr)r,rs rrBaseProxy._after_forks<  / LLN / II)A- . . /s AAAc0n[5bURUS'[USS5(a3URUS'[[ UR URU44$[[U5UR URU44$)Nr_isautoFr) r rrcrd RebuildProxyrnrrrYr,rMs rrBaseProxy.__reduce__s   +"mmDO 4E * *"nnDO  T-=-=tDF F!$Zd.>.>EG Grc"UR5$r)r)r,memos r __deepcopy__BaseProxy.__deepcopy__s~~rcrS[U5RURR[ U54-$)Nz<%s object, typeid %r at %#x>)rYr;rr(r*r0s rr<BaseProxy.__repr__s3.T ##T[[%7%7DBC CrchURS5$![a [U5SSS-s$f=f)zF Return representation of the referent (or a fall-back if that fails) r<Nrz; '__str__()' failed>)rrrr0s rr_BaseProxy.__str__s= =##J/ / =:cr?%<< < =s 11) rrrrrrrrrrrNNNTF)r;r>r?r@rAr_rForkAwareThreadLockrrr-rrrrrurrrrr<r_rCrDrrrrs{  % % 'FL26HM*>X$,.BB- (0/ G C=rrc[[R"5SS5nU(aURUR:Xaf[R "SU5 SUS'UR UR;a0URUR URUR 'URSS5=(a% [[R"5SS5(+nU"X4SU0UD6$) z- Function used for unpickling proxy objects. rNz*Rebuild a proxy owned by manager, token=%rTrrw _inheritingF) rcrrr)rrr*rrpop)rhrrrMr?rws rrrsW,,.0A4 HF &..EMM1 ?G $_ 88677 7  *  ( ( 2 4  E G++-}e DD   9& 9D 99rc[U5nX U4$![a Of=f0nUHn[SU<SU<S3U5 M [U[4U5nXlXRX4'U$)z: Return a proxy type whose methods are given by `exposed` zdef z:(self, /, *args, **kwds): return self._callmethod(z , args, kwds))rrexecrYrrd)rgr_cachedicmeth ProxyTypes r MakeProxyTypersGnG Wo&&     C 6:DBCF HTI<-I!'D? s   c h[USnUc1U"URUS9n[USSU45nUR5 UcUb URnUc[ R "5Rn[SUR-U5n U "XX#XVS9n SU l U $!UR5 f=f)z" Return an auto-proxy for `token` r Nrrsz AutoProxy[%s])rhrrwrT) rr)rPrrrrrrr(r) rrrhrrrwrrrrrjs rrnrns j)!,Gu}}g6 tT=5(CG JJL7.""))+33o >22DIIdODDrrDN)r;r>r?r@r-r<rCrDrrrrs #ErrcB\rSrSrSSjrSrSrSr\"\\5r Sr g) ValueicXlX lgr _typecode_value)r,rrlocks rr-Value.__init__s ! rcUR$rrr0s rr Value.gets {{rcXlgrrr,rs rr Value.set s rcl[U5R<SUR<SUR<S3$)Nrrr9)rYr;rrr0s rr<Value.__repr__ s!!$Z00$..$++NNrrNT) r;r>r?r@r-rrr<rvrrCrDrrrrs#O S# Errc.[R"X5$r)r)rsequencers rArrayrs ;;x **rc6\rSrSrSrSrSrSrSrSr Sr g ) IteratorProxyi)__next__rGthrowrcU$rrDr0s r__iter__IteratorProxy.__iter__ rc&URSU5$)Nrrr,rLs rrIteratorProxy.__next__s D11rc&URSU5$)NrGrrs rrGIteratorProxy.sends--rc&URSU5$)Nrrrs rrIteratorProxy.throw..rc&URSU5$)Nrrrs rrIteratorProxy.close rrrDN) r;r>r?r@rdrrrGrrrCrDrrrrs 6I2.//rrc4\rSrSrSrS SjrSrSrSrSr g) AcquirerProxyi$)acquirereleaseNc8UcU4OX4nURSU5$Nrr)r,blockingrGrLs rrAcquirerProxy.acquire&s%%o{H3F 400rc$URS5$Nrrr0s rrAcquirerProxy.release) **rc$URS5$rrr0s rrRAcquirerProxy.__enter__+rrc$URS5$rrrUs rrYAcquirerProxy.__exit__-rrrD)TN) r;r>r?r@rdrrrRrYrCrDrrrr$s&I1+++rrc<\rSrSrSrS SjrS SjrSrS SjrSr g) ConditionProxyi1)rrrnotify notify_allNc(URSU45$NrrrFs rrConditionProxy.wait3 33rc(URSU45$)Nr r)r,ns rr ConditionProxy.notify5s1$//rc$URS5$)Nr rr0s rr ConditionProxy.notify_all7s --rcU"5nU(aU$Ub[R"5U-nOSnSnU(dEUb!U[R"5- nUS::aU$URW5 U"5nU(dMEU$)Nr)time monotonicr)r, predicaterGrOendtimewaittimes rwait_forConditionProxy.wait_for9s M  nn&0GGH""T^^%55q=  IIh [F & rrDr)r ) r;r>r?r@rdrr r rrCrDrrr r 1sFI40.rr c4\rSrSrSrSrSrSrS SjrSr g) EventProxyiL)rrr{rc$URS5$)Nrrr0s rrEventProxy.is_setNs))rc$URS5$Nrrr0s rrEventProxy.setP&&rc$URS5$)Nr{rr0s rr{EventProxy.clearR((rNc(URSU45$rrrFs rrEventProxy.waitTrrrDr) r;r>r?r@rdrrr{rrCrDrrr r Ls2I*')4rr c^\rSrSrSrS SjrSrSr\S5r \S5r \S 5r S r g) BarrierProxyiX)__getattribute__rabortresetNc(URSU45$rrrFs rrBarrierProxy.waitZrrc$URS5$)Nr/rr0s rr/BarrierProxy.abort\r)rc$URS5$)Nr0rr0s rr0BarrierProxy.reset^r)rc&URSS5$)Nr.)partiesrr0s rr8BarrierProxy.parties`s 2LAArc&URSS5$)Nr.) n_waitingrr0s rr;BarrierProxy.n_waitingcs 2NCCrc&URSS5$)Nr.)brokenrr0s rr>BarrierProxy.brokenfs 2K@@rrDr) r;r>r?r@rdrr/r0rvr8r;r>rCrDrrr-r-XsR>I4)) BB DD AArr-c*\rSrSrSrSrSrSrSrg)NamespaceProxyik)r. __setattr__ __delattr__c~USS:Xa[RX5$[RUS5nU"SU45$)Nrrkrr.)objectr.r,rq callmethods r __getattr__NamespaceProxy.__getattr__ms@ q6S=**45 5,,T=A ,sf55rcUSS:Xa[RXU5$[RUS5nU"SX45$)NrrkrrB)rErBr.)r,rqrrGs rrBNamespaceProxy.__setattr__rsA q6S=%%d7 7,,T=A -#66rc~USS:Xa[RX5$[RUS5nU"SU45$)NrrkrrC)rErCr.rFs rrCNamespaceProxy.__delattr__ws? q6S=%%d0 0,,T=A -#00rrDN) r;r>r?r@rdrHrBrCrCrDrrrArAksBI6 7 1rrAcZ\rSrSrSrSrSr\"\\5r\ "\ R5r Sr g) ValueProxyi~)rrc$URS5$)Nrrr0s rrValueProxy.getr&rc(URSU45$r$rrs rrValueProxy.setsx00rrDN)r;r>r?r@rdrrrvrrttypes GenericAlias__class_getitem__rCrDrrrOrO~s.I'1 S# E#E$6$67rrO BaseListProxy)__add__ __contains__ __delitem__ __getitem____len____mul__ __reversed____rmul__ __setitem__recountextendindexinsertrremovereverser__imul__cD\rSrSrSrSr\"\R5r Sr g) ListProxyic,URSU45 U$)Nrbrrs r__iadd__ListProxy.__iadd__s E8, rc,URSU45 U$)Nrgrrs rrgListProxy.__imul__s eX. rrDN) r;r>r?r@rkrgrtrTrUrVrCrDrrriris$E$6$67rri DictProxy)rYrZr[rr\r`r{rmrrrrpopitem setdefaultrrrIteratorc8\rSrSr\"\R 5rSrg)roirDN) r;r>r?r@rtrTrUrVrCrDrrroros#E$6$67r ArrayProxy)r\r[r` PoolProxy) apply apply_asyncrimapimap_unorderedrmap map_asyncstarmap starmap_asyncr\ AsyncResult)rwr{r}rxryc \rSrSrSrSrSrg)ruicU$rrDr0s rrRPoolProxy.__enter__rrc$UR5 gr)r\rUs rrYPoolProxy.__exit__s  rrDN)r;r>r?r@rRrYrCrDrrrurus rc\rSrSrSrSrg)ria Subclass of `BaseManager` which supports a number of shared object types. The types registered are those intended for the synchronization of threads, plus `dict`, `list` and `Namespace`. The `multiprocessing.Manager()` function creates started instances of this class. rDN)r;r>r?r@rArCrDrrrrsrrQueue JoinableQueuerrRLock SemaphoreBoundedSemaphore ConditionBarrierPoolr!rr)rrp)rpcH\rSrSrSr/4SjrSrSrSrSr Sr S r S r g ) _SharedMemoryTrackeriz+Manages one or more shared memory segments.cXlX lgrshared_memory_context_name segment_names)r,rgrs rr-_SharedMemoryTracker.__init__s.2 +!. rc[R"SU<S[535 URR U5 g)z6Adds the supplied shared memory block name to tracker.zRegister segment  in pid N)rrrrrer, segment_names rregister_segment%_SharedMemoryTracker.register_segments3 JJ*<*:(68*M N    % %l 3rc[R"SU<S[535 URR U5 [ R "U5nUR5 UR5 g)zvCalls unlink() on the shared memory block with the supplied name and removes it from the list of blocks being tracked.zDestroy segment rN) rrrrrer SharedMemoryrunlink)r,rsegments rdestroy_segment$_SharedMemoryTracker.destroy_segmentsX JJ),)9&(L M    % %l 3#00>G MMO NN rcRURSSHnURU5 M g)zr?r@rAr-rrrrr1r6rCrDrrrrs,5/1 / 4   3   I "rrcZ\rSrSr\R /SQ-rSrSrSrSr Sr Sr S r g ) SharedMemoryServeri ) track_segmentrelease_segment list_segmentsc$[R"U/UQ70UD6 URn[U[5(a[ R "U5n[SUS[535Ul [R"S[535 g)Nshm_rkz"SharedMemoryServer started by pid ) rnr-r)rUr~osfsdecoderrshared_memory_contextrr)r,rLkwargsr)s rr-SharedMemoryServer.__init__sq OOD 24 26 2llG'5))++g.$tG9AfhZ%@A  & JJ;FH:F Grc[URUSS5(aURUS'[R"XU/UQ70UD6$)z|Create a new distributed-shared object (not backed by a shared memory block) and return its id to be used in a Proxy Object.r_shared_memory_proxyr)r]rrrnrq)r,rJr(rLrs rrqSharedMemoryServer.createsL t}}V,R02HII262L2L./==&B4B6B Brc`URR5 [RX5$)zACall unlink() on all tracked shared memory, terminate the Server.)rrrnrprs rrpSharedMemoryServer.shutdown#s#  & & - - /??4+ +rc:URRU5 g)z?Adds the supplied shared memory block name to Server's tracker.N)rrr,rJrs rr SharedMemoryServer.track_segment(s  & & 7 7 Erc:URRU5 g)z|Calls unlink() on the shared memory block with the supplied name and removes it from the tracker instance inside the Server.N)rrrs rr"SharedMemoryServer.release_segment,s  & & 6 6| Drc.URR$)zVReturns a list of names of shared memory blocks that the Server is currently tracking.)rrrs rr SharedMemoryServer.list_segments1s--;; ;r)rN) r;r>r?r@rnrr-rqrprrrrCrDrrrr s6FG H C ,  F E  r?r@rArr=r-rrrrrCrDrrrr7s* % O O A  rrr)X__all__rrr:rqueuerrTrrrrrr contextr r r rrrrr HAS_SHMEMre ImportErrorrrrrYrc view_typesr$ view_typerErrPrIrrZrirlrnrrr XmlListener XmlClientrrrrxrrrrnrrrrrr r r-rArOrWri_BaseDictProxyrerort BasePoolProxyrurrrrrrrrrrr!rrrr)rgs0rrs] A    @@*I NN() 2 5;; -4M N4MDd72t$&'4M N I y/2 z MFM.&(b  IC)C AF*VF*Z F##Z%6%67)):+?+?@t'&t'tcw=w=z:*)+,8<7<: E E F + /I / +I +]6 4 4A9A&1Y1&88o0 8 8{-  %!88<* k, !"  $   +  Wekk* _ekk2 Wiooz: VY^^]; Wioo}= [)"5"5}E ')C)C"$ [)"5"5~F Y 1 1<@ VTYY 2 VT9- VT9- WeZ0 WeZ0 [)^< Z=N ]%8  """"J*k>g %IOsPPPP