§
    nÈjX^  ã                   ó´  — d dl Zd dlmc mZ d dlZd dlZd dlZd dl	Z	d dl
mZ d dlZd dl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mZ d dlmZ d dlmZmZ d dl m!Z! d„ Z"d„ Z#d	„ Z$d
„ Z%d„ Z&d„ Z'ej(         )                    dddg¦  «        d„ ¦   «         Z*ej(         )                    dg d¢¦  «        d„ ¦   «         Z+d„ Z,d„ Z-d„ Z.ej(         )                    dg d¢¦  «        d„ ¦   «         Z/ej(         )                    dg d¢¦  «        d„ ¦   «         Z0 G d„ d¦  «        Z1 G d„ d ¦  «        Z2d;d"„Z3ej(         )                    d#e¦  «        d$„ ¦   «         Z4ej(         )                    d%g d&¢¦  «        d'„ ¦   «         Z5d(„ Z6d)„ Z7d*„ Z8ej9        d+„ ¦   «         Z:d,„ Z;d<d.„Z<d/„ Z=d0„ Z>d1„ Z?ej(         )                    d2g d3¢¦  «        d4„ ¦   «         Z@d5„ ZAd6„ ZBd7„ ZCd8„ ZDd9„ ZEd:„ ZFdS )=é    N)ÚSimpleNamespace)ÚSpeechPreferencesÚspeech_text_cleanupÚlanguage_forÚCloudflareMeloTTSÚSpeechErrorÚaudio_to_pcmÚHaihubSummaryÚSpeechManagerÚCHUNK_BYTESÚMODESÚconfigured_ttsÚnormalize_pcm_level)Úwav_pcm)ÚPiSessionRegistryÚPiSessionEvent)ÚCodexAdapterc                 ó*   — t          j        | ¦  «        S ©N)ÚasyncioÚrun)Úcoros    úZ/home/lighthouse/esp32-dev/.cache/main-promotion-test-20261009/server/tests/test_speech.pyr   r      s   € •g”k $Ñ'Ô'Ð'ó    c            	      óN  — dd l } |                      ddddd¦  «        }|                      dt          |¦  «        ¦  «        }g }|d         }d}||k    }|}|r/|d         }d}	||	k    }
|
}|
r|d         }|d	         }| }||k    }|}|�sdt	          j        d
|fd||f¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |rÂt	          j        d|
fd||	f¦  «        t	          j        |¦  «        t	          j        |	¦  «        dœz  }dd|iz  }|                     |¦  «         |
r`t	          j        d|fd||f¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         t	          j        |d¦  «        i z  }dd|iz  }t          t	          j
        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}
x}	x}x}x}} | j        ddgdgdz  ¢R Ž }d„ |                      dt          |¦  «        ¦  «        D ¦   «         }t          |¦  «        }d}||k    }|sÇt	          j        d|fd ||f¦  «        d!t          j        ¦   «         v st	          j        t          ¦  «        rt	          j        t          ¦  «        nd!t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d"œz  }d#d$|iz  }t          t	          j
        |¦  «        ¦  «        ‚d x}x}x}}|                      dd%d&d'd(¦  «        }t          |¦  «        }||k    }|�st	          j        d|fd)||f¦  «        d*t          j        ¦   «         v st	          j        t          ¦  «        rt	          j        t          ¦  «        nd*d+t          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        nd+t	          j        |¦  «        d+t          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        nd+d,œz  }d-d.|iz  }t          t	          j
        |¦  «        ¦  «        ‚d x}}d/}d0}||z  }t          |¦  «        }d/}d0}||z  }	||	k    } | sít	          j        d| fd1||	f¦  «        d*t          j        ¦   «         v st	          j        t          ¦  «        rt	          j        t          ¦  «        nd*t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d2œz  }!d3d4|!iz  }"t          t	          j
        |"¦  «        ¦  «        ‚d x}x}x}x}x} x}x}}	d S )5Nr   z<hhhhiè  iüÿÿéô  iþÿÿi   ip  é   )ú>)z%(py3)s > %(py6)s©Úpy3Úpy6ú%(py8)sÚpy8©ú<=)z%(py11)s <= %(py14)s©Úpy11Úpy14ú%(py16)sÚpy16©ú==)z%(py19)s == -%(py22)s)Úpy19Úpy22z%(py25)sÚpy25zassert %(py28)sÚpy28z<101hi N  éd   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S r   )Úabs)Ú.0Úsamples     r   ú	<genexpr>zHtest_quiet_pcm_gain_is_bounded_and_loud_pcm_unchanged.<locals>.<genexpr>   s(   è è € Ð[Ð[˜v�s�6‰{Œ{Ð[Ð[Ð[Ð[Ð[Ð[r   i�e  )z0%(py4)s
{%(py4)s = %(py0)s(%(py2)s)
} <= %(py7)sÚmax©Úpy0Úpy2Úpy4Úpy7úassert %(py9)sÚpy9i0u  iÐŠÿÿé'  iðØÿÿ)z0%(py3)s
{%(py3)s = %(py0)s(%(py1)s)
} == %(py5)sr   Úloud)r9   Úpy1r    Úpy5úassert %(py7)sr<   ó     é
   )zJ%(py7)s
{%(py7)s = %(py0)s((%(py2)s * %(py4)s))
} == (%(py10)s * %(py12)s))r9   r:   r;   r<   Úpy10Úpy12úassert %(py15)sÚpy15)ÚstructÚpackÚunpackr   Ú
@pytest_arÚ_call_reprcompareÚ	_safereprÚappendÚ_format_boolopÚAssertionErrorÚ_format_explanationr7   Ú@py_builtinsÚlocalsÚ_should_repr_global_name)#rJ   ÚquietÚraisedÚ@py_assert1Ú@py_assert2Ú@py_assert5Ú@py_assert4Ú@py_assert0Ú@py_assert10Ú@py_assert13Ú@py_assert12Ú@py_assert18Ú@py_assert21Ú@py_assert23Ú@py_assert20Ú@py_format7Ú@py_format9Ú@py_format15Ú@py_format17Ú@py_format24Ú@py_format26Ú@py_format27Ú@py_format29ÚspikyÚ@py_assert3Ú@py_assert6Ú@py_format8Ú@py_format10r@   Ú@py_format6Ú@py_assert9Ú@py_assert11Ú@py_assert8Ú@py_format14Ú@py_format16s#                                      r   Ú5test_quiet_pcm_gain_is_bounded_and_loud_pcm_unchangedrx      s¡  € Ø€M€M€MØ
�+Š+�g˜d 5¨¨TÑ
2Ô
2€EØ�=Š=˜Õ!4°UÑ!;Ô!;Ñ<Ô<€FØGÐGˆ6�!Œ9ÐG�TÐGˆ9�TŠ>ÐGÐGÐGÐGÐG˜f QœiÐG¨ÐG˜i¨šoÐGÐGÐGÐGÐG°&¸´)ÐG¸fÀQ¼iÐG¸i¸ZÐG°)¸ZÒ2GÐGÐGÐGÐGÑGÕGÔGÐGÐGÐGÐGˆ9�TÐGÑGÔGÕGÔGˆ9ÑGÔGÕGÔG�TÑGÔGÐGÐGÑGÐGÐGÐGÐGÐGÑGÐGÐG×GÒGÐGÑGÔGÐGÐGÐGÕGÔGÐGÐGÐGÐG˜i¨ÐGÑGÔGÕGÔG˜iÑGÔGÕGÔG¨ÑGÔGÐGÐGÑGÐGÐGÐGÐGÐGÑGÐGÐG×GÒGÐGÑGÔGÐGÐGÐGÕGÔGÐGÐGÐGÐG°)¸ZÐGÑGÔGÕGÔG°)ÑGÔGÕGÔG¸iÑGÔGÐGÐGÑGÐGÐGÐGÐGÐGÑGÐGÐG×GÒGÐGÑGÔGÐGÕGÔGÐGÐGÑGÔGÐGÑGÐGÐGÐGÐGÐGÑGÐGÕGÕGÔGÐGÑGÔGÑGÔGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGÐGØ
ˆ&Œ+�g˜eÐ
1 s e¨C¡iÐ
1Ð
1Ð
1€EØ[Ð[¨¯ª°wÕ?RÐSXÑ?YÔ?YÑ)ZÔ)ZÐ[Ñ[Ô[Ðb�3Ð[Ñ[Ô[ÐbÐ]bÐbÐ[Ð]bÒbÐbÐbÐbÕbÔbÐbÐbÐbÐbÐ[Ð]bÐbÑbÔbÐbÕbÔbÑbÔbÐbÐbÕbÔb�3ÑbÔbÐbÕbÔb�3ÑbÔbÐbÐbÕbÔbÐ[ÑbÔbÕbÔbÐ[ÑbÔbÕbÔbÐ]bÑbÔbÐbÐbÑbÐbÐbÐbÐbÐbÑbÐbÕbÕbÔbÐbÑbÔbÑbÔbÐbÐbÐbÐbÐbÐbÐbÐbÐbØ	�Š�W˜U 6¨%°Ñ	7Ô	7€DÝ˜tÑ$Ô$Ð*Ð$ dÒ*Ð*Ð*Ñ*Õ*Ô*Ð*Ð*Ð*Ð*Ð$ dÐ*Ñ*Ô*Ð*Õ*Ô*Ñ*Ô*Ð*Ð*Õ*Ô*ÕÑ*Ô*Ð*Õ*Ô*ÕÑ*Ô*Ð*Ð*Ð*Õ*Ô*Ñ*Ô*Ð*Ð*Õ*Ô*˜tÑ*Ô*Ð*Õ*Ô*˜tÑ*Ô*Ð*Ð*Õ*Ô*Ð$Ñ*Ô*Ð*Õ*Ô*Ñ*Ô*Ð*Ð*Õ*Ô* dÑ*Ô*Ð*Õ*Ô* dÑ*Ô*Ð*Ð*Ð*Ð*Ñ*Ð*Ð*Ð*Ð*Ð*Ñ*Ð*Õ*Õ*Ô*Ð*Ñ*Ô*Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ø&Ð6 rÐ6˜w r™zÐ6Õ˜zÑ*Ô*Ð6¨GÐ6°BÐ6¨G°B©JÐ6Ð*¨JÒ6Ð6Ð6Ð6Õ6Ô6Ð6Ð6Ð6Ð6Ð*¨JÐ6Ñ6Ô6Ð6Õ6Ô6Ñ6Ô6Ð6Ð6Õ6Ô6ÕÑ6Ô6Ð6Õ6Ô6ÕÑ6Ô6Ð6Ð6Õ6Ô6˜wÑ6Ô6Õ6Ô6 rÑ6Ô6Õ6Ô6Ð*Ñ6Ô6Õ6Ô6¨GÑ6Ô6Õ6Ô6°BÑ6Ô6Ð6Ð6Ñ6Ð6Ð6Ð6Ð6Ð6Ñ6Ð6Õ6Õ6Ô6Ð6Ñ6Ô6Ñ6Ô6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6r   c                 ó@   ‡ — ˆ fd„}t           |¦   «         ¦  «         d S )Nc            	   “   ó„  •‡K  — t          ‰d¦  «        \  } }Š}}|j                             d¦  «         | j        }d}d} ||||¦  «        }|sïddt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}}t          j        d	¦  «        ƒ d {V —† | j        d
         }ˆfd„}	 |	¦   «         }d}||k    }
|
sªt          j        d|
fd||f¦  «        dt	          j        ¦   «         v st          j        |	¦  «        rt          j        |	¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}
}d|j        df|j        dffD ]1\  }}|                      |t#          d||¬¦  «        ¦  «        ƒ d {V —† Œ2t          j        d¦  «        ƒ d {V —†  |	¦   «         }d}||k    }
|
sªt          j        d|
fd||f¦  «        dt	          j        ¦   «         v st          j        |	¦  «        rt          j        |	¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}
}|                      |t#          d|j        d¬¦  «        ¦  «        ƒ d {V —† t          j        d¦  «        ƒ d {V —†  |	¦   «         }d}||k    }
|
sªt          j        d|
fd||f¦  «        dt	          j        ¦   «         v st          j        |	¦  «        rt          j        |	¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}
}|                      |t#          d|j        d¬¦  «        ¦  «        ƒ d {V —† t          j        |j        d¦  «        ƒ d {V —† g } |	¦   «         }
d}|
|k    }|}|r‰d         d         d         }d }||k    }|}|�s@t          j        d|fd!|
|f¦  «        dt	          j        ¦   «         v st          j        |	¦  «        rt          j        |	¦  «        ndt          j        |
¦  «        t          j        |¦  «        d"œz  }d#d$|iz  }|                     |¦  «         |r`t          j        d|fd%||f¦  «        t          j        |¦  «        t          j        |¦  «        d&œz  }d'd(|iz  }|                     |¦  «         t          j        |d¦  «        i z  }d)d*|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}
x}x}x}x}}‰d         d         d+         }d}
|
t,          z  }||k    }|s´t          j        d|fd,||f¦  «        t          j        |¦  «        t          j        |
¦  «        d-t	          j        ¦   «         v st          j        t,          ¦  «        rt          j        t,          ¦  «        nd-d.œz  }d/d0|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}
}|                      ¦   «         ƒ d {V —† d S )1Nr1   úspeech-buffer-v1ÚscreenzBuffered sentence.úYassert %(py9)s
{%(py9)s = %(py2)s
{%(py2)s = %(py0)s.start
}(%(py3)s, %(py5)s, %(py7)s)
}ÚmÚd©r9   r:   r    rB   r<   r>   g{®Gáz”?Úcc                  ó6   •— t          d„ ‰ D ¦   «         ¦  «        S )Nc              3   ó4   K  — | ]\  }}|d          dk    V — ŒdS ©ÚtypeÚspeech_chunkN© ©r4   Ú_Úps      r   r6   zrtest_buffered_speech_credits_bound_send_ahead_and_ignore_stale.<locals>.check.<locals>.<lambda>.<locals>.<genexpr>'   s/   è è € ÐCÐC¹¸¸!˜!˜Fœ) ^Ò3ÐCÐCÐCÐCÐCÐCr   )Úsum)Úouts   €r   ú<lambda>z_test_buffered_speech_credits_bound_send_ahead_and_ignore_stale.<locals>.check.<locals>.<lambda>'   s   ø€ •cÐCÐC¸sÐCÑCÔCÑCÔC€ r   é@   r+   )z)%(py2)s
{%(py2)s = %(py0)s()
} == %(py5)sÚchunks©r9   r:   rB   rC   r<   )ÚstalerŽ   éA   TÚspeech_progress©r…   Ú	speech_idÚplayed_chunksr   é   ç{®Gáz„?éH   é(   r   éÿÿÿÿr…   Ú
speech_end)z)%(py4)s
{%(py4)s = %(py2)s()
} == %(py7)s©r:   r;   r<   ú%(py9)sr>   )z%(py12)s == %(py15)s)rG   rI   z%(py17)sÚpy17úassert %(py20)sÚpy20Ú	pcm_bytes)z%(py1)s == (%(py4)s * %(py5)s)r   )rA   r;   rB   úassert %(py8)sr#   )ÚmanagerÚcapabilitiesÚaddÚstartrT   rU   rM   rV   rO   rR   rS   r   ÚsleepÚactiverN   r•   ÚhandleÚdictÚwait_forÚtaskrP   rQ   r   Úclose)r~   r   r‰   rY   r\   ro   ru   rq   Úreqr�   rn   rr   rp   ÚsidÚcountr[   r]   rt   Ú@py_assert14r_   rw   Ú@py_format18Ú@py_format19Ú@py_format21rZ   re   rf   rŒ   Útmp_paths                              @€r   ÚcheckzMtest_buffered_speech_credits_bound_send_ahead_and_ignore_stale.<locals>.check!   su  øøè è € Ý˜H SÑ)Ô)‰ˆˆ!ˆC��!Ø	Œ×ÒÐ-Ñ.Ô.Ð.ØŒwÐ7˜Ð7Ð"6Ð7ˆwˆw�q˜Ð"6Ñ7Ô7Ð7Ð7Ð7Ð7Ð7Õ7Ô7Ñ7Ô7Ð7Ð7Õ7Ô7ˆqÑ7Ô7Ð7Õ7Ô7ˆqÑ7Ô7Ð7Ð7Õ7Ô7ˆwÑ7Ô7Ð7Õ7Ô7Ñ7Ô7Ð7Ð7Õ7Ô7�qÑ7Ô7Ð7Õ7Ô7�qÑ7Ô7Ð7Ð7Õ7Ô7˜Ñ7Ô7Õ7Ô7Ð"6Ñ7Ô7Õ7Ô7Ð7Ñ7Ô7Ð7Ð7Ñ7Ð7Õ7Õ7Ô7Ð7Ñ7Ô7Ñ7Ô7Ð7Ð7Ð7Ð7Ð7Ð7Ð7Ð7Ð7ÝŒm˜CÑ Ô Ð Ð Ð Ð Ð Ð Ð ØŒH�SŒMˆØCÐCÐCÐCˆØˆv‰xŒxÐ˜Ðˆx˜Š|ÐÐÐÕÔÐÐÐÐˆx˜ÐÑÔÐÕÔÑÔÐÐÕÔˆvÑÔÐÕÔˆvÑÔÐÐÕÔˆxÑÔÕÔ˜ÑÔÐÐÑÐÐÐÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐÐÐØ&¨¬°bÐ'9¸3¼=ÈÐ:NÐOð 	]ð 	]‰IˆC�Ø—(’(˜1�TÐ'8À3ÐUZÐ[Ñ[Ô[Ñ\Ô\Ð\Ð\Ð\Ð\Ð\Ð\Ð\Ð\ÝŒm˜AÑÔÐÐÐÐÐÐÐ f f¡h¤hÐ2°Ð2 h°¢lÐ2Ð2Ð2Õ2Ô2Ð2Ð2Ð2Ð2 h°Ð2Ñ2Ô2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2 fÑ2Ô2Ð2Õ2Ô2 fÑ2Ô2Ð2Ð2Õ2Ô2 hÑ2Ô2Õ2Ô2°Ñ2Ô2Ð2Ð2Ñ2Ð2Ð2Ð2Ð2Ð2Ñ2Ð2Õ2Õ2Ô2Ð2Ñ2Ô2Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ø�hŠh�q�Ð#4¸s¼}Ð[\Ð]Ñ]Ô]Ñ^Ô^Ð^Ð^Ð^Ð^Ð^Ð^Ð^ÝŒm˜CÑ Ô Ð Ð Ð Ð Ð Ð Ð ¨¨©¬Ð!4°"Ð!4¨°"ªÐ!4Ð!4Ð!4Õ!4Ô!4Ð!4Ð!4Ð!4Ð!4¨°"Ð!4Ñ!4Ô!4Ð!4Õ!4Ô!4Ñ!4Ô!4Ð!4Ð!4Õ!4Ô!4¨Ñ!4Ô!4Ð!4Õ!4Ô!4¨Ñ!4Ô!4Ð!4Ð!4Õ!4Ô!4¨Ñ!4Ô!4Õ!4Ô!4°"Ñ!4Ô!4Ð!4Ð!4Ñ!4Ð!4Ð!4Ð!4Ð!4Ð!4Ñ!4Ð!4Õ!4Õ!4Ô!4Ð!4Ñ!4Ô!4Ñ!4Ô!4Ð!4Ð!4Ð!4Ð!4Ð!4Ð!4Ð!4Ø�hŠh�q�Ð#4¸s¼}Ð[]Ð^Ñ^Ô^Ñ_Ô_Ð_Ð_Ð_Ð_Ð_Ð_Ð_ÝÔ˜sœx¨Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*ØAÐAˆvˆv‰xŒxÐA˜ÐAˆx˜Š}ÐAÐAÐAÐAÐA  R¤¨¤¨FÔ!3ÐA°\ÐAÐ!3°\Ò!AÐAÐAÐAÐAÑAÕAÔAÐAÐAÐAÐAˆx˜ÐAÑAÔAÐAÕAÔAÑAÔAÐAÐAÕAÔAˆvÑAÔAÐAÕAÔAˆvÑAÔAÐAÐAÕAÔAˆxÑAÔAÕAÔA˜ÑAÔAÐAÐAÑAÐAÐAÐAÐAÐAÑAÐAÐA×AÒAÐAÑAÔAÐAÐAÐAÕAÔAÐAÐAÐAÐAÐ!3°\ÐAÑAÔAÕAÔAÐ!3ÑAÔAÕAÔA°\ÑAÔAÐAÐAÑAÐAÐAÐAÐAÐAÑAÐAÐA×AÒAÐAÑAÔAÐAÕAÔAÐAÐAÑAÔAÐAÑAÐAÐAÐAÐAÐAÑAÐAÕAÕAÔAÐAÑAÔAÑAÔAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAÐAØ�1Œv�aŒy˜Ô%Ð6 sÐ6 s­;¡Ð6Ð% Ò6Ð6Ð6Ð6Õ6Ô6Ð6Ð6Ð6Ð6Ð% Ð6Ñ6Ô6Õ6Ô6Ð%Ñ6Ô6Õ6Ô6 sÑ6Ô6Ð6Õ6Ô6Ñ6Ô6Ð6Ð6Õ6Ô6­;Ñ6Ô6Ð6Õ6Ô6­;Ñ6Ô6Ð6Ð6Ð6Ð6Ñ6Ð6Ð6Ð6Ð6Ð6Ñ6Ð6Õ6Õ6Ô6Ð6Ñ6Ô6Ñ6Ô6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ø�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   ©r   ©r¶   r·   s   ` r   Ú>test_buffered_speech_credits_bound_send_ahead_and_ignore_stalerº       s3   ø€ ðð ð ð ð õ$ ˆˆ‰Œ�L„L€L€L€Lr   c                 óz  — | dz  dz  }t          |¦  «        }|j        }d}d} |||¦  «        }d}||k    }|sãt          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d	œz  }	d
d|	iz  }
t          t          j	        |
¦  «        ¦  «        ‚d x}x}x}x}x}}| 
                    ddd¦  «         | 
                    ddd¦  «         t          |¦  «        }|j        }d}d} |||¦  «        }d}||k    }|�s>t          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        t           ¦  «        rt          j        t           ¦  «        nddt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}x}x}x}x}}|j        }d}d} |||¦  «        }d}||k    }|sãt          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d	œz  }	d
d|	iz  }
t          t          j	        |
¦  «        ¦  «        ‚d x}x}x}x}x}}|j        }d}d} |||¦  «        }d}||k    }|sãt          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d	œz  }	d
d|	iz  }
t          t          j	        |
¦  «        ¦  «        ‚d x}x}x}x}x}}t          j        }|j        } |¦   «         }|j        } ||¦  «        }d}||k    }|�s>t          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        ndt          j        |¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}x}x}x}x}}|j        }|j        } |¦   «         }t!          |¦  «        }t#          |¦  «        }d}||k    }|�s†t          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        t"          ¦  «        rt          j        t"          ¦  «        nddt	          j        ¦   «         v st          j        t           ¦  «        rt          j        t           ¦  «        nddt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœ	z  }d d!|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}x}x}x}x}}t%          j        t(          ¦  «        5  | 
                    dd"d#¦  «         d d d ¦  «         n# 1 swxY w Y   |                     d$¦  «         |j        }d}d"} |||¦  «        }d}||k    }|sãt          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d	œz  }	d
