§
    #ˆtj£4  ã                  óè  — U d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
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 d dlmZmZ d dlmZ d dlmZ d d	lmZmZ er: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( d dl)m*Z* e e"z  e$z  e*z  e&z  e(z  Z+de,d<   e	j-        e	j.        fZ/ej        dk    re/e	j0        fz  Z/ ej1        d¦  «        Z2 G d„ d¦  «        Z3 G d„ d¦  «        Z4dS )é    )ÚannotationsN)Ú	GeneratorÚSequence)Ú
formatdate)Ú	FrameType)ÚTYPE_CHECKINGÚ	TypeAlias)Ústyle)Úasyncio_run)ÚSTARTUP_FAILUREÚConfig)ÚH11Protocol)ÚHttpToolsProtocol)ÚZttpProtocol)ÚWebSocketProtocol)ÚWebSocketsSansIOProtocol)Ú
WSProtocolr	   Ú	ProtocolsÚwin32zuvicorn.errorc                  ó   — e Zd ZdZdd„ZdS )ÚServerStatezP
    Shared servers state that is available between all protocol instances.
    ÚreturnÚNonec                ón   — d| _         t          ¦   «         | _        t          ¦   «         | _        g | _        d S ©Nr   )Útotal_requestsÚsetÚconnectionsÚtasksÚdefault_headers©Úselfs    úL/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/uvicorn/server.pyÚ__init__zServerState.__init__3   s/   € ØˆÔÝ+.©5¬5ˆÔÝ.1©e¬eˆŒ
Ø:<ˆÔÐÐó    N©r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r$   © r%   r#   r   r   .   s2   € € € € € ðð ð=ð =ð =ð =ð =ð =r%   r   c                  ó´   — e Zd Zdd„Zej        d d„¦   «         Zd!d"d„Zd!d"d„Zd!d"d„Z	d!d"d„Z
d#d„Zd$d„Zd%d„Zd!d"d„Zd$d„Zej        d&d„¦   «         Zd'd„ZdS )(ÚServerÚconfigr   r   r   c                ó€   — || _         t          ¦   «         | _        d| _        d| _        d| _        d| _        g | _        d S )NFg        )r.   r   Úserver_stateÚstartedÚshould_exitÚ
force_exitÚlast_notifiedÚ_captured_signals)r"   r.   s     r#   r$   zServer.__init__;   sA   € ØˆŒÝ'™MœMˆÔàˆŒØ ˆÔØˆŒØ ˆÔà,.ˆÔÐÐr%   ú
int | Nonec                óv   — | j         j        €d S | j         j        t          j        d| j         j        ¦  «        z   S r   )r.   Úlimit_max_requestsÚrandomÚrandintÚlimit_max_requests_jitterr!   s    r#   r8   zServer.limit_max_requestsF   s3   € àŒ;Ô)Ð1Ø�4ØŒ{Ô-µ´¸qÀ$Ä+ÔBgÑ0hÔ0hÑhÐhr%   NÚsocketsúlist[socket.socket] | Nonec                óz   — t          |                      |¬¦  «        | j                             ¦   «         ¬¦  «        S )N©r<   )Úloop_factory)r   Úserver.   Úget_loop_factory©r"   r<   s     r#   Úrunz
Server.runL   s1   € Ý˜4Ÿ:š:¨g˜:Ñ6Ô6ÀTÄ[×EaÒEaÑEcÔEcÐdÑdÔdÐdr%   c              ƒ  óš   K  — |                       ¦   «         5  |                      |¦  «        ƒ d {V —† d d d ¦  «         d S # 1 swxY w Y   d S ©N)Úcapture_signalsÚ_serverC   s     r#   rA   zServer.serveO   s    è è € Ø×!Ò!Ñ#Ô#ð 	'ð 	'Ø—+’+˜gÑ&Ô&Ð&Ð&Ð&Ð&Ð&Ð&Ð&ð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'ð 	'ð 	's   —A Á AÁAc              ƒ  óL  K  — t          j        ¦   «         }| j        }|j        s|                     ¦   «          |                     |¦  «        | _        d}dt          dd¬¦  «        z   dz   }t           	                    ||d|i¬¦  «         |  
                    |¬	¦  «        ƒ d {V —† | j        s|                      ¦   «         ƒ d {V —† | j        rV|                      |¬	¦  «        ƒ d {V —† d
}dt          dd¬¦  «        z   dz   }t           	                    ||d|i¬¦  «         d S d S )NzStarted server process [%d]zStarted server process [z%dÚcyan)Úfgú]Úcolor_message©Úextrar?   zFinished server process [%d]zFinished server process [)ÚosÚgetpidr.   ÚloadedÚloadÚlifespan_classÚlifespanr
   ÚloggerÚinfoÚstartupr2   Ú	main_loopr1   Úshutdown)r"   r<   Ú
