ó
    |ñ:i [  ã                   ó  • S r SSKrSSKrSSKrSSKrSSKJr  SSKJr  SSK	J
r
Jr  SSKrSSKrS r " S S5      r " S	 S
\5      r\" S/ SQ5      r " S S\5      rSS jrS rSS jr " S S\5      r " S S\5      rg)aK  Extract reference documentation from the NumPy source tree.

Copyright (C) 2008 Stefan van der Walt <stefan@mentat.za.net>, Pauli Virtanen <pav@iki.fi>

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

 1. Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.
 2. Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in
    the documentation and/or other materials provided with the
    distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

é    N)Úwarn)Ú
namedtuple)ÚCallableÚMappingc                 ó  • U (       a<  U S   R                  5       (       d$  U S	 U (       a  U S   R                  5       (       d  M$  U (       a<  U S   R                  5       (       d$  U S	 U (       a  U S   R                  5       (       d  M$  U $ )z<Remove leading and trailing blank lines from a list of linesr   éÿÿÿÿ©Ústrip)Úls    Ú]/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/seaborn/external/docscrape.pyÚstrip_blank_linesr   (   s]   € æ
�A�a‘D—J‘J—L‘LØˆaˆDö �A�a‘D—J‘J—L“Læ
�A�b‘E—K‘K—M‘MØˆbˆEö �A�b‘E—K‘K—M“Mà€Hó    c                   ó^   • \ rS rSrSrS rS rS rS rS r	S r
S	 rS
 rS rSS jrS rSrg)ÚReaderé1   z!A line-based string reader.

    c                 óˆ   • [        U[        5      (       a  Xl        OUR                  S5      U l        U R	                  5         g)zr
        Parameters
        ----------
        data : str
           String with lines separated by '
'.

        Ú
N)Ú
isinstanceÚlistÚ_strÚsplitÚreset)ÚselfÚdatas     r   Ú__init__ÚReader.__init__5   s/   € ô �dœD×!Ñ!Ø�IàŸ
™
 4Ó(ˆDŒIà�
‰
�r   c                 ó    • U R                   U   $ ©N)r   ©r   Úns     r   Ú__getitem__ÚReader.__getitem__D   s   € Ø�y‰y˜‰|Ðr   c                 ó   • SU l         g )Nr   )Ú_l©r   s    r   r   ÚReader.resetG   s	   € Øˆ�r   c                 óx   • U R                  5       (       d%  X R                     nU =R                  S-  sl        U$ g)Né   Ú )Úeofr$   )r   Úouts     r   ÚreadÚReader.readJ   s-   € Ø�x‰x�z‰zØ—w‘w‘-ˆCØ�GŠG�q‰L�GØˆJàr   c                 ó†   • X R                   S   H/  nUR                  5       (       a    g U =R                   S-  sl         M1     g ©Nr(   )r$   r
   )r   r   s     r   Úseek_next_non_empty_lineÚReader.seek_next_non_empty_lineR   s/   € Ø—g‘g�h“ˆAØ�w‰w�y‰yÙà—’˜1‘—ò	  r   c                 óF   • U R                   [        U R                  5      :¬  $ r   ©r$   Úlenr   r%   s    r   r*   Ú
Reader.eofY   s   € Ø�w‰wœ#˜dŸi™i›.Ñ(Ð(r   c                 óè   • U R                   nXS   H]  nU" U5      (       a  XU R                    s  $ U =R                   S-  sl         U R                  5       (       d  ML  XU R                   S-    s  $    / $ r/   )r$   r*   )r   Úcondition_funcÚstartÚlines       r   Úread_to_conditionÚReader.read_to_condition\   se   € Ø—‘ˆØ˜“LˆDÙ˜d×#Ñ#Ø $§'¡'Ð*Ò*Ø�GŠG�q‰L�GØ�x‰x�z‹zØ $§'¡'¨!¡)Ð,Ò,ñ !ð ˆ	r   c                 óJ   • U R                  5         S nU R                  U5      $ )Nc                 ó,   • U R                  5       (       + $ r   r	   ©r9   s    r   Úis_emptyÚ0Reader.read_to_next_empty_line.<locals>.is_emptyi   s   € Ø—z‘z“|Ô#Ð#r   )r0   r:   )r   r?   s     r   Úread_to_next_empty_lineÚReader.read_to_next_empty_linef   s&   € Ø×%Ñ%Ô'ò	$ð ×%Ñ% hÓ/Ð/r   c                 ó*   • S nU R                  U5      $ )Nc                 óz   • U R                  5       =(       a%    [        U R                  5       5      [        U 5      :H  $ r   )r
   r4   Úlstripr>   s    r   Úis_unindentedÚ:Reader.read_to_next_unindented_line.<locals>.is_unindentedo   s'   € Ø—J‘J“L×F¤c¨$¯+©+«-Ó&8¼CÀ»IÑ&EÐGr   )r:   )r   rF   s     r   Úread_to_next_unindented_lineÚ#Reader.read_to_next_unindented_linen   s   € ò	Hà×%Ñ% mÓ4Ð4r   c                 ór   • U R                   U-   [        U R                  5      :  a  X R                   U-      $ g©Nr)   r3   r   s     r   ÚpeekÚReader.peeks   s.   € Ø�7‰7�Q‰;œ˜TŸY™Y›Ó'ØŸ™ !™Ñ$Ð$àr   c                 ó^   • SR                  U R                  5      R                  5       (       + $ rK   )Újoinr   r
   r%   s    r   r?   ÚReader.is_emptyy   s!   € Ø—7‘7˜4Ÿ9™9Ó%×+Ñ+Ó-Ô-Ð-r   )r$   r   N)r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r!   r   r,   r0   r*   r:   rA   rH   rL   r?   Ú__static_attributes__© r   r   r   r   1   s>   † ñòòòòòò)òò0ò5ô
