3 �f,5 � @ sd d dl mZ d dlmZmZmZmZ dd� Zdd� ZG dd� d�Z G d d � d e�Z G dd� d�Zd S )� )�Action)�ConfigParser�ParsingError�Error�DuplicateOptionErrorc C s t | �}|tkp|tkS )z@Return true if val is an instance of a known sequence type. )�type�list�tuple)�valZval_type� r �/usr/lib/python3.6/options.py�_is_seq s r c C s( | j � }|d krdS |d kr dS d S d S )N�true�on�yesT�false�off�noF)r r r )r r r )�lower)r Z_valr r r �str_to_bool s r c @ s� e Zd Zdd� Zdd� Zd dd �Zd d� Zdd � Zi fdd�Ze i fdd��Z e dd� �Zdd� Zdd� Z d!dd�Zd"dd�Zdd� ZdS )#� SoSOptionsc C s� dd� }t ||�r�t||�}t| |�}||�r8||� sP|sP|| jkr|t|� r|t| ||� |rn| jj|� q�| jj|� nt|�r�t| ||| � d S )Nc S s | dkp| d kS )N� r )r r r r �_unset"