Ë
    íÍ:jôW  ã                   óÊ  — d dl Z d dlmZmZ d dlmZmZmZmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlZd dlZdZd„ Zd	„ Zd
„ Zd„ Zej:                  j=                  d«      d„ «       Zd„ Z ej:                  jC                  dg d¢«      d„ «       Z"d„ Z#d„ Z$d„ Z%d„ Z&ej:                  jC                  dddg«      ej:                  jC                  dddg«      ej:                  jC                  ddejN                  dfdejP                  dfd ejN                  d!fd ejP                  d"fg«      d#„ «       «       «       Z)d$„ Z*d%„ Z+ej:                  jC                  d&d'd(d ejX                  d)e¬*«      g«      d+„ «       Z-ej:                  jC                  d,g d-¢«      d.„ «       Z.d/„ Z/d0„ Z0d1„ Z1ej:                  jC                  d2dd g«      ej:                  jC                  d3ejN                  ejP                  g«      ej:                  jC                  d4d5d6g«      ej:                  jC                  d7g d8¢«      ej:                  jC                  d9d:d;g«      d<„ «       «       «       «       «       Z2y)=é    N)ÚpathÚ
transforms)ÚFigureCanvasBaseÚKeyEventÚLocationEventÚMouseButtonÚ
MouseEventÚNavigationToolbar2ÚRendererBase)ÚRubberbandBase©ÚFigure)Úneeds_pgf_xelatexzƒTreat the new Tool classes introduced in v[0-9]*.[0-9]* as experimental for now; the API and rcParam may change in future versions.c            
      óö  — t        j                  «       } t        dd«      D �cg c]!  }t        j                  j                  |«      ‘Œ# }}t        dd«      D �cg c]/  }| j                  |«      j                  «       j                  «       ‘Œ1 }}t        j                  d«      j                  d«      }ddg}ddg}d	„ } || |||||«        || |d
d ||||«        || g ||||«        || ||d
d |||«        || |g |||«       t        d
|j                  d
   «      D ]  } || |||d
|…d d …f   ||«       Œ  || |||g |«        || ||||g «        || |||g g «        || ||||d
d |«       y c c}w c c}w )Né   é   é   é   é   )é
   é   ÚredÚgreenc                 óð  — t        «       }t        |j                  | ||«      «      }|j                  «       }|j	                  |t        t        |«      «      |t        j                  | «      ||g g dgg dg ¬«      D �	�
���cg c]
  \  }	}
}}}|‘Œ }}}}
}	}|j                  |||||«      }|rBt        j                  |t        |«      ¬«      }t        |«      j                  |dz
  |g«      sJ ‚y y c c}}}}
}	w )NFÚscreen)Úhatchcolors)Ú	minlengthr   )r   ÚlistÚ_iter_collection_raw_pathsÚnew_gcÚ_iter_collectionÚrangeÚlenr   ÚAffineDeltaTransformÚ_iter_collection_uses_per_pathÚnpÚbincountÚsetÚissubset)Úmaster_transformÚpathsÚall_transformsÚoffsetsÚ
facecolorsÚ
edgecolorsÚrbÚ	raw_pathsÚgcÚxoÚyoÚpath_idÚgc0ÚrgbFaceÚidsÚusesÚseens                    úx/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/matplotlib/tests/test_backend_bases.pyÚcheckz!test_uses_per_path.<locals>.check   sþ   € ä‹^ˆÜ˜×6Ñ6Ø˜e ^ó5ó 6ˆ	à�Y‰Y‹[ˆà×"Ñ"Ø”uœS ›^Ó,¨gÜ×2Ñ2Ð3CÓDØ˜z¨2¨r°E°7Ø�x¨Rð	 #ó 1÷2ò 2Ñ8˜2˜r 7¨C°Šwð 2ˆô 2ð ×0Ñ0Ø�> 7¨J¸
óDˆáÜ—;‘;˜s¬c°)«nÔ=ˆDÜ�t“9×%Ñ% t¨a¡x°Ð&6Ô7Ð7Ñ7ð ùö2s   Â C/r   )r   ÚAffine2Dr"   r   ÚPathÚunit_regular_polygonÚrotateÚ
get_matrixÚcopyr&   ÚarangeÚreshapeÚshape)	ÚidÚir+   Útforms_matricesr-   r.   r/   r<   Úns	            r;   Útest_uses_per_pathrJ      sŸ  € Ü	×	Ñ	Ó	€BÜ8=¸aÀ»ÖD°1ŒT�Y‰Y×+Ñ+¨AÕ.ÐD€EÐDÜAFÀqÈ!ÃÖM¸A�r—y‘y “|×.Ñ.Ó0×5Ñ5Õ7ÐM€OÐMÜ�i‰i˜‹m×#Ñ# GÓ,€GØ˜Ð!€JØ˜Ð!€Jò8ñ$ 
ˆ"ˆe�_ g¨z¸:ÔFÙ	ˆ"ˆe�A�aˆj˜/¨7°JÀ
ÔKÙ	ˆ"ˆb�/ 7¨J¸
ÔCÙ	ˆ"ˆe�_ Q qÐ)¨7°JÀ
ÔKÙ	ˆ"ˆe�R˜ *¨jÔ9Ü�1�g—m‘m AÑ&Ó'ò &ˆÙˆb�%˜¨'°!°A°#²q°&©/Ø˜*õ	&ð&ñ 
ˆ"ˆe�_ g¨r°:Ô>Ù	ˆ"ˆe�_ g¨z¸2Ô>Ù	ˆ"ˆe�_ g¨r°2Ô6Ù	ˆ"ˆe�_ g¨z¸!¸A¨À
ÕKùòG EùÚMs   £&E1Á4E6c                  óL   — t        t        «       j                  t        «      sJ ‚y ©N)Ú
isinstancer   Úfigurer   © ó    r;   Útest_canvas_ctorrQ   >   s   € ÜÔ&Ó(×/Ñ/´Ô8Ð8Ñ8rP   c                  óò   — t        j                  «       } | j                  j                  «       dk(  sJ ‚| j                  j                  j                  d«       | j                  j                  «       dk(  sJ ‚y )NzFigure_1.pngz0:1/2<3z0_1_2_3.png)ÚpltrN   ÚcanvasÚget_default_filenameÚmanagerÚset_window_title©Úfigs    r;   Útest_get_default_filenamerZ   B   s[   € Ü
�*‰*‹,€CØ�:‰:×*Ñ*Ó,°Ò>Ð>Ð>Ø‡J�J×Ñ×'Ñ'¨	Ô2Ø�:‰:×*Ñ*Ó,°Ò=Ð=Ñ=rP   c                  ó®   — t        j                  «       } t        | «      }t        j                  | «       t        j                  | j
                  «      rJ ‚y rL   )rS   rN   r   ÚcloseÚfignum_existsÚnumber)rY   rT   s     r;   Útest_canvas_changer_   I   s=   € Ü
