§
    ‚Øjf ã                   ó‚  — d dl Z d dlZd dlZd dlmZ d dlZd dl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mZ d dlmZmZmZ d dlZd dlmZ d dlZej         d„ ¦   «         Z!d„ Z"ej#         $                    d	 e%¦   «          e%d
d¬¦  «         e%ddd¬¦  «         e% e%d
¬¦  «        ¬¦  «        g¦  «        d„ ¦   «         Z&ej#         $                    dddg¦  «        ej#         $                    dd dgddgddgg¦  «        ej#         $                    dd dgddgddgg¦  «        d„ ¦   «         ¦   «         ¦   «         Z'ej#         $                    dd
dgddgg¦  «        d„ ¦   «         Z(d„ Z)d „ Z*d!„ Z+ej#         $                    d"d
dg¦  «        d#„ ¦   «         Z,ej#         $                    d"d
dg¦  «        d$„ ¦   «         Z-d%„ Z.ej#         $                    d&ej/        ej0        g¦  «        d'„ ¦   «         Z1d(„ Z2ej#         $                    d)dd
g¦  «        d*„ ¦   «         Z3d+„ Z4d,„ Z5d-„ Z6ej#         $                    d.d
dg¦  «        d/„ ¦   «         Z7ej#         $                    d0d
dg¦  «        d1„ ¦   «         Z8ej#         $                    d2d3d e%dd
¬4¦  «        fd5d
 e%d¬6¦  «        fd3d e% e%d
¬¦  «        ¬¦  «        fd3d e%d
¬7¦  «        fg¦  «        d8„ ¦   «         Z9ej#         $                    d.d
dg¦  «        d9„ ¦   «         Z:ej#         $                    d0d
dg¦  «        d:„ ¦   «         Z;ej#         $                    d;d
dg¦  «        d<„ ¦   «         Z<d=„ Z=d>„ Z>ej#         $                    d?d@dAg¦  «        dB„ ¦   «         Z?ej#         $                    d?d@dAg¦  «        dC„ ¦   «         Z@dD„ ZAdE„ ZBej#         $                    dFdG¦  «        dH„ ¦   «         ZCej#         D                    dId
¬J¦  «        dK„ ¦   «         ZEdL„ ZFdM„ ZGdN„ ZHej#         $                    d	 e%¦   «          e%d e%dO¬P¦  «        ¬Q¦  «         e%d
d¬¦  «        g¦  «        dR„ ¦   «         ZIdS„ ZJdT„ ZKdU„ ZLej#         $                    dVg dW¢¦  «        dX„ ¦   «         ZMdY„ ZN edZgd[d
¬\¦  «        d]„ ¦   «         ZO e¦   «         d^„ ¦   «         ZP e¦   «         d_„ ¦   «         ZQ ed`gd[d
¬\¦  «        da„ ¦   «         ZRdb„ ZS e¦   «         dc„ ¦   «         ZT e¦   «         dd„ ¦   «         ZU e¦   «         de„ ¦   «         ZVej#         $                    dfejW        ejX        g¦  «        dg„ ¦   «         ZYdh„ ZZdi„ Z[dj„ Z\dk„ Z]dl„ Z^dm„ Z_ej#         $                    dnd3d5g¦  «        do„ ¦   «         Z`ej#         $                    dnd3d5g¦  «        dp„ ¦   «         Zadq„ Zbdr„ Zcds„ Zdej#         $                    dtdd
g¦  «        du„ ¦   «         Zeej#         $                    dtdd
g¦  «        dv„ ¦   «         Zf e¦   «         dw„ ¦   «         Zgej#         $                    dxg dy¢¦  «        ej#         $                    dtdd
g¦  «        dz„ ¦   «         ¦   «         Zhej#         $                    dtdd
g¦  «        d{„ ¦   «         Ziej#         $                    dtdd
g¦  «        d|„ ¦   «         Zjej#         $                    dtdd
g¦  «         e¦   «         d}„ ¦   «         ¦   «         Zkd~„ Zld„ Zmd€„ Znej#         $                    d�dd
g¦  «        ej#         $                    d‚dd
g¦  «        ej#         $                    dƒdd
g¦  «        d„„ ¦   «         ¦   «         ¦   «         Zod…„ Zpd†„ ZqdS )‡é    N)Úmock)Ú	DrawEventÚKeyEventÚ
MouseEventÚResizeEvent)Úcheck_figures_equalÚimage_comparison)Úclick_and_dragÚget_axÚnoop)Úassert_allclosec                  ó   — t          ¦   «         S ©N)r   © ó    ú’/Users/tedpeters/Documents/Projects/Claude Projects/Misc Tools/notename-sheets/.venv/lib/python3.11/site-packages/matplotlib/tests/test_widgets.pyÚaxr      s   € å‰8Œ8€Or   c            
      ó¼  — ddl m} m} ddlm}  |¦   «         dvrt          j        d¦  «         t          j        dddddg¬	¦  «        \  }} ||d
         ddg¦  «        } ||d         ddgddgddgdœddgddgdœ¬¦  «        } | |d         ddgddg¬¦  «        } | |d         ddgddgddgddgdœddgddgdœdddgi¬¦  «        }|d
          	                    d¦  «         |d          	                    d ¦  «         |j
                             ¦   «          t          j        ¦   «         5 }	|                     |	d!¬"¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )#Nr   )ÚCheckButtonsÚRadioButtons)Ú"_get_running_interactive_framework)ÚheadlessNz-Callback exceptions are not raised otherwise.é   ©é   r   é   )ÚnrowsÚncolsÚfigsizeÚwidth_ratios©r   r   ÚApplesÚOranges©r   r   ÚredÚorangeé   é   ©ÚcolorÚfontsizeÚ	mistyroseÚ	peachpuff©Ú	edgecolorÚ	facecolor©Úlabel_propsÚradio_props)r   r   T)Úactives)r   r   r*   ÚdarkredÚ
darkorange)r4   r2   Úframe_propsÚcheck_propsÚDefaultÚStylizedÚpdf©Úformat)Úmatplotlib.widgetsr   r   Úmatplotlib.cbookr   ÚpytestÚxfailÚpltÚsubplotsÚ	set_titleÚcanvasÚdrawÚioÚBytesIOÚsavefig)
r   r   r   Úfigr   Ú
default_rbÚ	styled_rbÚ
default_cbÚ	styled_cbÚresult_afters
             r   Útest_save_blitted_widget_as_pdfrP      sJ  € Ø=Ð=Ð=Ð=Ð=Ð=Ð=Ð=ØCÐCÐCÐCÐCÐCØ)Ð)Ñ+Ô+Ð3EÐEÐEÝŒÐDÑEÔEÐEåŒlØ�q &¸¸1°vðñ ô �G€Cˆð �˜b œh¨°9Ð(=Ñ>Ô>€JØ�Ø
ˆ4Œ�8˜YÐ'Ø$ hÐ/Ø"$ b ð+ð +à#(¨(Ð"3Ø#.°Ð"<ð>ð >ð	ñ ô €Ið �˜b œh¨°9Ð(=Ø'+¨T lð4ñ 4ô 4€Jà�Ø
ˆ4Œ�8˜YÐ'Ø�t�Ø$ hÐ/Ø"$ b ð+ð +à#(¨(Ð"3Ø#.°Ð"<ð>ð >à˜y¨,Ð7Ð8ðñ ô €Ið €t„H×Ò�yÑ!Ô!Ð!Ø€t„H×Ò�zÑ"Ô"Ð"à„J‡O‚OÑÔÐå	Œ‰Œð 0˜Ø�Š�L¨ˆÑ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0ð 0ð 0s   Ä,EÅEÅEÚkwargsTr   )ÚuseblitÚbuttoné
   Úpixels)ÚminspanxÚminspanyÚ
spancoords)Úfill©Úpropsc                 óˆ  — t          j        t          d ¬¦  «        }t          j        | fd|i|¤Ž}t          j        d| dd¦  «                             ¦   «          t          j        d| dd¦  «                             ¦   «          t          j        d| d	d¦  «                             ¦   «          |                     d
d ¦  «        dvr"t          |j
        g d¢g d¢g|j
        ¬¦  «         |                     ¦   «          |j        \  \  }}}|j        dk    sJ ‚|j        dk    sJ ‚|j        dk    sJ ‚|j        dk    sJ ‚|i k    sJ ‚d S )N©ÚspecÚreturn_valueÚonselectÚbutton_press_event©éd   rc   r   Úmotion_notify_event©éÇ   rf   Úbutton_release_event©éú   ri   Údrawtype)ÚlineÚnone)ç      Y@rc   rf   rf   rc   )rc   rf   rf   rc   rc   )Úerr_msgrc   rf   )r   ÚMockr   ÚwidgetsÚRectangleSelectorr   Ú_from_ax_coordsÚ_processÚgetr   ÚgeometryÚassert_called_onceÚ	call_argsÚxdataÚydata)r   rQ   r`   ÚtoolÚepressÚereleases         r   Útest_rectangle_selectorr}   @   su  € õ Œy�d°Ð6Ñ6Ô6€HåÔ$ RÐEÐE°(ÐE¸fÐEÐE€DÝÔÐ3°R¸ÀQÑGÔG×PÒPÑRÔRÐRÝÔÐ4°b¸*ÀaÑHÔH×QÒQÑSÔSÐSåÔÐ5°r¸:ÀqÑIÔI×RÒRÑTÔTÐTà‡z‚z�*˜dÑ#Ô#Ð+;Ð;Ð;Ý˜œØ3Ð3Ð3Ø2Ð2Ð2ð4à $¤ð	/ñ 	/ô 	/ð 	/ð
 ×ÒÑ!Ô!Ð!Ø!)Ô!3ÑÑ€VˆX˜ØŒ<˜3ÒÐÐÐØŒ<˜3ÒÐÐÐØŒ>˜SÒ Ð Ð Ð ØŒ>˜SÒ Ð Ð Ð Ø�RŠ<ˆ<ˆ<ˆ<ˆ<ˆ<r   rX   Údatazminspanx, x1ç      %@é   zminspany, y1c                 óâ  — t          j        t          d ¬¦  «        }d\  }}|dk    r<| j                             ||f¦  «        | j                             ||f¦  «        z
  \  }}t          j        | |d|||¬¦  «        }	t          |	||f||f¬¦  «         |	j        rJ ‚| 	                    ¦   «          t          |	dd¬¦  «         |	j        sJ ‚| 
                    ¦   «          |                     ¦   «          t          |	||f||f¬¦  «         |	j        rJ ‚| 
                    ¦   «          |j        \  \  }
}}|
j        |k    sJ ‚|
j        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚|i k    sJ ‚d S )	Nr]   ©rT   rT   rU   T)r`   ÚinteractiverX   rV   rW   ©ÚstartÚend©r(   r(   ©é   r‰   )r   ro   r   Ú	transDataÚ	transformrp   rq   r
   Ú_selection_completedÚassert_not_calledrv   Ú
reset_mockrw   rx   ry   )r   rX   rV   Úx1rW   Úy1r`   Úx0Úy0rz   r{   r|   rQ   s                r   Útest_rectangle_minspanr“   ^   sÇ  € õ
 Œy�d°Ð6Ñ6Ô6€Hà�F€BˆØ�XÒÐØ œl×4Ò4°b¸"°XÑ>Ô>Ø œl×4Ò4°b¸"°XÑ>Ô>ñ?Ñˆ�(õ Ô$ R°(ÈØ0:Ø.6ÀðKñ Kô K€Dõ �4  B˜x¨b°"¨XÐ6Ñ6Ô6Ð6ØÔ(Ð(Ð(Ð(Ø×ÒÑ Ô Ð å�4˜x¨XÐ6Ñ6Ô6Ð6ØÔ$Ð$Ð$Ð$Ø×ÒÑ!Ô!Ð!ð ×ÒÑÔÐÝ�4  B˜x¨b°"¨XÐ6Ñ6Ô6Ð6ØÔ(Ð(Ð(Ð(Ø×ÒÑ!Ô!Ð!Ø!)Ô!3ÑÑ€VˆX˜ØŒ<˜2ÒÐÐÐØŒ<˜2ÒÐÐÐØŒ>˜RÒÐÐÐØŒ>˜RÒÐÐÐØ�RŠ<ˆ<ˆ<ˆ<ˆ<ˆ<r   zdrag_from_anywhere, new_center)é<   éK   F©r‰   r(   c                 óî   — t          j        | d|¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚t          |dd¬¦  «         |j        |k    sJ ‚t          |d	d
¬¦  «         |j        dk    sJ ‚d S )NT)rƒ   Údrag_from_anywherer‚   )éZ   éx   r„   )é2   éA   ©é   é   ©é#   rž   ©é¯   é¹   ©r¤   éÃ   )é´   é¾   )rp   rq   r
   Úcenter)r   r˜   Ú
new_centerrz   s       r   Útest_rectangle_dragr«   „   s©   € õ Ô$ R°TØ8JðLñ Lô L€Dõ �4˜x¨YÐ7Ñ7Ô7Ð7ØŒ;˜(Ò"Ð"Ð"Ð"õ �4˜x¨XÐ6Ñ6Ô6Ð6ØŒ;˜*Ò$Ð$Ð$Ð$õ �4˜z¨zÐ:Ñ:Ô:Ð:ØŒ;˜*Ò$Ð$Ð$Ð$Ð$Ð$r   c                 ó®  — t          j        | dt          dd¬¦  «        t          d¬¦  «        ¬¦  «        }t          |dd	¬
¦  «         |j        }|                     ¦   «         t          j        dd¬¦  «        k    sJ ‚|                     dd¬¦  «         |                     ¦   «         t          j        dd¬¦  «        k    sJ ‚|j	        D ]6}| 
                    ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚Œ7|                     dd¬¦  «         |j	        D ]6}| 
                    ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚Œ7d S )NTÚbçš™™™™™É?©r0   Úalphaç      à?©r°   )rƒ   r[   Úhandle_props©r   rT   ©rc   rš   r„   Úrç333333Ó?Úblack)Úmarkeredgecolorr°   )rp   rq   Údictr
   Ú_selection_artistÚget_facecolorÚmcolorsÚto_rgbaÚ	set_propsÚ_handles_artistsÚget_markeredgecolorÚ	get_alphaÚset_handle_props©r   rz   Úartists      r   Ú.test_rectangle_selector_set_props_handle_propsrÆ   œ   s‰  € ÝÔ$ R°TÝ+/¸#ÀSÐ+IÑ+IÔ+IÝ26¸S°/±/´/ðCñ Cô C€Dõ �4˜w¨JÐ7Ñ7Ô7Ð7àÔ#€FØ×ÒÑ!Ô!¥W¤_°SÀÐ%DÑ%DÔ%DÒDÐDÐDÐDØ‡N‚N˜S¨€NÑ,Ô,Ð,Ø×ÒÑ!Ô!¥W¤_°SÀÐ%DÑ%DÔ%DÒDÐDÐDÐDàÔ'ð )ð )ˆØ×)Ò)Ñ+Ô+¨wÒ6Ð6Ð6Ð6Ø×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ð(Ø×Ò¨#°SÐÑ9Ô9Ð9ØÔ'ð )ð )ˆØ×)Ò)Ñ+Ô+¨sÒ2Ð2Ð2Ð2Ø×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ð(ð)ð )r   c                 óp  — t          j        | d¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚|j        }|d         |d         }}|d	z   |d
z   }}t          |||f||f¬¦  «         |j        |d         ||d         |fk    sJ ‚|j        }|d         |d         |d         |d         z
  dz  z   }}|d	z   |}}t          |||f||f¬¦  «         |j        |d         ||d         |d         fk    sJ ‚|j        }|d         |d         |d         |d         z
  dz  z   }}|dz   |}}t          |||f||f¬¦  «         |j        ||d         |d         |d         fk    sJ ‚|j        }|d         |d         }}|dz   |dz   }}t          |||f||f¬¦  «         |j        ||d         ||d         fk    sJ ‚d S )NT©rƒ   r‚   rµ   r„   )ç      $@rm   rÉ   ç      ^@r   é   rT   r   r   r   rŸ   r(   rž   )rp   rq   r
   Úextents)r   rz   rÌ   rx   ry   Ú	xdata_newÚ	ydata_news          r   Útest_rectangle_resizerÏ   ±   s(  € ÝÔ$ R°TÐ:Ñ:Ô:€Då�4˜x¨ZÐ8Ñ8Ô8Ð8ØŒ<Ð5Ò5Ð5Ð5Ð5ð Œl€GØ˜1”:˜w qœzˆ5€EØ  2™: u¨q¡yˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJØŒ<˜G AœJ¨	°7¸1´:¸yÐIÒIÐIÐIÐIð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ  2™: uˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJØŒ<˜G AœJ¨	°7¸1´:¸wÀq¼zÐJÒJÐJÐJÐJð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ  2™: uˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJØŒ<˜I w¨q¤z°7¸1´:¸wÀq¼zÐJÒJÐJÐJÐJð Œl€GØ˜1”:˜w qœzˆ5€EØ  2™: u¨r¡zˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJØŒ<˜I w¨q¤z°9¸gÀa¼jÐIÒIÐIÐIÐIÐIÐIr   c                 óì  — t          j        | d¬¦  «        }t          |dd¬¦  «         t          j        t
          ¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          ¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     d¦  «         |                     d	¦  «         |                     d
¦  «         d S )NTrÈ   ©éF   rœ   ©é}   é‚   r„   Úunsupported_stateÚclearÚmoveÚsquarer©   )rp   rq   r
   r@   ÚraisesÚ
ValueErrorÚ	add_state©r   rz   s     r   Útest_rectangle_add_staterÞ   Ô   sY  € ÝÔ$ R°TÐ:Ñ:Ô:€Då�4˜x¨ZÐ8Ñ8Ô8Ð8å	Œ•zÑ	"Ô	"ð ,ð ,Ø�ŠÐ*Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,õ 
Œ•zÑ	"Ô	"ð  ð  Ø�Š�wÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à‡N‚N�6ÑÔÐØ‡N‚N�8ÑÔÐØ‡N‚N�8ÑÔÐÐÐs$   ÁA$Á$A(Á+A(ÂB*Â*B.Â1B.rÜ   c                 ó¸  — t          j        | d¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚|r|                     d¦  «         d }nd}|j        }|d	         |d
         }}d\  }}||z   ||z   }
}	t          |||f|	|
f|¬¦  «         |j        |d         |z
  |	|d         |z
  |
fk    sJ ‚|j        }|d	         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |d         |z
  |	|d         |d
         fk    sJ ‚|j        }|d	         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |d         |z
  |	|d         |d
         fk    sJ ‚|j        }|d         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |	|d	         |z
  |d         |d
         fk    sJ ‚|j        }|d         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |	|d	         |z
  |d         |d
         fk    sJ ‚|j        }|d         |d         }}d\  }}||z   ||z   }
}	t          |||f|	|
f|¬¦  «         |j        |	|d	         |z
  |
|d
         |z
  fk    sJ ‚d S )NTrÈ   rÑ   rÓ   r„   )ç     €Q@ç     @_@ç     @P@g     @`@r©   Úcontrolr   rË   ©rT   r   ©r…   r†   Úkeyr   r   rT   éìÿÿÿrŸ   éçÿÿÿ©r(   rž   ©rp   rq   r
   rÌ   rÜ   ©r   rÜ   rz   Úuse_keyrÌ   rx   ry   ÚxdiffÚydiffrÍ   rÎ   s              r   Útest_rectangle_resize_centerrï   ã   s,  € åÔ$ R°TÐ:Ñ:Ô:€Då�4˜x¨ZÐ8Ñ8Ô8Ð8ØŒ<Ð5Ò5Ð5Ð5Ð5àð Ø�Š�xÑ Ô Ð Øˆˆàˆð Œl€GØ˜1”:˜w qœzˆ5€EØ�L€Eˆ5Ø  5™=¨%°%©-ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨Ñ.°	Ø# AœJ¨Ñ.°	ð;ò ;ð ;ð ;ð ;ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨Ñ.°	Ø# AœJ¨°¬
ð4ò 4ð 4ð 4ð 4ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨Ñ.°	Ø# AœJ¨°¬
ð4ò 4ð 4ð 4ð 4ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜I w¨q¤z°EÑ'9Ø# AœJ¨°¬
ð4ò 4ð 4ð 4ð 4ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜I w¨q¤z°EÑ'9Ø# AœJ¨°¬
ð4ò 4ð 4ð 4ð 4ð Œl€GØ˜1”:˜w qœzˆ5€EØ�L€Eˆ5Ø  5™=¨%°%©-ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜I w¨q¤z°EÑ'9Ø% w¨q¤z°EÑ'9ð;ò ;ð ;ð ;ð ;ð ;ð ;r   c                 óÄ  — t          j        | d¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚|r|                     d¦  «         d }nd}|j        }|d	         |d
         }}d\  }}||z   ||z   }
}	t          |||f|	|
f|¬¦  «         |j        |d         |	|d         |d
         |z   fk    sJ ‚|j        }|d	         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |d         |	|d         |d
         |z   fk    sJ ‚|j        }|d	         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |d         |	|d         |d
         |z   fk    sJ ‚|j        }|d         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |	|d	         |d         |d
         |z
  fk    sJ ‚|j        }|d         |d         |d
         |d         z
  dz  z   }}d}||z   |}
}	t          |||f|	|
f|¬¦  «         |j        |	|d	         |d         |d
         |z
  fk    sJ ‚|j        }|d         |d         }}d\  }}||z   ||z   }
}	t          |||f|	|
f|¬¦  «         |j        |d         |z   |d	         |
|d
         fk    sJ ‚d S )NTrÈ   rÑ   ©rš   és   r„   ©rà   rÊ   râ   g     À\@rÙ   Úshiftr   rË   rä   rå   r   r   rT   rç   rŸ   rè   ré   rê   rë   s              r   Útest_rectangle_resize_squarerõ   -  s*  € åÔ$ R°TÐ:Ñ:Ô:€Då�4˜x¨ZÐ8Ñ8Ô8Ð8ØŒ<Ð5Ò5Ð5Ð5Ð5àð Ø�Š�xÑ Ô Ð Øˆˆàˆð Œl€GØ˜1”:˜w qœzˆ5€EØ�L€Eˆ5Ø  5™=¨%°%©-ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨	Ø# AœJ¨°¬
