+
    �°³j   ã            	       ó€  € ^ RI t ^ RIt]P                  ! ^]P                  R7      t]P                  ! 4       t]P                  ]P                  ! ^
^*R7      P                  4       ]P                  ! ^]P                  R7      t]P                  ! ^]P                  R7      t]P                  ! . RO. RO4      t]P                   ! ^^]P                  R7      t] P"                  P%                  R]]]]]].4      R 4       tR tR tR tR	 tR
 tR tR tR tR tR tR tR tR t R t!R t"R t#R t$R t%R t&R t'R t(R# )é    N©Úcreate_using©ÚseedÚGc                 ó®  a€ \        V P                  4      p\        V P                  4      p\        V P                  4      o\        P
                  ! V ^^d^R7       V\        V P                  4      8X  g   Q hV\        V P                  4      8X  g   Q hS\        V P                  4      8w  g   Q h^\        V3R lV P                   4       4      8X  g   Q hR# )é   ©ÚnswapÚ	max_triesr   c              3   ó,   <"  € T F	  qS9  x € K  	  R # 5i©N© )Ú.0ÚeÚedgess   & €Úd/home/luca/screen-checking/.venv/lib/python3.14/site-packages/networkx/algorithms/tests/test_swap.pyÚ	<genexpr>Ú*test_directed_edge_swap.<locals>.<genexpr>   s   øé € Ð4©G q˜U–N«Gùs   ƒN)ÚsetÚ	in_degreeÚ
out_degreer   ÚnxÚdirected_edge_swapÚsum)r   r   r   r   s   &  @r   Útest_directed_edge_swapr      s¡   ø€ ä�A—K‘KÓ €IÜ�Q—\‘\Ó"€JÜ�—‘‹L€EÜ×Ò˜! 1°¸!Õ<Øœ˜AŸK™KÓ(Ô(Ð(Ð(Øœ˜QŸ\™\Ó*Ô*Ð*Ð*Ø”C˜Ÿ™“LÔ Ð Ð Ø”Ô4¨A¯GªGÓ4Ó4Ô4Ð4Ò4ó    c                  óÞ  € \         P                  ! \         P                  ! ^4      P                  4      p \	        V P                  4      p\         P
                  ! V ^^dR7       V\	        V P                  4      8X  g   Q h\         P
                  ! V ^^d^R7       0 Rm\	        V P                  4      8X  g   Q h\         P
                  ! V ^^d^R7       V\	        V P                  4      8X  g   Q hR# )é   ©r   r   r
   N>   ©r   é   ©r	   é   ©r"   r	   )r   ÚDiGraphÚ
path_graphr   r   r   )r   r   s     r   Ú*test_directed_edge_swap_undo_previous_swapr(      s¨   € Ü
�
Š
”2—=’= Ó#×)Ñ)Ó*€AÜ�—‘‹L€EÜ×Ò˜! 1°Õ4Ø”C˜Ÿ™“LÔ Ð Ð ä×Ò˜! 1°¸!Õ<Ú#¤s¨1¯7©7£|Ô3Ð3Ð3Ü×Ò˜! 1°¸!Õ<Ø”C˜Ÿ™“LÔ Ð Ò r   c            	      ó  € R p \         P                  ! . RO4      p\        P                  ! \         P                  V R7      ;_uu_ 4        \         P
                  ! V^^
^R7       RRR4       R#   + '       g   i     R# ; i)zUMaximum number of swap attempts \(11\) exceeded before desired swaps achieved \(\d\).©Úmatchr
   N))r   r   ©r   r	   )r	   r   ©r"   r$   )r$   r"   )r   r&   ÚpytestÚraisesÚNetworkXAlgorithmErrorr   )r   Úgraphs     r   Ú"test_edge_cases_directed_edge_swapr2   &   sW   € ð	3ð ô �JŠJÒ?Ó@€EÜ	�Š”r×0Ñ0¸×	:Ö	:Ü
