§
    †Ûg?‰  ã                   óî   — d Z ddlZddlmZ ddl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#dS )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``.
============================== ====== =========================================

As a deprecated feature, ``None`` also means 'nothing' when directly
constructing a `.MarkerStyle`, but note that there are other contexts where
``marker=None`` instead means "the default marker" (e.g. :rc:`scatter.marker`
for `.Axes.scatter`).

Note that special symbols can be defined via the
:doc:`STIX math font </tutorials/text/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                   ó  — 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 e¦   «         ZedGdGdGdGfdH„Z ej        d dI„¦  «        e_        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(dYe)fdZ„Z*dGdGd[œd\„Z+d d]„Z,d^„ Z-d_„ Z.d`„ Z/da„ Z0db„ Z1dc„ Z2dd„ Z3d¡df„Z4dg„ Z5dh„ Z6 e7j8        didjgdkdkgdjdkgg¦  «        Z9 e7j8        didjgdldmgdndmgg¦  «        Z: e7j8        dldmgdndmgdjdkgdkdkgg¦  «        Z; e7j8        didjgdidkgdkdkgg¦  «        Z< e7j8        didjgdidkgdjdkgg¦  «        Z=do„ Z>dp„ Z?dq„ Z@dr„ ZAds„ ZBdt„ ZCdu„ ZDdv„ ZEdw„ ZFdx„ ZGdy„ ZHdz„ ZId{„ ZJ e7d|d}gd|degg¦  «        ZKd~„ ZLd„ ZM e7d|d|gded|gg¦  «        ZNd€„ ZOd�„ ZP e7d‚d|gd‚degg¦  «        ZQdƒ„ ZRd„„ ZS e7d|d|gd|d}gd|d|gd…d†gd|d|gd‡d†gge7jT        e7jU        e7jT        e7jU        e7jT        e7jU        g¦  «        ZVdˆ„ ZWd‰„ ZXdŠ„ ZYd‹„ ZZ e7d}dŒgd|d|gdedŒgg¦  «        Z[d�„ Z\dŽ„ Z]d�„ Z^d�„ Z_ e7d}d|gd|d‘gdedigg¦  «        Z`d’„ Zad“„ Zbd”„ Zcd•„ Zd e7d}d|gded|gd|d}gd|degge7jT        e7jU        e7jT        e7jU        g¦  «        Zed–„ Zf e7d}d}gdedegd}degded}gge7jT        e7jU        e7jT        e7jU        g¦  «        Zgd—„ Zh e7j8         eijj        g d˜¢¦  «        d™z  ¦  «        Zk e7j8         eijj        g dš¢¦  «        d™z  ¦  «        Zld›„ Zm e7j8         eijj        g dœ¢¦  «        d�z  ¦  «        Zn e7j8         eijj        g dž¢¦  «        d�z  ¦  «        ZodŸ„ ZpdGS )¢ÚMarkerStyleae  
    A class representing marker types.

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

    Attributes
    ----------
    markers : list
        All known markers.
    filled_markers : list
        All known filled markers. This is a subset of *markers*.
    fillstyles : list
        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| _         || _        || _        || _        |                      |¦  «         || j        u rd}t          j        dd¬¦  «         |€d}t          j        dd¬¦  «         |                      |¦  «         dS )a—  
        Parameters
        ----------
        marker : str, array-like, Path, MarkerStyle, or None
            - Another instance of *MarkerStyle* copies the details of that
              ``marker``.
            - *None* means no marker.  This is the deprecated default.
            - 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 : transforms.Transform, default: None
            Transform that will be combined with the native transform of the
            marker.

        capstyle : CapStyle, default: None
            Cap style that will override the default cap style of the marker.

        joinstyle : JoinStyle, default: None
            Join style that will override the default join style of the marker.
        NrQ   z3.6z¤Calling MarkerStyle() with no parameters is deprecated since %(since)s; support will be removed %(removal)s.  Use MarkerStyle('') to construct an empty MarkerStyle.)Úmessagez�MarkerStyle(None) is deprecated since %(since)s; support will be removed %(removal)s.  Use MarkerStyle('') to construct an empty MarkerStyle.)	Ú_marker_functionÚ_user_transformÚ_user_capstyleÚ_user_joinstyleÚ_set_fillstyleÚ_unsetr   Úwarn_deprecatedÚ_set_marker)ÚselfÚmarkerÚ	fillstyleÚ	transformÚcapstyleÚ	joinstyles         úH/granary/edev/quantum/lib/python3.11/site-packages/matplotlib/markers.pyÚ__init__zMarkerStyle.__init__ä   s»   € ð2 !%ˆÔØ(ˆÔØ&ˆÔØ(ˆÔØ×Ò˜IÑ&Ô&Ð&à�T”[Ð Ð ØˆFÝÔ Øð  ð ñ  ô  ð  ð
 ˆ>ØˆFÝÔ Øð  EðFñ Fô Fð Fð 	×Ò˜Ñ Ô Ð Ð Ð ó    c                 ó   — d S ©N© )ra   rb   rc   s      rg   ú<lambda>zMarkerStyle.<lambda>  s   € ¨T€ ri   c                 ó  — | j         €d S t          | _        t          ¦   «         | _        d | _        d | _        d | _        t          j	        | _
        | j        pt          j        | _        | j        dk    | _        |                       ¦   «          d S )NrO   )rY   Ú_empty_pathÚ_pathr   Ú
_transformÚ	_alt_pathÚ_alt_transformÚ_snap_thresholdr
   ÚroundÚ
_joinstyler[   r   ÚbuttÚ	_capstyleÚ
_fillstyleÚ_filled©ra   s    rg   Ú_recachezMarkerStyle._recache  s}   € ØÔ Ð(ØˆFÝ ˆŒ
Ý+Ñ-Ô-ˆŒØˆŒØ"ˆÔØ#ˆÔÝ#œ/ˆŒØÔ,Ð=µ´ˆŒð ”¨&Ò0ˆŒØ×ÒÑÔÐÐÐri   c                 óN   — t          t          | j        j        ¦  «        ¦  «        S rk   )ÚboolÚlenrp   Úverticesr{   s    rg   Ú__bool__zMarkerStyle.__bool__%  s   € Ý•C˜œ
Ô+Ñ,Ô,Ñ-Ô-Ð-ri   c                 ó   — | j         S rk   ©rz   r{   s    rg   Ú	is_filledzMarkerStyle.is_filled(  ó
   € ØŒ|Ðri   c                 ó   — | j         S rk   )ry   r{   s    rg   Úget_fillstylezMarkerStyle.get_fillstyle+  s
   € ØŒÐri   c                 óš   — |€t           j        d         }t          j        | j        |¬¦  «         || _        |                      ¦   «          dS )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)rc   )ÚmplÚrcParamsr   Úcheck_in_listÚ
fillstylesry   r|   )ra   rc   s     rg   r]   zMarkerStyle._set_fillstyle.  sG   € ð ÐÝœÐ%8Ô9ˆIÝÔ˜4œ?°iÐ@Ñ@Ô@Ð@Ø#ˆŒØ�Š‰Œˆˆˆri   c                 ó   — | j         j        S rk   )rv   Únamer{   s    rg   Úget_joinstylezMarkerStyle.get_joinstyle>  s   € ØŒÔ#Ð#ri   c                 ó   — | j         j        S rk   )rx   rŽ   r{   s    rg   Úget_capstylezMarkerStyle.get_capstyleA  s   € ØŒ~Ô"Ð"ri   c                 ó   — | j         S rk   )Ú_markerr{   s    rg   Ú
get_markerzMarkerStyle.get_markerD  r…   ri   c                 óÈ  — t          |t          j        ¦  «        r*|j        dk    r|j        d         dk    r| j        | _        �nkt          |t          ¦  «        r"t          j	        |¦  «        r| j
        | _        �n4t          |t          ¦  «        r| j        | _        �nt          |t          ¦  «        r(t          |¦  «        dv r|d         dv r| j        | _        nÔt          |t          j        t           f¦  «        s-|| j        v r$t%          | d| j        |         z   ¦  «        | _        n†t          |t&          ¦  «        rt)          j        |j        ¦  «        | _        nR	 t          |¦  «         | j        | _        n5# t.          $ r(}t/          d                     |¦  «        ¦  «        |‚d}~ww xY wt          |t&          ¦  «        s|| _        |                      ¦   «          dS dS )a‹  
        Set the marker.

        Parameters
        ----------
        marker : str, array-like, Path, MarkerStyle, or None, default: None
            - Another instance of *MarkerStyle* copies the details of that
              ``marker``.
            - *None* means no marker.
            - For other possible marker values see the module docstring
              `matplotlib.markers`.
        r   r   )r   é   )r   r   r   Ú_set_zUnrecognized marker style {!r}N)Ú
isinstanceÚnpÚndarrayÚndimÚshapeÚ_set_verticesrY   Ústrr   Úis_math_textÚ_set_mathtext_pathr   Ú_set_path_markerr   r   Ú_set_tuple_markerÚlistÚmarkersÚgetattrr   ÚcopyÚdeepcopyÚ__dict__Ú
ValueErrorÚformatr“   r|   )ra   rb   Úerrs      rg   r`   zMarkerStyle._set_markerG  sÝ  € õ �v�rœzÑ*Ô*ð 	;¨v¬{¸aÒ/?Ð/?Ø”˜Q” 1Ò$Ð$Ø$(Ô$6ˆDÔ!Ñ!Ý˜¥Ñ$Ô$ð 	;­Ô);¸FÑ)CÔ)Cð 	;Ø$(Ô$;ˆDÔ!Ñ!Ý˜¥Ñ%Ô%ð 	;Ø$(Ô$9ˆDÔ!Ñ!Ý˜¥Ñ'Ô'ð 	;­C°©K¬K¸6Ð,AÐ,AØ�q”	˜YÐ&Ð&Ø$(Ô$:ˆDÔ!Ð!Ý˜V¥b¤jµ$Ð%7Ñ8Ô8ð 	;Ø˜œÐ$Ð$Ý$+Ø�g ¤¨VÔ 4Ñ4ñ%6ô %6ˆDÔ!Ð!å˜¥Ñ,Ô,ð 		;Ý œM¨&¬/Ñ:Ô:ˆDŒMˆMð;Ý�V‘”�Ø(,Ô(:�Ô%Ð%øÝð ;ð ;ð ;Ý Ð!Aß"(¢&¨¡.¤.ñ2ô 2Ø7:ð;øøøøð;øøøõ ˜&¥+Ñ.Ô.ð 	Ø!ˆDŒLØ�MŠM‰OŒOˆOˆOˆOð	ð 	s   ÅE; Å;
F-Æ#F(Æ(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*.
        )rp   r{   s    rg   Úget_pathzMarkerStyle.get_pathq  s   € ð ŒzÐri   c                 ó„   — | j         €| j                             ¦   «         S | j        | j         z                        ¦   «         S )zj
        Return the transform to be applied to the `.Path` from
        `MarkerStyle.get_path()`.
        )rZ   rq   Úfrozenr{   s    rg   Úget_transformzMarkerStyle.get_transformz  s=   € ð
 ÔÐ'Ø”?×)Ò)Ñ+Ô+Ð+à”O dÔ&:Ñ:×BÒBÑDÔDÐDri   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*.
        )rr   r{   s    rg   Úget_alt_pathzMarkerStyle.get_alt_path„  s   € ð Œ~Ðri   c                 ó„   — | j         €| j                             ¦   «         S | j        | j         z                        ¦   «         S )zn
        Return the transform to be applied to the `.Path` from
        `MarkerStyle.get_alt_path()`.
        )rZ   rs   r¯   r{   s    rg   Úget_alt_transformzMarkerStyle.get_alt_transform�  s?   € ð
 ÔÐ'ØÔ&×-Ò-Ñ/Ô/Ð/àÔ'¨$Ô*>Ñ>×FÒFÑHÔHÐHri   c                 ó   — | j         S rk   )rt   r{   s    rg   Úget_snap_thresholdzMarkerStyle.get_snap_threshold—  s   € ØÔ#Ð#ri   c                 óF   — | j         �| j                              ¦   «         S dS )z.Return user supplied part of marker transform.N)rZ   r¯   r{   s    rg   Úget_user_transformzMarkerStyle.get_user_transformš  s(   € àÔÐ+ØÔ'×.Ò.Ñ0Ô0Ð0ð ,Ð+ri   rd   c                 ób   — t          | ¦  «        }|j        �|xj        |z  c_        n||_        |S )zñ
        Return a new version of this marker with the transform applied.

        Parameters
        ----------
        transform : Affine2D, default: None
            Transform will be combined with current user supplied transform.
        )r   rZ   )ra   rd   Ú
new_markers      rg   ÚtransformedzMarkerStyle.transformedŸ  s?   € õ ! Ñ&Ô&ˆ
ØÔ%Ð1ØÐ&Ô&¨)Ñ3Ð&Ô&Ð&à)2ˆJÔ&ØÐri   )ÚdegÚradc                ó  — |€|€t          d¦  «        ‚|�|�t          d¦  «        ‚t          | ¦  «        }|j        €t          ¦   «         |_        |�|j                             |¦  «         |�|j                             |¦  «         |S )aL  
        Return a new version of this marker rotated by specified angle.

        Parameters
        ----------
        deg : float, default: None
            Rotation angle in degrees.

        rad : float, default: None
            Rotation angle in radians.

        .. note:: You must specify exactly one of deg or rad.
        NzOne of deg or rad is requiredz'Only one of deg and rad can be supplied)r©   r   rZ   r	   Ú
