
    +hS                        d Z ddlZddlZddlmZmZ ddlmZmZm	Z	m
Z
mZ ddlmZmZmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ e
eeeef   eeeeef   f   Ze
eef   Z e
eeeef   eeeeef   f   Z! G d d      Z"dZ#dZ$dZ%dZ&dZ'dZ(dZ)de# e$ e# e$ e# de$ e% d
Z*de& e$ e' e$ e' de$ e% d
Z+de# de# de# de% d	Z,de& de' de' de% d	Z-dD  ch c]  }  e| dz  d       c} Z.dej^                  z  Z0 ede       G d  d!ejb                               Z2d"eed#f   d$e"fd%Z3d"ed$e"fd&Z4dId'e
eef   d(e
eef   d)e
eef   d*e	e   d$e"f
d+Z5dJd"e
eef   d,ed$efd-Z6d"e
deeef   d$e	e   fd.Z7dId/ed0ed1ed2ed*e	e   d$e"fd3Z8d4ed$efd5Z9i d6d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWi dXdYdZd[d\d]d^d;d_d`dadbdcdddedfdgdhdidfdjdkdldmdndodpdqdrdsdtdudvdwi dxdydzd{d|d}d~d}ddddddddddddddddddddddddddi ddddddddddddddddddddddddddddddddddi ddddddddddddddœddǓddɓdd˓dd͓dd͓ddГddғddԓdd֓ddؓi ddddۓddݓddߓddddddddddddddddddddddddddi dddddd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(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d5d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHZ:e:jw                         D ci c]  \  }}||
 c}}Z<yc c} w c c}}w (K  aZ  Color definitions are used as per the CSS3
[CSS Color Module Level 3](http://www.w3.org/TR/css3-color/#svg-color) specification.

A few colors have multiple names referring to the sames colors, eg. `grey` and `gray` or `aqua` and `cyan`.

In these cases the _last_ color when sorted alphabetically takes preferences,
eg. `Color((0, 255, 255)).as_named() == 'cyan'` because "cyan" comes after "aqua".

Warning: Deprecated
    The `Color` class is deprecated, use `pydantic_extra_types` instead.
    See [`pydantic-extra-types.Color`](../usage/types/extra_types/color_types.md)
    for more information.
    N)
hls_to_rgb
rgb_to_hls)AnyCallableOptionalUnioncast)
CoreSchemaPydanticCustomErrorcore_schema)
deprecated   )_repr)GetJsonSchemaHandler)JsonSchemaValue)PydanticDeprecatedSince20c            	       B    e Zd ZdZdZdedededee   fdZded	efd
Z	y)RGBAz1Internal use only as a representation of a color.rgbalpha_tupler   r   r   r   c                 R    || _         || _        || _        || _        ||||f| _        y Nr   )selfr   r   r   r   s        A/var/www/html/venv/lib/python3.12/site-packages/pydantic/color.py__init__zRGBA.__init__&   s.    
DEq!UCS    itemreturnc                      | j                   |   S r   )r   )r   r!   s     r   __getitem__zRGBA.__getitem__.   s    {{4  r    N)
__name__
__module____qualname____doc__	__slots__floatr   r   r   r$    r    r   r   r   !   sG    ;0IT% TE Te THUO T! ! !r    r   z(\d{1,3}(?:\.\d+)?)z\s*,\s*z(\d(?:\.\d+)?|\.\d+|\d{1,2}%)z((-?\d+(?:\.\d+)?|-?\.\d+)(deg|rad|turn)?z(\d{1,3}(?:\.\d+)?)%z8\s*(?:#|0x)?([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])?\s*zD\s*(?:#|0x)?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})?\s*z\s*rgba?\(\s*z(?:z
)?\s*\)\s*z\s*hsla?\(\s*z\s+z
(?:\s*/\s*0123456789abcdef      zThe `Color` class is deprecated, use `pydantic_extra_types` instead. See https://docs.pydantic.dev/latest/api/pydantic_extra_types_color/.)categoryc                   r   e Zd ZdZdZdeddfdZedej                  de
defd	       Zdefd
ZdddedefdZdefdZdefdZdddee   defdZdefdZdddee   defdZdefdZedee   deege	f   dej                  fd       Zedededd fd       ZdefdZ d!dZ!dedefdZ"de#fd Z$y)"ColorzRepresents a color.)	_original_rgbavaluer"   Nc                 8   |  |  t        |t        t        f      rt        |      | _        || _        y t        |t
              rt        |      | _        || _        y t        |t              r%|j                  | _        |j                  }|| _        y t        dd      )Ncolor_errorzAvalue is not a valid color: value must be a tuple, list or string)