d|	iz  }
t          t          j	        |
¦  «        ¦  «        ‚d x}x}x}x}x}}d S )%NÚconfigúspeech.jsonr   z
agent:pi:aÚOFFr+   )zS%(py8)s
{%(py8)s = %(py2)s
{%(py2)s = %(py0)s.get
}(%(py4)s, %(py6)s)
} == %(py11)sÚstore)r9   r:   r;   r!   r#   r'   zassert %(py13)sÚpy13zpi:aÚ
AUTO_REPLYzagent:codex:bÚAUTO_SUMMARY)zs%(py11)s
{%(py11)s = %(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py0)s(%(py1)s)
}.get
}(%(py7)s, %(py9)s)
} == %(py14)sr   Úpath)r9   rA   r    rB   r<   r>   r'   r(   úassert %(py16)sr*   Úotheri€  )zž%(py11)s
{%(py11)s = %(py2)s
{%(py2)s = %(py0)s.S_IMODE
}(%(py9)s
{%(py9)s = %(py7)s
{%(py7)s = %(py5)s
{%(py5)s = %(py3)s.stat
}()
}.st_mode
})
} == %(py14)sÚstat)r9   r:   r    rB   r<   r>   r'   r(   r   )z£%(py12)s
{%(py12)s = %(py0)s(%(py10)s
{%(py10)s = %(py1)s(%(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s.parent
}.iterdir
}()
})
})
} == %(py15)sÚlenÚlist)	r9   rA   r:   r;   r!   r#   rF   rG   rI   úassert %(py17)srŸ   ÚserverÚBADz
{malformed)r   ÚgetrM   rN   rT   rU   rV   rO   rR   rS   ÚsetrÆ   ÚS_IMODEÚst_modeÚparentÚiterdirrÈ   rÇ   ÚpytestÚraisesÚ
ValueErrorÚ
write_text)r¶   rÃ   r¿   rY   rn   r[   Ú@py_assert7r^   rs   Ú@py_format12rv   rZ   r\   ro   ru   r_   r`   rg   rh   rt   r²   rw   r³   s                          r   Ú.test_preferences_private_atomic_and_per_targetrØ   6   s�
  € Ø	�(Ñ	˜=Ñ	(€DÕ0AÀ$Ñ0GÔ0G¨%ØŒ9Ð-�SÐ-˜Ð-ˆ9ˆ9�S˜Ñ&Ô&Ð-¨Ð-Ð&¨Ò-Ð-Ð-Ð-Õ-Ô-Ð-Ð-Ð-Ð-Ð&¨Ð-Ñ-Ô-Ð-Õ-Ô-Ñ-Ô-Ð-Ð-Õ-Ô-ˆ5Ñ-Ô-Ð-Õ-Ô-ˆ5Ñ-Ô-Ð-Ð-Õ-Ô-ˆ9Ñ-Ô-Õ-Ô-�SÑ-Ô-Õ-Ô-˜Ñ-Ô-Õ-Ô-Ð&Ñ-Ô-Õ-Ô-¨Ñ-Ô-Ð-Ð-Ñ-Ð-Ð-Ð-Ð-Ð-Ñ-Ð-Õ-Õ-Ô-Ð-Ñ-Ô-Ñ-Ô-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ø	‡I‚Iˆc�&˜Ñ&Ô&Ð& u§y¢y°°_À^Ñ'TÔ'TÐ'TÝ˜TÑ"Ô"ÐFÐ"Ô&ÐF sÐF¨<ÐFÐ&Ð& s¨<Ñ8Ô8ÐF¸,ÐFÐ8¸,ÒFÐFÐFÑFÕFÔFÐFÐFÐFÐFÐ8¸,ÐFÑFÔFÐFÕFÔFÑFÔFÐFÐFÕFÔFÕÑFÔFÐFÕFÔFÕÑFÔFÐFÐFÐFÕFÔFÑFÔFÐFÐFÕFÔF˜TÑFÔFÐFÕFÔF˜TÑFÔFÐFÐFÕFÔFÐ"ÑFÔFÕFÔFÐ&ÑFÔFÕFÔF sÑFÔFÕFÔF¨<ÑFÔFÕFÔFÐ8ÑFÔFÕFÔF¸,ÑFÔFÐFÐFÑFÐFÐFÐFÐFÐFÑFÐFÕFÕFÔFÐFÑFÔFÑFÔFÐFÐFÐFÐFÐFÐFÐFÐFÐFÐFÐFÐFÐFÐFÐFØŒ9Ð9�SÐ9˜Ð9ˆ9ˆ9�S˜Ñ)Ô)Ð9¨>Ð9Ð)¨>Ò9Ð9Ð9Ð9Õ9Ô9Ð9Ð9Ð9Ð9Ð)¨>Ð9Ñ9Ô9Ð9Õ9Ô9Ñ9Ô9Ð9Ð9Õ9Ô9ˆ5Ñ9Ô9Ð9Õ9Ô9ˆ5Ñ9Ô9Ð9Ð9Õ9Ô9ˆ9Ñ9Ô9Õ9Ô9�SÑ9Ô9Õ9Ô9˜Ñ9Ô9Õ9Ô9Ð)Ñ9Ô9Õ9Ô9¨>Ñ9Ô9Ð9Ð9Ñ9Ð9Ð9Ð9Ð9Ð9Ñ9Ð9Õ9Õ9Ô9Ð9Ñ9Ô9Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9ØŒ9Ð1�WÐ1˜\Ð1ˆ9ˆ9�W˜\Ñ*Ô*Ð1¨EÐ1Ð*¨EÒ1Ð1Ð1Ð1Õ1Ô1Ð1Ð1Ð1Ð1Ð*¨EÐ1Ñ1Ô1Ð1Õ1Ô1Ñ1Ô1Ð1Ð1Õ1Ô1ˆ5Ñ1Ô1Ð1Õ1Ô1ˆ5Ñ1Ô1Ð1Ð1Õ1Ô1ˆ9Ñ1Ô1Õ1Ô1�WÑ1Ô1Õ1Ô1˜\Ñ1Ô1Õ1Ô1Ð*Ñ1Ô1Õ1Ô1¨EÑ1Ô1Ð1Ð1Ñ1Ð1Ð1Ð1Ð1Ð1Ñ1Ð1Õ1Õ1Ô1Ð1Ñ1Ô1Ñ1Ô1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ð1ÝŒ<Ð3˜œ	Ð3˜	˜	™œÐ3˜Ô+Ð3ˆ<ˆ<Ð+Ñ,Ô,Ð3¨eÐ3Ð,¨eÒ3Ð3Ð3Ñ3Õ3Ô3Ð3Ð3Ð3Ð3Ð,¨eÐ3Ñ3Ô3Ð3Õ3Ô3Ñ3Ô3Ð3Ð3Õ3Ô3�4Ñ3Ô3Ð3Õ3Ô3�4Ñ3Ô3Ð3Ð3Õ3Ô3ˆ<Ñ3Ô3Ð3Õ3Ô3Ñ3Ô3Ð3Ð3Õ3Ô3˜Ñ3Ô3Ð3Õ3Ô3˜Ñ3Ô3Ð3Ð3Õ3Ô3˜	Ñ3Ô3Õ3Ô3˜Ñ3Ô3Õ3Ô3Ð+Ñ3Ô3Õ3Ô3Ð,Ñ3Ô3Õ3Ô3¨eÑ3Ô3Ð3Ð3Ñ3Ð3Ð3Ð3Ð3Ð3Ñ3Ð3Õ3Õ3Ô3Ð3Ñ3Ô3Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ø”KÐ.�KÔ'Ð.Ð'Ð'Ñ)Ô)Ð.�tÐ)Ñ*Ô*Ð.�3Ð*Ñ+Ô+Ð.¨QÐ.Ð+¨QÒ.Ð.Ð.Ñ.Õ.Ô.Ð.Ð.Ð.Ð.Ð+¨QÐ.Ñ.Ô.Ð.Õ.Ô.Ñ.Ô.Ð.Ð.Õ.Ô.�3Ñ.Ô.Ð.Õ.Ô.�3Ñ.Ô.Ð.Ð.Ð.Õ.Ô.Ñ.Ô.Ð.Ð.Õ.Ô.�tÑ.Ô.Ð.Õ.Ô.�tÑ.Ô.Ð.Ð.Ð.Õ.Ô.Ñ.Ô.Ð.Ð.Õ.Ô.�DÑ.Ô.Ð.Õ.Ô.�DÑ.Ô.Ð.Ð.Õ.Ô.�KÑ.Ô.Õ.Ô.Ð'Ñ.Ô.Õ.Ô.Ð)Ñ.Ô.Õ.Ô.Ð*Ñ.Ô.Õ.Ô.Ð+Ñ.Ô.Õ.Ô.¨QÑ.Ô.Ð.Ð.Ñ.Ð.Ð.Ð.Ð.Ð.Ñ.Ð.Õ.Õ.Ô.Ð.Ñ.Ô.Ñ.Ô.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ð.Ý	Œ•zÑ	"Ô	"Ð@Ð@ 5§9¢9¨S°¸%Ñ#@Ô#@Ð#@Ð@Ð@Ð@Ñ@Ô@Ð@Ð@Ð@Ð@Ð@Ð@øøøÐ@Ð@Ð@Ð@Ø‡O‚O�LÑ!Ô!Ð!¨%¬)Ð#H°CÐ#H¸Ð#H¨)¨)°C¸Ñ*AÔ*AÐ#HÀ5Ð#HÐ*AÀ5Ò*HÐ#HÐ#HÐ#HÕ#HÔ#HÐ#HÐ#HÐ#HÐ#HÐ*AÀ5Ð#HÑ#HÔ#HÐ#HÕ#HÔ#HÑ#HÔ#HÐ#HÐ#HÕ#HÔ#H¨%Ñ#HÔ#HÐ#HÕ#HÔ#H¨%Ñ#HÔ#HÐ#HÐ#HÕ#HÔ#H¨)Ñ#HÔ#HÕ#HÔ#H°CÑ#HÔ#HÕ#HÔ#H¸Ñ#HÔ#HÕ#HÔ#HÐ*AÑ#HÔ#HÕ#HÔ#HÀ5Ñ#HÔ#HÐ#HÐ#HÑ#HÐ#HÐ#HÐ#HÐ#HÐ#HÑ#HÐ#HÕ#HÕ#HÔ#HÐ#HÑ#HÔ#HÑ#HÔ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#HÐ#Hs   á'bâbâbc                  ó,  ‡"— t          d¦  «        Š"g } d}|‰"v }|}|rd}|‰"v }|}|�sXt          j        d|fd|‰"f¦  «        t          j        |¦  «        dt	          j        ¦   «         v st          j        ‰"¦  «        rt          j        ‰"¦  «        nddœz  }dd	|iz  }|                      |¦  «         |r‹t          j        d|fd
|‰"f¦  «        t          j        |¦  «        dt	          j        ¦   «         v st          j        ‰"¦  «        rt          j        ‰"¦  «        nddœz  }dd|iz  }	|                      |	¦  «         t          j        | d¦  «        i z  }
dd|
iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x} x}x}x}}ˆ"fd„dD ¦   «         } t          | ¦  «        }|s•ddt	          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        ndt          j        | ¦  «        t          j        |¦  «        dœz  }t          t          j
        |¦  «        ¦  «        ‚d x} }d}t          |dd¬¦  «        }d}||k    } | s—t          j        d| fd||f¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        dœz  }dd |iz  }t          t          j
        |¦  «        ¦  «        ‚d x} }d!}d"}||z  }d}d}t          |||¬¦  «        }t          |¦  «        }d}||k    }|�s[t          j        d#|fd$||f¦  «        d%t	          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        nd%d&t	          j        ¦   «         v st          j        t           ¦  «        rt          j        t           ¦  «        nd&t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d'œ	z  }d(d)|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}x}}g } d*}t          |¦  «        }d+}||k    }|}|rd,}t          |¦  «        }d-}||k    }|}|�s¸t          j        d|fd.||f¦  «        d/t	          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        nd/t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d0œz  }d1d2|iz  }|                      |¦  «         |r»t          j        d|fd3||f¦  «        d/t	          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        nd/t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d4œz  }d5d6|iz  }|                      |¦  «         t          j        | d¦  «        i z  } d7d8| iz  }!t          t          j
        |!¦  «        ¦  «        ‚d x}x} x}x}x}x}x}x}x}}d9}d:}t          |¦  «        }||v}|sÇt          j        d;|fd<||f¦  «        t          j        |¦  «        d&t	          j        ¦   «         v st          j        t           ¦  «        rt          j        t           ¦  «        nd&t          j        |¦  «        t          j        |¦  «        d=œz  }d>d?|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}}d S )@Nuƒ   ## å®Œæˆ�
**ä¿®å¤�** `Codex`ã€‚
```python
private_code()
```
æ–‡ä»¶ /home/lighthouse/foo/bar/baz.pyã€‚https://example.com/a   ðŸ™‚ ÚCodexu   æ–‡ä»¶ baz.py)Úin)z%(py3)s in %(py5)sÚvalue©r    rB   ú%(py7)sr<   )z%(py10)s in %(py12)s)rF   rG   z%(py14)sr(   r   rÉ   rŸ   c              3   ó    •K  — | ]}|‰vV — Œ	d S r   r‡   )r4   ÚxrÜ   s     €r   r6   z@test_cleanup_language_and_sentence_boundaries.<locals>.<genexpr>F   s'   øè è € Ð[Ð[ !ˆq˜ˆ~Ð[Ð[Ð[Ð[Ð[Ð[r   )Úprivate_codeÚhttpsz/homez**u   ðŸ™‚ú ú,assert %(py4)s
{%(py4)s = %(py0)s(%(py2)s)
}Úall©r9   r:   r;   uç	  ç»“æžœå®Œæˆ�ã€‚éœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜Žéœ€è¦�è¯¦ç»†è¯´æ˜ŽiX  T)Únoticeu?   ç»“æžœå®Œæˆ�ã€‚å›žç­”æ¯”è¾ƒé•¿ï¼Œæ›´å¤šå†…å®¹è¯·æŸ¥çœ‹å±�å¹•ã€‚r+   ©z%(py0)s == %(py3)sÚlimited©r9   r    úassert %(py5)srB   rà   iÜ  r$   )zy%(py14)s
{%(py14)s = %(py0)s(%(py12)s
{%(py12)s = %(py1)s((%(py3)s * %(py5)s), %(py8)s, notice=%(py10)s)
})
} <= %(py17)srÇ   r   )	r9   rA   r    rB   r#   rF   rG   r(   rŸ   úassert %(py19)sr-   u   Codex å·²å®Œæˆ� pytestÚzhzAll tests passed.Úen)z0%(py6)s
{%(py6)s = %(py2)s(%(py4)s)
} == %(py9)sr   )r:   r;   r!   r>   ú%(py11)sr'   )z5%(py17)s
{%(py17)s = %(py13)s(%(py15)s)
} == %(py20)s)rÀ   rI   rŸ   r¡   z%(py22)sr.   zassert %(py25)sr/   Úsecret_valuez)api_key=secret_value Bearer private_value©únot in)z4%(py1)s not in %(py7)s
{%(py7)s = %(py3)s(%(py5)s)
}©rA   r    rB   r<   r=   r>   )r   rM   rN   rO   rT   rU   rV   rP   rQ   rR   rS   rå   rÇ   r   )#rY   rZ   r\   r]   rs   rt   rr   rp   Ú@py_format13rg   rw   r³   rn   Ú@py_format5Útextré   Ú@py_format4ro   rÖ   r_   Ú@py_assert16Ú@py_assert15Ú@py_format20r[   ru   r²   Ú@py_assert19ra   rq   r×   rµ   Ú@py_format23ri   rj   rÜ   s#                                     @r   Ú-test_cleanup_language_and_sentence_boundariesrý   C   sÈ  ø€ Ý
ð  lñ  mô  m€EØ8Ð8ˆ7Ð8ˆ7�eÐÐ8Ð8Ð8Ð8Ð8 Ð8 °5Ð 8Ð8Ð8Ð8Ð8Ñ8Õ8Ô8Ð8Ð8Ð8Ð8ˆ7�eÐ8Ñ8Ô8Õ8Ô8ˆ7Ñ8Ô8Ð8Õ8Ô8Ñ8Ô8Ð8Ð8Õ8Ô8�eÑ8Ô8Ð8Õ8Ô8�eÑ8Ô8Ð8Ð8Ð8Ð8Ñ8Ð8Ð8Ð8Ð8Ð8Ñ8Ð8Ð8×8Ò8Ð8Ñ8Ô8Ð8Ð8Ð8Õ8Ô8Ð8Ð8Ð8Ð8 °5Ð8Ñ8Ô8Õ8Ô8 Ñ8Ô8Ð8Õ8Ô8Ñ8Ô8Ð8Ð8Õ8Ô8°5Ñ8Ô8Ð8Õ8Ô8°5Ñ8Ô8Ð8Ð8Ð8Ð8Ñ8Ð8Ð8Ð8Ð8Ð8Ñ8Ð8Ð8×8Ò8Ð8Ñ8Ô8Ð8Õ8Ô8Ð8Ð8Ñ8Ô8Ð8Ñ8Ð8Ð8Ð8Ð8Ð8Ñ8Ð8Õ8Õ8Ô8Ð8Ñ8Ô8Ñ8Ô8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ø[Ð[Ð[Ð[Ð'ZÐ[Ñ[Ô[Ð[�3Ð[Ñ[Ô[Ð[Ð[Ð[Ð[Ð[Õ[Ô[Ñ[Ô[Ð[Ð[Õ[Ô[�3Ñ[Ô[Ð[Õ[Ô[�3Ñ[Ô[Ð[Ð[Õ[Ô[Ð[Ñ[Ô[Õ[Ô[Ð[Ñ[Ô[Ð[Ð[Ñ[Ð[Õ[Õ[Ô[Ð[Ñ[Ô[Ñ[Ô[Ð[Ð[Ð[Ð[Ð[Ø	3€DÝ  S°Ð5Ñ5Ô5€GØUÐUˆ7ÐUÒUÐUÐUÐUÕUÔUÐUÐUÐUÐUˆ7ÐUÐUÑUÔUÐUÕUÔUÑUÔUÐUÐUÕUÔUˆ7ÑUÔUÐUÕUÔUˆ7ÑUÔUÐUÐUÕUÔUÐUÑUÔUÐUÐUÑUÐUÐUÐUÐUÐUÑUÐUÕUÕUÔUÐUÑUÔUÑUÔUÐUÐUÐUÐUÐUØ#&ÐB tÐB 3 t¡8ÐB¨CÐB°tÐBÕ" 8¨C°tÐ<Ñ<Ô<ÐB�3Ð<Ñ=Ô=ÐB¸sÐBÐ=¸sÒBÐBÐBÑBÕBÔBÐBÐBÐBÐBÐ=¸sÐBÑBÔBÐBÕBÔBÑBÔBÐBÐBÕBÔB�3ÑBÔBÐBÕBÔB�3ÑBÔBÐBÐBÐBÕBÔBÑBÔBÐBÐBÕBÔBÕ"ÑBÔBÐBÕBÔBÕ"ÑBÔBÐBÐBÕBÔB 3ÑBÔBÕBÔB tÑBÔBÕBÔB¨CÑBÔBÕBÔB°tÑBÔBÕBÔBÐ<ÑBÔBÕBÔBÐ=ÑBÔBÕBÔB¸sÑBÔBÐBÐBÑBÐBÐBÐBÐBÐBÑBÐBÕBÕBÔBÐBÑBÔBÑBÔBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBØcÐcÐ0Ðc�<Ð0Ñ1Ô1Ðc°4ÐcÐ1°4Ò7ÐcÐcÐcÐcÐcÐI\Ðc½LÐI\Ñ<]Ô<]ÐcÐ_cÐcÐ<]Ð_cÒ<cÐcÐcÐcÐcÑcÕcÔcÐcÐcÐcÐcÐ1°4ÐcÑcÔcÐcÕcÔcÑcÔcÐcÐcÕcÔc�<ÑcÔcÐcÕcÔc�<ÑcÔcÐcÐcÕcÔcÐ0ÑcÔcÕcÔcÐ1ÑcÔcÕcÔc°4ÑcÔcÐcÐcÑcÐcÐcÐcÐcÐcÑcÐcÐc×cÒcÐcÑcÔcÐcÐcÐcÕcÔcÐcÐcÐcÐcÐ<]Ð_cÐcÑcÔcÐcÕcÔcÑcÔcÐcÐcÕcÔc½LÑcÔcÐcÕcÔc½LÑcÔcÐcÐcÕcÔcÐI\ÑcÔcÕcÔcÐ<]ÑcÔcÕcÔcÐ_cÑcÔcÐcÐcÑcÐcÐcÐcÐcÐcÑcÐcÐc×cÒcÐcÑcÔcÐcÕcÔcÐcÐcÑcÔcÐcÑcÐcÐcÐcÐcÐcÑcÐcÕcÕcÔcÐcÑcÔcÑcÔcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcÐcØÐaÐ5`ÐaÕ!4Ð5`Ñ!aÔ!aÐaˆ>Ð!aÐaÐaÐaÐaÕaÔaÐaÐaÐaÐaˆ>Ð!aÐaÑaÔaÕaÔaˆ>ÑaÔaÐaÕaÔaÑaÔaÐaÐaÕaÔaÕ!4ÑaÔaÐaÕaÔaÕ!4ÑaÔaÐaÐaÕaÔaÐ5`ÑaÔaÕaÔaÐ!aÑaÔaÐaÐaÑaÐaÐaÐaÐaÐaÑaÐaÕaÕaÔaÐaÑaÔaÑaÔaÐaÐaÐaÐaÐaÐaÐaÐaÐaÐaÐar   c                 ób   ‡‡— t           j        Š|                      t           dˆˆfd„¦  «         d S )NÚAsyncClientc                  ó@   •—  ‰di | ¤dt          j        ‰¦  «        i¤ŽS )NÚ	transportr‡   )ÚhttpxÚMockTransport)ÚkwÚclientÚhandlers    €€r   r�   zmock_http.<locals>.<lambda>Q   s.   ø€ ¸¸Ð9lÐ9lÀ"Ð9lÐ9lÍuÔObÐcjÑOkÔOkÐ9lÐ9lÐ9l€ r   )r  rÿ   Úsetattr)Úmonkeypatchr  r  s    `@r   Ú	mock_httpr	  O   s7   øø€ ÝÔ€FØ×Ò�˜mÐ,lÐ,lÐ,lÐ,lÐ,lÑmÔmÐmÐmÐmr   ÚencodingÚjsonÚbinaryc                 óB  ‡‡
— t          ddz  ¦  «        Š
ˆ
ˆfd„}t          | |¦  «         t          t          dd¦  «                             dd¦  «        ¦  «        }d}d}||z  }||k    }|sªt          j        d|fd	||f¦  «        d
t          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        nd
t          j
        |¦  «        t          j
        |¦  «        dœz  }dd|iz  }	t          t          j        |	¦  «        ¦  «        ‚d x}x}x}}d S )Ns    @é:  c           	      óp  •— t           j        }| j        } ||¦  «        }dddœ}||k    }|�st          j        d|fd||f¦  «        dt          j        ¦   «         v st          j        t           ¦  «        rt          j        t           ¦  «        ndt          j        |¦  «        dt          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }d	d
