Ë
    Ü_ËiÝE  ã                  ó¤  — U d Z ddlmZ ddlZddlZddlZddlZddlmZ ddl	m
Z
mZmZmZ ddlZddlmZ ddlmZmZmZmZ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# ddedœiZ$de%d<   ej
                  jM                  d«      r; ejN                  «       Z(e(e( ejR                  «        ejT                  «       dœe$d<   �nfej
                  dk(  rK ejN                  «        ejN                  «        ejR                  «        ejV                  «       d   dœe$d<   �nej
                  dk(  rn ejX                  «       Z-ddej\                  j_                  d«      xs  ejR                  «       dja                   e1e2e-dd «      «      de-d   xs d› �z   dœe$d<   n� ejf                   ejN                  «        ejT                  «        ejh                  «       «      Z5 ejN                  «       dja                  e5dd  D � cg c]  } | sŒ| ‘Œ	 c} «       ejR                  «       e5d    dœe$d<    ejl                  «       jM                  d!«      rjdja                   ejl                  «       dja                   e1e2ejn                  «      «      d"dja                   e1e2ejp                  «      «      z  f«      e$d#<   nEdja                   ejl                  «       dja                   e1e2ejp                  «      «      f«      e$d#<   d$Z9d%Z:d&Z;d'Z<d6d(„Z=d7d)„Z>d7d*„Z?d7d+„Z@d7d,„ZAd7d-„ZBd8d.„ZCd9d/„ZDd0ZEd:d1„ZFd2j�                  d3«        G d4„ d5«      ZHyc c} w );z�Pool options for AsyncMongoClient/MongoClient.

.. seealso:: This module is compatible with both the synchronous and asynchronous PyMongo APIs.
é    )ÚannotationsN)ÚPath)ÚTYPE_CHECKINGÚAnyÚMutableMappingÚOptional)Ú__version__)ÚMAX_CONNECTINGÚMAX_IDLE_TIME_SECÚMAX_POOL_SIZEÚMIN_POOL_SIZEÚWAIT_QUEUE_TIMEOUTÚhas_c)ÚMongoCredential)ÚCompressionSettings)Ú
DriverInfo)Ú_EventListeners)Ú
SSLContext)Ú	ServerApiÚdriverÚPyMongo)ÚnameÚversionúdict[str, Any]Ú	_METADATAÚlinux)Útyper   Úarchitecturer   ÚosÚdarwinÚwin32ÚWindowsÚPROCESSOR_ARCHITECTUREú.é   z-SPéÿÿÿÿÚ0ú é   ÚPyPyz(Python %s)Úplatformz/.dockerenvÚKUBERNETES_SERVICE_HOSTÚdockerÚ
kubernetesc                 óš   — i } t        t        «      j                  «       r	t        | d<   t	        j
                  t        «      r	t        | d<   | S )zŽReturns the runtime and orchestrator of a container.
    If neither value is present, the metadata client.env.container field will be omitted.ÚruntimeÚorchestrator)r   ÚDOCKER_ENV_PATHÚexistsÚRUNTIME_NAME_DOCKERr   ÚgetenvÚENV_VAR_K8SÚORCHESTRATOR_NAME_K8S)Ú	containers    úW/var/www/pod-logistic/pod-api/venv/lib/python3.12/site-packages/pymongo/pool_options.pyÚget_container_env_infor:   p   s@   € ð €IäŒOÓ×#Ñ#Ô%Ü2ˆ	�)ÑÜ	‡y�y”ÔÜ$9ˆ	�.Ñ!àÐó    c                 ó€   — t        j                  d«      ryt        j                  d«      } | r| j                  d«      S y)NÚAWS_LAMBDA_RUNTIME_APITÚAWS_EXECUTION_ENVÚAWS_Lambda_F)r   r5   Ú
