Ë
    9àiåK  ã                   ó  — d dl Z d dlZd dlZd dlmZ d dlZd dlZd dlZddlm	Z	 ddl
mZmZmZmZmZmZmZmZ ddlmZmZmZmZ ddlmZ ddlmZ dd	lmZmZmZmZ dd
l m!Z! ddl"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/m0Z0 ddl1m2Z2 ddl3m4Z4 ddl5m6Z6 ddl7m8Z8 ddl9m:Z: ddl;m<Z< ddl=m>Z> 	 ddlm?Z? 	 ddlmAZA  G d„ dej„                  e)e*e,e.e0e2e4e6e8e:e<e>«      ZCy# e@$ r Y Œ0w xY w# e@$ r Y Œ4w xY w)é    N)Úpartialé   )Úauth)ÚDEFAULT_MAX_POOL_SIZEÚDEFAULT_NUM_POOLSÚDEFAULT_NUM_POOLS_SSHÚDEFAULT_TIMEOUT_SECONDSÚDEFAULT_USER_AGENTÚIS_WINDOWS_PLATFORMÚMINIMUM_DOCKER_API_VERSIONÚSTREAM_HEADER_SIZE_BYTES)ÚDockerExceptionÚInvalidVersionÚTLSParameterErrorÚ$create_api_error_from_http_exception)Ú	TLSConfig)ÚUnixHTTPAdapter)Úcheck_resourceÚconfigÚupdate_headersÚutils)Újson_stream)ÚProxyConfig)Úconsume_socket_outputÚdemux_adaptorÚframes_iteré   )ÚBuildApiMixin)ÚConfigApiMixin)ÚContainerApiMixin)ÚDaemonApiMixin)ÚExecApiMixin)ÚImageApiMixin)ÚNetworkApiMixin)ÚPluginApiMixin)ÚSecretApiMixin)ÚServiceApiMixin)ÚSwarmApiMixin)ÚVolumeApiMixin)ÚNpipeHTTPAdapter)ÚSSHHTTPAdapterc            	       ó~  ‡ — e Zd ZdZej
                  j                  g d¢z   Zddededdde	f	ˆ fd„	Z
d„ Zd„ Zed„ «       Zed	„ «       Zed
„ «       Zed„ «       Zd„ Zd„ Zd"d„Zd„ Zd#d„Z ed«      d#d„«       Zd„ Zd„ Zd$d„Zd„ Zd„ Zd%d„Zd&d„Zd„ Z  ed«      d„ «       Z!d„ Z"d„ Z#d„ Z$ˆ fd„Z%e&d „ «       Z'd#d!„Z(ˆ xZ)S )'Ú	APIClientaW  
    A low-level client for the Docker Engine API.

    Example:

        >>> import docker
        >>> client = docker.APIClient(base_url='unix://var/run/docker.sock')
        >>> client.version()
        {u'ApiVersion': u'1.33',
         u'Arch': u'amd64',
         u'BuildTime': u'2017-11-19T18:46:37.000000000+00:00',
         u'GitCommit': u'f4ffd2511c',
         u'GoVersion': u'go1.9.2',
         u'KernelVersion': u'4.14.3-1-ARCH',
         u'MinAPIVersion': u'1.12',
         u'Os': u'linux',
         u'Version': u'17.10.0-ce'}

    Args:
        base_url (str): URL to the Docker server. For example,
            ``unix:///var/run/docker.sock`` or ``tcp://127.0.0.1:1234``.
        version (str): The version of the API to use. Set to ``auto`` to
            automatically detect the server's version. Default: ``1.35``
        timeout (int): Default timeout for API calls, in seconds.
        tls (bool or :py:class:`~docker.tls.TLSConfig`): Enable TLS. Pass
            ``True`` to enable it with default options, or pass a
            :py:class:`~docker.tls.TLSConfig` object to use custom
            configuration.
        user_agent (str): Set a custom user agent for requests to the server.
        credstore_env (dict): Override environment variables when calling the
            credential store process.
        use_ssh_client (bool): If set to `True`, an ssh connection is made
            via shelling out to the ssh client. Ensure the ssh client is
            installed and configured on the host.
        max_pool_size (int): The maximum number of connections
            to save in the pool.
    )Ú_auth_configsÚ_general_configsÚ_versionÚbase_urlÚtimeoutNFc
                 ó*  •— t         ‰| �  «        |r|st        d«      ‚|| _        || _        || j
                  d<   t        j                  «       | _        | j                  j                  di «      }
	 |
