# coding: utf-8

"""
    Pdf4me

    No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)  # noqa: E501

    OpenAPI spec version: v1
    
    Generated by: https://github.com/swagger-api/swagger-codegen.git
"""


import pprint
import re  # noqa: F401

import six

from pdf4me.model.rgb_set import RGBSet  # noqa: F401,E501


class CustomCMSConfig(object):
    """NOTE: This class is auto generated by the swagger code generator program.

    Do not edit the class manually.
    """

    """
    Attributes:
      swagger_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.
    """
    swagger_types = {
        'white': 'RGBSet',
        'c': 'RGBSet',
        'm': 'RGBSet',
        'y': 'RGBSet',
        'k': 'RGBSet',
        'cm': 'RGBSet',
        'cy': 'RGBSet',
        'ck': 'RGBSet',
        'my': 'RGBSet',
        'mk': 'RGBSet',
        'yk': 'RGBSet',
        'cmy': 'RGBSet',
        'cmk': 'RGBSet',
        'cyk': 'RGBSet',
        'myk': 'RGBSet',
        'cmyk': 'RGBSet'
    }

    attribute_map = {
        'white': 'white',
        'c': 'c',
        'm': 'm',
        'y': 'y',
        'k': 'k',
        'cm': 'cm',
        'cy': 'cy',
        'ck': 'ck',
        'my': 'my',
        'mk': 'mk',
        'yk': 'yk',
        'cmy': 'cmy',
        'cmk': 'cmk',
        'cyk': 'cyk',
        'myk': 'myk',
        'cmyk': 'cmyk'
    }

    def __init__(self, white=None, c=None, m=None, y=None, k=None, cm=None, cy=None, ck=None, my=None, mk=None, yk=None, cmy=None, cmk=None, cyk=None, myk=None, cmyk=None):  # noqa: E501
        """CustomCMSConfig - a model defined in Swagger"""  # noqa: E501

        self._white = None
        self._c = None
        self._m = None
        self._y = None
        self._k = None
        self._cm = None
        self._cy = None
        self._ck = None
        self._my = None
        self._mk = None
        self._yk = None
        self._cmy = None
        self._cmk = None
        self._cyk = None
        self._myk = None
        self._cmyk = None
        self.discriminator = None

        if white is not None:
            self.white = white
        if c is not None:
            self.c = c
        if m is not None:
            self.m = m
        if y is not None:
            self.y = y
        if k is not None:
            self.k = k
        if cm is not None:
            self.cm = cm
        if cy is not None:
            self.cy = cy
        if ck is not None:
            self.ck = ck
        if my is not None:
            self.my = my
        if mk is not None:
            self.mk = mk
        if yk is not None:
            self.yk = yk
        if cmy is not None:
            self.cmy = cmy
        if cmk is not None:
            self.cmk = cmk
        if cyk is not None:
            self.cyk = cyk
        if myk is not None:
            self.myk = myk
        if cmyk is not None:
            self.cmyk = cmyk

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


        :return: The white of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._white

    @white.setter
    def white(self, white):
        """Sets the white of this CustomCMSConfig.


        :param white: The white of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._white = white

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


        :return: The c of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._c

    @c.setter
    def c(self, c):
        """Sets the c of this CustomCMSConfig.


        :param c: The c of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._c = c

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


        :return: The m of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._m

    @m.setter
    def m(self, m):
        """Sets the m of this CustomCMSConfig.


        :param m: The m of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._m = m

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


        :return: The y of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._y

    @y.setter
    def y(self, y):
        """Sets the y of this CustomCMSConfig.


        :param y: The y of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._y = y

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


        :return: The k of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._k

    @k.setter
    def k(self, k):
        """Sets the k of this CustomCMSConfig.


        :param k: The k of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._k = k

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


        :return: The cm of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._cm

    @cm.setter
    def cm(self, cm):
        """Sets the cm of this CustomCMSConfig.


        :param cm: The cm of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._cm = cm

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


        :return: The cy of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._cy

    @cy.setter
    def cy(self, cy):
        """Sets the cy of this CustomCMSConfig.


        :param cy: The cy of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._cy = cy

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


        :return: The ck of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._ck

    @ck.setter
    def ck(self, ck):
        """Sets the ck of this CustomCMSConfig.


        :param ck: The ck of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._ck = ck

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


        :return: The my of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._my

    @my.setter
    def my(self, my):
        """Sets the my of this CustomCMSConfig.


        :param my: The my of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._my = my

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


        :return: The mk of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._mk

    @mk.setter
    def mk(self, mk):
        """Sets the mk of this CustomCMSConfig.


        :param mk: The mk of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._mk = mk

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


        :return: The yk of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._yk

    @yk.setter
    def yk(self, yk):
        """Sets the yk of this CustomCMSConfig.


        :param yk: The yk of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._yk = yk

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


        :return: The cmy of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._cmy

    @cmy.setter
    def cmy(self, cmy):
        """Sets the cmy of this CustomCMSConfig.


        :param cmy: The cmy of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._cmy = cmy

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


        :return: The cmk of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._cmk

    @cmk.setter
    def cmk(self, cmk):
        """Sets the cmk of this CustomCMSConfig.


        :param cmk: The cmk of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._cmk = cmk

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


        :return: The cyk of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._cyk

    @cyk.setter
    def cyk(self, cyk):
        """Sets the cyk of this CustomCMSConfig.


        :param cyk: The cyk of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._cyk = cyk

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


        :return: The myk of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._myk

    @myk.setter
    def myk(self, myk):
        """Sets the myk of this CustomCMSConfig.


        :param myk: The myk of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._myk = myk

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


        :return: The cmyk of this CustomCMSConfig.  # noqa: E501
        :rtype: RGBSet
        """
        return self._cmyk

    @cmyk.setter
    def cmyk(self, cmyk):
        """Sets the cmyk of this CustomCMSConfig.


        :param cmyk: The cmyk of this CustomCMSConfig.  # noqa: E501
        :type: RGBSet
        """

        self._cmyk = cmyk

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

        for attr, _ in six.iteritems(self.swagger_types):
            value = getattr(self, attr)
            if isinstance(value, list):
                result[attr] = list(map(
                    lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
                    value
                ))
            elif hasattr(value, "to_dict"):
                result[attr] = value.to_dict()
            elif isinstance(value, dict):
                result[attr] = dict(map(
                    lambda item: (item[0], item[1].to_dict())
                    if hasattr(item[1], "to_dict") else item,
                    value.items()
                ))
            else:
                result[attr] = value
        if issubclass(CustomCMSConfig, dict):
            for key, value in self.items():
                result[key] = 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, CustomCMSConfig):
            return False

        return self.__dict__ == other.__dict__

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