ó
    sñ:i|N  ã                  ó0  • S SK Jr  S SKrS SKJr  S SKJrJrJr  S SK	J
r  S SKJr  S SKrS SKJrJr  S SKJrJr  S SKJrJr  S SKJrJr  S S	KJr  \(       a  S S
KJ r   S SK!J"r"  S SK#J$r$  S SK%J&r&  S SK'J(r)   " S S\5      r* " S S\*5      r+ " S S\*5      r,g)é    )ÚannotationsN)Úpairwise)ÚTYPE_CHECKINGÚAnyÚcast)ÚFillTypeÚLineType)Úconvert_filledÚconvert_lines)Úas_fill_typeÚas_line_type)Úfilled_to_mpl_pathsÚlines_to_mpl_paths)ÚRenderer)ÚSequence)ÚAxes)ÚFigure)Ú	ArrayLikec                  ó¦  • \ rS rSr% SrS\S'   S\S'   S\S'         S             SS
 jjrSS jrSS jrSS jr	   S           SS jjr
     S               SS jjr    S              S!S jjr  S"           S#S jjrS$S%S jjrS&S jrSS jrS'S(S jjr    S)               S*S jjrSrg	)+ÚMplRendereré   a{  Utility renderer using Matplotlib to render a grid of plots over the same (x, y) range.

Args:
    nrows (int, optional): Number of rows of plots, default ``1``.
    ncols (int, optional): Number of columns of plots, default ``1``.
    figsize (tuple(float, float), optional): Figure size in inches, default ``(9, 9)``.
    show_frame (bool, optional): Whether to show frame and axes ticks, default ``True``.
    backend (str, optional): Matplotlib backend to use or ``None`` for default backend.
        Default ``None``.
    gridspec_kw (dict, optional): Gridspec keyword arguments to pass to ``plt.subplots``,
        default None.
zSequence[Axes]Ú_axesr   Ú_figÚboolÚ_want_tightNc                ó,  • Ub  SS K nUR                  U5        USSSS.nUb  XhS'   OSS0US'   [        R                  " X40 UD6u  U l        n	U	R                  5       U l        U(       d$  U R                   H  n
U
R                  S	5        M     SU l        g )
Nr   FT)ÚfigsizeÚsqueezeÚsharexÚshareyÚgridspec_kwÚaspectÚequalÚ
subplot_kwÚoff)	Ú
matplotlibÚuseÚpltÚsubplotsr   Úflattenr   Úaxisr   )ÚselfÚnrowsÚncolsr   Ú
show_frameÚbackendr!   ÚmplÚkwargsÚaxesÚaxs              Ú^/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/contourpy/util/mpl_renderer.pyÚ__init__ÚMplRenderer.__init__,   s”   € ð ÑÛ$Ø�G‰G�GÔà-4ÀØ,0¸Dñ"BˆàÑ"Ø$/�=Ò!à$,¨gÐ#6ˆF�<Ñ äŸ,š, uÑ>°vÑ>‰ˆŒ	�4Ø—\‘\“^ˆŒ
ÞØ—j”j�Ø—‘˜–ñ !ð  ˆÕó    c                óh   • [        U S5      (       a!  [        R                  " U R                  5        g g )Nr   )Úhasattrr(   Úcloser   ©r,   s    r5   Ú__del__ÚMplRenderer.__del__H   s$   € Ü�4˜× Ñ Ü�IŠI�d—i‘iÕ ð !r8   c                ó
  • U R                    H-  n[        USS5      (       d  M  UR                  SS9  SUl        M/     U R                  (       a5  [        U R                   5      S:”  a  U R                  R                  5         g g g )NÚ_need_autoscaleFT)Útighté   )r   ÚgetattrÚautoscale_viewr@   r   Úlenr   Útight_layout©r,   r4   s     r5   Ú
_autoscaleÚMplRenderer._autoscaleL   sm   € ð —*”*ˆBÜ�rÐ,¨e×4Ó4Ø×!Ñ!¨Ð!Ñ-Ø%*�Ö"ñ ð ××¤ D§J¡J£°!Ó 3Ø�I‰I×"Ñ"Õ$ð !4Ðr8   c                óN   • [        U[        5      (       a  U R                  U   nU$ ©N)Ú
isinstanceÚintr   rG   s     r5   Ú_get_axÚMplRenderer._get_axW   s!   € Ü�bœ#×ÑØ—‘˜B‘ˆBØˆ	r8   c                ó°   • [        U5      nU R                  U5      n[        X5      n[        R                  " XdSSUS9nUR                  U5        SUl        g)aµ  Plot filled contours on a single Axes.

Args:
    filled (sequence of arrays): Filled contour data as returned by
        :meth:`~.ContourGenerator.filled`.
    fill_type (FillType or str): Type of :meth:`~.ContourGenerator.filled` data as returned
        by :attr:`~.ContourGenerator.fill_type`, or string equivalent
    ax (int or Maplotlib Axes, optional): Which axes to plot on, default ``0``.
    color (str, optional): Color to plot with. May be a string color or the letter ``"C"``
        followed by an integer in the range ``"C0"`` to ``"C9"`` to use a color from the
        ``tab10`` colormap. Default ``"C0"``.
    alpha (float, optional): Opacity to plot with, default ``0.7``.
Únoner   ©Ú
facecolorsÚ
edgecolorsÚlwÚalphaTN)r   rN   r   ÚmcollectionsÚPathCollectionÚadd_collectionr@   )r,   ÚfilledÚ	fill_typer4   ÚcolorrV   ÚpathsÚ
collections           r5   rZ   ÚMplRenderer.filled\   sV   € ô* ! Ó+ˆ	Ø�\‰\˜"ÓˆÜ# FÓ6ˆÜ!×0Ò0Ø°¸1ÀEñKˆ
à
×Ñ˜*Ô%Ø!ˆÕr8   c                ó   • U R                  U5      nU R                  X5      u  pXES.nUR                  " XUR                  UR                  40 UD6  US:”  GaZ  SUSS2SS24   USS2SS24   -   USS2SS24   -   USS2SS24   -   -  n	SUSS2SS24   USS2SS24   -   USS2SS24   -   USS2SS24   -   -  n
XxS'   UR                  " [        R
                  " USS2SS24   X‘SS2SS24   45      R                  S5      [        R
                  " USS2SS24   X¢SS2SS24   45      R                  S5      [        R
                  " USS2SS24   X‘SS2SS24   45      R                  S5      [        R
                  " USS2SS24   X¢SS2SS24   45      R                  S5      40 UD6  Ub  UR                  XXeS	SS
9  SUl        g)aŒ  Plot quad grid lines on a single Axes.

Args:
    x (array-like of shape (ny, nx) or (nx,)): The x-coordinates of the grid points.
    y (array-like of shape (ny, nx) or (ny,)): The y-coordinates of the grid points.
    ax (int or Matplotlib Axes, optional): Which Axes to plot on, default ``0``.
    color (str, optional): Color to plot grid lines, default ``"black"``.
    alpha (float, optional): Opacity to plot lines with, default ``0.1``.
    point_color (str, optional): Color to plot grid points or ``None`` if grid points
        should not be plotted, default ``None``.
    quad_as_tri_alpha (float, optional): Opacity to plot ``quad_as_tri`` grid, default 0.

Colors may be a string color or the letter ``"C"`` followed by an integer in the range
``"C0"`` to ``"C9"`` to use a color from the ``tab10`` colormap.

Warning:
    ``quad_as_tri_alpha > 0`` plots all quads as though they are unmasked.
)r\   rV   r   g      Ð?NéÿÿÿÿrB   rV   )é   ra   Úo)r\   rV   ÚmarkerrU   T)rN   Ú_grid_as_2dÚplotÚTÚnpÚstackÚreshaper@   )r,   ÚxÚyr4   r\   rV   Úpoint_colorÚquad_as_tri_alphar2   ÚxmidÚymids              r5   ÚgridÚMplRenderer.gridy   s  € ð8 �\‰\˜"ÓˆØ×Ñ Ó%‰ˆØ+0Ñ!AˆØ
�Š��a—c‘c˜1Ÿ3™3Ñ) &Ò)Ø˜qÔ à˜˜3˜B˜3   ˜8™ q¨©¨S¨b¨S¨¡zÑ1°A°c°r°c¸1¹2°g±JÑ>ÀÀ1Á2ÀqÁrÀ6ÁÑJÑKˆDØ˜˜3˜B˜3   ˜8™ q¨©¨S¨b¨S¨¡zÑ1°A°c°r°c¸1¹2°g±JÑ>ÀÀ1Á2ÀqÁrÀ6ÁÑJÑKˆDØ/�7‰OØ�GŠGÜ—’˜!˜C˜R˜C  " ˜H™+ t¨q©r°1±2¨v©YÐ7Ó8×@Ñ@ÀÓIÜ—’˜!˜C˜R˜C  " ˜H™+ t¨q©r°1±2¨v©YÐ7Ó8×@Ñ@ÀÓIÜ—’˜!˜A™B   ˜G™* d¨c¨r¨c°1±2¨g©JÐ7Ó8×@Ñ@ÀÓIÜ—’˜!˜A™B   ˜G™* d¨c¨r¨c°1±2¨g©JÐ7Ó8×@Ñ@ÀÓIñ	ð
 òð Ñ"Ø�G‰G�A ÀÈˆGÑKØ!ˆÕr8   c                ó°   • [        U5      nU R                  U5      n[        X5      n[        R                  " USXFUS9nUR                  U5        SUl        g)a÷  Plot contour lines on a single Axes.

