§
    ÏÁ³g@—  ã                   óJ  — d dl mZmZmZmZmZmZmZ d dlZddl	m
Z
mZmZmZmZ ddl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mZmZmZmZm Z m!Z!m"Z" ddl#m$Z$m%Z%m&Z& dd	l'm(Z(m)Z)m*Z* d*d„Z+d*d„Z,d*d„Z-d*d„Z.d*d„Z/d*d„Z0d*d„Z1d*d„Z2d*d„Z3d*d„Z4d*d„Z5d*d„Z6d*d„Z7d*d„Z8d*d„Z9d*d„Z:d*d„Z;d*d„Z<d*d„Z=d*d„Z>d*d„Z?d*d „Z@d*d!„ZAd*d"„ZBejC         D                    d#g d$¢¦  «        d#eEd
dfd%„¦   «         ZFejC         D                    d#g d&¢¦  «        d#eEd
dfd'„¦   «         ZGd*d(„ZHd*d)„ZIdS )+é    )ÚAnyÚcastÚDictÚListÚOptionalÚTupleÚTypeNé   )Ú_body_framingÚ_keep_aliveÚ
ConnectionÚ	NEED_DATAÚPAUSED)ÚConnectionClosedÚDataÚEndOfMessageÚEventÚInformationalResponseÚRequestÚResponse)ÚCLIENTÚCLOSEDÚDONEÚERRORÚIDLEÚMIGHT_SWITCH_PROTOCOLÚ
MUST_CLOSEÚ	SEND_BODYÚSEND_RESPONSEÚSERVERÚSWITCHED_PROTOCOL)ÚLocalProtocolErrorÚRemoteProtocolErrorÚSentinelé   )ÚConnectionPairÚget_all_eventsÚreceive_and_getÚreturnc                  ó   — t          t          dddg¬¦  «        ¦  «        sJ ‚t          t          ddddg¬¦  «        ¦  «        rJ ‚t          t          ddddg¬¦  «        ¦  «        rJ ‚t          t          ddg d¬¦  «        ¦  «        rJ ‚t          t          d	g ¬
¦  «        ¦  «        sJ ‚t          t          d	dg¬
¦  «        ¦  «        rJ ‚t          t          d	dg¬
¦  «        ¦  «        rJ ‚t          t          d	g d¬¦  «        ¦  «        rJ ‚d S )NÚGETú/)ÚHostzExample.com©ÚmethodÚtargetÚheaders©r   Úclose)r   za, b, cLOse, fooú1.0©r/   r0   r1   Úhttp_versionéÈ   ©Ústatus_coder1   ©r9   r1   r6   )r   r   r   © ó    úW/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/h11/tests/test_connection.pyÚtest__keep_aliver>       s‡  € ÝÝ�u SÐ3JÐ2KÐLÑLÔLñô ð ð ð õ ÝØØØ,Ð.EÐFð	
ñ 	
ô 	
ñô ð ð ð õ ÝØØØ,Ð.PÐQð	
ñ 	
ô 	
ñô ð ð ð õ Ý�u S°"À5ÐIÑIÔIñô ð ð ð õ •x¨C¸Ð<Ñ<Ô<Ñ=Ô=Ð=Ð=Ð=Ý�8°Ð>UÐ=VÐWÑWÔWÑXÔXÐXÐXÐXÝÝ˜SÐ+MÐ*NÐOÑOÔOñô ð ð ð õ �8°¸RÈeÐTÑTÔTÑUÔUÐUÐUÐUÐUÐUr<   c            	      óÌ  ‡— dt           t                   dt          dt          t          t
          t
          f                  fd„Š	 ddt          dt           t                   dt          dt          fˆfd„} ddt           t                   dt          dt          fˆfd	„}i dd
iddid
ddœfD ]f}t          t          t
          t          f         |¦  «        }d | di |¤Žfd | dddi|¤Žfd | dddi|¤ŽffD ]\  }}t          ||¦  «        dk    sJ ‚ŒŒgddid
ddœfD ]Y}t          t          t
          t          f         |¦  «        }d  |di |¤Žfd | di |¤ŽffD ]\  }}t          ||¦  «        dk    sJ ‚ŒŒZd  |d
¬¦  «        fd | d
¬¦  «        ffD ]\  }}t          ||¦  «        dk    sJ ‚Œt          d  |¦   «         ¦  «        dk    sJ ‚t          d | ¦   «         ¦  «        dk    sJ ‚d S )NÚclÚter)   c                 ó„   — g }| �$|                      dt          | ¦  «        f¦  «         |r|                      d¦  «         |S )NúContent-Length©zTransfer-EncodingÚchunked)ÚappendÚstr)r@   rA   r1   s      r=   r1   z#test__body_framing.<locals>.headers?   sJ   € ØˆØˆ>Ø�NŠNÐ,­c°"©g¬gÐ6Ñ7Ô7Ð7Øð 	=Ø�NŠNÐ;Ñ<Ô<Ð<Øˆr<   r7   Fr9   c                 ó:   •— t          |  ‰||¦  «        ¬¦  «        S )Nr8   )r   )r9   r@   rA   r1   s      €r=   Úrespz test__body_framing.<locals>.respG   s"   ø€ õ  K¸¸ÀÀR¹¼ÐIÑIÔIÐIr<   c                 óL   •—  ‰| |¦  «        }|dgz  }t          dd|¬¦  «        S )N©r-   zexample.comr+   r,   r.   )r   )r@   rA   Úhr1   s      €r=   Úreqztest__body_framing.<locals>.reqL   s5   ø€ ØˆG�B˜‰OŒOˆØ	Ð%Ð&Ñ&ˆÝ˜e¨C¸Ð;Ñ;Ô;Ð;r<   éd   T)r@   rA   ó   HEADó   GETéÌ   i0  )úcontent-length)r   )rE   r;   )r@   )rR   )rN   )zhttp/1.0r;   )r7   NF)NFr;   )r   ÚintÚboolr   r   rG   r   r   r   r   r   r   )rI   rM   ÚkwargsÚmethÚrr1   s        @r=   Útest__body_framingrX   >   sÜ  ø€ ð•H�S”Mð ¥tð µµU½3Å¸8´_Ô0Eð ð ð ð ð FKðJð JÝðJÝ$,­S¤MðJÝ>BðJå	ðJð Jð Jð Jð Jð Jð
<ð <•�”ð <­$ð <½7ð <ð <ð <ð <ð <ð <ð ˜˜c�{ T¨4 L¸ÀDÐ2IÐ2IÐJð Fð FˆÝ•d�3¥˜8”n fÑ-Ô-ˆà�d�d�n�n˜V�n�nÐ%Ø�T�TÐ4Ð4 cÐ4¨VÐ4Ð4Ð5Ø�T�TÐ4Ð4 cÐ4¨VÐ4Ð4Ð5ð
ð 	Fð 	F‰GˆD�!õ
 !  qÑ)Ô)Ð-EÒEÐEÐEÐEÐEð	Fð ˜$�<¨°4Ð!8Ð!8Ð9ð =ð =ˆÝ•d�3¥˜8”n fÑ-Ô-ˆØ˜s˜s˜}˜} V˜}˜}Ð-°¸¸¸¸¸v¸¸Ð/GÐHð 	=ð 	=‰GˆD�!Ý   qÑ)Ô)¨_Ò<Ð<Ð<Ð<Ð<ð	=ð ˜3˜3 #˜;™;œ;Ð'¨&°$°$¸#°,±,´,Ð)?Ð@ð Dð D‰ˆˆaÝ˜T 1Ñ%Ô%Ð)CÒCÐCÐCÐCÐCõ ˜˜s˜s™uœuÑ%Ô%Ð)AÒAÐAÐAÐAÝ˜  ¡¤Ñ(Ô(Ð,<Ò<Ð<Ð<Ð<Ð<Ð<r<   c            	      óò  — t          j        t          ¦  «        5  t          d¦  «         d d d ¦  «         n# 1 swxY w Y   t	          ¦   «         } | j        t                   j        t          u sJ ‚| j        t                   j        t          u sJ ‚| j        t                   j        t          u sJ ‚| j        t                   j        t          u sJ ‚|  
                    t          t          ddddg¬¦  «        ¦  «        }|dk    sJ ‚| j        D ]'}|j        t          t          t          t          ik    sJ ‚Œ(| j        t                   j        t          u sJ ‚| j        t                   j        t          u sJ ‚| j        t                   j        t          u sJ ‚| j        t                   j        t          u sJ ‚| j        t                   j        �J ‚| j        t                   j        dk    sJ ‚|  
                    t          t'          d	g ¬
¦  «        ¦  «        }|dk    sJ ‚|  
                    t          t)          ddg¬
