3 ,�Ww � @ sX d Z ddlZddlmZmZ G dd� de�Zdd� Zdd � Zd d� Z G dd � d e�Z dS )zAdapter declarations � N)�CLASS_TYPES�_BLANKc @ s e Zd Zdd� Zdd� ZdS )�adapterc G s || _ d S )N)� interfaces)�selfr � r �"/usr/lib/python3.6/_declaration.py�__init__ s zadapter.__init__c C s$ t |t�rt| j�|_n| j|_|S )N)� isinstancer � _adapts_descrr �__component_adapts__)r �obr r r �__call__ s zadapter.__call__N)�__name__� __module__�__qualname__r r r r r r r s r c G sJ t jd�}|j}||jks"d|kr*td��d|kr:td��t| �|d<