Ë c‡½jÊ ã ó˜ — d Z ddlZ ej d« Z ej d« Z ej d« Zd d„Z G d„ d« Zy) zÓManage HTTP Response Headers Much of this module is red-handedly pilfered from email.message in the stdlib, so portions are Copyright (C) 2001,2002 Python Software Foundation, and were written by Barry Warsaw. é Nz[ \(\)<>@,;:\\"/\[\]\?=]z[\x00-\x1F\x7F]z[\x00-\x08\x0A-\x1F\x7F]c ó¶ — |�Vt |« dkD rH|st j |« r*|j dd« j dd« }| ›d|›d�S | ›d|›�S | S )z~Convenience function to format and return a key=value pair. This will quote the value if needed or if quote is true. r Ú\z\\Ú"z\"z="Ú=)ÚlenÚ tspecialsÚsearchÚreplace)ÚparamÚvalueÚquotes ú(/usr/lib64/python3.12/wsgiref/headers.pyÚ_formatparamr s\ € ð МS ›Z¨!š^Ù”I×$Ñ$ UÔ+Ø—M‘M $¨Ó/×7Ñ7¸¸UÓCˆEÚ %¢uÐ-Ð-â#¡UÐ+Ð+àˆó c óz — e Zd ZdZdd„Zd„ Zd„ Zd„ Zd„ Zd„ Z d „ Z d „ Zdd„Zd„ Z d „ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚHeadersz,Manage a collection of HTTP response headersNc ó¸ — |�|ng }t |« t urt d« ‚|| _ |D ]+ \ }}| j |d¬« | j |d¬« Œ- y )Nz+Headers must be a list of name/value tuplesT©ÚnameF)ÚtypeÚlistÚ TypeErrorÚ_headersÚ_convert_string_type)ÚselfÚheadersÚkÚvs r Ú__init__zHeaders.__init__$ sd € Ø$Ð0‘'°bˆÜ�‹=¤Ñ$ÜÐIÓJÐJ؈Œ ØÛ‘��1Ø×)Ñ)¨!°$Ð)Ô7Ø×)Ñ)¨!°%Ð)Õ8ñ r c ó — t |« t u r,|rt nt }|j |« rt d« ‚|S t dj t |« « « ‚)zConvert/check value type.z)Control characters not allowed in headersz1Header names/values must be of type str (got {0})) r ÚstrÚ_name_disallowed_reÚ_value_disallowed_rer Ú ValueErrorÚAssertionErrorÚformatÚrepr)r r r Úregexs r r zHeaders._convert_string_type. sV € ä�‹;œ#ÑÙ,0Õ(Ô6JˆEØ�|‰|˜EÔ"Ü Ð!LÓMÐM؈LÜð %ß%+¡V¬D°«KÓ%8ó:ð :r c ó, — t | j « S )z9Return the total number of headers, including duplicates.)r r ©r s r Ú__len__zHeaders.__len__8 s € ä�4—=‘=Ó!Ð!r c óˆ — | |= | j j | j |d¬« | j |d¬« f« y)zSet the value of a header.Tr FN)r Úappendr )r r Úvals r Ú__setitem__zHeaders.__setitem__<