
     <iY              	       t   d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
 d dlmZ  ee          ZdZdZdZd	Ze e e d
e e e Z ee          Z ee e e d
e e e           Z ed          Ze de e e ZdZdZ ed          dedeeef         fd            Zddededeeef         fdZdS )    )	getLogger)compilesplit)DictListMapping)unquote)
deprecatedz[ \t]*zC[\x21\x23-\x27\x2a\x2b\x2d\x2e\x30-\x39\x41-\x5a\x5e-\x7a\x7c\x7e]+z+[\x21\x23-\x2b\x2d-\x3a\x3c-\x5b\x5d-\x7e]*z/[\x20\x21\x23-\x2b\x2d-\x3a\x3c-\x5b\x5d-\x7e]*=z[ \t]*,[ \t]*|zHeader format invalid! Header values in environment variables must be URL encoded per the OpenTelemetry Protocol Exporter specification: %szHeader format invalid! Header values in environment variables must be URL encoded per the OpenTelemetry Protocol Exporter specification or a comma separated list of name=value occurrences: %szBYou should use parse_env_headers. Deprecated since version 1.15.0.sreturnc                      t          |           S )N)parse_env_headers)r   s    /Users/kimhansen/Desktop/03 Workspace/ceo-agents/chl-effectiveness/mcp-servers/whoop/.venv/lib/python3.11/site-packages/opentelemetry/util/re.pyparse_headersr   >   s     Q    Fliberalc                 @   i }t          t          |           }|D ]}|st                              |                                          }|s#|s!t
                              t          |           W|rz|j        }|                     dd          \  }}t          |                                          
                                }t          |                                          }|||<   t                              |                                          }	|	s"t
                              t          |           #|	j        }
|
                     dd          \  }}|                                
                                }|                                }|||<   |S )a  
    Parse ``s``, which is a ``str`` instance containing HTTP headers encoded
    for use in ENV variables per the W3C Baggage HTTP header format at
    https://www.w3.org/TR/baggage/#baggage-http-header-format, except that
    additional semi-colon delimited metadata is not supported.
    If ``liberal`` is True we try to parse ``s`` anyway to be more compatible
    with other languages SDKs that accept non URL-encoded headers by default.
    r      )r   _DELIMITER_PATTERN_HEADER_PATTERN	fullmatchstrip_loggerwarning-_INVALID_HEADER_ERROR_MESSAGE_STRICT_TEMPLATEstringr	   lower_LIBERAL_HEADER_PATTERN._INVALID_HEADER_ERROR_MESSAGE_LIBERAL_TEMPLATE)r   r   headersheaders_listheaderheader_matchmatch_stringnamevalueliberal_header_matchliberal_match_strings              r   r   r   E   s    !G#$6::L "" "" 	&00@@ 	G 	OO=v    	" , 3L&,,S!44KD%4==&&((..00DENN((**E!GDMM $;#D#D$ $  ( BF   (<(C .44S!<<KD%::<<%%''DKKMME!GDMMNr   N)F)loggingr   rer   r   typingr   r   r   urllib.parser	   typing_extensionsr
   __name__r   _OWS_KEY_FORMAT_VALUE_FORMAT_LIBERAL_VALUE_FORMAT_KEY_VALUE_FORMATr   r    r   _BAGGAGE_PROPERTY_FORMATr   r!   strr   boolr    r   r   <module>r:      s                 & & & & & & & & & &             ( ( ( ( ( (
)H


  K 
 ?J MkM4MM$MMtMM '+,,!'EkE4EE$E(=EtEE   W-.. 0LL4LLdLL L .; / H  S  WS#X.        / / /t /S8I / / / / / /r   