¦  «        ¦  «        }|dk    sJ ‚| j        D ]'}|j        t          t          t          t          ik    sJ ‚Œ(| j        t                   j        dk    sJ ‚| j        t                   j        dk    sJ ‚|  
                    t          t+          d¬¦  «        ¦  «        }|dk    sJ ‚|  
                    t          t+          d¬¦  «        t+          d¬¦  «        t-          ¦   «         g¬¦  «        }|dk    sJ ‚|  
                    t          t-          ¦   «         g ¬¦  «        }|dk    sJ ‚| j        D ]'}|j        t          t.          t          t          ik    sJ ‚Œ(|  
                    t          t+          d¬¦  «        ¦  «        }|dk    sJ ‚|  
                    t          t+          d¬¦  «        t+          d¬¦  «        t-          ¦   «         g¬¦  «        }|dk    sJ ‚|  
                    t          t-          ¦   «         g ¬¦  «        }|dk    sJ ‚| j        D ]'}|j        t          t.          t          t.          ik    sJ ‚Œ(d S )Nr   r+   r,   rK   ©rC   Ú10r.   s9   GET / HTTP/1.1
Host: example.com
Content-Length: 10

ó   1.1rN   r8   s   HTTP/1.1 100 

r7   )rC   Ú11s%   HTTP/1.1 200 
Content-Length: 11

ó   12345©Údataó   67890©Úexpectr<   ó
   1234567890ó   1)ÚpytestÚraisesÚ
ValueErrorr   r&   Úconnr   Úour_roleÚ
their_roler    Úsendr   ÚconnsÚstatesr   r   Ú	our_stateÚtheir_stateÚtheir_http_versionr   r   r   r   r   ©Úpr`   ri   s      r=   Ú)test_Connection_basics_and_content_lengthrt   j   s  € Ý	Œ•zÑ	"Ô	"ð ð Ý�8ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 	ÑÔ€AØŒ6•&Œ>Ô"¥fÐ,Ð,Ð,Ð,ØŒ6•&Œ>Ô$­Ð.Ð.Ð.Ð.ØŒ6•&Œ>Ô"¥fÐ,Ð,Ð,Ð,ØŒ6•&Œ>Ô$­Ð.Ð.Ð.Ð.à�6Š6ÝÝØØØ,Ð.FÐGð	
ñ 	
ô 	
ñô €Dð ØTòð ð ð ð ”ð Ið IˆØŒ{�v¥yµ&½-ÐHÒHÐHÐHÐHÐHØŒ6•&Œ>Ô#¥yÐ0Ð0Ð0Ð0ØŒ6•&Œ>Ô%­Ð6Ð6Ð6Ð6ØŒ6•&Œ>Ô#¥}Ð4Ð4Ð4Ð4ØŒ6•&Œ>Ô%­Ð2Ð2Ð2Ð2àŒ6•&Œ>Ô,Ð4Ð4Ð4ØŒ6•&Œ>Ô,°Ò6Ð6Ð6Ð6à�6Š6•&Õ/¸CÈÐLÑLÔLÑMÔM€DØÐ+Ò+Ð+Ð+Ð+à�6Š6•&�(¨sÐ=UÐ<VÐWÑWÔWÑXÔX€DØÐAÒAÐAÐAÐAà”ð Eð EˆØŒ{�v¥yµ&½)ÐDÒDÐDÐDÐDÐDàŒ6•&Œ>Ô,°Ò6Ð6Ð6Ð6ØŒ6•&Œ>Ô,°Ò6Ð6Ð6Ð6à�6Š6•&�$ HÐ-Ñ-Ô-Ñ.Ô.€DØ�8ÒÐÐÐØ�6Š6Ý•˜(Ð#Ñ#Ô#­T°xÐ-@Ñ-@Ô-@Å,Á.Ä.Ð,Qð ñ ô €Dð �8ÒÐÐÐØ�6Š6•&�,™.œ.°ˆ6Ñ4Ô4€DØ�3Š;ˆ;ˆ;ˆ;à”ð @ð @ˆØŒ{�v¥t­VµYÐ?Ò?Ð?Ð?Ð?Ð?à�6Š6•&�$ MÐ2Ñ2Ô2Ñ3Ô3€DØ�=Ò Ð Ð Ð Ø�6Š6•&�$ D˜/™/œ/µ4¸T°?±?´?ÅLÁNÄNÐ2Sˆ6ÑTÔT€DØ�4Š<ˆ<ˆ<ˆ<Ø�6Š6•&�,™.œ.°ˆ6Ñ4Ô4€DØ�3Š;ˆ;ˆ;ˆ;à”ð ;ð ;ˆØŒ{�v¥t­VµTÐ:Ò:Ð:Ð:Ð:Ð:ð;ð ;s   š6¶:½:c            	      óÀ  — t          ¦   «         } |                      t          t          ddddg¬¦  «        ¦  «         |                      t          t	          ddd¬¦  «        ¦  «        }|d	k    sJ ‚|                      t          t	          d
dd¬¦  «        ¦  «        }|dk    sJ ‚|                      t          t	          d¬¦  «        g ¬¦  «        }|dk    sJ ‚|                      t          t          dg¬¦  «        ¦  «        }|dk    sJ ‚|                      t          t          ddg¬¦  «        ¦  «         |                      t          t	          ddd¬¦  «        ¦  «         |                      t          t	          ddd¬¦  «        ¦  «         |                      t          t          ¦   «         ¦  «         | j        D ]'}|j	        t          t          t          t          ik    sJ ‚Œ(d S )Nr+   r,   rK   rD   r.   rd   T©r`   Úchunk_startÚ	chunk_ends   a
1234567890
s   abcdes
   5
abcde
r<   r_   rb   )ÚhelloÚthere)r1   s   0
hello: there

r7   r8   s   54321r^   )r&   rl   r   r   r   r   r    r   rm   rn   r   rr   s      r=   Útest_chunkedr{   ­   s×  € ÝÑÔ€Aà‡F‚FÝÝØØØ,Ð.NÐOð	
ñ 	
ô 	
ñô ð ð �6Š6•&�$ M¸tÈtÐTÑTÔTÑUÔU€DØÐ)Ò)Ð)Ð)Ð)Ø�6Š6•&�$ H¸$È$ÐOÑOÔOÑPÔP€DØÐ$Ò$Ð$Ð$Ð$Ø�6Š6•&�$ C˜.™.œ.°ˆ6Ñ4Ô4€DØ�3Š;ˆ;ˆ;ˆ;Ø�6Š6•&�,Ð0BÐ/CÐDÑDÔDÑEÔE€DØÐ/Ò/Ð/Ð/Ð/à‡F‚FÝ• SÐ3SÐ2TÐUÑUÔUñô ð ð ‡F‚F�6•4˜X°4À4ÐHÑHÔHÑIÔIÐIØ‡F‚F�6•4˜X°4À4ÐHÑHÔHÑIÔIÐIØ‡F‚F�6•<‘>”>Ñ"Ô"Ð"à”ð ;ð ;ˆØŒ{�v¥t­VµTÐ:Ò:Ð:Ð:Ð:Ð:ð;ð ;r<   c                  óD  — t          t          ¬¦  «        } d}|                      |¦  «         |                      ¦   «         t	          ddddg¬¦  «        k    sJ ‚|                      ¦   «         t
          u sJ ‚|                      d¦  «         |                      ¦   «         t          d	d
d
¬¦  «        k    sJ ‚|                      d¦  «         |                      ¦   «         t          dd
d¬¦  «        k    sJ ‚|                      d¦  «         |                      ¦   «         t          ddd¬¦  «        k    sJ ‚|                      d¦  «         |                      ¦   «         t          ddd
¬¦  «        k    sJ ‚|                      d¦  «         |                      ¦   «         t          d	d
d
¬¦  «        k    sJ ‚|                      d¦  «         |                      ¦   «         t
          k    sJ ‚|                      d¦  «         |                      ¦   «         t          ¦   «         k    sJ ‚d S )N©rj   óB   POST / HTTP/1.1
Host: example.com
Transfer-Encoding: chunked

ÚPOSTr,   rK   rD   r.   s
   5
hello
s   helloTrv   s   5
hels   helFó   ls   o
ó   os   5
helloó   
s   0

)r   r    Úreceive_dataÚ
next_eventr   r   r   r   )ri   Úrequests     r=   Útest_chunk_boundariesr†   Ì   s1  € Ý�vÐ&Ñ&Ô&€Dð	ð ð 	×Ò�gÑÔÐØ�?Š?ÑÔ¥ØØØ(Ð*JÐKð!ñ !ô !ò ð ð ð ð
 �?Š?ÑÔ¥	Ð)Ð)Ð)Ð)à×ÒÐ'Ñ(Ô(Ð(Ø�?Š?ÑÔ¥¨(ÀÐPTÐ UÑ UÔ UÒUÐUÐUÐUà×Ò�kÑ"Ô"Ð"Ø�?Š?ÑÔ¥¨&¸dÈeÐ TÑ TÔ TÒTÐTÐTÐTà×Ò�dÑÔÐØ�?Š?ÑÔ¥¨$¸EÈUÐ SÑ SÔ SÒSÐSÐSÐSà×Ò�hÑÔÐØ�?Š?ÑÔ¥¨$¸EÈTÐ RÑ RÔ RÒRÐRÐRÐRà×Ò�mÑ$Ô$Ð$Ø�?Š?ÑÔ¥¨(ÀÐPTÐ UÑ UÔ UÒUÐUÐUÐUà×Ò�gÑÔÐØ�?Š?ÑÔ¥	Ò)Ð)Ð)Ð)à×Ò�lÑ#Ô#Ð#Ø�?Š?ÑÔ¥¡¤Ò.Ð.Ð.Ð.Ð.Ð.r<   c                  ó`  — t          t          ¦  «        } |                      t          dddg¬¦  «        ¦  «         |                      t	          ¦   «         ¦  «         | j        t          u sJ ‚t          | d¦  «        t          dg dd¬	¦  «        gk    sJ ‚| j        t          u sJ ‚t          | d
