
    bi                    V    d dl mZ d dlmZ d dlmZmZ ddZddZddZddZ	ddZ
dS )    )annotations)array)HashableSequencesSequence[Hashable]returnc                    t          | t                    rd | D             S t          | t                    r| S t          | t                    r| j        dv rd | D             S | S | | S g }| D ]}t          |t                    r6t          |          dk    r#|                    t          |                     Mt          |t                    r|dk    r|                    d           ~|                    t          |                     |S )Nc                ,    g | ]}t          |          S  ord.0xs     d/var/www/html/Pagina-Ingenieria-Requisitos/venv/lib/python3.11/site-packages/rapidfuzz/_common_py.py
<listcomp>z!conv_sequence.<locals>.<listcomp>   s    """1A"""    )uwc                ,    g | ]}t          |          S r   r   r   s     r   r   z!conv_sequence.<locals>.<listcomp>   s    &&&qCFF&&&r      )

isinstancestrbytesr   typecodelenappendr   inthash)r   reselems      r   conv_sequencer$   
   s   !S #""""""!U !U :##&&A&&&&y
C # #dC   	#SYY!^^JJs4yy!!!!c"" 	#trzzJJrNNNNJJtDzz""""Jr   s1s2-tuple[Sequence[Hashable], Sequence[Hashable]]c                    t          | t                    rt          |t                    r| |fS t          | t                    rt          |t                    r| |fS t          |           t          |          fS N)r   r   r   r$   )r%   r&   s     r   conv_sequencesr*   &   su    "c z"c22 2v"e B!6!6 2vmB////r   r    c                P    d}t          | |          D ]\  }}||k    r n|dz  }|S Nr   r   )zip)r%   r&   
prefix_lench1ch2s        r   common_prefixr1   0   sA    JBKK  S#::Ea

r   c                    d}t          t          |           t          |                    D ]\  }}||k    r n|dz  }|S r,   )r-   reversed)r%   r&   
suffix_lenr/   r0   s        r   common_suffixr5   ;   sO    Jhrll33  S#::Ea

r   tuple[int, int]c                j    t          | |          }t          | |d          ||d                    }||fS r)   )r1   r5   )r%   r&   r.   r4   s       r   common_affixr8   F   s;    r2&&Jr*++:;;@@J
##r   N)r   r   r	   r   )r%   r   r&   r   r	   r'   )r%   r   r&   r   r	   r    )r%   r   r&   r   r	   r6   )
__future__r   r   collections.abcr   r   r$   r*   r1   r5   r8   r   r   r   <module>r;      s    # " " " " "       . . . . . . . .   80 0 0 0      $ $ $ $ $ $r   