Ë
    ¨eh›-  ã                   ó2  — d dl m Z mZmZ d dlZd dlmZ d dlmZ d dl	m
Z
mZ d dlmZ d dlmZ d dlmZmZ d dlmZ d dlZd dlZ G d„ d«      Zej6                  d	„ «       Z ed
gd ej:                  «       dk(  rd nd¬«      d„ «       Z edgdd ej:                  «       dk(  rd nd¬«      d„ «       Zd„ Z  edgddid¬«      d„ «       Z! edgddid¬«      d„ «       Z"d„ Z#d„ Z$d„ Z%d „ Z& e
d!g¬"«      d#„ «       Z'd$„ Z(d%„ Z)d&„ Z*d'„ Z+d(„ Z, G d)„ d*«      Z-d+„ Z.d,„ Z/y)-é    )ÚdatetimeÚtimezoneÚ	timedeltaN)Ú	MagicMock)Úcheck_figures_equalÚimage_comparison)ÚStrCategoryConverterÚUnitData)ÚDateConverterc                   ó0   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚQuantityc                 ó    — || _         || _        y ©N)Ú	magnitudeÚunits)ÚselfÚdatar   s      úY/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/matplotlib/tests/test_units.pyÚ__init__zQuantity.__init__   s   € ØˆŒØˆ�
ó    c                 óÆ   — dddddddœ}| j                   |k7  r*|| j                   |f   }t        || j                  z  |«      S t        | j                  | j                   «      S )Ni  g‘?é<   gÓ0�Ó(?é   i€÷  ))ÚhoursÚseconds)Úminutesr   )r   r   )ÚfeetÚmiles)r   Úinches)r   r   )r   r   r   )r   Ú	new_unitsÚfactorsÚmults       r   ÚtozQuantity.to   se   € Ø)-ÀVØ+-À)Ø')À	ñKˆð �:‰:˜Ò"Ø˜4Ÿ:™: yÐ0Ñ1ˆDÜ˜D 4§>¡>Ñ1°9Ó=Ð=ä˜DŸN™N¨D¯J©JÓ7Ð7r   c                 óB   — t        | j                  | j                  «      S r   )r   r   r   ©r   s    r   Ú__copy__zQuantity.__copy__   s   € Ü˜Ÿ™¨¯
©
Ó3Ð3r   c                 ó.   — t        | j                  |«      S r   )Úgetattrr   )r   Úattrs     r   Ú__getattr__zQuantity.__getattr__"   s   € Ü�t—~‘~ tÓ,Ð,r   c                 óÆ   — t        j                  | j                  «      r#t        | j                  |   | j                  «      S t        | j                  | j                  «      S r   )ÚnpÚiterabler   r   r   )r   Úitems     r   Ú__getitem__zQuantity.__getitem__%   sA   € Ü�;‰;�t—~‘~Ô&Ü˜DŸN™N¨4Ñ0°$·*±*Ó=Ð=ä˜DŸN™N¨D¯J©JÓ7Ð7r   c                 ó@   — t        j                  | j                  «      S r   )r,   Úasarrayr   r%   s    r   Ú	__array__zQuantity.__array__+   s   € Ü�z‰z˜$Ÿ.™.Ó)Ð)r   N)	Ú__name__Ú
__module__Ú__qualname__r   r#   r&   r*   r/   r2   © r   r   r   r      s    „ òò8ò4ò-ò8ó*r   r   c                  ó¢   — t        j                  «       } d„ }d„ }t        |¬«      | _        t        d„ ¬«      | _        t        |¬«      | _        | S )Nc           	      óê  — t        | d«      r| j                  |«      j                  S t        j                  | «      r*	 | D �cg c]  }|j                  |«      j                  ‘Œ c}S t        | |j                  «       «      j                  |«      j                  S c c}w # t
        $ rJ | D �cg c]5  }t        ||j                  «       «      j                  |«      j                  ‘Œ7 nc c}w c}cY S w xY w©Nr   )Úhasattrr#   r   r,   r-   ÚAttributeErrorr   Ú	get_units)ÚvalueÚunitÚaxisÚvs       r   Úconvertz#quantity_converter.<locals>.convert5   sÊ   € Ü�5˜'Ô"Ø—8‘8˜D“>×+Ñ+Ð+Ü�[‰[˜Ôð(Ø6;Ö<°˜Ÿ™˜T›