|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}x}}| j        d         }d}	||	k    }
|
slt          j        d|
fd||	f¦  «        t          j        |¦  «        t          j        |	¦  «        dœz  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}
}	‰dk    r@t          j        ddg dt          j        ‰¦  «                             ¦   «         idœ¬¦  «        S t          j        d‰ddi¬¦  «        S )Nõ   Codex å®Œæˆ�ã€‚rí   )ÚpromptÚlangr+   )zi%(py7)s
{%(py7)s = %(py2)s
{%(py2)s = %(py0)s.loads
}(%(py5)s
{%(py5)s = %(py3)s.content
})
} == %(py10)sr  Úrequest)r9   r:   r    rB   r<   rF   úassert %(py12)srG   ÚauthorizationzBearer private-key©z%(py1)s == %(py4)s©rA   r;   úassert %(py6)sr!   éÈ   TÚaudio)ÚsuccessÚerrorsÚresult©r  úcontent-typez
audio/mpeg)ÚcontentÚheaders)r  Úloadsr   rM   rN   rT   rU   rV   rO   rR   rS   r!  r  ÚResponseÚbase64Ú	b64encodeÚdecode)r  rY   r\   ro   rs   ru   Ú@py_format11rô   r]   rn   rZ   rõ   re   r  r
  s                €€r   r  z0test_melo_schema_and_pcm_decode.<locals>.handlerW   s©  ø€ ÝŒzÐT˜'œ/ÐTˆzˆz˜/Ñ*Ô*ÐTÐ6GÈtÐ,TÐ,TÐTÐ*Ð,TÒTÐTÐTÑTÕTÔTÐTÐTÐTÐTÐ*Ð,TÐTÑTÔTÐTÕTÔTÑTÔTÐTÐTÕTÔT�tÑTÔTÐTÕTÔT�tÑTÔTÐTÐTÕTÔTˆzÑTÔTÐTÕTÔTÑTÔTÐTÐTÕTÔT˜'ÑTÔTÐTÕTÔT˜'ÑTÔTÐTÐTÕTÔT˜/ÑTÔTÕTÔTÐ*ÑTÔTÕTÔTÐ,TÑTÔTÐTÐTÑTÐTÐTÐTÐTÐTÑTÐTÕTÕTÔTÐTÑTÔTÑTÔTÐTÐTÐTÐTÐTÐTÐTÐTÐTÐTÐTØŒ˜Ô/ÐEÐ1EÐEÐ/Ð1EÒEÐEÐEÐEÕEÔEÐEÐEÐEÐEÐ/Ð1EÐEÑEÔEÕEÔEÐ/ÑEÔEÕEÔEÐ1EÑEÔEÐEÐEÑEÐEÐEÐEÐEÐEÑEÐEÕEÕEÔEÐEÑEÔEÑEÔEÐEÐEÐEÐEÐEÐEÐEØ�VÒÐ¥5¤>°#ÀdÐTVÐahÕioÔiyÐzñ  jAô  jA÷  jHò  jHñ  jJô  jJð  aKð  <Lð  <Lð  $Mñ  $Mô  $Mð  MÝŒ~˜c¨%¸ÈÐ8UÐVÑVÔVÐVr   Úaccountúprivate-keyr  rí   r+   )z%(py0)s == (%(py3)s * %(py5)s)Úpcm)r9   r    rB   r£   r#   )r   r	  r   r   Ú
synthesizerM   rN   rT   rU   rV   rO   rR   rS   )r  r
  r  r*  rZ   r\   ro   rY   re   rf   r  s    `        @r   Útest_melo_schema_and_pcm_decoder,  T   si  øø€ å
�+˜dÑ"Ñ
#Ô
#€EðWð Wð Wð Wð Wð Wõ
 ˆk˜'Ñ"Ô"Ð"ÝÕ˜i¨Ñ6Ô6×AÒAÐBSÐTXÑYÔYÑZÔZ€CØÐ ˜DÐ �˜DÑ Ð ˆ3Ð Ò Ð Ð Ð Õ Ô Ð Ð Ð Ð ˆ3Ð Ð Ñ Ô Ð Õ Ô Ñ Ô Ð Ð Õ Ô ˆ3Ñ Ô Ð Õ Ô ˆ3Ñ Ô Ð Ð Õ Ô �Ñ Ô Õ Ô ˜DÑ Ô Ð Ð Ñ Ð Ð Ð Ð Ð Ñ Ð Õ Õ Ô Ð Ñ Ô Ñ Ô Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð r   Úfailure)i‘  i­  r   i.  Úbad_jsonÚ	bad_audioÚerrorÚnetworkc                 óü   ‡— ˆfd„}t          | |¦  «         t          j        t          d¬¦  «        5  t	          t          dd¦  «                             dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 ó
  •— ‰dk    rt          j        d¦  «        ‚t          ‰t          ¦  «        rt          j        ‰d¬¦  «        S ‰dk    rt          j        ddddi¬¦  «        S t          j        d‰d	k    d
didœ¬¦  «        S )Nr1  r)  )rö   r.  r  r  zapplication/json)rö   r!  r0  r  z%%%)r  r  r  )r  ÚConnectErrorÚ
isinstanceÚintr#  )r  r-  s    €r   r  z(test_melo_failures_safe.<locals>.handlerc   s‘   ø€ Ø�IÒÐ¥EÔ$6°}Ñ$EÔ$EÐEÝ�g�cÑ"Ô"ÐT­%¬.¸ÀmÐ*TÑ*TÔ*TÐ#TØ�JÒÐ¥e¤n°S¸mÐUcÐdvÐTwÐ&xÑ&xÔ&xÐxÝŒ~˜c°'¸7Ò2BÈWÐUZÈOÐ'\Ð'\Ð]Ñ]Ô]Ð]r   z^Speech unavailable$)Úmatchr(  r)  zTest.rî   )r	  rÒ   rÓ   r   r   r   r+  )r  r-  r  s    ` r   Útest_melo_failures_safer8  a   sê   ø€ ð^ð ^ð ^ð ^ð ^õ
 ˆk˜'Ñ"Ô"Ð"Ý	Œ•{Ð)?Ð	@Ñ	@Ô	@ð Qð QÝÕ˜i¨Ñ6Ô6×AÒAÀ'È$ÑOÔOÑPÔPÐPðQð Qð Qñ Qô Qð Qð Qð Qð Qð Qð Qð Qøøøð Qð Qð Qð Qð Qð Qs   ²2A1Á1A5Á8A5c            	      óx  — t          ddz  ¦  «        } ddiddiddifD ]M}t          j        t          ¦  «        5  t	          t          | fi |¤Ž¦  «         d d d ¦  «         n# 1 swxY w Y   ŒNt          j        t          ¦  «        5  t	          t          d	¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
NrD   r  Ú	max_inputrE   Ú
max_outputr1   Útimeoutgñhãˆµøä>s   broken compressed audio)r   rÒ   rÓ   r   r   r	   )r  Úoptionss     r   Ú!test_ffmpeg_bounds_errors_timeoutr>  m   sý   € Ý
�'˜$‘,Ñ
Ô
€EØ  Ð$ l°3Ð%7¸À6Ð8JÐKð Kð KˆÝŒ]�;Ñ'Ô'ÐJÐJ­­L¸Ð,IÐ,IÀÐ,IÐ,IÑ(JÔ(JÐ(JÐJÐJÐJÑJÔJÐJÐJÐJÐJÐJÐJøøøÐJÐJÐJÐJøÝ	Œ•{Ñ	#Ô	#ÐQÐQ¥C­Ð5OÑ(PÔ(PÑ$QÔ$QÐ$QÐQÐQÐQÑQÔQÐQÐQÐQÐQÐQÐQÐQøøøÐQÐQÐQÐQÐQÐQs#   ¹A Á A$	Á'A$	ÂB/Â/B3Â6B3c                 ó0  — |                       dd¦  «         |                       dd¦  «         |                       dd¦  «         t          ¦   «         }|j        }d}||k    }|sÇt          j        d|fd||f¦  «        d	t          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        nd	t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d
œz  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}}|                      d¦  «         t          ¦   «         }d }||u }|s´t          j        d|fd||f¦  «        d	t          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        nd	t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}}d S )NÚGATEWAY_TTS_PROVIDERzcloudflare-workers-aiÚGATEWAY_CF_ACCOUNT_IDÚaÚGATEWAY_CF_API_TOKENÚsamer+   )zF%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s()
}.api_key
} == %(py7)sr   r8   r=   r>   ©Úis)z)%(py2)s
{%(py2)s = %(py0)s()
} is %(py5)sr�   rC   r<   )Úsetenvr   Úapi_keyrM   rN   rT   rU   rV   rO   rR   rS   Údelenv)	r  rY   rn   ro   r[   rp   rq   r\   rr   s	            r   Ú)test_configured_tts_reuses_cloudflare_keyrJ  t   sH  € Ø×ÒÐ-Ð.EÑFÔFÐFØ×ÒÐ.¨sÑ3Ô3Ð3°K×4FÒ4FÐG]Ð^dÑ4eÔ4eÐ4eÝÑÔÐ+ÐÔ#Ð+ VÐ+Ð# VÒ+Ð+Ð+Ð+Õ+Ô+Ð+Ð+Ð+Ð+Ð# VÐ+Ñ+Ô+Ð+Õ+Ô+Ñ+Ô+Ð+Ð+Õ+Ô+�>Ñ+Ô+Ð+Õ+Ô+�>Ñ+Ô+Ð+Ð+Õ+Ô+ÐÑ+Ô+Õ+Ô+Ð#Ñ+Ô+Õ+Ô+ VÑ+Ô+Ð+Ð+Ñ+Ð+Ð+Ð+Ð+Ð+Ñ+Ð+Õ+Õ+Ô+Ð+Ñ+Ô+Ñ+Ô+Ð+Ð+Ð+Ð+Ð+Ð+Ð+Ð+Ð+Ø×ÒÐ-Ñ.Ô.Ð.µnÑ6FÔ6FÐ/NÈ$Ð/NÐ6FÈ$Ð6NÐ/NÐ/NÐ/NÕ/NÔ/NÐ/NÐ/NÐ/NÐ/NÐ6FÈ$Ð/NÑ/NÔ/NÐ/NÕ/NÔ/NÑ/NÔ/NÐ/NÐ/NÕ/NÔ/NµnÑ/NÔ/NÐ/NÕ/NÔ/NµnÑ/NÔ/NÐ/NÐ/NÕ/NÔ/NÐ6FÑ/NÔ/NÕ/NÔ/NÈ$Ñ/NÔ/NÐ/NÐ/NÑ/NÐ/NÐ/NÐ/NÐ/NÐ/NÑ/NÐ/NÕ/NÕ/NÔ/NÐ/NÑ/NÔ/NÑ/NÔ/NÐ/NÐ/NÐ/NÐ/NÐ/NÐ/NÐ/NÐ/NÐ/Nr   c                 ó�   — | dz  }|                      t          j        dddddddigd	œii¦  «        ¦  «         t          |¦  «        S )
Nzmodels.jsonÚ	providersÚhaihubzopenai-completionszhttps://api.model.haihub.cn/v1r)  Úidúdeepseek-flash)ÚapiÚbaseUrlÚapiKeyÚmodels)rÕ   r  Údumpsr
   )r¶   rÃ   s     r   Úsummary_providerrU  {   sŽ   € Ø	�-Ñ	€D §¢µ´
¸KÈÐYmð  yYð  cpð  |@ð  AQð  {Rð  zSð  STð  STð  IUð  <Vñ  1Wô  1Wñ  !Xô  !Xð  !XÝ˜ÑÔÐr   Ústatus)r  ÚpartialÚfailedÚneeds_actionc           	      óÖ  ‡— ˆfd„}t          ||¦  «         t          t          | ¦  «                             ddddd¦  «        ¦  «        }g }|d         }|‰k    }|}|r|j        }	d}
 |	|
¦  «        }| }|}|�s_t          j        d	|fd
|‰f¦  «        t          j        |¦  «        dt          j	        ¦   «         v st          j
        ‰¦  «        rt          j        ‰¦  «        nddœz  }dd|iz  }|                     |¦  «         |r’ddt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        ndt          j        |	¦  «        t          j        |
¦  «        t          j        |¦  «        dœz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}	x}
x}}d S )Nc                 ó  •— t          j        | j        ¦  «        }g }|d         }d}||k    }|}|r|d         }ddi}||k    }	|	}|�st          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }
d	d
|
iz  }|                     |¦  «         |r`t          j        d|	fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}	}t          j        |d         d         d         ¦  «        }d}d}d}d}t          ||||¬¦  «        }||k    }|�s+t          j        d|fd||f¦  «        dt          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nddt          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}x}x}x}}t          j        d d!d"dt          j        ‰d#d$œ¦  «        iigi¬%¦  «        S )&NÚmodelrO  Úresponse_formatr…   Újson_objectr+   ©z%(py3)s == %(py6)sr   r"   r#   )z%(py11)s == %(py14)sr&   r)   r*   r   rì   r-   Úmessagesr   r   ÚcodexÚtestÚDONEúpublic result)ÚagentÚsession_nameÚterminal_stateÚfinal_response)z%(py0)s == %(py12)s
{%(py12)s = %(py2)s(agent=%(py4)s, session_name=%(py6)s, terminal_state=%(py8)s, final_response=%(py10)s)
}Úsourcer«   )r9   r:   r;   r!   r#   rF   rG   úassert %(py14)sr(   r  ÚchoicesÚmessageu-   ä»»åŠ¡ç»“æžœå·²ç»�è¿”å›žï¼Œè¯·æŸ¥çœ‹å±�å¹•ã€‚©rV  Úspeechr  )r  r"  r   rM   rN   rO   rP   rQ   rR   rS   r«   rT   rU   rV   r  r#  rT  )r  ÚpayloadrY   rZ   r[   r\   r]   r^   r_   r`   re   rf   rg   rh   r³   rú   ri  rn   rÖ   rs   rt   rô   rV  s                         €r   r  z:test_summary_structured_and_minimal_input.<locals>.handler‚   sÏ  ø€ Ý”
˜7œ?Ñ+Ô+ˆØhÐhˆw�wÔÐhÐ!1ÐhÐÐ!1Ò1ÐhÐhÐhÐhÐh°gÐ>OÔ6PÐhÐSYÐZgÐRhÐhÐ6PÐRhÒ6hÐhÐhÐhÐhÑhÕhÔhÐhÐhÐhÐhÐÐ!1ÐhÑhÔhÕhÔhÐÑhÔhÕhÔhÐ!1ÑhÔhÐhÐhÑhÐhÐhÐhÐhÐhÑhÐhÐh×hÒhÐhÑhÔhÐhÐhÐhÕhÔhÐhÐhÐhÐhÐ6PÐRhÐhÑhÔhÕhÔhÐ6PÑhÔhÕhÔhÐRhÑhÔhÐhÐhÑhÐhÐhÐhÐhÐhÑhÐhÐh×hÒhÐhÑhÔhÐhÕhÔhÐhÐhÑhÔhÐhÑhÐhÐhÐhÐhÐhÑhÐhÕhÕhÔhÐhÑhÔhÑhÔhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÐhÝŒz˜' *Ô-¨aÔ0°Ô;Ñ<Ô<ˆØ")Ðs°vÐsÈVÐsÐcrÐs•t '°vÈVÐcrÐsÑsÔsÐsˆvÐsÒsÐsÐsÑsÕsÔsÐsÐsÐsÐsˆvÐsÐsÑsÔsÐsÕsÔsÑsÔsÐsÐsÕsÔsˆvÑsÔsÐsÕsÔsˆvÑsÔsÐsÐsÐsÕsÔsÑsÔsÐsÐsÕsÔs•tÑsÔsÐsÕsÔs•tÑsÔsÐsÐsÕsÔs 'ÑsÔsÕsÔs°vÑsÔsÕsÔsÈVÑsÔsÕsÔsÐcrÑsÔsÕsÔsÐsÑsÔsÐsÐsÑsÐsÐsÐsÐsÐsÑsÐsÕsÕsÔsÐsÑsÔsÑsÔsÐsÐsÐsÐsÐsÐsÐsÐsÐsÐsÐsÐsÐsÝŒ~˜c¨	°I¸yÍÌÐ^dð  o^ð  U_ð  U_ñ  J`ô  J`ð  ?að  4bð  3cð  (dð  eñ  eô  eð  	er   ra  rb  rc  rd  zignored toolsrV  Úfallbackr+   )z%(py3)s == %(py5)srÝ   rÞ   r<   zGnot %(py15)s
{%(py15)s = %(py11)s
{%(py11)s = %(py9)s.get
}(%(py13)s)
}r  )r>   r'   rÀ   rI   r   rì   r-   )r	  r   rU  Ú	summarizerÌ   rM   rN   rO   rT   rU   rV   rP   rQ   rR   rS   )r¶   r  rV  r  r  rY   rZ   r\   r]   r^   r`   r²   rø   rr   rp   rh   r³   rú   s     `               r   Ú)test_summary_structured_and_minimal_inputrr  €   s`  ø€ ðeð eð eð eð eõ ˆk˜'Ñ"Ô"Ð"ÝÕ Ñ)Ô)×3Ò3°G¸FÀ6È/ÐZiÑjÔjÑkÔk€FØBÐBˆ6�(ÔÐBÐ˜VÒ#ÐBÐBÐBÐBÐB¨F¬JÐB°zÐB¨J¨J°zÑ,BÔ,BÐBÐ,BÐ(BÐBÐ(BÐBÐBÑBÕBÔBÐBÐBÐBÐBÐ˜VÐBÑBÔBÕBÔBÐÑBÔBÐBÕBÔBÑBÔBÐBÐBÕBÔB˜VÑBÔBÐBÕBÔB˜VÑBÔBÐBÐBÐBÐBÑBÐBÐBÐBÐBÐBÑBÐBÐB×BÒBÐBÑBÔBÐBÐBÐBÐBÐBÕBÔBÑBÔBÐBÐBÕBÔB¨FÑBÔBÐBÕBÔB¨FÑBÔBÐBÐBÕBÔB¨JÑBÔBÕBÔB°zÑBÔBÕBÔBÐ,BÑBÔBÐBÐBÑBÐBÐB×BÒBÐBÑBÔBÐBÕBÔBÐBÐBÑBÔBÐBÑBÐBÐBÐBÐBÐBÑBÐBÕBÕBÔBÐBÑBÔBÑBÔBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBr   Úcase)r  r1  Úsuccess_on_failureÚlongÚ	sentencesÚemptyÚ
bad_statusc                 óš  ‡— ˆfd„}t          ||¦  «         t          t          | ¦  «                             dddd¦  «        ¦  «        }g }|d         }|}|r|d         }d}	||	k    }
|
}|sÐd	d
t	          j        |¦  «        iz  }|                     |¦  «         |r`t	          j        d|
fd||	f¦  «        t	          j        |¦  «        t	          j        |	¦  «        dœz  }dd|iz  }|                     |¦  «         t	          j        |d¦  «        i z  }dd|iz  }t          t	          j
        |¦  «        ¦  «        ‚d x}x}x}x}x}
}	|d         }d}||k    }|slt	          j        d|fd||f¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }t          t	          j
        |¦  «        ¦  «        ‚d x}x}}d S )Nc           	      ó  •— ‰dk    rt          j        d¦  «        ‚‰dk    rdndddœ}‰dk    rd	|d
<   ‰dk    rd|d
<   ‰dk    rd|d
<   ‰dk    rd|d<   t          j        dddd‰dk    rdnt          j        |¦  «        iigi¬¦  «        S )Nr1  r)  rt  r  rX  u   ä»»åŠ¡æ²¡æœ‰å®Œæˆ�ã€‚rm  ru  uÖ  å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿å¾ˆé•¿rn  rv  u$   å¤±è´¥ã€‚å¤±è´¥ã€‚å¤±è´¥ã€‚å¤±è´¥ã€‚rw  Ú rx  ÚunknownrV  r  rk  rl  r   r  znot-jsonr  )r  ÚReadTimeoutr#  r  rT  )r  rÜ   rs  s     €r   r  z.test_summary_failure_fallback.<locals>.handler�   sÅ   ø€ Ø�Š?ˆ?¥Ô!2°=Ñ!AÔ!AÐAØ%)Ð+?Ò%?Ð%?˜	˜	ÀXÐWnÐoÐoˆØ�Š<ˆ<¨˜˜h™Ø�ÒÐ¨]˜U 8™_Ø�Š=ˆ=¨˜˜x™Ø�ÒÐ¨i˜e H™oÝŒ~˜c¨	°I¸yÐW[Ð]cÒWcÐWcÈÈÕimÔisÐtyÑizÔizÐ>{Ð3|Ð2}Ð'~ÐÑÔÐr   ra  rb  ÚFAILEDzdependency missingrp  rV  rX  z%(py3)sr    r+   )z%(py6)s == %(py9)s)r!   r>   rï   r'   r   rj  r(   rn  u9   ä»»åŠ¡æ²¡æœ‰å®Œæˆ�ï¼Œè¯·æŸ¥çœ‹å±�å¹•ä¸Šçš„é”™è¯¯ä¿¡æ�¯ã€‚r  r  r  r!   )r	  r   rU  rq  rM   rO   rP   rN   rQ   rR   rS   )r¶   r  rs  r  r  rY   rZ   r]   r[   ru   rÖ   r÷   rq   r×   rô   rg   rn   rõ   re   s     `                r   Útest_summary_failure_fallbackr  �   sh  ø€ ð@ð @ð @ð @ð @õ ˆk˜'Ñ"Ô"Ð"ÝÕ Ñ)Ô)×3Ò3°G¸FÀ8ÐL`ÑaÔaÑbÔb€FØ<Ð<ˆ6�*ÔÐ<ÐÐ<ÐÐ< &¨Ô"2Ð<°HÐ<Ð"2°HÒ"<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Õ<Ô<ÐÑ<Ô<Ð<Ñ<Ð<Ð<×<Ò<Ð<Ñ<Ô<Ð<ÐÐ<Õ<Ô<Ð<Ð<Ð<Ð<Ð"2°HÐ<Ñ<Ô<Õ<Ô<Ð"2Ñ<Ô<Õ<Ô<°HÑ<Ô<Ð<Ð<Ñ<Ð<Ð<Ð<Ð<Ð<Ñ<Ð<Ð<×<Ò<Ð<Ñ<Ô<Ð<Õ<Ô<Ð<Ð<Ñ<Ô<Ð<Ñ<Ð<Ð<Ð<Ð<Ð<Ñ<Ð<Õ<Õ<Ô<Ð<Ñ<Ô<Ñ<Ô<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ø�(ÔÐXÐXÐXÐÐXÒXÐXÐXÐXÕXÔXÐXÐXÐXÐXÐÐXÐXÑXÔXÕXÔXÐÑXÔXÕXÔXÐXÑXÔXÐXÐXÑXÐXÐXÐXÐXÐXÑXÐXÕXÕXÔXÐXÑXÔXÑXÔXÐXÐXÐXÐXÐXÐXÐXÐXÐXr   c                   ó   — e Zd Zdd„Zd„ ZdS )ÚFakeTTSé   c                 ó"   — g | _         || _        d S r   )ÚcallsÚframes)Úselfr…  s     r   Ú__init__zFakeTTS.__init__ž   s   € ¨B ¤¸6¨t¬{¨{¨{r   c              ƒ   ób   K  — | j                              ||f¦  «         dt          z  | j        z  S )Nó    )r„  rP   r   r…  )r†  rö   Úlanguages      r   r+  zFakeTTS.synthesizeŸ   s1   è è € ØŒ
×Ò˜4 ˜/Ñ*Ô*Ð*°%½Ñ2CÀDÄKÑ2OÐ+Or   N©r‚  )Ú__name__Ú
__module__Ú__qualname__r‡  r+  r‡   r   r   r�  r�  �   s4   € € € € € ØAÐAÐAÐAðPð Pð Pð Pð Pr   r�  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚFakeSummaryc                 ó   — g | _         d S r   )r„  )r†  s    r   r‡  zFakeSummary.__init__¤   s   €  "�t”z�z�zr   c              ‹   óD   K  — | j                              |¦  «         dddœS )Nr  u   ä»»åŠ¡å·²ç»�å®Œæˆ�ã€‚rm  )r„  rP   )r†  r  s     r   rq  zFakeSummary.summarize¥   s)   è è €  4¤:×#4Ò#4°RÑ#8Ô#8Ð#8È)Ð]tÐ@uÐ@uÐ9ur   N)rŒ  r�  rŽ  r‡  rq  r‡   r   r   r�  r�  £   s"   € € € € € Ø$Ð$Ð$ØuÐuÐuÐuÐur   r�  r‚  c           
      óê   ‡‡‡	— t          dddhd¬¦  «        }g ŠdgŠ	dgŠˆfd„}t          |¦  «        t          ¦   «         }}t          ||t	          | d	z  ¦  «        ˆ	fd
