File: //usr/share/python3/debpython/__pycache__/version.cpython-310.pyc
o
    ��b�7  �                   @   s�  d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlm	Z	 dZ
e�e
�Ze�dej
�Ze �e�Ze�d�Ze�d	�ZerAesae� Ze�d
� esUe�dd�d
d� Zesae�dd��dd�Zzedd� e�d�D ��ZW n ey}   e�d� Y nw zedd� e�d�D ��ZW n ey�   e�d� Y nw G dd� d�Zd'dd�Zdd� Z dd� Z!dd � Z"d!d"� Z#d#d$� Z$d(d%d&�Z%dS ))�    N)�environ��exists)�ConfigParser)�
GeneratorTypez(-)?(\d\.\d+)(?:(-)(\d\.\d+)?)?z�
    (?P<major>\d+)\.?
    (?P<minor>\d+)?\.?
    (?P<micro>\d+)?[.\s]?
    (?P<releaselevel>alpha|beta|candidate|final)?[.\s]?
    (?P<serial>\d+)?�DEBPYTHON3_SUPPORTED�DEBPYTHON3_DEFAULTz"/usr/share/python3/debian_defaults�DEFAULTzdefault-version�   zsupported-versions�python� c                 c   �   � | ]}t |�V  qd S �N��int��.0�i� r   �'/usr/share/python3/debpython/version.py�	<genexpr>5   �   � r   �.zcannot read debian_defaultsc                 c   s,   � | ]}t d d� |�� �d�D ��V  qdS )c                 s   r
   r   r   )r   �jr   r   r   r   9   r   z<genexpr>.<genexpr>r   N)�tuple�strip�splitr   r   r   r   r   9   s   � $��,c                   @   s�   e Zd Z		ddd�Zdd� Zdd� Zdd	� Zd
d� Zdd
� Zdd� Z	dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zddd�ZdS ) �VersionNc           
      C   s�   t |ttf�rd�dd� |D ��}t |t�r&dD ]}t| |t||�� qd S t� }|d= |d= |rSt�	|�}	|	r>|	�
� �� ng D ]\}}|d urR|| d u rR|||<