process_idr.   ÚmessagerM   s         r#   rH   zServer._serveS   sW  è è € Ý”Y‘[”[ˆ
à”ˆØŒ}ð 	Ø�KŠK‰MŒMˆMà×-Ò-¨fÑ5Ô5ˆŒà/ˆØ2µU¸4ÀFÐ5KÑ5KÔ5KÑKÈcÑQˆÝ�Š�G˜Z°ÀÐ/OˆÑPÔPÐPà�lŠl 7ˆlÑ+Ô+Ð+Ð+Ð+Ð+Ð+Ð+Ð+ØÔð 	#Ø—.’.Ñ"Ô"Ð"Ð"Ð"Ð"Ð"Ð"Ð"ØŒ<ð 	UØ—-’-¨�-Ñ0Ô0Ð0Ð0Ð0Ð0Ð0Ð0Ð0à4ˆGØ7½%ÀÈÐ:PÑ:PÔ:PÑPÐSVÑVˆMÝ�KŠK˜ °OÀ]Ð3SˆKÑTÔTÐTÐTÐTð	Uð 	Ur%   c              ƒ  óä  ‡ ‡K  — ‰ j                              ¦   «         ƒ d {V —† ‰ j         j        rt          j        t
          ¦  «         ‰ j        Š	 ddˆˆ fd„}t          j        ¦   «         }|�†dd„}g ‰ _	        |D ]t}t          j        ¦   «         d	k    }‰j        d
k    r|r ||¦  «        }|                     ||‰j        ‰j        ¬¦  «        ƒ d {V —†}‰ j	                             |¦  «         Œu|}�nÜ‰j        �rt%          j        ‰j        t$          j        t$          j        ¦  «        }|                     ||‰j        ‰j        ¬¦  «        ƒ d {V —†}|j        €J ‚|j        }|g‰ _	        �nc‰j        �¥d}	t0          j                             ‰j        ¦  «        rt1          j        ‰j        ¦  «        j        }	|                     |‰j        ‰j        ‰j        ¬¦  «        ƒ d {V —†}t1          j        ‰j        |	¦  «         |j        €J ‚|j        }|g‰ _	        n·	 |                     |‰j        ‰j         ‰j        ‰j        ¬¦  «        ƒ d {V —†}ni# tB          $ r\}
tD           #                    |
¦  «         ‰ j          $                    ¦   «         ƒ d {V —† t          j        t
          ¦  «         Y d }
