o
    i                  
   @   s   d dl mZmZmZmZ ddlmZ ddlmZ ddl	m
Z
mZ eZede
dZedd	eeef fd
dZdeeef deded	eeef fddZdS )    )CallableTupleTypeVarcast   )registry)Model)ListXdRaggedOutT)boundzragged2list.v1returnc                   C   s
   t dtS )z4Transform sequences from a ragged format into lists.ragged2list)r   forward r   r   L/home/ubuntu/.local/lib/python3.10/site-packages/thinc/layers/ragged2list.pyr      s   
r   modelXris_trainc                    s>   |j  dtdtf fdd}ttj|j|j }||fS )NdXsr   c                    s   t jj| dd S )Nr   )pad)r
   opsflatten)r   lengthsr   r   r   backprop   s   zforward.<locals>.backprop)r   r   InTr   r   	unflattendataXd)r   r   r   r   datar   r   r   r      s   r   N)typingr   r   r   r   configr   r   r   typesr	   r
   r   r   layersr   boolr   r   r   r   r   <module>   s    .