õ.r   r   c                   ó   • \ rS rSrS rSrg)Ú
ParseErroré}   c                 ój   • U R                   S   n[        U S5      (       a  U SU R                  < 3nU$ )Nr   Ú	docstringú in )ÚargsÚhasattrr\   )r   Úmessages     r   Ú__str__ÚParseError.__str__~   s6   € Ø—)‘)˜A‘,ˆÜ�4˜×%Ñ%Ø ˜	  d§n¡nÑ%7Ð8ˆGØˆr   rW   N)rQ   rR   rS   rT   ra   rV   rW   r   r   rY   rY   }   s   † õr   rY   Ú	Parameter)ÚnameÚtypeÚdescc                   ó8  • \ rS rSrSr0 SS_SS/_S/ _S/ _S/ _S	/ _S
/ _S/ _S/ _S/ _S/ _S/ _S/ _S/ _S/ _SS_SS_S0 0Er0 4S jrS rS rS r	S r
S rS rS rS rSCS jrS rS!rS"rS#\-   \-   S$-   \-   S%-   r\R)                  S&S'5      r\R)                  S(S)5      rS*r\R0                  " S+\-   S,-   5      r\R0                  " S-\-   S.-   \-   S/-   S%-   S0-   \-   5      rS1rS2 rS3 rS4 rS5 rSDS6 jr SES7 jr!SFS8 jr"S9 r#S: r$S; r%S< r&S= r'S> r(S? r)SGS@ jr*SAr+gB)HÚNumpyDocStringéˆ   z{Parses a numpydoc string to an abstract representation

Instances define a mapping from section title to structured data.

Ú	Signaturer)   ÚSummaryúExtended SummaryÚ
ParametersÚReturnsÚYieldsÚReceivesÚRaisesÚWarnsúOther ParametersÚ
AttributesÚMethodsúSee AlsoÚNotesÚWarningsÚ
ReferencesÚExamplesÚindexc                 ó  • Un[         R                  " U5      R                  S5      n[        U5      U l        [
        R                  " U R                  5      U l         U R                  5         g ! [         a  nX4l        e S nAff = f©Nr   )ÚtextwrapÚdedentr   r   Ú_docÚcopyÚdeepcopyÚsectionsÚ_parsed_dataÚ_parserY   r\   )r   r\   ÚconfigÚorig_docstringÚes        r   r   ÚNumpyDocString.__init__¤   sg   € Ø"ˆÜ—O’O IÓ.×4Ñ4°TÓ:ˆ	ä˜9Ó%ˆŒ	Ü ŸMšM¨$¯-©-Ó8ˆÔð	Ø�K‰K�MøÜó 	Ø(ŒKØûð	ús   ÁA/ Á/
BÁ9B Â Bc                 ó    • U R                   U   $ r   )r„   )r   Úkeys     r   r!   ÚNumpyDocString.__getitem__±   s   € Ø× Ñ  Ñ%Ð%r   c                 óf   • XR                   ;  a  U R                  SU 3SS9  g X R                   U'   g )NzUnknown section F©Úerror)r„   Ú_error_location)r   r‹   Úvals      r   Ú__setitem__ÚNumpyDocString.__setitem__´   s7   € Ø×'Ñ'Ó'Ø× Ñ Ð#3°C°5Ð!9ÀÐ ÒGà%(×Ñ˜cÒ"r   c                 ó,   • [        U R                  5      $ r   )Úiterr„   r%   s    r   Ú__iter__ÚNumpyDocString.__iter__º   s   € Ü�D×%Ñ%Ó&Ð&r   c                 ó,   • [        U R                  5      $ r   )r4   r„   r%   s    r   Ú__len__ÚNumpyDocString.__len__½   s   € Ü�4×$Ñ$Ó%Ð%r   c                 óÈ  • U R                   R                  5         U R                   R                  5       (       a  gU R                   R                  5       R	                  5       nUR                  S5      (       a  gU R                   R                  S5      R	                  5       nUR                  S[        U5      -  5      =(       d    UR                  S[        U5      -  5      $ )NFú
.. index::Tr(   Ú-Ú=)r€   r0   r*   rL   r
   Ú