¦  «        t          d
¬¦  «        gk    sJ ‚t          | d¦  «        t          d¬¦  «        gk    sJ ‚t          | d¦  «        t	          ¦   «         t          ¦   «         gk    sJ ‚| j        t          u sJ ‚d S )Nr+   r,   rK   r.   s   HTTP/1.0 200 OK

r7   r4   s   OK)r9   r1   r6   Úreasonr^   r_   ra   r<   )r   r   rl   r   r   ro   r   r(   r   r   r   r   rp   r   ©Úcs    r=   Ú$test_client_talking_to_http10_serverr‹   ó   sC  € Ý•6ÑÔ€AØ‡F‚F�7˜%¨Ð6MÐ5NÐOÑOÔOÑPÔPÐPØ‡F‚F�<‰>Œ>ÑÔÐØŒ;�$ÐÐÐÐå˜1Ð8Ñ9Ô9Ý˜S¨"¸5ÈÐOÑOÔOð>ò ð ð ð ð Œ;�*Ð$Ð$Ð$Ð$Ý˜1˜hÑ'Ô'­D°hÐ,?Ñ,?Ô,?Ð+@Ò@Ð@Ð@Ð@Ý˜1˜hÑ'Ô'­D°hÐ,?Ñ,?Ô,?Ð+@Ò@Ð@Ð@Ð@Ý˜1˜cÑ"Ô"¥|¡~¤~Õ7GÑ7IÔ7IÐ&JÒJÐJÐJÐJØŒ=�FÐ"Ð"Ð"Ð"Ð"Ð"r<   c                  ó.  — t          t          ¦  «        } t          | d¦  «        t          ddg d¬¦  «        t	          ¦   «         gk    sJ ‚| j        t          u sJ ‚|                      t          dg ¬¦  «        ¦  «        dk    sJ ‚|                      t          d	¬
¦  «        ¦  «        d	k    sJ ‚|                      t	          ¦   «         ¦  «        dk    sJ ‚| j
        t          u sJ ‚t          t          ¦  «        } t          | d¦  «        t          dddgd¬¦  «        t          d¬
¦  «        gk    sJ ‚t          | d¦  «        t          d¬
¦  «        t	          ¦   «         gk    sJ ‚| j        t          u sJ ‚t          | d¦  «        t          ¦   «         gk    sJ ‚d S )Nó   GET / HTTP/1.0

r+   r,   r4   r5   r7   r8   ó$   HTTP/1.1 200 
Connection: close

r^   r_   r<   s(   POST / HTTP/1.0
Content-Length: 10

1r   rZ   re   s	   234567890)r   r    r(   r   r   rp   r   rl   r   r   ro   r   r‰   s    r=   Ú$test_server_talking_to_http10_clientr�     sÏ  € Ý•6ÑÔ€Aõ ˜1Ð7Ñ8Ô8Ý�u S°"À5ÐIÑIÔIÝ‰Œð=ò ð ð ð ð Œ=�JÐ&Ð&Ð&Ð&ð 	
�Š�x C°Ð4Ñ4Ô4Ñ5Ô5Ø8ò	9ð 	9ð 	9ð 	9ð �6Š6•$˜HÐ%Ñ%Ô%Ñ&Ô&¨(Ò2Ð2Ð2Ð2Ø�6Š6•,‘.”.Ñ!Ô! SÒ(Ð(Ð(Ð(ØŒ;�*Ð$Ð$Ð$Ð$õ 	•6ÑÔ€Aå˜1ÐOÑPÔPÝØØØ-Ð.Øð		
ñ 	
ô 	
õ 	�$ˆ‰ŒðUò ð ð ð õ ˜1˜lÑ+Ô+µ¸,Ð0GÑ0GÔ0GÍÉÌÐ/XÒXÐXÐXÐXØŒ=�JÐ&Ð&Ð&Ð&Ý˜1˜cÑ"Ô"Õ'7Ñ'9Ô'9Ð&:Ò:Ð:Ð:Ð:Ð:Ð:r<   c            	      óz  — dgg ddgfD �]0} t          t          t          t          t          f                  | ¦  «        } t	          ¦   «         }|                     t          t          dddg¬¦  «        t          ¦   «         g¦  «         |                     t          t          d| ¬¦  «        t          ddg¬¦  «        ¬	¦  «         t          t          ¦  «        }t          |d
¦  «         |                     t          d| ¬¦  «        ¦  «        dk    sJ ‚|                     t          d¬¦  «        ¦  «        dk    sJ ‚�Œ2d S )NrD   ©rC   Ú100r+   r,   rK   r.   r7   r8   rb   r�   rŽ   r^   r_   )r   r   r   rG   r&   rl   r   r   r   r    r   r   r(   r   )Úuser_headersrs   rŠ   s      r=   Ú,test_automatic_transfer_encoding_in_responser”   (  sc  € ð 
*Ð*Ø
ð 
*Ð+DÐEðð "7ñ "7ˆõ �D¥¥s­C x¤Ô1°<Ñ@Ô@ˆÝÑÔˆØ	�ŠÝå˜u¨SÐ;RÐ:SÐTÑTÔTÝ‘”ðñ	
ô 	
ð 	
ð 	
�ŠÝÝ ¨lÐ;Ñ;Ô;ÝØÐ*JÐ)Kðñ ô ð 	ñ 	
ô 	
ð 	
õ •vÑÔˆÝ˜Ð4Ñ5Ô5Ð5à�FŠF•8¨°\ÐBÑBÔBÑCÔCØ<ò=ð =ð =ð =ð �vŠv•d Ð)Ñ)Ô)Ñ*Ô*¨hÒ6Ð6Ð6Ð6Ñ6ðE"7ð "7r<   c            	      óð  — t          ¦   «         } |                      t          t          ddddg¬¦  «        t	          ¦   «         g¦  «         | j        D ]}|j        t                   t          u sJ ‚Œ|                      t          t          dg ¬¦  «        t	          ¦   «         gt          ddg¬¦  «        t	          ¦   «         g¬	¦  «         | j        D ]'}|j        t          t          t          t          ik    sJ ‚Œ(d S )
Nr+   r,   rK   r2   r.   rQ   r8   )Ú
connectionr3   rb   )
r&   rl   r   r   r   rm   rn   r   r    r   ©rs   ri   s     r=   Ú(test_automagic_connection_close_handlingr˜   R  s  € ÝÑÔ€Að ‡F‚FÝåØØØ0Ð2IÐJðñ ô õ
 ‰NŒNð	
ñ
ô 
ð 
ð ”ð 1ð 1ˆØŒ{�6Ô"¥jÐ0Ð0Ð0Ð0Ð0à‡F‚FÝå	˜c¨2Ð	.Ñ	.Ô	.µ±´Ð?õ  Ð/FÐ.GÐHÑHÔHÝ‰NŒNð
ð ñ 	ô 	ð 	ð ”ð Gð GˆØŒ{�v¥zµ6½:ÐFÒFÐFÐFÐFÐFðGð Gr<   c                  óü  — dt           fd„}  | ¦   «         }|                     t          t          dg ¬¦  «        ¦  «         |j        D ]}|j        rJ ‚|j        rJ ‚Œ | ¦   «         }|                     t          t          ddg¬¦  «        ¦  «         |j        D ]}|j        rJ ‚|j        rJ ‚Œ | ¦   «         }|                     t          t          d¬¦  «        ¦  «         |j        D ]}|j        rJ ‚|j        rJ ‚Œd S )	Nr)   c            	      ó  — t          ¦   «         } |                      t          t          ddg d¢¬¦  «        ¦  «         | j        D ]}|j        sJ ‚Œ| j        t                   j        rJ ‚| j        t                   j        sJ ‚| S )Nr+   r,   )rK   r‘   )ÚExpectz100-continuer.   )	r&   rl   r   r   rm   Ú"client_is_waiting_for_100_continueri   Ú!they_are_waiting_for_100_continuer    r—   s     r=   Úsetupz test_100_continue.<locals>.setups  s¡   € ÝÑÔˆØ	�ŠÝÝØØðð ð ðñ ô ñ	
ô 	
ð 	
ð ”Gð 	;ð 	;ˆDØÔ:Ð:Ð:Ð:Ð:Ø”6�&”>ÔCÐCÐCÐCØŒv•fŒ~Ô?Ð?Ð?Ð?Øˆr<   rN   r8   r7   rD   r^   r_   )
r&   rl   r    r   rm   rœ   r�   r   r   r   )rž   rs   ri   s      r=   Útest_100_continuerŸ   r  sS  € ð•>ð ð ð ð ð* 	ˆ‰Œ€AØ‡F‚F�6Õ(°SÀ"ÐEÑEÔEÑFÔFÐFØ”ð :ð :ˆØÔ:Ð:Ð:Ð:ØÔ9Ð9Ð9Ð9Ð9ð 	ˆ‰Œ€AØ‡F‚FÝ• SÐ3SÐ2TÐUÑUÔUñô ð ð ”ð :ð :ˆØÔ:Ð:Ð:Ð:ØÔ9Ð9Ð9Ð9Ð9ð 	ˆ‰Œ€AØ‡F‚F�6•4˜XÐ&Ñ&Ô&Ñ'Ô'Ð'Ø”ð :ð :ˆØÔ:Ð:Ð:Ð:ØÔ9Ð9Ð9Ð9Ð9ð:ð :r<   c                  óª  — t          t          ¦  «        } |                      d¦  «         |                      ¦   «         t          u sJ ‚t          j        t          ¦  «        5  	 |                      d¦  «         |                      ¦   «          Œ*# 1 swxY w Y   t          t          d¬¦  «        } |                      d¦  «         |                      d¦  «         |                      d¦  «         t          | ¦  «        t          d	d
ddg¬¦  «        t          ¦   «         gk    sJ ‚t          t          d¬¦  «        } |                      d¦  «         |                      d¦  «         t          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         n# 1 swxY w Y   t          t          d¬¦  «        } |                      d¦  «         |                      dddz  z   ¦  «         t          | ¦  «        t          d	d
ddg¬¦  «        t          ddz  ¬¦  «        t          ¦   «         gk    sJ ‚t          t          d¬¦  «        } |                      d¦  «         t          | ¦  «        t          d	ddg¬¦  «        t          ¦   «         gk    sJ ‚|                      d¦  «         |                      t          dg ¬¦  «        ¦  «         |                      t          ¦   «         ¦  «         |                      ¦   «          t          | ¦  «        t          d	ddg¬¦  «        t          ¦   «         gk    sJ ‚|                      t          dg ¬¦  «        ¦  «         |                      t          ¦   «         ¦  «         |                      ¦   «          t          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Ns   GET / HTTP/1.0
Endless: Ts   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaiˆ  )Úmax_incomplete_event_sizes   GET / HTTP/1.0
Big: s   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas   

