Ë
    ¤ehÃ3  ã                   óì  — d dl mZm Z  d dlZd dlZd dlZd dlZd dlmc m	Z
 d dlmZ d dlmZmZmZmZmZmZmZ d dlmZ d dlmZmZ d dlmZmZmZmZ 	 d dl m!Z!  ejF                  d«        ejF                  d	«      Z$ejJ                  jL                  d
„ «       Z'd„ Z( G d„ d«      Z) G d„ d«      Z* G d„ d«      Z+ G d„ d«      Z,ejJ                  j[                  dg d¢«      d„ «       Z.y# e"$ r Y Œ—w xY w)é    )ÚdateÚdatetimeN)Ú	to_offset)ÚIndexÚPeriodÚPeriodIndexÚSeriesÚ	TimestampÚarraysÚ
date_range)Ú deregister_matplotlib_convertersÚregister_matplotlib_converters)ÚDayÚMicroÚMilliÚSecond)Ú	converterúmatplotlib.pyplotúmatplotlib.datesc                  óX   — d} t         j                  d| g}t        j                  |«       y )Nzúimport matplotlib.units as units; import matplotlib.dates as mdates; n_conv = len(units.registry); import pandas as pd; pd.plotting.register_matplotlib_converters(); pd.plotting.deregister_matplotlib_converters(); assert len(units.registry) == n_convú-c)ÚsysÚ
executableÚ
subprocessÚcheck_output)ÚcodeÚcalls     úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/plotting/test_converter.pyÚtest_registry_mpl_resetsr   0   s,   € ð	/ð 	ô �N‰N˜D $Ð'€DÜ×Ñ˜DÕ!ó    c                  ó^   — t        j                  d«      t        j                  d«      k(  sJ ‚y )Nz00:01)r   Útime2num© r    r   Útest_timtetonum_accepts_unicoder$   @   s&   € Ü×Ñ˜gÓ&¬)×*<Ñ*<¸WÓ*EÒEÐEÑEr    c                   ób   — e Zd Zej                  j
                  d„ «       Zd„ Zd„ Zd„ Z	d„ Z