startswithr4   )r   Úl1Úl2s      r   Ú_is_at_sectionÚNumpyDocString._is_at_sectionÀ   s—   € Ø�	‰	×*Ñ*Ô,à�9‰9�=‰=�?‰?Øà�Y‰Y�^‰^Ó×#Ñ#Ó%ˆà�=‰=˜×&Ñ&Øà�Y‰Y�^‰^˜AÓ×$Ñ$Ó&ˆØ�}‰}˜S¤ R£™[Ó)×G¨R¯]©]¸3¼sÀ2»w¹;Ó-GÐGr   c                 óâ   • SnSn[        U5       H  u  p$UR                  5       (       d  M    O   [        US S S2   5       H  u  p4UR                  5       (       d  M    O   X[        U5      U-
   $ )Nr   r   )Ú	enumerater
   r4   )r   ÚdocÚiÚjr9   s        r   Ú_stripÚNumpyDocString._stripÎ   sh   € ØˆØˆÜ  –~‰GˆAØ�z‰z�|‹|Ùñ &ô ! ¡T r T¡Ö+‰GˆAØ�z‰z�|‹|Ùñ ,ð ”S˜“X˜a‘ZÐ Ð r   c                 ó®  • U R                   R                  5       nU R                  5       (       d¥  U R                   R                  5       (       d†  U R                   R	                  S5      R                  5       (       d  US/-  nXR                   R                  5       -  nU R                  5       (       d!  U R                   R                  5       (       d  M†  U$ )Nr   r)   )r€   rA   r¢   r*   rL   r
   )r   Úsections     r   Ú_read_to_next_sectionÚ$NumpyDocString._read_to_next_sectionÛ   s“   € Ø—)‘)×3Ñ3Ó5ˆà×%Ñ%×'Ñ'°·	±	·±·±Ø—9‘9—>‘> "Ó%×+Ñ+×-Ñ-Ø˜B˜4‘�à—y‘y×8Ñ8Ó:Ñ:ˆGð	 ×%Ñ%×'Ñ'°·	±	·±·³ð ˆr   c              #   óp  #   • U R                   R                  5       (       d“  U R                  5       nUS   R                  5       nUR	                  S5      (       a	  X!SS  4v •  O/[        U5      S:  a	  [        v •  OX R                  USS  5      4v •  U R                   R                  5       (       d  M’  g g 7f)Nr   ú..r(   é   )r€   r*   r­   r
   rŸ   r4   ÚStopIterationr©   )r   r   rd   s      r   Ú_read_sectionsÚNumpyDocString._read_sectionsæ   sˆ   é € Ø—)‘)—-‘-—/‘/Ø×-Ñ-Ó/ˆDØ˜‘7—=‘=“?ˆDà�‰˜t×$Ñ$Ø  ˜H�nÓ$Ü�T“˜Q“Ü#Ó#àŸK™K¨¨Q¨R¨Ó1Ð1Ò1ð —)‘)—-‘-—/•/ùs   ‚B0B6Â4B6c                 óŒ  • [        U5      n/ nUR                  5       (       d¡  UR                  5       R                  5       nSU;   a  UR	                  S5      S S u  pgOU(       a  SUpvOUSpvUR                  5       n[        U5      n[        U5      nUR                  [        XgU5      5        UR                  5       (       d  M¡  U$ )Nú : r±   r)   )
