# coding: utf-8

"""
    NHL API

    Documenting the publicly accessible portions of the NHL API.  # noqa: E501

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

import pprint
import re  # noqa: F401

import six

class GameBoxscoreTeamTeamStatsTeamSkaterStats(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 = {
        'goals': 'float',
        'pim': 'float',
        'shots': 'float',
        'power_play_percentage': 'str',
        'power_play_goals': 'float',
        'power_play_opportunities': 'float',
        'face_off_win_percentage': 'str',
        'blocked': 'float',
        'takeaways': 'float',
        'giveaways': 'float',
        'hits': 'float'
    }

    attribute_map = {
        'goals': 'goals',
        'pim': 'pim',
        'shots': 'shots',
        'power_play_percentage': 'powerPlayPercentage',
        'power_play_goals': 'powerPlayGoals',
        'power_play_opportunities': 'powerPlayOpportunities',
        'face_off_win_percentage': 'faceOffWinPercentage',
        'blocked': 'blocked',
        'takeaways': 'takeaways',
        'giveaways': 'giveaways',
        'hits': 'hits'
    }

    def __init__(self, goals=None, pim=None, shots=None, power_play_percentage=None, power_play_goals=None, power_play_opportunities=None, face_off_win_percentage=None, blocked=None, takeaways=None, giveaways=None, hits=None):  # noqa: E501
        """GameBoxscoreTeamTeamStatsTeamSkaterStats - a model defined in Swagger"""  # noqa: E501
        self._goals = None
        self._pim = None
        self._shots = None
        self._power_play_percentage = None
        self._power_play_goals = None
        self._power_play_opportunities = None
        self._face_off_win_percentage = None
        self._blocked = None
        self._takeaways = None
        self._giveaways = None
        self._hits = None
        self.discriminator = None
        if goals is not None:
            self.goals = goals
        if pim is not None:
            self.pim = pim
        if shots is not None:
            self.shots = shots
        if power_play_percentage is not None:
            self.power_play_percentage = power_play_percentage
        if power_play_goals is not None:
            self.power_play_goals = power_play_goals
        if power_play_opportunities is not None:
            self.power_play_opportunities = power_play_opportunities
        if face_off_win_percentage is not None:
            self.face_off_win_percentage = face_off_win_percentage
        if blocked is not None:
            self.blocked = blocked
        if takeaways is not None:
            self.takeaways = takeaways
        if giveaways is not None:
            self.giveaways = giveaways
        if hits is not None:
            self.hits = hits

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


        :return: The goals of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._goals

    @goals.setter
    def goals(self, goals):
        """Sets the goals of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param goals: The goals of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._goals = goals

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


        :return: The pim of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._pim

    @pim.setter
    def pim(self, pim):
        """Sets the pim of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param pim: The pim of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._pim = pim

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


        :return: The shots of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._shots

    @shots.setter
    def shots(self, shots):
        """Sets the shots of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param shots: The shots of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._shots = shots

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


        :return: The power_play_percentage of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: str
        """
        return self._power_play_percentage

    @power_play_percentage.setter
    def power_play_percentage(self, power_play_percentage):
        """Sets the power_play_percentage of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param power_play_percentage: The power_play_percentage of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: str
        """

        self._power_play_percentage = power_play_percentage

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


        :return: The power_play_goals of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._power_play_goals

    @power_play_goals.setter
    def power_play_goals(self, power_play_goals):
        """Sets the power_play_goals of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param power_play_goals: The power_play_goals of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._power_play_goals = power_play_goals

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


        :return: The power_play_opportunities of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._power_play_opportunities

    @power_play_opportunities.setter
    def power_play_opportunities(self, power_play_opportunities):
        """Sets the power_play_opportunities of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param power_play_opportunities: The power_play_opportunities of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._power_play_opportunities = power_play_opportunities

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


        :return: The face_off_win_percentage of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: str
        """
        return self._face_off_win_percentage

    @face_off_win_percentage.setter
    def face_off_win_percentage(self, face_off_win_percentage):
        """Sets the face_off_win_percentage of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param face_off_win_percentage: The face_off_win_percentage of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: str
        """

        self._face_off_win_percentage = face_off_win_percentage

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


        :return: The blocked of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._blocked

    @blocked.setter
    def blocked(self, blocked):
        """Sets the blocked of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param blocked: The blocked of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._blocked = blocked

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


        :return: The takeaways of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._takeaways

    @takeaways.setter
    def takeaways(self, takeaways):
        """Sets the takeaways of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param takeaways: The takeaways of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._takeaways = takeaways

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


        :return: The giveaways of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._giveaways

    @giveaways.setter
    def giveaways(self, giveaways):
        """Sets the giveaways of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param giveaways: The giveaways of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._giveaways = giveaways

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


        :return: The hits of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :rtype: float
        """
        return self._hits

    @hits.setter
    def hits(self, hits):
        """Sets the hits of this GameBoxscoreTeamTeamStatsTeamSkaterStats.


        :param hits: The hits of this GameBoxscoreTeamTeamStatsTeamSkaterStats.  # noqa: E501
        :type: float
        """

        self._hits = hits

    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(GameBoxscoreTeamTeamStatsTeamSkaterStats, 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, GameBoxscoreTeamTeamStatsTeamSkaterStats):
            return False

        return self.__dict__ == other.__dict__

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