§
    ‡Ûg€\  ã                   óH  — d dl Z d dlZd dlZd dlmZmZmZm	Z
mZmZmZ ddlmZmZ  ej        dd¬¦  «        dd	„¦   «         Zdd
„Z ej        dd¬¦  «        d„ ¦   «         Zd„ Z G d„ de
j        ¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        ZdS )é    N)Ú_apiÚartistÚlinesÚaxisÚpatchesÚ
transformsÚcolorsé   )Úart3dÚproj3dú3.6z$a vendored copy of _move_from_center)Úalternative©TTTc                 ó(   — t          | |||¬¦  «        S )úg
    For each coordinate where *axmask* is True, move *coord* away from
    *centers* by *deltas*.
    )Úaxmask)Ú_move_from_center©ÚcoordÚcentersÚdeltasr   s       úQ/granary/edev/quantum/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.pyÚmove_from_centerr      s   € õ ˜U G¨V¸FÐCÑCÔCÐCó    c                 ól   — t          j        | ¦  «        } | |t          j        d| |z
  ¦  «        z  |z  z   S )r   r
   )ÚnpÚasarrayÚcopysignr   s       r   r   r      s8   € õ
 ŒJ�uÑÔ€EØ�6�BœK¨¨5°7©?Ñ;Ô;Ñ;¸fÑDÑDÐDr   z(a vendored copy of _tick_update_positionc                 ó*   — t          | |||¦  «         dS )ú.Update tick line and label position and style.N)Ú_tick_update_position©ÚtickÚtickxsÚtickysÚlabelposs       r   Útick_update_positionr'   "   s   € õ ˜$ ¨°Ñ9Ô9Ð9Ð9Ð9r   c                 ó®  — | j                              |¦  «         | j                             |¦  «         | j                             d¦  «         | j                             d¦  «         | j                             d¦  «         | j                             d¦  «         | j                             ||¦  «         | j	                             dgdg¦  «         dS )r    TFú-Ú r   N)
Úlabel1Úset_positionÚlabel2Ú	tick1lineÚset_visibleÚ	tick2lineÚset_linestyleÚ
set_markerÚset_dataÚgridliner"   s       r   r!   r!   (   sÂ   € ð 	„K×Ò˜XÑ&Ô&Ð&Ø„K×Ò˜XÑ&Ô&Ð&Ø„N×Ò˜tÑ$Ô$Ð$Ø„N×Ò˜uÑ%Ô%Ð%Ø„N× Ò  Ñ%Ô%Ð%Ø„N×Ò˜bÑ!Ô!Ð!Ø„N×Ò˜F FÑ+Ô+Ð+Ø„M×Ò˜A˜3  Ñ$Ô$Ð$Ð$Ð$r   c                   ó\  ‡ — e Zd ZdZdZddddœddddœddd	dœd
œZddœd„Zddœd„Zˆ fd„Z e	j
        e¦  «        e_          ej        dd¬¦  «         ed„ ¦  «        ¦  «        Zd„ Z ej        dd¬¦  «        d„ ¦   «         Zd,ˆ fd„	Zd,ˆ fd„	Z ej        d¦  «        d„ ¦   «         Zd„ Zd,d„Zd„ Zd„ Zd„ Zd„ Zd„ Zd „ Zej        d!„ ¦   «         Zd,d"d#œd$„Z   ej        dd%d¬&¦  «         ed'„ d(„ ¦  «        ¦  «        Z!  ej        dd)d¬&¦  «         ed*„ d+„ ¦  «        ¦  «        Z"ˆ xZ#S )-ÚAxiszAn Axis class for the 3D plots.))r   é   é   é   )r
   é   é   é   )r   r
   r<   r9   )r7   r:   r;   r8   )r   r
   r:   r7   )r9   r<   r;   r8   r   r
   )r
   r   r:   )ÚiÚtickdirÚjuggled)r   r
   r:   r:   )r   r:   r
   )ÚxÚyÚzN)Úrotate_labelc                ó   — t          ¦   «         S ©N©Úlocals)ÚselfÚadirÚv_intervalxÚd_intervalxÚaxesrC   ÚargsÚkwargss           r   Ú	_old_initzAxis._old_initE   s   € å‰xŒxˆr   c                ó   — t          ¦   «         S rE   rF   )rH   rL   rC   rN   s       r   Ú	_new_initzAxis._new_initI   s   € Ý‰xŒxˆr   c           	      ó  •— t          j        | j        | j        gg|¢R i |¤Ž}d|v r|t          j        ddt          j        t          | ¦  «        j        ¦  «        › �d¬¦  «         |d         | j	        k    r-t          dt          | ¦  «        j        › d|d         ›�¦  «        ‚|d         }|d	         }|                     d
