
    0Vh:                     "   U d Z ddlmZmZmZmZmZ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 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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZV ddlWmXZXmYZYmZZZm[Z[ ddl\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkmlZl ddlmmnZn g dZoeZepeqd	<   	 eZereqd
<   	 eZereqd<   	 desdetfdZuy)z#OpTree: Optimized PyTree Utilities.    )	accessorsdataclasses	functoolsintegrationspytreetreespectyping)	AutoEntryDataclassEntryFlattenedEntryGetAttrEntryGetItemEntryMappingEntryNamedTupleEntryPyTreeAccessorPyTreeEntrySequenceEntryStructSequenceEntry)AMAX_RECURSION_DEPTHNONE_IS_LEAFNONE_IS_NODE
all_leavesbroadcast_commonbroadcast_prefixprefix_errorstree_accessorstree_alltree_anytree_broadcast_commontree_broadcast_map tree_broadcast_map_with_accessortree_broadcast_map_with_pathtree_broadcast_prefixtree_flattentree_flatten_one_leveltree_flatten_with_accessortree_flatten_with_pathtree_is_leaf	tree_itertree_leavestree_map	tree_map_tree_map_with_accessortree_map_with_accessor_tree_map_with_pathtree_map_with_path_tree_maxtree_mintree_partition
tree_pathstree_reducetree_replace_nonestree_structuretree_sumtree_transposetree_transpose_map tree_transpose_map_with_accessortree_transpose_map_with_pathtree_unflattentreespec_accessorstreespec_childtreespec_childrentreespec_defaultdicttreespec_dequetreespec_dicttreespec_entriestreespec_entrytreespec_from_collectiontreespec_is_leaftreespec_is_one_leveltreespec_is_prefixtreespec_is_strict_leaftreespec_is_suffixtreespec_leaftreespec_listtreespec_namedtupletreespec_nonetreespec_one_leveltreespec_ordereddicttreespec_pathstreespec_structseqtreespec_transformtreespec_tuple)dict_insertion_ordered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__)`r   r   r   r$   r'   r&   r=   r)   r*   r7   r4   r   r(   r   r+   r,   r/   r0   r-   r.   r6   r3   r9   r:   r<   r;   r#   r   r   r   r    r"   r!   r5   r8   r1   r2   r   r   r%   r   rR   r>   rD   rE   r@   r?   rP   rT   rG   rJ   rH   rI   rK   rL   rO   rU   rM   rC   rN   rQ   rA   rB   rS   rF   r   r   r   r   r
   r   r   r   r   r   r   rW   rX   rY   rV   r_   r]   r^   r\   r`   rZ   r[   ra   rb   rc   rd   rh   re   rf   rg   ri   r   r   r   namereturnc                p    | dk(  rddl ma t        S | dk(  rddlma t        S t	        dt
        d|       )z!Get an attribute from the module.accessorr   Nintegrationzmodule z has no attribute )optree.accessorrn   optree.integrationro   AttributeError__name__)rk   s    ?/home/dcms/DCMS/lib/python3.12/site-packages/optree/__init__.py__getattr__ru      s@    z 	+} 	1
78,.@I
JJ    N)v__doc__optreer   r   r   r   r   r   r	   optree.accessorsr
   r   r   r   r   r   r   r   r   r   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/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   optree.registryrV   rW   rX   rY   optree.typingrZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   optree.versionrj   __all__int__annotations__boolstrobjectru    rv   rt   <module>r      s   * \ \ \   B B B B B B B B B B B B B B B B BF     $ 6eN / S .
 "d ! J!d ! F
Kc K Krv   