„|d„ ˆfd„¦  «        }||‰‰	‰fS )Nr   r�   Úspeech_playbackT)Ú	device_idÚconnection_idr¥   Úonlineú
agent:pi:sFc              “   ó€   •K  — ‰                      t          j        ¦   «                              ¦   «         |f¦  «         d S r   )rP   r   Úget_running_loopÚtime)r   rŠ   Úemitteds     €r   Úsendzmanager.<locals>.send«   s8   øè è € ˜Ÿš­Ô(@Ñ(BÔ(B×(GÒ(GÑ(IÔ(IÈ!Ð'LÑMÔMÐMÐMÐMr   r½   c                 ó   •— ‰d         S ©Nr   r‡   )r‰   Útargets    €r   r�   zmanager.<locals>.<lambda>­   s   ø€ ÐSYÐZ[ÔS\€ r   c                 ó   — | j         S r   )r—  )r   s    r   r�   zmanager.<locals>.<lambda>­   s
   € ÐklÔks€ r   c                 ó   •— ‰d         S rŸ  r‡   )r‰   Úblockeds    €r   r�   zmanager.<locals>.<lambda>­   s   ø€ ð  ~Eð  FGô  ~H€ r   )r   r�  r�  r   r   )
r¶   r…  Údevicer�  ÚttsÚsummaryr~   r£  rœ  r   s
          @@@r   r¤   r¤   ¨   sº   øøø€ Ý S°sÐIZÐH[ÐcgÐhÑhÔh€FØ€G˜�~�°¨w wØMÐMÐMÐMÐMÝ˜‘”¥¡¤ˆ€CÝ�C˜Õ 1°(¸=Ñ2HÑ IÔ IÐJ\ÐJ\ÐJ\ÐJ\Ð]aÐbsÐbsð  uHð  uHð  uHð  uHñ  Iô  I€AØˆV�G˜F 7Ð*Ð*r   Úmodec                 óD   ‡ ‡— ˆˆ fd„}t           |¦   «         ¦  «         d S )Nc               “   óP  •K  — t          ‰ ¦  «        \  } }}}}| j                             dd‰¦  «         |                      |ddddd¦  «         t	          j        t          | j        ¦  «        Ž ƒ d {V —† ‰dv �räg }| }|}|r(| j        }|j	        }| }	|	}|	r| j
        }
|
j	        }| }|}|�sœd	d
dt          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndiz  }|                     |¦  «         |�r ddt          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }|                     |¦  «         |	rddt          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |
¦  «        t          j        |¦  «        dœz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t%          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}	x}
x}}�n.d„ |D ¦   «         }g d¢}||k    }|slt          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t%          t          j        |¦  «        ¦  «        ‚d x}x}}|d         d         }|d         d         }||z
  }d}||k    }|st          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d œz  }d!d"|iz  }t%          t          j        |¦  «        ¦  «        ‚d x}x}x}x}}t*          j        }|d         d         } ||¦  «        }|j        } |¦   «         }	t1          |	¦  «        }d#}||k     }|�s[t          j        d$|fd%||f¦  «        d&t          j        ¦   «         v st          j        t0          ¦  «        rt          j        t0          ¦  «        nd&d't          j        ¦   «         v st          j        t*          ¦  «        rt          j        t*          ¦  «        nd't          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |	¦  «        t          j        |¦  «        t          j        |¦  «        d(œ	z  }d)d*|iz  }t%          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}	x}x}}t2          j        }|d         d         d+         } ||¦  «        }t1          |¦  «        }d,}||k    }	|	�s5t          j        d|	fd-||f¦  «        d&t          j        ¦   «         v st          j        t0          ¦  «        rt          j        t0          ¦  «        nd&d.t          j        ¦   «         v st          j        t2          ¦  «        rt          j        t2          ¦  «        nd.t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d/œz  }d0d1|iz  }t%          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}	}| j
        }|j	        }t7          |¦  «        }d2}‰|k    }	||	k    }|�sut          j        d|	fd3‰|f¦  «        d4t          j        ¦   «         v st          j        ‰¦  «        rt          j        ‰¦  «        nd4t          j        |¦  «        d5œz  }t          j        d|fd6||	f¦  «        d7t          j        ¦   «         v st          j        t6          ¦  «        rt          j        t6          ¦  «        nd7dt          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        |d8œz  }d9d:|iz  }t%          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}	}|                      ¦   «         ƒ d {V —† d S );Nr   r˜  ÚpiÚsrc  úFinal answer.rb  )r¾   ÚMANUALznot %(py2)sr:   rŒ   zDnot %(py9)s
{%(py9)s = %(py7)s
{%(py7)s = %(py5)s.provider
}.calls
}r~   )rB   r<   r>   zKnot %(py16)s
{%(py16)s = %(py14)s
{%(py14)s = %(py12)s.summarizer
}.calls
})rG   r(   r*   r   r    r¡   c                 ó$   — g | ]\  }}|d          ‘ŒS )r…   r‡   rˆ   s      r   ú
<listcomp>zAtest_terminal_modes_and_pacing.<locals>.check.<locals>.<listcomp>»   s    € Ð-Ð-Ð-¡# ! A�A�f”IÐ-Ð-Ð-r   )Úspeech_startr†   r†   rœ   r+   r  r  r  r!   r‚  r   g333333³?)ú>=)z(%(py1)s - %(py3)s) >= %(py7)s)rA   r    r<   r=   r>   r?   )ú<)z %(py13)s
{%(py13)s = %(py0)s(%(py11)s
{%(py11)s = %(py9)s
{%(py9)s = %(py7)s
{%(py7)s = %(py3)s
{%(py3)s = %(py1)s.dumps
}(%(py5)s)
}.encode
}()
})
} < %(py16)srÇ   r  )	r9   rA   r    rB   r<   r>   r'   rÀ   r*   zassert %(py18)sÚpy18r  i�  )zn%(py9)s
{%(py9)s = %(py0)s(%(py7)s
{%(py7)s = %(py3)s
{%(py3)s = %(py1)s.b64decode
}(%(py5)s)
})
} == %(py12)sr$  )r9   rA   r    rB   r<   r>   rG   rj  r(   rÂ   )z%(py9)s == %(py12)sr§  )r>   rG   )zn%(py7)s
{%(py7)s = %(py0)s(%(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py1)s.summarizer
}.calls
})
} == (%(py14)s)Úbool)r9   rA   r    rB   r<   r(   rÄ   r*   )r¤   ÚpreferencesrÍ   Úterminalr   ÚgatherrÈ   ÚtasksÚproviderr„  Ú
summarizerrT   rU   rM   rV   rO   rP   rQ   rR   rS   rN   r  rT  ÚencoderÇ   r$  Ú	b64decoder´  r®   )!r~   r   rŒ   r‰   rY   rn   r]   ro   ru   r^   r_   rù   Ú@py_assert17r÷   r'  r³   r´   rµ   rZ   rõ   re   r\   r[   rp   rq   r`   r²   rh   rt   rô   rg   r§  r¶   s!                                  €€r   r·   z-test_terminal_modes_and_pacing.<locals>.check³   s�	  øè è € Ý˜HÑ%Ô%‰ˆˆ!ˆC��!Ø	Œ×Ò˜#˜l¨4Ñ0Ô0Ð0Ø	�
Š
�1�T˜#˜f _°VÑ<Ô<Ð<ÝŒn�d 1¤7™mœmÐ,Ð,Ð,Ð,Ð,Ð,Ð,Ð,ØÐ#Ð#Ñ#ØNÐN�s�7ÐN�7ÐN�7ÐN 1¤:ÐN :Ô#3ÐNÐ#3Ð3ÐNÐ3ÐNÐ3ÐN¸A¼LÐN¸LÔ<NÐNÐ<NÐ8NÐNÐ8NÐNÐNÑNÐNÐNÐNÕNÔNÑNÔNÐNÐNÕNÔN�sÑNÔNÐNÕNÔN�sÑNÔNÐNÐNÐNÑNÐNÐN×NÒNÐNÑNÔNÐN�7ÑNÐNÐNÕNÔNÑNÔNÐNÐNÕNÔN 1ÑNÔNÐNÕNÔN 1ÑNÔNÐNÐNÕNÔN :ÑNÔNÕNÔNÐ#3ÑNÔNÐNÐNÑNÐNÐN×NÒNÐNÑNÔNÐNÐ3ÐNÐNÐNÕNÔNÑNÔNÐNÐNÕNÔN¸AÑNÔNÐNÕNÔN¸AÑNÔNÐNÐNÕNÔN¸LÑNÔNÕNÔNÐ<NÑNÔNÐNÐNÑNÐNÐN×NÒNÐNÑNÔNÐNÕNÔNÐNÐNÑNÔNÐNÑNÐNÐNÐNÐNÐNÑNÐNÕNÕNÔNÐNÑNÔNÑNÔNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÐNÑNà-Ð-¨Ð-Ñ-Ô-ÐjÐ/jÐ/jÐ/jÐjÐ-Ð/jÒjÐjÐjÐjÕjÔjÐjÐjÐjÐjÐ-Ð/jÐjÑjÔjÕjÔjÐ-ÑjÔjÕjÔjÐ/jÑjÔjÐjÐjÑjÐjÐjÐjÐjÐjÑjÐjÕjÕjÔjÐjÑjÔjÑjÔjÐjÐjÐjÐjÐjÐjÐjØ�q”6˜!”9Ð,˜S œV AœYÐ,�9˜YÑ&Ð,¨Ð,Ð&¨Ò,Ð,Ð,Ð,Õ,Ô,Ð,Ð,Ð,Ð,Ð&¨Ð,Ñ,Ô,Õ,Ô,�9Ñ,Ô,Õ,Ô,˜YÑ,Ô,Õ,Ô,¨Ñ,Ô,Ð,Ð,Ñ,Ð,Ð,Ð,Ð,Ð,Ñ,Ð,Õ,Õ,Ô,Ð,Ñ,Ô,Ñ,Ô,Ð,Ð,Ð,Ð,Ð,Ð,Ð,Ð,Ð,Ð,Ð,Ý”zÐ< # a¤&¨¤)Ð<�z�z )Ñ,Ô,Ð<Ð,Ô3Ð<Ð3Ð3Ñ5Ô5Ð<•3Ð5Ñ6Ô6Ð<°uÐ<Ð6°uÒ<Ð<Ð<Ñ<Õ<Ô<Ð<Ð<Ð<Ð<Ð6°uÐ<Ñ<Ô<Ð<Õ<Ô<Ñ<Ô<Ð<Ð<Õ<Ô<•3Ñ<Ô<Ð<Õ<Ô<•3Ñ<Ô<Ð<Ð<Ð<Õ<Ô<Ñ<Ô<Ð<Ð<Õ<Ô<•tÑ<Ô<Ð<Õ<Ô<•tÑ<Ô<Ð<Ð<Õ<Ô<�zÑ<Ô<Õ<Ô< )Ñ<Ô<Õ<Ô<Ð,Ñ<Ô<Õ<Ô<Ð3Ñ<Ô<Õ<Ô<Ð5Ñ<Ô<Õ<Ô<Ð6Ñ<Ô<Õ<Ô<°uÑ<Ô<Ð<Ð<Ñ<Ð<Ð<Ð<Ð<Ð<Ñ<Ð<Õ<Õ<Ô<Ð<Ñ<Ô<Ñ<Ô<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ð<ÝÔ'ÐB¨¨A¬¨q¬	°'Ô(:ÐBÐ'Ð'Ð(:Ñ;Ô;ÐB•3Ð;Ñ<Ô<ÐB¸dÐBÐ<¸dÒBÐBÐBÑBÕBÔBÐBÐBÐBÐBÐ<¸dÐBÑBÔBÐBÕBÔBÑBÔBÐBÐBÕBÔB•3ÑBÔBÐBÕBÔB•3ÑBÔBÐBÐBÐBÕBÔBÑBÔBÐBÐBÕBÔB•vÑBÔBÐBÕBÔB•vÑBÔBÐBÐBÕBÔBÐ'ÑBÔBÕBÔBÐ(:ÑBÔBÕBÔBÐ;ÑBÔBÕBÔBÐ<ÑBÔBÕBÔB¸dÑBÔBÐBÐBÑBÐBÐBÐBÐBÐBÑBÐBÕBÕBÔBÐBÑBÔBÑBÔBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBØœÐC˜Ô*ÐC•4Ð*Ñ+Ô+ÐC°NÐC¨d°NÒ.BÐCÐ+ÐCÒCÐCÐCÑCÕCÔCÐCÐCÐCÐC¨d°NÐCÑCÔCÐCÕCÔCÑCÔCÐCÐCÕCÔC¨dÑCÔCÐCÕCÔC¨dÑCÔCÐCÐCÕCÔC°NÑCÔCÐCÐCÑCÐCÕCÔCÐCÐCÐCÐCÐ+ÐCÐCÑCÔCÐCÕCÔCÑCÔCÐCÐCÕCÔC•4ÑCÔCÐCÕCÔC•4ÑCÔCÐCÐCÐCÕCÔCÑCÔCÐCÐCÕCÔC˜ÑCÔCÐCÕCÔC˜ÑCÔCÐCÐCÕCÔC˜ÑCÔCÕCÔCÐ*ÑCÔCÕCÔCÐ+ÑCÔCÐCÐCÐCÑCÐCÐCÐCÐCÐCÑCÐCÕCÕCÔCÐCÑCÔCÑCÔCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCØ�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   r¸   )r¶   r§  r·   s   `` r   Útest_terminal_modes_and_pacingr¾  ±   s9   øø€ ðð ð ð ð ð õ ˆˆ‰Œ�L„L€L€L€Lr   Úreason)Úreplacer   Ú
disconnectÚapprovalÚ	recordingÚsettingsÚoverflowc                 óD   ‡ ‡— ˆˆ fd„}t           |¦   «         ¦  «         d S )Nc            	   “   óª
  •‡K  — t          ‰d¦  «        \  } }}}}| j        }d}d} ||||¦  «        }|sïddt          j        ¦   «         v st	          j        | ¦  «        rt	          j        | ¦  «        ndt	          j        |¦  «        dt          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        ndt	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }	t          t	          j        |	¦  «        ¦  «        ‚d x}x}x}}t          j
        d¦  «        ƒ d {V —† | j        d	         j        Š|                      |t          d
d¬¦  «        ¦  «        ƒ d {V —† | j        d	         }
|
j        }|‰k    }|sªt	          j        d|fd|‰f¦  «        t	          j        |
¦  «        t	          j        |¦  «        dt          j        ¦   «         v st	          j        ‰¦  «        rt	          j        ‰¦  «        nddœz  }dd|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}
x}}‰dk    rd|d<   ‰dk    rd|_        ‰dv rd|d<   ‰dk    r|                      |dd¦  «         n |                      |‰dk    ‰dk    ¬¦  «         t          j
        d¦  «        ƒ d {V —† ˆfd„|D ¦   «         }t%          |¦  «        }| }|s•d d!t          j        ¦   «         v st	          j        t$          ¦  «        rt	          j        t$          ¦  «        nd!t	          j        |¦  «        t	          j        |¦  «        d"œz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}}ˆfd#„|D ¦   «         }t'          |¦  «        }d$}||k    }|sÇt	          j        d|fd%||f¦  «        d&t          j        ¦   «         v st	          j        t&          ¦  «        rt	          j        t&          ¦  «        nd&t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d'œz  }d(d)|iz  }	t          t	          j        |	¦  «        ¦  «        ‚d x}x}x}}‰dk    r¸ˆfd*„|D ¦   «         }t%          |¦  «        }|s•d+d!t          j        ¦   «         v st	          j        t$          ¦  «        rt	          j        t$          ¦  «        nd!t	          j        |¦  «        t	          j        |¦  «        d"œz  }t          t	          j        |¦  «        ¦  «        ‚d x}}|                      ¦   «         ƒ d {V —† d S ),Né   r|   zA public screen.r}   r~   r   r€   r˜   r�   Úspeech_stopr‘   )r…   r•   r+   )z1%(py3)s
{%(py3)s = %(py1)s.speech_id
} == %(py5)sÚold)rA   r    rB   rC   r<   r   rÊ   r   rÁ  F)rÂ  rÃ  TrÀ  ÚreplyzReplacement.)ÚnotifyÚforgetg¸…ëQ¸¾?c              3   óN   •K  — | ]\  }}|d          dk    o|d         ‰k    V — Œ dS )r…   rœ   r•   Nr‡   ©r4   r‰   rŠ   rÊ  s      €r   r6   zAtest_cancellation_and_stale_ids.<locals>.check.<locals>.<genexpr>Ó   s>   øè è € ÐVÐVÉ3È1ÈQ�q˜”y ,Ò.ÐF°1°[´>À3Ò3FÐVÐVÐVÐVÐVÐVr   ú0assert not %(py4)s
{%(py4)s = %(py0)s(%(py2)s)
}Úanyræ   c              3   óN   •K  — | ]\  }}|d          dk    o|d         ‰k    V — Œ dS )r…   r†   r•   Nr‡   rÏ  s      €r   r6   zAtest_cancellation_and_stale_ids.<locals>.check.<locals>.<genexpr>Ô   s>   øè è € ÐTÐTÉÈÈ1�1�V”9˜nÒ,ÐD°°;´ÀÒ1DÐTÐTÐTÐTÐTÐTr   r   ©z0%(py4)s
{%(py4)s = %(py0)s(%(py2)s)
} == %(py7)sr‹   r8   r=   r>   c              3   óN   •K  — | ]\  }}|d          dk    o|d         ‰k    V — Œ dS )r…   Úspeech_cancelr•   Nr‡   rÏ  s      €r   r6   zAtest_cancellation_and_stale_ids.<locals>.check.<locals>.<genexpr>Õ   sB   øè è € Ð*mÐ*mÑbeÐbcÐde¨1¨V¬9°oÒ+EÐ+]È!ÈKÌ.ÐZ]ÒJ]Ð*mÐ*mÐ*mÐ*mÐ*mÐ*mr   rä   )r¤   r§   rT   rU   rM   rV   rO   rR   rS   r   r¨   r©   r•   rª   r«   rN   r—  ÚcancelrÑ  r‹   r®   )r~   r   rŒ   r   r£  rY   r\   ro   ru   rq   r]   rZ   rr   rp   rn   r[   rõ   rÊ  r¿  r¶   s                    @€€r   r·   z.test_cancellation_and_stale_ids.<locals>.checkÆ   só  øøè è € Ý& x°Ñ3Ô3Ñˆˆ!ˆC��wØŒwÐ5˜Ð5Ð"4Ð5ˆwˆw�q˜Ð"4Ñ5Ô5Ð5Ð5Ð5Ð5Ð5Õ5Ô5Ñ5Ô5Ð5Ð5Õ5Ô5ˆqÑ5Ô5Ð5Õ5Ô5ˆqÑ5Ô5Ð5Ð5Õ5Ô5ˆwÑ5Ô5Ð5Õ5Ô5Ñ5Ô5Ð5Ð5Õ5Ô5�qÑ5Ô5Ð5Õ5Ô5�qÑ5Ô5Ð5Ð5Õ5Ô5˜Ñ5Ô5Õ5Ô5Ð"4Ñ5Ô5Õ5Ô5Ð5Ñ5Ô5Ð5Ð5Ñ5Ð5Õ5Õ5Ô5Ð5Ñ5Ô5Ñ5Ô5Ð5Ð5Ð5Ð5Ð5Ð5Ð5Ð5Ð5ÝŒm˜CÑ Ô Ð Ð Ð Ð Ð Ð Ð ØŒH�SŒMÔ#ˆØ�hŠh�q� =¸7ÐCÑCÔCÑDÔDÐDÐDÐDÐDÐDÐDÐDØŒx˜Œ}Ð+ˆ}Ô&Ð+Ð&¨Ò+Ð+Ð+Ð+Õ+Ô+Ð+Ð+Ð+Ð+Ð&¨Ð+Ñ+Ô+Õ+Ô+ˆ}Ñ+Ô+Õ+Ô+Ð&Ñ+Ô+Ð+Õ+Ô+Ñ+Ô+Ð+Ð+Õ+Ô+¨Ñ+Ô+Ð+Õ+Ô+¨Ñ+Ô+Ð+Ð+Ð+Ð+Ñ+Ð+Ð+Ð+Ð+Ð+Ñ+Ð+Õ+Õ+Ô+Ð+Ñ+Ô+Ñ+Ô+Ð+Ð+Ð+Ð+Ð+Ð+Ð+Ø�8ÒÐ x˜V A™YØ�<ÒÐ¨% ¤ØÐ-Ð-Ð-¸¨g°a©jØ�9ÒÐ˜QŸWšW Q w¨~Ñ>Ô>Ð>Ð>Ø�XŠX�a˜v |Ò3¸6À<Ò;OˆXÑPÔPÐPÝŒm˜CÑ Ô Ð Ð Ð Ð Ð Ð Ð ØVÐVÐVÐVÐRUÐVÑVÔVÐV•3ÐVÑVÔVÐVÐVÐVÐVÐVÐVÐVÐVÕVÔVÑVÔVÐVÐVÕVÔV•3ÑVÔVÐVÕVÔV•3ÑVÔVÐVÐVÕVÔVÐVÑVÔVÕVÔVÐVÑVÔVÐVÐVÑVÐVÕVÕVÔVÐVÑVÔVÑVÔVÐVÐVÐVÐVÐVÐVÐVØTÐTÐTÐTÐPSÐTÑTÔTÐW�sÐTÑTÔTÐWÐVWÐWÐTÐVWÒWÐWÐWÐWÕWÔWÐWÐWÐWÐWÐTÐVWÐWÑWÔWÐWÕWÔWÑWÔWÐWÐWÕWÔW�sÑWÔWÐWÕWÔW�sÑWÔWÐWÐWÕWÔWÐTÑWÔWÕWÔWÐTÑWÔWÕWÔWÐVWÑWÔWÐWÐWÑWÐWÐWÐWÐWÐWÑWÐWÕWÕWÔWÐWÑWÔWÑWÔWÐWÐWÐWÐWÐWÐWÐWÐWÐWØ�<ÒÐÐ*mÐ*mÐ*mÐ*mÐilÐ*mÑ*mÔ*mÐ m¥sÐ*mÑ'mÔ'mÐ mÐ'mÐ mÐ mÐ mÕ mÔ mÑ mÔ mÐ mÐ mÕ mÔ m¥sÑ mÔ mÐ mÕ mÔ m¥sÑ mÔ mÐ mÐ mÕ mÔ mÐ*mÑ mÔ mÕ mÔ mÐ'mÑ mÔ mÐ mÐ mÑ mÐ mÕ mÕ mÔ mÐ mÑ mÔ mÑ mÔ mÐ mÐ mÐ mÐ mÐ mØ�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   r¸   )r¶   r¿  r·   s   `` r   Útest_cancellation_and_stale_idsr×  Ä   s9   øø€ ðð ð ð ð ð õ" ˆˆ‰Œ�L„L€L€L€Lr   c                 ó@   ‡ — ˆ fd„}t           |¦   «         ¦  «         d S )Nc            	   “   óÈ  •K  — t          ‰¦  «        \  } }}}}t          ¦   «         |_        | j        }d}d} ||||¦  «        }| }|sïddt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }	t          t          j
        |	¦  «        ¦  «        ‚d x}x}x}x}}|                      |¦  «        ƒ d {V —† | }|seddd	t	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd	iz  }
