Ë
    CêñiÚ7  ã                  ó2  — U d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm	Z	 d dl
mZmZmZmZ d dlmc mZ d dlmZ ej*                  dk\  rd d	l
mZ nd d	lmZ er—d d
lmZmZmZmZmZmZ d dlm Z  d dl
m!Z!m"Z"m#Z# d dl$m%Z% d dl&m'Z' d dl(m)Z) d dl*m+Z+ d dl,m-Z-m.Z. ej*                  dk\  rd dl
m/Z/ nd dlm/Z/ ej*                  dk\  rd dl
m0Z0 nd dlm0Z0 d dl,m1Z1 d dl2m3Z3 dZ4de5d<   ee6e1f   Z7de5d<   g d¢Z8 ed«      Z9 ed«      Z: ed«      Z; e	e<«      jz                  dz  Z>d e5d!<   ej~                  d"ej€                  d#ej‚                  d$ej„                  d%ej†                  d&ejˆ                  d'ejŠ                  d(ejŒ                  d)ejŽ                  d*i	ZHd+e5d,<   	 eHj“                  «       D � �ci c]  \  } }|| “Œ
 c}} ZJd-e5d.<   d>d/„ZK G d0„ d1ee9e:f   «      ZL G d2„ d3eLd4   «      ZM G d5„ d6eLd7   «      ZN G d8„ d9e«      ZO G d:„ d;«      ZPd3e5d<<   d=„ ZQyc c}} w )?é    )ÚannotationsN)Údefaultdict)Ú	find_spec)ÚPath)ÚTYPE_CHECKINGÚClassVarÚTypeVarÚcast)ÚAltairDatasetsError)é   é   )ÚProtocol)ÚIterableÚIteratorÚMappingÚMutableMappingÚMutableSequenceÚSequence)ÚIOBase)ÚAnyÚFinalÚ	TypeAlias)ÚOpenerDirector)ÚStrPath)ÚDType)ÚIntoExpr)ÚDatasetÚMetadata)ÚUnpack)r   é   )ÚLiteralString)Ú
