Ë
    âQ(h ]  ã                   ó$  — d Z ddlZddlZddlZddlZddlZddlZddlmZ ddl	m
Z
mZ ddlmZ ddlmZ d„ Z G d„ d	«      Z G d
„ de«      Z edg d¢«      Z G d„ de«      Zd„ Z G d„ de«      Z G d„ de«      Z G d„ de«      Zdddeeefd„Zy)z;Extract reference documentation from the NumPy source tree.é    N)Ú
namedtuple)ÚCallableÚMapping)Úcached_property)Úwarnc                 ó¾   — | r,| d   j                  «       s| d= | r| d   j                  «       sŒ| r,| d   j                  «       s| d= | r| d   j                  «       sŒ| S )z<Remove leading and trailing blank lines from a list of linesr   éÿÿÿÿ©Ústrip)Úls    úS/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/_lib/_docscrape.pyÚstrip_blank_linesr      sU   € á
�A�a‘D—J‘J”LØˆaˆDñ �A�a‘D—J‘J•Lá
�A�b‘E—K‘K”MØˆbˆEñ �A�b‘E—K‘K•Mà€Hó    c                   óT   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zdd„Zd„ Zy)ÚReaderzA line-based string reader.c                 ó€   — t        |t        «      r|| _        n|j                  d«      | _        | j	                  «        y)zs
        Parameters
        ----------
        data : str
           String with lines separated by '\n'.

        ú
N)Ú
isinstanceÚlistÚ_strÚsplitÚreset)ÚselfÚdatas     r   Ú__init__zReader.__init__   s.   € ô �dœDÔ!ØˆD�IàŸ
™
 4Ó(ˆDŒIà�
‰
�r   c                 ó    — | j                   |   S ©N)r   ©r   Úns     r   Ú__getitem__zReader.__getitem__+   s   € Ø�y‰y˜‰|Ðr   c                 ó   — d| _         y )Nr   )Ú_l©r   s    r   r   zReader.reset.   s	   € Øˆ�r   c                 óp   — | j                  «       s&| | j                     }| xj                  dz  c_        |S y)Né   Ú )Úeofr"   )r   Úouts     r   ÚreadzReader.read1   s-   € Ø�x‰xŒzØ�t—w‘w‘-ˆCØ�GŠG�q‰L�GØˆJàr   c                 óz   — | | j                   d  D ])  }|j                  «       r y | xj                   dz  c_         Œ+ y ©Nr%   )r"   r   )r   r   s     r   Úseek_next_non_empty_linezReader.seek_next_non_empty_line9   s4   € Ø�d—g‘g�i�ò 	ˆAØ�w‰wŒyÙà—’˜1‘–ñ		r   c                 óF   — | j                   t        | j                  «      k\  S r   ©r"   Úlenr   r#   s    r   r'   z
Reader.eof@   s   € Ø�w‰wœ#˜dŸi™i›.Ñ(Ð(r   c                 óÖ   — | j                   }| |d  D ]T  } ||«      r| || j                    c S | xj                   dz  c_         | j                  «       sŒB| || j                   dz    c S  g S r+   )r"   r'   )r   Úcondition_funcÚstartÚlines       r   Úread_to_conditionzReader.read_to_conditionC   sk   € Ø—‘ˆØ˜˜�Lò 	1ˆDÙ˜dÔ#Ø˜E D§G¡GÐ,Ò,Ø�GŠG�q‰L�GØ�x‰x�zØ˜E D§G¡G¨a¡KÐ0Ò0ð	1ð ˆ	r   c                 óJ   — | j                  «        d„ }| j                  |«      S )Nc                 ó$   — | j                  «        S r   r
   ©r3   s    r   Úis_emptyz0Reader.read_to_next_empty_line.<locals>.is_emptyP   s   € Ø—z‘z“|Ð#Ð#r   )r,   r4   )r   r8   s     r   Úread_to_next_empty_linezReader.read_to_next_empty_lineM   s&   € Ø×%Ñ%Ô'ò	$ð ×%Ñ% hÓ/Ð/r   c                 ó*   — d„ }| j                  |«      S )Nc                 óp   — | j                  «       xr% t        | j                  «       «      t        | «      k(  S r   )r   r/   Úlstripr7   s    r   Úis_unindentedz:Reader.read_to_next_unindented_line.<locals>.is_unindentedV   s'   € Ø—:‘:“<ÒE¤S¨¯©«Ó%7¼3¸t»9Ñ%DÐEr   )r4   )r   r=   s     r   Úread_to_next_unindented_linez#Reader.read_to_next_unindented_lineU   s   € ò	Fð ×%Ñ% mÓ4Ð4r   c                 ór   — | j                   |z   t        | j                  «      k  r| | j                   |z      S y©Nr&   r.   r   s     r   ÚpeekzReader.peek[   s0   € Ø�7‰7�Q‰;œ˜TŸY™Y›Ò'Ø˜Ÿ™ !™Ñ$Ð$àr   c                 óV   — dj                  | j                  «      j                  «        S r@   )Újoinr   r   r#   s    r   r8   zReader.is_emptya   s!   € Ø—7‘7˜4Ÿ9™9Ó%×+Ñ+Ó-Ð-Ð-r   N)r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r    r   r)   r,   r'   r4   r9   r>   rA   r8   © r   r   r   r      s<   „ Ù%òòòòòò)òò0ò5óó.r   r   c                   ó   — e Zd Zd„ Zy)Ú
