
    n iS                        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D             Z.dej/        z  Z0 ede           G d  d!ej1                              Z2d"eed#f         d$e"fd%Z3d"ed$e"fd&Z4dKd'e
eef         d(e
eef         d)e
eef         d*e	e         d$e"f
d+Z5dLd"e
eef         d-ed$efd.Z6d"e
deeef         d$e	e         fd/Z7dKd0ed1ed2ed3ed*e	e         d$e"fd4Z8d5ed$efd6Z9i d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXi dYdZd[d\d]d^d_d<d`dadbdcdddedfdgdhdidjdgdkdldmdndodpdqdrdsdtdudvdwdxi dydzd{d|d}d~dd~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ޓddddddddddddddddddddddddddddi 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ddi 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d7d6d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdGdHdIZ:dJ e:;                                D             Z<dS (M  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            	       J    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	dS )RGBAz1Internal use only as a representation of a color.rgbalpha_tupler   r   r   r   c                 T    || _         || _        || _        || _        ||||f| _        d S Nr   )selfr   r   r   r   s        E/var/www/findabus/venv/lib/python3.11/site-packages/pydantic/color.py__init__zRGBA.__init__&   s2    
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   !   s}        ;;0IT% TE Te THUO T T T 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*c                 4    h | ]}t          |d z  d          S )      int.0cs     r   	<setcomp>r4   D   s$    <<<AQUB<<<r    0123456789abcdefr-   zThe `Color` class is deprecated, use `pydantic_extra_types` instead. See https://docs.pydantic.dev/latest/api/pydantic_extra_types_color/.)categoryc                      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$dS )#ColorzRepresents a color.)	_original_rgbavaluer"   Nc                 D   |  |  t          |t          t          f          rt          |          | _        nct          |t
                    rt          |          | _        n9t          |t                    r|j        | _        |j        }nt          dd          || _        d S )Ncolor_errorzAvalue is not a valid color: value must be a tuple, list or string)