�*‰*‹,€Cä˜cÓ"€Fä‡I�Iˆc„NÜ× Ñ  §¡Ô,Ð,Ð,Ð,rP   Úpdfc                 ó(  — t        j                  «        | j                  dd«       t        j                  t
        «      5 }t        j                  «        t        |«      dk(  sJ ‚dt        |d   j                  «      v sJ ‚	 d d d «       t        j                  t
        «      5 }t        j                  «       j                  «        t        |«      dk(  sJ ‚dt        |d   j                  «      v sJ ‚	 d d d «       y # 1 sw Y   Œ{xY w# 1 sw Y   y xY w)NÚDISPLAYz:999r   z<FigureCanvasPdf is non-interactive, and thus cannot be shownr   )rS   ÚsubplotsÚsetenvÚpytestÚwarnsÚUserWarningÚshowr#   ÚstrÚmessageÚgcf)ÚmonkeypatchÚrecs     r;   Útest_non_gui_warningrn   R   så   € ä‡L�L„Nà×Ñ�y &Ô)ä	�‰”kÓ	"ð ( cÜ�‰Œ
Ü�3‹x˜1Š}Ðˆ}ØNÜ�s˜1‘v—~‘~Ó&ñ'ð 	(ñ '÷(ô 
�‰”kÓ	"ð ( cÜ�‰‹	�‰ÔÜ�3‹x˜1Š}Ðˆ}ØNÜ�s˜1‘v—~‘~Ó&ñ'ð 	(ñ '÷(ð (÷(ð (ú÷(ð (ús   Á AC<Â#ADÃ<DÄDc                  óî   — t        j                  «       \  } }| j                  j                  |«       | j                  j                  |k(  sJ ‚| j                  «        | j                  j                  �J ‚y rL   )rS   rc   rT   Ú
grab_mouseÚmouse_grabberÚclear©rY   Úaxs     r;   Útest_grab_clearru   e   sZ   € Ü�l‰l‹n�G€Cˆà‡J�J×Ñ˜"ÔØ�:‰:×#Ñ# rÒ)Ð)Ð)à‡I�I„KØ�:‰:×#Ñ#Ð+Ð+Ñ+rP   zx, y))é*   é   )Nrv   )NN)éÈ   gq=
×£ Y@)g     ¸i@g       @c                 óL  — t        j                  «       \  }}t        |«      }t        d|| |«      }| €|j                  �8J ‚|j                  t        | «      k(  sJ ‚t        |j                  t
        «      sJ ‚|€|j                  �8J ‚|j                  t        |«      k(  sJ ‚t        |j                  t
        «      sJ ‚| �f|�c|j                  | |«      d|j                  | «      › d|j                  |«      › d�k(  sJ ‚d„ x|_        |_        |j                  | |«      dk(  sJ ‚y y y )NÚ
test_eventz
(x, y) = (z, ú)c                  ó   — y)NÚfoorO   )Úxs    r;   ú<lambda>z.test_location_event_position.<locals>.<lambda>ƒ   s   � rP   z(x, y) = (foo, foo))rS   rc   r   r   r~   ÚintrM   ÚyÚformat_coordÚformat_xdataÚformat_ydataÚ	fmt_xdataÚ	fmt_ydata)r~   r�   rY   rt   rT   Úevents         r;   Útest_location_event_positionrˆ   o   s%  € ô �l‰l‹n�G€CˆÜ˜cÓ"€FÜ˜,¨°°1Ó5€EØ€yØ�w‰wˆÐˆà�w‰wœ#˜a›&Ò Ð Ð Ü˜%Ÿ'™'¤3Ô'Ð'Ð'Ø€yØ�w‰wˆÐˆà�w‰wœ#˜a›&Ò Ð Ð Ü˜%Ÿ'™'¤3Ô'Ð'Ð'Ø€}˜˜Ø—‘  1Ó%Ø §¡°Ó 2Ð3°2°b·o±oÀaÓ6HÐ5IÈÐKòLð 	Mð Lá&5Ð5ˆŒ�r”|Ø�‰˜q !Ó$Ð(=Ò=Ð=Ñ=ð	 '€}rP   c                  ób  — t        j                  «       \  } }|j                  dd¬«       |j                  dd«      dk(  sJ ‚|j	                  «       j                  d¬«       |j                  dd«      dk(  sJ ‚|j                  «       j                  d	¬
«       |j                  dd«      dk(  sJ ‚y )N©r   r   )r   r   )ÚxlimÚylimg      @z(x, y) = (5.00, 5.00))r   é(   )rŒ   z$(x, y) = (5.00, 5.00) | (5.00, 10.0))r   r   )r‹   z3(x, y) = (5.00, 5.00) | (5.00, 10.0) | (2.50, 5.00))rS   rc   r(   r‚   ÚtwinxÚtwinyrs   s     r;   Ú!test_location_event_position_twinr�   ‡   s    € Ü�l‰l‹n�G€CˆØ‡F�F�˜g€FÔ&Ø�?‰?˜2˜rÓ"Ð&=Ò=Ð=Ð=Ø‡H�HƒJ‡N�N˜€NÔ Ø�?‰?˜2˜rÓ"Ð&LÒLÐLÐLØ‡H�HƒJ‡N�N˜€NÔØ�O‰O˜B Ó#ØDòEð Fñ ErP   c                  ó&  ‡— t        j                  «       } | j                  dddddd¬«       | j                  j	                  «        g Šˆfd„}| j                  j                  d|«       t        d| j                  d	«      j                  «        t        d
| j                  g| j                  j                  d«      ¢t        j                  ‘­Ž j                  «        t        d| j                  d	«      j                  «        t        ‰«      dk(  sJ ‚y )Nç      à?ÚhelloÚcenterT)ÚhaÚvaÚpickerc                 ó^   •— | j                   j                  dk(  sJ ‚‰j                  | «       y )NÚa)Ú
mouseeventÚkeyÚappend)r‡   Úpickss    €r;   Úhandle_pickztest_pick.<locals>.handle_pick˜   s)   ø€ Ø×Ñ×#Ñ# sÒ*Ð*Ð*Ø�‰�UÕrP   Ú
pick_eventÚkey_press_eventr™   Úbutton_press_event©r’   r’   Úkey_release_eventr   )rS   rN   ÚtextrT   ÚdrawÚmpl_connectr   Ú_processr	   ÚtransFigureÚ	transformr   ÚLEFTr#   )rY   rž   r�   s     @r;   Ú	test_pickr«   ’   sÕ   ø€ Ü
�*‰*‹,€CØ‡H�HˆR��W ¨h¸t€HÔDØ‡J�J‡O�OÔà€Eôð ‡J�J×Ñ˜<¨Ô5äÐ §
¡
¨CÓ0×9Ñ9Ô;ÜÐ# S§Z¡Zð !Ø—‘×)Ñ)¨(Ó3ð!ä×Ñò!ç!)¡¤ÜÐ  #§*¡*¨cÓ2×;Ñ;Ô=Üˆu‹:˜Š?Ð‰?rP   c                  ó†  — t        j                  «       \  } }|j                  d¬«       |j                  «       �J ‚t	        | j
                  «      }|j                  «        |j                  «       dk(  sJ ‚|j                  «       }|j                  «       }d}d}|j                  j                  |«      j                  t        «      }|j                  j                  |«      j                  t        «      }t        d| j
                  g|¢t        j                  ‘­Ž }	| j
                  j                   j#                  |	j$                  |	«       t        d| j
                  g|¢t        j                  ‘­Ž }
