§
    ù²Åj¾	  ã                   ó^   — d dl mZ d dlmZmZmZ ddlmZ ddlm	Z	m
Z
  G d„ de¦  «        ZdS )	é    )ÚPath)ÚCallableÚOptionalÚUnioné   )ÚImageFolder)Údownload_and_extract_archiveÚverify_str_argc                   óŠ   ‡ — e Zd ZdZdZdZ	 	 	 	 ddeeef         ded	e	e
         d
e	e
         deddfˆ fd„Zdefd„Zdd„Zˆ xZS )Ú
Country211a  `The Country211 Data Set <https://github.com/openai/CLIP/blob/main/data/country211.md>`_ from OpenAI.

    This dataset was built by filtering the images from the YFCC100m dataset
    that have GPS coordinate corresponding to a ISO-3166 country code. The
    dataset is balanced by sampling 150 train images, 50 validation images, and
    100 test images for each country.

    Args:
        root (str or ``pathlib.Path``): Root directory of the dataset.
        split (string, optional): The dataset split, supports ``"train"`` (default), ``"valid"`` and ``"test"``.
        transform (callable, optional): A function/transform that takes in a PIL image and returns a transformed
            version. E.g, ``transforms.RandomCrop``.
        target_transform (callable, optional): A function/transform that takes in the target and transforms it.
        download (bool, optional): If True, downloads the dataset from the internet and puts it into
            ``root/country211/``. If dataset is already downloaded, it is not downloaded again.
    z;https://openaipublic.azureedge.net/clip/data/country211.tgzÚ 84988d7644798601126c29e9877aab6aÚtrainNFÚrootÚsplitÚ	transformÚtarget_transformÚdownloadÚreturnc                 óÈ  •— t          |dd¦  «        | _        t          |¦  «                             ¦   «         }t	          |¦  «        | _        |dz  | _        |r|                      ¦   «          |                      ¦   «         st          d¦  «        ‚t          ¦   «                              t	          | j        | j        z  ¦  «        ||¬¦  «         t	          |¦  «        | _        d S )Nr   )r   ÚvalidÚtestÚ
country211z;Dataset not found. You can use download=True to download it)r   r   )r
   Ú_splitr   Ú
expanduserÚstrr   Ú_base_folderÚ	_downloadÚ_check_existsÚRuntimeErrorÚsuperÚ__init__)Úselfr   r   r   r   r   Ú	__class__s         €úPC:\Projects\Historical\venv\Lib\site-packages\torchvision/datasets/country211.pyr!   zCountry211.__init__   sÉ   ø€ õ % U¨GÐ5OÑPÔPˆŒå�D‰zŒz×$Ò$Ñ&Ô&ˆÝ˜‘I”IˆŒ	Ø  <Ñ/ˆÔàð 	Ø�NŠNÑÔÐà×!Ò!Ñ#Ô#ð 	^ÝÐ\Ñ]Ô]Ð]å‰Œ×Ò�˜TÔ.°´Ñ<Ñ=Ô=ÈÐeuÐÑvÔvÐvÝ˜‘I”IˆŒ	ˆ	ˆ	ó    c                 óf   — | j                              ¦   «         o| j                              ¦   «         S )N)r   ÚexistsÚis_dir©r"   s    r$   r   zCountry211._check_exists4   s+   € ØÔ ×'Ò'Ñ)Ô)ÐH¨dÔ.?×.FÒ.FÑ.HÔ.HÐHr%   c                 ót   — |                       ¦   «         rd S t          | j        | j        | j        ¬¦  «         d S )N)Údownload_rootÚmd5)r   r	   Ú_URLr   Ú_MD5r)   s    r$   r   zCountry211._download7   s<   € Ø×ÒÑÔð 	ØˆFÝ$ T¤Y¸d¼iÈTÌYÐWÑWÔWÐWÐWÐWr%   )r   NNF)r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r-   r.   r   r   r   r   r   Úboolr!   r   r   Ú__classcell__)r#   s   @r$   r   r      sð   ø€ € € € € ðð ð" I€DØ-€Dð
 Ø(,Ø/3Øðð à�C˜�IÔðð ðð ˜HÔ%ð	ð
 # 8Ô,ðð ðð 
ðð ð ð ð ð ð.I˜tð Ið Ið Ið IðXð Xð Xð Xð Xð Xð Xð Xr%   r   N)Úpathlibr   Útypingr   r   r   Úfolderr   Úutilsr	   r
   r   © r%   r$   ú<module>r:      s�   ðØ Ð Ð Ð Ð Ð Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,à Ð Ð Ð Ð Ð Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?ð2Xð 2Xð 2Xð 2Xð 2X�ñ 2Xô 2Xð 2Xð 2Xð 2Xr%   