/* 
 * GK application - OmniPOS Service API
 *
 * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
 *
 * OpenAPI spec version: 5.21.1-b03
 * 
 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 */

using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System.ComponentModel.DataAnnotations;
using SwaggerDateConverter = IO.Swagger.Client.SwaggerDateConverter;

namespace IO.Swagger.Model
{
    /// <summary>
    /// PosUOMItemDO &lt;p&gt;This object contains item data for one specific unit of measure. The object is a projection from the item domain object.&lt;br /&gt;&lt;/p&gt;
    /// </summary>
    [DataContract]
    public partial class ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO :  IEquatable<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO>, IValidatableObject
    {
        /// <summary>
        /// &lt;p&gt;A code to denote the tax exemption status from sales and use tax.&lt;br /&gt; (00/null - normal, item is taxable, 01 - no tax).&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A code to denote the tax exemption status from sales and use tax.&lt;br /&gt; (00/null - normal, item is taxable, 01 - no tax).&lt;br /&gt;&lt;/p&gt;</value>
        [JsonConverter(typeof(StringEnumConverter))]
        public enum TaxExemptCodeEnum
        {
            
            /// <summary>
            /// Enum NORMAL for value: NORMAL
            /// </summary>
            [EnumMember(Value = "NORMAL")]
            NORMAL = 1,
            
            /// <summary>
            /// Enum NOTAX for value: NO_TAX
            /// </summary>
            [EnumMember(Value = "NO_TAX")]
            NOTAX = 2
        }

        /// <summary>
        /// &lt;p&gt;A code to denote the tax exemption status from sales and use tax.&lt;br /&gt; (00/null - normal, item is taxable, 01 - no tax).&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A code to denote the tax exemption status from sales and use tax.&lt;br /&gt; (00/null - normal, item is taxable, 01 - no tax).&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="taxExemptCode", EmitDefaultValue=false)]
        public TaxExemptCodeEnum? TaxExemptCode { get; set; }
        /// <summary>
        /// &lt;p&gt;Deposit type of the item.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Deposit type of the item.&lt;br /&gt;&lt;/p&gt;</value>
        [JsonConverter(typeof(StringEnumConverter))]
        public enum DepositTypeCodeEnum
        {
            
            /// <summary>
            /// Enum NODEPOSIT for value: NO_DEPOSIT
            /// </summary>
            [EnumMember(Value = "NO_DEPOSIT")]
            NODEPOSIT = 1,
            
            /// <summary>
            /// Enum DEPOSITONNONREFILLABLECONTAINERS for value: DEPOSIT_ON_NON_REFILLABLE_CONTAINERS
            /// </summary>
            [EnumMember(Value = "DEPOSIT_ON_NON_REFILLABLE_CONTAINERS")]
            DEPOSITONNONREFILLABLECONTAINERS = 2,
            
            /// <summary>
            /// Enum DEPOSITONREFILLABLECONTAINERS for value: DEPOSIT_ON_REFILLABLE_CONTAINERS
            /// </summary>
            [EnumMember(Value = "DEPOSIT_ON_REFILLABLE_CONTAINERS")]
            DEPOSITONREFILLABLECONTAINERS = 3,
            
            /// <summary>
            /// Enum PETBOTTLE for value: PET_BOTTLE
            /// </summary>
            [EnumMember(Value = "PET_BOTTLE")]
            PETBOTTLE = 4,
            
            /// <summary>
            /// Enum BATTERY for value: BATTERY
            /// </summary>
            [EnumMember(Value = "BATTERY")]
            BATTERY = 5,
            
            /// <summary>
            /// Enum GASBOTTLE for value: GAS_BOTTLE
            /// </summary>
            [EnumMember(Value = "GAS_BOTTLE")]
            GASBOTTLE = 6
        }