t          t          j
        |
¦  «        ¦  «        ‚d }d
h|_        t          ddddd¬¦  «        }|                      ||¦  «        ƒ d {V —† | j        }| }|sxddt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        dœz  }t          t          j
        |¦  «        ¦  «        ‚d x}}|                     dd¬¦  «         |                      ||¦  «        ƒ d {V —† t!          j        t%          | j        ¦  «        Ž ƒ d {V —† |                      ||¦  «        ƒ d {V —† | j        }|j        }t-          |¦  «        }d}||k    }|�st          j        d|fd||f¦  «        dt	          j        ¦   «         v st          j        t,          ¦  «        rt          j        t,          ¦  «        nddt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }	dd|	iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}x}}|                      ¦   «         ƒ d {V —† d S )Nr|   zLegacy.z]assert not %(py9)s
{%(py9)s = %(py2)s
{%(py2)s = %(py0)s.start
}(%(py3)s, %(py5)s, %(py7)s)
}r~   r   r€   úassert not %(py0)sr9   rŒ   r”  Úspeech_requestÚrr˜  Á±  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx©r…   Ú
request_idr   ri  rö   z.assert not %(py2)s
{%(py2)s = %(py0)s.active
})r9   r:   Úr2zRead this screen.)rß  rö   r   r+   )zj%(py7)s
{%(py7)s = %(py0)s(%(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py1)s.provider
}.calls
})
} == %(py10)srÇ   )r9   rA   r    rB   r<   rF   r  rG   )r¤   rÍ   r¥   r§   rT   rU   rM   rV   rO   rR   rS   rÄ  r«   rª   r©   Úupdater   r·  rÈ   r¸  r¹  r„  rÇ   rN   r®   )r~   r   rŒ   r‰   rY   r\   ro   ru   r^   r'  Ú@py_format2r  rn   r÷   rZ   rs   rô   r¶   s                    €r   r·   z5test_legacy_and_bounded_manual_request.<locals>.checkÛ   s   øè è € Ý˜HÑ%Ô%‰ˆˆ!ˆC��!Ý‘u”uˆŒØ”7Ð0˜XÐ0 iÐ0�7�7˜1˜X iÑ0Ô0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Õ0Ô0Ñ0Ô0Ð0Ð0Õ0Ô0�1Ñ0Ô0Ð0Õ0Ô0�1Ñ0Ô0Ð0Ð0Õ0Ô0�7Ñ0Ô0Ð0Õ0Ô0Ñ0Ô0Ð0Ð0Õ0Ô0˜1Ñ0Ô0Ð0Õ0Ô0˜1Ñ0Ô0Ð0Ð0Õ0Ô0˜XÑ0Ô0Õ0Ô0 iÑ0Ô0Õ0Ô0Ð0Ñ0Ô0Ð0Ð0Ñ0Ð0Õ0Õ0Ô0Ð0Ñ0Ô0Ñ0Ô0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ð0Ø�jŠj˜‰mŒmÐÐÐÐÐÐÐ s 7˜N 7˜N˜N˜N˜N�NœN™NœN˜N˜N�NœN s™NœN˜N�NœN s™NœN˜N˜N˜N™N˜N�N�NœN˜N™NœN™NœN˜N˜N˜NØ)Ð*ˆŒÝÐ*°cÀÐU]ÐckÐlÑlÔlˆØ�hŠh�q˜Ñ!Ô!Ð!Ð!Ð!Ð!Ð!Ð!Ð!¨Q¬XÐ"5¨X¨Ð"5¨Ð"5Ð"5Ð"5Õ"5Ô"5Ñ"5Ô"5Ð"5Ð"5Õ"5Ô"5¨QÑ"5Ô"5Ð"5Õ"5Ô"5¨QÑ"5Ô"5Ð"5Ð"5Õ"5Ô"5¨XÑ"5Ô"5Ð"5Ð"5Ñ"5Ð"5Õ"5Õ"5Ô"5Ð"5Ñ"5Ô"5Ñ"5Ô"5Ð"5Ð"5Ð"5Ð"5Ð"5Ø�Š $Ð,?ˆÑ@Ô@Ð@Ø�hŠh�q˜Ñ!Ô!Ð!Ð!Ð!Ð!Ð!Ð!Ð!­¬½¸Q¼W¹¼Ð(FÐ"FÐ"FÐ"FÐ"FÐ"FÐ"FÐ"FØ�hŠh�q˜Ñ!Ô!Ð!Ð!Ð!Ð!Ð!Ð!Ð!¨Q¬ZÐ"A¨ZÔ-=Ð"A­Ð-=Ñ)>Ô)>Ð"AÀÐ"AÐ)>ÀÒ)AÐ"AÐ"AÑ"AÕ"AÔ"AÐ"AÐ"AÐ"AÐ"AÐ)>ÀÐ"AÑ"AÔ"AÐ"AÕ"AÔ"AÑ"AÔ"AÐ"AÐ"AÕ"AÔ"A­Ñ"AÔ"AÐ"AÕ"AÔ"A­Ñ"AÔ"AÐ"AÐ"AÐ"AÕ"AÔ"AÑ"AÔ"AÐ"AÐ"AÕ"AÔ"A¨QÑ"AÔ"AÐ"AÕ"AÔ"A¨QÑ"AÔ"AÐ"AÐ"AÕ"AÔ"A¨ZÑ"AÔ"AÕ"AÔ"AÐ-=Ñ"AÔ"AÕ"AÔ"AÐ)>Ñ"AÔ"AÕ"AÔ"AÀÑ"AÔ"AÐ"AÐ"AÑ"AÐ"AÐ"AÐ"AÐ"AÐ"AÑ"AÐ"AÕ"AÕ"AÔ"AÐ"AÑ"AÔ"AÑ"AÔ"AÐ"AÐ"AÐ"AÐ"AÐ"AÐ"AÐ"AÐ"AÐ"AÐ"AÐ"AØ�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   r¸   r¹   s   ` r   Ú&test_legacy_and_bounded_manual_requestrã  Ú   ó3   ø€ ðð ð ð ð õ ˆˆ‰Œ�L„L€L€L€Lr   c                  ó  — t          ¦   «         } d„ }|                       |dd¬¦  «        ¦  «         |                       |ddd¬¦  «        ¦  «         |                       |d	dd
¬¦  «        ¦  «        }g }|j        }d
}||k    }|}|r|j        }d}	||	k    }
|
}|�s~t	          j        d|fd||f¦  «        dt          j        ¦   «         v st	          j        |¦  «        rt	          j	        |¦  «        ndt	          j	        |¦  «        t	          j	        |¦  «        dœz  }dd|iz  }| 
                    |¦  «         |ržt	          j        d|
fd||	f¦  «        dt          j        ¦   «         v st	          j        |¦  «        rt	          j	        |¦  «        ndt	          j	        |¦  «        t	          j	        |	¦  «        dœz  }dd|iz  }| 
                    |¦  «         t	          j        |d¦  «        i z  }dd|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}
}	| j        }d	}d}d} ||||¬¦  «        } ||¦  «        }|j        }
d }|
|u }|�sZt	          j        d|fd|
|f¦  «        dt          j        ¦   «         v st	          j        | ¦  «        rt	          j	        | ¦  «        ndt	          j	        |¦  «        dt          j        ¦   «         v st	          j        |¦  «        rt	          j	        |¦  «        ndt	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |
¦  «        t	          j	        |¦  «        dœ
z  }d d!|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}
x}}|                       |dd"¬¦  «        ¦  «         |                       |d	dd#¬¦  «        ¦  «        }g }|j        }d$}||k    }|}|r|j        }d%}	||	k    }
|
}|�s~t	          j        d|fd&||f¦  «        d't          j        ¦   «         v st	          j        |¦  «        rt	          j	        |¦  «        nd't	          j	        |¦  «        t	          j	        |¦  «        dœz  }dd|iz  }| 
                    |¦  «         |ržt	          j        d|
fd(||	f¦  «        d't          j        ¦   «         v st	          j        |¦  «        rt	          j	        |¦  «        nd't	          j	        |¦  «        t	          j	        |	¦  «        dœz  }dd|iz  }| 
                    |¦  «         t	          j        |d¦  «        i z  }dd|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}
}	| j        }d	}d"}d)}d*} |||||¬+¦  «        } ||¦  «        }
|
j        }d,}||k    }|�smt	          j        d|fd-||f¦  «        dt          j        ¦   «         v st	          j        | ¦  «        rt	          j	        | ¦  «        ndt	          j	        |¦  «        dt          j        ¦   «         v st	          j        |¦  «        rt	          j	        |¦  «        ndt	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |¦  «        t	          j	        |
¦  «        t	          j	        |¦  «        t	          j	        |¦  «        d.œz  }d/d0|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}
x}x}}d S )1Nc                 ó$   — t          d| ddddœ|¤ŽS )Nr«  rb  ú/tmp)ÚeventÚ
session_idÚnameÚcwdr‡   )r   )Úkindr  s     r   rè  z4test_pi_final_turn_identity_and_dedup.<locals>.eventì   s"   € ¥Ð e°TÀSÈfÐY_Ð eÐ eÐbdÐ eÐ eÐer   Úagent_startÚone)Úturn_idÚactivityÚtoolz	tool logs©Úactivity_typerð  Ú	agent_endzFinal only.)rï  Ú
final_textÚdoner+   )z2%(py4)s
{%(py4)s = %(py2)s.final_text
} == %(py7)sÚfirstr�   rž   r>   )z@%(py13)s
{%(py13)s = %(py11)s.pending_notification
} == %(py16)s)r'   rÀ   r*   ú%(py18)sr³  r   úassert %(py21)sÚpy21Ú	DuplicaterE  )z¿%(py15)s
{%(py15)s = %(py13)s
{%(py13)s = %(py2)s
{%(py2)s = %(py0)s.apply
}(%(py11)s
{%(py11)s = %(py3)s(%(py5)s, turn_id=%(py7)s, final_text=%(py9)s)
})
}.pending_notification
} is %(py18)sÚregistryrè  )
r9   r:   r    rB   r<   r>   r'   rÀ   rI   r³  r    r¡   ÚtwoÚStaleÚRUNNINGr{  )z-%(py4)s
{%(py4)s = %(py2)s.state
} == %(py7)sr‘   )z6%(py13)s
{%(py13)s = %(py11)s.final_text
} == %(py16)szFailed reply.T)rï  rõ  rX  r~  )zÁ%(py17)s
{%(py17)s = %(py15)s
{%(py15)s = %(py2)s
{%(py2)s = %(py0)s.apply
}(%(py13)s
{%(py13)s = %(py3)s(%(py5)s, turn_id=%(py7)s, final_text=%(py9)s, failed=%(py11)s)
})
}.state
} == %(py20)s)r9   r:   r    rB   r<   r>   r'   rÀ   rI   rŸ   r¡   zassert %(py22)sr.   )r   Úapplyrõ  Úpending_notificationrM   rN   rT   rU   rV   rO   rP   rQ   rR   rS   Ústate)rü  rè  r÷  rY   rn   ro   r[   r]   r`   rù   r²   rp   rq   rh   r´   rú   Ú@py_format22r\   ru   r^   r½  rø   rµ   r‘   rû   ra   rü   s                              r   Ú%test_pi_final_turn_identity_and_dedupr  ê   sË  € ÝÑ Ô €HØeÐeÐeØ‡N‚N�5�5˜¨uÐ5Ñ5Ô5Ñ6Ô6Ð6Ø‡N‚N�5�5˜°&À+ÐNÑNÔNÑOÔOÐOØ
�.Š.˜˜˜{°5ÀMÐRÑRÔRÑ
SÔ
S€EØQÐQˆ5ÔÐQ˜]ÐQÐ˜]Ò*ÐQÐQÐQÐQÐQ¨uÔ/IÐQÈ6ÐQÐ/IÈ6Ò/QÐQÐQÐQÐQÑQÕQÔQÐQÐQÐQÐQÐ˜]ÐQÑQÔQÐQÕQÔQÑQÔQÐQÐQÕQÔQˆ5ÑQÔQÐQÕQÔQˆ5ÑQÔQÐQÐQÕQÔQÐÑQÔQÕQÔQ˜]ÑQÔQÐQÐQÑQÐQÐQÐQÐQÐQÑQÐQÐQ×QÒQÐQÑQÔQÐQÐQÐQÕQÔQÐQÐQÐQÐQÐ/IÈ6ÐQÑQÔQÐQÕQÔQÑQÔQÐQÐQÕQÔQ¨uÑQÔQÐQÕQÔQ¨uÑQÔQÐQÐQÕQÔQÐ/IÑQÔQÕQÔQÈ6ÑQÔQÐQÐQÑQÐQÐQÐQÐQÐQÑQÐQÐQ×QÒQÐQÑQÔQÐQÕQÔQÐQÐQÑQÔQÐQÑQÐQÐQÐQÐQÐQÑQÐQÕQÕQÔQÐQÑQÔQÑQÔQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQØŒ>Ðo Ðo°EÐoÀ[Ðo˜%˜% °EÀ[ÐQÑQÔQÐoˆ>ˆ>ÐQÑRÔRÐoÐRÔgÐoÐkoÐoÐgÐkoÐoÐoÐoÑoÕoÔoÐoÐoÐoÐoÐgÐkoÐoÑoÔoÐoÕoÔoÑoÔoÐoÐoÕoÔoˆ8ÑoÔoÐoÕoÔoˆ8ÑoÔoÐoÐoÕoÔoˆ>ÑoÔoÐoÕoÔoÑoÔoÐoÐoÕoÔo˜%ÑoÔoÐoÕoÔo˜%ÑoÔoÐoÐoÕoÔo ÑoÔoÕoÔo°EÑoÔoÕoÔoÀ[ÑoÔoÕoÔoÐQÑoÔoÕoÔoÐRÑoÔoÕoÔoÐgÑoÔoÕoÔoÐkoÑoÔoÐoÐoÑoÐoÐoÐoÐoÐoÑoÐoÕoÕoÔoÐoÑoÔoÑoÔoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoÐoØ‡N‚N�5�5˜¨uÐ5Ñ5Ô5Ñ6Ô6Ð6Ø
�.Š.˜˜˜{°5ÀGÐLÑLÔLÑ
MÔ
M€EØ:Ð:ˆ5Œ;Ð:˜	Ð:ˆ;˜	Ò!Ð:Ð:Ð:Ð:Ð: eÔ&6Ð:¸Ð:Ð&6¸Ò&:Ð:Ð:Ð:Ð:Ñ:Õ:Ô:Ð:Ð:Ð:Ð:ˆ;˜	Ð:Ñ:Ô:Ð:Õ:Ô:Ñ:Ô:Ð:Ð:Õ:Ô:ˆ5Ñ:Ô:Ð:Õ:Ô:ˆ5Ñ:Ô:Ð:Ð:Õ:Ô:ˆ;Ñ:Ô:Õ:Ô:˜	Ñ:Ô:Ð:Ð:Ñ:Ð:Ð:Ð:Ð:Ð:Ñ:Ð:Ð:×:Ò:Ð:Ñ:Ô:Ð:Ð:Ð:Õ:Ô:Ð:Ð:Ð:Ð:Ð&6¸Ð:Ñ:Ô:Ð:Õ:Ô:Ñ:Ô:Ð:Ð:Õ:Ô: eÑ:Ô:Ð:Õ:Ô: eÑ:Ô:Ð:Ð:Õ:Ô:Ð&6Ñ:Ô:Õ:Ô:¸Ñ:Ô:Ð:Ð:Ñ:Ð:Ð:Ð:Ð:Ð:Ñ:Ð:Ð:×:Ò:Ð:Ñ:Ô:Ð:Õ:Ô:Ð:Ð:Ñ:Ô:Ð:Ñ:Ð:Ð:Ð:Ð:Ð:Ñ:Ð:Õ:Õ:Ô:Ð:Ñ:Ô:Ñ:Ô:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:ØŒ>Ðr Ðr°EÐrÀ_ÐrÐ\`Ðr˜%˜% °EÀ_Ð\`ÐaÑaÔaÐrˆ>ˆ>ÐaÑbÔbÐrÐbÔhÐrÐjrÐrÐhÐjrÒrÐrÐrÑrÕrÔrÐrÐrÐrÐrÐhÐjrÐrÑrÔrÐrÕrÔrÑrÔrÐrÐrÕrÔrˆ8ÑrÔrÐrÕrÔrˆ8ÑrÔrÐrÐrÕrÔrˆ>ÑrÔrÐrÕrÔrÑrÔrÐrÐrÕrÔr˜%ÑrÔrÐrÕrÔr˜%ÑrÔrÐrÐrÕrÔr ÑrÔrÕrÔr°EÑrÔrÕrÔrÀ_ÑrÔrÕrÔrÐ\`ÑrÔrÕrÔrÐaÑrÔrÕrÔrÐbÑrÔrÕrÔrÐhÑrÔrÕrÔrÐjrÑrÔrÐrÐrÑrÐrÐrÐrÐrÐrÑrÐrÕrÕrÔrÐrÑrÔrÑrÔrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrÐrr   c                  ó:   — d„ } t           | ¦   «         ¦  «         d S )Nc            	   “   óÞ	  ‡‡K  — t          d ¦  «        Šg Šˆfd„‰_        ˆfd„}  | dddi¬¦  «        ƒ d {V —†  | dddd	¬
¦  «        ƒ d {V —†  | dddddd	dœ¬¦  «        ƒ d {V —†  | dddd¬
¦  «        ƒ d {V —†  | dddd¬
¦  «        ƒ d {V —†  | dddd¬
¦  «        ƒ d {V —† ‰ }|sedddt          j        ¦   «         v st	          j        ‰¦  «        rt	          j        ‰¦  «        ndiz  }t          t	          j        |¦  «        ¦  «        ‚d } | ddddœ¬¦  «        ƒ d {V —†  | ddddœ¬¦  «        ƒ d {V —† g }t          ‰¦  «        }d}||k    }|}|r‰d         d         }d}||k    }	|	}|�sˆt	          j
        d |fd!||f¦  «        d"t          j        ¦   «         v st	          j        t          ¦  «        rt	          j        t          ¦  «        nd"dt          j        ¦   «         v st	          j        ‰¦  «        rt	          j        ‰¦  «        ndt	          j        |¦  «        t	          j        |¦  «        d#œz  }
d$d%|
iz  }|                     |¦  «         |r`t	          j
        d |	fd&||f¦  «        t	          j        |¦  «        t	          j        |¦  «        d'œz  }d(d)|iz  }|                     |¦  «         t	          j        |d¦  «        i z  }d*d+|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}	} | ddd,i¬¦  «        ƒ d {V —†  | ddddœ¬¦  «        ƒ d {V —† t          ‰¦  «        }d}||k    }|sòt	          j
        d |fd-||f¦  «        d"t          j        ¦   «         v st	          j        t          ¦  «        rt	          j        t          ¦  «        nd"dt          j        ¦   «         v st	          j        ‰¦  «        rt	          j        ‰¦  «        ndt	          j        |¦  «        t	          j        |¦  «        d.œz  }d/d0|iz  }
t          t	          j        |
¦  «        ¦  «        ‚d x}x}} | dd,d1dœ¬¦  «        ƒ d {V —† ‰d2         d3d …         }d4}||k    }|slt	          j
        d |fd5||f¦  «        t	          j        |¦  «        t	          j        |¦  «        d6œz  }d7d8|iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}}d S )9Nc                  ó.   •— ‰                      | ¦  «        S r   ©rP   ©rB  r  r„  s     €r   r�   zQtest_codex_final_message_only_and_terminal_dedup.<locals>.check.<locals>.<lambda>ú   ó   ø€ ÈuÏ|Ê|Ð\]ÉÌ€ r   c              ›   óh   •K  — ‰                      t          | ddi|¥¬¦  «        ¦  «        ƒ d {V —† d S )NÚthreadIdr«  ©ÚmethodÚparams)rè  r«   )r  r  Úadapters     €r   rè  zNtest_codex_final_message_only_and_terminal_dedup.<locals>.check.<locals>.eventû   sJ   øè è € ¨w¯}ª}½TÈÐXbÐcfÐWpÐioÐWpÐ=qÑ=qÔ=qÑ/rÔ/rÐ)rÐ)rÐ)rÐ)rÐ)rÐ)rÐ)rÐ)rÐ)rr   zturn/startedrN  Út)Úturnzitem/agentMessage/deltarB  zIntermediate thought.)ÚturnIdÚitemIdÚdeltazitem/completedÚagentMessageÚ