~
nd }
~
ww xY w|j        €J ‚|j        }|g‰ _	        |€‰  %                    |¦  «         n	 d‰ _&        d S )NÚ_loopú asyncio.AbstractEventLoop | Noner   úasyncio.Protocolc                óT   •— ‰                      ‰‰j        ‰j        j        | ¬¦  «        S )N)r.   r0   Ú	app_stater^   )Úhttp_protocol_classr0   rU   Ústate)r^   r.   r"   s    €€r#   Úcreate_protocolz'Server.startup.<locals>.create_protocolq   s6   ø€ ð ×-Ò-ØØ!Ô.Øœ-Ô-Øð	 .ñ ô ð r%   Úsockúsocket.SocketTypec                óp   — ddl m} |                      t          j        ¦   «         ¦  «        } ||¦  «        S )Nr   )Ú	fromshare)Úsocketri   ÚsharerP   rQ   )rf   ri   Ú	sock_datas      r#   Ú_share_socketz%Server.startup.<locals>._share_socket‚   s=   € ð
 -Ð,Ð,Ð,Ð,Ð,à ŸJšJ¥r¤y¡{¤{Ñ3Ô3�	Ø �y Ñ+Ô+Ð+r%   ÚWindowsé   )rf   ÚsslÚbacklogi¶  )Úpathrp   rq   )ÚhostÚportrp   rq   TrF   )r^   r_   r   r`   )rf   rg   r   rg   )'rU   rX   r2   ÚsysÚexitr   r.   ÚasyncioÚget_running_loopÚserversÚplatformÚsystemÚworkersÚcreate_serverrp   rq   ÚappendÚfdrj   ÚfromfdÚAF_UNIXÚSOCK_STREAMr<   ÚudsrP   rr   ÚexistsÚstatÚst_modeÚcreate_unix_serverÚchmodrs   rt   ÚOSErrorrV   ÚerrorrZ   Ú_log_started_messager1   )r"   r<   re   Úlooprm   rf   Ú
is_windowsÚserverÚ	listenersÚ	uds_permsÚexcr.   s   `          @r#   rX   zServer.startupj   s“  øøè è € ØŒm×#Ò#Ñ%Ô%Ð%Ð%Ð%Ð%Ð%Ð%Ð%ØŒ=Ô$ð 	&ÝŒH•_Ñ%Ô%Ð%à”ˆð 7;ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	õ Ô'Ñ)Ô)ˆð Ðð,ð ,ð ,ð ,ð >@ˆDŒLØð ,ð ,�Ý%œ_Ñ.Ô.°)Ò;�
Ø”> AÒ%Ð%¨*Ð%Ø(˜=¨Ñ.Ô.�DØ#×1Ò1°/ÈÐRXÔR\ÐflÔftÐ1ÑuÔuÐuÐuÐuÐuÐuÐu�Ø”×#Ò# FÑ+Ô+Ð+Ð+ØˆI‰IàŒYÐ"å”= ¤­F¬N½FÔ<NÑOÔOˆDØ×-Ò-¨oÀDÈfÌjÐbhÔbpÐ-ÑqÔqÐqÐqÐqÐqÐqÐqˆFØ”>Ð-Ð-Ð-ØœˆIØ"˜8ˆDŒL‰LàŒZÐ#àˆIÝŒw�~Š~˜fœjÑ)Ô)ð 8ÝœG F¤JÑ/Ô/Ô7�	Ø×2Ò2Ø f¤j°f´jÈ&Ì.ð 3ñ ô ð ð ð ð ð ð ˆFõ ŒH�V”Z Ñ+Ô+Ð+Ø”>Ð-Ð-Ð-ØœˆIØ"˜8ˆDŒLˆLð*Ø#×1Ò1Ø#ØœØœØœ
Ø"œNð  2ñ  ô  ð ð ð ð ð ð ��øõ ð *ð *ð *Ý—’˜SÑ!Ô!Ð!Ø”m×,Ò,Ñ.Ô.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ý”�Ñ)Ô)Ð)Ð)Ð)Ð)Ð)Ð)øøøøð*øøøð
 ”>Ð-Ð-Ð-ØœˆIØ"˜8ˆDŒLàˆ?Ø×%Ò% iÑ0Ô0Ð0Ð0ð àˆŒˆˆs   È4I É
J5ÉAJ0Ê0J5r�   úSequence[socket.SocketType]c                óþ  — | j         }|j        �7|d         }t                               d|                     ¦   «         ¦  «         d S |j        �"t                               d|j        ¦  «         d S d}|j        €dn|j        }d|v rd}|j        }|dk    r |d                              ¦   «         d         }|j        rd	nd
}d|› d�}dt          |d¬¦  «        z   dz   }	t                               ||||d|	i¬¦  «         d S )Nr   z3Uvicorn running on socket %s (Press CTRL+C to quit)z8Uvicorn running on unix socket %s (Press CTRL+C to quit)z
%s://%s:%dz0.0.0.0ú:z%s://[%s]:%dro   ÚhttpsÚhttpzUvicorn running on z (Press CTRL+C to quit)T)ÚboldrM   rN   )
r.   r   rV   rW   Úgetsocknamerƒ   rs   rt   rp   r
   )