d„ Zy)ÚTestRegistrationc                 ób   — d}t         j                  d|g}t        j                  |«      dk(  sJ ‚y )Nzwimport matplotlib.units; import pandas as pd; units = dict(matplotlib.units.registry); assert pd.Timestamp not in unitsr   r   )r   r   r   Ú
check_call)Úselfr   r   s      r   Útest_dont_register_by_defaultz.TestRegistration.test_dont_register_by_defaultE   s7   € ð/ð 	ô —‘  dÐ+ˆÜ×$Ñ$ TÓ*¨aÒ/Ð/Ñ/r    c                 ó  — t        j                  d«      }t        t        d«      t	        dd¬«      ¬«      }|j                  «       \  }}t        «        |j                  |j                  |j                  «       |j                  «        y )Nr   é   Ú2017©Úperiods©Úindex)ÚpytestÚimportorskipr	   Úranger   Úsubplotsr   Úplotr1   ÚvaluesÚclose)r)   ÚpltÚsÚ_Úaxs        r   Útest_registering_no_warningz,TestRegistration.test_registering_no_warningQ   s`   € Ü×!Ñ!Ð"5Ó6ˆÜ”5˜“9¤J¨v¸rÔ$BÔCˆØ—‘“‰ˆˆ2ô 	'Ô(Ø
�‰�—‘˜Ÿ™Ô"Ø�	‰	�r    c                 óR  — t        j                  d«      }t        t        d«      t	        dd¬«      ¬«      }t        j                  d «      5 }|j                  «        d d d «       	 t        «      dk(  sJ ‚	 |j                  «        y # 1 sw Y   Œ,xY w# |j                  «        w xY w)Nr   r,   r-   r.   r0   r   )
r2   r3   r	   r4   r   ÚtmÚassert_produces_warningr6   Úlenr8   )r)   r9   r:   Úws       r   Útest_pandas_plots_registerz+TestRegistration.test_pandas_plots_register[   s‚   € Ü×!Ñ!Ð"5Ó6ˆÜ”5˜“9¤J¨v¸rÔ$BÔCˆä×'Ñ'¨Ó-ð 	°Ø�F‰FŒH÷	ð	Ü�q“6˜Q’;Ð‘;à�I‰I�K÷	ð 	ûð �I‰I�Kús   ÁBÁ&B ÂBÂB&c                 ó.  — t        j                  d«      }t        j                  dd«      5  t        j                  dd«      5  t        |j
                  vsJ ‚	 d d d «       t        |j
                  v sJ ‚	 d d d «       y # 1 sw Y   Œ'xY w# 1 sw Y   y xY w)Númatplotlib.unitsú'plotting.matplotlib.register_convertersTF)r2   r3   ÚcfÚoption_contextr
   Úregistry)r)   Úunitss     r   Útest_matplotlib_formattersz+TestRegistration.test_matplotlib_formattersg   sŠ   € Ü×#Ñ#Ð$6Ó7ˆô ×ÑÐHÈ$ÓOñ 	/Ü×"Ñ"Ð#LÈeÓTñ 7Ü ¨¯©Ñ6Ð6Ñ6÷7ä §¡Ñ.Ð.Ñ.÷	/ð 	/÷7ð 7ú÷	/ð 	/ús#   ¬BÁA?ÁBÁ?B	ÂBÂBc                 ó  — t        j                  d«       t        j                  dd«      }t        j                  d«      }t	        t        d«      t        dd¬«      ¬«      }|j                  «       \  }}|5  |j                  |j                  |j                  «       d d d «       t        «        |5  |j                  |j                  |j                  «       d d d «       |j                  «        y # 1 sw Y   ŒUxY w# 1 sw Y   Œ&xY w)Nr   rF   Fr,   r-   r.   r0   )r2   r3   rG   rH   r	   r4   r   r5   r6   r1   r7   r   r8   )r)   Úctxr9   r:   r;   r<   s         r   Útest_option_no_warningz'TestRegistration.test_option_no_warnings   sÊ   € Ü×ÑÐ/Ô0Ü×ÑÐ IÈ5ÓQˆÜ×!Ñ!Ð"5Ó6ˆÜ”5˜“9¤J¨v¸rÔ$BÔCˆØ—‘“‰ˆˆ2ð ñ 	'Ø�G‰G�A—G‘G˜QŸX™XÔ&÷	'ô 	'Ô(Øñ 	'Ø�G‰G�A—G‘G˜QŸX™XÔ&÷	'à�	‰	�÷	'ð 	'ú÷
	'ð 	'ús   Á7'C2Â2'C>Ã2C;Ã>Dc                 ó¸  — t        j                  d«      }t        j                  d«      }t        |j                  «      }	 |j                  j	                  «        |j                  «       }||j                  t        <   ||j                  t        <   t        «        |j                  t           |usJ ‚t        «        |j                  t           |u sJ ‚	 |j                  j	                  «        |j                  «       D ]  \  }}||j                  |<   Œ y # |j                  j	                  «        |j                  «       D ]  \  }}||j                  |<   Œ w xY w)NrE   r   )r2   r3   ÚdictrI   ÚclearÚDateConverterr   r   r   r   Úitems)r)   rJ   ÚdatesÚoriginalÚdate_converterÚkÚvs          r   Útest_registry_resetsz%TestRegistration.test_registry_resets„   s#  € Ü×#Ñ#Ð$6Ó7ˆÜ×#Ñ#Ð$6Ó7ˆô ˜Ÿ™Ó'ˆð	&à�N‰N× Ñ Ô"Ø"×0Ñ0Ó2ˆNØ'5ˆE�N‰Nœ8Ñ$Ø#1ˆE�N‰Nœ4Ñ ä*Ô,Ø—>‘>¤$Ñ'¨~Ñ=Ð=Ð=Ü,Ô.Ø—>‘>¤$Ñ'¨>Ñ9Ð9Ñ9ð �N‰N× Ñ Ô"Ø Ÿ™Ó(ò &‘��1Ø$%�—‘˜qÒ!ñ&øð �N‰N× Ñ Ô"Ø Ÿ™Ó(ò &‘��1Ø$%�—‘˜qÒ!ñ&ús   ÁBD ÄAEN)Ú__name__Ú
__module__Ú__qualname__r2   ÚmarkÚ
single_cpur*   r=   rC   rK   rN   rY   r#   r    r   r&   r&   D   s7   „ Ø‡[�[×Ññ	0ó ð	0òò
ò
/òó"&r    r&   c                   óÒ  — e Zd Zej                  d„ «       Zd„ Zd„ Zd„ Zej                  j                  d eddd«       eddd«      g edddd	«       edddd	«      gg«      d
„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dd«      d„ «       Zej                  j                  d e«        e«        ed«      g«      d„ «       Zd„ Zy)ÚTestDateTimeConverterc                 ó*   — t        j                  «       S ©N)r   ÚDatetimeConverter©r)   s    r   ÚdtczTestDateTimeConverter.dtcŸ   s   € ä×*Ñ*Ó,Ð,r    c                 óh   — |j                  dd d «      }|j                  dd d «      }||k(  sJ d«       ‚y )Nz2000-01-01 12:22z/DatetimeConverter.convert should accept unicode©Úconvert)r)   re   Úr1Úr2s       r   Útest_convert_accepts_unicodez2TestDateTimeConverter.test_convert_accepts_unicode£   s:   € Ø�[‰[Ð+¨T°4Ó8ˆØ�[‰[Ð+¨T°4Ó8ˆØ�RŠxÐJÐJÓJ‰xr    c                 ó  — |j                  dgd d «      d   }t        j                  t        ddd«      «      }||k(  sJ ‚|j                  dd d «      }||k(  sJ ‚|j                  t	        ddd«      d d «      }||k(  sJ ‚|j                  dd d «      }||k(  sJ ‚|j                  t        d«      d d «      }||k(  sJ ‚|j                  dd d «      }||k(  sJ ‚|j                  dd d «      }||k(  sJ ‚|j                  t        j                  ddg«      d d «      }|d   |k(  sJ ‚t        d«      j                  d«      j                  d	«      }|j                  |d d «      }||k(  sJ ‚|j                  |j                  «       d d «      }||k(  sJ ‚|j                  t        |t        d«      z
  |g«      d d «      }|d   |k(  sJ ‚|j                  t        |t        d«      z
  |g«      j                  «       d d «      }|d   |k(  sJ ‚y )
Nú2012-1-1r   éÜ  é   ú
2012-01-01ú2012-01-01 00:00:00+0000z2012-01-02 00:00:00+0000ÚUTCz
US/Eastern)rh   rT   Údate2numr   r   r
   ÚnpÚarrayÚtz_localizeÚ
tz_convertÚto_pydatetimer   r   )r)   re   ÚrsÚxpÚtss        r   Útest_conversionz%TestDateTimeConverter.test_conversion¨   s  € Ø�[‰[˜*˜ t¨TÓ2°1Ñ5ˆÜ�^‰^œH T¨1¨aÓ0Ó1ˆØ�RŠxˆˆxà�[‰[˜ T¨4Ó0ˆØ�RŠxˆˆxà�[‰[œ˜d A qÓ)¨4°Ó6ˆØ�RŠxˆˆxà�[‰[˜ T¨4Ó0ˆØ�RŠxˆˆxà�[‰[œ :Ó.°°dÓ;ˆØ�RŠxˆˆxð �[‰[˜ t¨TÓ2ˆØ�RŠxˆˆxà�[‰[Ð3°T¸4Ó@ˆØ�RŠxˆˆxà�[‰[Ü�H‰HÐ0Ð2LÐMÓNØØó
ˆð
 �!‰u˜Š{Ðˆ{ô �|Ó$×0Ñ0°Ó7×BÑBÀ<ÓPˆØ�[‰[˜˜T 4Ó(ˆØ�RŠxˆˆxà�[‰[˜×)Ñ)Ó+¨T°4Ó8ˆØ�RŠxˆˆxà�[‰[œ ¤S¨£V¡¨RÐ0Ó1°4¸Ó>ˆØ�!‰u˜Š{Ðˆ{à�[‰[œ ¤S¨£V¡¨RÐ0Ó1×?Ñ?ÓAÀ4ÈÓNˆØ�!‰u˜Š{Ð‰{r    c           
      ó¦  — d}|j                  t        dd¬«      d d «      }t        j                  j	                  t        dd¬«      «      }t        j                  |||¬«       |j                  t        dd¬«      d d «      }t        j                  |||¬«       |j                  t        dd	d	d	d
d«      d d «      }t        j                  |||¬«       y )Ng•Ö&è.>z2012-1-1 01:02:03rr   )Útz©Úrtolz2012-1-1 09:02:03zAsia/Hong_Kongrn   ro   é   é   )rh   r
   r   Úmdatesrs   r?   Úassert_almost_equalr   )r)   re   r€   ry   rz   s        r   Útest_conversion_floatz+TestDateTimeConverter.test_conversion_floatÖ   s¶   € Øˆà�[‰[œÐ#6¸5ÔAÀ4ÈÓNˆÜ×Ñ×&Ñ&¤yÐ1DÈÔ'OÓPˆÜ
×Ñ˜r 2¨DÕ1à�[‰[ÜÐ)Ð.>Ô?ÀÀtó
ˆô 	×Ñ˜r 2¨DÕ1à�[‰[œ $¨¨1¨a°°AÓ6¸¸dÓCˆÜ
×Ñ˜r 2¨DÖ1r    r7   i�  ro   r�   r,   c                 ó  — |j                  |d d «      }t        j                  j                  |«      }t	        j
                  ||«       |j                  |d   d d «      }t        j                  j                  |d   «      }||k(  sJ ‚y )Nr   )rh   r   rƒ   rs   r?   Úassert_numpy_array_equal)r)   re   r7   ry   rz   s        r   Ú$test_conversion_outofbounds_datetimez:TestDateTimeConverter.test_conversion_outofbounds_datetimeå   sw   € ð �[‰[˜  tÓ,ˆÜ×Ñ×&Ñ& vÓ.ˆÜ
×#Ñ# B¨Ô+Ø�[‰[˜ ™ D¨$Ó/ˆÜ×Ñ×&Ñ& v¨a¡yÓ1ˆØ�RŠxˆ‰xr    ztime,format_expected))r   z00:00)g‘óþÿÿõ@z23:59:59.999999)i�_ z01:00)i‹  z01:02:03)gfffffeã@z11:02:03.200c                 óH   —  t        j                  d «      |«      }||k(  sJ ‚y rb   )r   ÚTimeFormatter)r)   ÚtimeÚformat_expectedÚresults       r   Útest_time_formatterz)TestDateTimeConverter.test_time_formatterõ   s)   € ð /”×(Ñ(¨Ó.¨tÓ4ˆØ˜Ò(Ð(Ñ(r    Úfreq)ÚBÚmsr:   c                 óÔ   — d}t        dd|¬«      }|j                  |d d «      }t        j                  j	                  |j                  «       «      }t        j                  |||¬«       y )Ng•Ö&è.>z
2020-01-01é
   )r/   r�   r   )r   rh   r   rƒ   rs   Ú	_mpl_reprr?   r„   )r)   r�   re   r€   Ú	dateindexry   rz   s          r   Útest_dateindex_conversionz/TestDateTimeConverter.test_dateindex_conversion  sX   € àˆÜ˜|°R¸dÔCˆ	Ø�[‰[˜ D¨$Ó/ˆÜ×Ñ×&Ñ& y×':Ñ':Ó'<Ó=ˆÜ
×Ñ˜r 2¨DÖ1r    Úoffseté2   c                 óœ   — t        d«      }||z   }|j                  |d d «      }|j                  |d d «      }||k  st        |› d|› d�«      ‚y )Nrm   z is not less than ú.)r
   rh   ÚAssertionError)r)   r—   re   Úts1Úts2Úval1Úval2s          r   Útest_resolutionz%TestDateTimeConverter.test_resolution  s`   € ô ˜
