o
    ɶdn                     @   s8   d dl mZmZmZ d dlmZ eG dd deZdS )    )formatted_flat_dictNONE_SENTINEL#value_allowed_none_or_none_sentinel)init_model_state_from_kwargsc                   @   sj  e Zd ZdZdZdZdZdZdZdZ	dd	 Z
ed
d Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd  Zejd!d  Zed"d# Zejd$d# Zed%d& Zejd'd& Zed(d) Zejd*d) Zed+d, Zejd-d, Zed.d/ Zejd0d/ Zed1d2 Zejd3d2 Zed4d5 Zejd6d5 Zed7d8 Zejd9d8 Zed:d; Zejd<d; Zed=d> Zejd?d> Zed@dA ZejdBdA ZedCdD Z e jdEdD Z edFdG Z!e!jdHdG Z!dIdJ Z"dKdL Z#dMdN Z$dOS )PVulnerabilityAudita  
    A Vulnerability Audit associates the Application Dependencies of a project with their associated Vulnerabilities.
    Each Vulnerability is associated with a score (Common Vulnerability Scoring System V2 or V3).
    A vulnerable Application Dependency can be ignored based on the configuration of the Vulnerability Audit.
    maxObservedCvssV2Score, maxObservedCvssV3Score and vulnerableArtifactsCount do not take into account non-vulnerable Application Dependency.
    ACTIVECREATINGDELETEDDELETINGFAILEDMAVENc                 K   sv  i ddddddddddddd	d
ddddddddddddddddddddddddd| _ i dddddddddd dd!d	d	dd"dd#dd$dd%dd&dd'dddd(dd)ddd*d+d,d-d| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _	d.| _
d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.| _d.S )/a  
        Initializes a new VulnerabilityAudit object with values from keyword arguments.
        The following keyword arguments are supported (corresponding to the getters/setters of this class):

        :param id:
            The value to assign to the id property of this VulnerabilityAudit.
        :type id: str

        :param display_name:
            The value to assign to the display_name property of this VulnerabilityAudit.
        :type display_name: str

        :param knowledge_base_id:
            The value to assign to the knowledge_base_id property of this VulnerabilityAudit.
        :type knowledge_base_id: str

        :param time_created:
            The value to assign to the time_created property of this VulnerabilityAudit.
        :type time_created: datetime

        :param time_updated:
            The value to assign to the time_updated property of this VulnerabilityAudit.
        :type time_updated: datetime

        :param lifecycle_state:
            The value to assign to the lifecycle_state property of this VulnerabilityAudit.
            Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type lifecycle_state: str

        :param vulnerabilities:
            The value to assign to the vulnerabilities property of this VulnerabilityAudit.
        :type vulnerabilities: list[oci.adm.models.Vulnerability]

        :param max_observed_cvss_v2_score:
            The value to assign to the max_observed_cvss_v2_score property of this VulnerabilityAudit.
        :type max_observed_cvss_v2_score: float

        :param max_observed_cvss_v3_score:
            The value to assign to the max_observed_cvss_v3_score property of this VulnerabilityAudit.
        :type max_observed_cvss_v3_score: float

        :param max_observed_cvss_v2_score_with_ignored:
            The value to assign to the max_observed_cvss_v2_score_with_ignored property of this VulnerabilityAudit.
        :type max_observed_cvss_v2_score_with_ignored: float

        :param max_observed_cvss_v3_score_with_ignored:
            The value to assign to the max_observed_cvss_v3_score_with_ignored property of this VulnerabilityAudit.
        :type max_observed_cvss_v3_score_with_ignored: float

        :param vulnerable_artifacts_count_with_ignored:
            The value to assign to the vulnerable_artifacts_count_with_ignored property of this VulnerabilityAudit.
        :type vulnerable_artifacts_count_with_ignored: int

        :param vulnerable_artifacts_count:
            The value to assign to the vulnerable_artifacts_count property of this VulnerabilityAudit.
        :type vulnerable_artifacts_count: int

        :param configuration:
            The value to assign to the configuration property of this VulnerabilityAudit.
        :type configuration: oci.adm.models.VulnerabilityAuditConfiguration

        :param is_success:
            The value to assign to the is_success property of this VulnerabilityAudit.
        :type is_success: bool

        :param build_type:
            The value to assign to the build_type property of this VulnerabilityAudit.
            Allowed values for this property are: "MAVEN", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type build_type: str

        :param source:
            The value to assign to the source property of this VulnerabilityAudit.
        :type source: oci.adm.models.VulnerabilityAuditSource

        :param compartment_id:
            The value to assign to the compartment_id property of this VulnerabilityAudit.
        :type compartment_id: str

        :param freeform_tags:
            The value to assign to the freeform_tags property of this VulnerabilityAudit.
        :type freeform_tags: dict(str, str)

        :param defined_tags:
            The value to assign to the defined_tags property of this VulnerabilityAudit.
        :type defined_tags: dict(str, dict(str, object))

        :param system_tags:
            The value to assign to the system_tags property of this VulnerabilityAudit.
        :type system_tags: dict(str, dict(str, object))

        idstrdisplay_nameknowledge_base_idtime_createddatetimetime_updatedlifecycle_statevulnerabilitieszlist[Vulnerability]max_observed_cvss_v2_scorefloatmax_observed_cvss_v3_score'max_observed_cvss_v2_score_with_ignored'max_observed_cvss_v3_score_with_ignored'vulnerable_artifacts_count_with_ignoredintvulnerable_artifacts_countconfigurationZVulnerabilityAuditConfiguration