r+   r,   r4   )ÚbigÁ   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)r/   r0   r6   r1   i   s%   GET / HTTP/1.0
Content-Length: 10000ó   ai'  )rC   Ú10000r_   rN   s   GET /1 HTTP/1.1
Host: a

GET /2 HTTP/1.1
Host: b

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXú/1)ÚhostÚar.   sè  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXr7   r8   ú/2)r§   Úb)r   r    rƒ   r„   r   rf   rg   r#   r'   r   r   r   rl   r   Ústart_next_cycler‰   s    r=   Ú-test_max_incomplete_event_size_countermeasurer¬   Ÿ  sc  € å•6ÑÔ€AØ‡N‚NÐ1Ñ2Ô2Ð2Ø�<Š<‰>Œ>�YÐ&Ð&Ð&Ð&Ý	ŒÕ*Ñ	+Ô	+ð ð ð	Ø�NŠN˜;Ñ'Ô'Ð'Ø�LŠL‰NŒNˆNð	ðð ð ð øøøð ð ð ð õ 	•6°TÐ:Ñ:Ô:€AØ‡N‚NÐ-Ñ.Ô.Ð.Ø‡N‚N�;ÑÔÐØ‡N‚N�;ÑÔÐÝ˜!ÑÔÝØ °5ÐCVÐBWð	
ñ 	
ô 	
õ 	‰Œð	!ò ð ð ð õ 	•6°TÐ:Ñ:Ô:€AØ‡N‚NÐ-Ñ.Ô.Ð.Ø‡N‚N�;ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ð Ø	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ
 	•6°TÐ:Ñ:Ô:€AØ‡N‚NÐ=Ñ>Ô>Ð>Ø‡N‚N�; ¨¡Ñ-Ñ.Ô.Ð.Ý˜!ÑÔÝØØØØ0Ð1ð		
ñ 	
ô 	
õ 	�$˜‘,ÐÑÔÝ‰Œð	!ò 	ð 	ð 	ð 	õ 	•6°SÐ9Ñ9Ô9€Að ‡N‚Nð	<ñô ð õ ˜!ÑÔÝ�u T°M°?ÐCÑCÔCÝ‰Œð!ò ð ð ð ð
 ‡N‚N�;ÑÔÐà‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐØ×ÒÑÔÐÝ˜!ÑÔÝ�u T°M°?ÐCÑCÔCÝ‰Œð!ò ð ð ð ð ‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐØ×ÒÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ð Ø	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s6   Á ,BÂBÂBÅ:FÆFÆ"FÎ&OÏOÏOc                  ót  — t          ¦   «         } |                      t          t          dddg¬¦  «        t	          ¦   «         g¦  «         |                      t
          t          ddg¬¦  «        t	          ¦   «         g¦  «         | j        D ];}|j        t          t          t
          t          ik    sJ ‚| 
                    ¦   «          Œ<|                      t          t          dd	dg¬¦  «        t	          ¦   «         g¦  «         |                      t
          t          d
dg¬¦  «        t	          ¦   «         g¦  «         d S )Nr+   r,   ©r-   r¨   r.   r7   ©s   transfer-encodings   chunkedr8   ÚDELETEú/fooé”  )r&   rl   r   r   r   r    r   rm   rn   r   r«   r—   s     r=   Útest_reuse_simpler³   ë  s@  € ÝÑÔ€AØ‡F‚FÝÝ	˜ c°M°?Ð	CÑ	CÔ	CÅ\Á^Ä^ÐTñô ð ð ‡F‚FÝå Ð/QÐ.RÐSÑSÔSÝ‰NŒNð	
ñô ð ð ”ð  ð  ˆØŒ{�v¥t­VµTÐ:Ò:Ð:Ð:Ð:Ø×ÒÑÔÐÐà‡F‚FÝå˜8¨F¸]¸OÐLÑLÔLÝ‰NŒNð	
ñô ð ð ‡F‚FÝå Ð/QÐ.RÐSÑSÔSÝ‰NŒNð	
ñô ð ð ð r<   c                  óN  — t          t          ¦  «        } |                      ¦   «         t          u sJ ‚|                      d¦  «         t          | ¦  «        t          ddddg¬¦  «        t          d¬¦  «        t          ¦   «         gk    sJ ‚| j	        t          u sJ ‚| j        t          u sJ ‚|                      ¦   «         t          u sJ ‚|                      t          d	g ¬
¦  «        ¦  «         |                      t          ¦   «         ¦  «         | j	        t          u sJ ‚| j        t          u sJ ‚|                      ¦   «          t          | ¦  «        t          ddddg¬¦  «        t          d¬¦  «        t          ¦   «         gk    sJ ‚|                      ¦   «         t          u sJ ‚|                      t          d	g ¬
¦  «        ¦  «         |                      t          ¦   «         ¦  «         |                      ¦   «          t          | ¦  «        t          dddg¬¦  «        t          ¦   «         gk    sJ ‚|                      ¦   «         t          u sJ ‚|                      t          d	g ¬
¦  «        ¦  «         |                      t          ¦   «         ¦  «         |                      ¦   «         t          u sJ ‚|                      d¦  «         |                      ¦   «         t          u sJ ‚| j        dk    sJ ‚|                      d¦  «         | j        dk    sJ ‚|                      ¦   «         t          u sJ ‚|                      d¦  «         |                      ¦   «         t          u sJ ‚t%          j        t(          ¦  «        5  |                      d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Ns�   GET /1 HTTP/1.1
Host: a.com
Content-Length: 5

12345GET /2 HTTP/1.1
Host: a.com
Content-Length: 5

67890GET /3 HTTP/1.1
Host: a.com

r+   r¦   )r-   úa.com)rC   Ú5r.   r^   r_   r7   r8   r©   ra   z/3ó   SADF)r·   Fr<   )r·   Ts   FDSA)r   r    r„   r   rƒ   r'   r   r   r   rp   r   ro   r   r   rl   r   r«   Útrailing_datarf   rg   ÚRuntimeErrorr‰   s    r=   Útest_pipeliningrº     sç  € å•6ÑÔ€AØ�<Š<‰>Œ>�YÐ&Ð&Ð&Ð&à‡N‚Nð	2ñô ð õ ˜!ÑÔÝØØØ&Ð(?Ð@ð	
ñ 	
ô 	
õ
 	�(ÐÑÔÝ‰Œð!ò ð ð ð ð Œ=�DÐ Ð Ð Ð ØŒ;�-Ð'Ð'Ð'Ð'à�<Š<‰>Œ>�VÐ#Ð#Ð#Ð#à‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐØŒ=�DÐ Ð Ð Ð ØŒ;�$ÐÐÐÐà×ÒÑÔÐå˜!ÑÔÝØØØ&Ð(?Ð@ð	
ñ 	
ô 	
õ
 	�(ÐÑÔÝ‰Œð!ò ð ð ð ð �<Š<‰>Œ>�VÐ#Ð#Ð#Ð#Ø‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐØ×ÒÑÔÐå˜!ÑÔÝ�u TÐ4EÐ3FÐGÑGÔGÝ‰Œð!ò ð ð ð ð
 �<Š<‰>Œ>�YÐ&Ð&Ð&Ð&Ø‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐð �<Š<‰>Œ>�YÐ&Ð&Ð&Ð&Ø‡N‚N�7ÑÔÐØ�<Š<‰>Œ>�VÐ#Ð#Ð#Ð#ØŒ?Ð.Ò.Ð.Ð.Ð.à‡N‚N�3ÑÔÐØŒ?˜oÒ-Ð-Ð-Ð-Ø�<Š<‰>Œ>�VÐ#Ð#Ð#Ð#Ø‡N‚N�3ÑÔÐØ�<Š<‰>Œ>�VÐ#Ð#Ð#Ð#å	Œ•|Ñ	$Ô	$ð  ð  Ø	�Š�wÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð  ð  s   Í7NÎNÎ!Nc            	      ó¼
  ‡— t          ddddg¬¦  «        t          ddg¬¦  «        t          d	dg¬¦  «        ft          d
dg d¢¬¦  «        t          d	dg¬¦  «        t          ddg¬¦  «        ft          ddg d¢¬¦  «        t          ddg¬¦  «        t          d	dg¬¦  «        ft          ddg d¢¬¦  «        t          ddg¬¦  «        t          ddg¬¦  «        ffD �]~\  Š} }dt          fˆfd„} |¦   «         }|                     t
          | ¦  «         |j        D ]'}|j        t          t          t
          t          ik    sJ ‚Œ(|                     t
          t          ¦   «         ¦  «         |j        D ]}|                     ¦   «          Œ |¦   «         }|                     t
          |¦  «         |j        D ]˜}|j        t          t          t
          t          ik    sJ ‚|                     d¦  «         |                     ¦   «         t           u sJ ‚|                     d¦  «         |                     ¦   «         t           u sJ ‚|j        dk    sJ ‚Œ™ |¦   «         }|j        t
                   }|                     d¦  «         |                     ¦   «         t           u sJ ‚|j        dk    sJ ‚|                     | ¦  «         |                     ¦   «         t           u sJ ‚|                     t          ¦   «         ¦  «         |                     ¦   «          t'          |¦  «        t          d
