+
    ¬øÃimŠ  ã            	       ó   € R R.t ^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
Ht ^ RIHt ^RIHt ^ RIHt  ]! ]P$                  ]P$                  4      P&                  t ! R R	]P,                  4      t ! R
 R]P0                  4      t ! R R4      t ! R R4      t ! R R]P,                  4      t ! R R4      t]P<                  R8w  d]    ! R R ]]]P>                  4      t R t! ! R R]4      t" ! R R]PF                  4      t$ ! R R]4      t% ! R R]]PL                  4      t'ME ! R R ](4      t) ! R! R ]]]PT                  ])R"7      t  ! R# R]4      t" ! R$ R%]]PV                  4      t,]	PZ                  ! 4       ;_uu_ 4        ].! ]R&]/4      t0RRR4       ].! ]R'R( 4      t1].! ]R)R* 4      t2 ! R+ R]04      t3R#   ] d    ]P$                  P&                  t EL~i ; i  + '       g   i     LW; i),ÚGLibEventLoopÚGLibEventLoopPolicyN)Ú
coroutines)ÚMapping)Úcontextmanager)Ú_ossighelper)ÚGLibc                   óH   a a€ ] tR t^,t oRtV 3R ltR tR tR tRt	Vt
V ;t# )Ú_IdleSourceziInternal helper source for idle task handling

The only advantage is that we can keep the source around.
c                óf   <€ \        4       P                  4        Wn        V P                  R 4       R# )FN)ÚsuperÚ__init__Ú_loopÚset_can_recurse)ÚselfÚloopÚ	__class__s   &&€Ú+/usr/lib/python3/dist-packages/gi/events.pyr   Ú_IdleSource.__init__2   s$   ø€ Ü‹×ÑÔàŒ
à×Ñ˜UÖ#ó    c                ó€   € V P                   P                  '       g   R# \        V P                   P                  4      R3# )Féÿÿÿÿ©Fr   ©r   Ú_may_iterateÚboolÚ_idle_tasks©r   s   &r   ÚprepareÚ_IdleSource.prepare9   s2   € Ø�z‰z×&×&Ð&ØÐä�D—J‘J×*Ñ*Ó+¨RÐ/Ð/r   c                ó|   € V P                   P                  '       g   R # \        V P                   P                  4      # ©Fr   r   s   &r   ÚcheckÚ_IdleSource.check?   s*   € Ø�z‰z×&×&Ð&Ùä�D—J‘J×*Ñ*Ó+Ð+r   c                óV   € V P                   P                  4        \        P                  # ©N)r   Ú_glib_idle_dispatchr   ÚSOURCE_CONTINUE©r   ÚcallbackÚargss   &&&r   ÚdispatchÚ_IdleSource.dispatchE   s   € Ø�
‰
×&Ñ&Ô(Ü×#Ñ#Ð#r   )r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r"   r+   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r   Ú__classdict__s   @@r   r
   r
   ,   s#   ù‡ € ñõ
$ò0ò,÷$ò $r   r
   c                   óR   a a€ ] tR t^Jt oRtV 3R ltR tR t]R 4       t	Rt
VtV ;t# )ÚGLibTaskz³This is a simple asyncio.Task subclass that will be returned when using the
GLibEventLoop. It adds functionality to set the priority that is used to
iterate the task's coroutine.
c                óf   <€ \        4       P                  ! V/ VB  \        P                  V n        R # r%   )r   r   r   ÚPRIORITY_DEFAULTÚ_glib_idle_priority)r   r*   Úkwargsr   s   &*,€r   r   ÚGLibTask.__init__P   s&   ø€ Ü‹×Ò˜$Ð) &Ò)ä#'×#8Ñ#8ˆÖ r   c                óB   € \        V\        4      '       g   Q hWn        R# )z:Set the GLib priority used to iterate the task's coroutineN)Ú
isinstanceÚintr;   ©r   Úprioritys   &&r   Úset_priorityÚGLibTask.set_priorityU   s   € ä˜(¤C×(Ò(Ð(Ð(à#+Ö r   c                ó   € V P                   # )z:Get the GLib priority used to iterate the task's coroutine©r;   rA   s   &&r   Úget_priorityÚGLibTask.get_priority[   s   € à×'Ñ'Ð'r   c                ó   € \        V3R V/VB # )r   )r8   )Úclsr   Úcoror<   s   &&&,r   Ú_factoryÚGLibTask._factory_   s   € ä˜Ñ2 4Ð2¨6Ñ2Ð2r   rF   )r-   r.   r/   r0   r1   r   rC   rG   ÚclassmethodrL   r2   r3   r4   r5   s   @@r   r8   r8   J   s2   ù‡ € ñõ
9ò
,ò(ð ñ3ó ÷3ð 3r   r8   c                   óŒ   a a€ ] tR t^dt oRtR t]R 4       t]R 4       tR t	R t
V 3R ltR tR	 tR
 tR tR tR tRtVtV ;t# )Ú_GLibEventLoopMixinau  Base functionally required for both proactor and selector.

The proactor/selector is always available through _selector, and we assume
it has the following extra functionality that we provide:
 * _source: the GSource subclass
 * _dispatching: boolean whether it is dispatching currently
 * attach/detach: add/remove the GSource from the main context

In principle, we simply override run_forever to call into GLib, with the
assumption that a GSource is registered which will then call back into
the python mainloop _run_once handler when needed. This in turn calls
self._selector.select(), which means we just need to make sure to return
our already prepared events at that point.

If no main_context is passed, then the current default main context will
be used when available. If the thread does not yet have any main context
set, then a main context will be created.

When creating an event loop like this, it should be used as a context
manager. This ensure that the main context is set for the thread, that
GLib routines will properly iterate the EventLoop and that no second
EventLoop for the same main context is created by accident.
c                óÐ  € Vfƒ   \         P                  P                  4       pVfa   \        P                  ! 4       \        P
                  ! 4       J d    \         P                  P                  4       pM\         P                  ! 4       pWn        \         P                  P                  V P                  R4      V n
        . V n        . V n        RV n        ^ V n        RV n        RV n        R # ©NF)r   ÚMainContextÚget_thread_defaultÚ	threadingÚcurrent_threadÚmain_threadÚdefaultÚ_contextÚMainLoopÚnewÚ
_main_loopÚ_quit_funcsr   r   Ú_loop_enter_countÚ_loop_was_setÚ_ctx_was_set)r   Úmain_contexts   &&r   r   Ú_GLibEventLoopMixin.__init__}   sµ   € ð ÒÜ×+Ñ+×>Ñ>Ó@ˆLàÒ#Ü×+Ò+Ó-´×1FÒ1FÓ1HÓHô $(×#3Ñ#3×#;Ñ#;Ó#=‘Lô $(×#3Ò#3Ó#5�Là$ŒÜŸ-™-×+Ñ+¨D¯M©M¸5ÓAˆŒØˆÔØˆÔØ!ˆÔØ!"ˆÔØ"ˆÔØ!ˆÖr   c              #  ó  "  € V P                   '       g   Rx € R#  RV n         V P                  P                  4        Rx € RV n         V P                  P                  4        R#   RT n         T P                  P                  4        i ; i5i)z¦This context manager ensures the EventLoop is *not* being iterated.

It purely exists to handle the case where python code iterates the main
context more gracefully.
NFT)r   Ú	_selectorÚdetachÚattachr   s   &r   ÚpausedÚ_GLibEventLoopMixin.paused•   sl   é € ð × × Ð ÛÙð	$Ø %ˆDÔØ�N‰N×!Ñ!Ô#Ûà $ˆDÔØ�N‰N×!Ñ!Ö#øð !%ˆDÔØ�N‰N×!Ñ!Õ#üs   ‚B
œ%A$ Á#B
Á$#BÂB
c           	   #  óÔ
  "  € V P                   P                  4       '       g   Q hV P                  P                  V4       V P	                  4       '       df    Rx € V P                   P                  4        V P                  P                  4        V P                  '       d   V P                  R,          ! 4        R# \        V R4      '       d   V P                  4        MœV P                  4        V P                  V P                  4       \        P                  ! 4       V n        \         P"                  ! 4       p\         P$                  ! V P&                  V P(                  R7       \*        P,                  ! V 4        V P.                  P0                  P2                  '       d   Q hRV n        V P.                  P7                  4        \9        V 4      V n        V P:                  P7                  V P                   4       V P:                  P=                  R4       V P>                  '       d4   V P:                  PA                  V P>                  ^ ,          ^ ,          4       V ;_uu_ 4        Rx € RRR4       RV n        V P:                  PC                  4        RV n        V P.                  PE                  4        V P                   P                  4        RV n        \        V R4      '       d   V PG                  4        Mm\*        P,                  ! R4       \H        PJ                  ! \L        4      ;_uu_ 4        V P                  R4       RRR4       \         P$                  ! X!   RV n        V P                  P                  4        \O        V P                  4      ^ 8X  g   Q hR#   T P                   P                  4        T P                  P                  4        T P                  '       d   T P                  R,          ! 4        i i ; i  + '       g   i     EL ; i  + '       g   i     LÛ; i  RT n        T P:                  PC                  4        RT n        T P.                  PE                  4        T P                   P                  4        RT n        \        T R4      '       d   T PG                  4        M�\*        P,                  ! R4       \H        PJ                  ! \L        4      ;_uu_ 4        T P                  R4       RRR4       M  + '       g   i     M; i\         P$                  ! X!   RT n        T P                  P                  4        \O        T P                  4      ^ 8X  g   Q hi ; i5i)zÄThis context manager ensures the EventLoop is marked as running