is_successbool
build_typesourceZVulnerabilityAuditSourcezdict(str, str)zdict(str, dict(str, object)))compartment_idfreeform_tagsdefined_tagssystem_tagsZdisplayNameZknowledgeBaseIdZtimeCreatedZtimeUpdatedZlifecycleStateZmaxObservedCvssV2ScoreZmaxObservedCvssV3ScoreZ!maxObservedCvssV2ScoreWithIgnoredZ!maxObservedCvssV3ScoreWithIgnoredZ#vulnerableArtifactsCountWithIgnoredZvulnerableArtifactsCountZ	isSuccessZ	buildTypeZcompartmentIdZfreeformTagsZdefinedTagsZ
systemTagsN)Zswagger_typesZattribute_map_id_display_name_knowledge_base_id_time_created_time_updated_lifecycle_state_vulnerabilities_max_observed_cvss_v2_score_max_observed_cvss_v3_score(_max_observed_cvss_v2_score_with_ignored(_max_observed_cvss_v3_score_with_ignored(_vulnerable_artifacts_count_with_ignored_vulnerable_artifacts_count_configuration_is_success_build_type_source_compartment_id_freeform_tags_defined_tags_system_tags)selfkwargs r>   Fusr/lib/python3.10/site-packages/oci/adm/models/vulnerability_audit.py__init__-   s   ^	

	


zVulnerabilityAudit.__init__c                 C      | j S )a0  
        **[Required]** Gets the id of this VulnerabilityAudit.
        The Oracle Cloud identifier (`OCID`__) of the Vulnerability Audit.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm


        :return: The id of this VulnerabilityAudit.
        :rtype: str
        r'   r<   r>   r>   r?   r         zVulnerabilityAudit.idc                 C   
   || _ dS )a"  
        Sets the id of this VulnerabilityAudit.
        The Oracle Cloud identifier (`OCID`__) of the Vulnerability Audit.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm


        :param id: The id of this VulnerabilityAudit.
        :type: str
        NrB   )r<   r   r>   r>   r?   r         
c                 C   rA   )z
        Gets the display_name of this VulnerabilityAudit.
        The name of the Vulnerability Audit.


        :return: The display_name of this VulnerabilityAudit.
        :rtype: str
        r(   rC   r>   r>   r?   r         
zVulnerabilityAudit.display_namec                 C   rE   )z
        Sets the display_name of this VulnerabilityAudit.
        The name of the Vulnerability Audit.


        :param display_name: The display_name of this VulnerabilityAudit.
        :type: str
        NrG   )r<   r   r>   r>   r?   r         

