+
     °³j†  ã                   ó|   € ^ RI Ht ^ RIHt ^ RIHtHtHtHt ^ RI	H
t
 ^RIHtHtHtHt ^RIHt  ! R R]4      tR	# )
é    )Újoin)ÚPath)ÚAnyÚCallableÚOptionalÚUnion)ÚImage)Úcheck_integrityÚdownload_and_extract_archiveÚlist_dirÚ
list_files)ÚVisionDatasetc                   ó´   a a€ ] tR t^t oRtRtRtRRRR/tRV3R lV 3R	 llltV3R
 lR lt	V3R lR lt
V3R lR ltV3R lR ltV3R lR ltRtVtV ;t# )ÚOmniglotaB  `Omniglot <https://github.com/brendenlake/omniglot>`_ Dataset.

Args:
    root (str or ``pathlib.Path``): Root directory of dataset where directory
        ``omniglot-py`` exists.
    background (bool, optional): If True, creates dataset from the "background" set, otherwise
        creates from the "evaluation" set. This terminology is defined by the authors.
    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 zip files from the internet and
        puts it in root directory. If the zip files are already downloaded, they are not
        downloaded again.
    loader (callable, optional): A function to load an image given its path.
        By default, it uses PIL as its image loader, but users could also pass in
        ``torchvision.io.decode_image`` for decoding image data into tensors directly.
zomniglot-pyzDhttps://raw.githubusercontent.com/brendenlake/omniglot/master/pythonÚimages_backgroundÚ 68d2efa1b9178cc56df9314c21c6e718Úimages_evaluationÚ 6b91aef0f799c5bb55b94e3f2daec811c                ó¶   <€ V ^8„  d   QhRS[ S[S[3,          RS[RS[S[,          RS[S[,          RS[RS[S[S[ S[S[3,          .S[3,          ,          RR/# )	é   ÚrootÚ
backgroundÚ	transformÚtarget_transformÚdownloadÚloaderÚreturnN)r   Ústrr   Úboolr   r   r   )ÚformatÚ__classdict__s   "€Ú^/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torchvision/datasets/omniglot.pyÚ__annotate__ÚOmniglot.__annotate__&   s   ø€ ÷ ñ á‘C™�IÕðñ ðñ ™HÕ%ð	ñ
 #¡8Õ,ðñ ðñ ™¡5©©d¨Õ#3Ð"4±cÐ"9Õ:Õ;ðð 