FlFieldStr)ÚOneOrSeqzDataset | LiteralStringr   Ú_DatasetÚ	_FlSchema)ÚCsvCacheÚDatasetCacheÚSchemaCacheÚ	csv_cacheÚ_KTÚ_VTÚ_TÚ	_metadatazFinal[Path]Ú_METADATA_DIRÚintegerÚnumberÚbooleanÚstringÚobjectÚarrayÚdateÚdatetimeÚdurationz Mapping[type[DType], FlFieldStr]Ú_DTYPE_TO_FIELDz Mapping[FlFieldStr, type[DType]]Ú_FIELD_TO_DTYPEc             #  óX   K  — t        d| j                  d¬«      «      E d{  –—†  y7 Œ­w)z†
    Yield rows from ``df``, where each represents a dataset.

    See Also
    --------
    ``altair.datasets._typing.Metadata``
    úIterator[Metadata]T)ÚnamedN)r
   Ú	iter_rows)Údfs    úX/var/www/pod-logistic/pod-ai/venv/lib/python3.12/site-packages/altair/datasets/_cache.pyÚ_iter_metadatar@   ]   s$   è ø€ ô Ð(¨"¯,©,¸T¨,Ó*BÓC×CÒCús   ‚ *¢(£*c                  ó\   — e Zd ZU ded<   ded<   dd„Zdd„Zdd„Zdd„Zdd	„Ze	dd
„«       Z
y)ÚCompressedCacher   ÚfpúMutableMapping[_KT, _VT]Ú_mappingc                 ó   — y ©N© ©Úselfs    r?   ÚreadzCompressedCache.readl   ó   � ó    c                ó   — y rG   rH   ©rJ   Úkeys     r?   Ú__getitem__zCompressedCache.__getitem__m   rL   rM   c                ó`   — dd l }|j                  | j                  d¬«      j                  «       S )Nr   Úrb)Úmode)ÚgzipÚopenrC   Ú	__enter__)rJ   rU   s     r?   rW   zCompressedCache.__enter__o   s%   € Ûà�y‰y˜Ÿ™ tˆyÓ,×6Ñ6Ó8Ð8rM   c                 ó   — y rG   rH   )rJ   Úargss     r?   Ú__exit__zCompressedCache.__exit__t   s   € ØrM   c               ó:   — | j                   j                  ||«      S rG   )ÚmappingÚget)rJ   rP   Údefaults      r?   r]   zCompressedCache.getw   s   € Ø�|‰|×Ñ  WÓ-Ð-rM   c                ó„   — | j                   s)| j                   j                  | j                  «       «       | j                   S rG   )rE   ÚupdaterK   rI   s    r?   r\   zCompressedCache.mappingz   s+   € à�}Š}Ø�M‰M× Ñ  §¡£Ô-Ø�}‰}ÐrM   N©Úreturnr   )rP   r*   rb   r+   )rb   r   ©rb   ÚNone)rP   r*   r^   r,   rb   z_VT | _T)rb   rD   )Ú__name__Ú
__module__Ú__qualname__Ú__annotations__rK   rQ   rW   rZ   r]   Úpropertyr\   rH   rM   r?   rB   rB   h   s6   … ØƒHØ&Ó&ãÛ2ó9ó
ó.ð òó ñrM   rB   c                  óz   — e Zd ZdZedz  Zed   dœ	 	 	 dd„Zdd„Z	 	 	 	 	 	 dd„Z	e
dd„«       Zdd	„Zdd
„Zdd„Zy)r&   aé  
    `csv`_, `gzip`_ -based, lazy metadata lookup.

    Used as a fallback for 2 scenarios:

    1. ``url(...)`` when no optional dependencies are installed.
    2. ``(Loader|load)(...)`` when the backend is missing* ``.parquet`` support.

    Notes
    -----
    *All backends *can* support ``.parquet``, but ``pandas`` requires an optional dependency.

    .. _csv:
        https://docs.python.org/3/library/csv.html
    .. _gzip:
        https://docs.python.org/3/library/gzip.html
    zmetadata.csv.gz©r$   r   )Útpc               óD   —  |«       | _         t        t        «      | _        y rG   )rE   r   ÚlistÚ_rotated)rJ   rl   s     r?   Ú__init__zCsvCache.__init__–   s   € ñ
 =?»DˆŒÜCNÌtÓCTˆ�rM   c           
     ó,  — dd l }| 5 }|j                  «       }d d d «       |j                  d„ D «       |j                  ¬«      }t	        t        |«      «      }|D �ci c]!  }|d   t        | j                  ||«      «      “Œ# c}S # 1 sw Y   ŒnxY wc c}w )Nr   c              3  ó<   K  — | ]  }|j                  «       –— Œ y ­wrG   )Údecode)Ú.0Úbss     r?   ú	<genexpr>z CsvCache.read.<locals>.<genexpr>£   s   è ø€ Ò;¨R˜RŸY™YŸ[Ñ;ùs   ‚)Údialect)ÚcsvÚ	readlinesÚreaderÚunix_dialectÚtupleÚnextÚdictÚ_convert_row)rJ   rx   ÚfÚb_linesrz   ÚheaderÚrows          r?   rK   zCsvCache.readž   s‡   € Ûàð 	$�QØ—k‘k“mˆG÷	$à—‘Ñ;°7Ô;ÀS×EUÑEU�ÓVˆÜ”t˜F“|Ó$ˆØHNÖOÀ��A‘œ˜T×.Ñ.¨v°sÓ;Ó<Ñ<ÒOÐO÷		$ð 	$üò Ps   ‡BÁ&BÂBc             #  ó®   K  — dddœ}t        ||d¬«      D ];  \  }}|j                  d«      r
|||   f–— Œ!|dk(  r|t        |«      f–— Œ6||f–— Œ= y ­w)NTF)ÚtrueÚfalse)Ústrict)Úis_Úhas_Úbytes)ÚzipÚ
startswithÚint)rJ   r‚   rƒ   Úmap_tfÚcolÚvalues         r?   r   zCsvCache._convert_row§   sh   è ø€ ð ¨Ñ/ˆÜ˜f c°%Ô8ò 	!‰JˆC�Ø�~‰~˜oÔ.Ø˜6 %™=Ð(Ó(Ø˜’Øœ3˜u›:�oÓ%à˜5�jÓ ñ	!ùs   ‚AAc                óÜ   — | j                   sU| j                  j                  «       D ]8  }|j                  «       D ]#  \  }}| j                   |   j	                  |«       Œ% Œ: | j                   S )zColumnar view.)ro   r\   ÚvaluesÚitemsÚappend)rJ   ÚrecordÚkÚvs       r?   ÚrotatedzCsvCache.rotated³   sc   € ð �}Š}ØŸ,™,×-Ñ-Ó/ò /�Ø"ŸL™L›Nò /‘D�A�qØ—M‘M !Ñ$×+Ñ+¨AÕ.ñ/ð/ð �}‰}ÐrM   c               óN   — | j                  |d «      x}r|S |›d�}t        |«      ‚)Nz# does not refer to a known dataset.)r]   Ú	TypeError)rJ   rP   ÚmetaÚmsgs       r?   rQ   zCsvCache.__getitem__¼   s4   € Ø—8‘8˜C Ó&Ð&ˆ4Ð&ØˆKØ�Ð:Ð;ˆÜ˜‹nÐrM   c               óf   — | |   }|d   dk(  r t        d«      st        j                  |«      ‚|d   S )NÚsuffixú.parquetÚ
vegafusionÚurl)r   r   Úfrom_url)rJ   Únamer›   s      r?   r¡   zCsvCache.urlÂ   s9   € Ø�D‰zˆØ�‰>˜ZÒ'´	¸,Ô0GÜ%×.Ñ.¨tÓ4Ð4Ø�E‰{ÐrM   c                ó\   — dt        | «      j                  › d| j                  rd› d�S d› d�S )Nú<z: Ú	COLLECTEDÚREADYú>)Útypere   rE   rI   s    r?   Ú__repr__zCsvCache.__repr__È   s8   € Ø”4˜“:×&Ñ&Ð' r¸¿º¨+Ð)TÐTUÐVÐVÈGÐ)TÐTUÐVÐVrM   N)rl   z(type[MutableMapping[_Dataset, Metadata]]rb   rd   ra   )r‚   úIterable[str]rƒ   r«   rb   zIterator[tuple[str, Any]])rb   zMapping[str, Sequence[Any]])rP   r$   rb   r   )r£   r$   rb   Ústr©rb   r¬   )re   rf   rg   Ú__doc__r.   rC   r~   rp   rK   r   ri   r˜   rQ   r¡   rª   rH   rM   r?   r&   r&   �   s‚   „ ñð$ 
Ð*Ñ	*€Bð
 8<Ð<RÑ7SñUð 5ðUð 
ó	UóPð
!Ø#ð
!Ø*7ð
!à	"ó
!ð òó ðóóôWrM   r&   rk   c                  ó’   — e Zd ZdZedz  Zed   ej                  j                  dœ	 	 	 	 	 dd„Z
dd„Zdd„Zdd„Zdd	„Zdd
„Zdd„Zy)r(   aÓ  
    `json`_, `gzip`_ -based, lazy schema lookup.

    - Primarily benefits ``pandas``, which needs some help identifying **temporal** columns.
    - Utilizes `data package`_ schema types.
    - All methods return falsy containers instead of exceptions

    .. _json:
        https://docs.python.org/3/library/json.html
    .. _gzip:
        https://docs.python.org/3/library/gzip.html
    .. _data package:
        https://github.com/vega/vega-datasets/pull/631
    zschemas.json.gz©r$   r%   )rl   Úimplementationc               ó*   —  |«       | _         || _        y rG   )rE   Ú_implementation)rJ   rl   r±   s      r?   rp   zSchemaCache.__init__Þ   s   € ñ >@»TˆŒØ2@ˆÕrM   c                ó\   — dd l }| 5 }|j                  |«      cd d d «       S # 1 sw Y   y xY w)Nr   )ÚjsonÚload)rJ   rµ   r€   s      r?   rK   zSchemaCache.readç   s*   € Ûàð 	 �QØ—9‘9˜Q“<÷	 ÷ 	 ò 	 ús   ‡"¢+c               ó&   — | j                  |i «      S rG   )r]   rO   s     r?   rQ   zSchemaCache.__getitem__í   s   € Ø�x‰x˜˜RÓ Ð rM   c                ó¼   — | |   x}r@|r>|D �ch c]  }t         |   ’Œ }}|j                  «       D ��cg c]  \  }}||v sŒ|‘Œ c}}S t        |«      S c c}w c c}}w )zï
        Return column names specfied in ``name``'s schema.

        Parameters
        ----------
        name
            Dataset name.
        *dtypes
            Optionally, only return columns matching the given data type(s).
        )r8   r“   rn   )rJ   r£   ÚdtypesÚmatchrl   Úincluder�   Útp_strs           r?   Úby_dtypezSchemaCache.by_dtypeð   sa   € ð ˜$‘ZÐˆEÐ¡VØ5;Ö<¨r” rÓ*Ð<ˆGÐ<Ø+0¯;©;«=×N™K˜C ¸FÀgÒ<M’CÓNÐNä˜“;Ðùò =ùÛNs   ŽA³AÁ Ac                óæ   — | j                   t        j                  j                  t        j                  j                  t        j                  j
                  t        j                  j                  hv S rG   )r³   ÚnwÚImplementationÚPANDASÚPYARROWÚMODINrI   s    r?   Ú	is_activezSchemaCache.is_active  sV   € Ø×#Ñ#Ü×Ñ×$Ñ$Ü×Ñ×%Ñ%Ü×Ñ×#Ñ#Ü×Ñ×%Ñ%ð	(
ð 
ð 	
rM   c               ó`   — d„ | |   j                  «       D «       }t        j                  |«      S )Nc              3  ó@   K  — | ]  \  }}|t        |   «       f–— Œ y ­wrG   )r9   )rt   r�   r¼   s      r?   rv   z%SchemaCache.schema.<locals>.<genexpr>
  s!   è ø€ ÒU±;°3¸ˆs”O FÑ+Ó-Ô.ÑUùs   ‚)r“   r¿   ÚSchema)rJ   r£   Úits      r?   ÚschemazSchemaCache.schema	  s'   € ÙUÀ$ÀtÁ*×BRÑBRÓBTÔUˆÜ�y‰y˜‹}ÐrM   c               óz  — |d   }| j                  «       r¥| |   r |d   }| j                  j                  «       rD| j                  |t        j
                  t        j                  «      x}r|dk(  rd|iS |dv rd|iS i S | j                  |«      j                  «       }|dv rddl	m
} d	 ||¬
«      iS |dk(  rd|iS i S )NÚdataset_namerž   z.jsonÚconvert_dates>   ú.csvú.tsvÚparse_datesr   )ÚConvertOptionsÚconvert_options)Úcolumn_typesrŸ   rÉ   )rÄ   r³   Úis_pandas_liker½   r¿   ÚDateÚDatetimerÉ   Úto_arrowÚpyarrow.csvrÐ   )rJ   r›   r£   rž   ÚcolsrÉ   rÐ   s          r?   Úschema_kwdszSchemaCache.schema_kwds  sÔ   € Ø˜Ñ(ˆØ�>‰>Ô  d¢Ø˜(‘^ˆFØ×#Ñ#×2Ñ2Ô4ØŸ=™=¨¬r¯w©w¼¿¹ÓDÐD�4ÐDØ Ò(Ø /°Ð6Ð6ØÐ#3Ñ3Ø -¨tÐ4Ð4ð ˆ	ð Ÿ™ TÓ*×3Ñ3Ó5�ØÐ-Ñ-Ý:ð
 .©~È6Ô/RÐSÐSØ˜zÒ)Ø$ fÐ-Ð-àˆ	rM   N)rl   z)type[MutableMapping[_Dataset, _FlSchema]]r±   znw.Implementationrb   rd   ra   )rP   r$   rb   r%   )r£   r$   r¹   ztype[DType]rb   z	list[str]©rb   Úbool)r£   r$   rb   z	nw.Schema)r›   r   rb   zdict[str, Any])re   rf   rg   r®   r.   rC   r~   r¿   rÀ   ÚUNKNOWNrp   rK   rQ   r½   rÄ   rÉ   rÙ   rH   rM   r?   r(   r(   Ì   ss   „ ñð 
Ð*Ñ	*€Bð
 9=Ð=TÑ8UØ,.×,=Ñ,=×,EÑ,Eñ	Að 6ðAð *ð	Að
 
óAó ó!óó"
óôrM   r(   r°   c                  ó,   — e Zd ZU ded<   	 	 	 	 	 	 dd„Zy)Ú_SupportsScanMetadatazClassVar[OpenerDirector]Ú_openerc                 ó   — y rG   rH   )rJ   Ú
predicatesÚconstraintss      r?   Ú_scan_metadataz$_SupportsScanMetadata._scan_metadata)  s   € àrM   N)rá   zOneOrSeq[IntoExpr]râ   zUnpack[Metadata]rb   znw.LazyFrame[Any])re   rf   rg   rh   rã   rH   rM   r?   rÞ   rÞ   &  s%   … Ø%Ó%ð Ø-ð Ø>Nð à	ô rM   rÞ   c                  óL  — e Zd ZU dZdZded<    eej                  j                  d ej                  «       dz  «      «      dz  j                  «       Zded	<   dd
„Zdd„Zdd„Zdd„Zdd„Zedd„«       Zej(                  dd„«       Zdd„Zdd„Zd d„Zd!d„Zd!d„Zd!d„Zdd„Zy)"r'   z+Opt-out caching of remote dataset requests.ÚALTAIR_DATASETS_DIRzClassVar[LiteralString]Ú_ENV_VARÚXDG_CACHE_HOMEz.cacheÚaltairzClassVar[Path]Ú
_XDG_CACHEc               ó   — || _         y rG   )Ú_rd)rJ   rz   s     r?   rp   zDatasetCache.__init__6  s	   € Ø*0ˆ�rM   c                óâ  — | j                  «        | j                  «       ry| j                  j                  «       j	                  dd«      j                  d«      j	                  t        j                  dd«      j                  d«      «      j                  «       j                  d«      }t        t           |j                  «       «      }| D ]!  }|j                  |v sŒ|j                  «        Œ# y)z&Delete all previously cached datasets.NÚsharž   Ú
sha_suffix)Ú_ensure_activeÚis_emptyrë   rã   ÚselectÚuniquer¿   Ú
concat_strÚaliasÚcollectÚ
get_columnÚsetr¬   Úto_listr£   Úunlink)rJ   ÚserÚnamesrC   s       r?   ÚclearzDatasetCache.clear9  s¯   € à×ÑÔØ�=‰=Œ?Øà�H‰H×#Ñ#Ó%ß‰V�E˜8Ó$ß‰V�E‹]ß‰V”B—M‘M %¨Ó2×8Ñ8¸ÓFÓGß‰W‹Yß‰Z˜Ó%ð 	ô ”C‘˜Ÿ™›Ó'ˆØò 	ˆBØ�w‰w˜%ÒØ—	‘	•ñ	rM   c                óö  — t        d„ | D «       «      }|r&t        j                  d«      j                  |«       fnd} | j                  j
                  |ddiŽj                  ddd«      j                  d«      j                  «       }|j                  «       rt        d«       y	t        d