isinstancetuplelistparse_tupler:   str	parse_strr8   r9   r   )r   r;   s     r   r   zColor.__init__R   s    !eeT]++ 
	$U++DJJs## 	"5))DJJu%% 	DJOEE%b  
 r    r   handlerc                 8    i }|                     dd           |S )Nstringcolor)typeformat)update)clsr   rD   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`.)r9   r   s    r   originalzColor.originall   s
    ~r    FfallbackrR   c                V   | j         j        t          t          t          t          t          f         |                                           }	 t          |         S # t          $ r0}|r|                                 cY d}~S t          d          |d}~ww xY w|                                 S )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())
r:   r   r	   r?   r0   as_rgb_tupleCOLORS_BY_VALUEKeyErroras_hex
ValueError)r   rR   rgbes       r   as_namedzColor.as_namedp   s     :#uS#s]+T->->-@-@AACm&s++ m m m m;;==(((((($%deekll	m ;;== s$   A 
B$B9B?BBc           	         d | j         dd         D             }| j         j        ,|                    t          | j         j                             d                    d |D                       t          d |D                       r=d                    fdt          dt                    d	          D                       d
z   S )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.
        c                 ,    g | ]}t          |          S r+   float_to_255r1   s     r   
<listcomp>z Color.as_hex.<locals>.<listcomp>   s    :::a,q//:::r    N    c              3      K   | ]}|d V  	dS )02xNr+   r2   vs     r   	<genexpr>zColor.as_hex.<locals>.<genexpr>   s&      44A444444r    c              3   (   K   | ]}|t           v V  d S r   )repeat_colorsr1   s     r   rg   zColor.as_hex.<locals>.<genexpr>   s'      22aqM!222222r    c              3   (   K   | ]}|         V  d S r   r+   )r2   r3   rW   s     r   rg   zColor.as_hex.<locals>.<genexpr>   s'      II1VAYIIIIIIr    r   r-   #)r:   r   appendr_   joinallrangelen)r   valuesrW   s     @r   rW   zColor.as_hex   s     ;:4:bqb>::::'MM,tz'78899944V4444422622222 	JWWIIIIaVa0H0HIIIIIFV|r    c                    | j         j        Qd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          |                                 d           d	S )zFColor as an `rgb(<r>, <g>, <b>)` or `rgba(<r>, <g>, <b>, <a>)` string.Nzrgb(, )zrgba(r-   )r:   r   r_   r   r   r   round_alpha_floatrO   s    r   as_rgbzColor.as_rgb   s    :#s,tz|44ssTZ\8R8RssVbcgcmcoVpVpssss4TZ\22 4 4l4:<6P6P 4 4T`aeakamTnTn 4 4**,,a004 4 4r    r   r   c                    d | j         dd         D             \  }}}|)| j         j        |||fS ||||                                 fS |r||||                                 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   4   K   | ]}t          |          V  d S r   r^   r1   s     r   rg   z%Color.as_rgb_tuple.<locals>.<genexpr>   s(      ;;q<??;;;;;;r    Nra   )r:   r   rv   )r   r   r   r   r   s        r   rT   zColor.as_rgb_tuple   s     <;DJrrN;;;1a=z'!Qw!Q 1 1 3 333 	aD--//// a7Nr    c                     | j         j        ,|                     d          \  }}}d|dz  dd|dd|dd	S |                     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.NFrx   zhsl(h  z0.0frs   z0.0%rt   Tr-   )r:   r   as_hsl_tupleru   )r   hslias        r   as_hslzColor.as_hsl   s    :#((u(55HAq">!c'>>>!>>>B>>>>>++$+77KAq"aM!c'MMM!MMMBMMMuQ{{MMMMr    c                    t          | j        j        | j        j        | j        j                  \  }}}|)| j        j        |||fS ||||                                 fS |r||||                                 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   r:   r   r   r   r   rv   )r   r   r~   lr   s        r   r}   zColor.as_hsl_tuple   s    " TZ\4:<FF1a=z'!Qw!Q 1 1 3 333 	aD--//// a7Nr    c                 6    | j         j        dn| j         j        S )Nr   )r:   r   rO   s    r   rv   zColor._alpha_float   s    J$,qq$*2BBr    sourcec                 Z    t          j        | j        t          j                              S )N)serialization)r   "with_info_plain_validator_function	_validateto_string_ser_schema)rK   r   rD   s      r   __get_pydantic_core_schema__z"Color.__get_pydantic_core_schema__   s.     =M)I)K)K
 
 
 	
