ó
    EñiŒ  ã                   óŒ   • S SK r S SKJr  S SKJrJrJrJr  S SKJ	s  J
r
  SSK	Jr   " S S\
R                  5      r " S S	5      rg)
é    N)ÚPath)ÚAnyÚCallableÚOptionalÚUnioné   )Ú_log_api_usage_oncec                   óº   • \ rS rSrSrSr    SS\\\4   S\	\
   S\	\
   S\	\
   S	S4
S
 jjrS\S	\4S jrS	\4S jrS	\4S jrS\
S\S	\\   4S jrS	\4S jrSrg)ÚVisionDataseté
   a  
Base Class For making datasets which are compatible with torchvision.
It is necessary to override the ``__getitem__`` and ``__len__`` method.

Args:
    root (string, optional): Root directory of dataset. Only used for `__repr__`.
    transforms (callable, optional): A function/transforms that takes in
        an image and a label and returns the transformed versions of both.
    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.

.. note::

    :attr:`transforms` and the combination of :attr:`transform` and :attr:`target_transform` are mutually exclusive.
é   NÚrootÚ
transformsÚ	transformÚtarget_transformÚreturnc                 ó.  • [        U 5        [        U[        5      (       a  [        R                  R                  U5      nXl        US LnUS L=(       d    US LnU(       a  U(       a  [        S5      eX0l        X@l	        U(       a  [        X45      nX l        g )NzGOnly transforms or transform/target_transform can be passed as argument)r	   Ú
isinstanceÚstrÚosÚpathÚ
expanduserr   Ú
ValueErrorr   r   ÚStandardTransformr   )Úselfr   r   r   r   Úhas_transformsÚhas_separate_transforms          ÚX/home/mande/repo/quber/.venv/lib/python3.13/site-packages/torchvision/datasets/vision.pyÚ__init__ÚVisionDataset.__init__   s„   € ô 	˜DÔ!Ü�dœC× Ñ Ü—7‘7×%Ñ% dÓ+ˆDØŒ	à#¨4Ð/ˆØ!*°$Ð!6×!VÐ:JÐRVÐ:VÐÞÖ4ÜÐfÓgÐgð #ŒØ 0Ôæ!Ü*¨9ÓGˆJØ$�ó    Úindexc                 ó   • [         e)z~
Args:
    index (int): Index

Returns:
    (Any): Sample and meta data, optionally transformed by the respective transforms.
©ÚNotImplementedError)r   r"   s     r   Ú__getitem__ÚVisionDataset.__getitem__8   s
   € ô "Ð!r!   c                 ó   • [         e©Nr$   ©r   s    r   Ú__len__ÚVisionDataset.__len__B   s   € Ü!Ð!r!   c                 óÚ  • SU R                   R                  -   nSU R                  5        3/nU R                  b  UR	                  SU R                   35        X R                  5       R                  5       -  n[        U S5      (       a&  U R                  b  U[        U R                  5      /-  nU/U Vs/ s H  nSU R                  -  U-   PM     sn-   nSR                  U5      $ s  snf )NzDataset zNumber of datapoints: zRoot location: r   Ú Ú
)Ú	__class__Ú__name__r+   r   ÚappendÚ
extra_reprÚ
splitlinesÚhasattrr   ÚreprÚ_repr_indentÚjoin)r   ÚheadÚbodyÚlineÚliness        r   Ú__repr__ÚVisionDataset.__repr__E   sÑ   € Ø˜DŸN™N×3Ñ3Ñ3ˆØ(¨¯©«Ð(8Ð9Ð:ˆØ�9‰9Ñ Ø�K‰K˜/¨$¯)©)¨Ð5Ô6Ø—‘Ó!×,Ñ,Ó.Ñ.ˆÜ�4˜×&Ñ&¨4¯?©?Ñ+FØ”T˜$Ÿ/™/Ó*Ð+Ñ+ˆDØ�ÁTÓJÂT¸T˜# × 1Ñ 1Ñ1°DÔ8ÁTÑJÑJˆØ�y‰y˜ÓÐùò Ks   Â6C(r9   c           
      óÂ   • UR                  5       R                  5       nU US    3/USS   Vs/ s H!  nSR                  S[        U5      -  U5      PM#     sn-   $ s  snf ©Nr   é   z{}{}r.   ©r=   r4   ÚformatÚlen©r   r   r9   r<   r;   s        r   Ú_format_transform_reprÚ$VisionDataset._format_transform_reprP   óf   € Ø×"Ñ"Ó$×/Ñ/Ó1ˆØ�&˜˜q™˜
Ð#Ð$ÐY^Ð_`Ð_aÑYbÓ'cÒYbÐQU¨¯©°c¼CÀ»I±oÀtÖ(LÑYbÑ'cÑcÐcùÒ'có   ¯(Ac                 ó   • g)NÚ © r*   s    r   r3   ÚVisionDataset.extra_reprT   s   € Ør!   )r   r   r   r   )NNNN)r1   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r7   r   r   r   r   r   r   Úintr   r&   r+   r=   ÚlistrF   r3   Ú__static_attributes__rL   r!   r   r   r   
   sÂ   † ñð$ €Lð "&Ø)-Ø(,Ø/3ñ%à�C˜�IÑð%ð ˜XÑ&ð%ð ˜HÑ%ð	%ð
 # 8Ñ,ð%ð 
õ%ð2" ð "¨ô "ð"˜ô "ð	 ˜#ô 	 ðd°ð dÀð dÈÈSÉ	ô dð˜C÷ r!   r   c                   ó„   • \ rS rSrSS\\   S\\   SS4S jjrS\S\S\\\4   4S	 jr	S\S
\
S\\
   4S jrS\
4S jrSrg)r   éX   Nr   r   r   c                 ó   • Xl         X l        g r)   ©r   r   )r   r   r   s      r   r   ÚStandardTransform.__init__Y   s   € Ø"ŒØ 0Õr!   ÚinputÚtargetc                 ó€   • U R                   b  U R                  U5      nU R                  b  U R                  U5      nX4$ r)   rX   )r   rZ   r[   s      r   Ú__call__ÚStandardTransform.__call__]   s>   € Ø�>‰>Ñ%Ø—N‘N 5Ó)ˆEØ× Ñ Ñ,Ø×*Ñ*¨6Ó2ˆFØˆ}Ðr!   r9   c           
      óÂ   • UR                  5       R                  5       nU US    3/USS   Vs/ s H!  nSR                  S[        U5      -  U5      PM#     sn-   $ s  snf r@   rB   rE   s        r   rF   Ú(StandardTransform._format_transform_reprd   rH   rI   c                 óþ   • U R                   R                  /nU R                  b  XR                  U R                  S5      -  nU R                  b  XR                  U R                  S5      -  nSR                  U5      $ )NzTransform: zTarget transform: r/   )r0   r1   r   rF   r   r8   )r   r:   s     r   r=   ÚStandardTransform.__repr__h   sm   € Ø—‘×'Ñ'Ð(ˆØ�>‰>Ñ%Ø×/Ñ/°·±ÀÓNÑNˆDØ× Ñ Ñ,Ø×/Ñ/°×0EÑ0EÐG[Ó\Ñ\ˆDà�y‰y˜‹Ðr!   )r   r   )NN)r1   rN   rO   rP   r   r   r   r   Útupler]   r   rS   rF   r=   rT   rL   r!   r   r   r   X   sx   † ñ1 (¨8Ñ"4ð 1ÈxÐX`ÑOað 1Ðmqõ 1ð˜cð ¨3ð °5¸¸c¸±?ô ðd°ð dÀð dÈÈSÉ	ô dð˜#÷ r!   r   )r   Úpathlibr   Útypingr   r   r   r   Útorch.utils.dataÚutilsÚdatar	   ÚDatasetr   r   rL   r!   r   Ú<module>rj      s7   ðÛ 	Ý ß 1Ó 1ç Ð å 'ôK�D—L‘Lô K÷\ò r!   