°UÑ(:ð<ò <ð <ð <ð <ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨	Ø# AœJ¨°¬
°UÑ(:ð<ò <ð <ð <ð <ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨	Ø# AœJ¨°¬
°UÑ(:ð<ò <ð <ð <ð <ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜I w¨q¤zØ# AœJ¨°¬
°UÑ(:ð<ò <ð <ð <ð <ð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜I w¨q¤zØ# AœJ¨°¬
°UÑ(:ð<ò <ð <ð <ð <ð Œl€GØ˜1”:˜w qœzˆ5€EØ�L€Eˆ5Ø  5™=¨%°%©-ˆy€IÝ�4  u˜~°I¸yÐ3IØð ñ  ô  ð  àŒ<˜G AœJ¨Ñ.°¸´
Ø% w¨q¤zð3ò 3ð 3ð 3ð 3ð 3ð 3r   c                 óŒ  — t          j        | d¬¦  «        }t          |dd¬¦  «         |                     d¦  «         |                     d¦  «         t	          |j        d¦  «         |j        }|d	         |d
         }}d\  }}||z   ||z   }}t          |||f||f¬¦  «         t	          |j        |d         |z
  ||d         |z
  |d
         |z   f¦  «         |j        }|d	         |d         |d
         |d         z
  dz  z   }}d}||z   |}}t          |||f||f¬¦  «         t	          |j        |d         |z
  ||d         |z
  |d
         |z   f¦  «         |j        }|d	         |d         |d
         |d         z
  dz  z   }}d}||z   |}}t          |||f||f¬¦  «         t	          |j        |d         |z
  ||d         |z
  |d
         |z   f¦  «         |j        }|d         |d         |d
         |d         z
  dz  z   }}d}||z   |}}t          |||f||f¬¦  «         t	          |j        ||d	         |z
  |d         |z   |d
         |z
  f¦  «         |j        }|d         |d         |d
         |d         z
  dz  z   }}d}||z   |}}t          |||f||f¬¦  «         t	          |j        ||d	         |z
  |d         |z   |d
         |z
  f¦  «         |j        }|d         |d         }}d\  }}||z   ||z   }}t          |||f||f¬¦  «         t	          |j        |d         |z   |d	         |z
  ||d
         |z
  f¦  «         d S )NTrÈ   rÑ   rñ   r„   rÙ   r©   ró   r   rË   rä   r   r   rT   rç   r   rè   ré   )rp   rq   r
   rÜ   r   rÌ   )	r   rz   rÌ   rx   ry   rí   rî   rÍ   rÎ   s	            r   Ú#test_rectangle_resize_square_centerr÷   w  s)  € ÝÔ$ R°TÐ:Ñ:Ô:€Då�4˜x¨ZÐ8Ñ8Ô8Ð8Ø‡N‚N�8ÑÔÐØ‡N‚N�8ÑÔÐÝ�D”LÐ"<Ñ=Ô=Ð=ð Œl€GØ˜1”:˜w qœzˆ5€EØ�L€Eˆ5Ø  5™=¨%°%©-ˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJÝ�D”L 7¨1¤:°Ñ#5°yØ#*¨1¤:°Ñ#5°w¸q´zÀEÑ7Ið#Kñ Lô Lð Lð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJÝ�D”L 7¨1¤:°Ñ#5°yØ#*¨1¤:°Ñ#5°w¸q´zÀEÑ7Ið#Kñ Lô Lð Lð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJÝ�D”L 7¨1¤:°Ñ#5°yØ#*¨1¤:°Ñ#5°w¸q´zÀEÑ7Ið#Kñ Lô Lð Lð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJÝ�D”L 9¨g°a¬j¸5Ñ.@Ø#*¨1¤:°Ñ#5°w¸q´zÀEÑ7Ið#Kñ Lô Lð Lð Œl€GØ˜1”:˜w qœz¨W°Q¬Z¸'À!¼*Ñ-DÈÑ,IÑIˆ5€EØ€EØ  5™=¨%ˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJÝ�D”L 9¨g°a¬j¸5Ñ.@Ø#*¨1¤:°Ñ#5°w¸q´zÀEÑ7Ið#Kñ Lô Lð Lð Œl€GØ˜1”:˜w qœzˆ5€EØ�L€Eˆ5Ø  5™=¨%°%©-ˆy€IÝ�4  u˜~°I¸yÐ3IÐJÑJÔJÐJÝ�D”L 7¨1¤:°Ñ#5°w¸q´zÀEÑ7IØ#,¨g°a¬j¸5Ñ.@ð#Bñ Cô Cð Cð Cð Cr   Úselector_classc                 ó®  —  || d¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚t          |j        ¦  «        dk    sJ ‚t	          d| j        j        d	¦  «                             ¦   «          |j        d
hk    sJ ‚t          |j        ¦  «        dk    sJ ‚t          |dd¬¦  «         t	          d| j        j        d	¦  «                             ¦   «          t          |j        ¦  «        dk    sJ ‚|j        dk    sJ ‚t          |j	        dd¬¦  «         d|_	        |j	        dk    sJ ‚t          |j
        t          j        g d¢g d¢g¦  «        d¬¦  «         t          |dd¬¦  «         t          |j        dd¬¦  «         |t          j        k    r@t          j        t"          ¦  «        5  d|j        _        d d d ¦  «         d S # 1 swxY w Y   d S d S )NTrÈ   rb   ©rÕ   éŒ   r„   ©rc   rÕ   rc   rû   r   Úkey_press_eventr¶   Úrotater   )rš   é‘   g�Âõ(\�9@g{®Gáz„?©Úatolé-   )gR¸…ë¡]@ç     xa@g=
×£pÝ[@g     �V@)g     ÐW@g=
×£p]@g     b@gÃõ(\�â^@)én   rÿ   )r  é    )rc   r  rc   g
×£p=úb@Úunvalid_value)r
   rÌ   ÚlenÚ_stater   ÚfigurerE   rs   r   ÚrotationÚcornersÚnpÚarrayrp   rq   r@   rÚ   rÛ   r»   Úrotation_point)r   rø   rz   s      r   Útest_rectangle_rotater  ¶  sm  € ð ˆ>˜"¨$Ð/Ñ/Ô/€Då�4˜z¨zÐ:Ñ:Ô:Ð:ØŒ<Ð/Ò/Ð/Ð/Ð/ÝˆtŒ{ÑÔ˜qÒ Ð Ð Ð õ Ð ¤	Ô 0°#Ñ6Ô6×?Ò?ÑAÔAÐAØŒ;˜8˜*Ò$Ð$Ð$Ð$ÝˆtŒ{ÑÔ˜qÒ Ð Ð Ð Ý�4˜z¨zÐ:Ñ:Ô:Ð:ÝÐ ¤	Ô 0°#Ñ6Ô6×?Ò?ÑAÔAÐAÝˆtŒ{ÑÔ˜qÒ Ð Ð Ð àŒ<Ð/Ò/Ð/Ð/Ð/Ý�D”M 5¨tÐ4Ñ4Ô4Ð4Ø€D„MØŒ=˜BÒÐÐÐå�D”LÝ”HÐ=Ð=Ð=Ø=Ð=Ð=ð?ñ @ô @ØFJðLñ Lô Lð Lõ
 �4˜z¨zÐ:Ñ:Ô:Ð:Ý�D”LÐ"<À4ÐHÑHÔHÐHà�Ô2Ò2Ð2ÝŒ]�:Ñ&Ô&ð 	Dð 	DØ4CˆDÔ"Ô1ð	Dð 	Dð 	Dñ 	Dô 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 	Døøøð 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 3Ð2s   Æ.GÇGÇGc                 ój  — t          j        | d¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚t	          |j        ¦  «        dk    sJ ‚dD ]`}|                     |¦  «         t	          |j        ¦  «        d	k    sJ ‚|                     |¦  «         t	          |j        ¦  «        dk    sJ ‚Œad S )
NTrÈ   rb   rú   r„   rü   r   )rþ   rÙ   r©   r   )rp   rq   r
   rÌ   r  r  rÜ   Úremove_state)r   rz   Ústates      r   Útest_rectangle_add_remove_setr  Ù  sÓ   € ÝÔ$ R°TÐ:Ñ:Ô:€Då�4˜z¨zÐ:Ñ:Ô:Ð:ØŒ<Ð/Ò/Ð/Ð/Ð/ÝˆtŒ{ÑÔ˜qÒ Ð Ð Ð Ø/ð %ð %ˆØ�Š�uÑÔÐÝ�4”;ÑÔ 1Ò$Ð$Ð$Ð$Ø×Ò˜%Ñ Ô Ð Ý�4”;ÑÔ 1Ò$Ð$Ð$Ð$Ð$ð	%ð %r   Úuse_data_coordinatesc                 óê  — |                       d¦  «         t          j        | d|¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚|                     d¦  «         |                     d	¦  «         |r–|j        }|d
         |d         |d
         |d         z
  }}}d|d         |d         |d         z
  dz  z   }}||z   |}
}	|dz  |z   }t          |||f|	|
f¬¦  «         t          |j        |d         |z
  |	||z
  ||z   g¦  «         d S |j        }|d
         |d         }}d}||z   |}
}	|d
z  |j        z  }t          |||f|	|
f¬¦  «         t          |j        |d         |z
  |	ddg¦  «         d S )Nçš™™™™™é?T)rƒ   r  rÑ   rñ   r„   ró   rÙ   r©   r   rË   r   rT   r   g      G@g     ¸`@)Ú
set_aspectrp   rq   r
   rÌ   rÜ   r   Ú_aspect_ratio_correction)r   r  rz   rÌ   rx   ry   Úwidthrí   ÚycenterrÍ   rÎ   Úychanges               r   Ú*test_rectangle_resize_square_center_aspectr  æ  së  € à‡M‚M�#ÑÔÐåÔ$ R°TØ:NðPñ Pô P€Dõ �4˜x¨ZÐ8Ñ8Ô8Ð8ØŒ<Ð5Ò5Ð5Ð5Ð5Ø‡N‚N�8ÑÔÐØ‡N‚N�8ÑÔÐàð 7à”,ˆØ% aœj¨'°!¬*°g¸a´jÀ7È1Ä:Ñ6M�eˆuˆØ˜g aœj¨G°A¬J¸À¼Ñ,CÀqÑ+HÑHˆwˆØ$ u™}¨e�9ˆ	Ø˜!‘)˜eÑ#ˆÝ�t E¨5 >¸	À9Ð7MÐNÑNÔNÐNÝ˜œ w¨q¤z°EÑ'9¸9Ø'.°Ñ'8¸'ÀGÑ:Kð'Mñ 	Nô 	Nð 	Nð 	Nð 	Nð ”,ˆØ˜q”z 7¨1¤:ˆuˆØˆØ$ u™}¨e�9ˆ	Ø˜!‘)˜dÔ;Ñ;ˆÝ�t E¨5 >¸	À9Ð7MÐNÑNÔNÐNÝ˜œ w¨q¤z°EÑ'9¸9Ø',¨fð'6ñ 	7ô 	7ð 	7ð 	7ð 	7r   c                  óÆ   — t          j        ¦   «         \  } }t          j        t          d¬¦  «        5  t          j        |d¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )zY
    Test that an unraisable exception is not created when initialization
    fails.
    z'unexpected keyword argument 'undefined'©ÚmatchÚbar)Ú	undefinedN)rB   rC   r@   rÚ   Ú	TypeErrorrp   ÚButton©rJ   r   s     r   Ú"test_axeswidget_del_on_failed_initr%    s¢   € õ Œl‰nŒn�G€CˆÝ	Œ•yÐ(QÐ	RÑ	RÔ	Rð ,ð ,ÝŒ�r UÐ+Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,s   ²AÁAÁAc                 óÞ  — t          j        | dd¬¦  «        }d|_        t          |dd¬¦  «         |j        dk    sJ ‚t          |d	dd