r"   r�   r.   rf   Úaddr_formatrs   rt   Úprotocol_namer\   rM   s
             r#   r‹   zServer._log_started_messageÆ   s<  € Ø”ˆàŒ9Ð Ø˜Q”<ˆDÝ�KŠKØEØ× Ò Ñ"Ô"ñô ð ð ð ð
 ŒZÐ#Ý�KŠKÐRÐTZÔT^Ñ_Ô_Ð_Ð_Ð_ð 'ˆKØ &¤Ð 3�9�9¸¼ˆDØ�dˆ{ˆ{à,�à”;ˆDØ�qŠyˆyØ  ”|×/Ò/Ñ1Ô1°!Ô4�à'-¤zÐ=˜G˜G°vˆMØP¨KÐPÐPÐPˆGØ1µE¸+ÈDÐ4QÑ4QÔ4QÑQÐTmÑmˆMÝ�KŠKØØØØØ&¨Ð6ð ñ ô ð ð ð r%   c              ƒ  óÎ   K  — d}|                       |¦  «        ƒ d {V —†}|sC|dz  }|dz  }t          j        d¦  «        ƒ d {V —† |                       |¦  «        ƒ d {V —†}|¯Ad S d S )Nr   ro   i / çš™™™™™¹?)Úon_tickrw   Úsleep)r"   Úcounterr2   s      r#   rY   zServer.main_loopé   s¬   è è € ØˆØ ŸLšL¨Ñ1Ô1Ð1Ð1Ð1Ð1Ð1Ð1ˆØð 	6Ø�q‰LˆGØ Ñ&ˆGÝ”- Ñ$Ô$Ð$Ð$Ð$Ð$Ð$Ð$Ð$Ø $§¢¨WÑ 5Ô 5Ð5Ð5Ð5Ð5Ð5Ð5ˆKð	 ð 	6ð 	6ð 	6ð 	6ð 	6r%   rŸ   ÚintÚboolc              ƒ  óô  K  — |dz  dk    r­t          j         ¦   «         }t          |d¬¦  «                             ¦   «         }| j        j        rd|fg}ng }|| j        j        z   | j        _        | j        j        �>|| j	        z
  | j        j
        k    r&|| _	        | j                             ¦   «         ƒ d {V —† | j        rdS | j        }|�-| j        j        |k    rt                               d|¦  «         dS dS )Né
   r   T)Úusegmts   datez:Maximum request limit of %d exceeded. Terminating process.F)Útimer   Úencoder.   Údate_headerÚencoded_headersr0   r    Úcallback_notifyr4   Útimeout_notifyr2   r8   r   rV   rW   )r"   rŸ   Úcurrent_timeÚcurrent_dater§   Úmax_requestss         r#   r�   zServer.on_tickò   s  è è € à�R‰<˜1ÒÐÝœ9™;œ;ˆLÝ% l¸4Ð@Ñ@Ô@×GÒGÑIÔIˆLàŒ{Ô&ð !Ø '¨Ð6Ð7��à �à0;¸d¼kÔ>YÑ0YˆDÔÔ-ð Œ{Ô*Ð6Ø $Ô"4Ñ4°t´{Ô7QÒQÐQØ)5�DÔ&Øœ+×5Ò5Ñ7Ô7Ð7Ð7Ð7Ð7Ð7Ð7Ð7ð Ôð 	Ø�4àÔ.ˆØÐ#¨Ô(9Ô(HÈLÒ(XÐ(XÝ�KŠKÐTÐVbÑcÔcÐcØ�4àˆur%   c              ƒ  óà  K  — t                                d¦  «         | j        D ]}|                     ¦   «          Œ|pg D ]}|                     ¦   «          Œt	          | j        j        ¦  «        D ]}|                     ¦   «          Œt          j	        d¦  «        ƒ d {V —† 	 t          j
        |                      ¦   «         | j        j        ¬¦  «        ƒ d {V —† nl# t          j        $ rZ t                                dt!          | j        j        ¦  «        ¦  «         | j        j        D ]}|                     d¬¦  «         ŒY nw xY w| j        s!| j                             ¦   «         ƒ d {V —† d S d S )NzShutting downrœ   )Útimeoutz=Cancel %s running task(s), timeout graceful shutdown exceededz2Task cancelled, timeout graceful shutdown exceeded)Úmsg)rV   rW   ry   ÚcloseÚlistr0   r   rZ   rw   rž   Úwait_forÚ_wait_tasks_to_completer.   Útimeout_graceful_shutdownÚTimeoutErrorrŠ   Úlenr   Úcancelr3   rU   )r"   r<   rŽ   rf   Ú
connectionÚts         r#   rZ   zServer.shutdown  sÙ  è è € Ý�Š�OÑ$Ô$Ð$ð ”lð 	ð 	ˆFØ�LŠL‰NŒNˆNˆNØ�M˜rð 	ð 	ˆDØ�JŠJ‰LŒLˆLˆLõ ˜tÔ0Ô<Ñ=Ô=ð 	"ð 	"ˆJØ×ÒÑ!Ô!Ð!Ð!ÝŒm˜CÑ Ô Ð Ð Ð Ð Ð Ð Ð ð	SÝÔ"Ø×,Ò,Ñ.Ô.ØœÔ=ðñ ô ð ð ð ð ð ð ð ð øõ Ô#ð 	Sð 	Sð 	SÝ�LŠLØOÝ�DÔ%Ô+Ñ,Ô,ñô ð ð Ô&Ô,ð Sð S�Ø—’ÐQ�ÑRÔRÐRÐRðSð Sð	Søøøð Œð 	+Ø”-×(Ò(Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Ð*ð	+ð 	+s   Â!8C ÃA&EÅEc              ƒ  ó  K  — | j         j        rc| j        s\d}t                               |¦  «         | j         j        r4| j        s-t          j        d¦  «        ƒ d {V —† | j         j        r| j        ¯-| j         j        rc| j        s\d}t                               |¦  «         | j         j        r4| j        s-t          j        d¦  «        ƒ d {V —† | j         j        r| j        ¯-| j        D ]}| 	                    ¦   «         ƒ d {V —† Œd S )Nz8Waiting for connections to close. (CTRL+C to force quit)rœ   z@Waiting for background tasks to complete. (CTRL+C to force quit))
r0   r   r3   rV   rW   rw   rž   r   ry   Úwait_closed)r"   r°   rŽ   s      r#   r´   zServer._wait_tasks_to_complete0  sL  è è € àÔÔ(ð 	)°´ð 	)ØLˆCÝ�KŠK˜ÑÔÐØÔ#Ô/ð )¸¼ð )Ý”m CÑ(Ô(Ð(Ð(Ð(Ð(Ð(Ð(Ð(ð Ô#Ô/ð )¸¼ð )ð ÔÔ"ð 	)¨4¬?ð 	)ØTˆCÝ�KŠK˜ÑÔÐØÔ#Ô)ð )°$´/ð )Ý”m CÑ(Ô(Ð(Ð(Ð(Ð(Ð(Ð(Ð(ð Ô#Ô)ð )°$´/ð )ð ”lð 	'ð 	'ˆFØ×$Ò$Ñ&Ô&Ð&Ð&Ð&Ð&Ð&Ð&Ð&Ð&ð	'ð 	'r%   úGenerator[None, None, None]c              #  ó²  ‡ K  — t          j        ¦   «         t          j        ¦   «         urd V — d S ˆ fd„t          D ¦   «         }	 d V — |                     ¦   «         D ]\  }}t          j        ||¦  «         Œn4# |                     ¦   «         D ]\  }}t          j        ||¦  «         Œw xY wt          ‰ j        ¦  «        D ]}t          j        |¦  «         Œd S )Nc                óF   •— i | ]}|t          j         |‰j        ¦  «        “ŒS r+   )ÚsignalÚhandle_exit)Ú.0Úsigr"   s     €r#   ú
<dictcomp>z*Server.capture_signals.<locals>.<dictcomp>J  s*   ø€ ÐbÐbÐbÈ3˜S¥&¤-°°TÔ5EÑ"FÔ"FÐbÐbÐbr%   )	Ú	threadingÚcurrent_threadÚmain_threadÚHANDLED_SIGNALSÚitemsrÀ   Úreversedr5   Úraise_signal)r"   Úoriginal_handlersrÃ   ÚhandlerÚcaptured_signals   `    r#   rG   zServer.capture_signalsB  s  øè è € õ Ô#Ñ%Ô%­YÔ-BÑ-DÔ-DÐDÐDØˆEˆEˆEØˆFð cÐbÐbÐbÕRaÐbÑbÔbÐð	,ØˆEˆEˆEà 1× 7Ò 7Ñ 9Ô 9ð ,ð ,‘��WÝ”˜c 7Ñ+Ô+Ð+Ð+ð,øÐ 1× 7Ò 7Ñ 9Ô 9ð ,ð ,‘��WÝ”˜c 7Ñ+Ô+Ð+Ð+ð,øøøõ
  (¨Ô(>Ñ?Ô?ð 	1ð 	1ˆOÝÔ Ñ0Ô0Ð0Ð0ð	1ð 	1s   ÁA8 Á81B)rÃ   ÚframeúFrameType | Nonec                óˆ   — | j                              |¦  «         | j        r|t          j        k    r	d| _        d S d| _        d S )NT)r5   r~   r2   rÀ   ÚSIGINTr3   )r"   rÃ   rÏ   s      r#   rÁ   zServer.handle_exitV  sI   € ØÔ×%Ò% cÑ*Ô*Ð*ØÔð 	$ ¥v¤}Ò 4Ð 4Ø"ˆDŒOˆOˆOà#ˆDÔÐÐr%   )r.   r   r   r   )r   r6   rF   )r<   r=   r   r   )r�   r’   r   r   r&   )rŸ   r    r   r¡   )r   r½   )rÃ   r    rÏ   rÐ   r   r   )r'   r(   r)   r$   Ú	functoolsÚcached_propertyr8   rD   rA   rH   rX   r‹   rY   r�   rZ   r´   Ú
