//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.832
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System.Collections.Generic;
using System.Xml.Serialization;
using System;

// 
// This source code was auto-generated by xsd, Version=2.0.50727.42.
// 
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlRootAttribute("messaggio", Namespace = "http://www.prometeia.it/xml-rpc", IsNullable = false)]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class messaggioType
{

    private headerMessaggioType headerMessaggioField;

    private bodyMessaggioType bodyMessaggioField;

    /// <remarks/>
    public headerMessaggioType headerMessaggio
    {
        get
        {
            return this.headerMessaggioField;
        }
        set
        {
            this.headerMessaggioField = value;
        }
    }


    /// <remarks/>
    public bodyMessaggioType bodyMessaggio
    {
        get
        {
            return this.bodyMessaggioField;
        }
        set
        {
            this.bodyMessaggioField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class headerMessaggioType
{

    private string clienteField;

    private string ipField;

    private int errorLevelField;

    private bool errorLevelFieldSpecified;

    private string errorDescriptionField;

    /// <remarks/>
    public string cliente
    {
        get
        {
            return this.clienteField;
        }
        set
        {
            this.clienteField = value;
        }
    }

    /// <remarks/>
    public string ip
    {
        get
        {
            return this.ipField;
        }
        set
        {
            this.ipField = value;
        }
    }

    /// <remarks/>
    public int errorLevel
    {
        get
        {
            return this.errorLevelField;
        }
        set
        {
            this.errorLevelField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool errorLevelSpecified
    {
        get
        {
            return this.errorLevelFieldSpecified;
        }
        set
        {
            this.errorLevelFieldSpecified = value;
        }
    }

    /// <remarks/>
    public string errorDescription
    {
        get
        {
            return this.errorDescriptionField;
        }
        set
        {
            this.errorDescriptionField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaVaRPortafoglioType : ElementoComposito
{

    private ptfType[] ptfField;

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("ptf")]
    public ptfType[] ptf
    {
        get
        {
            return this.ptfField;
        }
        set
        {
            this.ptfField = value;
        }
    }

    #region Implementazione Composite
    private List<ElementoComposito> _children =
                                   new List<ElementoComposito>();

    public override void Add(ElementoComposito child)
    {
        _children.Add(child);
    }

    public override void Remove(ElementoComposito child)
    {
        _children.Remove(child);
    }

    public override void AddChildToAggregate()
    {
        int count = _children.Count;
        ptfType[] _ptf = new ptfType[count];

        for (int i = 0; i < count; i++)
        {
            _ptf[i] = new ptfType();
            _ptf[i] = (ptfType)_children[i];
        }

        this.ptfField = _ptf;
    }

    public ptfType FindPtf(string needAreaDesc)
    {
        ptfType _ptffind = null;
        string descrizione = "";

        if (this.ptf == null)
            return _ptffind;

        for (int i = 0; i < this.ptf.Length; i++)
        {
            if (this.ptf[i].descrizione.Trim() != "")
                descrizione = this.ptf[i].descrizione.ToUpper().Trim();

            if (descrizione.Equals(needAreaDesc.ToUpper().Trim()))
                _ptffind = this.ptf[i];
        }
        return _ptffind;
    }

    public List<ElementoComposito> GetChildren()
    {
        return _children;
    }

    public ElementoComposito GetChild(int index)
    {
        return _children[index];
    }

    #endregion
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class ptfType : ElementoComposito
{
    private List<saldoType> _saldoList;
    private List<ptfType> _aggregatiList;

    private string descrizioneField;

    private saldoType[] saldoField;

    private ptfType[] aggregatoField;

    private misureType misureRischioField;

    private statType statField;

    /// <remarks/>
    public string descrizione
    {
        get
        {
            return this.descrizioneField;
        }
        set
        {
            this.descrizioneField = value;
        }
    }

    public ptfType()
    {
        _saldoList = new List<saldoType>();
        _aggregatiList = new List<ptfType>();
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("saldo")]
    public saldoType[] saldo
    {
        get
        {
            return this.saldoField;
        }
        set
        {
            this.saldoField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("aggregato")]
    public ptfType[] aggregato
    {
        get
        {
            return this.aggregatoField;
        }
        set
        {
            this.aggregatoField = value;
        }
    }

    /// <remarks/>
    public misureType misureRischio
    {
        get
        {
            return this.misureRischioField;
        }
        set
        {
            this.misureRischioField = value;
        }
    }

    /// <remarks/>
    public statType stat
    {
        get
        {
            return this.statField;
        }
        set
        {
            this.statField = value;
        }
    }

    #region Implementazione Composite
    private List<ElementoComposito> _childrenAggregato =
                                   new List<ElementoComposito>();

    private List<ElementoComposito> _childrenAggregatodiAggregato =
                                   new List<ElementoComposito>();

    private List<ElementoComposito> _childrenSaldo =
                                  new List<ElementoComposito>();


    public void AddAggregato(ElementoComposito child)
    {
        _childrenAggregato.Add(child);
    }

    public void AddSaldo(ElementoComposito child)
    {
        _childrenSaldo.Add(child);
    }

    public void RemoveAggregato(ElementoComposito child)
    {
        _childrenAggregato.Remove(child);
    }
    public void RemoveSaldo(ElementoComposito child)
    {
        _childrenSaldo.Remove(child);

    }


    public void AddChildSaldoToAggregate()
    {
        int count = _childrenSaldo.Count;
        saldoType[] _saldo = new saldoType[count];

        for (int i = 0; i < count; i++)
        {
            _saldo[i] = new saldoType();
            _saldo[i] = (saldoType)_childrenSaldo[i];
        }

        this.saldoField = _saldo;
    }

    public override void AddChildToAggregate()
    {
        int count = _childrenAggregato.Count;
        ptfType[] _ptf = new ptfType[count];

        for (int i = 0; i < count; i++)
        {
            _ptf[i] = new ptfType();
            _ptf[i] = (ptfType)_childrenAggregato[i];
        }

        this.aggregato = _ptf;
    }

    public override void Add(ElementoComposito child)
    {
        throw new NotSupportedException();
    }

    public override void Remove(ElementoComposito child)
    {
        throw new NotSupportedException();
    }

    public saldoType FindSaldo(string isin)
    {
        saldoType _isinfound = null;
        string codiceIsin = string.Empty;

        for (int i = 0; i < this.saldo.Length; i++)
        {
            codiceIsin = string.Empty;

            if (this.saldo[i].chiave.codiceIsin != null)
            {
                if (this.saldo[i].chiave.codiceIsin != "")
                    codiceIsin = this.saldo[i].chiave.codiceIsin.ToUpper().Trim();
                else // in questo caso vado in join con il codiceadeguatezza.
                    codiceIsin = this.saldo[i].chiave.codiceAdeguatezza.ToUpper().Trim();


                if (codiceIsin.Equals(isin.ToUpper().Trim()))
                    _isinfound = this.saldo[i];
            }
        }
        return _isinfound;
    }

    /// <summary>
    /// Cerca in modo ricorsivo su tutti i saldo a partire dal pft passato in input il saldo avente ProdottiKeyType passato in input
    /// </summary>
    /// <param name="item"></param>
    /// <param name="pft"></param>
    /// <returns></returns>
    public saldoType FindSaldo(ProdottiKeyType item, ptfType pft)
    {
        saldoType _saldofound = null;

        foreach (ptfType objAggregato in pft.aggregato)
        {
            if (objAggregato.saldo != null)
            {
                foreach (saldoType itemSaldo in objAggregato.saldo)
                    _saldoList.Add(itemSaldo);
            }

            if (objAggregato.aggregato != null)
                FindSaldo(item, objAggregato);
        }

        if (_saldoList.Count > 0)
        {
            _saldoList = _saldoList.FindAll
                 (o => o.chiave.codiceAdeguatezza == item.codiceAdeguatezza &&
                     o.chiave.codiceInterno == item.codiceInterno &&
                     o.chiave.codiceIsin == item.codiceIsin &&
                     o.chiave.codiceMaf == item.codiceMaf
                //o.chiave.codiceSottoprodotto == item.codiceSottoprodotto
                 );

            if (_saldoList.Count > 0)
                _saldofound = _saldoList[0];
            else
                _saldofound = null;
        }

        return _saldofound;
    }


    /// <summary>
    /// Cerca in modo ricorsivo su tutti gli aggregati a partire dal pft passato in input l'aggregato avente la propriet� descrizione uguale al codicecontratto passato in input
    /// </summary>
    /// <param name="codicecontratto"></param>
    /// <param name="pft"></param>
    /// <returns></returns>
    public ptfType FindAggregato(string codicecontratto, ptfType pft)
    {
        ptfType _aggregatofound = null;

        foreach (ptfType objAggregato in pft.aggregato)
        {
            if (objAggregato.aggregato != null)
            {
                foreach (ptfType itemAggregato in objAggregato.aggregato)
                    _aggregatiList.Add(itemAggregato);
            }

            if (objAggregato.aggregato != null)
                FindAggregato(codicecontratto, objAggregato);
        }

        if (_aggregatiList.Count > 0)
        {
            _aggregatiList = _aggregatiList.FindAll(o => o.descrizione.Equals(codicecontratto));            

            if (_aggregatiList.Count > 0)
                _aggregatofound = _aggregatiList[0];
            else
                _aggregatofound = null;
        }

        return _aggregatofound;
    }


    public ptfType FindAggregato(string descrizione)
    {
        ptfType _aggregatofound = null;
        foreach (ptfType agg in this.aggregato)
        {
            if (agg != null)
                if (agg.descrizione.ToUpper().Trim() == descrizione.ToUpper().Trim())
                {
                    _aggregatofound = agg;
                }
        }
        return _aggregatofound;
    }

    /// <summary>
    /// Ritorna una lista di ptfType filtrati per descrizione
    /// </summary>
    /// <param name="descrizione"></param>
    /// <returns></returns>
    public List<ptfType> FindAggregati(string descrizione)
    {
        List<ptfType> _aggregati = new List<ptfType>();
        ptfType _aggregatofound = null;

        foreach (ptfType agg in this.aggregato)
        {
            if (agg != null)
                if (agg.descrizione.ToUpper().Trim() == descrizione.ToUpper().Trim())
                {
                    _aggregatofound = agg;
                    _aggregati.Add(_aggregatofound);
                }
        }

        return _aggregati;
    }

    #endregion

}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class saldoType : ElementoComposito
{

    private ProdottiKeyType chiaveField;

    private string nomeField;

    private double valoreField;

    private double valoreCtvField;

    private bool valoreCtvFieldSpecified;

    private misureType misureRischioField;

    private statType statField;

    /// <remarks/>
    public ProdottiKeyType chiave
    {
        get
        {
            return this.chiaveField;
        }
        set
        {
            this.chiaveField = value;
        }
    }

    /// <remarks/>
    public string nome
    {
        get
        {
            return this.nomeField;
        }
        set
        {
            this.nomeField = value;
        }
    }

    /// <remarks/>
    public double valore
    {
        get
        {
            return this.valoreField;
        }
        set
        {
            this.valoreField = value;
        }
    }

    /// <remarks/>
    public double valoreCtv
    {
        get
        {
            return this.valoreCtvField;
        }
        set
        {
            this.valoreCtvField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool valoreCtvSpecified
    {
        get
        {
            return this.valoreCtvFieldSpecified;
        }
        set
        {
            this.valoreCtvFieldSpecified = value;
        }
    }

    /// <remarks/>
    public misureType misureRischio
    {
        get
        {
            return this.misureRischioField;
        }
        set
        {
            this.misureRischioField = value;
        }
    }

    /// <remarks/>
    public statType stat
    {
        get
        {
            return this.statField;
        }
        set
        {
            this.statField = value;
        }
    }

    #region Composite element
    public override void Add(ElementoComposito child)
    {

    }

    public override void Remove(ElementoComposito child)
    {

    }
    public override void AddChildToAggregate()
    {
    }

    #endregion


}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class ProdottiKeyType
{

    private string codiceInternoField;

    private string codiceIsinField;

    private string codiceAdeguatezzaField;

    private string codiceMafField;

    private string codiceSottoprodottoField;

    /// <remarks/>
    public string codiceInterno
    {
        get
        {
            return this.codiceInternoField;
        }
        set
        {
            this.codiceInternoField = value;
        }
    }

    /// <remarks/>
    public string codiceIsin
    {
        get
        {
            return this.codiceIsinField;
        }
        set
        {
            this.codiceIsinField = value;
        }
    }

    /// <remarks/>
    public string codiceAdeguatezza
    {
        get
        {
            return this.codiceAdeguatezzaField;
        }
        set
        {
            this.codiceAdeguatezzaField = value;
        }
    }

    /// <remarks/>
    public string codiceMaf
    {
        get
        {
            return this.codiceMafField;
        }
        set
        {
            this.codiceMafField = value;
        }
    }

    /// <remarks/>
    public string codiceSottoprodotto
    {
        get
        {
            return this.codiceSottoprodottoField;
        }
        set
        {
            this.codiceSottoprodottoField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class misureType
{
    private double varField;

    private bool varFieldSpecified;

    private double varpField;

    private bool varpFieldSpecified;

    private double cvarField;

    private bool cvarFieldSpecified;

    private double cvarpField;

    private bool cvarpFieldSpecified;

    private double mcvarField;

    private bool mcvarFieldSpecified;

    private double mcvarpField;

    private bool mcvarpFieldSpecified;

    private double risksizeField;

    private bool risksizeFieldSpecified;

    private int isAttivoRCField;

    private double rischioCreditoField;



    /// <remarks/>
    public double var
    {
        get
        {
            return this.varField;
        }
        set
        {
            this.varField = value;
        }
    }

    /// <remarks/>
    public int isAttivoRC
    {
        get
        {
            return this.isAttivoRCField;
        }
        set
        {
            this.isAttivoRCField = value;
        }
    }

    /// <remarks/>
    public double rischioCredito
    {
        get
        {
            return this.rischioCreditoField;
        }
        set
        {
            this.rischioCreditoField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool varSpecified
    {
        get
        {
            return this.varFieldSpecified;
        }
        set
        {
            this.varFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double varp
    {
        get
        {
            return this.varpField;
        }
        set
        {
            this.varpField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool varpSpecified
    {
        get
        {
            return this.varpFieldSpecified;
        }
        set
        {
            this.varpFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double cvar
    {
        get
        {
            return this.cvarField;
        }
        set
        {
            this.cvarField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool cvarSpecified
    {
        get
        {
            return this.cvarFieldSpecified;
        }
        set
        {
            this.cvarFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double cvarp
    {
        get
        {
            return this.cvarpField;
        }
        set
        {
            this.cvarpField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool cvarpSpecified
    {
        get
        {
            return this.cvarpFieldSpecified;
        }
        set
        {
            this.cvarpFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double mcvar
    {
        get
        {
            return this.mcvarField;
        }
        set
        {
            this.mcvarField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool mcvarSpecified
    {
        get
        {
            return this.mcvarFieldSpecified;
        }
        set
        {
            this.mcvarFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double mcvarp
    {
        get
        {
            return this.mcvarpField;
        }
        set
        {
            this.mcvarpField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool mcvarpSpecified
    {
        get
        {
            return this.mcvarpFieldSpecified;
        }
        set
        {
            this.mcvarpFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double risksize
    {
        get
        {
            return this.risksizeField;
        }
        set
        {
            this.risksizeField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool risksizeSpecified
    {
        get
        {
            return this.risksizeFieldSpecified;
        }
        set
        {
            this.risksizeFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class statType
{

    private double beneficioField;

    private bool beneficioFieldSpecified;

    private double coperturaField;

    private bool coperturaFieldSpecified;

    private double totaleField;

    private bool totaleFieldSpecified;

    /// <remarks/>
    public double beneficio
    {
        get
        {
            return this.beneficioField;
        }
        set
        {
            this.beneficioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool beneficioSpecified
    {
        get
        {
            return this.beneficioFieldSpecified;
        }
        set
        {
            this.beneficioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double copertura
    {
        get
        {
            return this.coperturaField;
        }
        set
        {
            this.coperturaField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool coperturaSpecified
    {
        get
        {
            return this.coperturaFieldSpecified;
        }
        set
        {
            this.coperturaFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double totale
    {
        get
        {
            return this.totaleField;
        }
        set
        {
            this.totaleField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool totaleSpecified
    {
        get
        {
            return this.totaleFieldSpecified;
        }
        set
        {
            this.totaleFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkModalitaPACType
{

    private int modalitaPACField;

    private string warningField;

    /// <remarks/>
    public int modalitaPAC
    {
        get
        {
            return this.modalitaPACField;
        }
        set
        {
            this.modalitaPACField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkStatusStrumentoType
{

    private int statusCambioField;

    private string warningField;

    /// <remarks/>
    public int statusCambio
    {
        get
        {
            return this.statusCambioField;
        }
        set
        {
            this.statusCambioField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkEsposizioneCambioType
{

    private int esposizioneCambioField;

    private string warningField;

    /// <remarks/>
    public int esposizioneCambio
    {
        get
        {
            return this.esposizioneCambioField;
        }
        set
        {
            this.esposizioneCambioField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkRischioPrezzoType
{

    private int rischioPrezzoField;

    private string warningField;

    /// <remarks/>
    public int rischioPrezzo
    {
        get
        {
            return this.rischioPrezzoField;
        }
        set
        {
            this.rischioPrezzoField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkDivisaType
{

    private string divisaField;

    private string warningField;

    /// <remarks/>
    public string divisa
    {
        get
        {
            return this.divisaField;
        }
        set
        {
            this.divisaField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkSegmentoCliType
{

    private int segmentoCliField;

    private string warningField;

    /// <remarks/>
    public int segmentoCli
    {
        get
        {
            return this.segmentoCliField;
        }
        set
        {
            this.segmentoCliField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkSocietaGestType
{

    private string societaGestField;

    private string warningField;

    /// <remarks/>
    public string societaGest
    {
        get
        {
            return this.societaGestField;
        }
        set
        {
            this.societaGestField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkQualificaPBType
{

    private int qualificaPBField;

    private string warningField;

    /// <remarks/>
    public int qualificaPB
    {
        get
        {
            return this.qualificaPBField;
        }
        set
        {
            this.qualificaPBField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkReteType
{

    private int reteField;

    private string warningField;

    /// <remarks/>
    public int rete
    {
        get
        {
            return this.reteField;
        }
        set
        {
            this.reteField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkLottoMinCapRispSuccType
{

    private double lottoMinCapRispSuccField;

    private string warningField;

    /// <remarks/>
    public double lottoMinCapRispSucc
    {
        get
        {
            return this.lottoMinCapRispSuccField;
        }
        set
        {
            this.lottoMinCapRispSuccField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkLottoMinCapRispType
{

    private double lottoMinCapRispField;

    private string warningField;

    /// <remarks/>
    public double lottoMinCapRisp
    {
        get
        {
            return this.lottoMinCapRispField;
        }
        set
        {
            this.lottoMinCapRispField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkLottoMinCapContrSuccType
{

    private double lottoMinCapContrSuccField;

    private string warningField;

    /// <remarks/>
    public double lottoMinCapContrSucc
    {
        get
        {
            return this.lottoMinCapContrSuccField;
        }
        set
        {
            this.lottoMinCapContrSuccField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkLottoMinCapContrType
{

    private double lottoMinCapContrField;

    private string warningField;

    /// <remarks/>
    public double lottoMinCapContr
    {
        get
        {
            return this.lottoMinCapContrField;
        }
        set
        {
            this.lottoMinCapContrField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkOrizzonteTemporaleMaxType
{

    private int orizzonteTemporaleMaxField;

    private string warningField;

    /// <remarks/>
    public int orizzonteTemporaleMax
    {
        get
        {
            return this.orizzonteTemporaleMaxField;
        }
        set
        {
            this.orizzonteTemporaleMaxField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkOrizzoneTemporaleMinType
{

    private int orizzonteTemporaleMinField;

    private string warningField;

    /// <remarks/>
    public int orizzonteTemporaleMin
    {
        get
        {
            return this.orizzonteTemporaleMinField;
        }
        set
        {
            this.orizzonteTemporaleMinField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkProfiloRischioType
{

    private int profiloRischioField;

    private string warningField;

    /// <remarks/>
    public int profiloRischio
    {
        get
        {
            return this.profiloRischioField;
        }
        set
        {
            this.profiloRischioField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class checkAreaBisognoType
{

    private int areaBisognoField;

    private string warningField;

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }

    /// <remarks/>
    public string warning
    {
        get
        {
            return this.warningField;
        }
        set
        {
            this.warningField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class descrizioneStrumentoType
{

    private string isinField;

    private checkAreaBisognoType checkAreaBisognoField;

    private checkProfiloRischioType checkProfiloRischioField;

    private checkOrizzoneTemporaleMinType checkOrizzonteTemporaleMinField;

    private checkOrizzonteTemporaleMaxType checkOrizzonteTemporaleMaxField;

    private checkLottoMinCapContrType checkLottoMinCapContrField;

    private checkLottoMinCapContrSuccType checkLottoMinCapContrSuccField;

    private checkLottoMinCapRispType checkLottoMinCapRispField;

    private checkLottoMinCapRispSuccType checkLottoMinCapRispSuccField;

    private checkReteType checkReteField;

    private checkQualificaPBType checkQualificaPBField;

    private checkSocietaGestType checkSocietaGestField;

    private checkSegmentoCliType checkSegmentoCliField;

    private checkDivisaType checkDivisaField;

    private checkRischioPrezzoType checkRischioPrezzoField;

    private checkEsposizioneCambioType checkEsposizioneCambioField;

    private checkStatusStrumentoType checkStatusStrumentoField;

    private checkModalitaPACType checkModalitaPACField;

    private double aderenzaConSensField;

    private bool aderenzaConSensFieldSpecified;

    private double aderenzaSenzaSensField;

    private bool aderenzaSenzaSensFieldSpecified;

    /// <remarks/>
    public string isin
    {
        get
        {
            return this.isinField;
        }
        set
        {
            this.isinField = value;
        }
    }

    /// <remarks/>
    public checkAreaBisognoType checkAreaBisogno
    {
        get
        {
            return this.checkAreaBisognoField;
        }
        set
        {
            this.checkAreaBisognoField = value;
        }
    }

    /// <remarks/>
    public checkProfiloRischioType checkProfiloRischio
    {
        get
        {
            return this.checkProfiloRischioField;
        }
        set
        {
            this.checkProfiloRischioField = value;
        }
    }

    /// <remarks/>
    public checkOrizzoneTemporaleMinType checkOrizzonteTemporaleMin
    {
        get
        {
            return this.checkOrizzonteTemporaleMinField;
        }
        set
        {
            this.checkOrizzonteTemporaleMinField = value;
        }
    }

    /// <remarks/>
    public checkOrizzonteTemporaleMaxType checkOrizzonteTemporaleMax
    {
        get
        {
            return this.checkOrizzonteTemporaleMaxField;
        }
        set
        {
            this.checkOrizzonteTemporaleMaxField = value;
        }
    }

    /// <remarks/>
    public checkLottoMinCapContrType checkLottoMinCapContr
    {
        get
        {
            return this.checkLottoMinCapContrField;
        }
        set
        {
            this.checkLottoMinCapContrField = value;
        }
    }

    /// <remarks/>
    public checkLottoMinCapContrSuccType checkLottoMinCapContrSucc
    {
        get
        {
            return this.checkLottoMinCapContrSuccField;
        }
        set
        {
            this.checkLottoMinCapContrSuccField = value;
        }
    }

    /// <remarks/>
    public checkLottoMinCapRispType checkLottoMinCapRisp
    {
        get
        {
            return this.checkLottoMinCapRispField;
        }
        set
        {
            this.checkLottoMinCapRispField = value;
        }
    }

    /// <remarks/>
    public checkLottoMinCapRispSuccType checkLottoMinCapRispSucc
    {
        get
        {
            return this.checkLottoMinCapRispSuccField;
        }
        set
        {
            this.checkLottoMinCapRispSuccField = value;
        }
    }

    /// <remarks/>
    public checkReteType checkRete
    {
        get
        {
            return this.checkReteField;
        }
        set
        {
            this.checkReteField = value;
        }
    }

    /// <remarks/>
    public checkQualificaPBType checkQualificaPB
    {
        get
        {
            return this.checkQualificaPBField;
        }
        set
        {
            this.checkQualificaPBField = value;
        }
    }

    /// <remarks/>
    public checkSocietaGestType checkSocietaGest
    {
        get
        {
            return this.checkSocietaGestField;
        }
        set
        {
            this.checkSocietaGestField = value;
        }
    }

    /// <remarks/>
    public checkSegmentoCliType checkSegmentoCli
    {
        get
        {
            return this.checkSegmentoCliField;
        }
        set
        {
            this.checkSegmentoCliField = value;
        }
    }

    /// <remarks/>
    public checkDivisaType checkDivisa
    {
        get
        {
            return this.checkDivisaField;
        }
        set
        {
            this.checkDivisaField = value;
        }
    }

    /// <remarks/>
    public checkRischioPrezzoType checkRischioPrezzo
    {
        get
        {
            return this.checkRischioPrezzoField;
        }
        set
        {
            this.checkRischioPrezzoField = value;
        }
    }

    /// <remarks/>
    public checkEsposizioneCambioType checkEsposizioneCambio
    {
        get
        {
            return this.checkEsposizioneCambioField;
        }
        set
        {
            this.checkEsposizioneCambioField = value;
        }
    }

    /// <remarks/>
    public checkStatusStrumentoType checkStatusStrumento
    {
        get
        {
            return this.checkStatusStrumentoField;
        }
        set
        {
            this.checkStatusStrumentoField = value;
        }
    }

    /// <remarks/>
    public checkModalitaPACType checkModalitaPAC
    {
        get
        {
            return this.checkModalitaPACField;
        }
        set
        {
            this.checkModalitaPACField = value;
        }
    }

    /// <remarks/>
    public double aderenzaConSens
    {
        get
        {
            return this.aderenzaConSensField;
        }
        set
        {
            this.aderenzaConSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaConSensSpecified
    {
        get
        {
            return this.aderenzaConSensFieldSpecified;
        }
        set
        {
            this.aderenzaConSensFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double aderenzaSenzaSens
    {
        get
        {
            return this.aderenzaSenzaSensField;
        }
        set
        {
            this.aderenzaSenzaSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaSenzaSensSpecified
    {
        get
        {
            return this.aderenzaSenzaSensFieldSpecified;
        }
        set
        {
            this.aderenzaSenzaSensFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaPullType
{

    private richiestaPullType richiestaPullField;

    private descrizioneStrumentoType[] descrizioneStrumentoField;

    private double aderenzaConSensField;

    private bool aderenzaConSensFieldSpecified;

    private double aderenzaSenzaSensField;

    private bool aderenzaSenzaSensFieldSpecified;

    /// <remarks/>
    public richiestaPullType richiestaPull
    {
        get
        {
            return this.richiestaPullField;
        }
        set
        {
            this.richiestaPullField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("descrizioneStrumento")]
    public descrizioneStrumentoType[] descrizioneStrumento
    {
        get
        {
            return this.descrizioneStrumentoField;
        }
        set
        {
            this.descrizioneStrumentoField = value;
        }
    }

    /// <remarks/>
    public double aderenzaConSens
    {
        get
        {
            return this.aderenzaConSensField;
        }
        set
        {
            this.aderenzaConSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaConSensSpecified
    {
        get
        {
            return this.aderenzaConSensFieldSpecified;
        }
        set
        {
            this.aderenzaConSensFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double aderenzaSenzaSens
    {
        get
        {
            return this.aderenzaSenzaSensField;
        }
        set
        {
            this.aderenzaSenzaSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaSenzaSensSpecified
    {
        get
        {
            return this.aderenzaSenzaSensFieldSpecified;
        }
        set
        {
            this.aderenzaSenzaSensFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaPullType
{

    private int areaBisognoField;

    private int orizzonteTemporaleField;

    private int tolleranzaRischioField;

    private portafoglioType portafoglioField;

    private parametriPullType parametriPullField;

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }

    /// <remarks/>
    public int orizzonteTemporale
    {
        get
        {
            return this.orizzonteTemporaleField;
        }
        set
        {
            this.orizzonteTemporaleField = value;
        }
    }

    /// <remarks/>
    public int tolleranzaRischio
    {
        get
        {
            return this.tolleranzaRischioField;
        }
        set
        {
            this.tolleranzaRischioField = value;
        }
    }

    /// <remarks/>
    public portafoglioType portafoglio
    {
        get
        {
            return this.portafoglioField;
        }
        set
        {
            this.portafoglioField = value;
        }
    }

    /// <remarks/>
    public parametriPullType parametriPull
    {
        get
        {
            return this.parametriPullField;
        }
        set
        {
            this.parametriPullField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class portafoglioType
{

    private string codicePortafoglioField;

    private strumentoType[] strumentoField;

    /// <remarks/>
    public string codicePortafoglio
    {
        get
        {
            return this.codicePortafoglioField;
        }
        set
        {
            this.codicePortafoglioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("strumento")]
    public strumentoType[] strumento
    {
        get
        {
            return this.strumentoField;
        }
        set
        {
            this.strumentoField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class strumentoType
{

    private ProdottiKeyType chiaveField;

    private string nomeField;

    private double capitaleField;

    private double valoreField;

    private double risparmioAnnuoField;

    private bool risparmioAnnuoFieldSpecified;

    /// <remarks/>
    public ProdottiKeyType chiave
    {
        get
        {
            return this.chiaveField;
        }
        set
        {
            this.chiaveField = value;
        }
    }

    /// <remarks/>
    public string nome
    {
        get
        {
            return this.nomeField;
        }
        set
        {
            this.nomeField = value;
        }
    }

    /// <remarks/>
    public double capitale
    {
        get
        {
            return this.capitaleField;
        }
        set
        {
            this.capitaleField = value;
        }
    }

    /// <remarks/>
    public double valore
    {
        get
        {
            return this.valoreField;
        }
        set
        {
            this.valoreField = value;
        }
    }

    /// <remarks/>
    public double risparmioAnnuo
    {
        get
        {
            return this.risparmioAnnuoField;
        }
        set
        {
            this.risparmioAnnuoField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool risparmioAnnuoSpecified
    {
        get
        {
            return this.risparmioAnnuoFieldSpecified;
        }
        set
        {
            this.risparmioAnnuoFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class parametriPullType
{

    private int reteField;

    private bool reteFieldSpecified;

    private int qualificaPBField;

    private bool qualificaPBFieldSpecified;

    private string societaGestioneField;

    private int segmentoClientelaField;

    private bool segmentoClientelaFieldSpecified;

    private int rischioCambioField;

    private bool rischioCambioFieldSpecified;

    private int presenzaPACField;

    private bool presenzaPACFieldSpecified;

    /// <remarks/>
    public int rete
    {
        get
        {
            return this.reteField;
        }
        set
        {
            this.reteField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool reteSpecified
    {
        get
        {
            return this.reteFieldSpecified;
        }
        set
        {
            this.reteFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int qualificaPB
    {
        get
        {
            return this.qualificaPBField;
        }
        set
        {
            this.qualificaPBField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool qualificaPBSpecified
    {
        get
        {
            return this.qualificaPBFieldSpecified;
        }
        set
        {
            this.qualificaPBFieldSpecified = value;
        }
    }

    /// <remarks/>
    public string societaGestione
    {
        get
        {
            return this.societaGestioneField;
        }
        set
        {
            this.societaGestioneField = value;
        }
    }

    /// <remarks/>
    public int segmentoClientela
    {
        get
        {
            return this.segmentoClientelaField;
        }
        set
        {
            this.segmentoClientelaField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool segmentoClientelaSpecified
    {
        get
        {
            return this.segmentoClientelaFieldSpecified;
        }
        set
        {
            this.segmentoClientelaFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int rischioCambio
    {
        get
        {
            return this.rischioCambioField;
        }
        set
        {
            this.rischioCambioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool rischioCambioSpecified
    {
        get
        {
            return this.rischioCambioFieldSpecified;
        }
        set
        {
            this.rischioCambioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int presenzaPAC
    {
        get
        {
            return this.presenzaPACField;
        }
        set
        {
            this.presenzaPACField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool presenzaPACSpecified
    {
        get
        {
            return this.presenzaPACFieldSpecified;
        }
        set
        {
            this.presenzaPACFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class operazioniType
{

    private ProdottiKeyType chiaveField;

    private operazioniTypeOperazione operazioneField;

    private double capitaleField;

    /// <remarks/>
    public ProdottiKeyType chiave
    {
        get
        {
            return this.chiaveField;
        }
        set
        {
            this.chiaveField = value;
        }
    }

    /// <remarks/>
    public operazioniTypeOperazione operazione
    {
        get
        {
            return this.operazioneField;
        }
        set
        {
            this.operazioneField = value;
        }
    }

    /// <remarks/>
    public double capitale
    {
        get
        {
            return this.capitaleField;
        }
        set
        {
            this.capitaleField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.prometeia.it/xml-rpc")]
public enum operazioniTypeOperazione
{

    /// <remarks/>
    vendo,

    /// <remarks/>
    tengo,

    /// <remarks/>
    compro,
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaPushType
{

    private richiestaPushType richiestaPushField;

    private portafoglioType portafoglioField;

    private assetAllocationType assetAllocationField;

    private operazioniType[] operazioniField;

    private double aderenzaConSensField;

    private bool aderenzaConSensFieldSpecified;

    private double aderenzaSenzaSensField;

    private bool aderenzaSenzaSensFieldSpecified;

    /// <remarks/>
    public richiestaPushType richiestaPush
    {
        get
        {
            return this.richiestaPushField;
        }
        set
        {
            this.richiestaPushField = value;
        }
    }

    /// <remarks/>
    public portafoglioType portafoglio
    {
        get
        {
            return this.portafoglioField;
        }
        set
        {
            this.portafoglioField = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation
    {
        get
        {
            return this.assetAllocationField;
        }
        set
        {
            this.assetAllocationField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("operazioni")]
    public operazioniType[] operazioni
    {
        get
        {
            return this.operazioniField;
        }
        set
        {
            this.operazioniField = value;
        }
    }

    /// <remarks/>
    public double aderenzaConSens
    {
        get
        {
            return this.aderenzaConSensField;
        }
        set
        {
            this.aderenzaConSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaConSensSpecified
    {
        get
        {
            return this.aderenzaConSensFieldSpecified;
        }
        set
        {
            this.aderenzaConSensFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double aderenzaSenzaSens
    {
        get
        {
            return this.aderenzaSenzaSensField;
        }
        set
        {
            this.aderenzaSenzaSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaSenzaSensSpecified
    {
        get
        {
            return this.aderenzaSenzaSensFieldSpecified;
        }
        set
        {
            this.aderenzaSenzaSensFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaPushType
{

    private richiestaPTFModelloType portafoglioModelloField;

    private portafoglioType portafoglioField;

    private parametriPushType parametriPushField;

    /// <remarks/>
    public richiestaPTFModelloType portafoglioModello
    {
        get
        {
            return this.portafoglioModelloField;
        }
        set
        {
            this.portafoglioModelloField = value;
        }
    }

    /// <remarks/>
    public portafoglioType portafoglio
    {
        get
        {
            return this.portafoglioField;
        }
        set
        {
            this.portafoglioField = value;
        }
    }

    /// <remarks/>
    public parametriPushType parametriPush
    {
        get
        {
            return this.parametriPushField;
        }
        set
        {
            this.parametriPushField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaPTFModelloType
{

    private int areaBisognoField;

    private parametriPTFModelloType parametriPTFModelloField;

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }

    /// <remarks/>
    public parametriPTFModelloType parametriPTFModello
    {
        get
        {
            return this.parametriPTFModelloField;
        }
        set
        {
            this.parametriPTFModelloField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class parametriPTFModelloType
{

    private double capitaleInizialeField;

    private bool capitaleInizialeFieldSpecified;

    private double flussoRisparmioField;

    private bool flussoRisparmioFieldSpecified;

    private int frequenzaRisparmioField;

    private bool frequenzaRisparmioFieldSpecified;

    private int orizzonteTemporaleField;

    private int tolleranzaRischioField;

    /// <remarks/>
    public double capitaleIniziale
    {
        get
        {
            return this.capitaleInizialeField;
        }
        set
        {
            this.capitaleInizialeField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool capitaleInizialeSpecified
    {
        get
        {
            return this.capitaleInizialeFieldSpecified;
        }
        set
        {
            this.capitaleInizialeFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double flussoRisparmio
    {
        get
        {
            return this.flussoRisparmioField;
        }
        set
        {
            this.flussoRisparmioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool flussoRisparmioSpecified
    {
        get
        {
            return this.flussoRisparmioFieldSpecified;
        }
        set
        {
            this.flussoRisparmioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int frequenzaRisparmio
    {
        get
        {
            return this.frequenzaRisparmioField;
        }
        set
        {
            this.frequenzaRisparmioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool frequenzaRisparmioSpecified
    {
        get
        {
            return this.frequenzaRisparmioFieldSpecified;
        }
        set
        {
            this.frequenzaRisparmioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int orizzonteTemporale
    {
        get
        {
            return this.orizzonteTemporaleField;
        }
        set
        {
            this.orizzonteTemporaleField = value;
        }
    }

    /// <remarks/>
    public int tolleranzaRischio
    {
        get
        {
            return this.tolleranzaRischioField;
        }
        set
        {
            this.tolleranzaRischioField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class parametriPushType
{

    private double capitaleInizialeField;

    private double flussoRisparmioField;

    private bool flussoRisparmioFieldSpecified;

    private double frequenzaRisparmioField;

    private bool frequenzaRisparmioFieldSpecified;

    private double tolleranzaField;

    private int orizzonteTemporaleField;

    private int areaBisognoField;

    private int reteField;

    private bool reteFieldSpecified;

    private string strategiaField;

    private int sceltaField;

    private int pacField;

    private bool pacFieldSpecified;

    private int rischioCambioField;

    private bool rischioCambioFieldSpecified;

    private string qualificaPBField;

    private string societaGestField;

    private string segmentoCliField;

    /// <remarks/>
    public double capitaleIniziale
    {
        get
        {
            return this.capitaleInizialeField;
        }
        set
        {
            this.capitaleInizialeField = value;
        }
    }

    /// <remarks/>
    public double flussoRisparmio
    {
        get
        {
            return this.flussoRisparmioField;
        }
        set
        {
            this.flussoRisparmioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool flussoRisparmioSpecified
    {
        get
        {
            return this.flussoRisparmioFieldSpecified;
        }
        set
        {
            this.flussoRisparmioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double frequenzaRisparmio
    {
        get
        {
            return this.frequenzaRisparmioField;
        }
        set
        {
            this.frequenzaRisparmioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool frequenzaRisparmioSpecified
    {
        get
        {
            return this.frequenzaRisparmioFieldSpecified;
        }
        set
        {
            this.frequenzaRisparmioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double tolleranza
    {
        get
        {
            return this.tolleranzaField;
        }
        set
        {
            this.tolleranzaField = value;
        }
    }

    /// <remarks/>
    public int orizzonteTemporale
    {
        get
        {
            return this.orizzonteTemporaleField;
        }
        set
        {
            this.orizzonteTemporaleField = value;
        }
    }

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }

    /// <remarks/>
    public int rete
    {
        get
        {
            return this.reteField;
        }
        set
        {
            this.reteField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool reteSpecified
    {
        get
        {
            return this.reteFieldSpecified;
        }
        set
        {
            this.reteFieldSpecified = value;
        }
    }

    /// <remarks/>
    public string strategia
    {
        get
        {
            return this.strategiaField;
        }
        set
        {
            this.strategiaField = value;
        }
    }

    /// <remarks/>
    public int scelta
    {
        get
        {
            return this.sceltaField;
        }
        set
        {
            this.sceltaField = value;
        }
    }

    /// <remarks/>
    public int pac
    {
        get
        {
            return this.pacField;
        }
        set
        {
            this.pacField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool pacSpecified
    {
        get
        {
            return this.pacFieldSpecified;
        }
        set
        {
            this.pacFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int rischioCambio
    {
        get
        {
            return this.rischioCambioField;
        }
        set
        {
            this.rischioCambioField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool rischioCambioSpecified
    {
        get
        {
            return this.rischioCambioFieldSpecified;
        }
        set
        {
            this.rischioCambioFieldSpecified = value;
        }
    }

    /// <remarks/>
    public string qualificaPB
    {
        get
        {
            return this.qualificaPBField;
        }
        set
        {
            this.qualificaPBField = value;
        }
    }

    /// <remarks/>
    public string societaGest
    {
        get
        {
            return this.societaGestField;
        }
        set
        {
            this.societaGestField = value;
        }
    }

    /// <remarks/>
    public string segmentoCli
    {
        get
        {
            return this.segmentoCliField;
        }
        set
        {
            this.segmentoCliField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class assetAllocationType
{

    private string codiceField;

    private double capitaleTotaleField;

    private bool capitaleTotaleFieldSpecified;

    private assetAllocationItemType[] assetAllocationItemField;

    /// <remarks/>
    public string codice
    {
        get
        {
            return this.codiceField;
        }
        set
        {
            this.codiceField = value;
        }
    }

    /// <remarks/>
    public double capitaleTotale
    {
        get
        {
            return this.capitaleTotaleField;
        }
        set
        {
            this.capitaleTotaleField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool capitaleTotaleSpecified
    {
        get
        {
            return this.capitaleTotaleFieldSpecified;
        }
        set
        {
            this.capitaleTotaleFieldSpecified = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("assetAllocationItem")]
    public assetAllocationItemType[] assetAllocationItem
    {
        get
        {
            return this.assetAllocationItemField;
        }
        set
        {
            this.assetAllocationItemField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class assetAllocationItemType
{

    private string codiceField;

    private string descrizioneField;

    private double pesoField;

    /// <remarks/>
    public string codice
    {
        get
        {
            return this.codiceField;
        }
        set
        {
            this.codiceField = value;
        }
    }

    /// <remarks/>
    public string descrizione
    {
        get
        {
            return this.descrizioneField;
        }
        set
        {
            this.descrizioneField = value;
        }
    }

    /// <remarks/>
    public double peso
    {
        get
        {
            return this.pesoField;
        }
        set
        {
            this.pesoField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class confrontoPortafoglioType
{

    private double betaField;

    private double tevField;

    private double extraRendField;

    /// <remarks/>
    public double beta
    {
        get
        {
            return this.betaField;
        }
        set
        {
            this.betaField = value;
        }
    }

    /// <remarks/>
    public double tev
    {
        get
        {
            return this.tevField;
        }
        set
        {
            this.tevField = value;
        }
    }

    /// <remarks/>
    public double extraRend
    {
        get
        {
            return this.extraRendField;
        }
        set
        {
            this.extraRendField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaConfrontoType
{

    private richiestaConfrontoType richiestaConfrontoField;

    private assetAllocationType assetAllocation1Field;

    private assetAllocationType assetAllocation2Field;

    private statisticheType statistiche1Field;

    private statisticheType statistiche2Field;

    private confrontoPortafoglioType confrontoPortafoglioField;

    private double aderenzaConSensField;

    private bool aderenzaConSensFieldSpecified;

    private double aderenzaSenzaSensField;

    private bool aderenzaSenzaSensFieldSpecified;

    /// <remarks/>
    public richiestaConfrontoType richiestaConfronto
    {
        get
        {
            return this.richiestaConfrontoField;
        }
        set
        {
            this.richiestaConfrontoField = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation1
    {
        get
        {
            return this.assetAllocation1Field;
        }
        set
        {
            this.assetAllocation1Field = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation2
    {
        get
        {
            return this.assetAllocation2Field;
        }
        set
        {
            this.assetAllocation2Field = value;
        }
    }

    /// <remarks/>
    public statisticheType statistiche1
    {
        get
        {
            return this.statistiche1Field;
        }
        set
        {
            this.statistiche1Field = value;
        }
    }

    /// <remarks/>
    public statisticheType statistiche2
    {
        get
        {
            return this.statistiche2Field;
        }
        set
        {
            this.statistiche2Field = value;
        }
    }

    /// <remarks/>
    public confrontoPortafoglioType confrontoPortafoglio
    {
        get
        {
            return this.confrontoPortafoglioField;
        }
        set
        {
            this.confrontoPortafoglioField = value;
        }
    }

    /// <remarks/>
    public double aderenzaConSens
    {
        get
        {
            return this.aderenzaConSensField;
        }
        set
        {
            this.aderenzaConSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaConSensSpecified
    {
        get
        {
            return this.aderenzaConSensFieldSpecified;
        }
        set
        {
            this.aderenzaConSensFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double aderenzaSenzaSens
    {
        get
        {
            return this.aderenzaSenzaSensField;
        }
        set
        {
            this.aderenzaSenzaSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaSenzaSensSpecified
    {
        get
        {
            return this.aderenzaSenzaSensFieldSpecified;
        }
        set
        {
            this.aderenzaSenzaSensFieldSpecified = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaConfrontoType
{

    private portafoglioType portafoglio1Field;

    private portafoglioType portafoglio2Field;

    private int orizzonteTemporaleField;

    private int areaBisognoField;

    /// <remarks/>
    public portafoglioType portafoglio1
    {
        get
        {
            return this.portafoglio1Field;
        }
        set
        {
            this.portafoglio1Field = value;
        }
    }

    /// <remarks/>
    public portafoglioType portafoglio2
    {
        get
        {
            return this.portafoglio2Field;
        }
        set
        {
            this.portafoglio2Field = value;
        }
    }

    /// <remarks/>
    public int orizzonteTemporale
    {
        get
        {
            return this.orizzonteTemporaleField;
        }
        set
        {
            this.orizzonteTemporaleField = value;
        }
    }

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class statisticheType
{

    private double varField;

    private int minTimeField;

    private int minTimeRealField;

    private double maxLossField;

    private statisticheitemType[] statisticheItemField;

    /// <remarks/>
    public double var
    {
        get
        {
            return this.varField;
        }
        set
        {
            this.varField = value;
        }
    }

    /// <remarks/>
    public int minTime
    {
        get
        {
            return this.minTimeField;
        }
        set
        {
            this.minTimeField = value;
        }
    }

    /// <remarks/>
    public int minTimeReal
    {
        get
        {
            return this.minTimeRealField;
        }
        set
        {
            this.minTimeRealField = value;
        }
    }

    /// <remarks/>
    public double maxLoss
    {
        get
        {
            return this.maxLossField;
        }
        set
        {
            this.maxLossField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("statisticheItem")]
    public statisticheitemType[] statisticheItem
    {
        get
        {
            return this.statisticheItemField;
        }
        set
        {
            this.statisticheItemField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class statisticheitemType
{

    private int dataField;

    private double mediaField;

    private double mediaAnnualizzataField;

    private double volaField;

    private double volaAnnualizzataField;

    private double asimmetriaField;

    private double curtosiField;

    private double minimoField;

    private double massimoField;

    private double indEffField;

    private double expFallField;

    private quantileType[] quantileField;

    private probSuccessoType[] probSuccessoField;

    private probInsuccessoType[] probInsuccessoField;

    /// <remarks/>
    public int data
    {
        get
        {
            return this.dataField;
        }
        set
        {
            this.dataField = value;
        }
    }

    /// <remarks/>
    public double media
    {
        get
        {
            return this.mediaField;
        }
        set
        {
            this.mediaField = value;
        }
    }

    /// <remarks/>
    public double mediaAnnualizzata
    {
        get
        {
            return this.mediaAnnualizzataField;
        }
        set
        {
            this.mediaAnnualizzataField = value;
        }
    }

    /// <remarks/>
    public double vola
    {
        get
        {
            return this.volaField;
        }
        set
        {
            this.volaField = value;
        }
    }

    /// <remarks/>
    public double volaAnnualizzata
    {
        get
        {
            return this.volaAnnualizzataField;
        }
        set
        {
            this.volaAnnualizzataField = value;
        }
    }

    /// <remarks/>
    public double asimmetria
    {
        get
        {
            return this.asimmetriaField;
        }
        set
        {
            this.asimmetriaField = value;
        }
    }

    /// <remarks/>
    public double curtosi
    {
        get
        {
            return this.curtosiField;
        }
        set
        {
            this.curtosiField = value;
        }
    }

    /// <remarks/>
    public double minimo
    {
        get
        {
            return this.minimoField;
        }
        set
        {
            this.minimoField = value;
        }
    }

    /// <remarks/>
    public double massimo
    {
        get
        {
            return this.massimoField;
        }
        set
        {
            this.massimoField = value;
        }
    }

    /// <remarks/>
    public double indEff
    {
        get
        {
            return this.indEffField;
        }
        set
        {
            this.indEffField = value;
        }
    }

    /// <remarks/>
    public double expFall
    {
        get
        {
            return this.expFallField;
        }
        set
        {
            this.expFallField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("quantile")]
    public quantileType[] quantile
    {
        get
        {
            return this.quantileField;
        }
        set
        {
            this.quantileField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("probSuccesso")]
    public probSuccessoType[] probSuccesso
    {
        get
        {
            return this.probSuccessoField;
        }
        set
        {
            this.probSuccessoField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("probInsuccesso")]
    public probInsuccessoType[] probInsuccesso
    {
        get
        {
            return this.probInsuccessoField;
        }
        set
        {
            this.probInsuccessoField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class quantileType
{

    private int numeroQuantileField;

    private double valoreField;

    /// <remarks/>
    public int numeroQuantile
    {
        get
        {
            return this.numeroQuantileField;
        }
        set
        {
            this.numeroQuantileField = value;
        }
    }

    /// <remarks/>
    public double valore
    {
        get
        {
            return this.valoreField;
        }
        set
        {
            this.valoreField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class probSuccessoType
{

    private double valoreField;

    private double successoField;

    private double expShortFallField;

    /// <remarks/>
    public double valore
    {
        get
        {
            return this.valoreField;
        }
        set
        {
            this.valoreField = value;
        }
    }

    /// <remarks/>
    public double successo
    {
        get
        {
            return this.successoField;
        }
        set
        {
            this.successoField = value;
        }
    }

    /// <remarks/>
    public double expShortFall
    {
        get
        {
            return this.expShortFallField;
        }
        set
        {
            this.expShortFallField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class probInsuccessoType
{

    private double valoreField;

    private double successoField;

    private double expShortFallField;

    /// <remarks/>
    public double valore
    {
        get
        {
            return this.valoreField;
        }
        set
        {
            this.valoreField = value;
        }
    }

    /// <remarks/>
    public double successo
    {
        get
        {
            return this.successoField;
        }
        set
        {
            this.successoField = value;
        }
    }

    /// <remarks/>
    public double expShortFall
    {
        get
        {
            return this.expShortFallField;
        }
        set
        {
            this.expShortFallField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaStatisticheType
{

    private richiestaStatisticheType richiestaStatisticheField;

    private assetAllocationType assetAllocationField;

    private statisticheType statisticheField;

    /// <remarks/>
    public richiestaStatisticheType richiestaStatistiche
    {
        get
        {
            return this.richiestaStatisticheField;
        }
        set
        {
            this.richiestaStatisticheField = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation
    {
        get
        {
            return this.assetAllocationField;
        }
        set
        {
            this.assetAllocationField = value;
        }
    }

    /// <remarks/>
    public statisticheType statistiche
    {
        get
        {
            return this.statisticheField;
        }
        set
        {
            this.statisticheField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaStatisticheType
{

    private portafoglioType portafoglioField;

    private int orizzonteTemporaleField;

    private int areaBisognoField;

    /// <remarks/>
    public portafoglioType portafoglio
    {
        get
        {
            return this.portafoglioField;
        }
        set
        {
            this.portafoglioField = value;
        }
    }

    /// <remarks/>
    public int orizzonteTemporale
    {
        get
        {
            return this.orizzonteTemporaleField;
        }
        set
        {
            this.orizzonteTemporaleField = value;
        }
    }

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class chiaveType
{

    private int areaBisognoField;

    private int tolleranzaRischioField;

    private int orizzonteTemporaleField;

    /// <remarks/>
    public int areaBisogno
    {
        get
        {
            return this.areaBisognoField;
        }
        set
        {
            this.areaBisognoField = value;
        }
    }

    /// <remarks/>
    public int tolleranzaRischio
    {
        get
        {
            return this.tolleranzaRischioField;
        }
        set
        {
            this.tolleranzaRischioField = value;
        }
    }

    /// <remarks/>
    public int orizzonteTemporale
    {
        get
        {
            return this.orizzonteTemporaleField;
        }
        set
        {
            this.orizzonteTemporaleField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaDizionarioStrategieType
{

    private richiestaDizionarioStrategieType richiestaDizionarioStrategieField;

    private string[] nomeStrategiaField;

    private chiaveType[] chiaveField;

    /// <remarks/>
    public richiestaDizionarioStrategieType richiestaDizionarioStrategie
    {
        get
        {
            return this.richiestaDizionarioStrategieField;
        }
        set
        {
            this.richiestaDizionarioStrategieField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("nomeStrategia")]
    public string[] nomeStrategia
    {
        get
        {
            return this.nomeStrategiaField;
        }
        set
        {
            this.nomeStrategiaField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("chiave")]
    public chiaveType[] chiave
    {
        get
        {
            return this.chiaveField;
        }
        set
        {
            this.chiaveField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaDizionarioStrategieType
{

    private int reteField;

    /// <remarks/>
    public int rete
    {
        get
        {
            return this.reteField;
        }
        set
        {
            this.reteField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class soluzioniType
{

    private assetAllocationType assetAllocationField;

    private statisticheType statisticheField;

    /// <remarks/>
    public assetAllocationType assetAllocation
    {
        get
        {
            return this.assetAllocationField;
        }
        set
        {
            this.assetAllocationField = value;
        }
    }

    /// <remarks/>
    public statisticheType statistiche
    {
        get
        {
            return this.statisticheField;
        }
        set
        {
            this.statisticheField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaPTFModelloType
{

    private richiestaPTFModelloType richiestaPTFModelloField;

    private soluzioniType soluzioniField;

    /// <remarks/>
    public richiestaPTFModelloType richiestaPTFModello
    {
        get
        {
            return this.richiestaPTFModelloField;
        }
        set
        {
            this.richiestaPTFModelloField = value;
        }
    }

    /// <remarks/>
    public soluzioniType soluzioni
    {
        get
        {
            return this.soluzioniField;
        }
        set
        {
            this.soluzioniField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaAderenzaType
{

    private richiestaAderenzaType richiestaAderenzaField;

    private double aderenzaConSensField;

    private bool aderenzaConSensFieldSpecified;

    private double aderenzaSenzaSensField;

    private bool aderenzaSenzaSensFieldSpecified;

    private assetAllocationType assetAllocation1Field;

    private assetAllocationType assetAllocation2Field;

    /// <remarks/>
    public richiestaAderenzaType richiestaAderenza
    {
        get
        {
            return this.richiestaAderenzaField;
        }
        set
        {
            this.richiestaAderenzaField = value;
        }
    }

    /// <remarks/>
    public double aderenzaConSens
    {
        get
        {
            return this.aderenzaConSensField;
        }
        set
        {
            this.aderenzaConSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaConSensSpecified
    {
        get
        {
            return this.aderenzaConSensFieldSpecified;
        }
        set
        {
            this.aderenzaConSensFieldSpecified = value;
        }
    }

    /// <remarks/>
    public double aderenzaSenzaSens
    {
        get
        {
            return this.aderenzaSenzaSensField;
        }
        set
        {
            this.aderenzaSenzaSensField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool aderenzaSenzaSensSpecified
    {
        get
        {
            return this.aderenzaSenzaSensFieldSpecified;
        }
        set
        {
            this.aderenzaSenzaSensFieldSpecified = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation1
    {
        get
        {
            return this.assetAllocation1Field;
        }
        set
        {
            this.assetAllocation1Field = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation2
    {
        get
        {
            return this.assetAllocation2Field;
        }
        set
        {
            this.assetAllocation2Field = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaAderenzaType
{

    private portafoglioType portafoglio1Field;

    private portafoglioType portafoglio2Field;

    /// <remarks/>
    public portafoglioType portafoglio1
    {
        get
        {
            return this.portafoglio1Field;
        }
        set
        {
            this.portafoglio1Field = value;
        }
    }

    /// <remarks/>
    public portafoglioType portafoglio2
    {
        get
        {
            return this.portafoglio2Field;
        }
        set
        {
            this.portafoglio2Field = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaMappingType
{

    private richiestaMappingType richiestaMappingField;

    private assetAllocationType assetAllocationField;

    /// <remarks/>
    public richiestaMappingType richiestaMapping
    {
        get
        {
            return this.richiestaMappingField;
        }
        set
        {
            this.richiestaMappingField = value;
        }
    }

    /// <remarks/>
    public assetAllocationType assetAllocation
    {
        get
        {
            return this.assetAllocationField;
        }
        set
        {
            this.assetAllocationField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaMappingType
{

    private portafoglioType portafoglioField;

    /// <remarks/>
    public portafoglioType portafoglio
    {
        get
        {
            return this.portafoglioField;
        }
        set
        {
            this.portafoglioField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class rispostaType
{

    private object itemField;

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("rispostaAderenza", typeof(rispostaAderenzaType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaConfronto", typeof(rispostaConfrontoType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaDizionarioStrategie", typeof(rispostaDizionarioStrategieType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaMapping", typeof(rispostaMappingType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaPTFModello", typeof(rispostaPTFModelloType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaPull", typeof(rispostaPullType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaPush", typeof(rispostaPushType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaStatistiche", typeof(rispostaStatisticheType))]
    [System.Xml.Serialization.XmlElementAttribute("rispostaVaRPortafoglio", typeof(rispostaVaRPortafoglioType))]
    public object Item
    {
        get
        {
            return this.itemField;
        }
        set
        {
            this.itemField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaVaRPortafoglioType : ElementoComposito
{

    private double alphaField;

    private bool alphaFieldSpecified;

    private int hpField;

    private bool hpFieldSpecified;

    private ptfType[] ptfField;

    /// <remarks/>
    public double alpha
    {
        get
        {
            return this.alphaField;
        }
        set
        {
            this.alphaField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool alphaSpecified
    {
        get
        {
            return this.alphaFieldSpecified;
        }
        set
        {
            this.alphaFieldSpecified = value;
        }
    }

    /// <remarks/>
    public int hp
    {
        get
        {
            return this.hpField;
        }
        set
        {
            this.hpField = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIgnoreAttribute()]
    public bool hpSpecified
    {
        get
        {
            return this.hpFieldSpecified;
        }
        set
        {
            this.hpFieldSpecified = value;
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("ptf")]
    public ptfType[] ptf
    {
        get
        {
            return this.ptfField;
        }
        set
        {
            this.ptfField = value;
        }
    }

    #region Implementazione Composite
    private List<ElementoComposito> _children =
                                   new List<ElementoComposito>();

    public override void Add(ElementoComposito child)
    {
        _children.Add(child);
    }

    public override void Remove(ElementoComposito child)
    {
        _children.Remove(child);
    }

    public override void AddChildToAggregate()
    {
        int count = _children.Count;
        ptfType[] _ptf = new ptfType[count];

        for (int i = 0; i < count; i++)
        {
            _ptf[i] = new ptfType();
            _ptf[i] = (ptfType)_children[i];
        }

        this.ptfField = _ptf;
    }

    public ptfType FindPtf(string needAreaDesc)
    {
        ptfType _ptffind = null;
        string descrizione = "";

        for (int i = 0; i < this.ptf.Length; i++)
        {
            if (this.ptf[i].descrizione.Trim() != "")
                descrizione = this.ptf[i].descrizione.ToUpper().Trim();

            if (descrizione.Equals(needAreaDesc.ToUpper().Trim()))
                _ptffind = this.ptf[i];
        }
        return _ptffind;
    }

    public List<ElementoComposito> GetChildren()
    {
        return _children;
    }

    public ElementoComposito GetChild(int index)
    {
        return _children[index];
    }

    #endregion
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class richiestaType
{

    private object itemField;

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("richiestaAderenza", typeof(richiestaAderenzaType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaConfronto", typeof(richiestaConfrontoType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaDizionarioStrategie", typeof(richiestaDizionarioStrategieType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaMapping", typeof(richiestaMappingType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaPTFModello", typeof(richiestaPTFModelloType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaPull", typeof(richiestaPullType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaPush", typeof(richiestaPushType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaStatistiche", typeof(richiestaStatisticheType))]
    [System.Xml.Serialization.XmlElementAttribute("richiestaVaRPortafoglio", typeof(richiestaVaRPortafoglioType))]
    public object Item
    {
        get
        {
            return this.itemField;
        }
        set
        {
            this.itemField = value;
        }
    }
}

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.42")]
[System.SerializableAttribute()]

[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.prometeia.it/xml-rpc")]
public partial class bodyMessaggioType
{

    private object itemField;

    /// <remarks/>
    [System.Xml.Serialization.XmlElementAttribute("richiesta", typeof(richiestaType))]
    [System.Xml.Serialization.XmlElementAttribute("risposta", typeof(rispostaType))]
    public object Item
    {
        get
        {
            return this.itemField;
        }
        set
        {
            this.itemField = value;
        }
    }
}
#region Composite

public abstract class ElementoComposito
{
    public abstract void Add(ElementoComposito child);
    public abstract void Remove(ElementoComposito child);
    public abstract void AddChildToAggregate();
}

#endregion