c                 C   rA   )aI  
        **[Required]** Gets the knowledge_base_id of this VulnerabilityAudit.
        The Oracle Cloud identifier (`OCID`__) of the Knowledge Base.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm


        :return: The knowledge_base_id of this VulnerabilityAudit.
        :rtype: str
        r)   rC   r>   r>   r?   r     rD   z$VulnerabilityAudit.knowledge_base_idc                 C   rE   )aJ  
        Sets the knowledge_base_id of this VulnerabilityAudit.
        The Oracle Cloud identifier (`OCID`__) of the Knowledge Base.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm


        :param knowledge_base_id: The knowledge_base_id of this VulnerabilityAudit.
        :type: str
        NrJ   )r<   r   r>   r>   r?   r     rF   c                 C   rA   )aI  
        **[Required]** Gets the time_created of this VulnerabilityAudit.
        The creation date and time of the Vulnerability Audit (formatted according to `RFC3339`__).

        __ https://datatracker.ietf.org/doc/html/rfc3339


        :return: The time_created of this VulnerabilityAudit.
        :rtype: datetime
        r*   rC   r>   r>   r?   r   !  rD   zVulnerabilityAudit.time_createdc                 C   rE   )aE  
        Sets the time_created of this VulnerabilityAudit.
        The creation date and time of the Vulnerability Audit (formatted according to `RFC3339`__).

        __ https://datatracker.ietf.org/doc/html/rfc3339


        :param time_created: The time_created of this VulnerabilityAudit.
        :type: datetime
        NrK   )r<   r   r>   r>   r?   r   /  rF   c                 C   rA   )aG  
        **[Required]** Gets the time_updated of this VulnerabilityAudit.
        The update date and time of the Vulnerability Audit (formatted according to `RFC3339`__).

        __ https://datatracker.ietf.org/doc/html/rfc3339


        :return: The time_updated of this VulnerabilityAudit.
        :rtype: datetime
        r+   rC   r>   r>   r?   r   =  rD   zVulnerabilityAudit.time_updatedc                 C   rE   )aC  
        Sets the time_updated of this VulnerabilityAudit.
        The update date and time of the Vulnerability Audit (formatted according to `RFC3339`__).

        __ https://datatracker.ietf.org/doc/html/rfc3339


        :param time_updated: The time_updated of this VulnerabilityAudit.
        :type: datetime
        NrL   )r<   r   r>   r>   r?   r   K  rF   c                 C   rA   )a  
        **[Required]** Gets the lifecycle_state of this VulnerabilityAudit.
        The current lifecycle state of the Vulnerability Audit.

        Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The lifecycle_state of this VulnerabilityAudit.
        :rtype: str
        )r,   rC   r>   r>   r?   r   Y     z"VulnerabilityAudit.lifecycle_statec                 C   s    g d}t ||sd}|| _dS )z
        Sets the lifecycle_state of this VulnerabilityAudit.
        The current lifecycle state of the Vulnerability Audit.


        :param lifecycle_state: The lifecycle_state of this VulnerabilityAudit.
        :type: str
        )r   r   r	   r
   r   UNKNOWN_ENUM_VALUEN)r   r,   )r<   r   allowed_valuesr>   r>   r?   r   h  s   