commentary)rN  r…   Úphaserö   )r  Úitemr‘   rÊ  z
OLD SECRETÚbzFinal zanswer.rÚ  r9   r„  úturn/completedÚ	completed©rN  rV  r   r   é   r¬  r+   )z0%(py5)s
{%(py5)s = %(py2)s(%(py3)s)
} == %(py8)srÇ   )r:   r    rB   r#   z%(py10)srF   )z%(py13)s == %(py16)s)rÀ   r*   rø  r³  rù  rú  Úu)z0%(py3)s
{%(py3)s = %(py0)s(%(py1)s)
} == %(py6)s)r9   rA   r    r!   r£   r#   rX  r›   r‚  )r~  r{  r  r  r  r!   )r   Úon_terminalrT   rU   rM   rV   rO   rR   rS   rÇ   rN   rP   rQ   )rè  rY   râ  r\   rÖ   ro   r]   r`   rù   r²   rf   r'  rh   r´   rú   r  rZ   r[   re   rn   rõ   r  r„  s                        @@r   r·   z?test_codex_final_message_only_and_terminal_dedup.<locals>.checkù   sÆ  øøè è € Ý˜TÑ"Ô"ˆ¨ 5Ð@^Ð@^Ð@^Ð@^¨GÔ,?ØrÐrÐrÐrÐrØˆe�N¨¨c¨
Ð3Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3ØˆeÐ-°SÀÐJaÐbÑbÔbÐbÐbÐbÐbÐbÐbÐbØˆeÐ$¨C¸3ÀnÐ]ið  rIð  6Jð  6Jð  Kñ  Kô  Kð  	Kð  	Kð  	Kð  	Kð  	Kð  	Kð  	KØˆeÐ-°WÀEÐP\Ð]Ñ]Ô]Ð]Ð]Ð]Ð]Ð]Ð]Ð]ØˆeÐ-°SÀÈ(ÐSÑSÔSÐSÐSÐSÐSÐSÐSÐSØˆeÐ-°SÀÈ)ÐTÑTÔTÐTÐTÐTÐTÐTÐTÐTØˆyÐˆyÐÐÐÐÕÔÑÔÐÐÕÔ�5ÑÔÐÕÔ�5ÑÔÐÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐØˆeÐ$°¸[Ð*IÐ*IÐJÑJÔJÐJÐJÐJÐJÐJÐJÐJØˆeÐ$°¸[Ð*IÐ*IÐJÑJÔJÐJÐJÐJÐJÐJÐJÐJØ=Ð=�s�5‰zŒzÐ=˜1Ð=ˆz˜1Š}Ð=Ð=Ð=Ð=Ð=  q¤¨!¤Ð=¨oÐ= ¨oÒ!=Ð=Ð=Ð=Ð=Ñ=Õ=Ô=Ð=Ð=Ð=Ð=ˆz˜1Ð=Ñ=Ô=Ð=Õ=Ô=Ñ=Ô=Ð=Ð=Õ=Ô=�sÑ=Ô=Ð=Õ=Ô=�sÑ=Ô=Ð=Ð=Ð=Õ=Ô=Ñ=Ô=Ð=Ð=Õ=Ô=�5Ñ=Ô=Ð=Õ=Ô=�5Ñ=Ô=Ð=Ð=Õ=Ô=ˆzÑ=Ô=Õ=Ô=˜1Ñ=Ô=Ð=Ð=Ñ=Ð=Ð=Ð=Ð=Ð=Ñ=Ð=Ð=×=Ò=Ð=Ñ=Ô=Ð=Ð=Ð=Õ=Ô=Ð=Ð=Ð=Ð= ¨oÐ=Ñ=Ô=Õ=Ô= Ñ=Ô=Õ=Ô=¨oÑ=Ô=Ð=Ð=Ñ=Ð=Ð=Ð=Ð=Ð=Ñ=Ð=Ð=×=Ò=Ð=Ñ=Ô=Ð=Õ=Ô=Ð=Ð=Ñ=Ô=Ð=Ñ=Ð=Ð=Ð=Ð=Ð=Ñ=Ð=Õ=Õ=Ô=Ð=Ñ=Ô=Ñ=Ô=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Øˆe�N¨¨c¨
Ð3Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3ØˆeÐ$°¸[Ð*IÐ*IÐJÑJÔJÐJÐJÐJÐJÐJÐJÐJÝ�5‰zŒzÐ˜1Ðˆz˜1Š}ÐÐÐÕÔÐÐÐÐˆz˜1ÐÑÔÐÕÔÑÔÐÐÕÔ�sÑÔÐÕÔ�sÑÔÐÐÐÕÔÑÔÐÐÕÔ�5ÑÔÐÕÔ�5ÑÔÐÐÕÔˆzÑÔÕÔ˜1ÑÔÐÐÑÐÐÐÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐÐÐØˆeÐ$°¸XÐ*FÐ*FÐGÑGÔGÐGÐGÐGÐGÐGÐGÐGØ�RŒy˜˜˜Œ}Ð- Ð-ˆ} Ò-Ð-Ð-Ð-Õ-Ô-Ð-Ð-Ð-Ð-ˆ} Ð-Ñ-Ô-Õ-Ô-ˆ}Ñ-Ô-Õ-Ô- Ñ-Ô-Ð-Ð-Ñ-Ð-Ð-Ð-Ð-Ð-Ñ-Ð-Õ-Õ-Ô-Ð-Ñ-Ô-Ñ-Ô-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-Ð-r   r¸   ©r·   s    r   Ú0test_codex_final_message_only_and_terminal_dedupr"  ø   s(   € ð.ð .ð .õ$ ˆˆ‰Œ�L„L€L€L€Lr   c           	   #   ó¢  K  — ddl m} dd lm} ddlm} ddlm} ddlm	}m
} | dz  }|                     t          j        t          ddd	¬
¦  «        ¦  «        ¦  «         |                     |d ||¦  «        ¦  «         |                     |d || dz  ¦  «        ¦  «         |                     |di ¦  «         |                     |dt!          ¦   «         ¦  «         |                     |dd |d| ¦  «        i¦  «         |                     |j        dt%          | dz  ¦  «        ¦  «         |                     |j        dt'          d¦  «        ¦  «         |                     |j        dt)          ¦   «         ¦  «         |                     |j        d |¦   «         ¦  «          ||j        ¦  «        5 }	||	fV — d d d ¦  «         d S # 1 swxY w Y   d S )Nr   )Ú
TestClient)ÚDeviceCredentialStore)ÚTargetStore)Ú	FakeAgentÚFakeSTTzdevice.jsonúspeech-testÚsecretú	pi-secret)r•  Údevice_tokenÚpi_tokenÚcredential_storeÚtarget_storeztargets.jsonÚdevicesÚpi_sessionsÚadaptersrª  rµ  r½   r¹  é   rº  )Úfastapi.testclientr$  Údevice_gateway.appÚappÚdevice_gateway.authr%  Údevice_gateway.stater&  Útest_voice_settingsr'  r(  rÕ   r  rT  r«   r  r   Úspeechesr   r�  r�  Úvoices)
r¶   r  r$  Úgatewayr%  r&  r'  r(  Ú
credentialr  s
             r   Úspeech_gatewayr>    s0  è è € à-Ð-Ð-Ð-Ð-Ð-Ø(Ð(Ð(Ð(Ð(Ð(Ø9Ð9Ð9Ð9Ð9Ð9Ø0Ð0Ð0Ð0Ð0Ð0Ø6Ð6Ð6Ð6Ð6Ð6Ð6Ð6Ø˜Ñ%€JØ×Ò�$œ*¥T°MÈxÐalÐ%mÑ%mÔ%mÑnÔnÑoÔoÐoØ×Ò˜Ð 2Ð3HÐ3HÈÑ3TÔ3TÑUÔUÐUØ×Ò˜ ¨{¨{¸8ÀNÑ;RÑ/SÔ/SÑTÔTÐTØ×Ò˜ 	¨"Ñ-Ô-Ð-Ø×Ò˜ Õ.?Ñ.AÔ.AÑBÔBÐBØ×Ò˜ 
¨D°°¸4ÀÑ1IÔ1IÐ+JÑKÔKÐKØ×Ò˜Ô(¨Õ7HÈÐR_ÑI_Ñ7`Ô7`ÑaÔaÐaØ×Ò˜Ô(¨µG¸A±J´JÑ?Ô?Ð?Ø×Ò˜Ô(¨µk±m´mÑDÔDÐDØ×Ò˜œ z°'°'±)´)Ñ<Ô<Ð<Ø	ˆ�G”KÑ	 Ô	 Ð? F°¸°Ð+?Ð+?Ð+?Ð?Ð?Ð?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?øøøÐ?Ð?Ð?Ð?Ð?Ð?s   Æ0GÇGÇGc                 óŒ   — t          d¦  «        D ]&}|                      ¦   «         }|d         |k    r|c S Œ't          |¦  «        ‚)Nr1   r…   )ÚrangeÚreceive_jsonrR   )Úwsrì  r‰   rè  s       r   ÚrecvrC  "  sN   € Ý�3‰ZŒZð ,ð ,ˆØ�oŠoÑÔˆØ�Œ=˜$ÒÐ e˜|˜|˜|ÐÝ
˜Ñ
Ô
Ðr   Fc                 óÜ  — t          dddd|rdnd¬¦  «        }|sdg|d	<   |                      |¦  «         t          | d
¦  «         t          | d¦  «         |s”t          | d¦  «        d         }d}||k    }|slt          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}d S d S )NÚhellor)  r*  Úfakez0.4.0z0.5.0)r…   r•  r,  ÚboardÚfirmwarer”  r¥   Ú	hello_ackÚtarget_stateÚspeech_settingsr§  r¾   r+   r  r  r  r!   )r«   Ú	send_jsonrC  rM   rN   rO   rR   rS   )rB  ÚlegacyrÜ   r]   rn   rZ   rõ   re   s           r   rE  rE  )  s0  € Ý
�G mÀÐPVÐkqÐ`~Ð`gÐ`gÐw~Ð
Ñ
Ô
€EØÐ;Ð):Ð(;�%˜Ñ'Ø‡L‚L�ÑÔÐ�˜R Ñ,Ô,Ð,­T°"°^Ñ-DÔ-DÐ-DØÐB�˜bÐ!2Ñ3Ô3°FÔ;ÐB¸UÐBÐ;¸UÒBÐBÐBÐBÕBÔBÐBÐBÐBÐBÐ;¸UÐBÑBÔBÕBÔBÐ;ÑBÔBÕBÔB¸UÑBÔBÐBÐBÑBÐBÐBÐBÐBÐBÑBÐBÕBÕBÔBÐBÑBÔBÑBÔBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBÐBr   c                 óÊ  — | \  }}|                      d¦  «        5 }t          |¦  «         |                     t          dddd¬¦  «        ¦  «         t	          |d¦  «        d         }d}||k    }|slt          j        d	|fd
||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}}|                     t          ddddd¬¦  «        ¦  «         t	          |d¦  «        d         }d}||k    }|slt          j        d	|fd
||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}}t	          |d¦  «        d         }d}||k    }|slt          j        d	|fd
||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}}t	          |d¦  «        d         }d}||k    }|slt          j        d	|fd
||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}}|j
        }	|	j        }|j        }
d}d} |
||¦  «        }d}||k    }|�s	t          j        d	|fd||f¦  «        dt          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |	¦  «        t          j        |¦  «        t          j        |
¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd |iz  }t          t          j	        |¦  «        ¦  «        ‚d x}	x}x}
x}x}x}x}}|                     d!¦  «                             ¦   «         d         }g }	|d"         }d}
||
k    }|}|rd#}t           j        } ||¦  «        }||v}|}|�s›t          j        d	|fd$||
f¦  «        t          j        |¦  «        t          j        |
¦  «        d%œz  }d&d'|iz  }|	                     |¦  «         |rùt          j        d(|fd)||f¦  «        t          j        |¦  «        d*t          j        ¦   «         v st          j        t           ¦  «        rt          j        t           ¦  «        nd*t          j        |¦  «        d+t          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd+t          j        |¦  «        d,œz  }d-d.|iz  }|	                     |¦  «         t          j        |	d¦  «        i z  }d/d0|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}x}	x}x}x}
x}x}x}}|j        }	d1}dd2d3œ}
 |	||
¬4¦  «        }|j        }d5}||k    }|söt          j        d	|fd6||f¦  «        d7t          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd7t          j        |	¦  «        t          j        |¦  «        t          j        |
¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d8œz  }d9d:|iz  }t          t          j	        |¦  «        ¦  «        ‚d x}	x}x}
x}x}x}}d d d ¦  «         d S # 1 swxY w Y   d S );Nú
/device/wsÚspeech_settings_setrî  rÊ   r­  ©r…   rß  r   r§  rK  r§  r+   r  r  r  r!   rÛ  Úreadr|   úCPU 18 percent.rÞ  r°  ri  r†   Úsequencer   rœ   r�   r3  r)  ©z•%(py12)s
{%(py12)s = %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.speeches
}.preferences
}.get
}(%(py8)s, %(py10)s)
} == %(py15)sr<  ©r9   r:   r;   r!   r#   rF   rG   rI   rÉ   rŸ   z/devicesÚspeech_modezCPU 18 percentr_  r   r"   r#   rñ   )zV%(py11)s not in %(py18)s
{%(py18)s = %(py15)s
{%(py15)s = %(py13)s.dumps
}(%(py16)s)
}r  rV  )r'   rÀ   rI   r*   r³  z%(py20)sr¡   zassert %(py23)sÚpy23ú$/api/devices/speech-test/speech-testÚ	arbitrary)r   rö   r  i¦  ©z|%(py10)s
{%(py10)s = %(py8)s
{%(py8)s = %(py2)s
{%(py2)s = %(py0)s.post
}(%(py4)s, json=%(py6)s)
}.status_code
} == %(py13)sr  ©r9   r:   r;   r!   r#   rF   rÀ   rH   rI   )Úwebsocket_connectrE  rL  r«   rC  rM   rN   rO   rR   rS   r:  rµ  rÌ   rT   rU   rV   r  rT  rP   rQ   ÚpostÚstatus_code)r>  r<  r  rB  r]   rn   rZ   rõ   re   rY   r[   rÖ   rs   rt   r²   r_   rw   r³   rV  r\   r^   r½  r`   rf   r´   rµ   r  ri   rv   s                                r   Ú&test_authenticated_manual_and_settingsr`  0  s	  € Ø!�N€GˆFØ	×	!Ò	! ,Ñ	/Ô	/ð @°2Ýˆb‰	Œ	ˆ	Ø
�Š•TÐ4ÀÈXÐ[cÐdÑdÔdÑeÔeÐeÝ�BÐ(Ñ)Ô)¨&Ô1Ð;°8Ð;Ð1°8Ò;Ð;Ð;Ð;Õ;Ô;Ð;Ð;Ð;Ð;Ð1°8Ð;Ñ;Ô;Õ;Ô;Ð1Ñ;Ô;Õ;Ô;°8Ñ;Ô;Ð;Ð;Ñ;Ð;Ð;Ð;Ð;Ð;Ñ;Ð;Õ;Õ;Ô;Ð;Ñ;Ô;Ñ;Ô;Ð;Ð;Ð;Ð;Ð;Ð;Ð;Ø
�Š•TÐ/¸6ÈÐYaÐgxÐyÑyÔyÑzÔzÐzÝ�B�~Ñ&Ô& xÔ0Ð:°(Ð:Ð0°(Ò:Ð:Ð:Ð:Õ:Ô:Ð:Ð:Ð:Ð:Ð0°(Ð:Ñ:Ô:Õ:Ô:Ð0Ñ:Ô:Õ:Ô:°(Ñ:Ô:Ð:Ð:Ñ:Ð:Ð:Ð:Ð:Ð:Ñ:Ð:Õ:Õ:Ô:Ð:Ñ:Ô:Ñ:Ô:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ý�B�~Ñ&Ô& zÔ2Ð5°AÐ5Ð2°AÒ5Ð5Ð5Ð5Õ5Ô5Ð5Ð5Ð5Ð5Ð2°AÐ5Ñ5Ô5Õ5Ô5Ð2Ñ5Ô5Õ5Ô5°AÑ5Ô5Ð5Ð5Ñ5Ð5Ð5Ð5Ð5Ð5Ñ5Ð5Õ5Õ5Ô5Ð5Ñ5Ô5Ñ5Ô5Ð5Ð5Ð5Ð5Ð5Ð5Ð5Ý�B�|Ñ$Ô$ XÔ.Ð1°Ð1Ð.°Ò1Ð1Ð1Ð1Õ1Ô1Ð1Ð1Ð1Ð1Ð.°Ð1Ñ1Ô1Õ1Ô1Ð.Ñ1Ô1Õ1Ô1°Ñ1Ô1Ð1Ð1Ñ1Ð1Ð1Ð1Ð1Ð1Ñ1Ð1Õ1Õ1Ô1Ð1Ñ1Ô1Ñ1Ô1Ð1Ð1Ð1Ð1Ð1Ð1Ð1ØÔÐQÐÔ+ÐQÐ+Ô/ÐQ°ÐQ¸hÐQÐ/Ð/°¸hÑGÔGÐQÈÐQÐGÈÒQÐQÐQÑQÕQÔQÐQÐQÐQÐQÐGÈÐQÑQÔQÐQÕQÔQÑQÔQÐQÐQÕQÔQˆwÑQÔQÐQÕQÔQˆwÑQÔQÐQÐQÕQÔQÐÑQÔQÕQÔQÐ+ÑQÔQÕQÔQÐ/ÑQÔQÕQÔQ°ÑQÔQÕQÔQ¸hÑQÔQÕQÔQÐGÑQÔQÕQÔQÈÑQÔQÐQÐQÑQÐQÐQÐQÐQÐQÑQÐQÕQÕQÔQÐQÑQÔQÑQÔQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQØ�zŠz˜*Ñ%Ô%×*Ò*Ñ,Ô,¨QÔ/ˆØ]Ð]ˆv�mÔ$Ð] hÐ]Ð$ hÒ.Ð]Ð]Ð]Ð]Ð]Ð3CÐ]Í4Ì:Ð]È:È:ÐV\ÑK]ÔK]Ð]Ð3CÐK]Ð3]Ð]Ð]Ð]Ð]Ñ]Õ]Ô]Ð]Ð]Ð]Ð]Ð$ hÐ]Ñ]Ô]Õ]Ô]Ð$Ñ]Ô]Õ]Ô] hÑ]Ô]Ð]Ð]Ñ]Ð]Ð]Ð]Ð]Ð]Ñ]Ð]Ð]×]Ò]Ð]Ñ]Ô]Ð]Ð]Ð]Õ]Ô]Ð]Ð]Ð]Ð]Ð3CÐK]Ð]Ñ]Ô]Õ]Ô]Ð3CÑ]Ô]Ð]Õ]Ô]Ñ]Ô]Ð]Ð]Õ]Ô]Í4Ñ]Ô]Ð]Õ]Ô]Í4Ñ]Ô]Ð]Ð]Õ]Ô]È:Ñ]Ô]Ð]Õ]Ô]Ñ]Ô]Ð]Ð]Õ]Ô]ÐV\Ñ]Ô]Ð]Õ]Ô]ÐV\Ñ]Ô]Ð]Ð]Õ]Ô]ÐK]Ñ]Ô]Ð]Ð]Ñ]Ð]Ð]Ð]Ð]Ð]Ñ]Ð]Ð]×]Ò]Ð]Ñ]Ô]Ð]Õ]Ô]Ð]Ð]Ñ]Ô]Ð]Ñ]Ð]Ð]Ð]Ð]Ð]Ñ]Ð]Õ]Õ]Ô]Ð]Ñ]Ô]Ñ]Ô]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]Ð]ØŒ{ÐÐAÐÐQYÐalÐGmÐGmÐˆ{ˆ{ÐAÐGmÐnÑnÔnÐÐnÔzÐÐ|ÐÐzÐ|ÒÐÐÐÕÔÐÐÐÐÐzÐ|ÐÑÔÐÕÔÑÔÐÐÕÔˆvÑÔÐÕÔˆvÑÔÐÐÕÔˆ{ÑÔÕÔÐAÑÔÕÔÐGmÑÔÕÔÐnÑÔÕÔÐzÑÔÕÔÐ|ÑÔÐÐÑÐÐÐÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐð@ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @ð @ð @s   ›\0]Ý]Ý]c                 ó®  — | \  }}|                      d¦  «        5 }|                     t          ddddddg¬¦  «        ¦  «         t          |d	¦  «         t          |d
¦  «         t          |d¦  «        d         }d}||k    }|slt	          j        d|fd||f¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }t          t	          j        |¦  «        ¦  «        ‚dx}x}}|                     t          dddd¬¦  «        ¦  «         t          |d¦  «        d         }d}||k    }|slt	          j        d|fd||f¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }t          t	          j        |¦  «        ¦  «        ‚dx}x}}|j	        }	|	j
        }|j        }
d}d} |
||¦  «        }d}||k    }|�s	t	          j        d|fd||f¦  «        dt          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        ndt	          j        |	¦  «        t	          j        |¦  «        t	          j        |
¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }t          t	          j        |¦  «        ¦  «        ‚dx}	x}x}
x}x}x}x}}|j        }	d}ddi}
 |	||
¬ ¦  «        }|j        }d!}||k    }|söt	          j        d|fd"||f¦  «        d#t          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        nd#t	          j        |	¦  «        t	          j        |¦  «        t	          j        |
¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d$œz  }d%d&|iz  }t          t	          j        |¦  «        ¦  «        ‚dx}	x}x}
x}x}x}}|j        }	d'}d}d(}t          ||¬)¦  «        } |	||¬ ¦  «        }|j        }d*}||k    }|�sdt	          j        d|fd+||f¦  «        d#t          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        nd#t	          j        |	¦  «        t	          j        |¦  «        d,t          j        ¦   «         v st	          j        t          ¦  «        rt	          j        t          ¦  «        nd,t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d-œ
z  }d.d/|iz  }t          t	          j        |¦  «        ¦  «        ‚dx}	x}x}x}x}x}x}x}}|                     t          d0d1dd2d3¬4¦  «        ¦  «         |                     d5d6d7d8œ¬ ¦  «         	 |                     ¦   «         }|d:         }|j        }d;} ||¦  «        }| }|ssd<t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d=œz  }t          t	          j        |¦  «        ¦  «        ‚dx}x}x}x}}|d:         }|j        }d>} ||¦  «        }| }|ssd<t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d=œz  }t          t	          j        |¦  «        ¦  «        ‚dx}x}x}x}}|d:         }|j        }d?} ||¦  «        }| }|ssd<t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        t	          j        |¦  «        d=œz  }t          t	          j        |¦  «        ¦  «        ‚dx}x}x}x}}|d:         d@k    rn�Œý|j	        }	|	j        }| }
|
s‹dAdt          j        ¦   «         v st	          j        |¦  «        rt	          j        |¦  «        ndt	          j        |	¦  «        t	          j        |¦  «        dBœz  }t          t	          j        |¦  «        ¦  «        ‚dx}	x}}
ddd¦  «         dS # 1 swxY w Y   dS )CzCspeech-settings alone selects a mode; it can never enable playback.rO  rE  r)  r*  rF  z	0.6.3-devzspeech-settings)r…   r•  r,  rG  rH  r¥   rI  rJ  rK  r§  r¾   r+   r  r  r  r!   NrP  rî  rÊ   rÂ   rQ  rU  r<  rV  rÉ   rŸ   rY  r   r  é™  r[  r  r\  rH   rI   ú/api/devices/speech-test/speechrÁ   ©r   r§  r  ©z³%(py15)s
{%(py15)s = %(py13)s
{%(py13)s = %(py2)s
{%(py2)s = %(py0)s.post
}(%(py4)s, json=%(py11)s
{%(py11)s = %(py5)s(target=%(py7)s, mode=%(py9)s)
})
}.status_code
} == %(py18)sr«   ©
r9   r:   r;   rB   r<   r>   r'   rÀ   rI   r³  r    r¡   rÛ  rR  r|   rS  rÞ  ú/devices/speech-test/messageÚsentinelzsettings only©ÚtitleÚbodyTr…   r°  úPassert not %(py7)s
{%(py7)s = %(py3)s
{%(py3)s = %(py1)s.startswith
}(%(py5)s)
}ró   r†   rœ   Údisplay_messageúLassert not %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.speeches
}.active
}ræ   )r]  rL  r«   rC  rM   rN   rO   rR   rS   r:  rµ  rÌ   rT   rU   rV   r^  r_  rA  Ú
startswithr©   )r>  r<  r  rB  r]   rn   rZ   rõ   re   rY   r[   rÖ   rs   rt   r²   r_   rw   r³   r`   rv   ro   ru   r^   r½  rø   r´   rµ   rè  r\   rf   rr   s                                  r   Ú7test_settings_only_firmware_saves_mode_without_playbackrp  @  s{
  € à!�N€GˆFØ	×	!Ò	! ,Ñ	/Ô	/ð +°2Ø
�Š•T˜w°ÈHÐ[aØ#.Ð=NÐ<OðQñ Qô Qñ 	Rô 	Rð 	RåˆR�ÑÔÐ�T " ^Ñ4Ô4Ð4Ý�BÐ(Ñ)Ô)¨&Ô1Ð8°5Ð8Ð1°5Ò8Ð8Ð8Ð8Õ8Ô8Ð8Ð8Ð8Ð8Ð1°5Ð8Ñ8Ô8Õ8Ô8Ð1Ñ8Ô8Õ8Ô8°5Ñ8Ô8Ð8Ð8Ñ8Ð8Ð8Ð8Ð8Ð8Ñ8Ð8Õ8Õ8Ô8Ð8Ñ8Ô8Ñ8Ô8Ð8Ð8Ð8Ð8Ð8Ð8Ð8Ø
�Š•TÐ4ÀÈXÐ[iÐjÑjÔjÑkÔkÐkÝ�BÐ(Ñ)Ô)¨&Ô1ÐA°>ÐAÐ1°>ÒAÐAÐAÐAÕAÔAÐAÐAÐAÐAÐ1°>ÐAÑAÔAÕAÔAÐ1ÑAÔAÕAÔA°>ÑAÔAÐAÐAÑAÐAÐAÐAÐAÐAÑAÐAÕAÕAÔAÐAÑAÔAÑAÔAÐAÐAÐAÐAÐAÐAÐAØÔÐWÐÔ+ÐWÐ+Ô/ÐW°ÐW¸hÐWÐ/Ð/°¸hÑGÔGÐWÈÐWÐGÈÒWÐWÐWÑWÕWÔWÐWÐWÐWÐWÐGÈÐWÑWÔWÐWÕWÔWÑWÔWÐWÐWÕWÔWˆwÑWÔWÐWÕWÔWˆwÑWÔWÐWÐWÕWÔWÐÑWÔWÕWÔWÐ+ÑWÔWÕWÔWÐ/ÑWÔWÕWÔW°ÑWÔWÕWÔW¸hÑWÔWÕWÔWÐGÑWÔWÕWÔWÈÑWÔWÐWÐWÑWÐWÐWÐWÐWÐWÑWÐWÕWÕWÔWÐWÑWÔWÑWÔWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWÐWàŒ{ÐlÐAÐlÈÐQYÐGZÐlˆ{ˆ{ÐAÐGZÐ[Ñ[Ô[ÐlÐ[ÔgÐlÐilÐlÐgÐilÒlÐlÐlÐlÕlÔlÐlÐlÐlÐlÐgÐilÐlÑlÔlÐlÕlÔlÑlÔlÐlÐlÕlÔlˆvÑlÔlÐlÕlÔlˆvÑlÔlÐlÐlÕlÔlˆ{ÑlÔlÕlÔlÐAÑlÔlÕlÔlÐGZÑlÔlÕlÔlÐ[ÑlÔlÕlÔlÐgÑlÔlÕlÔlÐilÑlÔlÐlÐlÑlÐlÐlÐlÐlÐlÑlÐlÕlÕlÔlÐlÑlÔlÑlÔlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlØŒ{Ð{Ð<Ð{ÈhÐ{Ð\hÐ{Å$ÈhÐ\hÐBiÑBiÔBiÐ{ˆ{ˆ{Ð<ÐBiÐjÑjÔjÐ{ÐjÔvÐ{Ðx{Ð{ÐvÐx{Ò{Ð{Ð{Ñ{Õ{Ô{Ð{Ð{Ð{Ð{ÐvÐx{Ð{Ñ{Ô{Ð{Õ{Ô{Ñ{Ô{Ð{Ð{Õ{Ô{ˆvÑ{Ô{Ð{Õ{Ô{ˆvÑ{Ô{Ð{Ð{Õ{Ô{ˆ{Ñ{Ô{Õ{Ô{Ð<Ñ{Ô{Ð{Õ{Ô{Ñ{Ô{Ð{Ð{Õ{Ô{Å$Ñ{Ô{Ð{Õ{Ô{Å$Ñ{Ô{Ð{Ð{Õ{Ô{ÈhÑ{Ô{Õ{Ô{Ð\hÑ{Ô{Õ{Ô{ÐBiÑ{Ô{Õ{Ô{ÐjÑ{Ô{Õ{Ô{ÐvÑ{Ô{Õ{Ô{Ðx{Ñ{Ô{Ð{Ð{Ñ{Ð{Ð{Ð{Ð{Ð{Ñ{Ð{Õ{Õ{Ô{Ð{Ñ{Ô{Ñ{Ô{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ø
�Š•TÐ/¸6ÈÐYaÐgxÐyÑyÔyÑzÔzÐzØ�ŠÐ2ÀÐSbÐ8cÐ8cˆÑdÔdÐdð	6Ø—/’/Ñ#Ô#ˆEØ˜V”}Ð?�}Ô/Ð?°Ð?Ð/Ð/°Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Õ?Ô?�}Ñ?Ô?Õ?Ô?Ð/Ñ?Ô?Õ?Ô?°Ñ?Ô?Õ?Ô?Ð?Ñ?Ô?Ð?Ð?Ñ?Ð?Õ?Õ?Ô?Ð?Ñ?Ô?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ø˜V”}Ð?�}Ô/Ð?°Ð?Ð/Ð/°Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Õ?Ô?�}Ñ?Ô?Õ?Ô?Ð/Ñ?Ô?Õ?Ô?°Ñ?Ô?Õ?Ô?Ð?Ñ?Ô?Ð?Ð?Ñ?Ð?Õ?Õ?Ô?Ð?Ñ?Ô?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ø˜V”}Ð=�}Ô/Ð=°Ð=Ð/Ð/°Ñ=Ô=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Õ=Ô=�}Ñ=Ô=Õ=Ô=Ð/Ñ=Ô=Õ=Ô=°Ñ=Ô=Õ=Ô=Ð=Ñ=Ô=Ð=Ð=Ñ=Ð=Õ=Õ=Ô=Ð=Ñ=Ô=Ñ=Ô=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ð=Ø�VŒ}Ð/Ò/Ð/°ñ	6ð Ô#Ð*Ð#Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Õ*Ô*Ñ*Ô*Ð*Ð*Õ*Ô*�7Ñ*Ô*Ð*Õ*Ô*�7Ñ*Ô*Ð*Ð*Õ*Ô*Ð#Ñ*Ô*Õ*Ô*Ð*Ñ*Ô*Ð*Ð*Ñ*Ð*Õ*Õ*Ô*Ð*Ñ*Ô*Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*ð'+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +s   ›b"c
ã
cãcc                 ó
  — | \  }}|                      d¦  «        5 }t          |d¬¦  «         |j        }d}d}d}t          ||¬¦  «        } |||¬¦  «        }	|	j        }
d	}|
|k    }|�sdt          j        d
|fd|
|f¦  «        dt          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        ndt          j
        |¦  «        t          j
        |¦  «        dt          j        ¦   «         v st          j	        t          ¦  «        rt          j
        t          ¦  «        ndt          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |	¦  «        t          j
        |
¦  «        t          j
        |¦  «        dœ
z  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}	x}
x}}|j        }d}ddi} |||¬¦  «        }|j        }d}	||	k    }|söt          j        d
|fd||	f¦  «        dt          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        ndt          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |	¦  «        dœz  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}}	|                     ddddœ¬¦  «         	 |                     ¦   «         }|d         }|j        }d} ||¦  «        }| }|ssdt          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}}|d         d k    rnŒÀ	 d d d ¦  «         d S # 1 swxY w Y   d S )!NrO  T)rM  rc  rÊ   rÁ   rd  r  r  r+   re  r  r«   rf  r    r¡   rY  r   rb  r[  r\  rH   rI   rg  rh  zold device worksri  r…   Úspeech_rl  ró   rm  )r]  rE  r^  r«   r_  rM   rN   rT   rU   rV   rO   rR   rS   rA  ro  )r>  r‰   r  rB  rY   rn   ro   ru   r^   r`   r²   r½  rø   r´   rµ   r[   rÖ   rs   rt   rv   rw   rè  r]   rZ   r\   rf   s                             r   Ú'test_old_firmware_never_receives_speechrs  Y  sÝ  € Ø�H€A€fØ	×	!Ò	! ,Ñ	/Ô	/ð 6°2Ýˆb˜ÐÑÔÐØŒ{Ð{Ð<Ð{ÈhÐ{Ð\hÐ{Å$ÈhÐ\hÐBiÑBiÔBiÐ{ˆ{ˆ{Ð<ÐBiÐjÑjÔjÐ{ÐjÔvÐ{Ðx{Ð{ÐvÐx{Ò{Ð{Ð{Ñ{Õ{Ô{Ð{Ð{Ð{Ð{ÐvÐx{Ð{Ñ{Ô{Ð{Õ{Ô{Ñ{Ô{Ð{Ð{Õ{Ô{ˆvÑ{Ô{Ð{Õ{Ô{ˆvÑ{Ô{Ð{Ð{Õ{Ô{ˆ{Ñ{Ô{Õ{Ô{Ð<Ñ{Ô{Ð{Õ{Ô{Ñ{Ô{Ð{Ð{Õ{Ô{Å$Ñ{Ô{Ð{Õ{Ô{Å$Ñ{Ô{Ð{Ð{Õ{Ô{ÈhÑ{Ô{Õ{Ô{Ð\hÑ{Ô{Õ{Ô{ÐBiÑ{Ô{Õ{Ô{ÐjÑ{Ô{Õ{Ô{ÐvÑ{Ô{Õ{Ô{Ðx{Ñ{Ô{Ð{Ð{Ñ{Ð{Ð{Ð{Ð{Ð{Ñ{Ð{Õ{Õ{Ô{Ð{Ñ{Ô{Ñ{Ô{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{Ð{ØŒ{ÐlÐAÐlÈÐQYÐGZÐlˆ{ˆ{ÐAÐGZÐ[Ñ[Ô[ÐlÐ[ÔgÐlÐilÐlÐgÐilÒlÐlÐlÐlÕlÔlÐlÐlÐlÐlÐgÐilÐlÑlÔlÐlÕlÔlÑlÔlÐlÐlÕlÔlˆvÑlÔlÐlÕlÔlˆvÑlÔlÐlÐlÕlÔlˆ{ÑlÔlÕlÔlÐAÑlÔlÕlÔlÐGZÑlÔlÕlÔlÐ[ÑlÔlÕlÔlÐgÑlÔlÕlÔlÐilÑlÔlÐlÐlÑlÐlÐlÐlÐlÐlÑlÐlÕlÕlÔlÐlÑlÔlÑlÔlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlÐlØ�ŠÐ2ÀÐSeÐ8fÐ8fˆÑgÔgÐgð	6Ø—/’/Ñ#Ô#ˆE¨u°V¬}Ð$R¨}Ô/GÐ$RÈ	Ð$RÐ/GÐ/GÈ	Ñ/RÔ/RÐ$RÐ/RÐ+RÐ$RÐ+RÐ$RÐ$RÕ$RÔ$R¨}Ñ$RÔ$RÕ$RÔ$RÐ/GÑ$RÔ$RÕ$RÔ$RÈ	Ñ$RÔ$RÕ$RÔ$RÐ/RÑ$RÔ$RÐ$RÐ$RÑ$RÐ$RÕ$RÕ$RÔ$RÐ$RÑ$RÔ$RÑ$RÔ$RÐ$RÐ$RÐ$RÐ$RÐ$RÐ$RÐ$RÐ$RÐ$RÐ$RÐ$RØ�VŒ}Ð/Ò/Ð/°ð	6à05ð6ð 6ð 6ñ 6ô 6ð 6ð 6ð 6ð 6ð 6ð 6ð 6øøøð 6ð 6ð 6ð 6ð 6ð 6s   ›OO8Ï8O<Ï?O<Úpreempt)ÚvoicerÂ  r   rÄ  c                 ón  ‡— | \  Š}|                      d¦  «        5 }t          |¦  «         |                     dddi¬¦  «         t          |d¦  «         t          |d¦  «         |j        }d}ddi} |||¬¦  «        }|j        }d	}	||	k    }
|
söt          j        d
|
fd||	f¦  «        dt          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        ndt          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        t          j
        |	¦  «        dœz  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}
}	t          |d¦  «        d         }|dk    r(|                     t          ddddd¬¦  «        ¦  «         nh|dk    r|                     dddi¬¦  «         nH|dk    r%|                     t          dd¬¦  «        ¦  «         n|j                             ˆfd„¦  «         t          |d¦  «        d         }||k    }|s—t          j        d
|fd ||f¦  «        t          j
        |¦  «        d!t          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        nd!d"œz  }d#d$|iz  }t          t          j        |¦  «        ¦  «        ‚d x}}‰j        }|j        }| }|s‹d%d&t          j        ¦   «         v st          j	        ‰¦  «        rt          j
        ‰¦  «        nd&t          j
        |¦  «        t          j
        |¦  «        d'œz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}d d d ¦  «         d S # 1 swxY w Y   d S )(NrO  ú/devices/speech-test/targetr   r˜  r  Úagent_staterK  rY  r  r+   r[  r  r\  rH   rI   r°  r•   ru  Úvoice_startÚvéD¬  é   r   )r…   Úvoice_idÚsample_rateÚbitsÚchannelsrÊ   rÄ  Úsettings_getrÜ  )r…   rß  c            
      óH   •— ‰ j                              dddddddd¬¦  «        S )	Nrª  r«  rŠ   rñ  ÚTestrb  Úonce)re  ré  Ú
project_idrì  rj  ÚdetailÚownerÚrequest_identity)Ú	approvalsÚcreate)r<  s   €r   r�   z/test_authenticated_preemption.<locals>.<lambda>r  sF   ø€  gÔ&7×&>Ò&>ÀTÐUXÐdgÐmsð  {Að  IOð  V\ð  ntÐ&>ñ  'uô  'u€ r   rÕ  )z%(py1)s == %(py3)srÊ  )rA   r    rë   rB   rn  r<  ræ   )r]  rE  r^  rC  r_  rM   rN   rT   rU   rV   rO   rR   rS   rL  r«   ÚportalÚcallr:  r©   )r>  rt  r  rB  rY   rn   r[   rÖ   rs   r`   rt   rv   rw   rÊ  r]   rZ   r÷   rr   r<  s                     @r   Útest_authenticated_preemptionr�  e  s�  ø€ à!�N€GˆFØ	×	!Ò	! ,Ñ	/Ô	/ð +°2Ýˆb‰	Œ	ˆ	Ø�ŠÐ1¸ÀÐ7NˆÑOÔOÐOÝˆR�ÑÔÐ�t BÐ'8Ñ9Ô9Ð9ØŒ{ÐpÐAÐpÈÐQ]ÐG^Ðpˆ{ˆ{ÐAÐG^Ð_Ñ_Ô_ÐpÐ_ÔkÐpÐmpÐpÐkÐmpÒpÐpÐpÐpÕpÔpÐpÐpÐpÐpÐkÐmpÐpÑpÔpÐpÕpÔpÑpÔpÐpÐpÕpÔpˆvÑpÔpÐpÕpÔpˆvÑpÔpÐpÐpÕpÔpˆ{ÑpÔpÕpÔpÐAÑpÔpÕpÔpÐG^ÑpÔpÕpÔpÐ_ÑpÔpÕpÔpÐkÑpÔpÕpÔpÐmpÑpÔpÐpÐpÑpÐpÐpÐpÐpÐpÑpÐpÕpÕpÔpÐpÑpÔpÑpÔpÐpÐpÐpÐpÐpÐpÐpÐpÐpÐpÐpÐpÐpÐpÐpÝ��NÑ#Ô# KÔ0ˆØ�GÒÐ˜BŸLšL­°=È#ÐZ_ÐegÐqrÐ)sÑ)sÔ)sÑtÔtÐtÐtØ�hÒÐ˜vŸ{š{Ð+HÈxÐX`ÐNa˜{ÑbÔbÐbÐbØ�jÒ Ð  §¢­d¸ÐRUÐ.VÑ.VÔ.VÑ!WÔ!WÐ!WÐ!WàŒM×Òð   uð   uð   uð   uñ  vô  vð  vÝ�B�Ñ'Ô'¨Ô4Ð9Ð4°cÒ9Ð9Ð9Ð9Õ9Ô9Ð9Ð9Ð9Ð9Ð4°cÐ9Ñ9Ô9Õ9Ô9Ð4Ñ9Ô9Ð9Õ9Ô9Ñ9Ô9Ð9Ð9Õ9Ô9°cÑ9Ô9Ð9Õ9Ô9°cÑ9Ô9Ð9Ð9Ð9Ð9Ñ9Ð9Ð9Ð9Ð9Ð9Ñ9Ð9Õ9Õ9Ô9Ð9Ñ9Ô9Ñ9Ô9Ð9Ð9Ð9Ð9Ð9ØÔ#Ð*Ð#Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Ð*Õ*Ô*Ñ*Ô*Ð*Ð*Õ*Ô*�7Ñ*Ô*Ð*Õ*Ô*�7Ñ*Ô*Ð*Ð*Õ*Ô*Ð#Ñ*Ô*Õ*Ô*Ð*Ñ*Ô*Ð*Ð*Ñ*Ð*Õ*Õ*Ô*Ð*Ñ*Ô*Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +s   œNN*Î*N.Î1N.c                 ó  ‡— | \  }Š‰                      d¦  «        5 }t          |¦  «         ‰                     dddi¬¦  «         t          |d¦  «         t          |d¦  «         ‰                     dt	          dd	¬
¦  «        ¬¦  «         ˆfd„}d} ||¦  «        }|j        }d}||k    }|sÐt          j        d|fd||f¦  «        dt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }	dd|	iz  }
t          t          j        |
¦  «        ¦  «        ‚d x}x}x}x}} |ddd¬¦  «         |j        }|j        }|j        }| }|sžddt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}} |dd¬¦  «         t          |d¦  «          |dd¬¦  «         |j        }|j        }|j        }d g}||k    }|sÐt          j        d|fd!||f¦  «        dt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }	dd|	iz  }
t          t          j        |
¦  «        ¦  «        ‚d x}x}x}x}}|j        }|j        }|j        }| }|sžd"dt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}}‰j        }d}d#}d$}t	          ||¬
¦  «        } |||¬¦  «        }|j        }d%}||k    }|�sdt          j        d|fd&||f¦  «        d't          j	        ¦   «         v st          j
        ‰¦  «        rt          j        ‰¦  «        nd't          j        |¦  «        t          j        |¦  «        d(t          j	        ¦   «         v st          j
        t          ¦  «        rt          j        t          ¦  «        nd(t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d)œ
z  }d*d+|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}x}}d d d ¦  «         d S # 1 swxY w Y   d S ),NrO  rw  r   r˜  r  rx  rK  rc  rÁ   rd  c                 óX   •— ‰                      dddit          d
| dddddœ|¤Ž¬	¦  «        S )Nz/integrations/pi/eventszx-device-lab-pi-tokenr+  r«  zpublic testrç  r  )rè  ré  rê  rë  rï  )r!  r  r‡   )r^  r«   )rì  Úextrar  s     €r   r^  z@test_authenticated_pi_terminal_final_and_duplicate.<locals>.post~  sv   ø€ Ø—;’;Ð8ÐBYÐZeÐAfÕlpð  m~Ðw{ð  HKð  Q^ð  cið  ruð  m~ð  m~ð  x}ð  m~ð  m~�;ñ  ô  ð  r   rí  r  r+   )zQ%(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py0)s(%(py2)s)
}.status_code
} == %(py9)sr^  )r9   r:   r;   r!   r>   zassert %(py11)sr'   rð  rö   zIntermediate text.rò  ziassert not %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.speeches
}.provider
}.calls
}r<  )r9   r:   r;   r!   rô  úOnly the final answer.)rõ  rœ   zDuplicate must not speak.)r‘  rî   )zi%(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.speeches
}.provider
}.calls
} == %(py9)szkassert not %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.speeches
}.summarizer
}.calls
}zagent:pi:staler­  rb  re  r  r«   rf  r    r¡   )r]  rE  r^  rC  r«   r_  rM   rN   rT   rU   rV   rO   rR   rS   r:  r¹  r„  rº  )r>  r<  rB  r^  rY   rn   r[   ru   rÖ   rq   r×   rp   ro   r^   r`   r²   r½  rø   r´   rµ   r  s                       @r   Ú2test_authenticated_pi_terminal_final_and_duplicater’  w  s;  ø€ Ø!�N€GˆFØ	×	!Ò	! ,Ñ	/Ô	/ð @°2Ýˆb‰	Œ	ˆ	Ø�ŠÐ1¸ÀÐ7NˆÑOÔOÐOÝˆR�ÑÔÐ�t BÐ'8Ñ9Ô9Ð9Ø�ŠÐ5½4À|ÐYeÐ;fÑ;fÔ;fˆÑgÔgÐgð	ð 	ð 	ð 	ð 	à!Ð3ˆtˆt�MÑ"Ô"Ð3Ð"Ô.Ð3°Ð3Ð.°Ò3Ð3Ð3Ð3Õ3Ô3Ð3Ð3Ð3Ð3Ð.°Ð3Ñ3Ô3Ð3Õ3Ô3Ñ3Ô3Ð3Ð3Õ3Ô3ˆtÑ3Ô3Ð3Õ3Ô3ˆtÑ3Ô3Ð3Ð3Õ3Ô3�MÑ3Ô3Õ3Ô3Ð"Ñ3Ô3Õ3Ô3Ð.Ñ3Ô3Õ3Ô3°Ñ3Ô3Ð3Ð3Ñ3Ð3Ð3Ð3Ð3Ð3Ñ3Ð3Õ3Õ3Ô3Ð3Ñ3Ô3Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ð3ØˆˆZ fÐ6JÐKÑKÔKÐKØÔ#Ð2Ð#Ô,Ð2Ð,Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2�7Ñ2Ô2Ð2Õ2Ô2�7Ñ2Ô2Ð2Ð2Õ2Ô2Ð#Ñ2Ô2Õ2Ô2Ð,Ñ2Ô2Õ2Ô2Ð2Ñ2Ô2Ð2Ð2Ñ2Ð2Õ2Õ2Ô2Ð2Ñ2Ô2Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Øˆˆ[Ð$<Ð=Ñ=Ô=Ð=ÝˆR�ÑÔÐØˆˆ[Ð$?Ð@Ñ@Ô@Ð@ØÔÐQÐÔ(ÐQÐ(Ô.ÐQÐ1PÐ0QÐQÐ.Ð0QÒQÐQÐQÐQÕQÔQÐQÐQÐQÐQÐ.Ð0QÐQÑQÔQÐQÕQÔQÑQÔQÐQÐQÕQÔQˆwÑQÔQÐQÕQÔQˆwÑQÔQÐQÐQÕQÔQÐÑQÔQÕQÔQÐ(ÑQÔQÕQÔQÐ.ÑQÔQÕQÔQÐ0QÑQÔQÐQÐQÑQÐQÐQÐQÐQÐQÑQÐQÕQÕQÔQÐQÑQÔQÑQÔQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQÐQØÔ#Ð4Ð#Ô.Ð4Ð.Ô4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Õ4Ô4Ñ4Ô4Ð4Ð4Õ4Ô4�7Ñ4Ô4Ð4Õ4Ô4�7Ñ4Ô4Ð4Ð4Õ4Ô4Ð#Ñ4Ô4Õ4Ô4Ð.Ñ4Ô4Õ4Ô4Ð4Ñ4Ô4Ð4Ð4Ñ4Ð4Õ4Õ4Ô4Ð4Ñ4Ô4Ñ4Ô4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4Ð4ØŒ{ÐÐ<ÐÐN^ÐÐdlÐÅ$ÐN^ÐdlÐBmÑBmÔBmÐˆ{ˆ{Ð<ÐBmÐnÑnÔnÐÐnÔzÐÐ|ÐÐzÐ|ÒÐÐÑÕÔÐÐÐÐÐzÐ|ÐÑÔÐÕÔÑÔÐÐÕÔˆvÑÔÐÕÔˆvÑÔÐÐÕÔˆ{ÑÔÕÔÐ<ÑÔÐÕÔÑÔÐÐÕÔÅ$ÑÔÐÕÔÅ$ÑÔÐÐÕÔÐN^ÑÔÕÔÐdlÑÔÕÔÐBmÑÔÕÔÐnÑÔÕÔÐzÑÔÕÔÐ|ÑÔÐÐÑÐÐÐÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐÐð@ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @ð @ð @s   œWW:×:W>ØW>c                  ó:   — d„ } t           | ¦   «         ¦  «         d S )Nc               “   ó.  ‡K  — t          d ¦  «        } g Šˆfd„| _        |                      ddddidœdœ¦  «        ƒ d {V —† |                      ddd	d
dœdœdœ¦  «        ƒ d {V —† g }| j        d         d         }d}||k    }|}|r‰ }|}|sût	          j        d|fd||f¦  «        t	          j        |¦  «        t	          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |rYdddt          j	        ¦   «         v st	          j
        ‰¦  «        rt	          j        ‰¦  «        ndiz  }	|                     |	¦  «         t	          j        |d¦  «        i z  }
dd|
iz  }t          t	          j        |¦  «        ¦  «        ‚d x}x}x}x}x}}d S )Nc                  ó.   •— ‰                      | ¦  «        S r   r  r	  s     €r   r�   z_test_codex_reconnect_terminal_updates_monitor_without_speaking.<locals>.check.<locals>.<lambda>�  r
  r   zthread/status/changedr«  r…   r©   )r  rV  r  r  zjoined-mid-turnr  r  )r  r  r  rc  r+   r_  r   r"   r#   znot %(py10)srF   r„  r   rj  r(   )r   r   rè  ÚliverM   rN   rO   rP   rT   rU   rV   rQ   rR   rS   )r  rY   rZ   r[   r\   r]   rt   re   rf   r×   rô   rg   r„  s               @r   r·   zMtest_codex_reconnect_terminal_updates_monitor_without_speaking.<locals>.checkŒ  se  øè è € Ý˜TÑ"Ô"ˆ¨ 5Ð@^Ð@^Ð@^Ð@^¨GÔ,?Ø�mŠmÐ&=ÐSVÐagÐhpÐ`qÐGrÐGrÐsÐsÑtÔtÐtÐtÐtÐtÐtÐtÐtØ�mŠmÐ&6ÈCÐ]nð  yDð  XEð  XEð  AFð  AFð  Gð  Gñ  Hô  Hð  	Hð  	Hð  	Hð  	Hð  	Hð  	Hð  	HØ?Ð?ˆwŒ|˜CÔ  Ô)Ð?¨6Ð?Ð)¨6Ò1Ð?Ð?Ð?Ð?Ð?¸%°iÐ?°iÐ?Ð?Ð?Õ?Ô?Ð?Ð?Ð?Ð?Ð)¨6Ð?Ñ?Ô?Õ?Ô?Ð)Ñ?Ô?Õ?Ô?¨6Ñ?Ô?Ð?Ð?Ñ?Ð?Ð?Ð?Ð?Ð?Ñ?Ð?Ð?×?Ò?Ð?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Õ?Ô?Ñ?Ô?Ð?Ð?Õ?Ô?¸%Ñ?Ô?Ð?Õ?Ô?¸%Ñ?Ô?Ð?Ð?Ð?Ñ?Ð?Ð?×?Ò?Ð?Ñ?Ô?Ð?Õ?Ô?Ð?Ð?Ñ?Ô?Ð?Ñ?Ð?Ð?Ð?Ð?Ð?Ñ?Ð?Õ?Õ?Ô?Ð?Ñ?Ô?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ð?r   r¸   r!  s    r   Ú>test_codex_reconnect_terminal_updates_monitor_without_speakingr—  ‹  s+   € ð@ð @ð @õ
 ˆˆ‰Œ�L„L€L€L€Lr   c                  ó:   — d„ } t           | ¦   «         ¦  «         d S )Nc               “   ó>  K  — t          j        d¦  «        4 ƒd {V —† t          j        t          ¦  «        5  t          t          ddz  dz  ¦  «        d¬¦  «        ƒ d {V —† d d d ¦  «         n# 1 swxY w Y   d d d ¦  «        ƒd {V —† d S # 1 ƒd {V —†swxY w Y   d S )Nr  rD   r{  r—   r1   )r;  )r   r<  rÒ   rÓ   r   r	   r   r‡   r   r   r·   z<test_large_ffmpeg_output_cancel_reaps_process.<locals>.check•  s¥  è è € Ý”? 1Ñ%Ô%ð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	LÝ”�{Ñ+Ô+ð Lð LÝ"¥7¨7°5©=¸©?Ñ#;Ô#;ÀsÐKÑKÔKÐKÐKÐKÐKÐKÐKÐKðLð Lð Lñ Lô Lð Lð Lð Lð Lð Lð Løøøð Lð Lð Lð Lð	Lð 	Lð 	Lñ 	Lô 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Løøøð 	Lð 	Lð 	Lð 	Lð 	Lð 	Ls4   �B·+A.Á"BÁ.A2	Á2BÁ5A2	Á6BÂ
BÂBr¸   r!  s    r   Ú-test_large_ffmpeg_output_cancel_reaps_processrš  ”  s+   € ðLð Lð Lõ ˆˆ‰Œ�L„L€L€L€Lr   c                 ó"  — | \  }}|                      d¦  «        5 }t          |¦  «         |                     dddi¬¦  «         t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   |j        }|j        }| }|s‹ddt          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        ndt          j
        |¦  «        t          j
        |¦  «        d	œz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}d S )
NrO  rY  r   rÊ   r  r°  rn  r<  ræ   )r]  rE  r^  rC  r:  r©   rT   rU   rM   rV   rO   rR   rS   )r>  r<  r  rB  rY   rn   r[   rr   s           r   Ú&test_disconnect_clears_active_playbackrœ  œ  se  € Ø!�N€GˆFØ	×	!Ò	! ,Ñ	/Ô	/ð  °2Ýˆb‰	Œ	ˆ	Ø�ŠÐ:ÀÈ(Ð@SˆÑTÔTÐTÝˆR�ÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð ÔÐ&ÐÔ&Ð&Ð&Ð&Ð&Ð&Ð&Ð&Ð&Õ&Ô&Ñ&Ô&Ð&Ð&Õ&Ô&ˆwÑ&Ô&Ð&Õ&Ô&ˆwÑ&Ô&Ð&Ð&Õ&Ô&ÐÑ&Ô&Õ&Ô&Ð&Ñ&Ô&Ð&Ð&Ñ&Ð&Õ&Õ&Ô&Ð&Ñ&Ô&Ñ&Ô&Ð&Ð&Ð&Ð&Ð&Ð&Ð&Ð&Ð&s   ›9A Á A$Á'A$c                 ó@   ‡ — ˆ fd„}t           |¦   «         ¦  «         d S )Nc               “   ó*  •‡	K  — t          ‰
¦  «        \  } }}}}t          j        ¦   «         Š	 G ˆ	fd„d¦  «        } |¦   «         | _        |                      |dd¦  «         t          j        d¦  «        ƒ d {V —† |                      |¦  «         t          j        ‰	                     ¦   «         d¦  «        ƒ d {V —† d„ |D ¦   «         }t          |¦  «        }| }|s•dd	t          j        ¦   «         v st          j        t          ¦  «        rt          j        t          ¦  «        nd	t          j        |¦  «        t          j        |¦  «        d
œz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}|                      ¦   «         ƒ d {V —† d S )Nc                   ó   •— e Zd Zˆ fd„ZdS )úJtest_slow_synthesis_cancel_cannot_start_later.<locals>.check.<locals>.Slowc              —   óš   •K  — t          j        d¦  «        ƒ d {V —† ‰                     ¦   «          d S # ‰                     ¦   «          w xY w)Né<   )r   r¨   rÍ   )r†  ÚargsÚ	cancelleds     €r   r+  zUtest_slow_synthesis_cancel_cannot_start_later.<locals>.check.<locals>.Slow.synthesizeª  sL   øè è € Ý!œ-¨Ñ+Ô+Ð+Ð+Ð+Ð+Ð+Ð+Ð+Ø!Ÿš™œ˜˜˜ø˜	Ÿš™œ˜˜øøøs	   „4 ´A
N)rŒ  r�  rŽ  r+  )r¤  s   €r   ÚSlowr   ©  s.   ø€ € € € € ð(ð (ð (ð (ð (ð (ð (r   r¥  r|   zScreen.r˜   r   c              3   ó4   K  — | ]\  }}|d          dk    V — ŒdS )r…   r°  Nr‡   rˆ   s      r   r6   zOtest_slow_synthesis_cancel_cannot_start_later.<locals>.check.<locals>.<genexpr>°  s/   è è € Ð@Ð@±S°Q°q�q˜”y .Ò0Ð@Ð@Ð@Ð@Ð@Ð@r   rÐ  rÑ  ræ   )r¤   r   ÚEventr¹  r§   r¨   rÖ  r¬   ÚwaitrÑ  rT   rU   rM   rV   rO   rR   rS   r®   )r~   r   rŒ   r‰   r¥  rY   rn   r[   rr   r¤  r¶   s            @€r   r·   z<test_slow_synthesis_cancel_cannot_start_later.<locals>.check¦  sÁ  øøè è € Ý˜HÑ%Ô%‰ˆˆ!ˆC��!Ý”-‘/”/ˆ	ð	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð �4‘6”6ˆŒ
˜!Ÿ'š' ! H¨YÑ7Ô7Ð7ÝŒm˜CÑ Ô Ð Ð Ð Ð Ð Ð Ð  §¢¨!¡¤ ÝÔ˜yŸ~š~Ñ/Ô/°Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ø@Ð@¸CÐ@Ñ@Ô@Ð@•3Ð@Ñ@Ô@Ð@Ð@Ð@Ð@Ð@Ð@Ð@Ð@Õ@Ô@Ñ@Ô@Ð@Ð@Õ@Ô@•3Ñ@Ô@Ð@Õ@Ô@•3Ñ@Ô@Ð@Ð@Õ@Ô@Ð@Ñ@Ô@Õ@Ô@Ð@Ñ@Ô@Ð@Ð@Ñ@Ð@Õ@Õ@Ô@Ð@Ñ@Ô@Ñ@Ô@Ð@Ð@Ð@Ð@Ð@Ð@Ð@Ø�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   r¸   r¹   s   ` r   Ú-test_slow_synthesis_cancel_cannot_start_laterr©  ¥  rä  r   c                 óD   ‡ ‡— ˆˆ fd„}t           |¦   «         ¦  «         d S )Nc            	   “   ó¸  •‡‡‡‡K  — t          ‰d¦  «        \  ŠŠ} }}‰j                             d¦  «         t          j        Šg Šˆˆˆˆfd„}‰                     t          d|¦  «         ‰j        }d}d} |‰||¦  «        }|sïddt          j        ¦   «         v st          j
        ‰¦  «        rt          j        ‰¦  «        ndt          j        |¦  «        d	t          j        ¦   «         v st          j
        ‰¦  «        rt          j        ‰¦  «        nd	t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        d
œz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}}‰j        d         }|j        ƒ d {V —† ddg}	‰|	k    }|s—t          j        d|fd‰|	f¦  «        dt          j        ¦   «         v st          j
        ‰¦  «        rt          j        ‰¦  «        ndt          j        |	¦  «        dœz  }
dd|
iz  }t          t          j        |¦  «        ¦  «        ‚d x}}	d„ | D ¦   «         }t#          |¦  «        }d}||k    }|sÇt          j        d|fd||f¦  «        dt          j        ¦   «         v st          j
        t"          ¦  «        rt          j        t"          ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}}| d         d         d         }d}||k    }	|	slt          j        d|	fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }d d!|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}	}‰                     ¦   «         ƒ d {V —† d S )"Nr1   r{   c              “   ó,  •K  — |dv r|‰                      |¦  «         ‰j        d         }t          ‰¦  «        dk    rdnd}‰                     ‰t	          d|j        |¬¦  «        ¦  «        ƒ d {V —†  ‰| d¦  «        ƒ d {V —†S  ‰| |¦  «        ƒ d {V —†S )	N)rÈ  é   r�   r   r—   rš   r“   r”   gš™™™™™¹?)rP   r©   rÇ   rª   r«   r•   )Ú	awaitabler<  r¯   r±   r   r~   ÚoriginalÚtimeoutss       €€€€r   r¨  z[test_slow_startup_has_bounded_grace_then_normal_credit_timeout.<locals>.check.<locals>.wait»  sÉ   øè è € Ø˜&Ð Ð Ø—’ Ñ(Ô(Ð(Ø”H˜S”M�å˜x™=œ=¨!Ò+Ð+�a�a°�Ø—h’h˜q¥Ð+<ÀsÄ}ÐchÐ!iÑ!iÔ!iÑjÔjÐjÐjÐjÐjÐjÐjÐjØ%˜X i°Ñ3Ô3Ð3Ð3Ð3Ð3Ð3Ð3Ð3Ø!˜ )¨GÑ4Ô4Ð4Ð4Ð4Ð4Ð4Ð4Ð4r   r¬   r|   zSlow first download.r}   r~   r   r€   r�   rÈ  r­  r+   rè   r°  rê   rë   rB   c              3   ó4   K  — | ]\  }}|d          dk    V — ŒdS r„   r‡   rˆ   s      r   r6   z`test_slow_startup_has_bounded_grace_then_normal_credit_timeout.<locals>.check.<locals>.<genexpr>È  s/   è è € Ð<Ð<±°°1�1�V”9˜nÒ,Ð<Ð<Ð<Ð<Ð<Ð<r   rÓ  r‹   r8   r=   r>   r›   r   r…   rœ   r  r  r  r!   )r¤   r¥   r¦   r   r¬   r  r§   rT   rU   rM   rV   rO   rR   rS   r©   r­   rN   r‹   r®   )rŒ   r‰   r¨  rY   r\   ro   ru   rq   r¯   rZ   r÷   rr   rn   r[   rp   r]   rõ   re   r   r~   r¯  r°  r  r¶   s                     @@@@€€r   r·   zMtest_slow_startup_has_bounded_grace_then_normal_credit_timeout.<locals>.check¶  sg  øøøøøè è € Ý˜H SÑ)Ô)‰ˆˆ!ˆC��!Ø	Œ×ÒÐ-Ñ.Ô.Ð.ÝÔ!ˆØˆð	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	×Ò�G J¨tÑ4Ô4Ð4ØŒwÐ9˜Ð9Ð"8Ð9ˆwˆw�q˜Ð"8Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Õ9Ô9Ñ9Ô9Ð9Ð9Õ9Ô9ˆqÑ9Ô9Ð9Õ9Ô9ˆqÑ9Ô9Ð9Ð9Õ9Ô9ˆwÑ9Ô9Ð9Õ9Ô9Ñ9Ô9Ð9Ð9Õ9Ô9�qÑ9Ô9Ð9Õ9Ô9�qÑ9Ô9Ð9Ð9Õ9Ô9˜Ñ9Ô9Õ9Ô9Ð"8Ñ9Ô9Õ9Ô9Ð9Ñ9Ô9Ð9Ð9Ñ9Ð9Õ9Õ9Ô9Ð9Ñ9Ô9Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9Ð9ØŒH�SŒMˆ ¤˜.˜.˜.˜.˜.˜.˜.Ø˜Q˜Ðˆx˜ÒÐÐÐÕÔÐÐÐÐˆx˜ÐÑÔÐÕÔÑÔÐÐÕÔˆxÑÔÐÕÔˆxÑÔÐÐÕÔ˜ÑÔÐÐÑÐÐÐÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐØ<Ð<¸Ð<Ñ<Ô<ÐA�sÐ<Ñ<Ô<ÐA¸cÐAÐ<¸cÒAÐAÐAÐAÕAÔAÐAÐAÐAÐAÐ<¸cÐAÑAÔAÐAÕAÔAÑAÔAÐAÐAÕAÔA�sÑAÔAÐAÕAÔA�sÑAÔAÐAÐAÕAÔAÐ<ÑAÔAÕAÔAÐ<ÑAÔAÕAÔA¸cÑAÔAÐAÐAÑAÐAÐAÐAÐAÐAÑAÐAÕAÕAÔAÐAÑAÔAÑAÔAÐAÐAÐAÐAÐAÐAÐAÐAÐAØ�2Œw�qŒz˜&Ô!Ð/ <Ð/Ð! <Ò/Ð/Ð/Ð/Õ/Ô/Ð/Ð/Ð/Ð/Ð! <Ð/Ñ/Ô/Õ/Ô/Ð!Ñ/Ô/Õ/Ô/ <Ñ/Ô/Ð/Ð/Ñ/Ð/Ð/Ð/Ð/Ð/Ñ/Ð/Õ/Õ/Ô/Ð/Ñ/Ô/Ñ/Ô/Ð/Ð/Ð/Ð/Ð/Ð/Ð/Ø�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   r¸   )r¶   r  r·   s   `` r   Ú>test_slow_startup_has_bounded_grace_then_normal_credit_timeoutr²  µ  s9   øø€ ðð ð ð ð ð õ* ˆˆ‰Œ�L„L€L€L€Lr   r‹  )F)GÚbuiltinsrT   Ú_pytest.assertion.rewriteÚ	assertionÚrewriterM   r   r$  r  rÆ   Útypesr   r  rÒ   Údevice_gateway.speechr   r   r   r   r   r	   r
   r   r   r   r   r   Údevice_gateway.voicer   Údevice_gateway.integrations.pir   r   Údevice_gateway.control.codexr   r   rx   rº   rØ   rý   r	  ÚmarkÚparametrizer,  r8  r>  rJ  rU  rr  r  r�  r�  r¤   r¾  r×  rã  r  r"  Úfixturer>  rC  rE  r`  rp  rs  r�  r’  r—  rš  rœ  r©  r²  r‡   r   r   ú<module>r¿     s½  ðØ  € € € € € € € € € € € € €€€€Ø €€€Ø €€€Ø €€€Ø !Ð !Ð !Ð !Ð !Ð !à €€€Ø €€€ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð )Ð (Ð (Ð (Ð (Ð (Ø LÐ LÐ LÐ LÐ LÐ LÐ LÐ LØ 5Ð 5Ð 5Ð 5Ð 5Ð 5ð (Ð 'Ð 'ð	7ð 	7ð 	7ðð ð ð,
