partial void Merge(UpgradeComponent entity, ItemDTO dto, object state)
        {
            var details = dto.Details;
            if (details == null)
            {
                return;
            }

            var flags = details.Flags;
            if (flags != null)
            {
                entity.UpgradeComponentFlags = this.upgradeComponentFlagCollectionConverter.Convert(flags, details);
            }

            var infusionUpgradeFlags = details.InfusionUpgradeFlags;
            if (infusionUpgradeFlags != null)
            {
                entity.InfusionUpgradeFlags = this.infusionSlotFlagCollectionConverter.Convert(infusionUpgradeFlags, details);
            }

            entity.Suffix = details.Suffix;

            var infixUpgrade = details.InfixUpgrade;
            if (infixUpgrade != null)
            {
                entity.InfixUpgrade = this.infixUpgradeConverter.Convert(infixUpgrade, details);
            }

            entity.Bonuses = details.Bonuses;
        }
        partial void Merge(UpgradeComponent entity, ItemDTO dto, object state)
        {
            var upgradeComponent = dto.UpgradeComponent;
            if (upgradeComponent == null)
            {
                return;
            }

            var flags = upgradeComponent.Flags;
            if (flags != null)
            {
                entity.UpgradeComponentFlags = this.upgradeComponentFlagCollectionConverter.Convert(flags, upgradeComponent);
            }

            var infusionUpgradeFlags = upgradeComponent.InfusionUpgradeFlags;
            if (infusionUpgradeFlags != null)
            {
                entity.InfusionUpgradeFlags = this.infusionSlotFlagCollectionConverter.Convert(infusionUpgradeFlags, upgradeComponent);
            }

            entity.Suffix = upgradeComponent.Suffix;

            var infixUpgrade = upgradeComponent.InfixUpgrade;
            if (infixUpgrade != null)
            {
                entity.InfixUpgrade = this.infixUpgradeConverter.Convert(infixUpgrade, upgradeComponent);
            }

            entity.Bonuses = upgradeComponent.Bonuses;
        }