ñó    c                ó¾  <a € \         S
S `  \        VS P                  4      W4R 7       VS n        V'       d   S P                  4        S P                  4       '       g   \        R4      h\        S P                  S P                  4       4      S n
        \        S P                  4      S n        \        V 3R lS P                   4       . 4      S n        \        S P                  4       UUU	u. uF6  w  rx\!        \        S P                  V4      R4       U	u. uF  q™V3NK  	  up	NK8  	  up	ppS n        \        S P"                  . 4      S n        VS n        R# u up	i u up	ppi ))r   r   zHDataset not found or corrupted. You can use download=True to download itc              3   óž   <"  € T F=  p\        \        SP                  V4      4       Uu. uF  p\        W4      NK  	  upx € K?  	  R # u upi 5i©N)r   r   Útarget_folder)Ú.0ÚaÚcÚselfs   &  €r"   Ú	<genexpr>Ú$Omniglot.__init__.<locals>.<genexpr>;   s=   øé € ÐbÑRaÈQ¤(¬4°×0BÑ0BÀAÓ+FÔ"GÓHÑ"G˜QŒd�1ŽjÑ"GÖHÓRaùÒHùs   ƒ&A©A½Az.pngN)ÚsuperÚ__init__r   Úfolderr   r   Ú_check_integrityÚRuntimeErrorr   Ú_get_target_folderr)   r   Ú
_alphabetsÚsumÚ_charactersÚ	enumerater   Ú_character_imagesÚ_flat_character_imagesr   )r-   r   r   r   r   r   r   ÚidxÚ	characterÚimageÚ	__class__s   f&&&&&&   €r"   r1   ÚOmniglot.__init__&   s  ù€ ô 	‰Ñœ˜d D§K¡KÓ0¸IÐÔiØ$ˆŒçØ�M‰MŒOà×$Ñ$×&Ò&ÜÐiÓjÐjä! $§)¡)¨T×-DÑ-DÓ-FÓGˆÔÜ" 4×#5Ñ#5Ó6ˆŒÜ&)ÜbÐRV×RaÒRaÓbÐdfó'
ˆÔô
 #,¨D×,<Ñ,<Ô"=õ"
á"=‘�ô (2´$°t×7IÑ7IÈ9Ó2UÐW]Ô'^Ó_Ñ'^˜e�S‹\Ñ'^Ô_Ù"=ó"
ˆÔô >AÀ×AWÑAWÐY[Ó=\ˆÔ#ØˆŽùò	 `ùô"
s   Ã))EÄEÄEÅEc                ó    <€ V ^8„  d   QhRS[ /# ©r   r   )Úint)r    r!   s   "€r"   r#   r$   D   s   ø€ ÷ 0ñ 0™ñ 0r%   c                ó,   € \        V P                  4      # r(   )Úlenr;   ©r-   s   &r"   Ú__len__ÚOmniglot.__len__D   s   € Ü�4×.Ñ.Ó/Ð/r%   c                ó<   <€ V ^8„  d   QhRS[ RS[S[S[3,          /# )r   Úindexr   )rC   Útupler   )r    r!   s   "€r"   r#   r$   G   s#   ø€ ÷ &ñ &¡ð &©©s±C¨x­ñ &r%   c                óš  € V P                   V,          w  r#\        V P                  V P                  V,          V4      pV P                  f(   \
        P                  ! VRR7      P                  R4      MV P	                  V4      pV P                  '       d   V P                  V4      pV P                  '       d   V P                  V4      pWS3# )zx
Args:
    index (int): Index

Returns:
    tuple: (image, target) where target is index of the target character class.
Úr)ÚmodeÚL)
r;   r   r)   r8   r   r	   ÚopenÚconvertr   r   )r-   rJ   Ú
image_nameÚcharacter_classÚ
image_pathr>   s   &&    r"   Ú__getitem__ÚOmniglot.__getitem__G   s¦   € ð '+×&AÑ&AÀ%Õ&HÑ#ˆ
Ü˜$×,Ñ,¨d×.>Ñ.>¸Õ.OÐQ[Ó\ˆ
ØAEÇÁÒAT”—
’
˜:¨CÔ0×8Ñ8¸Ô=ÐZ^×ZeÑZeÐfpÓZqˆà�>�>ˆ>Ø—N‘N 5Ó)ˆEà× × Ð Ø"×3Ñ3°OÓDˆOàÐ%Ð%r%   c                ó    <€ V ^8„  d   QhRS[ /# rB   )r   )r    r!   s   "€r"   r#   r$   [   s   ø€ ÷ ñ ¡$ñ r%   c                ó¦   € V P                  4       p\        \        V P                  VR ,           4      V P                  V,          4      '       g   R# R# )ú.zipFT)r5   r
   r   r   Úzips_md5)r-   Úzip_filenames   & r"   r3   ÚOmniglot._check_integrity[   s=   € Ø×.Ñ.Ó0ˆÜœt D§I¡I¨|¸fÕ/DÓEÀtÇ}Á}ÐUaÕGb×cÒcÙÙr%   c                ó   <€ V ^8„  d   QhRR/# )r   r   N© )r    r!   s   "€r"   r#   r$   a   s   ø€ ÷ iñ i˜$ñ ir%   c                óì   € V P                  4       '       d   R # V P                  4       pVR,           pV P                  R,           V,           p\        W0P                  W P
                  V,          R7       R # )NrY   Ú/)ÚfilenameÚmd5)r3   r5   Údownload_url_prefixr   r   rZ   )r-   ra   r[   Úurls   &   r"   r   ÚOmniglot.downloada   s[   € Ø× Ñ ×"Ò"Ùà×*Ñ*Ó,ˆØ &Õ(ˆØ×&Ñ&¨Õ,¨|Õ;ˆÜ$ S¯)©)¸l×P]ÑP]Ð^fÕPg×hr%   c                ó    <€ V ^8„  d   QhRS[ /# rB   )r   )r    r!   s   "€r"   r#   r$   j   s   ø€ ÷ Oñ O¡Cñ Or%   c                ó.   € V P                   '       d   R # R# )r   r   )r   rF   s   &r"   r5   ÚOmniglot._get_target_folderj   s   € Ø&*§o§o oÐ"ÐNÐ;NÐNr%   )r6   r:   r8   r;   r   r   r)   )TNNFN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r2   rc   rZ   r1   rG   rU   r3   r   r5   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r?   r!   s   @@r"   r   r      sp   ù‡ € ñð& €FØ`ÐàÐ?ØÐ?ð€H÷
õ ÷<0ð 0÷&ð &÷(ð ÷ið i÷O÷ Oð Or%   r   N)Úos.pathr   Úpathlibr   Útypingr   r   r   r   ÚPILr	   Úutilsr
   r   r   r   Úvisionr   r   r^   r%   r"   Ú<module>rw      s-   ðÝ Ý ß 1Ó 1å ç VÓ VÝ !ô`Oˆ}ö `Or%   