o
    i                     @   sR   d gZ zddlmZ W n ey   dZY nw dd Zdddd	d
Zddd ZdS )get_flinalg_funcs   )_flinalgNc                 C   s
   | j d S )NZFORTRAN)flags)Zarr r   g/var/www/html/eduruby.in/lip-sync/lip-sync-env/lib/python3.10/site-packages/scipy/linalg/_flinalg_py.pyhas_column_major_storage   s   
r   sdcz)fr	   FDr       c                 C   s   g }t |D ]\}}|jj}|tvrd}|||f q|r+|  t|d d  }nd}|r>t||d d  r>d\}}	nd\}}	g }
| D ]}|| }tt|| tt||	 d}|
| qFt	|
S )zoReturn optimal available _flinalg function objects with
    names. Arrays are used to determine optimal prefix.r	   r   r   )_c_r)r   r   N)
	enumerateZdtypechar
_type_convappendsortr   getattrr   tuple)namesZarraysdebugZorderingiartZrequired_prefixZsuffix1Zsuffix2funcsname	func_namefuncr   r   r   r      s*   

)r   r   )__all__ r   ImportErrorr   r   r   r   r   r   r   <module>   s   