rotate_degÚrotate)ra   r¼   r½   rº   s       rg   ÚrotatedzMarkerStyle.rotated¯  s”   € ð ˆ;˜3˜;ÝÐ<Ñ=Ô=Ð=Øˆ?˜s˜ÝÐFÑGÔGÐGÝ  Ñ&Ô&ˆ
ØÔ%Ð-Ý)1©¬ˆJÔ&àˆ?ØÔ&×1Ò1°#Ñ6Ô6Ð6Øˆ?ØÔ&×-Ò-¨cÑ2Ô2Ð2àÐri   c                 óŒ   — |€|}t          | ¦  «        }|j        pt          ¦   «         }|                     ||¦  «        |_        |S )aW  
        Return new marker scaled by specified scale factors.

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

        Parameters
        ----------
        sx : float
            *X*-direction scaling factor.
        sy : float, default: None
            *Y*-direction scaling factor.
        )r   rZ   r	   Úscale)ra   ÚsxÚsyrº   rq   s        rg   ÚscaledzMarkerStyle.scaledÌ  sJ   € ð ˆ:ØˆBå  Ñ&Ô&ˆ
ØÔ/Ð=µ8±:´:ˆ
Ø%/×%5Ò%5°b¸"Ñ%=Ô%=ˆ
Ô"ØÐri   c                 ó   — d| _         d S )NFrƒ   r{   s    rg   Ú_set_nothingzMarkerStyle._set_nothingâ  s   € ØˆŒˆˆri   c                 ó¼   — t          j        t          j        |j        ¦  «        ¦  «        }t	          ¦   «                              d|z  ¦  «        | _        || _        d S )Nç      à?)r™   ÚmaxÚabsr€   r	   rÃ   rq   rp   )ra   ÚpathÚrescales      rg   Ú_set_custom_markerzMarkerStyle._set_custom_markerå  sE   € Ý”&�œ ¤Ñ.Ô.Ñ/Ô/ˆÝ"™*œ*×*Ò*¨3°©=Ñ9Ô9ˆŒØˆŒ
ˆ
ˆ
ri   c                 ó:   — |                       | j        ¦  «         d S rk   )rÏ   r“   r{   s    rg   r¡   zMarkerStyle._set_path_markerê  s   € Ø×Ò ¤Ñ-Ô-Ð-Ð-Ð-ri   c                 óT   — |                       t          | j        ¦  «        ¦  «         d S rk   )rÏ   r   r“   r{   s    rg   r�   zMarkerStyle._set_verticesí  s&   € Ø×Ò¥ T¤\Ñ 2Ô 2Ñ3Ô3Ð3Ð3Ð3ri   c                 óš  — | j         }t          |¦  «        dk    r|d         d}}n#t          |¦  «        dk    r|d         |d         }}|d         }|dk    r2t          j        |¦  «        | _        | j        pt          j        | _        n‰|dk    r2t          j	        |¦  «        | _        | j        pt          j
        | _        nQ|dk    r9t          j        |¦  «        | _        d| _        | j        pt          j
        | _        nt          d|› �¦  «        ‚t          ¦   «                              d¦  «                             |¦  «        | _        d S )	Nr   r   ç        r–   r   FzUnexpected tuple marker: rÊ   )r“   r   r   Úunit_regular_polygonrp   r\   r
   Úmiterrv   Úunit_regular_starÚbevelÚunit_regular_asteriskrz   r©   r	   rÃ   r¿   rq   )ra   rb   ÚnumsidesÚrotationÚsymstyles        rg   r¢   zMarkerStyle._set_tuple_markerð  s'  € Ø”ˆÝˆv‰;Œ;˜!ÒÐØ!'¨¤¨C�hˆHˆHÝ�‰[Œ[˜AÒÐØ!'¨¤¨F°1¬I�hˆHØ˜!”9ˆØ�qŠ=ˆ=ÝÔ2°8Ñ<Ô<ˆDŒJØ"Ô2ÐEµi´oˆDŒOˆOØ˜Š]ˆ]ÝÔ/°Ñ9Ô9ˆDŒJØ"Ô2ÐEµi´oˆDŒOˆOØ˜Š]ˆ]ÝÔ3°HÑ=Ô=ˆDŒJØ ˆDŒLØ"Ô2ÐEµi´oˆDŒOˆOåÐA¸ÐAÐAÑBÔBÐBÝ"™*œ*×*Ò*¨3Ñ/Ô/×:Ò:¸8ÑDÔDˆŒˆˆri   c                 ó  — ddl m}  |d|                      ¦   «         t          j        d         ¬¦  «        }t          |j        ¦  «        dk    rdS |j                             d¬¦  «        \  }}|j                             d¬¦  «        \  }}||z
  }||z
  }t          ||¦  «        }	t          ¦   «          
                    | d| z  z   | d| z  z   ¦  «                             d	|	z  ¦  «        | _        || _        d