|   }t        j                  |«      | _        t        j                  | j                  |¬«      | _        || _        t%        j&                  |t(        t+        |«      ¬«      }|j-                  d«      r
|xs t.        nt0        }|j-                  d«      rKt3        ||||	¬	«      | _        | j7                  d
| j4                  «       | j9                  dd«       d| _        �n$|j-                  d«      rJt(        st;        d«      ‚	 t=        ||||	¬	«      | _        | j7                  d
| j4                  «       d| _        nÉ|j-                  d«      rL	 tA        ||||	|¬«      | _        | j7                  d| j4                  «       | j9                  dd«       d| _        nltC        |tD        «      r|jG                  | «       nC|rAtH        jJ                  jM                  |¬«      | _        | j7                  d| j4                  «       || _        |�#tC        |tN        «      r)|jQ                  «       dk(  r| jS                  «       | _*        n|| _*        tC        | jT                  tN        «      s!t;        dtW        |«      jX                  › �«      ‚t%        jZ                  | jT                  t\        «      rt_        dt\        › d�«      ‚y # t        $ r |
j                  di «      }Y �Œàw xY w# t>        $ r}t;        d«      |‚d }~ww xY w# t>        $ r}t;        d«      |‚d }~ww xY w)Nz5If using TLS, the base_url argument must be provided.z
User-AgentÚproxiesÚdefault)Úconfig_dictÚcredstore_env)Útlszssh://zhttp+unix://)Úpool_connectionsÚmax_pool_sizezhttp+docker://úhttp://úhttps://zhttp+docker://localhostznpipe://z2The npipe:// protocol is only supported on Windowsz4Install pypiwin32 package to enable npipe:// supportúhttp+docker://localnpipe)r9   r:   Ú	shell_outz1Install paramiko package to enable ssh:// supportúhttp+docker://ssh)r9   Úautoz2Version parameter must be a string or None. Found zAPI versions below z) are no longer supported by this library.)0ÚsuperÚ__init__r   r1   r2   Úheadersr   Úload_general_configr/   ÚgetÚKeyErrorr   Ú	from_dictÚ_proxy_configsr   Úload_configr.   r7   r   Ú
parse_hostr   ÚboolÚ
startswithr   r   r   Ú_custom_adapterÚmountÚ_unmountr   r*   Ú	NameErrorr+   Ú
isinstancer   Úconfigure_clientÚrequestsÚadaptersÚHTTPAdapterÚstrÚlowerÚ_retrieve_server_versionr0   ÚtypeÚ__name__Ú
version_ltr   r   )Úselfr1   Úversionr2   r8   Ú
user_agentÚ	num_poolsr7   Úuse_ssh_clientr:   Úproxy_configr4   ÚerrÚ	__class__s                €úR/home/factor_ks/STREAMA2026/venv/lib/python3.12/site-packages/docker/api/client.pyrB   zAPIClient.__init__s   st  ø€ ô
 	‰ÑÔá‘xÜ#ØGóð ð !ˆŒØˆŒØ%/ˆ�‰�\Ñ"ä &× :Ñ :Ó <ˆÔà×,Ñ,×0Ñ0°¸BÓ?ˆð	6Ø" 8Ñ,ˆGô *×3Ñ3°GÓ<ˆÔä!×-Ñ-Ø×-Ñ-¸]ô
ˆÔð +ˆÔä×#Ñ#ØÔ)¬t°C«yô
ˆð
 ×Ñ Ô)ð Ò6Õ!6Ü/@ð 	ð ×Ñ˜~Ô.Ü#2Ø˜'°IØ+ô$ˆDÔ ð �J‰JÐ'¨×)=Ñ)=Ô>Ø�M‰M˜) ZÔ0ð 6ˆDŽMØ× Ñ  Ô,Ý&Ü%ØHóð ðÜ'7Ø˜g¸	Ø"/ô(�Ô$ð �J‰JÐ'¨×)=Ñ)=Ô>Ø6ˆD�MØ× Ñ  Ô*ðÜ'5Ø˜g¸	Ø"/¸>ô(�Ô$ð �J‰JÐ*¨D×,@Ñ,@ÔAØ�M‰M˜) ZÔ0Ø/ˆD�Mô ˜#œyÔ)Ø×$Ñ$ TÕ*ÙÜ'/×'8Ñ'8×'DÑ'DØ%.ð (Eó (0�Ô$à—