×,Ó,Ò<Ð<ô
 ˜E 4§>¡>Ó#3Ó4×7Ñ7¸Ó=×GÑGÐGùò =øÜ!ò (à!&ö(Øô !  D§N¡NÓ$4Ó5×8Ñ8¸Ó>×HÓHñ (ùô (ò (ð(ús/   ¾B Á"BÁ$B ÂB ÂC2Â,:C'Ã&	C2Ã1C2c                 ó¢   — t        | d«      r| j                  S t        j                  | «      r"| D ]  }t        |d«      sŒ|j                  c S  y y r9   )r:   r   r,   r-   )r=   r?   r@   s      r   Údefault_unitsz)quantity_converter.<locals>.default_unitsA   sN   € Ü�5˜'Ô"Ø—;‘;ÐÜ�[‰[˜ÔØò #�Ü˜1˜gÕ&ØŸ7™7’Nð#ð ð	  r   )Úside_effectc                 ó0   — t        j                  | d¬«      S )N©r   éd   )ÚlabelÚdefault_limits)ÚmunitsÚAxisInfo)ÚuÚas     r   ú<lambda>z$quantity_converter.<locals>.<lambda>K   s   € Ü"ŸO™O°!ÀHÔMð r   )rJ   ÚConversionInterfacer   rA   ÚaxisinforC   )ÚqcrA   rC   s      r   Úquantity_converterrR   /   sP   € ô 
×	#Ñ	#Ó	%€Bò
Hòô  wÔ/€B„JÜñ )Nô O€B„Kä ¨]Ô;€BÔØ€Ir   zplot_pint.pngÚmpl20Úx86_64g¸…ëQ¸ž?)ÚstyleÚtolc                 óÀ  — dt         j                  d<   | t        j                  t        <   t	        t        j                  dd«      d«      }t	        t        j                  dd«      d«      }t        j                  «       \  }}|j                  d¬	«       |j                  ||d
«       |j                  t	        dd«      d¬«       |j                  t	        dd«      d¬«       |j                  j                  d«       |j                  j                  d«       | j                  j                   sJ ‚| j"                  j                   sJ ‚| j$                  j                   sJ ‚y )N)iùÿÿÿé   zaxes.formatter.limitsr   é   r   é   r   g333333Ã?©Úleftztab:bluei g  r   ztab:red)Úcoloréx   r   z	tab:greenr   r   )ÚpltÚrcParamsrJ   Úregistryr   r,   ÚlinspaceÚsubplotsÚsubplots_adjustÚplotÚaxhlineÚaxvlineÚyaxisÚ	set_unitsÚxaxisrA   ÚcalledrP   rC   )rR   ÚyÚxÚfigÚaxs        r   Útest_numpy_facaderp   S   s  € ð -2„C‡L�LÐ(Ñ)ð !3„F‡O�O”HÑô 	”—‘˜Q Ó# WÓ-€AÜ”—‘˜Q Ó" GÓ,€Aä�l‰l‹n�G€CˆØ×Ñ˜TÐÔ"Ø‡G�GˆAˆq�*ÔØ‡J�JŒx˜˜vÓ&¨i€JÔ8Ø‡J�JŒx˜˜YÓ'¨{€JÔ;Ø‡H�H×Ñ�xÔ Ø‡H�H×Ñ�yÔ!à×%Ñ%×,Ò,Ð,Ð,Ø×&Ñ&×-Ò-Ð-Ð-Ø×+Ñ+×2Ò2Ð2Ñ2r   zplot_masked_units.pngTg{®Gáz”?)Úremove_textrU   rV   c                  óì   — t        j                  dd«      } t         j                  j                  | | dkD  | dk  z  ¬«      }t	        |d«      }t        j                  «       \  }}|j                  |«       y )NéûÿÿÿrZ   éþÿÿÿé   )ÚmaskÚmeters)r,   rb   ÚmaÚarrayr   r_   rc   re   )r   Údata_maskedÚdata_masked_unitsrn   ro   s        r   Útest_plot_masked_unitsr|   n   s`   € ô �;‰;�r˜1Ó€DÜ—%‘%—+‘+˜d¨$°©)¸¸q¹Ñ)A�+ÓB€KÜ  ¨hÓ7Ðä�l‰l‹n�G€CˆØ‡G�GÐÕr   c                 óø   — | t         j                  t        <   t        j                  «       \  }}|j                  t        dd«      t        dd«      «       |j                  t        dd«      t        dd«      «       y )Néÿÿÿÿrw   é   r   é   )rJ   ra   r   r_   rc   Úset_xlimÚset_ylim)rR   rn   ro   s      r   Ú test_empty_set_limits_with_unitsrƒ   y   sW   € à 2„F‡O�O”HÑä�l‰l‹n�G€CˆØ‡K�K”˜˜XÓ&¬°°HÓ(=Ô>Ø‡K�K”˜˜WÓ%¤x°°GÓ'<Õ=r   zjpl_bar_units.pngÚdpir^   )Úsavefig_kwargrU   c                  óª  — dd l mc m}  | j                  «        | j	                  dd«      }d| j
                  z  d| j
                  z  d| j
                  z  g}d|z  d|z  d|z  g}| j                  dt        ddd	«      ¬