| _        dS )zc
        Draw mathtext markers '$...$' using `.TextPath` object.

        Submitted by tcb
        r   )ÚTextPath)r   r   ztext.usetex)Úxyr(   ÚusetexN)ÚaxisrÊ   ç      ð?F)Úmatplotlib.textrÝ   r”   r‰   rŠ   r   r€   ÚminrË   r	   Ú	translaterÃ   rq   rp   Ú_snap)
ra   rÝ   ÚtextÚxminÚyminÚxmaxÚymaxÚwidthÚheightÚmax_dims
             rg   r    zMarkerStyle._set_mathtext_path  s  € ð 	-Ð,Ð,Ð,Ð,Ð,ð ˆx˜6 T§_¢_Ñ%6Ô%6Ý"œ|¨MÔ:ð<ñ <ô <ˆåˆtŒ}ÑÔ Ò"Ð"ØˆFà”]×&Ò&¨AÐ&Ñ.Ô.‰
ˆˆdØ”]×&Ò&¨AÐ&Ñ.Ô.‰
ˆˆdØ�t‘ˆØ˜‘ˆÝ�e˜VÑ$Ô$ˆÝ"™*œ*ßŠY˜�u˜s e V™|Ñ+¨d¨U°S¸F¸7±]Ñ-BÑCÔCßŠU�3˜‘=Ñ!Ô!ð 	Œð ˆŒ
ØˆŒ
ˆ
ˆ
ri   c                 ó8   — |                       ¦   «         | j        v S rk   )r‡   Ú_half_fillstylesr{   s    rg   Ú
_half_fillzMarkerStyle._half_fill  s   € Ø×!Ò!Ñ#Ô# tÔ'<Ð<Ð<ri   rá   c                 óè  — t          ¦   «                              d|z  ¦  «        | _        t          j        | _        |                      ¦   «         st          j        ¦   «         | _	        d S t          j
        ¦   «         x| _	        | _        |                      ¦   «         }| j                             dddddœ|         ¦  «         | j                             ¦   «                              d¦  «        | _        d S )NrÊ   r   éZ   é´   é  ©rT   rV   rS   rU   ç     €f@)r	   rÃ   rq   r™   Úinfrt   rð   r   Úunit_circlerp   Úunit_circle_righthalfrr   r‡   r¿   r¯   rs   )ra   ÚsizeÚfss      rg   Ú_set_circlezMarkerStyle._set_circle"  sÓ   € Ý"™*œ*×*Ò*¨3°©:Ñ6Ô6ˆŒÝ!œvˆÔØ�ŠÑ Ô ð 	LÝÔ)Ñ+Ô+ˆDŒJˆJˆJå*.Ô*DÑ*FÔ*FÐFˆDŒJ˜œØ×#Ò#Ñ%Ô%ˆBØŒO×&Ò&Ø B°¸sÐCÐCÀBÔGñIô Ið Ià"&¤/×"8Ò"8Ñ":Ô":×"EÒ"EÀdÑ"KÔ"KˆDÔÐÐri   c                 ó2   — |                       d¬¦  «         d S )NrÊ   )rú   )rü   r{   s    rg   Ú