while other API is iterating its main context.
The passed quit function is used to stop all recursion levels when
stop() is called.
NÚ_run_forever_setup)Ú	firstiterÚ	finalizerTzGLibEventLoop._idle_sourceFr   )(rY   Úacquirer]   ÚappendÚ
is_runningÚreleaseÚpopÚ	_stoppingÚhasattrrj   Ú_check_closedÚ_set_coroutine_origin_trackingÚ_debugrU   Ú	get_identÚ
_thread_idÚsysÚget_asyncgen_hooksÚset_asyncgen_hooksÚ_asyncgen_firstiter_hookÚ_asyncgen_finalizer_hookÚasyncioÚ_set_running_looprd   Ú_sourceÚ_dispatchingr   rf   r
   Ú_idle_sourceÚset_namer   rC   Údestroyre   Ú_run_forever_cleanupÚ
contextlibÚsuppressÚAttributeErrorÚlen)r   Ú	quit_funcÚold_agen_hookss   && r   ÚrunningÚ_GLibEventLoopMixin.running©   sÓ  é € ð �}‰}×$Ñ$×&Ò&Ð&Ð&à×Ñ×Ñ 	Ô*à�?‰?×Òð+Ûà—‘×%Ñ%Ô'Ø× Ñ ×$Ñ$Ô&à—>—>�>Ø×$Ñ$ RÖ(Ô*Ùô �4Ð-×.Ò.Ø×#Ñ#Õ%ð ×ÑÔ Ø×/Ñ/°·±Ô<Ü'×1Ò1Ó3ˆDŒOä ×3Ò3Ó5ˆNÜ×"Ò"Ø×7Ñ7Ø×7Ñ7õô ×%Ò% dÔ+ð	.Ø—~‘~×-Ñ-×:×:Ð:Ð:Ð:Ø $ˆDÔØ�N‰N×!Ñ!Ô#Ü +¨DÓ 1ˆDÔØ×Ñ×$Ñ$ T§]¡]Ô3Ø×Ñ×&Ñ&Ð'CÔDØ××ÐØ×!Ñ!×.Ñ.¨t×/?Ñ/?ÀÕ/BÀ1Õ/EÔFß’Û÷ ð !&ˆDÔØ×Ñ×%Ñ%Ô'Ø $ˆDÔØ�N‰N×!Ñ!Ô#Ø�M‰M×!Ñ!Ô#Ø"ˆDŒOä�tÐ1×2Ò2Ø×)Ñ)Õ+ä×)Ò)¨$Ô/Ü×(Ò(¬×8Õ8Ø×7Ñ7¸Ô>÷ 9ä×&Ò&¨Ò7à!&�”à×Ñ× Ñ Ô"Ü�t×'Ñ'Ó(¨AÔ-Ð-Ò-øðk —‘×%Ñ%Ô'Ø× Ñ ×$Ñ$Ô&à—>—>�>Ø×$Ñ$ RÖ(Õ*ð "ú÷: —�ú÷ 9×8ûð !&ˆDÔØ×Ñ×%Ñ%Ô'Ø $ˆDÔØ�N‰N×!Ñ!Ô#Ø�M‰M×!Ñ!Ô#Ø"ˆDŒOä�tÐ1×2Ò2Ø×)Ñ)Õ+ä×)Ò)¨$Ô/Ü×(Ò(¬×8Õ8Ø×7Ñ7¸Ô>÷ 9×8×8Ð8úä×&Ò&¨Ò7à!&�”à×Ñ× Ñ Ô"Ü�t×'Ñ'Ó(¨AÔ-Ð-Ñ-üs‹   ‚AU(ÁN ÁDU(Å;%P& Æ!CP& É#O?É(P& É0B>U(Ì.PÍ AU(ÎA!O<Ï<U(Ï?P	Ð
	P& ÐP#	ÐU(Ð&B?U%Ó%T 	Ó7	U%Ô TÔAU%Õ%U(c                ó:   € \         P                  ! 4       R ,          # )i@B )r   Úget_monotonic_timer   s   &r   ÚtimeÚ_GLibEventLoopMixin.timeï   s   € Ü×&Ò&Ó(¨7Õ2Ð2r   c                ó¤  € V P                  4       '       g   \        P                  ! R \        4       V P                  RJ d   \        P                  ! R\        4       V P
                  '       d   ^ # V P                  '       dN   \        V P                  ^ ,          P                  V P                  4       ,
          R,          4      pV^ 8¼  d   V# ^ # R# )zkGLibEventLoop is iterated without being marked as running. Missing override or invalid use of existing API!TzXGLibEventLoop is not stopping properly. Missing override or invalid use of existing API!iè  r   )