d¦  «        }|d         }| j	        }| j        |                              ¦   «         | _        | j                             ddddœt"          j        d|› d�         dddœdœ¦  «         t"          j        d         rj| j                             dddœddddœdœ¦  «         | j        d                              d t"          j        d!         t"          j        d!         d"œi¦  «         nå| j                             t"          j        d#         t"          j        d$         dœt"          j        d%         t"          j        d&         t"          j        d'         dœdœ¦  «         | j        d                              d |d(v rt"          j        d)         nt"          j        d*         |d(v rt"          j        d+         nt"          j        d,         d"œi¦  «          t'          ¦   «         j        |g|¢R i |¤Ž d-|v r | j        |d-         Ž  d.|v r | j        |d.         Ž  |                      |¦  «         |                      ¦   «          d S )/NrI   r   zUThe signature of 3D Axis constructors has changed in %(since)s; the new signature is T)ÚmessageÚpendingzCannot instantiate z with adir=rL   rC   rM   © rN   ÚcenterÚanchor)ÚvaÚhaÚrotation_modezaxes3d.zaxis.panecolorgš™™™™™É?gš™™™™™¹?)Úinward_factorÚoutward_factor)ÚlabelÚcolorr#   z_internal.classic_modeg      è?)r   r   r   r
   )Ú	linewidthr^   )çÍÌÌÌÌÌì?r`   r`   r
   g      ð?r)   )r^   r_   Ú	linestyle)ÚaxislineÚgridr#   r_   zlines.linewidth)TFzaxes.linewidthzaxes.edgecolorz
grid.colorzgrid.linewidthzgrid.linestyleÚxzzxtick.major.widthzytick.major.widthzxtick.minor.widthzytick.minor.widthrK   rJ   )r   Úselect_matching_signaturerO   rQ   Úwarn_deprecatedÚinspectÚ	signatureÚtypeÚ__init__Ú	axis_nameÚ
ValueErrorÚ__name__ÚgetÚ_AXINFOÚcopyÚ_axinfoÚupdateÚmplÚrcParamsÚsuperÚset_data_intervalÚset_view_intervalÚset_rotate_labelÚ_init3d)rH   rM   rN   ÚparamsrL   rC   ÚnameÚ	__class__s          €r   rj   zAxis.__init__L   s°  ø€ ÝÔ/ØŒ^˜Tœ^Ð,ð?Ø/3ð?ð ?ð ?Ø7=ð?ð ?ˆà�VÐÐÝÔ Øð  <åÔ$¥T¨$¡Z¤ZÔ%8Ñ9Ô9ð <ð  <àEIðKñ Kô Kð Kð �fŒ~ ¤Ò/Ð/Ý ð "Aµt¸D±z´zÔ7Jð "Að "AØ.4°V¬nð"Að "Añ Bô Bð Bà�fŒ~ˆØ˜nÔ-ˆØ�zŠz˜& "Ñ%Ô%ˆØ˜Ô!ˆàŒ~ˆð ”| DÔ)×.Ò.Ñ0Ô0ˆŒàŒ×ÒØ$¨HØ'/ð1ð 1å”\Ð"@¨DÐ"@Ð"@Ð"@ÔAà!$Ø"%ðð ð	
ð 
ñ 	ô 	ð 	õ Œ<Ð0Ô1ð $	ØŒL×ÒØ*.¸ÐFÐFà/Ø!$Ø!$ðð ð!ð !ñ ô ð ð ŒL˜Ô ×'Ò'ØÝœ,Ð'8Ô9Ýœ<Ð(9Ô:ðð ð)ñ ô ð ð ð ŒL×Òå!$¤Ð.>Ô!?Ý œ\Ð*:Ô;ðð õ
 !œ\¨,Ô7Ý!$¤Ð.>Ô!?Ý!$¤Ð.>Ô!?ðð ð
!ð 
!ñ 
ô 
ð 
ð ŒL˜Ô ×'Ò'Øà=AÀT¸\¸\�œÐ%8Ô9Ð9Ý œ\Ð*=Ô>à=AÀT¸\¸\�œÐ%8Ô9Ð9Ý œ\Ð*=Ô>ðð ð	)ñ 	ô 	ð 	ð 	�‰ŒÔ˜Ð/ Ð/Ð/Ð/¨Ð/Ð/Ð/ð ˜FÐ"Ð"Ø"ˆDÔ" F¨=Ô$9Ð:Ð:Ø˜FÐ"Ð"Ø"ˆDÔ" F¨=Ô$9Ð:Ð:Ø×Ò˜lÑ+Ô+Ð+Ø�Š‰Œˆˆˆr   r   T)rT   c                 ó   — | j         S rE   )rk   ©rH   s    r   ú<lambda>zAxis.<lambda>ž   s   € ˜dœn€ r   c                 óÈ  — t          j        dd| j        d         d         | j        d         d         d¬¦  «        | _        t	          j        ddgddggd	¬
¦  «        | _        |                      | j        d         ¦  «         | j         	                    | j        ¦  «         | j         	                    | j        ¦  «         t          j        g ¦  «        | _        | j         	                    | j        ¦  «         | j         	                    | j        ¦  «         | j         	                    | j        ¦  «         | j        j        | j        _        | j        j        | j        _        d S )N)r   r   rb   r_   r^   T)ÚxdataÚydatar_   r^   Úantialiasedr   r
   F)Úclosed)ÚmlinesÚLine2Drq   ÚlineÚmpatchesÚPolygonÚpaneÚset_pane_colorrL   Ú_set_artist_propsr   ÚLine3DCollectionÚ	gridlinesr]   Ú