r   r*   r,   r
   r   rH   Údedent_linesr   Úappendrc   )	r   ÚcontentÚsingle_element_is_typeÚrÚparamsÚheaderÚarg_nameÚarg_typerf   s	            r   Ú_parse_param_listÚ NumpyDocString._parse_param_listò   s¨   € Ü�7‹OˆØˆØ—%‘%—'‘'Ø—V‘V“X—^‘^Ó%ˆFØ˜‹Ø%+§\¡\°%Ó%8¸¸!Ð%<Ñ"�˜(æ)Ø)+¨V™hà)/°˜hà×1Ñ1Ó3ˆDÜ Ó%ˆDÜ$ TÓ*ˆDà�M‰Mœ) H¸Ó=Ô>ð —%‘%—'“'ð  ˆr   z:(?P<role>\w+):z'`(?P<name>(?:~\w+\.)?[a-zA-Z0-9_\.-]+)`z(?P<name2>[a-zA-Z0-9_\.-]+)Ú(Ú|Ú)ÚroleÚrolenextrd   Ú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                 ó>  ^ • / nU 4S jn/ nU GHŠ  nUR                  5       (       d  M  T R                  R                  U5      nSnU(       aR  UR                  S5      nUR                  S5      (       a+  U(       a$  T R	                  SUR                  S5      U4-  SS9  U(       d7  UR                  S5      (       a!  UR                  UR                  5       5        MÏ  U(       a©  / nUR                  S	5      n	 U	R                  5       (       d  OTU" U	5      u  p«nUR                  X«45        XœS R                  5       n	U	(       a  U	S
   S:X  a  U	SS R                  5       n	Mj  [        [        SU/5      5      nUR                  X„45        GM  [        U S35      e   U$ )z�
func_name : Descriptive text
    continued text
another_func_name : Descriptive text
func_name1, func_name2, :meth:`func_name`, func_name3

c                 óü   >• TR                   R                  U 5      nU(       d  [        U  S35      eUR                  S5      nU(       a  UR                  S5      OUR                  S5      nX2UR	                  5       4$ )zMatch ':role:`name`' or 'name'.ú is not a item namerÅ   rd   Úname2)Ú	_func_rgxÚmatchrY   ÚgroupÚend)ÚtextÚmrÅ   rd   r   s       €r   Úparse_item_nameÚ7NumpyDocString._parse_see_also.<locals>.parse_item_name6  se   ø€ à—‘×$Ñ$ TÓ*ˆAÞÜ  D 6Ð)<Ð!=Ó>Ð>Ø—7‘7˜6“?ˆDÞ&*�1—7‘7˜6”?°·±¸Ó0@ˆDØ˜qŸu™u›wÐ&Ð&r   Nrf   ÚtrailingzGUnexpected comma or period after function list at index %d of line "%s"FrŽ   Ú Úallfuncsr   Ú,r(   rÊ   )r
   Ú	_line_rgxrÍ   rÎ   r�   rÏ   rŸ   r¸   r   ÚfilterrY   )r   r¹   ÚitemsrÒ   Úrestr9   Ú
line_matchÚdescriptionÚfuncsrÐ   rd   rÅ   Ú	match_ends   `            r   Ú_parse_see_alsoÚNumpyDocString._parse_see_also+  s~  ø€ ð ˆõ	'ð ˆÜˆDØ—:‘:—<‘<ÙàŸ™×-Ñ-¨dÓ3ˆJØˆKÞØ(×.Ñ.¨vÓ6�Ø×#Ñ# J×/Ñ/¶KØ×(Ñ(ð$Ø'1§~¡~°jÓ'AÀ4Ð&HñIà#ð )ñ %ö  4§?¡?°3×#7Ñ#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˜]×+ä  D 6Ð)<Ð!=Ó>Ð>ñ; ð< ˆr   c                 ó$  • S n0 nUR                  S5      n[        U5      S:”  a   U" US   R                  S5      5      S   US'   U HD  nUR                  S5      n[        U5      S:”  d  M%  U" US   R                  S5      5      XES   '   MF     U$ )	z<
.. index: default
   :refguide: something, else, and more

c                 óL   • U  Vs/ s H  oR                  5       PM     sn$ s  snf r   r	   )ÚlstÚss     r   Ústrip_each_inÚ2NumpyDocString._parse_index.<locals>.strip_each_inf  s   € Ù'*Ó+¢s !—G‘G–I¡sÑ+Ð+ùÒ+s   …!z::r(   r×   r   ÚdefaultÚ:r±   )r   r4   )r   r¬   r¹   ræ   r+   r9   s         r   Ú_parse_indexÚNumpyDocString._parse_index`  s�   € ò	,ð ˆØ—-‘- Ó%ˆÜˆw‹<˜!ÓÙ*¨7°1©:×+;Ñ+;¸CÓ+@ÓAÀ!ÑDˆC�	‰NÛˆDØ—:‘:˜c“?ˆDÜ�4‹y˜1�}Ù,¨T°!©W¯]©]¸3Ó-?Ó@�˜‘G“ñ ð ˆ
r   c                 óÚ  • U R                  5       (       a  g U R                  R                  5       nSR                  U Vs/ s H  o"R	                  5       PM     sn5      R	                  5       n[
        R                  " S5      nUR                  U5      (       a  X0S'   U R                  5       (       d  MŸ   Ub  XS'   U R                  5       (       d  U R                  5       U S'   ggs  snf )z%Grab signature (if given) and summaryNrÕ   z^([\w., ]+=)?\s*[\w\.]+\(.*\)$rj   rk   rl   )	r¢   r€   rA   rO   r
   ÚreÚcompilerÍ   r­   )r   Úsummaryrå   Úsummary_strÚcompileds        r   Ú_parse_summaryÚNumpyDocString._parse_summarys  sË   € à×Ñ× Ñ Øð Ø—i‘i×7Ñ7Ó9ˆGØŸ(™(±wÓ#?²w°!§G¡G¦I±wÑ#?Ó@×FÑFÓHˆKÜ—z’zÐ"CÓDˆHØ�~‰~˜k×*Ñ*Ø$/�[Ñ!Ø×*Ñ*×,Ñ,ÙØàÑØ%�‰Oà×"Ñ"×$Ñ$Ø'+×'AÑ'AÓ'CˆDÐ#Ò$ð %ùò $@s   ÁC(c                 ó,  • U R                   R                  5         U R                  5         [        U R	                  5       5      nU VVs1 s H  u  p#UiM	     nnnSU;   nSU;   nU(       a  U(       a  Sn[        U5      eU(       d  SU;   a  Sn[        U5      eU Hð  u  p#UR                  S5      (       dT  S UR                  S5       5       nSR                  U5      nU R                  U5      (       a  U R                  S	U S
35        US;   a  U R                  U5      X'   MŠ  US;   a  U R                  USS9X'   M¤  UR                  S5      (       a  U R                  X#5      U S'   MÐ  US:X  a  U R                  U5      U S'   Mì  X0U'   Mò     g s  snnf )Nrn   ro   z5Docstring contains both a Returns and Yields section.rp   z5Docstring contains a Receives section but not Yields.r°   c              3   ó@   #   • U  H  oR                  5       v •  M     g 7fr   )Ú
capitalize)Ú.0rå   s     r   Ú	<genexpr>Ú(NumpyDocString._parse.<locals>.<genexpr>œ  s   é € ÐFÒ3E¨aŸ<™<Ÿ>˜>Ò3Eùs   ‚rÕ   zThe section z appears twice)rm   rs   rt   ru   )rn   ro   rq   rr   rp   T)rº   rœ   r{   rv   )r€   r   rò   r   r³   Ú
ValueErrorrŸ   r   rO   Úgetr�   rÀ   rê   rà   )r   rƒ   r¬   r¹   Úsection_namesÚhas_returnsÚ
has_yieldsÚmsgs           r   r…   ÚNumpyDocString._parse‰  s  € Ø�	‰	�‰ÔØ×ÑÔä˜×+Ñ+Ó-Ó.ˆÙ9AÔBºÑ%5 W›¹ˆÑBà =Ñ0ˆØ Ñ.ˆ
æž:ØIˆCÜ˜S“/Ð!Þ˜j¨MÓ9ØIˆCÜ˜S“/Ð!ã"*ÑˆWØ×%Ñ% d×+Ñ+ÙF°7·=±=ÀÔ3EÓF�ØŸ(™( 7Ó+�Ø—8‘8˜G×$Ñ$Ø×(Ñ(¨<¸°yÀÐ)OÔPàð &ó &à $× 6Ñ 6°wÓ ?�“ØÐPÓPØ $× 6Ñ 6Ø°Dð !7ð !:�“à×#Ñ# L×1Ñ1Ø $× 1Ñ 1°'Ó C��W“Ø˜JÓ&Ø#'×#7Ñ#7¸Ó#@��ZÓ à '�W“ò% #+ùó Cs   Á	Fc                 óò   • [        U S5      (       a7   [        R                  " U R                  5      nUSU R                   SU S3-   nU(       a  [        U5      e[        U5        g ! [         a    S n NBf = f)NÚ_objz in the docstring of r]   Ú.)r_   ÚinspectÚgetsourcefiler  Ú	TypeErrorrú   r   )r   rÿ   r�   Úfilenames       r   r�   ÚNumpyDocString._error_location®  sr   € Ü�4˜× Ñ ð Ü"×0Ò0°·±Ó;�ð Ð/°·	±	¨{¸$¸x¸jÈÐJÑJˆCÞÜ˜S“/Ð!ä��Iøô ó  Ø’ð ús   “ A' Á'A6Á5A6c                 ó"   • U[        U5      U-  /$ r   ©r4   )r   rd   Úsymbols      r   Ú_str_headerÚNumpyDocString._str_header½  s   € Ø”c˜$“i Ñ&Ð'Ð'r   c                 ó4   • / nU H  nUSU-  U-   /-  nM     U$ )NrÕ   rW   )r   r¦   Úindentr+   r9   s        r   Ú_str_indentÚNumpyDocString._str_indentÀ  s,   € ØˆÛˆDØ�C˜‘J Ñ%Ð&Ñ&ŠCñ àˆ
r   c                 óP   • U S   (       a  U S   R                  SS5      /S/-   $ S/$ )Nrj   Ú*z\*r)   )Úreplacer%   s    r   Ú_str_signatureÚNumpyDocString._str_signatureÆ  s3   € Ø�×Ø˜Ñ%×-Ñ-¨c°5Ó9Ð:¸b¸TÑAÐAà�4ˆKr   c                 ó,   • U S   (       a	  U S   S/-   $ / $ )Nrk   r)   rW   r%   s    r   Ú_str_summaryÚNumpyDocString._str_summaryÌ  s   € Ø�	�?Ø˜	‘? b TÑ)Ð)àˆIr   c                 ó,   • U S   (       a	  U S   S/-   $ / $ )Nrl   r)   rW   r%   s    r   Ú_str_extended_summaryÚ$NumpyDocString._str_extended_summaryÒ  s#   € ØÐ"×#ØÐ*Ñ+¨r¨dÑ2Ð2àˆIr   c                 ó  • / nX   (       aó  X R                  U5      -  nX    HÒ  n/ nUR                  (       a  UR                  UR                  5        UR                  (       a  UR                  UR                  5        USR	                  U5      /-  nUR
                  (       d  M…  SR	                  UR
                  5      R                  5       (       d  Mµ  X R                  UR
                  5      -  nMÔ     US/-  nU$ )Nr¶   r)   )r  rd   r¸   re   rO   rf   r
   r  )r   rd   r+   ÚparamÚpartss        r   Ú_str_param_listÚNumpyDocString._str_param_listØ  sÁ   € ØˆØ�:Ø×#Ñ# DÓ)Ñ)ˆCØœ�Ø�Ø—:—:Ø—L‘L §¡Ô,Ø—:—:Ø—L‘L §¡Ô,Ø˜Ÿ