        /// <summary>
        /// &lt;p&gt;Deposit type of the item.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Deposit type of the item.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="depositTypeCode", EmitDefaultValue=false)]
        public DepositTypeCodeEnum? DepositTypeCode { get; set; }
        /// <summary>
        /// Initializes a new instance of the <see cref="ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO" /> class.
        /// </summary>
        [JsonConstructorAttribute]
        protected ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO() { }
        /// <summary>
        /// Initializes a new instance of the <see cref="ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO" /> class.
        /// </summary>
        /// <param name="key">&lt;p&gt;Getter for inner key class.&lt;/p&gt; (required).</param>
        /// <param name="uomName">&lt;p&gt;Localized Unit of measure name.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="name">&lt;p&gt;The name by which the item is known.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="description">&lt;p&gt;The textural description of the item.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="classCode">&lt;p&gt;Class code (eg. empties, fresh food). Usage example: Via customizing is possible to disable the registration of items with this class code.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="taxGroupID">&lt;p&gt;A tax group which links a tax authority to the merchandise to which the tax applies.&lt;br /&gt; If no taxGroupID is delivered, the taxGroup with 0% is to be searched out and used. If no taxGroup with 0% exists, the import of the item fails.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="alternativeTaxGroupID">&lt;p&gt;An alternative tax group which links a tax authority to the merchandise to which the tax applies.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="taxGroupReceiptPrintCode">&lt;p&gt;The Taxable Group Receipt Print Code.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemUsageTypeCode">&lt;p&gt;Specifies the category of the item (e.g. single item, item variant, display).&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="taxExemptCode">&lt;p&gt;A code to denote the tax exemption status from sales and use tax.&lt;br /&gt; (00/null - normal, item is taxable, 01 - no tax).&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="warrantyPeriod">&lt;p&gt;The duration of the item&#39;s warranty in months&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="tareId">&lt;p&gt;Defines the number of weight units of measure for the tare.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="tareUomCode">&lt;p&gt;Tare UOM code.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="posDepartmentID">&lt;p&gt;Reference to the POSDepartment the item belongs to&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="mainPOSItemId">&lt;p&gt;The main POS item identifier&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="mainMerchandiseHierarchyGroupID">&lt;p&gt;References the default merchandise hierarchy group the item belongs to&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="mainMerchandiseHierarchyGroupName">&lt;p&gt;Localized default merchandise hierarchy group name.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="mainMerchandiseHierarchyGroupDescription">&lt;p&gt;Localized default merchandise hierarchy group description.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="depositTypeCode">&lt;p&gt;Deposit type of the item.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemSellingRule">&lt;p&gt;Selling rules for this item&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="statusCode">&lt;p&gt;This code defines the current state of an item within the retail store.&lt;br /&gt; An item&#39;s state limits what actions may be taken on an item in terms of ordering, receiving, selling, returns, transfers, counting and so on.&lt;br /&gt; Sample statuses include active, inactive, discontinued, pending, etc.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemCollectionList">&lt;p&gt;List of item collections&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="relatedItemAssociationList">&lt;p&gt;List of the item associations&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemCharacteristicList">&lt;p&gt;List of item characteristics with values&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemFeatureList">itemFeatureList.</param>
        /// <param name="posIdentityList">&lt;p&gt;List of POS item ID&#39;s (EANs)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="sellingPriceList">&lt;p&gt;List of selling prices&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemDepositCollectionList">&lt;p&gt;List of deposits&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomItemTextList">&lt;p&gt;List of text to UOMItem&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemMHGList">&lt;p&gt;List of merchandise hierarchy groups&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="salesRestrictionList">&lt;p&gt;Sales restriction for this item&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="updateStockFlag">&lt;p&gt;Determines whether the item is inventory-tracked&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="baseUOMCode">&lt;p&gt;Code of the base unit of measure. The base unit of measure is automatically selected if the item is registered by ItemID.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="prohibitedForPhysicalInventoryFlag">&lt;p&gt;Determines whether this item cannot be considered within physical inventories&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="minimumShelfLifeDayCount">&lt;p&gt;The number of business days the SHELF ITEM may be displayed for sale to customers and after which must be removed.&lt;br /&gt; This attribute is used for perishable produce items, drugs, and other time sensitive items (like newspapers).&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="labelType">&lt;p&gt;Type of the label&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="discountTypeCode">&lt;p&gt;A code which is used by the loyalty engine in order to determine whether the item can get rebate/points. Possible values: 0..9&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="globalLifeDayCount">&lt;p&gt;Time range (count of days) between production date and best-before date&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="shelfLifeDayCountPercent">&lt;p&gt;Percentage for calculating the shelf life day count&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="dayCountUOMCode">&lt;p&gt;The unit of measure of the &#39;day count&#39; elements (day or week)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="defaultReceivingLocation">&lt;p&gt;Default receiving place&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="concessionItemFlag">&lt;p&gt;Defines whether the item is a concession item. Concession items are not maintained by the retailer, but by a vendor itself. E.g. snacks and food in vending machines.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="costItemFlag">&lt;p&gt;Defines whether the item is a cost item&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="merchandisePlanningTypeCode">&lt;p&gt;Determines the merchandise planning - the way, how the item is ordered (automatically, manually, not orderable, ..).&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="mainSupplierId">&lt;p&gt;Reference to the main supplier of this item&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="venSafeFlag">&lt;p&gt;Determines whether this item is sold via VENSAFE.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="baseUOMConsumerPackageGrossContent">&lt;p&gt;Consumer package gross content of the base UOM of the item&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;    * e.g. can of peaches&lt;br /&gt;    * gross content &#x3D; 500&lt;br /&gt;    * net content &#x3D; 385&lt;br /&gt;    * contents UOM &#x3D; ml&lt;br /&gt;&lt;/pre&gt;.</param>
        /// <param name="baseUOMConsumerPackageNetContent">&lt;p&gt;The consumer package content, as claimed on the label.  e.g. Evian Water 750ml - net content &#x3D; &#39;750 MLT&#39; 20 count pack of diapers, net content &#x3D; &#39;20 ea.&#39;&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="baseUOMConsumerPackageContentsUOMCode">&lt;p&gt;Net/gross contents uom&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="baseUOMConsumerPackageBasePriceContent">&lt;p&gt;Quantity measured in ConsumerPackageBasePriceUOMCode units for which the base price is to be determined&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Example:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;    * base price UOM &#x3D; g&lt;br /&gt;    * base price content &#x3D; 100&lt;br /&gt;    * base price &#x3D; 2,99&lt;br /&gt;    * &#x3D;&#x3D;&amp;gt; base price &#x3D; 2,99 per 100 g&lt;br /&gt;&lt;/pre&gt;.</param>
        /// <param name="baseUOMConsumerPackageBasePriceContentsUOMCode">&lt;p&gt;Base price contents unit of measure&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="distributingWarehouseID">&lt;p&gt;Identifier of the distributing warehouse (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="distributionMethodID">&lt;p&gt;Identifier of the distribution method (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="assortmentID">&lt;p&gt;Identifier of the assortment (used e.g. in the purchase order process)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="thirdPartyAssortmentID">&lt;p&gt;Identifier of the 3rd party assortment (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="transportAssociationID">&lt;p&gt;Identifier of the transport association (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="concessionItemSupplierID">&lt;p&gt;If the item is a concession item, this is the reference to its supplier&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="defaultSellingUOMCode">&lt;p&gt;The default selling unit of measure of the item&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="conversionNumerator">&lt;p&gt;Numerator for the conversion into base unit of measure&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="conversionDenominator">&lt;p&gt;Denominator for the conversion into base unit of measure&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageGrossWeight">&lt;p&gt;The weight of the consumer package, including packaging&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageNetWeight">&lt;p&gt;The weight of the consumer package, excluding packaging&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageWeightUOMCode">&lt;p&gt;Weight unit of measure&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageVolume">&lt;p&gt;The consumer package volume&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageVolumeUOMCode">&lt;p&gt;Volume unit of measure&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageDepth">&lt;p&gt;The dimension from front to back of the  consumer package&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageWidth">&lt;p&gt;The dimension from left to right of the consumer package&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageHeight">&lt;p&gt;The dimension from top to bottom of the consumer package&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="consumerPackageSizeUOMCode">&lt;p&gt;The code used to specify the units in which a value is being expressed, or manner in which a measurement has been taken.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="outerPackageTypeCode">&lt;p&gt;Typecode of the outer package of the item, is used for label printing&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="headOfficeCarryRequirementTypeCode">&lt;p&gt;Typecode of the outer package of the item, is used for label printing&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="handlingTypeCode">&lt;p&gt;Handling typecode&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="statusEffectiveDate">&lt;p&gt;Date when the status becomes effective&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone).</param>
        /// <param name="maximumStockQuantity">&lt;p&gt;Maximum stock quantity&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="minimumStockQuantity">&lt;p&gt;Minimum stock quantity&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="listingEffectiveDate">&lt;p&gt;Date when the listing becomes effective&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone).</param>
        /// <param name="listingExpirationDate">&lt;p&gt;Last date when the item is available for ordering&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone).</param>
        /// <param name="priceContractReadList">&lt;p&gt;List of all Customer Specific Prices for this item.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="selectedPriceContractRead">&lt;p&gt;The Customer Specific Price for given timestamp (if specified, null otherwise).&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM01">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM02">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM03">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM04">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM05">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM06">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM07">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM08">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM09">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM10">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM11">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM12">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM13">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM14">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM15">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM16">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM17">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM18">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM19">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM20">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM21">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM22">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM23">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM24">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM25">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM26">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM27">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM28">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM29">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="uomITEMXXCUSTOM30">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="hsncode">&lt;p&gt;HSN (Harmonized System of Nomenclature) is an international classification system of commodities. HSN code ensures that commodities of similar nature are classified properly.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="rfidflag">&lt;p&gt;Denotes if RFID method is called and stock is updated.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt; &lt;li&gt;true: The RFID method is called.&lt;/li&gt;&lt;br /&gt; &lt;li&gt;false: The RFID method is not called.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;.</param>
        /// <param name="itemXXCUSTOM01">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM02">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM03">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM04">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM05">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM06">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM07">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM08">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM09">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM10">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM11">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM12">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM13">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM14">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM15">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM16">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM17">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM18">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM19">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM20">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM21">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM22">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM23">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM24">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM25">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM26">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM27">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM28">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM29">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="itemXXCUSTOM30">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM01">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM02">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM03">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM04">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM05">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM06">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM07">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM08">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM09">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM10">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM11">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM12">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM13">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM14">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM15">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM16">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM17">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM18">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM19">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM20">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM21">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM22">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM23">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM24">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM25">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM26">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM27">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM28">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM29">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        /// <param name="bulkITEMXXCUSTOM30">&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;.</param>
        public ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO(ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDOKey key = default(ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDOKey), string uomName = default(string), string name = default(string), string description = default(string), string classCode = default(string), string taxGroupID = default(string), string alternativeTaxGroupID = default(string), string taxGroupReceiptPrintCode = default(string), string itemUsageTypeCode = default(string), TaxExemptCodeEnum? taxExemptCode = default(TaxExemptCodeEnum?), double? warrantyPeriod = default(double?), string tareId = default(string), string tareUomCode = default(string), string posDepartmentID = default(string), string mainPOSItemId = default(string), string mainMerchandiseHierarchyGroupID = default(string), string mainMerchandiseHierarchyGroupName = default(string), string mainMerchandiseHierarchyGroupDescription = default(string), DepositTypeCodeEnum? depositTypeCode = default(DepositTypeCodeEnum?), ComGkSoftwareSweeSesApiServerMdItemSellingRuleDtoSoItemSellingRuleSO itemSellingRule = default(ComGkSoftwareSweeSesApiServerMdItemSellingRuleDtoSoItemSellingRuleSO), string statusCode = default(string), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemCollection> itemCollectionList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemCollection>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemRelatedItemAssociation> relatedItemAssociationList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemRelatedItemAssociation>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemCharacteristic> itemCharacteristicList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemCharacteristic>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemFeature> itemFeatureList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemFeature>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemPosIdentity> posIdentityList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemPosIdentity>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemSellingPriceDO> sellingPriceList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemSellingPriceDO>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDepositCollection> itemDepositCollectionList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDepositCollection>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemText> uomItemTextList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemText>), List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemMHG> itemMHGList = default(List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemMHG>), List<ComGkSoftwareSweeSesApiServerMdSalesRestrictionDtoSoSalesRestrictionSO> salesRestrictionList = default(List<ComGkSoftwareSweeSesApiServerMdSalesRestrictionDtoSoSalesRestrictionSO>), bool? updateStockFlag = default(bool?), string baseUOMCode = default(string), bool? prohibitedForPhysicalInventoryFlag = default(bool?), int? minimumShelfLifeDayCount = default(int?), string labelType = default(string), string discountTypeCode = default(string), int? globalLifeDayCount = default(int?), double? shelfLifeDayCountPercent = default(double?), string dayCountUOMCode = default(string), string defaultReceivingLocation = default(string), bool? concessionItemFlag = default(bool?), bool? costItemFlag = default(bool?), string merchandisePlanningTypeCode = default(string), string mainSupplierId = default(string), bool? venSafeFlag = default(bool?), double? baseUOMConsumerPackageGrossContent = default(double?), double? baseUOMConsumerPackageNetContent = default(double?), string baseUOMConsumerPackageContentsUOMCode = default(string), double? baseUOMConsumerPackageBasePriceContent = default(double?), string baseUOMConsumerPackageBasePriceContentsUOMCode = default(string), string distributingWarehouseID = default(string), string distributionMethodID = default(string), string assortmentID = default(string), string thirdPartyAssortmentID = default(string), string transportAssociationID = default(string), string concessionItemSupplierID = default(string), string defaultSellingUOMCode = default(string), int? conversionNumerator = default(int?), int? conversionDenominator = default(int?), double? consumerPackageGrossWeight = default(double?), double? consumerPackageNetWeight = default(double?), string consumerPackageWeightUOMCode = default(string), double? consumerPackageVolume = default(double?), string consumerPackageVolumeUOMCode = default(string), double? consumerPackageDepth = default(double?), double? consumerPackageWidth = default(double?), double? consumerPackageHeight = default(double?), string consumerPackageSizeUOMCode = default(string), string outerPackageTypeCode = default(string), string headOfficeCarryRequirementTypeCode = default(string), string handlingTypeCode = default(string), string statusEffectiveDate = default(string), double? maximumStockQuantity = default(double?), double? minimumStockQuantity = default(double?), string listingEffectiveDate = default(string), string listingExpirationDate = default(string), List<ComGkSoftwareGkrApiServerMdPriceContractDtoDomPriceContractReadDO> priceContractReadList = default(List<ComGkSoftwareGkrApiServerMdPriceContractDtoDomPriceContractReadDO>), ComGkSoftwareGkrApiServerMdPriceContractDtoDomPriceContractReadDO selectedPriceContractRead = default(ComGkSoftwareGkrApiServerMdPriceContractDtoDomPriceContractReadDO), string uomITEMXXCUSTOM01 = default(string), string uomITEMXXCUSTOM02 = default(string), string uomITEMXXCUSTOM03 = default(string), string uomITEMXXCUSTOM04 = default(string), string uomITEMXXCUSTOM05 = default(string), string uomITEMXXCUSTOM06 = default(string), string uomITEMXXCUSTOM07 = default(string), string uomITEMXXCUSTOM08 = default(string), string uomITEMXXCUSTOM09 = default(string), string uomITEMXXCUSTOM10 = default(string), string uomITEMXXCUSTOM11 = default(string), string uomITEMXXCUSTOM12 = default(string), string uomITEMXXCUSTOM13 = default(string), string uomITEMXXCUSTOM14 = default(string), string uomITEMXXCUSTOM15 = default(string), string uomITEMXXCUSTOM16 = default(string), string uomITEMXXCUSTOM17 = default(string), string uomITEMXXCUSTOM18 = default(string), string uomITEMXXCUSTOM19 = default(string), string uomITEMXXCUSTOM20 = default(string), string uomITEMXXCUSTOM21 = default(string), string uomITEMXXCUSTOM22 = default(string), string uomITEMXXCUSTOM23 = default(string), string uomITEMXXCUSTOM24 = default(string), string uomITEMXXCUSTOM25 = default(string), string uomITEMXXCUSTOM26 = default(string), string uomITEMXXCUSTOM27 = default(string), string uomITEMXXCUSTOM28 = default(string), string uomITEMXXCUSTOM29 = default(string), string uomITEMXXCUSTOM30 = default(string), string hsncode = default(string), bool? rfidflag = default(bool?), string itemXXCUSTOM01 = default(string), string itemXXCUSTOM02 = default(string), string itemXXCUSTOM03 = default(string), string itemXXCUSTOM04 = default(string), string itemXXCUSTOM05 = default(string), string itemXXCUSTOM06 = default(string), string itemXXCUSTOM07 = default(string), string itemXXCUSTOM08 = default(string), string itemXXCUSTOM09 = default(string), string itemXXCUSTOM10 = default(string), string itemXXCUSTOM11 = default(string), string itemXXCUSTOM12 = default(string), string itemXXCUSTOM13 = default(string), string itemXXCUSTOM14 = default(string), string itemXXCUSTOM15 = default(string), string itemXXCUSTOM16 = default(string), string itemXXCUSTOM17 = default(string), string itemXXCUSTOM18 = default(string), string itemXXCUSTOM19 = default(string), string itemXXCUSTOM20 = default(string), string itemXXCUSTOM21 = default(string), string itemXXCUSTOM22 = default(string), string itemXXCUSTOM23 = default(string), string itemXXCUSTOM24 = default(string), string itemXXCUSTOM25 = default(string), string itemXXCUSTOM26 = default(string), string itemXXCUSTOM27 = default(string), string itemXXCUSTOM28 = default(string), string itemXXCUSTOM29 = default(string), string itemXXCUSTOM30 = default(string), string bulkITEMXXCUSTOM01 = default(string), string bulkITEMXXCUSTOM02 = default(string), string bulkITEMXXCUSTOM03 = default(string), string bulkITEMXXCUSTOM04 = default(string), string bulkITEMXXCUSTOM05 = default(string), string bulkITEMXXCUSTOM06 = default(string), string bulkITEMXXCUSTOM07 = default(string), string bulkITEMXXCUSTOM08 = default(string), string bulkITEMXXCUSTOM09 = default(string), string bulkITEMXXCUSTOM10 = default(string), string bulkITEMXXCUSTOM11 = default(string), string bulkITEMXXCUSTOM12 = default(string), string bulkITEMXXCUSTOM13 = default(string), string bulkITEMXXCUSTOM14 = default(string), string bulkITEMXXCUSTOM15 = default(string), string bulkITEMXXCUSTOM16 = default(string), string bulkITEMXXCUSTOM17 = default(string), string bulkITEMXXCUSTOM18 = default(string), string bulkITEMXXCUSTOM19 = default(string), string bulkITEMXXCUSTOM20 = default(string), string bulkITEMXXCUSTOM21 = default(string), string bulkITEMXXCUSTOM22 = default(string), string bulkITEMXXCUSTOM23 = default(string), string bulkITEMXXCUSTOM24 = default(string), string bulkITEMXXCUSTOM25 = default(string), string bulkITEMXXCUSTOM26 = default(string), string bulkITEMXXCUSTOM27 = default(string), string bulkITEMXXCUSTOM28 = default(string), string bulkITEMXXCUSTOM29 = default(string), string bulkITEMXXCUSTOM30 = default(string))
        {
            // to ensure "key" is required (not null)
            if (key == null)
            {
                throw new InvalidDataException("key is a required property for ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO and cannot be null");
            }
            else
            {
                this.Key = key;
            }
            this.UomName = uomName;
            this.Name = name;
            this.Description = description;
            this.ClassCode = classCode;
            this.TaxGroupID = taxGroupID;
            this.AlternativeTaxGroupID = alternativeTaxGroupID;
            this.TaxGroupReceiptPrintCode = taxGroupReceiptPrintCode;
            this.ItemUsageTypeCode = itemUsageTypeCode;
            this.TaxExemptCode = taxExemptCode;
            this.WarrantyPeriod = warrantyPeriod;
            this.TareId = tareId;
            this.TareUomCode = tareUomCode;
            this.PosDepartmentID = posDepartmentID;
            this.MainPOSItemId = mainPOSItemId;
            this.MainMerchandiseHierarchyGroupID = mainMerchandiseHierarchyGroupID;
            this.MainMerchandiseHierarchyGroupName = mainMerchandiseHierarchyGroupName;
            this.MainMerchandiseHierarchyGroupDescription = mainMerchandiseHierarchyGroupDescription;
            this.DepositTypeCode = depositTypeCode;
            this.ItemSellingRule = itemSellingRule;
            this.StatusCode = statusCode;
            this.ItemCollectionList = itemCollectionList;
            this.RelatedItemAssociationList = relatedItemAssociationList;
            this.ItemCharacteristicList = itemCharacteristicList;
            this.ItemFeatureList = itemFeatureList;
            this.PosIdentityList = posIdentityList;
            this.SellingPriceList = sellingPriceList;
            this.ItemDepositCollectionList = itemDepositCollectionList;
            this.UomItemTextList = uomItemTextList;
            this.ItemMHGList = itemMHGList;
            this.SalesRestrictionList = salesRestrictionList;
            this.UpdateStockFlag = updateStockFlag;
            this.BaseUOMCode = baseUOMCode;
            this.ProhibitedForPhysicalInventoryFlag = prohibitedForPhysicalInventoryFlag;
            this.MinimumShelfLifeDayCount = minimumShelfLifeDayCount;
            this.LabelType = labelType;
            this.DiscountTypeCode = discountTypeCode;
            this.GlobalLifeDayCount = globalLifeDayCount;
            this.ShelfLifeDayCountPercent = shelfLifeDayCountPercent;
            this.DayCountUOMCode = dayCountUOMCode;
            this.DefaultReceivingLocation = defaultReceivingLocation;
            this.ConcessionItemFlag = concessionItemFlag;
            this.CostItemFlag = costItemFlag;
            this.MerchandisePlanningTypeCode = merchandisePlanningTypeCode;
            this.MainSupplierId = mainSupplierId;
            this.VenSafeFlag = venSafeFlag;
            this.BaseUOMConsumerPackageGrossContent = baseUOMConsumerPackageGrossContent;
            this.BaseUOMConsumerPackageNetContent = baseUOMConsumerPackageNetContent;
            this.BaseUOMConsumerPackageContentsUOMCode = baseUOMConsumerPackageContentsUOMCode;
            this.BaseUOMConsumerPackageBasePriceContent = baseUOMConsumerPackageBasePriceContent;
            this.BaseUOMConsumerPackageBasePriceContentsUOMCode = baseUOMConsumerPackageBasePriceContentsUOMCode;
            this.DistributingWarehouseID = distributingWarehouseID;
            this.DistributionMethodID = distributionMethodID;
            this.AssortmentID = assortmentID;
            this.ThirdPartyAssortmentID = thirdPartyAssortmentID;
            this.TransportAssociationID = transportAssociationID;
            this.ConcessionItemSupplierID = concessionItemSupplierID;
            this.DefaultSellingUOMCode = defaultSellingUOMCode;
            this.ConversionNumerator = conversionNumerator;
            this.ConversionDenominator = conversionDenominator;
            this.ConsumerPackageGrossWeight = consumerPackageGrossWeight;
            this.ConsumerPackageNetWeight = consumerPackageNetWeight;
            this.ConsumerPackageWeightUOMCode = consumerPackageWeightUOMCode;
            this.ConsumerPackageVolume = consumerPackageVolume;
            this.ConsumerPackageVolumeUOMCode = consumerPackageVolumeUOMCode;
            this.ConsumerPackageDepth = consumerPackageDepth;
            this.ConsumerPackageWidth = consumerPackageWidth;
            this.ConsumerPackageHeight = consumerPackageHeight;
            this.ConsumerPackageSizeUOMCode = consumerPackageSizeUOMCode;
            this.OuterPackageTypeCode = outerPackageTypeCode;
            this.HeadOfficeCarryRequirementTypeCode = headOfficeCarryRequirementTypeCode;
            this.HandlingTypeCode = handlingTypeCode;
            this.StatusEffectiveDate = statusEffectiveDate;
            this.MaximumStockQuantity = maximumStockQuantity;
            this.MinimumStockQuantity = minimumStockQuantity;
            this.ListingEffectiveDate = listingEffectiveDate;
            this.ListingExpirationDate = listingExpirationDate;
            this.PriceContractReadList = priceContractReadList;
            this.SelectedPriceContractRead = selectedPriceContractRead;
            this.UomITEMXXCUSTOM01 = uomITEMXXCUSTOM01;
            this.UomITEMXXCUSTOM02 = uomITEMXXCUSTOM02;
            this.UomITEMXXCUSTOM03 = uomITEMXXCUSTOM03;
            this.UomITEMXXCUSTOM04 = uomITEMXXCUSTOM04;
            this.UomITEMXXCUSTOM05 = uomITEMXXCUSTOM05;
            this.UomITEMXXCUSTOM06 = uomITEMXXCUSTOM06;
            this.UomITEMXXCUSTOM07 = uomITEMXXCUSTOM07;
            this.UomITEMXXCUSTOM08 = uomITEMXXCUSTOM08;
            this.UomITEMXXCUSTOM09 = uomITEMXXCUSTOM09;
            this.UomITEMXXCUSTOM10 = uomITEMXXCUSTOM10;
            this.UomITEMXXCUSTOM11 = uomITEMXXCUSTOM11;
            this.UomITEMXXCUSTOM12 = uomITEMXXCUSTOM12;
            this.UomITEMXXCUSTOM13 = uomITEMXXCUSTOM13;
            this.UomITEMXXCUSTOM14 = uomITEMXXCUSTOM14;
            this.UomITEMXXCUSTOM15 = uomITEMXXCUSTOM15;
            this.UomITEMXXCUSTOM16 = uomITEMXXCUSTOM16;
            this.UomITEMXXCUSTOM17 = uomITEMXXCUSTOM17;
            this.UomITEMXXCUSTOM18 = uomITEMXXCUSTOM18;
            this.UomITEMXXCUSTOM19 = uomITEMXXCUSTOM19;
            this.UomITEMXXCUSTOM20 = uomITEMXXCUSTOM20;
            this.UomITEMXXCUSTOM21 = uomITEMXXCUSTOM21;
            this.UomITEMXXCUSTOM22 = uomITEMXXCUSTOM22;
            this.UomITEMXXCUSTOM23 = uomITEMXXCUSTOM23;
            this.UomITEMXXCUSTOM24 = uomITEMXXCUSTOM24;
            this.UomITEMXXCUSTOM25 = uomITEMXXCUSTOM25;
            this.UomITEMXXCUSTOM26 = uomITEMXXCUSTOM26;
            this.UomITEMXXCUSTOM27 = uomITEMXXCUSTOM27;
            this.UomITEMXXCUSTOM28 = uomITEMXXCUSTOM28;
            this.UomITEMXXCUSTOM29 = uomITEMXXCUSTOM29;
            this.UomITEMXXCUSTOM30 = uomITEMXXCUSTOM30;
            this.Hsncode = hsncode;
            this.Rfidflag = rfidflag;
            this.ItemXXCUSTOM01 = itemXXCUSTOM01;
            this.ItemXXCUSTOM02 = itemXXCUSTOM02;
            this.ItemXXCUSTOM03 = itemXXCUSTOM03;
            this.ItemXXCUSTOM04 = itemXXCUSTOM04;
            this.ItemXXCUSTOM05 = itemXXCUSTOM05;
            this.ItemXXCUSTOM06 = itemXXCUSTOM06;
            this.ItemXXCUSTOM07 = itemXXCUSTOM07;
            this.ItemXXCUSTOM08 = itemXXCUSTOM08;
            this.ItemXXCUSTOM09 = itemXXCUSTOM09;
            this.ItemXXCUSTOM10 = itemXXCUSTOM10;
            this.ItemXXCUSTOM11 = itemXXCUSTOM11;
            this.ItemXXCUSTOM12 = itemXXCUSTOM12;
            this.ItemXXCUSTOM13 = itemXXCUSTOM13;
            this.ItemXXCUSTOM14 = itemXXCUSTOM14;
            this.ItemXXCUSTOM15 = itemXXCUSTOM15;
            this.ItemXXCUSTOM16 = itemXXCUSTOM16;
            this.ItemXXCUSTOM17 = itemXXCUSTOM17;
            this.ItemXXCUSTOM18 = itemXXCUSTOM18;
            this.ItemXXCUSTOM19 = itemXXCUSTOM19;
            this.ItemXXCUSTOM20 = itemXXCUSTOM20;
            this.ItemXXCUSTOM21 = itemXXCUSTOM21;
            this.ItemXXCUSTOM22 = itemXXCUSTOM22;
            this.ItemXXCUSTOM23 = itemXXCUSTOM23;
            this.ItemXXCUSTOM24 = itemXXCUSTOM24;
            this.ItemXXCUSTOM25 = itemXXCUSTOM25;
            this.ItemXXCUSTOM26 = itemXXCUSTOM26;
            this.ItemXXCUSTOM27 = itemXXCUSTOM27;
            this.ItemXXCUSTOM28 = itemXXCUSTOM28;
            this.ItemXXCUSTOM29 = itemXXCUSTOM29;
            this.ItemXXCUSTOM30 = itemXXCUSTOM30;
            this.BulkITEMXXCUSTOM01 = bulkITEMXXCUSTOM01;
            this.BulkITEMXXCUSTOM02 = bulkITEMXXCUSTOM02;
            this.BulkITEMXXCUSTOM03 = bulkITEMXXCUSTOM03;
            this.BulkITEMXXCUSTOM04 = bulkITEMXXCUSTOM04;
            this.BulkITEMXXCUSTOM05 = bulkITEMXXCUSTOM05;
            this.BulkITEMXXCUSTOM06 = bulkITEMXXCUSTOM06;
            this.BulkITEMXXCUSTOM07 = bulkITEMXXCUSTOM07;
            this.BulkITEMXXCUSTOM08 = bulkITEMXXCUSTOM08;
            this.BulkITEMXXCUSTOM09 = bulkITEMXXCUSTOM09;
            this.BulkITEMXXCUSTOM10 = bulkITEMXXCUSTOM10;
            this.BulkITEMXXCUSTOM11 = bulkITEMXXCUSTOM11;
            this.BulkITEMXXCUSTOM12 = bulkITEMXXCUSTOM12;
            this.BulkITEMXXCUSTOM13 = bulkITEMXXCUSTOM13;
            this.BulkITEMXXCUSTOM14 = bulkITEMXXCUSTOM14;
            this.BulkITEMXXCUSTOM15 = bulkITEMXXCUSTOM15;
            this.BulkITEMXXCUSTOM16 = bulkITEMXXCUSTOM16;
            this.BulkITEMXXCUSTOM17 = bulkITEMXXCUSTOM17;
            this.BulkITEMXXCUSTOM18 = bulkITEMXXCUSTOM18;
            this.BulkITEMXXCUSTOM19 = bulkITEMXXCUSTOM19;
            this.BulkITEMXXCUSTOM20 = bulkITEMXXCUSTOM20;
            this.BulkITEMXXCUSTOM21 = bulkITEMXXCUSTOM21;
            this.BulkITEMXXCUSTOM22 = bulkITEMXXCUSTOM22;
            this.BulkITEMXXCUSTOM23 = bulkITEMXXCUSTOM23;
            this.BulkITEMXXCUSTOM24 = bulkITEMXXCUSTOM24;
            this.BulkITEMXXCUSTOM25 = bulkITEMXXCUSTOM25;
            this.BulkITEMXXCUSTOM26 = bulkITEMXXCUSTOM26;
            this.BulkITEMXXCUSTOM27 = bulkITEMXXCUSTOM27;
            this.BulkITEMXXCUSTOM28 = bulkITEMXXCUSTOM28;
            this.BulkITEMXXCUSTOM29 = bulkITEMXXCUSTOM29;
            this.BulkITEMXXCUSTOM30 = bulkITEMXXCUSTOM30;
        }
        