| j
                  j                   j#                  |
j$                  |
«       |j                  «       |	j&                  |
j&                  fk(  sJ ‚|j                  «       |	j(                  |
j(                  fk(  sJ ‚t        d| j
                  g|¢t        j*                  ‘­Ž }	| j
                  j                   j#                  |	j$                  |	«       t        d| j
                  g|¢t        j*                  ‘­Ž }
| j
                  j                   j#                  |
j$                  |
«       |j                  «       t-        j.                  |dd	¬
«      k(  sJ ‚|j                  «       t-        j.                  |dd	¬
«      k(  sJ ‚|j                  «        |j                  «       �J ‚|j1                  «       s|j3                  «       rJ ‚y )NÚlogit)ÚxscaleÚZOOM)g�íµ ÷Æ°>çš™™™™™¹?)gwJëÿï?çš™™™™™é?r¡   Úbutton_release_eventr   g»½×Ùß|Û=)ÚrelÚabs)rS   rc   r(   Úget_navigate_moder
   rT   ÚzoomÚget_xlimÚget_ylimÚ	transDatar©   Úastyper€   r	   r   rª   Ú	callbacksÚprocessÚnameÚxdataÚydataÚRIGHTre   ÚapproxÚget_autoscalex_onÚget_autoscaley_on)rY   rt   ÚtbÚxlim0Úylim0Úd0Úd1Ús0Ús1Ústart_eventÚ
stop_events              r;   Útest_interactive_zoomrÍ   ¥   s¾  € Ü�l‰l‹n�G€CˆØ‡F�F�'€FÔØ×ÑÓ!Ð)Ð)Ð)ä	˜CŸJ™JÓ	'€BØ‡G�G„IØ×ÑÓ! VÒ+Ð+Ð+à�K‰K‹M€EØ�K‰K‹M€Eð 
€BØ	€Bð 
�‰×	Ñ	 Ó	#×	*Ñ	*¬3Ó	/€BØ	�‰×	Ñ	 Ó	#×	*Ñ	*¬3Ó	/€Bô Ø˜cŸj™jðAØ+-ðAÜ/:×/?Ñ/?òA€Kà‡J�J×Ñ× Ñ  ×!1Ñ!1°;Ô?ÜØ §
¡
ðCØ-/ðCÜ1<×1AÑ1AòC€Jà‡J�J×Ñ× Ñ  §¡°*Ô=Ø�;‰;‹=˜[×.Ñ.°
×0@Ñ0@ÐAÒAÐAÐAØ�;‰;‹=˜[×.Ñ.°
×0@Ñ0@ÐAÒAÐAÐAô Ø˜cŸj™jðBØ+-ðBÜ/:×/@Ñ/@òB€Kà‡J�J×Ñ× Ñ  ×!1Ñ!1°;Ô?ÜØ §
¡
ðDØ-/ðDÜ1<×1BÑ1BòD€Jà‡J�J×Ñ× Ñ  §¡°*Ô=à�;‰;‹=œFŸM™M¨%°Q¸EÔBÒBÐBÐBØ�;‰;‹=œFŸM™M¨%°Q¸EÔBÒBÐBÐBà‡G�G„IØ×ÑÓ!Ð)Ð)Ð)à×#Ñ#Ô%¨b×.BÑ.BÔ.DÐDÐDÐ.DrP   c                  óF  — t        j                  «       \  } }|j                  ddgddg«       | j                  j	                  |«       t        | j                  «      }|j                  «        |j                  «       �J ‚|j                  «        |j                  «       �J ‚y )Nr   r   )	rS   rc   ÚplotrT   Ú
widgetlockr
   r¶   rµ   Úpan)rY   rt   rÄ   s      r;   Útest_widgetlock_zoompanrÒ   Õ   sƒ   € Ü�l‰l‹n�G€CˆØ‡G�GˆQ�ˆF�Q˜�FÔØ‡J�J×Ñ˜"ÔÜ	˜CŸJ™JÓ	'€BØ‡G�G„IØ×ÑÓ!Ð)Ð)Ð)Ø‡F�F„HØ×ÑÓ!Ð)Ð)Ñ)rP   Ú	plot_funcÚimshowÚcontourfÚorientationÚverticalÚ