dg d¬¦  «        t          ¦   «         gk    sJ ‚ |¦   «         }|j        t
                   }|                     d¦  «         |                     ¦   «         t           u sJ ‚|j        dk    sJ ‚|                     t
          |¦  «         |                     ¦   «         t           u sJ ‚ |¦   «         }|j        t
                   }|                     d¦  «         |                     ¦   «         t           u sJ ‚|                     | ¦  «         |                     ¦   «         t)          ¦   «         k    sJ ‚ |¦   «         }t+          j        t.          ¦  «        5  |j        t                                        t          d
ddg¬¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y    |¦   «         }|                     t
          |¦  «         t+          j        t.          ¦  «        5  |j        t
                                        t1          d¬¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   �Œ€d S )NÚCONNECTzexample.com:443©r-   Úfoo©rC   Ú1r.   r²   r¯   r8   r7   r+   r,   )r½   r¿   )ÚUpgradeza, bée   )rÁ   r¨   )rÁ   rª   r)   c                  ó¶  •— t          ¦   «         } |                      t          ‰¦  «         | j        D ]}|j        t                   t
          u sJ ‚Œ|                      t          t          d¬¦  «        t          ¦   «         g¦  «         | j        D ]}|j        t                   t          u sJ ‚Œ| j	        t                                        ¦   «         t          u sJ ‚| S )Nre   r_   )r&   rl   r   rm   rn   r   r   r   r   ri   r    r„   r   )rs   ri   rM   s     €r=   rž   z#test_protocol_switch.<locals>.setup~  sÌ   ø€ ÝÑ Ô ˆAØ�FŠF•6˜3ÑÔÐð œð 8ð 8�Ø”{¥6Ô*­iÐ7Ð7Ð7Ð7Ð7Ø�FŠF•6�D d˜O™OœO­\©^¬^Ð<Ñ=Ô=Ð=Øœð Dð D�Ø”{¥6Ô*Õ.CÐCÐCÐCÐCÐCØ”6�&”>×,Ò,Ñ.Ô.µ&Ð8Ð8Ð8Ð8ØˆHr<   ó   123s   456)s   123456Fr�   )r�   Fr4   r5   r<   )r<   Tr®   r_   )r   r   r   r&   rl   r    rm   rn   r   r   r   r   r«   r!   rƒ   r„   r   r¸   ri   r'   r   rf   rg   r"   r   )ÚdenyÚacceptrž   rs   ri   ÚscrM   s         @r=   Útest_protocol_switchrÈ   T  s  ø€ õ Ø Ø(Ø(Ð*AÐBðñ ô õ
  Ð/QÐ.RÐSÑSÔSÝ Ð/QÐ.RÐSÑSÔSð	
õ ØØØWÐWÐWðñ ô õ
  Ð/QÐ.RÐSÑSÔSÝ!¨cÐ<LÐ;MÐNÑNÔNð	