ParseErrorc                 ó^   — | j                   d   }t        | d«      r|› d| j                  ›�}|S )Nr   Ú	docstringú in )ÚargsÚhasattrrL   )r   Úmessages     r   Ú__str__zParseError.__str__f   s3   € Ø—)‘)˜A‘,ˆÜ�4˜Ô%Ø ˜	  d§n¡nÐ%7Ð8ˆGØˆr   N)rD   rE   rF   rQ   rH   r   r   rJ   rJ   e   s   „ ór   rJ   Ú	Parameter)ÚnameÚtypeÚdescc                   ó2  — e Zd ZdZi dd“ddg“dg “dg “dg “dg “d	g “d
g “dg “dg “dg “dg “dg “dg “dg “dd“dd“di i¥ZdBd„Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd„ Zd„ ZdCd„Zd Zd!Zd"Zd#ez   ez   d$z   ez   d%z   Zej'                  d&d'«      Zej'                  d(d)«      Zd*Z ej.                  d+ez   d,z   «      Z ej.                  d-ez   d.z   ez   d/z   d%z   d0z   ez   «      Zd1Zd2„ Zd3„ Zd4„ Zd5„ Zed6„ «       Z dDd7„Z!dEd8„Z"dFd9„Z#d:„ Z$d;„ Z%d<„ Z&d=„ Z'd>„ Z(d?„ Z)d@„ Z*dGdA„Z+y)HÚNumpyDocStringzƒParses a numpydoc string to an abstract representation

    Instances define a mapping from section title to structured data.

    Ú	Signaturer&   ÚSummaryúExtended SummaryÚ
ParametersÚ
AttributesÚMethodsÚReturnsÚYieldsÚReceivesúOther ParametersÚRaisesÚWarnsÚWarningsúSee AlsoÚNotesÚ
ReferencesÚExamplesÚindexNc                 ó  — |}t        j                  |«      j                  d«      }t        |«      | _        t        j                  | j                  «      | _        	 | j                  «        y # t        $ r}||_        ‚ d }~ww xY w)Nr   )ÚtextwrapÚdedentr   r   Ú_docÚcopyÚdeepcopyÚsectionsÚ_parsed_dataÚ_parserJ   rL   )r   rL   ÚconfigÚorig_docstringÚes        r   r   zNumpyDocString.__init__Œ   si   € Ø"ˆÜ—O‘O IÓ.×4Ñ4°TÓ:ˆ	ä˜9Ó%ˆŒ	Ü ŸM™M¨$¯-©-Ó8ˆÔð	Ø�K‰K�MøÜò 	Ø(ˆAŒKØûð	ús   ÁA- Á-	BÁ6A>Á>Bc                 ó    — | j                   |   S r   )rq   )r   Úkeys     r   r    zNumpyDocString.__getitem__™   s   € Ø× Ñ  Ñ%Ð%r   c                 ól   — || j                   vr| j                  d|› �d¬«       y || j                   |<   y )NzUnknown section F©Úerror)rq   Ú_error_location)r   rw   Úvals      r   Ú__setitem__zNumpyDocString.__setitem__œ   s;   € Ø�d×'Ñ'Ñ'Ø× Ñ Ð#3°C°5Ð!9ÀÐ ÕGà%(ˆD×Ñ˜cÒ"r   c                 ó,   — t        | j                  «      S r   )Úiterrq   r#   s    r   Ú__iter__zNumpyDocString.__iter__¢   s   € Ü�D×%Ñ%Ó&Ð&r   c                 ó,   — t        | j                  «      S r   )r/   rq   r#   s    r   Ú__len__zNumpyDocString.__len__¥   s   € Ü�4×$Ñ$Ó%Ð%r   c                 ó¤  — | j                   j                  «        | j                   j                  «       ry| j                   j                  «       j	                  «       }|j                  d«      ry| j                   j                  d«      j	                  «       }t        |«      dk\  rot        |«      dhdhfv r^t        |«      t        |«      k7  rGdj                  | j                   j                  d d	 «      d
z   }| j                  d|› d|› d|› �d¬«       |j                  dt        |«      z  «      xs |j                  dt        |«      z  «      S )NFú
.. index::Tr%   é   ú-ú=r   é   z...z'potentially wrong underline length... 
z 
z in 
ry   )rm   r,   r'   rA   r   Ú
startswithr/   ÚsetrC   r   r{   )r   Úl1Úl2Úsnips       r   Ú_is_at_sectionzNumpyDocString._is_at_section¨   s  € Ø�	‰	×*Ñ*Ô,à�9‰9�=‰=Œ?Øà�Y‰Y�^‰^Ó×#Ñ#Ó%ˆà�=‰=˜Ô&Øà�Y‰Y�^‰^˜AÓ×$Ñ$Ó&ˆÜˆr‹7�aŠ<œS ›W¨#¨°°¨Ñ6¼CÀ»GÄsÈ2ÃwÒ<NØ—9‘9˜TŸY™YŸ^™^¨B¨QÐ/Ó0°5Ñ8ˆDØ× Ñ Ø:¸2¸$¸cÀ"ÀÀVÈDÈ6ÐRØð !ô ð �}‰}˜S¤3 r£7™]Ó+ÒK¨r¯}©}¸SÄ3ÀrÃ7¹]Ó/KÐKr   c                 óÌ   — d}d}t        |«      D ]  \  }}|j                  «       sŒ n t        |d d d…   «      D ]  \  }}|j                  «       sŒ n ||t        |«      |z
   S )Nr   r	   )Ú	enumerater   r/   )r   ÚdocÚiÚjr3   s        r   Ú_stripzNumpyDocString._strip¼   st   € ØˆØˆÜ  “~ò 	‰GˆAˆtØ�z‰z�|Ùð	ô ! ¡T r T¡Ó+ò 	‰GˆAˆtØ�z‰z�|Ùð	ð �1”s˜3“x !‘|Ð$Ð$r   c                 ó|  — | j                   j                  «       }| j                  «       s‘| j                   j                  «       sw| j                   j	                  d«      j                  «       s|dgz  }|| j                   j                  «       z  }| j                  «       s| j                   j                  «       sŒw|S )Nr	   r&   )rm   r9   rŽ   r'   rA   r   )r   Úsections     r   Ú_read_to_next_sectionz$NumpyDocString._read_to_next_sectionÉ   sˆ   € Ø—)‘)×3Ñ3Ó5ˆà×%Ñ%Ô'°·	±	·±´Ø—9‘9—>‘> "Ó%×+Ñ+Ô-Ø˜B˜4‘�à�t—y‘y×8Ñ8Ó:Ñ:ˆGð	 ×%Ñ%Ô'°·	±	·±µð ˆr   c              #   óR  K  — | j                   j                  «       s‰| j                  «       }|d   j                  «       }|j	                  d«      r