¬¦  «         |j        dk    sJ ‚t          |ddd¬¦  «         d„ |j        D ¦   «         }|g d¢k    sJ ‚t          |d	dd¬¦  «         d„ |j        D ¦   «         }|g d¢k    sJ ‚|j        j        dk    sJ ‚t          |j        dd…df         ddg¦  «         dS )z'For ellipse, test out the key modifiersrT   T)Ú
grab_rangerƒ   ©rc   é–   rc   r)  ©rÔ   rÔ   )rÿ   rÿ   r„   )rš   éª   rš   r+  rb   rã   rå   )r•   rÔ   r•   rÔ   r‚   )r¡   r‰   rô   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r   ©Úint©Ú.0Úes     r   ú
<listcomp>z test_ellipse.<locals>.<listcomp>"  ó   € Ð,Ð,Ð,˜!�s�1‰vŒvÐ,Ð,Ð,r   )rT   r¡   rT   r¡   rÓ   z
ctrl+shiftc                 ó,   — g | ]}t          |¦  «        ‘ŒS r   r-  r/  s     r   r2  z test_ellipse.<locals>.<listcomp>'  r3  r   )rÒ   rÕ   rÒ   rÕ   )r   éI   Nr   rà   rc   )rp   ÚEllipseSelectorrÌ   r
   ru   Úshaper   )r   rz   rÌ   s      r   Útest_ellipser8    sC  € åÔ" 2°"À$ÐGÑGÔG€DØ'€D„Lõ �4˜z¨zÐ:Ñ:Ô:Ð:ØŒ<Ð/Ò/Ð/Ð/Ð/õ �4˜z¨z¸yÐIÑIÔIÐIØŒ<Ð-Ò-Ð-Ð-Ð-õ �4˜x¨X¸7ÐCÑCÔCÐCØ,Ð,˜tœ|Ð,Ñ,Ô,€GØÐ&Ð&Ð&Ò&Ð&Ð&Ð&õ �4˜z¨z¸|ÐLÑLÔLÐLØ,Ð,˜tœ|Ð,Ñ,Ô,€GØÐ(Ð(Ð(Ò(Ð(Ð(Ð(àŒ=Ô 'Ò)Ð)Ð)Ð)Ý�D”M ! ! ! Q $Ô'¨#¨s¨Ñ4Ô4Ð4Ð4Ð4r   c                 óp  — t          j        | dddddœ¬¦  «        }d|_        t          |j        d¦  «         |j        dk    sJ ‚t          |j        d	¦  «         |j        dk    sJ ‚t          |d
d¬¦  «         |j        dk    sJ ‚t          |dd¬¦  «         |j        dk    sJ ‚t          |dd
¬¦  «         |j        dk    sJ ‚t          j        |j	        j
        d                              ¦   «         d¦  «        sJ ‚t          j        |j	        j
        d                              ¦   «         d¦  «        sJ ‚d S )NrT   Tr¶   r­   )Úmarkerfacecolorr¹   )r'  rƒ   r³   r(  ))rc   r)  r)  rc   )rc   rc   r)  r)  ))rc   rá   r)  rá   )rá   rc   rá   r)  rb   )rš   rš   r„   )rš   r)  rš   r)  )é„   r;  )él   éŠ   r<  r=  r‚   )rT   rc   rT   rc   r   )rp   rq   rÌ   r   r  Úedge_centersr
   r½   Ú
same_colorÚ_corner_handlesÚartistsÚget_markerfacecolorrÁ   rÝ   s     r   Útest_rectangle_handlesrC  .  s¤  € ÝÔ$ R°BÀDØFIØFIð3Kð 3KðLñ Lô L€Dð (€D„Lå�D”LÐ"NÑOÔOÐOØŒ<Ð/Ò/Ð/Ð/Ð/Ý�DÔ%ØHñJô Jð JàŒ<Ð/Ò/Ð/Ð/Ð/õ �4˜z¨zÐ:Ñ:Ô:Ð:ØŒ<Ð/Ò/Ð/Ð/Ð/õ �4˜z¨zÐ:Ñ:Ô:Ð:ØŒ<Ð/Ò/Ð/Ð/Ð/õ �4˜x¨ZÐ8Ñ8Ô8Ð8ØŒ<Ð-Ò-Ð-Ð-Ð-õ ÔØÔÔ$ QÔ'×;Ò;Ñ=Ô=¸sñDô Dð Dð Dð DåÔØÔÔ$ QÔ'×;Ò;Ñ=Ô=¸sñDô Dð Dð Dð Dð Dð Dr   rƒ   c                 óD  — t          j        t          d ¬¦  «        }t          j        | ||¬¦  «        }t          |dd¬¦  «         |                     ¦   «          |j        dk    sJ ‚|                     ¦   «          t          |dd¬¦  «         |                     ¦   «          d S )Nr]   )r`   rƒ   ©rc   r  ©r)  rš   r„   ©rm   ç     Àb@g     €[@rÊ   ©rT   rc   )	r   ro   r   rp   rq   r
   rv   rÌ   rŽ   ©r   rƒ   r`   rz   s       r   Ú test_rectangle_selector_onselectrK  M  s©   € õ Œy�d°Ð6Ñ6Ô6€HåÔ$ R°(ÈÐTÑTÔT€Då�4˜z¨zÐ:Ñ:Ô:Ð:à×ÒÑ!Ô!Ð!ØŒ<Ð7Ò7Ð7Ð7Ð7à×ÒÑÔÐÝ�4˜y¨iÐ8Ñ8Ô8Ð8Ø×ÒÑ!Ô!Ð!Ð!Ð!r   Úignore_event_outsidec                 ó¨  — t          j        t          d ¬¦  «        }t          j        | ||¬¦  «        }t          |dd¬¦  «         |                     ¦   «          |j        dk    sJ ‚|                     ¦   «          t          |dd¬¦  «         |r#| 	                    ¦   «          |j        dk    sJ ‚d S |                     ¦   «          |j        d	k    sJ ‚d S )
Nr]   )r`   rL  rE  rF  r„   rG  ©r)  r)  ©r  r  )rH  ç      d@rH  rP  )
r   ro   r   rp   rq   r
   rv   rÌ   rŽ   r�   )r   rL  r`   rz   s       r   Ú&test_rectangle_selector_ignore_outsiderQ  ^  sû   € åŒy�d°Ð6Ñ6Ô6€HåÔ$ R°(Ø:NðPñ Pô P€Då�4˜z¨zÐ:Ñ:Ô:Ð:Ø×ÒÑ!Ô!Ð!ØŒ<Ð7Ò7Ð7Ð7Ð7à×ÒÑÔÐå�4˜z¨zÐ:Ñ:Ô:Ð:Øð <à×"Ò"Ñ$Ô$Ð$ØŒ|Ð;Ò;Ð;Ð;Ð;Ð;Ð;ð 	×#Ò#Ñ%Ô%Ð%ØŒ|Ð;Ò;Ð;Ð;Ð;Ð;Ð;r   z$orientation, onmove_callback, kwargsÚ
horizontal)ÚminspanrR   Úvertical)rS   rÈ   c                 ó6  ‡	‡
— |                       d¦  «         |                      ¦   «          |                      g d¢dd¬¦  «        }| |fD ]Î}g Š
ˆ
fd„}g Š	ˆ	fd„}|r||d<   t          j        |||fi |¤Ž}t          j        d|d	d
¦  «                             ¦   «          t          j        d|dd
¦  «                             ¦   «          t          j        d|dd
¦  «                             ¦   «          t          ‰
dgd¬¦  «         |rt          ‰	dgd¬¦  «         ŒÏd S )NÚauto)r   r   r   r   )r   éÈ   ©ÚxlimÚylimc                  ó2   •— ‰                      | ¦  «         d S r   ©Úappend)ÚargsÚselecteds    €r   r`   z$test_span_selector.<locals>.onselect‡  s   ø€ ˜XŸ_š_¨TÑ2Ô2Ð2Ð2Ð2r   c                  ó2   •— ‰                      | ¦  «         d S r   r\  )r^  Úmoveds    €r   Úonmovez"test_span_selector.<locals>.onmove‰  s   ø€ ˜5Ÿ<š<¨Ñ-Ô-Ð-Ð-Ð-r   Úonmove_callbackra   rb   r   rd   re   rg   rh   )rc   rf   r±   r   )	r  ÚtwinxÚ
inset_axesrp   ÚSpanSelectorr   rr   rs   r   )r   Úorientationrc  rQ   ÚchildÚtargetr`   rb  rz   ra  r_  s            @@r   Útest_span_selectorrj  u  sY  øø€ ð ‡M‚M�&ÑÔÐØ‡H‚H�J„J€JØ�MŠM˜,˜,˜,¨X¸HˆMÑEÔE€Eà�u�+ð :ð :ˆØˆØ2Ð2Ð2Ð2Ð2ØˆØ-Ð-Ð-Ð-Ð-Øð 	/Ø(.ˆFÐ$Ñ%åÔ# F¨H°kÐLÐLÀVÐLÐLˆÝÔ"Ø  &¨*°añ	9ô 	9ß9Aº¹¼¸åÔ"Ø! 6¨:°qñ	:ô 	:ß:Bº(¹*¼*¸*ÝÔ"Ø" F¨J¸ñ	;ô 	;ß;Cº8¹:¼:¸:õ 	˜ : ,°RÐ8Ñ8Ô8Ð8Øð 	:Ý˜E J <°bÐ9Ñ9Ô9Ð9øð):ð :r   c                 óF  — t          j        t          d ¬¦  «        }t          j        | |d|¬¦  «        }t          |dd¬¦  «         |                     ¦   «          |j        dk    sJ ‚|                     ¦   «          t          |dd¬¦  «         |                     ¦   «          d S )	Nr]   rR  rÈ   rb   )r)  rc   r„   )rc   r)  rI  )	r   ro   r   rp   rf  r
   rv   rÌ   rŽ   rJ  s       r   Útest_span_selector_onselectrl  œ  s±   € åŒy�d°Ð6Ñ6Ô6€HåÔ  H¨lØ,7ð9ñ 9ô 9€Dõ �4˜z¨zÐ:Ñ:Ô:Ð:Ø×ÒÑ!Ô!Ð!ØŒ<˜:Ò%Ð%Ð%Ð%à×ÒÑÔÐÝ�4˜y¨iÐ8Ñ8Ô8Ð8Ø×ÒÑ!Ô!Ð!Ð!Ð!r   c                 ó‚  — t          j        t          d ¬¦  «        }t          j        t          d ¬¦  «        }t          j        | |d||¬¦  «        }t          |dd¬¦  «         |                     ¦   «          |                     ¦   «          |j        dk    sJ ‚|                     ¦   «          |                     ¦   «          t          |dd	¬¦  «         |r7| 	                    ¦   «          | 	                    ¦   «          |j        dk    sJ ‚d S |                     ¦   «          |                     ¦   «          |j        d
k    sJ ‚d S )Nr]   rR  )rc  rL  rb   r*  r„   ©rc   rÔ   rN  rO  )r)  r  )
r   ro   r   rp   rf  r
   rv   rÌ   rŽ   r�   )r   rL  r`   rb  rz   s        r   Ú!test_span_selector_ignore_outsidero  ¬  s[  € åŒy�d°Ð6Ñ6Ô6€HÝŒY�D¨tÐ4Ñ4Ô4€FåÔ  H¨lØ06Ø5IðKñ Kô K€Dõ �4˜z¨zÐ:Ñ:Ô:Ð:Ø×ÒÑ!Ô!Ð!Ø
×ÒÑÔÐØŒ<˜:Ò%Ð%Ð%Ð%à×ÒÑÔÐØ
×ÒÑÔÐå�4˜z¨zÐ:Ñ:Ô:Ð:Øð 	*à×"Ò"Ñ$Ô$Ð$Ø× Ò Ñ"Ô"Ð"ØŒ|˜zÒ)Ð)Ð)Ð)Ð)Ð)ð 	×#Ò#Ñ%Ô%Ð%Ø×!Ò!Ñ#Ô#Ð#ØŒ|˜zÒ)Ð)Ð)Ð)Ð)Ð)r   r˜   c                 ó  — t          j        | t          dd|¬¦  «        }t          |dd¬¦  «         |j        dk    sJ ‚t          |dd	¬¦  «         |r|j        d
k    sJ ‚n|j        dk    sJ ‚t          |dd¬¦  «         |j        dk    sJ ‚d S )NrR  T)r`   Ú	directionrƒ   r˜   r‚   rµ   r„   rI  r�   r    )r(   r  )rž   r¡   r¢   r¥   )rp   rf  r   r
   rÌ   )r   r˜   rz   s      r   Útest_span_selector_dragrr  É  sÌ   € õ Ô ­T¸\Ø,0Ø3EðGñ Gô G€Dõ �4˜x¨ZÐ8Ñ8Ô8Ð8ØŒ<˜9Ò$Ð$Ð$Ð$õ �4˜x¨XÐ6Ñ6Ô6Ð6Øð (ØŒ|˜yÒ(Ð(Ð(Ð(Ð(àŒ|˜xÒ'Ð'Ð'Ð'õ �4˜z¨zÐ:Ñ:Ô:Ð:ØŒ<˜:Ò%Ð%Ð%Ð%Ð%Ð%r   c                 óÖ  — t          j        | t          dd¬¦  «        }|j        dk    sJ ‚|j        j        dk    sJ ‚t          j        t          ¦  «        5  t          j        | t          d¬¦  «        }d d d ¦  «         n# 1 swxY w Y   d|_        |j        dk    sJ ‚|j        j        dk    sJ ‚t          j        t          ¦  «        5  d|_        d d d ¦  «         d S # 1 swxY w Y   d S )NrR  T)r`   rq  rƒ   Úinvalid_direction)r`   rq  rT  Úinvalid_string)rp   rf  r   rq  Ú_edge_handlesr@   rÚ   rÛ   rÝ   s     r   Útest_span_selector_directionrw  ã  s‘  € ÝÔ ­T¸\Ø,0ð2ñ 2ô 2€DàŒ>˜\Ò)Ð)Ð)Ð)ØÔÔ'¨<Ò7Ð7Ð7Ð7å	Œ•zÑ	"Ô	"ð Cð CÝÔ# BµØ.AðCñ Cô CˆðCð Cð Cñ Cô Cð Cð Cð Cð Cð Cð Cøøøð Cð Cð Cð Cð  €D„NØŒ>˜ZÒ'Ð'Ð'Ð'ØÔÔ'¨:Ò5Ð5Ð5Ð5å	Œ•zÑ	"Ô	"ð *ð *Ø)ˆŒð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *ð *ð *s$   ÁA?Á?BÂBÃ	CÃC"Ã%C"c           
      ó¼  — t          j        | t          ddt          dd¬¦  «        t          d¬¦  «        ¬¦  «        }t	          |d	d
¬¦  «         |j        }|                     ¦   «         t          j        dd¬¦  «        k    sJ ‚| 	                    dd¬¦  «         |                     ¦   «         t          j        dd¬¦  «        k    sJ ‚|j
        D ]6}|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚Œ7|                     dd¬¦  «         |j
        D ]6}|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚Œ7d S )NrR  Tr­   r®   r¯   r±   r²   )r`   rq  rƒ   r[   r³   r´   rµ   r„   r¶   r·   ©r*   r°   )rp   rf  r   rº   r
   r»   r¼   r½   r¾   r¿   rÀ   Ú	get_colorrÂ   rÃ   rÄ   s      r   Ú)test_span_selector_set_props_handle_propsr{  õ  s‹  € ÝÔ ­T¸\Ø,0Ý&*°SÀÐ&DÑ&DÔ&DÝ-1¸¨_©_¬_ð>ñ >ô >€Dõ
 �4˜w¨JÐ7Ñ7Ô7Ð7àÔ#€FØ×ÒÑ!Ô!¥W¤_°SÀÐ%DÑ%DÔ%DÒDÐDÐDÐDØ‡N‚N˜S¨€NÑ,Ô,Ð,Ø×ÒÑ!Ô!¥W¤_°SÀÐ%DÑ%DÔ%DÒDÐDÐDÐDàÔ'ð )ð )ˆØ×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ø×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ð(Ø×Ò ¨3ÐÑ/Ô/Ð/ØÔ'ð )ð )ˆØ×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ø×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ð(ð)ð )r   ÚselectorÚspanÚ	rectanglec                 óà  — t          | d¬¦  «        }|dk    rt          j        }d|d<   t          |d<   nt          j        } |di |¤Ž}t          |dd¬	¦  «         t          |d
d
¬	¦  «         |j        rJ ‚d|d<    |di |¤Ž}|j        sJ ‚t          |dd¬	¦  «         t          |d
d
¬	¦  «         |j        sJ ‚t          d| j	        j
        d¦  «                             ¦   «          |j        rJ ‚d S )NT)r   rƒ   r}  rR  rq  r`   r‚   rµ   r„   )rÕ   rÕ   rL  rý   Úescaper   )rº   rp   rf  r   rq   r
   rŒ   rL  r   r	  rE   rs   )r   r|  rQ   ÚSelectorrz   s        r   Útest_selector_clearr‚    s9  € å�R TÐ*Ñ*Ô*€FØ�6ÒÐÝÔ'ˆØ*ˆˆ{ÑÝ!ˆˆzÑÐåÔ,ˆàˆ8ÐÐ�fÐÐ€DÝ�4˜x¨ZÐ8Ñ8Ô8Ð8õ �4˜z¨zÐ:Ñ:Ô:Ð:ØÔ(Ð(Ð(Ð(à%)€FÐ!Ñ"Øˆ8ÐÐ�fÐÐ€DØÔ$Ð$Ð$Ð$Ý�4˜x¨ZÐ8Ñ8Ô8Ð8õ �4˜z¨zÐ:Ñ:Ô:Ð:ØÔ$Ð$Ð$Ð$åÐ ¤	Ô 0°(Ñ;Ô;×DÒDÑFÔFÐFØÔ(Ð(Ð(Ð(Ð(Ð(r   c                 óö  — |dk    rt          j        | t          ddd¬¦  «        }nt          j        | d¬¦  «        }t	          |dd¬¦  «         |j        sJ ‚|                     ¦   «         sJ ‚|dk    r|j        d	k    sJ ‚|                     ¦   «          |j        rJ ‚|                     ¦   «         rJ ‚t	          |dd
¬¦  «         |j        sJ ‚|                     ¦   «         sJ ‚|dk    r|j        dk    sJ ‚d S d S )Nr}  rR  T)r`   rq  rƒ   rL  rÈ   r‚   rµ   r„   rI  )r›   rš   )rT   r›   )	rp   rf  r   rq   r
   rŒ   Úget_visiblerÌ   r×   )r   r|  rz   s      r   Útest_selector_clear_methodr…  )  sA  € à�6ÒÐÝÔ# BµÀØ04Ø9=ð?ñ ?ô ?ˆˆõ Ô(¨¸Ð>Ñ>Ô>ˆÝ�4˜x¨ZÐ8Ñ8Ô8Ð8ØÔ$Ð$Ð$Ð$Ø×ÒÑÔÐÐÐØ�6ÒÐØŒ|˜yÒ(Ð(Ð(Ð(à‡J‚J�L„L€LØÔ(Ð(Ð(Ð(Ø×ÒÑ!Ô!Ð!Ð!Ð!õ �4˜x¨YÐ7Ñ7Ô7Ð7ØÔ$Ð$Ð$Ð$Ø×ÒÑÔÐÐÐØ�6ÒÐØŒ|˜xÒ'Ð'Ð'Ð'ð ÐØ'Ð'r   c                 ó  — t          j        | t          dd¬¦  «        }t          j        t
          ¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          ¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          ¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     d¦  «         d S )NrR  TrÈ   rÖ   r©   rÙ   rØ   )rp   rf  r   r@   rÚ   rÛ   rÜ   rÝ   s     r   Útest_span_selector_add_stater‡  C  s¤  € ÝÔ ¥D¨,Ø,0ð2ñ 2ô 2€Dõ 