õ Ø Ø(ØWÐWÐWðñ ô õ
  Ð/QÐ.RÐSÑSÔSå Ð/QÐ.RÐSÑSÔSð		
õ Ø Ø(ØWÐWÐWðñ ô õ
  Ð/QÐ.RÐSÑSÔSå!¨cÐ<LÐ;MÐNÑNÔNð		
ð;' ð y3ñ y3Ñˆˆd�FðR	•~ð 	ð 	ð 	ð 	ð 	ð 	ð ˆE‰GŒGˆØ	�Š�v�tÑÔÐØ”Gð 	Dð 	DˆDØ”;¥6­4µ½Ð"CÒCÐCÐCÐCÐCØ	�Š�v•|‘~”~Ñ&Ô&Ð&à”Gð 	$ð 	$ˆDØ×!Ò!Ñ#Ô#Ð#Ð#ð ˆE‰GŒGˆØ	�Š�v�vÑÔÐØ”Gð 	<ð 	<ˆDØ”;¥6Õ+<½fÕFWÐ"XÒXÐXÐXÐXØ×Ò˜fÑ%Ô%Ð%Ø—?’?Ñ$Ô$­Ð.Ð.Ð.Ð.Ø×Ò˜fÑ%Ô%Ð%Ø—?’?Ñ$Ô$­Ð.Ð.Ð.Ð.ØÔ%Ð);Ò;Ð;Ð;Ð;Ð;ð ˆE‰GŒGˆØŒV•FŒ^ˆØ
�ŠÐ1Ñ2Ô2Ð2Ø�}Š}‰Œ¥&Ð(Ð(Ð(Ð(ØÔÐ#EÒEÐEÐEÐEØ
�Š�‰ŒˆØ�}Š}‰Œ¥&Ð(Ð(Ð(Ð(Ø
�Š•‘”ÑÔÐØ
×ÒÑÔÐÝ˜bÑ!Ô!Ý˜5¨°bÀuÐMÑMÔMÝ‰NŒNð&
ò 
ð 
ð 
ð 
ð ˆE‰GŒGˆØŒV•FŒ^ˆØ
�Š˜ÑÔÐØ�}Š}‰Œ¥&Ð(Ð(Ð(Ð(ØÔ ;Ò.Ð.Ð.Ð.Ø	�Š�v�vÑÔÐØ�}Š}‰Œ¥&Ð(Ð(Ð(Ð(àˆE‰GŒGˆØŒV•FŒ^ˆØ
�Š˜ÑÔÐØ�}Š}‰Œ¥&Ð(Ð(Ð(Ð(Ø
�Š�‰ŒˆØ�}Š}‰ŒÕ"2Ñ"4Ô"4Ò4Ð4Ð4Ð4ð ˆE‰GŒGˆÝŒ]Õ-Ñ.Ô.ð 	ð 	ØŒF•6ŒN×ÒÝ˜u¨S¸=¸/ÐJÑJÔJñô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ˆE‰GŒGˆØ	�Š�v�vÑÔÐÝŒ]Õ-Ñ.Ô.ð 	3ð 	3ØŒF•6ŒN×Ò¥¨&Ð 1Ñ 1Ô 1Ñ2Ô2Ð2ð	3ð 	3ð 	3ñ 	3ô 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3øøøð 	3ð 	3ð 	3ð 	3ùðqy3ð y3s$   Ò7SÓS
	ÓS
	Ô4UÕU	ÕU	c                  ó>  ‡‡— t           t          ft          t           ffD �]ü\  ŠŠdt          fˆˆfd„}  | ¦   «         }|j        ‰                              ¦   «         t          ¦   «         k    sJ ‚|j        ‰                              ¦   «         t          ¦   «         k    sJ ‚|j        ‰                              d¦  «         |j        ‰                              ¦   «         t          ¦   «         k    sJ ‚ | ¦   «         }|                     ‰t          ¦   «         ¦  «         |j        D ]"}|j	        t          u sJ ‚|j        t          u sJ ‚Œ# | ¦   «         }t          j        t          ¦  «        5  |j        ‰                              d¦  «         d d d ¦  «         n# 1 swxY w Y    | ¦   «         }|j        ‰                              d¦  «         t          j        t          ¦  «        5  |j        ‰                              ¦   «          d d d ¦  «         n# 1 swxY w Y   �Œþd S )Nr)   c                  ó²   •— t          ¦   «         } |                      ‰t          ¦   «         ¦  «         | j        D ]}|j        ‰t
          ‰t          ik    sJ ‚Œ| S ©N)r&   rl   r   rm   rn   r   r   )rs   ri   Úwho_shot_firstÚwho_shot_seconds     €€r=   rž   z test_close_simple.<locals>.setupÖ  sn   ø€ ÝÑ Ô ˆAØ�FŠF�>Õ#3Ñ#5Ô#5Ñ6Ô6Ð6Øœð ð �Ø”{Ø"¥FØ#¥Zð'ò ð ð ð ð ð ˆHr<   r<   rÄ   rP   )r   r    r&   ri   r„   r   rƒ   rl   rm   ro   r   rp   rf   rg   r¹   r#   )rž   rs   ri   rÌ   rÍ   s      @@r=   Útest_close_simplerÎ   Ñ  s�  øø€ õ 06µvÐ.>ÅÍÐ@PÐ-Qð #0ñ #0Ñ)ˆ˜ð	•~ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð ˆE‰GŒGˆØŒv�oÔ&×1Ò1Ñ3Ô3Õ7GÑ7IÔ7IÒIÐIÐIÐIØŒv�oÔ&×1Ò1Ñ3Ô3Õ7GÑ7IÔ7IÒIÐIÐIÐIØ	ŒˆÔ×,Ò,¨SÑ1Ô1Ð1ØŒv�oÔ&×1Ò1Ñ3Ô3Õ7GÑ7IÔ7IÒIÐIÐIÐIàˆE‰GŒGˆØ	�ŠˆÕ 0Ñ 2Ô 2Ñ3Ô3Ð3Ø”Gð 	.ð 	.ˆDØ”>¥VÐ+Ð+Ð+Ð+ØÔ#¥vÐ-Ð-Ð-Ð-Ð-ð ˆE‰GŒGˆÝŒ]�<Ñ(Ô(ð 	9ð 	9ØŒF�?Ô#×0Ò0°Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9ð ˆE‰GŒGˆØ	Œˆ~Ô×+Ò+¨FÑ3Ô3Ð3ÝŒ]Õ.Ñ/Ô/ð 	0ð 	0ØŒF�>Ô"×-Ò-Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ùðE#0ð #0s$   Å)!FÆF	ÆF	Ç$ HÈH	ÈH	c            	      ó|	  — t          dddg¬¦  «        t          ¦   «         g} t          ddg¬¦  «        t          ¦   «         g}t          ¦   «         }|                     t
          t          ¦   «         ¦  «         |j        D ]'}|j        t
          t          t          t          ik    sJ ‚Œ(t          ¦   «         }|                     t
          | ¦  «         |                     t
          t          ¦   «         ¦  «         |j        D ]'}|j        t
          t          t          t          ik    sJ ‚Œ(t          ¦   «         }|                     t
          | ¦  «         t          j        t          ¦  «        5  |j        t                                        t          ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   |j        t
                                        d¦  «         t          j        t$          ¦  «        5  |j        t
                                        ¦   «          d d d ¦  «         n# 1 swxY w Y   t          ¦   «         }|                     t
          | ¦  «         |                     t          |¦  «         |                     t          t          ¦   «         ¦  «         |j        D ]'}|j        t
          t          t          t          ik    sJ ‚Œ(t          ¦   «         }|                     t
          | ¦  «         |                     t          |¦  «         |                     t
          t          ¦   «         ¦  «         |                     t          t          ¦   «         ¦  «         |                     t
          t          ¦   «         ¦  «         |                     t          t          ¦   «         ¦  «         t          ¦   «         }|                     t
          t          dd	dd
g¬¦  «        ¦  «         t          j        t          ¦  «        5  |j        t
                                        t          ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   |j        t                                        d¦  «         t          j        t$          ¦  «        5  |j        t                                        ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nr+   r±   r®   r.   r7   r¯   r8   r<   r,   rZ   )r   r   r   r&   rl   r   r   rm   rn   r   r    r   r   rf   rg   r"   ri   rƒ   r#   r„   )rM   rI   rs   ri   s       r=   Útest_close_different_statesrÐ   ú  sè  € å�u V°m°_ÐEÑEÔEÝ‰Œð€Cõ
 	˜SÐ+MÐ*NÐOÑOÔOÝ‰Œð€Dõ 	ÑÔ€AØ‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&Ø”ð Cð CˆØŒ{�v¥v­vµzÐBÒBÐBÐBÐBÐBõ 	ÑÔ€AØ‡F‚F�6�3ÑÔÐØ‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&Ø”ð Fð FˆØŒ{�v¥v­vµ}ÐEÒEÐEÐEÐEÐEõ 	ÑÔ€AØ‡F‚F�6�3ÑÔÐÝ	ŒÕ)Ñ	*Ô	*ð 0ð 0Ø	Œ�vŒ×ÒÕ,Ñ.Ô.Ñ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0à„F�6„N×Ò Ñ$Ô$Ð$Ý	ŒÕ*Ñ	+Ô	+ð $ð $Ø	Œ�vŒ×!Ò!Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $õ 	ÑÔ€AØ‡F‚F�6�3ÑÔÐØ‡F‚F�6�4ÑÔÐØ‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&Ø”ð Cð CˆØŒ{�v¥zµ6½6ÐBÒBÐBÐBÐBÐBõ 	ÑÔ€AØ‡F‚F�6�3ÑÔÐØ‡F‚F�6�4ÑÔÐØ‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&Ø‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&Ø‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&Ø‡F‚F�6Õ#Ñ%Ô%Ñ&Ô&Ð&õ 	ÑÔ€AØ‡F‚FÝÝØ ¨}Ð>VÐ.Wð	
ñ 	
ô 	
ñô ð õ 
ŒÕ)Ñ	*Ô	*ð 0ð 0Ø	Œ�vŒ×ÒÕ,Ñ.Ô.Ñ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0à„F�6„N×Ò Ñ$Ô$Ð$Ý	ŒÕ*Ñ	+Ô	+ð $ð $Ø	Œ�vŒ×!Ò!Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $sH   Å'2F%Æ%F)Æ,F)Ç.%HÈH#È&H#Ï82P6Ð6P:Ð=P:Ñ?%R1Ò1R5Ò8R5c                  ót  — t          t          ¦  «        } |                      d¦  «         |                      d¦  «         t          | ¦  «        t	          ddddg¬¦  «        t          d¬	¦  «        t          ¦   «         gk    sJ ‚| j        t                   t          u sJ ‚|  
                    t          d
g ¬¦  «        ¦  «         |  
                    t          ¦   «         ¦  «         | j        t                   t          u sJ ‚|                      ¦   «          t          | ¦  «        t	          ddddg¬¦  «        t          d¬	¦  «        t          ¦   «         t          ¦   «         gk    sJ ‚| j        t          t          t          t          ik    sJ ‚|  
                    t          d
g ¬¦  «        ¦  «         |  
                    t          ¦   «         ¦  «         | j        t          t          t          t           ik    sJ ‚|  
                    t          ¦   «         ¦  «         | j        t          t          t          t          ik    sJ ‚d S )Nsp   GET /1 HTTP/1.1
Host: a.com
Content-Length: 5

12345GET /2 HTTP/1.1
Host: a.com
Content-Length: 5