        /// <summary>
        /// &lt;p&gt;Getter for inner key class.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Getter for inner key class.&lt;/p&gt;</value>
        [DataMember(Name="key", EmitDefaultValue=false)]
        public ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDOKey Key { get; set; }

        /// <summary>
        /// &lt;p&gt;Localized Unit of measure name.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Localized Unit of measure name.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uomName", EmitDefaultValue=false)]
        public string UomName { get; set; }

        /// <summary>
        /// &lt;p&gt;The name by which the item is known.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The name by which the item is known.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="name", EmitDefaultValue=false)]
        public string Name { get; set; }

        /// <summary>
        /// &lt;p&gt;The textural description of the item.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The textural description of the item.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="description", EmitDefaultValue=false)]
        public string Description { get; set; }

        /// <summary>
        /// &lt;p&gt;Class code (eg. empties, fresh food). Usage example: Via customizing is possible to disable the registration of items with this class code.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Class code (eg. empties, fresh food). Usage example: Via customizing is possible to disable the registration of items with this class code.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="classCode", EmitDefaultValue=false)]
        public string ClassCode { get; set; }

        /// <summary>
        /// &lt;p&gt;A tax group which links a tax authority to the merchandise to which the tax applies.&lt;br /&gt; If no taxGroupID is delivered, the taxGroup with 0% is to be searched out and used. If no taxGroup with 0% exists, the import of the item fails.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A tax group which links a tax authority to the merchandise to which the tax applies.&lt;br /&gt; If no taxGroupID is delivered, the taxGroup with 0% is to be searched out and used. If no taxGroup with 0% exists, the import of the item fails.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="taxGroupID", EmitDefaultValue=false)]
        public string TaxGroupID { get; set; }

        /// <summary>
        /// &lt;p&gt;An alternative tax group which links a tax authority to the merchandise to which the tax applies.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;An alternative tax group which links a tax authority to the merchandise to which the tax applies.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="alternativeTaxGroupID", EmitDefaultValue=false)]
        public string AlternativeTaxGroupID { get; set; }