Ó#ˆØ�F‰lˆØ�{‰{˜3  dÓ+ˆØ�{‰{˜3  dÓ+ˆØ�dŠ{Ü  D 6Ð);¸D¸6ÀÐ!CÓDÐDð r    c                 óø   — t        d«      t        d«      g}||g}|j                  |d d «      }|D �cg c]  }|j                  |d d «      ‘Œ }}t        j                  |«      |k(  j	                  «       sJ ‚y c c}w )Nz
2017-01-01z
2017-01-02)r
   rh   rt   ru   Úall)r)   re   ÚinnerÚdatar�   ÚxÚexpecteds          r   Útest_convert_nestedz)TestDateTimeConverter.test_convert_nested  sv   € Ü˜<Ó(¬)°LÓ*AÐBˆØ�uˆ~ˆØ—‘˜T 4¨Ó.ˆØ8<Ö=°1�C—K‘K  4¨Õ.Ð=ˆÐ=Ü—‘˜Ó  HÑ,×1Ñ1Ô3Ð3Ñ3ùò >s   ²A7N)rZ   r[   r\   r2   Úfixturere   rk   r|   r…   r]   Úparametrizer   r   rˆ   rŽ   r–   r   r   r   r    r§   r#   r    r   r`   r`   ž   s  „ Ø‡^�^ñ-ó ð-òKò
