//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.34209
//
//     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.34209.
// 
#pragma warning disable 1591

namespace AgentWebservicesClient.AgentEmailWS {
    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.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name="AgentEmailWSSoap", Namespace="http://nortel.com/CCMMAgentWebservices/")]
    public partial class AgentEmailWS : System.Web.Services.Protocols.SoapHttpClientProtocol {
        
        private System.Threading.SendOrPostCallback ReplyOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyAllOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyAllHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback ForwardOperationCompleted;
        
        private System.Threading.SendOrPostCallback ForwardHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback OriginateMailOperationCompleted;
        
        private System.Threading.SendOrPostCallback OriginateMailHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback OriginateMailWithAttachmentsOperationCompleted;
        
        private System.Threading.SendOrPostCallback OriginateMailWithAttachmentsHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyWithAttachmentsOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyWithAttachmentsHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyAllWithAttachmentsOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReplyAllWithAttachmentsHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback ForwardWithAttachmentsOperationCompleted;
        
        private System.Threading.SendOrPostCallback ForwardWithAttachmentsHtmlOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetAllSkillSetsOperationCompleted;
        
        private bool useDefaultCredentialsSetExplicitly;
        
        /// <remarks/>
        public AgentEmailWS() {
            this.Url = global::AgentWebservicesClient.Properties.Settings.Default.AgentWebservicesClient_AgentEmailWS_AgentEmailWS;
            if ((this.IsLocalFileSystemWebService(this.Url) == true)) {
                this.UseDefaultCredentials = true;
                this.useDefaultCredentialsSetExplicitly = false;
            }
            else {
                this.useDefaultCredentialsSetExplicitly = true;
            }
        }
        
        public new string Url {
            get {
                return base.Url;
            }
            set {
                if ((((this.IsLocalFileSystemWebService(base.Url) == true) 
                            && (this.useDefaultCredentialsSetExplicitly == false)) 
                            && (this.IsLocalFileSystemWebService(value) == false))) {
                    base.UseDefaultCredentials = false;
                }
                base.Url = value;
            }
        }
        
        public new bool UseDefaultCredentials {
            get {
                return base.UseDefaultCredentials;
            }
            set {
                base.UseDefaultCredentials = value;
                this.useDefaultCredentialsSetExplicitly = true;
            }
        }
        
        /// <remarks/>
        public event ReplyCompletedEventHandler ReplyCompleted;
        
        /// <remarks/>
        public event ReplyHtmlCompletedEventHandler ReplyHtmlCompleted;
        
        /// <remarks/>
        public event ReplyAllCompletedEventHandler ReplyAllCompleted;
        
        /// <remarks/>
        public event ReplyAllHtmlCompletedEventHandler ReplyAllHtmlCompleted;
        
        /// <remarks/>
        public event ForwardCompletedEventHandler ForwardCompleted;
        
        /// <remarks/>
        public event ForwardHtmlCompletedEventHandler ForwardHtmlCompleted;
        
        /// <remarks/>
        public event OriginateMailCompletedEventHandler OriginateMailCompleted;
        
        /// <remarks/>
        public event OriginateMailHtmlCompletedEventHandler OriginateMailHtmlCompleted;
        
        /// <remarks/>
        public event OriginateMailWithAttachmentsCompletedEventHandler OriginateMailWithAttachmentsCompleted;
        
        /// <remarks/>
        public event OriginateMailWithAttachmentsHtmlCompletedEventHandler OriginateMailWithAttachmentsHtmlCompleted;
        
        /// <remarks/>
        public event ReplyWithAttachmentsCompletedEventHandler ReplyWithAttachmentsCompleted;
        
        /// <remarks/>
        public event ReplyWithAttachmentsHtmlCompletedEventHandler ReplyWithAttachmentsHtmlCompleted;
        
        /// <remarks/>
        public event ReplyAllWithAttachmentsCompletedEventHandler ReplyAllWithAttachmentsCompleted;
        
        /// <remarks/>
        public event ReplyAllWithAttachmentsHtmlCompletedEventHandler ReplyAllWithAttachmentsHtmlCompleted;
        
        /// <remarks/>
        public event ForwardWithAttachmentsCompletedEventHandler ForwardWithAttachmentsCompleted;
        
        /// <remarks/>
        public event ForwardWithAttachmentsHtmlCompletedEventHandler ForwardWithAttachmentsHtmlCompleted;
        
        /// <remarks/>
        public event GetAllSkillSetsCompletedEventHandler GetAllSkillSetsCompleted;
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/Reply", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long Reply(string id, string subject, string body, string sessionKey) {
            object[] results = this.Invoke("Reply", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyAsync(string id, string subject, string body, string sessionKey) {
            this.ReplyAsync(id, subject, body, sessionKey, null);
        }
        
        /// <remarks/>
        public void ReplyAsync(string id, string subject, string body, string sessionKey, object userState) {
            if ((this.ReplyOperationCompleted == null)) {
                this.ReplyOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyOperationCompleted);
            }
            this.InvokeAsync("Reply", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey}, this.ReplyOperationCompleted, userState);
        }
        
        private void OnReplyOperationCompleted(object arg) {
            if ((this.ReplyCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyCompleted(this, new ReplyCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyHtml(string id, string subject, string body, string sessionKey) {
            object[] results = this.Invoke("ReplyHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyHtmlAsync(string id, string subject, string body, string sessionKey) {
            this.ReplyHtmlAsync(id, subject, body, sessionKey, null);
        }
        
        /// <remarks/>
        public void ReplyHtmlAsync(string id, string subject, string body, string sessionKey, object userState) {
            if ((this.ReplyHtmlOperationCompleted == null)) {
                this.ReplyHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyHtmlOperationCompleted);
            }
            this.InvokeAsync("ReplyHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey}, this.ReplyHtmlOperationCompleted, userState);
        }
        
        private void OnReplyHtmlOperationCompleted(object arg) {
            if ((this.ReplyHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyHtmlCompleted(this, new ReplyHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyAll", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyAll(string id, string subject, string body, string sessionKey) {
            object[] results = this.Invoke("ReplyAll", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyAllAsync(string id, string subject, string body, string sessionKey) {
            this.ReplyAllAsync(id, subject, body, sessionKey, null);
        }
        
        /// <remarks/>
        public void ReplyAllAsync(string id, string subject, string body, string sessionKey, object userState) {
            if ((this.ReplyAllOperationCompleted == null)) {
                this.ReplyAllOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyAllOperationCompleted);
            }
            this.InvokeAsync("ReplyAll", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey}, this.ReplyAllOperationCompleted, userState);
        }
        
        private void OnReplyAllOperationCompleted(object arg) {
            if ((this.ReplyAllCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyAllCompleted(this, new ReplyAllCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyAllHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyAllHtml(string id, string subject, string body, string sessionKey) {
            object[] results = this.Invoke("ReplyAllHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyAllHtmlAsync(string id, string subject, string body, string sessionKey) {
            this.ReplyAllHtmlAsync(id, subject, body, sessionKey, null);
        }
        
        /// <remarks/>
        public void ReplyAllHtmlAsync(string id, string subject, string body, string sessionKey, object userState) {
            if ((this.ReplyAllHtmlOperationCompleted == null)) {
                this.ReplyAllHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyAllHtmlOperationCompleted);
            }
            this.InvokeAsync("ReplyAllHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey}, this.ReplyAllHtmlOperationCompleted, userState);
        }
        
        private void OnReplyAllHtmlOperationCompleted(object arg) {
            if ((this.ReplyAllHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyAllHtmlCompleted(this, new ReplyAllHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/Forward", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long Forward(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey) {
            object[] results = this.Invoke("Forward", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ForwardAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey) {
            this.ForwardAsync(id, subject, body, mailTo, mailCC, mailBCC, sessionKey, null);
        }
        
        /// <remarks/>
        public void ForwardAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, object userState) {
            if ((this.ForwardOperationCompleted == null)) {
                this.ForwardOperationCompleted = new System.Threading.SendOrPostCallback(this.OnForwardOperationCompleted);
            }
            this.InvokeAsync("Forward", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey}, this.ForwardOperationCompleted, userState);
        }
        
        private void OnForwardOperationCompleted(object arg) {
            if ((this.ForwardCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ForwardCompleted(this, new ForwardCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ForwardHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ForwardHtml(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey) {
            object[] results = this.Invoke("ForwardHtml", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ForwardHtmlAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey) {
            this.ForwardHtmlAsync(id, subject, body, mailTo, mailCC, mailBCC, sessionKey, null);
        }
        
        /// <remarks/>
        public void ForwardHtmlAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, object userState) {
            if ((this.ForwardHtmlOperationCompleted == null)) {
                this.ForwardHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnForwardHtmlOperationCompleted);
            }
            this.InvokeAsync("ForwardHtml", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey}, this.ForwardHtmlOperationCompleted, userState);
        }
        
        private void OnForwardHtmlOperationCompleted(object arg) {
            if ((this.ForwardHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ForwardHtmlCompleted(this, new ForwardHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/OriginateMail", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] OriginateMail(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey) {
            object[] results = this.Invoke("OriginateMail", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey});
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public void OriginateMailAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey) {
            this.OriginateMailAsync(subject, body, mailTo, mailCC, mailBCC, mailFrom, charSet, username, sSkillsetID, sClosedReasonCode, sessionKey, null);
        }
        
        /// <remarks/>
        public void OriginateMailAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, object userState) {
            if ((this.OriginateMailOperationCompleted == null)) {
                this.OriginateMailOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOriginateMailOperationCompleted);
            }
            this.InvokeAsync("OriginateMail", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey}, this.OriginateMailOperationCompleted, userState);
        }
        
        private void OnOriginateMailOperationCompleted(object arg) {
            if ((this.OriginateMailCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OriginateMailCompleted(this, new OriginateMailCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/OriginateMailHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] OriginateMailHtml(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey) {
            object[] results = this.Invoke("OriginateMailHtml", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey});
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public void OriginateMailHtmlAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey) {
            this.OriginateMailHtmlAsync(subject, body, mailTo, mailCC, mailBCC, mailFrom, charSet, username, sSkillsetID, sClosedReasonCode, sessionKey, null);
        }
        
        /// <remarks/>
        public void OriginateMailHtmlAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, object userState) {
            if ((this.OriginateMailHtmlOperationCompleted == null)) {
                this.OriginateMailHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOriginateMailHtmlOperationCompleted);
            }
            this.InvokeAsync("OriginateMailHtml", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey}, this.OriginateMailHtmlOperationCompleted, userState);
        }
        
        private void OnOriginateMailHtmlOperationCompleted(object arg) {
            if ((this.OriginateMailHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OriginateMailHtmlCompleted(this, new OriginateMailHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/OriginateMailWithAttachments", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] OriginateMailWithAttachments(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("OriginateMailWithAttachments", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey,
                        attachments});
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public void OriginateMailWithAttachmentsAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, AWAttachment[] attachments) {
            this.OriginateMailWithAttachmentsAsync(subject, body, mailTo, mailCC, mailBCC, mailFrom, charSet, username, sSkillsetID, sClosedReasonCode, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void OriginateMailWithAttachmentsAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.OriginateMailWithAttachmentsOperationCompleted == null)) {
                this.OriginateMailWithAttachmentsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOriginateMailWithAttachmentsOperationCompleted);
            }
            this.InvokeAsync("OriginateMailWithAttachments", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey,
                        attachments}, this.OriginateMailWithAttachmentsOperationCompleted, userState);
        }
        
        private void OnOriginateMailWithAttachmentsOperationCompleted(object arg) {
            if ((this.OriginateMailWithAttachmentsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OriginateMailWithAttachmentsCompleted(this, new OriginateMailWithAttachmentsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/OriginateMailWithAttachmentsHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] OriginateMailWithAttachmentsHtml(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("OriginateMailWithAttachmentsHtml", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey,
                        attachments});
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public void OriginateMailWithAttachmentsHtmlAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, AWAttachment[] attachments) {
            this.OriginateMailWithAttachmentsHtmlAsync(subject, body, mailTo, mailCC, mailBCC, mailFrom, charSet, username, sSkillsetID, sClosedReasonCode, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void OriginateMailWithAttachmentsHtmlAsync(string subject, string body, string mailTo, string mailCC, string mailBCC, string mailFrom, string charSet, string username, string sSkillsetID, string sClosedReasonCode, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.OriginateMailWithAttachmentsHtmlOperationCompleted == null)) {
                this.OriginateMailWithAttachmentsHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOriginateMailWithAttachmentsHtmlOperationCompleted);
            }
            this.InvokeAsync("OriginateMailWithAttachmentsHtml", new object[] {
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        mailFrom,
                        charSet,
                        username,
                        sSkillsetID,
                        sClosedReasonCode,
                        sessionKey,
                        attachments}, this.OriginateMailWithAttachmentsHtmlOperationCompleted, userState);
        }
        
        private void OnOriginateMailWithAttachmentsHtmlOperationCompleted(object arg) {
            if ((this.OriginateMailWithAttachmentsHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OriginateMailWithAttachmentsHtmlCompleted(this, new OriginateMailWithAttachmentsHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyWithAttachments", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyWithAttachments(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("ReplyWithAttachments", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyWithAttachmentsAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            this.ReplyWithAttachmentsAsync(id, subject, body, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void ReplyWithAttachmentsAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.ReplyWithAttachmentsOperationCompleted == null)) {
                this.ReplyWithAttachmentsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyWithAttachmentsOperationCompleted);
            }
            this.InvokeAsync("ReplyWithAttachments", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments}, this.ReplyWithAttachmentsOperationCompleted, userState);
        }
        
        private void OnReplyWithAttachmentsOperationCompleted(object arg) {
            if ((this.ReplyWithAttachmentsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyWithAttachmentsCompleted(this, new ReplyWithAttachmentsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyWithAttachmentsHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyWithAttachmentsHtml(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("ReplyWithAttachmentsHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyWithAttachmentsHtmlAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            this.ReplyWithAttachmentsHtmlAsync(id, subject, body, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void ReplyWithAttachmentsHtmlAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.ReplyWithAttachmentsHtmlOperationCompleted == null)) {
                this.ReplyWithAttachmentsHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyWithAttachmentsHtmlOperationCompleted);
            }
            this.InvokeAsync("ReplyWithAttachmentsHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments}, this.ReplyWithAttachmentsHtmlOperationCompleted, userState);
        }
        
        private void OnReplyWithAttachmentsHtmlOperationCompleted(object arg) {
            if ((this.ReplyWithAttachmentsHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyWithAttachmentsHtmlCompleted(this, new ReplyWithAttachmentsHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyAllWithAttachments", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyAllWithAttachments(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("ReplyAllWithAttachments", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyAllWithAttachmentsAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            this.ReplyAllWithAttachmentsAsync(id, subject, body, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void ReplyAllWithAttachmentsAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.ReplyAllWithAttachmentsOperationCompleted == null)) {
                this.ReplyAllWithAttachmentsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyAllWithAttachmentsOperationCompleted);
            }
            this.InvokeAsync("ReplyAllWithAttachments", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments}, this.ReplyAllWithAttachmentsOperationCompleted, userState);
        }
        
        private void OnReplyAllWithAttachmentsOperationCompleted(object arg) {
            if ((this.ReplyAllWithAttachmentsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyAllWithAttachmentsCompleted(this, new ReplyAllWithAttachmentsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ReplyAllWithAttachmentsHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ReplyAllWithAttachmentsHtml(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("ReplyAllWithAttachmentsHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ReplyAllWithAttachmentsHtmlAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments) {
            this.ReplyAllWithAttachmentsHtmlAsync(id, subject, body, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void ReplyAllWithAttachmentsHtmlAsync(string id, string subject, string body, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.ReplyAllWithAttachmentsHtmlOperationCompleted == null)) {
                this.ReplyAllWithAttachmentsHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReplyAllWithAttachmentsHtmlOperationCompleted);
            }
            this.InvokeAsync("ReplyAllWithAttachmentsHtml", new object[] {
                        id,
                        subject,
                        body,
                        sessionKey,
                        attachments}, this.ReplyAllWithAttachmentsHtmlOperationCompleted, userState);
        }
        
        private void OnReplyAllWithAttachmentsHtmlOperationCompleted(object arg) {
            if ((this.ReplyAllWithAttachmentsHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReplyAllWithAttachmentsHtmlCompleted(this, new ReplyAllWithAttachmentsHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ForwardWithAttachments", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ForwardWithAttachments(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("ForwardWithAttachments", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey,
                        attachments});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ForwardWithAttachmentsAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, AWAttachment[] attachments) {
            this.ForwardWithAttachmentsAsync(id, subject, body, mailTo, mailCC, mailBCC, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void ForwardWithAttachmentsAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.ForwardWithAttachmentsOperationCompleted == null)) {
                this.ForwardWithAttachmentsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnForwardWithAttachmentsOperationCompleted);
            }
            this.InvokeAsync("ForwardWithAttachments", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey,
                        attachments}, this.ForwardWithAttachmentsOperationCompleted, userState);
        }
        
        private void OnForwardWithAttachmentsOperationCompleted(object arg) {
            if ((this.ForwardWithAttachmentsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ForwardWithAttachmentsCompleted(this, new ForwardWithAttachmentsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/ForwardWithAttachmentsHtml", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public long ForwardWithAttachmentsHtml(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, AWAttachment[] attachments) {
            object[] results = this.Invoke("ForwardWithAttachmentsHtml", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey,
                        attachments});
            return ((long)(results[0]));
        }
        
        /// <remarks/>
        public void ForwardWithAttachmentsHtmlAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, AWAttachment[] attachments) {
            this.ForwardWithAttachmentsHtmlAsync(id, subject, body, mailTo, mailCC, mailBCC, sessionKey, attachments, null);
        }
        
        /// <remarks/>
        public void ForwardWithAttachmentsHtmlAsync(string id, string subject, string body, string mailTo, string mailCC, string mailBCC, string sessionKey, AWAttachment[] attachments, object userState) {
            if ((this.ForwardWithAttachmentsHtmlOperationCompleted == null)) {
                this.ForwardWithAttachmentsHtmlOperationCompleted = new System.Threading.SendOrPostCallback(this.OnForwardWithAttachmentsHtmlOperationCompleted);
            }
            this.InvokeAsync("ForwardWithAttachmentsHtml", new object[] {
                        id,
                        subject,
                        body,
                        mailTo,
                        mailCC,
                        mailBCC,
                        sessionKey,
                        attachments}, this.ForwardWithAttachmentsHtmlOperationCompleted, userState);
        }
        
        private void OnForwardWithAttachmentsHtmlOperationCompleted(object arg) {
            if ((this.ForwardWithAttachmentsHtmlCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ForwardWithAttachmentsHtmlCompleted(this, new ForwardWithAttachmentsHtmlCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://nortel.com/CCMMAgentWebservices/GetAllSkillSets", RequestNamespace="http://nortel.com/CCMMAgentWebservices/", ResponseNamespace="http://nortel.com/CCMMAgentWebservices/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public AWSkillset[] GetAllSkillSets(string sessionKey) {
            object[] results = this.Invoke("GetAllSkillSets", new object[] {
                        sessionKey});
            return ((AWSkillset[])(results[0]));
        }
        
        /// <remarks/>
        public void GetAllSkillSetsAsync(string sessionKey) {
            this.GetAllSkillSetsAsync(sessionKey, null);
        }
        
        /// <remarks/>
        public void GetAllSkillSetsAsync(string sessionKey, object userState) {
            if ((this.GetAllSkillSetsOperationCompleted == null)) {
                this.GetAllSkillSetsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAllSkillSetsOperationCompleted);
            }
            this.InvokeAsync("GetAllSkillSets", new object[] {
                        sessionKey}, this.GetAllSkillSetsOperationCompleted, userState);
        }
        
        private void OnGetAllSkillSetsOperationCompleted(object arg) {
            if ((this.GetAllSkillSetsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetAllSkillSetsCompleted(this, new GetAllSkillSetsCompletedEventArgs(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.34234")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://datatypes.agentwebservices.ccmm.applications.nortel.com")]
    public partial class AWAttachment {
        
        private long idField;
        
        private bool idFieldSpecified;
        
        private bool idSpecified1Field;
        
        private string displayFileNameField;
        
        private string internalFileNameField;
        
        private AWCodeMapping directionField;
        
        private byte[] fileContentsField;
        
        /// <remarks/>
        public long id {
            get {
                return this.idField;
            }
            set {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool idSpecified {
            get {
                return this.idFieldSpecified;
            }
            set {
                this.idFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("idSpecified")]
        public bool idSpecified1 {
            get {
                return this.idSpecified1Field;
            }
            set {
                this.idSpecified1Field = value;
            }
        }
        
        /// <remarks/>
        public string displayFileName {
            get {
                return this.displayFileNameField;
            }
            set {
                this.displayFileNameField = value;
            }
        }
        
        /// <remarks/>
        public string internalFileName {
            get {
                return this.internalFileNameField;
            }
            set {
                this.internalFileNameField = value;
            }
        }
        
        /// <remarks/>
        public AWCodeMapping direction {
            get {
                return this.directionField;
            }
            set {
                this.directionField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
        public byte[] fileContents {
            get {
                return this.fileContentsField;
            }
            set {
                this.fileContentsField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34234")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://datatypes.agentwebservices.ccmm.applications.nortel.com")]
    public partial class AWCodeMapping {
        
        private long idField;
        
        private bool idFieldSpecified;
        
        private bool idSpecified1Field;
        
        private string fieldNameField;
        
        private long numericValueField;
        
        private bool numericValueFieldSpecified;
        
        private bool numericValueSpecified1Field;
        
        private string textValueField;
        
        /// <remarks/>
        public long id {
            get {
                return this.idField;
            }
            set {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool idSpecified {
            get {
                return this.idFieldSpecified;
            }
            set {
                this.idFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("idSpecified")]
        public bool idSpecified1 {
            get {
                return this.idSpecified1Field;
            }
            set {
                this.idSpecified1Field = value;
            }
        }
        
        /// <remarks/>
        public string fieldName {
            get {
                return this.fieldNameField;
            }
            set {
                this.fieldNameField = value;
            }
        }
        
        /// <remarks/>
        public long numericValue {
            get {
                return this.numericValueField;
            }
            set {
                this.numericValueField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool numericValueSpecified {
            get {
                return this.numericValueFieldSpecified;
            }
            set {
                this.numericValueFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("numericValueSpecified")]
        public bool numericValueSpecified1 {
            get {
                return this.numericValueSpecified1Field;
            }
            set {
                this.numericValueSpecified1Field = value;
            }
        }
        
        /// <remarks/>
        public string textValue {
            get {
                return this.textValueField;
            }
            set {
                this.textValueField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34234")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://datatypes.agentwebservices.ccmm.applications.nortel.com")]
    public partial class AWSkillset {
        
        private long idField;
        
        private string nameField;
        
        /// <remarks/>
        public long id {
            get {
                return this.idField;
            }
            set {
                this.idField = value;
            }
        }
        
        /// <remarks/>
        public string name {
            get {
                return this.nameField;
            }
            set {
                this.nameField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyCompletedEventHandler(object sender, ReplyCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyHtmlCompletedEventHandler(object sender, ReplyHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyAllCompletedEventHandler(object sender, ReplyAllCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyAllCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyAllCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyAllHtmlCompletedEventHandler(object sender, ReplyAllHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyAllHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyAllHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ForwardCompletedEventHandler(object sender, ForwardCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ForwardCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ForwardCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ForwardHtmlCompletedEventHandler(object sender, ForwardHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ForwardHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ForwardHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void OriginateMailCompletedEventHandler(object sender, OriginateMailCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OriginateMailCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OriginateMailCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void OriginateMailHtmlCompletedEventHandler(object sender, OriginateMailHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OriginateMailHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OriginateMailHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void OriginateMailWithAttachmentsCompletedEventHandler(object sender, OriginateMailWithAttachmentsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OriginateMailWithAttachmentsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OriginateMailWithAttachmentsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void OriginateMailWithAttachmentsHtmlCompletedEventHandler(object sender, OriginateMailWithAttachmentsHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OriginateMailWithAttachmentsHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OriginateMailWithAttachmentsHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyWithAttachmentsCompletedEventHandler(object sender, ReplyWithAttachmentsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyWithAttachmentsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyWithAttachmentsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyWithAttachmentsHtmlCompletedEventHandler(object sender, ReplyWithAttachmentsHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyWithAttachmentsHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyWithAttachmentsHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyAllWithAttachmentsCompletedEventHandler(object sender, ReplyAllWithAttachmentsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyAllWithAttachmentsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyAllWithAttachmentsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ReplyAllWithAttachmentsHtmlCompletedEventHandler(object sender, ReplyAllWithAttachmentsHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReplyAllWithAttachmentsHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReplyAllWithAttachmentsHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ForwardWithAttachmentsCompletedEventHandler(object sender, ForwardWithAttachmentsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ForwardWithAttachmentsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ForwardWithAttachmentsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void ForwardWithAttachmentsHtmlCompletedEventHandler(object sender, ForwardWithAttachmentsHtmlCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ForwardWithAttachmentsHtmlCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ForwardWithAttachmentsHtmlCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public long Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((long)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    public delegate void GetAllSkillSetsCompletedEventHandler(object sender, GetAllSkillSetsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.0.30319.34209")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetAllSkillSetsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetAllSkillSetsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public AWSkillset[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((AWSkillset[])(this.results[0]));
            }
        }
    }
}

#pragma warning restore 1591