‘
˜: t×';Ñ';Ô<Ø$ˆDŒMð ˆ?œzØ 'Ü #ô "ð '.§m¡m£o¸Ò&?Ø ×9Ñ9Ó;ˆD�Mà#ˆDŒMÜ˜$Ÿ-™-¬Ô-Ü!ðÜ˜g›×/Ñ/Ð0ð2óð ô ×Ñ˜DŸM™MÔ+EÔFÜ Ø%Ô&@Ð%Að B7ð 8óð ð Gøô_ ò 	6Ø"×&Ñ& y°"Ó5‹Gð	6ûôJ ò Ü%ØJóàðûðûô ò Ü%ØGóàðûðúsB   Á2L9 ÆM ÇM8 Ì9MÍMÍ	M5Í$M0Í0M5Í8	NÎNÎNc                 óž   — 	 | j                  d¬«      d   S # t        $ r}t        d«      |‚d }~wt        $ r}t        d|› �«      |‚d }~ww xY w)NF)Úapi_versionÚ
ApiVersionzAInvalid response from docker daemon: key "ApiVersion" is missing.z)Error while fetching server API version: )r]   rF   r   Ú	Exception)r\   ÚkeÚes      rd   rX   z"APIClient._retrieve_server_versionÝ   si   € ð
	Ø—<‘<¨E�<Ó2°<Ñ@Ð@øÜò 	Ü!ðóð ðûô ò 	Ü!Ø;¸A¸3Ð?óàðûð	ús   ‚ —	A ,¬A¸AÁAc                 ó>   — |j                  d| j                  «       |S )zjPrepare the kwargs for an HTTP request by inserting the timeout
        parameter, if not already present.r2   )Ú
setdefaultr2   )r\   Úkwargss     rd   Ú_set_request_timeoutzAPIClient._set_request_timeoutê   s   € ð 	×Ñ˜) T§\¡\Ô2Øˆó    c                 óF   —  | j                   |fi | j                  |«      ¤ŽS ©N)Úpostrn   ©r\   Úurlrm   s      rd   Ú_postzAPIClient._postð   s#   € àˆt�y‰y˜ÑB × 9Ñ 9¸&Ó AÑBÐBro   c                 óF   —  | j                   |fi | j                  |«      ¤ŽS rq   )rE   rn   rs   s      rd   Ú_getzAPIClient._getô   ó#   € àˆt�x‰x˜ÑA˜t×8Ñ8¸Ó@ÑAÐAro   c                 óF   —  | j                   |fi | j                  |«      ¤ŽS rq   )Úputrn   rs   s      rd   Ú_putzAPIClient._putø   rx   ro   c                 óF   —  | j                   |fi | j                  |«      ¤ŽS rq   )Údeletern   rs   s      rd   Ú_deletezAPIClient._deleteü   s#   € àˆt�{‰{˜3ÑD $×";Ñ";¸FÓ"CÑDÐDro   c           	      ód  — |D ]-  }t        |t        «      rŒt        d|› dt        |«      › d�«      ‚ t	        t
        j                  j                  d¬«      }t        ||«      } |j                  |Ž }|j                  dd«      r| j                  › d| j                  › |› �S | j                  › |› �S )	NzExpected a string but found z (z	) insteadz/:)ÚsafeÚversioned_apiTz/v)rQ   rV   Ú