Args:
    lines (sequence of arrays): Contour line data as returned by
        :meth:`~.ContourGenerator.lines`.
    line_type (LineType or str): Type of :meth:`~.ContourGenerator.lines` data as returned
        by :attr:`~.ContourGenerator.line_type`, or string equivalent.
    ax (int or Matplotlib Axes, optional): Which Axes to plot on, default ``0``.
    color (str, optional): Color to plot lines. May be a string color or the letter ``"C"``
        followed by an integer in the range ``"C0"`` to ``"C9"`` to use a color from the
        ``tab10`` colormap. Default ``"C0"``.
    alpha (float, optional): Opacity to plot lines with, default ``1.0``.
    linewidth (float, optional): Width of lines, default ``1``.
rQ   rR   TN)r   rN   r   rW   rX   rY   r@   )	r,   ÚlinesÚ	line_typer4   r\   rV   Ú	linewidthr]   r^   s	            r5   rt   ÚMplRenderer.lines¨   sV   € ô. ! Ó+ˆ	Ø�\‰\˜"ÓˆÜ" 5Ó4ˆÜ!×0Ò0Ø˜f°ÈEñSˆ
à
×Ñ˜*Ô%Ø!ˆÕr8   c                óò   • [         R                  R                  U5      nU[         R                  R                  L a  gU R	                  U5      nU R                  X5      u  pUR                  X   X&   SUS9  g)aª  Plot masked out grid points as circles on a single Axes.

Args:
    x (array-like of shape (ny, nx) or (nx,)): The x-coordinates of the grid points.
    y (array-like of shape (ny, nx) or (ny,)): The y-coordinates of the grid points.
    z (masked array of shape (ny, nx): z-values.
    ax (int or Matplotlib Axes, optional): Which Axes to plot on, default ``0``.
    color (str, optional): Circle color, default ``"black"``.
Nrc   )Úc)rh   ÚmaÚgetmaskÚnomaskrN   re   rf   )r,   rk   rl   Úzr4   r\   Úmasks          r5   r~   ÚMplRenderer.maskÇ   sa   € ô" �u‰u�}‰}˜QÓˆØ”2—5‘5—<‘<ÒØØ�\‰\˜"ÓˆØ×Ñ Ó%‰ˆØ
�‰�‘˜™ #¨ˆÒ/r8   c                óV   • U R                  5         U R                  R                  XS9  g)z¶Save plots to SVG or PNG file.

