Vc(%csHddlmZddlZddlZddlZddlZddlZddlZddlZddl m Z gdZ ej dkp(e edoe edoe ejd ZGd d ejZejZd*d Zej dkr*e gd z Z ddlZd+dddZdZdZdZGddeZn%e gdz Z ddlZej dkZdZdZdZdZdZdZGddZ ee!e j"ed Z#ee!e$j%e#ee!e&j'e#d!Z(d"Z)eej*e(ej dkrd#Z+d$Z,eeje+nd%Z+d&Z,eeje+Gd'd(e)Z-dS),)ABCMetaN)context) send_handle recv_handleForkingPicklerregisterdumpwin32ZCMSG_LEN SCM_RIGHTSsendmsgcsneZdZ iZejZfdZedZ eddZ e j Z xZ S)rcstj||j|_|j|jdSN)Zsuper__init___copyreg_dispatch_tableZcopydispatch_tableZupdate_extra_reducers)selfargs __class__s 2/usr/lib64/python3.11/multiprocessing/reduction.pyr zForkingPickler.__init__&sN$":??AA ""4#788888cs ||j|<dSr )r)clstypeZreduce rrzForkingPickler.register+s4$*D!!!rNcstj}|||||Sr )ioZBytesIOrZ getbuffer)robjprotocolZbuf rdumpszForkingPickler.dumps0s;jll C$$$}}rr )__name__ __module__ __qualname__rcopyregrrr Z classmethodrrpickleZloadsZ __classcell__)rs@rrr!s3O%499999 ++[+[ LEEEEErrcsN t|||dSr )rr)rZfilerrrrr:s)=4""'',,,,,r) DupHandle duplicate steal_handleF)source_processcs tj}||}||}tj|||d|tjS)Nr)_winapiGetCurrentProcessDuplicateHandleDUPLICATE_SAME_ACCESS)handleZtarget_processZ inheritabler&Zcurrent_process rr$r$GsSJ!355  -,N  -,N& FN {G9;; ;rc s" tjtjd|} tj||tjddtjtjztj|S#tj|wxYwNFr)r' OpenProcessPROCESS_DUP_HANDLEr)r(r*DUPLICATE_CLOSE_SOURCE CloseHandle)Z source_pidr+Zsource_process_handlerrr%r%SsC ' 3  &z!;!; 7*%v)++Q-0NNPP   5 6 6 6 6G  5 6 6 6 6s AA88Bcsh t|tj|}||dSr )r#r'r*send)connr+destination_pidZdhrrrr_s,4 vw>AJ.!3%$$ I&&&q66C<3q6)-(:AAFFCF,,---AwwJ'    D 2333sDE,,F?Fcs tj|tjtj5}t ||gddddS#1swxYwYdSr )rIfromfdfilenoAF_UNIX SOCK_STREAMrB)r3r+r4srrrrs4 ]4;;==&.&:L M M !QR Ax  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !sAA!$A!cs tj|tjtj5}t |ddcdddS#1swxYwYdS)Nrr)rIrQrRrSrTrC)r3rUr?rrrs7 ]4;;==&.&:L M M $QR1a==# $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $sA!!A%(A%cs tj}|(|||Strddlm}||Std)Nr)resource_sharerz&SCM_RIGHTS appears not to be available)rZget_spawning_popenrAZduplicate_for_childHAVE_SEND_HANDLErVrO)fdZ popen_objrVrrrArAsz).00  G??9#@#@#D#DEE E  G ) ) ) ) ) )"((,, ,EFF Frcsx|jt|j|jjffSt|j|jjffSr )Z__self__getattrrZ__func__rZmr7r_reduce_methodr\s:z:aj&9:::QZ%8999rcseZdZdZdS)_CcsdSr r@)rr7rfz_C.fs rN)rrr r^r@rrr]r]s#     rr]cs,t|j|jffSr )rZZ __objclass__rr[r7r_reduce_method_descriptorr_s Q^QZ0 00rcs<t|j|j|jpiffSr )_rebuild_partialfuncrkeywords)Zpr7r_reduce_partialrcs afafaj.>B? ??rcs,tj|g|Ri|Sr ) functoolspartial)rarrbrrr`r`s#  T 5D 5 5 5H 5 55rcs4ddlm}t||ffS)Nr) DupSocket)rVrf_rebuild_socket)rUrfr?r_reduce_socketrhs)......1//rcs*|Sr )r6)Zdsr7rrgrgsyy{{rcs|t|}t||j|j|jffSr )rArRrgfamilyrproto)rUdfr?rrhrhs1 188::  QXqvqw ???rcsZ|}tj||||S)N)rR)r6rI)rkrirrjrYr,rrgrgs( YY[[}VT5<<<>>ck""$=>>>"O444/////rN)rrr rrrrrsysplatformr%r$r#rBrCrAr\r_r`rhrgr r@rrrlrls $NH DKK |w#   #N 9'#N%O00000rrl)Z metaclassr r>).Zabcrr!rdrr8r"rIrprXrZ__all__rqZhasattrrWZPicklerrrrr'r$r%rrZobjectr#rGrKrBrCrAr\r]rr^r_rPrmrnrorcr`rerhrgrlr@rrrrs  N N NLG+8WVZ007WV\227WV]I66V^.  "----<7FG 9999GNNN ;$( ; ; ; ; ; 7 7 7 $$$*****F****F ....GLLL,(*KHHH4448!!! $$$ G G G:::          bbddf~&&&111dk  5666ck  5666@@@666 O,,, <7,000 HV]N++++@@@=== HV]N+++00000000000r