t        |«      › d�«       t        |«      D ]&  }| j                  |d   | j                  |«      «       Œ( t        d«       y	)zp
        Download any missing datasets for latest version.

        Requires **30-50MB** of disk-space.
        c              3  ó4   K  — | ]  }|j                   –— Œ y ­wrG   )Ústem)rt   rC   s     r?   rv   z,DatasetCache.download_all.<locals>.<genexpr>Q  s   è ø€ Ò- "�b—g•gÑ-ùs   ‚rí   rH   Úis_imageFrž   r¡   zAlready downloaded all datasetsNzDownloading z missing datasets...zFinished downloads)r|   r¿   r�   Úis_inrë   rã   rñ   rò   rõ   rð   ÚprintÚlenr@   Ú_download_oneÚ	path_meta)rJ   Ústemsrá   Úframer›   s        r?   Údownload_allzDatasetCache.download_allK  sß   € ô Ñ-¨Ô-Ó-ˆÙ9>œŸ™˜u›×+Ñ+¨EÓ2Ð3Ñ5ÀBˆ
à#ˆD�H‰H×#Ñ# ZÐ@¸%Ñ@ß‰V�E˜8 UÓ+ß‰V�E‹]ß‰W‹Yð	 	ð �>‰>ÔÜÐ3Ô4ØÜ�œS ›Z˜LÐ(<Ð=Ô>Ü" 5Ó)ò 	BˆDØ×Ñ˜t E™{¨D¯N©N¸4Ó,@ÕAð	BäÐ"Ô#ØrM   c               ó¦   — | j                  |«      }|j                  «       r|j                  «       j                  r|S | j	                  |d   |«      S )Nr¡   )r  ÚexistsÚstatÚst_sizer  )rJ   r›   rC   s      r?   Ú_maybe_downloadzDatasetCache._maybe_downloadb  sN   € Ø�^‰^˜DÓ!ˆð —	‘	” §¡£	× 1Ò 1ð ð	
ð ×#Ñ# D¨¡K°Ó4ð	
rM   c               óÚ   — | j                   j                  j                  |«      5 }|j                  «        |j	                  |j                  «       «       d d d «       |S # 1 sw Y   |S xY wrG   )rë   rß   rV   ÚtouchÚwrite_bytesrK   )rJ   r¡   rC   r€   s       r?   r  zDatasetCache._download_onej  sU   € Ø�X‰X×Ñ×"Ñ" 3Ó'ð 	%¨1Ø�H‰HŒJØ�N‰N˜1Ÿ6™6›8Ô$÷	%ð ˆ	÷	%ð ˆ	ús   ¦0A Á A*c                óÐ   — | j                  «        t        j                  j                  | j                  «      x}rt        |«      n| j                  }|j                  dd¬«       |S )aÍ  
        Returns path to datasets cache.

        Defaults to (`XDG_CACHE_HOME`_)::

            "$XDG_CACHE_HOME/altair/"

        But can be configured using the environment variable::

            "$ALTAIR_DATASETS_DIR"

        You can set this for the current session via::

            from pathlib import Path
            from altair.datasets import load

            load.cache.path = Path.home() / ".altair_cache"

            load.cache.path.relative_to(Path.home()).as_posix()
            ".altair_cache"

        You can *later* disable caching via::

           load.cache.path = None

        .. _XDG_CACHE_HOME:
            https://specifications.freedesktop.org/basedir-spec/latest/#variables
        T)ÚparentsÚexist_ok)rï   ÚosÚenvironr]   ræ   r   ré   Úmkdir)rJ   ÚusrrC   s      r?   ÚpathzDatasetCache.pathp  sO   € ð< 	×ÑÔÜ"$§*¡*§.¡.°·±Ó"?Ð?˜3Ð?ŒT�#ŒYÀdÇoÁoˆØ
