//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.11
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2019.02.25 at 12:05:09 AM CET
//


package com.hack23.cia.model.internal.application.data.committee.impl;


import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;

import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.hack23.cia.model.common.api.ModelObject;
import com.hack23.cia.model.common.impl.xml.XmlDateTypeAdapter;


/**
 * <p>Java class for ViewRiksdagenVoteDataBallotPoliticianSummary complex type.
 *
 * <p>The following schema fragment specifies the expected content contained within this class.
 *
 * <pre>
 * &lt;complexType name="ViewRiksdagenVoteDataBallotPoliticianSummary"&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="embeddedId" type="{http://committee.data.application.internal.model.cia.hack23.com/impl}RiksdagenVoteDataBallotPoliticianEmbeddedId"/&gt;
 *         &lt;element name="vote_date" type="{http://www.w3.org/2001/XMLSchema}date"/&gt;
 *         &lt;element name="party" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="rm" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="ballot_type" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="label" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="avg_born_year" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="total_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="yes_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="no_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="abstain_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="absent_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="approved" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="no_winner" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="percentage_yes" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="percentage_no" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="percentage_absent" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="percentage_abstain" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="percentage_male" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="party_avg_born_year" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="party_total_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="party_yes_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="party_no_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="party_abstain_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="party_absent_votes" type="{http://www.w3.org/2001/XMLSchema}long"/&gt;
 *         &lt;element name="party_approved" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="party_no_winner" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="party_percentage_yes" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="party_percentage_no" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="party_percentage_absent" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="party_percentage_abstain" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="party_percentage_male" type="{http://www.w3.org/2001/XMLSchema}decimal"/&gt;
 *         &lt;element name="first_name" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="last_name" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="gender" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="vote" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element name="born_year" type="{http://www.w3.org/2001/XMLSchema}int"/&gt;
 *         &lt;element name="won" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="rebel" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="party_won" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 *
 *
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ViewRiksdagenVoteDataBallotPoliticianSummary", propOrder = {
    "embeddedId",
    "voteDate",
    "party",
    "rm",
    "ballotType",
    "label",
    "avgBornYear",
    "totalVotes",
    "yesVotes",
    "noVotes",
    "abstainVotes",
    "absentVotes",
    "approved",
    "noWinner",
    "percentageYes",
    "percentageNo",
    "percentageAbsent",
    "percentageAbstain",
    "percentageMale",
    "partyAvgBornYear",
    "partyTotalVotes",
    "partyYesVotes",
    "partyNoVotes",
    "partyAbstainVotes",
    "partyAbsentVotes",
    "partyApproved",
    "partyNoWinner",
    "partyPercentageYes",
    "partyPercentageNo",
    "partyPercentageAbsent",
    "partyPercentageAbstain",
    "partyPercentageMale",
    "firstName",
    "lastName",
    "gender",
    "vote",
    "bornYear",
    "won",
    "rebel",
    "partyWon"
})
@Entity(name = "ViewRiksdagenVoteDataBallotPoliticianSummary")
@Table(name = "View_Riksdagen_Vote_Data_Ballot_Politician_Summary")
@Inheritance(strategy = InheritanceType.JOINED)
public class ViewRiksdagenVoteDataBallotPoliticianSummary
    implements ModelObject
{

    /**
	 *
	 */
	private static final long serialVersionUID = 1L;
	@XmlElement(required = true)
    protected RiksdagenVoteDataBallotPoliticianEmbeddedId embeddedId;
    @XmlElement(name = "vote_date", required = true, type = String.class)
    @XmlJavaTypeAdapter(XmlDateTypeAdapter.class)
    @XmlSchemaType(name = "date")
    protected Date voteDate;
    @XmlElement(required = true)
    protected String party;
    @XmlElement(required = true)
    protected String rm;
    @XmlElement(name = "ballot_type", required = true)
    protected String ballotType;
    @XmlElement(required = true)
    protected String label;
    @XmlElement(name = "avg_born_year", required = true)
    protected BigDecimal avgBornYear;
    @XmlElement(name = "total_votes")
    protected long totalVotes;
    @XmlElement(name = "yes_votes")
    protected long yesVotes;
    @XmlElement(name = "no_votes")
    protected long noVotes;
    @XmlElement(name = "abstain_votes")
    protected long abstainVotes;
    @XmlElement(name = "absent_votes")
    protected long absentVotes;
    protected boolean approved;
    @XmlElement(name = "no_winner")
    protected boolean noWinner;
    @XmlElement(name = "percentage_yes", required = true)
    protected BigDecimal percentageYes;
    @XmlElement(name = "percentage_no", required = true)
    protected BigDecimal percentageNo;
    @XmlElement(name = "percentage_absent", required = true)
    protected BigDecimal percentageAbsent;
    @XmlElement(name = "percentage_abstain", required = true)
    protected BigDecimal percentageAbstain;
    @XmlElement(name = "percentage_male", required = true)
    protected BigDecimal percentageMale;
    @XmlElement(name = "party_avg_born_year", required = true)
    protected BigDecimal partyAvgBornYear;
    @XmlElement(name = "party_total_votes")
    protected long partyTotalVotes;
    @XmlElement(name = "party_yes_votes")
    protected long partyYesVotes;
    @XmlElement(name = "party_no_votes")
    protected long partyNoVotes;
    @XmlElement(name = "party_abstain_votes")
    protected long partyAbstainVotes;
    @XmlElement(name = "party_absent_votes")
    protected long partyAbsentVotes;
    @XmlElement(name = "party_approved")
    protected boolean partyApproved;
    @XmlElement(name = "party_no_winner")
    protected boolean partyNoWinner;
    @XmlElement(name = "party_percentage_yes", required = true)
    protected BigDecimal partyPercentageYes;
    @XmlElement(name = "party_percentage_no", required = true)
    protected BigDecimal partyPercentageNo;
    @XmlElement(name = "party_percentage_absent", required = true)
    protected BigDecimal partyPercentageAbsent;
    @XmlElement(name = "party_percentage_abstain", required = true)
    protected BigDecimal partyPercentageAbstain;
    @XmlElement(name = "party_percentage_male", required = true)
    protected BigDecimal partyPercentageMale;
    @XmlElement(name = "first_name", required = true)
    protected String firstName;
    @XmlElement(name = "last_name", required = true)
    protected String lastName;
    @XmlElement(required = true)
    protected String gender;
    @XmlElement(required = true)
    protected String vote;
    @XmlElement(name = "born_year")
    protected int bornYear;
    protected boolean won;
    protected boolean rebel;
    @XmlElement(name = "party_won")
    protected boolean partyWon;

    /**
     * Gets the value of the embeddedId property.
     *
     * @return
     *     possible object is
     *     {@link RiksdagenVoteDataBallotPoliticianEmbeddedId }
     *
     */
    @EmbeddedId
    @AttributeOverrides({
        @AttributeOverride(name = "ballotId", column = @Column(name = "EMBEDDED_ID_BALLOT_ID")),
        @AttributeOverride(name = "concern", column = @Column(name = "EMBEDDED_ID_CONCERN")),
        @AttributeOverride(name = "issue", column = @Column(name = "EMBEDDED_ID_ISSUE")),
        @AttributeOverride(name = "intressentId", column = @Column(name = "EMBEDDED_ID_INTRESSENT_ID"))
    })
    public RiksdagenVoteDataBallotPoliticianEmbeddedId getEmbeddedId() {
        return embeddedId;
    }

    /**
     * Sets the value of the embeddedId property.
     *
     * @param value
     *     allowed object is
     *     {@link RiksdagenVoteDataBallotPoliticianEmbeddedId }
     *
     */
    public void setEmbeddedId(final RiksdagenVoteDataBallotPoliticianEmbeddedId value) {
        this.embeddedId = value;
    }

    /**
     * Gets the value of the voteDate property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "VOTE_DATE")
    @Temporal(TemporalType.DATE)
    public Date getVoteDate() {
        return voteDate;
    }

    /**
     * Sets the value of the voteDate property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setVoteDate(final Date value) {
        this.voteDate = value;
    }

    /**
     * Gets the value of the party property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "PARTY")
    public String getParty() {
        return party;
    }

    /**
     * Sets the value of the party property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setParty(final String value) {
        this.party = value;
    }

    /**
     * Gets the value of the rm property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "RM")
    public String getRm() {
        return rm;
    }

    /**
     * Sets the value of the rm property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setRm(final String value) {
        this.rm = value;
    }

    /**
     * Gets the value of the ballotType property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "BALLOT_TYPE")
    public String getBallotType() {
        return ballotType;
    }

    /**
     * Sets the value of the ballotType property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setBallotType(final String value) {
        this.ballotType = value;
    }

    /**
     * Gets the value of the label property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "LABEL")
    public String getLabel() {
        return label;
    }

    /**
     * Sets the value of the label property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setLabel(final String value) {
        this.label = value;
    }

    /**
     * Gets the value of the avgBornYear property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "AVG_BORN_YEAR", precision = 20, scale = 10)
    public BigDecimal getAvgBornYear() {
        return avgBornYear;
    }

    /**
     * Sets the value of the avgBornYear property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setAvgBornYear(final BigDecimal value) {
        this.avgBornYear = value;
    }

    /**
     * Gets the value of the totalVotes property.
     *
     */
    @Basic
    @Column(name = "TOTAL_VOTES", precision = 20)
    public long getTotalVotes() {
        return totalVotes;
    }

    /**
     * Sets the value of the totalVotes property.
     *
     */
    public void setTotalVotes(final long value) {
        this.totalVotes = value;
    }

    /**
     * Gets the value of the yesVotes property.
     *
     */
    @Basic
    @Column(name = "YES_VOTES", precision = 20)
    public long getYesVotes() {
        return yesVotes;
    }

    /**
     * Sets the value of the yesVotes property.
     *
     */
    public void setYesVotes(final long value) {
        this.yesVotes = value;
    }

    /**
     * Gets the value of the noVotes property.
     *
     */
    @Basic
    @Column(name = "NO_VOTES", precision = 20)
    public long getNoVotes() {
        return noVotes;
    }

    /**
     * Sets the value of the noVotes property.
     *
     */
    public void setNoVotes(final long value) {
        this.noVotes = value;
    }

    /**
     * Gets the value of the abstainVotes property.
     *
     */
    @Basic
    @Column(name = "ABSTAIN_VOTES", precision = 20)
    public long getAbstainVotes() {
        return abstainVotes;
    }

    /**
     * Sets the value of the abstainVotes property.
     *
     */
    public void setAbstainVotes(final long value) {
        this.abstainVotes = value;
    }

    /**
     * Gets the value of the absentVotes property.
     *
     */
    @Basic
    @Column(name = "ABSENT_VOTES", precision = 20)
    public long getAbsentVotes() {
        return absentVotes;
    }

    /**
     * Sets the value of the absentVotes property.
     *
     */
    public void setAbsentVotes(final long value) {
        this.absentVotes = value;
    }

    /**
     * Gets the value of the approved property.
     *
     */
    @Basic
    @Column(name = "APPROVED")
    public boolean isApproved() {
        return approved;
    }

    /**
     * Sets the value of the approved property.
     *
     */
    public void setApproved(final boolean value) {
        this.approved = value;
    }

    /**
     * Gets the value of the noWinner property.
     *
     */
    @Basic
    @Column(name = "NO_WINNER")
    public boolean isNoWinner() {
        return noWinner;
    }

    /**
     * Sets the value of the noWinner property.
     *
     */
    public void setNoWinner(final boolean value) {
        this.noWinner = value;
    }

    /**
     * Gets the value of the percentageYes property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PERCENTAGE_YES", precision = 20, scale = 10)
    public BigDecimal getPercentageYes() {
        return percentageYes;
    }

    /**
     * Sets the value of the percentageYes property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPercentageYes(final BigDecimal value) {
        this.percentageYes = value;
    }

    /**
     * Gets the value of the percentageNo property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PERCENTAGE_NO", precision = 20, scale = 10)
    public BigDecimal getPercentageNo() {
        return percentageNo;
    }

    /**
     * Sets the value of the percentageNo property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPercentageNo(final BigDecimal value) {
        this.percentageNo = value;
    }

    /**
     * Gets the value of the percentageAbsent property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PERCENTAGE_ABSENT", precision = 20, scale = 10)
    public BigDecimal getPercentageAbsent() {
        return percentageAbsent;
    }

    /**
     * Sets the value of the percentageAbsent property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPercentageAbsent(final BigDecimal value) {
        this.percentageAbsent = value;
    }

    /**
     * Gets the value of the percentageAbstain property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PERCENTAGE_ABSTAIN", precision = 20, scale = 10)
    public BigDecimal getPercentageAbstain() {
        return percentageAbstain;
    }

    /**
     * Sets the value of the percentageAbstain property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPercentageAbstain(final BigDecimal value) {
        this.percentageAbstain = value;
    }

    /**
     * Gets the value of the percentageMale property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PERCENTAGE_MALE", precision = 20, scale = 10)
    public BigDecimal getPercentageMale() {
        return percentageMale;
    }

    /**
     * Sets the value of the percentageMale property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPercentageMale(final BigDecimal value) {
        this.percentageMale = value;
    }

    /**
     * Gets the value of the partyAvgBornYear property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PARTY_AVG_BORN_YEAR", precision = 20, scale = 10)
    public BigDecimal getPartyAvgBornYear() {
        return partyAvgBornYear;
    }

    /**
     * Sets the value of the partyAvgBornYear property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPartyAvgBornYear(final BigDecimal value) {
        this.partyAvgBornYear = value;
    }

    /**
     * Gets the value of the partyTotalVotes property.
     *
     */
    @Basic
    @Column(name = "PARTY_TOTAL_VOTES", precision = 20)
    public long getPartyTotalVotes() {
        return partyTotalVotes;
    }

    /**
     * Sets the value of the partyTotalVotes property.
     *
     */
    public void setPartyTotalVotes(final long value) {
        this.partyTotalVotes = value;
    }

    /**
     * Gets the value of the partyYesVotes property.
     *
     */
    @Basic
    @Column(name = "PARTY_YES_VOTES", precision = 20)
    public long getPartyYesVotes() {
        return partyYesVotes;
    }

    /**
     * Sets the value of the partyYesVotes property.
     *
     */
    public void setPartyYesVotes(final long value) {
        this.partyYesVotes = value;
    }

    /**
     * Gets the value of the partyNoVotes property.
     *
     */
    @Basic
    @Column(name = "PARTY_NO_VOTES", precision = 20)
    public long getPartyNoVotes() {
        return partyNoVotes;
    }

    /**
     * Sets the value of the partyNoVotes property.
     *
     */
    public void setPartyNoVotes(final long value) {
        this.partyNoVotes = value;
    }

    /**
     * Gets the value of the partyAbstainVotes property.
     *
     */
    @Basic
    @Column(name = "PARTY_ABSTAIN_VOTES", precision = 20)
    public long getPartyAbstainVotes() {
        return partyAbstainVotes;
    }

    /**
     * Sets the value of the partyAbstainVotes property.
     *
     */
    public void setPartyAbstainVotes(final long value) {
        this.partyAbstainVotes = value;
    }

    /**
     * Gets the value of the partyAbsentVotes property.
     *
     */
    @Basic
    @Column(name = "PARTY_ABSENT_VOTES", precision = 20)
    public long getPartyAbsentVotes() {
        return partyAbsentVotes;
    }

    /**
     * Sets the value of the partyAbsentVotes property.
     *
     */
    public void setPartyAbsentVotes(final long value) {
        this.partyAbsentVotes = value;
    }

    /**
     * Gets the value of the partyApproved property.
     *
     */
    @Basic
    @Column(name = "PARTY_APPROVED")
    public boolean isPartyApproved() {
        return partyApproved;
    }

    /**
     * Sets the value of the partyApproved property.
     *
     */
    public void setPartyApproved(final boolean value) {
        this.partyApproved = value;
    }

    /**
     * Gets the value of the partyNoWinner property.
     *
     */
    @Basic
    @Column(name = "PARTY_NO_WINNER")
    public boolean isPartyNoWinner() {
        return partyNoWinner;
    }

    /**
     * Sets the value of the partyNoWinner property.
     *
     */
    public void setPartyNoWinner(final boolean value) {
        this.partyNoWinner = value;
    }

    /**
     * Gets the value of the partyPercentageYes property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PARTY_PERCENTAGE_YES", precision = 20, scale = 10)
    public BigDecimal getPartyPercentageYes() {
        return partyPercentageYes;
    }

    /**
     * Sets the value of the partyPercentageYes property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPartyPercentageYes(final BigDecimal value) {
        this.partyPercentageYes = value;
    }

    /**
     * Gets the value of the partyPercentageNo property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PARTY_PERCENTAGE_NO", precision = 20, scale = 10)
    public BigDecimal getPartyPercentageNo() {
        return partyPercentageNo;
    }

    /**
     * Sets the value of the partyPercentageNo property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPartyPercentageNo(final BigDecimal value) {
        this.partyPercentageNo = value;
    }

    /**
     * Gets the value of the partyPercentageAbsent property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PARTY_PERCENTAGE_ABSENT", precision = 20, scale = 10)
    public BigDecimal getPartyPercentageAbsent() {
        return partyPercentageAbsent;
    }

    /**
     * Sets the value of the partyPercentageAbsent property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPartyPercentageAbsent(final BigDecimal value) {
        this.partyPercentageAbsent = value;
    }

    /**
     * Gets the value of the partyPercentageAbstain property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PARTY_PERCENTAGE_ABSTAIN", precision = 20, scale = 10)
    public BigDecimal getPartyPercentageAbstain() {
        return partyPercentageAbstain;
    }

    /**
     * Sets the value of the partyPercentageAbstain property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPartyPercentageAbstain(final BigDecimal value) {
        this.partyPercentageAbstain = value;
    }

    /**
     * Gets the value of the partyPercentageMale property.
     *
     * @return
     *     possible object is
     *     {@link BigDecimal }
     *
     */
    @Basic
    @Column(name = "PARTY_PERCENTAGE_MALE", precision = 20, scale = 10)
    public BigDecimal getPartyPercentageMale() {
        return partyPercentageMale;
    }

    /**
     * Sets the value of the partyPercentageMale property.
     *
     * @param value
     *     allowed object is
     *     {@link BigDecimal }
     *
     */
    public void setPartyPercentageMale(final BigDecimal value) {
        this.partyPercentageMale = value;
    }

    /**
     * Gets the value of the firstName property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "FIRST_NAME")
    public String getFirstName() {
        return firstName;
    }

    /**
     * Sets the value of the firstName property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setFirstName(final String value) {
        this.firstName = value;
    }

    /**
     * Gets the value of the lastName property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "LAST_NAME")
    public String getLastName() {
        return lastName;
    }

    /**
     * Sets the value of the lastName property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setLastName(final String value) {
        this.lastName = value;
    }

    /**
     * Gets the value of the gender property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "GENDER")
    public String getGender() {
        return gender;
    }

    /**
     * Sets the value of the gender property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setGender(final String value) {
        this.gender = value;
    }

    /**
     * Gets the value of the vote property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    @Basic
    @Column(name = "VOTE")
    public String getVote() {
        return vote;
    }

    /**
     * Sets the value of the vote property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setVote(final String value) {
        this.vote = value;
    }

    /**
     * Gets the value of the bornYear property.
     *
     */
    @Basic
    @Column(name = "BORN_YEAR", precision = 10, scale = 0)
    public int getBornYear() {
        return bornYear;
    }

    /**
     * Sets the value of the bornYear property.
     *
     */
    public void setBornYear(final int value) {
        this.bornYear = value;
    }

    /**
     * Gets the value of the won property.
     *
     */
    @Basic
    @Column(name = "WON")
    public boolean isWon() {
        return won;
    }

    /**
     * Sets the value of the won property.
     *
     */
    public void setWon(final boolean value) {
        this.won = value;
    }

    /**
     * Gets the value of the rebel property.
     *
     */
    @Basic
    @Column(name = "REBEL")
    public boolean isRebel() {
        return rebel;
    }

    /**
     * Sets the value of the rebel property.
     *
     */
    public void setRebel(final boolean value) {
        this.rebel = value;
    }

    /**
     * Gets the value of the partyWon property.
     *
     */
    @Basic
    @Column(name = "PARTY_WON")
    public boolean isPartyWon() {
        return partyWon;
    }

    /**
     * Sets the value of the partyWon property.
     *
     */
    public void setPartyWon(final boolean value) {
        this.partyWon = value;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withEmbeddedId(final RiksdagenVoteDataBallotPoliticianEmbeddedId value) {
        setEmbeddedId(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withVoteDate(final Date value) {
        setVoteDate(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withParty(final String value) {
        setParty(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withRm(final String value) {
        setRm(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withBallotType(final String value) {
        setBallotType(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withLabel(final String value) {
        setLabel(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withAvgBornYear(final BigDecimal value) {
        setAvgBornYear(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withTotalVotes(final long value) {
        setTotalVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withYesVotes(final long value) {
        setYesVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withNoVotes(final long value) {
        setNoVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withAbstainVotes(final long value) {
        setAbstainVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withAbsentVotes(final long value) {
        setAbsentVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withApproved(final boolean value) {
        setApproved(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withNoWinner(final boolean value) {
        setNoWinner(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPercentageYes(final BigDecimal value) {
        setPercentageYes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPercentageNo(final BigDecimal value) {
        setPercentageNo(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPercentageAbsent(final BigDecimal value) {
        setPercentageAbsent(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPercentageAbstain(final BigDecimal value) {
        setPercentageAbstain(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPercentageMale(final BigDecimal value) {
        setPercentageMale(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyAvgBornYear(final BigDecimal value) {
        setPartyAvgBornYear(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyTotalVotes(final long value) {
        setPartyTotalVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyYesVotes(final long value) {
        setPartyYesVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyNoVotes(final long value) {
        setPartyNoVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyAbstainVotes(final long value) {
        setPartyAbstainVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyAbsentVotes(final long value) {
        setPartyAbsentVotes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyApproved(final boolean value) {
        setPartyApproved(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyNoWinner(final boolean value) {
        setPartyNoWinner(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyPercentageYes(final BigDecimal value) {
        setPartyPercentageYes(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyPercentageNo(final BigDecimal value) {
        setPartyPercentageNo(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyPercentageAbsent(final BigDecimal value) {
        setPartyPercentageAbsent(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyPercentageAbstain(final BigDecimal value) {
        setPartyPercentageAbstain(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyPercentageMale(final BigDecimal value) {
        setPartyPercentageMale(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withFirstName(final String value) {
        setFirstName(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withLastName(final String value) {
        setLastName(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withGender(final String value) {
        setGender(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withVote(final String value) {
        setVote(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withBornYear(final int value) {
        setBornYear(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withWon(final boolean value) {
        setWon(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withRebel(final boolean value) {
        setRebel(value);
        return this;
    }

    public ViewRiksdagenVoteDataBallotPoliticianSummary withPartyWon(final boolean value) {
        setPartyWon(value);
        return this;
    }

	@Override
	public final String toString() {
		return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE);
	}

	@Override
	public final boolean equals(final Object obj) {
		return EqualsBuilder.reflectionEquals(this, obj);
	}

	@Override
	public final int hashCode() {
		return HashCodeBuilder.reflectionHashCode(this);
	}

}
