�~mZ`6 � @ st d d l m Z d d l m Z d d l Z d d l m Z m Z e � Z Gd d � d e � Z e Z d d � Z e d d g � a Gd d � d � Z Gd d � d � Z Gd d � d e e � Z Gd d � d e � Z Gd d � d e e � Z Gd d � d e � Z Gd d � d � Z Gd d � d e e j � Z Gd d � d e e j � Z Gd d � d e e j � Z d S)� )�array)�abcN� )�MultiMapping�MutableMultiMappingc @ sC e Z d Z d Z d Z d e j � d d d � Z d d � Z d S) �istrzCase insensitive str.T� �strictc C sS t | d d � r | St | � t k r+ n t | � } | j � } t j | | � S)N�__is_istr__F)�getattr�type�str�title�__new__)�cls�val�encoding�errors� r �/_multidict_py.pyr s zistr.__new__c C s | S)Nr )�selfr r r r s z istr.titleN) �__name__� __module__�__qualname__�__doc__r �sys�getdefaultencodingr r r r r r r s r c C s% t | t � s t d � � | j j S)Nz&Parameter should be multidict or proxy)� isinstance�_Base� TypeError�_impl�_version)Zmdr r r � getversion$ s r"