o
    …>a÷  ã                   @   sD   G d d„ de ƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )	c                   @   s   e Zd ZdZ		ddd„ZdS )Ú	OSMObjecta  Mutable version of ``osmium.osm.OSMObject``. It exposes the following
       attributes ``id``, ``version``, ``visible``, ``changeset``, ``timestamp``,
       ``uid`` and ``tags``. Timestamps may be strings or datetime objects.
       Tags can be an osmium.osm.TagList, a dict-like object
       or a list of tuples, where each tuple contains a (key value) string pair.

       If the ``base`` parameter is given in the constructor, then the object
       will be initialised first from the attributes of this base object.
    Nc
           
      C   sà   |d u r|| _ || _|| _|| _|| _|| _|| _|	| _d S |d u r%|j n|| _ |d u r/|jn|| _|d u r9|jn|| _|d u rC|jn|| _|d u rM|jn|| _|d u rW|jn|| _|d u ra|jn|| _|	d u rk|jn|	| _d S )N)ÚidÚversionÚvisibleÚ	changesetÚ	timestampÚuidÚtagsÚuser)
ÚselfÚbaser   r   r   r   r   r   r   r	   © r   ú4/usr/lib/python3/dist-packages/osmium/osm/mutable.pyÚ__init__   s"   
zOSMObject.__init__)	NNNNNNNNN©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r      s
    
ÿr   c                   @   ó   e Zd ZdZddd„ZdS )ÚNodezëThe mutable version of ``osmium.osm.Node``. It inherits all attributes
       from osmium.osm.mutable.OSMObject and adds a `location` attribute. This
       may either be an `osmium.osm.Location` or a tuple of lon/lat coordinates.
    Nc                 K   ó@   t j| fd|i|¤Ž |d u r|| _d S |d ur|n|j| _d S ©Nr   )r   r   Úlocation)r
   r   r   Úattrsr   r   r   r   (   ó   
zNode.__init__©NNr   r   r   r   r   r   "   s    r   c                   @   r   )ÚWaya  The mutable version of ``osmium.osm.Way``. It inherits all attributes
       from osmium.osm.mutable.OSMObject and adds a `nodes` attribute. This may
       either be and ``osmium.osm.NodeList`` or a list consisting of
       ``osmium.osm.NodeRef`` or simple node ids.
    Nc                 K   r   r   )r   r   Únodes)r
   r   r   r   r   r   r   r   7   r   zWay.__init__r   r   r   r   r   r   r   0   s    r   c                   @   r   )ÚRelationax  The mutable version of ``osmium.osm.Relation``. It inherits all attributes
       from osmium.osm.mutable.OSMObject and adds a `members` attribute. This
       may either be an ``osmium.osm.RelationMemberList`` or a list consisting
       of ``osmium.osm.RelationMember`` or tuples of (type, id, role). The
       member type should be a single character 'n', 'w' or 'r'.
    Nc                 K   r   r   )r   r   Úmembers)r
   r   r   r   r   r   r   r   F   r   zRelation.__init__r   r   r   r   r   r   r   >   s    r   N)Úobjectr   r   r   r   r   r   r   r   Ú<module>   s    !