ro   ÚwarningsÚwarnÚRuntimeWarningrr   Ú_readyÚ
_scheduledr@   Ú_whenr�   ©r   Útimeouts   & r   Ú_get_timeout_msÚ#_GLibEventLoopMixin._get_timeout_msò   s™   € Ø�‰× Ò Ü�MŠMØ}Üôð �>‰>˜TÓ!Ü�MŠMØjÜôð �;�;ˆ;Ùà�?�?ˆ?ô ˜4Ÿ?™?¨1Õ-×3Ñ3°d·i±i³kÕAÀTÕIÓJˆGØ%¨œl�7Ð1°Ð1àˆ	r   c                óÜ  <€  VP                   P                  pV\        P                  8X  d   \        4       P                  WV4      # \        P                  ! WW4      pV P                  P                  WE34       V P                  P                  R  R7       V P                  P                  V P                  ^ ,          ^ ,          4       V#   \         d    \        P                  p LÑi ; i)c                 ó   € V ^ ,          # )é    © )Úxs   &r   Ú<lambda>Ú0_GLibEventLoopMixin._call_soon.<locals>.<lambda>  s   € ¨A¨a®Dr   )Úkey)Ú__self__r;   rˆ   r   r:   r   Ú
_call_soonr~   ÚHandler   rn   Úsortr‚   rC   )r   r)   r*   ÚcontextrB   Úhandler   s   &&&&  €r   r¦   Ú_GLibEventLoopMixin._call_soon  sÅ   ø€ ð	-ð
  ×(Ñ(×<Ñ<ˆHð ”t×,Ñ,Ô,ä“7×%Ñ% h°gÓ>Ð>ä—’ °Ó>ˆØ×Ñ×Ñ Ð 2Ô3Ø×Ñ×Ñ¡.ÐÔ1ð 	×Ñ×&Ñ& t×'7Ñ'7¸Õ':¸1Õ'=Ô>àˆøô ô 	-Ü×,Ñ,ŠHð	-ús   ƒC ÃC+Ã*C+c                ój   € V P                   '       g   Q hR V n         V P                  4        RV n         R# )FTN)r   Ú	_run_oncer   s   &r   Ú_glib_dispatchÚ"_GLibEventLoopMixin._glib_dispatch  s0   € Ø× × Ð Ð Ð ð "ˆÔØ�‰ÔØ ˆÖr   c                óT  € V P                   '       g   Q hV P                  4       ;_uu_ 4        V P                  P                  4       p. pV P                  '       dS   V P                  ^ ,          ^ ,          V8X  d4   VP                  V P                  P                  ^ 4      ^,          4       Kd  V F  pVP                  4        K  	  V P                  '       d4   V P                  P                  V P                  ^ ,          ^ ,          4       RRR4       R#   + '       g   i     R# ; i©rŸ   N)	r   rg   r‚   rG   r   rn   rq   Ú_runrC   )r   rB   Úready_handlesrª   s   &   r   r&   Ú'_GLibEventLoopMixin._glib_idle_dispatch'  sÒ   € Ø× × Ð Ð Ð ð
 �[‰[�]�]Ø×(Ñ(×5Ñ5Ó7ˆHàˆMØ×"×"Ð" t×'7Ñ'7¸Õ':¸1Õ'=ÀÔ'IØ×$Ñ$ T×%5Ñ%5×%9Ñ%9¸!Ó%<¸QÕ%?Ö@ã'�Ø—‘–ñ (ð ××ÐØ×!Ñ!×.Ñ.¨t×/?Ñ/?ÀÕ/BÀ1Õ/EÔF÷ �]�]Š]ús   ­.DÁA<DÃ3DÄD'	c                ól   € R V n         V P                  '       d   V P                  R,          ! 4        R# R# )TNr   )rr   r]   r   s   &r   ÚstopÚ_GLibEventLoopMixin.stop;  s+   € àˆŒØ××ÐØ×Ñ˜RÖ Ö"ñ r   c                óø   € R V P                   P                   RV P                  4        RV P                  4        RV P	                  4        R\        V P                  4      R R\        V P                  4      R R2# )Ú<z	 running=z closed=z debug=z ctx=0xÚXz loop=0xÚ>)r   r-   ro   Ú	is_closedÚ	get_debugÚhashrY   r\   r   s   &r   Ú__repr__Ú_GLibEventLoopMixin.__repr__A  sy   € à�—‘×'Ñ'Ð(¨	°$·/±/Ó2CÐ1Dð EØ—n‘nÓ&Ð' w¨t¯~©~Ó/?Ð.@ð AÜ˜$Ÿ-™-Ó(¨Ð+¨8´D¸¿¹Ó4IÈ!Ð3LÈAðOð	
r   c                ó.  € V P                   ^ 8”  d   V ;P                   ^,          un         R# V P                  4       '       g#   \        P                  ! 4       e   \	        R4      h\
        P                  P                  4       pVfK   \        P                  ! 4       \        P                  ! 4       J d   \
        P                  P                  4       pVe¯   \        V4      \        P                  9   d‘   \        P                  \        V4      ,          P                  4       '       g]   \        P                  \        V4      ,          V Jd1   \	        R\        P                  \        V4      ,           RV  R24      hRV n        M&V \        P                  \        V P"                  4      &   \        V4      \        V P"                  4      8w  d1   \
        P                  P%                  V P"                  4       RV n        V ;P                   ^,          un         R# )rŸ   Nz%Thread already has a python EventLoopz:A GLibEventLoop is already registered through the policy (z, self=Ú)T)r^   ro   r~   Ú_get_running_loopÚRuntimeErrorr   rS   rT   rU   rV   rW   rX   r¾   r   Ú_loopsr¼   r_   rY   Úpush_thread_defaultr`   ©r   Úctxs   & r   Ú	__enter__Ú_GLibEventLoopMixin.__enter__J  s’  € à×!Ñ! AÔ%Ø×"Ò" aÕ'Õ"Ùà�‰× Ò ¤W×%>Ò%>Ó%@Ò%LÜÐFÓGÐGô ×Ñ×1Ñ1Ó3ˆØŠ;œ9×3Ò3Ó5¼×9NÒ9NÓ9PÓPÜ×"Ñ"×*Ñ*Ó,ˆCð ŠOÜ�S“	Ô0×7Ñ7Ô7Ü'×.Ñ.¬t°C«yÕ9×CÑC×EÒEä"×)Ñ)¬$¨s«)Õ4¸DÓ@Ü"ØPÔQd×QkÑQkÔlpÐqtÓluÕQvÐPwÐw~ð  @Dð  Eð  EFð  Góð ð "&ˆDÕà>BÔ×&Ñ&¤t¨D¯M©MÓ':Ñ;ä�‹9œ˜TŸ]™]Ó+Ô+Ü×Ñ×0Ñ0°·±Ô?Ø $ˆDÔà×Ò !Õ#×r   c                ó\  € V ;P                   ^,          un         V P                   ^ 8X  d‚   V P                  '       g%   \        P                  \	        V P
                  4       V P                  '       d*   \        P                  P                  V P
                  4       RV n        RV n        R# R# )é   FN)
r^   r_   r   rÅ   r¾   rY   r`   r   rS   Úpop_thread_default)r   Úexc_typeÚ	exc_valueÚ	tracebacks   &&&&r   Ú__exit__Ú_GLibEventLoopMixin.__exit__m  s}   € Ø×Ò !Õ#ÕØ×!Ñ! QÔ&Ø×%×%Ð%Ü'×.Ñ.¬t°D·M±MÓ/BÐCØ× × Ð Ü× Ñ ×3Ñ3°D·M±MÔBØ!&ˆDÔØ %ˆDÖñ 'r   )rY   r`   r‚   r   r^   r_   r\   r   r]   rr   rx   )r-   r.   r/   r0   r1   r   r   rg   rŒ   r�   r›   r¦   r®   r&   r¶   r¿   rÉ   rÑ   r2   r3   r4   r5   s   @@r   rP   rP   d   sn   ù‡ € ñò0"ð0 ñ$ó ð$ð& ñC.ó ðC.òJ3òõ,ò.!òGò(#ò
ò!$÷F&ò &r   rP   c                   ó&   a € ] tR tRt o R tRtV tR# )Ú_GLibEventLoopRunMixinix  c           	     ó¢  € V P                  4       '       d   \        R 4      h\        P                  ! V P                  P
                  4      ;_uu_ 4        V P                  V P                  P
                  4      ;_uu_ 4        \        V P                  4       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)z"This event loop is already runningN)ro   rÄ   r   Úregister_sigint_fallbackr\   ÚquitrŒ   Úg_main_loop_runr   s   &r   Úrun_foreverÚ"_GLibEventLoopRunMixin.run_forever  s   € à�?‰?×ÒÜÐCÓDÐDô ×1Ò1°$·/±/×2FÑ2F×GÕGØ�L‰L˜Ÿ™×-Ñ-×.Õ.ä˜DŸO™OÔ,÷ /÷ HÑGß.×.ú÷ H×GÐGús$   Á.B=ÂB*	ÂB=Â*B:Â5B=Â=C	r    N)r-   r.   r/   r0   rÙ   r2   r3   ©r6   s   @r   rÔ   rÔ   x  s   ø‡ € ÷	-ð 	-r   rÔ   c                   óH   a a€ ] tR tRt oRtV 3R ltR tR tR tRt	Vt
