
    &Vf                        U d Z ddlmZmZ ddlmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z: ddl;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZB ddlCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZS ddlTmUZU g dZVeZeWeXd<   	 eZeYeXd	<   	 eZeYeXd
<   dS )z#OpTree: Optimized PyTree Utilities.    )integrationtyping)6MAX_RECURSION_DEPTHNONE_IS_LEAFNONE_IS_NODE
all_leavesbroadcast_commonbroadcast_prefixprefix_errorstree_alltree_anytree_broadcast_commontree_broadcast_maptree_broadcast_map_with_pathtree_broadcast_prefixtree_flattentree_flatten_one_leveltree_flatten_with_pathtree_is_leaf	tree_itertree_leavestree_map	tree_map_tree_map_with_pathtree_map_with_path_tree_maxtree_min
tree_pathstree_reducetree_replace_nonestree_structuretree_sumtree_transposetree_transpose_maptree_transpose_map_with_pathtree_unflattentreespec_childtreespec_childrentreespec_defaultdicttreespec_dequetreespec_dicttreespec_entriestreespec_entrytreespec_from_collectiontreespec_is_leaftreespec_is_prefixtreespec_is_strict_leaftreespec_is_suffixtreespec_leaftreespec_listtreespec_namedtupletreespec_nonetreespec_ordereddicttreespec_pathstreespec_structseqtreespec_tuple)AttributeKeyPathEntryGetitemKeyPathEntryPartialregister_keypathsregister_pytree_noderegister_pytree_node_classunregister_pytree_node)CustomTreeNodeFlattenFuncPyTree	PyTreeDef
PyTreeKind
PyTreeSpecPyTreeTypeVarUnflattenFuncis_namedtupleis_namedtuple_classis_namedtuple_instanceis_structseqis_structseq_classis_structseq_instancenamedtuple_fieldsstructseq_fields)__version__)Mr   r   r   r   r   r&   r   r   r!   r   r   r   r   r   r   r   r    r#   r$   r%   r   r
   r   r	   r   r   r   r"   r   r   r   r   r   r   r8   r,   r-   r(   r'   r/   r1   r0   r2   r3   r6   r:   r4   r+   r5   r7   r)   r*   r9   r.   r?   r@   rA   r=   r>   r;   r<   rG   rE   rF   rD   rH   rB   rC   rI   rJ   rK   rL   rP   rM   rO   rN   rQ   r   r   r   N)Z__doc__optreer   r   
optree.opsr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   optree.registryr;   r<   r=   r>   r?   r@   rA   optree.typingrB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   optree.versionrR   __all__int__annotations__bool     L/var/www/html/software/conda/lib/python3.11/site-packages/optree/__init__.py<module>r`      s   * ) ) & & & & & & & &7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7p                                                    $ ' & & & & &Q Q Qf / S . . .
 "d ! ! ! J!d ! ! ! F Fr^   