67890r<   r+   r¦   )r§   rµ   )rR   r¶   r.   r^   r_   r7   r8   r©   ra   )r   r    rƒ   r'   r   r   r   rn   r   r   rl   r   r«   r   r   r   r   r‰   s    r=   Útest_pipelined_closerÒ   <  s"  € Ý•6ÑÔ€Aà‡N‚Nð	ñô ð ð ‡N‚N�3ÑÔÐÝ˜!ÑÔÝØØØ&Ð(?Ð@ð	
ñ 	
ô 	
õ
 	�(ÐÑÔÝ‰Œð!ò ð ð ð ð Œ8•FÔ�tÐ#Ð#Ð#Ð#Ø‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐØŒ8•FÔ�tÐ#Ð#Ð#Ð#Ø×ÒÑÔÐÝ˜!ÑÔÝØØØ&Ð(?Ð@ð	
ñ 	
ô 	
õ
 	�(ÐÑÔÝ‰ŒÝÑÔð	!ò 	ð 	ð 	ð 	ð Œ8�¥­µÐ>Ò>Ð>Ð>Ð>Ø‡F‚F�8 ¨RÐ0Ñ0Ô0Ñ1Ô1Ð1Ø‡F‚F�<‰>Œ>ÑÔÐØŒ8�¥­µ
Ð;Ò;Ð;Ð;Ð;Ø‡F‚FÕÑÔÑÔÐØŒ8�¥­µÐ7Ò7Ð7Ð7Ð7Ð7Ð7r<   c            
      ó2  ‡—  G d„ d¦  «        }  | ¦   «         Šdt           t          t          f         dt          dt           t          t          t          t
                            f         fˆfd„} |dd¦  «        \  }}|‰gk    sJ ‚|                     t          ¦   «         ¦  «          |d	d¦  «        \  }}‰|v sJ ‚d
||                     ‰¦  «        <   d 	                    |¦  «        dk    sJ ‚ |d d¦  «        \  }}|‰gk    sJ ‚|j
        t          u sJ ‚d S )Nc                   ó   — e Zd Zdefd„ZdS )ú*test_sendfile.<locals>.SendfilePlaceholderr)   c                 ó   — dS )Né
   r;   )Úselfs    r=   Ú__len__z2test_sendfile.<locals>.SendfilePlaceholder.__len__h  s   € Ø�2r<   N)Ú__name__Ú
__module__Ú__qualname__rS   rÙ   r;   r<   r=   ÚSendfilePlaceholderrÕ   g  s/   € € € € € ð	˜Sð 	ð 	ð 	ð 	ð 	ð 	r<   rÝ   Úheaderr6   r)   c                 ó\  •— t          t          ¦  «        }t          |d                     |¦  «                             d¦  «        ¦  «         g }| r|                     | ¦  «         |                     t          d|¬¦  «        ¦  «         ||                     t          ‰¬¦  «        ¦  «        fS )NzGET / HTTP/{}
Host: a

Úasciir7   r8   r_   )
r   r    r(   ÚformatÚencoderF   rl   r   Úsend_with_data_passthroughr   )rÞ   r6   rŠ   r1   Úplaceholders       €r=   rž   ztest_sendfile.<locals>.setupm  sª   ø€ õ •vÑÔˆÝØÐ1×8Ò8¸ÑFÔF×MÒMÈgÑVÔVñ	
ô 	
ð 	
ð ˆØð 	#Ø�NŠN˜6Ñ"Ô"Ð"Ø	�Š�x C°Ð9Ñ9Ô9Ñ:Ô:Ð:Ø�!×.Ò.­t¸Ð/EÑ/EÔ/EÑFÔFÐFÐFr<   rZ   z1.1rD   s
   xxxxxxxxxxr<   s   a