V ;t# )Ú_SourceBasei‹  z3Common Source functionality for both unix and win32c                óÎ   <€ \        4       P                  4        R V n        V P                  R 4       V P	                  R4       \
        P                  ! V4      V n        . V n        R# )Fzpython asyncio integrationN)	r   r   r�   r   rƒ   ÚweakrefÚrefrd   r–   )r   Úselectorr   s   &&€r   r   Ú_SourceBase.__init__Ž  sM   ø€ Ü‹×ÑÔà!ˆÔð
 	×Ñ˜UÔ#Ø�‰Ð2Ô3ä Ÿš XÓ.ˆŒàˆŽr   c                ó6   € V P                  4       P                  # r%   )rd   r   r   s   &r   r   Ú_SourceBase._loop�  s   € Ø�~‰~Ó×%Ñ%Ð%r   c                ó”   € R V n          V P                  4       P                  4        RV n         \        P                  #   RT n         i ; i)TF)r�   r   r®   r   r'   r(   s   &&&r   r+   Ú_SourceBase.dispatch   sA   € à ˆÔð	&Ø�J‰J‹L×'Ñ'Ô)à %ˆDÔä×#Ñ#Ð#øð !&ˆDÕús	   ‰> ¾	Ac                óf   € V P                   '       g   \        R 4      hV P                  p. V n        V# )z>gi.asyncio.Selector.select only works while it is dispatching!)r�   rÄ   r–   )r   Úreadys   & r   Ú
_get_readyÚ_SourceBase._get_readyª  s5   € Ø× × Ð ÜØPóð ð —‘ˆØˆŒØˆr   )r�   r–   rd   )r-   r.   r/   r0   r1   r   r   r+   ré   r2   r3   r4   r5   s   @@r   rÝ   rÝ   ‹  s!   ù‡ € Ù=õò&ò$÷ò r   rÝ   c                   ó\   a a€ ] tR tRt oRtV 3R ltV 3R ltRR ltRV 3R lltRt	Vt
V ;t# )	Ú_SelectorMixiniµ  z>A Mixin for common functionality of the Selector and Proactor.c                ó~   <€ \        4       P                  4        Wn        W n        / V n        \        V 4      V n        R # r%   )r   r   rY   r   Ú
_fd_to_keyÚ_Sourcer€   ©r   r©   r   r   s   &&&€r   r   Ú_SelectorMixin.__init__¸  s-   ø€ Ü‹×ÑÔàŒØŒ
ØˆŒä˜t“}ˆŽr   c                óÔ   <€ V P                   '       d=   \        V P                   4      '       d"   V P                   P                  4        R V n         \        4       P	                  4        R # r%   )r€   r¾   r„   r   Úclose)r   r   s   &€r   ró   Ú_SelectorMixin.closeÁ  s<   ø€ à�<�<ˆ<œD §¡×.Ò.Ø�L‰L× Ñ Ô"ØˆDŒLÜ‹�‰Žr   c                ó6   € V P                   P                  4       # r%   )r€   ré   r™   s   &&r   ÚselectÚ_SelectorMixin.selectÈ  s   € Ø�|‰|×&Ñ&Ó(Ð(r   c                ó6   <€ \        4       P                  V4      # r%   )r   rö   )r   rš   r   s   &&€r   Ú_real_selectÚ_SelectorMixin._real_selectË  s   ø€ Ü‹w�~‰~˜gÓ&Ð&r   )rY   rî   r   r€   r%   )r-   r.   r/   r0   r1   r   ró   rö   rù   r2   r3   r4   r5   s   @@r   rì   rì   µ  s!   ù‡ € ÙHõ%õô)÷'÷ 'r   rì   Úwin32c                   óæ   a a€ ] tR tRt oRt]P                  ]P                  ]P                  ]P                  ]P                  ]P                  0tR	R ltV 3R ltV 3R ltR tV 3R ltRtVtV ;t# )
r   iÑ  ziAn asyncio event loop that runs the python mainloop inside GLib.

Based on the asyncio.SelectorEventLoop
c                óà   € \         P                  W4       / V n        \        V P                  V 4      p\
        P                  P                  W4       R V n        \        P                  V n
        R# ©gü©ñÒMbP?N)rP   r   Ú_GLibEventLoop__signal_handlersÚ	_SelectorrY   r~   ÚSelectorEventLoopÚ_clock_resolutionr8   rL   Ú_task_factory)r   ra   rá   s   && r   r   ÚGLibEventLoop.__init__ï  sX   € Ü×(Ñ(¨Ô<ð &(ˆDÔ"ä  §¡°Ó5ˆHÜ×%Ñ%×.Ñ.¨tÔ>ð &*ˆDÔ"ô "*×!2Ñ!2ˆDÖr   c                ó   <€ \         P                  ! V4      '       g   \         P                  ! V4      '       d   \        R4      hV P	                  4        WP
                  9  d   \        4       P                  ! W.VO5!  # V P                  P                  VR4      ^ ,          pV'       d   VP                  4        \        P                  ! V4      pVP                  RV 24       VP                  \        P                  4       VP!                  V P"                  4       VP%                  V P&                  V4       WBV3V P                  V&   ?R# )zAdd a handler for UNIX signalz3coroutines cannot be used with add_signal_handler()Nzasyncio signal watch for )NNN)r   ÚiscoroutineÚiscoroutinefunctionÚ	TypeErrorrt   Ú_GLIB_SIGNALSr   Úadd_signal_handlerrÿ   Úgetr„   r   Úunix_signal_source_newrƒ   rC   ÚPRIORITY_HIGHrf   rY   Úset_callbackÚ
