�
B�g�� �
�� � d Z ddlmZ ddlmZmZ ddlZddlmZ ddl m
Z
mZmZ ddl
Z
ddlZddlZddlmZmZmZmZmZmZ ddlZddlZddlmZ ddlZddlZdd lmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z' dd
l(m)Z)m*Z+m,Z,m-Z-m.Z. ddl/Z/ddl0Z0ddl1m2Z2m3Z3 ddl4m5Z5m6Z6 dd
l7m8Z8 ddl9m:Z: ddl;m<Z< ddl=m>Z>m?Z?m@Z@mAZA ddlBmCZC ddlDmEZE eFe.e,z e-z � � ZGeG�H d� � ejI d� � ZJ e%de2�� � ZKerddlLmMZM ddl1mNZNmOZOmPZPmQZQmRZRmSZS ddlTmUZU e
jV G d� d� � � � ZWe
jV G d� de#e! � � � � ZXdd"�ZYe'd�d%�� � ZZe'd�d&�� � ZZd�d(�ZZd�d+�Z[e'd�d�d/�� � Z\e' d�d�d0�� � Z\ d�d�d3�Z\d4� Z]d�d6�Z^ e:eEd7 eEd8 d#z �9� � d�d�dA�� � Z_d�dC�Z`dDdDdDdDdEdFdGdHdIdJ� Za eFea�b � � � � Zcd�dM�Zd e:eEd8 d#z �N� � d�dP�� � Zed�dR�Zfe'd,d,d,d,d,dS�d�d[�� � Zge'd,d,d,d,d,d,d\�d�d_�� � Zge'd,d,d,d,d,d,d\�d�da�� � Zg e:eEd8 dTz �N� � ddd1dbddd\�d�dc�� � Zg G dd� deee� � Zh G df� dgeh� � Zi G dh� dieh� � Zj G dj� dk� � Zk G dl� dm� � Zld�dq�Zmd�dr�Znd�ds�Zoejp d�du�� � Zq d�d�dz�Zrd�d~�ZsdS )�zCommon IO api utilities� )�annotations)�ABC�abstractmethodN)�defaultdict)�Hashable�Mapping�Sequence)�BufferedIOBase�BytesIO� RawIOBase�StringIO�
TextIOBase�
TextIOWrapper)�Path)
�IO�
TYPE_CHECKING�Any�AnyStr�DefaultDict�Generic�Literal�TypeVar�cast�overload)�urljoin�urlparse�uses_netloc�uses_params�
uses_relative)�
BaseBuffer�
ReadCsvBuffer)�get_bz2_file�
get_lzma_file)�import_optional_dependency)�doc)�find_stack_level)�is_bool�is_file_like�
is_integer�is_list_like)�
ABCMultiIndex)�_shared_docs� z^[A-Za-z][A-Za-z0-9+\-+.]*://�BaseBufferT)�bound)�
TracebackType)�CompressionDict�CompressionOptions�FilePath�
ReadBuffer�StorageOptions�WriteBuffer)�
MultiIndexc �J � e Zd ZU dZded<