ValueErrorrY   r   ÚurllibÚparseÚquoteÚmapÚformatrE   r1   r0   )r\   ÚpathfmtÚargsrm   ÚargÚquote_fÚformatted_paths          rd   Ú_urlzAPIClient._url   s²   € Øò 	ˆCÜ˜c¤3Õ'Ü Ø2°3°%°r¼$¸s»)¸ÀIÐNóð ð	ô œ&Ÿ,™,×,Ñ,°4Ô8ˆÜ�7˜DÓ!ˆà'˜Ÿ™¨Ð.ˆØ�:‰:�o tÔ,Ø—m‘m�_ B t§}¡} o°nÐ5EÐFÐFà—m‘m�_ ^Ð$4Ð5Ð5ro   c                 óˆ   — 	 |j                  «        y# t        j                  j                  $ r}t	        |«      |‚d}~ww xY w)z1Raises stored :class:`APIError`, if one occurred.N)Úraise_for_statusrS   Ú
exceptionsÚ	HTTPErrorr   )r\   Úresponserj   s      rd   Ú_raise_for_statuszAPIClient._raise_for_status  s?   € ð	AØ×%Ñ%Õ'øÜ×"Ñ"×,Ñ,ò 	AÜ6°qÓ9¸qÐ@ûð	Aús   ‚ “A°<¼Ac                 óˆ   — |r|rJ ‚| j                  |«       |r|j                  «       S |r|j                  S |j                  S rq   )r“   ÚjsonÚcontentÚtext)r\   r’   r•   Úbinarys       rd   Ú_resultzAPIClient._result  sC   € Ù™VÐ$Ð$Ø×Ñ˜xÔ(áØ—=‘=“?Ð"ÙØ×#Ñ#Ð#Ø�}‰}Ðro   c                 óø   — i }|�:t        |t        «      r*t        |j                  «       «      D ]  \  }}|€Œ	|||<   Œ n|�|}d|vri |d<   d|d   d<    | j                  |fdt        j                  |«      i|¤ŽS )NrC   zapplication/jsonzContent-TypeÚdata)rQ   ÚdictÚiterÚitemsru   r•   Údumps)r\   rt   r›   rm   Údata2ÚkÚvs          rd   Ú
_post_jsonzAPIClient._post_json!  s–   € ð ˆØÐ¤
¨4´Ô 6Ü˜TŸZ™Z›\Ó*ò !‘��1Ø‘=Ø �E˜!’Hñ!ð ÐØˆEà˜FÑ"Ø "ˆF�9ÑØ,>ˆˆyÑ˜.Ñ)Øˆt�z‰z˜#Ñ@¤D§J¡J¨uÓ$5Ð@¸Ñ@Ð@ro   c                 ó   — |xs ddddœS )Nr   )ÚstdoutÚstderrÚstream© )r\   Úoverrides     rd   Ú_attach_paramszAPIClient._attach_params1  s   € Øò 
ØØØñ
ð 	
ro   Ú	containerc                 ó  — | j                  d|«      }t        j                  d|| j                  |«      ¬«      }|j	                  «       j
                  }|j                  ddd«      }|j                  ddd«      }| j                  |«      S )	Nz/containers/{0}/attach/wsÚPOST)Úparamsr;   zws://r   r<   zwss://)r�   rS   ÚRequestrª   Úpreparert   ÚreplaceÚ_create_websocket_connection)r\   r«   r®   rt   ÚreqÚfull_urls         rd   Ú_attach_websocketzAPIClient._attach_websocket8  s|   € à�i‰iÐ3°YÓ?ˆÜ×Ñ˜v s°4×3FÑ3FÀvÓ3NÔOˆØ—;‘;“=×$Ñ$ˆØ×#Ñ# I¨w¸Ó:ˆØ×#Ñ# J°¸!Ó<ˆØ×0Ñ0°Ó:Ð:ro   c                 óh   — 	 dd l }|j                  |«      S # t        $ r}t        d«      |‚d }~ww xY w)Nr   zšThe `websocket-client` library is required for using websocket connections. You can install the `docker` library with the [websocket] extra to install it.)Ú	websocketÚcreate_connectionÚImportErrorr   )r\   rt   r·   Úies       rd   r²   z&APIClient._create_websocket_connectionA  sB   € ð		ÛØ×.Ñ.¨sÓ3Ð3øÜò 	Ü!ð<óð
 ðûð	ús   ‚ —	1 ,¬1c                 ó  — | j                  |«       | j                  dk(  r5|j                  j                  j                  j                  j
                  }n—| j                  j                  d«      r+|j                  j                  j                  j                  }nQ|j                  j                  j                  j                  }| j                  j                  d«      r|j                  }	 ||_	        |S # t        $ r Y |S w xY w)Nr=   r?   r<   )r“   r1   ÚrawÚ_fpÚfpÚsockrL   ÚchannelÚ_sockÚ	_responseÚAttributeError)r\   r’   r¿   s      rd   Ú_get_raw_response_socketz"APIClient._get_raw_response_socketM  sÒ   € Ø×Ñ˜xÔ(Ø�=‰=Ð6Ò6Ø—<‘<×#Ñ#×&Ñ&×*Ñ*×/Ñ/‰DØ�]‰]×%Ñ%Ð&9Ô:Ø—<‘<×#Ñ#×&Ñ&×.Ñ.‰Dà—<‘<×#Ñ#×&Ñ&×*Ñ*ˆDØ�}‰}×'Ñ'¨
