Ë
    ¨eh¬ƒ  ã                   óÖ   — d Z ddlZddlmZ ddlZddlZddlm	Z	m
Z
 ddlmZ ddlmZmZ ddlmZmZ  ed	«      \  ZZZZZZZZZZZZ e ej@                  d
«      «      Z! G d„ d«      Z"y)aÄ  
Functions to handle markers; used by the marker functionality of
`~matplotlib.axes.Axes.plot`, `~matplotlib.axes.Axes.scatter`, and
`~matplotlib.axes.Axes.errorbar`.

All possible markers are defined here:

============================== ====== =========================================
marker                         symbol description
============================== ====== =========================================
``"."``                        |m00|  point
``","``                        |m01|  pixel
``"o"``                        |m02|  circle
``"v"``                        |m03|  triangle_down
``"^"``                        |m04|  triangle_up
``"<"``                        |m05|  triangle_left
``">"``                        |m06|  triangle_right
``"1"``                        |m07|  tri_down
``"2"``                        |m08|  tri_up
``"3"``                        |m09|  tri_left
``"4"``                        |m10|  tri_right
``"8"``                        |m11|  octagon
``"s"``                        |m12|  square
``"p"``                        |m13|  pentagon
``"P"``                        |m23|  plus (filled)
``"*"``                        |m14|  star
``"h"``                        |m15|  hexagon1
``"H"``                        |m16|  hexagon2
``"+"``                        |m17|  plus
``"x"``                        |m18|  x
``"X"``                        |m24|  x (filled)
``"D"``                        |m19|  diamond
``"d"``                        |m20|  thin_diamond
``"|"``                        |m21|  vline
``"_"``                        |m22|  hline
``0`` (``TICKLEFT``)           |m25|  tickleft
``1`` (``TICKRIGHT``)          |m26|  tickright
``2`` (``TICKUP``)             |m27|  tickup
``3`` (``TICKDOWN``)           |m28|  tickdown
``4`` (``CARETLEFT``)          |m29|  caretleft
``5`` (``CARETRIGHT``)         |m30|  caretright
``6`` (``CARETUP``)            |m31|  caretup
``7`` (``CARETDOWN``)          |m32|  caretdown
``8`` (``CARETLEFTBASE``)      |m33|  caretleft (centered at base)
``9`` (``CARETRIGHTBASE``)     |m34|  caretright (centered at base)
``10`` (``CARETUPBASE``)       |m35|  caretup (centered at base)
``11`` (``CARETDOWNBASE``)     |m36|  caretdown (centered at base)
``"none"`` or ``"None"``              nothing
``" "`` or  ``""``                    nothing
``"$...$"``                    |m37|  Render the string using mathtext.
                                      E.g ``"$f$"`` for marker showing the
                                      letter ``f``.
``verts``                             A list of (x, y) pairs used for Path
                                      vertices. The center of the marker is
                                      located at (0, 0) and the size is
                                      normalized, such that the created path
                                      is encapsulated inside the unit cell.
``path``                              A `~matplotlib.path.Path` instance.
``(numsides, 0, angle)``              A regular polygon with ``numsides``
                                      sides, rotated by ``angle``.
``(numsides, 1, angle)``              A star-like symbol with ``numsides``
                                      sides, rotated by ``angle``.
``(numsides, 2, angle)``              An asterisk with ``numsides`` sides,
                                      rotated by ``angle``.
============================== ====== =========================================

Note that special symbols can be defined via the
:ref:`STIX math font <mathtext>`,
e.g. ``"$\u266B$"``. For an overview over the STIX font symbols refer to the
`STIX font table <http://www.stixfonts.org/allGlyphs.html>`_.
Also see the :doc:`/gallery/text_labels_and_annotations/stix_fonts_demo`.

Integer numbers from ``0`` to ``11`` create lines and triangles. Those are
equally accessible via capitalized variables, like ``CARETDOWNBASE``.
Hence the following are equivalent::

    plt.plot([1, 2, 3], marker=11)
    plt.plot([1, 2, 3], marker=matplotlib.markers.CARETDOWNBASE)

Markers join and cap styles can be customized by creating a new instance of
MarkerStyle.
A MarkerStyle can also have a custom `~matplotlib.transforms.Transform`
allowing it to be arbitrarily rotated or offset.

Examples showing the use of markers:

* :doc:`/gallery/lines_bars_and_markers/marker_reference`
* :doc:`/gallery/lines_bars_and_markers/scatter_star_poly`
* :doc:`/gallery/lines_bars_and_markers/multivariate_marker_plot`