horizontalztool,button,expectedr¶   ©é   é   )iìÿÿÿé   rÑ   )éþÿÿÿé   )g…ëQ¸…÷?g…ëQ¸@c                 óº  — t        j                  «       \  }}t        j                  d«      j	                  d«      }d\  }}	 t        || «      |||	¬«      }
|j                  |
||¬«      }| dk(  r|j                  j                  «       rJ ‚y |j                  j                  «       sJ ‚d\  }}|df}|df}|d	k(  r|d d d
…   }|d d d
…   }|j                  j                  j                  |«      j                  t        «      }|j                  j                  j                  |«      j                  t        «      }t        d|j                  g|¢|‘­Ž }t        d|j                  g|¢|‘­d|hiŽ}t        d|j                  g|¢|‘­Ž }t        |j                  «      }|dk(  rD|j!                  «        |j#                  |«       |j%                  |«       |j'                  |«       nC|j)                  «        |j+                  |«       |j-                  |«       |j/                  |«       |j0                  |j2                  ft5        j6                  |d¬«      k(  sJ ‚y )Né   )rÚ   r   rŠ   )ÚvminÚvmax)rt   rÖ   rÕ   rÙ   r’   r×   éÿÿÿÿr¡   Úmotion_notify_eventÚbuttonsr²   r¶   ç333333Ã?©r´   )rS   rc   r&   rC   rD   ÚgetattrÚcolorbarrt   Úget_navigater¹   r©   rº   r€   r	   rT   r
   r¶   Ú
press_zoomÚ	drag_zoomÚrelease_zoomrÑ   Ú	press_panÚdrag_panÚrelease_panrá   râ   re   rÁ   )rÓ   rÖ   ÚtoolÚbuttonÚexpectedrY   rt   ÚdataÚvmin0Úvmax0ÚcollÚcbrá   râ   rÇ   rÈ   rÉ   rÊ   rË   Ú
drag_eventrÌ   rÄ   s                         r;   Útest_interactive_colorbarrú   à   s1  € ô �l‰l‹n�G€CˆÜ�9‰9�R‹=× Ñ  Ó(€DØ�L€Eˆ5Ø!Œ7�2�yÓ! $¨U¸Ô?€Dà	�‰�d˜r¨{ˆÓ	;€BØ�JÒà—5‘5×%Ñ%Ô'Ð'Ð'Øà�5‰5×ÑÔÐÐð �J€Dˆ$ð
 �ˆ€BØ
�ˆ€Bà�jÒ Ø‘�"�‰XˆØ‘�"�‰Xˆð 
�‰�‰×	"Ñ	" 2Ó	&×	-Ñ	-¬cÓ	2€BØ	�‰�‰×	"Ñ	" 2Ó	&×	-Ñ	-¬cÓ	2€Bô Ø˜cŸj™jð7Ø+-ð7Ø/5ò7€KäØ˜sŸz™zðJØ,.ðJØ06òJØAGÀñJ€JäØ §
¡
ð9Ø-/ð9Ø17ò9€Jô 
˜CŸJ™JÓ	'€BØˆv‚~Ø
�‰Œ	Ø
�‰�kÔ"Ø
�‰�ZÔ Ø
�‰˜
Õ#à
�‰ŒØ
�‰�[Ô!Ø
�‰�JÔØ
�‰�zÔ"ð �G‰G�R—W‘WÐ¤§¡¨x¸TÔ!BÒBÐBÑBrP   c                  ó  — t        j                  t        t        ¬«      5  dt        j
                  d<   d d d «       t	        j                  «       } | j                  «       }| j                  «       �J ‚|j                  j                  j                  j                  d«       | j                  «       dk(  sJ ‚|j                  j                  j                  j                  d«       | j                  «       dk(  sJ ‚y # 1 sw Y   ŒÈxY w)N©ÚmatchÚtoolmanagerÚtoolbarr¶   r¯   rÑ   ÚPAN)re   rf   rg   Ú_EXPECTED_WARNING_TOOLMANAGERrS   ÚrcParamsÚgcaÚ
get_figurerµ   rT   rV   rþ   Útrigger_tool)rt   rY   s     r;   Útest_toolbar_zoompanr    sÉ   € Ü	�‰”kÔ)FÔ	Gñ 0Ø"/Œ�‰�YÑ÷0ä	�‰‹€BØ
�-‰-‹/€CØ×ÑÓ!Ð)Ð)Ð)Ø‡J�J×Ñ×"Ñ"×/Ñ/°Ô7Ø×ÑÓ! VÒ+Ð+Ð+Ø‡J�J×Ñ×"Ñ"×/Ñ/°Ô6Ø×ÑÓ! UÒ*Ð*Ñ*÷0ð 0ús    C;Ã;Dc                  óV  — t        j                  «       \  } }|j                  t        d«      t        d«      «       t	        | j
                  «      }|j                  «        t        d| j
                  ddd«      j                  «        t        d| j
                  ddd«      j                  «        |j                  «       |j                  «       cxk(  rdk(  sJ ‚ J ‚t        d| j
                  ddd«      j                  «        t        d| j
                  ddd«      j                  «        |j                  «       |j                  «       cxk(  rdk(  sJ ‚ J ‚|j                  j                  dd	g«      \  }}t        d
| j
                  g|¢t        j                  ‘­Ž j                  «        t        d| j
                  g|¢t        j                  ‘­Ž j                  «        t        d| j
                  d«      j                  «        |j                  «       |j                  «       cxk(  rdk(  sJ ‚ J ‚t        d| j
                  ddd«      j                  «        t        d| j
                  ddd«      j                  «        |j                  «       |j                  «       cxk(  rdk(  sJ ‚ J ‚y )Né   r    Úkéd   Úl)r   r   rŠ   )r   r   )r   r   r¡   r²   Úh)rS   rc   rÏ   r"   r
   rT   r¶   r   r§   r·   r¸   r¹   r©   r	   r   rª   )rY   rt   rÄ   ÚstartÚstops        r;   Ú$test_toolbar_home_restores_autoscaler  +  s  € Ü�l‰l‹n�G€CˆØ‡G�GŒE�"‹I”u˜R“yÔ!ä	˜CŸJ™JÓ	'€BØ‡G�G„Iô Ð §
