PNG  IHDRQgAMA a cHRMz&u0`:pQ<bKGDgmIDATxwUﹻ& ^CX(J I@ "% (** BX +*i"]j(IH{~R)[~>h{}gy)I$Ij .I$I$ʊy@}x.: $I$Ii}VZPC)I$IF ^0ʐJ$I$Q^}{"r=OzI$gRZeC.IOvH eKX $IMpxsk.쒷/&r[޳<v| .I~)@$updYRa$I |M.e JaֶpSYR6j>h%IRز if&uJ)M$I vLi=H;7UJ,],X$I1AҒJ$ XY XzI@GNҥRT)E@;]K*Mw;#5_wOn~\ DC&$(A5 RRFkvIR}l!RytRl;~^ǷJj اy뷦BZJr&ӥ8Pjw~vnv X^(I;4R=P[3]J,]ȏ~:3?[ a&e)`e*P[4]T=Cq6R[ ~ޤrXR Հg(t_HZ-Hg M$ãmL5R uk*`%C-E6/%[t X.{8P9Z.vkXŐKjgKZHg(aK9ڦmKjѺm_ \#$5,)-  61eJ,5m| r'= &ڡd%-]J on Xm|{ RҞe $eڧY XYrԮ-a7RK6h>n$5AVڴi*ֆK)mѦtmr1p| q:흺,)Oi*ֺK)ܬ֦K-5r3>0ԔHjJئEZj,%re~/z%jVMڸmrt)3]J,T K֦OvԒgii*bKiNO~%PW0=dii2tJ9Jݕ{7"I P9JKTbu,%r"6RKU}Ij2HKZXJ,妝 XYrP ެ24c%i^IK|.H,%rb:XRl1X4Pe/`x&P8Pj28Mzsx2r\zRPz4J}yP[g=L) .Q[6RjWgp FIH*-`IMRaK9TXcq*I y[jE>cw%gLRԕiFCj-ďa`#e~I j,%r,)?[gp FI˨mnWX#>mʔ XA DZf9,nKҲzIZXJ,L#kiPz4JZF,I,`61%2s $,VOϚ2/UFJfy7K> X+6 STXIeJILzMfKm LRaK9%|4p9LwJI!`NsiazĔ)%- XMq>pk$-$Q2x#N ؎-QR}ᶦHZډ)J,l#i@yn3LN`;nڔ XuX5pF)m|^0(>BHF9(cզEerJI rg7 4I@z0\JIi䵙RR0s;$s6eJ,`n 䂦0a)S)A 1eJ,堌#635RIgpNHuTH_SԕqVe ` &S)>p;S$魁eKIuX`I4춒o}`m$1":PI<[v9^\pTJjriRŭ P{#{R2,`)e-`mgj~1ϣLKam7&U\j/3mJ,`F;M'䱀 .KR#)yhTq;pcK9(q!w?uRR,n.yw*UXj#\]ɱ(qv2=RqfB#iJmmL<]Y͙#$5 uTU7ӦXR+q,`I}qL'`6Kͷ6r,]0S$- [RKR3oiRE|nӦXR.(i:LDLTJjY%o:)6rxzҒqTJjh㞦I.$YR.ʼnGZ\ֿf:%55 I˼!6dKxm4E"mG_ s? .e*?LRfK9%q#uh$)i3ULRfK9yxm܌bj84$i1U^@Wbm4uJ,ҪA>_Ij?1v32[gLRD96oTaR׿N7%L2 NT,`)7&ƝL*꽙yp_$M2#AS,`)7$rkTA29_Iye"|/0t)$n XT2`YJ;6Jx".e<`$) PI$5V4]29SRI>~=@j]lp2`K9Jaai^" Ԋ29ORI%:XV5]JmN9]H;1UC39NI%Xe78t)a;Oi Ҙ>Xt"~G>_mn:%|~ޅ_+]$o)@ǀ{hgN;IK6G&rp)T2i୦KJuv*T=TOSV>(~D>dm,I*Ɛ:R#ۙNI%D>G.n$o;+#RR!.eU˽TRI28t)1LWϚ>IJa3oFbu&:tJ*(F7y0ZR ^p'Ii L24x| XRI%ۄ>S1]Jy[zL$adB7.eh4%%누>WETf+3IR:I3Xה)3אOۦSRO'ٺ)S}"qOr[B7ϙ.edG)^ETR"RtRݜh0}LFVӦDB^k_JDj\=LS(Iv─aTeZ%eUAM-0;~˃@i|l @S4y72>sX-vA}ϛBI!ݎߨWl*)3{'Y|iSlEڻ(5KtSI$Uv02,~ԩ~x;P4ցCrO%tyn425:KMlD ^4JRxSهF_}شJTS6uj+ﷸk$eZO%G*^V2u3EMj3k%)okI]dT)URKDS 7~m@TJR~荪fT"֛L \sM -0T KfJz+nإKr L&j()[E&I ߴ>e FW_kJR|!O:5/2跌3T-'|zX ryp0JS ~^F>-2< `*%ZFP)bSn"L :)+pʷf(pO3TMW$~>@~ū:TAIsV1}S2<%ޟM?@iT ,Eūoz%i~g|`wS(]oȤ8)$ ntu`өe`6yPl IzMI{ʣzʨ )IZ2= ld:5+請M$-ї;U>_gsY$ÁN5WzWfIZ)-yuXIfp~S*IZdt;t>KūKR|$#LcԀ+2\;kJ`]YǔM1B)UbG"IRߊ<xܾӔJ0Z='Y嵤 Leveg)$znV-º^3Ւof#0Tfk^Zs[*I꯳3{)ˬW4Ւ4 OdpbZRS|*I 55#"&-IvT&/윚Ye:i$ 9{LkuRe[I~_\ؠ%>GL$iY8 9ܕ"S`kS.IlC;Ҏ4x&>u_0JLr<J2(^$5L s=MgV ~,Iju> 7r2)^=G$1:3G< `J3~&IR% 6Tx/rIj3O< ʔ&#f_yXJiގNSz; Tx(i8%#4 ~AS+IjerIUrIj362v885+IjAhK__5X%nV%Iͳ-y|7XV2v4fzo_68"S/I-qbf; LkF)KSM$ Ms>K WNV}^`-큧32ŒVؙGdu,^^m%6~Nn&͓3ŒVZMsRpfEW%IwdǀLm[7W&bIRL@Q|)* i ImsIMmKmyV`i$G+R 0tV'!V)֏28vU7͒vHꦼtxꗞT ;S}7Mf+fIRHNZUkUx5SAJㄌ9MqμAIRi|j5)o*^'<$TwI1hEU^c_j?Е$%d`z cyf,XO IJnTgA UXRD }{H}^S,P5V2\Xx`pZ|Yk:$e ~ @nWL.j+ϝYb퇪bZ BVu)u/IJ_ 1[p.p60bC >|X91P:N\!5qUB}5a5ja `ubcVxYt1N0Zzl4]7­gKj]?4ϻ *[bg$)+À*x쳀ogO$~,5 زUS9 lq3+5mgw@np1sso Ӻ=|N6 /g(Wv7U;zωM=wk,0uTg_`_P`uz?2yI!b`kĸSo+Qx%!\οe|އԁKS-s6pu_(ֿ$i++T8=eY; צP+phxWQv*|p1. ά. XRkIQYP,drZ | B%wP|S5`~́@i޾ E;Չaw{o'Q?%iL{u D?N1BD!owPHReFZ* k_-~{E9b-~P`fE{AܶBJAFO wx6Rox5 K5=WwehS8 (JClJ~ p+Fi;ŗo+:bD#g(C"wA^ r.F8L;dzdIHUX݆ϞXg )IFqem%I4dj&ppT{'{HOx( Rk6^C٫O.)3:s(۳(Z?~ٻ89zmT"PLtw䥈5&b<8GZ-Y&K?e8,`I6e(֍xb83 `rzXj)F=l($Ij 2*(F?h(/9ik:I`m#p3MgLaKjc/U#n5S# m(^)=y=đx8ŬI[U]~SцA4p$-F i(R,7Cx;X=cI>{Km\ o(Tv2vx2qiiDJN,Ҏ!1f 5quBj1!8 rDFd(!WQl,gSkL1Bxg''՞^ǘ;pQ P(c_ IRujg(Wz bs#P­rz> k c&nB=q+ؔXn#r5)co*Ũ+G?7< |PQӣ'G`uOd>%Mctz# Ԫڞ&7CaQ~N'-P.W`Oedp03C!IZcIAMPUۀ5J<\u~+{9(FbbyAeBhOSܳ1 bÈT#ŠyDžs,`5}DC-`̞%r&ڙa87QWWp6e7 Rϫ/oY ꇅ Nܶըtc!LA T7V4Jsū I-0Pxz7QNF_iZgúWkG83 0eWr9 X]㾮݁#Jˢ C}0=3ݱtBi]_ &{{[/o[~ \q鯜00٩|cD3=4B_b RYb$óBRsf&lLX#M*C_L܄:gx)WΘsGSbuL rF$9';\4Ɍq'n[%p.Q`u hNb`eCQyQ|l_C>Lb꟟3hSb #xNxSs^ 88|Mz)}:](vbۢamŖ࿥ 0)Q7@0=?^k(*J}3ibkFn HjB׻NO z x}7p 0tfDX.lwgȔhԾŲ }6g E |LkLZteu+=q\Iv0쮑)QٵpH8/2?Σo>Jvppho~f>%bMM}\//":PTc(v9v!gոQ )UfVG+! 35{=x\2+ki,y$~A1iC6#)vC5^>+gǵ@1Hy٪7u;p psϰu/S <aʸGu'tD1ԝI<pg|6j'p:tպhX{o(7v],*}6a_ wXRk,O]Lܳ~Vo45rp"N5k;m{rZbΦ${#)`(Ŵg,;j%6j.pyYT?}-kBDc3qA`NWQū20/^AZW%NQ MI.X#P#,^Ebc&?XR tAV|Y.1!؅⨉ccww>ivl(JT~ u`ٵDm q)+Ri x/x8cyFO!/*!/&,7<.N,YDŽ&ܑQF1Bz)FPʛ?5d 6`kQձ λc؎%582Y&nD_$Je4>a?! ͨ|ȎWZSsv8 j(I&yj Jb5m?HWp=g}G3#|I,5v珿] H~R3@B[☉9Ox~oMy=J;xUVoj bUsl_35t-(ՃɼRB7U!qc+x4H_Qo֮$[GO<4`&č\GOc[.[*Af%mG/ ňM/r W/Nw~B1U3J?P&Y )`ѓZ1p]^l“W#)lWZilUQu`-m|xĐ,_ƪ|9i:_{*(3Gѧ}UoD+>m_?VPۅ15&}2|/pIOʵ> GZ9cmíتmnz)yߐbD >e}:) r|@R5qVSA10C%E_'^8cR7O;6[eKePGϦX7jb}OTGO^jn*媓7nGMC t,k31Rb (vyܴʭ!iTh8~ZYZp(qsRL ?b}cŨʊGO^!rPJO15MJ[c&~Z`"ѓޔH1C&^|Ш|rʼ,AwĴ?b5)tLU)F| &g٣O]oqSUjy(x<Ϳ3 .FSkoYg2 \_#wj{u'rQ>o;%n|F*O_L"e9umDds?.fuuQbIWz |4\0 sb;OvxOSs; G%T4gFRurj(֍ڑb uԖKDu1MK{1^ q; C=6\8FR艇!%\YÔU| 88m)֓NcLve C6z;o&X x59:q61Z(T7>C?gcļxѐ Z oo-08jہ x,`' ҔOcRlf~`jj".Nv+sM_]Zk g( UOPyεx%pUh2(@il0ݽQXxppx-NS( WO+轾 nFߢ3M<;z)FBZjciu/QoF 7R¥ ZFLF~#ȣߨ^<쩡ݛкvџ))ME>ώx4m#!-m!L;vv#~Y[đKmx9.[,UFS CVkZ +ߟrY٧IZd/ioi$%͝ب_ֶX3ܫhNU ZZgk=]=bbJS[wjU()*I =ώ:}-蹞lUj:1}MWm=̛ _ ¾,8{__m{_PVK^n3esw5ӫh#$-q=A̟> ,^I}P^J$qY~Q[ Xq9{#&T.^GVj__RKpn,b=`żY@^՝;z{paVKkQXj/)y TIc&F;FBG7wg ZZDG!x r_tƢ!}i/V=M/#nB8 XxЫ ^@CR<{䤭YCN)eKOSƟa $&g[i3.C6xrOc8TI;o hH6P&L{@q6[ Gzp^71j(l`J}]e6X☉#͕ ׈$AB1Vjh㭦IRsqFBjwQ_7Xk>y"N=MB0 ,C #o6MRc0|$)ف"1!ixY<B9mx `,tA>)5ػQ?jQ?cn>YZe Tisvh# GMމȇp:ԴVuږ8ɼH]C.5C!UV;F`mbBk LTMvPʍϤj?ԯ/Qr1NB`9s"s TYsz &9S%U԰> {<ؿSMxB|H\3@!U| k']$U+> |HHMLޢ?V9iD!-@x TIî%6Z*9X@HMW#?nN ,oe6?tQwڱ.]-y':mW0#!J82qFjH -`ѓ&M0u Uγmxϵ^-_\])@0Rt.8/?ٰCY]x}=sD3ojަЫNuS%U}ԤwHH>ڗjܷ_3gN q7[q2la*ArǓԖ+p8/RGM ]jacd(JhWko6ڎbj]i5Bj3+3!\j1UZLsLTv8HHmup<>gKMJj0@H%,W΃7R) ">c, xixј^ aܖ>H[i.UIHc U1=yW\=S*GR~)AF=`&2h`DzT󑓶J+?W+}C%P:|0H܆}-<;OC[~o.$~i}~HQ TvXΈr=b}$vizL4:ȰT|4~*!oXQR6Lk+#t/g lԁߖ[Jڶ_N$k*". xsxX7jRVbAAʯKҎU3)zSNN _'s?f)6X!%ssAkʱ>qƷb hg %n ~p1REGMHH=BJiy[<5 ǁJҖgKR*倳e~HUy)Ag,K)`Vw6bRR:qL#\rclK/$sh*$ 6덤 KԖc 3Z9=Ɣ=o>X Ώ"1 )a`SJJ6k(<c e{%kϊP+SL'TcMJWRm ŏ"w)qc ef꒵i?b7b('"2r%~HUS1\<(`1Wx9=8HY9m:X18bgD1u ~|H;K-Uep,, C1 RV.MR5άh,tWO8WC$ XRVsQS]3GJ|12 [vM :k#~tH30Rf-HYݺ-`I9%lIDTm\ S{]9gOڒMNCV\G*2JRŨ;Rҏ^ڽ̱mq1Eu?To3I)y^#jJw^Ńj^vvlB_⋌P4x>0$c>K†Aļ9s_VjTt0l#m>E-,,x,-W)سo&96RE XR.6bXw+)GAEvL)͞K4$p=Ũi_ѱOjb HY/+@θH9޼]Nԥ%n{ &zjT? Ty) s^ULlb,PiTf^<À] 62R^V7)S!nllS6~͝V}-=%* ʻ>G DnK<y&>LPy7'r=Hj 9V`[c"*^8HpcO8bnU`4JȪAƋ#1_\ XϘHPRgik(~G~0DAA_2p|J묭a2\NCr]M_0 ^T%e#vD^%xy-n}-E\3aS%yN!r_{ )sAw ڼp1pEAk~v<:`'ӭ^5 ArXOI驻T (dk)_\ PuA*BY]yB"l\ey hH*tbK)3 IKZ򹞋XjN n *n>k]X_d!ryBH ]*R 0(#'7 %es9??ښFC,ՁQPjARJ\Ρw K#jahgw;2$l*) %Xq5!U᢯6Re] |0[__64ch&_}iL8KEgҎ7 M/\`|.p,~`a=BR?xܐrQ8K XR2M8f ?`sgWS%" Ԉ 7R%$ N}?QL1|-эټwIZ%pvL3Hk>,ImgW7{E xPHx73RA @RS CC !\ȟ5IXR^ZxHл$Q[ŝ40 (>+ _C >BRt<,TrT {O/H+˟Pl6 I B)/VC<6a2~(XwV4gnXR ϱ5ǀHٻ?tw똤Eyxp{#WK qG%5],(0ӈH HZ])ג=K1j&G(FbM@)%I` XRg ʔ KZG(vP,<`[ Kn^ SJRsAʠ5xՅF`0&RbV tx:EaUE/{fi2;.IAwW8/tTxAGOoN?G}l L(n`Zv?pB8K_gI+ܗ #i?ޙ.) p$utc ~DžfՈEo3l/)I-U?aԅ^jxArA ΧX}DmZ@QLےbTXGd.^|xKHR{|ΕW_h] IJ`[G9{).y) 0X YA1]qp?p_k+J*Y@HI>^?gt.06Rn ,` ?);p pSF9ZXLBJPWjgQ|&)7! HjQt<| ؅W5 x W HIzYoVMGP Hjn`+\(dNW)F+IrS[|/a`K|ͻ0Hj{R,Q=\ (F}\WR)AgSG`IsnAR=|8$}G(vC$)s FBJ?]_u XRvύ6z ŨG[36-T9HzpW̞ú Xg큽=7CufzI$)ki^qk-) 0H*N` QZkk]/tnnsI^Gu't=7$ Z;{8^jB% IItRQS7[ϭ3 $_OQJ`7!]W"W,)Iy W AJA;KWG`IY{8k$I$^%9.^(`N|LJ%@$I}ֽp=FB*xN=gI?Q{٥4B)mw $Igc~dZ@G9K X?7)aK%݅K$IZ-`IpC U6$I\0>!9k} Xa IIS0H$I H ?1R.Чj:4~Rw@p$IrA*u}WjWFPJ$I➓/6#! LӾ+ X36x8J |+L;v$Io4301R20M I$-E}@,pS^ޟR[/s¹'0H$IKyfŸfVOπFT*a$I>He~VY/3R/)>d$I>28`Cjw,n@FU*9ttf$I~<;=/4RD~@ X-ѕzἱI$: ԍR a@b X{+Qxuq$IЛzo /~3\8ڒ4BN7$IҀj V]n18H$IYFBj3̵̚ja pp $Is/3R Ӻ-Yj+L;.0ŔI$Av? #!5"aʄj}UKmɽH$IjCYs?h$IDl843.v}m7UiI=&=0Lg0$I4: embe` eQbm0u? $IT!Sƍ'-sv)s#C0:XB2a w I$zbww{."pPzO =Ɔ\[ o($Iaw]`E).Kvi:L*#gР7[$IyGPI=@R 4yR~̮´cg I$I/<tPͽ hDgo 94Z^k盇΄8I56^W$I^0̜N?4*H`237}g+hxoq)SJ@p|` $I%>-hO0eO>\ԣNߌZD6R=K ~n($I$y3D>o4b#px2$yڪtzW~a $I~?x'BwwpH$IZݑnC㧄Pc_9sO gwJ=l1:mKB>Ab<4Lp$Ib o1ZQ@85b̍ S'F,Fe,^I$IjEdù{l4 8Ys_s Z8.x m"+{~?q,Z D!I$ϻ'|XhB)=…']M>5 rgotԎ 獽PH$IjIPhh)n#cÔqA'ug5qwU&rF|1E%I$%]!'3AFD/;Ck_`9 v!ٴtPV;x`'*bQa w I$Ix5 FC3D_~A_#O݆DvV?<qw+I$I{=Z8".#RIYyjǪ=fDl9%M,a8$I$Ywi[7ݍFe$s1ՋBVA?`]#!oz4zjLJo8$I$%@3jAa4(o ;p,,dya=F9ً[LSPH$IJYЉ+3> 5"39aZ<ñh!{TpBGkj}Sp $IlvF.F$I z< '\K*qq.f<2Y!S"-\I$IYwčjF$ w9 \ߪB.1v!Ʊ?+r:^!I$BϹB H"B;L'G[ 4U#5>੐)|#o0aڱ$I>}k&1`U#V?YsV x>{t1[I~D&(I$I/{H0fw"q"y%4 IXyE~M3 8XψL}qE$I[> nD?~sf ]o΁ cT6"?'_Ἣ $I>~.f|'!N?⟩0G KkXZE]ޡ;/&?k OۘH$IRۀwXӨ<7@PnS04aӶp.:@\IWQJ6sS%I$e5ڑv`3:x';wq_vpgHyXZ 3gЂ7{{EuԹn±}$I$8t;b|591nءQ"P6O5i }iR̈́%Q̄p!I䮢]O{H$IRϻ9s֧ a=`- aB\X0"+5"C1Hb?߮3x3&gşggl_hZ^,`5?ߎvĸ%̀M!OZC2#0x LJ0 Gw$I$I}<{Eb+y;iI,`ܚF:5ܛA8-O-|8K7s|#Z8a&><a&/VtbtLʌI$I$I$I$I$I$IRjDD%tEXtdate:create2022-05-31T04:40:26+00:00!Î%tEXtdate:modify2022-05-31T04:40:26+00:00|{2IENDB` sh-3ll

HOME


sh-3ll 1.0
DIR:/usr/lib64/python3.12/multiprocessing/__pycache__/
Upload File :
Current File : //usr/lib64/python3.12/multiprocessing/__pycache__/connection.cpython-312.opt-2.pyc
�

�?h�����gd�ZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlmZddlm
Z
mZddlmZej"Z	ddlZddlmZmZmZmZd	Zd
Ze	j8�ZdZdgZe ed�rdZedgz
Zej2dk(rd
Zed
gz
Zefd�Z!d�Z"d�Z#d�Z$d�Z%Gd�d�Z&erGd�de&�Z'Gd�de&�Z(Gd�de)�Z*dCd�Z+ej2dk7rdDd�Z,ndDd�Z,Gd�de)�Z-d �Z.ej2dk(rGd!�d"e)�Z/d#�Z0d$Z1d%Z2d&Z3d'Z4e5hd(��Z6e7d)�e6D��Z8d*Z9d+Z:e9e:fZ;d,�Z<d-�Z=d.�Z>dEd/e?fd0�Z@d/e?fd1�ZAGd2�d3e)�ZBd4�ZCd5�ZDGd6�d7e*�ZEd8�ZFej2dk(r d9�ZGej�ej�hZJdFd:�ZKn*ddlLZLe eLd;�r
eLj�ZNneLj�ZNdFd<�ZKej2dk(r3d=�ZPd>�ZQej�e(eP�d?�ZSd@�ZTej�e'eS�ydA�ZPdB�ZQej�e(eP�y#e$rej2dk(r�dZY���wxYw)G)�Client�Listener�Pipe�wait�N�)�util)�AuthenticationError�BufferTooShort)�	reduction)�
WAIT_OBJECT_0�WAIT_ABANDONED_0�WAIT_TIMEOUT�INFINITE�win32i g4@�AF_INET�AF_UNIX�AF_PIPEc�0�tj�|zS�N��time�	monotonic)�timeouts �3/usr/lib64/python3.12/multiprocessing/connection.py�
_init_timeoutr<s���>�>��g�%�%�c�0�tj�|kDSrr)�ts r�_check_timeoutr?s���>�>��a��rc��	|dk(ry|dk(r)tjdtj���S|dk(r;tjdt	j
�t
t�fzd��Std	��)
Nr)�	localhostrrz	listener-)�prefix�dirrz\\.\pipe\pyc-%d-%d-�zunrecognized family)	�tempfile�mktempr�get_temp_dir�os�getpid�next�
_mmap_counter�
ValueError��familys r�arbitrary_addressr/Fs~�������	�9�	����k�t�7H�7H�7J�K�K�	�9�	����&<� "�	�	��T�-�-@�A�'B�GI�K�	K��.�/�/rc���	tjdk7r|dk(rtd|z��tjdk(r%|dk(rtt|�std|z��yyy)NrrzFamily %s is not recognized.r)�sys�platformr,�hasattr�socketr-s r�_validate_familyr5Tsh����|�|�w��6�Y�#6��7�&�@�A�A�
�|�|�w��6�Y�#6��v�v�&��;�f�D�E�E�'�$7�rc���	t|�tk(ryt|�tur|jd�ryt|�tust	j
|�ryt
d|z��)Nrz\\rrzaddress type of %r unrecognized)�type�tuple�str�
startswithr�is_abstract_socket_namespacer,)�addresss r�address_typer=`sa���
�G�}����	
�g��#�	�'�"4�"4�V�"<��	
�g��#�	��!B�!B�7�!K���:�W�D�E�Erc��eZdZdZdd�Zd�Zd�Zd�Zd�Zd�Z	e
d��Ze
d	��Ze
d
��Z
d�Zd�Zdd
�Zd�Zdd�Zdd�Zd�Zdd�Zd�Zd�Zy)�_ConnectionBaseNc��|j�}|dkrtd��|s
|std��||_||_||_y)Nrzinvalid handlez6at least one of `readable` and `writable` must be True)�	__index__r,�_handle�	_readable�	_writable)�self�handle�readable�writables    r�__init__z_ConnectionBase.__init__vsO���!�!�#���A�:��-�.�.����H�J�
J����!���!��rc�>�|j�|j�yyr�rB�_close�rEs r�__del__z_ConnectionBase.__del__�s���<�<�#��K�K�M�$rc�2�|j�td��y)N�handle is closed)rB�OSErrorrMs r�
_check_closedz_ConnectionBase._check_closed�s���<�<���,�-�-� rc�2�|jstd��y)Nzconnection is write-only)rCrQrMs r�_check_readablez_ConnectionBase._check_readable�s���~�~��4�5�5�rc�2�|jstd��y)Nzconnection is read-only)rDrQrMs r�_check_writablez_ConnectionBase._check_writable�s���~�~��3�4�4�rc�t�|jrd|_td��|j�td��)NFzbad message length)rDrC�closerQrMs r�_bad_message_lengthz#_ConnectionBase._bad_message_length�s5���>�>�"�D�N��*�+�+�
�J�J�L��*�+�+rc� �	|jduSr�rBrMs r�closedz_ConnectionBase.closed�s��.��|�|�t�#�#rc��	|jSr)rCrMs rrGz_ConnectionBase.readable����0��~�~�rc��	|jSr)rDrMs rrHz_ConnectionBase.writable�r^rc�<�	|j�|jSr)rRrBrMs r�filenoz_ConnectionBase.fileno�s��9������|�|�rc�h�	|j�	|j�d|_yy#d|_wxYwrrKrMs rrXz_ConnectionBase.close�s4��"��<�<�#�
$����
�#���	$�� $���s�(�	1c�x�	|j�|j�t|�}|jdkDr|j	d�}|j
}|dkrt
d��||krt
d��|�||z
}n#|dkrt
d��||z|kDrt
d��|j||||z�y)Nr�Brzoffset is negativezbuffer length < offsetzsize is negativezbuffer length < offset + size)rRrV�
memoryview�itemsize�cast�nbytesr,�_send_bytes)rE�buf�offset�size�m�ns      r�
send_bytesz_ConnectionBase.send_bytes�s���:����������s�O���:�:��>����s��A�
�H�H���A�:��1�2�2��v�:��5�6�6��<��v�:�D�
�A�X��/�0�0�
�d�]�Q�
��<�=�=�����6�&�4�-�0�1rc��	|j�|j�|jtj	|��yr)rRrVri�_ForkingPickler�dumps�rE�objs  r�sendz_ConnectionBase.send�s6��'�������������.�.�s�3�4rc���	|j�|j�|�|dkrtd��|j|�}|�|j	�|j�S)Nrznegative maxlength)rRrTr,�_recv_bytesrY�getvalue)rE�	maxlengthrjs   r�
recv_bytesz_ConnectionBase.recv_bytes�sf��	�	
��������� �Y��]��1�2�2����y�)���;��$�$�&��|�|�~�rc���	|j�|j�t|�5}|j}|t	|�z}|dkrtd��||kDrtd��|j
�}|j�}|||zkrt|j���|jd�|j|||z||z|z�|cddd�S#1swYyxYw)Nrznegative offsetzoffset too large)rRrTrerf�lenr,rw�tellr
rx�seek�readinto)rErjrkrmrf�bytesize�resultrls        r�recv_bytes_intoz_ConnectionBase.recv_bytes_into�s���	�	
��������
��_���z�z�H��#�a�&�(�H���z� �!2�3�3��(�"� �!3�4�4��%�%�'�F��;�;�=�D��&�4�-�'�$�V�_�_�%6�7�7��K�K��N��O�O�A�f��0�%��}��9�;�
<��!�_�_�s�B+C"�"C+c��	|j�|j�|j�}tj	|j��Sr)rRrTrwrq�loads�	getbuffer)rErjs  r�recvz_ConnectionBase.recv�sB��*������������ ���$�$�S�]�]�_�5�5rc�f�	|j�|j�|j|�Sr)rRrT�_poll�rErs  r�pollz_ConnectionBase.poll�s,��=����������z�z�'�"�"rc��|Sr�rMs r�	__enter__z_ConnectionBase.__enter__����rc�$�|j�yr�rX�rE�exc_type�	exc_value�exc_tbs    r�__exit__z_ConnectionBase.__exit__����
�
�r)TT)rNr)r)g)�__name__�
__module__�__qualname__rBrIrNrRrTrVrY�propertyr\rGrHrarXrorurzr�r�r�r�r�r�rrr?r?ss����G�	"��.�6�5�,��$��$����������
$�2�(5���26�#��rr?c�N�eZdZ	dZdZejfd�Zd�Zdd�Z	d�Z
d�Zy)	�PipeConnectionFNc�d�|j}|�|j�||j�yr)�_send_ov�cancelrB)rE�_CloseHandle�ovs   rrLzPipeConnection._closes%�����B��~��	�	������&rc��|j�td��tj|j|d��\}}||_	|tj
k(r&tj|jgdt�}d|_|jd�\}}|tjk(rttjd��y#|j��xYw#d|_|jd�\}}wxYw)Nz/concurrent send_bytes() calls are not supportedT��
overlappedFrP)r�r,�_winapi�	WriteFilerB�ERROR_IO_PENDING�WaitForMultipleObjects�eventrr��GetOverlappedResult�ERROR_OPERATION_ABORTEDrQ�errno�EPIPE)rErjr��err�waitres�nwrittens      rrizPipeConnection._send_bytess����}�}�(� �"5�6�6��'�'����c�d�K�G�B���D�M�

=��'�2�2�2�%�<�<����
�E�8�5�G�!%��
� "� 6� 6�t� <�
��#��g�5�5�5��e�k�k�+=�>�>�	6��

��	�	���� $��
� "� 6� 6�t� <�
��#�s�9C�C�C�C:c���|jrd|_tj�S|�dnt|d�}	t	j
|j|d��\}}	|tjk(r&t	j|jgdt�}|jd�\}}|dk(r5tj�}|j|j��|S|tjk(r|j!||�S	t+d��#|j��xYw#|jd�\}}|dk(r9tj�}|j|j��|ccYS|tjk(r|j!||�ccYSwxYw#t"$r)}|j$tj&k(rt(��d}~wwxYw)NF�Tr�rz.shouldn't get here; expected KeyboardInterrupt)�_got_empty_message�io�BytesIO�minr��ReadFilerBr�r�r�rr�r��writer��ERROR_MORE_DATA�_get_more_datarQ�winerror�ERROR_BROKEN_PIPE�EOFError�RuntimeError)	rE�maxsize�bsizer�r�r��nread�f�es	         rrwzPipeConnection._recv_bytes6s����&�&�*/��'��z�z�|�#�&���C���4E���%�.�.�t�|�|�U�;?�A�G�B��D��'�":�":�:�&-�&D�&D�!#���
�E�8�'=�G�&(�%;�%;�D�%A�
��s��!�8� "�
�
��A��G�G�B�L�L�N�3�#$�H� �G�$;�$;�;�#'�#6�#6�r�7�#C�C�<��O�P�P��!��	�	����%'�%;�%;�D�%A�
��s��!�8� "�
�
��A��G�G�B�L�L�N�3�#$�H� �G�$;�$;�;�#'�#6�#6�r�7�#C�C�<�����z�z�W�%>�%>�>�&����	�s[�%F-�9D�A
F-�&$F-�D*�*D-�-AF*�>F-�'F*�'F-�)F*�*F-�-	G�6$G�Gc��|js%tj|j�ddk7ryt	t|g|��S)NrT)r�r��
PeekNamedPiperB�boolrr�s  rr�zPipeConnection._pollVs>���'�'��-�-�d�l�l�;�A�>�!�C����d�V�W�-�.�.rc��|j�}tj�}|j|�t	j
|j�d}|�!t|�|z|kDr|j�t	j|j|d��\}}|jd�\}}|j|j��|S)NrTr�)r�r�r�r�r�r�rBr|rYr�r�)rEr�r�rjr��leftr��rbytess        rr�zPipeConnection._get_more_data\s����,�,�.�C��
�
��A�
�G�G�C�L��(�(����6�q�9�D��"�s�3�x�$���'@��(�(�*��&�&�t�|�|�T�d�K�G�B���0�0��6�K�F�C�
�G�G�B�L�L�N�#��Hrr)r�r�r�r�r�r��CloseHandlerLrirwr�r�r�rrr�r�s8��	�
#����&-�&9�&9�	'�	(�4	Q�@	/�
	rr�c���eZdZ	er(ej
fd�ZejZejZ
n'ejfd�ZejZejZ
efd�Ze
fd�Zd�Zd	d�Zd�Zy)
�
Connectionc�(�||j�yrr[�rErLs  rrLzConnection._closes����4�<�<� rc�(�||j�yrr[r�s  rrLzConnection._closexr�rc�b�t|�}	||j|�}||z}|dk(ry||d}�$�Nr)r|rB)rErjr��	remainingrns     r�_sendzConnection._send}sA����H�	���d�l�l�C�(�A���N�I��A�~���a�b�'�C�rc���tj�}|j}|}|dkDrK|||�}t|�}|dk(r||k(rt�td��|j
|�||z}|dkDr�K|S)Nrzgot end of file during message)r�r�rBr|r�rQr�)rErl�readrjrFr��chunkrns        r�_recvzConnection._recv�s|���j�j�l�������	��!�m����+�E��E�
�A��A�v���$�"�N�!�"B�C�C��I�I�e����N�I��!�m��
rc��t|�}|dkDr`tjdd�}tjd|�}|j|�|j|�|j|�ytjd|�}|dkDr#|j|�|j|�y|j||z�y)Ni����!i����!Qi@)r|�struct�packr�)rErjrn�
pre_header�headers     rrizConnection._send_bytes�s�����H���z�>����T�2�.�J��[�[��q�)�F��J�J�z�"��J�J�v���J�J�s�O��[�[��q�)�F��5�y��
�
�6�"��
�
�3���
�
�6�C�<�(rNc��|jd�}tjd|j��\}|dk(r7|jd�}tjd|j��\}|�||kDry|j|�S)N�r�r��r�)r�r��unpackrx)rEr�rjrls    rrwzConnection._recv_bytes�sq���j�j��m���
�
�d�C�L�L�N�3����2�:��*�*�Q�-�C��M�M�$�����7�E�D���4�'�>���z�z�$��rc�2�t|g|�}t|�Sr)rr�)rEr�rs   rr�zConnection._poll�s���$���!���A�w�rr)r�r�r�r��_multiprocessing�closesocketrLru�_writer��_readr(rXr�r�r�r�rirwr�r�rrr�r�lso���
� 0� <� <�	!�!�&�&�� �%�%�� "���	!���������%�� %�� )�. �rr�c�N�eZdZ	d	d�Zd�Zd�Zed��Zed��Zd�Z	d�Z
y)
rNc��|xs|xrt|�xst}|xst|�}t|�|dk(rt	||�|_nt
|||�|_|�t|t�std��||_
y�Nrzauthkey should be a byte string)r=�default_familyr/r5�PipeListener�	_listener�SocketListener�
isinstance�bytes�	TypeError�_authkey)rEr<r.�backlog�authkeys     rrIzListener.__init__�s����#�G�=��W�(=�#�"�	��6�.�v�6���� ��Y��)�'�7�;�D�N�+�G�V�W�E�D�N���z�'�5�'A��=�>�>���
rc���	|j�td��|jj�}|j�,t	||j�t||j�|S)Nzlistener is closed)r�rQ�acceptr��deliver_challenge�answer_challenge)rE�cs  rr�zListener.accept�s\��	�
�>�>�!��.�/�/��N�N�!�!�#���=�=�$��a����/��Q��
�
�.��rc�R�	|j}|�d|_|j�yyr)r�rX)rE�listeners  rrXzListener.close�s.��	��>�>����!�D�N��N�N�� rc�.�|jjSr)r��_addressrMs rr<zListener.address�s���~�~�&�&�&rc�.�|jjSr)r��_last_acceptedrMs r�
last_acceptedzListener.last_accepted�s���~�~�,�,�,rc��|Srr�rMs rr�zListener.__enter__�r�rc�$�|j�yrr�r�s    rr�zListener.__exit__�r�r)NNrN)r�r�r�rIr�rXr�r<rr�r�r�rrrr�sH��� � 
���'��'��-��-��rrc���	|xst|�}t|�|dk(rt|�}nt|�}|�t	|t
�st
d��|�t||�t||�|Sr�)	r=r5�
PipeClient�SocketClientr�r�r�r�r�)r<r.r�r�s    rrr�sv����
,�|�G�,�F��V��
����w�����!����:�g�u�#=��9�:�:�����G�$��!�W�%��Hrc�P�	|rotj�\}}|jd�|jd�t|j	��}t|j	��}||fStj�\}}t|d��}t|d��}||fS)NTF�rH�rG)r4�
socketpair�setblockingr��detachr(�pipe)�duplex�s1�s2�c1�c2�fd1�fd2s       rrrs���	���&�&�(�F�B���N�N�4� ��N�N�4� ��B�I�I�K�(�B��B�I�I�K�(�B��2�v�
�	�w�w�y�H�C���C�%�0�B��C�%�0�B��2�v�
rc
��	td�}|r>tj}tjtjz}t
t
}}n(tj}tj}dt
}}tj||tjztjztjtjztjzd||tjtj�}tj||dtjtj tjtj�}tj"|tjdd�tj$|d��}|j'd�\}	}
t)||��}t)||��}||fS)NrrrTr�r
r)r/r��PIPE_ACCESS_DUPLEX�GENERIC_READ�
GENERIC_WRITE�BUFSIZE�PIPE_ACCESS_INBOUND�CreateNamedPipe�FILE_FLAG_OVERLAPPED�FILE_FLAG_FIRST_PIPE_INSTANCE�PIPE_TYPE_MESSAGE�PIPE_READMODE_MESSAGE�	PIPE_WAIT�NMPWAIT_WAIT_FOREVER�NULL�
CreateFile�
OPEN_EXISTING�SetNamedPipeHandleState�ConnectNamedPiper�r�)
rr<�openmode�access�obsize�ibsize�h1�h2r��_r�rrs
             rrr(se��	�$�I�.����1�1�H��)�)�G�,A�,A�A�F�$�g�F�F��2�2�H��*�*�F���F�F�
