�
��e�d � � � d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z ddlm
Z
dd lmZ dd
lmZ ddlm
Z
ddlmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dgZ G d� d� Zd� Z G d� d� Z ee
� G d� d� � Zd� Zd� Zd� Z d� Z! ee
� G d� d � � Z" ee � G d!� d"� � Z# ee� G d#� d$e#� � Z$ ee� G d%� d&e#� � Z%y'# e$ r d� ZY ��w xY w)(zBasic components support
� )�defaultdict)�notifyc � � y �N� )�arg�kws �9/usr/lib/python3/dist-packages/zope/interface/registry.pyr r � � � )�ISpecification)�ComponentLookupError)�IAdapterRegistration)�IComponents)�IHandlerRegistration)� ISubscriptionAdapterRegistration)�IUtilityRegistration)�
Registered)�Unregistered)� Interface)�
implementedBy)�implementer)�implementer_only)�
providedBy)�AdapterRegistry�
Componentsc �$ � e Zd Zd� Zd� Zd� Zd� Zy)�_UnhashableComponentCounterc �T � |j � D �cg c] }|�� c}| _ y c c}w r )�items�_data)�self� otherdict�items r
�__init__z$_UnhashableComponentCounter.__init__2 s � �'0���'8�9�t�d�9��
��9s � %c �> |