isinstancetuplelistparse_tupler3   str	parse_strr1   r2   r   )r   r4   s     r   r   zColor.__init__R   s    eeT]+$U+DJ  s#"5)DJ  u%DJOOE  &b r    r   handlerc                 0    i }|j                  dd       |S )Nstringcolor)typeformat)update)clsr   r=   field_schemas       r   __get_pydantic_json_schema__z"Color.__get_pydantic_json_schema__d   s"     ':r    c                     | j                   S )z!Original value passed to `Color`.)r2   r   s    r   originalzColor.originall   s    ~~r    FfallbackrK   c                *   | j                   j                  :t        t        t        t        t        f   | j                               }	 t        |   S | j                         S # t        $ r(}|r| j                         cY d}~S t        d      |d}~ww xY w)a<  Returns the name of the color if it can be found in `COLORS_BY_VALUE` dictionary,
        otherwise returns the hexadecimal representation of the color or raises `ValueError`.

        Args:
            fallback: If True, falls back to returning the hexadecimal representation of
                the color instead of raising a ValueError when no named color is found.

        Returns:
            The name of the color, or the hexadecimal representation of the color.

        Raises:
            ValueError: When no named color is found and fallback is `False`.
        Nz=no named color found, use fallback=True, as_hex() or as_rgb())
r3   r   r	   r8   intas_rgb_tupleCOLORS_BY_VALUEKeyErroras_hex
ValueError)r   rK   rgbes       r   as_namedzColor.as_namedp   s     ::#uS#s]+T->->-@ACm&s++ ;;=   m;;=($%dekll	ms$   A! !	B*B;BBBc           	         | j                   dd D cg c]  }t        |       }}| j                   j                  .|j                  t        | j                   j                               dj	                  d |D              t        d |D              r.dj	                  fdt        dt              d      D              d	z   S c c}w )
aS  Returns the hexadecimal representation of the color.

        Hex string representing the color can be 3, 4, 6, or 8 characters depending on whether the string
        a "short" representation of the color is possible and whether there's an alpha channel.

        Returns:
            The hexadecimal representation of the color.
        N    c              3   $   K   | ]  }|d  
 yw)02xNr+   .0vs     r   	<genexpr>zColor.as_hex.<locals>.<genexpr>   s     4Ac74s   c              3   ,   K   | ]  }|t         v   y wr   )repeat_colorsr\   cs     r   r^   zColor.as_hex.<locals>.<genexpr>   s     2aqM!2s   c              3   (   K   | ]	  }|     y wr   r+   )r\   rb   rQ   s     r   r^   zColor.as_hex.<locals>.<genexpr>   s     I1VAYIs   r   r-   #)r3   float_to_255r   appendjoinallrangelen)r   rb   valuesrQ   s      @r   rQ   zColor.as_hex   s     ,0::bq>:a,q/::::'MM,tzz'7'7894V442622WWIaVa0HIIFV| ;s   Cc                    | j                   j                  cdt        | j                   j                         dt        | j                   j                         dt        | j                   j
                         dS dt        | j                   j                         dt        | j                   j                         dt        | j                   j
                         dt        | j                         d       d	S )zFColor as an `rgb(<r>, <g>, <b>)` or `rgba(<r>, <g>, <b>, <a>)` string.zrgb(, )zrgba(r-   )r3   r   re   r   r   r   round_alpha_floatrH   s    r   as_rgbzColor.as_rgb   s    ::#,tzz||45RTZZ\\8R7SSUVbcgcmcmcocoVpUqqrss TZZ\\232l4::<<6P5QQST`aeakakamamTnSooq**,a014r    r   r   c                    d | j                   dd D        \  }}}|/| j                   j                  |||fS |||| j                         fS |r|||| j                         fS |||fS )a  Returns the color as an RGB or RGBA tuple.

        Args:
            alpha: Whether to include the alpha channel. There are three options for this input:

                - `None` (default): Include alpha only if it's set. (e.g. not `None`)
                - `True`: Always include alpha.
                - `False`: Always omit alpha.

        Returns:
            A tuple that contains the values of the red, green, and blue channels in the range 0 to 255.
                If alpha is included, it is in the range 0 to 1.
        c              3   2   K   | ]  }t        |        y wr   )re   ra   s     r   r^   z%Color.as_rgb_tuple.<locals>.<genexpr>   s     ;q<?;   NrW   )r3   r   rp   )r   r   r   r   r   s        r   rN   zColor.as_rgb_tuple   s~     <DJJrN;1a=zz'!Qw!Q 1 1 333aD--/// a7Nr    c                     | j                   j                  (| j                  d      \  }}}d|dz  dd|dd|ddS | j                  d	      \  }}}}d|dz  dd|dd|ddt        |d
       d	S )zEColor as an `hsl(<h>, <s>, <l>)` or `hsl(<h>, <s>, <l>, <a>)` string.Frr   zhsl(h  z0.0frm   z0.0%rn   Tr-   )r3   r   as_hsl_tuplero   )r   hslias        r   as_hslzColor.as_hsl   s    ::#((u(5HAq"!c'$r!DBt9A>>++$+7KAq"a!c'$r!DBt9BuQ{m1MMr    c                4   t        | j                  j                  | j                  j                  | j                  j                        \  }}}|/| j                  j
                  |||fS |||| j                         fS |r|||| j                         fS |||fS )aS  Returns the color as an HSL or HSLA tuple.

        Args:
            alpha: Whether to include the alpha channel.

                - `None` (default): Include the alpha channel only if it's set (e.g. not `None`).
                - `True`: Always include alpha.
                - `False`: Always omit alpha.

        Returns:
            The color as a tuple of hue, saturation, lightness, and alpha (if included).
                All elements are in the range 0 to 1.

        Note:
            This is HSL as used in HTML and most other places, not HLS as used in Python's `colorsys`.
        )r   r3   r   r   r   r   rp   )r   r   ry   lrz   s        r   rx   zColor.as_hsl_tuple   s    " TZZ\\4::<<F1a=zz'!Qw!Q 1 1 333aD--/// a7Nr    c                 ^    | j                   j                  dS | j                   j                  S )Nr   )r3   r   rH   s    r   rp   zColor._alpha_float   s&    JJ$$,qB$**2B2BBr    sourcec                 h    t        j                  | j                  t        j                               S )N)serialization)r   "with_info_plain_validator_function	_validateto_string_ser_schema)rD   r   r=   s      r   __get_pydantic_core_schema__z"Color.__get_pydantic_core_schema__   s)     ==MM)I)I)K
 	
