File: //lib64/python3.9/__pycache__/aifc.cpython-39.opt-2.pyc
a
    �DOg]  �                	   @   s^  d dl Z d dlZd dlZddgZG dd� de�ZdZdd� Zdd	� Zd
d� Z	dd
� Z
dd� ZdZdd� Z
dd� Zdd� Zdd� Zdd� Zdd� Zdd� Zd dlmZ d d lmZ ed!d"�Zd#ej_d$ej_d%ej_d&ej_d'ej_d(ej_G d)d*� d*�Z G d+d,� d,�Z!d>d-d�Z"e#d.k�rZd dl$Z$e$j%d/d� �s>e$j%�&d0� e$j%d/ Z'e"e'd1���Z(e)d2e'� e)d3e(�*� � e)d4e(�+� � e)d5e(�,� � e)d6e(�-� � e)d7e(�.� � e)d8e(�/� � e$j%d9d� �r:e$j%d9 Z0e)d:e0� e"e0d;��@Z1e1�2e(�3� � e(�4d<�Z5e5�s�qe1�6e5� �q�W d  � n1 �s(0    Y  e)d=� W d  � n1 �sP0    Y  dS )?�    N�Error�openc                   @   s   e Zd ZdS )r   N)�__name__�
__module__�__qualname__� r   r   �/usr/lib64/python3.9/aifc.pyr   �   s   l   @Q E c                 C   s8   zt �d| �d��d W S  t jy2   td �Y n0 d S )N�>l�   r   ��struct�unpack�read�error�EOFError��filer   r   r   �
_read_long�   s    r   c                 C   s8   zt �d| �d��d W S  t jy2   td �Y n0 d S )N�>Lr
   r   r   r   r   r   r   �_read_ulong�   s    r   c                 C   s8   zt �d| �d��d W S  t jy2   td �Y n0 d S )N�>h�   r   r   r   r   r   r   �_read_short�   s    r   c                 C   s8   zt �d| �d��d W S  t jy2   td �Y n0 d S )N�>Hr   r   r   r   r   r   r   �_read_ushort�   s    r   c                 C   s@   t | �d��}|dkrd}n
| �|�}|d@ dkr<| �d�}|S )N�   r   �    )�ordr   )r   �length�data�dummyr   r   r   �_read_string�   s    
r!   g�����c                 C   s�   t | �}d}|dk r d}|d }t| �}t| �}||  krN|  krNdkrXn nd} n0|dkrft} n"|d }|d | td	|d
 � } ||  S )Nr   r   ���� �  g        �  i�?  l        g       @�?   )r   r   �	_HUGE_VAL�pow)�f�expon�sign�himant�lomantr   r   r   �_read_float�   s    "r-   c                 C   s   | � t�d|�� d S )Nr   ��writer   �pack�r(   �xr   r   r   �_write_short�   s    r3   c                 C   s   | � t�d|�� d S )Nr   r.   r1   r   r   r   �
_write_ushort�   s    r4   c                 C   s   | � t�d|�� d S )Nr	   r.   r1   r   r   r   �_write_long�   s    r5   c                 C   s   | � t�d|�� d S )Nr   r.   r1   r   r   r   �_write_ulong�   s    r6   c                 C   sR   t |�dkrtd��| �t�dt |��� | �|� t |�d@ dkrN| �d� d S )N�   z%string exceeds maximum pstring length�Br   r   �    )�len�
ValueErrorr/   r   r0   )r(   �sr   r   r   �
_write_string�   s    
r=   c           	      C   s�   dd l }|dk rd}|d }nd}|dkr8d}d}d}n�|�|�\}}|dks^|dks^||krp|dB }d}d}nh|d }|dk r�|�||�}d}||B }|�|d�}|�|�}t|�}|�|| d�}|�|�}t|�}t| |� t| |� t| |� d S )	Nr   r#   r"