# 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 VirtualPrivateCloudRouteWhereInput(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[VirtualPrivateCloudRouteWhereInput]',
        '_not': 'list[VirtualPrivateCloudRouteWhereInput]',
        '_or': 'list[VirtualPrivateCloudRouteWhereInput]',
        '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',
        'destination': 'str',
        'destination_contains': 'str',
        'destination_ends_with': 'str',
        'destination_gt': 'str',
        'destination_gte': 'str',
        'destination_in': 'list[str]',
        'destination_lt': 'str',
        'destination_lte': 'str',
        'destination_not': 'str',
        'destination_not_contains': 'str',
        'destination_not_ends_with': 'str',
        'destination_not_in': 'list[str]',
        'destination_not_starts_with': 'str',
        'destination_starts_with': 'str',
        'entity_async_status': 'EntityAsyncStatus',
        'entity_async_status_in': 'list[EntityAsyncStatus]',
        'entity_async_status_not': 'EntityAsyncStatus',
        'entity_async_status_not_in': 'list[EntityAsyncStatus]',
        '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',
        'nat_gateway': 'VirtualPrivateCloudNatGatewayWhereInput',
        'next_hop_local_id': 'str',
        'next_hop_local_id_contains': 'str',
        'next_hop_local_id_ends_with': 'str',
        'next_hop_local_id_gt': 'str',
        'next_hop_local_id_gte': 'str',
        'next_hop_local_id_in': 'list[str]',
        'next_hop_local_id_lt': 'str',
        'next_hop_local_id_lte': 'str',
        'next_hop_local_id_not': 'str',
        'next_hop_local_id_not_contains': 'str',
        'next_hop_local_id_not_ends_with': 'str',
        'next_hop_local_id_not_in': 'list[str]',
        'next_hop_local_id_not_starts_with': 'str',
        'next_hop_local_id_starts_with': 'str',
        'next_hop_type': 'VirtualPrivateCloudRouteNextHopType',
        'next_hop_type_in': 'list[VirtualPrivateCloudRouteNextHopType]',
        'next_hop_type_not': 'VirtualPrivateCloudRouteNextHopType',
        'next_hop_type_not_in': 'list[VirtualPrivateCloudRouteNextHopType]',
        'route_table': 'VirtualPrivateCloudRouteTableWhereInput',
        'router_gateway': 'VirtualPrivateCloudRouterGatewayWhereInput'
    }

    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',
        'destination': 'destination',
        'destination_contains': 'destination_contains',
        'destination_ends_with': 'destination_ends_with',
        'destination_gt': 'destination_gt',
        'destination_gte': 'destination_gte',
        'destination_in': 'destination_in',
        'destination_lt': 'destination_lt',
        'destination_lte': 'destination_lte',
        'destination_not': 'destination_not',
        'destination_not_contains': 'destination_not_contains',
        'destination_not_ends_with': 'destination_not_ends_with',
        'destination_not_in': 'destination_not_in',
        'destination_not_starts_with': 'destination_not_starts_with',
        'destination_starts_with': 'destination_starts_with',
        'entity_async_status': 'entityAsyncStatus',
        'entity_async_status_in': 'entityAsyncStatus_in',
        'entity_async_status_not': 'entityAsyncStatus_not',
        'entity_async_status_not_in': 'entityAsyncStatus_not_in',
        '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',
        'nat_gateway': 'nat_gateway',
        'next_hop_local_id': 'next_hop_local_id',
        'next_hop_local_id_contains': 'next_hop_local_id_contains',
        'next_hop_local_id_ends_with': 'next_hop_local_id_ends_with',
        'next_hop_local_id_gt': 'next_hop_local_id_gt',
        'next_hop_local_id_gte': 'next_hop_local_id_gte',
        'next_hop_local_id_in': 'next_hop_local_id_in',
        'next_hop_local_id_lt': 'next_hop_local_id_lt',
        'next_hop_local_id_lte': 'next_hop_local_id_lte',
        'next_hop_local_id_not': 'next_hop_local_id_not',
        'next_hop_local_id_not_contains': 'next_hop_local_id_not_contains',
        'next_hop_local_id_not_ends_with': 'next_hop_local_id_not_ends_with',
        'next_hop_local_id_not_in': 'next_hop_local_id_not_in',
        'next_hop_local_id_not_starts_with': 'next_hop_local_id_not_starts_with',
        'next_hop_local_id_starts_with': 'next_hop_local_id_starts_with',
        'next_hop_type': 'next_hop_type',
        'next_hop_type_in': 'next_hop_type_in',
        'next_hop_type_not': 'next_hop_type_not',
        'next_hop_type_not_in': 'next_hop_type_not_in',
        'route_table': 'route_table',
        'router_gateway': 'router_gateway'
    }

    def __init__(self, **kwargs):  # noqa: E501
        """VirtualPrivateCloudRouteWhereInput - 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._destination = None
        self._destination_contains = None
        self._destination_ends_with = None
        self._destination_gt = None
        self._destination_gte = None
        self._destination_in = None
        self._destination_lt = None
        self._destination_lte = None
        self._destination_not = None
        self._destination_not_contains = None
        self._destination_not_ends_with = None
        self._destination_not_in = None
        self._destination_not_starts_with = None
        self._destination_starts_with = 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._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._nat_gateway = None
        self._next_hop_local_id = None
        self._next_hop_local_id_contains = None
        self._next_hop_local_id_ends_with = None
        self._next_hop_local_id_gt = None
        self._next_hop_local_id_gte = None
        self._next_hop_local_id_in = None
        self._next_hop_local_id_lt = None
        self._next_hop_local_id_lte = None
        self._next_hop_local_id_not = None
        self._next_hop_local_id_not_contains = None
        self._next_hop_local_id_not_ends_with = None
        self._next_hop_local_id_not_in = None
        self._next_hop_local_id_not_starts_with = None
        self._next_hop_local_id_starts_with = None
        self._next_hop_type = None
        self._next_hop_type_in = None
        self._next_hop_type_not = None
        self._next_hop_type_not_in = None
        self._route_table = None
        self._router_gateway = 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.destination = kwargs.get("destination", None)
        self.destination_contains = kwargs.get("destination_contains", None)
        self.destination_ends_with = kwargs.get("destination_ends_with", None)
        self.destination_gt = kwargs.get("destination_gt", None)
        self.destination_gte = kwargs.get("destination_gte", None)
        self.destination_in = kwargs.get("destination_in", None)
        self.destination_lt = kwargs.get("destination_lt", None)
        self.destination_lte = kwargs.get("destination_lte", None)
        self.destination_not = kwargs.get("destination_not", None)
        self.destination_not_contains = kwargs.get("destination_not_contains", None)
        self.destination_not_ends_with = kwargs.get("destination_not_ends_with", None)
        self.destination_not_in = kwargs.get("destination_not_in", None)
        self.destination_not_starts_with = kwargs.get("destination_not_starts_with", None)
        self.destination_starts_with = kwargs.get("destination_starts_with", 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.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.nat_gateway = kwargs.get("nat_gateway", None)
        self.next_hop_local_id = kwargs.get("next_hop_local_id", None)
        self.next_hop_local_id_contains = kwargs.get("next_hop_local_id_contains", None)
        self.next_hop_local_id_ends_with = kwargs.get("next_hop_local_id_ends_with", None)
        self.next_hop_local_id_gt = kwargs.get("next_hop_local_id_gt", None)
        self.next_hop_local_id_gte = kwargs.get("next_hop_local_id_gte", None)
        self.next_hop_local_id_in = kwargs.get("next_hop_local_id_in", None)
        self.next_hop_local_id_lt = kwargs.get("next_hop_local_id_lt", None)
        self.next_hop_local_id_lte = kwargs.get("next_hop_local_id_lte", None)
        self.next_hop_local_id_not = kwargs.get("next_hop_local_id_not", None)
        self.next_hop_local_id_not_contains = kwargs.get("next_hop_local_id_not_contains", None)
        self.next_hop_local_id_not_ends_with = kwargs.get("next_hop_local_id_not_ends_with", None)
        self.next_hop_local_id_not_in = kwargs.get("next_hop_local_id_not_in", None)
        self.next_hop_local_id_not_starts_with = kwargs.get("next_hop_local_id_not_starts_with", None)
        self.next_hop_local_id_starts_with = kwargs.get("next_hop_local_id_starts_with", None)
        self.next_hop_type = kwargs.get("next_hop_type", None)
        self.next_hop_type_in = kwargs.get("next_hop_type_in", None)
        self.next_hop_type_not = kwargs.get("next_hop_type_not", None)
        self.next_hop_type_not_in = kwargs.get("next_hop_type_not_in", None)
        self.route_table = kwargs.get("route_table", None)
        self.router_gateway = kwargs.get("router_gateway", None)

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


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

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


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

        self.__and = _and

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


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

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


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

        self.__not = _not

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


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

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


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

        self.__or = _or

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


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

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


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

        self._description = description

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


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

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


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

        self._description_contains = description_contains

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


        :return: The description_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param description_ends_with: The description_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


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

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


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

        self._description_gt = description_gt

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


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

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


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

        self._description_gte = description_gte

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


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

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


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

        self._description_in = description_in

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


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

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


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

        self._description_lt = description_lt

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


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

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


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

        self._description_lte = description_lte

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


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

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


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

        self._description_not = description_not

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


        :return: The description_not_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param description_not_contains: The description_not_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The description_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param description_not_ends_with: The description_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The description_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param description_not_in: The description_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The description_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param description_not_starts_with: The description_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The description_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


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

        self._description_starts_with = description_starts_with

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


        :return: The destination of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination

    @destination.setter
    def destination(self, destination):
        """Sets the destination of this VirtualPrivateCloudRouteWhereInput.


        :param destination: The destination of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination: str
        """

        self._destination = destination

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


        :return: The destination_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_contains

    @destination_contains.setter
    def destination_contains(self, destination_contains):
        """Sets the destination_contains of this VirtualPrivateCloudRouteWhereInput.


        :param destination_contains: The destination_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_contains: str
        """

        self._destination_contains = destination_contains

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


        :return: The destination_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_ends_with

    @destination_ends_with.setter
    def destination_ends_with(self, destination_ends_with):
        """Sets the destination_ends_with of this VirtualPrivateCloudRouteWhereInput.


        :param destination_ends_with: The destination_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_ends_with: str
        """

        self._destination_ends_with = destination_ends_with

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


        :return: The destination_gt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_gt

    @destination_gt.setter
    def destination_gt(self, destination_gt):
        """Sets the destination_gt of this VirtualPrivateCloudRouteWhereInput.


        :param destination_gt: The destination_gt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_gt: str
        """

        self._destination_gt = destination_gt

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


        :return: The destination_gte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_gte

    @destination_gte.setter
    def destination_gte(self, destination_gte):
        """Sets the destination_gte of this VirtualPrivateCloudRouteWhereInput.


        :param destination_gte: The destination_gte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_gte: str
        """

        self._destination_gte = destination_gte

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


        :return: The destination_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._destination_in

    @destination_in.setter
    def destination_in(self, destination_in):
        """Sets the destination_in of this VirtualPrivateCloudRouteWhereInput.


        :param destination_in: The destination_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_in: list[str]
        """

        self._destination_in = destination_in

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


        :return: The destination_lt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_lt

    @destination_lt.setter
    def destination_lt(self, destination_lt):
        """Sets the destination_lt of this VirtualPrivateCloudRouteWhereInput.


        :param destination_lt: The destination_lt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_lt: str
        """

        self._destination_lt = destination_lt

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


        :return: The destination_lte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_lte

    @destination_lte.setter
    def destination_lte(self, destination_lte):
        """Sets the destination_lte of this VirtualPrivateCloudRouteWhereInput.


        :param destination_lte: The destination_lte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_lte: str
        """

        self._destination_lte = destination_lte

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


        :return: The destination_not of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_not

    @destination_not.setter
    def destination_not(self, destination_not):
        """Sets the destination_not of this VirtualPrivateCloudRouteWhereInput.


        :param destination_not: The destination_not of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_not: str
        """

        self._destination_not = destination_not

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


        :return: The destination_not_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_not_contains

    @destination_not_contains.setter
    def destination_not_contains(self, destination_not_contains):
        """Sets the destination_not_contains of this VirtualPrivateCloudRouteWhereInput.


        :param destination_not_contains: The destination_not_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_not_contains: str
        """

        self._destination_not_contains = destination_not_contains

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


        :return: The destination_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_not_ends_with

    @destination_not_ends_with.setter
    def destination_not_ends_with(self, destination_not_ends_with):
        """Sets the destination_not_ends_with of this VirtualPrivateCloudRouteWhereInput.


        :param destination_not_ends_with: The destination_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_not_ends_with: str
        """

        self._destination_not_ends_with = destination_not_ends_with

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


        :return: The destination_not_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._destination_not_in

    @destination_not_in.setter
    def destination_not_in(self, destination_not_in):
        """Sets the destination_not_in of this VirtualPrivateCloudRouteWhereInput.


        :param destination_not_in: The destination_not_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_not_in: list[str]
        """

        self._destination_not_in = destination_not_in

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


        :return: The destination_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_not_starts_with

    @destination_not_starts_with.setter
    def destination_not_starts_with(self, destination_not_starts_with):
        """Sets the destination_not_starts_with of this VirtualPrivateCloudRouteWhereInput.


        :param destination_not_starts_with: The destination_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_not_starts_with: str
        """

        self._destination_not_starts_with = destination_not_starts_with

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


        :return: The destination_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._destination_starts_with

    @destination_starts_with.setter
    def destination_starts_with(self, destination_starts_with):
        """Sets the destination_starts_with of this VirtualPrivateCloudRouteWhereInput.


        :param destination_starts_with: The destination_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type destination_starts_with: str
        """

        self._destination_starts_with = destination_starts_with

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


        :return: The entity_async_status of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param entity_async_status: The entity_async_status of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The entity_async_status_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param entity_async_status_in: The entity_async_status_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The entity_async_status_not of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param entity_async_status_not: The entity_async_status_not of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The entity_async_status_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


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

        self._entity_async_status_not_in = entity_async_status_not_in

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


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

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


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

        self._id = id

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


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

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


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

        self._id_contains = id_contains

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


        :return: The id_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param id_ends_with: The id_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


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

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


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

        self._id_gt = id_gt

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


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

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


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

        self._id_gte = id_gte

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


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

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


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

        self._id_in = id_in

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


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

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


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

        self._id_lt = id_lt

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


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

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


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

        self._id_lte = id_lte

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


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

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


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

        self._id_not = id_not

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


        :return: The id_not_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param id_not_contains: The id_not_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param id_not_ends_with: The id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The id_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param id_not_in: The id_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param id_not_starts_with: The id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The id_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param id_starts_with: The id_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


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

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


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

        self._local_id = local_id

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


        :return: The local_id_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_contains: The local_id_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_ends_with: The local_id_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_gt of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_gt: The local_id_gt of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_gte of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_gte: The local_id_gte of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_in: The local_id_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_lt of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_lt: The local_id_lt of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_lte of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_lte: The local_id_lte of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_not of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_not: The local_id_not of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_not_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_not_contains: The local_id_not_contains of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_not_ends_with: The local_id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_not_in: The local_id_not_in of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


        :param local_id_not_starts_with: The local_id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.  # noqa: E501


        :return: The local_id_starts_with of this VirtualPrivateCloudRouteWhereInput.  # 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 VirtualPrivateCloudRouteWhereInput.


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

        self._local_id_starts_with = local_id_starts_with

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


        :return: The nat_gateway of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudNatGatewayWhereInput
        """
        return self._nat_gateway

    @nat_gateway.setter
    def nat_gateway(self, nat_gateway):
        """Sets the nat_gateway of this VirtualPrivateCloudRouteWhereInput.


        :param nat_gateway: The nat_gateway of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type nat_gateway: VirtualPrivateCloudNatGatewayWhereInput
        """

        self._nat_gateway = nat_gateway

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


        :return: The next_hop_local_id of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id

    @next_hop_local_id.setter
    def next_hop_local_id(self, next_hop_local_id):
        """Sets the next_hop_local_id of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id: The next_hop_local_id of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id: str
        """

        self._next_hop_local_id = next_hop_local_id

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


        :return: The next_hop_local_id_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_contains

    @next_hop_local_id_contains.setter
    def next_hop_local_id_contains(self, next_hop_local_id_contains):
        """Sets the next_hop_local_id_contains of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_contains: The next_hop_local_id_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_contains: str
        """

        self._next_hop_local_id_contains = next_hop_local_id_contains

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


        :return: The next_hop_local_id_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_ends_with

    @next_hop_local_id_ends_with.setter
    def next_hop_local_id_ends_with(self, next_hop_local_id_ends_with):
        """Sets the next_hop_local_id_ends_with of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_ends_with: The next_hop_local_id_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_ends_with: str
        """

        self._next_hop_local_id_ends_with = next_hop_local_id_ends_with

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


        :return: The next_hop_local_id_gt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_gt

    @next_hop_local_id_gt.setter
    def next_hop_local_id_gt(self, next_hop_local_id_gt):
        """Sets the next_hop_local_id_gt of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_gt: The next_hop_local_id_gt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_gt: str
        """

        self._next_hop_local_id_gt = next_hop_local_id_gt

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


        :return: The next_hop_local_id_gte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_gte

    @next_hop_local_id_gte.setter
    def next_hop_local_id_gte(self, next_hop_local_id_gte):
        """Sets the next_hop_local_id_gte of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_gte: The next_hop_local_id_gte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_gte: str
        """

        self._next_hop_local_id_gte = next_hop_local_id_gte

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


        :return: The next_hop_local_id_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._next_hop_local_id_in

    @next_hop_local_id_in.setter
    def next_hop_local_id_in(self, next_hop_local_id_in):
        """Sets the next_hop_local_id_in of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_in: The next_hop_local_id_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_in: list[str]
        """

        self._next_hop_local_id_in = next_hop_local_id_in

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


        :return: The next_hop_local_id_lt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_lt

    @next_hop_local_id_lt.setter
    def next_hop_local_id_lt(self, next_hop_local_id_lt):
        """Sets the next_hop_local_id_lt of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_lt: The next_hop_local_id_lt of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_lt: str
        """

        self._next_hop_local_id_lt = next_hop_local_id_lt

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


        :return: The next_hop_local_id_lte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_lte

    @next_hop_local_id_lte.setter
    def next_hop_local_id_lte(self, next_hop_local_id_lte):
        """Sets the next_hop_local_id_lte of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_lte: The next_hop_local_id_lte of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_lte: str
        """

        self._next_hop_local_id_lte = next_hop_local_id_lte

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


        :return: The next_hop_local_id_not of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_not

    @next_hop_local_id_not.setter
    def next_hop_local_id_not(self, next_hop_local_id_not):
        """Sets the next_hop_local_id_not of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_not: The next_hop_local_id_not of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_not: str
        """

        self._next_hop_local_id_not = next_hop_local_id_not

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


        :return: The next_hop_local_id_not_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_not_contains

    @next_hop_local_id_not_contains.setter
    def next_hop_local_id_not_contains(self, next_hop_local_id_not_contains):
        """Sets the next_hop_local_id_not_contains of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_not_contains: The next_hop_local_id_not_contains of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_not_contains: str
        """

        self._next_hop_local_id_not_contains = next_hop_local_id_not_contains

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


        :return: The next_hop_local_id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_not_ends_with

    @next_hop_local_id_not_ends_with.setter
    def next_hop_local_id_not_ends_with(self, next_hop_local_id_not_ends_with):
        """Sets the next_hop_local_id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_not_ends_with: The next_hop_local_id_not_ends_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_not_ends_with: str
        """

        self._next_hop_local_id_not_ends_with = next_hop_local_id_not_ends_with

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


        :return: The next_hop_local_id_not_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._next_hop_local_id_not_in

    @next_hop_local_id_not_in.setter
    def next_hop_local_id_not_in(self, next_hop_local_id_not_in):
        """Sets the next_hop_local_id_not_in of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_not_in: The next_hop_local_id_not_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_not_in: list[str]
        """

        self._next_hop_local_id_not_in = next_hop_local_id_not_in

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


        :return: The next_hop_local_id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_not_starts_with

    @next_hop_local_id_not_starts_with.setter
    def next_hop_local_id_not_starts_with(self, next_hop_local_id_not_starts_with):
        """Sets the next_hop_local_id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_not_starts_with: The next_hop_local_id_not_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_not_starts_with: str
        """

        self._next_hop_local_id_not_starts_with = next_hop_local_id_not_starts_with

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


        :return: The next_hop_local_id_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._next_hop_local_id_starts_with

    @next_hop_local_id_starts_with.setter
    def next_hop_local_id_starts_with(self, next_hop_local_id_starts_with):
        """Sets the next_hop_local_id_starts_with of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_local_id_starts_with: The next_hop_local_id_starts_with of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_local_id_starts_with: str
        """

        self._next_hop_local_id_starts_with = next_hop_local_id_starts_with

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


        :return: The next_hop_type of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouteNextHopType
        """
        return self._next_hop_type

    @next_hop_type.setter
    def next_hop_type(self, next_hop_type):
        """Sets the next_hop_type of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_type: The next_hop_type of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_type: VirtualPrivateCloudRouteNextHopType
        """

        self._next_hop_type = next_hop_type

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


        :return: The next_hop_type_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: list[VirtualPrivateCloudRouteNextHopType]
        """
        return self._next_hop_type_in

    @next_hop_type_in.setter
    def next_hop_type_in(self, next_hop_type_in):
        """Sets the next_hop_type_in of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_type_in: The next_hop_type_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_type_in: list[VirtualPrivateCloudRouteNextHopType]
        """

        self._next_hop_type_in = next_hop_type_in

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


        :return: The next_hop_type_not of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouteNextHopType
        """
        return self._next_hop_type_not

    @next_hop_type_not.setter
    def next_hop_type_not(self, next_hop_type_not):
        """Sets the next_hop_type_not of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_type_not: The next_hop_type_not of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_type_not: VirtualPrivateCloudRouteNextHopType
        """

        self._next_hop_type_not = next_hop_type_not

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


        :return: The next_hop_type_not_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: list[VirtualPrivateCloudRouteNextHopType]
        """
        return self._next_hop_type_not_in

    @next_hop_type_not_in.setter
    def next_hop_type_not_in(self, next_hop_type_not_in):
        """Sets the next_hop_type_not_in of this VirtualPrivateCloudRouteWhereInput.


        :param next_hop_type_not_in: The next_hop_type_not_in of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type next_hop_type_not_in: list[VirtualPrivateCloudRouteNextHopType]
        """

        self._next_hop_type_not_in = next_hop_type_not_in

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


        :return: The route_table of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouteTableWhereInput
        """
        return self._route_table

    @route_table.setter
    def route_table(self, route_table):
        """Sets the route_table of this VirtualPrivateCloudRouteWhereInput.


        :param route_table: The route_table of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type route_table: VirtualPrivateCloudRouteTableWhereInput
        """

        self._route_table = route_table

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


        :return: The router_gateway of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :rtype: VirtualPrivateCloudRouterGatewayWhereInput
        """
        return self._router_gateway

    @router_gateway.setter
    def router_gateway(self, router_gateway):
        """Sets the router_gateway of this VirtualPrivateCloudRouteWhereInput.


        :param router_gateway: The router_gateway of this VirtualPrivateCloudRouteWhereInput.  # noqa: E501
        :type router_gateway: VirtualPrivateCloudRouterGatewayWhereInput
        """

        self._router_gateway = router_gateway

    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, VirtualPrivateCloudRouteWhereInput):
            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, VirtualPrivateCloudRouteWhereInput):
            return True

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