public Excel_hullWhiteTwoFactor(XmlNode xmlNode)
            : base(xmlNode)
        {
            XmlNode currentValueNode = xmlNode.SelectSingleNode("currentValue");

            if (currentValueNode != null)
            {
                if (currentValueNode.Attributes["href"] != null || currentValueNode.Attributes["id"] != null)
                {
                    if (currentValueNode.Attributes["id"] != null)
                    {
                        currentValueIDRef_ = currentValueNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(currentValueNode);
                        IDManager.SetID(currentValueIDRef_, ob);
                    }
                    else if (currentValueNode.Attributes["href"] != null)
                    {
                        currentValueIDRef_ = currentValueNode.Attributes["href"].Value;
                    }
                    else
                    {
                        currentValue_ = new XsdTypeToken(currentValueNode);
                    }
                }
                else
                {
                    currentValue_ = new XsdTypeToken(currentValueNode);
                }
            }


            XmlNode alphaNode = xmlNode.SelectSingleNode("alpha");

            if (alphaNode != null)
            {
                if (alphaNode.Attributes["href"] != null || alphaNode.Attributes["id"] != null)
                {
                    if (alphaNode.Attributes["id"] != null)
                    {
                        alphaIDRef_ = alphaNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(alphaNode);
                        IDManager.SetID(alphaIDRef_, ob);
                    }
                    else if (alphaNode.Attributes["href"] != null)
                    {
                        alphaIDRef_ = alphaNode.Attributes["href"].Value;
                    }
                    else
                    {
                        alpha_ = new XsdTypeToken(alphaNode);
                    }
                }
                else
                {
                    alpha_ = new XsdTypeToken(alphaNode);
                }
            }


            XmlNode volatilityNode = xmlNode.SelectSingleNode("volatility");

            if (volatilityNode != null)
            {
                if (volatilityNode.Attributes["href"] != null || volatilityNode.Attributes["id"] != null)
                {
                    if (volatilityNode.Attributes["id"] != null)
                    {
                        volatilityIDRef_ = volatilityNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(volatilityNode);
                        IDManager.SetID(volatilityIDRef_, ob);
                    }
                    else if (volatilityNode.Attributes["href"] != null)
                    {
                        volatilityIDRef_ = volatilityNode.Attributes["href"].Value;
                    }
                    else
                    {
                        volatility_ = new XsdTypeToken(volatilityNode);
                    }
                }
                else
                {
                    volatility_ = new XsdTypeToken(volatilityNode);
                }
            }


            XmlNode excel_rateInfoNode = xmlNode.SelectSingleNode("excel_rateInfo");

            if (excel_rateInfoNode != null)
            {
                if (excel_rateInfoNode.Attributes["href"] != null || excel_rateInfoNode.Attributes["id"] != null)
                {
                    if (excel_rateInfoNode.Attributes["id"] != null)
                    {
                        excel_rateInfoIDRef_ = excel_rateInfoNode.Attributes["id"].Value;
                        Excel_rateInfo ob = new Excel_rateInfo(excel_rateInfoNode);
                        IDManager.SetID(excel_rateInfoIDRef_, ob);
                    }
                    else if (excel_rateInfoNode.Attributes["href"] != null)
                    {
                        excel_rateInfoIDRef_ = excel_rateInfoNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_rateInfo_ = new Excel_rateInfo(excel_rateInfoNode);
                    }
                }
                else
                {
                    excel_rateInfo_ = new Excel_rateInfo(excel_rateInfoNode);
                }
            }


            XmlNode linkedCurveCodeNode = xmlNode.SelectSingleNode("linkedCurveCode");

            if (linkedCurveCodeNode != null)
            {
                if (linkedCurveCodeNode.Attributes["href"] != null || linkedCurveCodeNode.Attributes["id"] != null)
                {
                    if (linkedCurveCodeNode.Attributes["id"] != null)
                    {
                        linkedCurveCodeIDRef_ = linkedCurveCodeNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(linkedCurveCodeNode);
                        IDManager.SetID(linkedCurveCodeIDRef_, ob);
                    }
                    else if (linkedCurveCodeNode.Attributes["href"] != null)
                    {
                        linkedCurveCodeIDRef_ = linkedCurveCodeNode.Attributes["href"].Value;
                    }
                    else
                    {
                        linkedCurveCode_ = new XsdTypeToken(linkedCurveCodeNode);
                    }
                }
                else
                {
                    linkedCurveCode_ = new XsdTypeToken(linkedCurveCodeNode);
                }
            }


            XmlNode excel_yieldCurveNode = xmlNode.SelectSingleNode("excel_yieldCurve");

            if (excel_yieldCurveNode != null)
            {
                if (excel_yieldCurveNode.Attributes["href"] != null || excel_yieldCurveNode.Attributes["id"] != null)
                {
                    if (excel_yieldCurveNode.Attributes["id"] != null)
                    {
                        excel_yieldCurveIDRef_ = excel_yieldCurveNode.Attributes["id"].Value;
                        Excel_yieldCurve ob = new Excel_yieldCurve(excel_yieldCurveNode);
                        IDManager.SetID(excel_yieldCurveIDRef_, ob);
                    }
                    else if (excel_yieldCurveNode.Attributes["href"] != null)
                    {
                        excel_yieldCurveIDRef_ = excel_yieldCurveNode.Attributes["href"].Value;
                    }
                    else
                    {
                        excel_yieldCurve_ = new Excel_yieldCurve(excel_yieldCurveNode);
                    }
                }
                else
                {
                    excel_yieldCurve_ = new Excel_yieldCurve(excel_yieldCurveNode);
                }
            }


            XmlNode vba_descriptionNode = xmlNode.SelectSingleNode("vba_description");

            if (vba_descriptionNode != null)
            {
                if (vba_descriptionNode.Attributes["href"] != null || vba_descriptionNode.Attributes["id"] != null)
                {
                    if (vba_descriptionNode.Attributes["id"] != null)
                    {
                        vba_descriptionIDRef_ = vba_descriptionNode.Attributes["id"].Value;
                        XsdTypeToken ob = new XsdTypeToken(vba_descriptionNode);
                        IDManager.SetID(vba_descriptionIDRef_, ob);
                    }
                    else if (vba_descriptionNode.Attributes["href"] != null)
                    {
                        vba_descriptionIDRef_ = vba_descriptionNode.Attributes["href"].Value;
                    }
                    else
                    {
                        vba_description_ = new XsdTypeToken(vba_descriptionNode);
                    }
                }
                else
                {
                    vba_description_ = new XsdTypeToken(vba_descriptionNode);
                }
            }
        }
 public Excel_hullWhiteOneFactor(XmlNode xmlNode)
 : base(xmlNode)
 {
     XmlNode currentValueNode = xmlNode.SelectSingleNode("currentValue");
     
     if (currentValueNode != null)
     {
         if (currentValueNode.Attributes["href"] != null || currentValueNode.Attributes["id"] != null) 
         {
             if (currentValueNode.Attributes["id"] != null) 
             {
                 currentValueIDRef_ = currentValueNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(currentValueNode);
                 IDManager.SetID(currentValueIDRef_, ob);
             }
             else if (currentValueNode.Attributes["href"] != null)
             {
                 currentValueIDRef_ = currentValueNode.Attributes["href"].Value;
             }
             else
             {
                 currentValue_ = new XsdTypeToken(currentValueNode);
             }
         }
         else
         {
             currentValue_ = new XsdTypeToken(currentValueNode);
         }
     }
     
 
     XmlNode alphaNode = xmlNode.SelectSingleNode("alpha");
     
     if (alphaNode != null)
     {
         if (alphaNode.Attributes["href"] != null || alphaNode.Attributes["id"] != null) 
         {
             if (alphaNode.Attributes["id"] != null) 
             {
                 alphaIDRef_ = alphaNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(alphaNode);
                 IDManager.SetID(alphaIDRef_, ob);
             }
             else if (alphaNode.Attributes["href"] != null)
             {
                 alphaIDRef_ = alphaNode.Attributes["href"].Value;
             }
             else
             {
                 alpha_ = new XsdTypeToken(alphaNode);
             }
         }
         else
         {
             alpha_ = new XsdTypeToken(alphaNode);
         }
     }
     
 
     XmlNode volatilityNode = xmlNode.SelectSingleNode("volatility");
     
     if (volatilityNode != null)
     {
         if (volatilityNode.Attributes["href"] != null || volatilityNode.Attributes["id"] != null) 
         {
             if (volatilityNode.Attributes["id"] != null) 
             {
                 volatilityIDRef_ = volatilityNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(volatilityNode);
                 IDManager.SetID(volatilityIDRef_, ob);
             }
             else if (volatilityNode.Attributes["href"] != null)
             {
                 volatilityIDRef_ = volatilityNode.Attributes["href"].Value;
             }
             else
             {
                 volatility_ = new XsdTypeToken(volatilityNode);
             }
         }
         else
         {
             volatility_ = new XsdTypeToken(volatilityNode);
         }
     }
     
 
     XmlNode excel_rateInfoNode = xmlNode.SelectSingleNode("excel_rateInfo");
     
     if (excel_rateInfoNode != null)
     {
         if (excel_rateInfoNode.Attributes["href"] != null || excel_rateInfoNode.Attributes["id"] != null) 
         {
             if (excel_rateInfoNode.Attributes["id"] != null) 
             {
                 excel_rateInfoIDRef_ = excel_rateInfoNode.Attributes["id"].Value;
                 Excel_rateInfo ob = new Excel_rateInfo(excel_rateInfoNode);
                 IDManager.SetID(excel_rateInfoIDRef_, ob);
             }
             else if (excel_rateInfoNode.Attributes["href"] != null)
             {
                 excel_rateInfoIDRef_ = excel_rateInfoNode.Attributes["href"].Value;
             }
             else
             {
                 excel_rateInfo_ = new Excel_rateInfo(excel_rateInfoNode);
             }
         }
         else
         {
             excel_rateInfo_ = new Excel_rateInfo(excel_rateInfoNode);
         }
     }
     
 
     XmlNode linkedCurveCodeNode = xmlNode.SelectSingleNode("linkedCurveCode");
     
     if (linkedCurveCodeNode != null)
     {
         if (linkedCurveCodeNode.Attributes["href"] != null || linkedCurveCodeNode.Attributes["id"] != null) 
         {
             if (linkedCurveCodeNode.Attributes["id"] != null) 
             {
                 linkedCurveCodeIDRef_ = linkedCurveCodeNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(linkedCurveCodeNode);
                 IDManager.SetID(linkedCurveCodeIDRef_, ob);
             }
             else if (linkedCurveCodeNode.Attributes["href"] != null)
             {
                 linkedCurveCodeIDRef_ = linkedCurveCodeNode.Attributes["href"].Value;
             }
             else
             {
                 linkedCurveCode_ = new XsdTypeToken(linkedCurveCodeNode);
             }
         }
         else
         {
             linkedCurveCode_ = new XsdTypeToken(linkedCurveCodeNode);
         }
     }
     
 
     XmlNode excel_yieldCurveNode = xmlNode.SelectSingleNode("excel_yieldCurve");
     
     if (excel_yieldCurveNode != null)
     {
         if (excel_yieldCurveNode.Attributes["href"] != null || excel_yieldCurveNode.Attributes["id"] != null) 
         {
             if (excel_yieldCurveNode.Attributes["id"] != null) 
             {
                 excel_yieldCurveIDRef_ = excel_yieldCurveNode.Attributes["id"].Value;
                 Excel_yieldCurve ob = new Excel_yieldCurve(excel_yieldCurveNode);
                 IDManager.SetID(excel_yieldCurveIDRef_, ob);
             }
             else if (excel_yieldCurveNode.Attributes["href"] != null)
             {
                 excel_yieldCurveIDRef_ = excel_yieldCurveNode.Attributes["href"].Value;
             }
             else
             {
                 excel_yieldCurve_ = new Excel_yieldCurve(excel_yieldCurveNode);
             }
         }
         else
         {
             excel_yieldCurve_ = new Excel_yieldCurve(excel_yieldCurveNode);
         }
     }
     
 
     XmlNode vba_descriptionNode = xmlNode.SelectSingleNode("vba_description");
     
     if (vba_descriptionNode != null)
     {
         if (vba_descriptionNode.Attributes["href"] != null || vba_descriptionNode.Attributes["id"] != null) 
         {
             if (vba_descriptionNode.Attributes["id"] != null) 
             {
                 vba_descriptionIDRef_ = vba_descriptionNode.Attributes["id"].Value;
                 XsdTypeToken ob = new XsdTypeToken(vba_descriptionNode);
                 IDManager.SetID(vba_descriptionIDRef_, ob);
             }
             else if (vba_descriptionNode.Attributes["href"] != null)
             {
                 vba_descriptionIDRef_ = vba_descriptionNode.Attributes["href"].Value;
             }
             else
             {
                 vba_description_ = new XsdTypeToken(vba_descriptionNode);
             }
         }
         else
         {
             vba_description_ = new XsdTypeToken(vba_descriptionNode);
         }
     }
     
 
 }