.. |m00| image:: /_static/markers/m00.png
.. |m01| image:: /_static/markers/m01.png
.. |m02| image:: /_static/markers/m02.png
.. |m03| image:: /_static/markers/m03.png
.. |m04| image:: /_static/markers/m04.png
.. |m05| image:: /_static/markers/m05.png
.. |m06| image:: /_static/markers/m06.png
.. |m07| image:: /_static/markers/m07.png
.. |m08| image:: /_static/markers/m08.png
.. |m09| image:: /_static/markers/m09.png
.. |m10| image:: /_static/markers/m10.png
.. |m11| image:: /_static/markers/m11.png
.. |m12| image:: /_static/markers/m12.png
.. |m13| image:: /_static/markers/m13.png
.. |m14| image:: /_static/markers/m14.png
.. |m15| image:: /_static/markers/m15.png
.. |m16| image:: /_static/markers/m16.png
.. |m17| image:: /_static/markers/m17.png
.. |m18| image:: /_static/markers/m18.png
.. |m19| image:: /_static/markers/m19.png
.. |m20| image:: /_static/markers/m20.png
.. |m21| image:: /_static/markers/m21.png
.. |m22| image:: /_static/markers/m22.png
.. |m23| image:: /_static/markers/m23.png
.. |m24| image:: /_static/markers/m24.png
.. |m25| image:: /_static/markers/m25.png
.. |m26| image:: /_static/markers/m26.png
.. |m27| image:: /_static/markers/m27.png
.. |m28| image:: /_static/markers/m28.png
.. |m29| image:: /_static/markers/m29.png
.. |m30| image:: /_static/markers/m30.png
.. |m31| image:: /_static/markers/m31.png
.. |m32| image:: /_static/markers/m32.png
.. |m33| image:: /_static/markers/m33.png
.. |m34| image:: /_static/markers/m34.png
.. |m35| image:: /_static/markers/m35.png
.. |m36| image:: /_static/markers/m36.png
.. |m37| image:: /_static/markers/m37.png
é    N)ÚSizedé   )Ú_apiÚcbook)ÚPath)ÚIdentityTransformÚAffine2D)Ú	JoinStyleÚCapStyleé   )r   é   c                   óB  — e Zd ZdZi dd“dd“dd“dd	“d
d“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“d d!“d"d#“i d$d%“d&d&“d'd(“d)d*“d+d,“d-d.“d/d0“d1d2“ed3“ed4“ed5“ed6“ed7“e	d8“e
d9“ed:“ed;“¥ed<ed=ed>d?d@dAd@dBd@dCd@i¥ZdDZdEZdFZ	 dždH„ZdI„ ZdJ„ ZdK„ ZdL„ ZdM„ ZdN„ ZdO„ ZdP„ ZdQ„ ZdR„ ZdS„ ZdT„ Z dU„ Z!dV„ Z"dW„ Z#dX„ Z$dGdGdYœdZ„Z%dŸd[„Z&d\„ Z'd]„ Z(d^„ Z)d_„ Z*d`„ Z+da„ Z,db„ Z-d dd„Z.de„ Z/df„ Z0 e1jd                  dgdhgdidigdhdigg«      Z3 e1jd                  dgdhgdjdkgdldkgg«      Z4 e1jd                  djdkgdldkgdhdigdidigg«      Z5 e1jd                  dgdhgdgdigdidigg«      Z6 e1jd                  dgdhgdgdigdhdigg«      Z7dm„ Z8dn„ Z9do„ Z:dp„ Z;dq„ Z<dr„ Z=ds„ Z>dt„ Z?du„ Z@dv„ ZAdw„ ZBdx„ ZCdy„ ZD e1dzd{gdzdcgg«      ZEd|„ ZFd}„ ZG e1dzdzgdcdzgg«      ZHd~„ ZId„ ZJ e1d€dzgd€dcgg«      ZKd�„ ZLd‚„ ZM e1dzdzgdzd{gdzdzgdƒd„gdzdzgd…d„gge1jœ                  e1jž                  e1jœ                  e1jž                  e1jœ                  e1jž                  g«      ZPd†„ ZQd‡„ ZRdˆ„ ZSd‰„ ZT e1d{dŠgdzdzgdcdŠgg«      ZUd‹„ ZVdŒ„ ZWd�„ ZXdŽ„ ZY e1d{dzgdzd�gdcdggg«      ZZd�„ Z[d‘„ Z\d’„ Z]d“„ Z^ e1d{dzgdcdzgdzd{gdzdcgge1jœ                  e1jž                  e1jœ                  e1jž                  g«      Z_d”„ Z` e1d{d{gdcdcgd{dcgdcd{gge1jœ                  e1jž                  e1jœ                  e1jž                  g«      Zad•„ Zb e1jd                   ecjÈ                  g d–¢«      d—z  «      Ze e1jd                   ecjÈ                  g d˜¢«      d—z  «      Zfd™„ Zg e1jd                   ecjÈ                  g dš¢«      d›z  «      Zh e1jd                   ecjÈ                  g dœ¢«      d›z  «      Zid�„ ZjyG)¡ÚMarkerStyleag  
    A class representing marker types.

    Instances are immutable. If you need to change anything, create a new
    instance.

    Attributes
    ----------
    markers : dict
        All known markers.
    filled_markers : tuple
        All known filled markers. This is a subset of *markers*.
    fillstyles : tuple
        The supported fillstyles.
    ú.Úpointú,ÚpixelÚoÚcircleÚvÚtriangle_downú^Útriangle_upú<Útriangle_leftú>Útriangle_rightÚ1Útri_downÚ2Útri_upÚ3Útri_leftÚ4Ú	tri_rightÚ8ÚoctagonÚsÚsquareÚpÚpentagonÚ*ÚstarÚhÚhexagon1ÚHÚhexagon2ú+ÚplusÚxÚDÚdiamondÚdÚthin_diamondú|ÚvlineÚ_ÚhlineÚPÚplus_filledÚXÚx_filledÚtickleftÚ	tickrightÚtickupÚtickdownÚ	caretleftÚ
caretrightÚcaretupÚ	caretdownÚcaretleftbaseÚcaretrightbaseÚcaretupbaseÚcaretdownbaseÚNoneÚnothingÚnoneú Ú )r   r   r   r   r   r   r&   r(   r*   r,   r.   r0   r5   r7   r=   r?   )ÚfullÚleftÚrightÚbottomÚtoprO   )rS   rT   rU   rV   Nc                 ó´   — d| _         || _        |�t        |«      nd| _        |�t	        |«      nd| _        | j                  |«       | j                  |«       y)a]  
        Parameters
        ----------
        marker : str, array-like, Path, MarkerStyle
            - Another instance of `MarkerStyle` copies the details of that *marker*.
            - For other possible marker values, see the module docstring
              `matplotlib.markers`.

        fillstyle : str, default: :rc:`markers.fillstyle`
            One of 'full', 'left', 'right', 'bottom', 'top', 'none'.

        transform : `~matplotlib.transforms.Transform`, optional
            Transform that will be combined with the native transform of the
            marker.

        capstyle : `.CapStyle` or %(CapStyle)s, optional
            Cap style that will override the default cap style of the marker.

        joinstyle : `.JoinStyle` or %(JoinStyle)s, optional
            Join style that will override the default join style of the marker.
        N)Ú_marker_functionÚ_user_transformr   Ú_user_capstyler
   Ú_user_joinstyleÚ_set_fillstyleÚ_set_marker)ÚselfÚmarkerÚ	fillstyleÚ	transformÚcapstyleÚ	joinstyles         úP/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/matplotlib/markers.pyÚ__init__zMarkerStyle.__init__Ü   sY   € ð. !%ˆÔØ(ˆÔØ4<Ð4Hœh xÔ0ÈdˆÔØ7@Ð7Lœy¨Ô3ÐRVˆÔØ×Ñ˜IÔ&Ø×Ñ˜Õ ó    c                 ó4  — | j                   €y t        | _        t        «       | _        d | _        d | _        d | _        t        j                  | _
        | j                  xs t        j                  | _        | j                  dk7  | _        | j                  «        y )NrO   )rX   Ú_empty_pathÚ_pathr   Ú
_transformÚ	_alt_pathÚ_alt_transformÚ_snap_thresholdr
   ÚroundÚ