r    _Color__input_value_c                      | |      S r   r+   )rD   r   r   s      r   r   zColor._validate   s    =!!r    c                 &    | j                  d      S )NTrJ   )rU   rH   s    r   __str__zColor.__str__   s    }}d}++r    c                 T    d | j                  d      fgd| j                         fgz   S )NTrJ   rS   )rU   rN   rH   s    r   __repr_args__zColor.__repr_args__   s1    t}}d}345%ARARAT9U8VVVr    otherc                 h    t        |t              xr! | j                         |j                         k(  S r   )r7   r1   rN   )r   r   s     r   __eq__zColor.__eq__   s+    %'WD,=,=,?5CUCUCW,WWr    c                 4    t        | j                               S r   )hashrN   rH   s    r   __hash__zColor.__hash__   s    D%%'((r    )r"   z_repr.ReprArgs)%r%   r&   r'   r(   r)   	ColorTyper   classmethodr   r
   _GetJsonSchemaHandlerr   rF   rI   boolr;   rU   rQ   rq   r   
ColorTuplerN   r}   HslColorTuplerx   r*   rp   rA   r   r   r   r   r   r   r   rM   r   r+   r    r   r1   r1   H   s    $Ii D $ %00;P	 )  ,1 !D !S !4 $  7; Xd^ z 4N N 7; Xd^ } :Ce C 
#Y
)13%2C)D
			
 
 "c "c "g " ", ,WXC XD X)# )r    r1   r4   .r"   c           	          t        |       dk(  rd | D        \  }}}t        |||d      S t        |       dk(  r*d | dd D        \  }}}t        |||t        | d               S t        dd      )zParse a tuple or list to get RGBA values.

    Args:
        value: A tuple or list.

    Returns:
        An `RGBA` tuple parsed from the input tuple.

    Raises:
        PydanticCustomError: If tuple is not valid.
    rW   c              3   2   K   | ]  }t        |        y wr   parse_color_valuer[   s     r   r^   zparse_tuple.<locals>.<genexpr>  s     7A$Q'7ru   N   c              3   2   K   | ]  }t        |        y wr   r   r[   s     r   r^   zparse_tuple.<locals>.<genexpr>  s     ;A$Q';ru   r6   z:value is not a valid color: tuples must have length 3 or 4)rj   r   parse_float_alphar   )r4   r   r   r   s       r   r:   r:     sz     5zQ771aAq!T""	Uq;r;1aAq!.uQx899!-1mnnr    c                 F   | j                         }	 t        |   \  }}}t        |||d      S # t        $ r Y nw xY wt	        j
                  t        |      }|rE|j                         ^ }}d |D        \  }}}|rt        |dz  d      dz  }nd}t        ||||      S t	        j
                  t        |      }|rB|j                         ^ }}d |D        \  }}}|rt        |d      dz  }nd}t        ||||      S t	        j
                  t        |      xs t	        j
                  t        |      }|rt        |j                          S t	        j
                  t        |      xs t	        j
                  t        |      }|rt        |j                          S t        dd      )	a8  Parse a string representing a color to an RGBA tuple.

    Possible formats for the input string include:

    * named color, see `COLORS_BY_NAME`
    * hex short eg. `<prefix>fff` (prefix can be `#`, `0x` or nothing)
    * hex long eg. `<prefix>ffffff` (prefix can be `#`, `0x` or nothing)
    * `rgb(<r>, <g>, <b>)`
    * `rgba(<r>, <g>, <b>, <a>)`

    Args:
        value: A string representing a color.

    Returns:
        An `RGBA` tuple parsed from the input string.

    Raises:
        ValueError: If the input string cannot be parsed to an RGBA tuple.
    Nc              3   :   K   | ]  }t        |d z  d        yw)r-   r.   NrM   r[   s     r   r^   zparse_str.<locals>.<genexpr>7  s     /a3q1ub>/s   r-   r.      c              3   4   K   | ]  }t        |d         yw)r.   Nr   r[   s     r   r^   zparse_str.<locals>.<genexpr>A  s     +!3q":+s   r6   zBvalue is not a valid color: string not recognised as a valid color)lowerCOLORS_BY_NAMEints_to_rgbarP   re	fullmatchr_hex_shortgroupsrM   
r_hex_longr_rgbr_rgb_v4_styler_hslr_hsl_v4_style	parse_hslr   )	r4   value_lowerr   r   r   mrS   r|   r   s	            r   r<   r<     s}   ( ++-K+ -1a Aq!T**  
 	[+.A((*a/3/1a%(Q^c%9EEAq!U++
Z-A((*a+s+1a2J$EEAq!U++
UK(UBLL,UAQXXZ((
UK(UBLL,UA!((*%%
m-q
rrs   - 	99r   r   r   r   c                 f    t        t        |       t        |      t        |      t        |            S )a  Converts integer or string values for RGB color and an optional alpha value to an `RGBA` object.

    Args:
        r: An integer or string representing the red color value.
        g: An integer or string representing the green color value.
        b: An integer or string representing the blue color value.
        alpha: A float representing the alpha value. Defaults to None.

    Returns:
        An instance of the `RGBA` class with the corresponding color and alpha values.
    )r   r   r   )r   r   r   r   s       r   r   r   S  s.     !!$&7&:<Ma<PRcdiRjkkr    max_valc                     	 t        |       }d|cxk  r	|k  r||z  S  t        ddd|i      # t        $ r t        dd      w xY w)a8  Parse the color value provided and return a number between 0 and 1.

    Args:
        value: An integer or string color value.
        max_val: Maximum range value. Defaults to 255.

    Raises:
        PydanticCustomError: If the value is not a valid color.

    Returns:
        A number between 0 and 1.
    r6   z?value is not a valid color: color values must be a valid numberr   zLvalue is not a valid color: color values must be in the range 0 to {max_val}r   )r*   rR   r   )r4   r   r@   s      r   r   r   b  sm    te 	EWw  "Z 
 	
  t!-1rssts	   - Ac                    | y	 t        | t              r#| j                  d      rt        | dd       dz  }nt        |       }t        j                  |d      ryd|cxk  rdk  r|S  t        dd	      # t        $ r t        dd      w xY w)
aZ  Parse an alpha value checking it's a valid float in the range 0 to 1.

    Args:
        value: The input value to parse.

    Returns:
        The parsed value as a float, or `None` if the value was None or equal 1.

    Raises:
        PydanticCustomError: If the input value cannot be successfully parsed as a float in the expected range.
    N%d   r6   z>value is not a valid color: alpha values must be a valid floatr   r   zDvalue is not a valid color: alpha values must be in the range 0 to 1)r7   r;   endswithr*   rR   r   mathisclose)r4   r   s     r   r   r   }  s     }seS!ennS&9%*%+E%LE ||E1	
eq 
 "-1wxx  s!-1qrrss   >A4 4B
ry   h_unitssatlightc                     t        |d      t        |d      }}t        |       }|dv r	|dz  dz  }n|dk(  r|t        z  t        z  }n|dz  }t        |||      \  }}	}
t	        ||	|
t        |            S )a.  Parse raw hue, saturation, lightness, and alpha values and convert to RGBA.

    Args:
        h: The hue value.
        h_units: The unit for hue value.
        sat: The saturation value.
        light: The lightness value.
        alpha: Alpha value.

    Returns:
        An instance of `RGBA`.
    r   >   Ndegrw   radr   )r   r*   radsr   r   r   )ry   r   r   r   r   s_valuel_valueh_valuer   r   r   s              r   r   r     s     )c24EeS4QWGAhG-C-#%	E	D.4' A+'73GAq!1a*5122r    rb   c                 0    t        t        | dz              S )a  Converts a float value between 0 and 1 (inclusive) to an integer between 0 and 255 (inclusive).

    Args:
        c: The float value to be converted. Must be between 0 and 1 (inclusive).

    Returns:
        The integer equivalent of the given float value rounded to the nearest whole number.

    Raises:
        ValueError: If the given float value is outside the acceptable range of 0 to 1 (inclusive).
    r   )rM   ro   )rb   s    r   re   re     s     uQW~r    	aliceblue)      r   antiquewhite)         aqua)r   r   r   