r    _Color__input_value_c                      | |          S r   r+   )rK   r   r   s      r   r   zColor._validate   s    s=!!!r    c                 .    |                      d          S )NTrQ   )r[   rO   s    r   __str__zColor.__str__   s    }}d}+++r    _repr.ReprArgsc                 d    d |                      d          fgd|                                 fgz   S )NTrQ   rY   )r[   rT   rO   s    r   __repr_args__zColor.__repr_args__   s7    t}}d}3345%ARARATAT9U8VVVr    otherc                     t          |t                    o)|                                 |                                k    S r   )r>   r8   rT   )r   r   s     r   __eq__zColor.__eq__   s4    %''WD,=,=,?,?5CUCUCWCW,WWr    c                 D    t          |                                           S r   )hashrT   rO   s    r   __hash__zColor.__hash__   s    D%%''(((r    )r"   r   )%r%   r&   r'   r(   r)   	ColorTyper   classmethodr   r
   _GetJsonSchemaHandlerr   rM   rP   boolrB   r[   rW   rw   r   
ColorTuplerT   r   HslColorTupler}   r*   rv   rH   r   r   r   r   r   r   r   r0   r   r+   r    r   r8   r8   H   s        $Ii D    $ %0;P	   [)     ,1 ! ! !D !S ! ! ! !4    $     7;   Xd^ z    4N N N N N 7;   Xd^ }    :Ce C C C C 
#Y
)13%2C)D
		
 
 
 [
 "c "c "g " " " [", , , , ,W W W WXC XD X X X X)# ) ) ) ) ) )r    r8   r;   .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.
    ra   c              3   4   K   | ]}t          |          V  d S r   parse_color_valuere   s     r   rg   zparse_tuple.<locals>.<genexpr>  s+      77A$Q''777777r    N   c              3   4   K   | ]}t          |          V  d S r   r   re   s     r   rg   zparse_tuple.<locals>.<genexpr>  s+      ;;A$Q'';;;;;;r    r=   z:value is not a valid color: tuples must have length 3 or 4)rp   r   parse_float_alphar   )r;   r   r   r   s       r   rA   rA     s     5zzQ777771aAq!T"""	Uq;;rr;;;1aAq!.uQx88999!-1mnnnr    c                    |                                  }	 t          |         \  }}}t          |||d          S # t          $ r Y nw xY wt	          j        t          |          }|rT|                                ^ }}d |D             \  }}}|rt          |dz  d          dz  }nd}t          ||||          S t	          j        t          |          }|rQ|                                ^ }}d |D             \  }}}|rt          |d          dz  }nd}t          ||||          S t	          j        t          |          pt	          j        t          |          }|rt          |                                 S t	          j        t          |          pt	          j        t          |          }|rt          |                                 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          V  dS )r-   r.   Nr/   re   s     r   rg   zparse_str.<locals>.<genexpr>7  s.      //a3q1ub>>//////r    r-   r.      c              3   6   K   | ]}t          |d           V  dS )r.   Nr/   re   s     r   rg   zparse_str.<locals>.<genexpr>A  s*      ++!3q"::++++++r    r=   zBvalue is not a valid color: string not recognised as a valid color)lowerCOLORS_BY_NAMEints_to_rgbarV   re	fullmatchr_hex_shortgroupsr0   
r_hex_longr_rgbr_rgb_v4_styler_hslr_hsl_v4_style	parse_hslr   )	r;   value_lowerr   r   r   mrY   r   r   s	            r   rC   rC     s   ( ++--K+ -1a Aq!T***    
 	[+..A ,((**a//3///1a 	%(Q^^c%9EEEAq!U+++
Z--A ,((**a++s+++1a 	2JJ$EEEAq!U+++
UK((UBL,U,UA )QXXZZ((
UK((UBL,U,UA &!((**%%
m-q
r
rrs   9 
AAr   r   r   r   c                     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<P<PRcdiRjRjkkkr    r   max_valc                     	 t          |           }n# t          $ r t          dd          w xY wd|cxk    r|k    rn n||z  S t          ddd|i          )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.
    r=   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*   rX   r   )r;   r   rG   s      r   r   r   b  s    te t t t!-1rssstEWw!Z 
 
 	
s    -c                 d   | dS 	 t          | t                    r0|                     d          rt          | dd                   dz  }nt          |           }n# t          $ r t          dd          w xY wt          j        |d          rdS d|cxk    rdk    rn n|S t          dd	          )
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   r=   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)r>   rB   endswithr*   rX   r   mathisclose)r;   r   s     r   r   r   }  s     }tseS!! 	!ennS&9&9 	!%*%%+EE%LLE s s s!-1qrrrs |E1 yt	
eq!-1wxxxs   AA A6r~   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degr|   radr   )r   r*   radsr   r   r   )r~   r   r   r   r   s_valuel_valueh_valuer   r   r   s              r   r   r     s     )c224EeS4Q4QWGAhhG-C-#%	E		D.4' A+'733GAq!1a*511222r    r3   c                 @    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   )r0   ru   )r3   s    r   r_   r_     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)   "   r:  floralwhite)r   r   r   forestgreen)r:  r  r:  fuchsia)r   r   r   	gainsboro)r   r   r   
ghostwhite)r   r   r   gold)r   r   r   	goldenrod)   r       gray)   rE  rE  green)r   rE  r   greenyellow)   r   r  greyhoneydew)r   r   r   hotpink)r   r      	indianred)r   \   rN  indigo)K   r      ivory)r   r   r   khaki)r      r  lavender)rT  rT  r   lavenderblush)r   r   r   	lawngreen)|      r   lemonchiffon)r   r   r   	lightblue)rH     rT  
lightcoral)r   rE  rE  	lightcyan)   r   r   lightgoldenrodyellow)r   r   r   	lightgray)r/  r/  r/  
lightgreen)r7     r7  	lightgrey	lightpink)r         lightsalmon)r   r   r   lightseagreen)rC  r9     lightskyblue)r   r+  r   lightslategray)w      r  lightslategreylightsteelblue)   r   r   lightyellow)r   r   r_  lime)r   r   r   	limegreen)r  r   r  linen)r   r   rT  magentamaroon)rE  r   r   mediumaquamarine)f   r   rj  
mediumblue)r   r   r   mediumorchid)   r  r/  mediumpurple)r1  p      mediumseagreen)r     q   mediumslateblue){   h   rc  mediumspringgreen)r   r      mediumturquoise)r%  r,  r  mediumvioletred)         midnightblue)   r  r~  	mintcream)r   r   r   	mistyrose)r   r      moccasin)r   r      navajowhite)r   r   rH  navy)r   r   rE  oldlace)   r   rT  olive)rE  rE  r   	olivedrab)r     #   orange)r   r   r   	orangered)r   E   r   orchid)rB  r~     palegoldenrod)rc     rj  	palegreen)      r  paleturquoise)   rc  rc  palevioletred)r  r~  r1  
papayawhip)r         	peachpuff)r   rB     peru)r   r  ?   pink)r         plum)   r   r  
powderblue)rq  r_  rT  purple)rE  r   rE  red)r   r   r   	rosybrown)r#  r"  r"  	royalblue)A   r   r  saddlebrown)r  r     salmon)r   rE  r   
sandybrown)      `   seagreen).   r  W   seashell)r   r   rc  sienna)r   R   -   silver)r  r  r  skyblue)r   r+  r   	slateblue)j   Z   r   	slategray)r~  rE  r7  	slategreysnow)r   r   r   springgreen)r   r   r   	steelblue)F   rQ  rL  )r   rL  r  )r   rE  rE  )r\  r3  r\  )r   c   G   )@   r_     )rc  rQ  rc  )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yellowgreenc                     i | ]\  }}||	S r+   r+   )r2   krf   s      r   
<dictcomp>r  \  s    ;;;DAq1a;;;r    r   )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   r?   r0   r*   r   rB   r   r   r   _r_255_r_comma_r_alpha_r_h_r_slr   r   r   r   r   r   ri   pir   Representationr8   rA   rC   r   r   r   r   r_   r   itemsrU   r+   r    r   <module>r     s     				 + + + + + + + + 7 7 7 7 7 7 7 7 7 7 7 7 7 7 F F F F F F F F F F ( ( ( ( ( (       ^ ^ ^ ^ ^ ^ ( ( ( ( ( ( / / / / / /5c3'sCe/C)DDE
*c/"	eE5%/0%ueU8R2SST! ! ! ! ! ! ! !$ 
 +2IT
fff6f8fVfffRZfffbbxbbb%bbHbhbbb^&^^V^^^^(^^^Z$ZZ5ZZUZZhZZZ =<);<<<47{ L&  
r) r) r) r) r)E  r) r) 
r)jouS#X o4 o o o o,8sS 8sT 8s 8s 8s 8svl lE#s(O lc3h lE#s(O lT\]bTc los l l l l
 
U38_ 
s 
U 
 
 
 
6yU4eS#89 yhuo y y y y<3 3 3s 3 3S 3% 3\` 3 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 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 T 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 T 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 T 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 T 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 T 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 T 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 TR !!gT T Tl <;N$8$8$:$:;;;r    