«      }t        j                  «       \  }}|j                  |||¬«       |j                  |d|z  z
  ||d   z   d|z  z   g«       y )Nr   ÚETç     õ@é   ru   é   éÙ  é   é   ©Údt)Úbottomr~   çj¼t“ð?)Úmatplotlib.testing.jpl_unitsÚtestingÚ	jpl_unitsÚregisterÚDurationÚkmÚEpochr   r_   rc   Úbarr‚   ©r   Údayrm   ÚwÚbrn   ro   s          r   Útest_jpl_bar_unitsrž   ‚   sÇ   € ÷ 1Ð0Ø	‡N�NÔà
�.‰.˜Ð1Ó
2€CØ	
ˆU�X‰X‰�q˜5Ÿ8™8‘| Q¨¯©¡\Ð2€AØ	
ˆS‰�!�c‘'˜1˜s™7Ð#€AØ�‰�DœX d¨A¨rÓ2ˆÓ3€AÜ�l‰l‹n�G€CˆØ‡F�Fˆ1ˆa˜€FÔØ‡K�K��Q˜‘W‘˜a ! B¡%™i¨5°C©-Ñ7Ð8Õ9r   zjpl_barh_units.pngc                  óª  — dd l mc m}  | j                  «        | j	                  dd«      }d| j
                  z  d| j
                  z  d| j
                  z  g}d|z  d|z  d|z  g}| j                  dt        ddd	«      ¬
«      }t        j                  «       \  }}|j                  |||¬«       |j                  |d|z  z
  ||d   z   d|z  z   g«       y )Nr   r‡   rˆ   r‰   ru   rŠ   r‹   rŒ   r�   rŽ   r[   r~   r‘   )r’   r“   r”   r•   r–   r—   r˜   r   r_   rc   Úbarhr�   rš   s          r   Útest_jpl_barh_unitsr¡   ‘   sÇ   € ÷ 1Ð0Ø	‡N�NÔà