contextlibÚcontextmanagerrG   rÁ   r+   r%   r#   r-   r-   :   sg  € € € € € ð	/ð 	/ð 	/ð 	/ð Ôðið ið iñ Ôðið
eð eð eð eð eð'ð 'ð 'ð 'ð 'ðUð Uð Uð Uð Uð.Zð Zð Zð Zð Zðx!ð !ð !ð !ðF6ð 6ð 6ð 6ðð ð ð ð<+ð +ð +ð +ð +ð@'ð 'ð 'ð 'ð$ Ôð1ð 1ð 1ñ Ôð1ð&$ð $ð $ð $ð $ð $r%   r-   )5Ú
__future__r   rw   rÕ   rÓ   ÚloggingrP   rz   r9   rÀ   rj   ru   rÅ   r¥   Úcollections.abcr   r   Úemail.utilsr   Útypesr   Útypingr   r	   Úuvicorn._ansir
   Úuvicorn._compatr   Úuvicorn.configr   r   Úuvicorn.protocols.http.h11_implr   Ú%uvicorn.protocols.http.httptools_implr   Ú uvicorn.protocols.http.zttp_implr   Ú,uvicorn.protocols.websockets.websockets_implr   Ú3uvicorn.protocols.websockets.websockets_sansio_implr   Ú)uvicorn.protocols.websockets.wsproto_implr   r   Ú__annotations__rÒ   ÚSIGTERMrÈ   ÚSIGBREAKÚ	getLoggerrV   r   r-   r+   r%   r#   ú<module>rê      st  ðØ "Ð "Ð "Ð "Ð "Ð "Ð "à €€€Ø Ð Ð Ð Ø Ð Ð Ð Ø €€€Ø 	€	€	€	Ø €€€Ø €€€Ø €€€Ø €€€Ø 
€
€
€
Ø Ð Ð Ð Ø €€€Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø "Ð "Ð "Ð "Ð "Ð "Ø Ð Ð Ð Ð Ð Ø +Ð +Ð +Ð +Ð +Ð +Ð +Ð +à Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2àð 
Ø;Ð;Ð;Ð;Ð;Ð;ØGÐGÐGÐGÐGÐGØ=Ð=Ð=Ð=Ð=Ð=ØNÐNÐNÐNÐNÐNØ\Ð\Ð\Ð\Ð\Ð\ØDÐDÐDÐDÐDÐDð 	Ð'Ñ'¨,Ñ6¸ÑCÐFWÑWÐZrÑrð ð ð ð ñ ð
 „MØ
„Nð€ð „<�7ÒÐØ˜œÐ)Ñ)€Oà	ˆÔ	˜?Ñ	+Ô	+€ð	=ð 	=ð 	=ð 	=ð 	=ñ 	=ô 	=ð 	=ða$ð a$ð a$ð a$ð a$ñ a$ô a$ð a$ð a$ð a$r%   