        /// <summary>
        /// &lt;p&gt;The Taxable Group Receipt Print Code.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The Taxable Group Receipt Print Code.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="taxGroupReceiptPrintCode", EmitDefaultValue=false)]
        public string TaxGroupReceiptPrintCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Specifies the category of the item (e.g. single item, item variant, display).&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Specifies the category of the item (e.g. single item, item variant, display).&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="itemUsageTypeCode", EmitDefaultValue=false)]
        public string ItemUsageTypeCode { get; set; }


        /// <summary>
        /// &lt;p&gt;The duration of the item&#39;s warranty in months&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The duration of the item&#39;s warranty in months&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="warrantyPeriod", EmitDefaultValue=false)]
        public double? WarrantyPeriod { get; set; }

        /// <summary>
        /// &lt;p&gt;Defines the number of weight units of measure for the tare.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Defines the number of weight units of measure for the tare.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="tareId", EmitDefaultValue=false)]
        public string TareId { get; set; }

        /// <summary>
        /// &lt;p&gt;Tare UOM code.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Tare UOM code.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="tareUomCode", EmitDefaultValue=false)]
        public string TareUomCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Reference to the POSDepartment the item belongs to&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Reference to the POSDepartment the item belongs to&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="posDepartmentID", EmitDefaultValue=false)]
        public string PosDepartmentID { get; set; }

        /// <summary>
        /// &lt;p&gt;The main POS item identifier&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The main POS item identifier&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="mainPOSItemId", EmitDefaultValue=false)]
        public string MainPOSItemId { get; set; }

        /// <summary>
        /// &lt;p&gt;References the default merchandise hierarchy group the item belongs to&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;References the default merchandise hierarchy group the item belongs to&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="mainMerchandiseHierarchyGroupID", EmitDefaultValue=false)]
        public string MainMerchandiseHierarchyGroupID { get; set; }

        /// <summary>
        /// &lt;p&gt;Localized default merchandise hierarchy group name.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Localized default merchandise hierarchy group name.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="mainMerchandiseHierarchyGroupName", EmitDefaultValue=false)]
        public string MainMerchandiseHierarchyGroupName { get; set; }

        /// <summary>
        /// &lt;p&gt;Localized default merchandise hierarchy group description.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Localized default merchandise hierarchy group description.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="mainMerchandiseHierarchyGroupDescription", EmitDefaultValue=false)]
        public string MainMerchandiseHierarchyGroupDescription { get; set; }


        /// <summary>
        /// &lt;p&gt;Selling rules for this item&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Selling rules for this item&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="itemSellingRule", EmitDefaultValue=false)]
        public ComGkSoftwareSweeSesApiServerMdItemSellingRuleDtoSoItemSellingRuleSO ItemSellingRule { get; set; }

        /// <summary>
        /// &lt;p&gt;This code defines the current state of an item within the retail store.&lt;br /&gt; An item&#39;s state limits what actions may be taken on an item in terms of ordering, receiving, selling, returns, transfers, counting and so on.&lt;br /&gt; Sample statuses include active, inactive, discontinued, pending, etc.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This code defines the current state of an item within the retail store.&lt;br /&gt; An item&#39;s state limits what actions may be taken on an item in terms of ordering, receiving, selling, returns, transfers, counting and so on.&lt;br /&gt; Sample statuses include active, inactive, discontinued, pending, etc.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="statusCode", EmitDefaultValue=false)]
        public string StatusCode { get; set; }

        /// <summary>
        /// &lt;p&gt;List of item collections&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of item collections&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="itemCollectionList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemCollection> ItemCollectionList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of the item associations&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of the item associations&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="relatedItemAssociationList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemRelatedItemAssociation> RelatedItemAssociationList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of item characteristics with values&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of item characteristics with values&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="itemCharacteristicList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemCharacteristic> ItemCharacteristicList { get; set; }

        /// <summary>
        /// Gets or Sets ItemFeatureList
        /// </summary>
        [DataMember(Name="itemFeatureList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemFeature> ItemFeatureList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of POS item ID&#39;s (EANs)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of POS item ID&#39;s (EANs)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="posIdentityList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemPosIdentity> PosIdentityList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of selling prices&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of selling prices&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="sellingPriceList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemSellingPriceDO> SellingPriceList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of deposits&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of deposits&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="itemDepositCollectionList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDepositCollection> ItemDepositCollectionList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of text to UOMItem&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of text to UOMItem&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uomItemTextList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemText> UomItemTextList { get; set; }

        /// <summary>
        /// &lt;p&gt;List of merchandise hierarchy groups&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of merchandise hierarchy groups&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="itemMHGList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemMHG> ItemMHGList { get; set; }

        /// <summary>
        /// &lt;p&gt;Sales restriction for this item&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Sales restriction for this item&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="salesRestrictionList", EmitDefaultValue=false)]
        public List<ComGkSoftwareSweeSesApiServerMdSalesRestrictionDtoSoSalesRestrictionSO> SalesRestrictionList { get; set; }

        /// <summary>
        /// &lt;p&gt;Determines whether the item is inventory-tracked&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Determines whether the item is inventory-tracked&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="updateStockFlag", EmitDefaultValue=false)]
        public bool? UpdateStockFlag { get; set; }

        /// <summary>
        /// &lt;p&gt;Code of the base unit of measure. The base unit of measure is automatically selected if the item is registered by ItemID.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Code of the base unit of measure. The base unit of measure is automatically selected if the item is registered by ItemID.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="baseUOMCode", EmitDefaultValue=false)]
        public string BaseUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Determines whether this item cannot be considered within physical inventories&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Determines whether this item cannot be considered within physical inventories&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="prohibitedForPhysicalInventoryFlag", EmitDefaultValue=false)]
        public bool? ProhibitedForPhysicalInventoryFlag { get; set; }

        /// <summary>
        /// &lt;p&gt;The number of business days the SHELF ITEM may be displayed for sale to customers and after which must be removed.&lt;br /&gt; This attribute is used for perishable produce items, drugs, and other time sensitive items (like newspapers).&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The number of business days the SHELF ITEM may be displayed for sale to customers and after which must be removed.&lt;br /&gt; This attribute is used for perishable produce items, drugs, and other time sensitive items (like newspapers).&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="minimumShelfLifeDayCount", EmitDefaultValue=false)]
        public int? MinimumShelfLifeDayCount { get; set; }

        /// <summary>
        /// &lt;p&gt;Type of the label&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Type of the label&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="labelType", EmitDefaultValue=false)]
        public string LabelType { get; set; }

        /// <summary>
        /// &lt;p&gt;A code which is used by the loyalty engine in order to determine whether the item can get rebate/points. Possible values: 0..9&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;A code which is used by the loyalty engine in order to determine whether the item can get rebate/points. Possible values: 0..9&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="discountTypeCode", EmitDefaultValue=false)]
        public string DiscountTypeCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Time range (count of days) between production date and best-before date&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Time range (count of days) between production date and best-before date&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="globalLifeDayCount", EmitDefaultValue=false)]
        public int? GlobalLifeDayCount { get; set; }

        /// <summary>
        /// &lt;p&gt;Percentage for calculating the shelf life day count&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Percentage for calculating the shelf life day count&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="shelfLifeDayCountPercent", EmitDefaultValue=false)]
        public double? ShelfLifeDayCountPercent { get; set; }

        /// <summary>
        /// &lt;p&gt;The unit of measure of the &#39;day count&#39; elements (day or week)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The unit of measure of the &#39;day count&#39; elements (day or week)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="dayCountUOMCode", EmitDefaultValue=false)]
        public string DayCountUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Default receiving place&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Default receiving place&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="defaultReceivingLocation", EmitDefaultValue=false)]
        public string DefaultReceivingLocation { get; set; }

        /// <summary>
        /// &lt;p&gt;Defines whether the item is a concession item. Concession items are not maintained by the retailer, but by a vendor itself. E.g. snacks and food in vending machines.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Defines whether the item is a concession item. Concession items are not maintained by the retailer, but by a vendor itself. E.g. snacks and food in vending machines.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="concessionItemFlag", EmitDefaultValue=false)]
        public bool? ConcessionItemFlag { get; set; }

        /// <summary>
        /// &lt;p&gt;Defines whether the item is a cost item&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Defines whether the item is a cost item&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="costItemFlag", EmitDefaultValue=false)]
        public bool? CostItemFlag { get; set; }

        /// <summary>
        /// &lt;p&gt;Determines the merchandise planning - the way, how the item is ordered (automatically, manually, not orderable, ..).&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Determines the merchandise planning - the way, how the item is ordered (automatically, manually, not orderable, ..).&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="merchandisePlanningTypeCode", EmitDefaultValue=false)]
        public string MerchandisePlanningTypeCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Reference to the main supplier of this item&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Reference to the main supplier of this item&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="mainSupplierId", EmitDefaultValue=false)]
        public string MainSupplierId { get; set; }

        /// <summary>
        /// &lt;p&gt;Determines whether this item is sold via VENSAFE.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Determines whether this item is sold via VENSAFE.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="venSafeFlag", EmitDefaultValue=false)]
        public bool? VenSafeFlag { get; set; }

        /// <summary>
        /// &lt;p&gt;Consumer package gross content of the base UOM of the item&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;    * e.g. can of peaches&lt;br /&gt;    * gross content &#x3D; 500&lt;br /&gt;    * net content &#x3D; 385&lt;br /&gt;    * contents UOM &#x3D; ml&lt;br /&gt;&lt;/pre&gt;
        /// </summary>
        /// <value>&lt;p&gt;Consumer package gross content of the base UOM of the item&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;    * e.g. can of peaches&lt;br /&gt;    * gross content &#x3D; 500&lt;br /&gt;    * net content &#x3D; 385&lt;br /&gt;    * contents UOM &#x3D; ml&lt;br /&gt;&lt;/pre&gt;</value>
        [DataMember(Name="baseUOMConsumerPackageGrossContent", EmitDefaultValue=false)]
        public double? BaseUOMConsumerPackageGrossContent { get; set; }

        /// <summary>
        /// &lt;p&gt;The consumer package content, as claimed on the label.  e.g. Evian Water 750ml - net content &#x3D; &#39;750 MLT&#39; 20 count pack of diapers, net content &#x3D; &#39;20 ea.&#39;&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The consumer package content, as claimed on the label.  e.g. Evian Water 750ml - net content &#x3D; &#39;750 MLT&#39; 20 count pack of diapers, net content &#x3D; &#39;20 ea.&#39;&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="baseUOMConsumerPackageNetContent", EmitDefaultValue=false)]
        public double? BaseUOMConsumerPackageNetContent { get; set; }

        /// <summary>
        /// &lt;p&gt;Net/gross contents uom&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Net/gross contents uom&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="baseUOMConsumerPackageContentsUOMCode", EmitDefaultValue=false)]
        public string BaseUOMConsumerPackageContentsUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Quantity measured in ConsumerPackageBasePriceUOMCode units for which the base price is to be determined&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Example:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;    * base price UOM &#x3D; g&lt;br /&gt;    * base price content &#x3D; 100&lt;br /&gt;    * base price &#x3D; 2,99&lt;br /&gt;    * &#x3D;&#x3D;&amp;gt; base price &#x3D; 2,99 per 100 g&lt;br /&gt;&lt;/pre&gt;
        /// </summary>
        /// <value>&lt;p&gt;Quantity measured in ConsumerPackageBasePriceUOMCode units for which the base price is to be determined&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Example:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;    * base price UOM &#x3D; g&lt;br /&gt;    * base price content &#x3D; 100&lt;br /&gt;    * base price &#x3D; 2,99&lt;br /&gt;    * &#x3D;&#x3D;&amp;gt; base price &#x3D; 2,99 per 100 g&lt;br /&gt;&lt;/pre&gt;</value>
        [DataMember(Name="baseUOMConsumerPackageBasePriceContent", EmitDefaultValue=false)]
        public double? BaseUOMConsumerPackageBasePriceContent { get; set; }

        /// <summary>
        /// &lt;p&gt;Base price contents unit of measure&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Base price contents unit of measure&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="baseUOMConsumerPackageBasePriceContentsUOMCode", EmitDefaultValue=false)]
        public string BaseUOMConsumerPackageBasePriceContentsUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Identifier of the distributing warehouse (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Identifier of the distributing warehouse (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="distributingWarehouseID", EmitDefaultValue=false)]
        public string DistributingWarehouseID { get; set; }

        /// <summary>
        /// &lt;p&gt;Identifier of the distribution method (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Identifier of the distribution method (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="distributionMethodID", EmitDefaultValue=false)]
        public string DistributionMethodID { get; set; }

        /// <summary>
        /// &lt;p&gt;Identifier of the assortment (used e.g. in the purchase order process)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Identifier of the assortment (used e.g. in the purchase order process)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="assortmentID", EmitDefaultValue=false)]
        public string AssortmentID { get; set; }

        /// <summary>
        /// &lt;p&gt;Identifier of the 3rd party assortment (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Identifier of the 3rd party assortment (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="thirdPartyAssortmentID", EmitDefaultValue=false)]
        public string ThirdPartyAssortmentID { get; set; }

        /// <summary>
        /// &lt;p&gt;Identifier of the transport association (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Identifier of the transport association (used in the purchase order process)&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="transportAssociationID", EmitDefaultValue=false)]
        public string TransportAssociationID { get; set; }

        /// <summary>
        /// &lt;p&gt;If the item is a concession item, this is the reference to its supplier&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;If the item is a concession item, this is the reference to its supplier&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="concessionItemSupplierID", EmitDefaultValue=false)]
        public string ConcessionItemSupplierID { get; set; }

        /// <summary>
        /// &lt;p&gt;The default selling unit of measure of the item&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The default selling unit of measure of the item&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="defaultSellingUOMCode", EmitDefaultValue=false)]
        public string DefaultSellingUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Numerator for the conversion into base unit of measure&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Numerator for the conversion into base unit of measure&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="conversionNumerator", EmitDefaultValue=false)]
        public int? ConversionNumerator { get; set; }

        /// <summary>
        /// &lt;p&gt;Denominator for the conversion into base unit of measure&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Denominator for the conversion into base unit of measure&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="conversionDenominator", EmitDefaultValue=false)]
        public int? ConversionDenominator { get; set; }

        /// <summary>
        /// &lt;p&gt;The weight of the consumer package, including packaging&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The weight of the consumer package, including packaging&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageGrossWeight", EmitDefaultValue=false)]
        public double? ConsumerPackageGrossWeight { get; set; }

        /// <summary>
        /// &lt;p&gt;The weight of the consumer package, excluding packaging&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The weight of the consumer package, excluding packaging&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageNetWeight", EmitDefaultValue=false)]
        public double? ConsumerPackageNetWeight { get; set; }

        /// <summary>
        /// &lt;p&gt;Weight unit of measure&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Weight unit of measure&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageWeightUOMCode", EmitDefaultValue=false)]
        public string ConsumerPackageWeightUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;The consumer package volume&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The consumer package volume&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageVolume", EmitDefaultValue=false)]
        public double? ConsumerPackageVolume { get; set; }

        /// <summary>
        /// &lt;p&gt;Volume unit of measure&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Volume unit of measure&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageVolumeUOMCode", EmitDefaultValue=false)]
        public string ConsumerPackageVolumeUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;The dimension from front to back of the  consumer package&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The dimension from front to back of the  consumer package&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageDepth", EmitDefaultValue=false)]
        public double? ConsumerPackageDepth { get; set; }

        /// <summary>
        /// &lt;p&gt;The dimension from left to right of the consumer package&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The dimension from left to right of the consumer package&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageWidth", EmitDefaultValue=false)]
        public double? ConsumerPackageWidth { get; set; }

        /// <summary>
        /// &lt;p&gt;The dimension from top to bottom of the consumer package&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The dimension from top to bottom of the consumer package&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageHeight", EmitDefaultValue=false)]
        public double? ConsumerPackageHeight { get; set; }

        /// <summary>
        /// &lt;p&gt;The code used to specify the units in which a value is being expressed, or manner in which a measurement has been taken.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The code used to specify the units in which a value is being expressed, or manner in which a measurement has been taken.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="consumerPackageSizeUOMCode", EmitDefaultValue=false)]
        public string ConsumerPackageSizeUOMCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Typecode of the outer package of the item, is used for label printing&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Typecode of the outer package of the item, is used for label printing&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="outerPackageTypeCode", EmitDefaultValue=false)]
        public string OuterPackageTypeCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Typecode of the outer package of the item, is used for label printing&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Typecode of the outer package of the item, is used for label printing&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="headOfficeCarryRequirementTypeCode", EmitDefaultValue=false)]
        public string HeadOfficeCarryRequirementTypeCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Handling typecode&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Handling typecode&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="handlingTypeCode", EmitDefaultValue=false)]
        public string HandlingTypeCode { get; set; }

        /// <summary>
        /// &lt;p&gt;Date when the status becomes effective&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)
        /// </summary>
        /// <value>&lt;p&gt;Date when the status becomes effective&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        [DataMember(Name="statusEffectiveDate", EmitDefaultValue=false)]
        public string StatusEffectiveDate { get; set; }

        /// <summary>
        /// &lt;p&gt;Maximum stock quantity&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Maximum stock quantity&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="maximumStockQuantity", EmitDefaultValue=false)]
        public double? MaximumStockQuantity { get; set; }

        /// <summary>
        /// &lt;p&gt;Minimum stock quantity&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Minimum stock quantity&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="minimumStockQuantity", EmitDefaultValue=false)]
        public double? MinimumStockQuantity { get; set; }

        /// <summary>
        /// &lt;p&gt;Date when the listing becomes effective&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)
        /// </summary>
        /// <value>&lt;p&gt;Date when the listing becomes effective&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        [DataMember(Name="listingEffectiveDate", EmitDefaultValue=false)]
        public string ListingEffectiveDate { get; set; }

        /// <summary>
        /// &lt;p&gt;Last date when the item is available for ordering&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)
        /// </summary>
        /// <value>&lt;p&gt;Last date when the item is available for ordering&lt;br /&gt;&lt;/p&gt; Date format &#39;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39; (no timezone)</value>
        [DataMember(Name="listingExpirationDate", EmitDefaultValue=false)]
        public string ListingExpirationDate { get; set; }

        /// <summary>
        /// &lt;p&gt;List of all Customer Specific Prices for this item.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;List of all Customer Specific Prices for this item.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="priceContractReadList", EmitDefaultValue=false)]
        public List<ComGkSoftwareGkrApiServerMdPriceContractDtoDomPriceContractReadDO> PriceContractReadList { get; set; }

        /// <summary>
        /// &lt;p&gt;The Customer Specific Price for given timestamp (if specified, null otherwise).&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;The Customer Specific Price for given timestamp (if specified, null otherwise).&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="selectedPriceContractRead", EmitDefaultValue=false)]
        public ComGkSoftwareGkrApiServerMdPriceContractDtoDomPriceContractReadDO SelectedPriceContractRead { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_01", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM01 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_02", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM02 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_03", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM03 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_04", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM04 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_05", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM05 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_06", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM06 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_07", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM07 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_08", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM08 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_09", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM09 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_10", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM10 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_11", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM11 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_12", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM12 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_13", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM13 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_14", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM14 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_15", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM15 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_16", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM16 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_17", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM17 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_18", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM18 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_19", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM19 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_20", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM20 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_21", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM21 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_22", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM22 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_23", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM23 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_24", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM24 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_25", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM25 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_26", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM26 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_27", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM27 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_28", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM28 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_29", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM29 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="uom_ITEM_XX_CUSTOM_30", EmitDefaultValue=false)]
        public string UomITEMXXCUSTOM30 { get; set; }

        /// <summary>
        /// &lt;p&gt;HSN (Harmonized System of Nomenclature) is an international classification system of commodities. HSN code ensures that commodities of similar nature are classified properly.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;HSN (Harmonized System of Nomenclature) is an international classification system of commodities. HSN code ensures that commodities of similar nature are classified properly.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="hsncode", EmitDefaultValue=false)]
        public string Hsncode { get; set; }

        /// <summary>
        /// &lt;p&gt;Denotes if RFID method is called and stock is updated.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt; &lt;li&gt;true: The RFID method is called.&lt;/li&gt;&lt;br /&gt; &lt;li&gt;false: The RFID method is not called.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;
        /// </summary>
        /// <value>&lt;p&gt;Denotes if RFID method is called and stock is updated.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt; &lt;li&gt;true: The RFID method is called.&lt;/li&gt;&lt;br /&gt; &lt;li&gt;false: The RFID method is not called.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;</value>
        [DataMember(Name="rfidflag", EmitDefaultValue=false)]
        public bool? Rfidflag { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_01", EmitDefaultValue=false)]
        public string ItemXXCUSTOM01 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_02", EmitDefaultValue=false)]
        public string ItemXXCUSTOM02 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_03", EmitDefaultValue=false)]
        public string ItemXXCUSTOM03 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_04", EmitDefaultValue=false)]
        public string ItemXXCUSTOM04 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_05", EmitDefaultValue=false)]
        public string ItemXXCUSTOM05 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_06", EmitDefaultValue=false)]
        public string ItemXXCUSTOM06 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_07", EmitDefaultValue=false)]
        public string ItemXXCUSTOM07 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_08", EmitDefaultValue=false)]
        public string ItemXXCUSTOM08 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_09", EmitDefaultValue=false)]
        public string ItemXXCUSTOM09 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_10", EmitDefaultValue=false)]
        public string ItemXXCUSTOM10 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_11", EmitDefaultValue=false)]
        public string ItemXXCUSTOM11 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_12", EmitDefaultValue=false)]
        public string ItemXXCUSTOM12 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_13", EmitDefaultValue=false)]
        public string ItemXXCUSTOM13 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_14", EmitDefaultValue=false)]
        public string ItemXXCUSTOM14 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_15", EmitDefaultValue=false)]
        public string ItemXXCUSTOM15 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_16", EmitDefaultValue=false)]
        public string ItemXXCUSTOM16 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_17", EmitDefaultValue=false)]
        public string ItemXXCUSTOM17 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_18", EmitDefaultValue=false)]
        public string ItemXXCUSTOM18 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_19", EmitDefaultValue=false)]
        public string ItemXXCUSTOM19 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_20", EmitDefaultValue=false)]
        public string ItemXXCUSTOM20 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_21", EmitDefaultValue=false)]
        public string ItemXXCUSTOM21 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_22", EmitDefaultValue=false)]
        public string ItemXXCUSTOM22 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_23", EmitDefaultValue=false)]
        public string ItemXXCUSTOM23 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_24", EmitDefaultValue=false)]
        public string ItemXXCUSTOM24 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_25", EmitDefaultValue=false)]
        public string ItemXXCUSTOM25 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_26", EmitDefaultValue=false)]
        public string ItemXXCUSTOM26 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_27", EmitDefaultValue=false)]
        public string ItemXXCUSTOM27 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_28", EmitDefaultValue=false)]
        public string ItemXXCUSTOM28 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_29", EmitDefaultValue=false)]
        public string ItemXXCUSTOM29 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="item_XX_CUSTOM_30", EmitDefaultValue=false)]
        public string ItemXXCUSTOM30 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_01", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM01 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_02", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM02 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_03", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM03 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_04", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM04 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_05", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM05 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_06", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM06 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_07", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM07 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_08", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM08 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_09", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM09 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_10", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM10 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_11", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM11 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_12", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM12 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_13", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM13 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_14", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM14 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_15", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM15 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_16", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM16 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_17", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM17 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_18", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM18 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_19", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM19 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_20", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM20 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_21", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM21 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_22", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM22 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_23", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM23 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_24", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM24 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_25", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM25 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_26", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM26 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_27", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM27 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_28", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM28 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_29", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM29 { get; set; }

        /// <summary>
        /// &lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Additional field for custom development.&lt;br /&gt;&lt;/p&gt;</value>
        [DataMember(Name="bulk_ITEM_XX_CUSTOM_30", EmitDefaultValue=false)]
        public string BulkITEMXXCUSTOM30 { get; set; }

        /// <summary>
        /// Returns the string presentation of the object
        /// </summary>
        /// <returns>String presentation of the object</returns>
        public override string ToString()
        {
            var sb = new StringBuilder();
            sb.Append("class ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO {\n");
            sb.Append("  Key: ").Append(Key).Append("\n");
            sb.Append("  UomName: ").Append(UomName).Append("\n");
            sb.Append("  Name: ").Append(Name).Append("\n");
            sb.Append("  Description: ").Append(Description).Append("\n");
            sb.Append("  ClassCode: ").Append(ClassCode).Append("\n");
            sb.Append("  TaxGroupID: ").Append(TaxGroupID).Append("\n");
            sb.Append("  AlternativeTaxGroupID: ").Append(AlternativeTaxGroupID).Append("\n");
            sb.Append("  TaxGroupReceiptPrintCode: ").Append(TaxGroupReceiptPrintCode).Append("\n");
            sb.Append("  ItemUsageTypeCode: ").Append(ItemUsageTypeCode).Append("\n");
            sb.Append("  TaxExemptCode: ").Append(TaxExemptCode).Append("\n");
            sb.Append("  WarrantyPeriod: ").Append(WarrantyPeriod).Append("\n");
            sb.Append("  TareId: ").Append(TareId).Append("\n");
            sb.Append("  TareUomCode: ").Append(TareUomCode).Append("\n");
            sb.Append("  PosDepartmentID: ").Append(PosDepartmentID).Append("\n");
            sb.Append("  MainPOSItemId: ").Append(MainPOSItemId).Append("\n");
            sb.Append("  MainMerchandiseHierarchyGroupID: ").Append(MainMerchandiseHierarchyGroupID).Append("\n");
            sb.Append("  MainMerchandiseHierarchyGroupName: ").Append(MainMerchandiseHierarchyGroupName).Append("\n");
            sb.Append("  MainMerchandiseHierarchyGroupDescription: ").Append(MainMerchandiseHierarchyGroupDescription).Append("\n");
            sb.Append("  DepositTypeCode: ").Append(DepositTypeCode).Append("\n");
            sb.Append("  ItemSellingRule: ").Append(ItemSellingRule).Append("\n");
            sb.Append("  StatusCode: ").Append(StatusCode).Append("\n");
            sb.Append("  ItemCollectionList: ").Append(ItemCollectionList).Append("\n");
            sb.Append("  RelatedItemAssociationList: ").Append(RelatedItemAssociationList).Append("\n");
            sb.Append("  ItemCharacteristicList: ").Append(ItemCharacteristicList).Append("\n");
            sb.Append("  ItemFeatureList: ").Append(ItemFeatureList).Append("\n");
            sb.Append("  PosIdentityList: ").Append(PosIdentityList).Append("\n");
            sb.Append("  SellingPriceList: ").Append(SellingPriceList).Append("\n");
            sb.Append("  ItemDepositCollectionList: ").Append(ItemDepositCollectionList).Append("\n");
            sb.Append("  UomItemTextList: ").Append(UomItemTextList).Append("\n");
            sb.Append("  ItemMHGList: ").Append(ItemMHGList).Append("\n");
            sb.Append("  SalesRestrictionList: ").Append(SalesRestrictionList).Append("\n");
            sb.Append("  UpdateStockFlag: ").Append(UpdateStockFlag).Append("\n");
            sb.Append("  BaseUOMCode: ").Append(BaseUOMCode).Append("\n");
            sb.Append("  ProhibitedForPhysicalInventoryFlag: ").Append(ProhibitedForPhysicalInventoryFlag).Append("\n");
            sb.Append("  MinimumShelfLifeDayCount: ").Append(MinimumShelfLifeDayCount).Append("\n");
            sb.Append("  LabelType: ").Append(LabelType).Append("\n");
            sb.Append("  DiscountTypeCode: ").Append(DiscountTypeCode).Append("\n");
            sb.Append("  GlobalLifeDayCount: ").Append(GlobalLifeDayCount).Append("\n");
            sb.Append("  ShelfLifeDayCountPercent: ").Append(ShelfLifeDayCountPercent).Append("\n");
            sb.Append("  DayCountUOMCode: ").Append(DayCountUOMCode).Append("\n");
            sb.Append("  DefaultReceivingLocation: ").Append(DefaultReceivingLocation).Append("\n");
            sb.Append("  ConcessionItemFlag: ").Append(ConcessionItemFlag).Append("\n");
            sb.Append("  CostItemFlag: ").Append(CostItemFlag).Append("\n");
            sb.Append("  MerchandisePlanningTypeCode: ").Append(MerchandisePlanningTypeCode).Append("\n");
            sb.Append("  MainSupplierId: ").Append(MainSupplierId).Append("\n");
            sb.Append("  VenSafeFlag: ").Append(VenSafeFlag).Append("\n");
            sb.Append("  BaseUOMConsumerPackageGrossContent: ").Append(BaseUOMConsumerPackageGrossContent).Append("\n");
            sb.Append("  BaseUOMConsumerPackageNetContent: ").Append(BaseUOMConsumerPackageNetContent).Append("\n");
            sb.Append("  BaseUOMConsumerPackageContentsUOMCode: ").Append(BaseUOMConsumerPackageContentsUOMCode).Append("\n");
            sb.Append("  BaseUOMConsumerPackageBasePriceContent: ").Append(BaseUOMConsumerPackageBasePriceContent).Append("\n");
            sb.Append("  BaseUOMConsumerPackageBasePriceContentsUOMCode: ").Append(BaseUOMConsumerPackageBasePriceContentsUOMCode).Append("\n");
            sb.Append("  DistributingWarehouseID: ").Append(DistributingWarehouseID).Append("\n");
            sb.Append("  DistributionMethodID: ").Append(DistributionMethodID).Append("\n");
            sb.Append("  AssortmentID: ").Append(AssortmentID).Append("\n");
            sb.Append("  ThirdPartyAssortmentID: ").Append(ThirdPartyAssortmentID).Append("\n");
            sb.Append("  TransportAssociationID: ").Append(TransportAssociationID).Append("\n");
            sb.Append("  ConcessionItemSupplierID: ").Append(ConcessionItemSupplierID).Append("\n");
            sb.Append("  DefaultSellingUOMCode: ").Append(DefaultSellingUOMCode).Append("\n");
            sb.Append("  ConversionNumerator: ").Append(ConversionNumerator).Append("\n");
            sb.Append("  ConversionDenominator: ").Append(ConversionDenominator).Append("\n");
            sb.Append("  ConsumerPackageGrossWeight: ").Append(ConsumerPackageGrossWeight).Append("\n");
            sb.Append("  ConsumerPackageNetWeight: ").Append(ConsumerPackageNetWeight).Append("\n");
            sb.Append("  ConsumerPackageWeightUOMCode: ").Append(ConsumerPackageWeightUOMCode).Append("\n");
            sb.Append("  ConsumerPackageVolume: ").Append(ConsumerPackageVolume).Append("\n");
            sb.Append("  ConsumerPackageVolumeUOMCode: ").Append(ConsumerPackageVolumeUOMCode).Append("\n");
            sb.Append("  ConsumerPackageDepth: ").Append(ConsumerPackageDepth).Append("\n");
            sb.Append("  ConsumerPackageWidth: ").Append(ConsumerPackageWidth).Append("\n");
            sb.Append("  ConsumerPackageHeight: ").Append(ConsumerPackageHeight).Append("\n");
            sb.Append("  ConsumerPackageSizeUOMCode: ").Append(ConsumerPackageSizeUOMCode).Append("\n");
            sb.Append("  OuterPackageTypeCode: ").Append(OuterPackageTypeCode).Append("\n");
            sb.Append("  HeadOfficeCarryRequirementTypeCode: ").Append(HeadOfficeCarryRequirementTypeCode).Append("\n");
            sb.Append("  HandlingTypeCode: ").Append(HandlingTypeCode).Append("\n");
            sb.Append("  StatusEffectiveDate: ").Append(StatusEffectiveDate).Append("\n");
            sb.Append("  MaximumStockQuantity: ").Append(MaximumStockQuantity).Append("\n");
            sb.Append("  MinimumStockQuantity: ").Append(MinimumStockQuantity).Append("\n");
            sb.Append("  ListingEffectiveDate: ").Append(ListingEffectiveDate).Append("\n");
            sb.Append("  ListingExpirationDate: ").Append(ListingExpirationDate).Append("\n");
            sb.Append("  PriceContractReadList: ").Append(PriceContractReadList).Append("\n");
            sb.Append("  SelectedPriceContractRead: ").Append(SelectedPriceContractRead).Append("\n");
            sb.Append("  UomITEMXXCUSTOM01: ").Append(UomITEMXXCUSTOM01).Append("\n");
            sb.Append("  UomITEMXXCUSTOM02: ").Append(UomITEMXXCUSTOM02).Append("\n");
            sb.Append("  UomITEMXXCUSTOM03: ").Append(UomITEMXXCUSTOM03).Append("\n");
            sb.Append("  UomITEMXXCUSTOM04: ").Append(UomITEMXXCUSTOM04).Append("\n");
            sb.Append("  UomITEMXXCUSTOM05: ").Append(UomITEMXXCUSTOM05).Append("\n");
            sb.Append("  UomITEMXXCUSTOM06: ").Append(UomITEMXXCUSTOM06).Append("\n");
            sb.Append("  UomITEMXXCUSTOM07: ").Append(UomITEMXXCUSTOM07).Append("\n");
            sb.Append("  UomITEMXXCUSTOM08: ").Append(UomITEMXXCUSTOM08).Append("\n");
            sb.Append("  UomITEMXXCUSTOM09: ").Append(UomITEMXXCUSTOM09).Append("\n");
            sb.Append("  UomITEMXXCUSTOM10: ").Append(UomITEMXXCUSTOM10).Append("\n");
            sb.Append("  UomITEMXXCUSTOM11: ").Append(UomITEMXXCUSTOM11).Append("\n");
            sb.Append("  UomITEMXXCUSTOM12: ").Append(UomITEMXXCUSTOM12).Append("\n");
            sb.Append("  UomITEMXXCUSTOM13: ").Append(UomITEMXXCUSTOM13).Append("\n");
            sb.Append("  UomITEMXXCUSTOM14: ").Append(UomITEMXXCUSTOM14).Append("\n");
            sb.Append("  UomITEMXXCUSTOM15: ").Append(UomITEMXXCUSTOM15).Append("\n");
            sb.Append("  UomITEMXXCUSTOM16: ").Append(UomITEMXXCUSTOM16).Append("\n");
            sb.Append("  UomITEMXXCUSTOM17: ").Append(UomITEMXXCUSTOM17).Append("\n");
            sb.Append("  UomITEMXXCUSTOM18: ").Append(UomITEMXXCUSTOM18).Append("\n");
            sb.Append("  UomITEMXXCUSTOM19: ").Append(UomITEMXXCUSTOM19).Append("\n");
            sb.Append("  UomITEMXXCUSTOM20: ").Append(UomITEMXXCUSTOM20).Append("\n");
            sb.Append("  UomITEMXXCUSTOM21: ").Append(UomITEMXXCUSTOM21).Append("\n");
            sb.Append("  UomITEMXXCUSTOM22: ").Append(UomITEMXXCUSTOM22).Append("\n");
            sb.Append("  UomITEMXXCUSTOM23: ").Append(UomITEMXXCUSTOM23).Append("\n");
            sb.Append("  UomITEMXXCUSTOM24: ").Append(UomITEMXXCUSTOM24).Append("\n");
            sb.Append("  UomITEMXXCUSTOM25: ").Append(UomITEMXXCUSTOM25).Append("\n");
            sb.Append("  UomITEMXXCUSTOM26: ").Append(UomITEMXXCUSTOM26).Append("\n");
            sb.Append("  UomITEMXXCUSTOM27: ").Append(UomITEMXXCUSTOM27).Append("\n");
            sb.Append("  UomITEMXXCUSTOM28: ").Append(UomITEMXXCUSTOM28).Append("\n");
            sb.Append("  UomITEMXXCUSTOM29: ").Append(UomITEMXXCUSTOM29).Append("\n");
            sb.Append("  UomITEMXXCUSTOM30: ").Append(UomITEMXXCUSTOM30).Append("\n");
            sb.Append("  Hsncode: ").Append(Hsncode).Append("\n");
            sb.Append("  Rfidflag: ").Append(Rfidflag).Append("\n");
            sb.Append("  ItemXXCUSTOM01: ").Append(ItemXXCUSTOM01).Append("\n");
            sb.Append("  ItemXXCUSTOM02: ").Append(ItemXXCUSTOM02).Append("\n");
            sb.Append("  ItemXXCUSTOM03: ").Append(ItemXXCUSTOM03).Append("\n");
            sb.Append("  ItemXXCUSTOM04: ").Append(ItemXXCUSTOM04).Append("\n");
            sb.Append("  ItemXXCUSTOM05: ").Append(ItemXXCUSTOM05).Append("\n");
            sb.Append("  ItemXXCUSTOM06: ").Append(ItemXXCUSTOM06).Append("\n");
            sb.Append("  ItemXXCUSTOM07: ").Append(ItemXXCUSTOM07).Append("\n");
            sb.Append("  ItemXXCUSTOM08: ").Append(ItemXXCUSTOM08).Append("\n");
            sb.Append("  ItemXXCUSTOM09: ").Append(ItemXXCUSTOM09).Append("\n");
            sb.Append("  ItemXXCUSTOM10: ").Append(ItemXXCUSTOM10).Append("\n");
            sb.Append("  ItemXXCUSTOM11: ").Append(ItemXXCUSTOM11).Append("\n");
            sb.Append("  ItemXXCUSTOM12: ").Append(ItemXXCUSTOM12).Append("\n");
            sb.Append("  ItemXXCUSTOM13: ").Append(ItemXXCUSTOM13).Append("\n");
            sb.Append("  ItemXXCUSTOM14: ").Append(ItemXXCUSTOM14).Append("\n");
            sb.Append("  ItemXXCUSTOM15: ").Append(ItemXXCUSTOM15).Append("\n");
            sb.Append("  ItemXXCUSTOM16: ").Append(ItemXXCUSTOM16).Append("\n");
            sb.Append("  ItemXXCUSTOM17: ").Append(ItemXXCUSTOM17).Append("\n");
            sb.Append("  ItemXXCUSTOM18: ").Append(ItemXXCUSTOM18).Append("\n");
            sb.Append("  ItemXXCUSTOM19: ").Append(ItemXXCUSTOM19).Append("\n");
            sb.Append("  ItemXXCUSTOM20: ").Append(ItemXXCUSTOM20).Append("\n");
            sb.Append("  ItemXXCUSTOM21: ").Append(ItemXXCUSTOM21).Append("\n");
            sb.Append("  ItemXXCUSTOM22: ").Append(ItemXXCUSTOM22).Append("\n");
            sb.Append("  ItemXXCUSTOM23: ").Append(ItemXXCUSTOM23).Append("\n");
            sb.Append("  ItemXXCUSTOM24: ").Append(ItemXXCUSTOM24).Append("\n");
            sb.Append("  ItemXXCUSTOM25: ").Append(ItemXXCUSTOM25).Append("\n");
            sb.Append("  ItemXXCUSTOM26: ").Append(ItemXXCUSTOM26).Append("\n");
            sb.Append("  ItemXXCUSTOM27: ").Append(ItemXXCUSTOM27).Append("\n");
            sb.Append("  ItemXXCUSTOM28: ").Append(ItemXXCUSTOM28).Append("\n");
            sb.Append("  ItemXXCUSTOM29: ").Append(ItemXXCUSTOM29).Append("\n");
            sb.Append("  ItemXXCUSTOM30: ").Append(ItemXXCUSTOM30).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM01: ").Append(BulkITEMXXCUSTOM01).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM02: ").Append(BulkITEMXXCUSTOM02).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM03: ").Append(BulkITEMXXCUSTOM03).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM04: ").Append(BulkITEMXXCUSTOM04).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM05: ").Append(BulkITEMXXCUSTOM05).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM06: ").Append(BulkITEMXXCUSTOM06).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM07: ").Append(BulkITEMXXCUSTOM07).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM08: ").Append(BulkITEMXXCUSTOM08).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM09: ").Append(BulkITEMXXCUSTOM09).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM10: ").Append(BulkITEMXXCUSTOM10).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM11: ").Append(BulkITEMXXCUSTOM11).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM12: ").Append(BulkITEMXXCUSTOM12).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM13: ").Append(BulkITEMXXCUSTOM13).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM14: ").Append(BulkITEMXXCUSTOM14).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM15: ").Append(BulkITEMXXCUSTOM15).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM16: ").Append(BulkITEMXXCUSTOM16).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM17: ").Append(BulkITEMXXCUSTOM17).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM18: ").Append(BulkITEMXXCUSTOM18).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM19: ").Append(BulkITEMXXCUSTOM19).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM20: ").Append(BulkITEMXXCUSTOM20).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM21: ").Append(BulkITEMXXCUSTOM21).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM22: ").Append(BulkITEMXXCUSTOM22).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM23: ").Append(BulkITEMXXCUSTOM23).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM24: ").Append(BulkITEMXXCUSTOM24).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM25: ").Append(BulkITEMXXCUSTOM25).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM26: ").Append(BulkITEMXXCUSTOM26).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM27: ").Append(BulkITEMXXCUSTOM27).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM28: ").Append(BulkITEMXXCUSTOM28).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM29: ").Append(BulkITEMXXCUSTOM29).Append("\n");
            sb.Append("  BulkITEMXXCUSTOM30: ").Append(BulkITEMXXCUSTOM30).Append("\n");
            sb.Append("}\n");
            return sb.ToString();
        }
  
        /// <summary>
        /// Returns the JSON string presentation of the object
        /// </summary>
        /// <returns>JSON string presentation of the object</returns>
        public virtual string ToJson()
        {
            return JsonConvert.SerializeObject(this, Formatting.Indented);
        }

        /// <summary>
        /// Returns true if objects are equal
        /// </summary>
        /// <param name="input">Object to be compared</param>
        /// <returns>Boolean</returns>
        public override bool Equals(object input)
        {
            return this.Equals(input as ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO);
        }

        /// <summary>
        /// Returns true if ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO instances are equal
        /// </summary>
        /// <param name="input">Instance of ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(ComGkSoftwareGkrApiServerMdItemDtoDomPosPosUOMItemDO input)
        {
            if (input == null)
                return false;

            return 
                (
                    this.Key == input.Key ||
                    (this.Key != null &&
                    this.Key.Equals(input.Key))
                ) && 
                (
                    this.UomName == input.UomName ||
                    (this.UomName != null &&
                    this.UomName.Equals(input.UomName))
                ) && 
                (
                    this.Name == input.Name ||
                    (this.Name != null &&
                    this.Name.Equals(input.Name))
                ) && 
                (
                    this.Description == input.Description ||
                    (this.Description != null &&
                    this.Description.Equals(input.Description))
                ) && 
                (
                    this.ClassCode == input.ClassCode ||
                    (this.ClassCode != null &&
                    this.ClassCode.Equals(input.ClassCode))
                ) && 
                (
                    this.TaxGroupID == input.TaxGroupID ||
                    (this.TaxGroupID != null &&
                    this.TaxGroupID.Equals(input.TaxGroupID))
                ) && 
                (
                    this.AlternativeTaxGroupID == input.AlternativeTaxGroupID ||
                    (this.AlternativeTaxGroupID != null &&
                    this.AlternativeTaxGroupID.Equals(input.AlternativeTaxGroupID))
                ) && 
                (
                    this.TaxGroupReceiptPrintCode == input.TaxGroupReceiptPrintCode ||
                    (this.TaxGroupReceiptPrintCode != null &&
                    this.TaxGroupReceiptPrintCode.Equals(input.TaxGroupReceiptPrintCode))
                ) && 
                (
                    this.ItemUsageTypeCode == input.ItemUsageTypeCode ||
                    (this.ItemUsageTypeCode != null &&
                    this.ItemUsageTypeCode.Equals(input.ItemUsageTypeCode))
                ) && 
                (
                    this.TaxExemptCode == input.TaxExemptCode ||
                    (this.TaxExemptCode != null &&
                    this.TaxExemptCode.Equals(input.TaxExemptCode))
                ) && 
                (
                    this.WarrantyPeriod == input.WarrantyPeriod ||
                    (this.WarrantyPeriod != null &&
                    this.WarrantyPeriod.Equals(input.WarrantyPeriod))
                ) && 
                (
                    this.TareId == input.TareId ||
                    (this.TareId != null &&
                    this.TareId.Equals(input.TareId))
                ) && 
                (
                    this.TareUomCode == input.TareUomCode ||
                    (this.TareUomCode != null &&
                    this.TareUomCode.Equals(input.TareUomCode))
                ) && 
                (
                    this.PosDepartmentID == input.PosDepartmentID ||
                    (this.PosDepartmentID != null &&
                    this.PosDepartmentID.Equals(input.PosDepartmentID))
                ) && 
                (
                    this.MainPOSItemId == input.MainPOSItemId ||
                    (this.MainPOSItemId != null &&
                    this.MainPOSItemId.Equals(input.MainPOSItemId))
                ) && 
                (
                    this.MainMerchandiseHierarchyGroupID == input.MainMerchandiseHierarchyGroupID ||
                    (this.MainMerchandiseHierarchyGroupID != null &&
                    this.MainMerchandiseHierarchyGroupID.Equals(input.MainMerchandiseHierarchyGroupID))
                ) && 
                (
                    this.MainMerchandiseHierarchyGroupName == input.MainMerchandiseHierarchyGroupName ||
                    (this.MainMerchandiseHierarchyGroupName != null &&
                    this.MainMerchandiseHierarchyGroupName.Equals(input.MainMerchandiseHierarchyGroupName))
                ) && 
                (
                    this.MainMerchandiseHierarchyGroupDescription == input.MainMerchandiseHierarchyGroupDescription ||
                    (this.MainMerchandiseHierarchyGroupDescription != null &&
                    this.MainMerchandiseHierarchyGroupDescription.Equals(input.MainMerchandiseHierarchyGroupDescription))
                ) && 
                (
                    this.DepositTypeCode == input.DepositTypeCode ||
                    (this.DepositTypeCode != null &&
                    this.DepositTypeCode.Equals(input.DepositTypeCode))
                ) && 
                (
                    this.ItemSellingRule == input.ItemSellingRule ||
                    (this.ItemSellingRule != null &&
                    this.ItemSellingRule.Equals(input.ItemSellingRule))
                ) && 
                (
                    this.StatusCode == input.StatusCode ||
                    (this.StatusCode != null &&
                    this.StatusCode.Equals(input.StatusCode))
                ) && 
                (
                    this.ItemCollectionList == input.ItemCollectionList ||
                    this.ItemCollectionList != null &&
                    this.ItemCollectionList.SequenceEqual(input.ItemCollectionList)
                ) && 
                (
                    this.RelatedItemAssociationList == input.RelatedItemAssociationList ||
                    this.RelatedItemAssociationList != null &&
                    this.RelatedItemAssociationList.SequenceEqual(input.RelatedItemAssociationList)
                ) && 
                (
                    this.ItemCharacteristicList == input.ItemCharacteristicList ||
                    this.ItemCharacteristicList != null &&
                    this.ItemCharacteristicList.SequenceEqual(input.ItemCharacteristicList)
                ) && 
                (
                    this.ItemFeatureList == input.ItemFeatureList ||
                    this.ItemFeatureList != null &&
                    this.ItemFeatureList.SequenceEqual(input.ItemFeatureList)
                ) && 
                (
                    this.PosIdentityList == input.PosIdentityList ||
                    this.PosIdentityList != null &&
                    this.PosIdentityList.SequenceEqual(input.PosIdentityList)
                ) && 
                (
                    this.SellingPriceList == input.SellingPriceList ||
                    this.SellingPriceList != null &&
                    this.SellingPriceList.SequenceEqual(input.SellingPriceList)
                ) && 
                (
                    this.ItemDepositCollectionList == input.ItemDepositCollectionList ||
                    this.ItemDepositCollectionList != null &&
                    this.ItemDepositCollectionList.SequenceEqual(input.ItemDepositCollectionList)
                ) && 
                (
                    this.UomItemTextList == input.UomItemTextList ||
                    this.UomItemTextList != null &&
                    this.UomItemTextList.SequenceEqual(input.UomItemTextList)
                ) && 
                (
                    this.ItemMHGList == input.ItemMHGList ||
                    this.ItemMHGList != null &&
                    this.ItemMHGList.SequenceEqual(input.ItemMHGList)
                ) && 
                (
                    this.SalesRestrictionList == input.SalesRestrictionList ||
                    this.SalesRestrictionList != null &&
                    this.SalesRestrictionList.SequenceEqual(input.SalesRestrictionList)
                ) && 
                (
                    this.UpdateStockFlag == input.UpdateStockFlag ||
                    (this.UpdateStockFlag != null &&
                    this.UpdateStockFlag.Equals(input.UpdateStockFlag))
                ) && 
                (
                    this.BaseUOMCode == input.BaseUOMCode ||
                    (this.BaseUOMCode != null &&
                    this.BaseUOMCode.Equals(input.BaseUOMCode))
                ) && 
                (
                    this.ProhibitedForPhysicalInventoryFlag == input.ProhibitedForPhysicalInventoryFlag ||
                    (this.ProhibitedForPhysicalInventoryFlag != null &&
                    this.ProhibitedForPhysicalInventoryFlag.Equals(input.ProhibitedForPhysicalInventoryFlag))
                ) && 
                (
                    this.MinimumShelfLifeDayCount == input.MinimumShelfLifeDayCount ||
                    (this.MinimumShelfLifeDayCount != null &&
                    this.MinimumShelfLifeDayCount.Equals(input.MinimumShelfLifeDayCount))
                ) && 
                (
                    this.LabelType == input.LabelType ||
                    (this.LabelType != null &&
                    this.LabelType.Equals(input.LabelType))
                ) && 
                (
                    this.DiscountTypeCode == input.DiscountTypeCode ||
                    (this.DiscountTypeCode != null &&
                    this.DiscountTypeCode.Equals(input.DiscountTypeCode))
                ) && 
                (
                    this.GlobalLifeDayCount == input.GlobalLifeDayCount ||
                    (this.GlobalLifeDayCount != null &&
                    this.GlobalLifeDayCount.Equals(input.GlobalLifeDayCount))
                ) && 
                (
                    this.ShelfLifeDayCountPercent == input.ShelfLifeDayCountPercent ||
                    (this.ShelfLifeDayCountPercent != null &&
                    this.ShelfLifeDayCountPercent.Equals(input.ShelfLifeDayCountPercent))
                ) && 
                (
                    this.DayCountUOMCode == input.DayCountUOMCode ||
                    (this.DayCountUOMCode != null &&
                    this.DayCountUOMCode.Equals(input.DayCountUOMCode))
                ) && 
                (
                    this.DefaultReceivingLocation == input.DefaultReceivingLocation ||
                    (this.DefaultReceivingLocation != null &&
                    this.DefaultReceivingLocation.Equals(input.DefaultReceivingLocation))
                ) && 
                (
                    this.ConcessionItemFlag == input.ConcessionItemFlag ||
                    (this.ConcessionItemFlag != null &&
                    this.ConcessionItemFlag.Equals(input.ConcessionItemFlag))
                ) && 
                (
                    this.CostItemFlag == input.CostItemFlag ||
                    (this.CostItemFlag != null &&
                    this.CostItemFlag.Equals(input.CostItemFlag))
                ) && 
                (
                    this.MerchandisePlanningTypeCode == input.MerchandisePlanningTypeCode ||
                    (this.MerchandisePlanningTypeCode != null &&
                    this.MerchandisePlanningTypeCode.Equals(input.MerchandisePlanningTypeCode))
                ) && 
                (
                    this.MainSupplierId == input.MainSupplierId ||
                    (this.MainSupplierId != null &&
                    this.MainSupplierId.Equals(input.MainSupplierId))
                ) && 
                (
                    this.VenSafeFlag == input.VenSafeFlag ||
                    (this.VenSafeFlag != null &&
                    this.VenSafeFlag.Equals(input.VenSafeFlag))
                ) && 
                (
                    this.BaseUOMConsumerPackageGrossContent == input.BaseUOMConsumerPackageGrossContent ||
                    (this.BaseUOMConsumerPackageGrossContent != null &&
                    this.BaseUOMConsumerPackageGrossContent.Equals(input.BaseUOMConsumerPackageGrossContent))
                ) && 
                (
                    this.BaseUOMConsumerPackageNetContent == input.BaseUOMConsumerPackageNetContent ||
                    (this.BaseUOMConsumerPackageNetContent != null &&
                    this.BaseUOMConsumerPackageNetContent.Equals(input.BaseUOMConsumerPackageNetContent))
                ) && 
                (
                    this.BaseUOMConsumerPackageContentsUOMCode == input.BaseUOMConsumerPackageContentsUOMCode ||
                    (this.BaseUOMConsumerPackageContentsUOMCode != null &&
                    this.BaseUOMConsumerPackageContentsUOMCode.Equals(input.BaseUOMConsumerPackageContentsUOMCode))
                ) && 
                (
                    this.BaseUOMConsumerPackageBasePriceContent == input.BaseUOMConsumerPackageBasePriceContent ||
                    (this.BaseUOMConsumerPackageBasePriceContent != null &&
                    this.BaseUOMConsumerPackageBasePriceContent.Equals(input.BaseUOMConsumerPackageBasePriceContent))
                ) && 
                (
                    this.BaseUOMConsumerPackageBasePriceContentsUOMCode == input.BaseUOMConsumerPackageBasePriceContentsUOMCode ||
                    (this.BaseUOMConsumerPackageBasePriceContentsUOMCode != null &&
                    this.BaseUOMConsumerPackageBasePriceContentsUOMCode.Equals(input.BaseUOMConsumerPackageBasePriceContentsUOMCode))
                ) && 
                (
                    this.DistributingWarehouseID == input.DistributingWarehouseID ||
                    (this.DistributingWarehouseID != null &&
                    this.DistributingWarehouseID.Equals(input.DistributingWarehouseID))
                ) && 
                (
                    this.DistributionMethodID == input.DistributionMethodID ||
                    (this.DistributionMethodID != null &&
                    this.DistributionMethodID.Equals(input.DistributionMethodID))
                ) && 
                (
                    this.AssortmentID == input.AssortmentID ||
                    (this.AssortmentID != null &&
                    this.AssortmentID.Equals(input.AssortmentID))
                ) && 
                (
                    this.ThirdPartyAssortmentID == input.ThirdPartyAssortmentID ||
                    (this.ThirdPartyAssortmentID != null &&
                    this.ThirdPartyAssortmentID.Equals(input.ThirdPartyAssortmentID))
                ) && 
                (
                    this.TransportAssociationID == input.TransportAssociationID ||
                    (this.TransportAssociationID != null &&
                    this.TransportAssociationID.Equals(input.TransportAssociationID))
                ) && 
                (
                    this.ConcessionItemSupplierID == input.ConcessionItemSupplierID ||
                    (this.ConcessionItemSupplierID != null &&
                    this.ConcessionItemSupplierID.Equals(input.ConcessionItemSupplierID))
                ) && 
                (
                    this.DefaultSellingUOMCode == input.DefaultSellingUOMCode ||
                    (this.DefaultSellingUOMCode != null &&
                    this.DefaultSellingUOMCode.Equals(input.DefaultSellingUOMCode))
                ) && 
                (
                    this.ConversionNumerator == input.ConversionNumerator ||
                    (this.ConversionNumerator != null &&
                    this.ConversionNumerator.Equals(input.ConversionNumerator))
                ) && 
                (
                    this.ConversionDenominator == input.ConversionDenominator ||
                    (this.ConversionDenominator != null &&
                    this.ConversionDenominator.Equals(input.ConversionDenominator))
                ) && 
                (
                    this.ConsumerPackageGrossWeight == input.ConsumerPackageGrossWeight ||
                    (this.ConsumerPackageGrossWeight != null &&
                    this.ConsumerPackageGrossWeight.Equals(input.ConsumerPackageGrossWeight))
                ) && 
                (
                    this.ConsumerPackageNetWeight == input.ConsumerPackageNetWeight ||
                    (this.ConsumerPackageNetWeight != null &&
                    this.ConsumerPackageNetWeight.Equals(input.ConsumerPackageNetWeight))
                ) && 
                (
                    this.ConsumerPackageWeightUOMCode == input.ConsumerPackageWeightUOMCode ||
                    (this.ConsumerPackageWeightUOMCode != null &&
                    this.ConsumerPackageWeightUOMCode.Equals(input.ConsumerPackageWeightUOMCode))
                ) && 
                (
                    this.ConsumerPackageVolume == input.ConsumerPackageVolume ||
                    (this.ConsumerPackageVolume != null &&
                    this.ConsumerPackageVolume.Equals(input.ConsumerPackageVolume))
                ) && 
                (
                    this.ConsumerPackageVolumeUOMCode == input.ConsumerPackageVolumeUOMCode ||
                    (this.ConsumerPackageVolumeUOMCode != null &&
                    this.ConsumerPackageVolumeUOMCode.Equals(input.ConsumerPackageVolumeUOMCode))
                ) && 
                (
                    this.ConsumerPackageDepth == input.ConsumerPackageDepth ||
                    (this.ConsumerPackageDepth != null &&
                    this.ConsumerPackageDepth.Equals(input.ConsumerPackageDepth))
                ) && 
                (
                    this.ConsumerPackageWidth == input.ConsumerPackageWidth ||
                    (this.ConsumerPackageWidth != null &&
                    this.ConsumerPackageWidth.Equals(input.ConsumerPackageWidth))
                ) && 
                (
                    this.ConsumerPackageHeight == input.ConsumerPackageHeight ||
                    (this.ConsumerPackageHeight != null &&
                    this.ConsumerPackageHeight.Equals(input.ConsumerPackageHeight))
                ) && 
                (
                    this.ConsumerPackageSizeUOMCode == input.ConsumerPackageSizeUOMCode ||
                    (this.ConsumerPackageSizeUOMCode != null &&
                    this.ConsumerPackageSizeUOMCode.Equals(input.ConsumerPackageSizeUOMCode))
                ) && 
                (
                    this.OuterPackageTypeCode == input.OuterPackageTypeCode ||
                    (this.OuterPackageTypeCode != null &&
                    this.OuterPackageTypeCode.Equals(input.OuterPackageTypeCode))
                ) && 
                (
                    this.HeadOfficeCarryRequirementTypeCode == input.HeadOfficeCarryRequirementTypeCode ||
                    (this.HeadOfficeCarryRequirementTypeCode != null &&
                    this.HeadOfficeCarryRequirementTypeCode.Equals(input.HeadOfficeCarryRequirementTypeCode))
                ) && 
                (
                    this.HandlingTypeCode == input.HandlingTypeCode ||
                    (this.HandlingTypeCode != null &&
                    this.HandlingTypeCode.Equals(input.HandlingTypeCode))
                ) && 
                (
                    this.StatusEffectiveDate == input.StatusEffectiveDate ||
                    (this.StatusEffectiveDate != null &&
                    this.StatusEffectiveDate.Equals(input.StatusEffectiveDate))
                ) && 
                (
                    this.MaximumStockQuantity == input.MaximumStockQuantity ||
                    (this.MaximumStockQuantity != null &&
                    this.MaximumStockQuantity.Equals(input.MaximumStockQuantity))
                ) && 
                (
                    this.MinimumStockQuantity == input.MinimumStockQuantity ||
                    (this.MinimumStockQuantity != null &&
                    this.MinimumStockQuantity.Equals(input.MinimumStockQuantity))
                ) && 
                (
                    this.ListingEffectiveDate == input.ListingEffectiveDate ||
                    (this.ListingEffectiveDate != null &&
                    this.ListingEffectiveDate.Equals(input.ListingEffectiveDate))
                ) && 
                (
                    this.ListingExpirationDate == input.ListingExpirationDate ||
                    (this.ListingExpirationDate != null &&
                    this.ListingExpirationDate.Equals(input.ListingExpirationDate))
                ) && 
                (
                    this.PriceContractReadList == input.PriceContractReadList ||
                    this.PriceContractReadList != null &&
                    this.PriceContractReadList.SequenceEqual(input.PriceContractReadList)
                ) && 
                (
                    this.SelectedPriceContractRead == input.SelectedPriceContractRead ||
                    (this.SelectedPriceContractRead != null &&
                    this.SelectedPriceContractRead.Equals(input.SelectedPriceContractRead))
                ) && 
                (
                    this.UomITEMXXCUSTOM01 == input.UomITEMXXCUSTOM01 ||
                    (this.UomITEMXXCUSTOM01 != null &&
                    this.UomITEMXXCUSTOM01.Equals(input.UomITEMXXCUSTOM01))
                ) && 
                (
                    this.UomITEMXXCUSTOM02 == input.UomITEMXXCUSTOM02 ||
                    (this.UomITEMXXCUSTOM02 != null &&
                    this.UomITEMXXCUSTOM02.Equals(input.UomITEMXXCUSTOM02))
                ) && 
                (
                    this.UomITEMXXCUSTOM03 == input.UomITEMXXCUSTOM03 ||
                    (this.UomITEMXXCUSTOM03 != null &&
                    this.UomITEMXXCUSTOM03.Equals(input.UomITEMXXCUSTOM03))
                ) && 
                (
                    this.UomITEMXXCUSTOM04 == input.UomITEMXXCUSTOM04 ||
                    (this.UomITEMXXCUSTOM04 != null &&
                    this.UomITEMXXCUSTOM04.Equals(input.UomITEMXXCUSTOM04))
                ) && 
                (
                    this.UomITEMXXCUSTOM05 == input.UomITEMXXCUSTOM05 ||
                    (this.UomITEMXXCUSTOM05 != null &&
                    this.UomITEMXXCUSTOM05.Equals(input.UomITEMXXCUSTOM05))
                ) && 
                (
                    this.UomITEMXXCUSTOM06 == input.UomITEMXXCUSTOM06 ||
                    (this.UomITEMXXCUSTOM06 != null &&
                    this.UomITEMXXCUSTOM06.Equals(input.UomITEMXXCUSTOM06))
                ) && 
                (
                    this.UomITEMXXCUSTOM07 == input.UomITEMXXCUSTOM07 ||
                    (this.UomITEMXXCUSTOM07 != null &&
                    this.UomITEMXXCUSTOM07.Equals(input.UomITEMXXCUSTOM07))
                ) && 
                (
                    this.UomITEMXXCUSTOM08 == input.UomITEMXXCUSTOM08 ||
                    (this.UomITEMXXCUSTOM08 != null &&
                    this.UomITEMXXCUSTOM08.Equals(input.UomITEMXXCUSTOM08))
                ) && 
                (
                    this.UomITEMXXCUSTOM09 == input.UomITEMXXCUSTOM09 ||
                    (this.UomITEMXXCUSTOM09 != null &&
                    this.UomITEMXXCUSTOM09.Equals(input.UomITEMXXCUSTOM09))
                ) && 
                (
                    this.UomITEMXXCUSTOM10 == input.UomITEMXXCUSTOM10 ||
                    (this.UomITEMXXCUSTOM10 != null &&
                    this.UomITEMXXCUSTOM10.Equals(input.UomITEMXXCUSTOM10))
                ) && 
                (
                    this.UomITEMXXCUSTOM11 == input.UomITEMXXCUSTOM11 ||
                    (this.UomITEMXXCUSTOM11 != null &&
                    this.UomITEMXXCUSTOM11.Equals(input.UomITEMXXCUSTOM11))
                ) && 
                (
                    this.UomITEMXXCUSTOM12 == input.UomITEMXXCUSTOM12 ||
                    (this.UomITEMXXCUSTOM12 != null &&
                    this.UomITEMXXCUSTOM12.Equals(input.UomITEMXXCUSTOM12))
                ) && 
                (
                    this.UomITEMXXCUSTOM13 == input.UomITEMXXCUSTOM13 ||
                    (this.UomITEMXXCUSTOM13 != null &&
                    this.UomITEMXXCUSTOM13.Equals(input.UomITEMXXCUSTOM13))
                ) && 
                (
                    this.UomITEMXXCUSTOM14 == input.UomITEMXXCUSTOM14 ||
                    (this.UomITEMXXCUSTOM14 != null &&
                    this.UomITEMXXCUSTOM14.Equals(input.UomITEMXXCUSTOM14))
                ) && 
                (
                    this.UomITEMXXCUSTOM15 == input.UomITEMXXCUSTOM15 ||
                    (this.UomITEMXXCUSTOM15 != null &&
                    this.UomITEMXXCUSTOM15.Equals(input.UomITEMXXCUSTOM15))
                ) && 
                (
                    this.UomITEMXXCUSTOM16 == input.UomITEMXXCUSTOM16 ||
                    (this.UomITEMXXCUSTOM16 != null &&
                    this.UomITEMXXCUSTOM16.Equals(input.UomITEMXXCUSTOM16))
                ) && 
                (
                    this.UomITEMXXCUSTOM17 == input.UomITEMXXCUSTOM17 ||
                    (this.UomITEMXXCUSTOM17 != null &&
                    this.UomITEMXXCUSTOM17.Equals(input.UomITEMXXCUSTOM17))
                ) && 
                (
                    this.UomITEMXXCUSTOM18 == input.UomITEMXXCUSTOM18 ||
                    (this.UomITEMXXCUSTOM18 != null &&
                    this.UomITEMXXCUSTOM18.Equals(input.UomITEMXXCUSTOM18))
                ) && 
                (
                    this.UomITEMXXCUSTOM19 == input.UomITEMXXCUSTOM19 ||
                    (this.UomITEMXXCUSTOM19 != null &&
                    this.UomITEMXXCUSTOM19.Equals(input.UomITEMXXCUSTOM19))
                ) && 
                (
                    this.UomITEMXXCUSTOM20 == input.UomITEMXXCUSTOM20 ||
                    (this.UomITEMXXCUSTOM20 != null &&
                    this.UomITEMXXCUSTOM20.Equals(input.UomITEMXXCUSTOM20))
                ) && 
                (
                    this.UomITEMXXCUSTOM21 == input.UomITEMXXCUSTOM21 ||
                    (this.UomITEMXXCUSTOM21 != null &&
                    this.UomITEMXXCUSTOM21.Equals(input.UomITEMXXCUSTOM21))
                ) && 
                (
                    this.UomITEMXXCUSTOM22 == input.UomITEMXXCUSTOM22 ||
                    (this.UomITEMXXCUSTOM22 != null &&
                    this.UomITEMXXCUSTOM22.Equals(input.UomITEMXXCUSTOM22))
                ) && 
                (
                    this.UomITEMXXCUSTOM23 == input.UomITEMXXCUSTOM23 ||
                    (this.UomITEMXXCUSTOM23 != null &&
                    this.UomITEMXXCUSTOM23.Equals(input.UomITEMXXCUSTOM23))
                ) && 
                (
                    this.UomITEMXXCUSTOM24 == input.UomITEMXXCUSTOM24 ||
                    (this.UomITEMXXCUSTOM24 != null &&
                    this.UomITEMXXCUSTOM24.Equals(input.UomITEMXXCUSTOM24))
                ) && 
                (
                    this.UomITEMXXCUSTOM25 == input.UomITEMXXCUSTOM25 ||
                    (this.UomITEMXXCUSTOM25 != null &&
                    this.UomITEMXXCUSTOM25.Equals(input.UomITEMXXCUSTOM25))
                ) && 
                (
                    this.UomITEMXXCUSTOM26 == input.UomITEMXXCUSTOM26 ||
                    (this.UomITEMXXCUSTOM26 != null &&
                    this.UomITEMXXCUSTOM26.Equals(input.UomITEMXXCUSTOM26))
                ) && 
                (
                    this.UomITEMXXCUSTOM27 == input.UomITEMXXCUSTOM27 ||
                    (this.UomITEMXXCUSTOM27 != null &&
                    this.UomITEMXXCUSTOM27.Equals(input.UomITEMXXCUSTOM27))
                ) && 
                (
                    this.UomITEMXXCUSTOM28 == input.UomITEMXXCUSTOM28 ||
                    (this.UomITEMXXCUSTOM28 != null &&
                    this.UomITEMXXCUSTOM28.Equals(input.UomITEMXXCUSTOM28))
                ) && 
                (
                    this.UomITEMXXCUSTOM29 == input.UomITEMXXCUSTOM29 ||
                    (this.UomITEMXXCUSTOM29 != null &&
                    this.UomITEMXXCUSTOM29.Equals(input.UomITEMXXCUSTOM29))
                ) && 
                (
                    this.UomITEMXXCUSTOM30 == input.UomITEMXXCUSTOM30 ||
                    (this.UomITEMXXCUSTOM30 != null &&
                    this.UomITEMXXCUSTOM30.Equals(input.UomITEMXXCUSTOM30))
                ) && 
                (
                    this.Hsncode == input.Hsncode ||
                    (this.Hsncode != null &&
                    this.Hsncode.Equals(input.Hsncode))
                ) && 
                (
                    this.Rfidflag == input.Rfidflag ||
                    (this.Rfidflag != null &&
                    this.Rfidflag.Equals(input.Rfidflag))
                ) && 
                (
                    this.ItemXXCUSTOM01 == input.ItemXXCUSTOM01 ||
                    (this.ItemXXCUSTOM01 != null &&
                    this.ItemXXCUSTOM01.Equals(input.ItemXXCUSTOM01))
                ) && 
                (
                    this.ItemXXCUSTOM02 == input.ItemXXCUSTOM02 ||
                    (this.ItemXXCUSTOM02 != null &&
                    this.ItemXXCUSTOM02.Equals(input.ItemXXCUSTOM02))
                ) && 
                (
                    this.ItemXXCUSTOM03 == input.ItemXXCUSTOM03 ||
                    (this.ItemXXCUSTOM03 != null &&
                    this.ItemXXCUSTOM03.Equals(input.ItemXXCUSTOM03))
                ) && 
                (
                    this.ItemXXCUSTOM04 == input.ItemXXCUSTOM04 ||
                    (this.ItemXXCUSTOM04 != null &&
                    this.ItemXXCUSTOM04.Equals(input.ItemXXCUSTOM04))
                ) && 
                (
                    this.ItemXXCUSTOM05 == input.ItemXXCUSTOM05 ||
                    (this.ItemXXCUSTOM05 != null &&
                    this.ItemXXCUSTOM05.Equals(input.ItemXXCUSTOM05))
                ) && 
                (
                    this.ItemXXCUSTOM06 == input.ItemXXCUSTOM06 ||
                    (this.ItemXXCUSTOM06 != null &&
                    this.ItemXXCUSTOM06.Equals(input.ItemXXCUSTOM06))
                ) && 
                (
                    this.ItemXXCUSTOM07 == input.ItemXXCUSTOM07 ||
                    (this.ItemXXCUSTOM07 != null &&
                    this.ItemXXCUSTOM07.Equals(input.ItemXXCUSTOM07))
                ) && 
                (
                    this.ItemXXCUSTOM08 == input.ItemXXCUSTOM08 ||
                    (this.ItemXXCUSTOM08 != null &&
                    this.ItemXXCUSTOM08.Equals(input.ItemXXCUSTOM08))
                ) && 
                (
                    this.ItemXXCUSTOM09 == input.ItemXXCUSTOM09 ||
                    (this.ItemXXCUSTOM09 != null &&
                    this.ItemXXCUSTOM09.Equals(input.ItemXXCUSTOM09))
                ) && 
                (
                    this.ItemXXCUSTOM10 == input.ItemXXCUSTOM10 ||
                    (this.ItemXXCUSTOM10 != null &&
                    this.ItemXXCUSTOM10.Equals(input.ItemXXCUSTOM10))
                ) && 
                (
                    this.ItemXXCUSTOM11 == input.ItemXXCUSTOM11 ||
                    (this.ItemXXCUSTOM11 != null &&
                    this.ItemXXCUSTOM11.Equals(input.ItemXXCUSTOM11))
                ) && 
                (
                    this.ItemXXCUSTOM12 == input.ItemXXCUSTOM12 ||
                    (this.ItemXXCUSTOM12 != null &&
                    this.ItemXXCUSTOM12.Equals(input.ItemXXCUSTOM12))
                ) && 
                (
                    this.ItemXXCUSTOM13 == input.ItemXXCUSTOM13 ||
                    (this.ItemXXCUSTOM13 != null &&
                    this.ItemXXCUSTOM13.Equals(input.ItemXXCUSTOM13))
                ) && 
                (
                    this.ItemXXCUSTOM14 == input.ItemXXCUSTOM14 ||
                    (this.ItemXXCUSTOM14 != null &&
                    this.ItemXXCUSTOM14.Equals(input.ItemXXCUSTOM14))
                ) && 
                (
                    this.ItemXXCUSTOM15 == input.ItemXXCUSTOM15 ||
                    (this.ItemXXCUSTOM15 != null &&
                    this.ItemXXCUSTOM15.Equals(input.ItemXXCUSTOM15))
                ) && 
                (
                    this.ItemXXCUSTOM16 == input.ItemXXCUSTOM16 ||
                    (this.ItemXXCUSTOM16 != null &&
                    this.ItemXXCUSTOM16.Equals(input.ItemXXCUSTOM16))
                ) && 
                (
                    this.ItemXXCUSTOM17 == input.ItemXXCUSTOM17 ||
                    (this.ItemXXCUSTOM17 != null &&
                    this.ItemXXCUSTOM17.Equals(input.ItemXXCUSTOM17))
                ) && 
                (
                    this.ItemXXCUSTOM18 == input.ItemXXCUSTOM18 ||
                    (this.ItemXXCUSTOM18 != null &&
                    this.ItemXXCUSTOM18.Equals(input.ItemXXCUSTOM18))
                ) && 
                (
                    this.ItemXXCUSTOM19 == input.ItemXXCUSTOM19 ||
                    (this.ItemXXCUSTOM19 != null &&
                    this.ItemXXCUSTOM19.Equals(input.ItemXXCUSTOM19))
                ) && 
                (
                    this.ItemXXCUSTOM20 == input.ItemXXCUSTOM20 ||
                    (this.ItemXXCUSTOM20 != null &&
                    this.ItemXXCUSTOM20.Equals(input.ItemXXCUSTOM20))
                ) && 
                (
                    this.ItemXXCUSTOM21 == input.ItemXXCUSTOM21 ||
                    (this.ItemXXCUSTOM21 != null &&
                    this.ItemXXCUSTOM21.Equals(input.ItemXXCUSTOM21))
                ) && 
                (
                    this.ItemXXCUSTOM22 == input.ItemXXCUSTOM22 ||
                    (this.ItemXXCUSTOM22 != null &&
                    this.ItemXXCUSTOM22.Equals(input.ItemXXCUSTOM22))
                ) && 
                (
                    this.ItemXXCUSTOM23 == input.ItemXXCUSTOM23 ||
                    (this.ItemXXCUSTOM23 != null &&
                    this.ItemXXCUSTOM23.Equals(input.ItemXXCUSTOM23))
                ) && 
                (
                    this.ItemXXCUSTOM24 == input.ItemXXCUSTOM24 ||
                    (this.ItemXXCUSTOM24 != null &&
                    this.ItemXXCUSTOM24.Equals(input.ItemXXCUSTOM24))
                ) && 
                (
                    this.ItemXXCUSTOM25 == input.ItemXXCUSTOM25 ||
                    (this.ItemXXCUSTOM25 != null &&
                    this.ItemXXCUSTOM25.Equals(input.ItemXXCUSTOM25))
                ) && 
                (
                    this.ItemXXCUSTOM26 == input.ItemXXCUSTOM26 ||
                    (this.ItemXXCUSTOM26 != null &&
                    this.ItemXXCUSTOM26.Equals(input.ItemXXCUSTOM26))
                ) && 
                (
                    this.ItemXXCUSTOM27 == input.ItemXXCUSTOM27 ||
                    (this.ItemXXCUSTOM27 != null &&
                    this.ItemXXCUSTOM27.Equals(input.ItemXXCUSTOM27))
                ) && 
                (
                    this.ItemXXCUSTOM28 == input.ItemXXCUSTOM28 ||
                    (this.ItemXXCUSTOM28 != null &&
                    this.ItemXXCUSTOM28.Equals(input.ItemXXCUSTOM28))
                ) && 
                (
                    this.ItemXXCUSTOM29 == input.ItemXXCUSTOM29 ||
                    (this.ItemXXCUSTOM29 != null &&
                    this.ItemXXCUSTOM29.Equals(input.ItemXXCUSTOM29))
                ) && 
                (
                    this.ItemXXCUSTOM30 == input.ItemXXCUSTOM30 ||
                    (this.ItemXXCUSTOM30 != null &&
                    this.ItemXXCUSTOM30.Equals(input.ItemXXCUSTOM30))
                ) && 
                (
                    this.BulkITEMXXCUSTOM01 == input.BulkITEMXXCUSTOM01 ||
                    (this.BulkITEMXXCUSTOM01 != null &&
                    this.BulkITEMXXCUSTOM01.Equals(input.BulkITEMXXCUSTOM01))
                ) && 
                (
                    this.BulkITEMXXCUSTOM02 == input.BulkITEMXXCUSTOM02 ||
                    (this.BulkITEMXXCUSTOM02 != null &&
                    this.BulkITEMXXCUSTOM02.Equals(input.BulkITEMXXCUSTOM02))
                ) && 
                (
                    this.BulkITEMXXCUSTOM03 == input.BulkITEMXXCUSTOM03 ||
                    (this.BulkITEMXXCUSTOM03 != null &&
                    this.BulkITEMXXCUSTOM03.Equals(input.BulkITEMXXCUSTOM03))
                ) && 
                (
                    this.BulkITEMXXCUSTOM04 == input.BulkITEMXXCUSTOM04 ||
                    (this.BulkITEMXXCUSTOM04 != null &&
                    this.BulkITEMXXCUSTOM04.Equals(input.BulkITEMXXCUSTOM04))
                ) && 
                (
                    this.BulkITEMXXCUSTOM05 == input.BulkITEMXXCUSTOM05 ||
                    (this.BulkITEMXXCUSTOM05 != null &&
                    this.BulkITEMXXCUSTOM05.Equals(input.BulkITEMXXCUSTOM05))
                ) && 
                (
                    this.BulkITEMXXCUSTOM06 == input.BulkITEMXXCUSTOM06 ||
                    (this.BulkITEMXXCUSTOM06 != null &&
                    this.BulkITEMXXCUSTOM06.Equals(input.BulkITEMXXCUSTOM06))
                ) && 
                (
                    this.BulkITEMXXCUSTOM07 == input.BulkITEMXXCUSTOM07 ||
                    (this.BulkITEMXXCUSTOM07 != null &&
                    this.BulkITEMXXCUSTOM07.Equals(input.BulkITEMXXCUSTOM07))
                ) && 
                (
                    this.BulkITEMXXCUSTOM08 == input.BulkITEMXXCUSTOM08 ||
                    (this.BulkITEMXXCUSTOM08 != null &&
                    this.BulkITEMXXCUSTOM08.Equals(input.BulkITEMXXCUSTOM08))
                ) && 
                (
                    this.BulkITEMXXCUSTOM09 == input.BulkITEMXXCUSTOM09 ||
                    (this.BulkITEMXXCUSTOM09 != null &&
                    this.BulkITEMXXCUSTOM09.Equals(input.BulkITEMXXCUSTOM09))
                ) && 
                (
                    this.BulkITEMXXCUSTOM10 == input.BulkITEMXXCUSTOM10 ||
                    (this.BulkITEMXXCUSTOM10 != null &&
                    this.BulkITEMXXCUSTOM10.Equals(input.BulkITEMXXCUSTOM10))
                ) && 
                (
                    this.BulkITEMXXCUSTOM11 == input.BulkITEMXXCUSTOM11 ||
                    (this.BulkITEMXXCUSTOM11 != null &&
                    this.BulkITEMXXCUSTOM11.Equals(input.BulkITEMXXCUSTOM11))
                ) && 
                (
                    this.BulkITEMXXCUSTOM12 == input.BulkITEMXXCUSTOM12 ||
                    (this.BulkITEMXXCUSTOM12 != null &&
                    this.BulkITEMXXCUSTOM12.Equals(input.BulkITEMXXCUSTOM12))
                ) && 
                (
                    this.BulkITEMXXCUSTOM13 == input.BulkITEMXXCUSTOM13 ||
                    (this.BulkITEMXXCUSTOM13 != null &&
                    this.BulkITEMXXCUSTOM13.Equals(input.BulkITEMXXCUSTOM13))
                ) && 
                (
                    this.BulkITEMXXCUSTOM14 == input.BulkITEMXXCUSTOM14 ||
                    (this.BulkITEMXXCUSTOM14 != null &&
                    this.BulkITEMXXCUSTOM14.Equals(input.BulkITEMXXCUSTOM14))
                ) && 
                (
                    this.BulkITEMXXCUSTOM15 == input.BulkITEMXXCUSTOM15 ||
                    (this.BulkITEMXXCUSTOM15 != null &&
                    this.BulkITEMXXCUSTOM15.Equals(input.BulkITEMXXCUSTOM15))
                ) && 
                (
                    this.BulkITEMXXCUSTOM16 == input.BulkITEMXXCUSTOM16 ||
                    (this.BulkITEMXXCUSTOM16 != null &&
                    this.BulkITEMXXCUSTOM16.Equals(input.BulkITEMXXCUSTOM16))
                ) && 
                (
                    this.BulkITEMXXCUSTOM17 == input.BulkITEMXXCUSTOM17 ||
                    (this.BulkITEMXXCUSTOM17 != null &&
                    this.BulkITEMXXCUSTOM17.Equals(input.BulkITEMXXCUSTOM17))
                ) && 
                (
                    this.BulkITEMXXCUSTOM18 == input.BulkITEMXXCUSTOM18 ||
                    (this.BulkITEMXXCUSTOM18 != null &&
                    this.BulkITEMXXCUSTOM18.Equals(input.BulkITEMXXCUSTOM18))
                ) && 
                (
                    this.BulkITEMXXCUSTOM19 == input.BulkITEMXXCUSTOM19 ||
                    (this.BulkITEMXXCUSTOM19 != null &&
                    this.BulkITEMXXCUSTOM19.Equals(input.BulkITEMXXCUSTOM19))
                ) && 
                (
                    this.BulkITEMXXCUSTOM20 == input.BulkITEMXXCUSTOM20 ||
                    (this.BulkITEMXXCUSTOM20 != null &&
                    this.BulkITEMXXCUSTOM20.Equals(input.BulkITEMXXCUSTOM20))
                ) && 
                (
                    this.BulkITEMXXCUSTOM21 == input.BulkITEMXXCUSTOM21 ||
                    (this.BulkITEMXXCUSTOM21 != null &&
                    this.BulkITEMXXCUSTOM21.Equals(input.BulkITEMXXCUSTOM21))
                ) && 
                (
                    this.BulkITEMXXCUSTOM22 == input.BulkITEMXXCUSTOM22 ||
                    (this.BulkITEMXXCUSTOM22 != null &&
                    this.BulkITEMXXCUSTOM22.Equals(input.BulkITEMXXCUSTOM22))
                ) && 
                (
                    this.BulkITEMXXCUSTOM23 == input.BulkITEMXXCUSTOM23 ||
                    (this.BulkITEMXXCUSTOM23 != null &&
                    this.BulkITEMXXCUSTOM23.Equals(input.BulkITEMXXCUSTOM23))
                ) && 
                (
                    this.BulkITEMXXCUSTOM24 == input.BulkITEMXXCUSTOM24 ||
                    (this.BulkITEMXXCUSTOM24 != null &&
                    this.BulkITEMXXCUSTOM24.Equals(input.BulkITEMXXCUSTOM24))
                ) && 
                (
                    this.BulkITEMXXCUSTOM25 == input.BulkITEMXXCUSTOM25 ||
                    (this.BulkITEMXXCUSTOM25 != null &&
                    this.BulkITEMXXCUSTOM25.Equals(input.BulkITEMXXCUSTOM25))
                ) && 
                (
                    this.BulkITEMXXCUSTOM26 == input.BulkITEMXXCUSTOM26 ||
                    (this.BulkITEMXXCUSTOM26 != null &&
                    this.BulkITEMXXCUSTOM26.Equals(input.BulkITEMXXCUSTOM26))
                ) && 
                (
                    this.BulkITEMXXCUSTOM27 == input.BulkITEMXXCUSTOM27 ||
                    (this.BulkITEMXXCUSTOM27 != null &&
                    this.BulkITEMXXCUSTOM27.Equals(input.BulkITEMXXCUSTOM27))
                ) && 
                (
                    this.BulkITEMXXCUSTOM28 == input.BulkITEMXXCUSTOM28 ||
                    (this.BulkITEMXXCUSTOM28 != null &&
                    this.BulkITEMXXCUSTOM28.Equals(input.BulkITEMXXCUSTOM28))
                ) && 
                (
                    this.BulkITEMXXCUSTOM29 == input.BulkITEMXXCUSTOM29 ||
                    (this.BulkITEMXXCUSTOM29 != null &&
                    this.BulkITEMXXCUSTOM29.Equals(input.BulkITEMXXCUSTOM29))
                ) && 
                (
                    this.BulkITEMXXCUSTOM30 == input.BulkITEMXXCUSTOM30 ||
                    (this.BulkITEMXXCUSTOM30 != null &&
                    this.BulkITEMXXCUSTOM30.Equals(input.BulkITEMXXCUSTOM30))
                );
        }

        /// <summary>
        /// Gets the hash code
        /// </summary>
        /// <returns>Hash code</returns>
        public override int GetHashCode()
        {
            unchecked // Overflow is fine, just wrap
            {
                int hashCode = 41;
                if (this.Key != null)
                    hashCode = hashCode * 59 + this.Key.GetHashCode();
                if (this.UomName != null)
                    hashCode = hashCode * 59 + this.UomName.GetHashCode();
                if (this.Name != null)
                    hashCode = hashCode * 59 + this.Name.GetHashCode();
                if (this.Description != null)
                    hashCode = hashCode * 59 + this.Description.GetHashCode();
                if (this.ClassCode != null)
                    hashCode = hashCode * 59 + this.ClassCode.GetHashCode();
                if (this.TaxGroupID != null)
                    hashCode = hashCode * 59 + this.TaxGroupID.GetHashCode();
                if (this.AlternativeTaxGroupID != null)
                    hashCode = hashCode * 59 + this.AlternativeTaxGroupID.GetHashCode();
                if (this.TaxGroupReceiptPrintCode != null)
                    hashCode = hashCode * 59 + this.TaxGroupReceiptPrintCode.GetHashCode();
                if (this.ItemUsageTypeCode != null)
                    hashCode = hashCode * 59 + this.ItemUsageTypeCode.GetHashCode();
                if (this.TaxExemptCode != null)
                    hashCode = hashCode * 59 + this.TaxExemptCode.GetHashCode();
                if (this.WarrantyPeriod != null)
                    hashCode = hashCode * 59 + this.WarrantyPeriod.GetHashCode();
                if (this.TareId != null)
                    hashCode = hashCode * 59 + this.TareId.GetHashCode();
                if (this.TareUomCode != null)
                    hashCode = hashCode * 59 + this.TareUomCode.GetHashCode();
                if (this.PosDepartmentID != null)
                    hashCode = hashCode * 59 + this.PosDepartmentID.GetHashCode();
                if (this.MainPOSItemId != null)
                    hashCode = hashCode * 59 + this.MainPOSItemId.GetHashCode();
                if (this.MainMerchandiseHierarchyGroupID != null)
                    hashCode = hashCode * 59 + this.MainMerchandiseHierarchyGroupID.GetHashCode();
                if (this.MainMerchandiseHierarchyGroupName != null)
                    hashCode = hashCode * 59 + this.MainMerchandiseHierarchyGroupName.GetHashCode();
                if (this.MainMerchandiseHierarchyGroupDescription != null)
                    hashCode = hashCode * 59 + this.MainMerchandiseHierarchyGroupDescription.GetHashCode();
                if (this.DepositTypeCode != null)
                    hashCode = hashCode * 59 + this.DepositTypeCode.GetHashCode();
                if (this.ItemSellingRule != null)
                    hashCode = hashCode * 59 + this.ItemSellingRule.GetHashCode();
                if (this.StatusCode != null)
                    hashCode = hashCode * 59 + this.StatusCode.GetHashCode();
                if (this.ItemCollectionList != null)
                    hashCode = hashCode * 59 + this.ItemCollectionList.GetHashCode();
                if (this.RelatedItemAssociationList != null)
                    hashCode = hashCode * 59 + this.RelatedItemAssociationList.GetHashCode();
                if (this.ItemCharacteristicList != null)
                    hashCode = hashCode * 59 + this.ItemCharacteristicList.GetHashCode();
                if (this.ItemFeatureList != null)
                    hashCode = hashCode * 59 + this.ItemFeatureList.GetHashCode();
                if (this.PosIdentityList != null)
                    hashCode = hashCode * 59 + this.PosIdentityList.GetHashCode();
                if (this.SellingPriceList != null)
                    hashCode = hashCode * 59 + this.SellingPriceList.GetHashCode();
                if (this.ItemDepositCollectionList != null)
                    hashCode = hashCode * 59 + this.ItemDepositCollectionList.GetHashCode();
                if (this.UomItemTextList != null)
                    hashCode = hashCode * 59 + this.UomItemTextList.GetHashCode();
                if (this.ItemMHGList != null)
                    hashCode = hashCode * 59 + this.ItemMHGList.GetHashCode();
                if (this.SalesRestrictionList != null)
                    hashCode = hashCode * 59 + this.SalesRestrictionList.GetHashCode();
                if (this.UpdateStockFlag != null)
                    hashCode = hashCode * 59 + this.UpdateStockFlag.GetHashCode();
                if (this.BaseUOMCode != null)
                    hashCode = hashCode * 59 + this.BaseUOMCode.GetHashCode();
                if (this.ProhibitedForPhysicalInventoryFlag != null)
                    hashCode = hashCode * 59 + this.ProhibitedForPhysicalInventoryFlag.GetHashCode();
                if (this.MinimumShelfLifeDayCount != null)
                    hashCode = hashCode * 59 + this.MinimumShelfLifeDayCount.GetHashCode();
                if (this.LabelType != null)
                    hashCode = hashCode * 59 + this.LabelType.GetHashCode();
                if (this.DiscountTypeCode != null)
                    hashCode = hashCode * 59 + this.DiscountTypeCode.GetHashCode();
                if (this.GlobalLifeDayCount != null)
                    hashCode = hashCode * 59 + this.GlobalLifeDayCount.GetHashCode();
                if (this.ShelfLifeDayCountPercent != null)
                    hashCode = hashCode * 59 + this.ShelfLifeDayCountPercent.GetHashCode();
                if (this.DayCountUOMCode != null)
                    hashCode = hashCode * 59 + this.DayCountUOMCode.GetHashCode();
                if (this.DefaultReceivingLocation != null)
                    hashCode = hashCode * 59 + this.DefaultReceivingLocation.GetHashCode();
                if (this.ConcessionItemFlag != null)
                    hashCode = hashCode * 59 + this.ConcessionItemFlag.GetHashCode();
                if (this.CostItemFlag != null)
                    hashCode = hashCode * 59 + this.CostItemFlag.GetHashCode();
                if (this.MerchandisePlanningTypeCode != null)
                    hashCode = hashCode * 59 + this.MerchandisePlanningTypeCode.GetHashCode();
                if (this.MainSupplierId != null)
                    hashCode = hashCode * 59 + this.MainSupplierId.GetHashCode();
                if (this.VenSafeFlag != null)
                    hashCode = hashCode * 59 + this.VenSafeFlag.GetHashCode();
                if (this.BaseUOMConsumerPackageGrossContent != null)
                    hashCode = hashCode * 59 + this.BaseUOMConsumerPackageGrossContent.GetHashCode();
                if (this.BaseUOMConsumerPackageNetContent != null)
                    hashCode = hashCode * 59 + this.BaseUOMConsumerPackageNetContent.GetHashCode();
                if (this.BaseUOMConsumerPackageContentsUOMCode != null)
                    hashCode = hashCode * 59 + this.BaseUOMConsumerPackageContentsUOMCode.GetHashCode();
                if (this.BaseUOMConsumerPackageBasePriceContent != null)
                    hashCode = hashCode * 59 + this.BaseUOMConsumerPackageBasePriceContent.GetHashCode();
                if (this.BaseUOMConsumerPackageBasePriceContentsUOMCode != null)
                    hashCode = hashCode * 59 + this.BaseUOMConsumerPackageBasePriceContentsUOMCode.GetHashCode();
                if (this.DistributingWarehouseID != null)
                    hashCode = hashCode * 59 + this.DistributingWarehouseID.GetHashCode();
                if (this.DistributionMethodID != null)
                    hashCode = hashCode * 59 + this.DistributionMethodID.GetHashCode();
                if (this.AssortmentID != null)
                    hashCode = hashCode * 59 + this.AssortmentID.GetHashCode();
                if (this.ThirdPartyAssortmentID != null)
                    hashCode = hashCode * 59 + this.ThirdPartyAssortmentID.GetHashCode();
                if (this.TransportAssociationID != null)
                    hashCode = hashCode * 59 + this.TransportAssociationID.GetHashCode();
                if (this.ConcessionItemSupplierID != null)
                    hashCode = hashCode * 59 + this.ConcessionItemSupplierID.GetHashCode();
                if (this.DefaultSellingUOMCode != null)
                    hashCode = hashCode * 59 + this.DefaultSellingUOMCode.GetHashCode();
                if (this.ConversionNumerator != null)
                    hashCode = hashCode * 59 + this.ConversionNumerator.GetHashCode();
                if (this.ConversionDenominator != null)
                    hashCode = hashCode * 59 + this.ConversionDenominator.GetHashCode();
                if (this.ConsumerPackageGrossWeight != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageGrossWeight.GetHashCode();
                if (this.ConsumerPackageNetWeight != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageNetWeight.GetHashCode();
                if (this.ConsumerPackageWeightUOMCode != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageWeightUOMCode.GetHashCode();
                if (this.ConsumerPackageVolume != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageVolume.GetHashCode();
                if (this.ConsumerPackageVolumeUOMCode != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageVolumeUOMCode.GetHashCode();
                if (this.ConsumerPackageDepth != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageDepth.GetHashCode();
                if (this.ConsumerPackageWidth != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageWidth.GetHashCode();
                if (this.ConsumerPackageHeight != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageHeight.GetHashCode();
                if (this.ConsumerPackageSizeUOMCode != null)
                    hashCode = hashCode * 59 + this.ConsumerPackageSizeUOMCode.GetHashCode();
                if (this.OuterPackageTypeCode != null)
                    hashCode = hashCode * 59 + this.OuterPackageTypeCode.GetHashCode();
                if (this.HeadOfficeCarryRequirementTypeCode != null)
                    hashCode = hashCode * 59 + this.HeadOfficeCarryRequirementTypeCode.GetHashCode();
                if (this.HandlingTypeCode != null)
                    hashCode = hashCode * 59 + this.HandlingTypeCode.GetHashCode();
                if (this.StatusEffectiveDate != null)
                    hashCode = hashCode * 59 + this.StatusEffectiveDate.GetHashCode();
                if (this.MaximumStockQuantity != null)
                    hashCode = hashCode * 59 + this.MaximumStockQuantity.GetHashCode();
                if (this.MinimumStockQuantity != null)
                    hashCode = hashCode * 59 + this.MinimumStockQuantity.GetHashCode();
                if (this.ListingEffectiveDate != null)
                    hashCode = hashCode * 59 + this.ListingEffectiveDate.GetHashCode();
                if (this.ListingExpirationDate != null)
                    hashCode = hashCode * 59 + this.ListingExpirationDate.GetHashCode();
                if (this.PriceContractReadList != null)
                    hashCode = hashCode * 59 + this.PriceContractReadList.GetHashCode();
                if (this.SelectedPriceContractRead != null)
                    hashCode = hashCode * 59 + this.SelectedPriceContractRead.GetHashCode();
                if (this.UomITEMXXCUSTOM01 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM01.GetHashCode();
                if (this.UomITEMXXCUSTOM02 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM02.GetHashCode();
                if (this.UomITEMXXCUSTOM03 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM03.GetHashCode();
                if (this.UomITEMXXCUSTOM04 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM04.GetHashCode();
                if (this.UomITEMXXCUSTOM05 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM05.GetHashCode();
                if (this.UomITEMXXCUSTOM06 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM06.GetHashCode();
                if (this.UomITEMXXCUSTOM07 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM07.GetHashCode();
                if (this.UomITEMXXCUSTOM08 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM08.GetHashCode();
                if (this.UomITEMXXCUSTOM09 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM09.GetHashCode();
                if (this.UomITEMXXCUSTOM10 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM10.GetHashCode();
                if (this.UomITEMXXCUSTOM11 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM11.GetHashCode();
                if (this.UomITEMXXCUSTOM12 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM12.GetHashCode();
                if (this.UomITEMXXCUSTOM13 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM13.GetHashCode();
                if (this.UomITEMXXCUSTOM14 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM14.GetHashCode();
                if (this.UomITEMXXCUSTOM15 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM15.GetHashCode();
                if (this.UomITEMXXCUSTOM16 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM16.GetHashCode();
                if (this.UomITEMXXCUSTOM17 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM17.GetHashCode();
                if (this.UomITEMXXCUSTOM18 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM18.GetHashCode();
                if (this.UomITEMXXCUSTOM19 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM19.GetHashCode();
                if (this.UomITEMXXCUSTOM20 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM20.GetHashCode();
                if (this.UomITEMXXCUSTOM21 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM21.GetHashCode();
                if (this.UomITEMXXCUSTOM22 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM22.GetHashCode();
                if (this.UomITEMXXCUSTOM23 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM23.GetHashCode();
                if (this.UomITEMXXCUSTOM24 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM24.GetHashCode();
                if (this.UomITEMXXCUSTOM25 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM25.GetHashCode();
                if (this.UomITEMXXCUSTOM26 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM26.GetHashCode();
                if (this.UomITEMXXCUSTOM27 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM27.GetHashCode();
                if (this.UomITEMXXCUSTOM28 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM28.GetHashCode();
                if (this.UomITEMXXCUSTOM29 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM29.GetHashCode();
                if (this.UomITEMXXCUSTOM30 != null)
                    hashCode = hashCode * 59 + this.UomITEMXXCUSTOM30.GetHashCode();
                if (this.Hsncode != null)
                    hashCode = hashCode * 59 + this.Hsncode.GetHashCode();
                if (this.Rfidflag != null)
                    hashCode = hashCode * 59 + this.Rfidflag.GetHashCode();
                if (this.ItemXXCUSTOM01 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM01.GetHashCode();
                if (this.ItemXXCUSTOM02 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM02.GetHashCode();
                if (this.ItemXXCUSTOM03 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM03.GetHashCode();
                if (this.ItemXXCUSTOM04 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM04.GetHashCode();
                if (this.ItemXXCUSTOM05 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM05.GetHashCode();
                if (this.ItemXXCUSTOM06 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM06.GetHashCode();
                if (this.ItemXXCUSTOM07 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM07.GetHashCode();
                if (this.ItemXXCUSTOM08 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM08.GetHashCode();
                if (this.ItemXXCUSTOM09 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM09.GetHashCode();
                if (this.ItemXXCUSTOM10 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM10.GetHashCode();
                if (this.ItemXXCUSTOM11 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM11.GetHashCode();
                if (this.ItemXXCUSTOM12 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM12.GetHashCode();
                if (this.ItemXXCUSTOM13 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM13.GetHashCode();
                if (this.ItemXXCUSTOM14 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM14.GetHashCode();
                if (this.ItemXXCUSTOM15 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM15.GetHashCode();
                if (this.ItemXXCUSTOM16 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM16.GetHashCode();
                if (this.ItemXXCUSTOM17 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM17.GetHashCode();
                if (this.ItemXXCUSTOM18 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM18.GetHashCode();
                if (this.ItemXXCUSTOM19 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM19.GetHashCode();
                if (this.ItemXXCUSTOM20 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM20.GetHashCode();
                if (this.ItemXXCUSTOM21 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM21.GetHashCode();
                if (this.ItemXXCUSTOM22 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM22.GetHashCode();
                if (this.ItemXXCUSTOM23 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM23.GetHashCode();
                if (this.ItemXXCUSTOM24 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM24.GetHashCode();
                if (this.ItemXXCUSTOM25 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM25.GetHashCode();
                if (this.ItemXXCUSTOM26 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM26.GetHashCode();
                if (this.ItemXXCUSTOM27 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM27.GetHashCode();
                if (this.ItemXXCUSTOM28 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM28.GetHashCode();
                if (this.ItemXXCUSTOM29 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM29.GetHashCode();
                if (this.ItemXXCUSTOM30 != null)
                    hashCode = hashCode * 59 + this.ItemXXCUSTOM30.GetHashCode();
                if (this.BulkITEMXXCUSTOM01 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM01.GetHashCode();
                if (this.BulkITEMXXCUSTOM02 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM02.GetHashCode();
                if (this.BulkITEMXXCUSTOM03 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM03.GetHashCode();
                if (this.BulkITEMXXCUSTOM04 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM04.GetHashCode();
                if (this.BulkITEMXXCUSTOM05 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM05.GetHashCode();
                if (this.BulkITEMXXCUSTOM06 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM06.GetHashCode();
                if (this.BulkITEMXXCUSTOM07 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM07.GetHashCode();
                if (this.BulkITEMXXCUSTOM08 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM08.GetHashCode();
                if (this.BulkITEMXXCUSTOM09 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM09.GetHashCode();
                if (this.BulkITEMXXCUSTOM10 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM10.GetHashCode();
                if (this.BulkITEMXXCUSTOM11 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM11.GetHashCode();
                if (this.BulkITEMXXCUSTOM12 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM12.GetHashCode();
                if (this.BulkITEMXXCUSTOM13 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM13.GetHashCode();
                if (this.BulkITEMXXCUSTOM14 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM14.GetHashCode();
                if (this.BulkITEMXXCUSTOM15 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM15.GetHashCode();
                if (this.BulkITEMXXCUSTOM16 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM16.GetHashCode();
                if (this.BulkITEMXXCUSTOM17 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM17.GetHashCode();
                if (this.BulkITEMXXCUSTOM18 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM18.GetHashCode();
                if (this.BulkITEMXXCUSTOM19 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM19.GetHashCode();
                if (this.BulkITEMXXCUSTOM20 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM20.GetHashCode();
                if (this.BulkITEMXXCUSTOM21 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM21.GetHashCode();
                if (this.BulkITEMXXCUSTOM22 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM22.GetHashCode();
                if (this.BulkITEMXXCUSTOM23 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM23.GetHashCode();
                if (this.BulkITEMXXCUSTOM24 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM24.GetHashCode();
                if (this.BulkITEMXXCUSTOM25 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM25.GetHashCode();
                if (this.BulkITEMXXCUSTOM26 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM26.GetHashCode();
                if (this.BulkITEMXXCUSTOM27 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM27.GetHashCode();
                if (this.BulkITEMXXCUSTOM28 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM28.GetHashCode();
                if (this.BulkITEMXXCUSTOM29 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM29.GetHashCode();
                if (this.BulkITEMXXCUSTOM30 != null)
                    hashCode = hashCode * 59 + this.BulkITEMXXCUSTOM30.GetHashCode();
                return hashCode;
            }
        }

        /// <summary>
        /// To validate all properties of the instance
        /// </summary>
        /// <param name="validationContext">Validation context</param>
        /// <returns>Validation Result</returns>
        IEnumerable<System.ComponentModel.DataAnnotations.ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
        {
            yield break;
        }
    }

}