_set_pointzMarkerStyle._set_point.  s   € Ø×Ò˜cÐÑ"Ô"Ð"Ð"Ð"ri   c                 ó’   — t          j        ¦   «         | _        t          ¦   «                              dd¦  «        | _        d | _        d S )Ng9î”Öÿß¿)r   Úunit_rectanglerp   r	   rä   rq   rt   r{   s    rg   Ú
_set_pixelzMarkerStyle._set_pixel1  s=   € ÝÔ(Ñ*Ô*ˆŒ
õ #™*œ*×.Ò.¨x¸ÑBÔBˆŒØ#ˆÔÐÐri   r   r   éÿÿÿÿg333333ã¿gš™™™™™É¿ç333333ã?c                 óÆ  — t          ¦   «                              d¦  «                             |¦  «        | _        d| _        |                      ¦   «         s| j        | _        nç| j        | j	        | j
        | j        g}|                      ¦   «         }|dk    r'|d|z   dz           | _        |d|z   dz           | _        n€|dk    r'|d|z   dz           | _        |d|z   dz           | _        nS|dk    r'|d	|z   dz           | _        |d
|z   dz           | _        n&|d
|z   dz           | _        |d	|z   dz           | _        | j        | _        | j        pt           j        | _        d S )NrÊ   ç      @rV   r   é   r   rU   rS   r   r–   )r	   rÃ   r¿   rq   rt   rð   Ú_triangle_pathrp   Ú_triangle_path_uÚ_triangle_path_lÚ_triangle_path_dÚ_triangle_path_rr‡   rr   rs   r\   r
   rÕ   rv   )ra   ÚrotÚskipÚmpathsrû   s        rg   Ú_set_trianglezMarkerStyle._set_triangleG  sa  € Ý"™*œ*×*Ò*¨3Ñ/Ô/×:Ò:¸3Ñ?Ô?ˆŒØ"ˆÔà�ŠÑ Ô ð 	2ØÔ,ˆDŒJˆ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µ)´/ˆŒˆˆri   c                 ó.   — |                       dd¦  «        S )NrÓ   r   ©r  r{   s    rg   Ú_set_triangle_upzMarkerStyle._set_triangle_upe  s   € Ø×!Ò! # qÑ)Ô)Ð)ri   c                 ó.   — |                       dd¦  «        S )Nrö   r   r  r{   s    rg   Ú_set_triangle_downzMarkerStyle._set_triangle_downh  ó   € Ø×!Ò! %¨Ñ+Ô+Ð+ri   c                 ó.   — |                       dd¦  «        S )Ng     €V@r–   r  r{   s    rg   Ú_set_triangle_leftzMarkerStyle._set_triangle_leftk  s   € Ø×!Ò! $¨Ñ*Ô*Ð*ri   c                 ó.   — |                       dd¦  «        S )Ng     àp@r   r  r{   s    rg   Ú_set_triangle_rightzMarkerStyle._set_triangle_rightn  r  ri   c                 ó  — t          ¦   «                              dd¦  «        | _        d| _        |                      ¦   «         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¦  «        | _        |  	                    ¦   «         }dddd	d
œ|         }| j         
                    |¦  «         | j        | _        | j        pt          j        | _        d S )Nç      à¿ç       @rÓ   rá   rÊ   r   rò   ró   rô   )rU   rT   rV   rS   )r	   rä   rq   rt   rð   r   r   rp   rr   r‡   r¿   rs   r\   r
   rÕ   rv   ©ra   rû   rÀ   s      rg   Ú_set_squarezMarkerStyle._set_squareq  s  € Ý"™*œ*×.Ò.¨t°TÑ:Ô:ˆŒØ"ˆÔØ�ŠÑ Ô ð 	2ÝÔ,Ñ.Ô.ˆDŒJˆJõ   S˜z¨C°¨:¸¸S°zØ # S˜z¨C°¨:ð7ñ 8ô 8ˆDŒJå! C¨ :°°S¨z¸CÀ¸:Ø$'¨ :°°S¨zð#;ñ <ô <ˆDŒNà×#Ò#Ñ%Ô%ˆBØ !¨B°sÀCÐHÐHÈÔLˆFØŒO×&Ò& vÑ.Ô.Ð.Ø"&¤/ˆDÔàÔ.ÐAµ)´/ˆŒˆˆri   c                 ó   — t          ¦   «                              dd¦  «                             d¦  «        | _        d| _        |                      ¦   «         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¦  «        | _	        |  
                    ¦   «         }ddddd	œ|         }| j                             |¦  «         | j        | _        | j        pt          j        | _        d S )