Ô3Ø—z‘z�ð	ð &ˆDŒNð ˆøô ò 	ð àˆð	ús   Ã.C7 Ã7	DÄDc              #   óÀ  K  — |j                   j                  j                  r£|r$t        | j	                  |d«      «      E d{  –—†  y|j                   }|j
                  sd|j                  d«      }|sy|j                  j                  r(||j                  |j                  j                  «      z  }|–— |j
                  sŒcyy| j                  ||¬«      –— y7 Œ˜­w)z?Generator for data coming from a chunked-encoded HTTP response.FNr   )r•   )	r¼   r½   Úchunkedr   Ú_stream_helperÚclosedÚreadÚ
chunk_leftr™   )r\   r’   ÚdecodeÚreaderr›   s        rd   rÇ   zAPIClient._stream_helperc  s¯   è ø€ ð �<‰<×Ñ×#Ò#ÙÜ& t×':Ñ':¸8ÀUÓ'KÓL×LÑLà!Ÿ™�Ø Ÿ-š-à!Ÿ;™; q›>�DÙØØ—z‘z×,Ò,Ø §¡¨F¯J©J×,AÑ,AÓ BÑB˜Ø’Jð !Ÿ-�-ð —,‘,˜x¨f�,Ó5Ó5ð Mús   ‚ACÁCÁA?CÃCc              #   óà   K  — | j                  |d¬«      }t        |«      }d}	 ||z
  t        k  ry|||t        z    }t        j                  d|«      \  }}|t        z   }||z   }	|	}|||	 –— ŒJ­w)zMA generator of multiplexed data blocks read from a buffered
        response.T©r˜   r   ú>BxxxLN)r™   Úlenr   ÚstructÚunpack_from)
r\   r’   ÚbufÚ
buf_lengthÚwalkerÚheaderÚ_ÚlengthÚstartÚends
             rd   Ú_multiplexed_buffer_helperz$APIClient._multiplexed_buffer_helperx  sŽ   è ø€ ð �l‰l˜8¨DˆlÓ1ˆÜ˜“Xˆ
ØˆØØ˜FÑ"Ô%=Ò=ØØ˜ Ô)AÑ AÐBˆFÜ×*Ñ*¨8°VÓ<‰IˆAˆvØÔ5Ñ5ˆEØ˜&‘.ˆCØˆFØ�e˜C�.Ò ð ùs   ‚A,A.c              #   ó  K  — | j                  |«      }| j                  |«       	 |j                  j                  t        «      }|syt        j                  d|«      \  }}|sŒ?|j                  j                  |«      }|sy|–— Œa­w)zMA generator of multiplexed data blocks coming from a response
        stream.rÏ   N)rÄ   Ú_disable_socket_timeoutr¼   rÉ   r   rÑ   Úunpack)r\   r’   ÚsocketrÖ   r×   rØ   r›   s          rd   Ú#_multiplexed_response_stream_helperz-APIClient._multiplexed_response_stream_helperˆ  s‚   è ø€ ð ×.Ñ.¨xÓ8ˆØ×$Ñ$ VÔ,àØ—\‘\×&Ñ&Ô'?Ó@ˆFÙØÜŸ™ h°Ó7‰IˆAˆvÙØØ—<‘<×$Ñ$ VÓ,ˆDÙØØŠJð ùs   ‚BBc              #   óª   K  — | j                  |«       | j                  |«      }| j                  |«       |j                  ||«      E d{  –—†  y7 Œ­w)z< Stream result for TTY-enabled container and raw binary dataN)r“   rÄ   rÝ   Úiter_content)r\   r’   Ú
