gddlZddlmZmZddlmZeGddejjZ dedefdZ y) N)AnyCallable) immutablec peZdZdefdededegejjffdZ dZ dZ dZ d Zy ) DictF dictionaryno_copy map_factoryc|r3t|tjjr||_d|_y||_|jj |d|_y)aMake an immutable dictionary from the specified dictionary. If *no_copy* is `True`, then *dictionary* will be wrapped instead of copied. Only set this if you are sure there will be no external references to the dictionary. N) isinstance collectionsabcMutableMapping_odictupdate_hash)selfrr r s zconstify..<s4!3#!c32K|]}t|ywrr4r6s rr9zconstify..>s0asXc]ar:T) r bytearraybytestupler Exceptionlistr-itemsr5r)r0cdictkvs rr5r51s!YQx!U 5 GH!T0a000!TGGIDAq{E!HE4  H 54!44 4 5s B**CC) collections.abcr typingrrdns._immutable_ctxrrMappingrr5r/rrrIsI ( $!;?? " "$! $!N   r