xxxxxxxxxx
r4   )r   rG   r   r   r   Úbytesrl   r   ÚindexÚjoinro   r   )rÝ   rž   rŠ   r`   Ú_rä   s        @r=   Útest_sendfileré   f  sr  ø€ ðð ð ð ð ñ ô ð ð &Ð%Ñ'Ô'€KðGÝ•c�3�h”ðGÝ/2ðGå	�z�8¥D­¤KÔ0Ð0Ô	1ðGð Gð Gð Gð Gð Gð ˆeÐ,¨eÑ4Ô4�G€A€tØ�K�=Ò Ð Ð Ð ð ‡F‚F�<‰>Œ>ÑÔÐàˆeÐ4°eÑ<Ô<�G€A€tØ˜$ÐÐÐÐØ$-€Dˆ�Š�KÑ	 Ô	 Ñ!Ø�8Š8�D‰>Œ>Ð3Ò3Ð3Ð3Ð3àˆe�D˜%Ñ Ô �G€A€tØ�K�=Ò Ð Ð Ð ØŒ;�)Ð#Ð#Ð#Ð#Ð#Ð#r<   c                  ó0  — t           t          fD �]} t          | ¬¦  «        }|                     d¦  «         t	          j        t          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   |j        t          u sJ ‚|j
        t          usJ ‚t          |j        j        ¦  «         t	          j        t          ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   | t          u r*|                     t          dg ¬¦  «        ¦  «        dk    sJ ‚�Œ dt           t"                   dt          fd„}t           t          fD �]º} | t           u r(t%          d	d
dg¬¦  «        }t%          d	d
dgd¬¦  «        }n,| t          u r#t          dg ¬¦  «        }t          dg d¬¦  «        } || ¦  «        }|                     |¦  «         |j
        t          usJ ‚ || ¦  «        }t	          j        t&          ¦  «        5  |                     |¦  «         d d d ¦  «         n# 1 swxY w Y   |j
        t          u sJ ‚|j        t          usJ ‚t	          j        t&          ¦  «        5  |                     |¦  «         d d d ¦  «         n# 1 swxY w Y    || ¦  «        }|                     ¦   «          |j
        t          u sJ ‚|j        t          usJ ‚|                     ¦   «          |j
        t          u sJ ‚|j        t          usJ ‚�Œ¼d S )Nr}   s   gibberish

i�  r8   s$   HTTP/1.1 400 
Connection: close

Úroler)   c                 óx   — t          | ¬¦  «        }| t          u r t          |d¦  «         |j        t          u sJ ‚|S )Nr}   r�   )r   r    r(   ro   r   ©rë   rŠ   s     r=   ri   ztest_errors.<locals>.conn¡  sD   € Ý Ð%Ñ%Ô%ˆØ•6ˆ>ˆ>å˜AÐ8Ñ9Ô9Ð9Ø”;¥-Ð/Ð/Ð/Ð/Øˆr<   r+   r,   rK   r.   r4   r5   r7   r:   )r   r    r   rƒ   rf   rg   r#   r„   rp   r   ro   ÚprintÚ_cstatern   rl   r   r	   r$   r   r"   Úsend_failed)rë   rŠ   ri   ÚgoodÚbads        r=   Útest_errorsró   Š  s!  € å�Ð ð ñ ˆÝ Ð%Ñ%Ô%ˆØ	�ŠÐ+Ñ,Ô,Ð,ÝŒ]Õ.Ñ/Ô/ð 	ð 	Ø�LŠL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð Œ}¥Ð%Ð%Ð%Ð%ØŒ{¥%Ð'Ð'Ð'Ð'ÝˆaŒiÔÑÔÐÝŒ]Õ.Ñ/Ô/ð 	ð 	Ø�LŠL‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð •6ˆ>ˆ>à—’•x¨C¸Ð<Ñ<Ô<Ñ=Ô=Ø@òAð Að Að Aùð•4�”>ð ¥jð ð ð ð õ �Ð ð $*ñ $*ˆØ•6ˆ>ˆ>õ  %°Ð>UÐ=VÐWÑWÔWˆDÝØØØ0Ð1Ø"ð	ñ ô ˆCˆCð •Vˆ^ˆ^Ý¨°RÐ8Ñ8Ô8ˆDÝ s°BÀUÐKÑKÔKˆCàˆD�‰JŒJˆØ	�Šˆt‰ŒˆØŒ{¥%Ð'Ð'Ð'Ð'àˆD�‰JŒJˆÝŒ]Õ-Ñ.Ô.ð 	ð 	Ø�FŠF�3‰KŒKˆKð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	àŒ{�eÐ#Ð#Ð#Ð#ØŒ}¥EÐ)Ð)Ð)Ð)åŒ]Õ-Ñ.Ô.ð 	ð 	Ø�FŠF�4‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ˆD�‰JŒJˆØ	�Š‰ŒˆØŒ{�eÐ#Ð#Ð#Ð#ØŒ}¥EÐ)Ð)Ð)Ð)à	�Š‰ŒˆØŒ{�eÐ#Ð#Ð#Ð#ØŒ}¥EÐ)Ð)Ð)Ð)Ñ)ðI$*ð $*sH   ÁA1Á1A5	Á8A5	ÃC/Ã/C3	Ã6C3	ÈH0È0H4	È7H4	É4JÊJ	ÊJ	c                  ó€   — t           t          fD ].} t          | ¦  «        }|                     ¦   «         t          u sJ ‚Œ/d S rË   )r   r    r   r„   r   rí   s     r=   Útest_idle_receive_nothingrõ   Ð  sI   € å�Ð ð +ð +ˆÝ�tÑÔˆØ�|Š|‰~Œ~¥Ð*Ð*Ð*Ð*Ð*ð+ð +r<   c                  óH  — t          t          ¦  «        } |                      d¦  «         |                      ¦   «         t          u sJ ‚|                      d¦  «         t          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Ns   GET /r<   )r   r    rƒ   r„   r   rf   rg   r#   r‰   s    r=   Útest_connection_dropr÷   ×  sÎ   € Ý•6ÑÔ€AØ‡N‚N�8ÑÔÐØ�<Š<‰>Œ>�YÐ&Ð&Ð&Ð&Ø‡N‚N�3ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ð Ø	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Á5BÂBÂBc                  óx   — t          ¦   «         } |                      t          t          ddg¬¦  «        ¦  «         d S )Ni˜  )s
   connections   closer8   )r&   rl   r    r   )rs   s    r=   Útest_408_request_timeoutrù   à  s:   € õ 	ÑÔ€AØ‡F‚F�6•8¨Ð6OÐ5PÐQÑQÔQÑRÔRÐRÐRÐRr<   c                  óä   — t          t          ¦  «        } |                      d¦  «         t          j        t
          ¦  «        5  |                      ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nr‚   ©r   r    rƒ   rf   rg   r#   r„   r‰   s    r=   Útest_empty_requestrü   è  s£   € Ý•6ÑÔ€AØ‡N‚N�7ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ð Ø	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð ó   ÁA%Á%A)Á,A)c                  ó0  — t          t          ¦  «        } |                      t          dddg¬¦  «        ¦  «         |                      d¦  «         t          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nr+   r,   r®   r.   r‚   )	r   r   rl   r   rƒ   rf   rg   r#   r„   r‰   s    r=   Útest_empty_responserÿ   ð  sÆ   € Ý•6ÑÔ€AØ‡F‚F�7˜%¨°m°_ÐEÑEÔEÑFÔFÐFØ‡N‚N�7ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ð Ø	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Á)BÂBÂBr`   )ó    ó    s    ¥c                 óä   — t          t          ¦  «        }|                     | ¦  «         t          j        t
          ¦  «        5  |                     ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S rË   rû   ©r`   rŠ   s     r=   Ú'test_early_detection_of_invalid_requestr  ø  ó¥   € õ 	•6ÑÔ€Aà‡N‚N�4ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ð Ø	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð rý   )r   r  s    1c                 óä   — t          t          ¦  «        }|                     | ¦  «         t          j        t
          ¦  «        5  |                     ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S rË   )r   r   rƒ   rf   rg   r#   r„   r  s     r=   Ú(test_early_detection_of_invalid_responser    r  rý   c                  óŠ  — dt           dt           dt          fd„} dD ]¦} | |d¦  «        }|                     t          dg ¬¦  «        ¦  «        d	k    sJ ‚ | |d
¦  «        }|                     t          dg ¬¦  «        ¦  «        dk    sJ ‚ | |d¦  «        }|                     t          dddg¬¦  «        ¦  «        d	k    sJ ‚Œ§d S )Nr/   r6   r)   c                 ó  — t          t          ¦  «        }|                     | dz   |z   dz   dz   ¦  «         t          |                     ¦   «         ¦  «        t
          u sJ ‚t          |                     ¦   «         ¦  «        t          u sJ ‚|S )Ns    / HTTP/r‚   s   Host: example.com

)r   r    rƒ   Útyper„   r   r   )r/   r6   rŠ   s      r=   rž   z(test_HEAD_framing_headers.<locals>.setup  s†   € Ý•vÑÔˆØ	�ŠØ�[Ñ  <Ñ/°'Ñ9Ð<XÑXñ	
ô 	
ð 	
õ �A—L’L‘N”NÑ#Ô#¥wÐ.Ð.Ð.Ð.Ý�A—L’L‘N”NÑ#Ô#¥|Ð3Ð3Ð3Ð3Øˆr<   )rP   rO   r\   r7   r8   s-   HTTP/1.1 200 
Transfer-Encoding: chunked

s   1.0rŽ   r‘   rD   )rå   r   rl   r   )rž   r/   rŠ   s      r=   Útest_HEAD_framing_headersr    s6  € ð•eð ­5ð µZð ð ð ð ð $ð 
ð 
ˆàˆE�&˜&Ñ!Ô!ˆà�FŠF•8¨°RÐ8Ñ8Ô8Ñ9Ô9ð >2ò 2ð 2ð 2ð 2ð
 ˆE�&˜&Ñ!Ô!ˆà�FŠF•8¨°RÐ8Ñ8Ô8Ñ9Ô9ð >)ò )ð )ð )ð )ð
 ˆE�&˜&Ñ!Ô!ˆà�FŠFÝØ #à1Ø8ððñ ô ñô ð2ò
2ð 
2ð 
2ð 
2ð 
2ð%
ð 
r<   c                  ó   — t          t          ¦  «        } |                      d¦  «         t          |                      ¦   «         ¦  «        t
          u sJ ‚|                      ¦   «         t          u sJ ‚|                      d¦  «         |                      ¦   «         t          d¬¦  «        k    sJ ‚|                      d¦  «         t          j	        t          ¦  «        5 }|                      ¦   «          d d d ¦  «         n# 1 swxY w Y   dt          |j        ¦  «        v sJ ‚dt          |j        ¦  «        v sJ ‚t          t          ¦  «        } |                      d¦  «         t          |                      ¦   «         ¦  «        t
          u sJ ‚|                      ¦   «         t          u sJ ‚|                      d¦  «         |                      ¦   «         j        d	k    sJ ‚|                      d¦  «         t          j	        t          ¦  «        5 }|                      ¦   «          d d d ¦  «         n# 1 swxY w Y   d
t          |j        ¦  «        v sJ ‚d S )Ns;   POST / HTTP/1.1
Host: example.com
Content-Length: 100

r^   r_   r<   zreceived 5 byteszexpected 100r~   s	   8
012345s   012345zincomplete chunked read)r   r    rƒ   r
  r„   r   r   r   rf   rg   r#   rG   Úvaluer`   )rŠ   Úexcinfos     r=   Ú;test_special_exceptions_for_lost_connection_in_message_bodyr  F  s‡  € Ý•6ÑÔ€AØ‡N‚NØVñô ð õ �—’‘”ÑÔ¥7Ð*Ð*Ð*Ð*Ø�<Š<‰>Œ>�YÐ&Ð&Ð&Ð&Ø‡N‚N�8ÑÔÐØ�<Š<‰>Œ>�T xÐ0Ñ0Ô0Ò0Ð0Ð0Ð0Ø‡N‚N�3ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ¨wØ	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à¥ W¤]Ñ!3Ô!3Ð3Ð3Ð3Ð3Ø�S ¤Ñ/Ô/Ð/Ð/Ð/Ð/å•6ÑÔ€AØ‡N‚Nð	.ñô ð õ
 �—’‘”ÑÔ¥7Ð*Ð*Ð*Ð*Ø�<Š<‰>Œ>�YÐ&Ð&Ð&Ð&Ø‡N‚N�>Ñ"Ô"Ð"Ø�<Š<‰>Œ>Ô )Ò+Ð+Ð+Ð+Ø‡N‚N�3ÑÔÐÝ	ŒÕ*Ñ	+Ô	+ð ¨wØ	�Š‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à$­¨G¬MÑ(:Ô(:Ð:Ð:Ð:Ð:Ð:Ð:s$   ÃC=Ã=DÄDÈ
H+È+H/È2H/)r)   N)JÚtypingr   r   r   r   r   r   r	   rf   Ú_connectionr   r   r   r   r   Ú_eventsr   r   r   r   r   r   r   Ú_stater   r   r   r   r   r   r   r   r   r    r!   Ú_utilr"   r#   r$   Úhelpersr&   r'   r(   r>   rX   rt   r{   r†   r‹   r�   r”   r˜   rŸ   r¬   r³   rº   rÈ   rÎ   rÐ   rÒ   ré   ró   rõ   r÷   rù   rü   rÿ   ÚmarkÚparametrizerå   r  r  r  r  r;   r<   r=   ú<module>r     sv  ðØ ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?à €€€à SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ Sðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð FÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EØ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DðVð Vð Vð Vð<)=ð )=ð )=ð )=ðX@;ð @;ð @;ð @;ðF;ð ;ð ;ð ;ð>$/ð $/ð $/ð $/ðN#ð #ð #ð #ð ";ð ";ð ";ð ";ðJ'7ð '7ð '7ð '7ðTGð Gð Gð Gð@*:ð *:ð *:ð *:ðZIð Ið Ið IðXð ð ð ðBE ð E ð E ð E ðPz3ð z3ð z3ð z3ðz&0ð &0ð &0ð &0ðR=$ð =$ð =$ð =$ðD'8ð '8ð '8ð '8ðT!$ð !$ð !$ð !$ðHC*ð C*ð C*ð C*ðL+ð +ð +ð +ðð ð ð ðSð Sð Sð Sðð ð ð ðð ð ð ð „×ÒØ
ðð ð ñô ð°%ð ¸Dð ð ð ñô ðð „×ÒØ
ðð ð ñô ð°5ð ¸Tð ð ð ñô ðð'
ð '
ð '
ð '
ðT;ð ;ð ;ð ;ð ;ð ;r<   