Œ•zÑ	"Ô	"ð ,ð ,Ø�ŠÐ*Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,å	Œ•zÑ	"Ô	"ð !ð !Ø�Š�xÑ Ô Ð ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !å	Œ•zÑ	"Ô	"ð !ð !Ø�Š�xÑ Ô Ð ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð 	‡N‚N�6ÑÔÐÐÐs5   ·AÁAÁ AÁ=BÂB#Â&B#ÃC%Ã%C)Ã,C)c                 ó„  — g d¢}t          j        | |dd¬¦  «        }|j        D ].}|                     ¦   «         rJ ‚|                     ¦   «         rJ ‚Œ/|                     d¦  «         |                     d¦  «         |j        D ].}|                     ¦   «         sJ ‚|                     ¦   «         sJ ‚Œ/|j        |k    sJ ‚d S )N)r(   r‰   r›   rR  F©rR   T)rp   ÚToolLineHandlesrA  Úget_animatedr„  Úset_visibleÚset_animatedÚ	positions)r   rŽ  Útool_line_handlerÅ   s       r   Útest_tool_line_handler�  Q  sú   € Ø��€IÝÔ.¨r°9¸lØ7<ð>ñ >ô >Ðð #Ô*ð (ð (ˆØ×&Ò&Ñ(Ô(Ð(Ð(Ð(Ø×%Ò%Ñ'Ô'Ð'Ð'Ð'Ð'à× Ò  Ñ&Ô&Ð&Ø×!Ò! $Ñ'Ô'Ð'à"Ô*ð $ð $ˆØ×"Ò"Ñ$Ô$Ð$Ð$Ð$Ø×!Ò!Ñ#Ô#Ð#Ð#Ð#Ð#àÔ%¨Ò2Ð2Ð2Ð2Ð2Ð2r   rq  )rR  rT  c                 óÐ  — t          j        dd¦  «        \  }}|                     ddgddg¦  «         |j                             ¦   «          |                     ¦   «         }|                     ¦   «         }t          j        |t          | d¬¦  «        }|                     ¦   «         |k    sJ ‚|                     ¦   «         |k    sJ ‚| dk    r|n|}|j
        j        t          |¦  «        k    sJ ‚d}d	}|}	t          |||¬
¦  «         |                     ¦   «         |k    sJ ‚|                     ¦   «         |k    sJ ‚| dk    rdnd}
||
         |	|
         g}|j
        j        |k    sJ ‚d S )Nr   rT   r(   r‰   TrÈ   rR  )r   g      '@)r€   é   r„   r   )rB   rC   ÚplotrE   rF   Ú
get_xboundÚ
get_yboundrp   rf  Úprintrv  rŽ  Úlistr
   )rq  rJ   r   Úx_boundÚy_boundrz   ÚboundÚ
press_dataÚ	move_dataÚrelease_dataÚindexÚhandle_positionss               r   Útest_span_selector_boundr   d  sv  € åŒl˜1˜aÑ Ô �G€CˆØ‡G‚GˆR�ˆH�r˜2�hÑÔÐØ„J‡O‚OÑÔÐØ�mŠm‰oŒo€GØ�mŠm‰oŒo€GåÔ ¥E¨9À$ÐGÑGÔG€DØ�=Š=‰?Œ?˜gÒ%Ð%Ð%Ð%Ø�=Š=‰?Œ?˜gÒ%Ð%Ð%Ð%à  LÒ0Ð0ˆGˆG°g€EØÔÔ'­4°©;¬;Ò6Ð6Ð6Ð6à€JØ€IØ€LÝ�4˜z¨yÐ9Ñ9Ô9Ð9à�=Š=‰?Œ?˜gÒ%Ð%Ð%Ð%Ø�=Š=‰?Œ?˜gÒ%Ð%Ð%Ð%à˜lÒ*Ð*ˆAˆA°€EØ" 5Ô)¨<¸Ô+>Ð?ÐØÔÔ'Ð+;Ò;Ð;Ð;Ð;Ð;Ð;r   ÚQtAgg)Úskip_on_importerrorc            	      óÞ  ‡‡‡— t          j        ddt           j        z  d¦  «        Št          j        ‰¦  «        Št	          j        ¦   «         \  } }|                     ‰‰d¬¦  «        \  }|                     g d¬¦  «        \  Št	          j        d¦  «         |                     |¦  «         | j	         
                    | j        ¦  «         ˆˆˆfd„}t          j        ||d|ddd¬	¦  «        }t          j        d
|dd¦  «                             ¦   «          t          j        d|dd¦  «                             ¦   «          |                     ¦   «         |‰fk    sJ ‚|j        du sJ ‚‰j        sJ ‚t'          ‰                     ¦   «         d¦  «         |                     ¦   «          ‰j        du sJ ‚t          j        d
|dd¦  «                             ¦   «          t          j        d|dd¦  «                             ¦   «          |j        du sJ ‚‰j        sJ ‚t'          ‰                     ¦   «         d¦  «         t          j        d|dd¦  «                             ¦   «          ‰j        du sJ ‚dS )zACheck that the animated artists changed in callbacks are updated.r   r   rc   T)Úanimatedçš™™™™™¹?c                 óÆ   •— t          j        ‰| |f¦  «        \  }}‰||…                              ¦   «         }‰                     ‰t          j        ‰|¦  «        ¦  «         d S r   )r  ÚsearchsortedÚmeanÚset_dataÚ	full_like)ÚvminÚvmaxÚindminÚindmaxÚvÚln2ÚvaluesÚxs        €€€r   r¨  z:test_span_selector_animated_artists_callback.<locals>.mean‘  s\   ø€ åœ¨¨T°4¨LÑ9Ô9‰ˆ�Ø�6˜&�=Ô!×&Ò&Ñ(Ô(ˆØ�Š�Q�œ Q¨Ñ*Ô*Ñ+Ô+Ð+Ð+Ð+r   rR  )rq  rc  rƒ   r˜   rR   ra   )r   r   r   rd   )r   r   FgˆSG-�î?)é   r   r   gÈ„¦C(î¿rg   N)r  ÚlinspaceÚpiÚsinrB   rC   r“  ÚpauseÚdraw_artistrE   ÚblitÚbboxrp   rf  r   rr   rs   Ú_get_animated_artistsÚstaler   Ú	get_ydataÚupdate)rJ   r   Úlnr¨  r}  r°  r±  r²  s        @@@r   Ú,test_span_selector_animated_artists_callbackrÀ  €  su  øøø€ õ 	Œ�A�q�2œ5‘y #Ñ&Ô&€AÝŒV�A‰YŒY€FåŒl‰nŒn�G€CˆØ
�'Š'�!�V dˆ'Ñ
+Ô
+�C€BØ�7Š7�2 ˆ7Ñ%Ô%�D€Cõ
 „Iˆc�N„N€NØ‡N‚N�2ÑÔÐØ„J‡O‚O�C”HÑÔÐð,ð ,ð ,ð ,ð ,ð ,ð ,õ Ô  D°LØ04Ø,0Ø37Ø(,ð	.ñ .ô .€Dõ ÔÐ3°R¸ÀÑCÔC×LÒLÑNÔNÐNÝÔÐ4°b¸&À!ÑDÔD×MÒMÑOÔOÐOØ×%Ò%Ñ'Ô'¨B°¨9Ò4Ð4Ð4Ð4ØŒ8�uÐÐÐÐØŒ9ÐÐˆ9Ý�C—M’M‘O”OÐ%7Ñ8Ô8Ð8Ø‡K‚K�M„M€MØŒ9˜ÐÐÐÐõ ÔÐ3°R¸ÀÑCÔC×LÒLÑNÔNÐNÝÔÐ4°b¸&À!ÑDÔD×MÒMÑOÔOÐOØŒ8�uÐÐÐÐØŒ9ÐÐˆ9Ý�C—M’M‘O”OÐ%8Ñ9Ô9Ð9ÝÔÐ5°r¸6À1ÑEÔE×NÒNÑPÔPÐPØŒ9˜ÐÐÐÐÐÐr   c                 ó  — d„ }t          j        | |d¬¦  «        }|j        }t          j        ddd¦  «        }t          j        g d¢¦  «        }t          j        g d¢¦  «        } |||¦  «        }t          ||¦  «         d S )	Nc                  ó   — d S r   r   )r^  s    r   r`   z4test_snapping_values_span_selector.<locals>.onselect´  s   € Øˆr   rR  )rq  r   r   r€   )
gš™™™™™¹¿r¥  r®   r±   ç333333ã?çffffffæ?çÍÌÌÌÌÌì?g
×£p=
@ç      @ç      @)
ç        rÈ  rÈ  r±   r±   r±   ç      ð?rÆ  rÆ  rÆ  )rp   rf  Ú_snapr  r´  r  r   )r   r`   rz   Úsnap_functionÚsnap_valuesr±  Úexpects          r   Ú"test_snapping_values_span_selectorrÎ  ³  s—   € ðð ð õ Ô  H¸ÐFÑFÔF€DØ”J€Må”+˜a  BÑ'Ô'€KÝŒXÐJÐJÐJÑKÔK€FÝŒXÐJÐJÐJÑKÔK€FØˆ]˜6 ;Ñ/Ô/€FÝ�F˜FÑ#Ô#Ð#Ð#Ð#r   c                 óà   ‡ — ˆ fd„}t          j        d¦  «        dz  }t          j        ‰ |d|¬¦  «        }d|_        |j        dk    sJ ‚d |_        |j        �J ‚d|_        |j        dk    sJ ‚d S )Nc                 ó   •— d‰_         d S )NT)Ú_got_onselect)r«  r¬  r   s     €r   r`   z)test_span_selector_snap.<locals>.onselectÂ  s   ø€ ØˆÔÐÐr   r›   r³  rR  )rq  rÌ  )é   r¡   )r'   é$   )r  Úarangerp   rf  rÌ   rÌ  )r   r`   rÌ  rz   s   `   r   Útest_span_selector_snaprÕ  Á  s¡   ø€ ð ð  ð  ð  ð  õ ”)˜B‘-”- !Ñ#€KåÔ  H¸Ø,7ð9ñ 9ô 9€Dà€D„LØŒ<˜8Ò#Ð#Ð#Ð#à€DÔØÔÐ#Ð#Ð#Ø€D„LØŒ<˜8Ò#Ð#Ð#Ð#Ð#Ð#r   c                 ó¸   — t          j        | d„ dd¬¦  «        }d|_        |j        dk    sJ ‚|j        sJ ‚d}d}t	          |||¬¦  «         |j        dk    sJ ‚d S )	Nc                 ó   — d S r   r   )Úar­   s     r   ú<lambda>z,test_span_selector_extents.<locals>.<lambda>Ô  s   € ˜€ r   rR  T)rL  )r   rT   )é   é   )r(   rÛ  r„   )rp   rf  rÌ   rŒ   r
   )r   rz   r›  r�  s       r   Útest_span_selector_extentsrÜ  Ò  s‹   € ÝÔØ
ÐÐ˜|À$ð
ñ 
ô 
€Dð €D„LàŒ<˜7Ò"Ð"Ð"Ð"ØÔ$Ð$Ð$Ð$ð €JØ€LÝ�4˜z¨|Ð<Ñ<Ô<Ð<àŒ<˜7Ò"Ð"Ð"Ð"Ð"Ð"r   r%   ©r*   )rR   r[   c                 óˆ  — t          j        t          d ¬¦  «        }t          j        | fd|i|¤Ž}t          j        d| dd¦  «                             ¦   «          t          j        d| dd¦  «                             ¦   «          t          j        d| d	d¦  «                             ¦   «          |                     g d
¢¦  «         d S )Nr]   r`   ra   rb   r   rd   r*  rg   rN  )rb   r*  rN  )	r   ro   r   rp   ÚLassoSelectorr   rr   rs   Úassert_called_once_with)r   rQ   r`   rz   s       r   Útest_lasso_selectorrá  ã  sÂ   € õ Œy�d°Ð6Ñ6Ô6€HåÔ  ÐAÐA¨hÐA¸&ÐAÐA€DÝÔÐ3°R¸ÀQÑGÔG×PÒPÑRÔRÐRÝÔÐ4°b¸*ÀaÑHÔH×QÒQÑSÔSÐSÝÔÐ5°r¸:ÀqÑIÔI×RÒRÑTÔTÐTà×$Ò$Ð%IÐ%IÐ%IÑJÔJÐJÐJÐJr   c                 óÐ  — t          j        t          d ¬¦  «        }t          j        | |t          dd¬¦  «        ¬¦  «        }|j        }t          j        | 	                    ¦   «         d¦  «        sJ ‚| 
                    ¦   «         dk    sJ ‚|                     dd¬¦  «         t          j        | 	                    ¦   «         d¦  «        sJ ‚| 
                    ¦   «         dk    sJ ‚d S )Nr]   r­   r®   ry  )r`   r[   r¶   r·   )r   ro   r   rp   rß  rº   r»   r½   r?  rz  rÂ   r¿   )r   r`   rz   rÅ   s       r   Útest_lasso_selector_set_propsrã  ó  sî   € ÝŒy�d°Ð6Ñ6Ô6€HåÔ  ¨hÝ'+°#¸SÐ'AÑ'AÔ'AðCñ Cô C€Dð Ô#€FÝÔ˜f×.Ò.Ñ0Ô0°#Ñ6Ô6Ð6Ð6Ð6Ø×ÒÑÔ Ò$Ð$Ð$Ð$Ø‡N‚N˜ C€NÑ(Ô(Ð(ÝÔ˜f×.Ò.Ñ0Ô0°#Ñ6Ô6Ð6Ð6Ð6Ø×ÒÑÔ Ò$Ð$Ð$Ð$Ð$Ð$r   c                 óX  — t          j        t          d ¬¦  «        }t          j        | d|¦  «        }|j        }t          j        |                     ¦   «         d¦  «        sJ ‚| 	                    ¦   «         dk    sJ ‚| 
                    ¦   «         dk    sJ ‚t          j        | d|t          dddd¬	¦  «        ¬