�
$�
$��X�� <� <�<��1�1�2��%�%��(E�(E�E����
�
�v�v�w�;�;��L�L����
�
��V�Q����g�.C�.C��(�(�'�,�,���	�'�'���-�-�t�T�	��-�-�b�T�B�
��/�/��5���3��B��
0��
�B��
0���2�v�
rc�"�eZdZ	dd�Zd�Zd�Zy)r�c���tjtt|��|_	tjdk(r9|jjtjtjd�|jjd�|jj|�|jj|�|jj�|_||_d|_|dk(rCt#j$|�s.t#j&|tj(|fd��|_yd|_y#t$r|jj��wxYw)N�posixrTrr��args�exitpriority)r4�getattr�_socketr(�name�
setsockopt�
SOL_SOCKET�SO_REUSEADDRr
�bind�listen�getsocknamerrQrX�_familyrrr;�Finalize�unlink�_unlink)rEr<r.r�s    rrIzSocketListener.__init__Xs���}�}�W�V�V�%<�=���	��w�w�'�!����'�'��(9�(9�(.�(;�(;�Q�@��L�L�$�$�T�*��L�L���g�&��L�L����(� �L�L�4�4�6�D�M����"����Y��t�'H�'H��'Q��=�=��b�i�i�w�j�q��D�L� �D�L���	��L�L��� ��	�s�B<E�%E)c��|jj�\}|_|jd�t	|j��S�NT)r7r�rr
r�r�rE�ss  rr�zSocketListener.acceptqs9��!%���!4�!4�!6���4��	�
�
�d���!�(�(�*�%�%rc��	|jj�|j}|�d|_|�yy#|j}|�d|_|�wwxYwr)r7rXrB)rErAs  rrXzSocketListener.closevs[��	��L�L��� ��\�\�F��!�#�����"���\�\�F��!�#�����"�s	�:�AN)r)r�r�r�rIr�rXr�rrr�r�Ts��� �2&�
rr�c��	t|�}tjtt|��5}|jd�|j	|�t|j
��cddd�S#1swYyxYwrD)r=r4r6r
�connectr�r)r<r.rFs   rrr�sZ����'�
"�F�	������/�	1�Q�	�
�
�d��	�	�	�'���!�(�(�*�%�
2�	1�	1�s�;A5�5A>c�4�eZdZ	dd�Zdd�Zd�Zed��Zy)r�Nc��||_|jd��g|_d|_t	j
d|j�t	j|tj|j|jfd��|_	y)NT)�firstz listener created with address=%rrr3)
r�_new_handle�
_handle_queuerr�	sub_debugr@r��_finalize_pipe_listenerrX)rEr<r�s   rrIzPipeListener.__init__�sl��#�D�M�"&�"2�"2��"2�">�!?�D��"&�D���N�N�=�t�}�}�M�����l�:�:��(�(�$�-�-�8�q��D�Jrc
�~�tjtjz}|r|tjz}tj|j
|tjtjztjztjtttjtj�Sr)
r�rrrrrr r!r"�PIPE_UNLIMITED_INSTANCESrr#r$)rErL�flagss   rrMzPipeListener._new_handle�s����.�.��1M�1M�M�E����>�>�>���*�*��
�
�u��)�)�G�,I�,I�I��!�!�"��0�0�'�7��,�,�g�l�l��
rc�L�|jj|j��|jjd�}	t	j
|d��}	t	j|jgdt�}	|jd�\}}t|�S#|j�t	j|��xYw#|jd�\}}wxYw#t$r2}|jtjk7r�Yd}~t|�Sd}~wwxYw)NrTr�F)rN�appendrM�popr�r(r�r�rr�r�r�rQr��
ERROR_NO_DATAr�)rErFr��resr/r�r�s       rr�zPipeListener.accept�s������%�%�d�&6�&6�&8�9��'�'�+�+�A�.�F�
$��-�-�f��F��	$�!�8�8����
�E�8�5�C� �3�3�D�9�F�A�s�!�&�)�)����I�I�K��'�'��/����3�3�D�9�F�A�s���
��:�:��!6�!6�6��7�"�&�)�)��!
�s0�C(�&B$�$(C�C�C%�(	D#�1D�D#c�h�tjd|�|D]}tj|��y)Nz closing listener with address=%r)rrOr�r�)�queuer<rFs   rrPz$PipeListener._finalize_pipe_listener�s)���N�N�=�w�G����#�#�F�+� rr)F)r�r�r�rIrMr��staticmethodrPr�rrr�r��s*��	�		�
	�	*�.
�	,�
�	,rr�c	�0�	t�}		tj|d�tj|tjtj
zdtjtjtjtj�}	tj|tjdd�t!|�S#t$rB}|jtjtjfvst|�r�Yd}~nd}~wwxYw��)N��r)rr��
WaitNamedPiper%rrr$r&rrQr��ERROR_SEM_TIMEOUT�ERROR_PIPE_BUSYrr'r!r�)r<r�hr�s    rrr�s���	�
�O���
��%�%�g�t�4��&�&��W�1�1�G�4I�4I�I��w�|�|�W�%:�%:��0�0�'�,�,����	�'�'�
�w�,�,�d�D�	��a� � ���
��:�:�g�&?�&?�&-�&=�&=�&?�?�BP�QR�BS��CT��
��s�BC�	D�8D�D�(s#CHALLENGE#s	#WELCOME#s	#FAILURE#>�md5�sha256�sha384�sha3_256�sha3_384c#�2K�|]}t|����y�wr)r|)�.0r/s  r�	<genexpr>rjFs����7�&6��c�!�f�&6�s���c��	t|�tvrd|fS|jd�rG|jddtdz�x}dkDr(|d|}|t
vr||dzd}|j
d�|fStd|����)	Nr$�{�}r�r�asciizRunsupported message length, missing digest prefix, or unsupported digest: message=)r|�_LEGACY_LENGTHSr:�find�_MAX_DIGEST_LEN�_ALLOWED_DIGESTS�decoder	)�message�curly�digest�payloads    r�_get_digest_name_and_payloadr{Qs�����7�|��&�
�7�{�����4� ��,�,�t�Q���(9�:�	:��a�?���5�!���%�%��e�A�g�h�'�G��=�=��)�7�2�2�
�
/�&-�Z�
1�2�2rc��	ddl}t|�d}|s"	|j||d�j�S|j|||�j�}d|jd�|fzS#t$rd}Y�DwxYw)Nr�md5�sha256�{%s}%srq)�hmacr{�newryr,�encode)r�rwr��digest_name�responses     r�_create_responser�ks�����.�w�7��:�K��	#��8�8�G�W�e�4�;�;�=�=��x�x���+�6�=�=�?�H���*�*�7�3�X�>�>�>���	#�#�K�		#�s� A/�/A=�<A=c
�f�	ddl}t|�\}}|xsd}	|j|||�j�}t
|�t
|�k7r&td|�dt
|��dt
|�����|j||�std��y#t$rtd|�d���wxYw)	Nrr}zresponse_digest=z unsupportedz	expected z of length z got zdigest received was wrong)r�r{r�ryr,r	r|�compare_digest)r�rwr�r��response_digest�response_mac�expecteds       r�_verify_challenger��s�����$@��$J�!�O�\�%�.��O�E��8�8�G�W�o�>�E�E�G���8�}��L�)�)�!��O�.�k�#�h�-��I��<�(�)�+�,�	,����x��6�!�"=�>�>�7��
�E�!�%5�_�$6�l�"C�D�D�E�s�!B�B0r�c��t|t�s#tdjt	|����tjt�}d|jd�|fz}|jt|z�|jd�}	t|||�|jt�y#t$r|jt��wxYw)N� Authkey must be bytes, not {0!s}rrq�)r�r�r,�formatr7r(�urandom�MESSAGE_LENGTHr�ro�
_CHALLENGErzr��_WELCOMEr	�_FAILURE)�
connectionr�r�rwr�s     rr�r��s����g�u�%��.�5�5�d�7�m�D�F�	F��j�j��(�G��;�-�-�g�6��@�@�G����*�w�.�/��$�$�S�)�H�(��'�7�H�5�
	���h�'��	�����h�'�
��s�

B0�0 Cc���t|t�s#tdjt	|����|jd�}|j
t�std|����|tt�d}t|�tkrtdt|��d���t||�}|j|�|jd�}|tk7rtd��y)Nr�r�z,Protocol error, expected challenge: message=zchallenge too short: z byteszdigest sent was rejected)r�r�r,r�r7rzr:r�r	r|�_MD5ONLY_MESSAGE_LENGTHr�ror�)r�r�rwryr�s     rr�r��s����g�u�%��.�5�5�d�7�m�D�F�	F��#�#�C�(�G����j�)�!�?�w�j�A�C�	C��c�*�o�&�'�G�
�7�|�-�-�!�$9�#�g�,��v�"N�O�O�
�g�w�
/�F����&�!��$�$�S�)�H��8��!�"<�=�=�rc��eZdZd�Zd�Zd�Zy)�ConnectionWrapperc�n�||_||_||_dD]}t||�}t	|||��y)N)rarXr�rzro)�_conn�_dumps�_loadsr6�setattr)rE�connrrr��attrrts      rrIzConnectionWrapper.__init__�s:����
�������K�D��$��%�C��D�$��$�Lrc�\�|j|�}|jj|�yr)r�r�ro)rErtrFs   rruzConnectionWrapper.send�s"���K�K�����
�
���a� rc�X�|jj�}|j|�Sr)r�rzr�rEs  rr�zConnectionWrapper.recv�s"���J�J�!�!�#���{�{�1�~�rN)r�r�r�rIrur�r�rrr�r��s��%�!�rr�c�T�tj|fdddd�jd�S)Nr�utf-8)�	xmlrpclibrrr�)rts r�
_xml_dumpsr��s&���?�?�C�6�4��t�Q�7�>�>�w�G�Grc�X�tj|jd��\\}}|S)Nr�)r�r�rv)rFrt�methods   r�
_xml_loadsr��s$���_�_�Q�X�X�g�%6�7�N�F�S�F��Jrc��eZdZd�Zy)�XmlListenerc�b�ddlmatj	|�}t|tt�Sr�)�
xmlrpc.client�clientr�rr�r�r�r�rss  rr�zXmlListener.accept�s"��)��o�o�d�#�� ��j�*�=�=rN)r�r�r�r�r�rrr�r��s��>rr�c�J�ddlmatt	|i|��t
t�Sr�)r�r�r�r�rr�r�)r4�kwdss  r�	XmlClientr��s��%��V�T�2�T�2�J�
�K�Krc��t|�}g}|r�tj|d|�}|tk(r	|St|cxkrtt|�zkr
nn
|tz}nAt|cxkrtt|�zkrntd��|tz}ntd��|j||�||dzd}d}|r��|S)NFzShould not get hererr)	�listr�r�rrr|r
r�rU)�handlesr�L�readyrXs     r�_exhaustive_waitr��s���
��M������0�0��E�7�C�C��l�"�����#�>�
��A��(>�>��}�$��!�S�D�+;�c�!�f�+D�D�#�#8�9�9��'�'��"�#8�9�9��L�L��3�� ��#�a�%�&�	�A��G���rc�X��	|�t}n|dkrd}nt|dzdz�}t|�}i�g}t�}t�}	|D]�}	t	|d�}	tj|�dd�\}}|t
jk(r!|j|�|�|j<�d|rDtj�dddk\r*	|jd�\}
}|st!|d	�rd|_|j%|�d}��t+�j-�|�}|D]}|j/��|D]e}	|jd�\}
}|t
j0k7s�,�|j}|j%|�|dk(s�Rt!|d	�s�_d|_�g	|j3�fd
�|D��|D�cgc]	}||vs�|��c}S#t$r"}	d|	j}}|tvr�Yd}	~	���d}	~	wwxYw#t$r}	|	j}Yd}	~	��>d}	~	wwxYw#t&$r|�|j)�<Y���wxYw#t$r }	|	j}|tvr�Yd}	~	��d}	~	wwxYw#|D]}|j/��|D]�}	|jd�\}
}n+#t$r}	|	j}|tvr�Yd}	~	nd}	~	wwxYw|t
j0k7s�X�|j}|j%|�|dk(s�~t!|d	�s��d|_��wxYwcc}w)Nrr]g�?raTrp)�rpFr�c3�(�K�|]	}�|���y�wrr�)rira�waithandle_to_objs  �rrjzwait.<locals>.<genexpr>Ss�����I�=�a�.�q�1�=�s�)r�intr��setr6r�r�rQr��
_ready_errorsr�rUr�r1�getwindowsversionr�r3r��add�AttributeErrorrAr��keysr�r��update)�object_listr�ov_list�
ready_objects�
ready_handles�orar�r�r�r/r�s           @rrrs2���	�
�?��G�
�q�[��G��'�D�.�3�.�/�G��;�'��������
���
�6	8� ��$�$�Q��1�F�
"�")�"2�"2�6�8�Q��"E���C�
�g�6�6�6����r�*�67�)�"�(�(�3�
�#�"7�"7�"9�"�1�"=��"G�1�)+�)?�)?��)F���3�$'�7�1�6J�+K�7;�� 4�%�)�)�!�,�"#��=!�@-�->�-C�-C�-E�w�O�M����	�	�������3�3�D�9�F�A�s�
�'�9�9�9�)�"�(�(�3�A�!�%�%�a�(��a�x�#�1�&:�;�37�A�0�� 	���I�=�I�I�&�=�;�a�!�}�*<��;�=�=��_#�"�"&��
�
�C���m�3�!�4��"�� $+�1�&'�j�j���1��-&�9�78�%�a�k�k�m�4�9��N���*�*�C��-�/��0�������	�	�������3�3�D�9�F�A�s�����*�*�C��-�/��0�����'�9�9�9�)�"�(�(�3�A�!�%�%�a�(��a�x�#�1�&:�;�37�A�0���">s��	I5�H&�G�;AI5�H� AI5�I	�	L'�L'�	H�G;�5I5�;H�I5�	H#�H�I5�H#�#I5�&I�I5�I�I5�		I2�I-�-I2�5L$�J(�'L$�(	K	�1K	�L$�K	�L$�'%L$�
L$�
L$�PollSelectorc��	t�5}|D]"}|j|tj��$|�t	j
�|z}	|j
|�}|r(|D��cgc]\}}|j��c}}cddd�S|�'t	j
�z
}|dkr|cddd�S�ecc}}w#1swYyxYwr�)�
_WaitSelector�register�	selectors�
EVENT_READrr�select�fileobj)r�r�selectorrt�deadliner��key�eventss        rrrbs���	�
�_��"���!�!�#�y�';�';�<�#��"��>�>�+�g�5��� ����0���=B�C�U�M�S�&�C�K�K�U�C��_��*�"*�T�^�^�-=�"=��"�Q�;�#(��_���D��_�s$�AB9�&B3�<B9�	B9�2B9�9Cc� �|j�}tj|tjtj�5}ddlm}|j|�}t||j|jffcddd�S#1swYyxYw)Nr)�resource_sharer)rar4�fromfdr�SOCK_STREAMr$r��	DupSocket�rebuild_connectionrGrH)r�rFrFr��dss     r�reduce_connectionr�~s`�������
�]�]�6�6�>�>�6�3E�3E�
F�!�)� �*�*�1�-�B�%��D�M�M�4�=�=�'I�I�G�
F�
F�s�6B�B
c�X�|j�}t|j�||�Sr�rr�)r�rGrH�socks    rr�r��s"���y�y�{���$�+�+�-��8�<�<rc��|jrtjnd|jrtjndz}tj|j�|�}t||j|jffSr�)	rGr��FILE_GENERIC_READrH�FILE_GENERIC_WRITEr�	DupHandlera�rebuild_pipe_connection)r�r*�dhs   r�reduce_pipe_connectionr��s^��04�
�
�7�,�,�1�15���7�-�-�A�G��
�
 �
 ������
