<?php

namespace patest\StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for HallDataDictionary StructType
 * Meta information extracted from the WSDL
 * - nillable: true
 * - type: tns:HallDataDictionary
 * @subpackage Structs
 */
class HallDataDictionary extends AbstractStructBase
{
    /**
     * The ApplicationChannels
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $ApplicationChannels;
    /**
     * The PartiallyAvailability
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $PartiallyAvailability;
    /**
     * The PriceLevels
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $PriceLevels;
    /**
     * The PrintingStatuses
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $PrintingStatuses;
    /**
     * The PrivateProperty
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $PrivateProperty;
    /**
     * The SaleModes
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $SaleModes;
    /**
     * The SaleTypes
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $SaleTypes;
    /**
     * The SeatAllocations
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $SeatAllocations;
    /**
     * The SeatLocks
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $SeatLocks;
    /**
     * The SeatTypes
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $SeatTypes;
    /**
     * The TicketTypes
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $TicketTypes;
    /**
     * The ViewFromAreaId
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $ViewFromAreaId;
    /**
     * The ViewFromSeatId
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $ViewFromSeatId;
    /**
     * The InventoryTypes
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $InventoryTypes;
    /**
     * The LiabilityStatuses
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $LiabilityStatuses;
    /**
     * The Resale
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $Resale;
    /**
     * The SeatLevelPrice
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $SeatLevelPrice;
    /**
     * The Transfer
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * - nillable: true
     * @var \patest\StructType\HallDataDictionaryTable
     */
    public $Transfer;
    /**
     * Constructor method for HallDataDictionary
     * @uses HallDataDictionary::setApplicationChannels()
     * @uses HallDataDictionary::setPartiallyAvailability()
     * @uses HallDataDictionary::setPriceLevels()
     * @uses HallDataDictionary::setPrintingStatuses()
     * @uses HallDataDictionary::setPrivateProperty()
     * @uses HallDataDictionary::setSaleModes()
     * @uses HallDataDictionary::setSaleTypes()
     * @uses HallDataDictionary::setSeatAllocations()
     * @uses HallDataDictionary::setSeatLocks()
     * @uses HallDataDictionary::setSeatTypes()
     * @uses HallDataDictionary::setTicketTypes()
     * @uses HallDataDictionary::setViewFromAreaId()
     * @uses HallDataDictionary::setViewFromSeatId()
     * @uses HallDataDictionary::setInventoryTypes()
     * @uses HallDataDictionary::setLiabilityStatuses()
     * @uses HallDataDictionary::setResale()
     * @uses HallDataDictionary::setSeatLevelPrice()
     * @uses HallDataDictionary::setTransfer()
     * @param \patest\StructType\HallDataDictionaryTable $applicationChannels
     * @param \patest\StructType\HallDataDictionaryTable $partiallyAvailability
     * @param \patest\StructType\HallDataDictionaryTable $priceLevels
     * @param \patest\StructType\HallDataDictionaryTable $printingStatuses
     * @param \patest\StructType\HallDataDictionaryTable $privateProperty
     * @param \patest\StructType\HallDataDictionaryTable $saleModes
     * @param \patest\StructType\HallDataDictionaryTable $saleTypes
     * @param \patest\StructType\HallDataDictionaryTable $seatAllocations
     * @param \patest\StructType\HallDataDictionaryTable $seatLocks
     * @param \patest\StructType\HallDataDictionaryTable $seatTypes
     * @param \patest\StructType\HallDataDictionaryTable $ticketTypes
     * @param \patest\StructType\HallDataDictionaryTable $viewFromAreaId
     * @param \patest\StructType\HallDataDictionaryTable $viewFromSeatId
     * @param \patest\StructType\HallDataDictionaryTable $inventoryTypes
     * @param \patest\StructType\HallDataDictionaryTable $liabilityStatuses
     * @param \patest\StructType\HallDataDictionaryTable $resale
     * @param \patest\StructType\HallDataDictionaryTable $seatLevelPrice
     * @param \patest\StructType\HallDataDictionaryTable $transfer
     */
    public function __construct(\patest\StructType\HallDataDictionaryTable $applicationChannels = null, \patest\StructType\HallDataDictionaryTable $partiallyAvailability = null, \patest\StructType\HallDataDictionaryTable $priceLevels = null, \patest\StructType\HallDataDictionaryTable $printingStatuses = null, \patest\StructType\HallDataDictionaryTable $privateProperty = null, \patest\StructType\HallDataDictionaryTable $saleModes = null, \patest\StructType\HallDataDictionaryTable $saleTypes = null, \patest\StructType\HallDataDictionaryTable $seatAllocations = null, \patest\StructType\HallDataDictionaryTable $seatLocks = null, \patest\StructType\HallDataDictionaryTable $seatTypes = null, \patest\StructType\HallDataDictionaryTable $ticketTypes = null, \patest\StructType\HallDataDictionaryTable $viewFromAreaId = null, \patest\StructType\HallDataDictionaryTable $viewFromSeatId = null, \patest\StructType\HallDataDictionaryTable $inventoryTypes = null, \patest\StructType\HallDataDictionaryTable $liabilityStatuses = null, \patest\StructType\HallDataDictionaryTable $resale = null, \patest\StructType\HallDataDictionaryTable $seatLevelPrice = null, \patest\StructType\HallDataDictionaryTable $transfer = null)
    {
        $this
            ->setApplicationChannels($applicationChannels)
            ->setPartiallyAvailability($partiallyAvailability)
            ->setPriceLevels($priceLevels)
            ->setPrintingStatuses($printingStatuses)
            ->setPrivateProperty($privateProperty)
            ->setSaleModes($saleModes)
            ->setSaleTypes($saleTypes)
            ->setSeatAllocations($seatAllocations)
            ->setSeatLocks($seatLocks)
            ->setSeatTypes($seatTypes)
            ->setTicketTypes($ticketTypes)
            ->setViewFromAreaId($viewFromAreaId)
            ->setViewFromSeatId($viewFromSeatId)
            ->setInventoryTypes($inventoryTypes)
            ->setLiabilityStatuses($liabilityStatuses)
            ->setResale($resale)
            ->setSeatLevelPrice($seatLevelPrice)
            ->setTransfer($transfer);
    }
    /**
     * Get ApplicationChannels value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getApplicationChannels()
    {
        return isset($this->ApplicationChannels) ? $this->ApplicationChannels : null;
    }
    /**
     * Set ApplicationChannels value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $applicationChannels
     * @return \patest\StructType\HallDataDictionary
     */
    public function setApplicationChannels(\patest\StructType\HallDataDictionaryTable $applicationChannels = null)
    {
        if (is_null($applicationChannels) || (is_array($applicationChannels) && empty($applicationChannels))) {
            unset($this->ApplicationChannels);
        } else {
            $this->ApplicationChannels = $applicationChannels;
        }
        return $this;
    }
    /**
     * Get PartiallyAvailability value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getPartiallyAvailability()
    {
        return isset($this->PartiallyAvailability) ? $this->PartiallyAvailability : null;
    }
    /**
     * Set PartiallyAvailability value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $partiallyAvailability
     * @return \patest\StructType\HallDataDictionary
     */
    public function setPartiallyAvailability(\patest\StructType\HallDataDictionaryTable $partiallyAvailability = null)
    {
        if (is_null($partiallyAvailability) || (is_array($partiallyAvailability) && empty($partiallyAvailability))) {
            unset($this->PartiallyAvailability);
        } else {
            $this->PartiallyAvailability = $partiallyAvailability;
        }
        return $this;
    }
    /**
     * Get PriceLevels value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getPriceLevels()
    {
        return isset($this->PriceLevels) ? $this->PriceLevels : null;
    }
    /**
     * Set PriceLevels value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $priceLevels
     * @return \patest\StructType\HallDataDictionary
     */
    public function setPriceLevels(\patest\StructType\HallDataDictionaryTable $priceLevels = null)
    {
        if (is_null($priceLevels) || (is_array($priceLevels) && empty($priceLevels))) {
            unset($this->PriceLevels);
        } else {
            $this->PriceLevels = $priceLevels;
        }
        return $this;
    }
    /**
     * Get PrintingStatuses value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getPrintingStatuses()
    {
        return isset($this->PrintingStatuses) ? $this->PrintingStatuses : null;
    }
    /**
     * Set PrintingStatuses value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $printingStatuses
     * @return \patest\StructType\HallDataDictionary
     */
    public function setPrintingStatuses(\patest\StructType\HallDataDictionaryTable $printingStatuses = null)
    {
        if (is_null($printingStatuses) || (is_array($printingStatuses) && empty($printingStatuses))) {
            unset($this->PrintingStatuses);
        } else {
            $this->PrintingStatuses = $printingStatuses;
        }
        return $this;
    }
    /**
     * Get PrivateProperty value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getPrivateProperty()
    {
        return isset($this->PrivateProperty) ? $this->PrivateProperty : null;
    }
    /**
     * Set PrivateProperty value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $privateProperty
     * @return \patest\StructType\HallDataDictionary
     */
    public function setPrivateProperty(\patest\StructType\HallDataDictionaryTable $privateProperty = null)
    {
        if (is_null($privateProperty) || (is_array($privateProperty) && empty($privateProperty))) {
            unset($this->PrivateProperty);
        } else {
            $this->PrivateProperty = $privateProperty;
        }
        return $this;
    }
    /**
     * Get SaleModes value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getSaleModes()
    {
        return isset($this->SaleModes) ? $this->SaleModes : null;
    }
    /**
     * Set SaleModes value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $saleModes
     * @return \patest\StructType\HallDataDictionary
     */
    public function setSaleModes(\patest\StructType\HallDataDictionaryTable $saleModes = null)
    {
        if (is_null($saleModes) || (is_array($saleModes) && empty($saleModes))) {
            unset($this->SaleModes);
        } else {
            $this->SaleModes = $saleModes;
        }
        return $this;
    }
    /**
     * Get SaleTypes value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getSaleTypes()
    {
        return isset($this->SaleTypes) ? $this->SaleTypes : null;
    }
    /**
     * Set SaleTypes value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $saleTypes
     * @return \patest\StructType\HallDataDictionary
     */
    public function setSaleTypes(\patest\StructType\HallDataDictionaryTable $saleTypes = null)
    {
        if (is_null($saleTypes) || (is_array($saleTypes) && empty($saleTypes))) {
            unset($this->SaleTypes);
        } else {
            $this->SaleTypes = $saleTypes;
        }
        return $this;
    }
    /**
     * Get SeatAllocations value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getSeatAllocations()
    {
        return isset($this->SeatAllocations) ? $this->SeatAllocations : null;
    }
    /**
     * Set SeatAllocations value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $seatAllocations
     * @return \patest\StructType\HallDataDictionary
     */
    public function setSeatAllocations(\patest\StructType\HallDataDictionaryTable $seatAllocations = null)
    {
        if (is_null($seatAllocations) || (is_array($seatAllocations) && empty($seatAllocations))) {
            unset($this->SeatAllocations);
        } else {
            $this->SeatAllocations = $seatAllocations;
        }
        return $this;
    }
    /**
     * Get SeatLocks value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getSeatLocks()
    {
        return isset($this->SeatLocks) ? $this->SeatLocks : null;
    }
    /**
     * Set SeatLocks value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $seatLocks
     * @return \patest\StructType\HallDataDictionary
     */
    public function setSeatLocks(\patest\StructType\HallDataDictionaryTable $seatLocks = null)
    {
        if (is_null($seatLocks) || (is_array($seatLocks) && empty($seatLocks))) {
            unset($this->SeatLocks);
        } else {
            $this->SeatLocks = $seatLocks;
        }
        return $this;
    }
    /**
     * Get SeatTypes value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getSeatTypes()
    {
        return isset($this->SeatTypes) ? $this->SeatTypes : null;
    }
    /**
     * Set SeatTypes value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $seatTypes
     * @return \patest\StructType\HallDataDictionary
     */
    public function setSeatTypes(\patest\StructType\HallDataDictionaryTable $seatTypes = null)
    {
        if (is_null($seatTypes) || (is_array($seatTypes) && empty($seatTypes))) {
            unset($this->SeatTypes);
        } else {
            $this->SeatTypes = $seatTypes;
        }
        return $this;
    }
    /**
     * Get TicketTypes value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getTicketTypes()
    {
        return isset($this->TicketTypes) ? $this->TicketTypes : null;
    }
    /**
     * Set TicketTypes value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $ticketTypes
     * @return \patest\StructType\HallDataDictionary
     */
    public function setTicketTypes(\patest\StructType\HallDataDictionaryTable $ticketTypes = null)
    {
        if (is_null($ticketTypes) || (is_array($ticketTypes) && empty($ticketTypes))) {
            unset($this->TicketTypes);
        } else {
            $this->TicketTypes = $ticketTypes;
        }
        return $this;
    }
    /**
     * Get ViewFromAreaId value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getViewFromAreaId()
    {
        return isset($this->ViewFromAreaId) ? $this->ViewFromAreaId : null;
    }
    /**
     * Set ViewFromAreaId value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $viewFromAreaId
     * @return \patest\StructType\HallDataDictionary
     */
    public function setViewFromAreaId(\patest\StructType\HallDataDictionaryTable $viewFromAreaId = null)
    {
        if (is_null($viewFromAreaId) || (is_array($viewFromAreaId) && empty($viewFromAreaId))) {
            unset($this->ViewFromAreaId);
        } else {
            $this->ViewFromAreaId = $viewFromAreaId;
        }
        return $this;
    }
    /**
     * Get ViewFromSeatId value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getViewFromSeatId()
    {
        return isset($this->ViewFromSeatId) ? $this->ViewFromSeatId : null;
    }
    /**
     * Set ViewFromSeatId value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $viewFromSeatId
     * @return \patest\StructType\HallDataDictionary
     */
    public function setViewFromSeatId(\patest\StructType\HallDataDictionaryTable $viewFromSeatId = null)
    {
        if (is_null($viewFromSeatId) || (is_array($viewFromSeatId) && empty($viewFromSeatId))) {
            unset($this->ViewFromSeatId);
        } else {
            $this->ViewFromSeatId = $viewFromSeatId;
        }
        return $this;
    }
    /**
     * Get InventoryTypes value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getInventoryTypes()
    {
        return isset($this->InventoryTypes) ? $this->InventoryTypes : null;
    }
    /**
     * Set InventoryTypes value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $inventoryTypes
     * @return \patest\StructType\HallDataDictionary
     */
    public function setInventoryTypes(\patest\StructType\HallDataDictionaryTable $inventoryTypes = null)
    {
        if (is_null($inventoryTypes) || (is_array($inventoryTypes) && empty($inventoryTypes))) {
            unset($this->InventoryTypes);
        } else {
            $this->InventoryTypes = $inventoryTypes;
        }
        return $this;
    }
    /**
     * Get LiabilityStatuses value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getLiabilityStatuses()
    {
        return isset($this->LiabilityStatuses) ? $this->LiabilityStatuses : null;
    }
    /**
     * Set LiabilityStatuses value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $liabilityStatuses
     * @return \patest\StructType\HallDataDictionary
     */
    public function setLiabilityStatuses(\patest\StructType\HallDataDictionaryTable $liabilityStatuses = null)
    {
        if (is_null($liabilityStatuses) || (is_array($liabilityStatuses) && empty($liabilityStatuses))) {
            unset($this->LiabilityStatuses);
        } else {
            $this->LiabilityStatuses = $liabilityStatuses;
        }
        return $this;
    }
    /**
     * Get Resale value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getResale()
    {
        return isset($this->Resale) ? $this->Resale : null;
    }
    /**
     * Set Resale value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $resale
     * @return \patest\StructType\HallDataDictionary
     */
    public function setResale(\patest\StructType\HallDataDictionaryTable $resale = null)
    {
        if (is_null($resale) || (is_array($resale) && empty($resale))) {
            unset($this->Resale);
        } else {
            $this->Resale = $resale;
        }
        return $this;
    }
    /**
     * Get SeatLevelPrice value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getSeatLevelPrice()
    {
        return isset($this->SeatLevelPrice) ? $this->SeatLevelPrice : null;
    }
    /**
     * Set SeatLevelPrice value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $seatLevelPrice
     * @return \patest\StructType\HallDataDictionary
     */
    public function setSeatLevelPrice(\patest\StructType\HallDataDictionaryTable $seatLevelPrice = null)
    {
        if (is_null($seatLevelPrice) || (is_array($seatLevelPrice) && empty($seatLevelPrice))) {
            unset($this->SeatLevelPrice);
        } else {
            $this->SeatLevelPrice = $seatLevelPrice;
        }
        return $this;
    }
    /**
     * Get Transfer value
     * An additional test has been added (isset) before returning the property value as
     * this property may have been unset before, due to the fact that this property is
     * removable from the request (nillable=true+minOccurs=0)
     * @return \patest\StructType\HallDataDictionaryTable|null
     */
    public function getTransfer()
    {
        return isset($this->Transfer) ? $this->Transfer : null;
    }
    /**
     * Set Transfer value
     * This property is removable from request (nillable=true+minOccurs=0), therefore
     * if the value assigned to this property is null, it is removed from this object
     * @param \patest\StructType\HallDataDictionaryTable $transfer
     * @return \patest\StructType\HallDataDictionary
     */
    public function setTransfer(\patest\StructType\HallDataDictionaryTable $transfer = null)
    {
        if (is_null($transfer) || (is_array($transfer) && empty($transfer))) {
            unset($this->Transfer);
        } else {
            $this->Transfer = $transfer;
        }
        return $this;
    }
}