c                 C   rA   )a  
        **[Required]** Gets the vulnerabilities of this VulnerabilityAudit.
        List of vulnerabilities found in the Vulnerability Audit.


        :return: The vulnerabilities of this VulnerabilityAudit.
        :rtype: list[oci.adm.models.Vulnerability]
        r-   rC   r>   r>   r?   r   w  rH   z"VulnerabilityAudit.vulnerabilitiesc                 C   rE   )a  
        Sets the vulnerabilities of this VulnerabilityAudit.
        List of vulnerabilities found in the Vulnerability Audit.


        :param vulnerabilities: The vulnerabilities of this VulnerabilityAudit.
        :type: list[oci.adm.models.Vulnerability]
        NrP   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )aF  
        **[Required]** Gets the max_observed_cvss_v2_score of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 2 score observed for non-ignored vulnerable Application Dependencies.


        :return: The max_observed_cvss_v2_score of this VulnerabilityAudit.
        :rtype: float
        r.   rC   r>   r>   r?   r     rH   z-VulnerabilityAudit.max_observed_cvss_v2_scorec                 C   rE   )aP  
        Sets the max_observed_cvss_v2_score of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 2 score observed for non-ignored vulnerable Application Dependencies.


        :param max_observed_cvss_v2_score: The max_observed_cvss_v2_score of this VulnerabilityAudit.
        :type: float
        NrQ   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )aF  
        **[Required]** Gets the max_observed_cvss_v3_score of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 3 score observed for non-ignored vulnerable Application Dependencies.


        :return: The max_observed_cvss_v3_score of this VulnerabilityAudit.
        :rtype: float
        r/   rC   r>   r>   r?   r     rH   z-VulnerabilityAudit.max_observed_cvss_v3_scorec                 C   rE   )aP  
        Sets the max_observed_cvss_v3_score of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 3 score observed for non-ignored vulnerable Application Dependencies.


        :param max_observed_cvss_v3_score: The max_observed_cvss_v3_score of this VulnerabilityAudit.
        :type: float
        NrR   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )ak  
        **[Required]** Gets the max_observed_cvss_v2_score_with_ignored of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 2 score observed for vulnerable Application Dependencies including ignored ones.


        :return: The max_observed_cvss_v2_score_with_ignored of this VulnerabilityAudit.
        :rtype: float
        r0   rC   r>   r>   r?   r     rH   z:VulnerabilityAudit.max_observed_cvss_v2_score_with_ignoredc                 C   rE   )a  
        Sets the max_observed_cvss_v2_score_with_ignored of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 2 score observed for vulnerable Application Dependencies including ignored ones.


        :param max_observed_cvss_v2_score_with_ignored: The max_observed_cvss_v2_score_with_ignored of this VulnerabilityAudit.
        :type: float
        NrS   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )ak  
        **[Required]** Gets the max_observed_cvss_v3_score_with_ignored of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 3 score observed for vulnerable Application Dependencies including ignored ones.


        :return: The max_observed_cvss_v3_score_with_ignored of this VulnerabilityAudit.
        :rtype: float
        r1   rC   r>   r>   r?   r     rH   z:VulnerabilityAudit.max_observed_cvss_v3_score_with_ignoredc                 C   rE   )a  
        Sets the max_observed_cvss_v3_score_with_ignored of this VulnerabilityAudit.
        Maximum Common Vulnerability Scoring System Version 3 score observed for vulnerable Application Dependencies including ignored ones.


        :param max_observed_cvss_v3_score_with_ignored: The max_observed_cvss_v3_score_with_ignored of this VulnerabilityAudit.
        :type: float
        NrT   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )a  
        **[Required]** Gets the vulnerable_artifacts_count_with_ignored of this VulnerabilityAudit.
        Count of all vulnerable Application Dependencies.


        :return: The vulnerable_artifacts_count_with_ignored of this VulnerabilityAudit.
        :rtype: int
        r2   rC   r>   r>   r?   r     rH   z:VulnerabilityAudit.vulnerable_artifacts_count_with_ignoredc                 C   rE   )a-  
        Sets the vulnerable_artifacts_count_with_ignored of this VulnerabilityAudit.
        Count of all vulnerable Application Dependencies.


        :param vulnerable_artifacts_count_with_ignored: The vulnerable_artifacts_count_with_ignored of this VulnerabilityAudit.
        :type: int
        NrU   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )a  
        **[Required]** Gets the vulnerable_artifacts_count of this VulnerabilityAudit.
        Count of non-ignored vulnerable Application Dependencies.


        :return: The vulnerable_artifacts_count of this VulnerabilityAudit.
        :rtype: int
        r3   rC   r>   r>   r?   r     rH   z-VulnerabilityAudit.vulnerable_artifacts_countc                 C   rE   )a  
        Sets the vulnerable_artifacts_count of this VulnerabilityAudit.
        Count of non-ignored vulnerable Application Dependencies.


        :param vulnerable_artifacts_count: The vulnerable_artifacts_count of this VulnerabilityAudit.
        :type: int
        NrV   )r<   r   r>   r>   r?   r     rI   c                 C   rA   )z
        Gets the configuration of this VulnerabilityAudit.

        :return: The configuration of this VulnerabilityAudit.
        :rtype: oci.adm.models.VulnerabilityAuditConfiguration
        r4   rC   r>   r>   r?   r        z VulnerabilityAudit.configurationc                 C   rE   )z
        Sets the configuration of this VulnerabilityAudit.

        :param configuration: The configuration of this VulnerabilityAudit.
        :type: oci.adm.models.VulnerabilityAuditConfiguration
        NrW   )r<   r   r>   r>   r?   r   )     
c                 C   rA   )a  
        Gets the is_success of this VulnerabilityAudit.
        Indicates if an audit succeeded according to the configuration. The value is `null` if the audit is in the `CREATING` state.


        :return: The is_success of this VulnerabilityAudit.
        :rtype: bool
        r5   rC   r>   r>   r?   r   3  rH   zVulnerabilityAudit.is_successc                 C   rE   )a"  
        Sets the is_success of this VulnerabilityAudit.
        Indicates if an audit succeeded according to the configuration. The value is `null` if the audit is in the `CREATING` state.


        :param is_success: The is_success of this VulnerabilityAudit.
        :type: bool
        NrZ   )r<   r   r>   r>   r?   r   ?  rI   c                 C   rA   )ar  
        **[Required]** Gets the build_type of this VulnerabilityAudit.
        The type of the build tool.

        Allowed values for this property are: "MAVEN", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The build_type of this VulnerabilityAudit.
        :rtype: str
        )r6   rC   r>   r>   r?   r!   K  rM   zVulnerabilityAudit.build_typec                 C   s   dg}t ||s
d}|| _dS )z
        Sets the build_type of this VulnerabilityAudit.
        The type of the build tool.


        :param build_type: The build_type of this VulnerabilityAudit.
        :type: str
        r   rN   N)r   r6   )r<   r!   rO   r>   r>   r?   r!   Z  s   