�‰˜¨ˆÔ-Øˆ	rM   c               ó¾   — |�>t        t        |«      j                  «       «      t        j                  | j
                  <   y dt        j                  | j
                  <   y ©NÚ )r¬   r   Úresolver  r  ræ   )rJ   Úsources     r?   r  zDatasetCache.path“  s>   € àÐÜ(+¬D°«L×,@Ñ,@Ó,BÓ(CŒB�J‰J�t—}‘}Ò%à(*ŒB�J‰J�t—}‘}Ò%rM   c               ó2   — | j                   |d   |d   z   z  S )Nrí   rž   )r  )rJ   r›   s     r?   r  zDatasetCache.path_metaš  s   € Ø�y‰y˜D ™K¨$¨x©.Ñ8Ñ9Ð9rM   c              #  óT   K  — | j                   j                  «       E d {  –—†  y 7 Œ­wrG   )r  ÚiterdirrI   s    r?   Ú__iter__zDatasetCache.__iter__�  s   è ø€ Ø—9‘9×$Ñ$Ó&×&Ò&ús   ‚( &¡(c                ó–   — t        | «      j                  }| j                  «       r|› d�S |› d| j                  j	                  «       ›d�S )Nz<UNSET>r¥   r¨   )r©   re   Úis_not_activer  Úas_posix)rJ   r£   s     r?   rª   zDatasetCache.__repr__   sK   € Ü�D‹z×"Ñ"ˆØ×ÑÔØ�V˜7Ð#Ð#à�V˜1˜TŸY™Y×/Ñ/Ó1Ð4°AÐ6Ð6rM   c                ó$   — | j                  «        S rG   )r#  rI   s    r?   rÄ   zDatasetCache.is_active§  s   € Ø×%Ñ%Ó'Ð'Ð'rM   c                óZ   — t         j                  j                  | j                  «      dk(  S r  )r  r  r]   ræ   rI   s    r?   r#  zDatasetCache.is_not_activeª  s   € Ü�z‰z�~‰~˜dŸm™mÓ,°Ñ2Ð2rM   c                ó0   — t        t        | «      d«      du S )z:Cache is active, but no files are stored in ``self.path``.N)r}   ÚiterrI   s    r?   rð   zDatasetCache.is_empty­  s   € ä”D˜“J Ó%¨Ð-Ð-rM   c                óZ   — | j                  «       rd| j                  ›d�}t        |«      ‚y )NzMCache is unset.