||dd  f–— n/t        |«      dk  r	t        –— n|| j                  |dd  «      f–— | j                   j                  «       sŒˆy y ­w)Nr   ú..r%   rˆ   )rm   r'   r—   r   r‰   r/   ÚStopIterationr”   )r   r   rS   s      r   Ú_read_sectionszNumpyDocString._read_sectionsÔ   s†   è ø€ Ø—)‘)—-‘-”/Ø×-Ñ-Ó/ˆDØ˜‘7—=‘=“?ˆDà�‰˜tÔ$Ø˜D  ˜H�nÓ$Ü�T“˜Q’Ü#Ó#à˜DŸK™K¨¨Q¨R¨Ó1Ð1Ò1ð —)‘)—-‘-—/ùs   ‚B"B'Â%B'c                 ó°  — t        |«      }t        |«      }g }|j                  «       s­|j                  «       j	                  «       }d|v r|j                  dd¬«      \  }}n!|j                  d«      r|d d }|rd|}}n|d}}|j                  «       }t        |«      }t        |«      }|j                  t        |||«      «       |j                  «       sŒ­|S )Nú : r%   )Úmaxsplitz :éþÿÿÿr&   )Údedent_linesr   r'   r)   r   r   Úendswithr>   r   ÚappendrR   )	r   ÚcontentÚsingle_element_is_typeÚrÚparamsÚheaderÚarg_nameÚarg_typerU   s	            r   Ú_parse_param_listz NumpyDocString._parse_param_listà   sÊ   € Ü˜wÓ'ˆÜ�7‹OˆØˆØ—%‘%”'Ø—V‘V“X—^‘^Ó%ˆFØ˜‰Ø%+§\¡\°%À! \Ó%DÑ"�™(ð
 —?‘? 4Ô(Ø# C R˜[�FÙ)Ø)+¨V˜h‘Hà)/°˜h�Hà×1Ñ1Ó3ˆDÜ Ó%ˆDÜ$ TÓ*ˆDà�M‰Mœ) H¨h¸Ó=Ô>ð' —%‘%•'ð* ˆr   z:(?P<role>(py:)?\w+):z'`(?P<name>(?:~\w+\.)?[a-zA-Z0-9_\.-]+)`z(?P<name2>[a-zA-Z0-9_\.-]+)ú(ú|ú)ÚroleÚrolenextrS   Únamenextz/(?P<description>\s*:(\s+(?P<desc>\S+.*))?)?\s*$z^\s*z\s*z^\s*(?P<allfuncs>z(?P<morefuncs>([,]\s+z)*)z(?P<trailing>[,\.])?r™   c                 ó  ‡ ‡— t        |«      }g }ˆˆ fd„}g }|D �]g  Š‰j                  «       sŒ‰ j                  j                  ‰«      }d}|rK|j	                  d«      }|j	                  d«      r)|r'‰ j                  d|j                  d«      ‰fz  d¬«       |s1‰j                  d«      r |j                  ‰j                  «       «       Œ²|r g }|j	                  d	«      }	 |j                  «       snP ||«      \  }	}
}|j                  |	|
f«       ||d j                  «       }|r|d
   dk(  r|dd j                  «       }Œat        t        d|g«      «      }|j                  ||f«       �ŒT‰ j                  d‰›�«       �Œj |S )zµ
        func_name : Descriptive text
            continued text
        another_func_name : Descriptive text
        func_name1, func_name2, :meth:`func_name`, func_name3

        c                 óö   •— ‰j                   j                  | «      }|s‰j                  d‰›�«       |j                  d«      }|r|j                  d«      n|j                  d«      }|||j	                  «       fS )zMatch ':role:`name`' or 'name'.úError parsing See Also entry r®   rS   Úname2)Ú	_func_rgxÚmatchr{   ÚgroupÚend)ÚtextÚmr®   rS   r3   r   s       €€r   Úparse_item_namez7NumpyDocString._parse_see_also.<locals>.parse_item_name/  sj   ø€ à—‘×$Ñ$ TÓ*ˆAÙØ×$Ñ$Ð'DÀTÀHÐ%MÔNØ—7‘7˜6“?ˆDÙ&*�1—7‘7˜6”?°·±¸Ó0@ˆDØ˜˜qŸu™u›wÐ&Ð&r   NrU   ÚtrailingzGUnexpected comma or period after function list at index %d of line "%s"Fry   ú Úallfuncsr   ú,r%   r³   )r    r   Ú	_line_rgxr¶   r·   r{   r¸   r‰   r¢   r   Úfilter)r   r£   Úitemsr»   ÚrestÚ