_signal_cb)r   Úsigr)   r*   Úsourcer   s   &&&* €r   r
  Ú GLibEventLoop.add_signal_handlerÿ  s  ø€ ä×%Ò% h×/Ò/´:×3QÒ3QØ÷4ò 4ô  Ð UÓVÐVØ×ÑÔ ð
 ×,Ñ,Ô,Ü“w×1Ò1°#ÐGÀ$ÓGÐGð ×+Ñ+×/Ñ/°Ð5GÓHÈÕKˆFßØ—‘Ô ô ×0Ò0°Ó5ˆFØ�O‰OÐ7¸°uÐ=Ô>Ø×Ñ¤× 2Ñ 2Ô3Ø�M‰M˜$Ÿ-™-Ô(Ø×Ñ §¡°Ô5à+1¸TÐ*BˆD×"Ñ" 3Ñ'ØÙr   c                ó  <€ WP                   9  d   \        4       P                  V4      #  V P                  V,          w  p pV P                  V VP	                  4        VP                  4        V\        P                  8X  dr   \        P                  ! \        P                  4      ^ 8X  dI   \        P                  ^ 8”  d4   \        P                  ! \        P                  \        P                  4       R#   \         d     R# i ; i)rŸ   TF)r	  r   Úremove_signal_handlerrÿ   r„   Ú_clear_boxedÚsignalÚSIGINTr   ÚPyOS_getsigÚstartup_sigint_ptrÚPyOS_setsigÚKeyError)r   r  r  Ú_r   s   &&  €r   r  Ú#GLibEventLoop.remove_signal_handler  sÈ   ø€ Ø×,Ñ,Ô,Ü“w×4Ñ4°SÓ9Ð9ðØ#×5Ñ5°cÕ:‘�˜˜1Ø×*Ñ*¨3Ð/à—‘Ô Ø×#Ñ#Ô%ð œ6Ÿ=™=Ô(Ü$×0Ò0´·±Ó?À1ÔDÜ$×7Ñ7¸!Ô;ä ×,Ò,ÜŸ™¤|×'FÑ'Fôñ øÜô Úðús   ¬C
C8 Ã8DÄDc                ój   € V P                   P                  V4      w  r#pV P                  ! V.VO5!   R # r%   )rÿ   r  Ú	call_soon)r   r  r€   Úcbr*   s   &&   r   r  ÚGLibEventLoop._signal_cb8  s0   € Ø $× 6Ñ 6× :Ñ :¸3Ó ?ÑˆG˜ð �NŠN˜2Ð% Ö%r   c                ó’   <€ \        4       P                  4        \        V P                  4       F  pV P	                  V4       K  	  R # r%   )r   ró   Úlistrÿ   r  )r   Úsr   s   & €r   ró   ÚGLibEventLoop.close>  s1   ø€ Ü‹G�M‰MŒOÜ˜$×0Ñ0Ö1�Ø×*Ñ*¨1Ö-ó 2r   )Ú__signal_handlersr  r  r%   )r-   r.   r/   r0   r1   r  ÚSIGHUPr  ÚSIGTERMÚSIGUSR1ÚSIGUSR2ÚSIGWINCHr	  r   r
  r  r  ró   r2   r3   r4   r5   s   @@r   r   r   Ñ  s[   ù‡ € ñ	ð �M‰MØ�M‰MØ�N‰NØ�N‰NØ�N‰NØ�O‰Oð
ˆô,	3õ 	õ<	ò6	&÷	.õ 	.r   c                 óR   € \        V \        4      '       d   V # V P                  4       # r%   )r?   r@   Úfileno)Úfileobjs   &r   Ú_fileobj_to_fdr/  C  s!   € ä�gœs×#Ò#ØˆNØ�~‰~ÓÐr   c                   ó,   a € ] tR tRt o R tR tRtV tR# )rï   iI  c                óF   € V P                  4       P                  4       pR V3# r!   )r   r›   r™   s   & r   r   Ú_Source.prepareJ  s"   € Ø—j‘j“l×2Ñ2Ó4ˆGð ˜'�>Ð!r   c                óB  € . pV P                  4       P                  P                  4        Fº  pV P                  VP                  4      p^ pV\
        P                  P                  ( ,          '       d   V\        P                  ,          pV\
        P                  P                  ( ,          '       d   V\        P                  ,          pV'       g   K¨  VP                  W$34       K¼  	  Wn        V P                  4       P                  4       pV^ 8X  d   R# \!        V4      # )rŸ   T)rd   rî   ÚvaluesÚquery_unix_fdÚ_tagr   ÚIOConditionÚOUTÚ	selectorsÚ
EVENT_READÚINÚEVENT_WRITErn   r–   r   r›   r   )r   rè   r¤   Ú	conditionÚeventsrš   s   &     r   r"   Ú_Source.checkQ  sÖ   € ØˆEà—~‘~Ó'×2Ñ2×9Ñ9Ö;�Ø ×.Ñ.¨s¯x©xÓ8�	Ø�à¤× 0Ñ 0× 4Ñ 4Ð4×4Ô4Øœi×2Ñ2Õ2�FØ¤× 0Ñ 0× 3Ñ 3Ð3×3Ô3Øœi×3Ñ3Õ3�Fß‘6Ø—L‘L # Ö/ñ <ð  ŒKà—j‘j“l×2Ñ2Ó4ˆGØ˜!Œ|Ùä˜“;Ðr   )r–   N)r-   r.   r/   r0   r   r"   r2   r3   rÛ   s   @r   rï   rï   I  s   ø‡ € ò	"÷	ð 	r   rï   c                   ó   € ] tR tRtRtR# )Ú_SelectorKeyif  r    N)r-   r.   r/   r0   r2   r    r   r   rA  rA  f  s   † ãr   rA  c                   óB   a € ] tR tRt o R tR tR	R ltR tR tRt	V t
R# )
Ú_FileObjectMappingij  c                ó   € Wn         R # r%   ©Úfd_dict)r   rF  s   &&r   r   Ú_FileObjectMapping.__init__k  s   € Ø"ŽLr   c                ó,   € \        V P                  4      # r%   )r‰   rF  r   s   &r   Ú__len__Ú_FileObjectMapping.__len__n  s   € Ü�t—|‘|Ó$Ð$r   Nc                óN   € \        V4      pV P                  P                  W24      # r%   )r/  rF  r  )r   r.  rX   Úfds   &&& r   r  Ú_FileObjectMapping.getq  s!   € Ü Ó(ˆBØ—<‘<×#Ñ# BÓ0Ð0r   c                óN   € V P                  V4      pVf   \        V: R24      hV# )Nz is not registered)r  r  )r   r.  Úvalues   && r   Ú__getitem__Ú_FileObjectMapping.__getitem__u  s-   € Ø—H‘H˜WÓ%ˆEØŠ}Ü '¡Ð,>Ð?Ó@Ð@ØˆLr   c                ó,   € \        V P                  4      # r%   )ÚiterrF  r   s   &r   Ú__iter__Ú_FileObjectMapping.__iter__{  s   € Ü˜Ÿ™Ó%Ð%r   rE  r%   )r-   r.   r/   r0   r   rI  r  rP  rT  r2   r3   rÛ   s   @r   rC  rC  j  s#   ø‡ € ò	#ò	%ô	1ò	÷	&ð 	&r   rC  c                   ód   a a€ ] tR tRt oRtV 3R ltR tR tR tRR lt	R t
R	 tR
 tRtVtV ;t# )r   i~  zGA Selector for gi.events.GLibEventLoop registering python IO with GLib.c                ón   <€ \        4       P                  W4       \        V P                  4      V n        R # r%   )r   r   rC  rî   Ú_maprð   s   &&&€r   r   Ú_Selector.__init__�  s#   ø€ Ü‹G×Ñ˜WÔ+Ü*¨4¯?©?Ó;ˆDŽIr   c                ód   € V P                   P                  V P                  P                  4       R # r%   )r€   rf   r   rY   r   s   &r   rf   Ú_Selector.attach…  s   € Ø�L‰L×Ñ §
¡
× 3Ñ 3Ö4r   c                ó¾   € V P                   P                  4        \        V 4      V n         V P                  P	                  4        F  pV P                  V4       K  	  R # r%   )r€   r„   rï   rî   r4  Ú_register_key)r   r¤   s   & r   re   Ú_Selector.detachˆ  sB   € Ø�L‰L× Ñ Ô"Ü" 4›=ˆDŒLà—‘×-Ñ-Ö/�Ø×"Ñ" 3Ö'ó 0r   c                ó¨  € \         P                  ! ^ 4      pVP                  \        P                  ,          '       d"   V\         P                  P
                  ,          pVP                  \        P                  ,          '       d"   V\         P                  P                  ,          pV P                  P                  VP                  V4      Vn        R# r±   )r   r7  r>  r9  r:  r;  r<  r8  r€   Úadd_unix_fdrL  r6  )r   r¤   r=  s   && r   r]  Ú_Selector._register_key�  s„   € Ü×(Ò(¨Ó+ˆIØ�z‰zœI×0Ñ0×0Ô0ØœT×-Ñ-×0Ñ0Õ0�	Ø�z‰zœI×1Ñ1×1Ô1ØœT×-Ñ-×1Ñ1Õ1�	Ø—|‘|×/Ñ/°·±¸	ÓBˆCŽHr   c                óJ  € V'       d4   V\         P                  \         P                  ,          ( ,          '       d   \        R V: 24      h\	        V4      pW@P
                  9   d   \        V: RV R24      h\        WW#4      pV P                  V4       WPP
                  V&   V# )zInvalid events: z (FD z) is already registered)	r9  r:  r<  Ú
ValueErrorr/  rî   r  rA  r]  )r   r.  r>  ÚdatarL  r¤   s   &&&&  r   ÚregisterÚ_Selector.register—  s�   € ßØœ9×/Ñ/´)×2GÑ2GÕGÐH×HÔHä Ð#3°F±:Ð!>Ó?Ð?ä Ó(ˆBØ—_‘_Ô$Ü '¡¨E°"°Ð5LÐMÓNÐNä˜w¨FÓ9ˆCà×Ñ˜sÔ#à"%�O‰O˜BÑØˆJr   c                ó   € \        V4      pV P                  V,          pV P                  '       dA   \        V P                  4      '       d&   V P                  P	                  VP
                  4       V P                  V V# r%   )r/  rî   r€   r¾   Úremove_unix_fdr6  )r   r.  rL  r¤   s   &&  r   Ú