¡
¨C°°cÓ:×CÑCÔEÜÐ §
¡
¨C°°cÓ:×CÑCÔEØ�;‰;‹=˜BŸK™K›MÔ4¨WÒ4Ð4Ñ4Ð4Ð4äÐ §
¡
¨C°°cÓ:×CÑCÔEÜÐ §
¡
¨C°°cÓ:×CÑCÔEØ�;‰;‹=˜BŸK™K›MÔ4¨WÒ4Ð4Ñ4Ð4Ð4ð —,‘,×(Ñ(¨&°&Ð)9Ó:�K€Eˆ4ÜÐ# S§Z¡ZÐJ°%ÐJ¼×9IÑ9IÒJ×SÑSÔUÜÐ% s§z¡zÐK°DÐK¼+×:JÑ:JÒK×TÑTÔVäÐ §
¡
¨CÓ0×9Ñ9Ô;à�;‰;‹=˜BŸK™K›MÔ4¨WÒ4Ð4Ñ4Ð4Ð4äÐ §
¡
¨C°°cÓ:×CÑCÔEÜÐ §
¡
¨C°°cÓ:×CÑCÔEØ�;‰;‹=˜BŸK™K›MÔ4¨WÒ4Ð4Ñ4Ð4Ñ4rP   ÚbackendÚsvgÚpsÚpgf)Úmarksc                 ó@  — ddl m} ddlm} t	        j
                  d| › �«      }|j                  } |d¬«      } ||«       |j                  dd«      } |d¬«      } ||«       |j                  dd«      }|j                  «       D �	cg c]  }	|	j                  «       ‘Œ }
}	|j                  j                  «        |j                  j                  «        |j                  «       D �	cg c]  }	|	j                  «       ‘Œ }}	|j                  «       D �	cg c]  }	|	j                  «       ‘Œ }}	t        |
|«      D ]  \  }}t        j                  ||d¬	«      sŒJ ‚ t        ||«      D ]'  \  }}t        j                  j                  ||d¬	«       Œ) y c c}	w c c}	w c c}	w )
Nr   r   )ÚFigureCanvaszmatplotlib.backends.backend_T)Úconstrained_layoutr   g{®Gázt?)Úatol)Úmatplotlib.figurer   Úmatplotlib.backends.backend_aggr  Ú	importlibÚimport_modulerc   ÚravelÚget_positionrT   r¥   Úzipr&   ÚallcloseÚtestingÚassert_allclose)r  r   r  Útest_backendÚ
TestCanvasÚfig_testÚ	axes_testÚfig_aggÚaxes_aggrt   Úinit_posÚlayed_out_pos_testÚlayed_out_pos_aggÚinitÚplacedÚrefÚtests                    r;   Ú	test_drawr0  I  sr  € õ
 )Ý<Ü×*Ñ*Ð-IÈ'ÈÐ+SÓT€LØ×*Ñ*€JÙ¨Ô.€HÙˆxÔØ×!Ñ! ! QÓ'€Iñ ¨Ô-€Gá�ÔØ×Ñ  1Ó%€Hà,5¯O©OÓ,=Ö> b�—‘Õ!Ð>€HÐ>à‡O�O×ÑÔØ‡N�N×ÑÔà6?·o±oÓ6GÖH°˜"Ÿ/™/Õ+ÐHÐÐHØ5=·^±^Ó5EÖF¨r˜Ÿ™Õ*ÐFÐÐFä˜HÐ&8Ó9ò 9‰ˆˆfÜ—;‘;˜t V°%Ö8Ð8Ð8ð9ô Ð*Ð,>Ó?ò :‰	ˆˆTÜ