�.‰.˜Ð1Ó
2€CØ	
ˆU�X‰X‰�q˜5Ÿ8™8‘| Q¨¯©¡\Ð2€AØ	
ˆS‰�!�c‘'˜1˜s™7Ð#€AØ�‰�DœX d¨A¨rÓ2ˆÓ3€Aä�l‰l‹n�G€CˆØ‡G�GˆAˆq�q€GÔØ‡K�K��Q˜‘W‘˜a ! B¡%™i¨5°C©-Ñ7Ð8Õ9r   c                  óD  — dd l mc m}  | j                  «        t	        ddd«      }| j                  d|¬«      }t        j                  j                  |«      j                  |d d «      }t        j                  j                  |«      j                  |d d «      }||k(  sJ ‚y )Nr   r‹   rŒ   r�   r‡   rŽ   )
r’   r“   r”   r•   r   r˜   rJ   ra   Úget_converterrA   )r   r�   ÚjplÚdt_convÚjpl_convs        r   Ú"test_jpl_datetime_units_consistentr§   ¡   s†   € ß0Ð0Ø	‡N�NÔä	�$˜˜2Ó	€BØ
�+‰+�d˜rˆ+Ó
"€CÜ�o‰o×+Ñ+¨BÓ/×7Ñ7¸¸DÀ$ÓG€GÜ�‰×,Ñ,¨SÓ1×9Ñ9¸#¸tÀTÓJ€HØ�hÒÐÑr   c                  ó€   — t        j                  t        j                  g d¬«      t        j                  g «      «       y )Nzdatetime64[ns]©Údtype)r_   Úscatterr,   ry   r6   r   r   Útest_empty_arraysr¬   ¬   s$   € ä‡K�K”—‘˜Ð#3Ô4´b·h±h¸r³lÕCr   c                  ó(  — t        j                  ddd¬«      } t        j                  t        | «      t        ¬«      }t         j                  |d<   t        j                  «       \  }}|j                  | |«       |j                  j                  «        y )Nz2005-02z2005-03zdatetime64[D]r©   r   )
r,   ÚarangeÚlenÚfloatÚnanr_   rc   r«   ÚcanvasÚdraw)Útimesrl   rn   ro   s       r   Útest_scatter_element0_maskedrµ   ±   s`   € Ü�I‰I�i °/ÔB€EÜ
�	‰	”#�e“*¤EÔ*€AÜ�6‰6€A€a�DÜ�l‰l‹n�G€CˆØ‡J�Jˆu�aÔØ‡J�J‡O�OÕr   c            	      ó  — t        j                  d«      } | D �cg c]  }t        dd|dz  dz   «      ‘Œ }}t        j                  «       \  }}|j                  | |t        d¬«      «       |j                  j                  «        y c c}w )Né
   éä  rZ   ru   r‰   g      à?)Údays)	r,   r®   r   r_   rc   Úerrorbarr   r²   r³   )rm   Úirl   rn   ro   s        r   Útest_errorbar_mixed_unitsr¼   º   sj   € Ü
�	‰	�"‹€AØ/0Ö1¨!Œ�$˜˜1˜q™5 1™9Õ	%Ð1€AÐ1Ü�l‰l‹n�G€CˆØ‡K�K��1”i SÔ)Ô*Ø‡J�J‡O�OÕùò 	2s   šBÚpng)Ú
extensionsc                 óÌ   —  G d„ dt         «      }| j                  «       j                   |ddd«      dd«       |j                  «       j                  t        ddd«      dd«       y )Nc                   ó   — e Zd Zy)útest_subclass.<locals>.subdateN)r3   r4   r5   r6   r   r   ÚsubdaterÁ   Ä   s   „ Ør   rÂ   iÐ  r‰   r   Úo)r   rc   re   )Úfig_testÚfig_refrÂ   s      r   Útest_subclassrÆ   Â   sX   € ô”(ô ð ×ÑÓ×Ñ™W T¨1¨aÓ0°!°SÔ9Ø×ÑÓ×ÑœH T¨1¨aÓ0°!°SÕ9r   c                 óê  — | t         j                  t        <   t        t        j                  ddd«      d«      }t        t        j                  ddd«      d«      }t        t        j                  ddd«      d«      }t        j                  ddd	d	¬
«      \  }\  }}|j                  ||«       |j                  ||«       |j                  j                  «       |j                  j                  «       cxk(  rdk(  sJ ‚ J ‚|j                  j                  «       |j                  j                  «       cxk(  rdk(  sJ ‚ J ‚|j                  j                  d«       |j                  j                  d«       |j                  j                  «       |j                  j                  «       cxk(  rdk(  sJ ‚ J ‚|j                  j                  «       |j                  j                  «       cxk(  rdk(  sJ ‚ J ‚y )Nr   r‰   r·   r   ru   r   rŠ   rŒ   Úall©ÚsharexÚshareyr   r   )rJ   ra   r   r,   rb   r_   rc   re   rj   r<   rh   ri   )rR   rm   Úy1Úy2rn   Úax1Úax2s          r   Útest_shared_axis_quantityrÐ   Ë   s�  € Ø 2„F‡O�O”HÑÜ”—‘˜Q  2Ó&¨Ó0€AÜ	”"—+‘+˜a  BÓ'¨Ó	0€BÜ	”"—+‘+˜a  BÓ'¨Ó	0€BÜ—l‘l 1 a°¸eÔD�O€C‰ˆ#ˆsØ‡H�HˆQ�„OØ‡H�HˆQ�„OØ�9‰9×ÑÓ  C§I¡I×$7Ñ$7Ó$9ÔD¸WÒDÐDÑDÐDÐDØ�9‰9×ÑÓ  C§I¡I×$7Ñ$7Ó$9ÔC¸VÒCÐCÑCÐCÐCØ‡I�I×Ñ˜	Ô"Ø‡I�I×Ñ˜Ô!Ø�9‰9×ÑÓ  C§I¡I×$7Ñ$7Ó$9ÔF¸YÒFÐFÑFÐFÐFØ�9‰9×ÑÓ  C§I¡I×$7Ñ$7Ó$9ÔE¸XÒEÐEÑEÐEÑEr   c            	      ó   — t        dd«      D � cg c]  } t        d| dt        j                  ¬«      ‘Œ! }} t        dd«      D � cg c]  } t        d| dt        j                  ¬«      ‘Œ! }} t	        j
                  ddd¬«      \  }\  }}|j                  |«       |j                  |«       |j                  j                  t        t        d	¬
«      «      «       |j                  j                  t        t        d	¬
«      «      k(  sJ ‚y c c} w c c} w )Nr‰   é   r¸   )Útzinfoiå  ru   T)rË   rZ   )r   )Úranger   r   Úutcr_   rc   re   rh   ri   r   r   )r»   rÌ   rÍ   rn   rÎ   rÏ   s         r   Útest_shared_axis_datetimerÖ   Û   sÇ   € ä=BÀ1Àb»\Ö	J¸Œ(�4˜˜A¤h§l¡lÖ
3Ð	J€BÐ	JÜ=BÀ1Àb»\Ö	J¸Œ(�4˜˜A¤h§l¡lÖ
3Ð	J€BÐ	JÜ—l‘l 1 a°Ô5�O€C‰ˆ#ˆsØ‡H�HˆR„LØ‡H�HˆR„LØ‡I�I×Ñœ¤°Ô!3Ó4Ô5Ø�9‰9�?‰?œh¤y°qÔ'9Ó:Ò:Ð:Ñ:ùò 
KùÚ	Js   �$DÁ$Dc                  óÆ  — dddœ} dddœ}t        j                  dddd¬«      \  }\  }}|j                  | j                  «       | j	                  «       «       |j                  |j                  «       |j	                  «       «       |j
                  j                  t        dd	g«      «       d|j
                  j                  «       j                  j                  «       v sJ ‚y )
Nr‰   ru   ©rM   r�   rŠ   rŒ   TrÉ   ÚcÚd)
r_   rc   re   ÚkeysÚvaluesrj   ri   r
   r<   Ú_mapping)Úd1Úd2rn   rÎ   rÏ   s        r   Útest_shared_axis_categoricalrà   æ   s«   € à�qÑ	€BØ�qÑ	€BÜ—l‘l 1 a°¸TÔB�O€C‰ˆ#ˆsØ‡H�HˆR�W‰W‹Y˜Ÿ	™	›Ô$Ø‡H�HˆR�W‰W‹Y˜Ÿ	™	›Ô$Ø‡I�I×Ñœ # s Ó,Ô-Ø�#—)‘)×%Ñ%Ó'×0Ñ0×5Ñ5Ó7Ñ7Ð7Ñ7r   c                  ó   — dddœ} t        «       }t        «       }t        «       }t        j                  «       \  }}|j                  j                  |«       |j                  j                  «       |k(  sJ ‚|j                  | j                  «       | j                  «       «       |j                  j                  «       |k(  sJ ‚|j                  j                  |«       t        j                  t        «      5  |j                  j                  |«       d d d «       t        j                  «       \  }}|j                  | j                  «       | j                  «       «       |j                  j                  |«       t        j                  «       \  }}	|	j                  | j                  «       | j                  «       «       t        j                  «       5  |	j                  j                  |«       d d d «       y # 1 sw Y   ŒçxY w# 1 sw Y   y xY w)Nr‰   ru   rØ   )r	   r   r_   rc   rj   Úset_converterr£   re   rÛ   rÜ   ÚpytestÚraisesÚRuntimeErrorÚwarns)
rÞ   Ústr_cat_converterÚstr_cat_converter_2Údate_converterÚfig1rÎ   Úfig2rÏ   Úfig3Úax3s
             r   Útest_explicit_converterrî   ñ   s‚  € Ø�qÑ	€BÜ,Ó.ÐÜ.Ó0ÐÜ"“_€Nô —‘“�I€Dˆ#Ø‡I�I×ÑÐ-Ô.Ø�9‰9×"Ñ"Ó$Ð(9Ò9Ð9Ð9à‡H�HˆR�W‰W‹Y˜Ÿ	™	›Ô$Ø�9‰9×"Ñ"Ó$Ð(9Ò9Ð9Ð9à‡I�I×ÑÐ-Ô.ä	�‰”|Ó	$ñ 5Ø�	‰	×ÑÐ 3Ô4÷5ô —‘“�I€Dˆ#Ø‡H�HˆR�W‰W‹Y˜Ÿ	™	›Ô$ð ‡I�I×ÑÐ-Ô.ä—‘“�I€Dˆ#Ø‡H�HˆR�W‰W‹Y˜Ÿ	™	›Ô$ô 
�‰‹ñ 0Ø�	‰	×Ñ Ô/÷0ð 0÷5ð 5ú÷0ð 0ús   Ã6G8ÇHÇ8HÈHc           
      óp  — | t         j                  t        <   t        j                  «       \  }}|j
                  j                  t        dgd«      «       |j                  «        |j                  «       dk(  sJ ‚|j                  j                  t        dgd«      «       |j                  «        |j                  «       dk(  sJ ‚t        j                  «       \  }}|j                  d«       |j                  t        t        j                  dd«      d«      t        t        j                  ddd«      d	«      «       |j                  «        |j                  «       d
k(  sJ ‚|j                  «       dk(  sJ ‚t        j                  «       \  }}|j                  d«       |j                  t        t        j                  dd«      d«      t        t        j                  ddd«      d	«      «       |j                  «        |j                  «       dk(  sJ ‚|j                  «       dk(  sJ ‚t        j                  «       \  }}|j
                  j                  t        dgd«      «       |j                  d«       |j                  «        |j                  «       dk(  sJ ‚|j                  «       dk(  sJ ‚t        j                  «       \  }}|j                  j                  t        dgd«      «       |j                  d«       |j                  «        |j                  «       dk(  sJ ‚|j                  «       dk(  sJ ‚y )Nr·   r   rF   rY   r   rŠ   r   ru   r   )r   ru   )r   rY   )r   rŒ   )g     €<@g     €?@)rJ   ra   r   r_   rc   rj   Úupdate_unitsÚdraw_without_renderingÚget_xlimrh   Úget_ylimrf   re   r,   r®   rg   )rR   rn   rÎ   ro   s       r   Útest_empty_default_limitsrô     so  € Ø 2„F‡O�O”HÑÜ�|‰|‹~�H€CˆØ‡I�I×Ñœ8 R D¨'Ó2Ô3Ø×ÑÔ Ø�<‰<‹>˜XÒ%Ð%Ð%Ø‡I�I×Ñœ8 R D¨'Ó2Ô3Ø×ÑÔ Ø�<‰<‹>˜XÒ%Ð%Ð%ä�l‰l‹n�G€CˆØ‡J�Jˆr„NØ‡G�GŒH”R—Y‘Y˜q !“_ gÓ.Ü”R—Y‘Y˜q ! QÓ'¨Ó0ô2à×ÑÔ Ø�;‰;‹=˜FÒ"Ð"Ð"Ø�;‰;‹=˜GÒ#Ð#Ð#ä�l‰l‹n�G€CˆØ‡J�Jˆr„NØ‡G�GŒH”R—Y‘Y˜q !“_ gÓ.Ü”R—Y‘Y˜q ! QÓ'¨Ó0ô2à×ÑÔ Ø�;‰;‹=˜GÒ#Ð#Ð#Ø�;‰;‹=˜FÒ"Ð"Ð"ä�l‰l‹n�G€CˆØ‡H�H×Ñœ( B 4¨Ó1Ô2Ø‡J�Jˆr„NØ×ÑÔ Ø�;‰;‹=˜HÒ$Ð$Ð$Ø�;‰;‹=˜LÒ(Ð(Ð(ä�l‰l‹n�G€CˆØ‡H�H×Ñœ( B 4¨Ó1Ô2Ø‡J�Jˆr„NØ×ÑÔ Ø�;‰;‹=˜HÒ$Ð$Ð$Ø�;‰;‹=˜LÒ(Ð(Ñ(r   c                   ó*   — e Zd Zd„ Zdd„Zed„ «       Zy)ÚKernelc                 ó8   — t        j                  |«      | _        y r   )r,   Ú
asanyarrayÚ_array)r   ry   s     r   r   zKernel.__init__=  s   € Ü—m‘m EÓ*ˆ�r   Nc                 ó   — |�C|| j                   j                  k7  r*|�(|s&t        d| j                   j                  › d|› d�«      ‚t        j                  | j                   |¬«      }|s|S t        j
                  |«      S )NzConverting array from z to z requires a copyr©   )rù   rª   Ú
ValueErrorr,   r1   Úcopy)r   rª   rü   Úarrs       r   r2   zKernel.__array__@  sz   € ØÐ ¨$¯+©+×*;Ñ*;Ò!;ØÐ©Ü Ø,¨T¯[©[×->Ñ->Ð,?¸tØ�gÐ-ð/óð ô
 �j‰j˜Ÿ™¨EÔ2ˆÙ�Ð2¤R§W¡W¨S£\Ð2r   c                 ó.   — | j                   j                  S r   )rù   Úshaper%   s    r   rÿ   zKernel.shapeK  s   € à�{‰{× Ñ Ð r   )NN)r3   r4   r5   r   r2   Úpropertyrÿ   r6   r   r   rö   rö   <  s    „ ò+ó	3ð ñ!ó ñ!r   rö   c                  óH   — t        g d¢«      } t        j                  | «       y )N)r‰   ru   rŠ   rŒ   rZ   )rö   r_   re   )Úkernels    r   Útest_plot_kernelr  P  s   € ä’OÓ$€FÜ‡H�HˆVÕr   c                 ó(  — t        j                  dd¬«      \  }\  }}| j                  d«      }|j                  |«       d}|j	                  |«       t        j                  |dfd|fdd||¬«      }|j                  |«       |j                  «        y )	Nru   )r·   rZ   )ÚnrowsÚfigsizez2017-01-01T12z	test testr   r   )ÚcoordsAÚcoordsBÚaxesAÚaxesB)	r_   rc   Ú	Timestamprg   rf   ÚmpatchesÚConnectionPatchÚ
add_artistrñ   )Úpdrn   rÎ   rÏ   rm   rl   rý   s          r   Útest_connection_patch_unitsr  V  sƒ   € ä—l‘l¨°GÔ<�O€C‰ˆ#ˆsØ
�‰�_Ó%€AØ‡K�K�„NØ€AØ‡K�K�„NÜ
×
"Ñ
" A q 6¨A¨q¨6Ø+1¸6Ø),°Cô9€Cð ‡N�N�3ÔØ×ÑÕ r   )0r   r   r   ÚplatformÚunittest.mockr   Úmatplotlib.pyplotÚpyplotr_   Úmatplotlib.testing.decoratorsr   r   Úmatplotlib.patchesÚpatchesr  Úmatplotlib.unitsr   rJ   Úmatplotlib.categoryr	   r
   Úmatplotlib.datesr   Únumpyr,   rã   r   ÚfixturerR   Úmachinerp   r|   rƒ   rž   r¡   r§   r¬   rµ   r¼   rÆ   rÐ   rÖ   rà   rî   rô   rö   r  r  r6   r   r   ú<module>r     sv  ðß 2Ñ 2Û Ý #å ß OÝ %Ý !ß >Ý *Û Û ÷*ñ *ð> ‡�ñó ðñF �?Ð#¨7Ø+˜8×+Ñ+Ó-°Ò9‘a¸tôEñ3óEð3ñ2 Ð*Ð+¸ÀWØ+˜8×+Ñ+Ó-°Ò9‘a¸tôEñóEðò>ñ Ð&Ð'Ø!&¨ °Gô=ñ
:ó=ð
:ñ Ð'Ð(Ø!&¨ °Gô=ñ:ó=ð:òòDò
òñ   Ô(ñ:ó )ð:òFò ;ò8ò0òB&)÷T!ñ !ò(ó!r   