# coding: utf-8
try:
    from inspect import getfullargspec
except ImportError:
    from inspect import getargspec as getfullargspec
import pprint
import re  # noqa: F401
import six

from aoc.configuration import Configuration


class VirtualPrivateCloudExternalSubnetGroupWhereInput(object):
    """NOTE: This class is auto generated by OpenAPI Generator.
    Ref: https://openapi-generator.tech

    Do not edit the class manually.
    """

    """
    Attributes:
      openapi_types (dict): The key is attribute name
                            and the value is attribute type.
      attribute_map (dict): The key is attribute name
                            and the value is json key in definition.
    """
    openapi_types = {
        '_and': 'list[VirtualPrivateCloudExternalSubnetGroupWhereInput]',
        '_not': 'list[VirtualPrivateCloudExternalSubnetGroupWhereInput]',
        '_or': 'list[VirtualPrivateCloudExternalSubnetGroupWhereInput]',
        'description': 'str',
        'description_contains': 'str',
        'description_ends_with': 'str',
        'description_gt': 'str',
        'description_gte': 'str',
        'description_in': 'list[str]',
        'description_lt': 'str',
        'description_lte': 'str',
        'description_not': 'str',
        'description_not_contains': 'str',
        'description_not_ends_with': 'str',
        'description_not_in': 'list[str]',
        'description_not_starts_with': 'str',
        'description_starts_with': 'str',
        'edge_gateway_group': 'VirtualPrivateCloudEdgeGatewayGroupWhereInput',
        'entity_async_status': 'EntityAsyncStatus',
        'entity_async_status_in': 'list[EntityAsyncStatus]',
        'entity_async_status_not': 'EntityAsyncStatus',
        'entity_async_status_not_in': 'list[EntityAsyncStatus]',
        'exclusive': 'bool',
        'exclusive_not': 'bool',
        'floating_ips_every': 'VirtualPrivateCloudFloatingIpWhereInput',
        'floating_ips_none': 'VirtualPrivateCloudFloatingIpWhereInput',
        'floating_ips_some': 'VirtualPrivateCloudFloatingIpWhereInput',
        'id': 'str',
        'id_contains': 'str',
        'id_ends_with': 'str',
        'id_gt': 'str',
        'id_gte': 'str',
        'id_in': 'list[str]',
        'id_lt': 'str',
        'id_lte': 'str',
        'id_not': 'str',
        'id_not_contains': 'str',
        'id_not_ends_with': 'str',
        'id_not_in': 'list[str]',
        'id_not_starts_with': 'str',
        'id_starts_with': 'str',
        'local_id': 'str',
        'local_id_contains': 'str',
        'local_id_ends_with': 'str',
        'local_id_gt': 'str',
        'local_id_gte': 'str',
        'local_id_in': 'list[str]',
        'local_id_lt': 'str',
        'local_id_lte': 'str',
        'local_id_not': 'str',
        'local_id_not_contains': 'str',
        'local_id_not_ends_with': 'str',
        'local_id_not_in': 'list[str]',
        'local_id_not_starts_with': 'str',
        'local_id_starts_with': 'str',
        'name': 'str',
        'name_contains': 'str',
        'name_ends_with': 'str',
        'name_gt': 'str',
        'name_gte': 'str',
        'name_in': 'list[str]',
        'name_lt': 'str',
        'name_lte': 'str',
        'name_not': 'str',
        'name_not_contains': 'str',
        'name_not_ends_with': 'str',
        'name_not_in': 'list[str]',
        'name_not_starts_with': 'str',
        'name_starts_with': 'str',
        'nat_gateways_every': 'VirtualPrivateCloudNatGatewayWhereInput',
        'nat_gateways_none': 'VirtualPrivateCloudNatGatewayWhereInput',
        'nat_gateways_some': 'VirtualPrivateCloudNatGatewayWhereInput',
        'router_gateways_every': 'VirtualPrivateCloudRouterGatewayWhereInput',
        'router_gateways_none': 'VirtualPrivateCloudRouterGatewayWhereInput',
        'router_gateways_some': 'VirtualPrivateCloudRouterGatewayWhereInput',
        'shared_in_edge_gateway_group': 'bool',
        'shared_in_edge_gateway_group_not': 'bool',
        'vpc': 'VirtualPrivateCloudWhereInput'
    }

    attribute_map = {
        '_and': 'AND',
        '_not': 'NOT',
        '_or': 'OR',
        'description': 'description',
        'description_contains': 'description_contains',
        'description_ends_with': 'description_ends_with',
        'description_gt': 'description_gt',
        'description_gte': 'description_gte',
        'description_in': 'description_in',
        'description_lt': 'description_lt',
        'description_lte': 'description_lte',
        'description_not': 'description_not',
        'description_not_contains': 'description_not_contains',
        'description_not_ends_with': 'description_not_ends_with',
        'description_not_in': 'description_not_in',
        'description_not_starts_with': 'description_not_starts_with',
        'description_starts_with': 'description_starts_with',
        'edge_gateway_group': 'edge_gateway_group',
        'entity_async_status': 'entityAsyncStatus',
        'entity_async_status_in': 'entityAsyncStatus_in',
        'entity_async_status_not': 'entityAsyncStatus_not',
        'entity_async_status_not_in': 'entityAsyncStatus_not_in',
        'exclusive': 'exclusive',
        'exclusive_not': 'exclusive_not',
        'floating_ips_every': 'floating_ips_every',
        'floating_ips_none': 'floating_ips_none',
        'floating_ips_some': 'floating_ips_some',
        'id': 'id',
        'id_contains': 'id_contains',
        'id_ends_with': 'id_ends_with',
        'id_gt': 'id_gt',
        'id_gte': 'id_gte',
        'id_in': 'id_in',
        'id_lt': 'id_lt',
        'id_lte': 'id_lte',
        'id_not': 'id_not',
        'id_not_contains': 'id_not_contains',
        'id_not_ends_with': 'id_not_ends_with',
        'id_not_in': 'id_not_in',
        'id_not_starts_with': 'id_not_starts_with',
        'id_starts_with': 'id_starts_with',
        'local_id': 'local_id',
        'local_id_contains': 'local_id_contains',
        'local_id_ends_with': 'local_id_ends_with',
        'local_id_gt': 'local_id_gt',
        'local_id_gte': 'local_id_gte',
        'local_id_in': 'local_id_in',
        'local_id_lt': 'local_id_lt',
        'local_id_lte': 'local_id_lte',
        'local_id_not': 'local_id_not',
        'local_id_not_contains': 'local_id_not_contains',
        'local_id_not_ends_with': 'local_id_not_ends_with',
        'local_id_not_in': 'local_id_not_in',
        'local_id_not_starts_with': 'local_id_not_starts_with',
        'local_id_starts_with': 'local_id_starts_with',
        'name': 'name',
        'name_contains': 'name_contains',
        'name_ends_with': 'name_ends_with',
        'name_gt': 'name_gt',
        'name_gte': 'name_gte',
        'name_in': 'name_in',
        'name_lt': 'name_lt',
        'name_lte': 'name_lte',
        'name_not': 'name_not',
        'name_not_contains': 'name_not_contains',
        'name_not_ends_with': 'name_not_ends_with',
        'name_not_in': 'name_not_in',
        'name_not_starts_with': 'name_not_starts_with',
        'name_starts_with': 'name_starts_with',
        'nat_gateways_every': 'nat_gateways_every',
        'nat_gateways_none': 'nat_gateways_none',
        'nat_gateways_some': 'nat_gateways_some',
        'router_gateways_every': 'router_gateways_every',
        'router_gateways_none': 'router_gateways_none',
        'router_gateways_some': 'router_gateways_some',
        'shared_in_edge_gateway_group': 'shared_in_edge_gateway_group',
        'shared_in_edge_gateway_group_not': 'shared_in_edge_gateway_group_not',
        'vpc': 'vpc'
    }

    def __init__(self, **kwargs):  # noqa: E501
        """VirtualPrivateCloudExternalSubnetGroupWhereInput - a model defined in OpenAPI"""  # noqa: E501
        self.local_vars_configuration = kwargs.get("local_vars_configuration", Configuration.get_default_copy())

        self.__and = None
        self.__not = None
        self.__or = None
        self._description = None
        self._description_contains = None
        self._description_ends_with = None
        self._description_gt = None
        self._description_gte = None
        self._description_in = None
        self._description_lt = None
        self._description_lte = None
        self._description_not = None
        self._description_not_contains = None
        self._description_not_ends_with = None
        self._description_not_in = None
        self._description_not_starts_with = None
        self._description_starts_with = None
        self._edge_gateway_group = None
        self._entity_async_status = None
        self._entity_async_status_in = None
        self._entity_async_status_not = None
        self._entity_async_status_not_in = None
        self._exclusive = None
        self._exclusive_not = None
        self._floating_ips_every = None
        self._floating_ips_none = None
        self._floating_ips_some = None
        self._id = None
        self._id_contains = None
        self._id_ends_with = None
        self._id_gt = None
        self._id_gte = None
        self._id_in = None
        self._id_lt = None
        self._id_lte = None
        self._id_not = None
        self._id_not_contains = None
        self._id_not_ends_with = None
        self._id_not_in = None
        self._id_not_starts_with = None
        self._id_starts_with = None
        self._local_id = None
        self._local_id_contains = None
        self._local_id_ends_with = None
        self._local_id_gt = None
        self._local_id_gte = None
        self._local_id_in = None
        self._local_id_lt = None
        self._local_id_lte = None
        self._local_id_not = None
        self._local_id_not_contains = None
        self._local_id_not_ends_with = None
        self._local_id_not_in = None
        self._local_id_not_starts_with = None
        self._local_id_starts_with = None
        self._name = None
        self._name_contains = None
        self._name_ends_with = None
        self._name_gt = None
        self._name_gte = None
        self._name_in = None
        self._name_lt = None
        self._name_lte = None
        self._name_not = None
        self._name_not_contains = None
        self._name_not_ends_with = None
        self._name_not_in = None
        self._name_not_starts_with = None
        self._name_starts_with = None
        self._nat_gateways_every = None
        self._nat_gateways_none = None
        self._nat_gateways_some = None
        self._router_gateways_every = None
        self._router_gateways_none = None
        self._router_gateways_some = None
        self._shared_in_edge_gateway_group = None
        self._shared_in_edge_gateway_group_not = None
        self._vpc = None
        self.discriminator = None

        self._and = kwargs.get("_and", None)
        self._not = kwargs.get("_not", None)
        self._or = kwargs.get("_or", None)
        self.description = kwargs.get("description", None)
        self.description_contains = kwargs.get("description_contains", None)
        self.description_ends_with = kwargs.get("description_ends_with", None)
        self.description_gt = kwargs.get("description_gt", None)
        self.description_gte = kwargs.get("description_gte", None)
        self.description_in = kwargs.get("description_in", None)
        self.description_lt = kwargs.get("description_lt", None)
        self.description_lte = kwargs.get("description_lte", None)
        self.description_not = kwargs.get("description_not", None)
        self.description_not_contains = kwargs.get("description_not_contains", None)
        self.description_not_ends_with = kwargs.get("description_not_ends_with", None)
        self.description_not_in = kwargs.get("description_not_in", None)
        self.description_not_starts_with = kwargs.get("description_not_starts_with", None)
        self.description_starts_with = kwargs.get("description_starts_with", None)
        self.edge_gateway_group = kwargs.get("edge_gateway_group", None)
        self.entity_async_status = kwargs.get("entity_async_status", None)
        self.entity_async_status_in = kwargs.get("entity_async_status_in", None)
        self.entity_async_status_not = kwargs.get("entity_async_status_not", None)
        self.entity_async_status_not_in = kwargs.get("entity_async_status_not_in", None)
        self.exclusive = kwargs.get("exclusive", None)
        self.exclusive_not = kwargs.get("exclusive_not", None)
        self.floating_ips_every = kwargs.get("floating_ips_every", None)
        self.floating_ips_none = kwargs.get("floating_ips_none", None)
        self.floating_ips_some = kwargs.get("floating_ips_some", None)
        self.id = kwargs.get("id", None)
        self.id_contains = kwargs.get("id_contains", None)
        self.id_ends_with = kwargs.get("id_ends_with", None)
        self.id_gt = kwargs.get("id_gt", None)
        self.id_gte = kwargs.get("id_gte", None)
        self.id_in = kwargs.get("id_in", None)
        self.id_lt = kwargs.get("id_lt", None)
        self.id_lte = kwargs.get("id_lte", None)
        self.id_not = kwargs.get("id_not", None)
        self.id_not_contains = kwargs.get("id_not_contains", None)
        self.id_not_ends_with = kwargs.get("id_not_ends_with", None)
        self.id_not_in = kwargs.get("id_not_in", None)
        self.id_not_starts_with = kwargs.get("id_not_starts_with", None)
        self.id_starts_with = kwargs.get("id_starts_with", None)
        self.local_id = kwargs.get("local_id", None)
        self.local_id_contains = kwargs.get("local_id_contains", None)
        self.local_id_ends_with = kwargs.get("local_id_ends_with", None)
        self.local_id_gt = kwargs.get("local_id_gt", None)
        self.local_id_gte = kwargs.get("local_id_gte", None)
        self.local_id_in = kwargs.get("local_id_in", None)
        self.local_id_lt = kwargs.get("local_id_lt", None)
        self.local_id_lte = kwargs.get("local_id_lte", None)
        self.local_id_not = kwargs.get("local_id_not", None)
        self.local_id_not_contains = kwargs.get("local_id_not_contains", None)
        self.local_id_not_ends_with = kwargs.get("local_id_not_ends_with", None)
        self.local_id_not_in = kwargs.get("local_id_not_in", None)
        self.local_id_not_starts_with = kwargs.get("local_id_not_starts_with", None)
        self.local_id_starts_with = kwargs.get("local_id_starts_with", None)
        self.name = kwargs.get("name", None)
        self.name_contains = kwargs.get("name_contains", None)
        self.name_ends_with = kwargs.get("name_ends_with", None)
        self.name_gt = kwargs.get("name_gt", None)
        self.name_gte = kwargs.get("name_gte", None)
        self.name_in = kwargs.get("name_in", None)
        self.name_lt = kwargs.get("name_lt", None)
        self.name_lte = kwargs.get("name_lte", None)
        self.name_not = kwargs.get("name_not", None)
        self.name_not_contains = kwargs.get("name_not_contains", None)
        self.name_not_ends_with = kwargs.get("name_not_ends_with", None)
        self.name_not_in = kwargs.get("name_not_in", None)
        self.name_not_starts_with = kwargs.get("name_not_starts_with", None)
        self.name_starts_with = kwargs.get("name_starts_with", None)
        self.nat_gateways_every = kwargs.get("nat_gateways_every", None)
        self.nat_gateways_none = kwargs.get("nat_gateways_none", None)
        self.nat_gateways_some = kwargs.get("nat_gateways_some", None)
        self.router_gateways_every = kwargs.get("router_gateways_every", None)
        self.router_gateways_none = kwargs.get("router_gateways_none", None)
        self.router_gateways_some = kwargs.get("router_gateways_some", None)
        self.shared_in_edge_gateway_group = kwargs.get("shared_in_edge_gateway_group", None)
        self.shared_in_edge_gateway_group_not = kwargs.get("shared_in_edge_gateway_group_not", None)
        self.vpc = kwargs.get("vpc", None)

    @property
    def _and(self):
        """Gets the _and of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The _and of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[VirtualPrivateCloudExternalSubnetGroupWhereInput]
        """
        return self.__and

    @_and.setter
    def _and(self, _and):
        """Sets the _and of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param _and: The _and of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type _and: list[VirtualPrivateCloudExternalSubnetGroupWhereInput]
        """

        self.__and = _and

    @property
    def _not(self):
        """Gets the _not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The _not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[VirtualPrivateCloudExternalSubnetGroupWhereInput]
        """
        return self.__not

    @_not.setter
    def _not(self, _not):
        """Sets the _not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param _not: The _not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type _not: list[VirtualPrivateCloudExternalSubnetGroupWhereInput]
        """

        self.__not = _not

    @property
    def _or(self):
        """Gets the _or of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The _or of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[VirtualPrivateCloudExternalSubnetGroupWhereInput]
        """
        return self.__or

    @_or.setter
    def _or(self, _or):
        """Sets the _or of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param _or: The _or of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type _or: list[VirtualPrivateCloudExternalSubnetGroupWhereInput]
        """

        self.__or = _or

    @property
    def description(self):
        """Gets the description of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description

    @description.setter
    def description(self, description):
        """Sets the description of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description: The description of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description: str
        """

        self._description = description

    @property
    def description_contains(self):
        """Gets the description_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_contains

    @description_contains.setter
    def description_contains(self, description_contains):
        """Sets the description_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_contains: The description_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_contains: str
        """

        self._description_contains = description_contains

    @property
    def description_ends_with(self):
        """Gets the description_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_ends_with

    @description_ends_with.setter
    def description_ends_with(self, description_ends_with):
        """Sets the description_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_ends_with: The description_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_ends_with: str
        """

        self._description_ends_with = description_ends_with

    @property
    def description_gt(self):
        """Gets the description_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_gt

    @description_gt.setter
    def description_gt(self, description_gt):
        """Sets the description_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_gt: The description_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_gt: str
        """

        self._description_gt = description_gt

    @property
    def description_gte(self):
        """Gets the description_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_gte

    @description_gte.setter
    def description_gte(self, description_gte):
        """Sets the description_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_gte: The description_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_gte: str
        """

        self._description_gte = description_gte

    @property
    def description_in(self):
        """Gets the description_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._description_in

    @description_in.setter
    def description_in(self, description_in):
        """Sets the description_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_in: The description_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_in: list[str]
        """

        self._description_in = description_in

    @property
    def description_lt(self):
        """Gets the description_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_lt

    @description_lt.setter
    def description_lt(self, description_lt):
        """Sets the description_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_lt: The description_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_lt: str
        """

        self._description_lt = description_lt

    @property
    def description_lte(self):
        """Gets the description_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_lte

    @description_lte.setter
    def description_lte(self, description_lte):
        """Sets the description_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_lte: The description_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_lte: str
        """

        self._description_lte = description_lte

    @property
    def description_not(self):
        """Gets the description_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_not

    @description_not.setter
    def description_not(self, description_not):
        """Sets the description_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_not: The description_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_not: str
        """

        self._description_not = description_not

    @property
    def description_not_contains(self):
        """Gets the description_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_not_contains

    @description_not_contains.setter
    def description_not_contains(self, description_not_contains):
        """Sets the description_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_not_contains: The description_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_not_contains: str
        """

        self._description_not_contains = description_not_contains

    @property
    def description_not_ends_with(self):
        """Gets the description_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_not_ends_with

    @description_not_ends_with.setter
    def description_not_ends_with(self, description_not_ends_with):
        """Sets the description_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_not_ends_with: The description_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_not_ends_with: str
        """

        self._description_not_ends_with = description_not_ends_with

    @property
    def description_not_in(self):
        """Gets the description_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._description_not_in

    @description_not_in.setter
    def description_not_in(self, description_not_in):
        """Sets the description_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_not_in: The description_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_not_in: list[str]
        """

        self._description_not_in = description_not_in

    @property
    def description_not_starts_with(self):
        """Gets the description_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_not_starts_with

    @description_not_starts_with.setter
    def description_not_starts_with(self, description_not_starts_with):
        """Sets the description_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_not_starts_with: The description_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_not_starts_with: str
        """

        self._description_not_starts_with = description_not_starts_with

    @property
    def description_starts_with(self):
        """Gets the description_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The description_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._description_starts_with

    @description_starts_with.setter
    def description_starts_with(self, description_starts_with):
        """Sets the description_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param description_starts_with: The description_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type description_starts_with: str
        """

        self._description_starts_with = description_starts_with

    @property
    def edge_gateway_group(self):
        """Gets the edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudEdgeGatewayGroupWhereInput
        """
        return self._edge_gateway_group

    @edge_gateway_group.setter
    def edge_gateway_group(self, edge_gateway_group):
        """Sets the edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param edge_gateway_group: The edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type edge_gateway_group: VirtualPrivateCloudEdgeGatewayGroupWhereInput
        """

        self._edge_gateway_group = edge_gateway_group

    @property
    def entity_async_status(self):
        """Gets the entity_async_status of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The entity_async_status of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: EntityAsyncStatus
        """
        return self._entity_async_status

    @entity_async_status.setter
    def entity_async_status(self, entity_async_status):
        """Sets the entity_async_status of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param entity_async_status: The entity_async_status of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type entity_async_status: EntityAsyncStatus
        """

        self._entity_async_status = entity_async_status

    @property
    def entity_async_status_in(self):
        """Gets the entity_async_status_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The entity_async_status_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[EntityAsyncStatus]
        """
        return self._entity_async_status_in

    @entity_async_status_in.setter
    def entity_async_status_in(self, entity_async_status_in):
        """Sets the entity_async_status_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param entity_async_status_in: The entity_async_status_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type entity_async_status_in: list[EntityAsyncStatus]
        """

        self._entity_async_status_in = entity_async_status_in

    @property
    def entity_async_status_not(self):
        """Gets the entity_async_status_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The entity_async_status_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: EntityAsyncStatus
        """
        return self._entity_async_status_not

    @entity_async_status_not.setter
    def entity_async_status_not(self, entity_async_status_not):
        """Sets the entity_async_status_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param entity_async_status_not: The entity_async_status_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type entity_async_status_not: EntityAsyncStatus
        """

        self._entity_async_status_not = entity_async_status_not

    @property
    def entity_async_status_not_in(self):
        """Gets the entity_async_status_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The entity_async_status_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[EntityAsyncStatus]
        """
        return self._entity_async_status_not_in

    @entity_async_status_not_in.setter
    def entity_async_status_not_in(self, entity_async_status_not_in):
        """Sets the entity_async_status_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param entity_async_status_not_in: The entity_async_status_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type entity_async_status_not_in: list[EntityAsyncStatus]
        """

        self._entity_async_status_not_in = entity_async_status_not_in

    @property
    def exclusive(self):
        """Gets the exclusive of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The exclusive of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: bool
        """
        return self._exclusive

    @exclusive.setter
    def exclusive(self, exclusive):
        """Sets the exclusive of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param exclusive: The exclusive of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type exclusive: bool
        """

        self._exclusive = exclusive

    @property
    def exclusive_not(self):
        """Gets the exclusive_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The exclusive_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: bool
        """
        return self._exclusive_not

    @exclusive_not.setter
    def exclusive_not(self, exclusive_not):
        """Sets the exclusive_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param exclusive_not: The exclusive_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type exclusive_not: bool
        """

        self._exclusive_not = exclusive_not

    @property
    def floating_ips_every(self):
        """Gets the floating_ips_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The floating_ips_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudFloatingIpWhereInput
        """
        return self._floating_ips_every

    @floating_ips_every.setter
    def floating_ips_every(self, floating_ips_every):
        """Sets the floating_ips_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param floating_ips_every: The floating_ips_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type floating_ips_every: VirtualPrivateCloudFloatingIpWhereInput
        """

        self._floating_ips_every = floating_ips_every

    @property
    def floating_ips_none(self):
        """Gets the floating_ips_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The floating_ips_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudFloatingIpWhereInput
        """
        return self._floating_ips_none

    @floating_ips_none.setter
    def floating_ips_none(self, floating_ips_none):
        """Sets the floating_ips_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param floating_ips_none: The floating_ips_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type floating_ips_none: VirtualPrivateCloudFloatingIpWhereInput
        """

        self._floating_ips_none = floating_ips_none

    @property
    def floating_ips_some(self):
        """Gets the floating_ips_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The floating_ips_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudFloatingIpWhereInput
        """
        return self._floating_ips_some

    @floating_ips_some.setter
    def floating_ips_some(self, floating_ips_some):
        """Sets the floating_ips_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param floating_ips_some: The floating_ips_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type floating_ips_some: VirtualPrivateCloudFloatingIpWhereInput
        """

        self._floating_ips_some = floating_ips_some

    @property
    def id(self):
        """Gets the id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id

    @id.setter
    def id(self, id):
        """Sets the id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id: The id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id: str
        """

        self._id = id

    @property
    def id_contains(self):
        """Gets the id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_contains

    @id_contains.setter
    def id_contains(self, id_contains):
        """Sets the id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_contains: The id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_contains: str
        """

        self._id_contains = id_contains

    @property
    def id_ends_with(self):
        """Gets the id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_ends_with

    @id_ends_with.setter
    def id_ends_with(self, id_ends_with):
        """Sets the id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_ends_with: The id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_ends_with: str
        """

        self._id_ends_with = id_ends_with

    @property
    def id_gt(self):
        """Gets the id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_gt

    @id_gt.setter
    def id_gt(self, id_gt):
        """Sets the id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_gt: The id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_gt: str
        """

        self._id_gt = id_gt

    @property
    def id_gte(self):
        """Gets the id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_gte

    @id_gte.setter
    def id_gte(self, id_gte):
        """Sets the id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_gte: The id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_gte: str
        """

        self._id_gte = id_gte

    @property
    def id_in(self):
        """Gets the id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._id_in

    @id_in.setter
    def id_in(self, id_in):
        """Sets the id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_in: The id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_in: list[str]
        """

        self._id_in = id_in

    @property
    def id_lt(self):
        """Gets the id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_lt

    @id_lt.setter
    def id_lt(self, id_lt):
        """Sets the id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_lt: The id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_lt: str
        """

        self._id_lt = id_lt

    @property
    def id_lte(self):
        """Gets the id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_lte

    @id_lte.setter
    def id_lte(self, id_lte):
        """Sets the id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_lte: The id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_lte: str
        """

        self._id_lte = id_lte

    @property
    def id_not(self):
        """Gets the id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_not

    @id_not.setter
    def id_not(self, id_not):
        """Sets the id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_not: The id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_not: str
        """

        self._id_not = id_not

    @property
    def id_not_contains(self):
        """Gets the id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_not_contains

    @id_not_contains.setter
    def id_not_contains(self, id_not_contains):
        """Sets the id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_not_contains: The id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_not_contains: str
        """

        self._id_not_contains = id_not_contains

    @property
    def id_not_ends_with(self):
        """Gets the id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_not_ends_with

    @id_not_ends_with.setter
    def id_not_ends_with(self, id_not_ends_with):
        """Sets the id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_not_ends_with: The id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_not_ends_with: str
        """

        self._id_not_ends_with = id_not_ends_with

    @property
    def id_not_in(self):
        """Gets the id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._id_not_in

    @id_not_in.setter
    def id_not_in(self, id_not_in):
        """Sets the id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_not_in: The id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_not_in: list[str]
        """

        self._id_not_in = id_not_in

    @property
    def id_not_starts_with(self):
        """Gets the id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_not_starts_with

    @id_not_starts_with.setter
    def id_not_starts_with(self, id_not_starts_with):
        """Sets the id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_not_starts_with: The id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_not_starts_with: str
        """

        self._id_not_starts_with = id_not_starts_with

    @property
    def id_starts_with(self):
        """Gets the id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._id_starts_with

    @id_starts_with.setter
    def id_starts_with(self, id_starts_with):
        """Sets the id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param id_starts_with: The id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type id_starts_with: str
        """

        self._id_starts_with = id_starts_with

    @property
    def local_id(self):
        """Gets the local_id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id

    @local_id.setter
    def local_id(self, local_id):
        """Sets the local_id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id: The local_id of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id: str
        """

        self._local_id = local_id

    @property
    def local_id_contains(self):
        """Gets the local_id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_contains

    @local_id_contains.setter
    def local_id_contains(self, local_id_contains):
        """Sets the local_id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_contains: The local_id_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_contains: str
        """

        self._local_id_contains = local_id_contains

    @property
    def local_id_ends_with(self):
        """Gets the local_id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_ends_with

    @local_id_ends_with.setter
    def local_id_ends_with(self, local_id_ends_with):
        """Sets the local_id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_ends_with: The local_id_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_ends_with: str
        """

        self._local_id_ends_with = local_id_ends_with

    @property
    def local_id_gt(self):
        """Gets the local_id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_gt

    @local_id_gt.setter
    def local_id_gt(self, local_id_gt):
        """Sets the local_id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_gt: The local_id_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_gt: str
        """

        self._local_id_gt = local_id_gt

    @property
    def local_id_gte(self):
        """Gets the local_id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_gte

    @local_id_gte.setter
    def local_id_gte(self, local_id_gte):
        """Sets the local_id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_gte: The local_id_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_gte: str
        """

        self._local_id_gte = local_id_gte

    @property
    def local_id_in(self):
        """Gets the local_id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._local_id_in

    @local_id_in.setter
    def local_id_in(self, local_id_in):
        """Sets the local_id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_in: The local_id_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_in: list[str]
        """

        self._local_id_in = local_id_in

    @property
    def local_id_lt(self):
        """Gets the local_id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_lt

    @local_id_lt.setter
    def local_id_lt(self, local_id_lt):
        """Sets the local_id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_lt: The local_id_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_lt: str
        """

        self._local_id_lt = local_id_lt

    @property
    def local_id_lte(self):
        """Gets the local_id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_lte

    @local_id_lte.setter
    def local_id_lte(self, local_id_lte):
        """Sets the local_id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_lte: The local_id_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_lte: str
        """

        self._local_id_lte = local_id_lte

    @property
    def local_id_not(self):
        """Gets the local_id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_not

    @local_id_not.setter
    def local_id_not(self, local_id_not):
        """Sets the local_id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_not: The local_id_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_not: str
        """

        self._local_id_not = local_id_not

    @property
    def local_id_not_contains(self):
        """Gets the local_id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_not_contains

    @local_id_not_contains.setter
    def local_id_not_contains(self, local_id_not_contains):
        """Sets the local_id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_not_contains: The local_id_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_not_contains: str
        """

        self._local_id_not_contains = local_id_not_contains

    @property
    def local_id_not_ends_with(self):
        """Gets the local_id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_not_ends_with

    @local_id_not_ends_with.setter
    def local_id_not_ends_with(self, local_id_not_ends_with):
        """Sets the local_id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_not_ends_with: The local_id_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_not_ends_with: str
        """

        self._local_id_not_ends_with = local_id_not_ends_with

    @property
    def local_id_not_in(self):
        """Gets the local_id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._local_id_not_in

    @local_id_not_in.setter
    def local_id_not_in(self, local_id_not_in):
        """Sets the local_id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_not_in: The local_id_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_not_in: list[str]
        """

        self._local_id_not_in = local_id_not_in

    @property
    def local_id_not_starts_with(self):
        """Gets the local_id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_not_starts_with

    @local_id_not_starts_with.setter
    def local_id_not_starts_with(self, local_id_not_starts_with):
        """Sets the local_id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_not_starts_with: The local_id_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_not_starts_with: str
        """

        self._local_id_not_starts_with = local_id_not_starts_with

    @property
    def local_id_starts_with(self):
        """Gets the local_id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The local_id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._local_id_starts_with

    @local_id_starts_with.setter
    def local_id_starts_with(self, local_id_starts_with):
        """Sets the local_id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param local_id_starts_with: The local_id_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type local_id_starts_with: str
        """

        self._local_id_starts_with = local_id_starts_with

    @property
    def name(self):
        """Gets the name of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name

    @name.setter
    def name(self, name):
        """Sets the name of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name: The name of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name: str
        """

        self._name = name

    @property
    def name_contains(self):
        """Gets the name_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_contains

    @name_contains.setter
    def name_contains(self, name_contains):
        """Sets the name_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_contains: The name_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_contains: str
        """

        self._name_contains = name_contains

    @property
    def name_ends_with(self):
        """Gets the name_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_ends_with

    @name_ends_with.setter
    def name_ends_with(self, name_ends_with):
        """Sets the name_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_ends_with: The name_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_ends_with: str
        """

        self._name_ends_with = name_ends_with

    @property
    def name_gt(self):
        """Gets the name_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_gt

    @name_gt.setter
    def name_gt(self, name_gt):
        """Sets the name_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_gt: The name_gt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_gt: str
        """

        self._name_gt = name_gt

    @property
    def name_gte(self):
        """Gets the name_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_gte

    @name_gte.setter
    def name_gte(self, name_gte):
        """Sets the name_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_gte: The name_gte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_gte: str
        """

        self._name_gte = name_gte

    @property
    def name_in(self):
        """Gets the name_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._name_in

    @name_in.setter
    def name_in(self, name_in):
        """Sets the name_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_in: The name_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_in: list[str]
        """

        self._name_in = name_in

    @property
    def name_lt(self):
        """Gets the name_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_lt

    @name_lt.setter
    def name_lt(self, name_lt):
        """Sets the name_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_lt: The name_lt of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_lt: str
        """

        self._name_lt = name_lt

    @property
    def name_lte(self):
        """Gets the name_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_lte

    @name_lte.setter
    def name_lte(self, name_lte):
        """Sets the name_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_lte: The name_lte of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_lte: str
        """

        self._name_lte = name_lte

    @property
    def name_not(self):
        """Gets the name_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_not

    @name_not.setter
    def name_not(self, name_not):
        """Sets the name_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_not: The name_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_not: str
        """

        self._name_not = name_not

    @property
    def name_not_contains(self):
        """Gets the name_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_not_contains

    @name_not_contains.setter
    def name_not_contains(self, name_not_contains):
        """Sets the name_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_not_contains: The name_not_contains of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_not_contains: str
        """

        self._name_not_contains = name_not_contains

    @property
    def name_not_ends_with(self):
        """Gets the name_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_not_ends_with

    @name_not_ends_with.setter
    def name_not_ends_with(self, name_not_ends_with):
        """Sets the name_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_not_ends_with: The name_not_ends_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_not_ends_with: str
        """

        self._name_not_ends_with = name_not_ends_with

    @property
    def name_not_in(self):
        """Gets the name_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._name_not_in

    @name_not_in.setter
    def name_not_in(self, name_not_in):
        """Sets the name_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_not_in: The name_not_in of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_not_in: list[str]
        """

        self._name_not_in = name_not_in

    @property
    def name_not_starts_with(self):
        """Gets the name_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_not_starts_with

    @name_not_starts_with.setter
    def name_not_starts_with(self, name_not_starts_with):
        """Sets the name_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_not_starts_with: The name_not_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_not_starts_with: str
        """

        self._name_not_starts_with = name_not_starts_with

    @property
    def name_starts_with(self):
        """Gets the name_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The name_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._name_starts_with

    @name_starts_with.setter
    def name_starts_with(self, name_starts_with):
        """Sets the name_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param name_starts_with: The name_starts_with of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type name_starts_with: str
        """

        self._name_starts_with = name_starts_with

    @property
    def nat_gateways_every(self):
        """Gets the nat_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The nat_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudNatGatewayWhereInput
        """
        return self._nat_gateways_every

    @nat_gateways_every.setter
    def nat_gateways_every(self, nat_gateways_every):
        """Sets the nat_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param nat_gateways_every: The nat_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type nat_gateways_every: VirtualPrivateCloudNatGatewayWhereInput
        """

        self._nat_gateways_every = nat_gateways_every

    @property
    def nat_gateways_none(self):
        """Gets the nat_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The nat_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudNatGatewayWhereInput
        """
        return self._nat_gateways_none

    @nat_gateways_none.setter
    def nat_gateways_none(self, nat_gateways_none):
        """Sets the nat_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param nat_gateways_none: The nat_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type nat_gateways_none: VirtualPrivateCloudNatGatewayWhereInput
        """

        self._nat_gateways_none = nat_gateways_none

    @property
    def nat_gateways_some(self):
        """Gets the nat_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The nat_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudNatGatewayWhereInput
        """
        return self._nat_gateways_some

    @nat_gateways_some.setter
    def nat_gateways_some(self, nat_gateways_some):
        """Sets the nat_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param nat_gateways_some: The nat_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type nat_gateways_some: VirtualPrivateCloudNatGatewayWhereInput
        """

        self._nat_gateways_some = nat_gateways_some

    @property
    def router_gateways_every(self):
        """Gets the router_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The router_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouterGatewayWhereInput
        """
        return self._router_gateways_every

    @router_gateways_every.setter
    def router_gateways_every(self, router_gateways_every):
        """Sets the router_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param router_gateways_every: The router_gateways_every of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type router_gateways_every: VirtualPrivateCloudRouterGatewayWhereInput
        """

        self._router_gateways_every = router_gateways_every

    @property
    def router_gateways_none(self):
        """Gets the router_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The router_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouterGatewayWhereInput
        """
        return self._router_gateways_none

    @router_gateways_none.setter
    def router_gateways_none(self, router_gateways_none):
        """Sets the router_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param router_gateways_none: The router_gateways_none of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type router_gateways_none: VirtualPrivateCloudRouterGatewayWhereInput
        """

        self._router_gateways_none = router_gateways_none

    @property
    def router_gateways_some(self):
        """Gets the router_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The router_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouterGatewayWhereInput
        """
        return self._router_gateways_some

    @router_gateways_some.setter
    def router_gateways_some(self, router_gateways_some):
        """Sets the router_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param router_gateways_some: The router_gateways_some of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type router_gateways_some: VirtualPrivateCloudRouterGatewayWhereInput
        """

        self._router_gateways_some = router_gateways_some

    @property
    def shared_in_edge_gateway_group(self):
        """Gets the shared_in_edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The shared_in_edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: bool
        """
        return self._shared_in_edge_gateway_group

    @shared_in_edge_gateway_group.setter
    def shared_in_edge_gateway_group(self, shared_in_edge_gateway_group):
        """Sets the shared_in_edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param shared_in_edge_gateway_group: The shared_in_edge_gateway_group of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type shared_in_edge_gateway_group: bool
        """

        self._shared_in_edge_gateway_group = shared_in_edge_gateway_group

    @property
    def shared_in_edge_gateway_group_not(self):
        """Gets the shared_in_edge_gateway_group_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The shared_in_edge_gateway_group_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: bool
        """
        return self._shared_in_edge_gateway_group_not

    @shared_in_edge_gateway_group_not.setter
    def shared_in_edge_gateway_group_not(self, shared_in_edge_gateway_group_not):
        """Sets the shared_in_edge_gateway_group_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param shared_in_edge_gateway_group_not: The shared_in_edge_gateway_group_not of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type shared_in_edge_gateway_group_not: bool
        """

        self._shared_in_edge_gateway_group_not = shared_in_edge_gateway_group_not

    @property
    def vpc(self):
        """Gets the vpc of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501


        :return: The vpc of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudWhereInput
        """
        return self._vpc

    @vpc.setter
    def vpc(self, vpc):
        """Sets the vpc of this VirtualPrivateCloudExternalSubnetGroupWhereInput.


        :param vpc: The vpc of this VirtualPrivateCloudExternalSubnetGroupWhereInput.  # noqa: E501
        :type vpc: VirtualPrivateCloudWhereInput
        """

        self._vpc = vpc

    def to_dict(self, serialize=False):
        """Returns the model properties as a dict"""
        result = {}

        def convert(x):
            if hasattr(x, "to_dict"):
                args = getfullargspec(x.to_dict).args
                if len(args) == 1:
                    return x.to_dict()
                else:
                    return x.to_dict(serialize)
            else:
                return x

        for attr, _ in six.iteritems(self.openapi_types):
            value = getattr(self, attr)
            attr = self.attribute_map.get(attr, attr) if serialize else attr
            if isinstance(value, list):
                result[attr] = list(map(
                    lambda x: convert(x),
                    value
                ))
            elif isinstance(value, dict):
                result[attr] = dict(map(
                    lambda item: (item[0], convert(item[1])),
                    value.items()
                ))
            else:
                result[attr] = convert(value)

        return result

    def to_str(self):
        """Returns the string representation of the model"""
        return pprint.pformat(self.to_dict())

    def __repr__(self):
        """For `print` and `pprint`"""
        return self.to_str()

    def __eq__(self, other):
        """Returns true if both objects are equal"""
        if not isinstance(other, VirtualPrivateCloudExternalSubnetGroupWhereInput):
            return False

        return self.to_dict() == other.to_dict()

    def __ne__(self, other):
        """Returns true if both objects are not equal"""
        if not isinstance(other, VirtualPrivateCloudExternalSubnetGroupWhereInput):
            return True

        return self.to_dict() != other.to_dict()