startswith)Úenvs    r9   Ú
_is_lambdarB   }   s6   € Ü	‡y�yÐ)Ô*ØÜ
�)‰)Ð'Ó
(€CÙ
Ø�~‰~˜mÓ,Ð,Ør;   c                 ó>   — t        t        j                  d«      «      S )NÚFUNCTIONS_WORKER_RUNTIME©Úboolr   r5   © r;   r9   Ú_is_azure_funcrH   †   s   € Ü”—	‘	Ð4Ó5Ó6Ð6r;   c                 ól   — t        t        j                  d«      xs t        j                  d«      «      S )NÚ	K_SERVICEÚFUNCTION_NAMErE   rG   r;   r9   Ú_is_gcp_funcrL   Š   s$   € Ü”—	‘	˜+Ó&ÒD¬"¯)©)°OÓ*DÓEÐEr;   c                 ó>   — t        t        j                  d«      «      S )NÚVERCELrE   rG   r;   r9   Ú
_is_vercelrO   Ž   s   € Ü”—	‘	˜(Ó#Ó$Ð$r;   c                 ó^   — t        «       xs" t        «       xs t        «       xs
 t        «       S ©N)rB   rH   rL   rO   rG   r;   r9   Ú_is_faasrR   ’   s    € Ü‹<ÒMœ>Ó+ÒM¬|«~ÒMÄÃÐMr;   c                óh   — t        j                  | «      }|sy	 t        |«      S # t        $ r Y yw xY w)zMLike os.getenv but returns an int, or None if the value is missing/malformed.N)r   r5   ÚintÚ
ValueError)ÚkeyÚvals     r9   Ú_getenv_intrX   –   s5   € ä
�)‰)�C‹.€CÙØðÜ�3‹xˆøÜò Ùðús   š
% ¥	1°1c                 ó8  — i } t        «       }|r|| d<   t        «       t        «       t        «       t	        «       fj                  d«      dk7  r| S t        «       r5d| d<   t        j                  d«      }|r|| d<   t        d«      }|�|| d	<   | S t        «       rd
| d<   | S t        «       rGd| d<   t        j                  d«      }|r|| d<   t        d«      }|�|| d	<   t        d«      }|�|| d<   | S t	        «       r!d| d<   t        j                  d«      }|r|| d<   | S )Nr8   Té   z
aws.lambdar   Ú
AWS_REGIONÚregionÚAWS_LAMBDA_FUNCTION_MEMORY_SIZEÚ	memory_mbz
azure.funczgcp.funcÚFUNCTION_REGIONÚFUNCTION_MEMORY_MBÚFUNCTION_TIMEOUT_SECÚtimeout_secÚvercelÚVERCEL_REGION)	r:   rB   rH   rL   rO   Úcountr   r5   rX   )rA   r8   r\   r^   rb   s        r9   Ú_metadata_envrf   ¡   s@  € Ø€CÜ&Ó(€IÙØ$ˆˆKÑä‹”nÓ&¬«¼
»ÐE×KÑKÈDÓQÐUVÒVØˆ
Ü„|Ø"ˆˆF‰Ü—‘˜<Ó(ˆÙØ"ˆC�‰MÜÐ AÓBˆ	ØÐ Ø(ˆC�Ñð& €Jô% 
Ô	Ø"ˆˆF‰ð" €Jô! 
ŒØ ˆˆF‰Ü—‘Ð,Ó-ˆÙØ"ˆC�‰MÜÐ 4Ó5ˆ	ØÐ Ø(ˆC�ÑÜ!Ð"8Ó9ˆØÐ"Ø!,ˆC�Ñð €Jô 
ŒØˆˆF‰Ü—‘˜?Ó+ˆÙØ"ˆC�‰MØ€Jr;   i   c                ó°  — t        t        j                  | «      «      t        k  ry| j	                  di «      j	                  d«      }|rd|i| d<   t        t        j                  | «      «      t        k  ry| j	                  di «      j	                  d«      }|rd|i| d<   t        t        j                  | «      «      t        k  ry| j                  dd«       t        t        j                  | «      «      }|t        k  ry|t        z
  }| j	                  dd«      }|r|d|  }|r|| d<   n| j                  dd«       t        t        j                  | «      «      }|t        k  ry|t        z
  }| j	                  di «      }|rÔ|j	                  d	«      d|  }t        |«      t        t        d   d	   «      k\  r	|| d   d	<   nt        d   d	   | d   d	<   t        t        j                  | «      «      }|t        k  ry|t        z
  }|j	                  d«      d|  }t        |«      t        t        d   d   «      k\  r	|| d   d<   yt        d   d   | d   d<   yy)