7��&��T�]�]�D�M�M�(J�J�Jrc�<�|j�}t|||�Sr)rr�)r�rGrHrFs    rr�r��s��������f�h��9�9rc��tj|j��}t||j|j
ffSr)r�DupFdrar�rGrH)r��dfs  rr�r��s0��
�_�_�T�[�[�]�
+��!�B��
�
�t�}�}�#E�E�Erc�<�|j�}t|||�Srr�)r�rGrH�fds    rr�r��s��
�Y�Y�[���"�h��1�1r)NN)T)r~r)U�__all__r�r�r(r1r4r�rr%�	itertoolsr�r$rr	r
�contextr�ForkingPicklerrqr�rr
rr�ImportErrorr2r�CONNECTION_TIMEOUT�countr+r��familiesr3rrr/r5r=r?r�r��objectrrrr�rr�rr�r�r�r��	frozensetru�maxrtr��_MD5_DIGEST_LENrrr{r�r�r�r�r�r�r�r�r�r�r�r��ERROR_NETNAME_DELETEDr�rr�r�r��SelectSelectorr�r�r�r�r�r�rr�<module>r�s���3���	�	�
�
�
������1���*�*����O�O������	���!�
����;��
�6�9���N�����H��<�<�7���N�����H�-�&� �0�
F�
F�&T�T�n�]��]�@M��M�h;�v�;�|
�*�<�<�7���&&�X)�V�)�X&��<�<�7��6,�v�6,�p!�>��
�
�����r�@�B���7�&6�7�7������*�O�<��2�4?�8?�2(�5�(�*>�%�>�*
��
�H��>�(�>�L��<�<�7���(�.�.��0M�0M�N�M�L>�`�
�y�.�)�!�.�.�
�!�0�0�
�)�6�<�<�7��J�=��I���z�#4�5�K�
:��I���~�'=�>�F�2��I���z�#4�5��s#��
�|�|�w��
��G��s�H8�8I�I