unregisterÚ_Selector.unregister¨  sZ   € ä Ó(ˆBØ—/‘/ "Õ%ˆCð
 �|�|ˆ|¤ T§\¡\× 2Ò 2Ø—‘×+Ñ+¨C¯H©HÔ5Ø—‘ Ð#àˆJr   c                ó(   € V P                   V,          # r%   ©rX  )r   r.  s   &&r   Úget_keyÚ_Selector.get_key¸  s   € Ø—9‘9˜WÕ%Ð%r   c                ó   € V P                   # )zGReturn a mapping of file objects or file descriptors to
selector keys.
rl  r   s   &r   Úget_mapÚ_Selector.get_map»  s   € ð —9‘9Ðr   )rX  r€   r%   )r-   r.   r/   r0   r1   r   rf   re   r]  re  ri  rm  rp  r2   r3   r4   r5   s   @@r   r   r   ~  s6   ù‡ € ÙUõ	<ò	5ò	(ò	Cô	ò"	ò 	&÷	ò 	r   r   c                   ó&   a € ] tR tRt o R tRtV tR# )Ú_PushRunMixinBackMetaiÄ  c                ó¨   € \         P                  V 4      pVP                  \        4      p. VR V OW^,           ,          NW,          NW^,           R  O# r%   )ÚtypeÚmroÚindexrÔ   )rJ   rv  Úidxs   &  r   rv  Ú_PushRunMixinBackMeta.mroÉ  sN   € Ü—(‘(˜3“-ˆCØ—)‘)Ô2Ó3ˆCàH�S˜˜#�YÐH ¨!¥G¥ÐH¨c­hÐH¸À1½W¸Y¸ÐHÐHr   r    N)r-   r.   r/   r0   rv  r2   r3   rÛ   s   @r   rs  rs  Ä  s   ø‡ € ÷
	Ið 	Ir   rs  c                   ó.   a € ] tR tRt o RtRR ltRtV tR# )r   iÏ  zvAn asyncio event loop that runs the python mainloop inside GLib.

Based on the asyncio.WindowsProactorEventLoopPolicy
Nc                óÒ   € \         P                  W4       \        V P                  V 4      p\        P
                  P                  W4       R V n        \        P                  V n	        R# rþ   )
rP   r   Ú	_ProactorrY   r~   ÚProactorEventLoopr  r8   rL   r  )r   ra   Úproactors   && r   r   r  Û  sN   € Ü×(Ñ(¨Ô<ä  §¡°Ó5ˆHä×%Ñ%×.Ñ.¨tÔ>ð &*ˆDÔ"ô "*×!2Ñ!2ˆDÖr   )r  r  r%   )r-   r.   r/   r0   r1   r   r2   r3   rÛ   s   @r   r   r   Ï  s   ø‡ € ñ	÷	3ò 	3r   )Ú	metaclassc                   óJ   a a€ ] tR tRt oV 3R ltR tR tR tR tRt	Vt
V ;t# )rï   iè  c                óH   <€ \        4       P                  V4       R V n        R # r%   )r   r   Ú_poll_fd)r   r~  r   s   &&€r   r   Ú_Source.__init__é  s   ø€ Ü‹G×Ñ˜XÔ&ð !ˆDŽMr   c                óà   € V P                   e   Q h\        P                  ! V P                  4       P                  \        P
                  4      V n         V P                  V P                   4       R # r%   )r‚  r   ÚPollFDrd   Ú_iocpÚIO_INÚadd_pollr   s   &r   ÚenableÚ_Source.enableï  sE   € Ø—=‘=Ò(Ð(Ð(ä ŸKšK¨¯©Ó(8×(>Ñ(>ÄÇ