¦  «        }|j        }t          j        |                     ¦   «         d¦  «        sJ ‚|                     ¦   «         dk    sJ ‚| 
                    ¦   «         dk    sJ ‚| 	                    ¦   «         dk    sJ ‚|                     d¦  «         |                     d¦  «         t          j        |                     ¦   «         d¦  «        sJ ‚|                     ¦   «         dk    sJ ‚d S )Nr]   rb   r¸   ú-r   Údarkbluer®   r   )Ú	linestyler*   r°   ÚlwrZ   r¶   r·   )r   ro   r   rp   ÚLassork   r½   r?  rz  Úget_linestyleÚget_lwrº   rÂ   Ú	set_colorÚ	set_alpha)r   r`   rz   rk   s       r   Útest_lasso_set_propsrî    s¤  € ÝŒy�d°Ð6Ñ6Ô6€HÝŒ=˜˜Z¨Ñ2Ô2€DØŒ9€DÝÔ˜dŸnšnÑ.Ô.°Ñ8Ô8Ð8Ð8Ð8Ø×ÒÑÔ 3Ò&Ð&Ð&Ð&Ø�;Š;‰=Œ=˜AÒÐÐÐÝŒ=˜˜Z¨½Ø˜Z¨s°qð::ñ ::ô ::ð ;ñ ;ô ;€Dð Œ9€DÝÔ˜dŸnšnÑ.Ô.°
Ñ;Ô;Ð;Ð;Ð;Ø�>Š>ÑÔ˜sÒ"Ð"Ð"Ð"Ø�;Š;‰=Œ=˜AÒÐÐÐØ×ÒÑÔ 3Ò&Ð&Ð&Ð&Ø‡N‚N�3ÑÔÐØ‡N‚N�3ÑÔÐÝÔ˜dŸnšnÑ.Ô.°Ñ4Ô4Ð4Ð4Ð4Ø�>Š>ÑÔ˜sÒ"Ð"Ð"Ð"Ð"Ð"r   c                 ób  — d}t          j        | |d¦  «        }|                     ¦   «         g d¢k    sJ ‚|                     d¦  «         |                     ¦   «         g d¢k    sJ ‚|                     ¦   «         dgk    sJ ‚|                     ¦   «          |                     ¦   «         g d¢k    sJ ‚|                     ¦   «         g k    sJ ‚dt          |¦  «        t          |¦  «        dz   fD ]I}t          j        t          ¦  «        5  |                     |¬	¦  «         d d d ¦  «         n# 1 swxY w Y   ŒJd
D ]J}t          j        t          ¦  «        5  |                     d|¬¦  «         d d d ¦  «         n# 1 swxY w Y   ŒK|                     d„ ¦  «        }|                     |¦  «         d S )N)rØ  r­   Úc)TFTr   )FFTrð  )FFFéÿÿÿÿr   )rž  )Úinvalidrñ  r   )r  c                  ó   — d S r   r   r   r   r   rÙ  z#test_CheckButtons.<locals>.<lambda>)  s   €  4€ r   )rp   r   Ú
get_statusÚ
set_activeÚget_checked_labelsr×   r  r@   rÚ   rÛ   r"  Ú
on_clickedÚ
disconnect)r   ÚlabelsÚcheckÚinvalid_indexÚinvalid_valueÚcids         r   Útest_CheckButtonsrþ    sI  € Ø€FÝÔ   VÐ-@ÑAÔA€EØ×ÒÑÔÐ!4Ð!4Ð!4Ò4Ð4Ð4Ð4Ø	×Ò�QÑÔÐØ×ÒÑÔÐ!5Ð!5Ð!5Ò5Ð5Ð5Ð5Ø×#Ò#Ñ%Ô%¨#¨Ò.Ð.Ð.Ð.Ø	‡K‚K�M„M€MØ×ÒÑÔÐ!6Ð!6Ð!6Ò6Ð6Ð6Ð6Ø×#Ò#Ñ%Ô%¨Ò+Ð+Ð+Ð+à�c &™kœk­3¨v©;¬;°q©=Ð9ð 2ð 2ˆÝŒ]�:Ñ&Ô&ð 	2ð 	2Ø×Ò =ÐÑ1Ô1Ð1ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2øð )ð 5ð 5ˆÝŒ]�9Ñ%Ô%ð 	5ð 	5Ø×Ò˜Q mÐÑ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5øð ×
Ò
˜<˜<Ñ
(Ô
(€CØ	×Ò�SÑÔÐÐÐs$   ÄD+Ä+D/	Ä2D/	ÅE8Å8E<	Å?E<	Útoolbar)rl   Útoolbar2Útoolmanagerc                 óÜ  — t           j                             d|¦  «         t          j        t
          d ¬¦  «        }t          j        t
          d ¬¦  «        }t          j        | d¦  «        }|                     |¦  «         | 	                    |¦  «         |j
        dk    sJ ‚t          j        d| dd¦  «                             ¦   «          |                     d¦  «         |j
        dk    sJ ‚|j        dk    sJ ‚|                     ¦   «          |                     ¦   «          |j        dk    sJ ‚t          j        d| dd¦  «                             ¦   «          t%          d	| j        j        d
¦  «                             ¦   «          t%          d	| j        j        d¦  «                             ¦   «          |j        dk    sJ ‚t+          d| j        j        ¦  «                             ¦   «          d S )Nrÿ  r]   Ú ra   ©r±   r±   r   zx**2r   rý   ú+Ú5rË   Úresize_event)rB   ÚrcParamsÚ_setr   ro   r   rp   ÚTextBoxÚ	on_submitÚon_text_changeÚtextr   rr   rs   Úset_valÚ
call_countÚbegin_typingÚstop_typingr   r	  rE   r   )r   rÿ  Úsubmit_eventÚtext_change_eventrz   s        r   Útest_TextBoxr  -  sÈ  € õ „L×Ò�i Ñ)Ô)Ð)å”9¥$°TÐ:Ñ:Ô:€LÝœ	¥t¸$Ð?Ñ?Ô?ÐÝŒ?˜2˜rÑ"Ô"€DØ‡N‚N�<Ñ Ô Ð Ø×ÒÐ)Ñ*Ô*Ð*àŒ9˜Š?ˆ?ˆ?ˆ?åÔÐ3°R¸À1ÑEÔE×NÒNÑPÔPÐPà‡L‚L�ÑÔÐàŒ9˜ÒÐÐÐØÔ'¨1Ò,Ð,Ð,Ð,à×ÒÑÔÐØ×ÒÑÔÐàÔ" aÒ'Ð'Ð'Ð'åÔÐ3°R¸À1ÑEÔE×NÒNÑPÔPÐPÝÐ ¤	Ô 0°#Ñ6Ô6×?Ò?ÑAÔAÐAÝÐ ¤	Ô 0°#Ñ6Ô6×?Ò?ÑAÔAÐAàÔ'¨1Ò,Ð,Ð,Ð,å� ¤	Ô 0Ñ1Ô1×:Ò:Ñ<Ô<Ð<Ð<Ð<r   c                 óê   — t          j        | d¦  «        }|                     d¦  «         |j        dk    sJ ‚|j        dk    sJ ‚|                     ¦   «          |j        dk    sJ ‚|j        dk    sJ ‚d S )N©úRadio 1úRadio 2zRadio 3r   r  r  r   )rp   r   rõ  Úvalue_selectedÚindex_selectedr×   )r   Úradios     r   Útest_RadioButtonsr  O  sŒ   € ÝÔ  Ð%FÑGÔG€EØ	×Ò�QÑÔÐØÔ 9Ò,Ð,Ð,Ð,ØÔ 1Ò$Ð$Ð$Ð$Ø	‡K‚K�M„M€MØÔ 9Ò,Ð,Ð,Ð,ØÔ 1Ò$Ð$Ð$Ð$Ð$Ð$r   zcheck_radio_buttons.pngÚmpl20)ÚstyleÚremove_textc            
      ó  — t          ¦   «         } |                      d¬¦  «        }|                     d¬¦  «         |                     d¦  «        }t	          j        |d¦  «        }|                     d¦  «        }t	          j        |dd	¦  «        }|                     d
¦  «        }t	          j        |dg d¢g d¢dœg d¢g d¢dœ¬¦  «        }|                     d¦  «        }t	          j        |dd	g d¢g d¢dœg d¢g d¢dœdg d¢i¬¦  «        }	d S )NF)Úrootr·   )Úleft)çš™™™™™©?rÄ  r®   ç333333Ã?r  )r#  r±   r®   r$  )zCheck 1zCheck 2zCheck 3)FTT)r#  r·   r®   r$  )é   rÚ  r'   )r%   ÚgreenÚblue)r+   r*   )r,   Ú	palegreenÚ	lightbluer.   r1   )r#  r¥  r®   r$  r*   ©r2   r7   r8   )r   Ú
get_figureÚsubplots_adjustÚadd_axesrp   r   r   )
r   rJ   Úrax1Úrb1Úrax2Úcb1Úrax3Úrb3Úrax4Úcb4s
             r   Útest_check_radio_buttons_imager6  Y  sq  € å	‰Œ€BØ
�-Š-˜Uˆ-Ñ
#Ô
#€CØ×Ò˜SÐÑ!Ô!Ð!à�<Š<Ð.Ñ/Ô/€DÝ
Ô
˜tÐ%FÑ
GÔ
G€Cà�<Š<Ð.Ñ/Ô/€DÝ
Ô
˜tÐ%FØ2ñ4ô 4€Cð �<Š<Ð.Ñ/Ô/€DÝ
Ô
ØÐ/Ø!,  Ø6Ð6Ð6ð8ð 8à":Ð":Ð":Ø"IÐ"IÐ"IðKð Kð	Lñ Lô L€Cð �<Š<Ð.Ñ/Ô/€DÝ
Ô
ØÐ/Ð1DØ!,  Ø6Ð6Ð6ð8ð 8à":Ð":Ð":Ø"IÐ"IÐ"IðKð KàÐ6Ð6Ð6Ð7ð9ñ 9ô 9€C€C€Cr   c                 óx  — t          j        |                      ¦   «         ddg¦  «         |                     g g ¬¦  «        }|                     ddgddg|j        t          j        d         dz  dz  d	d
g¬¦  «         |                     ddd|j        d¬¦  «         |                     ddd|j        d¬¦  «         d S )NÚteaÚcoffee©ÚxticksÚyticksr$  çUUUUUUå?çUUUUUUÕ?ú	font.sizer   ÚC0rl   )r‹   Úsrð  ç      Ð?r©   ©r‹   Úva)	rp   r   rC   Úadd_subplotÚscatterÚ	transAxesrB   r  r  ©Úfig_testÚfig_refr   s      r   Útest_radio_buttonsrK  x  sÈ   € åÔ˜×*Ò*Ñ,Ô,¨u°hÐ.?Ñ@Ô@Ð@Ø	×	Ò	 B¨rÐ	Ñ	2Ô	2€BØ‡J‚J��Sˆz˜C ˜:°´Ý”,˜{Ô+¨aÑ/°AÑ5¸$À¸ð ñ Iô Ið Ià‡G‚GˆC��e r¤|¸€GÑAÔAÐAØ‡G‚GˆC��h¨"¬,¸8€GÑDÔDÐDÐDÐDr   c                 ó*  — dgdgdœ}ddddœ}t          j        |                     ¦   «         dd	g||¬
¦  «         t          j        |                      ¦   «         dd	g¦  «        }|                     |¦  «         |                     i |¥ddi¥¦  «         d S )Nr%   é   r)   r&  r'  r   ©r0   r/   Ú	linewidthr8  r9  r1   rA  ç      b@)rp   r   rC   Úset_label_propsÚset_radio_props)rI  rJ  r2   r3   Úcbs        r   Útest_radio_buttons_propsrT  ‚  s¿   € à"˜G°"°Ð6Ð6€KØ '°fÈ1ÐMÐM€KåÔ˜×)Ò)Ñ+Ô+¨e°XÐ->Ø%0¸kðKñ Kô Kð Kõ 
Ô	˜h×/Ò/Ñ1Ô1°E¸8Ð3DÑ	EÔ	E€BØ×Ò�{Ñ#Ô#Ð#ð ×ÒÐ8˜+Ð8 s¨KÐ8Ð8Ñ9Ô9Ð9Ð9Ð9r   zcheck_radio_grid_buttons.pngc                  ó>  — t          j        ¦   «         } t          j        |                      d¦  «        g d¢dd¬¦  «        }t          j        |                      d¦  «        g d¢dg d	¢¬
¦  «        }t          j        |                      d¦  «        g d¢dd¬¦  «        }d S )N)r¥  r#  gÍÌÌÌÌÌä?r#  )r8  r9  zchocolate milkÚwaterÚsodaÚcokerR  r³  )ÚlayoutÚactive)r¥  r$  rB  g433333Ã?)ÚChickenÚSaladÚRiceÚSushiÚPizzaÚFries)rË   r   )TTFFFT)rY  r4   )r¥  gffffffÖ?r®   r®   )zTrinity CreamÚCakez	Ice CreamÚ	MuhallebirT  rË   )rB   r	  rp   r   r-  r   )rJ   Úrb_horizontalÚcb_gridÚrb_verticals       r   Útest_radio_grid_buttonsrf  ‘  s½   € å
Œ*‰,Œ,€CÝÔ(Ø�ŠÐ,Ñ-Ô-ØDÐDÐDØØð	ñ ô €Mõ Ô"Ø�ŠÐ.Ñ/Ô/Ø?Ð?Ð?ØØ7Ð7Ð7ð	ñ ô €Gõ Ô&Ø�ŠÐ-Ñ.Ô.Ø;Ð;Ð;ØØð	ñ ô €K€K€Kr   c                 ó  — t          j        t          d¬¦  «        5  t          j        | ddgdddi¬¦  «        }d d d ¦  «         n# 1 swxY w Y   t          j        |j                             ¦   «         dd	g¦  «        sJ ‚d S )
Nz"Both the \*activecolor\* parameterr  r8  r9  r%   r0   r&  )Úactivecolorr3   rl   )	r@   ÚwarnsÚUserWarningrp   r   r½   r?  Ú_buttonsr¼   )r   Úrbs     r   Ú!test_radio_button_active_conflictrm  ¨  sè   € Ý	Œ•kØAð
Cñ 
Cô 
Cð Fð FåÔ! " u¨hÐ&7ÀUØ/:¸GÐ.DðFñ Fô FˆðFð Fð Fñ Fô Fð Fð Fð Fð Fð Fð Føøøð Fð Fð Fð Fõ
 Ô˜bœk×7Ò7Ñ9Ô9¸GÀVÐ;LÑMÔMÐMÐMÐMÐMÐMs   œAÁA	ÁA	c                 óÀ   — t          j        |                     ¦   «         ddgd¬¦  «         t          j        |                      ¦   «         ddgd¬¦  «        }d|_        d S )Nr8  r9  r&  )rh  r%   )rp   r   rC   rh  )rI  rJ  rS  s      r   Ú%test_radio_buttons_activecolor_changero  ±  sp   € åÔ˜×)Ò)Ñ+Ô+¨e°XÐ->Ø%,ð.ñ .ô .ð .õ 
Ô	˜h×/Ò/Ñ1Ô1°E¸8Ð3DØ*/ð
1ñ 
1ô 
1€Bà€B„N€N€Nr   c           	      óø  — t          j        |                      ¦   «         ddgddg¦  «         |                     g g ¬¦  «        }|                     ddgddgd|j        t          j        d	         d
z  d
z  ddg¬¦  «         |                     ddgddgd|j        t          j        d	         d
z  d
z  ddg¬¦  «         |                     ddd|j        d¬¦  «         |                     ddd|j        d¬¦  «         d S )Nr8  r9  Tr:  r$  r=  r>  rA  r?  r   rl   )Úmarkerr‹   rA  rð  r²  ÚkrB  r©   rC  )	rp   r   rC   rE  rF  rG  rB   r  r  rH  s      r   Útest_check_buttonsrs  ¼  s  € åÔ˜×*Ò*Ñ,Ô,¨u°hÐ.?À$ÈÀÑNÔNÐNØ	×	Ò	 B¨rÐ	Ñ	2Ô	2€BØ‡J‚J��Sˆz˜C ˜:¨c¸R¼\Ý”,˜{Ô+¨aÑ/°AÑ5¸&À&Ð9Ið ñ Kô Kð Kà‡J‚J��Sˆz˜C ˜:¨c¸R¼\Ý”,˜{Ô+¨aÑ/°AÑ5¸#¸s¸ð ñ Eô Eð Eà‡G‚GˆC��e r¤|¸€GÑAÔAÐAØ‡G‚GˆC��h¨"¬,¸8€GÑDÔDÐDÐDÐDr   c                 ó¨  — dgdgdœ}ddddœ}dddœ}t          j        |                     ¦   «         d	d
gddg|||¬¦  «         t          j        |                      ¦   «         d	d
gddg¦  «        }|                     |¦  «         |                     i |¥ddi¥¦  «         |                     d¦  «        |d<   |                     i |¥ddi¥¦  «         d S )Nr%   rM  r)   r&  r'  r   rN  )r0   rO  r8  r9  Tr*  rA  rP  r0   r/   )rp   r   rC   rQ  Úset_frame_propsÚpopÚset_check_props)rI  rJ  r2   r7   r8   rS  s         r   Útest_check_button_propsrx  È  s  € à"˜G°"°Ð6Ð6€KØ '°fÈ1ÐMÐM€KØ %°AÐ6Ð6€KåÔ˜×)Ò)Ñ+Ô+¨e°XÐ->ÀÀtÀØ%0¸kØ%0ð2ñ 2ô 2ð 2õ 
Ô	˜h×/Ò/Ñ1Ô1°E¸8Ð3DØ# T˜lñ
,ô 
,€Bà×Ò�{Ñ#Ô#Ð#ð ×ÒÐ8˜+Ð8 s¨KÐ8Ð8Ñ9Ô9Ð9ð  +Ÿš¨{Ñ;Ô;€K�ÑØ×ÒÐ8˜+Ð8 s¨KÐ8Ð8Ñ9Ô9Ð9Ð9Ð9r   Úwidgetc           	      ó~  — t          j        t          d¬¦  «        } || dg¦  «        }|                     |¦  «         t	          j        d| | j                             ¦   «                              | j	                             d¦  «        ¦  «        d¦  «         
                    ¦   «          |                     ¦   «          dS )zDTests what https://github.com/matplotlib/matplotlib/pull/31031 fixedNr]   zTest Buttonra   )r$  r±   r   )r   ro   r   r÷  r   rr   rŠ   Úinvertedr‹   rG  rs   rv   )r   ry  r÷  rS   s       r   Útest__buttons_callbacksr|  ß  s·   € õ ”¥°4Ð8Ñ8Ô8€JØˆV�B˜˜Ñ(Ô(€FØ
×Ò�jÑ!Ô!Ð!ÝÔØØ
Ø
Œ×ÒÑÔ×)Ò)¨"¬,×*@Ò*@àñ+
ô +
ñ 	ô 	ð 	
ñô ÷ ‚h�j„j€jØ×!Ò!Ñ#Ô#Ð#Ð#Ð#r   c                  ó\  — t          j        ¦   «         \  } }t          j        t          ¦  «        5  t          j        |dddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          j        |dddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr  rÈ  ç      8@rÉ   )r   ÚlabelÚvalminÚvalmaxÚ	slidermin)r   r  r€  r�  Ú	slidermax)rB   rC   r@   rÚ   rÛ   rp   ÚSliderr$  s     r   Ú'test_slider_slidermin_slidermax_invalidr…  ñ  s4  € ÝŒl‰nŒn�G€Cˆå	Œ•zÑ	"Ô	"ð 'ð 'ÝŒ˜" B¨s¸4Ø!%ð	'ñ 	'ô 	'ð 	'ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'õ 
Œ•zÑ	"Ô	"ð 'ð 'ÝŒ˜" B¨s¸4Ø!%ð	'ñ 	'ô 	'ð 	'ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð 'ð 's#   °AÁAÁAÁ:B!Â!B%Â(B%c                  ó  — t          j        ¦   «         \  } }t          j        |dddd¬¦  «        }t          j        |dddd|¬¦  «        }|j        |j        k    sJ ‚t          j        |dddd|¬	¦  «        }|j        |j        k    sJ ‚d S )
Nr  rÈ  r~  rÆ  ©r   r  r€  r�  ÚvalinitrÉ  )r   r  r€  r�  rˆ  r‚  rÉ   )r   r  r€  r�  rˆ  rƒ  ©rB   rC   rp   r„  Úval)rJ   r   Úslider_Úsliders       r   Útest_slider_slidermin_slidermaxr�  ü  sª   € ÝŒl‰nŒn�G€CˆÝŒn ¨"°SÀØ%(ð*ñ *ô *€Gõ Œ^˜r¨°CÀØ$'°7ð<ñ <ô <€FàŒ:˜œÒ$Ð$Ð$Ð$åŒ^˜r¨°CÀØ$(°Gð=ñ =ô =€FàŒ:˜œÒ$Ð$Ð$Ð$Ð$Ð$r   c                  óÞ   — t          j        ¦   «         \  } }t          j        |dddd¬¦  «        }|j        |j        k    sJ ‚t          j        |dddd¬¦  «        }|j        |j        k    sJ ‚d S )Nr  rÈ  r~  g      $Àr‡  g      9@)rB   rC   rp   r„  rŠ  r€  r�  ©rJ   r   rŒ  s      r   Útest_slider_valmin_valmaxr�  
  sƒ   € ÝŒl‰nŒn�G€CˆÝŒ^˜r¨°CÀØ$)ð+ñ +ô +€FàŒ:˜œÒ&Ð&Ð&Ð&åŒ^˜r¨°CÀØ$(ð*ñ *ô *€FàŒ:˜œÒ&Ð&Ð&Ð&Ð&Ð&r   c            	      óÒ   — t          j        ¦   «         \  } }t          j        |ddddd¬¦  «        }|j        dk    sJ ‚t          j        |ddddg d¢¬¦  «        }|j        d	k    sJ ‚d S )
Nr  rÈ  r~  gÍÌÌÌÌÌ&@r   )r   r  r€  r�  rˆ  Úvalstepr€   )r   r   rÇ  g33333³3@rÇ  r‰  r�  s      r   Útest_slider_valstep_snappingr“    s�   € ÝŒl‰nŒn�G€CˆÝŒ^˜r¨°CÀØ$(°!ð5ñ 5ô 5€FàŒ:˜ÒÐÐÐåŒ^˜r¨°CÀØ$(Ð2CÐ2CÐ2CðEñ Eô E€FàŒ:˜ÒÐÐÐÐÐr   c                  ó¶  — t          j        ¦   «         \  } }t          j        |ddddd¬¦  «        }|                     d¦  «         |j        dk    sJ ‚|j                             ¦   «                              |j	         
                    ¦   «         ¦  «        }t          |j        g d¢¦  «         t          j        ¦   «         \  } }t          j        |ddddd	¬¦  «        }|                     d¦  «         |j        dk    sJ ‚|j                             ¦   «                              |j	         
                    ¦   «         ¦  «        }t          |j        g d
¢¦  «         d S )Nr  r   rM  rÚ  rR  )r   r  r€  r�  rˆ  rg  rT   )r   rB  ç«ªªªªªÚ?r±   rT  )rB  r   r±   r•  )rB   rC   rp   r„  r  rŠ  ÚpolyÚget_extentsÚtransformedrG  r{  r   Úbounds)rJ   r   rŒ  Úboxs       r   Útest_slider_horizontal_verticalr›     sL  € ÝŒl‰nŒn�G€CˆÝŒ^˜r¨°A¸bØ$&°LðBñ Bô B€Fà
‡N‚N�2ÑÔÐØŒ:˜ÒÐÐÐà
Œ+×
!Ò
!Ñ
#Ô
#×
/Ò
/°´×0EÒ0EÑ0GÔ0GÑ
HÔ
H€CÝ�C”JÐ 3Ð 3Ð 3Ñ4Ô4Ð4åŒl‰nŒn�G€CˆÝŒ^˜r¨°A¸bØ$&°Jð@ñ @ô @€Fà
‡N‚N�2ÑÔÐØŒ:˜ÒÐÐÐà
Œ+×
!Ò
!Ñ
#Ô
#×
/Ò
/°´×0EÒ0EÑ0GÔ0GÑ
HÔ
H€CÝ�C”JÐ 3Ð 3Ð 3Ñ4Ô4Ð4Ð4Ð4r   c                  óÐ   — t          j        ¦   «         \  } }t          j        |dddd¬¦  «        }|                     d¦  «         |                     ¦   «          |j        dk    sJ ‚d S )Nr  r   r   r±   r‡  ç      è?)rB   rC   rp   r„  r  ÚresetrŠ  r�  s      r   Útest_slider_resetrŸ  4  sc   € ÝŒl‰nŒn�G€CˆÝŒ^˜r¨°A¸aÈÐLÑLÔL€FØ
‡N‚N�4ÑÔÐØ
‡L‚L�N„N€NØŒ:˜ÒÐÐÐÐÐr   rg  c           	      óÐ  ‡ — ‰ dk    rg d¢}ng d¢}t          j        ¦   «         \  }}t          j        |ddd‰ ddg¬	¦  «        }|j                             ¦   «                              |j                             ¦   «         ¦  «        }t          | 
                    ¦   «                              ¦   «         |         g d
¢¦  «         t          |j        d¦  «         ˆ fd„}|                     d¦  «         t          |j        d¦  «         t           ||¦  «        d¦  «         |j                             ¦   «                              |j                             ¦   «         ¦  «        }t          | 
                    ¦   «                              ¦   «         |         g d¢¦  «         |                     d¦  «         t          |j        d¦  «         t           ||¦  «        d¦  «         |                     d¦  «         t          |j        d¦  «         t           ||¦  «        d¦  «         |                     ¦   «          t          |j        d¦  «         t           ||¦  «        d¦  «         d S )NrT  ©r   r   rË   r   ©r   r   r   rË   r  rÈ  rÉ  r¥  çÃõ(\�ÂÕ?©r   r  r€  r�  rg  rˆ  )r¥  rB  r£  r�  )r¥  r£  c                 óT   •— ‰dk    rd„ | j         D ¦   «         S d„ | j         D ¦   «         S )NrT  c                 óB   — g | ]}|                      ¦   «         d          ‘ŒS ©r   )r½  ©r0  Úhs     r   r2  z?test_range_slider.<locals>.handle_positions.<locals>.<listcomp>Q  ó%   € Ð>Ð>Ð>¨�A—K’K‘M”M !Ô$Ð>Ð>Ð>r   c                 óB   — g | ]}|                      ¦   «         d          ‘ŒS r§  )Ú	get_xdatar¨  s     r   r2  z?test_range_slider.<locals>.handle_positions.<locals>.<listcomp>S  rª  r   )Ú_handles)rŒ  rg  s    €r   rŸ  z+test_range_slider.<locals>.handle_positionsO  s:   ø€ Ø˜*Ò$Ð$Ø>Ð>¨f¬oÐ>Ñ>Ô>Ð>à>Ð>¨f¬oÐ>Ñ>Ô>Ð>r   )çš™™™™™Ù?rÃ  )r®  rB  rÃ  r�  )r®   r¥  )r¥  r®   )rñ  rT   r$   )rB   rC   rp   ÚRangeSliderr–  r—  r˜  rG  r{  r   Ú
get_pointsÚflattenrŠ  r  rž  )rg  ÚidxrJ   r   rŒ  rš  rŸ  s   `      r   Útest_range_sliderr³  <  sN  ø€ à�jÒ Ð ØˆlˆlˆˆàˆlˆlˆåŒl‰nŒn�G€CˆåÔ Ø�R ¨C¸[Ø�d�ðñ ô €Fð Œ+×
!Ò
!Ñ
#Ô
#×
/Ò
/°´×0EÒ0EÑ0GÔ0GÑ
HÔ
H€CÝ�C—N’NÑ$Ô$×,Ò,Ñ.Ô.¨sÔ3Ð5LÐ5LÐ5LÑMÔMÐMõ �F”J Ñ,Ô,Ð,ð?ð ?ð ?ð ?ð ?ð ‡N‚N�:ÑÔÐÝ�F”J 
Ñ+Ô+Ð+ÝÐ$Ð$ VÑ,Ô,¨jÑ9Ô9Ð9à
Œ+×
!Ò
!Ñ
#Ô
#×
/Ò
/°´×0EÒ0EÑ0GÔ0GÑ
HÔ
H€CÝ�C—N’NÑ$Ô$×,Ò,Ñ.Ô.¨sÔ3Ð5IÐ5IÐ5IÑJÔJÐJà
‡N‚N�:ÑÔÐÝ�F”J 
Ñ+Ô+Ð+ÝÐ$Ð$ VÑ,Ô,¨jÑ9Ô9Ð9à
‡N‚N�8ÑÔÐÝ�F”J Ñ'Ô'Ð'ÝÐ$Ð$ VÑ,Ô,¨fÑ5Ô5Ð5à
‡L‚L�N„N€NÝ�F”J Ñ,Ô,Ð,ÝÐ$Ð$ VÑ,Ô,¨kÑ:Ô:Ð:Ð:Ð:r   c           	      ó†  — | dk    rg d¢}ng d¢}t          j        ¦   «         \  }}t          j        |ddd| ddg¬¦  «        }|j                             ¦   «                              |j                             ¦   «         ¦  «        }t          | 
                    ¦   «                              ¦   «         |         g d	¢¦  «         d S )