chunk_sizerË   rß   s        rd   Ú_stream_raw_resultzAPIClient._stream_raw_result�  sJ   è ø€ à×Ñ˜xÔ(ð ×.Ñ.¨xÓ8ˆØ×$Ñ$ VÔ,à×(Ñ(¨°VÓ<×<Ò<ús   ‚A	AÁAÁAc                 óÔ   — | j                  |«      }t        ||«      }|r
d„ |D «       }n	d„ |D «       }|r|S 	 t        ||¬«      |j                  «        S # |j                  «        w xY w)zÏConsume all data from the socket, close the response and return the
        data. If stream=True, then a generator is returned instead and the
        caller is responsible for closing the response.
        c              3   ó,   K  — | ]  }t        |Ž –— Œ y ­wrq   )r   )Ú.0Úframes     rd   ú	<genexpr>z.APIClient._read_from_socket.<locals>.<genexpr>³  s   è ø€ Ò:¨U”= %Ô(Ñ:ùs   ‚c              3   ó&   K  — | ]	  \  }}|–— Œ y ­wrq   r¨   )rç   r×   r›   s      rd   ré   z.APIClient._read_from_socket.<locals>.<genexpr>¶  s   è ø€ Ò-™I˜Q ”4Ñ-ùs   ‚)Údemux)rÄ   r   r   Úclose)r\   r’   r§   Úttyrë   rß   Úgens          rd   Ú_read_from_socketzAPIClient._read_from_socket¨  se   € ð
 ×.Ñ.¨xÓ8ˆä˜& #Ó&ˆáá:°cÔ:‰Cñ .¨Ô-ˆCáØˆJð!ä,¨S¸Ô>à—‘Õ ø�—‘Õ ús   ¸A ÁA'c                 ó¸   — |t        |dd«      g}|D ]F  }t        |d«      sŒd}t        |d«      r|j                  «       }|�|dk(  rŒ6|j                  d«       ŒH y)a   Depending on the combination of python version and whether we're
        connecting over http or https, we might need to access _sock, which
        may or may not exist; or we may need to just settimeout on socket
        itself, which also may or may not have settimeout on it. To avoid
        missing the correct one, we try both.

        We also do not want to set the timeout if it is already disabled, as
        you run the risk of changing a socket that was non-blocking to
        blocking, for example when using gevent.
        rÁ   NÚ