,ò\2ð ‡[�[×ÑØá�$˜˜1Ó™t D¨!¨QÓ/Ð0Ù�d˜A˜q "Ó%¡x°°a¸¸BÓ'?Ð@ð	
óñóðð ‡[�[×ÑØò	
ó	ñ)ó	ð)ð
 ‡[�[×Ñ˜VÐ%5Ó6ñ2ó 7ð2ð ‡[�[×Ñ˜X©«±%³'¹5À»9Ð'EÓFñEó GðEó4r    r`   c                   ól   — e Zd Zej                  d„ «       Zej                  d„ «       Zd„ Zd„ Zd„ Z	d„ Z
y)ÚTestPeriodConverterc                 ó*   — t        j                  «       S rb   )r   ÚPeriodConverterrd   s    r   ÚpczTestPeriodConverter.pc   s   € ä×(Ñ(Ó*Ð*r    c                 ó6   —  G d„ d«      } |«       }d|_         |S )Nc                   ó   — e Zd Zy)ú&TestPeriodConverter.axis.<locals>.AxisN)rZ   r[   r\   r#   r    r   ÚAxisr±   &  s   „ Ør    r²   ÚD)r�   )r)   r²   Úaxiss      r   r´   zTestPeriodConverter.axis$  s!   € ÷	ñ 	ñ ‹vˆØˆŒ	Øˆr    c                 ó^   — |j                  dd |«      }|j                  dd |«      }||k(  sJ ‚y )Nrm   rg   )r)   r®   r´   ri   rj   s        r   rk   z0TestPeriodConverter.test_convert_accepts_unicode-  s1   € Ø�Z‰Z˜
 D¨$Ó/ˆØ�Z‰Z˜
 D¨$Ó/ˆØ�RŠxˆ‰xr    c                 óž  — |j                  dgd |«      d   }t        d«      j                  }||k(  sJ ‚|j                  dd |«      }||k(  sJ ‚|j                  t        ddd«      gd |«      d   }||k(  sJ ‚|j                  t        ddd«      d |«      }||k(  sJ ‚|j                  t	        d«      gd |«      d   }||k(  sJ ‚|j                  t	        d«      d |«      }||k(  sJ ‚|j                  dd |«      }||k(  sJ ‚|j                  dd |«      }||k(  sJ ‚|j                  t        j                  ddgd	¬
«      d |«      }|d   |k(  sJ ‚y )Nrm   r   rn   ro   rp   rq   z2012-01-01 00:00:00z2012-01-02 00:00:00zdatetime64[ns]©Údtype)rh   r   Úordinalr   r
   rt   ru   ©r)   r®   r´   ry   rz   s        r   r|   z#TestPeriodConverter.test_conversion2  sn  € Ø�Z‰Z˜˜ d¨DÓ1°!Ñ4ˆÜ�JÓ×'Ñ'ˆØ�RŠxˆˆxà�Z‰Z˜
 D¨$Ó/ˆØ�RŠxˆˆxà�Z‰Zœ˜d A qÓ)Ð*¨D°$Ó7¸Ñ:ˆØ�RŠxˆˆxà�Z‰Zœ˜T 1 aÓ(¨$°Ó5ˆØ�RŠxˆˆxà�Z‰Zœ :Ó.Ð/°°tÓ<¸QÑ?ˆØ�RŠxˆˆxà�Z‰Zœ	 *Ó-¨t°TÓ:ˆØ�RŠxˆˆxà�Z‰Z˜ d¨DÓ1ˆØ�RŠxˆˆxà�Z‰ZÐ2°D¸$Ó?ˆØ�RŠxˆˆxà�Z‰ZÜ�H‰HØ&Ð(=Ð>Ø&ôð Øó
ˆð �!‰u˜Š{Ð‰{r    c                 óD   — |j                  ddgd |«      }ddg}||k(  sJ ‚y )Nr   ro   rg   rº   s        r   Útest_integer_passthroughz,TestPeriodConverter.test_integer_passthroughV  s,   € à�Z‰Z˜˜A˜  dÓ+ˆØ�ˆVˆØ�RŠxˆ‰xr    c                 ó    — ddg}|j                  ||gd |«      }t        d«      D �cg c]  }|j                  |d |«      ‘Œ }}||k(  sJ ‚y c c}w )Nrm   z2012-1-2r�   )rh   r4   )r)   r®   r´   r¤   ri   r;   rj   s          r   r§   z'TestPeriodConverter.test_convert_nested\  sV   € Ø˜JÐ'ˆØ�Z‰Z˜˜t˜ d¨DÓ1ˆÜ49¸!³HÖ=¨qˆb�j‰j˜˜t TÕ*Ð=ˆÐ=Ø�RŠxˆ‰xùò >s   §AN)rZ   r[   r\   r2   r¨   r®   r´   rk   r|   r¼   r§   r#   r    r   r«   r«     sE   „ Ø‡^�^ñ+ó ð+ð ‡^�^ñó ðòò
"òHór    r«   c                   ó    — e Zd ZdZej
                  j                  dg d¢«      d„ «       Zej
                  j                  dddg«      d„ «       Zy	)
ÚTestTimeDeltaConverterzTest timedelta converterzx, decimal, format_expected))ç        r   z00:00:00)l    xqAsro   z
01:06:12.3)l    6¶2º" r�   z8 days 06:07:13.43)l    KVôué   z09:00:23.4320c                 óZ   — t         j                  }|j                  |d |¬«      }||k(  sJ ‚y )N)ÚposÚ
n_decimals)r   ÚTimeSeries_TimedeltaFormatterÚformat_timedelta_ticks)r)   r¥   ÚdecimalrŒ   Útdcr�   s         r   Útest_format_timedelta_ticksz2TestTimeDeltaConverter.test_format_timedelta_ticksf  s4   € ô ×5Ñ5ˆØ×+Ñ+¨A°4ÀGÐ+ÓLˆØ˜Ò(Ð(Ñ(r    Úview_interval)ro   r�   )r�   ro   c                 óˆ   ‡—  G ˆfd„d«      }t        j                  «       }|j                  |d |«       «        |dd«       y )Nc                   ó   •— e Zd Zˆ fd„Zy)úNTestTimeDeltaConverter.test_call_w_different_view_intervals.<locals>.mock_axisc                 ó   •— ‰S rb   r#   )r)   rÊ   s    €r   Úget_view_intervalz`TestTimeDeltaConverter.test_call_w_different_view_intervals.<locals>.mock_axis.get_view_intervalx  s	   ø€ Ø$Ð$r    N)rZ   r[   r\   rÏ   )rÊ   s   €r   Ú	mock_axisrÍ   w  s   ø„ õ%r    rÐ   r´   rÀ   r   )r   rÅ   Úsetattr)r)   rÊ   ÚmonkeypatchrÐ   rÈ   s    `   r   Ú$test_call_w_different_view_intervalsz;TestTimeDeltaConverter.test_call_w_different_view_intervalst  s:   ø€ ÷	%ó 	%ô ×5Ñ5Ó7ˆØ×Ñ˜C ©«Ô5ÙˆC��r    N)	rZ   r[   r\   Ú__doc__r2   r]   r©   rÉ   rÓ   r#   r    r   r¿   r¿   c  sY   „ Ù"à‡[�[×ÑØ%ò	
óñ)óð)ð
 ‡[�[×Ñ˜_¨v°vÐ.>Ó?ñó @ñr    r¿   Ú	year_span)	g     €&@é   éP   é–   i�  i   iÜ  iÄ	  i¬  c                 ód  — d}|| dz  z   }||z
  dz   }|dk  rt        j                  d«       |dz  }t        j                  |«      \  }}t        j                  ||t        d«      «      }t        t        j                  t        j                  |D �cg c]  }|d   ‘Œ	 c}«      d¬	«      «      }	t        j                  |D �cg c]  }|d   ‘Œ	 c}«      }
t        j                  |D �cg c]  }|d
   ‘Œ	 c}«      }|	|
   }|	|   }|j                  |z  dk(  }|j                  |z  dk(  }|j                  dk(  }|j                  dk(  }t        j                  |«      sJ ‚t        j                  |«      sJ ‚t        j                  |«      sJ ‚t        j                  |«      sJ ‚y c c}w c c}w c c}w )NiüÿÿrÁ   ro   é-   z9the quarterly finder is only invoked if the span is >= 45ÚQEr   z	period[Q]r·   r�   )r2   Úskipr   Ú_get_default_annual_spacingÚ_quarterly_finderr   r   r   ÚPeriodArrayrt   ru   ÚyearÚquarterr¢   )rÕ   ÚvminÚvmaxÚspanÚnyearsÚ
min_anndefÚ
maj_anndefr�   r¥   ÚquartersÚmajorsÚminorsÚmajor_quartersÚminor_quartersÚcheck_major_yearsÚcheck_minor_yearsÚcheck_major_quartersÚcheck_minor_quarterss                     r   Útest_quarterly_finderrñ   €  s•  € ð €DØ�)˜a‘-Ñ€DØ�$‰;˜‰?€DØˆb‚yÜ�‰ÐOÔPØ�A‰X€FÜ(×DÑDÀVÓLÑ€Z�Ü×(Ñ(¨¨t´Y¸t³_ÓE€FÜÜ×Ñœ2Ÿ8™8°6Ö$:¨a Q q£TÒ$:Ó;À;ÔOó€Hô �X‰X VÖ, �q˜“tÒ,Ó-€FÜ�X‰X VÖ, �q˜“tÒ,Ó-€FØ˜fÑ%€NØ˜fÑ%€NØ&×+Ñ+¨jÑ8¸AÑ=ÐØ&×+Ñ+¨jÑ8¸AÑ=ÐØ)×1Ñ1°QÑ6ÐØ)×1Ñ1°QÑ6ÐÜ�6‰6Ð#Ô$Ð$Ð$Ü�6‰6Ð#Ô$Ð$Ð$Ü�6‰6Ð&Ô'Ð'Ð'Ü�6‰6Ð&Ô'Ð'Ñ'ùò %;ùâ,ùÚ,s   ÂF#ÃF(Ã'F-)/r   r   r   r   Únumpyrt   r2   Úpandas._config.configÚ_configÚconfigrG   Úpandas._libs.tslibsr   Úpandasr   r   r   r	   r
   r   r   Úpandas._testingÚ_testingr?   Úpandas.plottingr   r   Úpandas.tseries.offsetsr   r   r   r   Úpandas.plotting._matplotlibr   ÚImportErrorr3   rT   r]   r^   r   r$   r&   r`   r«   r¿   r©   rñ   r#   r    r   ú<module>rþ      s  ð÷ó Û 
ã Û ç "Ð "å )÷÷ ñ õ ÷÷ó ð	Ý5ð €× Ñ Ð'Ô (Øˆ×ÑÐ.Ó/€ð ‡�×Ññ"ó ð"òF÷W&ñ W&÷t~4ñ ~4÷BAñ A÷Hñ ð: ‡�×Ñ˜Ò&VÓWñ(ó Xñ(øðy
 ò 	ñ 	ð	ús   ÁC+ Ã+C3Ã2C3