NrT  r¡  r¢  r  rÈ  rÉ  r   r¤  )r   rB  r   r�  )rB   rC   rp   r¯  r–  r—  r˜  rG  r{  r   r°  r±  )rg  r²  rJ   r   rŒ  rš  s         r   Ú"test_range_slider_same_init_valuesrµ  i  sÂ   € à�jÒ Ð ØˆlˆlˆˆàˆlˆlˆåŒl‰nŒn�G€CˆåÔ Ø�b ¨S¸kØ�Q�ðñ ô €Fð Œ+×
!Ò
!Ñ
#Ô
#×
/Ò
/°´×0EÒ0EÑ0GÔ0GÑ
HÔ
H€CÝ�C—N’NÑ$Ô$×,Ò,Ñ.Ô.¨sÔ3Ð5GÐ5GÐ5GÑHÔHÐHÐHÐHr   c                 ó
  — t          j        t          d¬¦  «        }| d         j        j        j        d         }t          j        |fd|i|¤Ž}| D ]}|                     ¦   «          Œ|j	        |k    sJ ‚|j
        |fi fk    sJ ‚dS )aü  
    Helper function to test Polygon Selector.

    Parameters
    ----------
    events : list[MouseEvent]
        A sequence of events to perform.
    expected : list of vertices (xdata, ydata)
        The list of vertices expected to result from the event sequence.
    selections_count : int
        Wait for the tool to call its `onselect` function `selections_count`
        times, before comparing the result to the `expected`
    **kwargs
        Keyword arguments are passed to PolygonSelector.
    Nr]   r   r`   )r   ro   r   rE   r	  Úaxesrp   ÚPolygonSelectorrs   r  rw   )ÚeventsÚexpectedÚselections_countrQ   r`   r   rz   Úevents           r   Úcheck_polygon_selectorr½  z  s¤   € õ  Œy�d°Ð6Ñ6Ô6€Hà	�ŒÔ	Ô	 Ô	% aÔ	(€BÝÔ" 2ÐCÐC°ÐC¸FÐCÐC€Dàð ð ˆØ�ŠÑÔÐÐàÔÐ"2Ò2Ð2Ð2Ð2ØÔ 8 ,°Ð!3Ò3Ð3Ð3Ð3Ð3Ð3r   c                 óˆ   — t          j        d| |¦  «        t          j        d| |d¦  «        t          j        d| |d¦  «        gS )Nrd   ra   r   rg   ©r   rr   ©r   Úxys     r   Úpolygon_place_vertexrÂ  –  óI   € åÔ"Ð#8¸"¸bÑAÔAÝÔ"Ð#7¸¸RÀÑCÔCÝÔ"Ð#9¸2¸rÀ1ÑEÔEðð r   c                 óˆ   — t          j        d| |¦  «        t          j        d| |d¦  «        t          j        d| |d¦  «        gS )Nrd   ra   rË   rg   r¿  rÀ  s     r   Úpolygon_remove_vertexrÅ  ž  rÃ  r   Údraw_bounding_boxc                 ó®  — t          j        t          |¬¦  «        }g d¢}g t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢} |||d¦  «         g d¢}g t          | d¦  «        ¢t          | d¦  «        ¢t	          d| j        j        d	¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t	          d| j        j        d	¦  «        ‘t          | d¦  «        ¢t          | d¦  «        ¢} |||d¦  «         g d¢}g t          | d¦  «        ¢t          | d¦  «        ¢t	          d| j        j        d¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t	          d| j        j        d¦  «        ‘t          | d¦  «        ¢t          | d¦  «        ¢} |||d¦  «         g d¢}g t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘} |||d¦  «         g d¢}g t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t	          d| j        j        d¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t          j        d