Args:
    filename (str): Filename to save to.
    transparent (bool, optional): Whether background should be transparent, default
        ``False``.
)ÚtransparentN)rH   r   Úsavefig)r,   Úfilenamer�   s      r5   ÚsaveÚMplRenderer.saveß   s#   € ð 	�‰ÔØ�	‰	×Ñ˜(ÐÒ<r8   c                ó¦   • U R                  5         [        R                  " 5       nU R                  R	                  USS9  UR                  S5        U$ )zPSave plots to an ``io.BytesIO`` buffer.

Return:
    BytesIO: PNG image buffer.
Úpng)Úformatr   )rH   ÚioÚBytesIOr   r‚   Úseek)r,   Úbufs     r5   Úsave_to_bufferÚMplRenderer.save_to_bufferê   s@   € ð 	�‰ÔÜ�jŠj‹lˆØ�	‰	×Ñ˜# eÐÑ,Ø�‰�ŒØˆ
r8   c                óN   • U R                  5         [        R                  " 5         g)zMShow plots in an interactive window, in the usual Matplotlib manner.
        N)rH   r(   Úshowr<   s    r5   r�   ÚMplRenderer.showö   s   € ð 	�‰ÔÜ�Š�
r8   c                ó�   • U(       a  U R                  U5      R                  XS9  gU R                  U5      R                  U5        g)aÝ  Set the title of a single Axes.

Args:
    title (str): Title text.
    ax (int or Matplotlib Axes, optional): Which Axes to set the title of, default ``0``.
    color (str, optional): Color to set title. May be a string color or the letter ``"C"``
        followed by an integer in the range ``"C0"`` to ``"C9"`` to use a color from the
        ``tab10`` colormap. Default is ``None`` which uses Matplotlib's default title color
        that depends on the stylesheet in use.
)r\   N)rN   Ú	set_title)r,   Útitler4   r\   s       r5   r”   ÚMplRenderer.titleü   s8   € ö Ø�L‰L˜Ó×&Ñ& uÐ&Ò:à�L‰L˜Ó×&Ñ& uÕ-r8   c                óº  • U R                  U5      nU R                  X5      u  p[        R                  " U5      nUR                  u  p‰[        U5       H9  n
[        U	5       H'  nUR                  XU4   X*U4   X:U4   U  SSUSS9  M)     M;     U(       aÄ  [        US-
  5       H±  n
[        U	S-
  5       Hœ  n[        R                  " XU
S-   2X»S-   24   [        R                  S9n[        R                  " X*U
S-   2X»S-   24   [        R                  S9n[        R                  " X:U
S-   2X»S-   24   5      nUR                  XÍXæ  SSUSS9  Mž     M³     gg)a@  Show ``z`` values on a single Axes.

Args:
    x (array-like of shape (ny, nx) or (nx,)): The x-coordinates of the grid points.
    y (array-like of shape (ny, nx) or (ny,)): The y-coordinates of the grid points.
    z (array-like of shape (ny, nx): z-values.
    ax (int or Matplotlib Axes, optional): Which Axes to plot on, default ``0``.
    color (str, optional): Color of added text. May be a string color or the letter ``"C"``
        followed by an integer in the range ``"C0"`` to ``"C9"`` to use a color from the
        ``tab10`` colormap. Default ``"green"``.
    fmt (str, optional): Format to display z-values, default ``".1f"``.
    quad_as_tri (bool, optional): Whether to show z-values at the ``quad_as_tri`` centers
        of quads.

Warning:
    ``quad_as_tri=True`` shows z-values for all quads, even if masked.
ÚcenterT©ÚhaÚvar\   Úclip_onrB   é   ©ÚdtypeN)	rN   re   rh   ÚasarrayÚshapeÚrangeÚtextÚmeanÚfloat64)r,   rk   rl   r}   r4   r\   ÚfmtÚquad_as_triÚnyÚnxÚjÚiÚxxÚyyÚzzs                  r5   Úz_valuesÚMplRenderer.z_values  sS  € ð6 �\‰\˜"ÓˆØ×Ñ Ó%‰ˆÜ�JŠJ�q‹MˆØ—‘‰ˆÜ�r–ˆAÜ˜2–Y�Ø—‘˜˜Q˜$™  a 4¡¨Q°!¨t©W°c°U¨OÀÈhØ#¨Tð ó 3ó ñ ö Ü˜2˜a™4–[�Ü˜r !™tž�AÜŸš  Q q¡S 5¨!¨a©C¨% <¡¼¿
¹
ÑC�BÜŸš  Q q¡S 5¨!¨a©C¨% <¡¼¿
¹
ÑC�BÜŸš  Q q¡S 5¨!¨a©C¨% <¡Ó1�BØ—G‘G˜B r¨% j°hÀ8ÐSXØ$(ð ó *ó	 %ò !ð r8   )r   r   r   )rB   rB   ©é	   r±   TNN)r-   rM   r.   rM   r   útuple[float, float]r/   r   r0   ú
str | Noner!   zdict[str, Any] | NoneÚreturnÚNone)r´   rµ   )r4   ú
Axes | intr´   r   )r   ÚC0çffffffæ?)rZ   úcpy.FillReturnr[   úFillType | strr4   r¶   r\   ÚstrrV   Úfloatr´   rµ   )r   Úblackçš™™™™™¹?Nr   )rk   r   rl   r   r4   r¶   r\   r»   rV   r¼   rm   r³   rn   r¼   r´   rµ   )r   r·   ç      ð?rB   )rt   úcpy.LineReturnru   úLineType | strr4   r¶   r\   r»   rV   r¼   rv   r¼   r´   rµ   )r   r½   )rk   r   rl   r   r}   z'ArrayLike | np.ma.MaskedArray[Any, Any]r4   r¶   r\   r»   r´   rµ   )F)rƒ   r»   r�   r   r´   rµ   )r´   z
io.BytesIO)r   N)r”   r»   r4   r¶   r\   r³   r´   rµ   )r   Úgreenz.1fF)rk   r   rl   r   r}   r   r4   r¶   r\   r»   r¥   r»   r¦   r   r´   rµ   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__annotations__r6   r=   rH   rN   rZ   rq   rt   r~   r„   r�   r�   r”   r®   Ú__static_attributes__© r8   r5   r   r      sO  ‡ ñð ÓØ
ƒLØÓð ØØ'-ØØ"Ø-1ð àð ð ð ð %ð	 ð
 ð ð ð ð +ð ð 