c                 C   rA   )z
        **[Required]** Gets the source of this VulnerabilityAudit.

        :return: The source of this VulnerabilityAudit.
        :rtype: oci.adm.models.VulnerabilityAuditSource
        r7   rC   r>   r>   r?   r"   i  rX   zVulnerabilityAudit.sourcec                 C   rE   )z
        Sets the source of this VulnerabilityAudit.

        :param source: The source of this VulnerabilityAudit.
        :type: oci.adm.models.VulnerabilityAuditSource
        Nr[   )r<   r"   r>   r>   r?   r"   s  rY   c                 C   rA   )ah  
        **[Required]** Gets the compartment_id of this VulnerabilityAudit.
        The Oracle Cloud identifier (`OCID`__) of the compartment associated with the Vulnerability Audit.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm


        :return: The compartment_id of this VulnerabilityAudit.
        :rtype: str
        r8   rC   r>   r>   r?   r#   }  rD   z!VulnerabilityAudit.compartment_idc                 C   rE   )af  
        Sets the compartment_id of this VulnerabilityAudit.
        The Oracle Cloud identifier (`OCID`__) of the compartment associated with the Vulnerability Audit.

        __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm


        :param compartment_id: The compartment_id of this VulnerabilityAudit.
        :type: str
        Nr\   )r<   r#   r>   r>   r?   r#     rF   c                 C   rA   )aK  
        Gets the freeform_tags of this VulnerabilityAudit.
        Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
        Example: `{"bar-key": "value"}`


        :return: The freeform_tags of this VulnerabilityAudit.
        :rtype: dict(str, str)
        r9   rC   r>   r>   r?   r$        z VulnerabilityAudit.freeform_tagsc                 C   rE   )aW  
        Sets the freeform_tags of this VulnerabilityAudit.
        Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
        Example: `{"bar-key": "value"}`


        :param freeform_tags: The freeform_tags of this VulnerabilityAudit.
        :type: dict(str, str)
        Nr]   )r<   r$   r>   r>   r?   r$        
c                 C   rA   )aE  
        Gets the defined_tags of this VulnerabilityAudit.
        Defined tags for this resource. Each key is predefined and scoped to a namespace.
        Example: `{"foo-namespace": {"bar-key": "value"}}`


        :return: The defined_tags of this VulnerabilityAudit.
        :rtype: dict(str, dict(str, object))
        r:   rC   r>   r>   r?   r%     r^   zVulnerabilityAudit.defined_tagsc                 C   rE   )aP  
        Sets the defined_tags of this VulnerabilityAudit.
        Defined tags for this resource. Each key is predefined and scoped to a namespace.
        Example: `{"foo-namespace": {"bar-key": "value"}}`


        :param defined_tags: The defined_tags of this VulnerabilityAudit.
        :type: dict(str, dict(str, object))
        Nr`   )r<   r%   r>   r>   r?   r%     r_   c                 C   rA   )aB  
        Gets the system_tags of this VulnerabilityAudit.
        Usage of system tag keys. These predefined keys are scoped to namespaces.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`


        :return: The system_tags of this VulnerabilityAudit.
        :rtype: dict(str, dict(str, object))
        r;   rC   r>   r>   r?   r&     r^   zVulnerabilityAudit.system_tagsc                 C   rE   )aL  
        Sets the system_tags of this VulnerabilityAudit.
        Usage of system tag keys. These predefined keys are scoped to namespaces.
        Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`


        :param system_tags: The system_tags of this VulnerabilityAudit.
        :type: dict(str, dict(str, object))
        Nra   )r<   r&   r>   r>   r?   r&     r_   c                 C   s   t | S N)r   rC   r>   r>   r?   __repr__  s   zVulnerabilityAudit.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__r<   otherr>   r>   r?   __eq__  s   zVulnerabilityAudit.__eq__c                 C   s
   | |k S rb   r>   re   r>   r>   r?   __ne__  s   
zVulnerabilityAudit.__ne__N)%__name__
__module____qualname____doc__ZLIFECYCLE_STATE_ACTIVEZLIFECYCLE_STATE_CREATINGZLIFECYCLE_STATE_DELETEDZLIFECYCLE_STATE_DELETINGZLIFECYCLE_STATE_FAILEDZBUILD_TYPE_MAVENr@   propertyr   setterr   r   r   r   r   r   r   r   r   r   r   r   r   r   r!   r"   r#   r$   r%   r&   rc   rg   rh   r>   r>   r>   r?   r      s    	 %


























	
	




	
	







r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   r>   r>   r>   r?   <module>   s   