//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.34014
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

// 
// This source code was auto-generated by Microsoft.VSDesigner, Version 4.0.30319.34014.
// 

using System.Security.Cryptography.X509Certificates;
using System.Xml;
using ipn_sqlclr;

#pragma warning disable 1591

namespace policyService {
    using System;
    using System.Web.Services;
    using System.Diagnostics;
    using System.Web.Services.Protocols;
    using System.Xml.Serialization;
    using System.ComponentModel;
    
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.33440")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name="requestPoliciesServiceSOAP", Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
	public partial class policyService : XmlReaderSpyService
	{
        
        private System.Threading.SendOrPostCallback requestPoliciesOperationCompleted;
        
        /// <remarks/>
		public policyService(X509Certificate clientCert, string url) : base(clientCert, url)
		{
		}
        
        /// <remarks/>
        public event requestPoliciesCompletedEventHandler requestPoliciesCompleted;
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://schemas.verisign.com/pkiservices/2009/07/policy/requestPolicies", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Bare)]
        [return: System.Xml.Serialization.XmlElementAttribute("getPoliciesResponse", Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
        public getPoliciesResponse requestPolicies([System.Xml.Serialization.XmlElementAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")] getPolicies getPolicies) {
            object[] results = this.Invoke("requestPolicies", new object[] {
                        getPolicies});
            return ((getPoliciesResponse)(results[0]));
        }
        
        /// <remarks/>
        public void requestPoliciesAsync(getPolicies getPolicies) {
            this.requestPoliciesAsync(getPolicies, null);
        }
        
        /// <remarks/>
        public void requestPoliciesAsync(getPolicies getPolicies, object userState) {
            if ((this.requestPoliciesOperationCompleted == null)) {
                this.requestPoliciesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnrequestPoliciesOperationCompleted);
            }
            this.InvokeAsync("requestPolicies", new object[] {
                        getPolicies}, this.requestPoliciesOperationCompleted, userState);
        }
        
        private void OnrequestPoliciesOperationCompleted(object arg) {
            if ((this.requestPoliciesCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.requestPoliciesCompleted(this, new requestPoliciesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        public new void CancelAsync(object userState) {
            base.CancelAsync(userState);
        }
        
        private bool IsLocalFileSystemWebService(string url) {
            if (((url == null) 
                        || (url == string.Empty))) {
                return false;
            }
            System.Uri wsUri = new System.Uri(url);
            if (((wsUri.Port >= 1024) 
                        && (string.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) == 0))) {
                return true;
            }
            return false;
        }
    }

	/// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class getPolicies {
        
        private string versionField;
        
        private string clientTransactionIDField;
        
        private Client clientField;
        
        private RequestFilter requestFilterField;
        
        private bool signResponseField;
        
        private bool signResponseFieldSpecified;
        
        /// <remarks/>
        public string version {
            get {
                return this.versionField;
            }
            set {
                this.versionField = value;
            }
        }
        
        /// <remarks/>
        public string clientTransactionID {
            get {
                return this.clientTransactionIDField;
            }
            set {
                this.clientTransactionIDField = value;
            }
        }
        
        /// <remarks/>
        public Client client {
            get {
                return this.clientField;
            }
            set {
                this.clientField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public RequestFilter requestFilter {
            get {
                return this.requestFilterField;
            }
            set {
                this.requestFilterField = value;
            }
        }
        
        /// <remarks/>
        public bool signResponse {
            get {
                return this.signResponseField;
            }
            set {
                this.signResponseField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool signResponseSpecified {
            get {
                return this.signResponseFieldSpecified;
            }
            set {
                this.signResponseFieldSpecified = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class Client {
        
        private System.Nullable<System.DateTime> lastUpdatetimeField;
        
        private string preferredLanguageField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<System.DateTime> lastUpdatetime {
            get {
                return this.lastUpdatetimeField;
            }
            set {
                this.lastUpdatetimeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="language", IsNullable=true)]
        public string preferredLanguage {
            get {
                return this.preferredLanguageField;
            }
            set {
                this.preferredLanguageField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class OID {
        
        private string valueField;
        
        private int oIDReferenceIDField;
        
        private uint groupField;
        
        private string defaultNameField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string value {
            get {
                return this.valueField;
            }
            set {
                this.valueField = value;
            }
        }
        
        /// <remarks/>
        public int oIDReferenceID {
            get {
                return this.oIDReferenceIDField;
            }
            set {
                this.oIDReferenceIDField = value;
            }
        }
        
        /// <remarks/>
        public uint group {
            get {
                return this.groupField;
            }
            set {
                this.groupField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string defaultName {
            get {
                return this.defaultNameField;
            }
            set {
                this.defaultNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class CA {
        
        private string[] urisField;
        
        private byte[] certificateField;
        
        private string cAIssuerNameField;
        
        private int cAReferenceIDField;
        
        private System.Nullable<CAType> cATypeField;
        
        private byte[][] intermediateCACertificatesField;
        
        private byte[] rootCACertificateField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("uris", DataType="anyURI")]
        public string[] uris {
            get {
                return this.urisField;
            }
            set {
                this.urisField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
        public byte[] certificate {
            get {
                return this.certificateField;
            }
            set {
                this.certificateField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string cAIssuerName {
            get {
                return this.cAIssuerNameField;
            }
            set {
                this.cAIssuerNameField = value;
            }
        }
        
        /// <remarks/>
        public int cAReferenceID {
            get {
                return this.cAReferenceIDField;
            }
            set {
                this.cAReferenceIDField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<CAType> cAType {
            get {
                return this.cATypeField;
            }
            set {
                this.cATypeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("intermediateCACertificates", DataType="base64Binary")]
        public byte[][] intermediateCACertificates {
            get {
                return this.intermediateCACertificatesField;
            }
            set {
                this.intermediateCACertificatesField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
        public byte[] rootCACertificate {
            get {
                return this.rootCACertificateField;
            }
            set {
                this.rootCACertificateField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public enum CAType {
        
        /// <remarks/>
        @public,
        
        /// <remarks/>
        @private,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class MigrationOIDCollection {
        
        private string[] migratedFromOIDField;
        
        private string migratedToOIDField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("migratedFromOID")]
        public string[] migratedFromOID {
            get {
                return this.migratedFromOIDField;
            }
            set {
                this.migratedFromOIDField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string migratedToOID {
            get {
                return this.migratedToOIDField;
            }
            set {
                this.migratedToOIDField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class ApplicationInstructionsType {
        
        private string fileContentTypeField;
        
        private string urlField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string fileContentType {
            get {
                return this.fileContentTypeField;
            }
            set {
                this.fileContentTypeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="anyURI")]
        public string url {
            get {
                return this.urlField;
            }
            set {
                this.urlField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class SeatInfoType {
        
        private AttributeValueType attributeNameValueField;
        
        private AttributeNameValuePropertyType attributeNameValuePropertyField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public AttributeValueType attributeNameValue {
            get {
                return this.attributeNameValueField;
            }
            set {
                this.attributeNameValueField = value;
            }
        }
        
        /// <remarks/>
        public AttributeNameValuePropertyType attributeNameValueProperty {
            get {
                return this.attributeNameValuePropertyField;
            }
            set {
                this.attributeNameValuePropertyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class AttributeValueType {
        
        private bool mandatoryField;
        
        private bool mandatoryFieldSpecified;
        
        private string typeField;
        
        private string valueField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool mandatory {
            get {
                return this.mandatoryField;
            }
            set {
                this.mandatoryField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool mandatorySpecified {
            get {
                return this.mandatoryFieldSpecified;
            }
            set {
                this.mandatoryFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string type {
            get {
                return this.typeField;
            }
            set {
                this.typeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string Value {
            get {
                return this.valueField;
            }
            set {
                this.valueField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class AttributeNameValuePropertyType {
        
        private string valueField;
        
        private string sourceField;
        
        private string sourceAttributeNameField;
        
        private System.Nullable<bool> mandatoryField;
        
        private System.Nullable<bool> overridableField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string value {
            get {
                return this.valueField;
            }
            set {
                this.valueField = value;
            }
        }
        
        /// <remarks/>
        public string source {
            get {
                return this.sourceField;
            }
            set {
                this.sourceField = value;
            }
        }
        
        /// <remarks/>
        public string sourceAttributeName {
            get {
                return this.sourceAttributeNameField;
            }
            set {
                this.sourceAttributeNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<bool> mandatory {
            get {
                return this.mandatoryField;
            }
            set {
                this.mandatoryField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<bool> overridable {
            get {
                return this.overridableField;
            }
            set {
                this.overridableField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class PollingTimeType {
        
        private int nextUpdateHoursField;
        
        /// <remarks/>
        public int nextUpdateHours {
            get {
                return this.nextUpdateHoursField;
            }
            set {
                this.nextUpdateHoursField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class PollingPolicyType {
        
        private PollingTimeType gatewayPollingTimeField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public PollingTimeType gatewayPollingTime {
            get {
                return this.gatewayPollingTimeField;
            }
            set {
                this.gatewayPollingTimeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class DirectoryInfoType {
        
        private string directoryTypeField;
        
        private string domainNameField;
        
        private string itemField;
        
        private ItemChoiceType itemElementNameField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string directoryType {
            get {
                return this.directoryTypeField;
            }
            set {
                this.directoryTypeField = value;
            }
        }
        
        /// <remarks/>
        public string domainName {
            get {
                return this.domainNameField;
            }
            set {
                this.domainNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("hostName", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("ipAddress", typeof(string))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public string Item {
            get {
                return this.itemField;
            }
            set {
                this.itemField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType ItemElementName {
            get {
                return this.itemElementNameField;
            }
            set {
                this.itemElementNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy", IncludeInSchema=false)]
    public enum ItemChoiceType {
        
        /// <remarks/>
        hostName,
        
        /// <remarks/>
        ipAddress,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class AuthorizationInfoType {
        
        private string[] userAuthorizationCollectionField;
        
        private DirectoryInfoType directoryInfoField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("authorizedGroup", IsNullable=false)]
        public string[] userAuthorizationCollection {
            get {
                return this.userAuthorizationCollectionField;
            }
            set {
                this.userAuthorizationCollectionField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public DirectoryInfoType directoryInfo {
            get {
                return this.directoryInfoField;
            }
            set {
                this.directoryInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class RAPolicy {
        
        private bool registerUserField;
        
        private bool verifyUserField;
        
        private PublishCert publishCertField;
        
        private AuthorizationInfoType[] authorizationInfoField;
        
        private PollingPolicyType pollingPolicyField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public bool registerUser {
            get {
                return this.registerUserField;
            }
            set {
                this.registerUserField = value;
            }
        }
        
        /// <remarks/>
        public bool verifyUser {
            get {
                return this.verifyUserField;
            }
            set {
                this.verifyUserField = value;
            }
        }
        
        /// <remarks/>
        public PublishCert publishCert {
            get {
                return this.publishCertField;
            }
            set {
                this.publishCertField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("authorizationInfo")]
        public AuthorizationInfoType[] authorizationInfo {
            get {
                return this.authorizationInfoField;
            }
            set {
                this.authorizationInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public PollingPolicyType pollingPolicy {
            get {
                return this.pollingPolicyField;
            }
            set {
                this.pollingPolicyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public enum PublishCert {
        
        /// <remarks/>
        yes,
        
        /// <remarks/>
        no,
        
        /// <remarks/>
        clientProvided,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class ServiceEndpointType {
        
        private string typeField;
        
        private string endpointURIField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string type {
            get {
                return this.typeField;
            }
            set {
                this.typeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="anyURI")]
        public string endpointURI {
            get {
                return this.endpointURIField;
            }
            set {
                this.endpointURIField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class PersonalInfoType {
        
        private string nameField;
        
        private string emailField;
        
        private string phoneField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string name {
            get {
                return this.nameField;
            }
            set {
                this.nameField = value;
            }
        }
        
        /// <remarks/>
        public string email {
            get {
                return this.emailField;
            }
            set {
                this.emailField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string phone {
            get {
                return this.phoneField;
            }
            set {
                this.phoneField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class SystemInformation {
        
        private AttributeNameValuePairType[] searchCertificateDataField;
        
        private PublishCert cACertPublishField;
        
        private bool cACertPublishFieldSpecified;
        
        private CACertPublishNameValuePair cACertPublishNameValuePairField;
        
        private bool cACertPublishNameValuePairFieldSpecified;
        
        private DeliveryFormat certificateDeliveryFormatField;
        
        private PersonalInfoType adminInfoField;
        
        private ServiceEndpointType[] serviceEndpointListField;
        
        private string duplicateCertPolicyField;
        
        private string supersededPolicyOIDField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("searchAttributeNameValuePair", IsNullable=false)]
        public AttributeNameValuePairType[] searchCertificateData {
            get {
                return this.searchCertificateDataField;
            }
            set {
                this.searchCertificateDataField = value;
            }
        }
        
        /// <remarks/>
        public PublishCert cACertPublish {
            get {
                return this.cACertPublishField;
            }
            set {
                this.cACertPublishField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool cACertPublishSpecified {
            get {
                return this.cACertPublishFieldSpecified;
            }
            set {
                this.cACertPublishFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public CACertPublishNameValuePair cACertPublishNameValuePair {
            get {
                return this.cACertPublishNameValuePairField;
            }
            set {
                this.cACertPublishNameValuePairField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool cACertPublishNameValuePairSpecified {
            get {
                return this.cACertPublishNameValuePairFieldSpecified;
            }
            set {
                this.cACertPublishNameValuePairFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public DeliveryFormat certificateDeliveryFormat {
            get {
                return this.certificateDeliveryFormatField;
            }
            set {
                this.certificateDeliveryFormatField = value;
            }
        }
        
        /// <remarks/>
        public PersonalInfoType adminInfo {
            get {
                return this.adminInfoField;
            }
            set {
                this.adminInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute("serviceEndpoint", IsNullable=false)]
        public ServiceEndpointType[] serviceEndpointList {
            get {
                return this.serviceEndpointListField;
            }
            set {
                this.serviceEndpointListField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string duplicateCertPolicy {
            get {
                return this.duplicateCertPolicyField;
            }
            set {
                this.duplicateCertPolicyField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string supersededPolicyOID {
            get {
                return this.supersededPolicyOIDField;
            }
            set {
                this.supersededPolicyOIDField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class AttributeNameValuePairType {
        
        private string attributeNameField;
        
        private AttributeValueType attributeNameValueField;
        
        private AttributeNameValuePropertyType attributeNameValuePropertyField;
        
        /// <remarks/>
        public string attributeName {
            get {
                return this.attributeNameField;
            }
            set {
                this.attributeNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public AttributeValueType attributeNameValue {
            get {
                return this.attributeNameValueField;
            }
            set {
                this.attributeNameValueField = value;
            }
        }
        
        /// <remarks/>
        public AttributeNameValuePropertyType attributeNameValueProperty {
            get {
                return this.attributeNameValuePropertyField;
            }
            set {
                this.attributeNameValuePropertyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public enum CACertPublishNameValuePair {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("$publish_flag")]
        publish_flag,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public enum DeliveryFormat {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X5" +
            "09v3")]
        httpdocsoasisopenorgwss200401oasis200401wssx509tokenprofile10X509v3,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#PK" +
            "CS7")]
        httpdocsoasisopenorgwss200401oasis200401wssx509tokenprofile10PKCS7,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("http://schemas.verisign.com/pkiservices/2009/07/PKCS12")]
        httpschemasverisigncompkiservices200907PKCS12,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class ClientPolicy {
        
        private string clientNameField;
        
        private int maxPinLengthField;
        
        private bool maxPinLengthFieldSpecified;
        
        private int minPinLengthField;
        
        private bool minPinLengthFieldSpecified;
        
        private int noOfBadAttemptsField;
        
        private bool noOfBadAttemptsFieldSpecified;
        
        private int certRenewalOverlapField;
        
        private bool certRenewalOverlapFieldSpecified;
        
        private bool renewExpiredCertsField;
        
        private bool renewExpiredCertsFieldSpecified;
        
        private string certRenewalMsgField;
        
        private bool certCleanUpField;
        
        private bool certCleanUpFieldSpecified;
        
        private PublishCert certPublishField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string clientName {
            get {
                return this.clientNameField;
            }
            set {
                this.clientNameField = value;
            }
        }
        
        /// <remarks/>
        public int maxPinLength {
            get {
                return this.maxPinLengthField;
            }
            set {
                this.maxPinLengthField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool maxPinLengthSpecified {
            get {
                return this.maxPinLengthFieldSpecified;
            }
            set {
                this.maxPinLengthFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public int minPinLength {
            get {
                return this.minPinLengthField;
            }
            set {
                this.minPinLengthField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool minPinLengthSpecified {
            get {
                return this.minPinLengthFieldSpecified;
            }
            set {
                this.minPinLengthFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public int noOfBadAttempts {
            get {
                return this.noOfBadAttemptsField;
            }
            set {
                this.noOfBadAttemptsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool noOfBadAttemptsSpecified {
            get {
                return this.noOfBadAttemptsFieldSpecified;
            }
            set {
                this.noOfBadAttemptsFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public int certRenewalOverlap {
            get {
                return this.certRenewalOverlapField;
            }
            set {
                this.certRenewalOverlapField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool certRenewalOverlapSpecified {
            get {
                return this.certRenewalOverlapFieldSpecified;
            }
            set {
                this.certRenewalOverlapFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public bool renewExpiredCerts {
            get {
                return this.renewExpiredCertsField;
            }
            set {
                this.renewExpiredCertsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool renewExpiredCertsSpecified {
            get {
                return this.renewExpiredCertsFieldSpecified;
            }
            set {
                this.renewExpiredCertsFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public string certRenewalMsg {
            get {
                return this.certRenewalMsgField;
            }
            set {
                this.certRenewalMsgField = value;
            }
        }
        
        /// <remarks/>
        public bool certCleanUp {
            get {
                return this.certCleanUpField;
            }
            set {
                this.certCleanUpField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool certCleanUpSpecified {
            get {
                return this.certCleanUpFieldSpecified;
            }
            set {
                this.certCleanUpFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        public PublishCert certPublish {
            get {
                return this.certPublishField;
            }
            set {
                this.certPublishField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class KeyEscrowPolicyType {
        
        private bool keyEscrowEnabledField;
        
        private bool keyRecoveryDualAdminApprovalRequiredField;
        
        private bool keyRecoveryDualAdminApprovalRequiredFieldSpecified;
        
        private string keyEscrowDeploymentModeField;
        
        private System.Nullable<bool> doKeyRecoveryForAdditionalEnrollRequestField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public bool keyEscrowEnabled {
            get {
                return this.keyEscrowEnabledField;
            }
            set {
                this.keyEscrowEnabledField = value;
            }
        }
        
        /// <remarks/>
        public bool keyRecoveryDualAdminApprovalRequired {
            get {
                return this.keyRecoveryDualAdminApprovalRequiredField;
            }
            set {
                this.keyRecoveryDualAdminApprovalRequiredField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool keyRecoveryDualAdminApprovalRequiredSpecified {
            get {
                return this.keyRecoveryDualAdminApprovalRequiredFieldSpecified;
            }
            set {
                this.keyRecoveryDualAdminApprovalRequiredFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public string keyEscrowDeploymentMode {
            get {
                return this.keyEscrowDeploymentModeField;
            }
            set {
                this.keyEscrowDeploymentModeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<bool> doKeyRecoveryForAdditionalEnrollRequest {
            get {
                return this.doKeyRecoveryForAdditionalEnrollRequestField;
            }
            set {
                this.doKeyRecoveryForAdditionalEnrollRequestField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class PrivateKeyInfo {
        
        private int keysizeField;
        
        private KeyEscrowPolicyType keyEscrowPolicyField;
        
        private bool keyexportableField;
        
        private bool keyprotectField;
        
        private bool keyprotectFieldSpecified;
        
        private System.Nullable<int> algorithmOIDReferenceField;
        
        private string[] cryptoProvidersField;
        
        /// <remarks/>
        public int keysize {
            get {
                return this.keysizeField;
            }
            set {
                this.keysizeField = value;
            }
        }
        
        /// <remarks/>
        public KeyEscrowPolicyType keyEscrowPolicy {
            get {
                return this.keyEscrowPolicyField;
            }
            set {
                this.keyEscrowPolicyField = value;
            }
        }
        
        /// <remarks/>
        public bool keyexportable {
            get {
                return this.keyexportableField;
            }
            set {
                this.keyexportableField = value;
            }
        }
        
        /// <remarks/>
        public bool keyprotect {
            get {
                return this.keyprotectField;
            }
            set {
                this.keyprotectField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool keyprotectSpecified {
            get {
                return this.keyprotectFieldSpecified;
            }
            set {
                this.keyprotectFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<int> algorithmOIDReference {
            get {
                return this.algorithmOIDReferenceField;
            }
            set {
                this.algorithmOIDReferenceField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute("provider", IsNullable=false)]
        public string[] cryptoProviders {
            get {
                return this.cryptoProvidersField;
            }
            set {
                this.cryptoProvidersField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class extensionValueType {
        
        private bool mandatoryField;
        
        private bool mandatoryFieldSpecified;
        
        private string typeField;
        
        private string valueField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool mandatory {
            get {
                return this.mandatoryField;
            }
            set {
                this.mandatoryField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool mandatorySpecified {
            get {
                return this.mandatoryFieldSpecified;
            }
            set {
                this.mandatoryFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string type {
            get {
                return this.typeField;
            }
            set {
                this.typeField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string Value {
            get {
                return this.valueField;
            }
            set {
                this.valueField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class extensionSyntax {
        
        private object[] itemsField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extensionAttributeNameValuePair", typeof(AttributeNameValuePairType))]
        [System.Xml.Serialization.XmlElementAttribute("extensionValue", typeof(extensionValueType))]
        public object[] Items {
            get {
                return this.itemsField;
            }
            set {
                this.itemsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class Extension {
        
        private int extensionOIDReferenceField;
        
        private bool extensionCriticalFlagField;
        
        private extensionSyntax extensionSyntaxField;
        
        /// <remarks/>
        public int extensionOIDReference {
            get {
                return this.extensionOIDReferenceField;
            }
            set {
                this.extensionOIDReferenceField = value;
            }
        }
        
        /// <remarks/>
        public bool extensionCriticalFlag {
            get {
                return this.extensionCriticalFlagField;
            }
            set {
                this.extensionCriticalFlagField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public extensionSyntax extensionSyntax {
            get {
                return this.extensionSyntaxField;
            }
            set {
                this.extensionSyntaxField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class subjectNameAttribute {
        
        private System.Nullable<int> subjectNameAttributecountField;
        
        private AttributeNameValuePairType[] subjectNameAttributeNameValuePairField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<int> subjectNameAttributecount {
            get {
                return this.subjectNameAttributecountField;
            }
            set {
                this.subjectNameAttributecountField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("subjectNameAttributeNameValuePair")]
        public AttributeNameValuePairType[] subjectNameAttributeNameValuePair {
            get {
                return this.subjectNameAttributeNameValuePairField;
            }
            set {
                this.subjectNameAttributeNameValuePairField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class subjectName {
        
        private subjectNameAttribute[] subjectNameAttributeField;
        
        private bool overrideSubjectNameFormatField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("subjectNameAttribute")]
        public subjectNameAttribute[] subjectNameAttribute {
            get {
                return this.subjectNameAttributeField;
            }
            set {
                this.subjectNameAttributeField = value;
            }
        }
        
        /// <remarks/>
        public bool overrideSubjectNameFormat {
            get {
                return this.overrideSubjectNameFormatField;
            }
            set {
                this.overrideSubjectNameFormatField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class OverrideValidity {
        
        private bool overrideFlagField;
        
        private bool overrideFlagFieldSpecified;
        
        private validityNameValuePairNames[] overrideNameValuePairField;
        
        /// <remarks/>
        public bool overrideFlag {
            get {
                return this.overrideFlagField;
            }
            set {
                this.overrideFlagField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool overrideFlagSpecified {
            get {
                return this.overrideFlagFieldSpecified;
            }
            set {
                this.overrideFlagFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("overrideNameValuePair")]
        public validityNameValuePairNames[] overrideNameValuePair {
            get {
                return this.overrideNameValuePairField;
            }
            set {
                this.overrideNameValuePairField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public enum validityNameValuePairNames {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("$overrideValidityDays")]
        overrideValidityDays,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("$overrideValidityStartDate")]
        overrideValidityStartDate,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("$overrideValidityEndDate")]
        overrideValidityEndDate,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class CertificateValidity {
        
        private ulong validityPeriodDaysField;
        
        private ulong renewalPeriodDaysField;
        
        /// <remarks/>
        public ulong validityPeriodDays {
            get {
                return this.validityPeriodDaysField;
            }
            set {
                this.validityPeriodDaysField = value;
            }
        }
        
        /// <remarks/>
        public ulong renewalPeriodDays {
            get {
                return this.renewalPeriodDaysField;
            }
            set {
                this.renewalPeriodDaysField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class Attributes {
        
        private int policySchemaField;
        
        private CertificateValidity certificateValidityField;
        
        private OverrideValidity certificateOverrideValidityField;
        
        private subjectName subjectNameInfoField;
        
        private Extension[] extensionsField;
        
        private PrivateKeyInfo privateKeyAttributesField;
        
        private ClientPolicy clientPolicyField;
        
        private SystemInformation systemInfoField;
        
        private RAPolicy rAPolicyField;
        
        private SeatInfoType seatIdInfoField;
        
        private ApplicationInstructionsType applicationInstructionsField;
        
        private string deploymentModeField;
        
        private string statusField;
        
        private MigrationOIDCollection migrationOIDsField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public int policySchema {
            get {
                return this.policySchemaField;
            }
            set {
                this.policySchemaField = value;
            }
        }
        
        /// <remarks/>
        public CertificateValidity certificateValidity {
            get {
                return this.certificateValidityField;
            }
            set {
                this.certificateValidityField = value;
            }
        }
        
        /// <remarks/>
        public OverrideValidity certificateOverrideValidity {
            get {
                return this.certificateOverrideValidityField;
            }
            set {
                this.certificateOverrideValidityField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public subjectName subjectNameInfo {
            get {
                return this.subjectNameInfoField;
            }
            set {
                this.subjectNameInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public Extension[] extensions {
            get {
                return this.extensionsField;
            }
            set {
                this.extensionsField = value;
            }
        }
        
        /// <remarks/>
        public PrivateKeyInfo privateKeyAttributes {
            get {
                return this.privateKeyAttributesField;
            }
            set {
                this.privateKeyAttributesField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public ClientPolicy clientPolicy {
            get {
                return this.clientPolicyField;
            }
            set {
                this.clientPolicyField = value;
            }
        }
        
        /// <remarks/>
        public SystemInformation systemInfo {
            get {
                return this.systemInfoField;
            }
            set {
                this.systemInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public RAPolicy rAPolicy {
            get {
                return this.rAPolicyField;
            }
            set {
                this.rAPolicyField = value;
            }
        }
        
        /// <remarks/>
        public SeatInfoType seatIdInfo {
            get {
                return this.seatIdInfoField;
            }
            set {
                this.seatIdInfoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public ApplicationInstructionsType applicationInstructions {
            get {
                return this.applicationInstructionsField;
            }
            set {
                this.applicationInstructionsField = value;
            }
        }
        
        /// <remarks/>
        public string deploymentMode {
            get {
                return this.deploymentModeField;
            }
            set {
                this.deploymentModeField = value;
            }
        }
        
        /// <remarks/>
        public string status {
            get {
                return this.statusField;
            }
            set {
                this.statusField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public MigrationOIDCollection migrationOIDs {
            get {
                return this.migrationOIDsField;
            }
            set {
                this.migrationOIDsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class CertificateEnrollmentPolicy {
        
        private int policyOIDReferenceField;
        
        private int[] cAsField;
        
        private Attributes attributesField;
        
        /// <remarks/>
        public int policyOIDReference {
            get {
                return this.policyOIDReferenceField;
            }
            set {
                this.policyOIDReferenceField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("cAReference", IsNullable=false)]
        public int[] cAs {
            get {
                return this.cAsField;
            }
            set {
                this.cAsField = value;
            }
        }
        
        /// <remarks/>
        public Attributes attributes {
            get {
                return this.attributesField;
            }
            set {
                this.attributesField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class Response {
        
        private string policyIDField;
        
        private string policyFriendlyNameField;
        
        private System.Nullable<uint> nextUpdateHoursField;
        
        private bool policiesNotChangedField;
        
        private CertificateEnrollmentPolicy[] policiesField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        public string policyID {
            get {
                return this.policyIDField;
            }
            set {
                this.policyIDField = value;
            }
        }
        
        /// <remarks/>
        public string policyFriendlyName {
            get {
                return this.policyFriendlyNameField;
            }
            set {
                this.policyFriendlyNameField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)]
        public System.Nullable<uint> nextUpdateHours {
            get {
                return this.nextUpdateHoursField;
            }
            set {
                this.nextUpdateHoursField = value;
            }
        }
        
        /// <remarks/>
        public bool policiesNotChanged {
            get {
                return this.policiesNotChangedField;
            }
            set {
                this.policiesNotChangedField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute("policy", IsNullable=false)]
        public CertificateEnrollmentPolicy[] policies {
            get {
                return this.policiesField;
            }
            set {
                this.policiesField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class RequestFilter {
        
        private string[] policyIDsField;
        
        private System.Xml.XmlElement[] anyField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute("oid", IsNullable=false)]
        public string[] policyIDs {
            get {
                return this.policyIDsField;
            }
            set {
                this.policyIDsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any {
            get {
                return this.anyField;
            }
            set {
                this.anyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.verisign.com/pkiservices/2009/07/policy")]
    public partial class getPoliciesResponse {
        
        private string clientTransactionIDField;
        
        private string serverTransactionIDField;
        
        private Response responseField;
        
        private CA[] cAsField;
        
        private OID[] oIDsField;
        
        private byte[] signedEnrollmentPolicyField;
        
        /// <remarks/>
        public string clientTransactionID {
            get {
                return this.clientTransactionIDField;
            }
            set {
                this.clientTransactionIDField = value;
            }
        }
        
        /// <remarks/>
        public string serverTransactionID {
            get {
                return this.serverTransactionIDField;
            }
            set {
                this.serverTransactionIDField = value;
            }
        }
        
        /// <remarks/>
        public Response response {
            get {
                return this.responseField;
            }
            set {
                this.responseField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute("cA", IsNullable=false)]
        public CA[] cAs {
            get {
                return this.cAsField;
            }
            set {
                this.cAsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)]
        [System.Xml.Serialization.XmlArrayItemAttribute("oID", IsNullable=false)]
        public OID[] oIDs {
            get {
                return this.oIDsField;
            }
            set {
                this.oIDsField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
        public byte[] signedEnrollmentPolicy {
            get {
                return this.signedEnrollmentPolicyField;
            }
            set {
                this.signedEnrollmentPolicyField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.33440")]
    public delegate void requestPoliciesCompletedEventHandler(object sender, requestPoliciesCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.33440")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class requestPoliciesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal requestPoliciesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public getPoliciesResponse Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((getPoliciesResponse)(this.results[0]));
            }
        }
    }
}

#pragma warning restore 1591