offsetTextÚ	transDataÚ
_transformr~   s    r   ry   zAxis._init3d    s/  € Ý”MØ Ø”l :Ô.¨{Ô;Ø”,˜zÔ*¨7Ô3Øð	ñ ô ˆŒ	õ Ô$ q¨! f¨q°!¨fÐ%5¸eÐDÑDÔDˆŒ	Ø×Ò˜DœL¨Ô1Ñ2Ô2Ð2àŒ	×#Ò# D¤IÑ.Ô.Ð.ØŒ	×#Ò# D¤IÑ.Ô.Ð.ÝÔ/°Ñ3Ô3ˆŒØŒ	×#Ò# D¤NÑ3Ô3Ð3ØŒ	×#Ò# D¤JÑ/Ô/Ð/ØŒ	×#Ò# D¤OÑ4Ô4Ð4à $¤	Ô 3ˆŒ
ÔØ%)¤YÔ%8ˆŒÔ"Ð"Ð"r   c                 ó.   — |                       ¦   «          d S rE   )ry   r~   s    r   Úinit3dzAxis.init3dµ   s   € à�Š‰Œˆˆˆr   c                 óØ   •— t          ¦   «                              |¦  «        }|D ]D}|j        |j        |j        |j        |j        fD ]!}|                     | j        j	        ¦  «         Œ"ŒE|S rE   )
ru   Úget_major_ticksr.   r0   r4   r+   r-   Úset_transformrL   r�   ©rH   ÚnumticksÚticksÚtÚobjr|   s        €r   r•   zAxis.get_major_ticks¹   óx   ø€ Ý‘”×'Ò'¨Ñ1Ô1ˆØð 	7ð 	7ˆAà”K ¤¨a¬j¸!¼(ÀAÄHðNð 7ð 7�à×!Ò! $¤)Ô"5Ñ6Ô6Ð6Ð6ð7ð ˆr   c                 óØ   •— t          ¦   «                              |¦  «        }|D ]D}|j        |j        |j        |j        |j        fD ]!}|                     | j        j	        ¦  «         Œ"ŒE|S rE   )
ru   Úget_minor_ticksr.   r0   r4   r+   r-   r–   rL   r�   r—   s        €r   rž   zAxis.get_minor_ticksÁ   rœ   r   c                 ó0   — |                       |¦  «         dS )zSet pane position.N)Ú_set_pane_pos©rH   Úxyss     r   Úset_pane_poszAxis.set_pane_posÉ   s   € ð 	×Ò˜3ÑÔÐÐÐr   c                 óp   — t          j        |¦  «        }|d d …d d…f         }|| j        _        d| _        d S )Nr:   T)r   r   rŠ   ÚxyÚstaler¡   s     r   r    zAxis._set_pane_posÎ   s8   € ÝŒj˜‰oŒoˆØ�!�!�!�R�a�R�%ŒjˆØˆŒ	ŒØˆŒ
ˆ
ˆ
r   c                 óú   — t          j        ||¦  «        }|| j        d<   | j                             |¦  «         | j                             |¦  «         | j                             |d         ¦  «         d| _        dS )zã
        Set pane color.

        Parameters
        ----------
        color : color
            Color for axis pane.
        alpha : float, optional
            Alpha value for axis pane. If None, base it on *color*.
        r^   éÿÿÿÿTN)ÚmcolorsÚto_rgbarq   rŠ   Úset_edgecolorÚset_facecolorÚ	set_alphar¦   )rH   r^   Úalphas      r   r‹   zAxis.set_pane_colorÔ   sr   € õ ”  uÑ-Ô-ˆØ %ˆŒ�WÑØŒ	×Ò Ñ&Ô&Ð&ØŒ	×Ò Ñ&Ô&Ð&ØŒ	×Ò˜E "œIÑ&Ô&Ð&ØˆŒ
ˆ
ˆ
r   c                 ó"   — || _         d| _        dS )z‘
        Whether to rotate the axis label: True, False or None.
        If set to None the label will be rotated if longer than 4 chars.
        TN)Ú_rotate_labelr¦   )rH   Úvals     r   rx   zAxis.set_rotate_labelæ   s   € ð
 !ˆÔØˆŒ
ˆ
ˆ
r   c                 óD   — | j         �| j         S t          |¦  «        dk    S )Nr9   )r°   Úlen)rH   Útexts     r   Úget_rotate_labelzAxis.get_rotate_labelî   s$   € ØÔÐ)ØÔ%Ð%å�t‘9”9˜q’=Ð r   c                 ó¬  — t          j        | j                             ¦   «         | j                             ¦   «         | j                             ¦   «         g¦  «        j        \  }}d||z   z  }||z
  dz  }|d|z  z  }|d|z  z  }|d         |d         |d         |d         |d         |d         f}| j                             || j        j        ¦  «        }t          j	        d¦  «        }t          j	        d¦  «        }	t          d¦  «        D ]_}
