public override void setFromSerial(FpmlSerializedCSharp.ISerialized serial_Class)
 {
     FpmlSerializedCSharp.Excel_multiAsset_compositeOption_subtype serial_Excel_multiAsset_compositeOption_subtype = serial_Class as FpmlSerializedCSharp.Excel_multiAsset_compositeOption_subtype;
     FpmlSerializedCSharp.Excel_multiAsset_vanillaCallPut serial_Excel_multiAsset_vanillaCallPut = serial_Excel_multiAsset_compositeOption_subtype.Excel_multiAsset_vanillaCallPut_;
 
     this.payoffDate_ = StringConverter.xmlDateToDateTime(serial_Excel_multiAsset_vanillaCallPut.PayoffDate_.ValueStr);
     
     this.exerciseDate_ = StringConverter.xmlDateToDateTime(serial_Excel_multiAsset_vanillaCallPut.ExerciseDate_.ValueStr);
     
     this.baseUnderlyingValue_ = serial_Excel_multiAsset_vanillaCallPut.BaseUnderlyingValue_.ValueStr;
     
     this.callPut_ = serial_Excel_multiAsset_vanillaCallPut.CallPut_.ValueStr;
     
     this.baseCoupon_ = serial_Excel_multiAsset_vanillaCallPut.BaseCoupon_.ValueStr;
     
     this.strike_ = serial_Excel_multiAsset_vanillaCallPut.Strike_.ValueStr;
     
     this.strikeValue_ = serial_Excel_multiAsset_vanillaCallPut.StrikeValue_.ValueStr;
     
     this.partiRate_ = serial_Excel_multiAsset_vanillaCallPut.PartiRate_.ValueStr;
     
     FpmlSerializedCSharp.Excel_underlyingCalcID serial_excel_underlyingCalcID = serial_Excel_multiAsset_vanillaCallPut.Excel_underlyingCalcID_;
     string excel_underlyingCalcIDtype = serial_excel_underlyingCalcID.Excel_type_.ValueStr;
     this.excel_underlyingCalcIDViewModel_ = Excel_underlyingCalcIDViewModel.CreateExcel_underlyingCalcID(excel_underlyingCalcIDtype);
     this.excel_underlyingCalcIDViewModel_.setFromSerial(serial_excel_underlyingCalcID);
     
 }
        public override void setFromSerial(FpmlSerializedCSharp.ISerialized serial_Class)
        {
            FpmlSerializedCSharp.Excel_multiAsset_compositeOption_subtype serial_Excel_multiAsset_compositeOption_subtype = serial_Class as FpmlSerializedCSharp.Excel_multiAsset_compositeOption_subtype;
            FpmlSerializedCSharp.Excel_multiAsset_vanillaCallPut          serial_Excel_multiAsset_vanillaCallPut          = serial_Excel_multiAsset_compositeOption_subtype.Excel_multiAsset_vanillaCallPut_;

            this.exerciseDate_ = StringConverter.xmlDateToDateTime(serial_Excel_multiAsset_vanillaCallPut.ExerciseDate_.ValueStr);
            this.payoffDate_   = StringConverter.xmlDateToDateTime(serial_Excel_multiAsset_vanillaCallPut.PayoffDate_.ValueStr);

            //this.baseUnderlyingValue_ = serial_Excel_multiAsset_vanillaCallPut.BaseUnderlyingValue_.DoubleValue();
            this.callPut_    = Enum.Parse(typeof(CallPutEnum), serial_Excel_multiAsset_vanillaCallPut.CallPut_.ValueStr) as CallPutEnum?;
            this.baseCoupon_ = (serial_Excel_multiAsset_vanillaCallPut.BaseCoupon_.DoubleValue() * 100.0).ToString();
            this.strike_     = (serial_Excel_multiAsset_vanillaCallPut.Strike_.DoubleValue() * 100.0).ToString();
            //this.strikeValue_ = serial_Excel_multiAsset_vanillaCallPut.StrikeValue_.DoubleValue();
            this.partiRate_ = (serial_Excel_multiAsset_vanillaCallPut.PartiRate_.DoubleValue() * 100.0).ToString();
            //this.underlyingCalcType_ = serial_Excel_multiAsset_vanillaCallPut.UnderlyingCalcType_.ValueStr;

            FpmlSerializedCSharp.Excel_underlyingCalcID serial_returnUnderlyingCalcID = serial_Excel_multiAsset_vanillaCallPut.Excel_underlyingCalcID_;
            string returnUnderlyingCalcIDtype = serial_returnUnderlyingCalcID.Excel_type_.ValueStr;

            this.excel_underlyingCalcIDViewModel_ = Excel_underlyingCalcIDViewModel.CreateExcel_underlyingCalcID(returnUnderlyingCalcIDtype);
            this.excel_underlyingCalcIDViewModel_.setFromSerial(serial_returnUnderlyingCalcID);
        }