o
    ˆì_c€  ã                   @   sx   d Z ddlZddlZddlmZmZ ddlmZmZ ddlm	Z	 g d¢Z
defdd	„Zd
ee dee defdd„ZdS )zUtility functions.é    N)ÚDictÚOptional)Úcheck_chromiumÚchromium_executable)Údownload_chromium)r   r   r   Úget_free_portÚ
merge_dictÚreturnc                  C   s4   t   ¡ } |  d¡ |  ¡ d }|  ¡  ~ t ¡  |S )zGet free port.)Ú	localhostr   é   )ÚsocketÚbindÚgetsocknameÚcloseÚgcZcollect)ÚsockÚport© r   ú9/usr/local/lib/python3.10/dist-packages/pyppeteer/util.pyr      s   
r   Údict1Údict2c                 C   s$   i }| r	|  | ¡ |r|  |¡ |S )z$Merge two dictionaries into new one.)Úupdate)r   r   Znew_dictr   r   r   r   !   s   

r   )Ú__doc__r   r   Útypingr   r   Zpyppeteer.chromium_downloaderr   r   r   Ú__all__Úintr   r   r   r   r   r   Ú<module>   s   	"