| d¦  «        ‘t          j        d| dd¦  «        ‘t	          d| j        j        d¦  «        ‘} |||d¦  «         g d¢}t	          d| j        j        d	¦  «        t          j        d
| d¦  «        t          j        d| dd¦  «        t          j        d
| d¦  «        t          j        d| dd¦  «        t	          d| j        j        d	¦  «        t	          d| j        j        d¦  «        t          j        d
| d¦  «        t          j        d| dd¦  «        t          j        d
| d¦  «        t          j        d| dd¦  «        t	          d| j        j        d¦  «        gt          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢} |||d¦  «         g d¢}g t          | d¦  «        ¢t          | d¦  «        ¢t	          d| j        j        d¦  «        ‘t	          d| j        j        d¦  «        ‘t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢} |||d¦  «         d S )N©rÆ  ©©r›   r›   ©r)  r›   ©r›   r)  rÊ  rË  rÌ  r   )©r•   r›   rË  rÌ  rý   rã   rd   ra   rÍ  rg   Úkey_release_event)©r›   r•   )r)  r•   rÌ  rô   rb   rn  rÏ  )©éU   r›   rË  rÌ  )r”   r›   rÐ  r   ))r•   r•   )r£   r•   )r•   r£   r*  )ri   r›   r€  )	Ú	functoolsÚpartialr½  rÂ  r   r	  rE   r   rr   )r   rÆ  Úcheck_selectorÚexpected_resultÚevent_sequences        r   Útest_polygon_selectorr×  ¦  s  € åÔ&ÝÐ2CðEñ Eô E€Nð 7Ð6Ð6€OðÝ	˜b (Ñ	+Ô	+ðå	˜b )Ñ	,Ô	,ðõ 
˜b )Ñ	,Ô	,ðõ 
˜b (Ñ	+Ô	+ð	€Nð €N�> ?°AÑ6Ô6Ð6ð 7Ð6Ð6€OðÝ	˜b (Ñ	+Ô	+ðå	˜b )Ñ	,Ô	,ðõ 	Ð" B¤IÔ$4°iÑ@Ô@ðõ 	Ô"Ð#8¸"¸hÑGÔGð	õ
 	Ô"Ð#7¸¸XÀqÑIÔIðõ 	Ô"Ð#8¸"¸hÑGÔGðõ 	Ô"Ð#9¸2¸xÈÑKÔKðõ 	Ð$ b¤iÔ&6¸	ÑBÔBðõ 
˜b )Ñ	,Ô	,ðõ 
˜b (Ñ	+Ô	+ð€Nð €N�> ?°AÑ6Ô6Ð6ð 7Ð6Ð6€OðÝ	˜b (Ñ	+Ô	+ðå	˜b )Ñ	,Ô	,ðõ 	Ð" B¤IÔ$4°gÑ>Ô>ðõ 	Ô"Ð#8¸"¸jÑIÔIð	õ
 	Ô"Ð#7¸¸ZÈÑKÔKðõ 	Ô"Ð#8¸"¸jÑIÔIðõ 	Ô"Ð#9¸2¸zÈ1ÑMÔMðõ 	Ð$ b¤iÔ&6¸Ñ@Ô@ðõ 
˜b )Ñ	,Ô	,ðõ 
˜b (Ñ	+Ô	+ð€Nð €N�> ?°AÑ6Ô6Ð6ð 7Ð6Ð6€Oð	Ý	˜b (Ñ	+Ô	+ð	å	˜b )Ñ	,Ô	,ð	õ 
˜b )Ñ	,Ô	,ð	õ 
˜b (Ñ	+Ô	+ð		õ
 	Ô"Ð#8¸"¸hÑGÔGð	õ 	Ô"Ð#7¸¸XÀqÑIÔIð	õ 	Ô"Ð#8¸"¸hÑGÔGð	õ 	Ô"Ð#9¸2¸xÈÑKÔKð	€Nð €N�> ?°AÑ6Ô6Ð6ð 7Ð6Ð6€OðÝ	˜b (Ñ	+Ô	+ðå	˜b )Ñ	,Ô	,ðõ 
˜b )Ñ	,Ô	,ðõ 
˜b (Ñ	+Ô	+ð	õ
 	Ð" B¤IÔ$4°gÑ>Ô>ðõ 	Ô"Ð#8¸"¸jÑIÔIðõ 	Ô"Ð#7¸¸ZÈÑKÔKðõ 	Ô"Ð#8¸"¸jÑIÔIðõ 	Ô"Ð#9¸2¸zÈ1ÑMÔMðõ 	Ð$ b¤iÔ&6¸Ñ@Ô@ð€Nð €N�> ?°AÑ6Ô6Ð6ð 7Ð6Ð6€OåÐ" B¤IÔ$4°iÑ@Ô@ÝÔ"Ð#8¸"¸jÑIÔIÝÔ"Ð#7¸¸ZÈÑKÔKÝÔ"Ð#8¸"¸jÑIÔIÝÔ"Ð#9¸2¸zÈ1ÑMÔMÝÐ$ b¤iÔ&6¸	ÑBÔBÝÐ" B¤IÔ$4°gÑ>Ô>ÝÔ"Ð#8¸"¸jÑIÔIÝÔ"Ð#7¸¸ZÈÑKÔKÝÔ"Ð#8¸"¸jÑIÔIÝÔ"Ð#9¸2¸zÈ1ÑMÔMÝÐ$ b¤iÔ&6¸Ñ@Ô@ðõ 
˜b (Ñ	+Ô	+ðõ 
˜b )Ñ	,Ô	,ðõ 
˜b )Ñ	,Ô	,ðõ  
˜b (Ñ	+Ô	+ð!€Nð$ €N�> ?°AÑ6Ô6Ð6ð 7Ð6Ð6€Oð	Ý	˜b (Ñ	+Ô	+ð	å	˜b )Ñ	,Ô	,ð	õ 	Ð" B¤IÔ$4°hÑ?Ô?ð	õ 	Ð$ b¤iÔ&6¸ÑAÔAð		õ
 
˜b (Ñ	+Ô	+ð	õ 
˜b )Ñ	,Ô	,ð	õ 
˜b )Ñ	,Ô	,ð	õ 
˜b (Ñ	+Ô	+ð	€Nð €N�> ?°AÑ6Ô6Ð6Ð6Ð6r   c                 óT  — t          j        | t          dd¬¦  «        t          d¬¦  «        |¬¦  «        }g t          | d¦  «        ¢t          | d¦  «        ¢t          | d	¦  «        ¢t          | d¦  «        ¢D ]}|                     ¦   «          Œ|j        }|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚|                     d
d¬¦  «         |                     ¦   «         d
k    sJ ‚|                     ¦   «         dk    sJ ‚|j	        D ]6}|                     ¦   «         dk    sJ ‚|                     ¦   «         dk    sJ ‚Œ7| 
                    d
d¬¦  «         |j	        D ]6}|                     ¦   «         d
k    sJ ‚|                     ¦   «         dk    sJ ‚Œ7d S )Nr­   r®   ry  r±   r²   )r[   r³   rÆ  rÊ  rË  rÌ  r¶   r·   )rp   r¸  rº   rÂ  rs   r»   rz  rÂ   r¿   rÀ   rÃ   )r   rÆ  rz   r¼  rÅ   s        r   Ú,test_polygon_selector_set_props_handle_propsrÙ    s  € åÔ" 2Ý)-°C¸sÐ)CÑ)CÔ)CÝ04¸3°±´Ø5FðHñ Hô H€Dð
Ý	˜b (Ñ	+Ô	+ðå	˜b )Ñ	,Ô	,ðõ 
˜b )Ñ	,Ô	,ðõ 
˜b (Ñ	+Ô	+ð	ð ð ˆð 	�ŠÑÔÐÐàÔ#€FØ×ÒÑÔ Ò$Ð$Ð$Ð$Ø×ÒÑÔ Ò$Ð$Ð$Ð$Ø‡N‚N˜ C€NÑ(Ô(Ð(Ø×ÒÑÔ Ò$Ð$Ð$Ð$Ø×ÒÑÔ Ò$Ð$Ð$Ð$àÔ'ð )ð )ˆØ×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ø×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ð(Ø×Ò ¨3ÐÑ/Ô/Ð/ØÔ'ð )ð )ˆØ×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ø×ÒÑ!Ô! SÒ(Ð(Ð(Ð(Ð(ð)ð )r   c                 ó”   — |                       ¦   «         }|                      ¦   «         }t          j        |ddi¬¦  «        }d|_        d S )NÚvisibleFrZ   )r®   r  r·   rÄ  )rC   rp   rq   rÌ   )rI  rJ  Úax_testÚ_rz   s        r   Útest_rect_visibilityrÞ  7  sK   € ð ×ÒÑ!Ô!€GØ×ÒÑÔ€AåÔ$ W°YÀÐ4FÐGÑGÔG€DØ'€D„L€L€Lr   r²  )r   r   rË   c                 ó®  — g d¢}t          | |d         ¦  «        t          | |d         ¦  «        t          | |d         ¦  «        t          | |d         ¦  «        g}|                     |t          | d¦  «        ¦  «         |                     t          | d¦  «        ¦  «         t	          j        t          j        |g ¦  «        }t          ||d|¬¦  «         d S )NrÉ  r   r   r   )rW  rW  rÈ  )	rÂ  Úinsertr]  rÅ  rÒ  ÚreduceÚoperatorÚiaddr½  )r   r²  rÆ  ÚvertsrÖ  s        r   Útest_polygon_selector_removerå  B  sâ   € ð -Ð,Ð,€EÝ*¨2¨u°Q¬xÑ8Ô8Ý*¨2¨u°Q¬xÑ8Ô8Ý*¨2¨u°Q¬xÑ8Ô8å*¨2¨u°Q¬xÑ8Ô8ð	:€Nð ×Ò˜#Õ3°B¸
ÑCÔCÑDÔDÐDà×ÒÕ/°°JÑ?Ô?Ñ@Ô@Ð@åÔ%¥h¤m°^ÀRÑHÔH€NÝ˜>¨5°!Ø->ð@ñ @ô @ð @ð @ð @r   c                 ó$  — g d¢}g t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢}t          ||dd …         d|¬¦  «         d S ©NrÉ  r   r   r   rÈ  )rÂ  rÅ  r½  )r   rÆ  rä  rÖ  s       r   Ú(test_polygon_selector_remove_first_pointrè  U  sÂ   € à,Ð,Ð,€EðÝ	˜b %¨¤(Ñ	+Ô	+ðå	˜b %¨¤(Ñ	+Ô	+ðõ 
˜b %¨¤(Ñ	+Ô	+ðõ 
˜b %¨¤(Ñ	+Ô	+ð	õ
 
˜r 5¨¤8Ñ	,Ô	,ð€Nõ ˜>¨5°°°¬9°aØ->ð@ñ @ô @ð @ð @ð @r   c                 óÎ  — g d¢}g t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢}t          j        | |¬¦  «        }|D ]}|                     ¦   «          Œ|j        |dd…         k    sJ ‚d S rç  )rÂ  rÅ  rp   r¸  rs   rä  )r   rÆ  rä  rÖ  rz   r¼  s         r   Útest_polygon_selector_redrawrê  c  s  € à,Ð,Ð,€Eð
Ý	˜b %¨¤(Ñ	+Ô	+ð
å	˜b %¨¤(Ñ	+Ô	+ð
õ 
˜b %¨¤(Ñ	+Ô	+ð
õ 
˜b %¨¤(Ñ	+Ô	+ð	
õ 
˜r 5¨¤8Ñ	,Ô	,ð
õ 
˜r 5¨¤8Ñ	,Ô	,ð
õ 
˜b %¨¤(Ñ	+Ô	+ð
€Nõ Ô" 2Ð9JÐKÑKÔK€DØð ð ˆØ�ŠÑÔÐÐð Œ:˜˜q ˜sœÒ#Ð#Ð#Ð#Ð#Ð#r   c                 óÀ  — g d¢}|                       ¦   «         }t          j        ||¬¦  «        }||_        |j        |k    sJ ‚|                      ¦   «         }t          j        ||¬¦  «        }g t	          ||d         ¦  «        ¢t	          ||d         ¦  «        ¢t	          ||d         ¦  «        ¢t	          ||d         ¦  «        ¢D ]}|                     ¦   «          Œd S )N))r¥  r®  )r±   rÅ  )r·   r®   rÈ  r   r   r   )rE  rp   r¸  rä  rÂ  rs   )	rI  rJ  rÆ  rä  rÜ  Ú	tool_testÚax_refÚtool_refr¼  s	            r   Ú"test_polygon_selector_verts_setterrï  z  s  € ð 1Ð0Ð0€EØ×"Ò"Ñ$Ô$€GåÔ'¨ÐCTÐUÑUÔU€IØ€I„OØŒ?˜eÒ#Ð#Ð#Ð#à× Ò Ñ"Ô"€FÝÔ& vÐARÐSÑSÔS€HðÝ	˜f e¨A¤hÑ	/Ô	/ðå	˜f e¨A¤hÑ	/Ô	/ðõ 
˜f e¨A¤hÑ	/Ô	/ðõ 
˜f e¨A¤hÑ	/Ô	/ð	ð ð ˆð 	�ŠÑÔÐÐðð r   c                 ó˜  — |                       dd¬¦  «         g d¢}g t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢t          | |d         ¦  «        ¢}t          j        | d¬	¦  «        }|D ]}|                     ¦   «          Œt          j        d
| dd¦  «                             ¦   «          t          j        d| d¦  «                             ¦   «          t          j        d| dd¦  «                             ¦   «          t          j         	                    |j
        g d¢¦  «         t          j        d
| dd¦  «                             ¦   «          t          j        d| d¦  «                             ¦   «          t          j        d| dd¦  «                             ¦   «          t          j         	                    |j
        g d¢¦  «         t          j         	                    |j        j        d¦  «         t          j        d
| dd¦  «                             ¦   «          t          j        d| dd¦  «                             ¦   «          t          j         	                    |j
        g d¢¦  «         t          j         	                    |j        j        d¦  «         d S )N)iöÿÿÿr›   rX  ))r(   r   )r   r(   )r(   é(   )rñ  r(   r   r   r   rË   TrÈ  ra   )rñ  rñ  rd   r‡   rg   ))rT   r   r´   )rT   r(   )r(   rT   r‚   rˆ   )r–   ©r(   r‰   ©r‰   rñ  ©rñ  r‰   )ç      4@ç      D@rõ  rö  r–   )rò  ró  rô  )rõ  rö  g      >@rö  )ÚsetrÂ  rp   r¸  rs   r   rr   r  Útestingr   rä  Ú_boxrÌ   )r   rä  rÖ  rz   r¼  s        r   Útest_polygon_selector_boxrú  �  sÇ  € à‡F‚F�	 	€FÑ*Ô*Ð*Ø2Ð2Ð2€EðÝ	˜b %¨¤(Ñ	+Ô	+ðå	˜b %¨¤(Ñ	+Ô	+ðõ 
˜b %¨¤(Ñ	+Ô	+ðõ 
˜b %¨¤(Ñ	+Ô	+ð	õ
 
˜b %¨¤(Ñ	+Ô	+ð€Nõ Ô" 2¸Ð>Ñ>Ô>€DØð ð ˆØ�ŠÑÔÐÐõ ÔÐ3°R¸À1ÑEÔE×NÒNÑPÔPÐPÝÔÐ4°b¸(ÑCÔC×LÒLÑNÔNÐNÝÔÐ5°r¸8ÀQÑGÔG×PÒPÑRÔRÐRÝ„J×ÒØŒ
Ð:Ð:Ð:ñ<ô <ð <õ ÔÐ3°R¸À1ÑEÔE×NÒNÑPÔPÐPÝÔÐ4°b¸(ÑCÔC×LÒLÑNÔNÐNÝÔÐ5°r¸8ÀQÑGÔG×PÒPÑRÔRÐRÝ„J×ÒØŒ
Ð<Ð<Ð<ñ>ô >ð >õ „J×ÒØŒ	ÔÐ3ñ5ô 5ð 5õ ÔÐ3°R¸À1ÑEÔE×NÒNÑPÔPÐPÝÔÐ5°r¸8ÀQÑGÔG×PÒPÑRÔRÐRÝ„J×ÒØŒ
Ð2Ð2Ð2ñ4ô 4ð 4å„J×ÒØŒ	ÔÐ3ñ5ô 5ð 5ð 5ð 5r   c                 ó¦  — t          d¬¦  «        }t          ddd¬¦  «        }t          ddd¬	¦  «        }t          d
¬¦  «        }t          j        | d||||¬¦  «        }g t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢t          | d¦  «        ¢D ]}|                     ¦   «          Œ|j        }t          j        |                     ¦   «         d¦  «        sJ ‚|j	        D ]n}| 
                    ¦   «         dk    sJ ‚t          j        |                     ¦   «         d¦  «        sJ ‚t          j        |                     ¦   «         d¦  «        sJ ‚Œo|j        j        }|                     ¦   «         dk    sJ ‚t          j        |                     ¦   «         d¦  «        sJ ‚t          j        |                     ¦   «         d¦  «        sJ ‚|j        j	        D ]n}| 
                    ¦   «         dk    sJ ‚t          j        |                     ¦   «         d¦  «        sJ ‚t          j        |                     ¦   «         d