Á
ÓKˆDŒMØ�M‰M˜$Ÿ-™-Ö(r   c                óJ   € V P                  V P                  4       R V n        R # r%   )Úremove_pollr‚  r   s   &r   ÚdisableÚ_Source.disableõ  s   € Ø×Ñ˜TŸ]™]Ô+Ø ˆDŽMr   c                óŒ   € V P                   f   R# V P                  4       P                  4       p\        V P                  4      V3# )Nr   )r‚  r   r›   r   r–   r™   s   & r   r   r2  ù  s:   € à�}‰}Ò$Ø Ð à—j‘j“l×2Ñ2Ó4ˆGä˜Ÿ™Ó$ gÐ-Ð-r   c                ó4  € V P                   f   R# V P                   P                  '       d9   V P                  P                  V P	                  4       P                  ^ 4      4       V P                  '       d   R# V P                  4       P                  4       ^ 8H  # )NFT)r‚  Úreventsr–   Úextendrd   rù   r   r›   r   s   &r   r"   r?    si   € Ø�}‰}Ò$Ùà�}‰}×$×$Ð$Ø—‘×"Ñ" 4§>¡>Ó#3×#@Ñ#@ÀÓ#CÔDà�{�{ˆ{Ùà—:‘:“<×/Ñ/Ó1°QÑ6Ð6r   )r‚  )r-   r.   r/   r0   r   r‰  r�  r   r"   r2   r3   r4   r5   s   @@r   rï   rï   è  s#   ù‡ € õ	!ò	)ò	!ò	.÷
	7ò 
	7r   c                   óB   a a€ ] tR tRt oRtV 3R ltR tR tRtVt	V ;t
# )r|  i  zGA Proactor for gi.events.GLibEventLoop registering python IO with GLib.c                ó�   <€ \        4       P                  W4       \        V 4      V n        V P                  P	                  V4       R # r%   )r   r   rï   r€   rf   rð   s   &&&€r   r   Ú_Proactor.__init__  s2   ø€ Ü‹G×Ñ˜WÔ+ô # 4›=ˆDŒLØ�L‰L×Ñ Ö(r   c                ó:   € V P                   P                  4        R # r%   )r€   r‰  r   s   &r   rf   Ú_Proactor.attach  s   € Ø�L‰L×ÑÖ!r   c                ó:   € V P                   P                  4        R # r%   )r€   r�  r   s   &r   re   Ú_Proactor.detach  s   € Ø�L‰L× Ñ Ö"r   )r€   )r-   r.   r/   r0   r1   r   rf   re   r2   r3   r4   r5   s   @@r   r|  r|    s   ù‡ € ÙUõ	)ò	"÷	#ò 	#r   r|  ÚAbstractEventLoopPolicyÚset_event_loop_policyc                  ó   € R # r%   r    r    r   r   r¢   r¢   %  ó   € É4r   Úget_event_loop_policyc                  ó   € R # r%   r    r    r   r   r¢   r¢   &  r�  r   c                   óæ   a € ] tR tRt o Rt/ tRtR tR tR t	]
RR l4       t]
RR l4       tR	 tR
 tR tR t]P$                  R8w  d$   ]! ]R4      '       d   ]
R 4       tRtV tR# RtV tR# RtV tR# )r   i)  aÎ  An asyncio event loop policy that runs the GLib main loop.

NOTE: Python 3.16 is removing the concept of the event loop policy.
FIXME: say what to do in the future

The policy allows creating a new EventLoop for threads other than the main
thread. For the main thread, you can use get_event_loop() to retrieve the
correct mainloop and run it.

Note that, unlike GLib, python does not support running the EventLoop
recursively. You should never iterate the GLib.MainContext from within
the python EventLoop as doing so prevents asyncio events from being
dispatched.

As such, do not use API such as GLib.MainLoop.run or Gtk.Dialog.run.
Instead use the proper asynchronous patterns to prevent entirely blocking
asyncio.
Nc                ó   € R V n         R # r%   )Ú!_GLibEventLoopPolicy__orig_policyr   s   &r   r   ÚGLibEventLoopPolicy.__init__A  s
   € Ø!ˆÖr   c                ó&   € V P                  RR7      # )aÙ  Get the event loop for the current context.

Returns an event loop object for the thread default GLib.MainContext
or in case of the main thread for the default GLib.MainContext.

An exception will be thrown if there is no GLib.MainContext for the
current thread. In that case, using new_event_loop() will create a new
main context and main loop which can subsequently attached to the thread
by calling set_event_loop().

Returns a new GLibEventLoop or raises an exception.
T©Úforce_implicit)Ú_get_event_loopr   s   &r   Úget_event_loopÚ"GLibEventLoopPolicy.get_event_loopD  s   € ð ×#Ñ#°4Ð#Ó8Ð8r   c                ó(   € V P                  VRR7      # )ú*Get the event loop for a specific context.Tr¥  )Ú_get_event_loop_for_contextrÇ   s   &&r   Úget_event_loop_for_contextÚ.GLibEventLoopPolicy.get_event_loop_for_contextS  s   € à×/Ñ/°ÀDÐ/ÓIÐIr   c                ót  € \         P                  P                  4       pVfK   \        P                  ! 4       \        P
                  ! 4       J d   \         P                  P                  4       pVf8   V'       g   R # \        R\        P                  ! 4       P                  : R24      hV P                  W!R7      # )Nz(There is no main context set for thread Ú.r¥  )
