+
     °³j  ã                   óx   € ^ RI t^ RIHt ^ RIHtHtHtHt ^ RI	t
^RIHt ^RIHtHt ^RIHt  ! R R]4      tR# )	é    N)ÚPath)ÚAnyÚCallableÚOptionalÚUnion)Ú_Image_fromarray)Úcheck_integrityÚdownload_url)ÚVisionDatasetc                   óš   a a€ ] tR t^t oRtRtRt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RtVtV ;t# )ÚSEMEIONaš  `SEMEION <http://archive.ics.uci.edu/ml/datasets/semeion+handwritten+digit>`_ Dataset.

Args:
    root (str or ``pathlib.Path``): Root directory of dataset where directory
        ``semeion.py`` exists.
    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 in root directory. If dataset is already downloaded, it is not
        downloaded again.

zMhttp://archive.ics.uci.edu/ml/machine-learning-databases/semeion/semeion.datazsemeion.dataÚ cb545d371d2ce14ec121470795a77432c          
      ól   <€ V ^8„  d   QhRS[ S[S[3,          RS[S[,          RS[S[,          RS[RR/# )é   ÚrootÚ	transformÚtarget_transformÚdownloadÚreturnN)r   Ústrr   r   r   Úbool)ÚformatÚ__classdict__s   "€Ú]/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torchvision/datasets/semeion.pyÚ__annotate__ÚSEMEION.__annotate__    sP   ø€ ÷ 3ñ 3á‘C™�IÕð3ñ ™HÕ%ð3ñ #¡8Õ,ð	3ñ
 ð3ð 
ñ3ó    c                ó  <€ \         SV `  WVR 7       V'       d   V P                  4        V P                  4       '       g   \	        R4      h\
        P                  P                  V P                  V P                  4      p\        P                  ! V4      pVR,          ^ÿ,          P                  R4      V n        \        P                  ! V P                  R4      V n        \        P                  ! VR,          4      ^,          V n        R# ))r   r   zHDataset not found or corrupted. You can use download=True to download itÚuint8N)ºNNN:Né   N)éÿÿÿÿé   r#   )r    :r!   NN)ÚsuperÚ__init__r   Ú_check_integrityÚRuntimeErrorÚosÚpathÚjoinr   ÚfilenameÚnpÚloadtxtÚastypeÚdataÚreshapeÚnonzeroÚlabels)Úselfr   r   r   r   Úfpr/   Ú	__class__s   &&&&&  €r   r%   ÚSEMEION.__init__    s´   ø€ ô 	‰Ñ˜ÐEUÐÔVçØ�M‰MŒOà×$Ñ$×&Ò&ÜÐiÓjÐjä�W‰W�\‰\˜$Ÿ)™) T§]¡]Ó3ˆÜ�zŠz˜"‹~ˆð ˜'•] SÕ(×0Ñ0°Ó9ˆŒ	Ü—J’J˜tŸy™y¨,Ó7ˆŒ	Ü—j’j  g¥Ó/°Õ2ˆŽr   c                ó<   <€ V ^8„  d   QhRS[ RS[S[S[3,          /# )r   Úindexr   )ÚintÚtupler   )r   r   s   "€r   r   r   7   s#   ø€ ÷ ñ ¡ð ©©s±C¨x­ñ r   c                óú   € V P                   V,          \        V P                  V,          4      r2\        VRR7      pV P                  e   V P	                  V4      pV P
                  e   V P                  V4      pW#3# )zn
Args:
    index (int): Index

Returns:
    tuple: (image, target) where target is index of the target class.
ÚL)Úmode)r/   r9   r2   r   r   r   )r3   r8   ÚimgÚtargets   &&  r   Ú__getitem__ÚSEMEION.__getitem__7   sl   € ð —i‘i Õ&¬¨D¯K©K¸Õ,>Ó(?ˆVô ˜s¨Ô-ˆà�>‰>Ò%Ø—.‘. Ó%ˆCà× Ñ Ò,Ø×*Ñ*¨6Ó2ˆFàˆ{Ðr   c                ó    <€ V ^8„  d   QhRS[ /# ©r   r   )r9   )r   r   s   "€r   r   r   M   s   ø€ ÷ ñ ™ñ r   c                ó,   € \        V P                  4      # ©N)Úlenr/   )r3   s   &r   Ú__len__ÚSEMEION.__len__M   s   € Ü�4—9‘9‹~Ðr   c                ó    <€ V ^8„  d   QhRS[ /# rC   )r   )r   r   s   "€r   r   r   P   s   ø€ ÷ ñ ¡$ñ r   c                óª   € V P                   p\        P                  P                  WP                  4      p\        W P                  4      '       g   R # R# )FT)r   r(   r)   r*   r+   r	   Úmd5_checksum)r3   r   Úfpaths   &  r   r&   ÚSEMEION._check_integrityP   s8   € Ø�y‰yˆÜ—‘—‘˜T§=¡=Ó1ˆÜ˜u×&7Ñ&7×8Ò8ÙÙr   c                ó   <€ V ^8„  d   QhRR/# )r   r   N© )r   r   s   "€r   r   r   W   s   ø€ ÷ Gñ G˜$ñ Gr   c                ó¤   € V P                  4       '       d   R # V P                  p\        V P                  WP                  V P
                  4       R # rE   )r&   r   r
   Úurlr+   rK   )r3   r   s   & r   r   ÚSEMEION.downloadW   s7   € Ø× Ñ ×"Ò"Ùà�y‰yˆÜ�T—X‘X˜t§]¡]°D×4EÑ4EÖFr   )r/   r2   )NNT)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rQ   r+   rK   r%   r@   rG   r&   r   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r5   r   s   @@r   r   r      sV   ù‡ € ñð Z€CØ€HØ5€L÷3õ 3÷.ð ÷,ð ÷ð ÷G÷ Gð Gr   r   )Úos.pathr(   Úpathlibr   Útypingr   r   r   r   Únumpyr,   Úutilsr   r	   r
   Úvisionr   r   rO   r   r   Ú<module>ra      s-   ðÛ Ý ß 1Ó 1ã å $ß 0Ý !ôPGˆmö PGr   