Ið 
Ið 
Ið	bð 	bð 	bðnð nð nð
 „×Ò˜ V¨HÐ$5Ñ6Ô6ð	!ð 	!ñ 7Ô6ð	!ð „×Ò˜Ð#]Ð#]Ð#]Ñ^Ô^ðQð Qñ _Ô^ðQðRð Rð RðOð Oð Oðð ð ð
 „×Ò˜Ð"OÐ"OÐ"OÑPÔPð	Cð 	Cñ QÔPð	Cð „×Ò˜Ð oÐ oÐ oÑpÔpðYð Yñ qÔpðYðPð Pð Pð Pð Pñ Pô Pð Pðvð vð vð vð vñ vô vð vð
+ð +ð +ð +ð „×Ò˜ Ñ&Ô&ðð ñ 'Ô&ðð$ „×Ò˜Ð"pÐ"pÐ"pÑqÔqðð ñ rÔqðð*ð ð ð sð sð sðð ð ð* „ð@ð @ñ „ð@ð(ð ð ðCð Cð Cð Cð@ð @ð @ð +ð +ð +ð2	6ð 	6ð 	6ð „×Ò˜Ð#KÐ#KÐ#KÑLÔLð+ð +ñ MÔLð+ð"@ð @ð @ð(ð ð ðð ð ð'ð 'ð 'ðð ð ð ð ð ð ð r   