aquamarine)   r      azure)r   r   r   beige)   r      bisque)r         black)r   r   r   blanchedalmond)r   r      blue)r   r   r   
blueviolet)   +      brown)   *   r   	burlywood)         	cadetblue)_         
chartreuse)r   r   r   	chocolate)   i      coral)r   r   P   cornflowerblue)r         cornsilk)r   r   r   crimson)r      <   cyandarkblue)r   r      darkcyan)r   r   r   darkgoldenrod)r         darkgray)   r  r  	darkgreen)r   r   r   darkgrey	darkkhaki)      k   darkmagenta)r   r   r   darkolivegreen)U   r  /   
darkorange)r      r   
darkorchid)   2      darkred)r   r   r   
darksalmon)      z   darkseagreen)      r  darkslateblue)H   =   r   darkslategray)r  O   r#  darkslategreydarkturquoise)r         
darkviolet)   r      deeppink)r   r      deepskyblue)r      r   dimgray)r   r   r   dimgrey
dodgerblue)r      r   	firebrick)   "   r5  floralwhite)r   r   r   forestgreen)r5  r   r5  fuchsia)r   r   r   	gainsboro)r   r   r   
ghostwhite)r   r   r   gold)r   r   r   	goldenrod)   r       gray)   r@  r@  green)r   r@  r   greenyellow)   r   r  greyhoneydew)r   r   r   hotpink)r   r      	indianred)r   \   rI  indigo)K   r      ivory)r   r   r   khaki)r      r  lavender)rO  rO  r   lavenderblush)r   r   r   	lawngreen)|      r   lemonchiffon)r   r   r   	lightblue)rC     rO  
lightcoral)r   r@  r@  	lightcyan)   r   r   lightgoldenrodyellow)r   r   r   	lightgray)r*  r*  r*  
lightgreen)r2     r2  	lightgrey	lightpink)r         lightsalmon)r   r   r  lightseagreen)r>  r4     lightskyblue)r   r&  r   lightslategray)w      r  lightslategreylightsteelblue)   r   r   lightyellow)r   r   rZ  lime)r   r   r   	limegreen)r  r   r  linen)r   r   rO  magentamaroon)r@  r   r   mediumaquamarine)f   r   re  
mediumblue)r   r   r   mediumorchid)   r  r*  mediumpurple)r,  p      mediumseagreen)r      q   mediumslateblue){   h   r^  mediumspringgreen)r   r      mediumturquoise)r   r'  r  mediumvioletred)         midnightblue)   r  ry  	mintcream)r   r   r   	mistyrose)r   r      moccasin)r   r      navajowhite)r   r   rC  navy)r   r   r@  oldlace)   r   rO  olive)r@  r@  r   	olivedrab)r     #   orange)r   r   r   	orangered)r   E   r   orchid)r=  ry     palegoldenrod)r^     re  	palegreen)      r  paleturquoise)   r^  r^  palevioletred)rz  ry  r,  
papayawhip)r         	peachpuff)r   r=     peru)r   r  ?   pink)r         plum)   r   r  
powderblue)rl  rZ  rO  purple)r@  r   r@  red)r   r   r   	rosybrown)r  r  r  	royalblue)A   r   r  saddlebrown)r   r     salmon)r   r@  r   
sandybrown)      `   seagreen).   r   W   seashell)r   r   r^  sienna)r   R   -   silver)r  r  r  skyblue)r   r&  r   	slateblue)j   Z   r   	slategray)ry  r@  r2  	slategreysnow)r   r   r   springgreen)r   r   r   	steelblue)F   rL  rG  )r   rG  r  )r   r@  r@  )rW  r.  rW  )r   c   G   )@   rZ     )r^  rL  r^  )r   r   r|  )r   r   r   )r   r   r   )r   r   r   )r  r   r  )tantealthistletomato	turquoisevioletwheatwhite
whitesmokeyellowyellowgreenr   )r   )=r(   r   r   colorsysr   r   typingr   r   r   r   r	   pydantic_corer
   r   r   typing_extensionsr   	_internalr   #_internal._schema_generation_sharedr   r   json_schemar   warningsr   r8   rM   r*   r   r;   r   r   r   _r_255_r_comma_r_alpha_r_h_r_slr   r   r   r   r   r   r`   pir   Representationr1   r:   r<   r   r   r   r   re   r   itemsrO   )rb   kr]   s   000r   <module>r     s
    	 + 7 7 F F (  ^ ( /5c3'sCe/C)DDE
*c/"	eE5%/0%ueU8R2SST! !$ 
 +2IT

6(8*VHCzRZQ[[efxjz%H:hZWab!&VHCxz(S]^!$s5'UG:hZzZ *<<AQUB<477{ L&
r)E   r)
r)jouS#X o4 o,8sS 8sT 8svlE#s(O lc3h lE#s(O lT\]bTc los l
U38_ 
s 
U 
6yU4eS#89 yhuo y<3 3s 3 3S 3% 3\` 38E c TTOT MT /	T
 _T _T oT YT oT KT .T ]T T T -T  !T" ^#T$ o%T& 'T( })T* M+T, -T. /T0 ^1T2 3T4 5T6 7T8 9T: =;T< m=T> -?T@ .ATB {CTD /ETF OGTH ]ITJ \KTL \MTN ]OTP -QTR STT =UTV WTX YTZ .[T\ ]T^ ?_T` =aTb }cTd eTf /gTh MiTj kTl OmTn [oTp >qTr OsTt uTv wTx yTz l{T| _}T~ _T@ ATB _CTD ETF OGTH ITJ /KTL MTN OOTP QTR /STT UTV WTX ?YTZ ^[T\ O]T^ o_T` oaTb ocTd ?eTf KgTh iTj _kTl }mTn koTp qTr +sTt NuTv OwTx nyTz {T| }T~ ~T@ ~ATB MCTD ETF GTH ITJ ?KTL KMTN OTP ]QTR STT mUTV WTX oYTZ _[T\ ]T^ __T` _aTb /cTd eTf NgTh OiTj OkTl /mTn moTp 
;qTr sTt uTv =wTx oyTz .{T| }T~ T@ mATB oCTD ETF GTH ITJ KTL OMTN =OTP QTR !!gTl %3$8$8$:;DAq1a4;q =p <s   N;)O 