Nr  é-   r  r   r   rò   ró   rô   rõ   )r	   rä   r¿   rq   rt   rð   r   r   rp   rr   r‡   rs   r\   r
   rÕ   rv   r  s      rg   Ú_set_diamondzMarkerStyle._set_diamondƒ  s  € Ý"™*œ*×.Ò.¨t°TÑ:Ô:×EÒEÀbÑIÔIˆŒØ"ˆÔØ�ŠÑ Ô ð 	2ÝÔ,Ñ.Ô.ˆDŒJˆ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ÔCˆDŒNØ×#Ò#Ñ%Ô%ˆBØ ¨°SÀCÐHÐHÈÔLˆFØŒO×&Ò& vÑ.Ô.Ð.Ø"&¤/ˆDÔØÔ.ÐAµ)´/ˆŒˆˆri   c                 ód   — |                       ¦   «          | j                             dd¦  «         d S )Nr  rá   )r!  rq   rÃ   r{   s    rg   Ú_set_thin_diamondzMarkerStyle._set_thin_diamond‘  s2   € Ø×ÒÑÔÐØŒ×Ò˜c 3Ñ'Ô'Ð'Ð'Ð'ri   c                 óÊ  — t          ¦   «                              d¦  «        | _        d| _        t	          j        d¦  «        }|                      ¦   «         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        pt          j        | _        d S )NrÊ   r  é   r   ç      @)r   r   r  r   )r   r   r–   r  r   r   r   r  r–   ©rV   rU   rS   rT   )r	   rÃ   rq   rt   r   rÔ   rð   rp   r€   r™   Úsqrtr‡   rr   rs   r\   r
   rÕ   rv   )ra   ÚpolypathÚvertsÚyrV   rU   rS   rT   s           rg   Ú_set_pentagonzMarkerStyle._set_pentagon•  sZ  € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔåÔ,¨QÑ/Ô/ˆà�ŠÑ Ô ð 	2Ø!ˆDŒJˆJàÔ%ˆEØ•R”W˜Q‘Z”Z‘ 2Ñ%ˆAÝ�u˜\˜\˜\Ô*Ñ+Ô+ˆCÝ˜%   Ô0Ñ1Ô1ˆFÝ˜˜qœ 5¨¤8¨U°1¬X¸¸A¸2°wÀÀaÄÐIÑJÔJˆDÝ˜% œ( E¨!¤H¨e°A¬h¸¸Q¸B¸ÀÀqÄÐJÑKÔKˆEà˜V�}°¸°Ø˜u˜°¸°ð*ð *ð × Ò Ñ"Ô"ô*$Ñ&ˆDŒJ˜œð #'¤/ˆDÔàÔ.ÐAµ)´/ˆŒˆˆri   c           	      ó@  — t          ¦   «                              d¦  «        | _        d| _        t	          j        dd¬¦  «        }|                      ¦   «         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        pt          j        | _        d S )NrÊ   r  r%  gœÅ‹…!rØ?)ÚinnerCircler   r  é   é
   r   r–   é   é   r'  )r	   rÃ   rq   rt   r   rÖ   rð   rp   r€   r™   Úconcatenater‡   rr   rs   r\   r
   r×   rv   )ra   r)  r*  rV   rU   rS   rT   s          rg   Ú	_set_starzMarkerStyle._set_star¬  s…  € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔåÔ)¨!¸ÐBÑBÔBˆà�ŠÑ Ô ð 	2Ø!ˆDŒJ‰JàÔ%ˆEÝ•r”~ u¨Q¨q¨S¤z°5¸¸2¸´;ÀÀaÈÀcÄ
Ð&KÑLÔLÑMÔMˆCÝ�"œ.¨%°°!°¬*°e¸A¸a¸C´jÐ)AÑBÔBÑCÔCˆFÝ�œ¨¨a°¨c¬
°E¸!¸A¸#´JÐ'?Ñ@Ô@ÑAÔAˆDÝ�œ¨¨q°¨s¬°U¸1¸R¸4´[À%ÈÈ!ÈÄ*Ð(MÑNÔNÑOÔOˆEà˜V�}°¸°Ø˜u˜°¸°ð*ð *ð × Ò Ñ"Ô"ô*$Ñ&ˆDŒJ˜œð #'¤/ˆDÔàÔ.ÐAµ)´/ˆŒˆˆri   c                 ó  — t          ¦   «                              d¦  «        | _        d | _        t	          j        d¦  «        }|                      ¦   «         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        pt$          j        | _        d S )NrÊ   r2  r%  g      @r   )r   r   r%  r   r  )r   r%  r  r–   r'  )r	   rÃ   rq   rt   r   rÔ   rð   rp   r€   r™   rÌ   ÚcosÚpir3  r‡   rr   rs   r\   r
   rÕ   rv   )ra   r)  r*  r4   rV   rU   rS   rT   s           rg   Ú_set_hexagon1zMarkerStyle._set_hexagon1Â  ss  € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ#ˆÔåÔ,¨QÑ/Ô/ˆà�ŠÑ Ô ð 	2Ø!ˆDŒJ‰JàÔ%ˆEå”•r”v˜a¥"¤%™i¨"™nÑ-Ô-Ñ.Ô.ˆAÝ•r”~¨!¨¨Q¨ y°%¸	¸	¸	Ô2BÀaÈÀVÀHÐ&MÑNÔNÑOÔOˆCÝ�"œ.¨Q¨B°¨7¨)°U¸1¸Q¸3´ZÀ1ÀaÀ&ÀÐ)JÑKÔKÑLÔLˆFÝ˜˜a ˜cœ
