# 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 VmDiskWhereInput(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[VmDiskWhereInput]',
        '_not': 'list[VmDiskWhereInput]',
        '_or': 'list[VmDiskWhereInput]',
        'boot': 'int',
        'boot_gt': 'int',
        'boot_gte': 'int',
        'boot_in': 'list[int]',
        'boot_lt': 'int',
        'boot_lte': 'int',
        'boot_not': 'int',
        'boot_not_in': 'list[int]',
        'bus': 'Bus',
        'bus_in': 'list[Bus]',
        'bus_not': 'Bus',
        'bus_not_in': 'list[Bus]',
        'cloud_init_image_name': 'str',
        'cloud_init_image_name_contains': 'str',
        'cloud_init_image_name_ends_with': 'str',
        'cloud_init_image_name_gt': 'str',
        'cloud_init_image_name_gte': 'str',
        'cloud_init_image_name_in': 'list[str]',
        'cloud_init_image_name_lt': 'str',
        'cloud_init_image_name_lte': 'str',
        'cloud_init_image_name_not': 'str',
        'cloud_init_image_name_not_contains': 'str',
        'cloud_init_image_name_not_ends_with': 'str',
        'cloud_init_image_name_not_in': 'list[str]',
        'cloud_init_image_name_not_starts_with': 'str',
        'cloud_init_image_name_starts_with': 'str',
        'cloud_init_image_path': 'str',
        'cloud_init_image_path_contains': 'str',
        'cloud_init_image_path_ends_with': 'str',
        'cloud_init_image_path_gt': 'str',
        'cloud_init_image_path_gte': 'str',
        'cloud_init_image_path_in': 'list[str]',
        'cloud_init_image_path_lt': 'str',
        'cloud_init_image_path_lte': 'str',
        'cloud_init_image_path_not': 'str',
        'cloud_init_image_path_not_contains': 'str',
        'cloud_init_image_path_not_ends_with': 'str',
        'cloud_init_image_path_not_in': 'list[str]',
        'cloud_init_image_path_not_starts_with': 'str',
        'cloud_init_image_path_starts_with': 'str',
        'device': 'str',
        'device_contains': 'str',
        'device_ends_with': 'str',
        'device_gt': 'str',
        'device_gte': 'str',
        'device_in': 'list[str]',
        'device_lt': 'str',
        'device_lte': 'str',
        'device_not': 'str',
        'device_not_contains': 'str',
        'device_not_ends_with': 'str',
        'device_not_in': 'list[str]',
        'device_not_starts_with': 'str',
        'device_starts_with': 'str',
        'disabled': 'bool',
        'disabled_not': 'bool',
        'elf_image': 'ElfImageWhereInput',
        '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',
        'key': 'int',
        'key_gt': 'int',
        'key_gte': 'int',
        'key_in': 'list[int]',
        'key_lt': 'int',
        'key_lte': 'int',
        'key_not': 'int',
        'key_not_in': 'list[int]',
        'max_bandwidth': 'int',
        'max_bandwidth_gt': 'int',
        'max_bandwidth_gte': 'int',
        'max_bandwidth_in': 'list[int]',
        'max_bandwidth_lt': 'int',
        'max_bandwidth_lte': 'int',
        'max_bandwidth_not': 'int',
        'max_bandwidth_not_in': 'list[int]',
        'max_bandwidth_policy': 'VmDiskIoRestrictType',
        'max_bandwidth_policy_in': 'list[VmDiskIoRestrictType]',
        'max_bandwidth_policy_not': 'VmDiskIoRestrictType',
        'max_bandwidth_policy_not_in': 'list[VmDiskIoRestrictType]',
        'max_iops': 'int',
        'max_iops_gt': 'int',
        'max_iops_gte': 'int',
        'max_iops_in': 'list[int]',
        'max_iops_lt': 'int',
        'max_iops_lte': 'int',
        'max_iops_not': 'int',
        'max_iops_not_in': 'list[int]',
        'max_iops_policy': 'VmDiskIoRestrictType',
        'max_iops_policy_in': 'list[VmDiskIoRestrictType]',
        'max_iops_policy_not': 'VmDiskIoRestrictType',
        'max_iops_policy_not_in': 'list[VmDiskIoRestrictType]',
        'serial': 'str',
        'serial_contains': 'str',
        'serial_ends_with': 'str',
        'serial_gt': 'str',
        'serial_gte': 'str',
        'serial_in': 'list[str]',
        'serial_lt': 'str',
        'serial_lte': 'str',
        'serial_not': 'str',
        'serial_not_contains': 'str',
        'serial_not_ends_with': 'str',
        'serial_not_in': 'list[str]',
        'serial_not_starts_with': 'str',
        'serial_starts_with': 'str',
        'svt_image': 'SvtImageWhereInput',
        'type': 'VmDiskType',
        'type_in': 'list[VmDiskType]',
        'type_not': 'VmDiskType',
        'type_not_in': 'list[VmDiskType]',
        'unsafe_image_path': 'str',
        'unsafe_image_path_contains': 'str',
        'unsafe_image_path_ends_with': 'str',
        'unsafe_image_path_gt': 'str',
        'unsafe_image_path_gte': 'str',
        'unsafe_image_path_in': 'list[str]',
        'unsafe_image_path_lt': 'str',
        'unsafe_image_path_lte': 'str',
        'unsafe_image_path_not': 'str',
        'unsafe_image_path_not_contains': 'str',
        'unsafe_image_path_not_ends_with': 'str',
        'unsafe_image_path_not_in': 'list[str]',
        'unsafe_image_path_not_starts_with': 'str',
        'unsafe_image_path_starts_with': 'str',
        'unsafe_image_uuid': 'str',
        'unsafe_image_uuid_contains': 'str',
        'unsafe_image_uuid_ends_with': 'str',
        'unsafe_image_uuid_gt': 'str',
        'unsafe_image_uuid_gte': 'str',
        'unsafe_image_uuid_in': 'list[str]',
        'unsafe_image_uuid_lt': 'str',
        'unsafe_image_uuid_lte': 'str',
        'unsafe_image_uuid_not': 'str',
        'unsafe_image_uuid_not_contains': 'str',
        'unsafe_image_uuid_not_ends_with': 'str',
        'unsafe_image_uuid_not_in': 'list[str]',
        'unsafe_image_uuid_not_starts_with': 'str',
        'unsafe_image_uuid_starts_with': 'str',
        'unsafe_provision': 'str',
        'unsafe_provision_contains': 'str',
        'unsafe_provision_ends_with': 'str',
        'unsafe_provision_gt': 'str',
        'unsafe_provision_gte': 'str',
        'unsafe_provision_in': 'list[str]',
        'unsafe_provision_lt': 'str',
        'unsafe_provision_lte': 'str',
        'unsafe_provision_not': 'str',
        'unsafe_provision_not_contains': 'str',
        'unsafe_provision_not_ends_with': 'str',
        'unsafe_provision_not_in': 'list[str]',
        'unsafe_provision_not_starts_with': 'str',
        'unsafe_provision_starts_with': 'str',
        'vm': 'VmWhereInput',
        'vm_volume': 'VmVolumeWhereInput'
    }

    attribute_map = {
        '_and': 'AND',
        '_not': 'NOT',
        '_or': 'OR',
        'boot': 'boot',
        'boot_gt': 'boot_gt',
        'boot_gte': 'boot_gte',
        'boot_in': 'boot_in',
        'boot_lt': 'boot_lt',
        'boot_lte': 'boot_lte',
        'boot_not': 'boot_not',
        'boot_not_in': 'boot_not_in',
        'bus': 'bus',
        'bus_in': 'bus_in',
        'bus_not': 'bus_not',
        'bus_not_in': 'bus_not_in',
        'cloud_init_image_name': 'cloud_init_image_name',
        'cloud_init_image_name_contains': 'cloud_init_image_name_contains',
        'cloud_init_image_name_ends_with': 'cloud_init_image_name_ends_with',
        'cloud_init_image_name_gt': 'cloud_init_image_name_gt',
        'cloud_init_image_name_gte': 'cloud_init_image_name_gte',
        'cloud_init_image_name_in': 'cloud_init_image_name_in',
        'cloud_init_image_name_lt': 'cloud_init_image_name_lt',
        'cloud_init_image_name_lte': 'cloud_init_image_name_lte',
        'cloud_init_image_name_not': 'cloud_init_image_name_not',
        'cloud_init_image_name_not_contains': 'cloud_init_image_name_not_contains',
        'cloud_init_image_name_not_ends_with': 'cloud_init_image_name_not_ends_with',
        'cloud_init_image_name_not_in': 'cloud_init_image_name_not_in',
        'cloud_init_image_name_not_starts_with': 'cloud_init_image_name_not_starts_with',
        'cloud_init_image_name_starts_with': 'cloud_init_image_name_starts_with',
        'cloud_init_image_path': 'cloud_init_image_path',
        'cloud_init_image_path_contains': 'cloud_init_image_path_contains',
        'cloud_init_image_path_ends_with': 'cloud_init_image_path_ends_with',
        'cloud_init_image_path_gt': 'cloud_init_image_path_gt',
        'cloud_init_image_path_gte': 'cloud_init_image_path_gte',
        'cloud_init_image_path_in': 'cloud_init_image_path_in',
        'cloud_init_image_path_lt': 'cloud_init_image_path_lt',
        'cloud_init_image_path_lte': 'cloud_init_image_path_lte',
        'cloud_init_image_path_not': 'cloud_init_image_path_not',
        'cloud_init_image_path_not_contains': 'cloud_init_image_path_not_contains',
        'cloud_init_image_path_not_ends_with': 'cloud_init_image_path_not_ends_with',
        'cloud_init_image_path_not_in': 'cloud_init_image_path_not_in',
        'cloud_init_image_path_not_starts_with': 'cloud_init_image_path_not_starts_with',
        'cloud_init_image_path_starts_with': 'cloud_init_image_path_starts_with',
        'device': 'device',
        'device_contains': 'device_contains',
        'device_ends_with': 'device_ends_with',
        'device_gt': 'device_gt',
        'device_gte': 'device_gte',
        'device_in': 'device_in',
        'device_lt': 'device_lt',
        'device_lte': 'device_lte',
        'device_not': 'device_not',
        'device_not_contains': 'device_not_contains',
        'device_not_ends_with': 'device_not_ends_with',
        'device_not_in': 'device_not_in',
        'device_not_starts_with': 'device_not_starts_with',
        'device_starts_with': 'device_starts_with',
        'disabled': 'disabled',
        'disabled_not': 'disabled_not',
        'elf_image': 'elf_image',
        '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',
        'key': 'key',
        'key_gt': 'key_gt',
        'key_gte': 'key_gte',
        'key_in': 'key_in',
        'key_lt': 'key_lt',
        'key_lte': 'key_lte',
        'key_not': 'key_not',
        'key_not_in': 'key_not_in',
        'max_bandwidth': 'max_bandwidth',
        'max_bandwidth_gt': 'max_bandwidth_gt',
        'max_bandwidth_gte': 'max_bandwidth_gte',
        'max_bandwidth_in': 'max_bandwidth_in',
        'max_bandwidth_lt': 'max_bandwidth_lt',
        'max_bandwidth_lte': 'max_bandwidth_lte',
        'max_bandwidth_not': 'max_bandwidth_not',
        'max_bandwidth_not_in': 'max_bandwidth_not_in',
        'max_bandwidth_policy': 'max_bandwidth_policy',
        'max_bandwidth_policy_in': 'max_bandwidth_policy_in',
        'max_bandwidth_policy_not': 'max_bandwidth_policy_not',
        'max_bandwidth_policy_not_in': 'max_bandwidth_policy_not_in',
        'max_iops': 'max_iops',
        'max_iops_gt': 'max_iops_gt',
        'max_iops_gte': 'max_iops_gte',
        'max_iops_in': 'max_iops_in',
        'max_iops_lt': 'max_iops_lt',
        'max_iops_lte': 'max_iops_lte',
        'max_iops_not': 'max_iops_not',
        'max_iops_not_in': 'max_iops_not_in',
        'max_iops_policy': 'max_iops_policy',
        'max_iops_policy_in': 'max_iops_policy_in',
        'max_iops_policy_not': 'max_iops_policy_not',
        'max_iops_policy_not_in': 'max_iops_policy_not_in',
        'serial': 'serial',
        'serial_contains': 'serial_contains',
        'serial_ends_with': 'serial_ends_with',
        'serial_gt': 'serial_gt',
        'serial_gte': 'serial_gte',
        'serial_in': 'serial_in',
        'serial_lt': 'serial_lt',
        'serial_lte': 'serial_lte',
        'serial_not': 'serial_not',
        'serial_not_contains': 'serial_not_contains',
        'serial_not_ends_with': 'serial_not_ends_with',
        'serial_not_in': 'serial_not_in',
        'serial_not_starts_with': 'serial_not_starts_with',
        'serial_starts_with': 'serial_starts_with',
        'svt_image': 'svt_image',
        'type': 'type',
        'type_in': 'type_in',
        'type_not': 'type_not',
        'type_not_in': 'type_not_in',
        'unsafe_image_path': 'unsafe_image_path',
        'unsafe_image_path_contains': 'unsafe_image_path_contains',
        'unsafe_image_path_ends_with': 'unsafe_image_path_ends_with',
        'unsafe_image_path_gt': 'unsafe_image_path_gt',
        'unsafe_image_path_gte': 'unsafe_image_path_gte',
        'unsafe_image_path_in': 'unsafe_image_path_in',
        'unsafe_image_path_lt': 'unsafe_image_path_lt',
        'unsafe_image_path_lte': 'unsafe_image_path_lte',
        'unsafe_image_path_not': 'unsafe_image_path_not',
        'unsafe_image_path_not_contains': 'unsafe_image_path_not_contains',
        'unsafe_image_path_not_ends_with': 'unsafe_image_path_not_ends_with',
        'unsafe_image_path_not_in': 'unsafe_image_path_not_in',
        'unsafe_image_path_not_starts_with': 'unsafe_image_path_not_starts_with',
        'unsafe_image_path_starts_with': 'unsafe_image_path_starts_with',
        'unsafe_image_uuid': 'unsafe_image_uuid',
        'unsafe_image_uuid_contains': 'unsafe_image_uuid_contains',
        'unsafe_image_uuid_ends_with': 'unsafe_image_uuid_ends_with',
        'unsafe_image_uuid_gt': 'unsafe_image_uuid_gt',
        'unsafe_image_uuid_gte': 'unsafe_image_uuid_gte',
        'unsafe_image_uuid_in': 'unsafe_image_uuid_in',
        'unsafe_image_uuid_lt': 'unsafe_image_uuid_lt',
        'unsafe_image_uuid_lte': 'unsafe_image_uuid_lte',
        'unsafe_image_uuid_not': 'unsafe_image_uuid_not',
        'unsafe_image_uuid_not_contains': 'unsafe_image_uuid_not_contains',
        'unsafe_image_uuid_not_ends_with': 'unsafe_image_uuid_not_ends_with',
        'unsafe_image_uuid_not_in': 'unsafe_image_uuid_not_in',
        'unsafe_image_uuid_not_starts_with': 'unsafe_image_uuid_not_starts_with',
        'unsafe_image_uuid_starts_with': 'unsafe_image_uuid_starts_with',
        'unsafe_provision': 'unsafe_provision',
        'unsafe_provision_contains': 'unsafe_provision_contains',
        'unsafe_provision_ends_with': 'unsafe_provision_ends_with',
        'unsafe_provision_gt': 'unsafe_provision_gt',
        'unsafe_provision_gte': 'unsafe_provision_gte',
        'unsafe_provision_in': 'unsafe_provision_in',
        'unsafe_provision_lt': 'unsafe_provision_lt',
        'unsafe_provision_lte': 'unsafe_provision_lte',
        'unsafe_provision_not': 'unsafe_provision_not',
        'unsafe_provision_not_contains': 'unsafe_provision_not_contains',
        'unsafe_provision_not_ends_with': 'unsafe_provision_not_ends_with',
        'unsafe_provision_not_in': 'unsafe_provision_not_in',
        'unsafe_provision_not_starts_with': 'unsafe_provision_not_starts_with',
        'unsafe_provision_starts_with': 'unsafe_provision_starts_with',
        'vm': 'vm',
        'vm_volume': 'vm_volume'
    }

    def __init__(self, **kwargs):  # noqa: E501
        """VmDiskWhereInput - 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._boot = None
        self._boot_gt = None
        self._boot_gte = None
        self._boot_in = None
        self._boot_lt = None
        self._boot_lte = None
        self._boot_not = None
        self._boot_not_in = None
        self._bus = None
        self._bus_in = None
        self._bus_not = None
        self._bus_not_in = None
        self._cloud_init_image_name = None
        self._cloud_init_image_name_contains = None
        self._cloud_init_image_name_ends_with = None
        self._cloud_init_image_name_gt = None
        self._cloud_init_image_name_gte = None
        self._cloud_init_image_name_in = None
        self._cloud_init_image_name_lt = None
        self._cloud_init_image_name_lte = None
        self._cloud_init_image_name_not = None
        self._cloud_init_image_name_not_contains = None
        self._cloud_init_image_name_not_ends_with = None
        self._cloud_init_image_name_not_in = None
        self._cloud_init_image_name_not_starts_with = None
        self._cloud_init_image_name_starts_with = None
        self._cloud_init_image_path = None
        self._cloud_init_image_path_contains = None
        self._cloud_init_image_path_ends_with = None
        self._cloud_init_image_path_gt = None
        self._cloud_init_image_path_gte = None
        self._cloud_init_image_path_in = None
        self._cloud_init_image_path_lt = None
        self._cloud_init_image_path_lte = None
        self._cloud_init_image_path_not = None
        self._cloud_init_image_path_not_contains = None
        self._cloud_init_image_path_not_ends_with = None
        self._cloud_init_image_path_not_in = None
        self._cloud_init_image_path_not_starts_with = None
        self._cloud_init_image_path_starts_with = None
        self._device = None
        self._device_contains = None
        self._device_ends_with = None
        self._device_gt = None
        self._device_gte = None
        self._device_in = None
        self._device_lt = None
        self._device_lte = None
        self._device_not = None
        self._device_not_contains = None
        self._device_not_ends_with = None
        self._device_not_in = None
        self._device_not_starts_with = None
        self._device_starts_with = None
        self._disabled = None
        self._disabled_not = None
        self._elf_image = 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._key = None
        self._key_gt = None
        self._key_gte = None
        self._key_in = None
        self._key_lt = None
        self._key_lte = None
        self._key_not = None
        self._key_not_in = None
        self._max_bandwidth = None
        self._max_bandwidth_gt = None
        self._max_bandwidth_gte = None
        self._max_bandwidth_in = None
        self._max_bandwidth_lt = None
        self._max_bandwidth_lte = None
        self._max_bandwidth_not = None
        self._max_bandwidth_not_in = None
        self._max_bandwidth_policy = None
        self._max_bandwidth_policy_in = None
        self._max_bandwidth_policy_not = None
        self._max_bandwidth_policy_not_in = None
        self._max_iops = None
        self._max_iops_gt = None
        self._max_iops_gte = None
        self._max_iops_in = None
        self._max_iops_lt = None
        self._max_iops_lte = None
        self._max_iops_not = None
        self._max_iops_not_in = None
        self._max_iops_policy = None
        self._max_iops_policy_in = None
        self._max_iops_policy_not = None
        self._max_iops_policy_not_in = None
        self._serial = None
        self._serial_contains = None
        self._serial_ends_with = None
        self._serial_gt = None
        self._serial_gte = None
        self._serial_in = None
        self._serial_lt = None
        self._serial_lte = None
        self._serial_not = None
        self._serial_not_contains = None
        self._serial_not_ends_with = None
        self._serial_not_in = None
        self._serial_not_starts_with = None
        self._serial_starts_with = None
        self._svt_image = None
        self._type = None
        self._type_in = None
        self._type_not = None
        self._type_not_in = None
        self._unsafe_image_path = None
        self._unsafe_image_path_contains = None
        self._unsafe_image_path_ends_with = None
        self._unsafe_image_path_gt = None
        self._unsafe_image_path_gte = None
        self._unsafe_image_path_in = None
        self._unsafe_image_path_lt = None
        self._unsafe_image_path_lte = None
        self._unsafe_image_path_not = None
        self._unsafe_image_path_not_contains = None
        self._unsafe_image_path_not_ends_with = None
        self._unsafe_image_path_not_in = None
        self._unsafe_image_path_not_starts_with = None
        self._unsafe_image_path_starts_with = None
        self._unsafe_image_uuid = None
        self._unsafe_image_uuid_contains = None
        self._unsafe_image_uuid_ends_with = None
        self._unsafe_image_uuid_gt = None
        self._unsafe_image_uuid_gte = None
        self._unsafe_image_uuid_in = None
        self._unsafe_image_uuid_lt = None
        self._unsafe_image_uuid_lte = None
        self._unsafe_image_uuid_not = None
        self._unsafe_image_uuid_not_contains = None
        self._unsafe_image_uuid_not_ends_with = None
        self._unsafe_image_uuid_not_in = None
        self._unsafe_image_uuid_not_starts_with = None
        self._unsafe_image_uuid_starts_with = None
        self._unsafe_provision = None
        self._unsafe_provision_contains = None
        self._unsafe_provision_ends_with = None
        self._unsafe_provision_gt = None
        self._unsafe_provision_gte = None
        self._unsafe_provision_in = None
        self._unsafe_provision_lt = None
        self._unsafe_provision_lte = None
        self._unsafe_provision_not = None
        self._unsafe_provision_not_contains = None
        self._unsafe_provision_not_ends_with = None
        self._unsafe_provision_not_in = None
        self._unsafe_provision_not_starts_with = None
        self._unsafe_provision_starts_with = None
        self._vm = None
        self._vm_volume = None
        self.discriminator = None

        self._and = kwargs.get("_and", None)
        self._not = kwargs.get("_not", None)
        self._or = kwargs.get("_or", None)
        self.boot = kwargs.get("boot", None)
        self.boot_gt = kwargs.get("boot_gt", None)
        self.boot_gte = kwargs.get("boot_gte", None)
        self.boot_in = kwargs.get("boot_in", None)
        self.boot_lt = kwargs.get("boot_lt", None)
        self.boot_lte = kwargs.get("boot_lte", None)
        self.boot_not = kwargs.get("boot_not", None)
        self.boot_not_in = kwargs.get("boot_not_in", None)
        self.bus = kwargs.get("bus", None)
        self.bus_in = kwargs.get("bus_in", None)
        self.bus_not = kwargs.get("bus_not", None)
        self.bus_not_in = kwargs.get("bus_not_in", None)
        self.cloud_init_image_name = kwargs.get("cloud_init_image_name", None)
        self.cloud_init_image_name_contains = kwargs.get("cloud_init_image_name_contains", None)
        self.cloud_init_image_name_ends_with = kwargs.get("cloud_init_image_name_ends_with", None)
        self.cloud_init_image_name_gt = kwargs.get("cloud_init_image_name_gt", None)
        self.cloud_init_image_name_gte = kwargs.get("cloud_init_image_name_gte", None)
        self.cloud_init_image_name_in = kwargs.get("cloud_init_image_name_in", None)
        self.cloud_init_image_name_lt = kwargs.get("cloud_init_image_name_lt", None)
        self.cloud_init_image_name_lte = kwargs.get("cloud_init_image_name_lte", None)
        self.cloud_init_image_name_not = kwargs.get("cloud_init_image_name_not", None)
        self.cloud_init_image_name_not_contains = kwargs.get("cloud_init_image_name_not_contains", None)
        self.cloud_init_image_name_not_ends_with = kwargs.get("cloud_init_image_name_not_ends_with", None)
        self.cloud_init_image_name_not_in = kwargs.get("cloud_init_image_name_not_in", None)
        self.cloud_init_image_name_not_starts_with = kwargs.get("cloud_init_image_name_not_starts_with", None)
        self.cloud_init_image_name_starts_with = kwargs.get("cloud_init_image_name_starts_with", None)
        self.cloud_init_image_path = kwargs.get("cloud_init_image_path", None)
        self.cloud_init_image_path_contains = kwargs.get("cloud_init_image_path_contains", None)
        self.cloud_init_image_path_ends_with = kwargs.get("cloud_init_image_path_ends_with", None)
        self.cloud_init_image_path_gt = kwargs.get("cloud_init_image_path_gt", None)
        self.cloud_init_image_path_gte = kwargs.get("cloud_init_image_path_gte", None)
        self.cloud_init_image_path_in = kwargs.get("cloud_init_image_path_in", None)
        self.cloud_init_image_path_lt = kwargs.get("cloud_init_image_path_lt", None)
        self.cloud_init_image_path_lte = kwargs.get("cloud_init_image_path_lte", None)
        self.cloud_init_image_path_not = kwargs.get("cloud_init_image_path_not", None)
        self.cloud_init_image_path_not_contains = kwargs.get("cloud_init_image_path_not_contains", None)
        self.cloud_init_image_path_not_ends_with = kwargs.get("cloud_init_image_path_not_ends_with", None)
        self.cloud_init_image_path_not_in = kwargs.get("cloud_init_image_path_not_in", None)
        self.cloud_init_image_path_not_starts_with = kwargs.get("cloud_init_image_path_not_starts_with", None)
        self.cloud_init_image_path_starts_with = kwargs.get("cloud_init_image_path_starts_with", None)
        self.device = kwargs.get("device", None)
        self.device_contains = kwargs.get("device_contains", None)
        self.device_ends_with = kwargs.get("device_ends_with", None)
        self.device_gt = kwargs.get("device_gt", None)
        self.device_gte = kwargs.get("device_gte", None)
        self.device_in = kwargs.get("device_in", None)
        self.device_lt = kwargs.get("device_lt", None)
        self.device_lte = kwargs.get("device_lte", None)
        self.device_not = kwargs.get("device_not", None)
        self.device_not_contains = kwargs.get("device_not_contains", None)
        self.device_not_ends_with = kwargs.get("device_not_ends_with", None)
        self.device_not_in = kwargs.get("device_not_in", None)
        self.device_not_starts_with = kwargs.get("device_not_starts_with", None)
        self.device_starts_with = kwargs.get("device_starts_with", None)
        self.disabled = kwargs.get("disabled", None)
        self.disabled_not = kwargs.get("disabled_not", None)
        self.elf_image = kwargs.get("elf_image", 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.key = kwargs.get("key", None)
        self.key_gt = kwargs.get("key_gt", None)
        self.key_gte = kwargs.get("key_gte", None)
        self.key_in = kwargs.get("key_in", None)
        self.key_lt = kwargs.get("key_lt", None)
        self.key_lte = kwargs.get("key_lte", None)
        self.key_not = kwargs.get("key_not", None)
        self.key_not_in = kwargs.get("key_not_in", None)
        self.max_bandwidth = kwargs.get("max_bandwidth", None)
        self.max_bandwidth_gt = kwargs.get("max_bandwidth_gt", None)
        self.max_bandwidth_gte = kwargs.get("max_bandwidth_gte", None)
        self.max_bandwidth_in = kwargs.get("max_bandwidth_in", None)
        self.max_bandwidth_lt = kwargs.get("max_bandwidth_lt", None)
        self.max_bandwidth_lte = kwargs.get("max_bandwidth_lte", None)
        self.max_bandwidth_not = kwargs.get("max_bandwidth_not", None)
        self.max_bandwidth_not_in = kwargs.get("max_bandwidth_not_in", None)
        self.max_bandwidth_policy = kwargs.get("max_bandwidth_policy", None)
        self.max_bandwidth_policy_in = kwargs.get("max_bandwidth_policy_in", None)
        self.max_bandwidth_policy_not = kwargs.get("max_bandwidth_policy_not", None)
        self.max_bandwidth_policy_not_in = kwargs.get("max_bandwidth_policy_not_in", None)
        self.max_iops = kwargs.get("max_iops", None)
        self.max_iops_gt = kwargs.get("max_iops_gt", None)
        self.max_iops_gte = kwargs.get("max_iops_gte", None)
        self.max_iops_in = kwargs.get("max_iops_in", None)
        self.max_iops_lt = kwargs.get("max_iops_lt", None)
        self.max_iops_lte = kwargs.get("max_iops_lte", None)
        self.max_iops_not = kwargs.get("max_iops_not", None)
        self.max_iops_not_in = kwargs.get("max_iops_not_in", None)
        self.max_iops_policy = kwargs.get("max_iops_policy", None)
        self.max_iops_policy_in = kwargs.get("max_iops_policy_in", None)
        self.max_iops_policy_not = kwargs.get("max_iops_policy_not", None)
        self.max_iops_policy_not_in = kwargs.get("max_iops_policy_not_in", None)
        self.serial = kwargs.get("serial", None)
        self.serial_contains = kwargs.get("serial_contains", None)
        self.serial_ends_with = kwargs.get("serial_ends_with", None)
        self.serial_gt = kwargs.get("serial_gt", None)
        self.serial_gte = kwargs.get("serial_gte", None)
        self.serial_in = kwargs.get("serial_in", None)
        self.serial_lt = kwargs.get("serial_lt", None)
        self.serial_lte = kwargs.get("serial_lte", None)
        self.serial_not = kwargs.get("serial_not", None)
        self.serial_not_contains = kwargs.get("serial_not_contains", None)
        self.serial_not_ends_with = kwargs.get("serial_not_ends_with", None)
        self.serial_not_in = kwargs.get("serial_not_in", None)
        self.serial_not_starts_with = kwargs.get("serial_not_starts_with", None)
        self.serial_starts_with = kwargs.get("serial_starts_with", None)
        self.svt_image = kwargs.get("svt_image", None)
        self.type = kwargs.get("type", None)
        self.type_in = kwargs.get("type_in", None)
        self.type_not = kwargs.get("type_not", None)
        self.type_not_in = kwargs.get("type_not_in", None)
        self.unsafe_image_path = kwargs.get("unsafe_image_path", None)
        self.unsafe_image_path_contains = kwargs.get("unsafe_image_path_contains", None)
        self.unsafe_image_path_ends_with = kwargs.get("unsafe_image_path_ends_with", None)
        self.unsafe_image_path_gt = kwargs.get("unsafe_image_path_gt", None)
        self.unsafe_image_path_gte = kwargs.get("unsafe_image_path_gte", None)
        self.unsafe_image_path_in = kwargs.get("unsafe_image_path_in", None)
        self.unsafe_image_path_lt = kwargs.get("unsafe_image_path_lt", None)
        self.unsafe_image_path_lte = kwargs.get("unsafe_image_path_lte", None)
        self.unsafe_image_path_not = kwargs.get("unsafe_image_path_not", None)
        self.unsafe_image_path_not_contains = kwargs.get("unsafe_image_path_not_contains", None)
        self.unsafe_image_path_not_ends_with = kwargs.get("unsafe_image_path_not_ends_with", None)
        self.unsafe_image_path_not_in = kwargs.get("unsafe_image_path_not_in", None)
        self.unsafe_image_path_not_starts_with = kwargs.get("unsafe_image_path_not_starts_with", None)
        self.unsafe_image_path_starts_with = kwargs.get("unsafe_image_path_starts_with", None)
        self.unsafe_image_uuid = kwargs.get("unsafe_image_uuid", None)
        self.unsafe_image_uuid_contains = kwargs.get("unsafe_image_uuid_contains", None)
        self.unsafe_image_uuid_ends_with = kwargs.get("unsafe_image_uuid_ends_with", None)
        self.unsafe_image_uuid_gt = kwargs.get("unsafe_image_uuid_gt", None)
        self.unsafe_image_uuid_gte = kwargs.get("unsafe_image_uuid_gte", None)
        self.unsafe_image_uuid_in = kwargs.get("unsafe_image_uuid_in", None)
        self.unsafe_image_uuid_lt = kwargs.get("unsafe_image_uuid_lt", None)
        self.unsafe_image_uuid_lte = kwargs.get("unsafe_image_uuid_lte", None)
        self.unsafe_image_uuid_not = kwargs.get("unsafe_image_uuid_not", None)
        self.unsafe_image_uuid_not_contains = kwargs.get("unsafe_image_uuid_not_contains", None)
        self.unsafe_image_uuid_not_ends_with = kwargs.get("unsafe_image_uuid_not_ends_with", None)
        self.unsafe_image_uuid_not_in = kwargs.get("unsafe_image_uuid_not_in", None)
        self.unsafe_image_uuid_not_starts_with = kwargs.get("unsafe_image_uuid_not_starts_with", None)
        self.unsafe_image_uuid_starts_with = kwargs.get("unsafe_image_uuid_starts_with", None)
        self.unsafe_provision = kwargs.get("unsafe_provision", None)
        self.unsafe_provision_contains = kwargs.get("unsafe_provision_contains", None)
        self.unsafe_provision_ends_with = kwargs.get("unsafe_provision_ends_with", None)
        self.unsafe_provision_gt = kwargs.get("unsafe_provision_gt", None)
        self.unsafe_provision_gte = kwargs.get("unsafe_provision_gte", None)
        self.unsafe_provision_in = kwargs.get("unsafe_provision_in", None)
        self.unsafe_provision_lt = kwargs.get("unsafe_provision_lt", None)
        self.unsafe_provision_lte = kwargs.get("unsafe_provision_lte", None)
        self.unsafe_provision_not = kwargs.get("unsafe_provision_not", None)
        self.unsafe_provision_not_contains = kwargs.get("unsafe_provision_not_contains", None)
        self.unsafe_provision_not_ends_with = kwargs.get("unsafe_provision_not_ends_with", None)
        self.unsafe_provision_not_in = kwargs.get("unsafe_provision_not_in", None)
        self.unsafe_provision_not_starts_with = kwargs.get("unsafe_provision_not_starts_with", None)
        self.unsafe_provision_starts_with = kwargs.get("unsafe_provision_starts_with", None)
        self.vm = kwargs.get("vm", None)
        self.vm_volume = kwargs.get("vm_volume", None)

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


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

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


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

        self.__and = _and

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


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

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


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

        self.__not = _not

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


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

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


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

        self.__or = _or

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


        :return: The boot of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._boot

    @boot.setter
    def boot(self, boot):
        """Sets the boot of this VmDiskWhereInput.


        :param boot: The boot of this VmDiskWhereInput.  # noqa: E501
        :type boot: int
        """

        self._boot = boot

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


        :return: The boot_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._boot_gt

    @boot_gt.setter
    def boot_gt(self, boot_gt):
        """Sets the boot_gt of this VmDiskWhereInput.


        :param boot_gt: The boot_gt of this VmDiskWhereInput.  # noqa: E501
        :type boot_gt: int
        """

        self._boot_gt = boot_gt

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


        :return: The boot_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._boot_gte

    @boot_gte.setter
    def boot_gte(self, boot_gte):
        """Sets the boot_gte of this VmDiskWhereInput.


        :param boot_gte: The boot_gte of this VmDiskWhereInput.  # noqa: E501
        :type boot_gte: int
        """

        self._boot_gte = boot_gte

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


        :return: The boot_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._boot_in

    @boot_in.setter
    def boot_in(self, boot_in):
        """Sets the boot_in of this VmDiskWhereInput.


        :param boot_in: The boot_in of this VmDiskWhereInput.  # noqa: E501
        :type boot_in: list[int]
        """

        self._boot_in = boot_in

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


        :return: The boot_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._boot_lt

    @boot_lt.setter
    def boot_lt(self, boot_lt):
        """Sets the boot_lt of this VmDiskWhereInput.


        :param boot_lt: The boot_lt of this VmDiskWhereInput.  # noqa: E501
        :type boot_lt: int
        """

        self._boot_lt = boot_lt

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


        :return: The boot_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._boot_lte

    @boot_lte.setter
    def boot_lte(self, boot_lte):
        """Sets the boot_lte of this VmDiskWhereInput.


        :param boot_lte: The boot_lte of this VmDiskWhereInput.  # noqa: E501
        :type boot_lte: int
        """

        self._boot_lte = boot_lte

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


        :return: The boot_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._boot_not

    @boot_not.setter
    def boot_not(self, boot_not):
        """Sets the boot_not of this VmDiskWhereInput.


        :param boot_not: The boot_not of this VmDiskWhereInput.  # noqa: E501
        :type boot_not: int
        """

        self._boot_not = boot_not

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


        :return: The boot_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._boot_not_in

    @boot_not_in.setter
    def boot_not_in(self, boot_not_in):
        """Sets the boot_not_in of this VmDiskWhereInput.


        :param boot_not_in: The boot_not_in of this VmDiskWhereInput.  # noqa: E501
        :type boot_not_in: list[int]
        """

        self._boot_not_in = boot_not_in

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


        :return: The bus of this VmDiskWhereInput.  # noqa: E501
        :rtype: Bus
        """
        return self._bus

    @bus.setter
    def bus(self, bus):
        """Sets the bus of this VmDiskWhereInput.


        :param bus: The bus of this VmDiskWhereInput.  # noqa: E501
        :type bus: Bus
        """

        self._bus = bus

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


        :return: The bus_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[Bus]
        """
        return self._bus_in

    @bus_in.setter
    def bus_in(self, bus_in):
        """Sets the bus_in of this VmDiskWhereInput.


        :param bus_in: The bus_in of this VmDiskWhereInput.  # noqa: E501
        :type bus_in: list[Bus]
        """

        self._bus_in = bus_in

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


        :return: The bus_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: Bus
        """
        return self._bus_not

    @bus_not.setter
    def bus_not(self, bus_not):
        """Sets the bus_not of this VmDiskWhereInput.


        :param bus_not: The bus_not of this VmDiskWhereInput.  # noqa: E501
        :type bus_not: Bus
        """

        self._bus_not = bus_not

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


        :return: The bus_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[Bus]
        """
        return self._bus_not_in

    @bus_not_in.setter
    def bus_not_in(self, bus_not_in):
        """Sets the bus_not_in of this VmDiskWhereInput.


        :param bus_not_in: The bus_not_in of this VmDiskWhereInput.  # noqa: E501
        :type bus_not_in: list[Bus]
        """

        self._bus_not_in = bus_not_in

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


        :return: The cloud_init_image_name of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name

    @cloud_init_image_name.setter
    def cloud_init_image_name(self, cloud_init_image_name):
        """Sets the cloud_init_image_name of this VmDiskWhereInput.


        :param cloud_init_image_name: The cloud_init_image_name of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name: str
        """

        self._cloud_init_image_name = cloud_init_image_name

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


        :return: The cloud_init_image_name_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_contains

    @cloud_init_image_name_contains.setter
    def cloud_init_image_name_contains(self, cloud_init_image_name_contains):
        """Sets the cloud_init_image_name_contains of this VmDiskWhereInput.


        :param cloud_init_image_name_contains: The cloud_init_image_name_contains of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_contains: str
        """

        self._cloud_init_image_name_contains = cloud_init_image_name_contains

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


        :return: The cloud_init_image_name_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_ends_with

    @cloud_init_image_name_ends_with.setter
    def cloud_init_image_name_ends_with(self, cloud_init_image_name_ends_with):
        """Sets the cloud_init_image_name_ends_with of this VmDiskWhereInput.


        :param cloud_init_image_name_ends_with: The cloud_init_image_name_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_ends_with: str
        """

        self._cloud_init_image_name_ends_with = cloud_init_image_name_ends_with

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


        :return: The cloud_init_image_name_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_gt

    @cloud_init_image_name_gt.setter
    def cloud_init_image_name_gt(self, cloud_init_image_name_gt):
        """Sets the cloud_init_image_name_gt of this VmDiskWhereInput.


        :param cloud_init_image_name_gt: The cloud_init_image_name_gt of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_gt: str
        """

        self._cloud_init_image_name_gt = cloud_init_image_name_gt

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


        :return: The cloud_init_image_name_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_gte

    @cloud_init_image_name_gte.setter
    def cloud_init_image_name_gte(self, cloud_init_image_name_gte):
        """Sets the cloud_init_image_name_gte of this VmDiskWhereInput.


        :param cloud_init_image_name_gte: The cloud_init_image_name_gte of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_gte: str
        """

        self._cloud_init_image_name_gte = cloud_init_image_name_gte

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


        :return: The cloud_init_image_name_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._cloud_init_image_name_in

    @cloud_init_image_name_in.setter
    def cloud_init_image_name_in(self, cloud_init_image_name_in):
        """Sets the cloud_init_image_name_in of this VmDiskWhereInput.


        :param cloud_init_image_name_in: The cloud_init_image_name_in of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_in: list[str]
        """

        self._cloud_init_image_name_in = cloud_init_image_name_in

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


        :return: The cloud_init_image_name_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_lt

    @cloud_init_image_name_lt.setter
    def cloud_init_image_name_lt(self, cloud_init_image_name_lt):
        """Sets the cloud_init_image_name_lt of this VmDiskWhereInput.


        :param cloud_init_image_name_lt: The cloud_init_image_name_lt of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_lt: str
        """

        self._cloud_init_image_name_lt = cloud_init_image_name_lt

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


        :return: The cloud_init_image_name_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_lte

    @cloud_init_image_name_lte.setter
    def cloud_init_image_name_lte(self, cloud_init_image_name_lte):
        """Sets the cloud_init_image_name_lte of this VmDiskWhereInput.


        :param cloud_init_image_name_lte: The cloud_init_image_name_lte of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_lte: str
        """

        self._cloud_init_image_name_lte = cloud_init_image_name_lte

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


        :return: The cloud_init_image_name_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_not

    @cloud_init_image_name_not.setter
    def cloud_init_image_name_not(self, cloud_init_image_name_not):
        """Sets the cloud_init_image_name_not of this VmDiskWhereInput.


        :param cloud_init_image_name_not: The cloud_init_image_name_not of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_not: str
        """

        self._cloud_init_image_name_not = cloud_init_image_name_not

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


        :return: The cloud_init_image_name_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_not_contains

    @cloud_init_image_name_not_contains.setter
    def cloud_init_image_name_not_contains(self, cloud_init_image_name_not_contains):
        """Sets the cloud_init_image_name_not_contains of this VmDiskWhereInput.


        :param cloud_init_image_name_not_contains: The cloud_init_image_name_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_not_contains: str
        """

        self._cloud_init_image_name_not_contains = cloud_init_image_name_not_contains

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


        :return: The cloud_init_image_name_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_not_ends_with

    @cloud_init_image_name_not_ends_with.setter
    def cloud_init_image_name_not_ends_with(self, cloud_init_image_name_not_ends_with):
        """Sets the cloud_init_image_name_not_ends_with of this VmDiskWhereInput.


        :param cloud_init_image_name_not_ends_with: The cloud_init_image_name_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_not_ends_with: str
        """

        self._cloud_init_image_name_not_ends_with = cloud_init_image_name_not_ends_with

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


        :return: The cloud_init_image_name_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._cloud_init_image_name_not_in

    @cloud_init_image_name_not_in.setter
    def cloud_init_image_name_not_in(self, cloud_init_image_name_not_in):
        """Sets the cloud_init_image_name_not_in of this VmDiskWhereInput.


        :param cloud_init_image_name_not_in: The cloud_init_image_name_not_in of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_not_in: list[str]
        """

        self._cloud_init_image_name_not_in = cloud_init_image_name_not_in

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


        :return: The cloud_init_image_name_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_not_starts_with

    @cloud_init_image_name_not_starts_with.setter
    def cloud_init_image_name_not_starts_with(self, cloud_init_image_name_not_starts_with):
        """Sets the cloud_init_image_name_not_starts_with of this VmDiskWhereInput.


        :param cloud_init_image_name_not_starts_with: The cloud_init_image_name_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_not_starts_with: str
        """

        self._cloud_init_image_name_not_starts_with = cloud_init_image_name_not_starts_with

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


        :return: The cloud_init_image_name_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_name_starts_with

    @cloud_init_image_name_starts_with.setter
    def cloud_init_image_name_starts_with(self, cloud_init_image_name_starts_with):
        """Sets the cloud_init_image_name_starts_with of this VmDiskWhereInput.


        :param cloud_init_image_name_starts_with: The cloud_init_image_name_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_name_starts_with: str
        """

        self._cloud_init_image_name_starts_with = cloud_init_image_name_starts_with

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


        :return: The cloud_init_image_path of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path

    @cloud_init_image_path.setter
    def cloud_init_image_path(self, cloud_init_image_path):
        """Sets the cloud_init_image_path of this VmDiskWhereInput.


        :param cloud_init_image_path: The cloud_init_image_path of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path: str
        """

        self._cloud_init_image_path = cloud_init_image_path

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


        :return: The cloud_init_image_path_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_contains

    @cloud_init_image_path_contains.setter
    def cloud_init_image_path_contains(self, cloud_init_image_path_contains):
        """Sets the cloud_init_image_path_contains of this VmDiskWhereInput.


        :param cloud_init_image_path_contains: The cloud_init_image_path_contains of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_contains: str
        """

        self._cloud_init_image_path_contains = cloud_init_image_path_contains

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


        :return: The cloud_init_image_path_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_ends_with

    @cloud_init_image_path_ends_with.setter
    def cloud_init_image_path_ends_with(self, cloud_init_image_path_ends_with):
        """Sets the cloud_init_image_path_ends_with of this VmDiskWhereInput.


        :param cloud_init_image_path_ends_with: The cloud_init_image_path_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_ends_with: str
        """

        self._cloud_init_image_path_ends_with = cloud_init_image_path_ends_with

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


        :return: The cloud_init_image_path_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_gt

    @cloud_init_image_path_gt.setter
    def cloud_init_image_path_gt(self, cloud_init_image_path_gt):
        """Sets the cloud_init_image_path_gt of this VmDiskWhereInput.


        :param cloud_init_image_path_gt: The cloud_init_image_path_gt of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_gt: str
        """

        self._cloud_init_image_path_gt = cloud_init_image_path_gt

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


        :return: The cloud_init_image_path_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_gte

    @cloud_init_image_path_gte.setter
    def cloud_init_image_path_gte(self, cloud_init_image_path_gte):
        """Sets the cloud_init_image_path_gte of this VmDiskWhereInput.


        :param cloud_init_image_path_gte: The cloud_init_image_path_gte of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_gte: str
        """

        self._cloud_init_image_path_gte = cloud_init_image_path_gte

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


        :return: The cloud_init_image_path_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._cloud_init_image_path_in

    @cloud_init_image_path_in.setter
    def cloud_init_image_path_in(self, cloud_init_image_path_in):
        """Sets the cloud_init_image_path_in of this VmDiskWhereInput.


        :param cloud_init_image_path_in: The cloud_init_image_path_in of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_in: list[str]
        """

        self._cloud_init_image_path_in = cloud_init_image_path_in

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


        :return: The cloud_init_image_path_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_lt

    @cloud_init_image_path_lt.setter
    def cloud_init_image_path_lt(self, cloud_init_image_path_lt):
        """Sets the cloud_init_image_path_lt of this VmDiskWhereInput.


        :param cloud_init_image_path_lt: The cloud_init_image_path_lt of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_lt: str
        """

        self._cloud_init_image_path_lt = cloud_init_image_path_lt

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


        :return: The cloud_init_image_path_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_lte

    @cloud_init_image_path_lte.setter
    def cloud_init_image_path_lte(self, cloud_init_image_path_lte):
        """Sets the cloud_init_image_path_lte of this VmDiskWhereInput.


        :param cloud_init_image_path_lte: The cloud_init_image_path_lte of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_lte: str
        """

        self._cloud_init_image_path_lte = cloud_init_image_path_lte

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


        :return: The cloud_init_image_path_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_not

    @cloud_init_image_path_not.setter
    def cloud_init_image_path_not(self, cloud_init_image_path_not):
        """Sets the cloud_init_image_path_not of this VmDiskWhereInput.


        :param cloud_init_image_path_not: The cloud_init_image_path_not of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_not: str
        """

        self._cloud_init_image_path_not = cloud_init_image_path_not

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


        :return: The cloud_init_image_path_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_not_contains

    @cloud_init_image_path_not_contains.setter
    def cloud_init_image_path_not_contains(self, cloud_init_image_path_not_contains):
        """Sets the cloud_init_image_path_not_contains of this VmDiskWhereInput.


        :param cloud_init_image_path_not_contains: The cloud_init_image_path_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_not_contains: str
        """

        self._cloud_init_image_path_not_contains = cloud_init_image_path_not_contains

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


        :return: The cloud_init_image_path_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_not_ends_with

    @cloud_init_image_path_not_ends_with.setter
    def cloud_init_image_path_not_ends_with(self, cloud_init_image_path_not_ends_with):
        """Sets the cloud_init_image_path_not_ends_with of this VmDiskWhereInput.


        :param cloud_init_image_path_not_ends_with: The cloud_init_image_path_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_not_ends_with: str
        """

        self._cloud_init_image_path_not_ends_with = cloud_init_image_path_not_ends_with

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


        :return: The cloud_init_image_path_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._cloud_init_image_path_not_in

    @cloud_init_image_path_not_in.setter
    def cloud_init_image_path_not_in(self, cloud_init_image_path_not_in):
        """Sets the cloud_init_image_path_not_in of this VmDiskWhereInput.


        :param cloud_init_image_path_not_in: The cloud_init_image_path_not_in of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_not_in: list[str]
        """

        self._cloud_init_image_path_not_in = cloud_init_image_path_not_in

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


        :return: The cloud_init_image_path_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_not_starts_with

    @cloud_init_image_path_not_starts_with.setter
    def cloud_init_image_path_not_starts_with(self, cloud_init_image_path_not_starts_with):
        """Sets the cloud_init_image_path_not_starts_with of this VmDiskWhereInput.


        :param cloud_init_image_path_not_starts_with: The cloud_init_image_path_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_not_starts_with: str
        """

        self._cloud_init_image_path_not_starts_with = cloud_init_image_path_not_starts_with

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


        :return: The cloud_init_image_path_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._cloud_init_image_path_starts_with

    @cloud_init_image_path_starts_with.setter
    def cloud_init_image_path_starts_with(self, cloud_init_image_path_starts_with):
        """Sets the cloud_init_image_path_starts_with of this VmDiskWhereInput.


        :param cloud_init_image_path_starts_with: The cloud_init_image_path_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type cloud_init_image_path_starts_with: str
        """

        self._cloud_init_image_path_starts_with = cloud_init_image_path_starts_with

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


        :return: The device of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device

    @device.setter
    def device(self, device):
        """Sets the device of this VmDiskWhereInput.


        :param device: The device of this VmDiskWhereInput.  # noqa: E501
        :type device: str
        """

        self._device = device

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


        :return: The device_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_contains

    @device_contains.setter
    def device_contains(self, device_contains):
        """Sets the device_contains of this VmDiskWhereInput.


        :param device_contains: The device_contains of this VmDiskWhereInput.  # noqa: E501
        :type device_contains: str
        """

        self._device_contains = device_contains

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


        :return: The device_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_ends_with

    @device_ends_with.setter
    def device_ends_with(self, device_ends_with):
        """Sets the device_ends_with of this VmDiskWhereInput.


        :param device_ends_with: The device_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type device_ends_with: str
        """

        self._device_ends_with = device_ends_with

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


        :return: The device_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_gt

    @device_gt.setter
    def device_gt(self, device_gt):
        """Sets the device_gt of this VmDiskWhereInput.


        :param device_gt: The device_gt of this VmDiskWhereInput.  # noqa: E501
        :type device_gt: str
        """

        self._device_gt = device_gt

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


        :return: The device_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_gte

    @device_gte.setter
    def device_gte(self, device_gte):
        """Sets the device_gte of this VmDiskWhereInput.


        :param device_gte: The device_gte of this VmDiskWhereInput.  # noqa: E501
        :type device_gte: str
        """

        self._device_gte = device_gte

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


        :return: The device_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._device_in

    @device_in.setter
    def device_in(self, device_in):
        """Sets the device_in of this VmDiskWhereInput.


        :param device_in: The device_in of this VmDiskWhereInput.  # noqa: E501
        :type device_in: list[str]
        """

        self._device_in = device_in

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


        :return: The device_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_lt

    @device_lt.setter
    def device_lt(self, device_lt):
        """Sets the device_lt of this VmDiskWhereInput.


        :param device_lt: The device_lt of this VmDiskWhereInput.  # noqa: E501
        :type device_lt: str
        """

        self._device_lt = device_lt

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


        :return: The device_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_lte

    @device_lte.setter
    def device_lte(self, device_lte):
        """Sets the device_lte of this VmDiskWhereInput.


        :param device_lte: The device_lte of this VmDiskWhereInput.  # noqa: E501
        :type device_lte: str
        """

        self._device_lte = device_lte

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


        :return: The device_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_not

    @device_not.setter
    def device_not(self, device_not):
        """Sets the device_not of this VmDiskWhereInput.


        :param device_not: The device_not of this VmDiskWhereInput.  # noqa: E501
        :type device_not: str
        """

        self._device_not = device_not

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


        :return: The device_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_not_contains

    @device_not_contains.setter
    def device_not_contains(self, device_not_contains):
        """Sets the device_not_contains of this VmDiskWhereInput.


        :param device_not_contains: The device_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type device_not_contains: str
        """

        self._device_not_contains = device_not_contains

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


        :return: The device_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_not_ends_with

    @device_not_ends_with.setter
    def device_not_ends_with(self, device_not_ends_with):
        """Sets the device_not_ends_with of this VmDiskWhereInput.


        :param device_not_ends_with: The device_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type device_not_ends_with: str
        """

        self._device_not_ends_with = device_not_ends_with

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


        :return: The device_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._device_not_in

    @device_not_in.setter
    def device_not_in(self, device_not_in):
        """Sets the device_not_in of this VmDiskWhereInput.


        :param device_not_in: The device_not_in of this VmDiskWhereInput.  # noqa: E501
        :type device_not_in: list[str]
        """

        self._device_not_in = device_not_in

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


        :return: The device_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_not_starts_with

    @device_not_starts_with.setter
    def device_not_starts_with(self, device_not_starts_with):
        """Sets the device_not_starts_with of this VmDiskWhereInput.


        :param device_not_starts_with: The device_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type device_not_starts_with: str
        """

        self._device_not_starts_with = device_not_starts_with

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


        :return: The device_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._device_starts_with

    @device_starts_with.setter
    def device_starts_with(self, device_starts_with):
        """Sets the device_starts_with of this VmDiskWhereInput.


        :param device_starts_with: The device_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type device_starts_with: str
        """

        self._device_starts_with = device_starts_with

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


        :return: The disabled of this VmDiskWhereInput.  # noqa: E501
        :rtype: bool
        """
        return self._disabled

    @disabled.setter
    def disabled(self, disabled):
        """Sets the disabled of this VmDiskWhereInput.


        :param disabled: The disabled of this VmDiskWhereInput.  # noqa: E501
        :type disabled: bool
        """

        self._disabled = disabled

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


        :return: The disabled_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: bool
        """
        return self._disabled_not

    @disabled_not.setter
    def disabled_not(self, disabled_not):
        """Sets the disabled_not of this VmDiskWhereInput.


        :param disabled_not: The disabled_not of this VmDiskWhereInput.  # noqa: E501
        :type disabled_not: bool
        """

        self._disabled_not = disabled_not

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


        :return: The elf_image of this VmDiskWhereInput.  # noqa: E501
        :rtype: ElfImageWhereInput
        """
        return self._elf_image

    @elf_image.setter
    def elf_image(self, elf_image):
        """Sets the elf_image of this VmDiskWhereInput.


        :param elf_image: The elf_image of this VmDiskWhereInput.  # noqa: E501
        :type elf_image: ElfImageWhereInput
        """

        self._elf_image = elf_image

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


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

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


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

        self._id = id

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


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

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


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

        self._id_contains = id_contains

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


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


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


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

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


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

        self._id_gt = id_gt

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


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

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


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

        self._id_gte = id_gte

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


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

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


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

        self._id_in = id_in

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


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

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


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

        self._id_lt = id_lt

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


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

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


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

        self._id_lte = id_lte

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


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

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


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

        self._id_not = id_not

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


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


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


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


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


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


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


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


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


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


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

        self._id_starts_with = id_starts_with

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


        :return: The key of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._key

    @key.setter
    def key(self, key):
        """Sets the key of this VmDiskWhereInput.


        :param key: The key of this VmDiskWhereInput.  # noqa: E501
        :type key: int
        """

        self._key = key

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


        :return: The key_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._key_gt

    @key_gt.setter
    def key_gt(self, key_gt):
        """Sets the key_gt of this VmDiskWhereInput.


        :param key_gt: The key_gt of this VmDiskWhereInput.  # noqa: E501
        :type key_gt: int
        """

        self._key_gt = key_gt

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


        :return: The key_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._key_gte

    @key_gte.setter
    def key_gte(self, key_gte):
        """Sets the key_gte of this VmDiskWhereInput.


        :param key_gte: The key_gte of this VmDiskWhereInput.  # noqa: E501
        :type key_gte: int
        """

        self._key_gte = key_gte

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


        :return: The key_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._key_in

    @key_in.setter
    def key_in(self, key_in):
        """Sets the key_in of this VmDiskWhereInput.


        :param key_in: The key_in of this VmDiskWhereInput.  # noqa: E501
        :type key_in: list[int]
        """

        self._key_in = key_in

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


        :return: The key_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._key_lt

    @key_lt.setter
    def key_lt(self, key_lt):
        """Sets the key_lt of this VmDiskWhereInput.


        :param key_lt: The key_lt of this VmDiskWhereInput.  # noqa: E501
        :type key_lt: int
        """

        self._key_lt = key_lt

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


        :return: The key_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._key_lte

    @key_lte.setter
    def key_lte(self, key_lte):
        """Sets the key_lte of this VmDiskWhereInput.


        :param key_lte: The key_lte of this VmDiskWhereInput.  # noqa: E501
        :type key_lte: int
        """

        self._key_lte = key_lte

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


        :return: The key_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._key_not

    @key_not.setter
    def key_not(self, key_not):
        """Sets the key_not of this VmDiskWhereInput.


        :param key_not: The key_not of this VmDiskWhereInput.  # noqa: E501
        :type key_not: int
        """

        self._key_not = key_not

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


        :return: The key_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._key_not_in

    @key_not_in.setter
    def key_not_in(self, key_not_in):
        """Sets the key_not_in of this VmDiskWhereInput.


        :param key_not_in: The key_not_in of this VmDiskWhereInput.  # noqa: E501
        :type key_not_in: list[int]
        """

        self._key_not_in = key_not_in

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


        :return: The max_bandwidth of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_bandwidth

    @max_bandwidth.setter
    def max_bandwidth(self, max_bandwidth):
        """Sets the max_bandwidth of this VmDiskWhereInput.


        :param max_bandwidth: The max_bandwidth of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth: int
        """

        self._max_bandwidth = max_bandwidth

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


        :return: The max_bandwidth_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_bandwidth_gt

    @max_bandwidth_gt.setter
    def max_bandwidth_gt(self, max_bandwidth_gt):
        """Sets the max_bandwidth_gt of this VmDiskWhereInput.


        :param max_bandwidth_gt: The max_bandwidth_gt of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_gt: int
        """

        self._max_bandwidth_gt = max_bandwidth_gt

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


        :return: The max_bandwidth_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_bandwidth_gte

    @max_bandwidth_gte.setter
    def max_bandwidth_gte(self, max_bandwidth_gte):
        """Sets the max_bandwidth_gte of this VmDiskWhereInput.


        :param max_bandwidth_gte: The max_bandwidth_gte of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_gte: int
        """

        self._max_bandwidth_gte = max_bandwidth_gte

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


        :return: The max_bandwidth_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._max_bandwidth_in

    @max_bandwidth_in.setter
    def max_bandwidth_in(self, max_bandwidth_in):
        """Sets the max_bandwidth_in of this VmDiskWhereInput.


        :param max_bandwidth_in: The max_bandwidth_in of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_in: list[int]
        """

        self._max_bandwidth_in = max_bandwidth_in

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


        :return: The max_bandwidth_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_bandwidth_lt

    @max_bandwidth_lt.setter
    def max_bandwidth_lt(self, max_bandwidth_lt):
        """Sets the max_bandwidth_lt of this VmDiskWhereInput.


        :param max_bandwidth_lt: The max_bandwidth_lt of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_lt: int
        """

        self._max_bandwidth_lt = max_bandwidth_lt

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


        :return: The max_bandwidth_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_bandwidth_lte

    @max_bandwidth_lte.setter
    def max_bandwidth_lte(self, max_bandwidth_lte):
        """Sets the max_bandwidth_lte of this VmDiskWhereInput.


        :param max_bandwidth_lte: The max_bandwidth_lte of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_lte: int
        """

        self._max_bandwidth_lte = max_bandwidth_lte

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


        :return: The max_bandwidth_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_bandwidth_not

    @max_bandwidth_not.setter
    def max_bandwidth_not(self, max_bandwidth_not):
        """Sets the max_bandwidth_not of this VmDiskWhereInput.


        :param max_bandwidth_not: The max_bandwidth_not of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_not: int
        """

        self._max_bandwidth_not = max_bandwidth_not

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


        :return: The max_bandwidth_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._max_bandwidth_not_in

    @max_bandwidth_not_in.setter
    def max_bandwidth_not_in(self, max_bandwidth_not_in):
        """Sets the max_bandwidth_not_in of this VmDiskWhereInput.


        :param max_bandwidth_not_in: The max_bandwidth_not_in of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_not_in: list[int]
        """

        self._max_bandwidth_not_in = max_bandwidth_not_in

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


        :return: The max_bandwidth_policy of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmDiskIoRestrictType
        """
        return self._max_bandwidth_policy

    @max_bandwidth_policy.setter
    def max_bandwidth_policy(self, max_bandwidth_policy):
        """Sets the max_bandwidth_policy of this VmDiskWhereInput.


        :param max_bandwidth_policy: The max_bandwidth_policy of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_policy: VmDiskIoRestrictType
        """

        self._max_bandwidth_policy = max_bandwidth_policy

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


        :return: The max_bandwidth_policy_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[VmDiskIoRestrictType]
        """
        return self._max_bandwidth_policy_in

    @max_bandwidth_policy_in.setter
    def max_bandwidth_policy_in(self, max_bandwidth_policy_in):
        """Sets the max_bandwidth_policy_in of this VmDiskWhereInput.


        :param max_bandwidth_policy_in: The max_bandwidth_policy_in of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_policy_in: list[VmDiskIoRestrictType]
        """

        self._max_bandwidth_policy_in = max_bandwidth_policy_in

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


        :return: The max_bandwidth_policy_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmDiskIoRestrictType
        """
        return self._max_bandwidth_policy_not

    @max_bandwidth_policy_not.setter
    def max_bandwidth_policy_not(self, max_bandwidth_policy_not):
        """Sets the max_bandwidth_policy_not of this VmDiskWhereInput.


        :param max_bandwidth_policy_not: The max_bandwidth_policy_not of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_policy_not: VmDiskIoRestrictType
        """

        self._max_bandwidth_policy_not = max_bandwidth_policy_not

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


        :return: The max_bandwidth_policy_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[VmDiskIoRestrictType]
        """
        return self._max_bandwidth_policy_not_in

    @max_bandwidth_policy_not_in.setter
    def max_bandwidth_policy_not_in(self, max_bandwidth_policy_not_in):
        """Sets the max_bandwidth_policy_not_in of this VmDiskWhereInput.


        :param max_bandwidth_policy_not_in: The max_bandwidth_policy_not_in of this VmDiskWhereInput.  # noqa: E501
        :type max_bandwidth_policy_not_in: list[VmDiskIoRestrictType]
        """

        self._max_bandwidth_policy_not_in = max_bandwidth_policy_not_in

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


        :return: The max_iops of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_iops

    @max_iops.setter
    def max_iops(self, max_iops):
        """Sets the max_iops of this VmDiskWhereInput.


        :param max_iops: The max_iops of this VmDiskWhereInput.  # noqa: E501
        :type max_iops: int
        """

        self._max_iops = max_iops

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


        :return: The max_iops_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_iops_gt

    @max_iops_gt.setter
    def max_iops_gt(self, max_iops_gt):
        """Sets the max_iops_gt of this VmDiskWhereInput.


        :param max_iops_gt: The max_iops_gt of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_gt: int
        """

        self._max_iops_gt = max_iops_gt

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


        :return: The max_iops_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_iops_gte

    @max_iops_gte.setter
    def max_iops_gte(self, max_iops_gte):
        """Sets the max_iops_gte of this VmDiskWhereInput.


        :param max_iops_gte: The max_iops_gte of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_gte: int
        """

        self._max_iops_gte = max_iops_gte

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


        :return: The max_iops_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._max_iops_in

    @max_iops_in.setter
    def max_iops_in(self, max_iops_in):
        """Sets the max_iops_in of this VmDiskWhereInput.


        :param max_iops_in: The max_iops_in of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_in: list[int]
        """

        self._max_iops_in = max_iops_in

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


        :return: The max_iops_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_iops_lt

    @max_iops_lt.setter
    def max_iops_lt(self, max_iops_lt):
        """Sets the max_iops_lt of this VmDiskWhereInput.


        :param max_iops_lt: The max_iops_lt of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_lt: int
        """

        self._max_iops_lt = max_iops_lt

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


        :return: The max_iops_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_iops_lte

    @max_iops_lte.setter
    def max_iops_lte(self, max_iops_lte):
        """Sets the max_iops_lte of this VmDiskWhereInput.


        :param max_iops_lte: The max_iops_lte of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_lte: int
        """

        self._max_iops_lte = max_iops_lte

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


        :return: The max_iops_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: int
        """
        return self._max_iops_not

    @max_iops_not.setter
    def max_iops_not(self, max_iops_not):
        """Sets the max_iops_not of this VmDiskWhereInput.


        :param max_iops_not: The max_iops_not of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_not: int
        """

        self._max_iops_not = max_iops_not

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


        :return: The max_iops_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[int]
        """
        return self._max_iops_not_in

    @max_iops_not_in.setter
    def max_iops_not_in(self, max_iops_not_in):
        """Sets the max_iops_not_in of this VmDiskWhereInput.


        :param max_iops_not_in: The max_iops_not_in of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_not_in: list[int]
        """

        self._max_iops_not_in = max_iops_not_in

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


        :return: The max_iops_policy of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmDiskIoRestrictType
        """
        return self._max_iops_policy

    @max_iops_policy.setter
    def max_iops_policy(self, max_iops_policy):
        """Sets the max_iops_policy of this VmDiskWhereInput.


        :param max_iops_policy: The max_iops_policy of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_policy: VmDiskIoRestrictType
        """

        self._max_iops_policy = max_iops_policy

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


        :return: The max_iops_policy_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[VmDiskIoRestrictType]
        """
        return self._max_iops_policy_in

    @max_iops_policy_in.setter
    def max_iops_policy_in(self, max_iops_policy_in):
        """Sets the max_iops_policy_in of this VmDiskWhereInput.


        :param max_iops_policy_in: The max_iops_policy_in of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_policy_in: list[VmDiskIoRestrictType]
        """

        self._max_iops_policy_in = max_iops_policy_in

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


        :return: The max_iops_policy_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmDiskIoRestrictType
        """
        return self._max_iops_policy_not

    @max_iops_policy_not.setter
    def max_iops_policy_not(self, max_iops_policy_not):
        """Sets the max_iops_policy_not of this VmDiskWhereInput.


        :param max_iops_policy_not: The max_iops_policy_not of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_policy_not: VmDiskIoRestrictType
        """

        self._max_iops_policy_not = max_iops_policy_not

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


        :return: The max_iops_policy_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[VmDiskIoRestrictType]
        """
        return self._max_iops_policy_not_in

    @max_iops_policy_not_in.setter
    def max_iops_policy_not_in(self, max_iops_policy_not_in):
        """Sets the max_iops_policy_not_in of this VmDiskWhereInput.


        :param max_iops_policy_not_in: The max_iops_policy_not_in of this VmDiskWhereInput.  # noqa: E501
        :type max_iops_policy_not_in: list[VmDiskIoRestrictType]
        """

        self._max_iops_policy_not_in = max_iops_policy_not_in

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


        :return: The serial of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial

    @serial.setter
    def serial(self, serial):
        """Sets the serial of this VmDiskWhereInput.


        :param serial: The serial of this VmDiskWhereInput.  # noqa: E501
        :type serial: str
        """

        self._serial = serial

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


        :return: The serial_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_contains

    @serial_contains.setter
    def serial_contains(self, serial_contains):
        """Sets the serial_contains of this VmDiskWhereInput.


        :param serial_contains: The serial_contains of this VmDiskWhereInput.  # noqa: E501
        :type serial_contains: str
        """

        self._serial_contains = serial_contains

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


        :return: The serial_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_ends_with

    @serial_ends_with.setter
    def serial_ends_with(self, serial_ends_with):
        """Sets the serial_ends_with of this VmDiskWhereInput.


        :param serial_ends_with: The serial_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type serial_ends_with: str
        """

        self._serial_ends_with = serial_ends_with

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


        :return: The serial_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_gt

    @serial_gt.setter
    def serial_gt(self, serial_gt):
        """Sets the serial_gt of this VmDiskWhereInput.


        :param serial_gt: The serial_gt of this VmDiskWhereInput.  # noqa: E501
        :type serial_gt: str
        """

        self._serial_gt = serial_gt

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


        :return: The serial_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_gte

    @serial_gte.setter
    def serial_gte(self, serial_gte):
        """Sets the serial_gte of this VmDiskWhereInput.


        :param serial_gte: The serial_gte of this VmDiskWhereInput.  # noqa: E501
        :type serial_gte: str
        """

        self._serial_gte = serial_gte

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


        :return: The serial_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._serial_in

    @serial_in.setter
    def serial_in(self, serial_in):
        """Sets the serial_in of this VmDiskWhereInput.


        :param serial_in: The serial_in of this VmDiskWhereInput.  # noqa: E501
        :type serial_in: list[str]
        """

        self._serial_in = serial_in

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


        :return: The serial_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_lt

    @serial_lt.setter
    def serial_lt(self, serial_lt):
        """Sets the serial_lt of this VmDiskWhereInput.


        :param serial_lt: The serial_lt of this VmDiskWhereInput.  # noqa: E501
        :type serial_lt: str
        """

        self._serial_lt = serial_lt

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


        :return: The serial_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_lte

    @serial_lte.setter
    def serial_lte(self, serial_lte):
        """Sets the serial_lte of this VmDiskWhereInput.


        :param serial_lte: The serial_lte of this VmDiskWhereInput.  # noqa: E501
        :type serial_lte: str
        """

        self._serial_lte = serial_lte

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


        :return: The serial_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_not

    @serial_not.setter
    def serial_not(self, serial_not):
        """Sets the serial_not of this VmDiskWhereInput.


        :param serial_not: The serial_not of this VmDiskWhereInput.  # noqa: E501
        :type serial_not: str
        """

        self._serial_not = serial_not

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


        :return: The serial_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_not_contains

    @serial_not_contains.setter
    def serial_not_contains(self, serial_not_contains):
        """Sets the serial_not_contains of this VmDiskWhereInput.


        :param serial_not_contains: The serial_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type serial_not_contains: str
        """

        self._serial_not_contains = serial_not_contains

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


        :return: The serial_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_not_ends_with

    @serial_not_ends_with.setter
    def serial_not_ends_with(self, serial_not_ends_with):
        """Sets the serial_not_ends_with of this VmDiskWhereInput.


        :param serial_not_ends_with: The serial_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type serial_not_ends_with: str
        """

        self._serial_not_ends_with = serial_not_ends_with

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


        :return: The serial_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._serial_not_in

    @serial_not_in.setter
    def serial_not_in(self, serial_not_in):
        """Sets the serial_not_in of this VmDiskWhereInput.


        :param serial_not_in: The serial_not_in of this VmDiskWhereInput.  # noqa: E501
        :type serial_not_in: list[str]
        """

        self._serial_not_in = serial_not_in

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


        :return: The serial_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_not_starts_with

    @serial_not_starts_with.setter
    def serial_not_starts_with(self, serial_not_starts_with):
        """Sets the serial_not_starts_with of this VmDiskWhereInput.


        :param serial_not_starts_with: The serial_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type serial_not_starts_with: str
        """

        self._serial_not_starts_with = serial_not_starts_with

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


        :return: The serial_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._serial_starts_with

    @serial_starts_with.setter
    def serial_starts_with(self, serial_starts_with):
        """Sets the serial_starts_with of this VmDiskWhereInput.


        :param serial_starts_with: The serial_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type serial_starts_with: str
        """

        self._serial_starts_with = serial_starts_with

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


        :return: The svt_image of this VmDiskWhereInput.  # noqa: E501
        :rtype: SvtImageWhereInput
        """
        return self._svt_image

    @svt_image.setter
    def svt_image(self, svt_image):
        """Sets the svt_image of this VmDiskWhereInput.


        :param svt_image: The svt_image of this VmDiskWhereInput.  # noqa: E501
        :type svt_image: SvtImageWhereInput
        """

        self._svt_image = svt_image

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


        :return: The type of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmDiskType
        """
        return self._type

    @type.setter
    def type(self, type):
        """Sets the type of this VmDiskWhereInput.


        :param type: The type of this VmDiskWhereInput.  # noqa: E501
        :type type: VmDiskType
        """

        self._type = type

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


        :return: The type_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[VmDiskType]
        """
        return self._type_in

    @type_in.setter
    def type_in(self, type_in):
        """Sets the type_in of this VmDiskWhereInput.


        :param type_in: The type_in of this VmDiskWhereInput.  # noqa: E501
        :type type_in: list[VmDiskType]
        """

        self._type_in = type_in

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


        :return: The type_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmDiskType
        """
        return self._type_not

    @type_not.setter
    def type_not(self, type_not):
        """Sets the type_not of this VmDiskWhereInput.


        :param type_not: The type_not of this VmDiskWhereInput.  # noqa: E501
        :type type_not: VmDiskType
        """

        self._type_not = type_not

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


        :return: The type_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[VmDiskType]
        """
        return self._type_not_in

    @type_not_in.setter
    def type_not_in(self, type_not_in):
        """Sets the type_not_in of this VmDiskWhereInput.


        :param type_not_in: The type_not_in of this VmDiskWhereInput.  # noqa: E501
        :type type_not_in: list[VmDiskType]
        """

        self._type_not_in = type_not_in

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


        :return: The unsafe_image_path of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path

    @unsafe_image_path.setter
    def unsafe_image_path(self, unsafe_image_path):
        """Sets the unsafe_image_path of this VmDiskWhereInput.


        :param unsafe_image_path: The unsafe_image_path of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path: str
        """

        self._unsafe_image_path = unsafe_image_path

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


        :return: The unsafe_image_path_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_contains

    @unsafe_image_path_contains.setter
    def unsafe_image_path_contains(self, unsafe_image_path_contains):
        """Sets the unsafe_image_path_contains of this VmDiskWhereInput.


        :param unsafe_image_path_contains: The unsafe_image_path_contains of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_contains: str
        """

        self._unsafe_image_path_contains = unsafe_image_path_contains

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


        :return: The unsafe_image_path_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_ends_with

    @unsafe_image_path_ends_with.setter
    def unsafe_image_path_ends_with(self, unsafe_image_path_ends_with):
        """Sets the unsafe_image_path_ends_with of this VmDiskWhereInput.


        :param unsafe_image_path_ends_with: The unsafe_image_path_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_ends_with: str
        """

        self._unsafe_image_path_ends_with = unsafe_image_path_ends_with

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


        :return: The unsafe_image_path_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_gt

    @unsafe_image_path_gt.setter
    def unsafe_image_path_gt(self, unsafe_image_path_gt):
        """Sets the unsafe_image_path_gt of this VmDiskWhereInput.


        :param unsafe_image_path_gt: The unsafe_image_path_gt of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_gt: str
        """

        self._unsafe_image_path_gt = unsafe_image_path_gt

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


        :return: The unsafe_image_path_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_gte

    @unsafe_image_path_gte.setter
    def unsafe_image_path_gte(self, unsafe_image_path_gte):
        """Sets the unsafe_image_path_gte of this VmDiskWhereInput.


        :param unsafe_image_path_gte: The unsafe_image_path_gte of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_gte: str
        """

        self._unsafe_image_path_gte = unsafe_image_path_gte

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


        :return: The unsafe_image_path_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._unsafe_image_path_in

    @unsafe_image_path_in.setter
    def unsafe_image_path_in(self, unsafe_image_path_in):
        """Sets the unsafe_image_path_in of this VmDiskWhereInput.


        :param unsafe_image_path_in: The unsafe_image_path_in of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_in: list[str]
        """

        self._unsafe_image_path_in = unsafe_image_path_in

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


        :return: The unsafe_image_path_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_lt

    @unsafe_image_path_lt.setter
    def unsafe_image_path_lt(self, unsafe_image_path_lt):
        """Sets the unsafe_image_path_lt of this VmDiskWhereInput.


        :param unsafe_image_path_lt: The unsafe_image_path_lt of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_lt: str
        """

        self._unsafe_image_path_lt = unsafe_image_path_lt

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


        :return: The unsafe_image_path_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_lte

    @unsafe_image_path_lte.setter
    def unsafe_image_path_lte(self, unsafe_image_path_lte):
        """Sets the unsafe_image_path_lte of this VmDiskWhereInput.


        :param unsafe_image_path_lte: The unsafe_image_path_lte of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_lte: str
        """

        self._unsafe_image_path_lte = unsafe_image_path_lte

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


        :return: The unsafe_image_path_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_not

    @unsafe_image_path_not.setter
    def unsafe_image_path_not(self, unsafe_image_path_not):
        """Sets the unsafe_image_path_not of this VmDiskWhereInput.


        :param unsafe_image_path_not: The unsafe_image_path_not of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_not: str
        """

        self._unsafe_image_path_not = unsafe_image_path_not

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


        :return: The unsafe_image_path_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_not_contains

    @unsafe_image_path_not_contains.setter
    def unsafe_image_path_not_contains(self, unsafe_image_path_not_contains):
        """Sets the unsafe_image_path_not_contains of this VmDiskWhereInput.


        :param unsafe_image_path_not_contains: The unsafe_image_path_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_not_contains: str
        """

        self._unsafe_image_path_not_contains = unsafe_image_path_not_contains

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


        :return: The unsafe_image_path_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_not_ends_with

    @unsafe_image_path_not_ends_with.setter
    def unsafe_image_path_not_ends_with(self, unsafe_image_path_not_ends_with):
        """Sets the unsafe_image_path_not_ends_with of this VmDiskWhereInput.


        :param unsafe_image_path_not_ends_with: The unsafe_image_path_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_not_ends_with: str
        """

        self._unsafe_image_path_not_ends_with = unsafe_image_path_not_ends_with

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


        :return: The unsafe_image_path_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._unsafe_image_path_not_in

    @unsafe_image_path_not_in.setter
    def unsafe_image_path_not_in(self, unsafe_image_path_not_in):
        """Sets the unsafe_image_path_not_in of this VmDiskWhereInput.


        :param unsafe_image_path_not_in: The unsafe_image_path_not_in of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_not_in: list[str]
        """

        self._unsafe_image_path_not_in = unsafe_image_path_not_in

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


        :return: The unsafe_image_path_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_not_starts_with

    @unsafe_image_path_not_starts_with.setter
    def unsafe_image_path_not_starts_with(self, unsafe_image_path_not_starts_with):
        """Sets the unsafe_image_path_not_starts_with of this VmDiskWhereInput.


        :param unsafe_image_path_not_starts_with: The unsafe_image_path_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_not_starts_with: str
        """

        self._unsafe_image_path_not_starts_with = unsafe_image_path_not_starts_with

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


        :return: The unsafe_image_path_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_path_starts_with

    @unsafe_image_path_starts_with.setter
    def unsafe_image_path_starts_with(self, unsafe_image_path_starts_with):
        """Sets the unsafe_image_path_starts_with of this VmDiskWhereInput.


        :param unsafe_image_path_starts_with: The unsafe_image_path_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_path_starts_with: str
        """

        self._unsafe_image_path_starts_with = unsafe_image_path_starts_with

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


        :return: The unsafe_image_uuid of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid

    @unsafe_image_uuid.setter
    def unsafe_image_uuid(self, unsafe_image_uuid):
        """Sets the unsafe_image_uuid of this VmDiskWhereInput.


        :param unsafe_image_uuid: The unsafe_image_uuid of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid: str
        """

        self._unsafe_image_uuid = unsafe_image_uuid

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


        :return: The unsafe_image_uuid_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_contains

    @unsafe_image_uuid_contains.setter
    def unsafe_image_uuid_contains(self, unsafe_image_uuid_contains):
        """Sets the unsafe_image_uuid_contains of this VmDiskWhereInput.


        :param unsafe_image_uuid_contains: The unsafe_image_uuid_contains of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_contains: str
        """

        self._unsafe_image_uuid_contains = unsafe_image_uuid_contains

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


        :return: The unsafe_image_uuid_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_ends_with

    @unsafe_image_uuid_ends_with.setter
    def unsafe_image_uuid_ends_with(self, unsafe_image_uuid_ends_with):
        """Sets the unsafe_image_uuid_ends_with of this VmDiskWhereInput.


        :param unsafe_image_uuid_ends_with: The unsafe_image_uuid_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_ends_with: str
        """

        self._unsafe_image_uuid_ends_with = unsafe_image_uuid_ends_with

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


        :return: The unsafe_image_uuid_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_gt

    @unsafe_image_uuid_gt.setter
    def unsafe_image_uuid_gt(self, unsafe_image_uuid_gt):
        """Sets the unsafe_image_uuid_gt of this VmDiskWhereInput.


        :param unsafe_image_uuid_gt: The unsafe_image_uuid_gt of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_gt: str
        """

        self._unsafe_image_uuid_gt = unsafe_image_uuid_gt

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


        :return: The unsafe_image_uuid_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_gte

    @unsafe_image_uuid_gte.setter
    def unsafe_image_uuid_gte(self, unsafe_image_uuid_gte):
        """Sets the unsafe_image_uuid_gte of this VmDiskWhereInput.


        :param unsafe_image_uuid_gte: The unsafe_image_uuid_gte of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_gte: str
        """

        self._unsafe_image_uuid_gte = unsafe_image_uuid_gte

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


        :return: The unsafe_image_uuid_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._unsafe_image_uuid_in

    @unsafe_image_uuid_in.setter
    def unsafe_image_uuid_in(self, unsafe_image_uuid_in):
        """Sets the unsafe_image_uuid_in of this VmDiskWhereInput.


        :param unsafe_image_uuid_in: The unsafe_image_uuid_in of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_in: list[str]
        """

        self._unsafe_image_uuid_in = unsafe_image_uuid_in

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


        :return: The unsafe_image_uuid_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_lt

    @unsafe_image_uuid_lt.setter
    def unsafe_image_uuid_lt(self, unsafe_image_uuid_lt):
        """Sets the unsafe_image_uuid_lt of this VmDiskWhereInput.


        :param unsafe_image_uuid_lt: The unsafe_image_uuid_lt of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_lt: str
        """

        self._unsafe_image_uuid_lt = unsafe_image_uuid_lt

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


        :return: The unsafe_image_uuid_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_lte

    @unsafe_image_uuid_lte.setter
    def unsafe_image_uuid_lte(self, unsafe_image_uuid_lte):
        """Sets the unsafe_image_uuid_lte of this VmDiskWhereInput.


        :param unsafe_image_uuid_lte: The unsafe_image_uuid_lte of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_lte: str
        """

        self._unsafe_image_uuid_lte = unsafe_image_uuid_lte

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


        :return: The unsafe_image_uuid_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_not

    @unsafe_image_uuid_not.setter
    def unsafe_image_uuid_not(self, unsafe_image_uuid_not):
        """Sets the unsafe_image_uuid_not of this VmDiskWhereInput.


        :param unsafe_image_uuid_not: The unsafe_image_uuid_not of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_not: str
        """

        self._unsafe_image_uuid_not = unsafe_image_uuid_not

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


        :return: The unsafe_image_uuid_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_not_contains

    @unsafe_image_uuid_not_contains.setter
    def unsafe_image_uuid_not_contains(self, unsafe_image_uuid_not_contains):
        """Sets the unsafe_image_uuid_not_contains of this VmDiskWhereInput.


        :param unsafe_image_uuid_not_contains: The unsafe_image_uuid_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_not_contains: str
        """

        self._unsafe_image_uuid_not_contains = unsafe_image_uuid_not_contains

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


        :return: The unsafe_image_uuid_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_not_ends_with

    @unsafe_image_uuid_not_ends_with.setter
    def unsafe_image_uuid_not_ends_with(self, unsafe_image_uuid_not_ends_with):
        """Sets the unsafe_image_uuid_not_ends_with of this VmDiskWhereInput.


        :param unsafe_image_uuid_not_ends_with: The unsafe_image_uuid_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_not_ends_with: str
        """

        self._unsafe_image_uuid_not_ends_with = unsafe_image_uuid_not_ends_with

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


        :return: The unsafe_image_uuid_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._unsafe_image_uuid_not_in

    @unsafe_image_uuid_not_in.setter
    def unsafe_image_uuid_not_in(self, unsafe_image_uuid_not_in):
        """Sets the unsafe_image_uuid_not_in of this VmDiskWhereInput.


        :param unsafe_image_uuid_not_in: The unsafe_image_uuid_not_in of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_not_in: list[str]
        """

        self._unsafe_image_uuid_not_in = unsafe_image_uuid_not_in

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


        :return: The unsafe_image_uuid_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_not_starts_with

    @unsafe_image_uuid_not_starts_with.setter
    def unsafe_image_uuid_not_starts_with(self, unsafe_image_uuid_not_starts_with):
        """Sets the unsafe_image_uuid_not_starts_with of this VmDiskWhereInput.


        :param unsafe_image_uuid_not_starts_with: The unsafe_image_uuid_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_not_starts_with: str
        """

        self._unsafe_image_uuid_not_starts_with = unsafe_image_uuid_not_starts_with

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


        :return: The unsafe_image_uuid_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_image_uuid_starts_with

    @unsafe_image_uuid_starts_with.setter
    def unsafe_image_uuid_starts_with(self, unsafe_image_uuid_starts_with):
        """Sets the unsafe_image_uuid_starts_with of this VmDiskWhereInput.


        :param unsafe_image_uuid_starts_with: The unsafe_image_uuid_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_image_uuid_starts_with: str
        """

        self._unsafe_image_uuid_starts_with = unsafe_image_uuid_starts_with

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


        :return: The unsafe_provision of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision

    @unsafe_provision.setter
    def unsafe_provision(self, unsafe_provision):
        """Sets the unsafe_provision of this VmDiskWhereInput.


        :param unsafe_provision: The unsafe_provision of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision: str
        """

        self._unsafe_provision = unsafe_provision

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


        :return: The unsafe_provision_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_contains

    @unsafe_provision_contains.setter
    def unsafe_provision_contains(self, unsafe_provision_contains):
        """Sets the unsafe_provision_contains of this VmDiskWhereInput.


        :param unsafe_provision_contains: The unsafe_provision_contains of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_contains: str
        """

        self._unsafe_provision_contains = unsafe_provision_contains

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


        :return: The unsafe_provision_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_ends_with

    @unsafe_provision_ends_with.setter
    def unsafe_provision_ends_with(self, unsafe_provision_ends_with):
        """Sets the unsafe_provision_ends_with of this VmDiskWhereInput.


        :param unsafe_provision_ends_with: The unsafe_provision_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_ends_with: str
        """

        self._unsafe_provision_ends_with = unsafe_provision_ends_with

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


        :return: The unsafe_provision_gt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_gt

    @unsafe_provision_gt.setter
    def unsafe_provision_gt(self, unsafe_provision_gt):
        """Sets the unsafe_provision_gt of this VmDiskWhereInput.


        :param unsafe_provision_gt: The unsafe_provision_gt of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_gt: str
        """

        self._unsafe_provision_gt = unsafe_provision_gt

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


        :return: The unsafe_provision_gte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_gte

    @unsafe_provision_gte.setter
    def unsafe_provision_gte(self, unsafe_provision_gte):
        """Sets the unsafe_provision_gte of this VmDiskWhereInput.


        :param unsafe_provision_gte: The unsafe_provision_gte of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_gte: str
        """

        self._unsafe_provision_gte = unsafe_provision_gte

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


        :return: The unsafe_provision_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._unsafe_provision_in

    @unsafe_provision_in.setter
    def unsafe_provision_in(self, unsafe_provision_in):
        """Sets the unsafe_provision_in of this VmDiskWhereInput.


        :param unsafe_provision_in: The unsafe_provision_in of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_in: list[str]
        """

        self._unsafe_provision_in = unsafe_provision_in

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


        :return: The unsafe_provision_lt of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_lt

    @unsafe_provision_lt.setter
    def unsafe_provision_lt(self, unsafe_provision_lt):
        """Sets the unsafe_provision_lt of this VmDiskWhereInput.


        :param unsafe_provision_lt: The unsafe_provision_lt of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_lt: str
        """

        self._unsafe_provision_lt = unsafe_provision_lt

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


        :return: The unsafe_provision_lte of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_lte

    @unsafe_provision_lte.setter
    def unsafe_provision_lte(self, unsafe_provision_lte):
        """Sets the unsafe_provision_lte of this VmDiskWhereInput.


        :param unsafe_provision_lte: The unsafe_provision_lte of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_lte: str
        """

        self._unsafe_provision_lte = unsafe_provision_lte

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


        :return: The unsafe_provision_not of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_not

    @unsafe_provision_not.setter
    def unsafe_provision_not(self, unsafe_provision_not):
        """Sets the unsafe_provision_not of this VmDiskWhereInput.


        :param unsafe_provision_not: The unsafe_provision_not of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_not: str
        """

        self._unsafe_provision_not = unsafe_provision_not

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


        :return: The unsafe_provision_not_contains of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_not_contains

    @unsafe_provision_not_contains.setter
    def unsafe_provision_not_contains(self, unsafe_provision_not_contains):
        """Sets the unsafe_provision_not_contains of this VmDiskWhereInput.


        :param unsafe_provision_not_contains: The unsafe_provision_not_contains of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_not_contains: str
        """

        self._unsafe_provision_not_contains = unsafe_provision_not_contains

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


        :return: The unsafe_provision_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_not_ends_with

    @unsafe_provision_not_ends_with.setter
    def unsafe_provision_not_ends_with(self, unsafe_provision_not_ends_with):
        """Sets the unsafe_provision_not_ends_with of this VmDiskWhereInput.


        :param unsafe_provision_not_ends_with: The unsafe_provision_not_ends_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_not_ends_with: str
        """

        self._unsafe_provision_not_ends_with = unsafe_provision_not_ends_with

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


        :return: The unsafe_provision_not_in of this VmDiskWhereInput.  # noqa: E501
        :rtype: list[str]
        """
        return self._unsafe_provision_not_in

    @unsafe_provision_not_in.setter
    def unsafe_provision_not_in(self, unsafe_provision_not_in):
        """Sets the unsafe_provision_not_in of this VmDiskWhereInput.


        :param unsafe_provision_not_in: The unsafe_provision_not_in of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_not_in: list[str]
        """

        self._unsafe_provision_not_in = unsafe_provision_not_in

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


        :return: The unsafe_provision_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_not_starts_with

    @unsafe_provision_not_starts_with.setter
    def unsafe_provision_not_starts_with(self, unsafe_provision_not_starts_with):
        """Sets the unsafe_provision_not_starts_with of this VmDiskWhereInput.


        :param unsafe_provision_not_starts_with: The unsafe_provision_not_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_not_starts_with: str
        """

        self._unsafe_provision_not_starts_with = unsafe_provision_not_starts_with

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


        :return: The unsafe_provision_starts_with of this VmDiskWhereInput.  # noqa: E501
        :rtype: str
        """
        return self._unsafe_provision_starts_with

    @unsafe_provision_starts_with.setter
    def unsafe_provision_starts_with(self, unsafe_provision_starts_with):
        """Sets the unsafe_provision_starts_with of this VmDiskWhereInput.


        :param unsafe_provision_starts_with: The unsafe_provision_starts_with of this VmDiskWhereInput.  # noqa: E501
        :type unsafe_provision_starts_with: str
        """

        self._unsafe_provision_starts_with = unsafe_provision_starts_with

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


        :return: The vm of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmWhereInput
        """
        return self._vm

    @vm.setter
    def vm(self, vm):
        """Sets the vm of this VmDiskWhereInput.


        :param vm: The vm of this VmDiskWhereInput.  # noqa: E501
        :type vm: VmWhereInput
        """

        self._vm = vm

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


        :return: The vm_volume of this VmDiskWhereInput.  # noqa: E501
        :rtype: VmVolumeWhereInput
        """
        return self._vm_volume

    @vm_volume.setter
    def vm_volume(self, vm_volume):
        """Sets the vm_volume of this VmDiskWhereInput.


        :param vm_volume: The vm_volume of this VmDiskWhereInput.  # noqa: E501
        :type vm_volume: VmVolumeWhereInput
        """

        self._vm_volume = vm_volume

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

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