To enable dataset caching, set the environment variable:
    z¦

You can set this for the current session via:
    from pathlib import Path
    from altair.datasets import load

    load.cache.path = Path.home() / '.altair_cache')r#  ræ   Ú
ValueError)rJ   rœ   s     r?   rï   zDatasetCache._ensure_active±  s?   € Ø×ÑÔðà—}‘}Ð'ð (FðGð ô ˜S“/Ð!ð  rM   N)rz   rÞ   rb   rd   rc   )r›   r   rb   r   )r¡   r¬   rC   r   rb   r   )rb   r   )r  zStrPath | Nonerb   rd   )rb   zIterator[Path]r­   rÚ   )re   rf   rg   r®   ræ   rh   r   r  r  r]   Úhomer  ré   rp   rü   r  r  r  ri   r  Úsetterr  r!  rª   rÄ   r#  rð   rï   rH   rM   r?   r'   r'   .  s¶   … Ù5à(=€HÐ%Ó=áˆR�Z‰Z�^‰^Ð,¨i¨d¯i©i«k¸HÑ.DÓEÓFÈÑQß�gƒið �ó ó1óó$ó.
óð ò ó ð ðD 
‡[�[ò+ó ð+ó:ó'ó7ó(ó3ó.ô"rM   r'   r)   c                óZ   — | dk(  rt        «       at        S dt        ›d| ›�}t        |«      ‚)Nr)   zmodule z has no attribute )r&   r)   re   ÚAttributeError)r£   rœ   s     r?   Ú__getattr__r/  Â  s7   € Øˆ{Òä“Jˆ	ÜÐð œ�|Ð#5°d°XÐ>ˆÜ˜SÓ!Ð!rM   )r>   znw.DataFrame[Any]rb   r;   )RÚ
__future__r   r  ÚsysÚcollectionsr   Úimportlib.utilr   Úpathlibr   Útypingr   r   r	   r
   Únarwhals.stable.v1ÚstableÚv1r¿   Úaltair.datasets._exceptionsr   Úversion_infor   Útyping_extensionsÚcollections.abcr   r   r   r   r   r   Úior   r   r   r   Úurllib.requestr   Ú	_typeshedr   Únarwhals.stable.v1.dtypesr   Únarwhals.stable.v1.typingr   Úaltair.datasets._typingr   r   r   r!   r"   Ú!altair.vegalite.v6.schema._typingr#   r$   rh   r¬   r%   Ú__all__r*   r+   r,   Ú__file__Úparentr.   ÚInt64ÚFloat64ÚBooleanÚStringÚStructÚListrÔ   rÕ   ÚDurationr8   r“   r9   r@   rB   r&   r(   rÞ   r'   r/  )r–   r—   s   00r?   ú<module>rN     sñ  ðÞ "ã 	Û 
Ý #Ý $Ý ß 9Ó 9ç Ð å ;à×Ñ�wÒÞå*á÷÷ õ ß,Ñ,Ý-å!Ý/Ý2ç9à
×Ñ˜7Ò"Þ!å,à
×Ñ˜7Ò"Þ(å3å2Ý:à3€HˆiÓ3Ø" 3¨
 ?Ñ3€IˆyÓ3â
B€ñ ˆeƒn€Ùˆeƒn€ÙˆTƒ]€á! (›^×2Ñ2°[Ñ@€ˆ{Ó @ð ‡H�HˆiØ‡J�J�Ø‡J�J�	Ø‡I�IˆxØ‡I�IˆxØ‡G�GˆWØ‡G�GˆVØ‡K�K�Ø‡K�K�ð5€Ð1ó ðð %×*Ñ*Ó,÷5ÙˆQ�€A€q�Dó5€Ð1ó ó
Dô�h˜s C˜xÑ(ô ô2HWˆÐ5Ñ6ô HWôVW�/Ð"9Ñ:ô Wôt ˜Hô  ÷N"ñ N"ðb Ó ó"ùóU5s   Æ/H