Ñ#Ô#ˆDÝ˜˜|˜|˜|Ô,Ñ-Ô-ˆEà˜V�}°¸°Ø˜u˜°¸°ð*ð *ð × Ò Ñ"Ô"ô*$Ñ&ˆDŒJ˜œð #'¤/ˆDÔàÔ.ÐAµ)´/ˆŒˆˆri   c           	      ó
  — t          ¦   «                              d¦  «                             d¦  «        | _        d | _        t          j        d¦  «        }|                      ¦   «         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        pt"          j        | _        d S )NrÊ   é   r2  r–   r  g      è?)r   r   r%  r  r   r   r%  r   r  r'  )r	   rÃ   r¿   rq   rt   r   rÔ   rð   rp   r€   r™   r(  r3  r‡   rr   rs   r\   r
   rÕ   rv   )	ra   r)  r*  r4   r+  rV   rU   rS   rT   s	            rg   Ú_set_hexagon2zMarkerStyle._set_hexagon2Ú  s—  € Ý"™*œ*×*Ò*¨3Ñ/Ô/×:Ò:¸2Ñ>Ô>ˆŒØ#ˆÔåÔ,¨QÑ/Ô/ˆà�ŠÑ Ô ð 	2Ø!ˆDŒJˆJàÔ%ˆEå”7˜1‘:”: ‘> 6ˆqˆAÝ�u˜_˜_˜_Ô-Ñ.Ô.ˆCÝ˜%  ! œ*Ñ%Ô%ˆFÝ�œØ�Q��˜%   œ)¨ r¨A¨2 h°°A°Ð%7ð(9ñ :ô :ñ ;ô ;ˆDå�œØ�Q��˜%  ! B œ-¨A¨2°¨r¨(¨ð)5ñ 6ô 6ñ 7ô 7ˆEð ˜V�}°¸°Ø˜u˜°¸°ð*ð *ð × Ò Ñ"Ô"ô*$Ñ&ˆDŒJ˜œð #'¤/ˆDÔàÔ.ÐAµ)´/ˆŒˆˆri   c           
      óŒ  — t          ¦   «                              d¦  «        | _        d| _        t	          j        d¦  «        }|                      ¦   «         s"| 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                             dd
dddœ|         ¦  «         | j                             ¦   «                              d¦  «        | _        | j        pt           j        | _        d S )NrÊ   r  r1  g     €6@r  r&  r   r  r   rò   ró   rô   )rS   rU   rT   rV   rö   )r	   rÃ   rq   rt   r   rÔ   rð   r¿   rp   r™   r(  rr   r‡   r¯   rs   r\   r
   rÕ   rv   )ra   r)  r4   rû   s       rg   Ú_set_octagonzMarkerStyle._set_octagonô  sE  € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔåÔ,¨QÑ/Ô/ˆà�ŠÑ Ô ð 	MØŒO×&Ò& tÑ,Ô,Ð,Ø!ˆDŒJˆJå”˜‘”˜bÑ ˆAÝ*.Ø�R�˜1˜a˜& A 2 q '¨B°¨7Ø�q�b�˜Q˜B ˜8 a¨ Wð.ñ+/ô +/ð /ˆDŒJ˜œð ×#Ò#Ñ%Ô%ˆBØŒO×&Ò&Ø b°3¸sÐCÐCÀBÔGñIô Ið Ià"&¤/×"8Ò"8Ñ":Ô":×"EÒ"EÀeÑ"LÔ"LˆDÔàÔ.ÐAµ)´/ˆŒˆˆri   rÓ   ç      ð¿c                 ó†   — t          ¦   «                              d¦  «        | _        d| _        d| _        | j        | _        d S ©NrÊ   rá   F)r	   rÃ   rq   rt   rz   Ú_line_marker_pathrp   r{   s    rg   Ú