r   rS   rT   rU   rV   rW   rX   rÄ   Únamer¬  )rJ   r¦  rÈ   s   && r   r§  Ú#GLibEventLoopPolicy._get_event_loopW  s—   € ô ×Ñ×1Ñ1Ó3ˆàŠ;œ9×3Ò3Ó5¼×9NÒ9NÓ9PÓPÜ×"Ñ"×*Ñ*Ó,ˆCð Š;ß!ÙäØ:¼9×;SÒ;SÓ;U×;ZÑ;ZÑ:]Ð]^Ð_óð ð ×.Ñ.¨sÐ.ÓRÐRr   c                ó¶  €  V P                   \        V4      ,          pVP                  4       '       g   V#  V'       gQ   \        P
                  ! 4       ;_uu_ 4        \        \        4       \        4      '       g    RRR4       R#  RRR4       \        V4      V P                   \        V4      &   V P                  '       dY   V\        P                  P                  4       8X  d6   V P                  P                  V P                   \        V4      ,          4       V P                   \        V4      ,          #   \         d     ELi ; i  + '       g   i     LÉ; i)r«  N)rÅ   r¾   r¼   r  r“   Úcatch_warningsr?   Ú_get_event_loop_policyr   r   Ú_child_watcherr   rS   rX   Úattach_loop)rJ   rÈ   r¦  r   s   &&& r   r¬  Ú/GLibEventLoopPolicy._get_event_loop_for_contextk  sõ   € ð	Ø—:‘:œd 3›iÕ(ˆDØ—>‘>×#Ò#Ø�ð $÷
 Ü×(Ò(×*Õ*Ü!Ô"8Ó":Ô<O×PÒPØ÷ +Ñ*ØP÷ +ô !.¨cÓ 2ˆ�
‰
”4˜“9ÑØ××Ð #¬×)9Ñ)9×)AÑ)AÓ)CÔ"CØ×Ñ×*Ñ*¨3¯:©:´d¸3³iÕ+@ÔAØ�z‰zœ$˜s›)Õ$Ð$øô ô 	Úð	ú÷ +×*ús   ‚3D6 Á EÄ6EÅEÅE	c                óN  € Ve   \        V\        4      '       g   Q h\        P                  P	                  4       ;r#VfK   \
        P                  ! 4       \
        P                  ! 4       J d   \        P                  P                  4       pVf™   V P                  P                  \        V4      R4      pV'       dj   \        VP                  4      \        V4      8w  d   \        P                  ! R\        4       V'       d"   \        P                  P!                  V4       R# R# R# V'       d.   \#        R\
        P                  ! 4       P$                  : R24      h\        P                  P'                  VP                  4       WP                  \        VP                  4      &   R# )zÂSet the event loop for the current context (python thread) to loop.

This is only permitted if the thread has no thread default main context
with the main thread using the default main context.
Nz<GMainContext was changed unknowingly by asyncio integration!zThread zN already has a main context, get_event_loop() will create a new loop if needed)r?   r   r   rS   rT   rU   rV   rW   rX   rÅ   rq   r¾   rY   r“   r”   r•   rÍ   rÄ   r±  rÆ   )r   r   rÈ   Úctx_tdÚolds   &&   r   Úset_event_loopÚ"GLibEventLoopPolicy.set_event_loop‚  s3  € ð Š|œz¨$´×>Ò>Ð>Ð>ä×'Ñ'×:Ñ:Ó<Ð<ˆØŠ;œ9×3Ò3Ó5¼×9NÒ9NÓ9PÓPÜ×"Ñ"×*Ñ*Ó,ˆCàŠ<à—+‘+—/‘/¤$ s£)¨TÓ2ˆCßÜ˜Ÿ™Ó%¬¨c«Ô2Ü—M’MØVÜ&ô÷ Ü×$Ñ$×7Ñ7¸Ö?ñ ñ ÷ Ü"Øœi×6Ò6Ó8×=Ñ=Ñ@ð AHð Hóð ô
 ×Ñ×0Ñ0°·±Ô?Ø/3�K‰Kœ˜TŸ]™]Ó+Ó,r   c                ó>   € \        \        P                  ! 4       4      # )zICreate and return a new event loop that iterates a new
GLib.MainContext.
)r   r   rS   r   s   &r   Únew_event_loopÚ"GLibEventLoopPolicy.new_event_loop¥  s   € ô œT×-Ò-Ó/Ó0Ð0r   c                ó®   € \         P                  ! 4       ;_uu_ 4        \        4       V n        \	        V 4       R R R 4       V #   + '       g   i     T # ; ir%   )r“   r´  rµ  r¢  Ú_set_event_loop_policyr   s   &r   rÉ   ÚGLibEventLoopPolicy.__enter__«  s@   € Ü×$Ò$×&Õ&Ü!7Ó!9ˆDÔÜ" 4Ô(÷ 'ð ˆ÷	 'Ö&ð ˆús   žAÁA	c                ó  € V P                   P                  4        F  pVP                  4        K  	  \        P                  ! 4       ;_uu_ 4        \        V P                  4       R R R 4       R#   + '       g   i     R# ; irR   )rÅ   r4  ró   r“   r´  rÂ  r¢  )r   rÎ   rÏ   rÐ   r   s   &&&& r   rÑ   ÚGLibEventLoopPolicy.__exit__²  s[   € ð
 —K‘K×&Ñ&Ö(ˆDØ�J‰JŽLñ )ô ×$Ò$×&Õ&Ü" 4×#5Ñ#5Ô6÷ 'ñ ÷	 'Ö&ñ ús   ÁA/Á/B 	rû   Úget_child_watcherc                ó  € V P                   fp   \        P                  ! 4       V n         \        P                  ! 4       \        P
                  ! 4       J d*   V P                   P                  V P                  4       4       V P                   # r%   )r¶  r~   ÚThreadedChildWatcherrU   rV   rW   r·  r§  )rJ   s   &r   rÆ  Ú%GLibEventLoopPolicy.get_child_watcherÍ  sb   € à×!Ñ!Ò)Ü%,×%AÒ%AÓ%C�Ô"ä×+Ò+Ó-´×1FÒ1FÓ1HÓHØ×&Ñ&×2Ñ2°3×3FÑ3FÓ3HÔIà×%Ñ%Ð%r   )Ú__orig_policyr!   )r-   r.   r/   r0   r1   rÅ   r¶  r   r¨  r­  rN   r§  r¬  r¼  r¿  rÉ   rÑ   ry   Úplatformrs   rš  rÆ  r2   r3   rÛ   s   @r   r   r   )  s¡   ø‡ € ñð& €Fà€Nò"ò9òJð óSó ðSð& ó%ó ð%ò,!4òF1òòð. ‡|�|�wÔ¡7ØÐ!4÷$ò $ð 
ñ	&ó 
ö	&õ$Õr   )4Ú__all__r†   ry   r~   r   r  rU   r9  rß   r“   Úcollections.abcr   r   Ú r   Úgi.repositoryr   r   rZ   ÚrunrØ   rˆ   ÚSourcer
   ÚTaskr8   rP   rÔ   rÝ   rì   rË  r  r   r/  rï   ÚSelectorKeyrA  rC  ÚBaseSelectorr   ru  rs  r}  ÚIocpProactorr|  r´  ÚgetattrÚobjectrš  rÂ  rµ  r   r    r   r   Ú<module>rØ     sæ  ðð* Ð1Ð
2€ã Û 
Û Ý Û Û Û Û Û Ý #Ý %Ý å ð(Ù˜DŸM™M¨4¯=©=Ó9×=Ñ=€Oô
$�$—+‘+ô $ô<3ˆw�|‰|ô 3÷4Q&ñ Q&÷h-ñ -ô&'�$—+‘+ô '÷T'ñ 'ð4 ‡<�<�7Ôôp.ØÐ3°W×5NÑ5Nôp.òd ô�+ô ô:�y×,Ñ,ô ô&˜Wô &ô(A�N I×$:Ñ$:õ AôL	I ô 	Iô3ØØØ×!Ñ!Ø'õ	3ô2$7�+ô $7ôL#�N G×$8Ñ$8ô #ð( ×Ò×ÕÙ% gÐ/HÈ&ÓQÐ÷ ñ ! Ð*AÁ<ÓPÐ Ù  Ð*AÁ<ÓPÐ ôl&Ð1ö l&øðC ô (Ø—m‘m×'Ñ'ƒOð(ú÷t ×ús   Á'G	 ÆG-Ç	G*Ç)G*Ç-G=	