File: //lib64/python3.9/__pycache__/gzip.cpython-39.opt-2.pyc
a
    �DOgU  �                   @   s�   d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZg d�Zd\Z	Z
ZZZ
d\ZZdZdZdZdedddfd	d
�Zdd� ZG d
d� d�ZG dd� de�ZG dd� dej�ZG dd� dej�Zefdd�dd�Zdd� Zdd� Zedkr�e�  dS )�    N)�BadGzipFile�GzipFile�open�compress�
decompress)�   �   �   �   �   )r   r   r   �   �	   �rbc                 C   s�   d|v r d|v rPt d|f ��n0|d ur0t d��|d ur@t d��|d urPt d��|�dd�}t| tttjf�r|t| ||�}n,t| d�s�t| d	�r�td ||| �}nt	d
��d|v r�t
�||||�S |S d S )N�t�bzInvalid mode: %rz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary mode� �read�writez1filename must be a str or bytes object, or a file)�
ValueError�replace�
isinstance�str�bytes�os�PathLiker   �hasattr�	TypeError�io�
TextIOWrapper)�filename�mode�
compresslevel�encoding�errors�newlineZgz_mode�binary_file� r&