_set_vlinezMarkerStyle._set_vline  s8   € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔØˆŒØÔ+ˆŒ
ˆ
ˆ
ri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S ©Nrò   )rB  rq   r¿   r{   s    rg   Ú
_set_hlinezMarkerStyle._set_hline  s-   € Ø�ŠÑÔÐØœ/×4Ò4°RÑ8Ô8ˆŒˆˆri   c                 óˆ   — t          ¦   «                              dd¦  «        | _        d| _        d| _        | j        | _        d S )Nr>  rá   F©r	   rÃ   rq   rt   rz   Ú_tickhoriz_pathrp   r{   s    rg   Ú_set_tickleftzMarkerStyle._set_tickleft  s:   € Ý"™*œ*×*Ò*¨4°Ñ5Ô5ˆŒØ"ˆÔØˆŒØÔ)ˆŒ
ˆ
ˆ
ri   c                 óˆ   — t          ¦   «                              dd¦  «        | _        d| _        d| _        | j        | _        d S ©Nrá   FrG  r{   s    rg   Ú_set_tickrightzMarkerStyle._set_tickright  s:   € Ý"™*œ*×*Ò*¨3°Ñ4Ô4ˆŒØ"ˆÔØˆŒØÔ)ˆŒ
ˆ
ˆ
ri   g       €c                 óˆ   — t          ¦   «                              dd¦  «        | _        d| _        d| _        | j        | _        d S rK  ©r	   rÃ   rq   rt   rz   Ú_tickvert_pathrp   r{   s    rg   Ú_set_tickupzMarkerStyle._set_tickup%  s:   € Ý"™*œ*×*Ò*¨3°Ñ4Ô4ˆŒØ"ˆÔØˆŒØÔ(ˆŒ
ˆ
ˆ
ri   c                 óˆ   — t          ¦   «                              dd¦  «        | _        d| _        d| _        | j        | _        d S )Nrá   r>  FrN  r{   s    rg   Ú_set_tickdownzMarkerStyle._set_tickdown+  s:   € Ý"™*œ*×*Ò*¨3°Ñ5Ô5ˆŒØ"ˆÔØˆŒØÔ(ˆŒ
ˆ
ˆ
ri   gš™™™™™é?rÊ   gš™™™™™é¿c                 ó†   — t          ¦   «                              d¦  «        | _        d| _        d| _        | j        | _        d S )NrÊ   r  F)r	   rÃ   rq   rt   rz   Ú	_tri_pathrp   r{   s    rg   Ú_set_tri_downzMarkerStyle._set_tri_down8  s7   € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔØˆŒØ”^ˆŒ
ˆ
ˆ
ri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S ©Nró   ©rU  rq   r¿   r{   s    rg   Ú_set_tri_upzMarkerStyle._set_tri_up>  ó/   € Ø×ÒÑÔÐØœ/×4Ò4°SÑ9Ô9ˆŒˆˆri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S ©Nrô   rX  r{   s    rg   Ú_set_tri_leftzMarkerStyle._set_tri_leftB  rZ  ri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S rD  rX  r{   s    rg   Ú_set_tri_rightzMarkerStyle._set_tri_rightF  s/   € Ø×ÒÑÔÐØœ/×4Ò4°RÑ8Ô8ˆŒˆˆri   g      ø?c                 ó¶   — t          ¦   «                              d¦  «        | _        d| _        d| _        | j        | _        | j        pt          j	        | _
        d S ©NrÊ   g      @F)r	   rÃ   rq   rt   rz   Ú_caret_pathrp   r\   r
   rÕ   rv   r{   s    rg   Ú_set_caretdownzMarkerStyle._set_caretdownL  sI   € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔØˆŒØÔ%ˆŒ
ØÔ.ÐAµ)´/ˆŒˆˆri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S rW  ©rc  rq   r¿   r{   s    rg   Ú_set_caretupzMarkerStyle._set_caretupS  ó/   € Ø×ÒÑÔÐØœ/×4Ò4°SÑ9Ô9ˆŒˆˆri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S r\  re  r{   s    rg   Ú_set_caretleftzMarkerStyle._set_caretleftW  rg  ri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S rD  re  r{   s    rg   Ú_set_caretrightzMarkerStyle._set_caretright[  s/   € Ø×ÒÑÔÐØœ/×4Ò4°RÑ8Ô8ˆŒˆˆri   g      ø¿c                 óF   — |                       ¦   «          | j        | _        d S rk   )rc  Ú_caret_path_baserp   r{   s    rg   Ú_set_caretdownbasezMarkerStyle._set_caretdownbasea  s"   € Ø×ÒÑÔÐØÔ*ˆŒ
ˆ
ˆ
ri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S rW  ©rn  rq   r¿   r{   s    rg   Ú_set_caretupbasezMarkerStyle._set_caretupbasee  ó/   € Ø×ÒÑ!Ô!Ð!Øœ/×4Ò4°SÑ9Ô9ˆŒˆˆri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S r\  rp  r{   s    rg   Ú_set_caretleftbasezMarkerStyle._set_caretleftbasei  rr  ri   c                 ól   — |                       ¦   «          | j                             d¦  «        | _        d S rD  rp  r{   s    rg   Ú_set_caretrightbasezMarkerStyle._set_caretrightbasem  s/   € Ø×ÒÑ!Ô!Ð!Øœ/×4Ò4°RÑ8Ô8ˆŒˆˆri   c                 ó†   — t          ¦   «                              d¦  «        | _        d| _        d| _        | j        | _        d S r@  )r	   rÃ   rq   rt   rz   Ú
_plus_pathrp   r{   s    rg   Ú	_set_pluszMarkerStyle._set_plusv  s7   € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔØˆŒØ”_ˆŒ
ˆ
ˆ
ri   c                 ó†   — t          ¦   «                              d¦  «        | _        d| _        d| _        | j        | _        d S ra  )r	   rÃ   rq   rt   rz   Ú_x_pathrp   r{   s    rg   Ú_set_xzMarkerStyle._set_x�  s7   € Ý"™*œ*×*Ò*¨3Ñ/Ô/ˆŒØ"ˆÔØˆŒØ”\ˆŒ
ˆ
ˆ
ri   ))r  éýÿÿÿ)r   r}  )r   r  )r–   r  ©r–   r   ©r   r   ©r   r–   ©r  r–   ©r  r   ©r}  r   )r}  r  )r  r  r2  ))r–   r   r~  r  r€  r�  r‚  rƒ  )r}  r   c                 ó¨  — t          ¦   «         | _        d| _        | j        pt          j        | _        |                      ¦   «         s| j        | _	        d S | j
        x| _	        | _        |                      ¦   «         }| j                             dddddœ|         ¦  «         | j                             ¦   «                              d¦  «        | _        d S ©Nr  r   rò   ró   rô   )rV   rS   rU   rT   )r	   rq   rt   r\   r
   rÕ   rv   rð   Ú_plus_filled_pathrp   Ú_plus_filled_path_trr   r‡   r¿   r¯   rs   ©ra   rû   s     rg   Ú_set_plus_filledzMarkerStyle._set_plus_filledŽ  sÆ   € Ý"™*œ*ˆŒØ"ˆÔØÔ.ÐAµ)´/ˆŒØ�ŠÑ Ô ð 	KØÔ/ˆDŒJˆJˆJð +/Ô*BÐBˆDŒJ˜œØ×#Ò#Ñ%Ô%ˆBØŒO×&Ò&Ø 2°¸sÐCÐCÀBÔGñIô Ið Ià"&¤/×"8Ò"8Ñ":Ô":×"EÒ"EÀcÑ"JÔ"JˆDÔÐÐri   ))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        pt          j        | _        |                      ¦   «         s| j        | _	        d S | j
        x| _	        | _        |                      ¦   «         }| j                             dddddœ|         ¦  «         | j                             ¦   «                              d¦  «        | _        d S r…  )r	   rq   rt   r\   r
   rÕ   rv   rð   Ú_x_filled_pathrp   Ú_x_filled_path_trr   r‡   r¿   r¯   rs   rˆ  s     rg   Ú_set_x_filledzMarkerStyle._set_x_filled£  sÆ   € Ý"™*œ*ˆŒØ"ˆÔØÔ.ÐAµ)´/ˆŒØ�ŠÑ Ô ð 	KØÔ,ˆDŒJˆJˆJð +/Ô*?Ð?ˆDŒJ˜œØ×#Ò#Ñ%Ô%ˆBØŒO×&Ò&Ø 2°¸sÐCÐCÀBÔGñIô Ið Ià"&¤/×"8Ò"8Ñ":Ô":×"EÒ"EÀcÑ"JÔ"JˆDÔÐÐri   rk   )rá   )qÚ__name__Ú
