
    ןEf              	       j   d dl mZmZmZmZ d dlmZ  ed          Z ed          Zdedeegef         deee	ef         ddf         fd	Z
dedefd
ZdedefdZedk    rN e edd                     edd          k    sJ  e edd                     edd          k    sJ dS dS )    )CallableTypeVarTuple	Generator)ImmutableDictTKdcallbackreturnNc              #      K   |                                  D ]0\  }}t          |t                    r| ||          fV  *||fV  1d S N)items
isinstancedict)r
   r   kvs       ./cmf/util/immutables.py	_gen_deepr      sg      		  1a 	XXa[[.    Q$JJJJ	     c                 F    t          t          | t                              S r   )r   r   imutable_deep_copyr
   s    r   r   r      s    1&899:::r   c                 F    t          t          | t                              S r   )r   r   mutable_deep_copyr   s    r   r   r      s    	!.//000r   __main__      )ab)typingr   r   r   r   werkzeug.datastructuresr   r   r	   strr   r   r   r   __name__ r   r   <module>r&      sk   6 6 6 6 6 6 6 6 6 6 6 6 1 1 1 1 1 1GCLLGCLL hsAv. 9U36]DRV=V3W    ;$ ;= ; ; ; ;1 14 1 1 1 1 zddQ!nnn--a1H1H1HHHHH]]Q!44455QGGGG GGr   