line_matchÚdescriptionÚfuncsr¹   rS   r®   Ú	match_endr3   s   `           @r   Ú_parse_see_alsozNumpyDocString._parse_see_also"  s�  ù€ ô ˜wÓ'ˆàˆõ	'ð ˆØó 	OˆDØ—:‘:”<ØàŸ™×-Ñ-¨dÓ3ˆJØˆKÙØ(×.Ñ.¨vÓ6�Ø×#Ñ# JÔ/±KØ×(Ñ(ð$Ø'1§~¡~°jÓ'AÀ4Ð&HñIà#ð )ô ñ
  4§?¡?°3Ô#7Ø—‘˜DŸJ™J›LÕ)ÙØ�Ø!×'Ñ'¨
Ó3�ØØŸ:™:œ<ØÙ,;¸DÓ,AÑ)�D˜$ 	Ø—L‘L $¨ Ô.Ø 	 
Ð+×1Ñ1Ó3�DÙ  Q¡¨3¢Ø# A B˜xŸ~™~Ó/˜ð ô œF 4¨+¨Ó7Ó8�Ø—‘˜e T˜]Ö+à×$Ñ$Ð'DÀTÀHÐ%MÖNð=	Oð> ˆr   c                 ó  — d„ }i }|j                  d«      }t        |«      dkD  r  ||d   j                  d«      «      d   |d<   |D ]B  }|j                  d«      }t        |«      dkD  sŒ# ||d   j                  d«      «      ||d   <   ŒD |S )	zU
        .. index:: default
           :refguide: something, else, and more

        c                 óH   — | D �cg c]  }|j                  «       ‘Œ c}S c c}w r   r
   )ÚlstÚss     r   Ústrip_each_inz2NumpyDocString._parse_index.<locals>.strip_each_ina  s   € Ø'*Ö+ !�A—G‘G•IÒ+Ð+ùÒ+s   …z::r%   r¿   r   Údefaultú:rˆ   )r   r/   )r   r–   r£   rÍ   r(   r3   s         r   Ú_parse_indexzNumpyDocString._parse_indexZ  s™   € ò	,ð ˆØ—-‘- Ó%ˆÜˆw‹<˜!ÒÙ*¨7°1©:×+;Ñ+;¸CÓ+@ÓAÀ!ÑDˆC�	‰NØò 	AˆDØ—:‘:˜c“?ˆDÜ�4‹y˜1‹}Ù,¨T°!©W¯]©]¸3Ó-?Ó@��D˜‘G’ð	Að ˆ
r   c                 ó¬  — | j                  «       ry	 | j                  j                  «       }dj                  |D �cg c]  }|j	                  «       ‘Œ c}«      j	                  «       }t        j                  d«      }|j                  |«      r|| d<   | j                  «       sŒ’	 |�|| d<   | j                  «       s| j                  «       | d<   yyc c}w )z%Grab signature (if given) and summaryNr½   z^([\w., ]+=)?\s*[\w\.]+\(.*\)$rX   rY   rZ   )	rŽ   rm   r9   rC   r   ÚreÚcompiler¶   r—   )r   ÚsummaryrÌ   Úsummary_strÚcompileds        r   Ú_parse_summaryzNumpyDocString._parse_summaryn  sÁ   € à×ÑÔ Øð Ø—i‘i×7Ñ7Ó9ˆGØŸ(™(°wÖ#?°! A§G¡G¥IÒ#?Ó@×FÑFÓHˆKÜ—z‘zÐ"CÓDˆHØ�~‰~˜kÔ*Ø$/��[Ñ!Ø×*Ñ*Ô,ØØàÐØ%ˆD�‰Oà×"Ñ"Ô$Ø'+×'AÑ'AÓ'CˆDÐ#Ò$ð %ùò $@s   ¼Cc           	      ó  — | j                   j                  «        | j                  «        t        | j	                  «       «      }|D ��ch c]  \  }}|’Œ	 }}}d|v }|sd|v rd}t        |«      ‚|D �]  \  }}|j                  d«      std„ |j                  d«      D «       }dj                  |«      }| j                  |«      r:| j                  d|›dd	j                  | j                   j                  «      ›�«       |d
v r| j                  |«      | |<   Œ¥|dv r| j                  |d¬«      | |<   ŒÀ|j                  d«      r| j                  ||«      | d<   Œç|dk(  r| j                  |«      | d<   �Œ|| |<   �Œ	 y c c}}w )Nr_   r`   z5Docstring contains a Receives section but not Yields.r™   c              3   ó<   K  — | ]  }|j                  «       –— Œ y ­wr   )Ú
capitalize)Ú.0rÌ   s     r   ú	<genexpr>z(NumpyDocString._parse.<locals>.<genexpr>“  s   è ø€ ÒF¨a˜1Ÿ<™<Ÿ>ÑFùs   ‚r½   zThe section z appears twice in  r   )r[   ra   r\   r]   )r^   r_   rb   rc   r`   T)r¤   r„   ri   re   )rm   r   r×   r   r›   Ú
ValueErrorr‰   r   rC   Úgetr{   r   rª   rÐ   rÈ   )r   rp   r–   r£   Úsection_namesÚ
has_yieldsÚmsgs          r   rr   zNumpyDocString._parse„  sz  € Ø�	‰	�‰ÔØ×ÑÔä˜×+Ñ+Ó-Ó.ˆØ9A×BÑ%5 W¨gšÐBˆÑBà Ð.ˆ
á˜j¨MÑ9ØIˆCÜ˜S“/Ð!à (ó 	(ÑˆG�WØ×%Ñ% dÔ+ÙF°7·=±=ÀÓ3EÔF�ØŸ(™( 7Ó+�Ø—8‘8˜GÔ$Ø×(Ò(â" D§I¡I¨d¯i©i¯n©nÔ$=ð?ôð
 ÐUÑUØ $× 6Ñ 6°wÓ ?��W’ØÐPÑPØ $× 6Ñ 6Ø°Dð !7ó !��W’ð ×#Ñ# LÔ1Ø $× 1Ñ 1°'¸7Ó C��W’Ø˜JÒ&Ø#'×#7Ñ#7¸Ó#@��ZÓ à '��W“ñ+	(ùó Cs   Á	E<c                 ód   — t        | d«      r| j                  S t        | d«      r| j                  S y )NÚ_clsÚ_f)rO   rã   rä   r#   s    r   Ú_objzNumpyDocString._obj¨  s,   € ä�4˜Ô Ø—9‘9ÐÜ�T˜4Ô Ø—7‘7ˆNØr   c                 óV  — | j                   �r	 t        j                  | j                   «      }t	        | j                   dd «      }|€"t	        t	        | j                   dd «      dd «      }|�|d|› �z  }||rd|› d�ndz  }|rt        |«      ‚t        |d¬«       y # t        $ r d }Y Œzw xY w)	NrD   Ú	__class__z in the docstring of rM   ú.r&   r…   )Ú
stacklevel)rå   ÚinspectÚgetsourcefileÚ	TypeErrorÚgetattrrÝ   r   )r   rá   rz   ÚfilenamerS   s        r   r{   zNumpyDocString._error_location°  s¶   € Ø�9‰9Ð ð Ü"×0Ñ0°·±Ó;�ô
 ˜4Ÿ9™9 j°$Ó7ˆDØˆ|Üœw t§y¡y°+¸tÓDÀjÐRVÓW�ØÐØÐ.¨t¨fÐ5Ñ5�Ø©�T˜(˜ 1Ñ%°rÑ9ˆCÙÜ˜S“/Ð!ä� Ö#øô ò  Ø’ð ús   ŽB ÂB(Â'B(c                 ó"   — |t        |«      |z  gS r   )r/   )r   rS   Úsymbols      r   Ú_str_headerzNumpyDocString._str_headerÆ  s   € Ø”c˜$“i &Ñ(Ð)Ð)r   c                 ó8   — |D �cg c]
  }d|z  |z   ‘Œ c}S c c}w )Nr½   rH   )r   r‘   Úindentr3   s       r   Ú_str_indentzNumpyDocString._str_indentÉ  s   € Ø03Ö4¨��f‘˜tÓ#Ò4Ð4ùÒ4s   …c                 óF   — | d   r| d   j                  dd«      gdgz   S dgS )NrX   Ú*z\*r&   )Úreplacer#   s    r   Ú_str_signaturezNumpyDocString._str_signatureÌ  s3   € Ø�ÒØ˜Ñ%×-Ñ-¨c°5Ó9Ð:¸b¸TÑAÐAØˆtˆr   c                 ó"   — | d   r	| d   dgz   S g S )NrY   r&   rH   r#   s    r   Ú_str_summaryzNumpyDocString._str_summaryÑ  s   € Ø�	Š?Ø˜	‘? b TÑ)Ð)Øˆ	r   c                 ó"   — | d   r	| d   dgz   S g S )NrZ   r&   rH   r#   s    r   Ú_str_extended_summaryz$NumpyDocString._str_extended_summaryÖ  s#   € ØÐ"Ò#ØÐ*Ñ+¨r¨dÑ2Ð2Øˆ	r   c                 óÐ  — g }| |   rÞ|| j                  |«      z  }| |   D ]¼  }g }|j                  r|j                  |j                  «       |j                  r|j                  |j                  «       |dj	                  |«      gz  }|j
                  sŒudj	                  |j
                  «      j                  «       sŒŸ|| j                  |j
                  «      z  }Œ¾ |dgz  }|S )Nr�   r&   )rñ   rS   r¢   rT   rC   rU   r   rô   )r   rS   r(   ÚparamÚpartss        r   Ú_str_param_listzNumpyDocString._str_param_listÛ  sÉ   € ØˆØ�Š:Ø�4×#Ñ# DÓ)Ñ)ˆCØ˜d™ò 8�Ø�Ø—:’:Ø—L‘L §¡Ô,Ø—:’:Ø—L‘L §¡Ô,Ø˜Ÿ
™
 5Ó)Ð*Ñ*�Ø—:“: "§'¡'¨%¯*©*Ó"5×";Ñ";Õ"=Ø˜4×+Ñ+¨E¯J©JÓ7Ñ7‘Cð8ð �B�4‰KˆCØˆ
r   c                 óX   — g }| |   r"|| j                  |«      z  }|| |   z  }|dgz  }|S r@   )rñ   )r   rS   r(   s      r   Ú_str_sectionzNumpyDocString._str_sectionë  sA   € ØˆØ�Š:Ø�4×#Ñ# DÓ)Ñ)ˆCØ�4˜‘:ÑˆCØ�B�4‰KˆCØˆ
r   c                 óâ  — | d   sg S g }|| j                  d«      z  }|dgz  }d}| d   D ]³  \  }}t        |t        «      sJ ‚g }|D ]4  \  }}|r
d|› d|› d�}	n|r
d|› d|› d�}	nd|› d�}	|j                  |	«       Œ6 dj	                  |«      }	||	gz  }|r'|| j                  d	j	                  |«      g«      z  }d}Œ“d
}|| j                  | j                  g«      z  }Œµ |r|dgz  }|dgz  }|S )Nre   r&   TrÏ   z:`ú`z`_ú, r½   F)rñ   r   r   r¢   rC   rô   Úempty_description)
r   Ú	func_roler(   Úlast_had_descrÆ   rU   ÚlinksÚfuncr®   Úlinks
             r   Ú_str_see_alsozNumpyDocString._str_see_alsoó  sH  € Ø�JÒØˆIØˆØˆt×Ñ 
Ó+Ñ+ˆØ�ˆt‰ˆØˆØ 
Ñ+ò 	B‰KˆE�4Ü˜e¤TÔ*Ð*Ð*ØˆEØ#ò #‘
��dÙØ˜t˜f B t f¨AÐ.‘DÙØ˜y˜k¨¨D¨6°Ð3‘Dà˜t˜f B˜<�DØ—‘˜TÕ"ð#ð —9‘9˜UÓ#ˆDØ�D�6‰MˆCÙØ�t×'Ñ'¨¯©°$«Ð(8Ó9Ñ9�Ø $‘à %�Ø�t×'Ñ'¨×)?Ñ)?Ð(@ÓAÑA‘ð%	Bñ( Ø�B�4‰KˆCØ�ˆt‰ˆØˆ
r   c                 óÒ   — | d   }g }d}|j                  dd«      }|rd}|d|› �gz  }|j                  «       D ](  \  }}|dk(  rŒd}|d|› dd	j                  |«      › �gz  }Œ* |r|S y)
Nri   FrÎ   r&   Tz.. index:: z   :z: r  )rÞ   rÂ   rC   )r   Úidxr(   Úoutput_indexÚdefault_indexr–   Ú
referencess          r   Ú
_str_indexzNumpyDocString._str_index  sœ   € Ø�7‰mˆØˆØˆØŸ™ 	¨2Ó.ˆÙØˆLØ�+˜m˜_Ð-Ð.Ñ.ˆØ#&§9¡9£;ò 	?ÑˆG�ZØ˜)Ò#ØØˆLØ�d˜7˜) 2 d§i¡i°
Ó&;Ð%<Ð=Ð>Ñ>‰Cð		?ñ
 ØˆJØr   c                 óÚ  — g }|| j                  «       z  }|| j                  «       z  }|| j                  «       z  }|| j                  d«      z  }dD ]  }|| j                  |«      z  }Œ dD ]  }|| j                  |«      z  }Œ || j	                  d«      z  }|| j                  |«      z  }dD ]  }|| j	                  |«      z  }Œ || j                  «       z  }dj                  |«      S )Nr[   )r\   r]   )r^   r_   r`   ra   rb   rc   rd   )rf   rg   rh   r   )rø   rú   rü   r   r  r  r  rC   )r   r  r(   Ú
param_listrÌ   s        r   rQ   zNumpyDocString.__str__$  s  € ØˆØˆt×"Ñ"Ó$Ñ$ˆØˆt× Ñ Ó"Ñ"ˆØˆt×)Ñ)Ó+Ñ+ˆØˆt×#Ñ# LÓ1Ñ1ˆØ3ò 	4ˆJØ�4×'Ñ'¨
Ó3Ñ3‰Cð	4ð
ò 	4ˆJð �4×'Ñ'¨
Ó3Ñ3‰Cð	4ð 	ˆt× Ñ  Ó,Ñ,ˆØˆt×!Ñ! )Ó,Ñ,ˆØ4ò 	(ˆAØ�4×$Ñ$ QÓ'Ñ'‰Cð	(àˆt�‰Ó Ñ ˆØ�y‰y˜‹~Ðr   r   )F)T)r†   )é   )r&   ),rD   rE   rF   rG   rp   r   r    r}   r€   r‚   rŽ   r”   r—   r›   rª   Ú_roleÚ_funcbacktickÚ
_funcplainÚ	_funcnamer÷   Ú_funcnamenextÚ_descriptionrÒ   rÓ   rµ   rÀ   r  rÈ   rÐ   r×   rr   Úpropertyrå   r{   rñ   rô   rø   rú   rü   r   r  r  r  rQ   rH   r   r   rW   rW   p   sM  „ ñðØ�Rðà�B�4ðð 	˜Bðð 	�bð	ð
 	�bðð 	�2ðð 	�2ðð 	�"ðð 	�Bðð 	˜Bðð 	�"ðð 	�ðð 	�Bðð 	�Bðð 	�ðð  	�bð!ð" 	�Bð#ð$ 	�ñ%€Hó*ò&ò)ò'ò&òLò(%ò	ò
2óðV %€EØ>€MØ/€JØ�u‘˜}Ñ,¨tÑ3°jÑ@À4ÑG€IØ×%Ñ% f¨jÓ9€MØ!×)Ñ)¨&°*Ó=€MØE€LØ�—
‘
˜7 YÑ.°Ñ7Ó8€IØ�—
‘
ð	à
ñ	ð #ñ	#ð ñ		ð
 ñ	ð ñ	ð "ñ	"ð ñ	ó
€Ið Ðò6òpò(Dò,"(ðH ñó ðó$ó,*ó5òò
ò
ò
ò òò@ô"r   rW   c                 óh   — t        j                  dj                  | «      «      j                  d«      S )z"Deindent a list of lines maximallyr   )rk   rl   rC   r   )Úliness    r   r    r    =  s%   € ä�?‰?˜4Ÿ9™9 UÓ+Ó,×2Ñ2°4Ó8Ð8r   c                   ó,   ‡ — e Zd Zdd„Zd„ Zˆ fd„Zˆ xZS )ÚFunctionDocc                 ó¦   — || _         || _        |€&|€t        d«      ‚t        j                  |«      xs d}|€i }t
        j                  | ||«       y )NzNo function or docstring givenr&   )rä   r  rÝ   rê   ÚgetdocrW   r   )r   r
  r®   r‘   rs   s        r   r   zFunctionDoc.__init__C  sU   € ØˆŒØˆŒ
àˆ;Øˆ|Ü Ð!AÓBÐBÜ—.‘. Ó&Ò,¨"ˆCØˆ>ØˆFÜ×Ñ  c¨6Õ2r   c                 ó  — t        | j                  d| j                  j                  «      }t	        j
                  | j                  «      r/t        | j                  d| j                  j                  «      }||fS | j                  }||fS )NrD   Ú__call__)rí   rä   rç   rD   rê   Úisclassr   )r   Ú	func_namer
  s      r   Úget_funczFunctionDoc.get_funcO  sk   € Ü˜DŸG™G Z°·±×1HÑ1HÓIˆ	Ü�?‰?˜4Ÿ7™7Ô#Ü˜4Ÿ7™7 J°·±×0@Ñ0@ÓAˆDð �YˆÐð —7‘7ˆDØ�YˆÐr   c                 ó&  •— d}| j                  «       \  }}dddœ}| j                  rL| j                  |vrt        d| j                  › �«       |d|j                  | j                  d«      › d|› d�z  }|t        ‰| �  | j                  ¬	«      z  }|S )
Nr&   ÚfunctionÚmethod)r
  ÚmethzWarning: invalid role z.. z:: z
    

)r  )r'  r  ÚprintrÞ   ÚsuperrQ   )r   r(   r
  r&  Úrolesrç   s        €r   rQ   zFunctionDoc.__str__W  s�   ø€ ØˆàŸ-™-›/‰ˆˆià#¨XÑ6ˆà�:Š:Ø�z‰z Ñ&ÜÐ.¨t¯z©z¨lÐ;Ô<Ø�S˜Ÿ™ 4§:¡:¨rÓ2Ð3°3°y°kÀÐLÑLˆCàŒu‰w‰¨¯©ˆÓ4Ñ4ˆØˆ
r   )r
  NN)rD   rE   rF   r   r'  rQ   Ú__classcell__)rç   s   @r   r   r   B  s   ø„ ó
3ò÷ð r   r   c                   ó   — e Zd Zdd„Zy)ÚObjDocNc                 óJ   — || _         |€i }t        j                  | ||¬«       y )N©rs   )rä   rW   r   )r   Úobjr‘   rs   s       r   r   zObjDoc.__init__h  s(   € ØˆŒØˆ>ØˆFÜ×Ñ  c°&ÐÕ9r   )NN)rD   rE   rF   r   rH   r   r   r1  r1  g  s   „ ô:r   r1  c                   óX   — e Zd ZdgZddedfd„Zed„ «       Zed„ «       Ze	d„ «       Z
d„ Zy)	ÚClassDocr$  Nr&   c                 ób  — t        j                  |«      s|�t        d|›�«      ‚|| _        dt        j
                  v rddlm} n
t        «       }|€i }|j                  dd«      | _
        |r|j                  d«      s|dz  }|| _        |€"|€t        d«      ‚t        j                  |«      }t        j!                  | |«       |j                  d	g «      }||u rd }|j                  d
g «      }|j                  dd«      r¡||urœd„ }	d| j"                  fd| j$                  ffD ]y  \  }
}| |
   rŒg }t'        |«      D ]Y  }||v s|r||vrŒ	 t        j                  t)        | j                  |«      «      }|j+                  t-        |d |	|«      «      «       Œ[ || |
<   Œ{ y y y # t.        $ r Y Œqw xY w)Nz"Expected a class or None, but got Úsphinxr   )ÚALLÚshow_inherited_class_membersTrè   z&No class or documentation string givenÚmemberszexclude-membersÚshow_class_membersc                 ó*   — | sg S | j                  «       S r   )Ú
splitlines)rÌ   s    r   Úsplitlines_xz'ClassDoc.__init__.<locals>.splitlines_x’  s   € ÙØ�IàŸ<™<›>Ð)r   r]   r\   r&   )rê   r%  rÝ   rã   ÚsysÚmodulesÚsphinx.ext.autodocr9  ÚobjectrÞ   Úshow_inherited_membersr¡   Ú_modÚpydocr"  rW   r   ÚmethodsÚ
propertiesÚsortedrí   r¢   rR   ÚAttributeError)r   Úclsr‘   Ú
modulenameÚfunc_docrs   r9  Ú_membersÚ_excluder?  ÚfieldrÂ   Údoc_listrS   Údoc_items                  r   r   zClassDoc.__init__r  sÂ  € Ü�‰˜sÔ#¨¨ÜÐAÀ#ÀÐIÓJÐJØˆŒ	à”s—{‘{Ñ"Þ.ä“(ˆCàˆ>ØˆFØ&,§j¡jÐ1OÐQUÓ&VˆÔ#á˜j×1Ñ1°#Ô6Ø˜#ÑˆJØˆŒ	àˆ;Øˆ{Ü Ð!IÓJÐJÜ—,‘,˜sÓ#ˆCä×Ñ  cÔ*à—:‘:˜i¨Ó,ˆØ�s‰?ØˆHØ—:‘:Ð/°Ó4ˆà�:‰:Ð*¨DÔ1°hÀcÑ6Iò*ð ˜DŸL™LÐ)Ø˜tŸ™Ð/ð!ò +‘��uð ˜E“{Ø!�HÜ & u£ò !˜Ø 8Ñ+±¸TÈÑ=QØ$ð!Ü',§|¡|´G¸D¿I¹IÀtÓ4LÓ'M˜HØ$ŸO™O¬I°d¸BÁÈXÓ@VÓ,WÕXð!ð #+�D˜’Kñ+ð 7JÐ1øô(  .ò !Ù ð!ús   ÅAF"Æ"	F.Æ-F.c                 ó  — | j                   €g S t        j                  | j                   «      D ��cg c]G  \  }}|j                  d«      r|| j                  v r#t        |t        «      r| j                  |«      r|‘ŒI c}}S c c}}w ©NÚ_)rã   rê   Ú
getmembersr‰   Úextra_public_methodsr   r   Ú_is_show_member©r   rS   r
  s      r   rG  zClassDoc.methods¨  sw   € à�9‰9ÐØˆIô &×0Ñ0°·±Ó;÷
á��dà—_‘_ SÔ)¨T°T×5NÑ5NÑ-NÜ˜t¤XÔ.Ø×(Ñ(¨Ô.ò ó
ð 	
ùó 
s   ±ABc           	      ód  — | j                   €g S t        j                  | j                   «      D ��cg c]r  \  }}|j                  d«      s\| j	                  || j                   «      s@|�+t        |t        t        f«      st        j                  |«      r| j                  |«      r|‘Œt c}}S c c}}w rT  )
rã   rê   rV  r‰   Ú_should_skip_memberr   r  r   ÚisdatadescriptorrX  rY  s      r   rH  zClassDoc.properties¶  s–   € à�9‰9ÐØˆIô &×0Ñ0°·±Ó;÷
á��dà—O‘O CÔ(Ø×0Ñ0°°t·y±yÔAà�LÜ! $¬´?Ð(CÔDÜ×/Ñ/°Ô5à×(Ñ(¨Ô.ò ó
ð 	
ùó 
s   ±A7B,c                 óz   — t        |t        «      xr* t        |d«      xr t        |d«      xr | |j                  v S )NÚ_asdictÚ_fields)Ú
issubclassÚtuplerO   r_  )rS   Úklasss     r   r[  zClassDoc._should_skip_memberÉ  sD   € ô
 �uœeÓ$ò &Ü˜˜yÓ)ò&ä˜˜yÓ)ò&ð ˜Ÿ™Ð%ð	
r   c                 óN   — | j                   xs || j                  j                  v S r   )rD  rã   Ú__dict__)r   rS   s     r   rX  zClassDoc._is_show_memberÔ  s)   € ð ×'Ñ'ò *à�t—y‘y×)Ñ)Ð)ð		
r   )rD   rE   rF   rW  r   r   r  rG  rH  Ústaticmethodr[  rX  rH   r   r   r6  r6  o  s[   „ Ø&˜<Ðà $°¸kÐRVó 4+ðl ñ
ó ð
ð ñ
ó ð
ð$ ñ
ó ð
ó
r   r6  c                 ó  — |€Et        j                  | «      rd}n-t        j                  | «      rd}nt        | t        «      rd}nd}|€i }|dk(  r || |||¬«      S |dv r || ||¬«      S |€t        j                  | «      } || ||¬«      S )	NÚclassÚmoduler)  rC  )rM  r‘   rs   )r)  r*  )r‘   rs   r3  )rê   r%  Úismoduler   r   rF  r"  )r4  Úwhatr‘   rs   Ú	class_docrM  Úobj_docs          r   Úget_doc_objectrm  Ý  s�   € ð €|Ü�?‰?˜3ÔØ‰DÜ×Ñ˜cÔ"Ø‰DÜ˜œXÔ&Ø‰DàˆDØ€~Øˆàˆw‚Ù˜ x°SÀÔHÐHØ	Ð'Ñ	'Ù˜ ¨VÔ4Ð4àˆ;Ü—,‘,˜sÓ#ˆCÙ�s˜C¨Ô/Ð/r   )rG   rn   rê   rF  rÒ   r@  rk   Úcollectionsr   Úcollections.abcr   r   Ú	functoolsr   Úwarningsr   r   r   Ú	ExceptionrJ   rR   rW   r    r   r1  r6  rm  rH   r   r   ú<module>rs     s¨   ðá Aã Û Û Û 	Û 
Û Ý "ß -Ý %Ý ò÷I.ñ I.ôX�ô ñ �{Ò$<Ó=€	ôJ�Wô JòZ9ô
"�.ô "ôJ:ˆ^ô :ôk
ˆ~ô k
ð` 
ØØØØØô0r   