settimeoutéÿÿÿÿÚ
gettimeoutg        )ÚgetattrÚhasattrró   rñ   )r\   rß   ÚsocketsÚsr2   s        rd   rÝ   z!APIClient._disable_socket_timeoutÁ  si   € ð œ7 6¨7°DÓ9Ð:ˆàò 	ˆAÜ˜1˜lÔ+ØàˆGä�q˜,Ô'ØŸ,™,›.�ð ˆ '¨S¢.Øà�L‰L˜Õñ	ro   c                 ó4   — | j                  |«      }|d   d   S )NÚConfigÚTty)Úinspect_container)r\   r«   Úconts      rd   Ú_check_is_ttyzAPIClient._check_is_ttyÝ  s!   € à×%Ñ% iÓ0ˆØ�H‰~˜eÑ$Ð$ro   c                 óF   — | j                  ||| j                  |«      «      S rq   )Ú_get_result_ttyrý   )r\   r«   r§   Úress       rd   Ú_get_resultzAPIClient._get_resultâ  s"   € Ø×#Ñ# F¨C°×1CÑ1CÀIÓ1NÓOÐOro   c                 óð   — |r&|r| j                  |«      S | j                  |d¬«      S | j                  |«       d}|r| j                  |«      S |j	                  t        | j                  |«      «      «      S )NTrÎ   ro   )rä   r™   r“   rà   ÚjoinÚlistrÛ   )r\   r§   r   Úis_ttyÚseps        rd   rÿ   zAPIClient._get_result_ttyå  s~   € ñ Ù39�4×*Ñ*¨3Ó/ð /Ø—‘˜S¨�Ó.ð/ð 	×Ñ˜sÔ#ØˆÙØ×;Ñ;¸CÓ@Ð@à—8‘8Ü�T×4Ñ4°SÓ9Ó:óð ro   c                 óH   — |D ]  }| j                   j                  |«       Œ y rq   )rT   Úpop)r\   r‰   Úprotos      rd   rO   zAPIClient._unmountõ  s#   € Øò 	%ˆEØ�M‰M×Ñ˜eÕ$ñ	%ro   c                 ó¬   •— 	 t         ‰| �  |«      S # t        j                  j                  $ r$}| j
                  r| j
                  cY d }~S |‚d }~ww xY wrq   )rA   Úget_adapterrS   r�   ÚInvalidSchemarM   )r\   rt   rj   rc   s      €rd   r  zAPIClient.get_adapterù  sN   ø€ ð	Ü‘7Ñ& sÓ+Ð+øÜ×"Ñ"×0Ñ0ò 	Ø×#Ò#Ø×+Ñ+Õ+à�ûð		ús    ƒ ’A¯AÁAÁAÁAc                 ó   — | j                   S rq   )r0   )r\   s    rd   rf   zAPIClient.api_version  s   € à�}‰}Ðro   c                 óP   — t        j                  || j                  ¬«      | _        y)a.  
        Force a reload of the auth configuration

        Args:
            dockercfg_path (str): Use a custom path for the Docker config file
                (default ``$HOME/.docker/config.json`` if present,
                otherwise ``$HOME/.dockercfg``)

        Returns:
            None
        )r7   N)r   rI   r7   r.   )r\   Údockercfg_paths     rd   Úreload_configzAPIClient.reload_config  s"   € ô "×-Ñ-Ø¨$×*<Ñ*<ô
ˆÕro   )FFrq   )F)r   T)TF)*rZ   Ú
__module__Ú__qualname__Ú__doc__rS   ÚSessionÚ	__attrs__r	   r
   r   rB   rX   rn   r   ru   rw   r{   r~   r�   r“   r™   r£   rª   r   rµ   r²   rÄ   rÇ   rÛ   rà   rä   rï   rÝ   rý   r  rÿ   rO   r  Úpropertyrf   r  Ú__classcell__)rc   s   @rd   r-   r-   9   sK  ø„ ñ$ðL × Ñ ×*Ñ*ò .9ñ 9€Ið !%¨dØ0°eØ.¸$Ø#°EØ4õ	hòTòð ñCó ðCð ñBó ðBð ñBó ðBð ñEó ðEò6ò AóòAó 
ñ �KÓ ò;ó !ð;ò
òó,6ò*!ò ó*	=ó!ò2ñ8 �KÓ ñ%ó !ð%òPòò %ôð ñó ð÷
ro   r-   )Dr•   rÑ   rƒ   Ú	functoolsr   rS   Úrequests.adaptersÚrequests.exceptionsÚ r   Ú	constantsr   r   r   r	   r
   r   r   r   Úerrorsr   r   r   r   r8   r   Ú	transportr   r   r   r   r   Úutils.json_streamr   Úutils.proxyr   Úutils.socketr   r   r   Úbuildr   r   r«   r    Údaemonr!   Úexec_apir"   Úimager#   Únetworkr$   Úpluginr%   Úsecretr&   Úservicer'   Úswarmr(   Úvolumer)   r*   r¹   r+   r  r-   r¨   ro   rd   ú<module>r,     sä   ðÛ Û Û Ý ã Û Û å ÷	÷ 	ó 	÷ó õ Ý 'ß AÓ AÝ +Ý %ß LÑ LÝ  Ý "Ý (Ý "Ý "Ý  Ý $Ý "Ý "Ý $Ý  Ý "ð	Ý,ð	Ý*ô
[
Ø×ÑØØØØØØØØØØØØõ[
øð ò 	Ùð	ûð
 ò 	Ùð	ús$   Â<C+ ÃC6 Ã+C3Ã2C3Ã6C>Ã=C>