õ ô8!ô	%ôð ØØð"àð"ð "ð"ð ð	"ð
 ð"ð ð"ð 
õ"ðB ØØØ"&Ø#$ð-"àð-"ð ð-"ð ð	-"ð
 ð-"ð ð-"ð  ð-"ð !ð-"ð 
õ-"ðf ØØØð"àð"ð "ð"ð ð	"ð
 ð"ð ð"ð ð"ð 
õ"ðH Øð0àð0ð ð0ð 3ð	0ð
 ð0ð ð0ð 
õ0ö0	=ô
ôö.ð* ØØØ!ð**àð**ð ð**ð ð	**ð
 ð**ð ð**ð ð**ð ð**ð 
÷**ð **r8   r   c                  óH   ^ • \ rS rSrSr   S       SU 4S jjjrSrU =r$ )ÚMplTestRendereri9  z²Test renderer implemented using Matplotlib.

No whitespace around plots and no spines/ticks displayed.
Uses Agg backend, so can only save to file/buffer, cannot call ``show()``.
c           	     óö   >• SSSSSSS.n[         TU ]  XUSSUS9  U R                   HG  nUR                  S5        UR	                  S5        UR                  / 5        UR                  / 5        MI     SU l        g )	Ng{®Gáz„?g®Gáz®ï?)ÚleftÚrightÚtopÚbottomÚwspaceÚhspaceTÚAgg)r/   r0   r!   ç        F)Úsuperr6   r   Úset_xmarginÚset_ymarginÚ
set_xticksÚ
set_yticksr   )r,   r-   r.   r   Úgridspecr4   Ú	__class__s         €r5   r6   ÚMplTestRenderer.__init__?  s‡   ø€ ð ØØØØØñ
ˆô 	‰ÑØ˜'¨d¸EÈxð 	ñ 	
ð —*”*ˆBØ�N‰N˜3ÔØ�N‰N˜3ÔØ�M‰M˜"ÔØ�M‰M˜"Öñ	 ð !ˆÕr8   )r   )rB   rB   r°   )r-   rM   r.   rM   r   r²   r´   rµ   )rÃ   rÄ   rÅ   rÆ   rÇ   r6   rÉ   Ú__classcell__©rÜ   s   @r5   rÌ   rÌ   9  sC   ø† ñð ØØ'-ð	!àð!ð ð!ð %ð	!ð
 