�
‰
×"Ñ" 3¨°5Ð"Õ9ñ:ùò ?ùò
 IùÚFs   Â	FÃ(FÄFz&key,mouseend,expectedxlim,expectedylim))N©çš™™™™™É?r2  ©gìQ¸…ë@g{®Gáú(@©gš™™™™™@gffffff'@)N)r2  r’   r3  ©r   é	   )N)r’   r2  r5  r4  )Nr¢   r5  r5  )N©r±   ç      Ð?©gÃõ(\�ÂÀg…ëQ¸@©g      @g     €&@)N©r2  r8  r3  r:  )N)r±   ç333333ë?r9  ©g…ëQ¸	Àgq=
×£p@)N©r2  r<  r3  r=  )Úshift)r2  çš™™™™™Ù?r3  r5  )r?  ©r@  r2  r5  r4  )r?  r;  r3  r3  )r?  r7  r9  )gÃõ(\�Â@gq=
×£ð(@)r?  )r±   gÍÌÌÌÌÌì?©g¤p=
×£Àg¤p=
×£@rB  )r?  r>  r3  )gìQ¸…ëÀg
×£p=
@)r~   )r2  r°   r3  r5  )r�   )r°   r2  r5  r4  )Úcontrolr1  r3  r3  )rC  rA  ©gÃõ(\�Â@gq=
×£p'@rD  c                 ó  — t        j                  «       \  }}|j                  t        j                  d«      «       |j                  «       sJ ‚|j                  d«       d}|j                  j                  |«      j                  t        «      }|j                  j                  |«      j                  t        «      }t        d|j                  g|¢­t        j                  | dœŽ}	t        d|j                  g|¢­t        j                  t        j                  h| dœŽ}
t        d|j                  g|¢­t        j                  | dœŽ}t        |j                  «      }|j!                  «        |j#                  |	«       |j%                  |
«       |j'                  |«       t)        |j+                  «       «      t-        j.                  |d	¬
«      k(  sJ ‚t)        |j1                  «       «      t-        j.                  |d	¬
«      k(  sJ ‚y )Nr   Úequalr¢   r¡   )rò   r›   rä   )rò   rå   r›   r²   g{®Gáz”?rç   )rS   rc   rÏ   r&   rC   rê   Ú
set_aspectr¹   r©   rº   r€   r	   rT   r   rª   r
   rÑ   rî   rï   rð   Útupler·   re   rÁ   r¸   )r›   ÚmouseendÚexpectedxlimÚexpectedylimrY   rt   Ú
mousestartÚsstartÚsendrË   rù   rÌ   rÄ   s                r;   Útest_interactive_panrO  k  s¤  € ô, �l‰l‹n�G€CˆØ‡G�GŒB�I‰I�b‹MÔØ�?‰?ÔÐÐà‡M�M�'Ôð €Jð �\‰\×#Ñ# JÓ/×6Ñ6´sÓ;€FØ�<‰<×!Ñ! (Ó+×2Ñ2´3Ó7€Dô Ø˜cŸj™jðØ+1ñÜ:E×:JÑ:JØò€Kô Ø˜sŸz™zð-Ø,0ñ-Ü9D×9IÑ9IÜ×!Ñ!Ð"¨ò-€Jô Ø §
¡
ðØ-1ñÜ:E×:JÑ:JØò€Jô 
˜CŸJ™JÓ	'€BØ‡F�F„HØ‡L�L�ÔØ‡K�K�
ÔØ‡N�N�:Ôä�—‘“Ó¤6§=¡=°À4Ô#HÒHÐHÐHÜ�—‘“Ó¤6§=¡=°À4Ô#HÒHÐHÑHrP   c                  ó®  — t        j                  t        t        ¬«      5  dt        j
                  d<   d d d «       t	        j                  «       } t        | j                  j                  j                  j                  «      }d| j                  j                  j                  j                  v sJ ‚| j                  j                  j                  j                  d«       t        | j                  j                  j                  j                  «      |dz
  k(  sJ ‚d| j                  j                  j                  j                  vsJ ‚y # 1 sw Y   �ŒxY w)Nrü   rþ   rÿ   Úforwardr   )re   rf   rg   r  rS   r  rk   r#   rT   rV   rþ   ÚtoolsÚremove_tool)rY   Úinitial_lens     r;   Útest_toolmanager_removerU  ¤  sò   € Ü	�‰”kÔ)FÔ	Gñ 0Ø"/Œ�‰�YÑ÷0ä
�'‰'‹)€CÜ�c—j‘j×(Ñ(×4Ñ4×:Ñ:Ó;€KØ˜Ÿ
™
×*Ñ*×6Ñ6×<Ñ<Ñ<Ð<Ð<Ø‡J�J×Ñ×"Ñ"×.Ñ.¨yÔ9Üˆs�z‰z×!Ñ!×-Ñ-×3Ñ3Ó4¸Àa¹ÒGÐGÐGØ˜CŸJ™J×.Ñ.×:Ñ:×@Ñ@Ñ@Ð@Ñ@÷0ñ 0ús    E
Å
Ec                  ó’  — t        j                  t        t        ¬«      5  dt        j
                  d<   d d d «       t	        j                  «       } | j                  j                  j                  j                  d«      }t        |t        «      sJ ‚| j                  j                  j                  j                  |«      |u sJ ‚t        j                  t        d¬«      5  | j                  j                  j                  j                  d«      �J ‚	 d d d «       | j                  j                  j                  j                  dd¬«      �J ‚t        j                  t        d¬«      5  | j                  j                  j                  j                  d«      �J ‚	 d d d «       y # 1 sw Y   �ŒrxY w# 1 sw Y   Œ xY w# 1 sw Y   y xY w)	Nrü   rþ   rÿ   Ú