_joinstylerZ   r   ÚbuttÚ	_capstyleÚ
_fillstyleÚ_filled©r^   s    rd   Ú_recachezMarkerStyle._recacheú   sx   € Ø× Ñ Ð(ØÜ ˆŒ
Ü+Ó-ˆŒØˆŒØ"ˆÔØ#ˆÔÜ#Ÿ/™/ˆŒØ×,Ñ,Ò=´·±ˆŒð —‘¨&Ñ0ˆŒØ×ÑÕrf   c                 óR   — t        t        | j                  j                  «      «      S ©N)ÚboolÚlenri   Úverticesrt   s    rd   Ú__bool__zMarkerStyle.__bool__
  s   € Ü”C˜Ÿ
™
×+Ñ+Ó,Ó-Ð-rf   c                 ó   — | j                   S rw   ©rs   rt   s    rd   Ú	is_filledzMarkerStyle.is_filled  ó   € Ø�|‰|Ðrf   c                 ó   — | j                   S rw   )rr   rt   s    rd   Úget_fillstylezMarkerStyle.get_fillstyle  s   € Ø�‰Ðrf   c                 ó~   — |€t         j                  d   }t        j                  | j                  |¬«       || _        y)zï
        Set the fillstyle.

        Parameters
        ----------
        fillstyle : {'full', 'left', 'right', 'bottom', 'top', 'none'}
            The part of the marker surface that is colored with
            markerfacecolor.
        Nzmarkers.fillstyle)r`   )ÚmplÚrcParamsr   Úcheck_in_listÚ
fillstylesrr   )r^   r`   s     rd   r\   zMarkerStyle._set_fillstyle  s4   € ð ÐÜŸ™Ð%8Ñ9ˆIÜ×Ñ˜4Ÿ?™?°iÕ@Ø#ˆ�rf   c                 ó.   — | j                   j                  S rw   )ro   Únamert   s    rd   Úget_joinstylezMarkerStyle.get_joinstyle"  s   € Ø�‰×#Ñ#Ð#rf   c                 ó.   — | j                   j                  S rw   )rq   rˆ   rt   s    rd   Úget_capstylezMarkerStyle.get_capstyle%  s   € Ø�~‰~×"Ñ"Ð"rf   c                 ó   — | j                   S rw   )Ú_markerrt   s    rd   Ú
get_markerzMarkerStyle.get_marker(  r   rf   c                 ó~  — t        |t        «      r(t        j                  |«      r| j                  | _        �n=t        |t        t        f«      r0|| j                  v r"t        | d| j                  |   z   «      | _        n÷t        |t        j                  «      r3|j                  dk(  r$|j                  d   dk(  r| j                  | _        nªt        |t        «      r| j                  | _        nˆt        |t         «      r&t#        |«      dv r|d   dv r| j$                  | _        nRt        |t&        «      r%t)        j*                  |j,                  «      | _        n	 t        |«       | j                  | _        t        |t&        «      s|| _        | j3                  «        yy# t.        $ r}t/        d|›�«      |‚d}~ww xY w)a=  
        Set the marker.

        Parameters
        ----------
        marker : str, array-like, Path, MarkerStyle
            - Another instance of `MarkerStyle` copies the details of that *marker*.
            - For other possible marker values see the module docstring
              `matplotlib.markers`.
        Ú_set_r   r   )r   é   )r   r   r   zUnrecognized marker style N)Ú
isinstanceÚstrr   Úis_math_textÚ_set_mathtext_pathrX   ÚintÚmarkersÚgetattrÚnpÚndarrayÚndimÚshapeÚ_set_verticesr   Ú_set_path_markerr   ry   Ú_set_tuple_markerr   ÚcopyÚdeepcopyÚ__dict__Ú
ValueErrorr�   ru   )r^   r_   Úerrs      rd   r]   zMarkerStyle._set_marker+  sf  € ô �fœcÔ"¤u×'9Ñ'9¸&Ô'AØ$(×$;Ñ$;ˆDÖ!Ü˜¤¤c 
Ô+°¸$¿,¹,Ñ0FÜ$+¨D°'¸D¿L¹LÈÑ<PÑ2PÓ$QˆDÕ!Ü˜¤§¡Ô,°·±ÀÒ1AØ—‘˜Q‘ 1Ò$Ø$(×$6Ñ$6ˆDÕ!Ü˜¤Ô%Ø$(×$9Ñ$9ˆDÕ!Ü˜¤Ô'¬C°«K¸6Ñ,AØ�q‘	˜YÑ&Ø$(×$:Ñ$:ˆDÕ!Ü˜¤Ô,Ü ŸM™M¨&¯/©/Ó:ˆD�MðFÜ�V”Ø(,×(:Ñ(:�Ô%ô
 ˜&¤+Ô.Ø!ˆDŒLØ�M‰M�Oð /øô	 ò FÜ Ø0°°
Ð;ó=ØBEðFûðFús   ÅF Æ	F<Æ(F7Æ7F<c                 ó   — | j                   S )zÏ
        Return a `.Path` for the primary part of the marker.

        For unfilled markers this is the whole marker, for filled markers,
        this is the area to be drawn with *markerfacecolor*.
        )ri   rt   s    rd   Úget_pathzMarkerStyle.get_pathP  s   € ð �z‰zÐrf   c                 óœ   — | j                   €| j                  j                  «       S | j                  | j                   z   j                  «       S )zj
        Return the transform to be applied to the `.Path` from
        `MarkerStyle.get_path()`.
        )rY   rj   Úfrozenrt   s    rd   Úget_transformzMarkerStyle.get_transformY  sA   € ð
 ×ÑÐ'Ø—?‘?×)Ñ)Ó+Ð+à—O‘O d×&:Ñ&:Ñ:×BÑBÓDÐDrf   c                 ó   — | j                   S )zË
        Return a `.Path` for the alternate part of the marker.

        For unfilled markers, this is *None*; for filled markers, this is the
        area to be drawn with *markerfacecoloralt*.
        )rk   rt   s    rd   Úget_alt_pathzMarkerStyle.get_alt_pathc  s   € ð �~‰~Ðrf   c                 óœ   — | j                   €| j                  j                  «       S | j                  | j                   z   j                  «       S )zn
        Return the transform to be applied to the `.Path` from
        `MarkerStyle.get_alt_path()`.
        )rY   rl   r¨   rt   s    rd   Úget_alt_transformzMarkerStyle.get_alt_transforml  sE   € ð
 ×ÑÐ'Ø×&Ñ&×-Ñ-Ó/Ð/à×'Ñ'¨$×*>Ñ*>Ñ>×FÑFÓHÐHrf   c                 ó   — | j                   S rw   )rm   rt   s    rd   Úget_snap_thresholdzMarkerStyle.get_snap_thresholdv  s   € Ø×#Ñ#Ð#rf   c                 óP   — | j                   �| j                   j                  «       S y)z.Return user supplied part of marker transform.N)rY   r¨   rt   s    rd   Úget_user_transformzMarkerStyle.get_user_transformy  s(   € à×ÑÐ+Ø×'Ñ'×.Ñ.Ó0Ð0ð ,rf   c                 óp   — t        | «      }|j                  �|xj                  |z  c_        |S ||_        |S )zû
        Return a new version of this marker with the transform applied.

        Parameters
        ----------
        transform : `~matplotlib.transforms.Affine2D`
            Transform will be combined with current user supplied transform.
        )r   rY   )r^   ra   Ú
new_markers      rd   ÚtransformedzMarkerStyle.transformed~  sC   € ô ! Ó&ˆ
Ø×%Ñ%Ð1Ø×&Ò&¨)Ñ3Õ&ð Ðð *3ˆJÔ&ØÐrf   )ÚdegÚradc                ó  — |€|€t        d«      ‚|�|�t        d«      ‚t        | «      }|j                  €t        «       |_        |�|j                  j	                  |«       |�|j                  j                  |«       |S )aB  
        Return a new version of this marker rotated by specified angle.

        Parameters
        ----------
        deg : float, optional
            Rotation angle in degrees.

        rad : float, optional
            Rotation angle in radians.

        .. note:: You must specify exactly one of deg or rad.
        zOne of deg or rad is requiredz'Only one of deg and rad can be supplied)r£   r   rY   r	   Ú
