
    hr                         S SK r S SKrS SKJrJrJr  \R                  S 5       r\R                  S 5       rS r	S r
S rS rS	 rg)
    N)
premap_ids	remap_idsremap_ids_v2c                  2    [         R                  " / SQ5      $ )N)	                  	         )numpyarray     Y/home/james-whalen/.local/lib/python3.13/site-packages/thinc/tests/layers/test_mappers.pykeysr      s    ;;344r   c                 t    [        U 5       VVs0 s H  u  p[        U5      [        U5      _M     snn$ s  snnf )N)	enumerateint)r   vks      r   mapperr      s,    '07tqCFCFN777s   !4c           
          [        USS9nU" U S5      u  p4[        R                  R                  UR	                  5       [        R
                  " [        [        U 5      5      5      5        g Nc   )defaultF)r   r   testingassert_equalsqueezeasarrayrangelen)r   r   premapvalues_s        r   test_premapr)      sI    +FtU#IF	MMv~~/uSY?O1PQr   c           
          [        USS9nU" U S5      u  p4[        R                  R                  UR	                  5       [        R
                  " [        [        U 5      5      5      5        g r   )r   r   r    r!   r"   r#   r$   r%   r   r   remapr'   r(   s        r   
test_remapr-      sI    fb)EdE"IF	MMv~~/uSY?O1PQr   c           
          [        USS9nU" U S5      u  p4[        R                  R                  UR	                  5       [        R
                  " [        [        U 5      5      5      5        g r   )r   r   r    r!   r"   r#   r$   r%   r+   s        r   test_remap_v2r/      sI    ,EdE"IF	MMv~~/uSY?O1PQr   c                     [        USS9n[        USS9n[        USS9nU" U S5      u  pVU" U S5      u  pvU" U S5      u  p[        R                  R                  XW5        [        R                  R                  Xx5        g r   )r   r   r   r   r    r!   )	r   r   r,   remap_v2r&   values1r(   values2values3s	            r   test_remap_premap_eqr5   #   st    fb)EFB/H+FtU#JG$&JGe$JG	MMw0	MMw0r   c           
         [         R                  " [        U 5      S4SS9nXS S 2S4'   [        USS9n[	        USS9n[         R
                  R                  U" US5      S   R                  5       [         R                  " [        [        U 5      5      5      5        [         R
                  R                  U" US5      S   R                  5       [         R                  " [        [        U 5      5      5      5        g )Nr   r   )dtyper   )columnFr   )
r   zerosr%   r   r   r    r!   r"   r#   r$   )r   r   idxr1   r&   s        r   test_columnr;   .   s    
++s4y!nE
2C1IF1-Hq)F	MMeQ'')5==s4y9I+J 
MMsE1%%'uSY7G)Hr   )r   pytestthinc.layersr   r   r   fixturer   r   r)   r-   r/   r5   r;   r   r   r   <module>r?      s]      < < 5 5 8 8RRR1
r   