__module__Ú__qualname__Ú__doc__ÚTICKLEFTÚ	TICKRIGHTÚTICKUPÚTICKDOWNÚ	CARETLEFTÚ
CARETRIGHTÚCARETUPÚ	CARETDOWNÚCARETLEFTBASEÚCARETRIGHTBASEÚCARETUPBASEÚCARETDOWNBASEr¤   Úfilled_markersrŒ   rï   Úobjectr^   rh   ÚinspectÚ	signatureÚ__signature__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   Ú_create_closedr  r  r
  r	  r  r  r  r  r  r  r  r!  r#  r,  r4  r8  r;  r=  rA  rB  rE  rH  rI  rL  rO  rP  rR  ÚMOVETOÚLINETOrT  rU  rY  r]  r_  rb  rc  rf  ri  rk  rm  rn  rq  rt  rv  rx  ry  r{  r|  r™   Úarrayr†  r‡  r‰  r“  r”  r•  rl   ri   rg   r   r   œ   sÎ	  € € € € € ðð ð *Øˆ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ÐàˆV‰XŒX€Fà$°Ø¨$¸$ð,!ð ,!ð ,!ð ,!ð\ /˜WÔ.Ø1Ð1Ð1ñ3ô 3€HÔð ð  ð  ð .ð .ð .ðð ð ðð ð ðð ð ð $ð $ð $ð#ð #ð #ðð ð ð(ð (ð (ðTð ð ðEð Eð Eðð ð ðIð Ið Ið$ð $ð $ð1ð 1ð 1ð
 Xð ð ð ð ð  " tð ð ð ð ð ð:ð ð ð ð,ð ð ðð ð ð
.ð .ð .ð4ð 4ð 4ðEð Eð Eð*ð ð ð4=ð =ð =ð
Lð 
Lð 
Lð 
Lð#ð #ð #ð$ð $ð $ð )�TÔ(¨1¨a¨&°2°r°(¸QÀ¸GÐ)DÑEÔE€Nà*�tÔ*¨Q°¨F°T¸4°LÀ3ÈÀ+Ð+NÑOÔOÐØ*�tÔ*Ø
�ˆ˜˜T�{ Q¨ G¨b°"¨XÐ6ñ8ô 8Ðà*�tÔ*¨Q°¨F°Q¸°G¸bÀ"¸XÐ+FÑGÔGÐØ*�tÔ*¨Q°¨F°Q¸°G¸aÀ¸WÐ+EÑFÔFÐðBð Bð Bð<*ð *ð *ð,ð ,ð ,ð+ð +ð +ð,ð ,ð ,ðBð Bð Bð$Bð Bð Bð(ð (ð (ðBð Bð Bð.Bð Bð Bð,Bð Bð Bð0Bð Bð Bð4Bð Bð Bð* ˜˜s D˜k¨C°¨:Ð6Ñ7Ô7Ðð,ð ,ð ,ð9ð 9ð 9ð �d˜S #˜J¨¨c¨
Ð3Ñ4Ô4€Oð*ð *ð *ð*ð *ð *ð �T˜D #˜;¨¨s¨Ð4Ñ5Ô5€Nð)ð )ð )ð)ð )ð )ð ��s˜C�j 3¨ +Ø˜C�j 3¨ *Ø˜C�j 4¨ +ð/ð ”k 4¤;Ø”k 4¤;Ø”k 4¤;ð0ñ1ô 1€Ið$ð $ð $ð:ð :ð :ð:ð :ð :ð9ð 9ð 9ð �$˜˜s˜ c¨3 Z°#°s°Ð<Ñ=Ô=€KðBð Bð Bð:ð :ð :ð:ð :ð :ð9ð 9ð 9ð �t˜d C˜[¨3°¨+¸¸Q°xÐ@ÑAÔAÐð+ð +ð +ð:ð :ð :ð:ð :ð :ð9ð 9ð 9ð �˜˜c�{ S¨# JØ˜T�{ S¨# Jð0à”{ D¤KØ”{ D¤Kð1ñ2ô 2€Jð
%ð %ð %ð ˆd�T˜4�L 3¨ *Ø˜3�K # t ð.à”K ¤Ø”K ¤ð.ñ/ô /€Gð
"ð "ð "ð ,˜Ô+¨H¨B¬Hð 6Dð 6Dð 6Dñ -Eô -EàGHñ-Iñ Jô JÐð .˜$Ô-¨h¨b¬hð 8/ð 8/ð 8/ñ /0ô /0à23ñ/4ñ 5ô 5ÐðKð Kð Kð )�TÔ(¨¨¬ð 3Bð 3Bð 3Bñ *Cô *CàEFñ*Gñ Hô H€Nð +�tÔ*¨8¨2¬8ð 5%ð 5%ð 5%ñ ,&ô ,&à()ñ,*ñ +ô +ÐðKð Kð Kð Kð Kri   r   )$r™  r¦   Úcollections.abcr   r¨  Únumpyr™   Ú
matplotlibr‰   rQ   r   r   rÍ   r   Ú
transformsr   r	   Ú_enumsr
   r   Úrangerš  r›  rœ  r�  rž  rŸ  r   r¡  r¢  r£  r¤  r¥  Úemptyro   r   rl   ri   rg   ú<module>r¶     s8  ððEð EðL €€€à !Ð !Ð !Ð !Ð !Ð !Ø €€€à Ð Ð Ð à Ð Ð Ð Ø Ð Ð Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'ð
 ?D¸eÀB¹i¼iñ<€ˆ9�f˜hØ
ˆJ˜ Ø� ¨]àˆd�8�2”8˜FÑ#Ô#Ñ$Ô$€ðSKð SKð SKð SKð SKñ SKô SKð SKð SKð SKri   