U
    \ŖSh  ć                   @  sŅ   U d dl mZ zd dlZW n ek
r2   dZY nX d dlZd dlmZmZmZ d dl	m
Z
 d dlmZ z"eeeef e
dZded< W n ek
r¢   i ZY nX d	d
ddZdd
ddZdd
ddZdS )é    )ŚannotationsN)ŚAnyŚDictŚcast)Ś
get_global)Ś_get_tzinfo_or_raiseZwindows_zone_mappingzdict[str, str]Śtz_nameszdict[str, Any])Śreturnc                 C  s@   i }t  | ”d }t|D ] }t  | |”}|d ||d < q|S )z0Convert a registry key's values to a dictionary.é   r   )ŚwinregŚQueryInfoKeyŚrangeZ	EnumValue)ŚkeyŚdictŚsizeŚiŚdata© r   śI/root/rtd-docs/venv/lib/python3.8/site-packages/babel/localtime/_win32.pyŚvaluestodict   s    r   Śstrc                  C  s   t  d t j”} d}t  | |”}t|}| ”  d|krL|d  dd”d }n|d }d}t  | |”}d }tt  |”d D ]D}t  	||”}	t  ||	”}
t|
}|
 ”  | 
dd ”|krz|	} qĄqz| ”  |  ”  |d krątd	t 
|”}|d krt 
| d
”}|d krtd| |S )Nz4SYSTEM\CurrentControlSet\Control\TimeZoneInformationZTimeZoneKeyNameś r
   r   ZStandardNamez7SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time ZonesZStdz+Can not find Windows timezone configurationz Standard TimezCan not find timezone )r   ZConnectRegistryŚHKEY_LOCAL_MACHINEŚOpenKeyr   ŚCloseŚsplitr   r   ŚEnumKeyŚgetŚLookupErrorr   )ŚhandleZTZLOCALKEYNAMEZlocaltzZ	keyvaluesZ	tzkeynameZtzwinZ	TZKEYNAMEZtzkeyr   ŚsubkeyŚsubr   Śtimezoner   r   r   Śget_localzone_name"   s:    


r#   zdatetime.tzinfoc                   C  s   t d krtdtt S )NzRuntime support not available)r   r   r   r#   r   r   r   r   Ś_get_localzone]   s
    ’r$   )Ś
__future__r   r   ŚImportErrorŚdatetimeŚtypingr   r   r   Z
babel.corer   Zbabel.localtime._helpersr   r   r   Ś__annotations__ŚRuntimeErrorr   r#   r$   r   r   r   r   Ś<module>   s     
"

;