ó
/<õ\c           @` sF   d  d l  m Z m Z m Z d  d l m Z d e f d „  ƒ  YZ d S(   i    (   t   absolute_importt   divisiont   print_function(   t   utilst   ObjectIdentifierc           B` sS   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z e d „  ƒ Z e	 j
 d ƒ Z RS(   c         C` sû   | |  _  |  j  j d ƒ } g  } xO | D]G } y | j t | d ƒ ƒ Wq( t k
 rn t d |  j  ƒ ‚ q( Xq( Wt | ƒ d k  r› t d |  j  ƒ ‚ n  | d d k rÁ t d |  j  ƒ ‚ n  | d d k  r÷ | d d k r÷ t d	 |  j  ƒ ‚ n  d  S(
   Nt   .i    s%   Malformed OID: %s (non-integer nodes)i   s0   Malformed OID: %s (insufficient number of nodes)s2   Malformed OID: %s (first node outside valid range)i   i(   s3   Malformed OID: %s (second node outside valid range)(   t   _dotted_stringt   splitt   appendt   intt
   ValueErrort   len(   t   selft   dotted_stringt   nodest   intnodest   node(    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyt   __init__   s,    	 c         C` s#   t  | t ƒ s t S|  j | j k S(   N(   t
   isinstanceR   t   NotImplementedR   (   R   t   other(    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyt   __eq__+   s    c         C` s   |  | k S(   N(    (   R   R   (    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyt   __ne__1   s    c         C` s   d j  |  j |  j ƒ S(   Ns#   <ObjectIdentifier(oid={}, name={})>(   t   formatR   t   _name(   R   (    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyt   __repr__4   s    c         C` s   t  |  j ƒ S(   N(   t   hashR   (   R   (    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyt   __hash__:   s    c         C` s    d d l  m } | j |  d ƒ S(   Ni    (   t
   _OID_NAMESs   Unknown OID(   t   cryptography.x509.oidR   t   get(   R   R   (    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyR   =   s    R   (   t   __name__t
   __module__R   R   R   R   R   t   propertyR   R   t   read_only_propertyR   (    (    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyR   
   s   	 				N(   t
   __future__R    R   R   t   cryptographyR   t   objectR   (    (    (    s7   lib/python2.7/site-packages/cryptography/hazmat/_oid.pyt   <module>   s   