public SpellLeveled Duplicate(
            ISpellLeveledGetter item,
            FormKey formKey,
            TranslationCrystal?copyMask)
        {
            var newRec = new SpellLeveled(formKey);

            newRec.DeepCopyIn(item, default(ErrorMaskBuilder?), copyMask);
            return(newRec);
        }
        public SpellLeveled DeepCopy(
            ISpellLeveledGetter item,
            SpellLeveled.TranslationMask?copyMask = null)
        {
            SpellLeveled ret = (SpellLeveled)((SpellLeveledCommon)((ISpellLeveledGetter)item).CommonInstance() !).GetNew();

            ((SpellLeveledSetterTranslationCommon)((ISpellLeveledGetter)ret).CommonSetterTranslationInstance() !).DeepCopyIn(
                item: ret,
                rhs: item,
                errorMask: null,
                copyMask: copyMask?.GetCrystal(),
                deepCopy: true);
            return(ret);
        }
        public SpellLeveled DeepCopy(
            ISpellLeveledGetter item,
            out SpellLeveled.ErrorMask errorMask,
            SpellLeveled.TranslationMask?copyMask = null)
        {
            var          errorMaskBuilder = new ErrorMaskBuilder();
            SpellLeveled ret = (SpellLeveled)((SpellLeveledCommon)((ISpellLeveledGetter)item).CommonInstance() !).GetNew();

            ((SpellLeveledSetterTranslationCommon)((ISpellLeveledGetter)ret).CommonSetterTranslationInstance() !).DeepCopyIn(
                ret,
                item,
                errorMask: errorMaskBuilder,
                copyMask: copyMask?.GetCrystal(),
                deepCopy: true);
            errorMask = SpellLeveled.ErrorMask.Factory(errorMaskBuilder);
            return(ret);
        }
 public override object GetNew()
 {
     return(SpellLeveled.GetNew());
 }
 partial void PostDuplicate(SpellLeveled obj, SpellLeveled rhs, Func <FormKey> getNextFormKey, IList <(IMajorRecordCommon Record, FormKey OriginalFormKey)>?duplicatedRecords);