™
 5Ó)Ð*Ñ*�Ø—:—:‘: "§'¡'¨%¯*©*Ó"5×";Ñ";×"=Ó"=Ø×+Ñ+¨E¯J©JÓ7Ñ7’Cñ $ð �B�4‰KˆCØˆ
r   c                 ó\   • / nX   (       a   X R                  U5      -  nX U   -  nUS/-  nU$ rK   )r  )r   rd   r+   s      r   Ú_str_sectionÚNumpyDocString._str_sectionè  s;   € ØˆØ�:Ø×#Ñ# DÓ)Ñ)ˆCØ˜‘:ÑˆCØ�B�4‰KˆCØˆ
r   c                 ó  • U S   (       d  / $ / nX R                  S5      -  nUS/-  nSnU S    HÆ  u  pE[        U[        5      (       d   e/ nU H>  u  pxU(       a
  SU SU S3n	OU(       a
  SU SU S3n	OSU S3n	UR                  U	5        M@     SR	                  U5      n	X)/-  nU(       a'  X R                  S	R	                  U5      /5      -  nSnM¦  S
nX R                  U R                  /5      -  nMÈ     U(       a  US/-  nUS/-  nU$ )Nrv   r)   Tré   z:`Ú`z`_ú, rÕ   F)r  r   r   r¸   rO   r  Úempty_description)
r   Ú	func_roler+   Úlast_had_descrÞ   rf   ÚlinksÚfuncrÅ   Úlinks
             r   Ú_str_see_alsoÚNumpyDocString._str_see_alsoð  s3  € Ø�J×ØˆIØˆØ×Ñ 
Ó+Ñ+ˆØ�ˆt‰ˆØˆØ 
Ô+‰KˆEÜ˜e¤T×*Ñ*Ð*Ð*ØˆEÛ#‘
�ÞØ˜t˜f B t f¨AÐ.‘DÞØ˜y˜k¨¨D¨6°Ð3‘Dà˜t˜f B˜<�DØ—‘˜TÖ"ñ $ð —9‘9˜UÓ#ˆDØ�6‰MˆCÞØ×'Ñ'¨¯©°$«Ð(8Ó9Ñ9�Ø $’à %�Ø×'Ñ'¨×)?Ñ)?Ð(@ÓAÑA’ñ% ,ö( Ø�B�4‰KˆCØ�ˆt‰ˆØˆ
r   c                 óì   • U S   n/ nSnUR                  SS5      nU(       a  SnUSU 3/-  nUR                  5        H*  u  pVUS:X  a  M  SnUSU SS	R                  U5       3/-  nM,     U(       a  U$ g)
Nr{   Frè   r)   Tz.. index:: z   :z: r'  )rû   rÚ   rO   )r   Úidxr+   Úoutput_indexÚdefault_indexr¬   Ú
referencess          r   Ú
_str_indexÚNumpyDocString._str_index  s•   € Ø�7‰mˆØˆØˆØŸ™ 	¨2Ó.ˆÞØˆLØ�+˜m˜_Ð-Ð.Ñ.ˆØ#&§9¡9¦;ÑˆGØ˜)Ó#ÙØˆLØ�d˜7˜) 2 d§i¡i°
Ó&;Ð%<Ð=Ð>Ñ>ŠCñ	 $/ö
 ØˆJàr   c                 ó¬  • / nX R                  5       -  nX R                  5       -  nX R                  5       -  nS H  nX R                  U5      -  nM     X R	                  S5      -  nX R                  U5      -  nS H  nX R	                  U5      -  nM     S H  nX R                  U5      -  nM     X R                  5       -  nSR                  U5      $ )N)rm   rn   ro   rp   rs   rq   rr   rx   )rw   ry   rz   )rt   ru   r   )r  r  r  r   r#  r.  r5  rO   )r   r)  r+   Ú
param_listrå   s        r   ra   ÚNumpyDocString.__str__"  sÚ   € ØˆØ×"Ñ"Ó$Ñ$ˆØ× Ñ Ó"Ñ"ˆØ×)Ñ)Ó+Ñ+ˆóBˆJà×'Ñ'¨
Ó3Ñ3ŠCñBð 	× Ñ  Ó,Ñ,ˆØ×!Ñ! )Ó,Ñ,ˆÛ4ˆAØ×$Ñ$ QÓ'Ñ'ŠCñ 5ã3ˆJØ×'Ñ'¨
Ó3Ñ3ŠCñ 4à�‰Ó Ñ ˆØ�y‰y˜‹~Ðr   )r€   r„   N)F)T©r�   ©é   )r)   ),rQ   rR   rS   rT   rU   rƒ   r   r!   r’   r–   r™   r¢   r©   r­   r³   rÀ   Ú_roleÚ_funcbacktickÚ
_funcplainÚ	_funcnamer  Ú_funcnamenextÚ_descriptionrí   rî   rÌ   rØ   r(  rà   rê   rò   r…   r�   r  r  r  r  r  r   r#  r.  r5  ra   rV   rW   r   r   rh   rh   ˆ   s:  † ñðØ�Rðà�B�4ðð 	˜Bðð 	�bð	ð
 	�2ðð 	�"ðð 	�Bðð 	�"ðð 	�ðð 	˜Bðð 	�bðð 	�2ðð 	�Bðð 	�ðð 	�Bðð  	�bð!ð" 	�Bð#ð$ 	�ñ%€Hð* *,ô ò&ò)ò'ò&òHò!ò	ò
2ôðJ €EØ>€MØ/€JØ�u‘˜}Ñ,¨tÑ3°jÑ@À4ÑG€IØ×%Ñ% f¨jÓ9€MØ!×)Ñ)¨&°*Ó=€MØE€LØ—
’
˜7 YÑ.°Ñ7Ó8€IØ—
’
ð	àñ	ð 	!ñ	!ð $1ñ	1ð 4:ñ	:ð 	ñ		ð
 	 ñ	 ð 	ñ	ó€Ið Ðò3òjò&Dò,#(ôJô(ôòòòòò òò@÷$r   rh   c                 óp   ^• SU-  mU c  T$ U R                  S5      nSR                  U4S jU 5       5      $ )NrÕ   r   c              3   ó.   >#   • U  H
  nTU-   v •  M     g 7fr   rW   )r÷   r   Ú
indent_strs     €r   rø   Úindent.<locals>.<genexpr>9  s   øé € Ð3ªU¨�Z !–^ªUùs   ƒ)r   rO   )Ústrr  ÚlinesrE  s      @r   r  r  4  s9   ø€ Ø�V‘€JØ
�{ØÐØ�I‰I�d‹O€EØ�9‰9Ô3©UÓ3Ó3Ð3r   c                 ój   • [         R                  " SR                  U 5      5      R                  S5      $ )z"Deindent a list of lines maximallyr   )r~   r   rO   r   )rH  s    r   r·   r·   <  s%   € ä�?Š?˜4Ÿ9™9 UÓ+Ó,×2Ñ2°4Ó8Ð8r   c                 ó0   • U S-   U[        U 5      -  -   S-   $ r}   r
  )rÐ   Ústyles     r   r½   r½   A  s   € Ø�$‰;˜œs 4›y™Ñ(¨4Ñ/Ð/r   c                   ó>   ^ • \ rS rSrSS0 4S jrS rU 4S jrSrU =r$ )ÚFunctionDociE  r,  Nc                 óD  • Xl         X l        Uc-  Uc  [        S5      e[        R                  " U5      =(       d    Sn[
        R                  XU5        U S   (       dB  Ub>  U R                  5       u  p  [        [        R                  " U5      5      nU U 3nX`S'   g g g ! [        [        4 aZ    [        R                  S   S:¼  a  [        R                  " U5      nO[        R                  " U5      n[        R                  " U6 n Nvf = f! [          a    U S3n N…f = f)NzNo function or docstring givenr)   rj   r   é   z())Ú_fr=  rú   r  Úgetdocrh   r   Úget_funcrG  Ú	signatureÚAttributeErrorÚsysÚversion_infoÚgetfullargspecÚ
getargspecÚformatargspecr  )r   r,  rÅ   r¦   r†   Ú	func_namerS  Úargspecs           r   r   ÚFunctionDoc.__init__F  s  € ØŒØŒ
à‰;Ø‰|Ü Ð!AÓBÐBÜ—.’. Ó&×,¨"ˆCÜ×Ñ ¨6Ô2à�K×  TÑ%5Ø"Ÿm™m›o‰OˆDð-ð@Ü #¤G×$5Ò$5°dÓ$;Ó <�Ið  )˜k¨)¨Ð5�	ð !*�Òð &6Ð øô
 '¬
Ð3ó @ä×'Ñ'¨Ñ*¨aÓ/Ü")×"8Ò"8¸Ó">™ä")×"4Ò"4°TÓ":˜Ü '× 5Ò 5°wÐ ?’Ið@ûô ó -Ø(˜k¨Ð,’	ð-ús1   Á4B  ÂD Â A'D
ÄD Ä	D
Ä
D ÄDÄDc                 ó  • [        U R                  SU R                  R                  5      n[        R
                  " U R                  5      (       a.  [        U R                  SU R                  R                  5      nX!4$ U R                  nX!4$ )NrQ   Ú__call__)ÚgetattrrP  Ú	__class__rQ   r  Úisclassr   )r   rZ  r,  s      r   rR  ÚFunctionDoc.get_funca  sj   € Ü˜DŸG™G Z°·±×1HÑ1HÓIˆ	Ü�?Š?˜4Ÿ7™7×#Ñ#Ü˜4Ÿ7™7 J°·±×0@Ñ0@ÓAˆDð ˆÐð —7‘7ˆDØˆÐr   c                 ó,  >• SnU R                  5       u  p#SSS.nU R                  (       aN  U R                  U;  a  [        SU R                   35        USUR                  U R                  S5       SU S3-  nU[        TU ]  U R                  S	9-  nU$ )
Nr)   ÚfunctionÚmethod)r,  ÚmethzWarning: invalid role z.. z:: z
    

)r)  )rR  r=  Úprintrû   Úsuperra   )r   r+   r,  rZ  Úrolesr`  s        €r   ra   ÚFunctionDoc.__str__i  s’   ø€ ØˆàŸ-™-›/‰ˆà#Ø!ñ#ˆð �:�:Ø�z‰z Ó&ÜÐ.¨t¯z©z¨lÐ;Ô<Ø�S˜Ÿ™ 4§:¡:¨rÓ2Ð3°3°y°kÀÐLÑLˆCàŒu‰w‰¨¯©ˆÐ4Ñ4ˆØˆ
r   )rP  r=  )	rQ   rR   rS   rT   r   rR  ra   rV   Ú__classcell__)r`  s   @r   rM  rM  E  s   ø† Ø"(¨d¸2ô *ò6÷ó r   rM  c                   óR   • \ rS rSrS/rSS\0 4S jr\S 5       r\S 5       r	S r
S	rg)
ÚClassDociz  r^  Nr)   c                 ó°  • [         R                  " U5      (       d  Ub  [        SU< 35      eXl        S[        R
                  ;   a  SSKJn  O
[        5       nUR                  SS5      U l
        U(       a  UR                  S5      (       d  US-  nX0l        Uc$  Uc  [        S5      e[        R                  " U5      n[        R!                  X5        UR                  S	/ 5      nXvL a  S nUR                  S
/ 5      nUR                  SS5      (       a±  X†La¬  S n	SU R"                  4SU R$                  44 Hˆ  u  p«X
   (       a  M  / n['        U5       Hc  nXØ;   d  U(       a  X×;  a  M   [        R                  " [)        U R                  U5      5      nUR+                  [-        USU	" U5      5      5        Me     XÀU
'   MŠ     g g g ! [.         a     M  f = f)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                 ó4   • U (       d  / $ U R                  5       $ r   )Ú
splitlines)rå   s    r   Úsplitlines_xÚ'ClassDoc.__init__.<locals>.splitlines_x�  s   € ÞØ�IàŸ<™<›>Ð)r   ru   rt   r)   )r  ra  rú   Ú_clsrU  ÚmodulesÚsphinx.ext.autodocrp  Úobjectrû   Úshow_inherited_membersÚendswithÚ_modÚpydocrQ  rh   r   ÚmethodsÚ
propertiesÚsortedr_  r¸   rc   rT  )r   Úclsr¦   Ú
modulenameÚfunc_docr†   rp  Ú_membersÚ_excluderv  ÚfieldrÚ   Údoc_listrd   Údoc_items                  r   r   ÚClassDoc.__init__~  s­  € ä�Š˜s×#Ñ#¨©ÜÐAÀ#ÁÐIÓJÐJØŒ	à”s—{‘{Ó"Þ.ä“(ˆCà&,§j¡jØ2°Dó':ˆÔ#ö ˜j×1Ñ1°#×6Ñ6Ø˜#ÑˆJØŒ	à‰;Ø‰{Ü Ð!IÓJÐJÜ—,’,˜sÓ#ˆCä×Ñ Ô*à—:‘:˜i¨Ó,ˆØŠ?ØˆHØ—:‘:Ð/°Ó4ˆà�:‰:Ð*¨D×1Ñ1°hÒ6Iò*ð
 #,¨T¯\©\Ð!:Ø".°·±Ð!@ó!B‘�à—{‘{Ø!�HÜ & u¦˜Ø Ó,Þ!)¨dÓ.BÙ$ð!Ü',§|¢|´G¸D¿I¹IÀtÓ4LÓ'M˜HØ$ŸO™OÜ )¨$°±LÀÓ4JÓ KöMñ !.ð #+˜“Kò!Bð 7JÐ1øô$  .ó !Ú ð!ús   Å,AGÇ
GÇGc                 óB  • U R                   c  / $ [        R                  " U R                   5       VVs/ s H]  u  pUR                  S5      (       a  XR                  ;   d  M,  [        U[        5      (       d  MC  U R                  U5      (       d  M[  UPM_     snn$ s  snnf ©NÚ_)rx  r  Ú
getmembersrŸ   Úextra_public_methodsr   r   Ú_is_show_member©r   rd   r,  s      r   r€  ÚClassDoc.methods²  sˆ   € à�9‰9ÑØˆIÜ'.×'9Ò'9¸$¿)¹)Ô'Dô 5Ò'D™˜ØŸ™¨×-Ñ-Ø× 9Ñ 9Ñ9ó ô # 4¬×2ó ð ×,Ñ,¨T×2÷	 Ñ'Dò 5ð 	5ùó 5s   ³+BÁ"BÁ9BÂBc                 ó`  • U R                   c  / $ [        R                  " U R                   5       VVs/ s Hl  u  pUR                  S5      (       a  M  Ub2  [	        U[
        5      (       d  [        R                  " U5      (       d  MR  U R                  U5      (       d  Mj  UPMn     snn$ s  snnf r�  )rx  r  r�  rŸ   r   ÚpropertyÚisdatadescriptorr‘  r’  s      r   r�  ÚClassDoc.properties¼  sŒ   € à�9‰9ÑØˆIÜ'.×'9Ò'9¸$¿)¹)Ô'Dô 5Ò'D™˜ØŸ™¨×,ó à‘\¤Z°´h×%?Ñ%?Ü×-Ò-¨d×3ó ð ×,Ñ,¨T×2÷	 Ñ'Dò 5ð 	5ùó 5s   ³B*Á1B*ÂB*Â B*c                 ó\   • U R                   (       a  gXR                  R                  ;  a  gg)NTF)r|  rx  Ú__dict__)r   rd   s     r   r‘  ÚClassDoc._is_show_memberÆ  s$   € Ø×&×&ØØ—y‘y×)Ñ)Ó)ØØr   )rx  r~  r|  )rQ   rR   rS   rT   r�  rM  r   r•  r€  r�  r‘  rV   rW   r   r   rm  rm  z  sG   † à&˜<Ðà $°¸kØô2+ðh ñ5ó ð5ð ñ5ó ð5õr   rm  r;  r:  )rU   r  r~   rí   r  Úwarningsr   Úcollectionsr   Úcollections.abcr   r   r�   rU  r   r   Ú	ExceptionrY   rc   rh   r  r·   r½   rM  rm  rW   r   r   Ú<module>rŸ     s�   ðñó8 Û Û 	Û Ý Ý "ß -Û Û 
ò÷I.ñ I.ôX�ô ñ �{Ò$<Ó=€	ôi�Wô iôX4ò9ô
0ô2�.ô 2ôjQˆ~õ Qr   