÷!ö !r8   rÌ   c                  óŒ  ^ • \ rS rSrSr    S         SU 4S jjjr              SS jr        S                     SU 4S jjjr       S                   SU 4S jjjr  S           SS jjr	  S           SS jjr
   S               SS	 jjrS
rU =r$ )ÚMplDebugRendereriZ  z˜Debug renderer implemented using Matplotlib.

Extends ``MplRenderer`` to add extra information to help in debugging such as markers, arrows,
text, etc.
c                ó&   >• [         TU ]  XX45        g rK   )rÖ   r6   )r,   r-   r.   r   r/   rÜ   s        €r5   r6   ÚMplDebugRenderer.__init__`  s   ø€ ô 	‰Ñ˜ wÕ;r8   c                ó`  • SX#-   -  nX2-
  nU[         R                  " [         R                  " Xˆ5      5      -  n[         R                  " US   US   * 45      n	[         R                  " XxS-  U	-
  U-  -
  XxS-  U-  -   XxS-  U	-   U-  -
  45      n
UR                  U
S S 2S4   U
S S 2S4   SXES9  g )Ng      à?rB   r   Ú-©ry   rV   )rh   ÚsqrtÚdotrŸ   ri   rf   )r,   r4   Ú
line_startÚline_endr\   rV   Ú
arrow_sizeÚmidÚalongrÏ   Úarrows              r5   Ú_arrowÚMplDebugRenderer._arrowi  sÂ   € ð �:Ñ(Ñ)ˆØÑ%ˆØ”—’œŸš Ó-Ó.Ñ.ˆÜ—
’
˜E !™H u¨Q¡x iÐ0Ó1ˆÜ—’Ø˜‘9˜uÑ$ jÑ0Ñ0Ø˜‘)˜JÑ&Ñ&Ø˜‘9˜uÑ$ jÑ0Ñ0ð
ó ˆð
 	�‰�’a˜�d‘˜U¢1 a 4™[¨#°ˆÒDr8   c                ó
  >• [        U5      n[        TU ]	  XX4U5        Uc  Uc  g U R                  U5      n[	        X[
        R                  5      nUb’  [        U6  H†  u  p¼Uc  M
  [        U5       Hm  u  pÞX½U nUR                  US S 2S4   US S 2S4   XgS9  U
S:”  d  M0  [        U5      n[        US-
  5       H   nU R                  X?U   UUS-      XgU
5        M"     Mo     Mˆ     Ubœ  [        U6  H�  u  p¼Uc  M
  [        R                  " US   [        S9nSUUSS  S-
  '   U	b
  US S nSUU'   UR                  US S 2S4   U   US S 2S4   U   SX‡S9  U	c  Mi  UR                  US S 2S4   W   US S 2S4   U   SX—S9  M‘     g g )	Nr   rB   ræ   rÕ   ra   r�   Frc   )r   rÖ   rZ   rN   r
   r   ÚChunkCombinedOffsetÚzipr   rf   rE   r¡   rï   rh   Úonesr   )r,   rZ   r[   r4   r\   rV   Ú
line_colorÚ
line_alpharm   Ústart_point_colorrë   ÚpointsÚoffsetsÚstartÚendÚxysÚnrª   r~   Ústart_indicesrÜ   s                       €r5   rZ   ÚMplDebugRenderer.filled}  sÇ  ø€ ô ! Ó+ˆ	Ü‰‰�v¨"°UÔ;àÑ +Ñ"5Øà�\‰\˜"ÓˆÜ ´8×3OÑ3OÓPˆð Ñ!Ü#&¨£<‘�Ø‘>ÙÜ"*¨7Ö"3‘J�EØ  sÐ+�CØ—G‘G˜C¢ 1 ™I sª1¨a¨4¡y°J�GÑQà! CÕ'Ü ›H˜Ü!& q¨¡s¦˜AØ ŸK™K¨°©F°C¸¸!¹±H¸jÐV`Öaó ",ó #4ñ $0ð Ñ"Ü#&¨£<‘�Ø‘>ÙÜ—w’w˜w r™{´$Ñ7�Ø&+��W˜Q˜R�[ ‘]Ñ#Ø$Ñ0Ø$+¨C¨R L�MØ*/�D˜Ñ'Ø—‘Øš1˜a˜4‘L Ñ&¨ªq°!¨t©°TÑ(:¸CÀ;ð ñ bð %Ó0Ø—G‘G˜F¢1 a 4™L¨Ñ7¸ÂÀ1À¹ÀmÑ9TÐVYØ/ð ó Cò $0ð #r8   c
           
     ó€  >• [        U5      n[        TU ]	  XX4XV5        U	S:X  a  Uc  g U R                  U5      n[	        X[
        R                  5      n
[        (       a  [        [        R                  U
5      n
U	S:”  aC  U
 H=  n[        [        U5      S-
  5       H  nU R                  X;U   X¼S-      XEU	5        M!     M?     Ub{  U
 Ht  nSn[        U5      nUbC  UR                  US   US   SX…S9  SnUS   S   US   S   :X  a  US   S   US   S   :X  a  US-  nUR                  X½U2S4   X½U2S4   SXES9  Mv     g g )	NrÕ   rB   r   )r   r   )r   rB   rc   ræ   ra   )r   rÖ   rt   rN   r   r	   ÚSeparater   r   ÚcpyÚLineReturn_Separater¡   rE   rï   rf   )r,   rt   ru   r4   r\   rV   rv   rm   r÷   rë   Úseparate_linesÚlinerª   Ústart_indexÚ	end_indexrÜ   s                  €r5   rt   ÚMplDebugRenderer.lines²  sf  ø€ ô ! Ó+ˆ	Ü‰‰�e¨°5ÔDà˜Ó Ñ!4Øà�\‰\˜"ÓˆÜ& u¼×9JÑ9JÓKˆßŠ=Ü!¤#×"9Ñ"9¸>ÓJˆNà˜ÓÛ&�Üœs 4›y¨™{Ö+�AØ—K‘K ¨¡G¨T°A±#©Y¸ÀjÖQó ,ñ 'ð Ñ"Û&�Ø�Ü ›I�	Ø$Ñ0Ø—G‘G˜D ™J¨¨T©
°CÐ;L�GÑZØ"#�KØ˜A‘w˜q‘z T¨"¡X¨a¡[Ó0°T¸!±W¸Q±ZÀ4ÈÁ8ÈAÁ;Ó5NØ! Q™˜	Ø—‘˜¨Ð2°AÐ5Ñ6¸ÈÐ=RÐTUÐ=UÑ8VÐX[Øð ó .ò 'ð #r8   c                ó6  • U R                  U5      nU R                  X5      u  p[        R                  " U5      nUR                  u  pg[        U5       HB  n[        U5       H0  n	X˜U-  -   n
UR                  XU	4   X(U	4   [        U
5      SSUSS9  M2     MD     g )NrÏ   rÐ   Tr˜   ©rN   re   rh   rŸ   r    r¡   r¢   r»   )r,   rk   rl   r}   r4   r\   r§   r¨   r©   rª   Úquads              r5   Úpoint_numbersÚMplDebugRenderer.point_numbersÚ  s”   € ð �\‰\˜"ÓˆØ×Ñ Ó%‰ˆÜ�JŠJ�q‹MˆØ—‘‰ˆÜ�r–ˆAÜ˜2–Y�Ø˜R™4‘x�Ø—‘˜˜Q˜$™  a 4¡¬#¨d«)¸ÀEÐQVØ $ð ó &ó ò r8   c                ó¸  • U R                  U5      nU R                  X5      u  p[        R                  " U5      nUR                  u  pg[        SU5       H‚  n[        SU5       Ho  n	X˜U-  -   n
XS-
  US-   2U	S-
  U	S-   24   R                  5       nX(S-
  US-   2U	S-
  U	S-   24   R                  5       nUR                  X¼[        U
5      SSUSS9  Mq     M„     g )NrB   r—   Tr˜   )	rN   re   rh   rŸ   r    r¡   r£   r¢   r»   )r,   rk   rl   r}   r4   r\   r§   r¨   r©   rª   r  ro   rp   s                r5   Úquad_numbersÚMplDebugRenderer.quad_numbersì  sà   € ð �\‰\˜"ÓˆØ×Ñ Ó%‰ˆÜ�JŠJ�q‹MˆØ—‘‰ˆÜ�q˜"–ˆAÜ˜1˜b–\�Ø˜R™4‘x�Ø˜1™˜Q˜q™S˜ ! A¡# a¨¡c 'Ð)Ñ*×/Ñ/Ó1�Ø˜1™˜Q˜q™S˜ ! A¡# a¨¡c 'Ð)Ñ*×/Ñ/Ó1�Ø—‘˜¤C¨£I°(¸xÈuÐ^b�Ócó	 "ò r8   c                ó^  • U R                  U5      nU R                  X5      u  p[        R                  " U5      nUR                  u  p‰[        U5       HV  n
[        U	5       HD  nX:U4   nUb  XÅ:”  a  SnO
XÄ:”  a  SnOSnUR                  XU4   X*U4   [        U5      SSUSS9  MF     MX     g )Nrœ   rB   r   rÎ   rÑ   Tr˜   r
  )r,   rk   rl   r}   Úlower_levelÚupper_levelr4   r\   r§   r¨   r©   rª   r­   Úz_levels                 r5   Úz_levelsÚMplDebugRenderer.z_levelsÿ  s´   € ð �\‰\˜"ÓˆØ×Ñ Ó%‰ˆÜ�JŠJ�q‹MˆØ—‘‰ˆÜ�r–ˆAÜ˜2–Y�Ø˜!�t‘W�ØÑ*¨rÓ/?Ø‘GØÓ%Ø‘Gà�GØ—‘˜˜Q˜$™  a 4¡¬#¨g«,¸6ÀhÐV[Ø $ð ó &ó ò r8   rÊ   )rB   rB   r°   T)
r-   rM   r.   rM   r   r²   r/   r   r´   rµ   )r4   r   ré   úcpy.CoordinateArrayrê   r  r\   r»   rV   r¼   rë   r¼   r´   rµ   )r   ÚC1r¸   r·   r¸   r·   Úredr¾   )rZ   r¹   r[   rº   r4   r¶   r\   r»   rV   r¼   rõ   r»   rö   r¼   rm   r»   r÷   r»   rë   r¼   r´   rµ   )r   r·   r¿   rB   r·   r  r¾   )rt   rÀ   ru   rÁ   r4   r¶   r\   r»   rV   r¼   rv   r¼   rm   r»   r÷   r»   rë   r¼   r´   rµ   )r   r  )rk   r   rl   r   r}   r   r4   r¶   r\   r»   r´   rµ   )r   Úblue)Nr   rÂ   )rk   r   rl   r   r}   r   r  r¼   r  zfloat | Noner4   r¶   r\   r»   r´   rµ   )rÃ   rÄ   rÅ   rÆ   rÇ   r6   rï   rZ   rt   r  r  r  rÉ   rÞ   rß   s   @r5   rá   rá   Z  s»  ø† ñð ØØ'-Øð<àð<ð ð<ð %ð	<ð
 ð<ð 
÷<ð <ðEàðEð (ðEð &ð	Eð
 ðEð ðEð ðEð 
ôEð0 ØØØØØØ!&Øð3Càð3Cð "ð3Cð ð	3Cð
 ð3Cð ð3Cð ð3Cð ð3Cð ð3Cð ð3Cð ð3Cð 
÷3Cð 3Cðr ØØØØØ!&Øð&.àð&.ð "ð&.ð ð	&.ð
 ð&.ð ð&.ð ð&.ð ð&.ð ð&.ð ð&.ð 
÷&.ð &.ðZ Øð&àð&ð ð&ð ð	&ð
 ð&ð ð&ð 
õ&ð. Øðdàðdð ðdð ð	dð
 ðdð ðdð 
õdð2 %)ØØð&àð&ð ð&ð ð	&ð
 ð&ð "ð&ð ð&ð ð&ð 
÷&ó &r8   rá   )-Ú
__future__r   r‰   Ú	itertoolsr   Útypingr   r   r   Úmatplotlib.collectionsÚcollectionsrW   Úmatplotlib.pyplotÚpyplotr(   Únumpyrh   Ú	contourpyr   r	   Úcontourpy.convertr
   r   Úcontourpy.enum_utilr   r   Úcontourpy.util.mpl_utilr   r   Úcontourpy.util.rendererr   Úcollections.abcr   Úmatplotlib.axesr   Úmatplotlib.figurer   Únumpy.typingr   Úcontourpy._contourpyÚ
_contourpyr  r   rÌ   rá   rÊ   r8   r5   Ú<module>r.     sh   ðÝ "ã 	Ý ß +Ñ +å -Ý Û ç (ß ;ß :ß KÝ ,æÝ(å$Ý(Ý&å&ô[*�(ô [*ô|!�kô !ôB}&�{õ }&r8   