a ٓf @sddlmZzddlmZWnBey^zddlmZWneyXddlmZYn0Yn0eZGdddeZ Gddde Z dd e j De _ Gd d d e Zd d ej De_ d S))RLock)Mapping) DictMixinc@s<eZdZdZdZddZddZddZd d Zd d Z dS) LazyDictz"Dictionary populated on first use.NcCsJ|jdur.LazyListNrrrrrrrr[srcsfdd}|S)Ncsntz>tdkr.lazy.._lazyrrLrMrrJrKrLrlazy`s zLazyList.__new__..lazy)rCrDsetattr)rJrKrQrLnew_listrrOr__new__Ts zLazyList.__new__)NrrrrrDrTrrrrrGs rcCsg|]}tt|r|qSr)hasattrrC.0proprrr vrZc@seZdZdZdZdddZdS)LazySetzSet populated on first use.)0rr r!r"r#r$r%r&r'r(r)r*rrr:rr;r<r__sub____and____xor____or____rsub____rand____rxor____ror____isub____iand____ixor____ior__addclearcopy differencedifference_updatediscard intersectionintersection_update isdisjointissubset issupersetr0r1symmetric_differencesymmetric_difference_updateunionupdateNcsZdurtSGdddtgfdd}jD]}t|||q:}|S)Nc@s eZdZdS)z LazySet.__new__..LazySetNrArrrrr\sr\csfdd}|S)NcsxtzHtdkrFD]}t||qjD]}t|q6Wtn t0t t|g|Ri|SrB) rr rr0setrirDrEr rF)rrGrHirI)r\rJrKrLrrrMs   z,LazySet.__new__..lazy.._lazyrrNr\rJrKrPrrQs zLazySet.__new__..lazy)rxrDrR)rJrKrQrLnew_setrrzrrTs zLazySet.__new__)NrUrrrrr\ysr\cCsg|]}tt|r|qSr)rVrxrWrrrrZr[N) threadingrcollections.abcrr ImportErrorUserDict collectionsrrrCrrDrxr\rrrrs   7/3