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

namespace SwitchMeasurementInstrumentsLib.Pickering60LxiSoap {
    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.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name="PiCards", Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public partial class PiCards : System.Web.Services.Protocols.SoapHttpClientProtocol {
        
        private LocationHeader cardLocationField;
        
        private System.Threading.SendOrPostCallback CardIdOperationCompleted;
        
        private System.Threading.SendOrPostCallback ClosureLimitOperationCompleted;
        
        private System.Threading.SendOrPostCallback CardOpsCountOperationCompleted;
        
        private System.Threading.SendOrPostCallback CountFreeCardsOperationCompleted;
        
        private System.Threading.SendOrPostCallback DiagnosticOperationCompleted;
        
        private System.Threading.SendOrPostCallback EnumerateSubsOperationCompleted;
        
        private System.Threading.SendOrPostCallback FindFreeCardsOperationCompleted;
        
        private System.Threading.SendOrPostCallback SettleTimeOperationCompleted;
        
        private System.Threading.SendOrPostCallback StatusOperationCompleted;
        
        private System.Threading.SendOrPostCallback SubAttributeOperationCompleted;
        
        private System.Threading.SendOrPostCallback SubInfoOperationCompleted;
        
        private System.Threading.SendOrPostCallback SubStatusOperationCompleted;
        
        private System.Threading.SendOrPostCallback SubTypeOperationCompleted;
        
        private System.Threading.SendOrPostCallback VersionOperationCompleted;
        
        private System.Threading.SendOrPostCallback ClearAllOperationCompleted;
        
        private System.Threading.SendOrPostCallback ClearCardOperationCompleted;
        
        private System.Threading.SendOrPostCallback ClearSubOperationCompleted;
        
        private System.Threading.SendOrPostCallback OpBitOperationCompleted;
        
        private System.Threading.SendOrPostCallback ViewBitOperationCompleted;
        
        private System.Threading.SendOrPostCallback ViewSubOperationCompleted;
        
        private System.Threading.SendOrPostCallback WriteSubOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReadBitOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReadSubOperationCompleted;
        
        private System.Threading.SendOrPostCallback ClearMaskOperationCompleted;
        
        private System.Threading.SendOrPostCallback MaskBitOperationCompleted;
        
        private System.Threading.SendOrPostCallback MaskCrosspointOperationCompleted;
        
        private System.Threading.SendOrPostCallback OpCrosspointOperationCompleted;
        
        private System.Threading.SendOrPostCallback OpSwitchOperationCompleted;
        
        private System.Threading.SendOrPostCallback ViewCrosspointOperationCompleted;
        
        private System.Threading.SendOrPostCallback ViewMaskOperationCompleted;
        
        private System.Threading.SendOrPostCallback ViewMaskBitOperationCompleted;
        
        private System.Threading.SendOrPostCallback ViewMaskCrosspointOperationCompleted;
        
        private System.Threading.SendOrPostCallback WriteMaskOperationCompleted;
        
        private System.Threading.SendOrPostCallback PsuEnableOperationCompleted;
        
        private System.Threading.SendOrPostCallback PsuGetVoltageOperationCompleted;
        
        private System.Threading.SendOrPostCallback PsuSetVoltageOperationCompleted;
        
        private System.Threading.SendOrPostCallback PsuInfoOperationCompleted;
        
        private System.Threading.SendOrPostCallback PsuTypeOperationCompleted;
        
        private System.Threading.SendOrPostCallback AttenGetAttenuationOperationCompleted;
        
        private System.Threading.SendOrPostCallback AttenInfoOperationCompleted;
        
        private System.Threading.SendOrPostCallback AttenPadValueOperationCompleted;
        
        private System.Threading.SendOrPostCallback AttenSetAttenuationOperationCompleted;
        
        private System.Threading.SendOrPostCallback AttenTypeOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReadCalOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReadCalDateOperationCompleted;
        
        private System.Threading.SendOrPostCallback ReadCalFPOperationCompleted;
        
        private System.Threading.SendOrPostCallback SetCalPointOperationCompleted;
        
        private System.Threading.SendOrPostCallback WriteCalOperationCompleted;
        
        private System.Threading.SendOrPostCallback WriteCalDateOperationCompleted;
        
        private System.Threading.SendOrPostCallback WriteCalFPOperationCompleted;
        
        private System.Threading.SendOrPostCallback ResGetResistanceOperationCompleted;
        
        private System.Threading.SendOrPostCallback ResSetResistanceOperationCompleted;
        
        private System.Threading.SendOrPostCallback ResInfoOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattSetVoltageOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattGetVoltageOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattSetCurrentOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattGetCurrentOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattSetEnableOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattGetEnableOperationCompleted;
        
        private System.Threading.SendOrPostCallback BattReadInterlockStateOperationCompleted;
        
        private System.Threading.SendOrPostCallback VsourceSetRangeOperationCompleted;
        
        private System.Threading.SendOrPostCallback VsourceGetRangeOperationCompleted;
        
        private System.Threading.SendOrPostCallback VsourceSetVoltageOperationCompleted;
        
        private System.Threading.SendOrPostCallback VsourceGetVoltageOperationCompleted;
        
        private System.Threading.SendOrPostCallback VsourceSetEnableOperationCompleted;
        
        private System.Threading.SendOrPostCallback VsourceGetEnableOperationCompleted;
        
        private System.Threading.SendOrPostCallback ErrorCodeToMessageOperationCompleted;
        
        private bool useDefaultCredentialsSetExplicitly;
        
        /// <remarks/>
        public PiCards() {
            this.Url = global::Raytheon.Instruments.Properties.Settings.Default.SwitchMeasurementInstruments_Pickering60LxiSoap_PiCards;
            if ((this.IsLocalFileSystemWebService(this.Url) == true)) {
                this.UseDefaultCredentials = true;
                this.useDefaultCredentialsSetExplicitly = false;
            }
            else {
                this.useDefaultCredentialsSetExplicitly = true;
            }
        }
        
        public LocationHeader CardLocation {
            get {
                return this.cardLocationField;
            }
            set {
                this.cardLocationField = value;
            }
        }
        
        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 CardIdCompletedEventHandler CardIdCompleted;
        
        /// <remarks/>
        public event ClosureLimitCompletedEventHandler ClosureLimitCompleted;
        
        /// <remarks/>
        public event CardOpsCountCompletedEventHandler CardOpsCountCompleted;
        
        /// <remarks/>
        public event CountFreeCardsCompletedEventHandler CountFreeCardsCompleted;
        
        /// <remarks/>
        public event DiagnosticCompletedEventHandler DiagnosticCompleted;
        
        /// <remarks/>
        public event EnumerateSubsCompletedEventHandler EnumerateSubsCompleted;
        
        /// <remarks/>
        public event FindFreeCardsCompletedEventHandler FindFreeCardsCompleted;
        
        /// <remarks/>
        public event SettleTimeCompletedEventHandler SettleTimeCompleted;
        
        /// <remarks/>
        public event StatusCompletedEventHandler StatusCompleted;
        
        /// <remarks/>
        public event SubAttributeCompletedEventHandler SubAttributeCompleted;
        
        /// <remarks/>
        public event SubInfoCompletedEventHandler SubInfoCompleted;
        
        /// <remarks/>
        public event SubStatusCompletedEventHandler SubStatusCompleted;
        
        /// <remarks/>
        public event SubTypeCompletedEventHandler SubTypeCompleted;
        
        /// <remarks/>
        public event VersionCompletedEventHandler VersionCompleted;
        
        /// <remarks/>
        public event ClearAllCompletedEventHandler ClearAllCompleted;
        
        /// <remarks/>
        public event ClearCardCompletedEventHandler ClearCardCompleted;
        
        /// <remarks/>
        public event ClearSubCompletedEventHandler ClearSubCompleted;
        
        /// <remarks/>
        public event OpBitCompletedEventHandler OpBitCompleted;
        
        /// <remarks/>
        public event ViewBitCompletedEventHandler ViewBitCompleted;
        
        /// <remarks/>
        public event ViewSubCompletedEventHandler ViewSubCompleted;
        
        /// <remarks/>
        public event WriteSubCompletedEventHandler WriteSubCompleted;
        
        /// <remarks/>
        public event ReadBitCompletedEventHandler ReadBitCompleted;
        
        /// <remarks/>
        public event ReadSubCompletedEventHandler ReadSubCompleted;
        
        /// <remarks/>
        public event ClearMaskCompletedEventHandler ClearMaskCompleted;
        
        /// <remarks/>
        public event MaskBitCompletedEventHandler MaskBitCompleted;
        
        /// <remarks/>
        public event MaskCrosspointCompletedEventHandler MaskCrosspointCompleted;
        
        /// <remarks/>
        public event OpCrosspointCompletedEventHandler OpCrosspointCompleted;
        
        /// <remarks/>
        public event OpSwitchCompletedEventHandler OpSwitchCompleted;
        
        /// <remarks/>
        public event ViewCrosspointCompletedEventHandler ViewCrosspointCompleted;
        
        /// <remarks/>
        public event ViewMaskCompletedEventHandler ViewMaskCompleted;
        
        /// <remarks/>
        public event ViewMaskBitCompletedEventHandler ViewMaskBitCompleted;
        
        /// <remarks/>
        public event ViewMaskCrosspointCompletedEventHandler ViewMaskCrosspointCompleted;
        
        /// <remarks/>
        public event WriteMaskCompletedEventHandler WriteMaskCompleted;
        
        /// <remarks/>
        public event PsuEnableCompletedEventHandler PsuEnableCompleted;
        
        /// <remarks/>
        public event PsuGetVoltageCompletedEventHandler PsuGetVoltageCompleted;
        
        /// <remarks/>
        public event PsuSetVoltageCompletedEventHandler PsuSetVoltageCompleted;
        
        /// <remarks/>
        public event PsuInfoCompletedEventHandler PsuInfoCompleted;
        
        /// <remarks/>
        public event PsuTypeCompletedEventHandler PsuTypeCompleted;
        
        /// <remarks/>
        public event AttenGetAttenuationCompletedEventHandler AttenGetAttenuationCompleted;
        
        /// <remarks/>
        public event AttenInfoCompletedEventHandler AttenInfoCompleted;
        
        /// <remarks/>
        public event AttenPadValueCompletedEventHandler AttenPadValueCompleted;
        
        /// <remarks/>
        public event AttenSetAttenuationCompletedEventHandler AttenSetAttenuationCompleted;
        
        /// <remarks/>
        public event AttenTypeCompletedEventHandler AttenTypeCompleted;
        
        /// <remarks/>
        public event ReadCalCompletedEventHandler ReadCalCompleted;
        
        /// <remarks/>
        public event ReadCalDateCompletedEventHandler ReadCalDateCompleted;
        
        /// <remarks/>
        public event ReadCalFPCompletedEventHandler ReadCalFPCompleted;
        
        /// <remarks/>
        public event SetCalPointCompletedEventHandler SetCalPointCompleted;
        
        /// <remarks/>
        public event WriteCalCompletedEventHandler WriteCalCompleted;
        
        /// <remarks/>
        public event WriteCalDateCompletedEventHandler WriteCalDateCompleted;
        
        /// <remarks/>
        public event WriteCalFPCompletedEventHandler WriteCalFPCompleted;
        
        /// <remarks/>
        public event ResGetResistanceCompletedEventHandler ResGetResistanceCompleted;
        
        /// <remarks/>
        public event ResSetResistanceCompletedEventHandler ResSetResistanceCompleted;
        
        /// <remarks/>
        public event ResInfoCompletedEventHandler ResInfoCompleted;
        
        /// <remarks/>
        public event BattSetVoltageCompletedEventHandler BattSetVoltageCompleted;
        
        /// <remarks/>
        public event BattGetVoltageCompletedEventHandler BattGetVoltageCompleted;
        
        /// <remarks/>
        public event BattSetCurrentCompletedEventHandler BattSetCurrentCompleted;
        
        /// <remarks/>
        public event BattGetCurrentCompletedEventHandler BattGetCurrentCompleted;
        
        /// <remarks/>
        public event BattSetEnableCompletedEventHandler BattSetEnableCompleted;
        
        /// <remarks/>
        public event BattGetEnableCompletedEventHandler BattGetEnableCompleted;
        
        /// <remarks/>
        public event BattReadInterlockStateCompletedEventHandler BattReadInterlockStateCompleted;
        
        /// <remarks/>
        public event VsourceSetRangeCompletedEventHandler VsourceSetRangeCompleted;
        
        /// <remarks/>
        public event VsourceGetRangeCompletedEventHandler VsourceGetRangeCompleted;
        
        /// <remarks/>
        public event VsourceSetVoltageCompletedEventHandler VsourceSetVoltageCompleted;
        
        /// <remarks/>
        public event VsourceGetVoltageCompletedEventHandler VsourceGetVoltageCompleted;
        
        /// <remarks/>
        public event VsourceSetEnableCompletedEventHandler VsourceSetEnableCompleted;
        
        /// <remarks/>
        public event VsourceGetEnableCompletedEventHandler VsourceGetEnableCompleted;
        
        /// <remarks/>
        public event ErrorCodeToMessageCompletedEventHandler ErrorCodeToMessageCompleted;
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int CardId([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] out string str) {
            object[] results = this.Invoke("CardId", new object[0]);
            str = ((string)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void CardIdAsync() {
            this.CardIdAsync(null);
        }
        
        /// <remarks/>
        public void CardIdAsync(object userState) {
            if ((this.CardIdOperationCompleted == null)) {
                this.CardIdOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCardIdOperationCompleted);
            }
            this.InvokeAsync("CardId", new object[0], this.CardIdOperationCompleted, userState);
        }
        
        private void OnCardIdOperationCompleted(object arg) {
            if ((this.CardIdCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CardIdCompleted(this, new CardIdCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ClosureLimit(int outSub, out int limit) {
            object[] results = this.Invoke("ClosureLimit", new object[] {
                        outSub});
            limit = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ClosureLimitAsync(int outSub) {
            this.ClosureLimitAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ClosureLimitAsync(int outSub, object userState) {
            if ((this.ClosureLimitOperationCompleted == null)) {
                this.ClosureLimitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClosureLimitOperationCompleted);
            }
            this.InvokeAsync("ClosureLimit", new object[] {
                        outSub}, this.ClosureLimitOperationCompleted, userState);
        }
        
        private void OnClosureLimitOperationCompleted(object arg) {
            if ((this.ClosureLimitCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ClosureLimitCompleted(this, new ClosureLimitCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int CardOpsCount(out int count) {
            object[] results = this.Invoke("CardOpsCount", new object[0]);
            count = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void CardOpsCountAsync() {
            this.CardOpsCountAsync(null);
        }
        
        /// <remarks/>
        public void CardOpsCountAsync(object userState) {
            if ((this.CardOpsCountOperationCompleted == null)) {
                this.CardOpsCountOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCardOpsCountOperationCompleted);
            }
            this.InvokeAsync("CardOpsCount", new object[0], this.CardOpsCountOperationCompleted, userState);
        }
        
        private void OnCardOpsCountOperationCompleted(object arg) {
            if ((this.CardOpsCountCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CardOpsCountCompleted(this, new CardOpsCountCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int CountFreeCards(out int numCards) {
            object[] results = this.Invoke("CountFreeCards", new object[0]);
            numCards = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void CountFreeCardsAsync() {
            this.CountFreeCardsAsync(null);
        }
        
        /// <remarks/>
        public void CountFreeCardsAsync(object userState) {
            if ((this.CountFreeCardsOperationCompleted == null)) {
                this.CountFreeCardsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCountFreeCardsOperationCompleted);
            }
            this.InvokeAsync("CountFreeCards", new object[0], this.CountFreeCardsOperationCompleted, userState);
        }
        
        private void OnCountFreeCardsOperationCompleted(object arg) {
            if ((this.CountFreeCardsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CountFreeCardsCompleted(this, new CountFreeCardsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int Diagnostic([System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] out string str) {
            object[] results = this.Invoke("Diagnostic", new object[0]);
            str = ((string)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void DiagnosticAsync() {
            this.DiagnosticAsync(null);
        }
        
        /// <remarks/>
        public void DiagnosticAsync(object userState) {
            if ((this.DiagnosticOperationCompleted == null)) {
                this.DiagnosticOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDiagnosticOperationCompleted);
            }
            this.InvokeAsync("Diagnostic", new object[0], this.DiagnosticOperationCompleted, userState);
        }
        
        private void OnDiagnosticOperationCompleted(object arg) {
            if ((this.DiagnosticCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.DiagnosticCompleted(this, new DiagnosticCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int EnumerateSubs(out int inSubs, out int outSubs) {
            object[] results = this.Invoke("EnumerateSubs", new object[0]);
            inSubs = ((int)(results[1]));
            outSubs = ((int)(results[2]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void EnumerateSubsAsync() {
            this.EnumerateSubsAsync(null);
        }
        
        /// <remarks/>
        public void EnumerateSubsAsync(object userState) {
            if ((this.EnumerateSubsOperationCompleted == null)) {
                this.EnumerateSubsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnEnumerateSubsOperationCompleted);
            }
            this.InvokeAsync("EnumerateSubs", new object[0], this.EnumerateSubsOperationCompleted, userState);
        }
        
        private void OnEnumerateSubsOperationCompleted(object arg) {
            if ((this.EnumerateSubsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.EnumerateSubsCompleted(this, new EnumerateSubsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int FindFreeCards([System.Xml.Serialization.XmlElementAttribute("busList")] out int[] busList, [System.Xml.Serialization.XmlElementAttribute("slotList")] out int[] slotList) {
            object[] results = this.Invoke("FindFreeCards", new object[0]);
            busList = ((int[])(results[1]));
            slotList = ((int[])(results[2]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void FindFreeCardsAsync() {
            this.FindFreeCardsAsync(null);
        }
        
        /// <remarks/>
        public void FindFreeCardsAsync(object userState) {
            if ((this.FindFreeCardsOperationCompleted == null)) {
                this.FindFreeCardsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnFindFreeCardsOperationCompleted);
            }
            this.InvokeAsync("FindFreeCards", new object[0], this.FindFreeCardsOperationCompleted, userState);
        }
        
        private void OnFindFreeCardsOperationCompleted(object arg) {
            if ((this.FindFreeCardsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.FindFreeCardsCompleted(this, new FindFreeCardsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int SettleTime(int outSub, out int time) {
            object[] results = this.Invoke("SettleTime", new object[] {
                        outSub});
            time = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void SettleTimeAsync(int outSub) {
            this.SettleTimeAsync(outSub, null);
        }
        
        /// <remarks/>
        public void SettleTimeAsync(int outSub, object userState) {
            if ((this.SettleTimeOperationCompleted == null)) {
                this.SettleTimeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSettleTimeOperationCompleted);
            }
            this.InvokeAsync("SettleTime", new object[] {
                        outSub}, this.SettleTimeOperationCompleted, userState);
        }
        
        private void OnSettleTimeOperationCompleted(object arg) {
            if ((this.SettleTimeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SettleTimeCompleted(this, new SettleTimeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int Status([System.Xml.Serialization.XmlElementAttribute("status")] out StatusEnum status1) {
            object[] results = this.Invoke("Status", new object[0]);
            status1 = ((StatusEnum)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void StatusAsync() {
            this.StatusAsync(null);
        }
        
        /// <remarks/>
        public void StatusAsync(object userState) {
            if ((this.StatusOperationCompleted == null)) {
                this.StatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnStatusOperationCompleted);
            }
            this.InvokeAsync("Status", new object[0], this.StatusOperationCompleted, userState);
        }
        
        private void OnStatusOperationCompleted(object arg) {
            if ((this.StatusCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.StatusCompleted(this, new StatusCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int SubAttribute(int subNum, bool output, AttrCodeEnum attrCode, out int attrValue) {
            object[] results = this.Invoke("SubAttribute", new object[] {
                        subNum,
                        output,
                        attrCode});
            attrValue = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void SubAttributeAsync(int subNum, bool output, AttrCodeEnum attrCode) {
            this.SubAttributeAsync(subNum, output, attrCode, null);
        }
        
        /// <remarks/>
        public void SubAttributeAsync(int subNum, bool output, AttrCodeEnum attrCode, object userState) {
            if ((this.SubAttributeOperationCompleted == null)) {
                this.SubAttributeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSubAttributeOperationCompleted);
            }
            this.InvokeAsync("SubAttribute", new object[] {
                        subNum,
                        output,
                        attrCode}, this.SubAttributeOperationCompleted, userState);
        }
        
        private void OnSubAttributeOperationCompleted(object arg) {
            if ((this.SubAttributeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SubAttributeCompleted(this, new SubAttributeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int SubInfo(int subNum, bool output, out TypeNumberEnum typeNum, out int rows, out int cols) {
            object[] results = this.Invoke("SubInfo", new object[] {
                        subNum,
                        output});
            typeNum = ((TypeNumberEnum)(results[1]));
            rows = ((int)(results[2]));
            cols = ((int)(results[3]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void SubInfoAsync(int subNum, bool output) {
            this.SubInfoAsync(subNum, output, null);
        }
        
        /// <remarks/>
        public void SubInfoAsync(int subNum, bool output, object userState) {
            if ((this.SubInfoOperationCompleted == null)) {
                this.SubInfoOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSubInfoOperationCompleted);
            }
            this.InvokeAsync("SubInfo", new object[] {
                        subNum,
                        output}, this.SubInfoOperationCompleted, userState);
        }
        
        private void OnSubInfoOperationCompleted(object arg) {
            if ((this.SubInfoCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SubInfoCompleted(this, new SubInfoCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int SubStatus(int subNum, out StatusEnum status) {
            object[] results = this.Invoke("SubStatus", new object[] {
                        subNum});
            status = ((StatusEnum)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void SubStatusAsync(int subNum) {
            this.SubStatusAsync(subNum, null);
        }
        
        /// <remarks/>
        public void SubStatusAsync(int subNum, object userState) {
            if ((this.SubStatusOperationCompleted == null)) {
                this.SubStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSubStatusOperationCompleted);
            }
            this.InvokeAsync("SubStatus", new object[] {
                        subNum}, this.SubStatusOperationCompleted, userState);
        }
        
        private void OnSubStatusOperationCompleted(object arg) {
            if ((this.SubStatusCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SubStatusCompleted(this, new SubStatusCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int SubType(int subNum, bool output, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] out string str) {
            object[] results = this.Invoke("SubType", new object[] {
                        subNum,
                        output});
            str = ((string)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void SubTypeAsync(int subNum, bool output) {
            this.SubTypeAsync(subNum, output, null);
        }
        
        /// <remarks/>
        public void SubTypeAsync(int subNum, bool output, object userState) {
            if ((this.SubTypeOperationCompleted == null)) {
                this.SubTypeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSubTypeOperationCompleted);
            }
            this.InvokeAsync("SubType", new object[] {
                        subNum,
                        output}, this.SubTypeOperationCompleted, userState);
        }
        
        private void OnSubTypeOperationCompleted(object arg) {
            if ((this.SubTypeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SubTypeCompleted(this, new SubTypeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int Version([System.Xml.Serialization.XmlElementAttribute("version")] out int version1) {
            object[] results = this.Invoke("Version", new object[0]);
            version1 = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VersionAsync() {
            this.VersionAsync(null);
        }
        
        /// <remarks/>
        public void VersionAsync(object userState) {
            if ((this.VersionOperationCompleted == null)) {
                this.VersionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVersionOperationCompleted);
            }
            this.InvokeAsync("Version", new object[0], this.VersionOperationCompleted, userState);
        }
        
        private void OnVersionOperationCompleted(object arg) {
            if ((this.VersionCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VersionCompleted(this, new VersionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ClearAll() {
            object[] results = this.Invoke("ClearAll", new object[0]);
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ClearAllAsync() {
            this.ClearAllAsync(null);
        }
        
        /// <remarks/>
        public void ClearAllAsync(object userState) {
            if ((this.ClearAllOperationCompleted == null)) {
                this.ClearAllOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClearAllOperationCompleted);
            }
            this.InvokeAsync("ClearAll", new object[0], this.ClearAllOperationCompleted, userState);
        }
        
        private void OnClearAllOperationCompleted(object arg) {
            if ((this.ClearAllCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ClearAllCompleted(this, new ClearAllCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ClearCard() {
            object[] results = this.Invoke("ClearCard", new object[0]);
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ClearCardAsync() {
            this.ClearCardAsync(null);
        }
        
        /// <remarks/>
        public void ClearCardAsync(object userState) {
            if ((this.ClearCardOperationCompleted == null)) {
                this.ClearCardOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClearCardOperationCompleted);
            }
            this.InvokeAsync("ClearCard", new object[0], this.ClearCardOperationCompleted, userState);
        }
        
        private void OnClearCardOperationCompleted(object arg) {
            if ((this.ClearCardCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ClearCardCompleted(this, new ClearCardCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ClearSub(int outSub) {
            object[] results = this.Invoke("ClearSub", new object[] {
                        outSub});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ClearSubAsync(int outSub) {
            this.ClearSubAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ClearSubAsync(int outSub, object userState) {
            if ((this.ClearSubOperationCompleted == null)) {
                this.ClearSubOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClearSubOperationCompleted);
            }
            this.InvokeAsync("ClearSub", new object[] {
                        outSub}, this.ClearSubOperationCompleted, userState);
        }
        
        private void OnClearSubOperationCompleted(object arg) {
            if ((this.ClearSubCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ClearSubCompleted(this, new ClearSubCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int OpBit(int outSub, int bitNum, bool action) {
            object[] results = this.Invoke("OpBit", new object[] {
                        outSub,
                        bitNum,
                        action});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void OpBitAsync(int outSub, int bitNum, bool action) {
            this.OpBitAsync(outSub, bitNum, action, null);
        }
        
        /// <remarks/>
        public void OpBitAsync(int outSub, int bitNum, bool action, object userState) {
            if ((this.OpBitOperationCompleted == null)) {
                this.OpBitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOpBitOperationCompleted);
            }
            this.InvokeAsync("OpBit", new object[] {
                        outSub,
                        bitNum,
                        action}, this.OpBitOperationCompleted, userState);
        }
        
        private void OnOpBitOperationCompleted(object arg) {
            if ((this.OpBitCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OpBitCompleted(this, new OpBitCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ViewBit(int outSub, int bitNum, out bool state) {
            object[] results = this.Invoke("ViewBit", new object[] {
                        outSub,
                        bitNum});
            state = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ViewBitAsync(int outSub, int bitNum) {
            this.ViewBitAsync(outSub, bitNum, null);
        }
        
        /// <remarks/>
        public void ViewBitAsync(int outSub, int bitNum, object userState) {
            if ((this.ViewBitOperationCompleted == null)) {
                this.ViewBitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnViewBitOperationCompleted);
            }
            this.InvokeAsync("ViewBit", new object[] {
                        outSub,
                        bitNum}, this.ViewBitOperationCompleted, userState);
        }
        
        private void OnViewBitOperationCompleted(object arg) {
            if ((this.ViewBitCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ViewBitCompleted(this, new ViewBitCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ViewSub(int outSub, [System.Xml.Serialization.XmlElementAttribute("data")] out int[] data) {
            object[] results = this.Invoke("ViewSub", new object[] {
                        outSub});
            data = ((int[])(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ViewSubAsync(int outSub) {
            this.ViewSubAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ViewSubAsync(int outSub, object userState) {
            if ((this.ViewSubOperationCompleted == null)) {
                this.ViewSubOperationCompleted = new System.Threading.SendOrPostCallback(this.OnViewSubOperationCompleted);
            }
            this.InvokeAsync("ViewSub", new object[] {
                        outSub}, this.ViewSubOperationCompleted, userState);
        }
        
        private void OnViewSubOperationCompleted(object arg) {
            if ((this.ViewSubCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ViewSubCompleted(this, new ViewSubCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int WriteSub(int outSub, [System.Xml.Serialization.XmlArrayItemAttribute("item", IsNullable=false)] int[] data) {
            object[] results = this.Invoke("WriteSub", new object[] {
                        outSub,
                        data});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void WriteSubAsync(int outSub, int[] data) {
            this.WriteSubAsync(outSub, data, null);
        }
        
        /// <remarks/>
        public void WriteSubAsync(int outSub, int[] data, object userState) {
            if ((this.WriteSubOperationCompleted == null)) {
                this.WriteSubOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWriteSubOperationCompleted);
            }
            this.InvokeAsync("WriteSub", new object[] {
                        outSub,
                        data}, this.WriteSubOperationCompleted, userState);
        }
        
        private void OnWriteSubOperationCompleted(object arg) {
            if ((this.WriteSubCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WriteSubCompleted(this, new WriteSubCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ReadBit(int inSub, int bitNum, out bool state) {
            object[] results = this.Invoke("ReadBit", new object[] {
                        inSub,
                        bitNum});
            state = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ReadBitAsync(int inSub, int bitNum) {
            this.ReadBitAsync(inSub, bitNum, null);
        }
        
        /// <remarks/>
        public void ReadBitAsync(int inSub, int bitNum, object userState) {
            if ((this.ReadBitOperationCompleted == null)) {
                this.ReadBitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReadBitOperationCompleted);
            }
            this.InvokeAsync("ReadBit", new object[] {
                        inSub,
                        bitNum}, this.ReadBitOperationCompleted, userState);
        }
        
        private void OnReadBitOperationCompleted(object arg) {
            if ((this.ReadBitCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReadBitCompleted(this, new ReadBitCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ReadSub(int inSub, [System.Xml.Serialization.XmlElementAttribute("data")] out int[] data) {
            object[] results = this.Invoke("ReadSub", new object[] {
                        inSub});
            data = ((int[])(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ReadSubAsync(int inSub) {
            this.ReadSubAsync(inSub, null);
        }
        
        /// <remarks/>
        public void ReadSubAsync(int inSub, object userState) {
            if ((this.ReadSubOperationCompleted == null)) {
                this.ReadSubOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReadSubOperationCompleted);
            }
            this.InvokeAsync("ReadSub", new object[] {
                        inSub}, this.ReadSubOperationCompleted, userState);
        }
        
        private void OnReadSubOperationCompleted(object arg) {
            if ((this.ReadSubCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReadSubCompleted(this, new ReadSubCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ClearMask(int outSub) {
            object[] results = this.Invoke("ClearMask", new object[] {
                        outSub});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ClearMaskAsync(int outSub) {
            this.ClearMaskAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ClearMaskAsync(int outSub, object userState) {
            if ((this.ClearMaskOperationCompleted == null)) {
                this.ClearMaskOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClearMaskOperationCompleted);
            }
            this.InvokeAsync("ClearMask", new object[] {
                        outSub}, this.ClearMaskOperationCompleted, userState);
        }
        
        private void OnClearMaskOperationCompleted(object arg) {
            if ((this.ClearMaskCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ClearMaskCompleted(this, new ClearMaskCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int MaskBit(int outSub, int bitNum, bool action) {
            object[] results = this.Invoke("MaskBit", new object[] {
                        outSub,
                        bitNum,
                        action});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void MaskBitAsync(int outSub, int bitNum, bool action) {
            this.MaskBitAsync(outSub, bitNum, action, null);
        }
        
        /// <remarks/>
        public void MaskBitAsync(int outSub, int bitNum, bool action, object userState) {
            if ((this.MaskBitOperationCompleted == null)) {
                this.MaskBitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnMaskBitOperationCompleted);
            }
            this.InvokeAsync("MaskBit", new object[] {
                        outSub,
                        bitNum,
                        action}, this.MaskBitOperationCompleted, userState);
        }
        
        private void OnMaskBitOperationCompleted(object arg) {
            if ((this.MaskBitCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.MaskBitCompleted(this, new MaskBitCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int MaskCrosspoint(int outSub, int row, int col, bool action) {
            object[] results = this.Invoke("MaskCrosspoint", new object[] {
                        outSub,
                        row,
                        col,
                        action});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void MaskCrosspointAsync(int outSub, int row, int col, bool action) {
            this.MaskCrosspointAsync(outSub, row, col, action, null);
        }
        
        /// <remarks/>
        public void MaskCrosspointAsync(int outSub, int row, int col, bool action, object userState) {
            if ((this.MaskCrosspointOperationCompleted == null)) {
                this.MaskCrosspointOperationCompleted = new System.Threading.SendOrPostCallback(this.OnMaskCrosspointOperationCompleted);
            }
            this.InvokeAsync("MaskCrosspoint", new object[] {
                        outSub,
                        row,
                        col,
                        action}, this.MaskCrosspointOperationCompleted, userState);
        }
        
        private void OnMaskCrosspointOperationCompleted(object arg) {
            if ((this.MaskCrosspointCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.MaskCrosspointCompleted(this, new MaskCrosspointCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int OpCrosspoint(int outSub, int row, int col, bool action) {
            object[] results = this.Invoke("OpCrosspoint", new object[] {
                        outSub,
                        row,
                        col,
                        action});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void OpCrosspointAsync(int outSub, int row, int col, bool action) {
            this.OpCrosspointAsync(outSub, row, col, action, null);
        }
        
        /// <remarks/>
        public void OpCrosspointAsync(int outSub, int row, int col, bool action, object userState) {
            if ((this.OpCrosspointOperationCompleted == null)) {
                this.OpCrosspointOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOpCrosspointOperationCompleted);
            }
            this.InvokeAsync("OpCrosspoint", new object[] {
                        outSub,
                        row,
                        col,
                        action}, this.OpCrosspointOperationCompleted, userState);
        }
        
        private void OnOpCrosspointOperationCompleted(object arg) {
            if ((this.OpCrosspointCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OpCrosspointCompleted(this, new OpCrosspointCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int OpSwitch(int outSub, SwFuncEnum switchFunc, int segNum, int switchNum, int subSwitch, SwActEnum switchAction, out bool state) {
            object[] results = this.Invoke("OpSwitch", new object[] {
                        outSub,
                        switchFunc,
                        segNum,
                        switchNum,
                        subSwitch,
                        switchAction});
            state = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void OpSwitchAsync(int outSub, SwFuncEnum switchFunc, int segNum, int switchNum, int subSwitch, SwActEnum switchAction) {
            this.OpSwitchAsync(outSub, switchFunc, segNum, switchNum, subSwitch, switchAction, null);
        }
        
        /// <remarks/>
        public void OpSwitchAsync(int outSub, SwFuncEnum switchFunc, int segNum, int switchNum, int subSwitch, SwActEnum switchAction, object userState) {
            if ((this.OpSwitchOperationCompleted == null)) {
                this.OpSwitchOperationCompleted = new System.Threading.SendOrPostCallback(this.OnOpSwitchOperationCompleted);
            }
            this.InvokeAsync("OpSwitch", new object[] {
                        outSub,
                        switchFunc,
                        segNum,
                        switchNum,
                        subSwitch,
                        switchAction}, this.OpSwitchOperationCompleted, userState);
        }
        
        private void OnOpSwitchOperationCompleted(object arg) {
            if ((this.OpSwitchCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.OpSwitchCompleted(this, new OpSwitchCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ViewCrosspoint(int outSub, int row, int col, out bool state) {
            object[] results = this.Invoke("ViewCrosspoint", new object[] {
                        outSub,
                        row,
                        col});
            state = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ViewCrosspointAsync(int outSub, int row, int col) {
            this.ViewCrosspointAsync(outSub, row, col, null);
        }
        
        /// <remarks/>
        public void ViewCrosspointAsync(int outSub, int row, int col, object userState) {
            if ((this.ViewCrosspointOperationCompleted == null)) {
                this.ViewCrosspointOperationCompleted = new System.Threading.SendOrPostCallback(this.OnViewCrosspointOperationCompleted);
            }
            this.InvokeAsync("ViewCrosspoint", new object[] {
                        outSub,
                        row,
                        col}, this.ViewCrosspointOperationCompleted, userState);
        }
        
        private void OnViewCrosspointOperationCompleted(object arg) {
            if ((this.ViewCrosspointCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ViewCrosspointCompleted(this, new ViewCrosspointCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ViewMask(int outSub, [System.Xml.Serialization.XmlElementAttribute("data")] out int[] data) {
            object[] results = this.Invoke("ViewMask", new object[] {
                        outSub});
            data = ((int[])(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ViewMaskAsync(int outSub) {
            this.ViewMaskAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ViewMaskAsync(int outSub, object userState) {
            if ((this.ViewMaskOperationCompleted == null)) {
                this.ViewMaskOperationCompleted = new System.Threading.SendOrPostCallback(this.OnViewMaskOperationCompleted);
            }
            this.InvokeAsync("ViewMask", new object[] {
                        outSub}, this.ViewMaskOperationCompleted, userState);
        }
        
        private void OnViewMaskOperationCompleted(object arg) {
            if ((this.ViewMaskCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ViewMaskCompleted(this, new ViewMaskCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ViewMaskBit(int outSub, int bitNum, out bool state) {
            object[] results = this.Invoke("ViewMaskBit", new object[] {
                        outSub,
                        bitNum});
            state = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ViewMaskBitAsync(int outSub, int bitNum) {
            this.ViewMaskBitAsync(outSub, bitNum, null);
        }
        
        /// <remarks/>
        public void ViewMaskBitAsync(int outSub, int bitNum, object userState) {
            if ((this.ViewMaskBitOperationCompleted == null)) {
                this.ViewMaskBitOperationCompleted = new System.Threading.SendOrPostCallback(this.OnViewMaskBitOperationCompleted);
            }
            this.InvokeAsync("ViewMaskBit", new object[] {
                        outSub,
                        bitNum}, this.ViewMaskBitOperationCompleted, userState);
        }
        
        private void OnViewMaskBitOperationCompleted(object arg) {
            if ((this.ViewMaskBitCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ViewMaskBitCompleted(this, new ViewMaskBitCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ViewMaskCrosspoint(int outSub, int row, int col, out bool state) {
            object[] results = this.Invoke("ViewMaskCrosspoint", new object[] {
                        outSub,
                        row,
                        col});
            state = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ViewMaskCrosspointAsync(int outSub, int row, int col) {
            this.ViewMaskCrosspointAsync(outSub, row, col, null);
        }
        
        /// <remarks/>
        public void ViewMaskCrosspointAsync(int outSub, int row, int col, object userState) {
            if ((this.ViewMaskCrosspointOperationCompleted == null)) {
                this.ViewMaskCrosspointOperationCompleted = new System.Threading.SendOrPostCallback(this.OnViewMaskCrosspointOperationCompleted);
            }
            this.InvokeAsync("ViewMaskCrosspoint", new object[] {
                        outSub,
                        row,
                        col}, this.ViewMaskCrosspointOperationCompleted, userState);
        }
        
        private void OnViewMaskCrosspointOperationCompleted(object arg) {
            if ((this.ViewMaskCrosspointCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ViewMaskCrosspointCompleted(this, new ViewMaskCrosspointCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int WriteMask(int outSub, [System.Xml.Serialization.XmlArrayItemAttribute("item", IsNullable=false)] int[] data) {
            object[] results = this.Invoke("WriteMask", new object[] {
                        outSub,
                        data});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void WriteMaskAsync(int outSub, int[] data) {
            this.WriteMaskAsync(outSub, data, null);
        }
        
        /// <remarks/>
        public void WriteMaskAsync(int outSub, int[] data, object userState) {
            if ((this.WriteMaskOperationCompleted == null)) {
                this.WriteMaskOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWriteMaskOperationCompleted);
            }
            this.InvokeAsync("WriteMask", new object[] {
                        outSub,
                        data}, this.WriteMaskOperationCompleted, userState);
        }
        
        private void OnWriteMaskOperationCompleted(object arg) {
            if ((this.WriteMaskCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WriteMaskCompleted(this, new WriteMaskCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int PsuEnable(int subNum, bool state) {
            object[] results = this.Invoke("PsuEnable", new object[] {
                        subNum,
                        state});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void PsuEnableAsync(int subNum, bool state) {
            this.PsuEnableAsync(subNum, state, null);
        }
        
        /// <remarks/>
        public void PsuEnableAsync(int subNum, bool state, object userState) {
            if ((this.PsuEnableOperationCompleted == null)) {
                this.PsuEnableOperationCompleted = new System.Threading.SendOrPostCallback(this.OnPsuEnableOperationCompleted);
            }
            this.InvokeAsync("PsuEnable", new object[] {
                        subNum,
                        state}, this.PsuEnableOperationCompleted, userState);
        }
        
        private void OnPsuEnableOperationCompleted(object arg) {
            if ((this.PsuEnableCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.PsuEnableCompleted(this, new PsuEnableCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int PsuGetVoltage(int subNum, out double voltage) {
            object[] results = this.Invoke("PsuGetVoltage", new object[] {
                        subNum});
            voltage = ((double)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void PsuGetVoltageAsync(int subNum) {
            this.PsuGetVoltageAsync(subNum, null);
        }
        
        /// <remarks/>
        public void PsuGetVoltageAsync(int subNum, object userState) {
            if ((this.PsuGetVoltageOperationCompleted == null)) {
                this.PsuGetVoltageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnPsuGetVoltageOperationCompleted);
            }
            this.InvokeAsync("PsuGetVoltage", new object[] {
                        subNum}, this.PsuGetVoltageOperationCompleted, userState);
        }
        
        private void OnPsuGetVoltageOperationCompleted(object arg) {
            if ((this.PsuGetVoltageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.PsuGetVoltageCompleted(this, new PsuGetVoltageCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int PsuSetVoltage(int subNum, double voltage) {
            object[] results = this.Invoke("PsuSetVoltage", new object[] {
                        subNum,
                        voltage});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void PsuSetVoltageAsync(int subNum, double voltage) {
            this.PsuSetVoltageAsync(subNum, voltage, null);
        }
        
        /// <remarks/>
        public void PsuSetVoltageAsync(int subNum, double voltage, object userState) {
            if ((this.PsuSetVoltageOperationCompleted == null)) {
                this.PsuSetVoltageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnPsuSetVoltageOperationCompleted);
            }
            this.InvokeAsync("PsuSetVoltage", new object[] {
                        subNum,
                        voltage}, this.PsuSetVoltageOperationCompleted, userState);
        }
        
        private void OnPsuSetVoltageOperationCompleted(object arg) {
            if ((this.PsuSetVoltageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.PsuSetVoltageCompleted(this, new PsuSetVoltageCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int PsuInfo(int subNum, out int typeNum, out double voltage, out double current, out int precis, out int capabilities) {
            object[] results = this.Invoke("PsuInfo", new object[] {
                        subNum});
            typeNum = ((int)(results[1]));
            voltage = ((double)(results[2]));
            current = ((double)(results[3]));
            precis = ((int)(results[4]));
            capabilities = ((int)(results[5]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void PsuInfoAsync(int subNum) {
            this.PsuInfoAsync(subNum, null);
        }
        
        /// <remarks/>
        public void PsuInfoAsync(int subNum, object userState) {
            if ((this.PsuInfoOperationCompleted == null)) {
                this.PsuInfoOperationCompleted = new System.Threading.SendOrPostCallback(this.OnPsuInfoOperationCompleted);
            }
            this.InvokeAsync("PsuInfo", new object[] {
                        subNum}, this.PsuInfoOperationCompleted, userState);
        }
        
        private void OnPsuInfoOperationCompleted(object arg) {
            if ((this.PsuInfoCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.PsuInfoCompleted(this, new PsuInfoCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int PsuType(int subNum, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] out string str) {
            object[] results = this.Invoke("PsuType", new object[] {
                        subNum});
            str = ((string)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void PsuTypeAsync(int subNum) {
            this.PsuTypeAsync(subNum, null);
        }
        
        /// <remarks/>
        public void PsuTypeAsync(int subNum, object userState) {
            if ((this.PsuTypeOperationCompleted == null)) {
                this.PsuTypeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnPsuTypeOperationCompleted);
            }
            this.InvokeAsync("PsuType", new object[] {
                        subNum}, this.PsuTypeOperationCompleted, userState);
        }
        
        private void OnPsuTypeOperationCompleted(object arg) {
            if ((this.PsuTypeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.PsuTypeCompleted(this, new PsuTypeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int AttenGetAttenuation(int subNum, out float atten) {
            object[] results = this.Invoke("AttenGetAttenuation", new object[] {
                        subNum});
            atten = ((float)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void AttenGetAttenuationAsync(int subNum) {
            this.AttenGetAttenuationAsync(subNum, null);
        }
        
        /// <remarks/>
        public void AttenGetAttenuationAsync(int subNum, object userState) {
            if ((this.AttenGetAttenuationOperationCompleted == null)) {
                this.AttenGetAttenuationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAttenGetAttenuationOperationCompleted);
            }
            this.InvokeAsync("AttenGetAttenuation", new object[] {
                        subNum}, this.AttenGetAttenuationOperationCompleted, userState);
        }
        
        private void OnAttenGetAttenuationOperationCompleted(object arg) {
            if ((this.AttenGetAttenuationCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.AttenGetAttenuationCompleted(this, new AttenGetAttenuationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int AttenInfo(int subNum, out int typeNum, out int numSteps, out float stepSize) {
            object[] results = this.Invoke("AttenInfo", new object[] {
                        subNum});
            typeNum = ((int)(results[1]));
            numSteps = ((int)(results[2]));
            stepSize = ((float)(results[3]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void AttenInfoAsync(int subNum) {
            this.AttenInfoAsync(subNum, null);
        }
        
        /// <remarks/>
        public void AttenInfoAsync(int subNum, object userState) {
            if ((this.AttenInfoOperationCompleted == null)) {
                this.AttenInfoOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAttenInfoOperationCompleted);
            }
            this.InvokeAsync("AttenInfo", new object[] {
                        subNum}, this.AttenInfoOperationCompleted, userState);
        }
        
        private void OnAttenInfoOperationCompleted(object arg) {
            if ((this.AttenInfoCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.AttenInfoCompleted(this, new AttenInfoCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int AttenPadValue(int subNum, int padNum, out float atten) {
            object[] results = this.Invoke("AttenPadValue", new object[] {
                        subNum,
                        padNum});
            atten = ((float)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void AttenPadValueAsync(int subNum, int padNum) {
            this.AttenPadValueAsync(subNum, padNum, null);
        }
        
        /// <remarks/>
        public void AttenPadValueAsync(int subNum, int padNum, object userState) {
            if ((this.AttenPadValueOperationCompleted == null)) {
                this.AttenPadValueOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAttenPadValueOperationCompleted);
            }
            this.InvokeAsync("AttenPadValue", new object[] {
                        subNum,
                        padNum}, this.AttenPadValueOperationCompleted, userState);
        }
        
        private void OnAttenPadValueOperationCompleted(object arg) {
            if ((this.AttenPadValueCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.AttenPadValueCompleted(this, new AttenPadValueCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int AttenSetAttenuation(int subNum, float atten) {
            object[] results = this.Invoke("AttenSetAttenuation", new object[] {
                        subNum,
                        atten});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void AttenSetAttenuationAsync(int subNum, float atten) {
            this.AttenSetAttenuationAsync(subNum, atten, null);
        }
        
        /// <remarks/>
        public void AttenSetAttenuationAsync(int subNum, float atten, object userState) {
            if ((this.AttenSetAttenuationOperationCompleted == null)) {
                this.AttenSetAttenuationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAttenSetAttenuationOperationCompleted);
            }
            this.InvokeAsync("AttenSetAttenuation", new object[] {
                        subNum,
                        atten}, this.AttenSetAttenuationOperationCompleted, userState);
        }
        
        private void OnAttenSetAttenuationOperationCompleted(object arg) {
            if ((this.AttenSetAttenuationCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.AttenSetAttenuationCompleted(this, new AttenSetAttenuationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int AttenType(int subNum, [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] out string str) {
            object[] results = this.Invoke("AttenType", new object[] {
                        subNum});
            str = ((string)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void AttenTypeAsync(int subNum) {
            this.AttenTypeAsync(subNum, null);
        }
        
        /// <remarks/>
        public void AttenTypeAsync(int subNum, object userState) {
            if ((this.AttenTypeOperationCompleted == null)) {
                this.AttenTypeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAttenTypeOperationCompleted);
            }
            this.InvokeAsync("AttenType", new object[] {
                        subNum}, this.AttenTypeOperationCompleted, userState);
        }
        
        private void OnAttenTypeOperationCompleted(object arg) {
            if ((this.AttenTypeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.AttenTypeCompleted(this, new AttenTypeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ReadCal(int outSub, int idx, out int data) {
            object[] results = this.Invoke("ReadCal", new object[] {
                        outSub,
                        idx});
            data = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ReadCalAsync(int outSub, int idx) {
            this.ReadCalAsync(outSub, idx, null);
        }
        
        /// <remarks/>
        public void ReadCalAsync(int outSub, int idx, object userState) {
            if ((this.ReadCalOperationCompleted == null)) {
                this.ReadCalOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReadCalOperationCompleted);
            }
            this.InvokeAsync("ReadCal", new object[] {
                        outSub,
                        idx}, this.ReadCalOperationCompleted, userState);
        }
        
        private void OnReadCalOperationCompleted(object arg) {
            if ((this.ReadCalCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReadCalCompleted(this, new ReadCalCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ReadCalDate(int outSub, StoreTypeEnum store, out int year, out int day, out int interval) {
            object[] results = this.Invoke("ReadCalDate", new object[] {
                        outSub,
                        store});
            year = ((int)(results[1]));
            day = ((int)(results[2]));
            interval = ((int)(results[3]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ReadCalDateAsync(int outSub, StoreTypeEnum store) {
            this.ReadCalDateAsync(outSub, store, null);
        }
        
        /// <remarks/>
        public void ReadCalDateAsync(int outSub, StoreTypeEnum store, object userState) {
            if ((this.ReadCalDateOperationCompleted == null)) {
                this.ReadCalDateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReadCalDateOperationCompleted);
            }
            this.InvokeAsync("ReadCalDate", new object[] {
                        outSub,
                        store}, this.ReadCalDateOperationCompleted, userState);
        }
        
        private void OnReadCalDateOperationCompleted(object arg) {
            if ((this.ReadCalDateCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReadCalDateCompleted(this, new ReadCalDateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ReadCalFP(int outSub, StoreTypeEnum store, int offset, int numValues, [System.Xml.Serialization.XmlElementAttribute("data")] out double[] data) {
            object[] results = this.Invoke("ReadCalFP", new object[] {
                        outSub,
                        store,
                        offset,
                        numValues});
            data = ((double[])(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ReadCalFPAsync(int outSub, StoreTypeEnum store, int offset, int numValues) {
            this.ReadCalFPAsync(outSub, store, offset, numValues, null);
        }
        
        /// <remarks/>
        public void ReadCalFPAsync(int outSub, StoreTypeEnum store, int offset, int numValues, object userState) {
            if ((this.ReadCalFPOperationCompleted == null)) {
                this.ReadCalFPOperationCompleted = new System.Threading.SendOrPostCallback(this.OnReadCalFPOperationCompleted);
            }
            this.InvokeAsync("ReadCalFP", new object[] {
                        outSub,
                        store,
                        offset,
                        numValues}, this.ReadCalFPOperationCompleted, userState);
        }
        
        private void OnReadCalFPOperationCompleted(object arg) {
            if ((this.ReadCalFPCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ReadCalFPCompleted(this, new ReadCalFPCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int SetCalPoint(int outSub, int index) {
            object[] results = this.Invoke("SetCalPoint", new object[] {
                        outSub,
                        index});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void SetCalPointAsync(int outSub, int index) {
            this.SetCalPointAsync(outSub, index, null);
        }
        
        /// <remarks/>
        public void SetCalPointAsync(int outSub, int index, object userState) {
            if ((this.SetCalPointOperationCompleted == null)) {
                this.SetCalPointOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetCalPointOperationCompleted);
            }
            this.InvokeAsync("SetCalPoint", new object[] {
                        outSub,
                        index}, this.SetCalPointOperationCompleted, userState);
        }
        
        private void OnSetCalPointOperationCompleted(object arg) {
            if ((this.SetCalPointCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.SetCalPointCompleted(this, new SetCalPointCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int WriteCal(int outSub, int idx, int data) {
            object[] results = this.Invoke("WriteCal", new object[] {
                        outSub,
                        idx,
                        data});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void WriteCalAsync(int outSub, int idx, int data) {
            this.WriteCalAsync(outSub, idx, data, null);
        }
        
        /// <remarks/>
        public void WriteCalAsync(int outSub, int idx, int data, object userState) {
            if ((this.WriteCalOperationCompleted == null)) {
                this.WriteCalOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWriteCalOperationCompleted);
            }
            this.InvokeAsync("WriteCal", new object[] {
                        outSub,
                        idx,
                        data}, this.WriteCalOperationCompleted, userState);
        }
        
        private void OnWriteCalOperationCompleted(object arg) {
            if ((this.WriteCalCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WriteCalCompleted(this, new WriteCalCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int WriteCalDate(int outSub, StoreTypeEnum store, int interval) {
            object[] results = this.Invoke("WriteCalDate", new object[] {
                        outSub,
                        store,
                        interval});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void WriteCalDateAsync(int outSub, StoreTypeEnum store, int interval) {
            this.WriteCalDateAsync(outSub, store, interval, null);
        }
        
        /// <remarks/>
        public void WriteCalDateAsync(int outSub, StoreTypeEnum store, int interval, object userState) {
            if ((this.WriteCalDateOperationCompleted == null)) {
                this.WriteCalDateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWriteCalDateOperationCompleted);
            }
            this.InvokeAsync("WriteCalDate", new object[] {
                        outSub,
                        store,
                        interval}, this.WriteCalDateOperationCompleted, userState);
        }
        
        private void OnWriteCalDateOperationCompleted(object arg) {
            if ((this.WriteCalDateCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WriteCalDateCompleted(this, new WriteCalDateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int WriteCalFP(int outSub, StoreTypeEnum store, int offset, int numValues, [System.Xml.Serialization.XmlArrayItemAttribute("item", IsNullable=false)] double[] data) {
            object[] results = this.Invoke("WriteCalFP", new object[] {
                        outSub,
                        store,
                        offset,
                        numValues,
                        data});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void WriteCalFPAsync(int outSub, StoreTypeEnum store, int offset, int numValues, double[] data) {
            this.WriteCalFPAsync(outSub, store, offset, numValues, data, null);
        }
        
        /// <remarks/>
        public void WriteCalFPAsync(int outSub, StoreTypeEnum store, int offset, int numValues, double[] data, object userState) {
            if ((this.WriteCalFPOperationCompleted == null)) {
                this.WriteCalFPOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWriteCalFPOperationCompleted);
            }
            this.InvokeAsync("WriteCalFP", new object[] {
                        outSub,
                        store,
                        offset,
                        numValues,
                        data}, this.WriteCalFPOperationCompleted, userState);
        }
        
        private void OnWriteCalFPOperationCompleted(object arg) {
            if ((this.WriteCalFPCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WriteCalFPCompleted(this, new WriteCalFPCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ResGetResistance(int outSub, out double resistance) {
            object[] results = this.Invoke("ResGetResistance", new object[] {
                        outSub});
            resistance = ((double)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ResGetResistanceAsync(int outSub) {
            this.ResGetResistanceAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ResGetResistanceAsync(int outSub, object userState) {
            if ((this.ResGetResistanceOperationCompleted == null)) {
                this.ResGetResistanceOperationCompleted = new System.Threading.SendOrPostCallback(this.OnResGetResistanceOperationCompleted);
            }
            this.InvokeAsync("ResGetResistance", new object[] {
                        outSub}, this.ResGetResistanceOperationCompleted, userState);
        }
        
        private void OnResGetResistanceOperationCompleted(object arg) {
            if ((this.ResGetResistanceCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ResGetResistanceCompleted(this, new ResGetResistanceCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ResSetResistance(int outSub, ModeTypeEnum mode, double resistance) {
            object[] results = this.Invoke("ResSetResistance", new object[] {
                        outSub,
                        mode,
                        resistance});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ResSetResistanceAsync(int outSub, ModeTypeEnum mode, double resistance) {
            this.ResSetResistanceAsync(outSub, mode, resistance, null);
        }
        
        /// <remarks/>
        public void ResSetResistanceAsync(int outSub, ModeTypeEnum mode, double resistance, object userState) {
            if ((this.ResSetResistanceOperationCompleted == null)) {
                this.ResSetResistanceOperationCompleted = new System.Threading.SendOrPostCallback(this.OnResSetResistanceOperationCompleted);
            }
            this.InvokeAsync("ResSetResistance", new object[] {
                        outSub,
                        mode,
                        resistance}, this.ResSetResistanceOperationCompleted, userState);
        }
        
        private void OnResSetResistanceOperationCompleted(object arg) {
            if ((this.ResSetResistanceCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ResSetResistanceCompleted(this, new ResSetResistanceCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int ResInfo(int outSub, out double minRes, out double maxRes, out double refRes, out double precPC, out double precDelta, out double int1, out double intDelta, out int capabilities) {
            object[] results = this.Invoke("ResInfo", new object[] {
                        outSub});
            minRes = ((double)(results[1]));
            maxRes = ((double)(results[2]));
            refRes = ((double)(results[3]));
            precPC = ((double)(results[4]));
            precDelta = ((double)(results[5]));
            int1 = ((double)(results[6]));
            intDelta = ((double)(results[7]));
            capabilities = ((int)(results[8]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void ResInfoAsync(int outSub) {
            this.ResInfoAsync(outSub, null);
        }
        
        /// <remarks/>
        public void ResInfoAsync(int outSub, object userState) {
            if ((this.ResInfoOperationCompleted == null)) {
                this.ResInfoOperationCompleted = new System.Threading.SendOrPostCallback(this.OnResInfoOperationCompleted);
            }
            this.InvokeAsync("ResInfo", new object[] {
                        outSub}, this.ResInfoOperationCompleted, userState);
        }
        
        private void OnResInfoOperationCompleted(object arg) {
            if ((this.ResInfoCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ResInfoCompleted(this, new ResInfoCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattSetVoltage(int outSub, double voltage) {
            object[] results = this.Invoke("BattSetVoltage", new object[] {
                        outSub,
                        voltage});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattSetVoltageAsync(int outSub, double voltage) {
            this.BattSetVoltageAsync(outSub, voltage, null);
        }
        
        /// <remarks/>
        public void BattSetVoltageAsync(int outSub, double voltage, object userState) {
            if ((this.BattSetVoltageOperationCompleted == null)) {
                this.BattSetVoltageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattSetVoltageOperationCompleted);
            }
            this.InvokeAsync("BattSetVoltage", new object[] {
                        outSub,
                        voltage}, this.BattSetVoltageOperationCompleted, userState);
        }
        
        private void OnBattSetVoltageOperationCompleted(object arg) {
            if ((this.BattSetVoltageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattSetVoltageCompleted(this, new BattSetVoltageCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattGetVoltage(int outSub, out double voltage) {
            object[] results = this.Invoke("BattGetVoltage", new object[] {
                        outSub});
            voltage = ((double)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattGetVoltageAsync(int outSub) {
            this.BattGetVoltageAsync(outSub, null);
        }
        
        /// <remarks/>
        public void BattGetVoltageAsync(int outSub, object userState) {
            if ((this.BattGetVoltageOperationCompleted == null)) {
                this.BattGetVoltageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattGetVoltageOperationCompleted);
            }
            this.InvokeAsync("BattGetVoltage", new object[] {
                        outSub}, this.BattGetVoltageOperationCompleted, userState);
        }
        
        private void OnBattGetVoltageOperationCompleted(object arg) {
            if ((this.BattGetVoltageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattGetVoltageCompleted(this, new BattGetVoltageCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattSetCurrent(int outSub, double current) {
            object[] results = this.Invoke("BattSetCurrent", new object[] {
                        outSub,
                        current});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattSetCurrentAsync(int outSub, double current) {
            this.BattSetCurrentAsync(outSub, current, null);
        }
        
        /// <remarks/>
        public void BattSetCurrentAsync(int outSub, double current, object userState) {
            if ((this.BattSetCurrentOperationCompleted == null)) {
                this.BattSetCurrentOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattSetCurrentOperationCompleted);
            }
            this.InvokeAsync("BattSetCurrent", new object[] {
                        outSub,
                        current}, this.BattSetCurrentOperationCompleted, userState);
        }
        
        private void OnBattSetCurrentOperationCompleted(object arg) {
            if ((this.BattSetCurrentCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattSetCurrentCompleted(this, new BattSetCurrentCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattGetCurrent(int outSub, out double current) {
            object[] results = this.Invoke("BattGetCurrent", new object[] {
                        outSub});
            current = ((double)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattGetCurrentAsync(int outSub) {
            this.BattGetCurrentAsync(outSub, null);
        }
        
        /// <remarks/>
        public void BattGetCurrentAsync(int outSub, object userState) {
            if ((this.BattGetCurrentOperationCompleted == null)) {
                this.BattGetCurrentOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattGetCurrentOperationCompleted);
            }
            this.InvokeAsync("BattGetCurrent", new object[] {
                        outSub}, this.BattGetCurrentOperationCompleted, userState);
        }
        
        private void OnBattGetCurrentOperationCompleted(object arg) {
            if ((this.BattGetCurrentCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattGetCurrentCompleted(this, new BattGetCurrentCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattSetEnable(int outSub, int pattern) {
            object[] results = this.Invoke("BattSetEnable", new object[] {
                        outSub,
                        pattern});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattSetEnableAsync(int outSub, int pattern) {
            this.BattSetEnableAsync(outSub, pattern, null);
        }
        
        /// <remarks/>
        public void BattSetEnableAsync(int outSub, int pattern, object userState) {
            if ((this.BattSetEnableOperationCompleted == null)) {
                this.BattSetEnableOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattSetEnableOperationCompleted);
            }
            this.InvokeAsync("BattSetEnable", new object[] {
                        outSub,
                        pattern}, this.BattSetEnableOperationCompleted, userState);
        }
        
        private void OnBattSetEnableOperationCompleted(object arg) {
            if ((this.BattSetEnableCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattSetEnableCompleted(this, new BattSetEnableCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattGetEnable(int outSub, out int pattern) {
            object[] results = this.Invoke("BattGetEnable", new object[] {
                        outSub});
            pattern = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattGetEnableAsync(int outSub) {
            this.BattGetEnableAsync(outSub, null);
        }
        
        /// <remarks/>
        public void BattGetEnableAsync(int outSub, object userState) {
            if ((this.BattGetEnableOperationCompleted == null)) {
                this.BattGetEnableOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattGetEnableOperationCompleted);
            }
            this.InvokeAsync("BattGetEnable", new object[] {
                        outSub}, this.BattGetEnableOperationCompleted, userState);
        }
        
        private void OnBattGetEnableOperationCompleted(object arg) {
            if ((this.BattGetEnableCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattGetEnableCompleted(this, new BattGetEnableCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int BattReadInterlockState(int outSub, out bool interlock) {
            object[] results = this.Invoke("BattReadInterlockState", new object[] {
                        outSub});
            interlock = ((bool)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void BattReadInterlockStateAsync(int outSub) {
            this.BattReadInterlockStateAsync(outSub, null);
        }
        
        /// <remarks/>
        public void BattReadInterlockStateAsync(int outSub, object userState) {
            if ((this.BattReadInterlockStateOperationCompleted == null)) {
                this.BattReadInterlockStateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnBattReadInterlockStateOperationCompleted);
            }
            this.InvokeAsync("BattReadInterlockState", new object[] {
                        outSub}, this.BattReadInterlockStateOperationCompleted, userState);
        }
        
        private void OnBattReadInterlockStateOperationCompleted(object arg) {
            if ((this.BattReadInterlockStateCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.BattReadInterlockStateCompleted(this, new BattReadInterlockStateCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int VsourceSetRange(int outSub, double range) {
            object[] results = this.Invoke("VsourceSetRange", new object[] {
                        outSub,
                        range});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VsourceSetRangeAsync(int outSub, double range) {
            this.VsourceSetRangeAsync(outSub, range, null);
        }
        
        /// <remarks/>
        public void VsourceSetRangeAsync(int outSub, double range, object userState) {
            if ((this.VsourceSetRangeOperationCompleted == null)) {
                this.VsourceSetRangeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVsourceSetRangeOperationCompleted);
            }
            this.InvokeAsync("VsourceSetRange", new object[] {
                        outSub,
                        range}, this.VsourceSetRangeOperationCompleted, userState);
        }
        
        private void OnVsourceSetRangeOperationCompleted(object arg) {
            if ((this.VsourceSetRangeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VsourceSetRangeCompleted(this, new VsourceSetRangeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int VsourceGetRange(int outSub, out double range) {
            object[] results = this.Invoke("VsourceGetRange", new object[] {
                        outSub});
            range = ((double)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VsourceGetRangeAsync(int outSub) {
            this.VsourceGetRangeAsync(outSub, null);
        }
        
        /// <remarks/>
        public void VsourceGetRangeAsync(int outSub, object userState) {
            if ((this.VsourceGetRangeOperationCompleted == null)) {
                this.VsourceGetRangeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVsourceGetRangeOperationCompleted);
            }
            this.InvokeAsync("VsourceGetRange", new object[] {
                        outSub}, this.VsourceGetRangeOperationCompleted, userState);
        }
        
        private void OnVsourceGetRangeOperationCompleted(object arg) {
            if ((this.VsourceGetRangeCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VsourceGetRangeCompleted(this, new VsourceGetRangeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int VsourceSetVoltage(int outSub, double voltage) {
            object[] results = this.Invoke("VsourceSetVoltage", new object[] {
                        outSub,
                        voltage});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VsourceSetVoltageAsync(int outSub, double voltage) {
            this.VsourceSetVoltageAsync(outSub, voltage, null);
        }
        
        /// <remarks/>
        public void VsourceSetVoltageAsync(int outSub, double voltage, object userState) {
            if ((this.VsourceSetVoltageOperationCompleted == null)) {
                this.VsourceSetVoltageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVsourceSetVoltageOperationCompleted);
            }
            this.InvokeAsync("VsourceSetVoltage", new object[] {
                        outSub,
                        voltage}, this.VsourceSetVoltageOperationCompleted, userState);
        }
        
        private void OnVsourceSetVoltageOperationCompleted(object arg) {
            if ((this.VsourceSetVoltageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VsourceSetVoltageCompleted(this, new VsourceSetVoltageCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int VsourceGetVoltage(int outSub, out double voltage) {
            object[] results = this.Invoke("VsourceGetVoltage", new object[] {
                        outSub});
            voltage = ((double)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VsourceGetVoltageAsync(int outSub) {
            this.VsourceGetVoltageAsync(outSub, null);
        }
        
        /// <remarks/>
        public void VsourceGetVoltageAsync(int outSub, object userState) {
            if ((this.VsourceGetVoltageOperationCompleted == null)) {
                this.VsourceGetVoltageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVsourceGetVoltageOperationCompleted);
            }
            this.InvokeAsync("VsourceGetVoltage", new object[] {
                        outSub}, this.VsourceGetVoltageOperationCompleted, userState);
        }
        
        private void OnVsourceGetVoltageOperationCompleted(object arg) {
            if ((this.VsourceGetVoltageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VsourceGetVoltageCompleted(this, new VsourceGetVoltageCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int VsourceSetEnable(int outSub, int pattern) {
            object[] results = this.Invoke("VsourceSetEnable", new object[] {
                        outSub,
                        pattern});
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VsourceSetEnableAsync(int outSub, int pattern) {
            this.VsourceSetEnableAsync(outSub, pattern, null);
        }
        
        /// <remarks/>
        public void VsourceSetEnableAsync(int outSub, int pattern, object userState) {
            if ((this.VsourceSetEnableOperationCompleted == null)) {
                this.VsourceSetEnableOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVsourceSetEnableOperationCompleted);
            }
            this.InvokeAsync("VsourceSetEnable", new object[] {
                        outSub,
                        pattern}, this.VsourceSetEnableOperationCompleted, userState);
        }
        
        private void OnVsourceSetEnableOperationCompleted(object arg) {
            if ((this.VsourceSetEnableCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VsourceSetEnableCompleted(this, new VsourceSetEnableCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapHeaderAttribute("CardLocation")]
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public int VsourceGetEnable(int outSub, out int pattern) {
            object[] results = this.Invoke("VsourceGetEnable", new object[] {
                        outSub});
            pattern = ((int)(results[1]));
            return ((int)(results[0]));
        }
        
        /// <remarks/>
        public void VsourceGetEnableAsync(int outSub) {
            this.VsourceGetEnableAsync(outSub, null);
        }
        
        /// <remarks/>
        public void VsourceGetEnableAsync(int outSub, object userState) {
            if ((this.VsourceGetEnableOperationCompleted == null)) {
                this.VsourceGetEnableOperationCompleted = new System.Threading.SendOrPostCallback(this.OnVsourceGetEnableOperationCompleted);
            }
            this.InvokeAsync("VsourceGetEnable", new object[] {
                        outSub}, this.VsourceGetEnableOperationCompleted, userState);
        }
        
        private void OnVsourceGetEnableOperationCompleted(object arg) {
            if ((this.VsourceGetEnableCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.VsourceGetEnableCompleted(this, new VsourceGetEnableCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace="http://pickeringswitch.com/lxi/ws/picards", ResponseNamespace="http://pickeringswitch.com/lxi/ws/picards", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("message", IsNullable=true)]
        public string ErrorCodeToMessage(int errorCode) {
            object[] results = this.Invoke("ErrorCodeToMessage", new object[] {
                        errorCode});
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public void ErrorCodeToMessageAsync(int errorCode) {
            this.ErrorCodeToMessageAsync(errorCode, null);
        }
        
        /// <remarks/>
        public void ErrorCodeToMessageAsync(int errorCode, object userState) {
            if ((this.ErrorCodeToMessageOperationCompleted == null)) {
                this.ErrorCodeToMessageOperationCompleted = new System.Threading.SendOrPostCallback(this.OnErrorCodeToMessageOperationCompleted);
            }
            this.InvokeAsync("ErrorCodeToMessage", new object[] {
                        errorCode}, this.ErrorCodeToMessageOperationCompleted, userState);
        }
        
        private void OnErrorCodeToMessageOperationCompleted(object arg) {
            if ((this.ErrorCodeToMessageCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ErrorCodeToMessageCompleted(this, new ErrorCodeToMessageCompletedEventArgs(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.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    [System.Xml.Serialization.XmlRootAttribute("CardLocation", Namespace="http://pickeringswitch.com/lxi/ws/picards", IsNullable=false)]
    public partial class LocationHeader : System.Web.Services.Protocols.SoapHeader {
        
        private long busField;
        
        private long slotField;
        
        /// <remarks/>
        public long Bus {
            get {
                return this.busField;
            }
            set {
                this.busField = value;
            }
        }
        
        /// <remarks/>
        public long Slot {
            get {
                return this.slotField;
            }
            set {
                this.slotField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum StatusEnum {
        
        /// <remarks/>
        StatNoCard,
        
        /// <remarks/>
        StatWrongDriver,
        
        /// <remarks/>
        StatEepromErr,
        
        /// <remarks/>
        StatDisabled,
        
        /// <remarks/>
        SubStatNoSub,
        
        /// <remarks/>
        StatBusy,
        
        /// <remarks/>
        StatHwFault,
        
        /// <remarks/>
        StatParityError,
        
        /// <remarks/>
        StatPsuInhibited,
        
        /// <remarks/>
        StatPsuShutdown,
        
        /// <remarks/>
        StatPsuCurrentLimit,
        
        /// <remarks/>
        StatCorrupted,
        
        /// <remarks/>
        StatCardInaccessible,
        
        /// <remarks/>
        StatUncalibrated,
        
        /// <remarks/>
        StatCalibrationDue,
        
        /// <remarks/>
        StatBirstEnabled,
        
        /// <remarks/>
        StatOk,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum AttrCodeEnum {
        
        /// <remarks/>
        AttrChannelSubSwitches,
        
        /// <remarks/>
        AttrXIsoSubSwitches,
        
        /// <remarks/>
        AttrYIsoSubSwitches,
        
        /// <remarks/>
        AttrXLoopthruSubSwitches,
        
        /// <remarks/>
        AttrYLoopthruSubSwitches,
        
        /// <remarks/>
        AttrNumXSegments,
        
        /// <remarks/>
        AttrXSegment01Size,
        
        /// <remarks/>
        AttrXSegment02Size,
        
        /// <remarks/>
        AttrXSegment03Size,
        
        /// <remarks/>
        AttrXSegment04Size,
        
        /// <remarks/>
        AttrXSegment05Size,
        
        /// <remarks/>
        AttrXSegment06Size,
        
        /// <remarks/>
        AttrXSegment07Size,
        
        /// <remarks/>
        AttrXSegment08Size,
        
        /// <remarks/>
        AttrXSegment09Size,
        
        /// <remarks/>
        AttrXSegment10Size,
        
        /// <remarks/>
        AttrXSegment11Size,
        
        /// <remarks/>
        AttrXSegment12Size,
        
        /// <remarks/>
        AttrNumYSegments,
        
        /// <remarks/>
        AttrYSegment01Size,
        
        /// <remarks/>
        AttrYSegment02Size,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum TypeNumberEnum {
        
        /// <remarks/>
        TypeSw,
        
        /// <remarks/>
        TypeMux,
        
        /// <remarks/>
        TypeMuxm,
        
        /// <remarks/>
        TypeMat,
        
        /// <remarks/>
        TypeMatr,
        
        /// <remarks/>
        TypeDig,
        
        /// <remarks/>
        TypeRes,
        
        /// <remarks/>
        TypeAtten,
        
        /// <remarks/>
        TypePsudc,
        
        /// <remarks/>
        TypeBatt,
        
        /// <remarks/>
        TypeVsource,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum SwFuncEnum {
        
        /// <remarks/>
        SwFuncChannel,
        
        /// <remarks/>
        SwFuncXIso,
        
        /// <remarks/>
        SwFuncYIso,
        
        /// <remarks/>
        SwFuncXLoopthru,
        
        /// <remarks/>
        SwFuncYLoopthru,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum SwActEnum {
        
        /// <remarks/>
        SwActNone,
        
        /// <remarks/>
        SwActActOpen,
        
        /// <remarks/>
        SwActClose,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum StoreTypeEnum {
        
        /// <remarks/>
        CalStoreUser,
        
        /// <remarks/>
        CalStoreFactory,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.8.3761.0")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://pickeringswitch.com/lxi/ws/picards")]
    public enum ModeTypeEnum {
        
        /// <remarks/>
        ResModeSet,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void CardIdCompletedEventHandler(object sender, CardIdCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class CardIdCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal CardIdCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public string str {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ClosureLimitCompletedEventHandler(object sender, ClosureLimitCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ClosureLimitCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ClosureLimitCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int limit {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void CardOpsCountCompletedEventHandler(object sender, CardOpsCountCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class CardOpsCountCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal CardOpsCountCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int count {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void CountFreeCardsCompletedEventHandler(object sender, CountFreeCardsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class CountFreeCardsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal CountFreeCardsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int numCards {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void DiagnosticCompletedEventHandler(object sender, DiagnosticCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class DiagnosticCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal DiagnosticCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public string str {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void EnumerateSubsCompletedEventHandler(object sender, EnumerateSubsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class EnumerateSubsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal EnumerateSubsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int inSubs {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
        
        /// <remarks/>
        public int outSubs {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[2]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void FindFreeCardsCompletedEventHandler(object sender, FindFreeCardsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class FindFreeCardsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal FindFreeCardsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int[] busList {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int[])(this.results[1]));
            }
        }
        
        /// <remarks/>
        public int[] slotList {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int[])(this.results[2]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void SettleTimeCompletedEventHandler(object sender, SettleTimeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class SettleTimeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal SettleTimeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int time {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void StatusCompletedEventHandler(object sender, StatusCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class StatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal StatusCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public StatusEnum status1 {
            get {
                this.RaiseExceptionIfNecessary();
                return ((StatusEnum)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void SubAttributeCompletedEventHandler(object sender, SubAttributeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class SubAttributeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal SubAttributeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int attrValue {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void SubInfoCompletedEventHandler(object sender, SubInfoCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class SubInfoCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal SubInfoCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public TypeNumberEnum typeNum {
            get {
                this.RaiseExceptionIfNecessary();
                return ((TypeNumberEnum)(this.results[1]));
            }
        }
        
        /// <remarks/>
        public int rows {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[2]));
            }
        }
        
        /// <remarks/>
        public int cols {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[3]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void SubStatusCompletedEventHandler(object sender, SubStatusCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class SubStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal SubStatusCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public StatusEnum status {
            get {
                this.RaiseExceptionIfNecessary();
                return ((StatusEnum)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void SubTypeCompletedEventHandler(object sender, SubTypeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class SubTypeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal SubTypeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public string str {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VersionCompletedEventHandler(object sender, VersionCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VersionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VersionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int version1 {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ClearAllCompletedEventHandler(object sender, ClearAllCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ClearAllCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ClearAllCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ClearCardCompletedEventHandler(object sender, ClearCardCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ClearCardCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ClearCardCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ClearSubCompletedEventHandler(object sender, ClearSubCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ClearSubCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ClearSubCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void OpBitCompletedEventHandler(object sender, OpBitCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OpBitCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OpBitCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ViewBitCompletedEventHandler(object sender, ViewBitCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ViewBitCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ViewBitCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool state {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ViewSubCompletedEventHandler(object sender, ViewSubCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ViewSubCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ViewSubCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int[] data {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int[])(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void WriteSubCompletedEventHandler(object sender, WriteSubCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WriteSubCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WriteSubCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ReadBitCompletedEventHandler(object sender, ReadBitCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReadBitCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReadBitCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool state {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ReadSubCompletedEventHandler(object sender, ReadSubCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReadSubCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReadSubCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int[] data {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int[])(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ClearMaskCompletedEventHandler(object sender, ClearMaskCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ClearMaskCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ClearMaskCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void MaskBitCompletedEventHandler(object sender, MaskBitCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class MaskBitCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal MaskBitCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void MaskCrosspointCompletedEventHandler(object sender, MaskCrosspointCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class MaskCrosspointCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal MaskCrosspointCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void OpCrosspointCompletedEventHandler(object sender, OpCrosspointCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OpCrosspointCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OpCrosspointCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void OpSwitchCompletedEventHandler(object sender, OpSwitchCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class OpSwitchCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal OpSwitchCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool state {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ViewCrosspointCompletedEventHandler(object sender, ViewCrosspointCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ViewCrosspointCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ViewCrosspointCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool state {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ViewMaskCompletedEventHandler(object sender, ViewMaskCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ViewMaskCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ViewMaskCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int[] data {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int[])(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ViewMaskBitCompletedEventHandler(object sender, ViewMaskBitCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ViewMaskBitCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ViewMaskBitCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool state {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ViewMaskCrosspointCompletedEventHandler(object sender, ViewMaskCrosspointCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ViewMaskCrosspointCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ViewMaskCrosspointCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool state {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void WriteMaskCompletedEventHandler(object sender, WriteMaskCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WriteMaskCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WriteMaskCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void PsuEnableCompletedEventHandler(object sender, PsuEnableCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class PsuEnableCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal PsuEnableCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void PsuGetVoltageCompletedEventHandler(object sender, PsuGetVoltageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class PsuGetVoltageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal PsuGetVoltageCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double voltage {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void PsuSetVoltageCompletedEventHandler(object sender, PsuSetVoltageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class PsuSetVoltageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal PsuSetVoltageCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void PsuInfoCompletedEventHandler(object sender, PsuInfoCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class PsuInfoCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal PsuInfoCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int typeNum {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
        
        /// <remarks/>
        public double voltage {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[2]));
            }
        }
        
        /// <remarks/>
        public double current {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[3]));
            }
        }
        
        /// <remarks/>
        public int precis {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[4]));
            }
        }
        
        /// <remarks/>
        public int capabilities {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[5]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void PsuTypeCompletedEventHandler(object sender, PsuTypeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class PsuTypeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal PsuTypeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public string str {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void AttenGetAttenuationCompletedEventHandler(object sender, AttenGetAttenuationCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class AttenGetAttenuationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal AttenGetAttenuationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public float atten {
            get {
                this.RaiseExceptionIfNecessary();
                return ((float)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void AttenInfoCompletedEventHandler(object sender, AttenInfoCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class AttenInfoCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal AttenInfoCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int typeNum {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
        
        /// <remarks/>
        public int numSteps {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[2]));
            }
        }
        
        /// <remarks/>
        public float stepSize {
            get {
                this.RaiseExceptionIfNecessary();
                return ((float)(this.results[3]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void AttenPadValueCompletedEventHandler(object sender, AttenPadValueCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class AttenPadValueCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal AttenPadValueCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public float atten {
            get {
                this.RaiseExceptionIfNecessary();
                return ((float)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void AttenSetAttenuationCompletedEventHandler(object sender, AttenSetAttenuationCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class AttenSetAttenuationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal AttenSetAttenuationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void AttenTypeCompletedEventHandler(object sender, AttenTypeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class AttenTypeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal AttenTypeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public string str {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ReadCalCompletedEventHandler(object sender, ReadCalCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReadCalCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReadCalCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int data {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ReadCalDateCompletedEventHandler(object sender, ReadCalDateCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReadCalDateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReadCalDateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int year {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
        
        /// <remarks/>
        public int day {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[2]));
            }
        }
        
        /// <remarks/>
        public int interval {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[3]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ReadCalFPCompletedEventHandler(object sender, ReadCalFPCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ReadCalFPCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ReadCalFPCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double[] data {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double[])(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void SetCalPointCompletedEventHandler(object sender, SetCalPointCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class SetCalPointCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal SetCalPointCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void WriteCalCompletedEventHandler(object sender, WriteCalCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WriteCalCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WriteCalCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void WriteCalDateCompletedEventHandler(object sender, WriteCalDateCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WriteCalDateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WriteCalDateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void WriteCalFPCompletedEventHandler(object sender, WriteCalFPCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WriteCalFPCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WriteCalFPCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ResGetResistanceCompletedEventHandler(object sender, ResGetResistanceCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ResGetResistanceCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ResGetResistanceCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double resistance {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ResSetResistanceCompletedEventHandler(object sender, ResSetResistanceCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ResSetResistanceCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ResSetResistanceCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ResInfoCompletedEventHandler(object sender, ResInfoCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ResInfoCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ResInfoCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double minRes {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
        
        /// <remarks/>
        public double maxRes {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[2]));
            }
        }
        
        /// <remarks/>
        public double refRes {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[3]));
            }
        }
        
        /// <remarks/>
        public double precPC {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[4]));
            }
        }
        
        /// <remarks/>
        public double precDelta {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[5]));
            }
        }
        
        /// <remarks/>
        public double int1 {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[6]));
            }
        }
        
        /// <remarks/>
        public double intDelta {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[7]));
            }
        }
        
        /// <remarks/>
        public int capabilities {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[8]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattSetVoltageCompletedEventHandler(object sender, BattSetVoltageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattSetVoltageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattSetVoltageCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattGetVoltageCompletedEventHandler(object sender, BattGetVoltageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattGetVoltageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattGetVoltageCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double voltage {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattSetCurrentCompletedEventHandler(object sender, BattSetCurrentCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattSetCurrentCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattSetCurrentCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattGetCurrentCompletedEventHandler(object sender, BattGetCurrentCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattGetCurrentCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattGetCurrentCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double current {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattSetEnableCompletedEventHandler(object sender, BattSetEnableCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattSetEnableCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattSetEnableCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattGetEnableCompletedEventHandler(object sender, BattGetEnableCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattGetEnableCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattGetEnableCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int pattern {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void BattReadInterlockStateCompletedEventHandler(object sender, BattReadInterlockStateCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class BattReadInterlockStateCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal BattReadInterlockStateCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public bool interlock {
            get {
                this.RaiseExceptionIfNecessary();
                return ((bool)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VsourceSetRangeCompletedEventHandler(object sender, VsourceSetRangeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VsourceSetRangeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VsourceSetRangeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VsourceGetRangeCompletedEventHandler(object sender, VsourceGetRangeCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VsourceGetRangeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VsourceGetRangeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double range {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VsourceSetVoltageCompletedEventHandler(object sender, VsourceSetVoltageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VsourceSetVoltageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VsourceSetVoltageCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VsourceGetVoltageCompletedEventHandler(object sender, VsourceGetVoltageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VsourceGetVoltageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VsourceGetVoltageCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public double voltage {
            get {
                this.RaiseExceptionIfNecessary();
                return ((double)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VsourceSetEnableCompletedEventHandler(object sender, VsourceSetEnableCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VsourceSetEnableCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VsourceSetEnableCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void VsourceGetEnableCompletedEventHandler(object sender, VsourceGetEnableCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class VsourceGetEnableCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal VsourceGetEnableCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public int Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[0]));
            }
        }
        
        /// <remarks/>
        public int pattern {
            get {
                this.RaiseExceptionIfNecessary();
                return ((int)(this.results[1]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    public delegate void ErrorCodeToMessageCompletedEventHandler(object sender, ErrorCodeToMessageCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.8.3761.0")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ErrorCodeToMessageCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ErrorCodeToMessageCompletedEventArgs(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]));
            }
        }
    }
}

#pragma warning restore 1591