rotate_degÚrotate)r^   rµ   r¶   r³   s       rd   ÚrotatedzMarkerStyle.rotatedŽ  s†   € ð ˆ;˜3˜;ÜÐ<Ó=Ð=Øˆ?˜s˜ÜÐFÓGÐGÜ  Ó&ˆ
Ø×%Ñ%Ð-Ü)1«ˆJÔ&àˆ?Ø×&Ñ&×1Ñ1°#Ô6Øˆ?Ø×&Ñ&×-Ñ-¨cÔ2àÐrf   c                 ó‚   — |€|}t        | «      }|j                  xs
 t        «       }|j                  ||«      |_        |S )aW  
        Return new marker scaled by specified scale factors.

        If *sy* is not given, the same scale is applied in both the *x*- and
        *y*-directions.

        Parameters
        ----------
        sx : float
            *X*-direction scaling factor.
        sy : float, optional
            *Y*-direction scaling factor.
        )r   rY   r	   Úscale)r^   ÚsxÚsyr³   rj   s        rd   ÚscaledzMarkerStyle.scaled«  sE   € ð ˆ:ØˆBä  Ó&ˆ
Ø×/Ñ/Ò=´8³:ˆ
Ø%/×%5Ñ%5°b¸"Ó%=ˆ
Ô"ØÐrf   c                 ó   — d| _         y )NFr}   rt   s    rd   Ú_set_nothingzMarkerStyle._set_nothingÁ  s	   € Øˆ�rf   c                 ó¸   — t        j                  t        j                  |j                  «      «      }t	        «       j                  d|z  «      | _        || _        y )Nç      à?)r™   ÚmaxÚabsrz   r	   r¼   rj   ri   )r^   ÚpathÚrescales      rd   Ú_set_custom_markerzMarkerStyle._set_custom_markerÄ  s<   € Ü—&‘&œŸ™ §¡Ó.Ó/ˆÜ"›*×*Ñ*¨3°©=Ó9ˆŒØˆ�
rf   c                 ó:   — | j                  | j                  «       y rw   )rÈ   r�   rt   s    rd   rž   zMarkerStyle._set_path_markerÉ  s   € Ø×Ñ §¡Õ-rf   c                 óL   — | j                  t        | j                  «      «       y rw   )rÈ   r   r�   rt   s    rd   r�   zMarkerStyle._set_verticesÌ  s   € Ø×Ñ¤ T§\¡\Ó 2Õ3rf   c                 ó˜  — | j                   }t        |«      dk(  r|d   d}}nt        |«      dk(  r
|d   |d   }}|d   }|dk(  r>t        j                  «      | _        | j
                  xs t        j                  | _        n›|dk(  r>t        j                  «      | _        | j
                  xs t        j                  | _        nX|dk(  rEt        j                  «      | _        d| _        | j
                  xs t        j                  | _        nt        d|› �«      ‚t        «       j                  d«      j!                  «      | _        y )	Nr   r   ç        r‘   r   FzUnexpected tuple marker: rÃ   )r�   ry   r   Úunit_regular_polygonri   r[   r
   Úmiterro   Úunit_regular_starÚbevelÚunit_regular_asteriskrs   r£   r	   r¼   r¸   rj   )r^   r_   ÚnumsidesÚrotationÚsymstyles        rd   rŸ   zMarkerStyle._set_tuple_markerÏ  s  € Ø—‘ˆÜˆv‹;˜!ÒØ!'¨¡¨C�h‰HÜ�‹[˜AÒØ!'¨¡¨F°1©I�hˆHØ˜!‘9ˆØ�qŠ=Ü×2Ñ2°8Ó<ˆDŒJØ"×2Ñ2ÒE´i·o±oˆD�OØ˜Š]Ü×/Ñ/°Ó9ˆDŒJØ"×2Ñ2ÒE´i·o±oˆD�OØ˜Š]Ü×3Ñ3°HÓ=ˆDŒJØ ˆDŒLØ"×2Ñ2ÒE´i·o±oˆD�OäÐ8¸¸ÐAÓBÐBÜ"›*×*Ñ*¨3Ó/×:Ñ:¸8ÓDˆ�rf   c                 óä  — ddl m}  |d| j                  «       t        j                  d   ¬«      }t        |j                  «      dk(  ry|j                  «       }t        |j                  |j                  «      }t        «       j                  |j                   d|j                   z  z   |j                   d|j                   z  z   «      j                  d|z  «      | _        || _        d	| _        y)
zc
        Draw mathtext markers '$...$' using `.TextPath` object.

        Submitted by tcb
        r   )ÚTextPath)r   r   ztext.usetex)Úxyr(   ÚusetexNrÃ   ç      ð?F)Úmatplotlib.textrÖ   rŽ   rƒ   r„   ry   rz   Úget_extentsrÄ   ÚwidthÚheightr	   Ú	translateÚxminÚyminr¼   rj   ri   Ú_snap)r^   rÖ   ÚtextÚbboxÚmax_dims        rd   r•   zMarkerStyle._set_mathtext_pathä  sÂ   € õ 	-ñ ˜6 T§_¡_Ó%6Ü"Ÿ|™|¨MÑ:ô<ˆäˆt�}‰}Ó Ò"Øà×ÑÓ!ˆÜ�d—j‘j $§+¡+Ó.ˆä‹Jß‰Y˜Ÿ	™	�z C¨4¯:©:¨+Ñ$5Ñ5¸¿	¹	°zÀCÈ4Ï;É;È,ÑDVÑ7VÓWß‰U�3˜‘=Ó!ð 	Œð ˆŒ