×Ò˜e¨1¸ÀÕC÷ 
;×	:×	:Ò	:ús   Á	A.Á.A?	c                  óð   € \         P                  ! ^È^4      p \        R V P                  4        4       4      p\         P                  ! V ^(4      pV\        R V P                  4        4       4      8X  g   Q hR# )éÈ   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   ©r   ÚnÚds   &  r   r   Ú(test_double_edge_swap.<locals>.<genexpr>4   ó   é € Ð2¡>™4˜1•Q£>ùó   ‚c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   r9   6   ó   é € Ð:©>¡4 1�Q«>ùr;   N©r   Úbarabasi_albert_graphÚsortedÚdegreeÚdouble_edge_swap©r1   Údegreesr   s      r   Útest_double_edge_swaprE   2   s[   € Ü×$Ò$ S¨!Ó,€EÜÑ2 5§<¡<¤>Ó2Ó2€GÜ
×Ò˜E 2Ó&€AØ”fÑ:¨5¯<©<¬>Ó:Ó:Ô:Ð:Ò:r   c                  óô   € \         P                  ! ^È^4      p \        R V P                  4        4       4      p\         P                  ! V ^(^R7      pV\        R V P                  4        4       4      8X  g   Q hR# )r4   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   Ú-test_double_edge_swap_seed.<locals>.<genexpr>;   r:   r;   r   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   rH   =   r=   r;   Nr>   rC   s      r   Útest_double_edge_swap_seedrJ   9   s]   € Ü×$Ò$ S¨!Ó,€EÜÑ2 5§<¡<¤>Ó2Ó2€GÜ
×Ò˜E 2¨AÔ.€AØ”fÑ:¨5¯<©<¬>Ó:Ó:Ô:Ð:Ò:r   c                  ó0  € \         P                  ! ^È^4      p \        R V P                  4        4       4      p\         P                  ! V ^(^R7      p\         P
                  ! V 4      '       g   Q hV\        R V P                  4        4       4      8X  g   Q hR# )r4   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   Ú2test_connected_double_edge_swap.<locals>.<genexpr>B   r:   r;   r   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   rM   E   r=   r;   N©r   r?   r@   rA   Úconnected_double_edge_swapÚis_connectedrC   s      r   Útest_connected_double_edge_swaprR   @   sr   € Ü×$Ò$ S¨!Ó,€EÜÑ2 5§<¡<¤>Ó2Ó2€GÜ
×%Ò% e¨R°aÔ8€AÜ�?Š?˜5×!Ò!Ð!Ð!Ø”fÑ:¨5¯<©<¬>Ó:Ó:Ô:Ð:Ò:r   c                  ó2  € \         P                  ! ^È^4      p \        R V P                  4        4       4      p\         P                  ! V ^(^ ^R7      p\         P
                  ! V 4      '       g   Q hV\        R V P                  4        4       4      8X  g   Q hR# )r4   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   ÚGtest_connected_double_edge_swap_low_window_threshold.<locals>.<genexpr>J   r:   r;   ©Ú_window_thresholdr   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   rU   M   r=   r;   NrO   rC   s      r   Ú4test_connected_double_edge_swap_low_window_thresholdrY   H   st   € Ü×$Ò$ S¨!Ó,€EÜÑ2 5§<¡<¤>Ó2Ó2€GÜ
×%Ò% e¨RÀ1È1ÔM€AÜ�?Š?˜5×!Ò!Ð!Ð!Ø”fÑ:¨5¯<©<¬>Ó:Ó:Ô:Ð:Ò:r   c                  ó.  € \         P                  ! ^(4      p \        R V P                  4        4       4      p\         P                  ! V ^^R7      p\         P
                  ! V 4      '       g   Q hV\        R V P                  4        4       4      8X  g   Q hR# )é(   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   Ú7test_connected_double_edge_swap_star.<locals>.<genexpr>S   r:   r;   r   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   r]   V   r=   r;   N©r   Ú
star_graphr@   rA   rP   rQ   rC   s      r   Ú$test_connected_double_edge_swap_starra   P   sn   € ä�MŠM˜"Ó€EÜÑ2 5§<¡<¤>Ó2Ó2€GÜ
×%Ò% e¨Q°QÔ7€AÜ�?Š?˜5×!Ò!Ð!Ð!Ø”fÑ:¨5¯<©<¬>Ó:Ó:Ô:Ð:Ò:r   c                  ó0  € \         P                  ! ^(4      p \        R V P                  4        4       4      p\         P                  ! V ^^ ^R7      p\         P
                  ! V 4      '       g   Q hV\        R V P                  4        4       4      8X  g   Q hR# )r[   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   ÚLtest_connected_double_edge_swap_star_low_window_threshold.<locals>.<genexpr>\   r:   r;   rV   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   rd   _   r=   r;   Nr_   rC   s      r   Ú9test_connected_double_edge_swap_star_low_window_thresholdrf   Y   sp   € ä�MŠM˜"Ó€EÜÑ2 5§<¡<¤>Ó2Ó2€GÜ
×%Ò% e¨QÀ!È!ÔL€AÜ�?Š?˜5×!Ò!Ð!Ð!Ø”fÑ:¨5¯<©<¬>Ó:Ó:Ô:Ð:Ò:r   c            	      ó  € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^\        P                  R7      4      p RRR4       R#   + '       g   i     R# ; i)r$   r   N©r.   r/   r   ÚNetworkXErrorr   r'   r&   ©r   s    r   Útest_directed_edge_swap_smallrk   b   sE   € Ü	�Š”r×'Ñ'×	(Õ	(Ü×!Ò!¤"§-¢-°ÄÇ
Á
Ô"KÓLˆ÷ 
)×	(×	(Ò	(ús   ­;A2Á2B	c            	      ó  € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^\        P                  R7      ^^ R7      p RRR4       R#   + '       g   i     R# ; i)r$   r   r    Nrh   rj   s    r   Útest_directed_edge_swap_triesrm   g   sL   € Ü	�Š”r×'Ñ'×	(Õ	(Ü×!Ò!Ü�MŠM˜!¬"¯*©*Ô5¸QÈ!ô
ˆ÷ 
)×	(×	(Ò	(ús   ­>A5Á5B	c                  óô   € \         P                  ! RR.4      p \        P                  ! \         P                  4      ;_uu_ 4        \         P
                  ! V 4      pRRR4       R#   + '       g   i     R# ; i)r   Nr,   r-   )r   ÚGraphr.   r/   ÚNetworkXNotImplementedr   ©r1   r   s     r   Ú"test_directed_exception_undirectedrr   n   sI   € Ü�HŠH�f˜fÐ%Ó&€EÜ	�Š”r×0Ñ0×	1Õ	1Ü×!Ò! %Ó(ˆ÷ 
2×	1×	1Ò	1ús   ÁA&Á&A7	c            	      ó  € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^\        P                  ! 4       4      ^^R7      p RRR4       R#   + '       g   i     R# ; i©r   r    N)r.   r/   r   r0   r   Úcomplete_graphr&   rj   s    r   Útest_directed_edge_max_triesrv   t   sP   € Ü	�Š”r×0Ñ0×	1Õ	1Ü×!Ò!Ü×Ò˜a¤§¢£Ó.°aÀ1ô
ˆ÷ 
2×	1×	1Ò	1ús   ­AA9Á9B
	c                  óì   € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^4      4      p RRR4       R#   + '       g   i     R# ; i©r$   N©r.   r/   r   ri   rB   r'   rj   s    r   Útest_double_edge_swap_smallrz   {   s?   € Ü	�Š”r×'Ñ'×	(Õ	(Ü×Ò¤§¢¨aÓ 0Ó1ˆ÷ 
)×	(×	(Ò	(úó   ­+A"Á"A3	c                  óò   € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^
4      ^^ R7      p RRR4       R#   + '       g   i     R# ; i)é
   r    Nry   rj   s    r   Útest_double_edge_swap_triesr~   €   sC   € Ü	�Š”r×'Ñ'×	(Õ	(Ü×Ò¤§¢¨bÓ 1¸ÀaÔHˆ÷ 
)×	(×	(Ò	(úó   ­.A%Á%A6	c                  óø   € \         P                  ! RR.4      p \        P                  ! \         P                  RR7      ;_uu_ 4        \         P
                  ! V 4      pRRR4       R#   + '       g   i     R# ; i)r   z not defined for directed graphs.r*   Nr,   r-   )r   r&   r.   r/   ri   rB   rq   s     r   Útest_double_edge_directedr�   …   sM   € Ü�JŠJ˜ Ð'Ó(€EÜ	�Š”r×'Ñ'Ð/Q×	RÖ	RÜ×Ò Ó&ˆ÷ 
S×	R×	RÒ	Rús   ÁA(Á(A9	c                  óò   € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^4      ^^R7      p RRR4       R#   + '       g   i     R# ; irt   )r.   r/   r   r0   rB   ru   rj   s    r   Útest_double_edge_max_triesrƒ   ‹   sE   € Ü	�Š”r×0Ñ0×	1Õ	1Ü×Ò¤× 1Ò 1°!Ó 4¸AÈÔKˆ÷ 
2×	1×	1Ò	1úr   c                  óì   € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! \        P
                  ! ^4      4      p RRR4       R#   + '       g   i     R# ; irx   )r.   r/   r   ri   rP   r'   rj   s    r   Ú%test_connected_double_edge_swap_smallr…   �   s?   € Ü	�Š”r×'Ñ'×	(Õ	(Ü×)Ò)¬"¯-ª-¸Ó*:Ó;ˆ÷ 
)×	(×	(Ò	(úr{   c                  ó"  € \         P                  ! \        P                  4      ;_uu_ 4        \        P                  ! ^4      p \        P
                  ! V . RO4       \        P                  ! V 4      p RRR4       R#   + '       g   i     R# ; i)r$   N)r}   é   é   )r.   r/   r   ri   r'   Úadd_pathrP   rj   s    r   Ú-test_connected_double_edge_swap_not_connectedrŠ   •   sR   € Ü	�Š”r×'Ñ'×	(Õ	(Ü�MŠM˜!ÓˆÜ
�Š�A’|Ô$Ü×)Ò)¨!Ó,ˆ÷ 
)×	(×	(Ò	(ús   ­AA=Á=B	c                  óð   € \         P                  ! ^4      p \        R V P                  4        4       4      p\         P                  ! V ^^d4      p V\        R V P                  4        4       4      8X  g   Q hR# )r   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   Ú%test_degree_seq_c4.<locals>.<genexpr>ž   s   é € Ð.¡:™4˜1•Q£:ùr;   c              3   ó*   "  € T F	  w  rVx € K  	  R # 5ir   r   r6   s   &  r   r   r�       s   é € Ð6©:¡4 1�Q«:ùr;   N)r   Úcycle_graphr@   rA   rB   )r   rD   s     r   Útest_degree_seq_c4r�   œ   sY   € Ü
�Š�qÓ€AÜÑ. 1§8¡8¤:Ó.Ó.€GÜ
×Ò˜A˜q #Ó&€AØ”fÑ6¨1¯8©8¬:Ó6Ó6Ô6Ð6Ò6r   c                  ó  € \         P                  ! 4       p V P                  . RO4       \        P                  ! \         P
                  RR7      ;_uu_ 4        \         P                  ! V 4       RRR4       R#   + '       g   i     R# ; i)r   z.*fewer than four nodes.r*   N)r   r	   r"   )r   r&   Úadd_nodes_fromr.   r/   ri   r   rj   s    r   Útest_fewer_than_4_nodesr“   £   sQ   € Ü
�
Š
‹€AØ×Ñ’YÔÜ	�Š”r×'Ñ'Ð/I×	JÖ	JÜ
×Ò˜aÔ ÷ 
K×	J×	JÒ	Jús   ÁA8Á8B		c                  ó.  € \         P                  ! RR.4      p V P                  ^^.4       \        P                  ! \         P
                  RR7      ;_uu_ 4        \         P                  ! V 4       RRR4       \         P                  ! 4       p V P                  . RO4       \        P                  ! \         P
                  RR7      ;_uu_ 4        \         P                  ! V 4       RRR4       R#   + '       g   i     L‡; i  + '       g   i     R# ; i)r   z.*fewer than 3 edgesr*   Nz.*fewer than 2 edgesr,   )r	   r"   )r   r	   r"   r$   )	r   r&   r’   r.   r/   ri   r   ro   rB   rj   s    r   Útest_less_than_3_edgesr•   ª   s´   € Ü
�
Š
�F˜FÐ#Ó$€AØ×Ñ�a˜�VÔÜ	�Š”r×'Ñ'Ð/E×	FÖ	FÜ
×Ò˜aÔ ÷ 
Gô 	�Š‹
€AØ×Ñ’\Ô"Ü	�Š”r×'Ñ'Ð/E×	FÖ	FÜ
×Ò˜AÔ÷ 
GÑ	F÷ 
G×	Fú÷
 
G×	FÐ	Fús   ÁC0ÃDÃ0D 	ÄD	)r	   r"   r	   r"   r"   r"   )r$   r	   r   r	   r"   r$   ))r.   Únetworkxr   r�   r&   ÚcycleÚtreeÚadd_edges_fromÚrandom_labeled_treer   r'   ÚpathÚbinomial_treeÚbinomialÚdirected_havel_hakimi_graphÚHHÚbalanced_treeÚmarkÚparametrizer   r(   r2   rE   rJ   rR   rY   ra   rf   rk   rm   rr   rv   rz   r~   r�   rƒ   r…   rŠ   r�   r“   r•   r   r   r   Ú<module>r£      sA  ðÛ ã à
�Š�q r§z¡zÔ2€Ø	‡z‚zƒ|€Ø × Ñ �B×*Ò*¨2°BÔ7×=Ñ=Ô >Ø	‡}‚}�Q R§Z¡ZÔ0€Ø×Ò˜A¨B¯J©JÔ7€Ø×#Ò#Ò$6Ò8JÓK€Ø× Ò   A°B·J±JÔ?€ð ‡�×Ñ˜˜t X¨r°5¸$ÀÐNÓOñ5ó Pð5ò	!ò	Dò;ò;ò;ò;ò;ò;òMò

ò)ò
ò2ò
Iò
'òLò
<ò
-ò7ò!ô	r   