+
    Zi                       ^ RI Ht ^ RIHtHtHtHtHtHt ^ RI	H
t
 ^ RIHt ]'       d   ^ RIHt ^ RIHt R R ltR	 R
 ltR R ltR R ltR R ltR R ltR R ltR R lt] ! R R]]]3,          4      4       tR# )    )annotations)TYPE_CHECKINGAnyDictMappingUnioncast)DATA_LIB_KEY)serde)Type)	Converterc                    V ^8  d   QhRRRR/# )   valueMapping[str, Any]returnLib )formats   "5/usr/lib/python3/dist-packages/ufoLib2/objects/lib.py__annotate__r      s     ; ;) ;c ;    c                H    \        V \        4      '       d   V # \        V 4      # N)
isinstancer   r   s   &r   _convert_Libr      s    uc**5:E
:r   c                    V ^8  d   QhRRRR/# r   selfr   r   r   r   )r   s   "r   r   r      s        3  3  r   c                6    \        \        V P                  4      # r   )r	   r   _libr    s   &r   _get_libr$      s    TYYr   c               $    V ^8  d   QhRRRRRR/# r   r    r   r   r   r   Noner   )r   s   "r   r   r   #   s"     $ $3 $0 $T $r   c                &    \        V4      V n        R # r   )r   r"   r    r   s   &&r   _set_libr*   #   s    U#DIr   c                    V ^8  d   QhRRRR/# r   r   )r   s   "r   r   r   '   s     $ $s $s $r   c                6    \        \        V P                  4      # r   )r	   r   _tempLibr#   s   &r   _get_tempLibr.   '   s    T]]##r   c               $    V ^8  d   QhRRRRRR/# r&   r   )r   s   "r   r   r   +   s"     ( (s (#4 ( (r   c                &    \        V4      V n        R # r   )r   r-   r)   s   &&r   _set_tempLibr1   +   s     'DMr   c                    V ^8  d   QhRRRR/# )r   r   r   r   boolr   )r   s   "r   r   r   /   s        r   c                    \        V \        4      ;'       d+    R V 9   ;'       d    V R ,          \        8H  ;'       d    RV 9   # typedata)r   r   r
   r   s   &r   is_data_dictr8   /   sK    5'" 	 	eO	 	&M\)	 	 eO	r   c               $    V ^8  d   QhRRRRRR/# )r   r   r   	converterr   r   r   )r   s   "r   r   r   8   s!      S Y 3 r   c           	     p   \        V \        4      '       d   R \        RVP                  V 4      /# \        V \        \
        34      '       d   V  Uu. uF  p\        W!4      NK  	  up# \        V \        4      '       d/   V P                  4        UUu/ uF  w  r2V\        W!4      bK  	  upp# V # u upi u uppi r5   )	r   bytesr
   unstructurelisttuple_unstructure_datar   items)r   r:   vks   &&  r   r@   r@   8   s    %fi.C.CE.JKK	ED%=	)	)9>?A!!/??	E7	#	#?D{{}M}tq$Q22}MML @Ms   B-B2c          
     ,    V ^8  d   QhRRRRRRRRRR	/# )
r   keyzUnion[int, str]r   r   	containerr:   r   r   r'   r   )r   s   "r   r   r   B   s4     
< 
<	
<!$
<14
<AJ
<	
<r   c                T   \        V\        4      '       d#   \        V4       F  w  rE\        WEW4       K  	  R# \	        V4      '       d"   VP                  VR ,          \        4      W &   R# \        V\        4      '       d(   VP                  4        F  w  re\        WeW4       K  	  R# R# )r7   N)	r   r>   	enumerate_structure_data_inplacer8   	structurer<   r   rA   )rE   r   rF   r:   irB   rC   s   &&&&   r   rI   rI   B   s}     %e$DA#A%; %	e		",,U6]EB		E7	#	#KKMDA#A%; " 
$r   c                  8    ] tR t^OtR R lt]R R l4       tRtR# )r   c                    V ^8  d   QhRRRR/# )r   r:   r   r   zdict[str, Any]r   )r   s   "r   r   Lib.__annotate__Q   s     	 	i 	N 	r   c                	    VP                  R 4      p\        V\        4      '       d   \        V 4      # \        V\        4      '       g   \        \        V4      4      h\        W4      pV# )    )r=   r   r<   dictstrNotImplementedErrorr6   r@   )r    r:   testr7   s   &&  r   _unstructureLib._unstructureQ   sT    $$U+dE"":D#&&%d4j110Ar   c               (    V ^8  d   QhRRRRRRRR/# )	r   r7   r   clsz	Type[Lib]r:   r   r   r   r   )r   s   "r   r   rN   ]   s0        
	r   c                	`    V! V 4      pVP                  4        F  w  rE\        WEW24       K  	  V# r   )rA   rI   )r7   rX   r:   r    rC   rB   s   &&&   r   
_structureLib._structure\   s.     4yJJLDA#A$: !r   r   N)__name__
__module____qualname____firstlineno__rU   staticmethodrZ   __static_attributes__r   r   r   r   r   O   s    	  r   r   N)
__future__r   typingr   r   r   r   r   r	   ufoLib2.constantsr
   ufoLib2.serder   r   cattrsr   r   r$   r*   r.   r1   r8   r@   rI   rR   r   r   r   r   <module>rg      sh    " A A *  ;
 $$(
< $sCx.  r   