Øˆ�
rf   c                 ó:   — | j                  «       | j                  v S rw   )r�   Ú_half_fillstylesrt   s    rd   Ú
_half_fillzMarkerStyle._half_fillü  s   € Ø×!Ñ!Ó# t×'<Ñ'<Ð<Ð<rf   rÙ   c                 óÆ  — t        «       j                  d|z  «      | _        t        j                  | _        | j                  «       st        j                  «       | _	        y t        j                  «       x| _	        | _        | j                  «       }| j                  j                  dddddœ|   «       | j                  j                  «       j                  d«      | _        y )NrÃ   r   éZ   é´   é  ©rT   rV   rS   rU   ç     €f@)r	   r¼   rj   r™   Úinfrm   rç   r   Úunit_circleri   Úunit_circle_righthalfrk   r�   r¸   r¨   rl   )r^   ÚsizeÚfss      rd   Ú_set_circlezMarkerStyle._set_circleÿ  s©   € Ü"›*×*Ñ*¨3°©:Ó6ˆŒÜ!Ÿv™vˆÔØ�‰Ô Ü×)Ñ)Ó+ˆD�Jä*.×*DÑ*DÓ*FÐFˆDŒJ˜œØ×#Ñ#Ó%ˆBØ�O‰O×&Ñ&Ø B°¸sÑCÀBÑGôIà"&§/¡/×"8Ñ"8Ó":×"EÑ"EÀdÓ"KˆDÕrf   c                 ó(   — | j                  d¬«       y )NrÃ   )rñ   )ró   rt   s    rd   Ú
_set_pointzMarkerStyle._set_point  s   € Ø×Ñ˜cÐÕ"rf   c                 ó‚   — t        j                  «       | _        t        «       j	                  dd«      | _        d | _        y )Ng9î”Öÿß¿)r   Úunit_rectangleri   r	   rÞ   rj   rm   rt   s    rd   Ú
_set_pixelzMarkerStyle._set_pixel  s2   € Ü×(Ñ(Ó*ˆŒ
ô #›*×.Ñ.¨x¸ÓBˆŒØ#ˆÕrf   r   r   éÿÿÿÿg333333ã¿gš™™™™™É¿ç333333ã?c                 ó¸  — t        «       j                  d«      j                  |«      | _        d| _        | j                  «       s| j                  | _        ná| j                  | j                  | j                  | j                  g}| j                  «       }|dk(  r!|d|z   dz     | _        |d|z   dz     | _        nl|dk(  r!|d|z   dz     | _        |d|z   dz     | _        nF|dk(  r!|d	|z   dz     | _        |d
|z   dz     | _        n |d
|z   dz     | _        |d	|z   dz     | _        | j                  | _        | j                  xs t         j"                  | _        y )NrÃ   ç      @rV   r   é   r   rU   rS   r   r‘   )r	   r¼   r¸   rj   rm   rç   Ú_triangle_pathri   Ú_triangle_path_uÚ_triangle_path_lÚ_triangle_path_dÚ_triangle_path_rr�   rk   rl   r[   r
   rÎ   ro   )r^   ÚrotÚskipÚmpathsrò   s        rd   Ú_set_trianglezMarkerStyle._set_triangle$  sR  € Ü"›*×*Ñ*¨3Ó/×:Ñ:¸3Ó?ˆŒØ"ˆÔà�‰Ô Ø×,Ñ,ˆD�Jà×+Ñ+Ø×+Ñ+Ø×+Ñ+Ø×+Ñ+ð-ˆFð
 ×#Ñ#Ó%ˆBØ�UŠ{Ø# Q¨¡X°¡NÑ3�”
Ø!'¨¨T©°Q©Ñ!7�•Ø�x’Ø# Q¨¡X°¡NÑ3�”
Ø!'¨¨T©°Q©Ñ!7�•Ø�v’Ø# Q¨¡X°¡NÑ3�”
Ø!'¨¨T©°Q©Ñ!7�•à# Q¨¡X°¡NÑ3�”
Ø!'¨¨T©°Q©Ñ!7�”à"&§/¡/ˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   c                 ó&   — | j                  dd«      S )NrÌ   r   ©r  rt   s    rd   Ú_set_triangle_upzMarkerStyle._set_triangle_upB  s   € Ø×!Ñ! # qÓ)Ð)rf   c                 ó&   — | j                  dd«      S )Nrí   r   r  rt   s    rd   Ú_set_triangle_downzMarkerStyle._set_triangle_downE  ó   € Ø×!Ñ! %¨Ó+Ð+rf   c                 ó&   — | j                  dd«      S )Ng     €V@r‘   r  rt   s    rd   Ú_set_triangle_leftzMarkerStyle._set_triangle_leftH  s   € Ø×!Ñ! $¨Ó*Ð*rf   c                 ó&   — | j                  dd«      S )Ng     àp@r   r  rt   s    rd   Ú_set_triangle_rightzMarkerStyle._set_triangle_rightK  r  rf   c                 óò  — t        «       j                  dd«      | _        d| _        | j	                  «       st        j                  «       | _        n„t        ddgddgddgddgddgg«      | _        t        ddgddgddgddgddgg«      | _        | j                  «       }dddd	d
œ|   }| j                  j                  |«       | j                  | _        | j                  xs t        j                  | _        y )Nç      à¿ç       @rÌ   rÙ   rÃ   r   ré   rê   rë   )rU   rT   rV   rS   )r	   rÞ   rj   rm   rç   r   r÷   ri   rk   r�   r¸   rl   r[   r
   rÎ   ro   ©r^   rò   r¹   s      rd   Ú_set_squarezMarkerStyle._set_squareN  sñ   € Ü"›*×.Ñ.¨t°TÓ:ˆŒØ"ˆÔØ�‰Ô Ü×,Ñ,Ó.ˆD�Jô   S˜z¨C°¨:¸¸S°zØ # S˜z¨C°¨:ð7ó 8ˆDŒJä! C¨ :°°S¨z¸CÀ¸:Ø$'¨ :°°S¨zð#;ó <ˆDŒNà×#Ñ#Ó%ˆBØ !¨B°sÀCÑHÈÑLˆFØ�O‰O×&Ñ& vÔ.Ø"&§/¡/ˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   c                 ó  — t        «       j                  dd«      j                  d«      | _        d| _        | j                  «       st        j                  «       | _        n~t        ddgddgddgddgg«      | _        t        ddgddgddgddgg«      | _	        | j                  «       }ddddd	œ|   }| j                  j                  |«       | j                  | _        | j                  xs t        j                  | _        y )
Nr  é-   rü   r   r   ré   rê   rë   rì   )r	   rÞ   r¸   rj   rm   rç   r   r÷   ri   rk   r�   rl   r[   r
   rÎ   ro   r  s      rd   Ú_set_diamondzMarkerStyle._set_diamond`  sä   € Ü"›*×.Ñ.¨t°TÓ:×EÑEÀbÓIˆŒØ"ˆÔØ�‰Ô Ü×,Ñ,Ó.ˆD�Jä  1˜v¨¨1 v°°1¨v¸¸1°vÐ>Ó?ˆDŒJÜ! A q 6¨A¨q¨6°A°q°6¸A¸q¸6Ð"BÓCˆDŒNØ×#Ñ#Ó%ˆBØ ¨°SÀCÑHÈÑLˆFØ�O‰O×&Ñ& vÔ.Ø"&§/¡/ˆDÔØ×.Ñ.ÒA´)·/±/ˆ�rf   c                 ó\   — | j                  «        | j                  j                  dd«       y )Nrú   rÙ   )r  rj   r¼   rt   s    rd   Ú_set_thin_diamondzMarkerStyle._set_thin_diamondn  s"   € Ø×ÑÔØ�‰×Ñ˜c 3Õ'rf   c                 ót  — t        «       j                  d«      | _        d| _        t	        j
                  d«      }| j                  «       s|| _        nÃ|j                  }dt        j                  d«      z   dz  }t	        |g d¢   «      }t	        |g d¢   «      }t	        |d   |d   |d	   d| g|d   g«      }t	        |d   |d
   |d   d| g|d   g«      }||f||f||f||fdœ| j                  «          \  | _        | _        | j                  | _        | j                  xs t        j                   | _        y )NrÃ   rü   é   r   ç      @)r   r   rý   r   )r   r   r‘   rý   r   r   r   rý   r‘   ©rV   rU   rS   rT   )r	   r¼   rj   rm   r   rÍ   rç   ri   rz   r™   Úsqrtr�   rk   rl   r[   r
   rÎ   ro   )r^   ÚpolypathÚvertsÚyrV   rU   rS   rT   s           rd   Ú_set_pentagonzMarkerStyle._set_pentagonr  s5  € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔä×,Ñ,¨QÓ/ˆà�‰Ô Ø!ˆD�Jà×%Ñ%ˆEØ”R—W‘W˜Q“Z‘ 2Ñ%ˆAÜ�uš\Ñ*Ó+ˆCÜ˜%¢Ñ0Ó1ˆFÜ˜˜q™ 5¨¡8¨U°1©X¸¸A¸2°wÀÀaÁÐIÓJˆDÜ˜% ™( E¨!¡H¨e°A©h¸¸Q¸B¸ÀÀqÁÐJÓKˆEà˜V�}°¸°Ø˜u˜°¸°ñ*ð × Ñ Ó"ñ*$Ñ&ˆDŒJ˜œð #'§/¡/ˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   c           	      óÆ  — t        «       j                  d«      | _        d| _        t	        j
                  dd¬«      }| j                  «       s|| _        nê|j                  }t	        t        j                  |dd |dd	 |dd
 g«      «      }t	        t        j                  |dd |dd g«      «      }t	        t        j                  |dd |dd
 g«      «      }t	        t        j                  |dd
 |dd	 |dd
 g«      «      }||f||f||f||fdœ| j                  «          \  | _        | _        | j                  | _        | j                  xs t        j                   | _        y )NrÃ   rü   r  gœÅ‹…!rØ?)ÚinnerCircler   rý   é   é
   r   r‘   é   é   r  )r	   r¼   rj   rm   r   rÏ   rç   ri   rz   r™   Úconcatenater�   rk   rl   r[   r
   rÐ   ro   )r^   r   r!  rV   rU   rS   rT   s          rd   Ú	_set_starzMarkerStyle._set_star‰  sM  € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔä×)Ñ)¨!¸ÔBˆà�‰Ô Ø!ˆD�Jà×%Ñ%ˆEÜ”r—~‘~ u¨Q¨q z°5¸¸2°;ÀÀaÈÀ
Ð&KÓLÓMˆCÜœ"Ÿ.™.¨%°°!¨*°e¸A¸a°jÐ)AÓBÓCˆFÜœŸ™¨¨a°¨
°E¸!¸A°JÐ'?Ó@ÓAˆDÜœŸ™¨¨q°¨°U¸1¸R°[À%ÈÈ!À*Ð(MÓNÓOˆEà˜V�}°¸°Ø˜u˜°¸°ñ*ð × Ñ Ó"ñ*$Ñ&ˆDŒJ˜œð #'§/¡/ˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   c                 óæ  — t        «       j                  d«      | _        d | _        t	        j
                  d«      }| j                  «       s|| _        nü|j                  }t        j                  t        j                  dt        j                  z  dz  «      «      }t	        t        j                  | dfg|g d¢   |dfgg«      «      }t	        t        j                  | dfg|dd |dfgg«      «      }t	        |dd «      }t	        |g d	¢   «      }||f||f||f||fd
œ| j                  «          \  | _        | _        | j                  | _        | j"                  xs t$        j&                  | _        y )NrÃ   r)  r  g      @r   )r   r   r  r   rý   )r   r  rý   r‘   r  )r	   r¼   rj   rm   r   rÍ   rç   ri   rz   r™   rÅ   ÚcosÚpir*  r�   rk   rl   r[   r
   rÎ   ro   )r^   r   r!  r4   rV   rU   rS   rT   s           rd   Ú_set_hexagon1zMarkerStyle._set_hexagon1Ÿ  sH  € Ü"›*×*Ñ*¨3Ó/ˆŒØ#ˆÔä×,Ñ,¨QÓ/ˆà�‰Ô Ø!ˆD�Jà×%Ñ%ˆEä—‘”r—v‘v˜a¤"§%¡%™i¨"™nÓ-Ó.ˆAÜ”r—~‘~¨!¨¨Q¨ y°%º	Ñ2BÀaÈÀVÀHÐ&MÓNÓOˆCÜœ"Ÿ.™.¨Q¨B°¨7¨)°U¸1¸Q°ZÀ1ÀaÀ&ÀÐ)JÓKÓLˆFÜ˜˜a ˜
Ó#ˆDÜ˜š|Ñ,Ó-ˆEà˜V�}°¸°Ø˜u˜°¸°ñ*ð × Ñ Ó"ñ*$Ñ&ˆDŒJ˜œð #'§/¡/ˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   c           	      óÌ  — t        «       j                  d«      j                  d«      | _        d | _        t        j                  d«      }| j                  «       s|| _        nà|j                  }t        j                  d«      dz  d}}t        |g d¢   «      }t        |dd	 «      }t        t        j                  ||fg|d d | | f||fgg«      «      }t        t        j                  ||fg|d	d
d…   | | fgg«      «      }||f||f||f||fdœ| j                  «          \  | _        | _        | j                  | _        | j                   xs t"        j$                  | _        y )NrÃ   é   r)  r‘   rý   g      è?)r   r   r  rý   r   r   r  r   rù   r  )r	   r¼   r¸   rj   rm   r   rÍ   rç   ri   rz   r™   r  r*  r�   rk   rl   r[   r
   rÎ   ro   )	r^   r   r!  r4   r"  rV   rU   rS   rT   s	            rd   Ú_set_hexagon2zMarkerStyle._set_hexagon2·  se  € Ü"›*×*Ñ*¨3Ó/×:Ñ:¸2Ó>ˆŒØ#ˆÔä×,Ñ,¨QÓ/ˆà�‰Ô Ø!ˆD�Jà×%Ñ%ˆEä—7‘7˜1“: ‘> 6ˆqˆAÜ�uš_Ñ-Ó.ˆCÜ˜%  !˜*Ó%ˆFÜœŸ™Ø�Q��˜%  ˜)¨ r¨A¨2 h°°A°Ð%7ð(9ó :ó ;ˆDäœŸ™Ø�Q��˜%  ! B ™-¨A¨2°¨r¨(¨ð)5ó 6ó 7ˆEð ˜V�}°¸°Ø˜u˜°¸°ñ*ð × Ñ Ó"ñ*$Ñ&ˆDŒJ˜œð #'§/¡/ˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   c           
      ót  — t        «       j                  d«      | _        d| _        t	        j
                  d«      }| j                  «       s#| j                  j                  d«       || _        n¨t        j                  d«      dz  }t	        ddgdd	g| d	gd|gd| g| dgddgg«      x| _        | _        | j                  «       }| j                  j                  dd
dddœ|   «       | j                  j                  «       j                  d«      | _        | j                  xs t         j"                  | _        y )NrÃ   rü   r(  g     €6@r  r  r   rù   r   ré   rê   rë   )rS   rU   rT   rV   rí   )r	   r¼   rj   rm   r   rÍ   rç   r¸   ri   r™   r  rk   r�   r¨   rl   r[   r
   rÎ   ro   )r^   r   r4   rò   s       rd   Ú_set_octagonzMarkerStyle._set_octagonÑ  s  € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔä×,Ñ,¨QÓ/ˆà�‰Ô Ø�O‰O×&Ñ& tÔ,Ø!ˆD�Jä—‘˜“˜bÑ ˆAÜ*.Ø�R�˜1˜a˜& A 2 q '¨B°¨7Ø�q�b�˜Q˜B ˜8 a¨ Wð.ó+/ð /ˆDŒJ˜œð ×#Ñ#Ó%ˆBØ�O‰O×&Ñ&Ø b°3¸sÑCÀBÑGôIà"&§/¡/×"8Ñ"8Ó":×"EÑ"EÀeÓ"LˆDÔà×.Ñ.ÒA´)·/±/ˆ�rf   rÌ   ç      ð¿c                 ó~   — t        «       j                  d«      | _        d| _        d| _        | j
                  | _        y ©NrÃ   rÙ   F)r	   r¼   rj   rm   rs   Ú_line_marker_pathri   rt   s    rd   Ú
_set_vlinezMarkerStyle._set_vlineè  s2   € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔØˆŒØ×+Ñ+ˆ�
rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y ©Nré   )r9  rj   r¸   rt   s    rd   Ú
_set_hlinezMarkerStyle._set_hlineî  s"   € Ø�‰ÔØŸ/™/×4Ñ4°RÓ8ˆ�rf   c                 ó€   — t        «       j                  dd«      | _        d| _        d| _        | j
                  | _        y )Nr5  rÙ   F©r	   r¼   rj   rm   rs   Ú_tickhoriz_pathri   rt   s    rd   Ú_set_tickleftzMarkerStyle._set_tickleftô  s4   € Ü"›*×*Ñ*¨4°Ó5ˆŒØ"ˆÔØˆŒØ×)Ñ)ˆ�
rf   c                 ó€   — t        «       j                  dd«      | _        d| _        d| _        | j
                  | _        y ©NrÙ   Fr>  rt   s    rd   Ú_set_tickrightzMarkerStyle._set_tickrightú  s4   € Ü"›*×*Ñ*¨3°Ó4ˆŒØ"ˆÔØˆŒØ×)Ñ)ˆ�
rf   g       €c                 ó€   — t        «       j                  dd«      | _        d| _        d| _        | j
                  | _        y rB  ©r	   r¼   rj   rm   rs   Ú_tickvert_pathri   rt   s    rd   Ú_set_tickupzMarkerStyle._set_tickup  s4   € Ü"›*×*Ñ*¨3°Ó4ˆŒØ"ˆÔØˆŒØ×(Ñ(ˆ�
rf   c                 ó€   — t        «       j                  dd«      | _        d| _        d| _        | j
                  | _        y )NrÙ   r5  FrE  rt   s    rd   Ú_set_tickdownzMarkerStyle._set_tickdown  s4   € Ü"›*×*Ñ*¨3°Ó5ˆŒØ"ˆÔØˆŒØ×(Ñ(ˆ�
rf   gš™™™™™é?rÃ   gš™™™™™é¿c                 ó~   — t        «       j                  d«      | _        d| _        d| _        | j
                  | _        y )NrÃ   rü   F)r	   r¼   rj   rm   rs   Ú	_tri_pathri   rt   s    rd   Ú_set_tri_downzMarkerStyle._set_tri_down  s0   € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔØˆŒØ—^‘^ˆ�
rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y ©Nrê   ©rL  rj   r¸   rt   s    rd   Ú_set_tri_upzMarkerStyle._set_tri_up  ó$   € Ø×ÑÔØŸ/™/×4Ñ4°SÓ9ˆ�rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y ©Nrë   rO  rt   s    rd   Ú_set_tri_leftzMarkerStyle._set_tri_left  rQ  rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y r;  rO  rt   s    rd   Ú_set_tri_rightzMarkerStyle._set_tri_right#  s$   € Ø×ÑÔØŸ/™/×4Ñ4°RÓ8ˆ�rf   g      ø?c                 óÄ   — t        «       j                  d«      | _        d| _        d| _        | j
                  | _        | j                  xs t        j                  | _
        y ©NrÃ   g      @F)r	   r¼   rj   rm   rs   Ú_caret_pathri   r[   r
   rÎ   ro   rt   s    rd   Ú_set_caretdownzMarkerStyle._set_caretdown)  sH   € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔØˆŒØ×%Ñ%ˆŒ
Ø×.Ñ.ÒA´)·/±/ˆ�rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y rN  ©rZ  rj   r¸   rt   s    rd   Ú_set_caretupzMarkerStyle._set_caretup0  ó$   € Ø×ÑÔØŸ/™/×4Ñ4°SÓ9ˆ�rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y rS  r\  rt   s    rd   Ú_set_caretleftzMarkerStyle._set_caretleft4  r^  rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y r;  r\  rt   s    rd   Ú_set_caretrightzMarkerStyle._set_caretright8  s$   € Ø×ÑÔØŸ/™/×4Ñ4°RÓ8ˆ�rf   g      ø¿c                 óF   — | j                  «        | j                  | _        y rw   )rZ  Ú_caret_path_baseri   rt   s    rd   Ú_set_caretdownbasezMarkerStyle._set_caretdownbase>  s   € Ø×ÑÔØ×*Ñ*ˆ�
rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y rN  ©re  rj   r¸   rt   s    rd   Ú_set_caretupbasezMarkerStyle._set_caretupbaseB  ó$   € Ø×ÑÔ!ØŸ/™/×4Ñ4°SÓ9ˆ�rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y rS  rg  rt   s    rd   Ú_set_caretleftbasezMarkerStyle._set_caretleftbaseF  ri  rf   c                 ód   — | j                  «        | j                  j                  d«      | _        y r;  rg  rt   s    rd   Ú_set_caretrightbasezMarkerStyle._set_caretrightbaseJ  s$   € Ø×ÑÔ!ØŸ/™/×4Ñ4°RÓ8ˆ�rf   c                 ó~   — t        «       j                  d«      | _        d| _        d| _        | j
                  | _        y r7  )r	   r¼   rj   rm   rs   Ú
_plus_pathri   rt   s    rd   Ú	_set_pluszMarkerStyle._set_plusS  s0   € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔØˆŒØ—_‘_ˆ�
rf   c                 ó~   — t        «       j                  d«      | _        d| _        d| _        | j
                  | _        y rX  )r	   r¼   rj   rm   rs   Ú_x_pathri   rt   s    rd   Ú_set_xzMarkerStyle._set_x^  s0   € Ü"›*×*Ñ*¨3Ó/ˆŒØ"ˆÔØˆŒØ—\‘\ˆ�
rf   ))rù   éýÿÿÿ)r   rt  )r   rù   )r‘   rù   ©r‘   r   ©r   r   ©r   r‘   ©rù   r‘   ©rù   r   ©rt  r   )rt  rù   )rù   rù   r)  ))r‘   r   ru  rv  rw  rx  ry  rz  )rt  r   c                 ó¬  — t        «       | _        d| _        | j                  xs t        j
                  | _        | j                  «       s| j                  | _	        y | j                  x| _	        | _        | j                  «       }| j                  j                  dddddœ|   «       | j                  j                  «       j                  d«      | _        y ©Nrü   r   ré   rê   rë   )rV   rS   rU   rT   )r	   rj   rm   r[   r
   rÎ   ro   rç   Ú_plus_filled_pathri   Ú_plus_filled_path_trk   r�   r¸   r¨   rl   ©r^   rò   s     rd   Ú_set_plus_filledzMarkerStyle._set_plus_filledk  s¨   € Ü"›*ˆŒØ"ˆÔØ×.Ñ.ÒA´)·/±/ˆŒØ�‰Ô Ø×/Ñ/ˆD�Jð +/×*BÑ*BÐBˆDŒJ˜œØ×#Ñ#Ó%ˆBØ�O‰O×&Ñ&Ø 2°¸sÑCÀBÑGôIà"&§/¡/×"8Ñ"8Ó":×"EÑ"EÀcÓ"JˆDÕrf   ))rù   éþÿÿÿ)r   rù   )r   r�  )r   rù   ©r   r   ©r   r   ©r   r   ©r   r   ©rù   r   ©r�  r   ©rù   r   )r�  rù   rý   )r‚  rƒ  r„  r…  r†  r‡  rˆ  c                 ó¬  — t        «       | _        d| _        | j                  xs t        j
                  | _        | j                  «       s| j                  | _	        y | j                  x| _	        | _        | j                  «       }| j                  j                  dddddœ|   «       | j                  j                  «       j                  d«      | _        y r|  )r	   rj   rm   r[   r
   rÎ   ro   rç   Ú_x_filled_pathri   Ú_x_filled_path_trk   r�   r¸   r¨   rl   r  s     rd   Ú_set_x_filledzMarkerStyle._set_x_filled€  s¨   € Ü"›*ˆŒØ"ˆÔØ×.Ñ.ÒA´)·/±/ˆŒØ�‰Ô Ø×,Ñ,ˆD�Jð +/×*?Ñ*?Ð?ˆDŒJ˜œØ×#Ñ#Ó%ˆBØ�O‰O×&Ñ&Ø 2°¸sÑCÀBÑGôIà"&§/¡/×"8Ñ"8Ó":×"EÑ"EÀcÓ"JˆDÕrf   )NNNNrw   )rÙ   )kÚ__name__Ú
__module__Ú__qualname__Ú__doc__ÚTICKLEFTÚ	TICKRIGHTÚTICKUPÚTICKDOWNÚ	CARETLEFTÚ
CARETRIGHTÚCARETUPÚ	CARETDOWNÚCARETLEFTBASEÚCARETRIGHTBASEÚCARETUPBASEÚCARETDOWNBASEr—   Úfilled_markersr†   ræ   re   ru   r{   r~   r�   r\   r‰   r‹   rŽ   r]   r¦   r©   r«   r­   r¯   r±   r´   rº   r¿   rÁ   rÈ   rž   r�   rŸ   r•   rç   ró   rõ   rø   r   Ú_create_closedrþ   rÿ   r  r   r  r  r	  r  r  r  r  r  r  r#  r+  r/  r2  r4  r8  r9  r<  r?  r@  rC  rF  rG  rI  ÚMOVETOÚLINETOrK  rL  rP  rT  rV  rY  rZ  r]  r`  rb  rd  re  rh  rk  rm  ro  rp  rr  rs  r™   Úarrayr}  r~  r€  rŠ  r‹  rŒ  © rf   rd   r   r   –   sW  „ ñð *ØˆWð*àˆWð*ð 	ˆXð*ð 	ˆ_ð	*ð
 	ˆ]ð*ð 	ˆ_ð*ð 	Ðð*ð 	ˆZð*ð 	ˆXð*ð 	ˆZð*ð 	ˆ[ð*ð 	ˆYð*ð 	ˆXð*ð 	ˆZð*ð 	ˆVð*ð  	ˆZð!*ð" 	ˆZñ#*ð$ 	ˆVð%*ð& 	ˆSð'*ð( 	ˆYð)*ð* 	ˆ^ð+*ð, 	ˆWð-*ð. 	ˆWð/*ð0 	ˆ]ð1*ð2 	ˆZð3*ð4 	�*ð5*ð6 	�;ð7*ð8 	�ð9*ð: 	�*ð;*ð< 	�;ð=*ð> 	�Lð?*ð@ 	�ðA*ðB 	�;ðC*ðD 	�ñE*ðF 	Ð(Ø�]Ø�Ø�	Ø�	ØˆYØ
ˆIñS*€Gð\€Nð D€JØ9Ðð KOó!ò< ò .òòò$ò$ò#òò#òJòEòòIò$ò1ò
ð  " tô ó:ò,òò
.ò4òEò*ò0=ó
Lò#ò$ð )�T×(Ñ(¨1¨a¨&°2°r°(¸QÀ¸GÐ)DÓE€Nà*�t×*Ñ*¨Q°¨F°T¸4°LÀ3ÈÀ+Ð+NÓOÐØ*�t×*Ñ*Ø
�ˆ˜˜T�{ Q¨ G¨b°"¨XÐ6ó8Ðà*�t×*Ñ*¨Q°¨F°Q¸°G¸bÀ"¸XÐ+FÓGÐØ*�t×*Ñ*¨Q°¨F°Q¸°G¸aÀ¸WÐ+EÓFÐòBò<*ò,ò+ò,òBò$Bò(òBò.Bò,Bò0Bò4Bñ* ˜s D˜k¨C°¨:Ð6Ó7Ðò,ò9ñ ˜S #˜J¨¨c¨
Ð3Ó4€Oò*ò*ñ ˜D #˜;¨¨s¨Ð4Ó5€Nò)ò)ñ �s˜C�j 3¨ +Ø˜C�j 3¨ *Ø˜C�j 4¨ +ð/ð —k‘k 4§;¡;Ø—k‘k 4§;¡;Ø—k‘k 4§;¡;ð0ó1€Iò$ò:ò:ò9ñ ˜˜s˜ c¨3 Z°#°s°Ð<Ó=€KòBò:ò:ò9ñ ˜d C˜[¨3°¨+¸¸Q°xÐ@ÓAÐò+ò:ò:ò9ñ ˜˜c�{ S¨# JØ˜T�{ S¨# Jð0à—{‘{ D§K¡KØ—{‘{ D§K¡Kð1ó2€Jò
%ñ �T˜4�L 3¨ *Ø˜3�K # t ð.à—K‘K §¡Ø—K‘K §¡ð.ó/€Gò
"ð ,˜×+Ñ+¨H¨B¯H©Hò 6Dó -EàGHñ-Ió JÐð .˜$×-Ñ-¨h¨b¯h©hò 8/ó /0à23ñ/4ó 5ÐòKð )�T×(Ñ(¨¨¯©ò 3Bó *CàEFñ*Gó H€Nð +�t×*Ñ*¨8¨2¯8©8ò 5%ó ,&à()ñ,*ó +ÐóKrf   r   )#r�  r    Úcollections.abcr   Únumpyr™   Ú
matplotlibrƒ   rQ   r   r   rÆ   r   Ú
transformsr   r	   Ú_enumsr
   r   Úranger‘  r’  r“  r”  r•  r–  r—  r˜  r™  rš  r›  rœ  Úemptyrh   r   r¢  rf   rd   ú<module>rª     sr   ðñ@óB å !ã ã ß Ý ß 3ß 'ñ
 ?DÀB»iñ<€ˆ9�f˜hØ
ˆJ˜ Ø� ¨]á�8�2—8‘8˜FÓ#Ó$€÷vKò vKrf   