zPerform metadata truncation.NrA   r   r   r   r+   Ú r   r   )ÚlenÚbsonÚencodeÚ_MAX_METADATA_SIZEÚgetÚpopr   )	ÚmetadataÚenv_nameÚos_typeÚencoded_sizeÚoverflowÚplatr   Údriver_versionÚdriver_names	            r9   Ú_truncate_metadatarw   Ê   s>  € ä
Œ4�;‰;�xÓ Ó!Ô%7Ò7Øà�|‰|˜E 2Ó&×*Ñ*¨6Ó2€HÙØ! 8Ð,ˆ�‰Ü
Œ4�;‰;�xÓ Ó!Ô%7Ò7Øà�l‰l˜4 Ó$×(Ñ(¨Ó0€GÙØ  'Ð*ˆ�‰Ü
Œ4�;‰;�xÓ Ó!Ô%7Ò7Øà‡L�L�˜ÔÜ”t—{‘{ 8Ó,Ó-€LØÔ)Ò)ØàÔ0Ñ0€HØ�<‰<˜
 BÓ'€DÙØ�J�h�YÐˆÙØ#ˆ�Òà�‰�Z Ô&Ü”t—{‘{ 8Ó,Ó-€LØÔ)Ò)ØàÔ0Ñ0€HØ�\‰\˜( BÓ'€FÙàŸ™ IÓ.¨z°°	Ð:ˆÜˆ~Ó¤#¤i°Ñ&9¸)Ñ&DÓ"EÒEØ,:ˆH�XÑ˜yÒ)ä,5°hÑ,?À	Ñ,JˆH�XÑ˜yÑ)Üœ4Ÿ;™; xÓ0Ó1ˆØÔ-Ò-ØàÔ"4Ñ4ˆØ—j‘j Ó(¨¨8¨)Ð4ˆÜˆ{Óœs¤9¨XÑ#6°vÑ#>Ó?Ò?Ø)4ˆH�XÑ˜vÒ&ä)2°8Ñ)<¸VÑ)DˆH�XÑ˜vÒ&ð! r;   ÚfooÚidnac                  óæ  — e Zd ZdZdZeeeddedddddde	dddddf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Z
dd„Zedd„«       Zedd	„«       Zedd
„«       Zed d„«       Zed d„«       Zed!d„«       Zed"d„«       Zed#d„«       Zed#d„«       Zed"d„«       Zed$d„«       Zed!d„«       Zed%d„«       Zed&d„«       Zed'd„«       Zed(d„«       Zedd„«       Zed)d„«       Zed*d„«       Zy)+ÚPoolOptionsak  Read only connection pool options for an AsyncMongoClient/MongoClient.

    Should not be instantiated directly by application developers. Access
    a client's pool options via
    :attr:`~pymongo.client_options.ClientOptions.pool_options` instead::

      pool_opts = client.options.pool_options
      pool_opts.max_pool_size
      pool_opts.min_pool_size

    )Ú__max_pool_sizeÚ__min_pool_sizeÚ__max_idle_time_secondsÚ__connect_timeoutÚ__socket_timeoutÚ__wait_queue_timeoutÚ__ssl_contextÚ__tls_allow_invalid_hostnamesÚ__event_listenersÚ	__appnameÚ__driverÚ
__metadataÚ__compression_settingsÚ__max_connectingÚ__pause_enabledÚ__server_apiÚ__load_balancedÚ__credentialsNFTc                óº  — || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        || _        || _        || _        || _        || _        || _        t#        j$                  t&        «      | _        |
rd|
i| j(                  d<   t+        «       r2dj-                  | j(                  d   d   d«      | j(                  d   d<   |s2dj-                  | j(                  d   d   d«      | j(                  d   d<   |r| j/                  |«       t1        «       }|r|| j(                  d<   t3        | j(                  «       y )Nr   Úapplicationú{}|{}r   ÚcÚasyncrA   )Ú_PoolOptions__max_pool_sizeÚ_PoolOptions__min_pool_sizeÚ#_PoolOptions__max_idle_time_secondsÚ_PoolOptions__connect_timeoutÚ_PoolOptions__socket_timeoutÚ _PoolOptions__wait_queue_timeoutÚ_PoolOptions__ssl_contextÚ)_PoolOptions__tls_allow_invalid_hostnamesÚ_PoolOptions__event_listenersÚ_PoolOptions__appnameÚ_PoolOptions__driverÚ"_PoolOptions__compression_settingsÚ_PoolOptions__max_connectingÚ_PoolOptions__pause_enabledÚ_PoolOptions__server_apiÚ_PoolOptions__load_balancedÚ_PoolOptions__credentialsÚcopyÚdeepcopyr   Ú_PoolOptions__metadatar   ÚformatÚ_update_metadatarf   rw   )ÚselfÚmax_pool_sizeÚmin_pool_sizeÚmax_idle_time_secondsÚconnect_timeoutÚsocket_timeoutÚwait_queue_timeoutÚssl_contextÚtls_allow_invalid_hostnamesÚevent_listenersÚappnamer   Úcompression_settingsÚmax_connectingÚpause_enabledÚ
server_apiÚload_balancedÚcredentialsÚis_syncrA   s                       r9   Ú__init__zPoolOptions.__init__*  sS  € ð*  -ˆÔØ,ˆÔØ'<ˆÔ$Ø!0ˆÔØ .ˆÔØ$6ˆÔ!Ø(ˆÔØ-HˆÔ*Ø!0ˆÔØ ˆŒØˆŒØ&:ˆÔ#Ø .ˆÔØ,ˆÔØ&ˆÔØ,ˆÔØ(ˆÔÜŸ-™-¬	Ó2ˆŒáØ.4°gÐ->ˆD�O‰O˜MÑ*ô Œ7Ø07·±Ø—‘ Ñ)¨&Ñ1Øó1ˆD�O‰O˜HÑ% fÑ-ñ Ø07·±Ø—‘ Ñ)¨&Ñ1Øó1ˆD�O‰O˜HÑ% fÑ-ñ Ø×!Ñ! &Ô)ä‹oˆÙØ%(ˆD�O‰O˜EÑ"ä˜4Ÿ?™?Õ+r;   c                ó(  — |j                   rJ|j                   j                  «       | j                  d   d   j                  «       j                  d«      v ryt	        j
                  | j                  «      }|j                   r(dj                  |d   d   |j                   «      |d   d<   |j                  r(dj                  |d   d   |j                  «      |d   d<   |j                  r"dj                  |d   |j                  «      |d<   || _        y)zUpdates the client's metadatar   r   ú|Nr�   r   r+   )	r   Úlowerr¦   Úsplitr¤   r¥   r§   r   r+   )r©   r   ro   s      r9   r¨   zPoolOptions._update_metadatap  sñ   € à�;Š;˜6Ÿ;™;×,Ñ,Ó.°$·/±/À(Ñ2KÈFÑ2S×2YÑ2YÓ2[×2aÑ2aØó3
ñ 
ð ä—=‘= §¡Ó1ˆà�;Š;Ø)0¯©Ø˜Ñ" 6Ñ*Ø—‘ó*ˆH�XÑ˜vÑ&ð �>Š>Ø,3¯N©NØ˜Ñ" 9Ñ-Ø—‘ó-ˆH�XÑ˜yÑ)ð �?Š?Ø#*§>¡>°(¸:Ñ2FÈÏÉÓ#XˆH�ZÑ à"ˆ�r;   c                ó   — | j                   S )z;A :class:`~pymongo.auth.MongoCredentials` instance or None.)r£   ©r©   s    r9   Ú_credentialszPoolOptions._credentialsˆ  ó   € ð ×!Ñ!Ð!r;   c                ó¢  — i }| j                   t        k7  r| j                   |d<   | j                  t        k7  r| j                  |d<   | j                  t
        k7  r | j                  €J ‚| j                  dz  |d<   | j                  t        k7  r | j                  €J ‚| j                  dz  |d<   | j                  t        k7  r| j                  |d<   |S )zqThe non-default options this pool was created with.

        Added for CMAP's :class:`PoolCreatedEvent`.
        ÚmaxPoolSizeÚminPoolSizeiè  ÚmaxIdleTimeMSÚwaitQueueTimeoutMSÚmaxConnecting)
r“   r   r”   r   r•   r   r˜   r   rŸ   r
   )r©   Úoptss     r9   Únon_default_optionszPoolOptions.non_default_options�  sÕ   € ð ˆØ×Ñ¤=Ò0Ø"&×"6Ñ"6ˆD�ÑØ×Ñ¤=Ò0Ø"&×"6Ñ"6ˆD�ÑØ×'Ñ'Ô+<Ò<Ø×/Ñ/Ð;Ð;Ð;Ø$(×$@Ñ$@À4Ñ$GˆD�Ñ!Ø×$Ñ$Ô(:Ò:Ø×,Ñ,Ð8Ð8Ð8Ø)-×)BÑ)BÀTÑ)IˆDÐ%Ñ&Ø× Ñ ¤NÒ2Ø$(×$9Ñ$9ˆD�Ñ!Øˆr;   c                ó   — | j                   S )aQ  The maximum allowable number of concurrent connections to each
        connected server. Requests to a server will block if there are
        `maxPoolSize` outstanding connections to the requested server.
        Defaults to 100. Cannot be 0.

        When a server's pool has reached `max_pool_size`, operations for that
        server block waiting for a socket to be returned to the pool. If
        ``waitQueueTimeoutMS`` is set, a blocked operation will raise
        :exc:`~pymongo.errors.ConnectionFailure` after a timeout.
        By default ``waitQueueTimeoutMS`` is not set.
        )r“   rÁ   s    r9   rª   zPoolOptions.max_pool_size¢  s   € ð ×#Ñ#Ð#r;   c                ó   — | j                   S )zŠThe minimum required number of concurrent connections that the pool
        will maintain to each connected server. Default is 0.
        )r”   rÁ   s    r9   r«   zPoolOptions.min_pool_size±  s   € ð
 ×#Ñ#Ð#r;   c                ó   — | j                   S )zgThe maximum number of concurrent connection creation attempts per
        pool. Defaults to 2.
        )rŸ   rÁ   s    r9   rµ   zPoolOptions.max_connecting¸  s   € ð
 ×$Ñ$Ð$r;   c                ó   — | j                   S rQ   )r    rÁ   s    r9   r¶   zPoolOptions.pause_enabled¿  s   € à×#Ñ#Ð#r;   c                ó   — | j                   S )z¦The maximum number of seconds that a connection can remain
        idle in the pool before being removed and replaced. Defaults to
        `None` (no limit).
        )r•   rÁ   s    r9   r¬   z!PoolOptions.max_idle_time_secondsÃ  s   € ð ×+Ñ+Ð+r;   c                ó   — | j                   S )z>How long a connection can take to be opened before timing out.)r–   rÁ   s    r9   r­   zPoolOptions.connect_timeoutË  ó   € ð ×%Ñ%Ð%r;   c                ó   — | j                   S )zBHow long a send or receive on a socket can take before timing out.)r—   rÁ   s    r9   r®   zPoolOptions.socket_timeoutÐ  s   € ð ×$Ñ$Ð$r;   c                ó   — | j                   S )zhHow long a thread will wait for a socket from the pool if the pool
        has no free sockets.
        )r˜   rÁ   s    r9   r¯   zPoolOptions.wait_queue_timeoutÕ  s   € ð
 ×(Ñ(Ð(r;   c                ó   — | j                   S )zAn SSLContext instance or None.)r™   rÁ   s    r9   Ú_ssl_contextzPoolOptions._ssl_contextÜ  rÃ   r;   c                ó   — | j                   S )z If True skip ssl.match_hostname.)rš   rÁ   s    r9   r±   z'PoolOptions.tls_allow_invalid_hostnamesá  s   € ð ×1Ñ1Ð1r;   c                ó   — | j                   S )z2An instance of pymongo.monitoring._EventListeners.)r›   rÁ   s    r9   Ú_event_listenerszPoolOptions._event_listenersæ  rÒ   r;   c                ó   — | j                   S )zAThe application name, for sending with hello in server handshake.)rœ   rÁ   s    r9   r³   zPoolOptions.appnameë  s   € ð �~‰~Ðr;   c                ó   — | j                   S )z=Driver name and version, for sending with hello in handshake.)r�   rÁ   s    r9   r   zPoolOptions.driverð  s   € ð �}‰}Ðr;   c                ó   — | j                   S rQ   )rž   rÁ   s    r9   Ú_compression_settingsz!PoolOptions._compression_settingsõ  s   € à×*Ñ*Ð*r;   c                ó6   — | j                   j                  «       S )zCA dict of metadata about the application, driver, os, and platform.)r¦   r¤   rÁ   s    r9   ro   zPoolOptions.metadataù  s   € ð �‰×#Ñ#Ó%Ð%r;   c                ó   — | j                   S )z'A pymongo.server_api.ServerApi or None.)r¡   rÁ   s    r9   r·   zPoolOptions.server_apiþ  s   € ð × Ñ Ð r;   c                ó   — | j                   S )z6True if this Pool is configured in load balanced mode.)r¢   rÁ   s    r9   r¸   zPoolOptions.load_balanced  s   € ð ×#Ñ#Ð#r;   )$rª   rT   r«   rT   r¬   úOptional[int]r­   úOptional[float]r®   râ   r¯   rá   r°   úOptional[SSLContext]r±   rF   r²   úOptional[_EventListeners]r³   úOptional[str]r   úOptional[DriverInfo]r´   úOptional[CompressionSettings]rµ   rT   r¶   rF   r·   úOptional[ServerApi]r¸   úOptional[bool]r¹   úOptional[MongoCredential]rº   ré   )r   r   ÚreturnÚNone)rë   rê   ©rë   r   )rë   Úfloat)rë   rT   ©rë   rF   )rë   rá   )rë   râ   )rë   rã   )rë   rä   )rë   rå   )rë   ræ   )rë   rç   )rë   rè   )rë   ré   ) Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   r   r   r   r
   r»   r¨   ÚpropertyrÂ   rË   rª   r«   rµ   r¶   r¬   r­   r®   r¯   rÖ   r±   rÙ   r³   r   rÝ   ro   r·   r¸   rG   r;   r9   r{   r{     s’  „ ñ
ð€Ið. +Ø*Ø/@Ø+/Ø*.Ø,>Ø,0Ø,1Ø59Ø!%Ø'+Ø>BØ,Ø"Ø*.Ø(,Ø15Ø"&ð'D,àðD,ð ðD,ð  -ð	D,ð
 )ðD,ð (ðD,ð *ðD,ð *ðD,ð &*ðD,ð 3ðD,ð ðD,ð %ðD,ð <ðD,ð ðD,ð ðD,ð  (ð!D,ð" &ð#D,ð$ /ð%D,ð&  ó'D,óL#ð0 ò"ó ð"ð òó ðð( ò$ó ð$ð ò$ó ð$ð ò%ó ð%ð ò$ó ð$ð ò,ó ð,ð ò&ó ð&ð ò%ó ð%ð ò)ó ð)ð ò"ó ð"ð ò2ó ð2ð ò&ó ð&ð òó ðð òó ðð ò+ó ð+ð ò&ó ð&ð ò!ó ð!ð ò$ó ñ$r;   r{   )rë   zdict[str, str]rï   )rV   Ústrrë   rá   rí   )ro   zMutableMapping[str, Any]rë   rì   )Iró   Ú
__future__r   r¤   r   r+   ÚsysÚpathlibr   Útypingr   r   r   r   rj   Úpymongor	   Úpymongo.commonr
   r   r   r   r   r   Úpymongo.auth_sharedr   Úpymongo.compression_supportr   Úpymongo.driver_infor   Úpymongo.monitoringr   Úpymongo.pyopenssl_contextr   Úpymongo.server_apir   r   Ú__annotations__r@   ÚsystemÚ_nameÚmachineÚreleaseÚmac_verÚgetwindowsversionÚ_verÚenvironrm   ÚjoinÚmaprö   Úsystem_aliasr   Ú_aliasedÚpython_implementationÚpypy_version_infoÚversion_infor2   r6   r4   r7   r:   rB   rH   rL   rO   rR   rX   rf   rl   rw   rk   r{   )Úparts   0r9   ú<module>r     s0  ðòõ #ã Û 	Û Û 
Ý ß ?Ó ?ã Ý ÷÷ ñ Ý3Ý?Ý.Ý2Ý4Ý,ð &°	ÀkÑ'RÐS€	ˆ>Ó Sà‡<�<×Ñ˜7Ô#ð
 ˆH�O‰OÓ€EàØØ(˜×(Ñ(Ó*à#�8×#Ñ#Ó%ñ€IˆdƒOð 	‡\�\�XÒà�—‘Ó!Ø�—‘Ó!Ø(˜×(Ñ(Ó*ð $�8×#Ñ#Ó% aÑ(ñ€IˆdƒOð 	‡\�\�WÒØ ˆ3× Ñ Ó"€DàØàŸ
™
Ÿ™Ð'?Ó@ÒVÐDTÀH×DTÑDTÓDVà—8‘8™C  T¨"¨1 XÓ.Ó/°C¸¸R¹ºÀCÐ7HÐ2IÑIñ€Iˆd‚Oð %ˆx×$Ñ$ _ X§_¡_Ó%6Ð8H¸×8HÑ8HÓ8JÐL\ÈH×L\ÑL\ÓL^Ó_€Hà�—‘Ó!Ø—‘¨8°B°Q¨<Ö@ 4º4š$Ò@ÓAØ(˜×(Ñ(Ó*Ø˜A‘;ñ	€Iˆd�Oð "€8×!Ñ!Ó#×.Ñ.¨vÔ6ØŸH™Hà*ˆH×*Ñ*Ó,Ø�H‰H‘S˜˜c×3Ñ3Ó4Ó5Ø˜CŸH™H¡S¨¨c×.>Ñ.>Ó%?Ó@Ñ@ð	
ó€IˆjÒð  ŸH™HØ	'ˆ×	'Ñ	'Ó	)¨3¯8©8±C¸¸S×=MÑ=MÓ4NÓ+OÐPó€IˆjÑð  €Ø'€àÐ Ø$Ð ó
óó7óFó%óNóó"ðJ Ð ó4Eðv ‡�ˆVÔ ÷~$ò ~$ùòc As   ÈM
ÈM