¦  «        sJ ‚Œod S )Nr¶   rÝ  ÚoÚw)rq  r:  r¹   ú:rð  r­   )rç  r0   r/   Úy)r¹   T)rÆ  r[   r³   Ú	box_propsÚbox_handle_propsrÊ  rË  rÌ  )rº   rp   r¸  rÂ  rs   r»   r½   r?  rz  rÀ   Ú
get_markerrB  rÁ   rù  rê  r¼   Úget_edgecolor)	r   r[   r³   r   r  rz   r¼  rÅ   Ú
box_artists	            r   Ú,test_polygon_selector_box_props_handle_propsr  º  sŽ  € Ý�sˆO‰OŒO€EÝ˜s°CÈÐMÑMÔM€LÝ˜s¨c¸SÐAÑAÔA€IÝ¨CÐ0Ñ0Ô0ÐåÔ"Ø
˜dØ ,ØÐ.>ð@ñ @ô @€Dð
Ý	˜b (Ñ	+Ô	+ðå	˜b )Ñ	,Ô	,ðõ 
˜b )Ñ	,Ô	,ðõ 
˜b (Ñ	+Ô	+ð	ð ð ˆð 	�ŠÑÔÐÐàÔ#€FÝÔ˜f×.Ò.Ñ0Ô0°#Ñ6Ô6Ð6Ð6Ð6ØÔ'ð Eð EˆØ× Ò Ñ"Ô" cÒ)Ð)Ð)Ð)ÝÔ! &×"<Ò"<Ñ">Ô">ÀÑDÔDÐDÐDÐDÝÔ! &×"<Ò"<Ñ">Ô">ÀÑDÔDÐDÐDÐDÐDà”Ô,€JØ×#Ò#Ñ%Ô%¨Ò,Ð,Ð,Ð,ÝÔ˜j×6Ò6Ñ8Ô8¸#Ñ>Ô>Ð>Ð>Ð>ÝÔ˜j×6Ò6Ñ8Ô8¸#Ñ>Ô>Ð>Ð>Ð>Ø”)Ô,ð Eð Eˆð × Ò Ñ"Ô" cÒ)Ð)Ð)Ð)ÝÔ! &×"<Ò"<Ñ">Ô">ÀÑDÔDÐDÐDÐDÝÔ! &×"<Ò"<Ñ">Ô">ÀÑDÔDÐDÐDÐDÐDðEð Er   c                 ó„  — t          j        t          d ¬¦  «        }t          j        | |¦  «        }g d¢g d¢fD �]}|D ])}t          | |¦  «        D ]}|                     ¦   «          ŒŒ*|j        }|j        sJ ‚| 	                    ¦   «         sJ ‚| 	                    ¦   «         sJ ‚t          j                             |                     ¦   «         |¦  «         |j        |d d…         fi fk    sJ ‚|                     ¦   «          |j        rJ ‚t          j                             |                     ¦   «         dg¦  «         �Œd S )Nr]   )rÊ  rË  rÌ  rÊ  )rÊ  )rc   r›   rÌ  rÊ  rñ  r!   )r   ro   r   rp   r¸  rÂ  rs   r»   rŒ   r„  r  rø  Úassert_equalÚ
get_xydatarw   r×   )r   r`   rz   ÚresultrÁ  r¼  rÅ   s          r   Ú"test_polygon_selector_clear_methodr
  à  sj  € ÝŒy�d°Ð6Ñ6Ô6€HÝÔ" 2 xÑ0Ô0€Dà=Ð=Ð=Ø=Ð=Ð=ð?ð ?ñ ?ˆàð 	!ð 	!ˆBÝ-¨b°"Ñ5Ô5ð !ð !�Ø—’Ñ Ô Ð Ð ð!ð Ô'ˆàÔ(Ð(Ð(Ð(Ø×ÒÑ!Ô!Ð!Ð!Ð!Ø×!Ò!Ñ#Ô#Ð#Ð#Ð#Ý
Œ
×Ò × 1Ò 1Ñ 3Ô 3°VÑ<Ô<Ð<ØÔ! v¨c¨r¨c¤{ n°bÐ%9Ò9Ð9Ð9Ð9à�
Š
‰ŒˆØÔ,Ð,Ð,Ð,Ý
Œ
×Ò × 1Ò 1Ñ 3Ô 3°f°XÑ>Ô>Ð>Ñ>ð!?ð ?r   ÚhorizOnÚvertOnÚwith_deprecated_canvasc                 ó¨  — t          j        ¦   «         }|                     dd¬¦  «        \  }}t          j        ¦   «                              ¦   «         }|rTt          j        t
          j        d¬¦  «        5  t          j        d ||fd| |¬¦  «        }d d d ¦  «         n# 1 swxY w Y   nt          j        ||fd| |¬¦  «        }t          |j
        ¦  «        dk    sJ ‚t          |j        ¦  «        dk    sJ ‚t          j        d|d	¦  «                             ¦   «          |j                             ¦   «          |j
        D ]}|                     ¦   «         d
k    sJ ‚Œ|j        D ]}|                     ¦   «         dk    sJ ‚Œt          d„ |j
        D ¦   «         ¦  «        |rdndk    sJ ‚t          d„ |j        D ¦   «         ¦  «        | rdndk    sJ ‚|j         |_        |j         |_        t          j        d|d	¦  «                             ¦   «          t          d„ |j
        D ¦   «         ¦  «        |rdndk    sJ ‚t          d„ |j        D ¦   «         ¦  «        | rdndk    sJ ‚t          j        d|d¦  «                             ¦   «          |j
        D ]}|                     ¦   «         d
k    sJ ‚Œ|j        D ]}|                     ¦   «         dk    sJ ‚Œd S )Nr   T)Úsharexzcanvas.*deprecatr  F)rR   r  r  rd   )r±   rB  r  )rB  rB  c                 ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   ©r„  ©r0  rk   s     r   r2  z$test_MultiCursor.<locals>.<listcomp>  ó)   € ÐDÐDÐD˜°×1AÒ1AÑ1CÔ1CÐD�ÐDÐDÐDr   r   c                 ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   r  r  s     r   r2  z$test_MultiCursor.<locals>.<listcomp>  r  r   c                 ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   r  r  s     r   r2  z$test_MultiCursor.<locals>.<listcomp>!  r  r   c                 ó:   — g | ]}|                      ¦   «         ¯|‘ŒS r   r  r  s     r   r2  z$test_MultiCursor.<locals>.<listcomp>#  r  r   )r�  r�  )rB   r	  rC   r@   ri  ÚmplÚMatplotlibDeprecationWarningrp   ÚMultiCursorr  ÚvlinesÚhlinesr   rr   rs   rE   rF   r¬  r½  r  r  )	r  r  r  rJ   Úax1Úax3Úax2ÚmultiÚls	            r   Útest_MultiCursorr!  ÷  s~  € õ Œ*‰,Œ,€CØ—’˜a¨�Ñ-Ô-�J€Sˆ#Ý
Œ*‰,Œ,×
Ò
Ñ
!Ô
!€Càð 	
ÝŒ\�#Ô:ÐBUÐVÑVÔVð 	ð 	ÝÔ'Ø�s˜C�j¨%¸Èðñ ô ˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	øõ Ô#Ø�#ˆJ ¨w¸vð
ñ 
ô 
ˆõ
 ˆuŒ|ÑÔ Ò!Ð!Ð!Ð!ÝˆuŒ|ÑÔ Ò!Ð!Ð!Ð!åÔÐ4°c¸9ÑEÔE×NÒNÑPÔPÐPà„J‡O‚OÑÔÐð Œ\ð )ð )ˆØ�{Š{‰}Œ} Ò(Ð(Ð(Ð(Ð(ØŒ\ð +ð +ˆØ�{Š{‰}Œ} 
Ò*Ð*Ð*Ð*Ð*åÐDÐD ¤ÐDÑDÔDÑEÔEØÐˆˆ˜òð ð ð åÐDÐD ¤ÐDÑDÔDÑEÔEØÐˆˆ˜!òð ð ð ð œÐ%€E„MØ”|Ð#€E„LÝÔÐ4°c¸9ÑEÔE×NÒNÑPÔPÐPÝÐDÐD ¤ÐDÑDÔDÑEÔEØÐˆˆ˜òð ð ð åÐDÐD ¤ÐDÑDÔDÑEÔEØÐˆˆ˜!òð ð ð õ
 ÔÐ4°c¸:ÑFÔF×OÒOÑQÔQÐQØŒ\ð )ð )ˆØ�{Š{‰}Œ} Ò(Ð(Ð(Ð(Ð(ØŒ\ð +ð +ˆØ�{Š{‰}Œ} 
Ò*Ð*Ð*Ð*Ð*ð+ð +s   Á5BÂB!Â$B!c                  ó  — t          j        dd¦  «        \  } \  }}t          j        |ddgd¦  «        }t          j        |ddgddg¦  «        }|                     ¦   «          |                     ¦   «          t          j        ¦   «         5 }|                      |d¬	¦  «         d d d ¦  «         n# 1 swxY w Y   |  	                    ¦   «         }t          d
| j        |¦  «        }|                     |¦  «         |                     |¦  «         d S )Nr   r   Ú1Ú2r   TFÚrawr<   Ú
draw_event)rB   rC   rp   r   r   ÚremoverG   rH   rI   Ú_get_rendererr   rE   Ú_clear)rJ   Úax_radioÚ	ax_checksr  ÚchecksÚoutÚrendererÚevts           r   Útest_parent_axes_removalr0  /  s7  € å!$¤¨a°Ñ!3Ô!3Ñ€CÑ	ˆ(�IåÔ  ¨C°¨:°qÑ9Ô9€EÝÔ! )¨c°3¨Z¸$À¸ÑGÔG€Fà×ÒÑÔÐØ‡O‚OÑÔÐÝ	Œ‰Œð '˜à�Š�C ˆÑ&Ô&Ð&ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð × Ò Ñ"Ô"€HÝ
�L #¤*¨hÑ
7Ô
7€CØ	‡L‚L�ÑÔÐØ
‡M‚M�#ÑÔÐÐÐs   Â	B-Â-B1Â4B1c                  ó4  — t          j        ¦   «         } |                      g d¢¦  «        }|                      g d¢¦  «        }d}t          j        t
          |¬¦  «        5  t          j        |d¬¦  «        }ddd¦  «         n# 1 swxY w Y   |j        du sJ ‚dS )	zKTest that a warning is raised and useblit is disabled for overlapping axes.)r¥  r¥  r  r  )r®   r®   rÃ  rÃ  z>Cursor blitting is currently not supported on overlapping axesr  Tr‰  NF)	rB   r	  r-  r@   ri  rj  rp   ÚCursorrR   )rJ   r  r  Ú
match_textÚcursors        r   Ú-test_cursor_overlapping_axes_blitting_warningr5  F  sâ   € å
Œ*‰,Œ,€CØ
�,Š,Ð+Ð+Ð+Ñ
,Ô
,€CØ
�,Š,Ð+Ð+Ð+Ñ
,Ô
,€Cð	ð õ 
Œ•k¨Ð	4Ñ	4Ô	4ð 3ð 3Ý” ¨TÐ2Ñ2Ô2ˆð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3ð Œ>˜UÐ"Ð"Ð"Ð"Ð"Ð"s   ÁBÂBÂ	B)rrÒ  rG   râ  Úunittestr   Ú
matplotlibr  Úmatplotlib.backend_basesr   r   r   r   Úmatplotlib.colorsÚcolorsr½   r>   rp   Úmatplotlib.pyplotÚpyplotrB   Úmatplotlib.testing.decoratorsr   r	   Úmatplotlib.testing.widgetsr
   r   r   Únumpyr  Únumpy.testingr   r@   Úfixturer   rP   ÚmarkÚparametrizerº   r}   r“   r«   rÆ   rÏ   rÞ   rï   rõ   r÷   rq   r6  r  r  r  r%  r8  rC  rK  rQ  rj  rl  ro  rr  rw  r{  r‚  r…  r‡  r�  r   ÚbackendrÀ  rÎ  rÕ  rÜ  rá  rã  rî  rþ  r  r  r6  rK  rT  rf  rm  ro  rs  rx  r   r   r|  r…  r�  r�  r“  r›  rŸ  r³  rµ  r½  rÂ  rÅ  r×  rÙ  rÞ  rå  rè  rê  rï  rú  r  r
  r!  r0  r5  r   r   r   ú<module>rE     sq  ðØ Ð Ð Ð Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ø QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QÐ QØ #Ð #Ð #Ð #Ð #Ð #Ø $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð Ø OÐ OÐ OÐ OÐ OÐ OÐ OÐ OØ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ CÐ Cà Ð Ð Ð Ø )Ð )Ð )Ð )Ð )Ð )à €€€ð „ðð ñ „ðð$0ð $0ð $0ðN „×Ò˜Ø€D�F„FØ€D�˜aÐ Ñ Ô Ø€D�"˜r¨hÐ7Ñ7Ô7Ø€Dˆtˆt˜ˆ‰ŒÐÑÔð	$ñ ô ðð ñô ðð0 „×Ò˜¨°Ð'9Ñ:Ô:Ø„×Ò˜¨1¨b¨'°A°t°9¸qÀ"¸gÐ)FÑGÔGØ„×Ò˜¨1¨b¨'°A°t°9¸qÀ"¸gÐ)FÑGÔGð ð  ñ HÔGñ HÔGñ ;Ô:ð ðF „×ÒÐ9Ø Ð*Ø  (Ð+ð-ñ.ô .ð%ð %ñ.ô .ð%ð*)ð )ð )ð* Jð  Jð  JðFð ð ð „×Ò˜ t¨U mÑ4Ô4ðF;ð F;ñ 5Ô4ðF;ðR „×Ò˜ t¨U mÑ4Ô4ðF3ð F3ñ 5Ô4ðF3ðR<Cð <Cð <Cð~ „×ÒÐ)Ø!Ô3°WÔ5LÐMñOô OðDð DñOô OðDðB
%ð 
%ð 
%ð „×ÒÐ/°%¸°Ñ?Ô?ð7ð 7ñ @Ô?ð7ðB,ð ,ð ,ð5ð 5ð 5ð6Dð Dð Dð> „×Ò˜¨¨u¨Ñ6Ô6ð"ð "ñ 7Ô6ð"ð  „×ÒÐ/°$¸°Ñ?Ô?ð<ð <ñ @Ô?ð<ð, „×ÒÐ?Ø�5˜$˜$ r°4Ð8Ñ8Ô8Ð9Ø��t�t 1�~‘~”~Ð&Ø�5˜$˜$ T T¨t _¡_¤_Ð5Ñ5Ô5Ð6Ø�5˜$˜$¨4Ð0Ñ0Ô0Ð1ð	Bñ ô ð:ð :ñô ð:ðB „×Ò˜¨¨u¨Ñ6Ô6ð"ð "ñ 7Ô6ð"ð „×ÒÐ/°$¸°Ñ?Ô?ð*ð *ñ @Ô?ð*ð8 „×ÒÐ-°°e¨}Ñ=Ô=ð&ð &ñ >Ô=ð&ð2*ð *ð *ð$)ð )ð )ð, „×Ò˜ f¨kÐ%:Ñ;Ô;ð)ð )ñ <Ô;ð)ð: „×Ò˜ f¨kÐ%:Ñ;Ô;ð(ð (ñ <Ô;ð(ð2ð ð ð3ð 3ð 3ð& „×Ò˜Ð&@ÑAÔAð<ð <ñ BÔAð<ð6 „×Ò�W°$ÐÑ7Ô7ð/ð /ñ 8Ô7ð/ðd$ð $ð $ð$ð $ð $ð"#ð #ð #ð" „×Ò˜Ø€D�F„FØ€D�˜d˜d¨Ð/Ñ/Ô/Ð0Ñ0Ô0Ø€D�˜aÐ Ñ Ô ð$ñ ô ð
Kð Kñô ð
Kð%ð %ð %ð#ð #ð #ð*ð ð ð. „×Ò˜Ð$GÐ$GÐ$GÑHÔHð=ð =ñ IÔHð=ðB%ð %ð %ð ÐÐ,Ð-°WÈ$ÐOÑOÔOð9ð 9ñ PÔOð9ð< ÐÑÔðEð Eñ ÔðEð ÐÑÔð:ð :ñ Ôð:ð ÐÐ1Ð2¸'ÈtÐTÑTÔTðð ñ UÔTðð,Nð Nð Nð ÐÑÔðð ñ Ôðð ÐÑÔðEð Eñ ÔðEð ÐÑÔð:ð :ñ Ôð:ð, „×Ò˜ GÔ$8¸'Ô:NÐ#OÑPÔPð$ð $ñ QÔPð$ð"'ð 'ð 'ð%ð %ð %ð'ð 'ð 'ðð ð ð5ð 5ð 5ð(ð ð ð „×Ò˜¨°zÐ(BÑCÔCð);ð );ñ DÔCð);ðX „×Ò˜¨°zÐ(BÑCÔCðIð Iñ DÔCðIð 4ð 4ð 4ð8ð ð ðð ð ð „×ÒÐ,¨u°d¨mÑ<Ô<ðn7ð n7ñ =Ô<ðn7ðb „×ÒÐ,¨u°d¨mÑ<Ô<ð)ð )ñ =Ô<ð)ð< ÐÑÔð(ð (ñ Ôð(ð „×Ò˜ 	 	 	Ñ*Ô*Ø„×ÒÐ,¨u°d¨mÑ<Ô<ð@ð @ñ =Ô<ñ +Ô*ð@ð" „×ÒÐ,¨u°d¨mÑ<Ô<ð
@ð 
@ñ =Ô<ð
@ð „×ÒÐ,¨u°d¨mÑ<Ô<ð$ð $ñ =Ô<ð$ð, „×ÒÐ,¨u°d¨mÑ<Ô<ØÐÑÔðð ñ Ôñ =Ô<ðð&(5ð (5ð (5ðV#Eð #Eð #EðL?ð ?ð ?ð. „×Ò˜ U¨D MÑ2Ô2Ø„×Ò˜ E¨4 =Ñ1Ô1Ø„×ÒÐ1°E¸4°=ÑAÔAð2+ð 2+ñ BÔAñ 2Ô1ñ 3Ô2ð2+ðjð ð ð.#ð #ð #ð #ð #r   