t          j        || j        d|
z           df         ¦  «        ||
<   t          j        || j        d|
z  dz            df         ¦  «        |	|
<   Œ`||	k     }t          j        ||	z
  ¦  «        t          j        t          ¦  «        j        k    }t          j        |¦  «        dk    rŒt          j        | ¦  «        d         d         }|dk    rt          j        dd|d         g¦  «        }nG|dk    rt          j        d|d         d	g¦  «        }n#|dk    rt          j        |d         d	d	g¦  «        }||||||fS )
Nç      à?é   g      Ð?r   r
   r:   r7   TF)r   ÚarrayrL   Ú
get_xboundÚ
get_yboundÚ
get_zboundÚTÚ_tunit_cubeÚMÚzerosÚrangeÚmeanÚ_PLANESÚabsÚfinfoÚfloatÚepsÚsumÚwhere)rH   ÚrendererÚminsÚmaxsr   r   ÚboundsÚbounds_projÚmeans_z0Úmeans_z1r=   ÚhighsÚequalsÚverticals                 r   Ú_get_coord_infozAxis._get_coord_infoô   sA  € Ý”XØŒI× Ò Ñ"Ô"ØŒI× Ò Ñ"Ô"ØŒI× Ò Ñ"Ô"ð
ñ ô ô ñ	 	ˆˆdð ˜ ™Ñ%ˆð ˜‘+ Ñ#ˆØ��v‘ÑˆØ��v‘Ñˆð �a”˜$˜qœ' 4¨¤7¨D°¬G°T¸!´W¸dÀ1¼gÐEˆØ”i×+Ò+¨F°D´I´KÑ@Ô@ˆõ ”8˜A‘;”;ˆÝ”8˜A‘;”;ˆÝ�q‘”ð 	Kð 	KˆAÝœ' +¨d¬l¸1¸q¹5Ô.AÀ1Ð.DÔ"EÑFÔFˆH�Q‰KÝœ' +¨d¬l¸1¸q¹5À1¹9Ô.EÀqÐ.HÔ"IÑJÔJˆH�Q‰KˆKØ˜8Ò#ˆõ ”˜ 8Ñ+Ñ,Ô,µ´½±´Ô0CÒCˆÝŒ6�&‰>Œ>˜QÒÐÝ”x  Ñ(Ô(¨Ô+¨AÔ.ˆHØ˜1Š}ˆ}Ýœ $¨¨e°A¬hÐ!7Ñ8Ô8��Ø˜Q’�Ýœ $¨¨a¬°%Ð!8Ñ9Ô9��Ø˜Q’�Ýœ %¨¤(¨E°5Ð!9Ñ:Ô:�à�T˜7 F¨K¸Ð>Ð>r   c                 ót  — ||g}|ddd…         }|||g|||g|||gg}|| j         j                 | j        d                  }| j        d         }|d                              ¦   «         }|d         |d                  ||d         <   |                     ¦   «         }|d         |d                  ||d         <   ||fS )z3Get the edge points for the black bolded axis line.Nr¨   r=   r?   r   r
   )rL   Ú_vertical_axisrq   rp   )	rH   ÚminmaxÚmaxminÚmbÚmb_revÚmmr?   Úedge_point_0Úedge_point_1s	            r   Ú_get_axis_line_edge_pointszAxis._get_axis_line_edge_points  sÇ   € ð
 �fÐˆØ�D�D�b�D”ˆØ�6˜6Ð" V¨V°RÐ$8¸2¸rÀ2¸,ÐGˆØ�”	Ô(Ô)¨$¬,°sÔ*;Ô<ˆà”,˜yÔ)ˆØ˜!”u—z’z‘|”|ˆØ#% a¤5¨°¬Ô#4ˆ�W˜Q”ZÑ à#×(Ò(Ñ*Ô*ˆØ#% a¤5¨°¬Ô#4ˆ�W˜Q”ZÑ à˜\Ð)Ð)r   c                 ó4  — d„ | j                              ¦   «         D ¦   «         }d„ | j                              ¦   «         D ¦   «         }| j        d         }| j        j        dz
  }t          j        || ¦  «        t          j        ||¦  «                 |         }|S )zÅ
        Get the direction of the tick.

        Returns
        -------
        tickdir : int
            Index which indicates which coordinate the tick line will
            align with.
        c                 ó   — g | ]
}|d          ‘ŒS )r>   rU   ©Ú.0Úvs     r   ú
<listcomp>z%Axis._get_tickdir.<locals>.<listcomp>;  s   € ÐEÐEÐE¨!˜˜9œÐEÐEÐEr   c                 ó   — g | ]
}|d          ‘ŒS )r=   rU   rá   s     r   rä   z%Axis._get_tickdir.<locals>.<listcomp><  s   € Ð8Ð8Ð8˜Q�!�C”&Ð8Ð8Ð8r   r=   r:   )ro   Úvaluesrq   rL   rÖ   r   Úroll)rH   Útickdirs_baseÚinfo_ir=   Újr>   s         r   Ú_get_tickdirzAxis._get_tickdir0  s�   € ð FÐE¨t¬|×/BÒ/BÑ/DÔ/DÐEÑEÔEˆØ8Ð8 $¤,×"5Ò"5Ñ"7Ô"7Ð8Ñ8Ô8ˆàŒL˜ÔˆØŒIÔ$ qÑ(ˆå”'˜& 1 "Ñ%Ô%¥b¤g¨m¸QÑ&?Ô&?Ô@ÀÔCˆØˆr   c                 ó¬  ‡— |                      d|                      ¦   «         ¬¦  «         |                      |¦  «        \  }}}}Š}| j        }|d         }||         s| j        d|z           }	n| j        d|z  dz            }	ˆfd„|	D ¦   «         }
|                      |
¦  «         | j                             |¦  «         |                     d¦  «         dS )zˆ
        Draw pane.

        Parameters
        ----------
        renderer : `~matplotlib.backend_bases.RendererBase` subclass
        Úpane3d©Úgidr=   r:   r
   c                 ó    •— g | ]
}‰|         ‘ŒS rU   rU   )râ   ÚpÚtcs     €r   rä   z"Axis.draw_pane.<locals>.<listcomp>V  s   ø€ Ð$Ð$Ð$˜ˆr�!ŒuÐ$Ð$Ð$r   N)	Ú
open_groupÚget_gidrÔ   rq   rÃ   r    rŠ   ÚdrawÚclose_group)rH   rÊ   rË   rÌ   r   r   rÑ   ÚinfoÚindexÚplaner¢   rò   s              @r   Ú	draw_panezAxis.draw_paneD  sã   ø€ ð 	×Ò˜H¨$¯,ª,©.¬.ÐÑ9Ô9Ð9à15×1EÒ1EÀhÑ1OÔ1OÑ.ˆˆd�G˜V R¨àŒ|ˆØ�S”	ˆØ�UŒ|ð 	0Ø”L  U¡Ô+ˆEˆEà”L  U¡¨Q¡Ô/ˆEØ$Ð$Ð$Ð$˜eÐ$Ñ$Ô$ˆØ×Ò˜3ÑÔÐØŒ	�Š�xÑ Ô Ð à×Ò˜XÑ&Ô&Ð&Ð&Ð&r   c                 ó*  — | j         j        | j        _        |                     d|                      ¦   «         ¬¦  «         |                      ¦   «         }| j        }|d         }|d         }|                      |¦  «        \  }}}}	}
}t          j
        |||¦  «        }t          j
        | ||¦  «        }|                      ||¦  «        \  }}t          j        ||g| j         j        ¦  «        }t          j        |¦  «        }| j                             |d         |d         ¦  «         | j                             |¦  «         | j         j                             |dd…df         g¦  «        | j         j                             |dd…df         g¦  «        z
  d         \  }}d||z   z  }| j        j                             ¦   «         }|                     | j         j        j        ¦  «        }t5          d	|z  ¦  «        }d
|z  }d}| j        |z   |z  |	z  }g d¢}d||<   t9          ||||¦  «        }t          j        g |¢| j         j        ‘R Ž \  }}}| j                             ||f¦  «         |                      | j                              ¦   «         ¦  «        rStC          j"        t          j#        t          j$        ||¦  «        ¦  «        ¦  «        }| j         %                    |¦  «         | j         &                    |d         d         ¦  «         | j         '                    |d         d         ¦  «         | j         (                    |d         d         ¦  «         | j                             |¦  «         |d         dk    r|}d} n|}d} t9          ||||¦  «        }!t          j        g |!¢| j         j        ‘R Ž \  }"}#}$| j)         *                    | j+        j,         -                    ¦   «         ¦  «         | j)                             |"|#f¦  «         tC          j"        t          j#        t          j$        ||¦  «        ¦  «        ¦  «        }| j)         %                    |¦  «         | j)         (                    d¦  «         t          j        g |¢| j         j        ‘R Ž }%|%|d                  ||d         | f         k    rV|%|         ||| f         k    r?t          j.        |¦  «        dz  dk    r$| /                    ¦   «         g d¢k    r|dv rd}&nBd}&n?d}&n<|%|         ||| f         k    r&t          j.        |¦  «        dz  dk    r|dk    rdnd}&nd}&| j)         &                    d¦  «         | j)         '                    |&¦  «         | j)                             |¦  «         | j         j0        �rAtc          |¦  «        �r1t          j2        |tc          |¦  «        df¦  «        }'d„ |D ¦   «         |'d d …|f<   t          j3        |'|'|'gd¬¦  «        }(||dz
           |(d d …d|dz
  f<   ||dz
           |(d d …d|dz
  f<   | j4         5                    |(¦  «         |d         })| j4         6                    |)d         ¦  «         | j4         7                    |)d         ¦  «         | j4         8                    |)d         ¦  «         | j4         9                    ¦   «          | j4                             |¦  «         |  :                    ¦   «         }*||*         r|	|*         n|	|*          }+|d         },|,d          |+z  }-|,d!         |+z  }.|,d         }/||*         }0|0|-z   }1|0|.z
  }2d"}3||	z  }4|D �]}5| ;                    ¦   «         }!|5 <                    ¦   «         |!|<   |1|!|*<   t          j        g |!¢| j         j        ‘R Ž \  }6}7}8|2|!|*<   t          j        g |!¢| j         j        ‘R Ž \  }9}:};|5 =                    ¦   «         |3z   |4z  }|0|!|*<   t9          |!|||¦  «        }!t          j        g |!¢| j         j        ‘R Ž \  }<}=}>t}          |5|6|9f|7|:f|<|=f¦  «         |5j?         7                    |/|5j@                 ¦  «         |5                     |¦  «         �Œ | A                    d¦  «         d| _B        d S )#NÚaxis3drî   r=   r?   r   r
   r:   r·   g      R@é0   g      5@r   Fr]   rX   rY   rZ   rW   r>   )FTT)r
   r:   ÚleftÚrightrV   c                 ó6   — g | ]}|                      ¦   «         ‘ŒS rU   )Úget_loc)râ   r#   s     r   rä   zAxis.draw.<locals>.<listcomp>Ü  s    € Ð?Ð?Ð?°˜dŸlšl™nœnÐ?Ð?Ð?r   )r   rc   r^   r_   ra   r#   r\   r[   g       @)CrL   r�   r]   r‘   ró   rô   Ú_update_ticksrq   rÔ   r   rÉ   rÞ   r   Úproj_trans_pointsr¿   r   r‡   r3   rõ   Ú	transAxesÚ	transformÚfigureÚdpi_scale_transÚinvertedÚbboxÚsizerÈ   Úlabelpadr   Úproj_transformr,   rµ   Úget_textr   Ú_norm_text_angleÚrad2degÚarctan2Úset_rotationÚset_vaÚset_haÚset_rotation_moder�   Úset_textÚmajorÚ	formatterÚ
get_offsetÚcount_nonzeroÚtolistÚ
_draw_gridr³   ÚtileÚstackrŽ   Úset_segmentsÚ	set_colorÚset_linewidthr1   Údo_3d_projectionrë   rp   r  Úget_padr!   r.   Ú_majorrö   r¦   )?rH   rÊ   r™   r÷   rø   r?   rË   rÌ   r   r   rò   rÑ   r×   rØ   Úedgep1Úedgep2ÚpepÚdxÚdyÚlxyzÚreltoinchesÚ	ax_inchesÚax_points_estimateÚdeltas_per_pointÚdefault_offsetÚlabeldeltasr   ÚtlxÚtlyÚtlzÚangleÚ
outeredgepÚ
outerindexÚposÚolxÚolyÚolzÚcentptÚalignÚxyz0r   Úgridinfor>   Ú	tickdeltaÚ	tick_infoÚtick_outÚtick_inÚtick_lwÚedgep1_tickdirÚout_tickdirÚ
in_tickdirÚdefault_label_offsetÚpointsr#   Úx1Úy1Úz1Úx2Úy2Úz2ÚlxÚlyÚlzs?                                                                  r   rõ   z	Axis.draw\  sš  € à $¤	Ô 3ˆŒ
ÔØ×Ò˜H¨$¯,ª,©.¬.ÐÑ9Ô9Ð9à×"Ò"Ñ$Ô$ˆð Œ|ˆØ�S”	ˆØ�y”/ˆà15×1EÒ1EÀhÑ1OÔ1OÑ.ˆˆd�G˜V R¨å”˜%  tÑ,Ô,ˆÝ”˜5˜& $¨Ñ-Ô-ˆð ×8Ò8¸ÀÑHÔH‰ˆ�õ Ô&¨°Ð'7¸¼¼ÑEÔEˆÝŒj˜‰oŒoˆØŒ	×Ò˜3˜qœ6 3 q¤6Ñ*Ô*Ð*ØŒ	�Š�xÑ Ô Ð ð ”)Ô%×/Ò/°°Q°q°S¸!°V´°Ñ>Ô>Ø”)Ô%×/Ò/°°Q°q°S¸!°V´°Ñ>Ô>ñ?Ø@AôC‰ˆˆBð �f˜v‘oÑ&ˆð ”kÔ1×:Ò:Ñ<Ô<ˆØ×)Ò)¨$¬)¬.Ô*=Ñ>Ô>ˆ	Ý   y¡Ñ1Ô1ÐØÐ 2Ñ2ÐØˆàŒ]˜^Ñ+Ð/?Ñ?À&ÑHð 	à#Ð#Ð#ˆØˆˆu‰Ý   w°¸VÑDÔDˆÝÔ-ÐA¨tÐA°T´Y´[ÐAÐAÐA‰ˆˆS�#ØŒ
×Ò  c 
Ñ+Ô+Ð+Ø× Ò  ¤×!4Ò!4Ñ!6Ô!6Ñ7Ô7ð 	+ÝÔ*­2¬:µb´jÀÀRÑ6HÔ6HÑ+IÔ+IÑJÔJˆEØŒJ×#Ò# EÑ*Ô*Ð*ØŒ
×Ò˜$˜wœ-¨Ô-Ñ.Ô.Ð.ØŒ
×Ò˜$˜wœ-¨Ô-Ñ.Ô.Ð.ØŒ
×$Ò$ T¨'¤]°?Ô%CÑDÔDÐDØŒ
�Š˜Ñ!Ô!Ð!ð �1Œ:˜Š?ˆ?ØˆJØˆJˆJàˆJØˆJå 
¨G°[À&ÑIÔIˆÝÔ-Ð@¨sÐ@°D´I´KÐ@Ð@Ð@‰ˆˆS�#ØŒ× Ò  ¤Ô!5×!@Ò!@Ñ!BÔ!BÑCÔCÐCØŒ×$Ò$ c¨3 ZÑ0Ô0Ð0ÝÔ&¥r¤zµ"´*¸RÀÑ2DÔ2DÑ'EÔ'EÑFÔFˆØŒ×$Ò$ UÑ+Ô+Ð+ð 	Œ×)Ò)¨(Ñ3Ô3Ð3õ" Ô&Ð=¨Ð=°´´Ð=Ð=Ð=ˆØ�$�y”/Ô" S¨¨i¬¸*Ð)DÔ%EÒEÐEà�u”  U¨JÐ%6Ô!7Ò7Ð7ÝÔ(¨Ñ/Ô/°!Ñ3°qÒ8Ð8ð —<’<‘>”>Ð%8Ð%8Ð%8Ò8Ð8¸UÀf¸_¸_Ø"�E�Eà#�E�Eð ��ð �u”  E¨:Ð$5Ô 6Ò6Ð6ÝÔ(¨Ñ/Ô/°!Ñ3°qÒ8Ð8à#(¨A¢: :˜˜°6��ð  �àŒ×Ò˜xÑ(Ô(Ð(ØŒ×Ò˜uÑ%Ô%Ð%ØŒ×Ò˜XÑ&Ô&Ð&àŒ9Ôñ 	*¥C¨¡J¤Jñ 	*å”7˜6¥C¨¡J¤J° ?Ñ3Ô3ˆDØ?Ð?¸Ð?Ñ?Ô?ˆD����E�‰Nõ ”H˜d D¨$Ð/°aÐ8Ñ8Ô8ˆEØ%+¨E°A©IÔ%6ˆE�!�!�!�Q˜ ™	�/Ñ"Ø%+¨E°A©IÔ%6ˆE�!�!�!�Q˜ ™	�/Ñ"ØŒN×'Ò'¨Ñ.Ô.Ð.Ø˜F”|ˆHØŒN×$Ò$ X¨gÔ%6Ñ7Ô7Ð7ØŒN×(Ò(¨°+Ô)>Ñ?Ô?Ð?ØŒN×(Ò(¨°+Ô)>Ñ?Ô?Ð?ØŒN×+Ò+Ñ-Ô-Ð-ØŒN×Ò Ñ)Ô)Ð)ð ×#Ò#Ñ%Ô%ˆØ',¨W¤~ÐK�F˜7”O�O¸FÀ7¼OÐ;Kˆ	à˜”Lˆ	ØÐ-Ô.°Ñ:ˆØ˜OÔ,¨yÑ8ˆØ˜KÔ(ˆØ œˆØ$ xÑ/ˆØ# gÑ-ˆ
à!ÐØ! FÑ*ˆØð 	 ñ 	 ˆDà—+’+‘-”-ˆCØŸš™œˆC�‰JØ&ˆC�‰LÝÔ.ÐA°ÐA°T´Y´[ÐAÐAÐA‰JˆB��BØ%ˆC�‰LÝÔ.ÐA°ÐA°T´Y´[ÐAÐAÐA‰JˆB��Bð  Ÿ<š<™>œ>Ð,@Ñ@ÀFÑJˆKà)ˆC�‰LÝ# C¨°+¸vÑFÔFˆCÝÔ.ÐA°ÐA°T´Y´[ÐAÐAÐA‰JˆB��Bå! $¨¨R¨°2°r°(¸RÀ¸HÑEÔEÐEØŒN×(Ò(¨°´Ô)=Ñ>Ô>Ð>Ø�IŠI�hÑÔÐÑà×Ò˜XÑ&Ô&Ð&ØˆŒ
ˆ
ˆ
r   F)Úfor_layout_onlyc                óf  — |                       ¦   «         sd S |                      ¦   «         }|                      ¦   «         }g |                      t	          |¦  «        ¦  «        ¢|                      t	          |¦  «        ¦  «        ¢}|                      ¦   «         \  }}||k    r||}}|                      ¦   «                              ||g¦  «        }g }	|D ]v}
	 |                      ¦   «                              |
 	                    ¦   «         ¦  «        }t          j        ||¦  «        r|	                     |
¦  «         Œg# t          $ r Y Œsw xY w|	}|                      ||¦  «        \  }}g }| j                              ¦   «         r-|                     | j                             |¦  «        ¦  «         | j                              ¦   «         rH|sF| j                             ¦   «         r-|                     | j                             |¦  «        ¦  «         t          j                             g |¢|¢|¢¦  «        S rE   )Úget_visibleÚget_majorticklocsÚget_minorticklocsrž   r³   r•   Úget_view_intervalÚget_transformr  r  ÚmtransformsÚ_interval_contains_closeÚappendÚAssertionErrorÚ_get_ticklabel_bboxesr‡   Úget_window_extentr]   r  ÚBboxÚunion)rH   rÊ   rQ  Ú
major_locsÚ
minor_locsr™   Úview_lowÚ	view_highÚ
interval_tÚticks_to_drawr#   Úloc_tÚbb_1Úbb_2Úothers                  r   Úget_tightbboxzAxis.get_tightbbox  s8  € à×ÒÑ!Ô!ð 	ØˆFð ×+Ò+Ñ-Ô-ˆ
Ø×+Ò+Ñ-Ô-ˆ
ð9�$×&Ò&¥s¨:¡¤Ñ7Ô7ð 9Ø×&Ò&¥s¨:¡¤Ñ7Ô7ð9ˆà"×4Ò4Ñ6Ô6Ñˆ�)Ø�iÒÐØ"+¨X�iˆHØ×'Ò'Ñ)Ô)×3Ò3°X¸yÐ4IÑJÔJˆ
àˆØð 		/ð 		/ˆDð/Ø×*Ò*Ñ,Ô,×6Ò6°t·|²|±~´~ÑFÔF�õ Ô7¸
ÀEÑJÔJð /Ø!×(Ò(¨Ñ.Ô.Ð.øøõ "ð ð ð ð �ðøøøð ˆà×/Ò/°°xÑ@Ô@‰
ˆˆdØˆàŒ9× Ò Ñ"Ô"ð 	@Ø�LŠL˜œ×4Ò4°XÑ>Ô>Ñ?Ô?Ð?ØŒJ×"Ò"Ñ$Ô$ð 	A¨_ð 	AØ”
×#Ò#Ñ%Ô%ð	Aà�LŠL˜œ×5Ò5°hÑ?Ô?Ñ@Ô@Ð@åÔ×%Ò%Ð&<¨Ð&<¨tÐ&<°eÐ&<Ñ=Ô=Ð=s   Ã9D:Ä:
EÅEÚget_data_interval)r   rT   c                 ó*   — |                       ¦   «         S rE   )rk  r~   s    r   r   zAxis.<lambda>D  ó   €  $×"8Ò"8Ñ":Ô":€ r   c                 ó   —  | j         |Ž S rE   )rv   ©rH   r×   s     r   r   zAxis.<lambda>E  ó   € Ð*@¨$Ô*@À&Ð*I€ r   rV  c                 ó*   — |                       ¦   «         S rE   )rV  r~   s    r   r   zAxis.<lambda>H  rm  r   c                 ó   —  | j         |Ž S rE   )rw   ro  s     r   r   zAxis.<lambda>I  rp  r   rE   )$rm   Ú
__module__Ú__qualname__Ú__doc__rÃ   ro   rO   rQ   rj   rg   rh   Ú__signature__r   Ú
deprecatedÚpropertyrI   ry   r“   r•   rž   r£   r    r‹   rx   rµ   rÔ   rÞ   rë   rú   r   Úallow_rasterizationrõ   rj  Ú
d_intervalÚ
v_intervalÚ__classcell__)r|   s   @r   r6   r6   5   sö  ø€ € € € € Ø)Ð)ð€Gð  ¨yÐ9Ð9Ø ¨yÐ9Ð9Ø ¨yÐ9Ð9ðð €Gð  $ðð ð ð ð ð /3ð ð ð ð ð ðNð Nð Nð Nð Nð` /˜WÔ.¨yÑ9Ô9€HÔØ/ˆ?ˆ4Œ?˜5¨$Ð/Ñ/Ô/ØˆÐ,Ð,Ñ-Ô-ñ/ô /€Dð9ð 9ð 9ð* €T„_�U DÐ)Ñ)Ô)ðð ñ *Ô)ððð ð ð ð ð ðð ð ð ð ð ð €T„_�UÑÔð ð  ñ Ôð ðð ð ðð ð ð ð$ð ð ð!ð !ð !ð'?ð '?ð '?ðR*ð *ð *ð&ð ð ð('ð 'ð 'ð0 Ôðsð sñ  Ôðsðn,>¸eð ,>ð ,>ð ,>ð ,>ð ,>ð\>��”ØÐ.¸ð>ñ >ô >àˆHÐ:Ð:ØIÐIñKô KñLô L€Jð>��”ØÐ.¸ð>ñ >ô >àˆHÐ:Ð:ØIÐIñKô KñLô L€J€J€J€J€Jr   r6   c                   óf   — e Zd ZdZ ej        ddd¦  «        \  ZZ ej        ddd¦  «        \  ZZ	dS )ÚXAxisr@   ÚviewÚ
xy_viewLimÚ	intervalxÚdataÚ
xy_dataLimN©
rm   rs  rt  rk   ÚmaxisÚ_make_getset_intervalrV  rw   rk  rv   rU   r   r   r~  r~  L  óY   € € € € € Ø€IØ+F¨5Ô+FØ�˜kñ,+ô ,+Ñ(ÐÐ(à+F¨5Ô+FØ�˜kñ,+ô ,+Ñ(ÐÐ(Ð(Ð(r   r~  c                   óf   — e Zd ZdZ ej        ddd¦  «        \  ZZ ej        ddd¦  «        \  ZZ	dS )ÚYAxisrA   r  r€  Ú	intervalyr‚  rƒ  Nr„  rU   r   r   r‰  r‰  T  r‡  r   r‰  c                   óf   — e Zd ZdZ ej        ddd¦  «        \  ZZ ej        ddd¦  «        \  ZZ	dS )ÚZAxisrB   r  Ú
zz_viewLimr�  r‚  Ú
zz_dataLimNr„  rU   r   r   rŒ  rŒ  \  r‡  r   rŒ  )r   )rg   Únumpyr   Ú
matplotlibrs   r   r   r   r…   r   r…  r   rˆ   r   rX  r	   r©   r*   r   r   rw  r   r   r'   r!   r~  r6   r‰  rŒ  rU   r   r   ú<module>r‘     sï  ðð
 €€€à Ð Ð Ð à Ð Ð Ð ð2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð Ð Ð Ð Ð Ð Ð Ð ð €„�Ð$JÐKÑKÔKðDð Dð Dñ LÔKðDðEð Eð Eð Eð €„�Ð$NÐOÑOÔOð:ð :ñ PÔOð:ð

%ð 
%ð 
%ðTLð TLð TLð TLð TLˆ5Œ;ñ TLô TLð TLðn+ð +ð +ð +ð +ˆDñ +ô +ð +ð+ð +ð +ð +ð +ˆDñ +ô +ð +ð+ð +ð +ð +ð +ˆDñ +ô +ð +ð +ð +r   