rubberbandz'ToolManager does not control tool 'foo'r}   F)Úwarn)re   rf   rg   r  rS   r  rk   rT   rV   rþ   Úget_toolrM   r   r  )rY   rW  s     r;   Útest_toolmanager_get_toolrZ  ¯  sp  € Ü	�‰”kÔ)FÔ	Gñ 0Ø"/Œ�‰�YÑ÷0ä
�'‰'‹)€CØ—‘×#Ñ#×/Ñ/×8Ñ8¸ÓF€JÜ�j¤.Ô1Ð1Ð1Ø�:‰:×Ñ×)Ñ)×2Ñ2°:Ó>À*ÑLÐLÐLÜ	�‰”kØEô
Gñ Fà�z‰z×!Ñ!×-Ñ-×6Ñ6°uÓ=ÐEÐEÑE÷Fð �:‰:×Ñ×)Ñ)×2Ñ2°5¸uÐ2ÓEÐMÐMÐMä	�‰”kØEô
Gñ Jà�z‰z×!Ñ!×-Ñ-×:Ñ:¸5ÓAÐIÐIÑI÷Jð J÷0ñ 0ú÷Fð Fú÷
Jð Jús#    F$Ã2F1Å(2F=Æ$F.Æ1F:Æ=Gc                  ó  — t        j                  t        t        ¬«      5  dt        j
                  d<   d d d «       t	        j                  «       } d| j                  j                  j                  j                  d«      v sJ ‚t        j                  t        d¬«      5  | j                  j                  j                  j                  dd«       d d d «       | j                  j                  j                  j                  d«      dgk(  sJ ‚t        j                  t        d¬«      5  | j                  j                  j                  j                  d	d«       d d d «       y # 1 sw Y   �Œ/xY w# 1 sw Y   Œ xY w# 1 sw Y   y xY w)
Nrü   rþ   rÿ   ÚvrQ  z"Key c changed from back to forwardÚcz'foo' not in Toolsr}   )re   rf   rg   r  rS   r  rk   rT   rV   rþ   Úget_tool_keymapÚupdate_keymapÚraisesÚKeyErrorrX   s    r;   Útest_toolmanager_update_keymaprb  À  s.  € Ü	�‰”kÔ)FÔ	Gñ 0Ø"/Œ�‰�YÑ÷0ä
�'‰'‹)€CØ�#—*‘*×$Ñ$×0Ñ0×@Ñ@ÀÓKÑKÐKÐKÜ	�‰”kØ@ô
Bñ Eà�
‰
×Ñ×&Ñ&×4Ñ4°YÀÔD÷Eð �:‰:×Ñ×)Ñ)×9Ñ9¸)ÓDÈÈÒMÐMÐMÜ	�‰”xÐ';Ô	<ñ AØ�
‰
×Ñ×&Ñ&×4Ñ4°U¸CÔ@÷Að A÷0ñ 0ú÷Eð Eú÷Að Aús#    E!Â1E.Ä'1E:Å!E+Å.E7Å:Frñ   rò   Ú	patch_visTFÚforward_nav)TFÚautoÚt_sÚtwinÚsharec                 óŠ  — t        j                  «       \  }}|j                  dd¬«      }|j                  |«       |j                  j                  |«       |dk(  rg|j                  d«      }|j                  |«       |j                  |«       |j                  d«      }	|	j                  |«       |	j                  |«       n%|dk(  r |j                  «       }|j                  «       }	|j                  d«       |j                  j                  d	«       j                  d
«       |j                  j                  d«       |j                  d«       |j                  j                  d«       	j                  d«       |	j                  j                  d«       d\  }
}||fD ]   } |j                  |
Ž   |j                  |Ž  Œ" d\  }}}}|j                  j                  ||f«      j                  t         «      }|j                  j                  ||f«      j                  t         «      }|j                  j#                  «       j                  |«      \  }}|j                  j#                  «       j                  |«      \  }}t%        d|j&                  g|¢|‘­Ž }t%        d|j&                  g|¢|‘­d|hiŽ}t%        d|j&                  g|¢|‘­Ž }t)        |j&                  «      }| dk(  r¯|dk(  rdnd}|j+                  g |¢|¢|«      \  }}|j-                  «       du r|j+                  g |¢|¢|«      \  }}nO|j-                  «       du r|
}|}n8|j                  j/                  «       s|j+                  g |¢|¢|«      \  }}n|
}|}|j1                  «        �na |j2                  g |¢|‘­Ž   |j4                  |d g|¢­Ž j6                  j                  t8        «      \  }}|j;                  «        |j-                  «       du rY |j2                  g |¢|‘­Ž   |j4                  |d g|¢­Ž j6                  j                  t8        «      \  }}|j;                  «        nŽ|j-                  «       du r|
}|}nw|j                  j/                  «       sY |j2                  g |¢|‘­Ž   |j4                  |d g|¢­Ž j6                  j                  t8        «      \  }}|j;                  «        n|
}|}|j=                  «        |j?                  «        |j?                  «        |j?                  «        |jA                  «       tC        jD                  |d¬«      k(  sJ ‚|jG                  «       tC        jD                  |d¬«      k(  sJ ‚|jA                  «       tC        jD                  |d¬«      k(  sJ ‚|jG                  «       tC        jD                  |d¬«      k(  sJ ‚|jA                  «       tC        jD                  |jA                  «       d¬«      k(  sJ ‚|jA                  «       tC        jD                  |	jA                  «       d¬«      k(  sJ ‚y )NéÝ   éc   )Úzorderrh  éÞ   éß   rg  Úax_t)r   r   r   r’   Ú	ax_t_twinÚrÚax_b)r   r   r   r’   Ú	ax_b_twinÚb)rŠ   rŠ   )r   r   r   r   r¡   rä   rå   r²   r¶   r   ÚinÚoutTFræ   rç   )$rS   rc   Úadd_subplotÚset_forward_navigation_eventsÚpatchÚset_visibleÚsharexÚshareyrŽ   Ú	set_labelÚset_facecolorÚset_xlimÚset_ylimr¹   r©   rº   r€   Úinvertedr	   rT   r
   Ú_prepare_view_from_bboxÚget_forward_navigation_eventsÚget_visibler¶   Ú	start_panÚ_get_pan_pointsÚTÚfloatÚend_panrÑ   r§   r·   re   rÁ   r¸   ) rñ   rò   rc  rd  rf  rY   rr  ro  rp  rs  Ú	init_xlimÚ	init_ylimrt   Úxstart_tÚxstop_tÚystart_tÚystop_trÉ   rÊ   Úxstart_bÚystart_bÚxstop_bÚystop_brË   rù   rÌ   rÄ   Ú	directionÚxlim_tÚylim_tÚxlim_bÚylim_bs                                    r;   Ú test_interactive_pan_zoom_eventsr™  Í  sw  € ô —‘“�I€CˆØ�?‰?˜3 rˆ?Ó*€DØ×&Ñ& {Ô3Ø‡J�J×Ñ˜9Ô%ð ˆg‚~Ø—O‘O CÓ(ˆ	Ø×Ñ˜ÔØ×Ñ˜Ôà—O‘O CÓ(ˆ	Ø×Ñ˜ÔØ×Ñ˜ÕØ	�ŠØ—J‘J“Lˆ	Ø—J‘J“Lˆ	ð 	‡N�N�6ÔØ‡J�J×Ñ˜^Ô,à×Ñ˜Ô$Ø‡O�O×!Ñ! #Ô&à‡N�N�6ÔØ‡J�J×Ñ˜^Ô,à×Ñ˜Ô$Ø‡O�O×!Ñ! #Ô&ð
 ,Ñ€IˆyØ�Tˆlò  ˆØˆ�‰�YÑØˆ�‰�YÒð ð
 ,6Ñ(€Hˆg�x ð 
�‰×	!Ñ	! 8¨XÐ"6Ó	7×	>Ñ	>¼sÓ	C€BØ	�‰×	!Ñ	! 7¨GÐ"4Ó	5×	<Ñ	<¼SÓ	A€Bð Ÿ™×0Ñ0Ó2×<Ñ<¸RÓ@Ñ€HˆhØ—~‘~×.Ñ.Ó0×:Ñ:¸2Ó>Ñ€GˆWô Ð1°3·:±:ÐKÀÐKÀFÒK€KÜØ˜sŸz™zðJØ,.ðJØ06òJØAGÀñJ€JäÐ2°C·J±JÐLÀÐLÀVÒL€Jä	˜CŸJ™JÓ	'€Bàˆv‚~à# qš[‘T¨eˆ	à×5Ñ5°j¸°j¸R°jÀ)ÓL‰ˆ�à×-Ñ-Ó/°4Ñ7Ø!×9Ñ9¸*¸B¸*À¸*ÀiÓP‰NˆF‘FØ×/Ñ/Ó1°UÑ:ØˆFØ‰Fà—:‘:×)Ñ)Ô+Ø!%×!=Ñ!=¸jÀ¸jÀR¸jÈ)Ó!T‘�™à"�Ø"�à
�‰Ž	ð
 	ˆ�‰Ð#˜Ð#˜FÓ#Ø-˜×-Ñ-¨f°dÐ@¸RÒ@×BÑB×IÑIÌ%ÓP‰ˆ�Ø�‰Œà×-Ñ-Ó/°4Ñ7ØˆD�N‰NÐ'˜BÐ' Ó'Ø1˜T×1Ñ1°&¸$ÐDÀÒD×FÑF×MÑMÌeÓT‰NˆF�FØ�L‰L�NØ×/Ñ/Ó1°UÑ:ØˆFØ‰Fà—:‘:×)Ñ)Ô+Ø�—‘Ð+ Ð+ FÓ+Ø!5 ×!5Ñ!5°f¸dÐ!HÀRÒ!H×!JÑ!J×!QÑ!QÔRWÓ!X‘�˜Ø—‘•à"�Ø"�à
�‰Œà×ÑÔØ×ÑÔØ×ÑÔà�=‰=‹?œfŸm™m¨F¸Ô=Ò=Ð=Ð=Ø�=‰=‹?œfŸm™m¨F¸Ô=Ò=Ð=Ð=Ø�=‰=‹?œfŸm™m¨F¸Ô=Ò=Ð=Ð=Ø�=‰=‹?œfŸm™m¨F¸Ô=Ò=Ð=Ð=ð �=‰=‹?œfŸm™m¨I×,>Ñ,>Ó,@ÀdÔKÒKÐKÐKØ�=‰=‹?œfŸm™m¨I×,>Ñ,>Ó,@ÀdÔKÒKÐKÑKrP   )3r  Ú
matplotlibr   r   Úmatplotlib.backend_basesr   r   r   r   r	   r
   r   Úmatplotlib.backend_toolsr   r  r   Úmatplotlib.testing._markersr   Úmatplotlib.pyplotÚpyplotrS   Únumpyr&   re   r  rJ   rQ   rZ   r_   Úmarkr  rn   ru   Úparametrizerˆ   r�   r«   rÍ   rÒ   rª   rÀ   rú   r  r  Úparamr0  rO  rU  rZ  rb  r™  rO   rP   r;   ú<module>r¤     sŸ  ðÛ ç '÷&÷ &ñ &õ 4Ý $Ý 9Ý ã Û ð9ð ò%LòP9ò>ò-ð ‡�×Ñ�UÓñ(ó ð(ò$,ð ‡�×ÑØ
ÒNóPñ>óPð>ò,Fòò&-Eò`*ð ‡�×Ñ˜ x°Ð&<Ó=Ø‡�×Ñ˜¨°\Ð(BÓCØ‡�×ÑÐ/Ø! ;×#3Ñ#3°VÐ<Ø! ;×#4Ñ#4°iÐ@Ø  +×"2Ñ"2°GÐ<Ø  +×"3Ñ"3°\ÐBðDóEñ
5CóEó Dó >ð5Còp	+ò5ð< ‡�×ÑØ��t˜UØ�—‘˜UÐ*;Ô<ð>óñ:ó	ð:ð< ‡�×ÑØ,òóñ*!Ió+ð*!IòHAòJò"
Að ‡�×Ñ˜ &¨% Ó1Ø‡�×Ñ˜ K×$4Ñ$4°k×6GÑ6GÐ#HÓIØ‡�×Ñ˜ t¨U mÓ4Ø‡�×Ñ˜Ò(=Ó>Ø‡�×Ñ˜ ¨Ð 1Ó2ñuLó 3ó ?ó 5ó Jó 2ñ
uLrP   