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

namespace Pluto.Api {
    using System;
    using RemObjects.SDK;
    using RemObjects.SDK.Types;
    using System.Collections.Generic;
    
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum TerminologyTypeEnum : int {
        CPT = 0,
        HCPCS = 1,
        ICD = 2,
        ICD9P = 3,
    }
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum TerminologyDomainEnum : int {
        ProceduresAll = 0,
        DiagnosesAll = 1,
    }
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum TerminologySearchTypeEnum : int {
        Code = 0,
        Description = 1,
        CodeSet = 2,
    }
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum MailboxFolderTypeEnum : int {
        NotSet = 0,
        Inbox = 1,
        Sent = 2,
        Saved = 3,
        Done = 4,
        Outbox = 5,
        Draft = 6,
    }
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum MessageCategoryEnum : int {
        None = 0,
        Message = 1,
        Task = 2,
    }
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum MessageSendTypeEnum : int {
        Default = 0,
        Reply = 1,
        ReplyAll = 2,
        Forward = 3,
    }
    [RemObjects.SDK.Remotable()]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public enum AppointmentStatusEnum : int {
        Unconfirmed_Pending = 0,
        Confirmed = 1,
        CheckedIn_Waiting = 2,
        Missed = 3,
        Cancelled = 4,
        BeingSeen = 5,
        CheckedOut_Completed = 6,
        Rescheduled = 7,
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(AppointmentInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class AppointmentInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private System.DateTime @__StartDateTime;
        private System.DateTime @__EndDateTime;
        private string @__Reason;
        private PatientInfo1 @__Patient;
        private AppointmentColor1 @__AppointmentColor;
        private string @__AppointmentDescription;
        private string @__AppointmentPhone;
        private string @__ProviderCode;
        private AppointmentStatusEnum @__AppointmentStatus;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual System.DateTime StartDateTime {
            get {
                return @__StartDateTime;
            }
            set {
                @__StartDateTime = value;
                this.TriggerPropertyChanged("StartDateTime");
            }
        }
        public virtual System.DateTime EndDateTime {
            get {
                return @__EndDateTime;
            }
            set {
                @__EndDateTime = value;
                this.TriggerPropertyChanged("EndDateTime");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Reason {
            get {
                return @__Reason;
            }
            set {
                @__Reason = value;
                this.TriggerPropertyChanged("Reason");
            }
        }
        public virtual PatientInfo1 Patient {
            get {
                return @__Patient;
            }
            set {
                @__Patient = value;
                this.TriggerPropertyChanged("Patient");
            }
        }
        public virtual AppointmentColor1 AppointmentColor {
            get {
                return @__AppointmentColor;
            }
            set {
                @__AppointmentColor = value;
                this.TriggerPropertyChanged("AppointmentColor");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string AppointmentDescription {
            get {
                return @__AppointmentDescription;
            }
            set {
                @__AppointmentDescription = value;
                this.TriggerPropertyChanged("AppointmentDescription");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string AppointmentPhone {
            get {
                return @__AppointmentPhone;
            }
            set {
                @__AppointmentPhone = value;
                this.TriggerPropertyChanged("AppointmentPhone");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProviderCode {
            get {
                return @__ProviderCode;
            }
            set {
                @__ProviderCode = value;
                this.TriggerPropertyChanged("ProviderCode");
            }
        }
        public virtual AppointmentStatusEnum AppointmentStatus {
            get {
                return @__AppointmentStatus;
            }
            set {
                @__AppointmentStatus = value;
                this.TriggerPropertyChanged("AppointmentStatus");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                StartDateTime = aSerializer.ReadDateTime("StartDateTime");
                EndDateTime = aSerializer.ReadDateTime("EndDateTime");
                Reason = aSerializer.ReadAnsiString("Reason");
                Patient = ((PatientInfo1)(aSerializer.Read("Patient", typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                AppointmentColor = ((AppointmentColor1)(aSerializer.Read("AppointmentColor", typeof(AppointmentColor1), RemObjects.SDK.StreamingFormat.Default)));
                AppointmentDescription = aSerializer.ReadAnsiString("AppointmentDescription");
                AppointmentPhone = aSerializer.ReadAnsiString("AppointmentPhone");
                ProviderCode = aSerializer.ReadAnsiString("ProviderCode");
                AppointmentStatus = ((AppointmentStatusEnum)(aSerializer.Read("AppointmentStatus", typeof(AppointmentStatusEnum), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                AppointmentColor = ((AppointmentColor1)(aSerializer.Read("AppointmentColor", typeof(AppointmentColor1), RemObjects.SDK.StreamingFormat.Default)));
                AppointmentDescription = aSerializer.ReadAnsiString("AppointmentDescription");
                AppointmentPhone = aSerializer.ReadAnsiString("AppointmentPhone");
                AppointmentStatus = ((AppointmentStatusEnum)(aSerializer.Read("AppointmentStatus", typeof(AppointmentStatusEnum), RemObjects.SDK.StreamingFormat.Default)));
                EndDateTime = aSerializer.ReadDateTime("EndDateTime");
                Id = aSerializer.ReadInt64("Id");
                Patient = ((PatientInfo1)(aSerializer.Read("Patient", typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                ProviderCode = aSerializer.ReadAnsiString("ProviderCode");
                Reason = aSerializer.ReadAnsiString("Reason");
                StartDateTime = aSerializer.ReadDateTime("StartDateTime");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteDateTime("StartDateTime", StartDateTime);
                aSerializer.WriteDateTime("EndDateTime", EndDateTime);
                aSerializer.WriteAnsiString("Reason", Reason);
                aSerializer.Write("Patient", Patient, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("AppointmentColor", AppointmentColor, typeof(AppointmentColor1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("AppointmentDescription", AppointmentDescription);
                aSerializer.WriteAnsiString("AppointmentPhone", AppointmentPhone);
                aSerializer.WriteAnsiString("ProviderCode", ProviderCode);
                aSerializer.Write("AppointmentStatus", AppointmentStatus, typeof(AppointmentStatusEnum), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.Write("AppointmentColor", AppointmentColor, typeof(AppointmentColor1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("AppointmentDescription", AppointmentDescription);
                aSerializer.WriteAnsiString("AppointmentPhone", AppointmentPhone);
                aSerializer.Write("AppointmentStatus", AppointmentStatus, typeof(AppointmentStatusEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("EndDateTime", EndDateTime);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.Write("Patient", Patient, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("ProviderCode", ProviderCode);
                aSerializer.WriteAnsiString("Reason", Reason);
                aSerializer.WriteDateTime("StartDateTime", StartDateTime);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class AppointmentInfo1_Activator : RemObjects.SDK.TypeActivator {
        public AppointmentInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new AppointmentInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PatientInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PatientInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Id;
        private string @__LastName;
        private string @__FirstName;
        private string @__MiddleName;
        private System.DateTime @__DOB;
        private AddressInfo1 @__PrimaryAddress;
        private string @__ChartId;
        private string @__Age;
        private string @__Gender;
        private string @__Weight;
        private string @__PrimaryPhone;
        private string @__SocialSecurity;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string LastName {
            get {
                return @__LastName;
            }
            set {
                @__LastName = value;
                this.TriggerPropertyChanged("LastName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string FirstName {
            get {
                return @__FirstName;
            }
            set {
                @__FirstName = value;
                this.TriggerPropertyChanged("FirstName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string MiddleName {
            get {
                return @__MiddleName;
            }
            set {
                @__MiddleName = value;
                this.TriggerPropertyChanged("MiddleName");
            }
        }
        public virtual System.DateTime DOB {
            get {
                return @__DOB;
            }
            set {
                @__DOB = value;
                this.TriggerPropertyChanged("DOB");
            }
        }
        public virtual AddressInfo1 PrimaryAddress {
            get {
                return @__PrimaryAddress;
            }
            set {
                @__PrimaryAddress = value;
                this.TriggerPropertyChanged("PrimaryAddress");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ChartId {
            get {
                return @__ChartId;
            }
            set {
                @__ChartId = value;
                this.TriggerPropertyChanged("ChartId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Age {
            get {
                return @__Age;
            }
            set {
                @__Age = value;
                this.TriggerPropertyChanged("Age");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Gender {
            get {
                return @__Gender;
            }
            set {
                @__Gender = value;
                this.TriggerPropertyChanged("Gender");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Weight {
            get {
                return @__Weight;
            }
            set {
                @__Weight = value;
                this.TriggerPropertyChanged("Weight");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PrimaryPhone {
            get {
                return @__PrimaryPhone;
            }
            set {
                @__PrimaryPhone = value;
                this.TriggerPropertyChanged("PrimaryPhone");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SocialSecurity {
            get {
                return @__SocialSecurity;
            }
            set {
                @__SocialSecurity = value;
                this.TriggerPropertyChanged("SocialSecurity");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadAnsiString("Id");
                LastName = aSerializer.ReadAnsiString("LastName");
                FirstName = aSerializer.ReadAnsiString("FirstName");
                MiddleName = aSerializer.ReadAnsiString("MiddleName");
                DOB = aSerializer.ReadDateTime("DOB");
                PrimaryAddress = ((AddressInfo1)(aSerializer.Read("PrimaryAddress", typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default)));
                ChartId = aSerializer.ReadAnsiString("ChartId");
                Age = aSerializer.ReadAnsiString("Age");
                Gender = aSerializer.ReadAnsiString("Gender");
                Weight = aSerializer.ReadAnsiString("Weight");
                PrimaryPhone = aSerializer.ReadAnsiString("PrimaryPhone");
                SocialSecurity = aSerializer.ReadAnsiString("SocialSecurity");
            }
            else {
                Age = aSerializer.ReadAnsiString("Age");
                ChartId = aSerializer.ReadAnsiString("ChartId");
                DOB = aSerializer.ReadDateTime("DOB");
                FirstName = aSerializer.ReadAnsiString("FirstName");
                Gender = aSerializer.ReadAnsiString("Gender");
                Id = aSerializer.ReadAnsiString("Id");
                LastName = aSerializer.ReadAnsiString("LastName");
                MiddleName = aSerializer.ReadAnsiString("MiddleName");
                PrimaryAddress = ((AddressInfo1)(aSerializer.Read("PrimaryAddress", typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default)));
                PrimaryPhone = aSerializer.ReadAnsiString("PrimaryPhone");
                SocialSecurity = aSerializer.ReadAnsiString("SocialSecurity");
                Weight = aSerializer.ReadAnsiString("Weight");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Id", Id);
                aSerializer.WriteAnsiString("LastName", LastName);
                aSerializer.WriteAnsiString("FirstName", FirstName);
                aSerializer.WriteAnsiString("MiddleName", MiddleName);
                aSerializer.WriteDateTime("DOB", DOB);
                aSerializer.Write("PrimaryAddress", PrimaryAddress, typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("ChartId", ChartId);
                aSerializer.WriteAnsiString("Age", Age);
                aSerializer.WriteAnsiString("Gender", Gender);
                aSerializer.WriteAnsiString("Weight", Weight);
                aSerializer.WriteAnsiString("PrimaryPhone", PrimaryPhone);
                aSerializer.WriteAnsiString("SocialSecurity", SocialSecurity);
            }
            else {
                aSerializer.WriteAnsiString("Age", Age);
                aSerializer.WriteAnsiString("ChartId", ChartId);
                aSerializer.WriteDateTime("DOB", DOB);
                aSerializer.WriteAnsiString("FirstName", FirstName);
                aSerializer.WriteAnsiString("Gender", Gender);
                aSerializer.WriteAnsiString("Id", Id);
                aSerializer.WriteAnsiString("LastName", LastName);
                aSerializer.WriteAnsiString("MiddleName", MiddleName);
                aSerializer.Write("PrimaryAddress", PrimaryAddress, typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("PrimaryPhone", PrimaryPhone);
                aSerializer.WriteAnsiString("SocialSecurity", SocialSecurity);
                aSerializer.WriteAnsiString("Weight", Weight);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PatientInfo1_Activator : RemObjects.SDK.TypeActivator {
        public PatientInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PatientInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PracticeInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PracticeInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private string @__Name;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                Name = aSerializer.ReadAnsiString("Name");
            }
            else {
                Id = aSerializer.ReadInt32("Id");
                Name = aSerializer.ReadAnsiString("Name");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
            }
            else {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PracticeInfo1_Activator : RemObjects.SDK.TypeActivator {
        public PracticeInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PracticeInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ProviderInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ProviderInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private string @__UserId;
        private string @__LastName;
        private string @__FirstName;
        private string @__MiddleName;
        private string @__Phone;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string UserId {
            get {
                return @__UserId;
            }
            set {
                @__UserId = value;
                this.TriggerPropertyChanged("UserId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string LastName {
            get {
                return @__LastName;
            }
            set {
                @__LastName = value;
                this.TriggerPropertyChanged("LastName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string FirstName {
            get {
                return @__FirstName;
            }
            set {
                @__FirstName = value;
                this.TriggerPropertyChanged("FirstName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string MiddleName {
            get {
                return @__MiddleName;
            }
            set {
                @__MiddleName = value;
                this.TriggerPropertyChanged("MiddleName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Phone {
            get {
                return @__Phone;
            }
            set {
                @__Phone = value;
                this.TriggerPropertyChanged("Phone");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                UserId = aSerializer.ReadAnsiString("UserId");
                LastName = aSerializer.ReadAnsiString("LastName");
                FirstName = aSerializer.ReadAnsiString("FirstName");
                MiddleName = aSerializer.ReadAnsiString("MiddleName");
                Phone = aSerializer.ReadAnsiString("Phone");
            }
            else {
                FirstName = aSerializer.ReadAnsiString("FirstName");
                Id = aSerializer.ReadInt64("Id");
                LastName = aSerializer.ReadAnsiString("LastName");
                MiddleName = aSerializer.ReadAnsiString("MiddleName");
                Phone = aSerializer.ReadAnsiString("Phone");
                UserId = aSerializer.ReadAnsiString("UserId");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteAnsiString("UserId", UserId);
                aSerializer.WriteAnsiString("LastName", LastName);
                aSerializer.WriteAnsiString("FirstName", FirstName);
                aSerializer.WriteAnsiString("MiddleName", MiddleName);
                aSerializer.WriteAnsiString("Phone", Phone);
            }
            else {
                aSerializer.WriteAnsiString("FirstName", FirstName);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteAnsiString("LastName", LastName);
                aSerializer.WriteAnsiString("MiddleName", MiddleName);
                aSerializer.WriteAnsiString("Phone", Phone);
                aSerializer.WriteAnsiString("UserId", UserId);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ProviderInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ProviderInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ProviderInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(UserInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class UserInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Id;
        private string @__LastName;
        private string @__FirstName;
        private string @__Name;
        private string @__UserName;
        private bool @__IsProvider;
        private string @__AuthToken;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string LastName {
            get {
                return @__LastName;
            }
            set {
                @__LastName = value;
                this.TriggerPropertyChanged("LastName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string FirstName {
            get {
                return @__FirstName;
            }
            set {
                @__FirstName = value;
                this.TriggerPropertyChanged("FirstName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string UserName {
            get {
                return @__UserName;
            }
            set {
                @__UserName = value;
                this.TriggerPropertyChanged("UserName");
            }
        }
        public virtual bool IsProvider {
            get {
                return @__IsProvider;
            }
            set {
                @__IsProvider = value;
                this.TriggerPropertyChanged("IsProvider");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string AuthToken {
            get {
                return @__AuthToken;
            }
            set {
                @__AuthToken = value;
                this.TriggerPropertyChanged("AuthToken");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadAnsiString("Id");
                LastName = aSerializer.ReadAnsiString("LastName");
                FirstName = aSerializer.ReadAnsiString("FirstName");
                Name = aSerializer.ReadAnsiString("Name");
                UserName = aSerializer.ReadAnsiString("UserName");
                IsProvider = aSerializer.ReadBoolean("IsProvider");
                AuthToken = aSerializer.ReadAnsiString("AuthToken");
            }
            else {
                AuthToken = aSerializer.ReadAnsiString("AuthToken");
                FirstName = aSerializer.ReadAnsiString("FirstName");
                Id = aSerializer.ReadAnsiString("Id");
                IsProvider = aSerializer.ReadBoolean("IsProvider");
                LastName = aSerializer.ReadAnsiString("LastName");
                Name = aSerializer.ReadAnsiString("Name");
                UserName = aSerializer.ReadAnsiString("UserName");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Id", Id);
                aSerializer.WriteAnsiString("LastName", LastName);
                aSerializer.WriteAnsiString("FirstName", FirstName);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("UserName", UserName);
                aSerializer.WriteBoolean("IsProvider", IsProvider);
                aSerializer.WriteAnsiString("AuthToken", AuthToken);
            }
            else {
                aSerializer.WriteAnsiString("AuthToken", AuthToken);
                aSerializer.WriteAnsiString("FirstName", FirstName);
                aSerializer.WriteAnsiString("Id", Id);
                aSerializer.WriteBoolean("IsProvider", IsProvider);
                aSerializer.WriteAnsiString("LastName", LastName);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("UserName", UserName);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class UserInfo1_Activator : RemObjects.SDK.TypeActivator {
        public UserInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new UserInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(AddressInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class AddressInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Address1;
        private string @__Address2;
        private string @__City;
        private string @__State;
        private string @__Zip;
        private string @__Country;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Address1 {
            get {
                return @__Address1;
            }
            set {
                @__Address1 = value;
                this.TriggerPropertyChanged("Address1");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Address2 {
            get {
                return @__Address2;
            }
            set {
                @__Address2 = value;
                this.TriggerPropertyChanged("Address2");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string City {
            get {
                return @__City;
            }
            set {
                @__City = value;
                this.TriggerPropertyChanged("City");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string State {
            get {
                return @__State;
            }
            set {
                @__State = value;
                this.TriggerPropertyChanged("State");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Zip {
            get {
                return @__Zip;
            }
            set {
                @__Zip = value;
                this.TriggerPropertyChanged("Zip");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Country {
            get {
                return @__Country;
            }
            set {
                @__Country = value;
                this.TriggerPropertyChanged("Country");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Address1 = aSerializer.ReadAnsiString("Address1");
                Address2 = aSerializer.ReadAnsiString("Address2");
                City = aSerializer.ReadAnsiString("City");
                State = aSerializer.ReadAnsiString("State");
                Zip = aSerializer.ReadAnsiString("Zip");
                Country = aSerializer.ReadAnsiString("Country");
            }
            else {
                Address1 = aSerializer.ReadAnsiString("Address1");
                Address2 = aSerializer.ReadAnsiString("Address2");
                City = aSerializer.ReadAnsiString("City");
                Country = aSerializer.ReadAnsiString("Country");
                State = aSerializer.ReadAnsiString("State");
                Zip = aSerializer.ReadAnsiString("Zip");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Address1", Address1);
                aSerializer.WriteAnsiString("Address2", Address2);
                aSerializer.WriteAnsiString("City", City);
                aSerializer.WriteAnsiString("State", State);
                aSerializer.WriteAnsiString("Zip", Zip);
                aSerializer.WriteAnsiString("Country", Country);
            }
            else {
                aSerializer.WriteAnsiString("Address1", Address1);
                aSerializer.WriteAnsiString("Address2", Address2);
                aSerializer.WriteAnsiString("City", City);
                aSerializer.WriteAnsiString("Country", Country);
                aSerializer.WriteAnsiString("State", State);
                aSerializer.WriteAnsiString("Zip", Zip);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class AddressInfo1_Activator : RemObjects.SDK.TypeActivator {
        public AddressInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new AddressInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PrescribedMedicationInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PrescribedMedicationInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private string @__Name;
        private System.DateTime @__StartDate;
        private System.DateTime @__StopDate;
        private bool @__IsActive;
        private string @__Status;
        private string @__Mode;
        private string @__Quantity;
        private int @__NumberOfRefills;
        private string @__Unit;
        private string @__SIG;
        private string @__PharmacyName;
        private string @__PharmacyAddress;
        private string @__PharmacyPhone;
        private string @__PharmacyFax;
        private int @__ProviderId;
        private string @__ProviderName;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public virtual System.DateTime StartDate {
            get {
                return @__StartDate;
            }
            set {
                @__StartDate = value;
                this.TriggerPropertyChanged("StartDate");
            }
        }
        public virtual System.DateTime StopDate {
            get {
                return @__StopDate;
            }
            set {
                @__StopDate = value;
                this.TriggerPropertyChanged("StopDate");
            }
        }
        public virtual bool IsActive {
            get {
                return @__IsActive;
            }
            set {
                @__IsActive = value;
                this.TriggerPropertyChanged("IsActive");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Mode {
            get {
                return @__Mode;
            }
            set {
                @__Mode = value;
                this.TriggerPropertyChanged("Mode");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Quantity {
            get {
                return @__Quantity;
            }
            set {
                @__Quantity = value;
                this.TriggerPropertyChanged("Quantity");
            }
        }
        public virtual int NumberOfRefills {
            get {
                return @__NumberOfRefills;
            }
            set {
                @__NumberOfRefills = value;
                this.TriggerPropertyChanged("NumberOfRefills");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Unit {
            get {
                return @__Unit;
            }
            set {
                @__Unit = value;
                this.TriggerPropertyChanged("Unit");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SIG {
            get {
                return @__SIG;
            }
            set {
                @__SIG = value;
                this.TriggerPropertyChanged("SIG");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PharmacyName {
            get {
                return @__PharmacyName;
            }
            set {
                @__PharmacyName = value;
                this.TriggerPropertyChanged("PharmacyName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PharmacyAddress {
            get {
                return @__PharmacyAddress;
            }
            set {
                @__PharmacyAddress = value;
                this.TriggerPropertyChanged("PharmacyAddress");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PharmacyPhone {
            get {
                return @__PharmacyPhone;
            }
            set {
                @__PharmacyPhone = value;
                this.TriggerPropertyChanged("PharmacyPhone");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PharmacyFax {
            get {
                return @__PharmacyFax;
            }
            set {
                @__PharmacyFax = value;
                this.TriggerPropertyChanged("PharmacyFax");
            }
        }
        public virtual int ProviderId {
            get {
                return @__ProviderId;
            }
            set {
                @__ProviderId = value;
                this.TriggerPropertyChanged("ProviderId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProviderName {
            get {
                return @__ProviderName;
            }
            set {
                @__ProviderName = value;
                this.TriggerPropertyChanged("ProviderName");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                Name = aSerializer.ReadAnsiString("Name");
                StartDate = aSerializer.ReadDateTime("StartDate");
                StopDate = aSerializer.ReadDateTime("StopDate");
                IsActive = aSerializer.ReadBoolean("IsActive");
                Status = aSerializer.ReadAnsiString("Status");
                Mode = aSerializer.ReadAnsiString("Mode");
                Quantity = aSerializer.ReadAnsiString("Quantity");
                NumberOfRefills = aSerializer.ReadInt32("NumberOfRefills");
                Unit = aSerializer.ReadAnsiString("Unit");
                SIG = aSerializer.ReadAnsiString("SIG");
                PharmacyName = aSerializer.ReadAnsiString("PharmacyName");
                PharmacyAddress = aSerializer.ReadAnsiString("PharmacyAddress");
                PharmacyPhone = aSerializer.ReadAnsiString("PharmacyPhone");
                PharmacyFax = aSerializer.ReadAnsiString("PharmacyFax");
                ProviderId = aSerializer.ReadInt32("ProviderId");
                ProviderName = aSerializer.ReadAnsiString("ProviderName");
            }
            else {
                Id = aSerializer.ReadInt64("Id");
                IsActive = aSerializer.ReadBoolean("IsActive");
                Mode = aSerializer.ReadAnsiString("Mode");
                Name = aSerializer.ReadAnsiString("Name");
                NumberOfRefills = aSerializer.ReadInt32("NumberOfRefills");
                PharmacyAddress = aSerializer.ReadAnsiString("PharmacyAddress");
                PharmacyFax = aSerializer.ReadAnsiString("PharmacyFax");
                PharmacyName = aSerializer.ReadAnsiString("PharmacyName");
                PharmacyPhone = aSerializer.ReadAnsiString("PharmacyPhone");
                ProviderId = aSerializer.ReadInt32("ProviderId");
                ProviderName = aSerializer.ReadAnsiString("ProviderName");
                Quantity = aSerializer.ReadAnsiString("Quantity");
                SIG = aSerializer.ReadAnsiString("SIG");
                StartDate = aSerializer.ReadDateTime("StartDate");
                Status = aSerializer.ReadAnsiString("Status");
                StopDate = aSerializer.ReadDateTime("StopDate");
                Unit = aSerializer.ReadAnsiString("Unit");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteDateTime("StartDate", StartDate);
                aSerializer.WriteDateTime("StopDate", StopDate);
                aSerializer.WriteBoolean("IsActive", IsActive);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("Mode", Mode);
                aSerializer.WriteAnsiString("Quantity", Quantity);
                aSerializer.WriteInt32("NumberOfRefills", NumberOfRefills);
                aSerializer.WriteAnsiString("Unit", Unit);
                aSerializer.WriteAnsiString("SIG", SIG);
                aSerializer.WriteAnsiString("PharmacyName", PharmacyName);
                aSerializer.WriteAnsiString("PharmacyAddress", PharmacyAddress);
                aSerializer.WriteAnsiString("PharmacyPhone", PharmacyPhone);
                aSerializer.WriteAnsiString("PharmacyFax", PharmacyFax);
                aSerializer.WriteInt32("ProviderId", ProviderId);
                aSerializer.WriteAnsiString("ProviderName", ProviderName);
            }
            else {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsActive", IsActive);
                aSerializer.WriteAnsiString("Mode", Mode);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteInt32("NumberOfRefills", NumberOfRefills);
                aSerializer.WriteAnsiString("PharmacyAddress", PharmacyAddress);
                aSerializer.WriteAnsiString("PharmacyFax", PharmacyFax);
                aSerializer.WriteAnsiString("PharmacyName", PharmacyName);
                aSerializer.WriteAnsiString("PharmacyPhone", PharmacyPhone);
                aSerializer.WriteInt32("ProviderId", ProviderId);
                aSerializer.WriteAnsiString("ProviderName", ProviderName);
                aSerializer.WriteAnsiString("Quantity", Quantity);
                aSerializer.WriteAnsiString("SIG", SIG);
                aSerializer.WriteDateTime("StartDate", StartDate);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteDateTime("StopDate", StopDate);
                aSerializer.WriteAnsiString("Unit", Unit);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PrescribedMedicationInfo1_Activator : RemObjects.SDK.TypeActivator {
        public PrescribedMedicationInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PrescribedMedicationInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(MedicationInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class MedicationInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Id;
        private string @__DataProvider;
        private string @__FullName;
        private string @__Name;
        private string @__GenericName;
        private string @__DEAClassCode;
        private string @__Dosage;
        private string @__DosageForm;
        private string @__Route;
        private string @__Status;
        private string @__TherapeuticClass;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string DataProvider {
            get {
                return @__DataProvider;
            }
            set {
                @__DataProvider = value;
                this.TriggerPropertyChanged("DataProvider");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string FullName {
            get {
                return @__FullName;
            }
            set {
                @__FullName = value;
                this.TriggerPropertyChanged("FullName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string GenericName {
            get {
                return @__GenericName;
            }
            set {
                @__GenericName = value;
                this.TriggerPropertyChanged("GenericName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string DEAClassCode {
            get {
                return @__DEAClassCode;
            }
            set {
                @__DEAClassCode = value;
                this.TriggerPropertyChanged("DEAClassCode");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Dosage {
            get {
                return @__Dosage;
            }
            set {
                @__Dosage = value;
                this.TriggerPropertyChanged("Dosage");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string DosageForm {
            get {
                return @__DosageForm;
            }
            set {
                @__DosageForm = value;
                this.TriggerPropertyChanged("DosageForm");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Route {
            get {
                return @__Route;
            }
            set {
                @__Route = value;
                this.TriggerPropertyChanged("Route");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string TherapeuticClass {
            get {
                return @__TherapeuticClass;
            }
            set {
                @__TherapeuticClass = value;
                this.TriggerPropertyChanged("TherapeuticClass");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadAnsiString("Id");
                DataProvider = aSerializer.ReadAnsiString("DataProvider");
                FullName = aSerializer.ReadAnsiString("FullName");
                Name = aSerializer.ReadAnsiString("Name");
                GenericName = aSerializer.ReadAnsiString("GenericName");
                DEAClassCode = aSerializer.ReadAnsiString("DEAClassCode");
                Dosage = aSerializer.ReadAnsiString("Dosage");
                DosageForm = aSerializer.ReadAnsiString("DosageForm");
                Route = aSerializer.ReadAnsiString("Route");
                Status = aSerializer.ReadAnsiString("Status");
                TherapeuticClass = aSerializer.ReadAnsiString("TherapeuticClass");
            }
            else {
                DataProvider = aSerializer.ReadAnsiString("DataProvider");
                DEAClassCode = aSerializer.ReadAnsiString("DEAClassCode");
                Dosage = aSerializer.ReadAnsiString("Dosage");
                DosageForm = aSerializer.ReadAnsiString("DosageForm");
                FullName = aSerializer.ReadAnsiString("FullName");
                GenericName = aSerializer.ReadAnsiString("GenericName");
                Id = aSerializer.ReadAnsiString("Id");
                Name = aSerializer.ReadAnsiString("Name");
                Route = aSerializer.ReadAnsiString("Route");
                Status = aSerializer.ReadAnsiString("Status");
                TherapeuticClass = aSerializer.ReadAnsiString("TherapeuticClass");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Id", Id);
                aSerializer.WriteAnsiString("DataProvider", DataProvider);
                aSerializer.WriteAnsiString("FullName", FullName);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("GenericName", GenericName);
                aSerializer.WriteAnsiString("DEAClassCode", DEAClassCode);
                aSerializer.WriteAnsiString("Dosage", Dosage);
                aSerializer.WriteAnsiString("DosageForm", DosageForm);
                aSerializer.WriteAnsiString("Route", Route);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("TherapeuticClass", TherapeuticClass);
            }
            else {
                aSerializer.WriteAnsiString("DataProvider", DataProvider);
                aSerializer.WriteAnsiString("DEAClassCode", DEAClassCode);
                aSerializer.WriteAnsiString("Dosage", Dosage);
                aSerializer.WriteAnsiString("DosageForm", DosageForm);
                aSerializer.WriteAnsiString("FullName", FullName);
                aSerializer.WriteAnsiString("GenericName", GenericName);
                aSerializer.WriteAnsiString("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("Route", Route);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("TherapeuticClass", TherapeuticClass);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class MedicationInfo1_Activator : RemObjects.SDK.TypeActivator {
        public MedicationInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new MedicationInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(AllergyInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class AllergyInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private string @__Name;
        private string @__Type;
        private System.DateTime @__StartDate;
        private System.DateTime @__EndDate;
        private bool @__IsActive;
        private string @__Reaction;
        private string @__Severity;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        public virtual System.DateTime StartDate {
            get {
                return @__StartDate;
            }
            set {
                @__StartDate = value;
                this.TriggerPropertyChanged("StartDate");
            }
        }
        public virtual System.DateTime EndDate {
            get {
                return @__EndDate;
            }
            set {
                @__EndDate = value;
                this.TriggerPropertyChanged("EndDate");
            }
        }
        public virtual bool IsActive {
            get {
                return @__IsActive;
            }
            set {
                @__IsActive = value;
                this.TriggerPropertyChanged("IsActive");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Reaction {
            get {
                return @__Reaction;
            }
            set {
                @__Reaction = value;
                this.TriggerPropertyChanged("Reaction");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Severity {
            get {
                return @__Severity;
            }
            set {
                @__Severity = value;
                this.TriggerPropertyChanged("Severity");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                Name = aSerializer.ReadAnsiString("Name");
                Type = aSerializer.ReadAnsiString("Type");
                StartDate = aSerializer.ReadDateTime("StartDate");
                EndDate = aSerializer.ReadDateTime("EndDate");
                IsActive = aSerializer.ReadBoolean("IsActive");
                Reaction = aSerializer.ReadAnsiString("Reaction");
                Severity = aSerializer.ReadAnsiString("Severity");
            }
            else {
                EndDate = aSerializer.ReadDateTime("EndDate");
                Id = aSerializer.ReadInt64("Id");
                IsActive = aSerializer.ReadBoolean("IsActive");
                Name = aSerializer.ReadAnsiString("Name");
                Reaction = aSerializer.ReadAnsiString("Reaction");
                Severity = aSerializer.ReadAnsiString("Severity");
                StartDate = aSerializer.ReadDateTime("StartDate");
                Type = aSerializer.ReadAnsiString("Type");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.WriteDateTime("StartDate", StartDate);
                aSerializer.WriteDateTime("EndDate", EndDate);
                aSerializer.WriteBoolean("IsActive", IsActive);
                aSerializer.WriteAnsiString("Reaction", Reaction);
                aSerializer.WriteAnsiString("Severity", Severity);
            }
            else {
                aSerializer.WriteDateTime("EndDate", EndDate);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsActive", IsActive);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("Reaction", Reaction);
                aSerializer.WriteAnsiString("Severity", Severity);
                aSerializer.WriteDateTime("StartDate", StartDate);
                aSerializer.WriteAnsiString("Type", Type);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class AllergyInfo1_Activator : RemObjects.SDK.TypeActivator {
        public AllergyInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new AllergyInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ProblemInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ProblemInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private string @__Type;
        private string @__Description;
        private string @__Code;
        private string @__Relevance;
        private string @__Status;
        private System.DateTime @__ResolvedDate;
        private System.DateTime @__ActiveDate;
        private System.DateTime @__InActiveDate;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Description {
            get {
                return @__Description;
            }
            set {
                @__Description = value;
                this.TriggerPropertyChanged("Description");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Code {
            get {
                return @__Code;
            }
            set {
                @__Code = value;
                this.TriggerPropertyChanged("Code");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Relevance {
            get {
                return @__Relevance;
            }
            set {
                @__Relevance = value;
                this.TriggerPropertyChanged("Relevance");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        public virtual System.DateTime ResolvedDate {
            get {
                return @__ResolvedDate;
            }
            set {
                @__ResolvedDate = value;
                this.TriggerPropertyChanged("ResolvedDate");
            }
        }
        public virtual System.DateTime ActiveDate {
            get {
                return @__ActiveDate;
            }
            set {
                @__ActiveDate = value;
                this.TriggerPropertyChanged("ActiveDate");
            }
        }
        public virtual System.DateTime InActiveDate {
            get {
                return @__InActiveDate;
            }
            set {
                @__InActiveDate = value;
                this.TriggerPropertyChanged("InActiveDate");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                Type = aSerializer.ReadAnsiString("Type");
                Description = aSerializer.ReadAnsiString("Description");
                Code = aSerializer.ReadAnsiString("Code");
                Relevance = aSerializer.ReadAnsiString("Relevance");
                Status = aSerializer.ReadAnsiString("Status");
                ResolvedDate = aSerializer.ReadDateTime("ResolvedDate");
                ActiveDate = aSerializer.ReadDateTime("ActiveDate");
                InActiveDate = aSerializer.ReadDateTime("InActiveDate");
            }
            else {
                ActiveDate = aSerializer.ReadDateTime("ActiveDate");
                Code = aSerializer.ReadAnsiString("Code");
                Description = aSerializer.ReadAnsiString("Description");
                Id = aSerializer.ReadInt32("Id");
                InActiveDate = aSerializer.ReadDateTime("InActiveDate");
                Relevance = aSerializer.ReadAnsiString("Relevance");
                ResolvedDate = aSerializer.ReadDateTime("ResolvedDate");
                Status = aSerializer.ReadAnsiString("Status");
                Type = aSerializer.ReadAnsiString("Type");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.WriteAnsiString("Description", Description);
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Relevance", Relevance);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteDateTime("ResolvedDate", ResolvedDate);
                aSerializer.WriteDateTime("ActiveDate", ActiveDate);
                aSerializer.WriteDateTime("InActiveDate", InActiveDate);
            }
            else {
                aSerializer.WriteDateTime("ActiveDate", ActiveDate);
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Description", Description);
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteDateTime("InActiveDate", InActiveDate);
                aSerializer.WriteAnsiString("Relevance", Relevance);
                aSerializer.WriteDateTime("ResolvedDate", ResolvedDate);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("Type", Type);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ProblemInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ProblemInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ProblemInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ChartInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ChartInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private PatientInfo1 @__Patient;
        private AllergyInfo1[] @__Allergies;
        private ProblemInfo1[] @__Problems;
        private PrescribedMedicationInfo1[] @__Medications;
        private OrderInfo1[] @__Orders;
        private ResultInfo1[] @__Results;
        private VitalSignInfo1[] @__VitalSigns;
        private PatientNoteInfo1[] @__Notes;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual PatientInfo1 Patient {
            get {
                return @__Patient;
            }
            set {
                @__Patient = value;
                this.TriggerPropertyChanged("Patient");
            }
        }
        public virtual AllergyInfo1[] Allergies {
            get {
                return @__Allergies;
            }
            set {
                @__Allergies = value;
                this.TriggerPropertyChanged("Allergies");
            }
        }
        public virtual ProblemInfo1[] Problems {
            get {
                return @__Problems;
            }
            set {
                @__Problems = value;
                this.TriggerPropertyChanged("Problems");
            }
        }
        public virtual PrescribedMedicationInfo1[] Medications {
            get {
                return @__Medications;
            }
            set {
                @__Medications = value;
                this.TriggerPropertyChanged("Medications");
            }
        }
        public virtual OrderInfo1[] Orders {
            get {
                return @__Orders;
            }
            set {
                @__Orders = value;
                this.TriggerPropertyChanged("Orders");
            }
        }
        public virtual ResultInfo1[] Results {
            get {
                return @__Results;
            }
            set {
                @__Results = value;
                this.TriggerPropertyChanged("Results");
            }
        }
        public virtual VitalSignInfo1[] VitalSigns {
            get {
                return @__VitalSigns;
            }
            set {
                @__VitalSigns = value;
                this.TriggerPropertyChanged("VitalSigns");
            }
        }
        public virtual PatientNoteInfo1[] Notes {
            get {
                return @__Notes;
            }
            set {
                @__Notes = value;
                this.TriggerPropertyChanged("Notes");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                Patient = ((PatientInfo1)(aSerializer.Read("Patient", typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                Allergies = ((AllergyInfo1[])(aSerializer.Read("Allergies", typeof(AllergyInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Problems = ((ProblemInfo1[])(aSerializer.Read("Problems", typeof(ProblemInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Medications = ((PrescribedMedicationInfo1[])(aSerializer.Read("Medications", typeof(PrescribedMedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Orders = ((OrderInfo1[])(aSerializer.Read("Orders", typeof(OrderInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Results = ((ResultInfo1[])(aSerializer.Read("Results", typeof(ResultInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                VitalSigns = ((VitalSignInfo1[])(aSerializer.Read("VitalSigns", typeof(VitalSignInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Notes = ((PatientNoteInfo1[])(aSerializer.Read("Notes", typeof(PatientNoteInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                Allergies = ((AllergyInfo1[])(aSerializer.Read("Allergies", typeof(AllergyInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Id = aSerializer.ReadInt32("Id");
                Medications = ((PrescribedMedicationInfo1[])(aSerializer.Read("Medications", typeof(PrescribedMedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Notes = ((PatientNoteInfo1[])(aSerializer.Read("Notes", typeof(PatientNoteInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Orders = ((OrderInfo1[])(aSerializer.Read("Orders", typeof(OrderInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Patient = ((PatientInfo1)(aSerializer.Read("Patient", typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                Problems = ((ProblemInfo1[])(aSerializer.Read("Problems", typeof(ProblemInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Results = ((ResultInfo1[])(aSerializer.Read("Results", typeof(ResultInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                VitalSigns = ((VitalSignInfo1[])(aSerializer.Read("VitalSigns", typeof(VitalSignInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.Write("Patient", Patient, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Allergies", Allergies, typeof(AllergyInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Problems", Problems, typeof(ProblemInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Medications", Medications, typeof(PrescribedMedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Orders", Orders, typeof(OrderInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Results", Results, typeof(ResultInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("VitalSigns", VitalSigns, typeof(VitalSignInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Notes", Notes, typeof(PatientNoteInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.Write("Allergies", Allergies, typeof(AllergyInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteInt32("Id", Id);
                aSerializer.Write("Medications", Medications, typeof(PrescribedMedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Notes", Notes, typeof(PatientNoteInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Orders", Orders, typeof(OrderInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Patient", Patient, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Problems", Problems, typeof(ProblemInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Results", Results, typeof(ResultInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("VitalSigns", VitalSigns, typeof(VitalSignInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ChartInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ChartInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ChartInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(OrderInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class OrderInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private string @__Name;
        private System.DateTime @__OrderDate;
        private System.DateTime @__CompletedDate;
        private string @__Type;
        private string @__Status;
        private string @__ProviderName;
        private bool @__HasLabs;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public virtual System.DateTime OrderDate {
            get {
                return @__OrderDate;
            }
            set {
                @__OrderDate = value;
                this.TriggerPropertyChanged("OrderDate");
            }
        }
        public virtual System.DateTime CompletedDate {
            get {
                return @__CompletedDate;
            }
            set {
                @__CompletedDate = value;
                this.TriggerPropertyChanged("CompletedDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProviderName {
            get {
                return @__ProviderName;
            }
            set {
                @__ProviderName = value;
                this.TriggerPropertyChanged("ProviderName");
            }
        }
        public virtual bool HasLabs {
            get {
                return @__HasLabs;
            }
            set {
                @__HasLabs = value;
                this.TriggerPropertyChanged("HasLabs");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                Name = aSerializer.ReadAnsiString("Name");
                OrderDate = aSerializer.ReadDateTime("OrderDate");
                CompletedDate = aSerializer.ReadDateTime("CompletedDate");
                Type = aSerializer.ReadAnsiString("Type");
                Status = aSerializer.ReadAnsiString("Status");
                ProviderName = aSerializer.ReadAnsiString("ProviderName");
                HasLabs = aSerializer.ReadBoolean("HasLabs");
            }
            else {
                CompletedDate = aSerializer.ReadDateTime("CompletedDate");
                HasLabs = aSerializer.ReadBoolean("HasLabs");
                Id = aSerializer.ReadInt32("Id");
                Name = aSerializer.ReadAnsiString("Name");
                OrderDate = aSerializer.ReadDateTime("OrderDate");
                ProviderName = aSerializer.ReadAnsiString("ProviderName");
                Status = aSerializer.ReadAnsiString("Status");
                Type = aSerializer.ReadAnsiString("Type");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteDateTime("OrderDate", OrderDate);
                aSerializer.WriteDateTime("CompletedDate", CompletedDate);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("ProviderName", ProviderName);
                aSerializer.WriteBoolean("HasLabs", HasLabs);
            }
            else {
                aSerializer.WriteDateTime("CompletedDate", CompletedDate);
                aSerializer.WriteBoolean("HasLabs", HasLabs);
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteDateTime("OrderDate", OrderDate);
                aSerializer.WriteAnsiString("ProviderName", ProviderName);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("Type", Type);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class OrderInfo1_Activator : RemObjects.SDK.TypeActivator {
        public OrderInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new OrderInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ResultInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ResultInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private string @__TestId;
        private string @__TestName;
        private string @__CodingSystem;
        private string @__OrderName;
        private System.DateTime @__ResultDate;
        private string @__OrderedBy;
        private string @__Status;
        private string @__LabName;
        private bool @__IsReviewed;
        private System.DateTime @__DateReviewed;
        private bool @__IsSigned;
        private System.DateTime @__DateSigned;
        private string @__Note;
        private string @__Type;
        private PerformingCenterInfo1 @__PerformingCenter;
        private ResultDetailInfo1[] @__ResultDetails;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string TestId {
            get {
                return @__TestId;
            }
            set {
                @__TestId = value;
                this.TriggerPropertyChanged("TestId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string TestName {
            get {
                return @__TestName;
            }
            set {
                @__TestName = value;
                this.TriggerPropertyChanged("TestName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string CodingSystem {
            get {
                return @__CodingSystem;
            }
            set {
                @__CodingSystem = value;
                this.TriggerPropertyChanged("CodingSystem");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string OrderName {
            get {
                return @__OrderName;
            }
            set {
                @__OrderName = value;
                this.TriggerPropertyChanged("OrderName");
            }
        }
        public virtual System.DateTime ResultDate {
            get {
                return @__ResultDate;
            }
            set {
                @__ResultDate = value;
                this.TriggerPropertyChanged("ResultDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string OrderedBy {
            get {
                return @__OrderedBy;
            }
            set {
                @__OrderedBy = value;
                this.TriggerPropertyChanged("OrderedBy");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string LabName {
            get {
                return @__LabName;
            }
            set {
                @__LabName = value;
                this.TriggerPropertyChanged("LabName");
            }
        }
        public virtual bool IsReviewed {
            get {
                return @__IsReviewed;
            }
            set {
                @__IsReviewed = value;
                this.TriggerPropertyChanged("IsReviewed");
            }
        }
        public virtual System.DateTime DateReviewed {
            get {
                return @__DateReviewed;
            }
            set {
                @__DateReviewed = value;
                this.TriggerPropertyChanged("DateReviewed");
            }
        }
        public virtual bool IsSigned {
            get {
                return @__IsSigned;
            }
            set {
                @__IsSigned = value;
                this.TriggerPropertyChanged("IsSigned");
            }
        }
        public virtual System.DateTime DateSigned {
            get {
                return @__DateSigned;
            }
            set {
                @__DateSigned = value;
                this.TriggerPropertyChanged("DateSigned");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Note {
            get {
                return @__Note;
            }
            set {
                @__Note = value;
                this.TriggerPropertyChanged("Note");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        public virtual PerformingCenterInfo1 PerformingCenter {
            get {
                return @__PerformingCenter;
            }
            set {
                @__PerformingCenter = value;
                this.TriggerPropertyChanged("PerformingCenter");
            }
        }
        public virtual ResultDetailInfo1[] ResultDetails {
            get {
                return @__ResultDetails;
            }
            set {
                @__ResultDetails = value;
                this.TriggerPropertyChanged("ResultDetails");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                TestId = aSerializer.ReadAnsiString("TestId");
                TestName = aSerializer.ReadAnsiString("TestName");
                CodingSystem = aSerializer.ReadAnsiString("CodingSystem");
                OrderName = aSerializer.ReadAnsiString("OrderName");
                ResultDate = aSerializer.ReadDateTime("ResultDate");
                OrderedBy = aSerializer.ReadAnsiString("OrderedBy");
                Status = aSerializer.ReadAnsiString("Status");
                LabName = aSerializer.ReadAnsiString("LabName");
                IsReviewed = aSerializer.ReadBoolean("IsReviewed");
                DateReviewed = aSerializer.ReadDateTime("DateReviewed");
                IsSigned = aSerializer.ReadBoolean("IsSigned");
                DateSigned = aSerializer.ReadDateTime("DateSigned");
                Note = aSerializer.ReadAnsiString("Note");
                Type = aSerializer.ReadAnsiString("Type");
                PerformingCenter = ((PerformingCenterInfo1)(aSerializer.Read("PerformingCenter", typeof(PerformingCenterInfo1), RemObjects.SDK.StreamingFormat.Default)));
                ResultDetails = ((ResultDetailInfo1[])(aSerializer.Read("ResultDetails", typeof(ResultDetailInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                CodingSystem = aSerializer.ReadAnsiString("CodingSystem");
                DateReviewed = aSerializer.ReadDateTime("DateReviewed");
                DateSigned = aSerializer.ReadDateTime("DateSigned");
                Id = aSerializer.ReadInt64("Id");
                IsReviewed = aSerializer.ReadBoolean("IsReviewed");
                IsSigned = aSerializer.ReadBoolean("IsSigned");
                LabName = aSerializer.ReadAnsiString("LabName");
                Note = aSerializer.ReadAnsiString("Note");
                OrderedBy = aSerializer.ReadAnsiString("OrderedBy");
                OrderName = aSerializer.ReadAnsiString("OrderName");
                PerformingCenter = ((PerformingCenterInfo1)(aSerializer.Read("PerformingCenter", typeof(PerformingCenterInfo1), RemObjects.SDK.StreamingFormat.Default)));
                ResultDate = aSerializer.ReadDateTime("ResultDate");
                ResultDetails = ((ResultDetailInfo1[])(aSerializer.Read("ResultDetails", typeof(ResultDetailInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Status = aSerializer.ReadAnsiString("Status");
                TestId = aSerializer.ReadAnsiString("TestId");
                TestName = aSerializer.ReadAnsiString("TestName");
                Type = aSerializer.ReadAnsiString("Type");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteAnsiString("TestId", TestId);
                aSerializer.WriteAnsiString("TestName", TestName);
                aSerializer.WriteAnsiString("CodingSystem", CodingSystem);
                aSerializer.WriteAnsiString("OrderName", OrderName);
                aSerializer.WriteDateTime("ResultDate", ResultDate);
                aSerializer.WriteAnsiString("OrderedBy", OrderedBy);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("LabName", LabName);
                aSerializer.WriteBoolean("IsReviewed", IsReviewed);
                aSerializer.WriteDateTime("DateReviewed", DateReviewed);
                aSerializer.WriteBoolean("IsSigned", IsSigned);
                aSerializer.WriteDateTime("DateSigned", DateSigned);
                aSerializer.WriteAnsiString("Note", Note);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.Write("PerformingCenter", PerformingCenter, typeof(PerformingCenterInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("ResultDetails", ResultDetails, typeof(ResultDetailInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.WriteAnsiString("CodingSystem", CodingSystem);
                aSerializer.WriteDateTime("DateReviewed", DateReviewed);
                aSerializer.WriteDateTime("DateSigned", DateSigned);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsReviewed", IsReviewed);
                aSerializer.WriteBoolean("IsSigned", IsSigned);
                aSerializer.WriteAnsiString("LabName", LabName);
                aSerializer.WriteAnsiString("Note", Note);
                aSerializer.WriteAnsiString("OrderedBy", OrderedBy);
                aSerializer.WriteAnsiString("OrderName", OrderName);
                aSerializer.Write("PerformingCenter", PerformingCenter, typeof(PerformingCenterInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("ResultDate", ResultDate);
                aSerializer.Write("ResultDetails", ResultDetails, typeof(ResultDetailInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("TestId", TestId);
                aSerializer.WriteAnsiString("TestName", TestName);
                aSerializer.WriteAnsiString("Type", Type);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ResultInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ResultInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ResultInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PerformingCenterInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PerformingCenterInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Name;
        private string @__Address1;
        private string @__Address2;
        private string @__City;
        private string @__State;
        private string @__Zip;
        private string @__Phone;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Address1 {
            get {
                return @__Address1;
            }
            set {
                @__Address1 = value;
                this.TriggerPropertyChanged("Address1");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Address2 {
            get {
                return @__Address2;
            }
            set {
                @__Address2 = value;
                this.TriggerPropertyChanged("Address2");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string City {
            get {
                return @__City;
            }
            set {
                @__City = value;
                this.TriggerPropertyChanged("City");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string State {
            get {
                return @__State;
            }
            set {
                @__State = value;
                this.TriggerPropertyChanged("State");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Zip {
            get {
                return @__Zip;
            }
            set {
                @__Zip = value;
                this.TriggerPropertyChanged("Zip");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Phone {
            get {
                return @__Phone;
            }
            set {
                @__Phone = value;
                this.TriggerPropertyChanged("Phone");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Name = aSerializer.ReadAnsiString("Name");
                Address1 = aSerializer.ReadAnsiString("Address1");
                Address2 = aSerializer.ReadAnsiString("Address2");
                City = aSerializer.ReadAnsiString("City");
                State = aSerializer.ReadAnsiString("State");
                Zip = aSerializer.ReadAnsiString("Zip");
                Phone = aSerializer.ReadAnsiString("Phone");
            }
            else {
                Address1 = aSerializer.ReadAnsiString("Address1");
                Address2 = aSerializer.ReadAnsiString("Address2");
                City = aSerializer.ReadAnsiString("City");
                Name = aSerializer.ReadAnsiString("Name");
                Phone = aSerializer.ReadAnsiString("Phone");
                State = aSerializer.ReadAnsiString("State");
                Zip = aSerializer.ReadAnsiString("Zip");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("Address1", Address1);
                aSerializer.WriteAnsiString("Address2", Address2);
                aSerializer.WriteAnsiString("City", City);
                aSerializer.WriteAnsiString("State", State);
                aSerializer.WriteAnsiString("Zip", Zip);
                aSerializer.WriteAnsiString("Phone", Phone);
            }
            else {
                aSerializer.WriteAnsiString("Address1", Address1);
                aSerializer.WriteAnsiString("Address2", Address2);
                aSerializer.WriteAnsiString("City", City);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteAnsiString("Phone", Phone);
                aSerializer.WriteAnsiString("State", State);
                aSerializer.WriteAnsiString("Zip", Zip);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PerformingCenterInfo1_Activator : RemObjects.SDK.TypeActivator {
        public PerformingCenterInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PerformingCenterInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ResultDetailInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ResultDetailInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private int @__Sequence;
        private string @__ObservationId;
        private string @__ObservationText;
        private System.DateTime @__ObservationDate;
        private string @__CodingSystem;
        private string @__ObservationValue;
        private string @__AbnormalFlag;
        private string @__Units;
        private string @__ReferenceRange;
        private string @__Note;
        private string @__Status;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual int Sequence {
            get {
                return @__Sequence;
            }
            set {
                @__Sequence = value;
                this.TriggerPropertyChanged("Sequence");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ObservationId {
            get {
                return @__ObservationId;
            }
            set {
                @__ObservationId = value;
                this.TriggerPropertyChanged("ObservationId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ObservationText {
            get {
                return @__ObservationText;
            }
            set {
                @__ObservationText = value;
                this.TriggerPropertyChanged("ObservationText");
            }
        }
        public virtual System.DateTime ObservationDate {
            get {
                return @__ObservationDate;
            }
            set {
                @__ObservationDate = value;
                this.TriggerPropertyChanged("ObservationDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string CodingSystem {
            get {
                return @__CodingSystem;
            }
            set {
                @__CodingSystem = value;
                this.TriggerPropertyChanged("CodingSystem");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ObservationValue {
            get {
                return @__ObservationValue;
            }
            set {
                @__ObservationValue = value;
                this.TriggerPropertyChanged("ObservationValue");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string AbnormalFlag {
            get {
                return @__AbnormalFlag;
            }
            set {
                @__AbnormalFlag = value;
                this.TriggerPropertyChanged("AbnormalFlag");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Units {
            get {
                return @__Units;
            }
            set {
                @__Units = value;
                this.TriggerPropertyChanged("Units");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ReferenceRange {
            get {
                return @__ReferenceRange;
            }
            set {
                @__ReferenceRange = value;
                this.TriggerPropertyChanged("ReferenceRange");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Note {
            get {
                return @__Note;
            }
            set {
                @__Note = value;
                this.TriggerPropertyChanged("Note");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                Sequence = aSerializer.ReadInt32("Sequence");
                ObservationId = aSerializer.ReadAnsiString("ObservationId");
                ObservationText = aSerializer.ReadAnsiString("ObservationText");
                ObservationDate = aSerializer.ReadDateTime("ObservationDate");
                CodingSystem = aSerializer.ReadAnsiString("CodingSystem");
                ObservationValue = aSerializer.ReadAnsiString("ObservationValue");
                AbnormalFlag = aSerializer.ReadAnsiString("AbnormalFlag");
                Units = aSerializer.ReadAnsiString("Units");
                ReferenceRange = aSerializer.ReadAnsiString("ReferenceRange");
                Note = aSerializer.ReadAnsiString("Note");
                Status = aSerializer.ReadAnsiString("Status");
            }
            else {
                AbnormalFlag = aSerializer.ReadAnsiString("AbnormalFlag");
                CodingSystem = aSerializer.ReadAnsiString("CodingSystem");
                Id = aSerializer.ReadInt64("Id");
                Note = aSerializer.ReadAnsiString("Note");
                ObservationDate = aSerializer.ReadDateTime("ObservationDate");
                ObservationId = aSerializer.ReadAnsiString("ObservationId");
                ObservationText = aSerializer.ReadAnsiString("ObservationText");
                ObservationValue = aSerializer.ReadAnsiString("ObservationValue");
                ReferenceRange = aSerializer.ReadAnsiString("ReferenceRange");
                Sequence = aSerializer.ReadInt32("Sequence");
                Status = aSerializer.ReadAnsiString("Status");
                Units = aSerializer.ReadAnsiString("Units");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteInt32("Sequence", Sequence);
                aSerializer.WriteAnsiString("ObservationId", ObservationId);
                aSerializer.WriteAnsiString("ObservationText", ObservationText);
                aSerializer.WriteDateTime("ObservationDate", ObservationDate);
                aSerializer.WriteAnsiString("CodingSystem", CodingSystem);
                aSerializer.WriteAnsiString("ObservationValue", ObservationValue);
                aSerializer.WriteAnsiString("AbnormalFlag", AbnormalFlag);
                aSerializer.WriteAnsiString("Units", Units);
                aSerializer.WriteAnsiString("ReferenceRange", ReferenceRange);
                aSerializer.WriteAnsiString("Note", Note);
                aSerializer.WriteAnsiString("Status", Status);
            }
            else {
                aSerializer.WriteAnsiString("AbnormalFlag", AbnormalFlag);
                aSerializer.WriteAnsiString("CodingSystem", CodingSystem);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteAnsiString("Note", Note);
                aSerializer.WriteDateTime("ObservationDate", ObservationDate);
                aSerializer.WriteAnsiString("ObservationId", ObservationId);
                aSerializer.WriteAnsiString("ObservationText", ObservationText);
                aSerializer.WriteAnsiString("ObservationValue", ObservationValue);
                aSerializer.WriteAnsiString("ReferenceRange", ReferenceRange);
                aSerializer.WriteInt32("Sequence", Sequence);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("Units", Units);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ResultDetailInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ResultDetailInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ResultDetailInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(VitalSignInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class VitalSignInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private bool @__IsMetricMode;
        private System.DateTime @__ExamDate;
        private System.DateTime @__EncounterDate;
        private string @__Height;
        private string @__HeightEnglish;
        private string @__Weight;
        private string @__WeightEnglish;
        private string @__Temperature;
        private string @__TemperatureEnglish;
        private int @__Systolic;
        private int @__Diastolic;
        private int @__O2Saturation;
        private string @__HeadCircumference;
        private string @__HeadCircumferenceEnglish;
        private int @__PainLevel;
        private string @__PosturalLaying;
        private string @__PosturalSitting;
        private string @__PosturalStanding;
        private int @__PulseRate;
        private int @__Respirations;
        private int @__Oximetry;
        private string @__Comment;
        private double @__BMI;
        private string @__BPSite;
        private string @__BPCuffSize;
        private string @__PostureType;
        private string @__TemperatureSite;
        private string @__PluseRhythmType;
        private string @__PulseSite;
        private string @__PulseVolumeType;
        private string @__RespirationsDepth;
        private string @__RespirationRhythmType;
        private string @__OxymetrySource;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual bool IsMetricMode {
            get {
                return @__IsMetricMode;
            }
            set {
                @__IsMetricMode = value;
                this.TriggerPropertyChanged("IsMetricMode");
            }
        }
        public virtual System.DateTime ExamDate {
            get {
                return @__ExamDate;
            }
            set {
                @__ExamDate = value;
                this.TriggerPropertyChanged("ExamDate");
            }
        }
        public virtual System.DateTime EncounterDate {
            get {
                return @__EncounterDate;
            }
            set {
                @__EncounterDate = value;
                this.TriggerPropertyChanged("EncounterDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Height {
            get {
                return @__Height;
            }
            set {
                @__Height = value;
                this.TriggerPropertyChanged("Height");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string HeightEnglish {
            get {
                return @__HeightEnglish;
            }
            set {
                @__HeightEnglish = value;
                this.TriggerPropertyChanged("HeightEnglish");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Weight {
            get {
                return @__Weight;
            }
            set {
                @__Weight = value;
                this.TriggerPropertyChanged("Weight");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string WeightEnglish {
            get {
                return @__WeightEnglish;
            }
            set {
                @__WeightEnglish = value;
                this.TriggerPropertyChanged("WeightEnglish");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Temperature {
            get {
                return @__Temperature;
            }
            set {
                @__Temperature = value;
                this.TriggerPropertyChanged("Temperature");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string TemperatureEnglish {
            get {
                return @__TemperatureEnglish;
            }
            set {
                @__TemperatureEnglish = value;
                this.TriggerPropertyChanged("TemperatureEnglish");
            }
        }
        public virtual int Systolic {
            get {
                return @__Systolic;
            }
            set {
                @__Systolic = value;
                this.TriggerPropertyChanged("Systolic");
            }
        }
        public virtual int Diastolic {
            get {
                return @__Diastolic;
            }
            set {
                @__Diastolic = value;
                this.TriggerPropertyChanged("Diastolic");
            }
        }
        public virtual int O2Saturation {
            get {
                return @__O2Saturation;
            }
            set {
                @__O2Saturation = value;
                this.TriggerPropertyChanged("O2Saturation");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string HeadCircumference {
            get {
                return @__HeadCircumference;
            }
            set {
                @__HeadCircumference = value;
                this.TriggerPropertyChanged("HeadCircumference");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string HeadCircumferenceEnglish {
            get {
                return @__HeadCircumferenceEnglish;
            }
            set {
                @__HeadCircumferenceEnglish = value;
                this.TriggerPropertyChanged("HeadCircumferenceEnglish");
            }
        }
        public virtual int PainLevel {
            get {
                return @__PainLevel;
            }
            set {
                @__PainLevel = value;
                this.TriggerPropertyChanged("PainLevel");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PosturalLaying {
            get {
                return @__PosturalLaying;
            }
            set {
                @__PosturalLaying = value;
                this.TriggerPropertyChanged("PosturalLaying");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PosturalSitting {
            get {
                return @__PosturalSitting;
            }
            set {
                @__PosturalSitting = value;
                this.TriggerPropertyChanged("PosturalSitting");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PosturalStanding {
            get {
                return @__PosturalStanding;
            }
            set {
                @__PosturalStanding = value;
                this.TriggerPropertyChanged("PosturalStanding");
            }
        }
        public virtual int PulseRate {
            get {
                return @__PulseRate;
            }
            set {
                @__PulseRate = value;
                this.TriggerPropertyChanged("PulseRate");
            }
        }
        public virtual int Respirations {
            get {
                return @__Respirations;
            }
            set {
                @__Respirations = value;
                this.TriggerPropertyChanged("Respirations");
            }
        }
        public virtual int Oximetry {
            get {
                return @__Oximetry;
            }
            set {
                @__Oximetry = value;
                this.TriggerPropertyChanged("Oximetry");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Comment {
            get {
                return @__Comment;
            }
            set {
                @__Comment = value;
                this.TriggerPropertyChanged("Comment");
            }
        }
        public virtual double BMI {
            get {
                return @__BMI;
            }
            set {
                @__BMI = value;
                this.TriggerPropertyChanged("BMI");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string BPSite {
            get {
                return @__BPSite;
            }
            set {
                @__BPSite = value;
                this.TriggerPropertyChanged("BPSite");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string BPCuffSize {
            get {
                return @__BPCuffSize;
            }
            set {
                @__BPCuffSize = value;
                this.TriggerPropertyChanged("BPCuffSize");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PostureType {
            get {
                return @__PostureType;
            }
            set {
                @__PostureType = value;
                this.TriggerPropertyChanged("PostureType");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string TemperatureSite {
            get {
                return @__TemperatureSite;
            }
            set {
                @__TemperatureSite = value;
                this.TriggerPropertyChanged("TemperatureSite");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PluseRhythmType {
            get {
                return @__PluseRhythmType;
            }
            set {
                @__PluseRhythmType = value;
                this.TriggerPropertyChanged("PluseRhythmType");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PulseSite {
            get {
                return @__PulseSite;
            }
            set {
                @__PulseSite = value;
                this.TriggerPropertyChanged("PulseSite");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PulseVolumeType {
            get {
                return @__PulseVolumeType;
            }
            set {
                @__PulseVolumeType = value;
                this.TriggerPropertyChanged("PulseVolumeType");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string RespirationsDepth {
            get {
                return @__RespirationsDepth;
            }
            set {
                @__RespirationsDepth = value;
                this.TriggerPropertyChanged("RespirationsDepth");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string RespirationRhythmType {
            get {
                return @__RespirationRhythmType;
            }
            set {
                @__RespirationRhythmType = value;
                this.TriggerPropertyChanged("RespirationRhythmType");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string OxymetrySource {
            get {
                return @__OxymetrySource;
            }
            set {
                @__OxymetrySource = value;
                this.TriggerPropertyChanged("OxymetrySource");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                IsMetricMode = aSerializer.ReadBoolean("IsMetricMode");
                ExamDate = aSerializer.ReadDateTime("ExamDate");
                EncounterDate = aSerializer.ReadDateTime("EncounterDate");
                Height = aSerializer.ReadAnsiString("Height");
                HeightEnglish = aSerializer.ReadAnsiString("HeightEnglish");
                Weight = aSerializer.ReadAnsiString("Weight");
                WeightEnglish = aSerializer.ReadAnsiString("WeightEnglish");
                Temperature = aSerializer.ReadAnsiString("Temperature");
                TemperatureEnglish = aSerializer.ReadAnsiString("TemperatureEnglish");
                Systolic = aSerializer.ReadInt32("Systolic");
                Diastolic = aSerializer.ReadInt32("Diastolic");
                O2Saturation = aSerializer.ReadInt32("O2Saturation");
                HeadCircumference = aSerializer.ReadAnsiString("HeadCircumference");
                HeadCircumferenceEnglish = aSerializer.ReadAnsiString("HeadCircumferenceEnglish");
                PainLevel = aSerializer.ReadInt32("PainLevel");
                PosturalLaying = aSerializer.ReadAnsiString("PosturalLaying");
                PosturalSitting = aSerializer.ReadAnsiString("PosturalSitting");
                PosturalStanding = aSerializer.ReadAnsiString("PosturalStanding");
                PulseRate = aSerializer.ReadInt32("PulseRate");
                Respirations = aSerializer.ReadInt32("Respirations");
                Oximetry = aSerializer.ReadInt32("Oximetry");
                Comment = aSerializer.ReadAnsiString("Comment");
                BMI = aSerializer.ReadDouble("BMI");
                BPSite = aSerializer.ReadAnsiString("BPSite");
                BPCuffSize = aSerializer.ReadAnsiString("BPCuffSize");
                PostureType = aSerializer.ReadAnsiString("PostureType");
                TemperatureSite = aSerializer.ReadAnsiString("TemperatureSite");
                PluseRhythmType = aSerializer.ReadAnsiString("PluseRhythmType");
                PulseSite = aSerializer.ReadAnsiString("PulseSite");
                PulseVolumeType = aSerializer.ReadAnsiString("PulseVolumeType");
                RespirationsDepth = aSerializer.ReadAnsiString("RespirationsDepth");
                RespirationRhythmType = aSerializer.ReadAnsiString("RespirationRhythmType");
                OxymetrySource = aSerializer.ReadAnsiString("OxymetrySource");
            }
            else {
                BMI = aSerializer.ReadDouble("BMI");
                BPCuffSize = aSerializer.ReadAnsiString("BPCuffSize");
                BPSite = aSerializer.ReadAnsiString("BPSite");
                Comment = aSerializer.ReadAnsiString("Comment");
                Diastolic = aSerializer.ReadInt32("Diastolic");
                EncounterDate = aSerializer.ReadDateTime("EncounterDate");
                ExamDate = aSerializer.ReadDateTime("ExamDate");
                HeadCircumference = aSerializer.ReadAnsiString("HeadCircumference");
                HeadCircumferenceEnglish = aSerializer.ReadAnsiString("HeadCircumferenceEnglish");
                Height = aSerializer.ReadAnsiString("Height");
                HeightEnglish = aSerializer.ReadAnsiString("HeightEnglish");
                Id = aSerializer.ReadInt64("Id");
                IsMetricMode = aSerializer.ReadBoolean("IsMetricMode");
                O2Saturation = aSerializer.ReadInt32("O2Saturation");
                Oximetry = aSerializer.ReadInt32("Oximetry");
                OxymetrySource = aSerializer.ReadAnsiString("OxymetrySource");
                PainLevel = aSerializer.ReadInt32("PainLevel");
                PluseRhythmType = aSerializer.ReadAnsiString("PluseRhythmType");
                PosturalLaying = aSerializer.ReadAnsiString("PosturalLaying");
                PosturalSitting = aSerializer.ReadAnsiString("PosturalSitting");
                PosturalStanding = aSerializer.ReadAnsiString("PosturalStanding");
                PostureType = aSerializer.ReadAnsiString("PostureType");
                PulseRate = aSerializer.ReadInt32("PulseRate");
                PulseSite = aSerializer.ReadAnsiString("PulseSite");
                PulseVolumeType = aSerializer.ReadAnsiString("PulseVolumeType");
                RespirationRhythmType = aSerializer.ReadAnsiString("RespirationRhythmType");
                Respirations = aSerializer.ReadInt32("Respirations");
                RespirationsDepth = aSerializer.ReadAnsiString("RespirationsDepth");
                Systolic = aSerializer.ReadInt32("Systolic");
                Temperature = aSerializer.ReadAnsiString("Temperature");
                TemperatureEnglish = aSerializer.ReadAnsiString("TemperatureEnglish");
                TemperatureSite = aSerializer.ReadAnsiString("TemperatureSite");
                Weight = aSerializer.ReadAnsiString("Weight");
                WeightEnglish = aSerializer.ReadAnsiString("WeightEnglish");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsMetricMode", IsMetricMode);
                aSerializer.WriteDateTime("ExamDate", ExamDate);
                aSerializer.WriteDateTime("EncounterDate", EncounterDate);
                aSerializer.WriteAnsiString("Height", Height);
                aSerializer.WriteAnsiString("HeightEnglish", HeightEnglish);
                aSerializer.WriteAnsiString("Weight", Weight);
                aSerializer.WriteAnsiString("WeightEnglish", WeightEnglish);
                aSerializer.WriteAnsiString("Temperature", Temperature);
                aSerializer.WriteAnsiString("TemperatureEnglish", TemperatureEnglish);
                aSerializer.WriteInt32("Systolic", Systolic);
                aSerializer.WriteInt32("Diastolic", Diastolic);
                aSerializer.WriteInt32("O2Saturation", O2Saturation);
                aSerializer.WriteAnsiString("HeadCircumference", HeadCircumference);
                aSerializer.WriteAnsiString("HeadCircumferenceEnglish", HeadCircumferenceEnglish);
                aSerializer.WriteInt32("PainLevel", PainLevel);
                aSerializer.WriteAnsiString("PosturalLaying", PosturalLaying);
                aSerializer.WriteAnsiString("PosturalSitting", PosturalSitting);
                aSerializer.WriteAnsiString("PosturalStanding", PosturalStanding);
                aSerializer.WriteInt32("PulseRate", PulseRate);
                aSerializer.WriteInt32("Respirations", Respirations);
                aSerializer.WriteInt32("Oximetry", Oximetry);
                aSerializer.WriteAnsiString("Comment", Comment);
                aSerializer.WriteDouble("BMI", BMI);
                aSerializer.WriteAnsiString("BPSite", BPSite);
                aSerializer.WriteAnsiString("BPCuffSize", BPCuffSize);
                aSerializer.WriteAnsiString("PostureType", PostureType);
                aSerializer.WriteAnsiString("TemperatureSite", TemperatureSite);
                aSerializer.WriteAnsiString("PluseRhythmType", PluseRhythmType);
                aSerializer.WriteAnsiString("PulseSite", PulseSite);
                aSerializer.WriteAnsiString("PulseVolumeType", PulseVolumeType);
                aSerializer.WriteAnsiString("RespirationsDepth", RespirationsDepth);
                aSerializer.WriteAnsiString("RespirationRhythmType", RespirationRhythmType);
                aSerializer.WriteAnsiString("OxymetrySource", OxymetrySource);
            }
            else {
                aSerializer.WriteDouble("BMI", BMI);
                aSerializer.WriteAnsiString("BPCuffSize", BPCuffSize);
                aSerializer.WriteAnsiString("BPSite", BPSite);
                aSerializer.WriteAnsiString("Comment", Comment);
                aSerializer.WriteInt32("Diastolic", Diastolic);
                aSerializer.WriteDateTime("EncounterDate", EncounterDate);
                aSerializer.WriteDateTime("ExamDate", ExamDate);
                aSerializer.WriteAnsiString("HeadCircumference", HeadCircumference);
                aSerializer.WriteAnsiString("HeadCircumferenceEnglish", HeadCircumferenceEnglish);
                aSerializer.WriteAnsiString("Height", Height);
                aSerializer.WriteAnsiString("HeightEnglish", HeightEnglish);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsMetricMode", IsMetricMode);
                aSerializer.WriteInt32("O2Saturation", O2Saturation);
                aSerializer.WriteInt32("Oximetry", Oximetry);
                aSerializer.WriteAnsiString("OxymetrySource", OxymetrySource);
                aSerializer.WriteInt32("PainLevel", PainLevel);
                aSerializer.WriteAnsiString("PluseRhythmType", PluseRhythmType);
                aSerializer.WriteAnsiString("PosturalLaying", PosturalLaying);
                aSerializer.WriteAnsiString("PosturalSitting", PosturalSitting);
                aSerializer.WriteAnsiString("PosturalStanding", PosturalStanding);
                aSerializer.WriteAnsiString("PostureType", PostureType);
                aSerializer.WriteInt32("PulseRate", PulseRate);
                aSerializer.WriteAnsiString("PulseSite", PulseSite);
                aSerializer.WriteAnsiString("PulseVolumeType", PulseVolumeType);
                aSerializer.WriteAnsiString("RespirationRhythmType", RespirationRhythmType);
                aSerializer.WriteInt32("Respirations", Respirations);
                aSerializer.WriteAnsiString("RespirationsDepth", RespirationsDepth);
                aSerializer.WriteInt32("Systolic", Systolic);
                aSerializer.WriteAnsiString("Temperature", Temperature);
                aSerializer.WriteAnsiString("TemperatureEnglish", TemperatureEnglish);
                aSerializer.WriteAnsiString("TemperatureSite", TemperatureSite);
                aSerializer.WriteAnsiString("Weight", Weight);
                aSerializer.WriteAnsiString("WeightEnglish", WeightEnglish);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class VitalSignInfo1_Activator : RemObjects.SDK.TypeActivator {
        public VitalSignInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new VitalSignInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PatientNoteInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PatientNoteInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private int @__ChartId;
        private string @__Title;
        private string @__NoteText;
        private string @__Type;
        private string @__Status;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual int ChartId {
            get {
                return @__ChartId;
            }
            set {
                @__ChartId = value;
                this.TriggerPropertyChanged("ChartId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Title {
            get {
                return @__Title;
            }
            set {
                @__Title = value;
                this.TriggerPropertyChanged("Title");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string NoteText {
            get {
                return @__NoteText;
            }
            set {
                @__NoteText = value;
                this.TriggerPropertyChanged("NoteText");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Status {
            get {
                return @__Status;
            }
            set {
                @__Status = value;
                this.TriggerPropertyChanged("Status");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                ChartId = aSerializer.ReadInt32("ChartId");
                Title = aSerializer.ReadAnsiString("Title");
                NoteText = aSerializer.ReadAnsiString("NoteText");
                Type = aSerializer.ReadAnsiString("Type");
                Status = aSerializer.ReadAnsiString("Status");
            }
            else {
                ChartId = aSerializer.ReadInt32("ChartId");
                Id = aSerializer.ReadInt32("Id");
                NoteText = aSerializer.ReadAnsiString("NoteText");
                Status = aSerializer.ReadAnsiString("Status");
                Title = aSerializer.ReadAnsiString("Title");
                Type = aSerializer.ReadAnsiString("Type");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteInt32("ChartId", ChartId);
                aSerializer.WriteAnsiString("Title", Title);
                aSerializer.WriteAnsiString("NoteText", NoteText);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.WriteAnsiString("Status", Status);
            }
            else {
                aSerializer.WriteInt32("ChartId", ChartId);
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("NoteText", NoteText);
                aSerializer.WriteAnsiString("Status", Status);
                aSerializer.WriteAnsiString("Title", Title);
                aSerializer.WriteAnsiString("Type", Type);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PatientNoteInfo1_Activator : RemObjects.SDK.TypeActivator {
        public PatientNoteInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PatientNoteInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ProcedureInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ProcedureInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private string @__Code;
        private string @__Description;
        private bool @__IsPerformedElsewhere;
        private string @__Modifier1;
        private string @__Modifier2;
        private string @__Modifier3;
        private string @__Modifier4;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Code {
            get {
                return @__Code;
            }
            set {
                @__Code = value;
                this.TriggerPropertyChanged("Code");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Description {
            get {
                return @__Description;
            }
            set {
                @__Description = value;
                this.TriggerPropertyChanged("Description");
            }
        }
        public virtual bool IsPerformedElsewhere {
            get {
                return @__IsPerformedElsewhere;
            }
            set {
                @__IsPerformedElsewhere = value;
                this.TriggerPropertyChanged("IsPerformedElsewhere");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier1 {
            get {
                return @__Modifier1;
            }
            set {
                @__Modifier1 = value;
                this.TriggerPropertyChanged("Modifier1");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier2 {
            get {
                return @__Modifier2;
            }
            set {
                @__Modifier2 = value;
                this.TriggerPropertyChanged("Modifier2");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier3 {
            get {
                return @__Modifier3;
            }
            set {
                @__Modifier3 = value;
                this.TriggerPropertyChanged("Modifier3");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier4 {
            get {
                return @__Modifier4;
            }
            set {
                @__Modifier4 = value;
                this.TriggerPropertyChanged("Modifier4");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                Code = aSerializer.ReadAnsiString("Code");
                Description = aSerializer.ReadAnsiString("Description");
                IsPerformedElsewhere = aSerializer.ReadBoolean("IsPerformedElsewhere");
                Modifier1 = aSerializer.ReadAnsiString("Modifier1");
                Modifier2 = aSerializer.ReadAnsiString("Modifier2");
                Modifier3 = aSerializer.ReadAnsiString("Modifier3");
                Modifier4 = aSerializer.ReadAnsiString("Modifier4");
            }
            else {
                Code = aSerializer.ReadAnsiString("Code");
                Description = aSerializer.ReadAnsiString("Description");
                Id = aSerializer.ReadInt32("Id");
                IsPerformedElsewhere = aSerializer.ReadBoolean("IsPerformedElsewhere");
                Modifier1 = aSerializer.ReadAnsiString("Modifier1");
                Modifier2 = aSerializer.ReadAnsiString("Modifier2");
                Modifier3 = aSerializer.ReadAnsiString("Modifier3");
                Modifier4 = aSerializer.ReadAnsiString("Modifier4");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Description", Description);
                aSerializer.WriteBoolean("IsPerformedElsewhere", IsPerformedElsewhere);
                aSerializer.WriteAnsiString("Modifier1", Modifier1);
                aSerializer.WriteAnsiString("Modifier2", Modifier2);
                aSerializer.WriteAnsiString("Modifier3", Modifier3);
                aSerializer.WriteAnsiString("Modifier4", Modifier4);
            }
            else {
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Description", Description);
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteBoolean("IsPerformedElsewhere", IsPerformedElsewhere);
                aSerializer.WriteAnsiString("Modifier1", Modifier1);
                aSerializer.WriteAnsiString("Modifier2", Modifier2);
                aSerializer.WriteAnsiString("Modifier3", Modifier3);
                aSerializer.WriteAnsiString("Modifier4", Modifier4);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ProcedureInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ProcedureInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ProcedureInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(TerminologyInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class TerminologyInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Code;
        private string @__Description;
        private string @__Modifier1;
        private string @__Modifier2;
        private string @__Modifier3;
        private string @__Modifier4;
        private string @__Type;
        private TerminologyTypeEnum @__TerminologyType;
        private string @__NDCCode;
        private int @__NDCQuantity;
        private string @__NDCUnitOfMeasure;
        private bool @__IsBillable;
        private decimal @__Units;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Code {
            get {
                return @__Code;
            }
            set {
                @__Code = value;
                this.TriggerPropertyChanged("Code");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Description {
            get {
                return @__Description;
            }
            set {
                @__Description = value;
                this.TriggerPropertyChanged("Description");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier1 {
            get {
                return @__Modifier1;
            }
            set {
                @__Modifier1 = value;
                this.TriggerPropertyChanged("Modifier1");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier2 {
            get {
                return @__Modifier2;
            }
            set {
                @__Modifier2 = value;
                this.TriggerPropertyChanged("Modifier2");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier3 {
            get {
                return @__Modifier3;
            }
            set {
                @__Modifier3 = value;
                this.TriggerPropertyChanged("Modifier3");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Modifier4 {
            get {
                return @__Modifier4;
            }
            set {
                @__Modifier4 = value;
                this.TriggerPropertyChanged("Modifier4");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        public virtual TerminologyTypeEnum TerminologyType {
            get {
                return @__TerminologyType;
            }
            set {
                @__TerminologyType = value;
                this.TriggerPropertyChanged("TerminologyType");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string NDCCode {
            get {
                return @__NDCCode;
            }
            set {
                @__NDCCode = value;
                this.TriggerPropertyChanged("NDCCode");
            }
        }
        public virtual int NDCQuantity {
            get {
                return @__NDCQuantity;
            }
            set {
                @__NDCQuantity = value;
                this.TriggerPropertyChanged("NDCQuantity");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string NDCUnitOfMeasure {
            get {
                return @__NDCUnitOfMeasure;
            }
            set {
                @__NDCUnitOfMeasure = value;
                this.TriggerPropertyChanged("NDCUnitOfMeasure");
            }
        }
        public virtual bool IsBillable {
            get {
                return @__IsBillable;
            }
            set {
                @__IsBillable = value;
                this.TriggerPropertyChanged("IsBillable");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.Decimal)]
        public virtual decimal Units {
            get {
                return @__Units;
            }
            set {
                @__Units = value;
                this.TriggerPropertyChanged("Units");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Code = aSerializer.ReadAnsiString("Code");
                Description = aSerializer.ReadAnsiString("Description");
                Modifier1 = aSerializer.ReadAnsiString("Modifier1");
                Modifier2 = aSerializer.ReadAnsiString("Modifier2");
                Modifier3 = aSerializer.ReadAnsiString("Modifier3");
                Modifier4 = aSerializer.ReadAnsiString("Modifier4");
                Type = aSerializer.ReadAnsiString("Type");
                TerminologyType = ((TerminologyTypeEnum)(aSerializer.Read("TerminologyType", typeof(TerminologyTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                NDCCode = aSerializer.ReadAnsiString("NDCCode");
                NDCQuantity = aSerializer.ReadInt32("NDCQuantity");
                NDCUnitOfMeasure = aSerializer.ReadAnsiString("NDCUnitOfMeasure");
                IsBillable = aSerializer.ReadBoolean("IsBillable");
                Units = aSerializer.ReadDecimal("Units");
            }
            else {
                Code = aSerializer.ReadAnsiString("Code");
                Description = aSerializer.ReadAnsiString("Description");
                IsBillable = aSerializer.ReadBoolean("IsBillable");
                Modifier1 = aSerializer.ReadAnsiString("Modifier1");
                Modifier2 = aSerializer.ReadAnsiString("Modifier2");
                Modifier3 = aSerializer.ReadAnsiString("Modifier3");
                Modifier4 = aSerializer.ReadAnsiString("Modifier4");
                NDCCode = aSerializer.ReadAnsiString("NDCCode");
                NDCQuantity = aSerializer.ReadInt32("NDCQuantity");
                NDCUnitOfMeasure = aSerializer.ReadAnsiString("NDCUnitOfMeasure");
                TerminologyType = ((TerminologyTypeEnum)(aSerializer.Read("TerminologyType", typeof(TerminologyTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                Type = aSerializer.ReadAnsiString("Type");
                Units = aSerializer.ReadDecimal("Units");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Description", Description);
                aSerializer.WriteAnsiString("Modifier1", Modifier1);
                aSerializer.WriteAnsiString("Modifier2", Modifier2);
                aSerializer.WriteAnsiString("Modifier3", Modifier3);
                aSerializer.WriteAnsiString("Modifier4", Modifier4);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.Write("TerminologyType", TerminologyType, typeof(TerminologyTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("NDCCode", NDCCode);
                aSerializer.WriteInt32("NDCQuantity", NDCQuantity);
                aSerializer.WriteAnsiString("NDCUnitOfMeasure", NDCUnitOfMeasure);
                aSerializer.WriteBoolean("IsBillable", IsBillable);
                aSerializer.WriteDecimal("Units", Units);
            }
            else {
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Description", Description);
                aSerializer.WriteBoolean("IsBillable", IsBillable);
                aSerializer.WriteAnsiString("Modifier1", Modifier1);
                aSerializer.WriteAnsiString("Modifier2", Modifier2);
                aSerializer.WriteAnsiString("Modifier3", Modifier3);
                aSerializer.WriteAnsiString("Modifier4", Modifier4);
                aSerializer.WriteAnsiString("NDCCode", NDCCode);
                aSerializer.WriteInt32("NDCQuantity", NDCQuantity);
                aSerializer.WriteAnsiString("NDCUnitOfMeasure", NDCUnitOfMeasure);
                aSerializer.Write("TerminologyType", TerminologyType, typeof(TerminologyTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("Type", Type);
                aSerializer.WriteDecimal("Units", Units);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class TerminologyInfo1_Activator : RemObjects.SDK.TypeActivator {
        public TerminologyInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new TerminologyInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(MailboxFolderInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class MailboxFolderInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Name;
        private MailboxFolderTypeEnum @__Type;
        private int @__ReadCount;
        private int @__TotalCount;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public virtual MailboxFolderTypeEnum Type {
            get {
                return @__Type;
            }
            set {
                @__Type = value;
                this.TriggerPropertyChanged("Type");
            }
        }
        public virtual int ReadCount {
            get {
                return @__ReadCount;
            }
            set {
                @__ReadCount = value;
                this.TriggerPropertyChanged("ReadCount");
            }
        }
        public virtual int TotalCount {
            get {
                return @__TotalCount;
            }
            set {
                @__TotalCount = value;
                this.TriggerPropertyChanged("TotalCount");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Name = aSerializer.ReadAnsiString("Name");
                Type = ((MailboxFolderTypeEnum)(aSerializer.Read("Type", typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                ReadCount = aSerializer.ReadInt32("ReadCount");
                TotalCount = aSerializer.ReadInt32("TotalCount");
            }
            else {
                Name = aSerializer.ReadAnsiString("Name");
                ReadCount = aSerializer.ReadInt32("ReadCount");
                TotalCount = aSerializer.ReadInt32("TotalCount");
                Type = ((MailboxFolderTypeEnum)(aSerializer.Read("Type", typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.Write("Type", Type, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteInt32("ReadCount", ReadCount);
                aSerializer.WriteInt32("TotalCount", TotalCount);
            }
            else {
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.WriteInt32("ReadCount", ReadCount);
                aSerializer.WriteInt32("TotalCount", TotalCount);
                aSerializer.Write("Type", Type, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class MailboxFolderInfo1_Activator : RemObjects.SDK.TypeActivator {
        public MailboxFolderInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new MailboxFolderInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(MailItemInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class MailItemInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private MessageCategoryEnum @__CategoryType;
        private System.DateTime @__DateCreated;
        private System.DateTime @__SentDate;
        private string @__Subject;
        private bool @__IsCompleteReceipt;
        private bool @__IsRead;
        private bool @__IsReadReceipt;
        private bool @__ReadReceiptRequired;
        private bool @__ReadReceiptSent;
        private MailboxFolderTypeEnum @__MailboxFolderType;
        private System.DateTime @__ReceivedDate;
        private System.DateTime @__DueDate;
        private bool @__IsPastDue;
        private bool @__IsUrgent;
        private bool @__IsRoutine;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual MessageCategoryEnum CategoryType {
            get {
                return @__CategoryType;
            }
            set {
                @__CategoryType = value;
                this.TriggerPropertyChanged("CategoryType");
            }
        }
        public virtual System.DateTime DateCreated {
            get {
                return @__DateCreated;
            }
            set {
                @__DateCreated = value;
                this.TriggerPropertyChanged("DateCreated");
            }
        }
        public virtual System.DateTime SentDate {
            get {
                return @__SentDate;
            }
            set {
                @__SentDate = value;
                this.TriggerPropertyChanged("SentDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Subject {
            get {
                return @__Subject;
            }
            set {
                @__Subject = value;
                this.TriggerPropertyChanged("Subject");
            }
        }
        public virtual bool IsCompleteReceipt {
            get {
                return @__IsCompleteReceipt;
            }
            set {
                @__IsCompleteReceipt = value;
                this.TriggerPropertyChanged("IsCompleteReceipt");
            }
        }
        public virtual bool IsRead {
            get {
                return @__IsRead;
            }
            set {
                @__IsRead = value;
                this.TriggerPropertyChanged("IsRead");
            }
        }
        public virtual bool IsReadReceipt {
            get {
                return @__IsReadReceipt;
            }
            set {
                @__IsReadReceipt = value;
                this.TriggerPropertyChanged("IsReadReceipt");
            }
        }
        public virtual bool ReadReceiptRequired {
            get {
                return @__ReadReceiptRequired;
            }
            set {
                @__ReadReceiptRequired = value;
                this.TriggerPropertyChanged("ReadReceiptRequired");
            }
        }
        public virtual bool ReadReceiptSent {
            get {
                return @__ReadReceiptSent;
            }
            set {
                @__ReadReceiptSent = value;
                this.TriggerPropertyChanged("ReadReceiptSent");
            }
        }
        public virtual MailboxFolderTypeEnum MailboxFolderType {
            get {
                return @__MailboxFolderType;
            }
            set {
                @__MailboxFolderType = value;
                this.TriggerPropertyChanged("MailboxFolderType");
            }
        }
        public virtual System.DateTime ReceivedDate {
            get {
                return @__ReceivedDate;
            }
            set {
                @__ReceivedDate = value;
                this.TriggerPropertyChanged("ReceivedDate");
            }
        }
        public virtual System.DateTime DueDate {
            get {
                return @__DueDate;
            }
            set {
                @__DueDate = value;
                this.TriggerPropertyChanged("DueDate");
            }
        }
        public virtual bool IsPastDue {
            get {
                return @__IsPastDue;
            }
            set {
                @__IsPastDue = value;
                this.TriggerPropertyChanged("IsPastDue");
            }
        }
        public virtual bool IsUrgent {
            get {
                return @__IsUrgent;
            }
            set {
                @__IsUrgent = value;
                this.TriggerPropertyChanged("IsUrgent");
            }
        }
        public virtual bool IsRoutine {
            get {
                return @__IsRoutine;
            }
            set {
                @__IsRoutine = value;
                this.TriggerPropertyChanged("IsRoutine");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                CategoryType = ((MessageCategoryEnum)(aSerializer.Read("CategoryType", typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default)));
                DateCreated = aSerializer.ReadDateTime("DateCreated");
                SentDate = aSerializer.ReadDateTime("SentDate");
                Subject = aSerializer.ReadAnsiString("Subject");
                IsCompleteReceipt = aSerializer.ReadBoolean("IsCompleteReceipt");
                IsRead = aSerializer.ReadBoolean("IsRead");
                IsReadReceipt = aSerializer.ReadBoolean("IsReadReceipt");
                ReadReceiptRequired = aSerializer.ReadBoolean("ReadReceiptRequired");
                ReadReceiptSent = aSerializer.ReadBoolean("ReadReceiptSent");
                MailboxFolderType = ((MailboxFolderTypeEnum)(aSerializer.Read("MailboxFolderType", typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                ReceivedDate = aSerializer.ReadDateTime("ReceivedDate");
                DueDate = aSerializer.ReadDateTime("DueDate");
                IsPastDue = aSerializer.ReadBoolean("IsPastDue");
                IsUrgent = aSerializer.ReadBoolean("IsUrgent");
                IsRoutine = aSerializer.ReadBoolean("IsRoutine");
            }
            else {
                CategoryType = ((MessageCategoryEnum)(aSerializer.Read("CategoryType", typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default)));
                DateCreated = aSerializer.ReadDateTime("DateCreated");
                DueDate = aSerializer.ReadDateTime("DueDate");
                Id = aSerializer.ReadInt64("Id");
                IsCompleteReceipt = aSerializer.ReadBoolean("IsCompleteReceipt");
                IsPastDue = aSerializer.ReadBoolean("IsPastDue");
                IsRead = aSerializer.ReadBoolean("IsRead");
                IsReadReceipt = aSerializer.ReadBoolean("IsReadReceipt");
                IsRoutine = aSerializer.ReadBoolean("IsRoutine");
                IsUrgent = aSerializer.ReadBoolean("IsUrgent");
                MailboxFolderType = ((MailboxFolderTypeEnum)(aSerializer.Read("MailboxFolderType", typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                ReadReceiptRequired = aSerializer.ReadBoolean("ReadReceiptRequired");
                ReadReceiptSent = aSerializer.ReadBoolean("ReadReceiptSent");
                ReceivedDate = aSerializer.ReadDateTime("ReceivedDate");
                SentDate = aSerializer.ReadDateTime("SentDate");
                Subject = aSerializer.ReadAnsiString("Subject");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.Write("CategoryType", CategoryType, typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("DateCreated", DateCreated);
                aSerializer.WriteDateTime("SentDate", SentDate);
                aSerializer.WriteAnsiString("Subject", Subject);
                aSerializer.WriteBoolean("IsCompleteReceipt", IsCompleteReceipt);
                aSerializer.WriteBoolean("IsRead", IsRead);
                aSerializer.WriteBoolean("IsReadReceipt", IsReadReceipt);
                aSerializer.WriteBoolean("ReadReceiptRequired", ReadReceiptRequired);
                aSerializer.WriteBoolean("ReadReceiptSent", ReadReceiptSent);
                aSerializer.Write("MailboxFolderType", MailboxFolderType, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("ReceivedDate", ReceivedDate);
                aSerializer.WriteDateTime("DueDate", DueDate);
                aSerializer.WriteBoolean("IsPastDue", IsPastDue);
                aSerializer.WriteBoolean("IsUrgent", IsUrgent);
                aSerializer.WriteBoolean("IsRoutine", IsRoutine);
            }
            else {
                aSerializer.Write("CategoryType", CategoryType, typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("DateCreated", DateCreated);
                aSerializer.WriteDateTime("DueDate", DueDate);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsCompleteReceipt", IsCompleteReceipt);
                aSerializer.WriteBoolean("IsPastDue", IsPastDue);
                aSerializer.WriteBoolean("IsRead", IsRead);
                aSerializer.WriteBoolean("IsReadReceipt", IsReadReceipt);
                aSerializer.WriteBoolean("IsRoutine", IsRoutine);
                aSerializer.WriteBoolean("IsUrgent", IsUrgent);
                aSerializer.Write("MailboxFolderType", MailboxFolderType, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteBoolean("ReadReceiptRequired", ReadReceiptRequired);
                aSerializer.WriteBoolean("ReadReceiptSent", ReadReceiptSent);
                aSerializer.WriteDateTime("ReceivedDate", ReceivedDate);
                aSerializer.WriteDateTime("SentDate", SentDate);
                aSerializer.WriteAnsiString("Subject", Subject);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class MailItemInfo1_Activator : RemObjects.SDK.TypeActivator {
        public MailItemInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new MailItemInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(FolderItemInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class FolderItemInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__Id;
        private int @__ChartId;
        private MessageCategoryEnum @__CategoryType;
        private System.DateTime @__DateTransceived;
        private MailboxFolderTypeEnum @__FolderType;
        private string @__From;
        private bool @__IsRead;
        private int @__PatientId;
        private string @__PatientName;
        private string @__Priority;
        private string @__Subject;
        private MessageRecipientInfo1 @__Sender;
        private System.DateTime @__SentDate;
        private string @__To;
        public virtual long Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        public virtual int ChartId {
            get {
                return @__ChartId;
            }
            set {
                @__ChartId = value;
                this.TriggerPropertyChanged("ChartId");
            }
        }
        public virtual MessageCategoryEnum CategoryType {
            get {
                return @__CategoryType;
            }
            set {
                @__CategoryType = value;
                this.TriggerPropertyChanged("CategoryType");
            }
        }
        public virtual System.DateTime DateTransceived {
            get {
                return @__DateTransceived;
            }
            set {
                @__DateTransceived = value;
                this.TriggerPropertyChanged("DateTransceived");
            }
        }
        public virtual MailboxFolderTypeEnum FolderType {
            get {
                return @__FolderType;
            }
            set {
                @__FolderType = value;
                this.TriggerPropertyChanged("FolderType");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string From {
            get {
                return @__From;
            }
            set {
                @__From = value;
                this.TriggerPropertyChanged("From");
            }
        }
        public virtual bool IsRead {
            get {
                return @__IsRead;
            }
            set {
                @__IsRead = value;
                this.TriggerPropertyChanged("IsRead");
            }
        }
        public virtual int PatientId {
            get {
                return @__PatientId;
            }
            set {
                @__PatientId = value;
                this.TriggerPropertyChanged("PatientId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PatientName {
            get {
                return @__PatientName;
            }
            set {
                @__PatientName = value;
                this.TriggerPropertyChanged("PatientName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Priority {
            get {
                return @__Priority;
            }
            set {
                @__Priority = value;
                this.TriggerPropertyChanged("Priority");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Subject {
            get {
                return @__Subject;
            }
            set {
                @__Subject = value;
                this.TriggerPropertyChanged("Subject");
            }
        }
        public virtual MessageRecipientInfo1 Sender {
            get {
                return @__Sender;
            }
            set {
                @__Sender = value;
                this.TriggerPropertyChanged("Sender");
            }
        }
        public virtual System.DateTime SentDate {
            get {
                return @__SentDate;
            }
            set {
                @__SentDate = value;
                this.TriggerPropertyChanged("SentDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string To {
            get {
                return @__To;
            }
            set {
                @__To = value;
                this.TriggerPropertyChanged("To");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt64("Id");
                ChartId = aSerializer.ReadInt32("ChartId");
                CategoryType = ((MessageCategoryEnum)(aSerializer.Read("CategoryType", typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default)));
                DateTransceived = aSerializer.ReadDateTime("DateTransceived");
                FolderType = ((MailboxFolderTypeEnum)(aSerializer.Read("FolderType", typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                From = aSerializer.ReadAnsiString("From");
                IsRead = aSerializer.ReadBoolean("IsRead");
                PatientId = aSerializer.ReadInt32("PatientId");
                PatientName = aSerializer.ReadAnsiString("PatientName");
                Priority = aSerializer.ReadAnsiString("Priority");
                Subject = aSerializer.ReadAnsiString("Subject");
                Sender = ((MessageRecipientInfo1)(aSerializer.Read("Sender", typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                SentDate = aSerializer.ReadDateTime("SentDate");
                To = aSerializer.ReadAnsiString("To");
            }
            else {
                CategoryType = ((MessageCategoryEnum)(aSerializer.Read("CategoryType", typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default)));
                ChartId = aSerializer.ReadInt32("ChartId");
                DateTransceived = aSerializer.ReadDateTime("DateTransceived");
                FolderType = ((MailboxFolderTypeEnum)(aSerializer.Read("FolderType", typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                From = aSerializer.ReadAnsiString("From");
                Id = aSerializer.ReadInt64("Id");
                IsRead = aSerializer.ReadBoolean("IsRead");
                PatientId = aSerializer.ReadInt32("PatientId");
                PatientName = aSerializer.ReadAnsiString("PatientName");
                Priority = aSerializer.ReadAnsiString("Priority");
                Sender = ((MessageRecipientInfo1)(aSerializer.Read("Sender", typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                SentDate = aSerializer.ReadDateTime("SentDate");
                Subject = aSerializer.ReadAnsiString("Subject");
                To = aSerializer.ReadAnsiString("To");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteInt32("ChartId", ChartId);
                aSerializer.Write("CategoryType", CategoryType, typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("DateTransceived", DateTransceived);
                aSerializer.Write("FolderType", FolderType, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("From", From);
                aSerializer.WriteBoolean("IsRead", IsRead);
                aSerializer.WriteInt32("PatientId", PatientId);
                aSerializer.WriteAnsiString("PatientName", PatientName);
                aSerializer.WriteAnsiString("Priority", Priority);
                aSerializer.WriteAnsiString("Subject", Subject);
                aSerializer.Write("Sender", Sender, typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("SentDate", SentDate);
                aSerializer.WriteAnsiString("To", To);
            }
            else {
                aSerializer.Write("CategoryType", CategoryType, typeof(MessageCategoryEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteInt32("ChartId", ChartId);
                aSerializer.WriteDateTime("DateTransceived", DateTransceived);
                aSerializer.Write("FolderType", FolderType, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("From", From);
                aSerializer.WriteInt64("Id", Id);
                aSerializer.WriteBoolean("IsRead", IsRead);
                aSerializer.WriteInt32("PatientId", PatientId);
                aSerializer.WriteAnsiString("PatientName", PatientName);
                aSerializer.WriteAnsiString("Priority", Priority);
                aSerializer.Write("Sender", Sender, typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("SentDate", SentDate);
                aSerializer.WriteAnsiString("Subject", Subject);
                aSerializer.WriteAnsiString("To", To);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class FolderItemInfo1_Activator : RemObjects.SDK.TypeActivator {
        public FolderItemInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new FolderItemInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(MessageInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class MessageInfo1 : RemObjects.SDK.Types.ComplexType {
        private long @__HeaderId;
        private string @__Subject;
        private string @__Body;
        private int @__SenderId;
        private bool @__IsReceiptRequired;
        private MessageRecipientInfo1[] @__ToList;
        private MessageRecipientInfo1[] @__CcList;
        private MessageRecipientInfo1[] @__BccList;
        private bool @__IsRecorded;
        private int @__PatientId;
        private string @__From;
        private System.DateTime @__DateSent;
        private int @__ChartId;
        private MessageSendTypeEnum @__MessageSendType;
        private MessageRecipientInfo1 @__Sender;
        public virtual long HeaderId {
            get {
                return @__HeaderId;
            }
            set {
                @__HeaderId = value;
                this.TriggerPropertyChanged("HeaderId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Subject {
            get {
                return @__Subject;
            }
            set {
                @__Subject = value;
                this.TriggerPropertyChanged("Subject");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Body {
            get {
                return @__Body;
            }
            set {
                @__Body = value;
                this.TriggerPropertyChanged("Body");
            }
        }
        public virtual int SenderId {
            get {
                return @__SenderId;
            }
            set {
                @__SenderId = value;
                this.TriggerPropertyChanged("SenderId");
            }
        }
        public virtual bool IsReceiptRequired {
            get {
                return @__IsReceiptRequired;
            }
            set {
                @__IsReceiptRequired = value;
                this.TriggerPropertyChanged("IsReceiptRequired");
            }
        }
        public virtual MessageRecipientInfo1[] ToList {
            get {
                return @__ToList;
            }
            set {
                @__ToList = value;
                this.TriggerPropertyChanged("ToList");
            }
        }
        public virtual MessageRecipientInfo1[] CcList {
            get {
                return @__CcList;
            }
            set {
                @__CcList = value;
                this.TriggerPropertyChanged("CcList");
            }
        }
        public virtual MessageRecipientInfo1[] BccList {
            get {
                return @__BccList;
            }
            set {
                @__BccList = value;
                this.TriggerPropertyChanged("BccList");
            }
        }
        public virtual bool IsRecorded {
            get {
                return @__IsRecorded;
            }
            set {
                @__IsRecorded = value;
                this.TriggerPropertyChanged("IsRecorded");
            }
        }
        public virtual int PatientId {
            get {
                return @__PatientId;
            }
            set {
                @__PatientId = value;
                this.TriggerPropertyChanged("PatientId");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string From {
            get {
                return @__From;
            }
            set {
                @__From = value;
                this.TriggerPropertyChanged("From");
            }
        }
        public virtual System.DateTime DateSent {
            get {
                return @__DateSent;
            }
            set {
                @__DateSent = value;
                this.TriggerPropertyChanged("DateSent");
            }
        }
        public virtual int ChartId {
            get {
                return @__ChartId;
            }
            set {
                @__ChartId = value;
                this.TriggerPropertyChanged("ChartId");
            }
        }
        public virtual MessageSendTypeEnum MessageSendType {
            get {
                return @__MessageSendType;
            }
            set {
                @__MessageSendType = value;
                this.TriggerPropertyChanged("MessageSendType");
            }
        }
        public virtual MessageRecipientInfo1 Sender {
            get {
                return @__Sender;
            }
            set {
                @__Sender = value;
                this.TriggerPropertyChanged("Sender");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                HeaderId = aSerializer.ReadInt64("HeaderId");
                Subject = aSerializer.ReadAnsiString("Subject");
                Body = aSerializer.ReadAnsiString("Body");
                SenderId = aSerializer.ReadInt32("SenderId");
                IsReceiptRequired = aSerializer.ReadBoolean("IsReceiptRequired");
                ToList = ((MessageRecipientInfo1[])(aSerializer.Read("ToList", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                CcList = ((MessageRecipientInfo1[])(aSerializer.Read("CcList", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                BccList = ((MessageRecipientInfo1[])(aSerializer.Read("BccList", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                IsRecorded = aSerializer.ReadBoolean("IsRecorded");
                PatientId = aSerializer.ReadInt32("PatientId");
                From = aSerializer.ReadAnsiString("From");
                DateSent = aSerializer.ReadDateTime("DateSent");
                ChartId = aSerializer.ReadInt32("ChartId");
                MessageSendType = ((MessageSendTypeEnum)(aSerializer.Read("MessageSendType", typeof(MessageSendTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                Sender = ((MessageRecipientInfo1)(aSerializer.Read("Sender", typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                BccList = ((MessageRecipientInfo1[])(aSerializer.Read("BccList", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                Body = aSerializer.ReadAnsiString("Body");
                CcList = ((MessageRecipientInfo1[])(aSerializer.Read("CcList", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
                ChartId = aSerializer.ReadInt32("ChartId");
                DateSent = aSerializer.ReadDateTime("DateSent");
                From = aSerializer.ReadAnsiString("From");
                HeaderId = aSerializer.ReadInt64("HeaderId");
                IsReceiptRequired = aSerializer.ReadBoolean("IsReceiptRequired");
                IsRecorded = aSerializer.ReadBoolean("IsRecorded");
                MessageSendType = ((MessageSendTypeEnum)(aSerializer.Read("MessageSendType", typeof(MessageSendTypeEnum), RemObjects.SDK.StreamingFormat.Default)));
                PatientId = aSerializer.ReadInt32("PatientId");
                Sender = ((MessageRecipientInfo1)(aSerializer.Read("Sender", typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                SenderId = aSerializer.ReadInt32("SenderId");
                Subject = aSerializer.ReadAnsiString("Subject");
                ToList = ((MessageRecipientInfo1[])(aSerializer.Read("ToList", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt64("HeaderId", HeaderId);
                aSerializer.WriteAnsiString("Subject", Subject);
                aSerializer.WriteAnsiString("Body", Body);
                aSerializer.WriteInt32("SenderId", SenderId);
                aSerializer.WriteBoolean("IsReceiptRequired", IsReceiptRequired);
                aSerializer.Write("ToList", ToList, typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("CcList", CcList, typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("BccList", BccList, typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteBoolean("IsRecorded", IsRecorded);
                aSerializer.WriteInt32("PatientId", PatientId);
                aSerializer.WriteAnsiString("From", From);
                aSerializer.WriteDateTime("DateSent", DateSent);
                aSerializer.WriteInt32("ChartId", ChartId);
                aSerializer.Write("MessageSendType", MessageSendType, typeof(MessageSendTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("Sender", Sender, typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.Write("BccList", BccList, typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("Body", Body);
                aSerializer.Write("CcList", CcList, typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteInt32("ChartId", ChartId);
                aSerializer.WriteDateTime("DateSent", DateSent);
                aSerializer.WriteAnsiString("From", From);
                aSerializer.WriteInt64("HeaderId", HeaderId);
                aSerializer.WriteBoolean("IsReceiptRequired", IsReceiptRequired);
                aSerializer.WriteBoolean("IsRecorded", IsRecorded);
                aSerializer.Write("MessageSendType", MessageSendType, typeof(MessageSendTypeEnum), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteInt32("PatientId", PatientId);
                aSerializer.Write("Sender", Sender, typeof(MessageRecipientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteInt32("SenderId", SenderId);
                aSerializer.WriteAnsiString("Subject", Subject);
                aSerializer.Write("ToList", ToList, typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class MessageInfo1_Activator : RemObjects.SDK.TypeActivator {
        public MessageInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new MessageInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(MessageRecipientInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class MessageRecipientInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__Id;
        private string @__Name;
        public virtual int Id {
            get {
                return @__Id;
            }
            set {
                @__Id = value;
                this.TriggerPropertyChanged("Id");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Id = aSerializer.ReadInt32("Id");
                Name = aSerializer.ReadAnsiString("Name");
            }
            else {
                Id = aSerializer.ReadInt32("Id");
                Name = aSerializer.ReadAnsiString("Name");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
            }
            else {
                aSerializer.WriteInt32("Id", Id);
                aSerializer.WriteAnsiString("Name", Name);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class MessageRecipientInfo1_Activator : RemObjects.SDK.TypeActivator {
        public MessageRecipientInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new MessageRecipientInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(AppointmentColor1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class AppointmentColor1 : RemObjects.SDK.Types.ComplexType {
        private int @__Red;
        private int @__Green;
        private int @__Blue;
        public virtual int Red {
            get {
                return @__Red;
            }
            set {
                @__Red = value;
                this.TriggerPropertyChanged("Red");
            }
        }
        public virtual int Green {
            get {
                return @__Green;
            }
            set {
                @__Green = value;
                this.TriggerPropertyChanged("Green");
            }
        }
        public virtual int Blue {
            get {
                return @__Blue;
            }
            set {
                @__Blue = value;
                this.TriggerPropertyChanged("Blue");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Red = aSerializer.ReadInt32("Red");
                Green = aSerializer.ReadInt32("Green");
                Blue = aSerializer.ReadInt32("Blue");
            }
            else {
                Blue = aSerializer.ReadInt32("Blue");
                Green = aSerializer.ReadInt32("Green");
                Red = aSerializer.ReadInt32("Red");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("Red", Red);
                aSerializer.WriteInt32("Green", Green);
                aSerializer.WriteInt32("Blue", Blue);
            }
            else {
                aSerializer.WriteInt32("Blue", Blue);
                aSerializer.WriteInt32("Green", Green);
                aSerializer.WriteInt32("Red", Red);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class AppointmentColor1_Activator : RemObjects.SDK.TypeActivator {
        public AppointmentColor1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new AppointmentColor1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(AppointmentDetail1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class AppointmentDetail1 : RemObjects.SDK.Types.ComplexType {
        private string @__ApptNote;
        private string @__ApptReason;
        private PatientDetail1 @__PatientDetail;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ApptNote {
            get {
                return @__ApptNote;
            }
            set {
                @__ApptNote = value;
                this.TriggerPropertyChanged("ApptNote");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ApptReason {
            get {
                return @__ApptReason;
            }
            set {
                @__ApptReason = value;
                this.TriggerPropertyChanged("ApptReason");
            }
        }
        public virtual PatientDetail1 PatientDetail {
            get {
                return @__PatientDetail;
            }
            set {
                @__PatientDetail = value;
                this.TriggerPropertyChanged("PatientDetail");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                ApptNote = aSerializer.ReadAnsiString("ApptNote");
                ApptReason = aSerializer.ReadAnsiString("ApptReason");
                PatientDetail = ((PatientDetail1)(aSerializer.Read("PatientDetail", typeof(PatientDetail1), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                ApptNote = aSerializer.ReadAnsiString("ApptNote");
                ApptReason = aSerializer.ReadAnsiString("ApptReason");
                PatientDetail = ((PatientDetail1)(aSerializer.Read("PatientDetail", typeof(PatientDetail1), RemObjects.SDK.StreamingFormat.Default)));
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("ApptNote", ApptNote);
                aSerializer.WriteAnsiString("ApptReason", ApptReason);
                aSerializer.Write("PatientDetail", PatientDetail, typeof(PatientDetail1), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.WriteAnsiString("ApptNote", ApptNote);
                aSerializer.WriteAnsiString("ApptReason", ApptReason);
                aSerializer.Write("PatientDetail", PatientDetail, typeof(PatientDetail1), RemObjects.SDK.StreamingFormat.Default);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class AppointmentDetail1_Activator : RemObjects.SDK.TypeActivator {
        public AppointmentDetail1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new AppointmentDetail1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ResourceInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ResourceInfo1 : RemObjects.SDK.Types.ComplexType {
        private int @__ID;
        private string @__Name;
        public virtual int ID {
            get {
                return @__ID;
            }
            set {
                @__ID = value;
                this.TriggerPropertyChanged("ID");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                ID = aSerializer.ReadInt32("ID");
                Name = aSerializer.ReadAnsiString("Name");
            }
            else {
                ID = aSerializer.ReadInt32("ID");
                Name = aSerializer.ReadAnsiString("Name");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteInt32("ID", ID);
                aSerializer.WriteAnsiString("Name", Name);
            }
            else {
                aSerializer.WriteInt32("ID", ID);
                aSerializer.WriteAnsiString("Name", Name);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ResourceInfo1_Activator : RemObjects.SDK.TypeActivator {
        public ResourceInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ResourceInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(FacilityInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class FacilityInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__Code;
        private string @__Name;
        private AddressInfo1 @__Address;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Code {
            get {
                return @__Code;
            }
            set {
                @__Code = value;
                this.TriggerPropertyChanged("Code");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Name {
            get {
                return @__Name;
            }
            set {
                @__Name = value;
                this.TriggerPropertyChanged("Name");
            }
        }
        public virtual AddressInfo1 Address {
            get {
                return @__Address;
            }
            set {
                @__Address = value;
                this.TriggerPropertyChanged("Address");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Code = aSerializer.ReadAnsiString("Code");
                Name = aSerializer.ReadAnsiString("Name");
                Address = ((AddressInfo1)(aSerializer.Read("Address", typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                Address = ((AddressInfo1)(aSerializer.Read("Address", typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default)));
                Code = aSerializer.ReadAnsiString("Code");
                Name = aSerializer.ReadAnsiString("Name");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Name", Name);
                aSerializer.Write("Address", Address, typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.Write("Address", Address, typeof(AddressInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteAnsiString("Code", Code);
                aSerializer.WriteAnsiString("Name", Name);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class FacilityInfo1_Activator : RemObjects.SDK.TypeActivator {
        public FacilityInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new FacilityInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(BillingDetail1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class BillingDetail1 : RemObjects.SDK.Types.ComplexType {
        private string[] @__DiagnosisCodes;
        private string @__ImmunizationBatchNumber;
        private string @__ProcedureCode;
        private string @__BillingNote;
        private decimal @__Units;
        private string @__ProcedureModifier1;
        private string @__ProcedureModifier2;
        private string @__ProcedureModifier3;
        private string @__ProcedureModifier4;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string[] DiagnosisCodes {
            get {
                return @__DiagnosisCodes;
            }
            set {
                @__DiagnosisCodes = value;
                this.TriggerPropertyChanged("DiagnosisCodes");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ImmunizationBatchNumber {
            get {
                return @__ImmunizationBatchNumber;
            }
            set {
                @__ImmunizationBatchNumber = value;
                this.TriggerPropertyChanged("ImmunizationBatchNumber");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProcedureCode {
            get {
                return @__ProcedureCode;
            }
            set {
                @__ProcedureCode = value;
                this.TriggerPropertyChanged("ProcedureCode");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string BillingNote {
            get {
                return @__BillingNote;
            }
            set {
                @__BillingNote = value;
                this.TriggerPropertyChanged("BillingNote");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.Decimal)]
        public virtual decimal Units {
            get {
                return @__Units;
            }
            set {
                @__Units = value;
                this.TriggerPropertyChanged("Units");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProcedureModifier1 {
            get {
                return @__ProcedureModifier1;
            }
            set {
                @__ProcedureModifier1 = value;
                this.TriggerPropertyChanged("ProcedureModifier1");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProcedureModifier2 {
            get {
                return @__ProcedureModifier2;
            }
            set {
                @__ProcedureModifier2 = value;
                this.TriggerPropertyChanged("ProcedureModifier2");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProcedureModifier3 {
            get {
                return @__ProcedureModifier3;
            }
            set {
                @__ProcedureModifier3 = value;
                this.TriggerPropertyChanged("ProcedureModifier3");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProcedureModifier4 {
            get {
                return @__ProcedureModifier4;
            }
            set {
                @__ProcedureModifier4 = value;
                this.TriggerPropertyChanged("ProcedureModifier4");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                DiagnosisCodes = ((string[])(aSerializer.Read("DiagnosisCodes", typeof(string[]), RemObjects.SDK.StreamingFormat.AnsiString)));
                ImmunizationBatchNumber = aSerializer.ReadAnsiString("ImmunizationBatchNumber");
                ProcedureCode = aSerializer.ReadAnsiString("ProcedureCode");
                BillingNote = aSerializer.ReadAnsiString("BillingNote");
                Units = aSerializer.ReadDecimal("Units");
                ProcedureModifier1 = aSerializer.ReadAnsiString("ProcedureModifier1");
                ProcedureModifier2 = aSerializer.ReadAnsiString("ProcedureModifier2");
                ProcedureModifier3 = aSerializer.ReadAnsiString("ProcedureModifier3");
                ProcedureModifier4 = aSerializer.ReadAnsiString("ProcedureModifier4");
            }
            else {
                BillingNote = aSerializer.ReadAnsiString("BillingNote");
                DiagnosisCodes = ((string[])(aSerializer.Read("DiagnosisCodes", typeof(string[]), RemObjects.SDK.StreamingFormat.AnsiString)));
                ImmunizationBatchNumber = aSerializer.ReadAnsiString("ImmunizationBatchNumber");
                ProcedureCode = aSerializer.ReadAnsiString("ProcedureCode");
                ProcedureModifier1 = aSerializer.ReadAnsiString("ProcedureModifier1");
                ProcedureModifier2 = aSerializer.ReadAnsiString("ProcedureModifier2");
                ProcedureModifier3 = aSerializer.ReadAnsiString("ProcedureModifier3");
                ProcedureModifier4 = aSerializer.ReadAnsiString("ProcedureModifier4");
                Units = aSerializer.ReadDecimal("Units");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.Write("DiagnosisCodes", DiagnosisCodes, typeof(string[]), RemObjects.SDK.StreamingFormat.AnsiString);
                aSerializer.WriteAnsiString("ImmunizationBatchNumber", ImmunizationBatchNumber);
                aSerializer.WriteAnsiString("ProcedureCode", ProcedureCode);
                aSerializer.WriteAnsiString("BillingNote", BillingNote);
                aSerializer.WriteDecimal("Units", Units);
                aSerializer.WriteAnsiString("ProcedureModifier1", ProcedureModifier1);
                aSerializer.WriteAnsiString("ProcedureModifier2", ProcedureModifier2);
                aSerializer.WriteAnsiString("ProcedureModifier3", ProcedureModifier3);
                aSerializer.WriteAnsiString("ProcedureModifier4", ProcedureModifier4);
            }
            else {
                aSerializer.WriteAnsiString("BillingNote", BillingNote);
                aSerializer.Write("DiagnosisCodes", DiagnosisCodes, typeof(string[]), RemObjects.SDK.StreamingFormat.AnsiString);
                aSerializer.WriteAnsiString("ImmunizationBatchNumber", ImmunizationBatchNumber);
                aSerializer.WriteAnsiString("ProcedureCode", ProcedureCode);
                aSerializer.WriteAnsiString("ProcedureModifier1", ProcedureModifier1);
                aSerializer.WriteAnsiString("ProcedureModifier2", ProcedureModifier2);
                aSerializer.WriteAnsiString("ProcedureModifier3", ProcedureModifier3);
                aSerializer.WriteAnsiString("ProcedureModifier4", ProcedureModifier4);
                aSerializer.WriteDecimal("Units", Units);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class BillingDetail1_Activator : RemObjects.SDK.TypeActivator {
        public BillingDetail1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new BillingDetail1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PatientBillingInfo1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PatientBillingInfo1 : RemObjects.SDK.Types.ComplexType {
        private string @__PrimaryInsCarrier;
        private string @__RefProvider;
        private string @__RefProviderPhone;
        private decimal @__CopayAmount;
        private decimal @__AccountBalance;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PrimaryInsCarrier {
            get {
                return @__PrimaryInsCarrier;
            }
            set {
                @__PrimaryInsCarrier = value;
                this.TriggerPropertyChanged("PrimaryInsCarrier");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string RefProvider {
            get {
                return @__RefProvider;
            }
            set {
                @__RefProvider = value;
                this.TriggerPropertyChanged("RefProvider");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string RefProviderPhone {
            get {
                return @__RefProviderPhone;
            }
            set {
                @__RefProviderPhone = value;
                this.TriggerPropertyChanged("RefProviderPhone");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.Currency)]
        public virtual decimal CopayAmount {
            get {
                return @__CopayAmount;
            }
            set {
                @__CopayAmount = value;
                this.TriggerPropertyChanged("CopayAmount");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.Currency)]
        public virtual decimal AccountBalance {
            get {
                return @__AccountBalance;
            }
            set {
                @__AccountBalance = value;
                this.TriggerPropertyChanged("AccountBalance");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                PrimaryInsCarrier = aSerializer.ReadAnsiString("PrimaryInsCarrier");
                RefProvider = aSerializer.ReadAnsiString("RefProvider");
                RefProviderPhone = aSerializer.ReadAnsiString("RefProviderPhone");
                CopayAmount = aSerializer.ReadCurrency("CopayAmount");
                AccountBalance = aSerializer.ReadCurrency("AccountBalance");
            }
            else {
                AccountBalance = aSerializer.ReadCurrency("AccountBalance");
                CopayAmount = aSerializer.ReadCurrency("CopayAmount");
                PrimaryInsCarrier = aSerializer.ReadAnsiString("PrimaryInsCarrier");
                RefProvider = aSerializer.ReadAnsiString("RefProvider");
                RefProviderPhone = aSerializer.ReadAnsiString("RefProviderPhone");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("PrimaryInsCarrier", PrimaryInsCarrier);
                aSerializer.WriteAnsiString("RefProvider", RefProvider);
                aSerializer.WriteAnsiString("RefProviderPhone", RefProviderPhone);
                aSerializer.WriteCurrency("CopayAmount", CopayAmount);
                aSerializer.WriteCurrency("AccountBalance", AccountBalance);
            }
            else {
                aSerializer.WriteCurrency("AccountBalance", AccountBalance);
                aSerializer.WriteCurrency("CopayAmount", CopayAmount);
                aSerializer.WriteAnsiString("PrimaryInsCarrier", PrimaryInsCarrier);
                aSerializer.WriteAnsiString("RefProvider", RefProvider);
                aSerializer.WriteAnsiString("RefProviderPhone", RefProviderPhone);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PatientBillingInfo1_Activator : RemObjects.SDK.TypeActivator {
        public PatientBillingInfo1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PatientBillingInfo1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(PatientDetail1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class PatientDetail1 : RemObjects.SDK.Types.ComplexType {
        private PatientInfo1 @__Patient;
        private PatientBillingInfo1 @__PatientBilling;
        public virtual PatientInfo1 Patient {
            get {
                return @__Patient;
            }
            set {
                @__Patient = value;
                this.TriggerPropertyChanged("Patient");
            }
        }
        public virtual PatientBillingInfo1 PatientBilling {
            get {
                return @__PatientBilling;
            }
            set {
                @__PatientBilling = value;
                this.TriggerPropertyChanged("PatientBilling");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                Patient = ((PatientInfo1)(aSerializer.Read("Patient", typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                PatientBilling = ((PatientBillingInfo1)(aSerializer.Read("PatientBilling", typeof(PatientBillingInfo1), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                Patient = ((PatientInfo1)(aSerializer.Read("Patient", typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default)));
                PatientBilling = ((PatientBillingInfo1)(aSerializer.Read("PatientBilling", typeof(PatientBillingInfo1), RemObjects.SDK.StreamingFormat.Default)));
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.Write("Patient", Patient, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("PatientBilling", PatientBilling, typeof(PatientBillingInfo1), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.Write("Patient", Patient, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.Write("PatientBilling", PatientBilling, typeof(PatientBillingInfo1), RemObjects.SDK.StreamingFormat.Default);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class PatientDetail1_Activator : RemObjects.SDK.TypeActivator {
        public PatientDetail1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new PatientDetail1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(BillingPost1_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class BillingPost1 : RemObjects.SDK.Types.ComplexType {
        private string @__ChartID;
        private string @__PatientFirstName;
        private string @__PatientLastName;
        private string @__PatientSocialSecurity;
        private string @__Facility;
        private System.DateTime @__DateFrom;
        private System.DateTime @__BirthDate;
        private string @__ProviderID;
        private string @__NewField1;
        private BillingDetail1[] @__BillingDetails;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ChartID {
            get {
                return @__ChartID;
            }
            set {
                @__ChartID = value;
                this.TriggerPropertyChanged("ChartID");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PatientFirstName {
            get {
                return @__PatientFirstName;
            }
            set {
                @__PatientFirstName = value;
                this.TriggerPropertyChanged("PatientFirstName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PatientLastName {
            get {
                return @__PatientLastName;
            }
            set {
                @__PatientLastName = value;
                this.TriggerPropertyChanged("PatientLastName");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string PatientSocialSecurity {
            get {
                return @__PatientSocialSecurity;
            }
            set {
                @__PatientSocialSecurity = value;
                this.TriggerPropertyChanged("PatientSocialSecurity");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string Facility {
            get {
                return @__Facility;
            }
            set {
                @__Facility = value;
                this.TriggerPropertyChanged("Facility");
            }
        }
        public virtual System.DateTime DateFrom {
            get {
                return @__DateFrom;
            }
            set {
                @__DateFrom = value;
                this.TriggerPropertyChanged("DateFrom");
            }
        }
        public virtual System.DateTime BirthDate {
            get {
                return @__BirthDate;
            }
            set {
                @__BirthDate = value;
                this.TriggerPropertyChanged("BirthDate");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string ProviderID {
            get {
                return @__ProviderID;
            }
            set {
                @__ProviderID = value;
                this.TriggerPropertyChanged("ProviderID");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string NewField1 {
            get {
                return @__NewField1;
            }
            set {
                @__NewField1 = value;
                this.TriggerPropertyChanged("NewField1");
            }
        }
        public virtual BillingDetail1[] BillingDetails {
            get {
                return @__BillingDetails;
            }
            set {
                @__BillingDetails = value;
                this.TriggerPropertyChanged("BillingDetails");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                ChartID = aSerializer.ReadAnsiString("ChartID");
                PatientFirstName = aSerializer.ReadAnsiString("PatientFirstName");
                PatientLastName = aSerializer.ReadAnsiString("PatientLastName");
                PatientSocialSecurity = aSerializer.ReadAnsiString("PatientSocialSecurity");
                Facility = aSerializer.ReadAnsiString("Facility");
                DateFrom = aSerializer.ReadDateTime("DateFrom");
                BirthDate = aSerializer.ReadDateTime("BirthDate");
                ProviderID = aSerializer.ReadAnsiString("ProviderID");
                NewField1 = aSerializer.ReadAnsiString("NewField1");
                BillingDetails = ((BillingDetail1[])(aSerializer.Read("BillingDetails", typeof(BillingDetail1[]), RemObjects.SDK.StreamingFormat.Default)));
            }
            else {
                BillingDetails = ((BillingDetail1[])(aSerializer.Read("BillingDetails", typeof(BillingDetail1[]), RemObjects.SDK.StreamingFormat.Default)));
                BirthDate = aSerializer.ReadDateTime("BirthDate");
                ChartID = aSerializer.ReadAnsiString("ChartID");
                DateFrom = aSerializer.ReadDateTime("DateFrom");
                Facility = aSerializer.ReadAnsiString("Facility");
                NewField1 = aSerializer.ReadAnsiString("NewField1");
                PatientFirstName = aSerializer.ReadAnsiString("PatientFirstName");
                PatientLastName = aSerializer.ReadAnsiString("PatientLastName");
                PatientSocialSecurity = aSerializer.ReadAnsiString("PatientSocialSecurity");
                ProviderID = aSerializer.ReadAnsiString("ProviderID");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("ChartID", ChartID);
                aSerializer.WriteAnsiString("PatientFirstName", PatientFirstName);
                aSerializer.WriteAnsiString("PatientLastName", PatientLastName);
                aSerializer.WriteAnsiString("PatientSocialSecurity", PatientSocialSecurity);
                aSerializer.WriteAnsiString("Facility", Facility);
                aSerializer.WriteDateTime("DateFrom", DateFrom);
                aSerializer.WriteDateTime("BirthDate", BirthDate);
                aSerializer.WriteAnsiString("ProviderID", ProviderID);
                aSerializer.WriteAnsiString("NewField1", NewField1);
                aSerializer.Write("BillingDetails", BillingDetails, typeof(BillingDetail1[]), RemObjects.SDK.StreamingFormat.Default);
            }
            else {
                aSerializer.Write("BillingDetails", BillingDetails, typeof(BillingDetail1[]), RemObjects.SDK.StreamingFormat.Default);
                aSerializer.WriteDateTime("BirthDate", BirthDate);
                aSerializer.WriteAnsiString("ChartID", ChartID);
                aSerializer.WriteDateTime("DateFrom", DateFrom);
                aSerializer.WriteAnsiString("Facility", Facility);
                aSerializer.WriteAnsiString("NewField1", NewField1);
                aSerializer.WriteAnsiString("PatientFirstName", PatientFirstName);
                aSerializer.WriteAnsiString("PatientLastName", PatientLastName);
                aSerializer.WriteAnsiString("PatientSocialSecurity", PatientSocialSecurity);
                aSerializer.WriteAnsiString("ProviderID", ProviderID);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class BillingPost1_Activator : RemObjects.SDK.TypeActivator {
        public BillingPost1_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new BillingPost1();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ApiKeyNPin_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ApiKeyNPin : RemObjects.SDK.Types.ComplexType {
        private string @__UserApiKey;
        private string @__UserPin;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string UserApiKey {
            get {
                return @__UserApiKey;
            }
            set {
                @__UserApiKey = value;
                this.TriggerPropertyChanged("UserApiKey");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string UserPin {
            get {
                return @__UserPin;
            }
            set {
                @__UserPin = value;
                this.TriggerPropertyChanged("UserPin");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                UserApiKey = aSerializer.ReadAnsiString("UserApiKey");
                UserPin = aSerializer.ReadAnsiString("UserPin");
            }
            else {
                UserApiKey = aSerializer.ReadAnsiString("UserApiKey");
                UserPin = aSerializer.ReadAnsiString("UserPin");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("UserApiKey", UserApiKey);
                aSerializer.WriteAnsiString("UserPin", UserPin);
            }
            else {
                aSerializer.WriteAnsiString("UserApiKey", UserApiKey);
                aSerializer.WriteAnsiString("UserPin", UserPin);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ApiKeyNPin_Activator : RemObjects.SDK.TypeActivator {
        public ApiKeyNPin_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ApiKeyNPin();
        }
    }
    [RemObjects.SDK.Remotable(ActivatorClass=typeof(ApiKeyNCredential_Activator))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public partial class ApiKeyNCredential : RemObjects.SDK.Types.ComplexType {
        private string @__apiKey;
        private string @__SQLServer;
        private string @__SQLInstance;
        private string @__SQLDatabase;
        private string @__SQLUser;
        private string @__SQLPassword;
        private string @__AdvantageDataSource;
        private string @__AdvantageDataSet;
        private bool @__AdvantageIsRemote;
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string apiKey {
            get {
                return @__apiKey;
            }
            set {
                @__apiKey = value;
                this.TriggerPropertyChanged("apiKey");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SQLServer {
            get {
                return @__SQLServer;
            }
            set {
                @__SQLServer = value;
                this.TriggerPropertyChanged("SQLServer");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SQLInstance {
            get {
                return @__SQLInstance;
            }
            set {
                @__SQLInstance = value;
                this.TriggerPropertyChanged("SQLInstance");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SQLDatabase {
            get {
                return @__SQLDatabase;
            }
            set {
                @__SQLDatabase = value;
                this.TriggerPropertyChanged("SQLDatabase");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SQLUser {
            get {
                return @__SQLUser;
            }
            set {
                @__SQLUser = value;
                this.TriggerPropertyChanged("SQLUser");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string SQLPassword {
            get {
                return @__SQLPassword;
            }
            set {
                @__SQLPassword = value;
                this.TriggerPropertyChanged("SQLPassword");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string AdvantageDataSource {
            get {
                return @__AdvantageDataSource;
            }
            set {
                @__AdvantageDataSource = value;
                this.TriggerPropertyChanged("AdvantageDataSource");
            }
        }
        [RemObjects.SDK.StreamAs(RemObjects.SDK.StreamingFormat.AnsiString)]
        public virtual string AdvantageDataSet {
            get {
                return @__AdvantageDataSet;
            }
            set {
                @__AdvantageDataSet = value;
                this.TriggerPropertyChanged("AdvantageDataSet");
            }
        }
        public virtual bool AdvantageIsRemote {
            get {
                return @__AdvantageIsRemote;
            }
            set {
                @__AdvantageIsRemote = value;
                this.TriggerPropertyChanged("AdvantageIsRemote");
            }
        }
        public override void ReadComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                apiKey = aSerializer.ReadAnsiString("apiKey");
                SQLServer = aSerializer.ReadAnsiString("SQLServer");
                SQLInstance = aSerializer.ReadAnsiString("SQLInstance");
                SQLDatabase = aSerializer.ReadAnsiString("SQLDatabase");
                SQLUser = aSerializer.ReadAnsiString("SQLUser");
                SQLPassword = aSerializer.ReadAnsiString("SQLPassword");
                AdvantageDataSource = aSerializer.ReadAnsiString("AdvantageDataSource");
                AdvantageDataSet = aSerializer.ReadAnsiString("AdvantageDataSet");
                AdvantageIsRemote = aSerializer.ReadBoolean("AdvantageIsRemote");
            }
            else {
                AdvantageDataSet = aSerializer.ReadAnsiString("AdvantageDataSet");
                AdvantageDataSource = aSerializer.ReadAnsiString("AdvantageDataSource");
                AdvantageIsRemote = aSerializer.ReadBoolean("AdvantageIsRemote");
                apiKey = aSerializer.ReadAnsiString("apiKey");
                SQLDatabase = aSerializer.ReadAnsiString("SQLDatabase");
                SQLInstance = aSerializer.ReadAnsiString("SQLInstance");
                SQLPassword = aSerializer.ReadAnsiString("SQLPassword");
                SQLServer = aSerializer.ReadAnsiString("SQLServer");
                SQLUser = aSerializer.ReadAnsiString("SQLUser");
            }
        }
        public override void WriteComplex(RemObjects.SDK.Serializer aSerializer) {
            if (aSerializer.RecordStrictOrder) {
                aSerializer.WriteAnsiString("apiKey", apiKey);
                aSerializer.WriteAnsiString("SQLServer", SQLServer);
                aSerializer.WriteAnsiString("SQLInstance", SQLInstance);
                aSerializer.WriteAnsiString("SQLDatabase", SQLDatabase);
                aSerializer.WriteAnsiString("SQLUser", SQLUser);
                aSerializer.WriteAnsiString("SQLPassword", SQLPassword);
                aSerializer.WriteAnsiString("AdvantageDataSource", AdvantageDataSource);
                aSerializer.WriteAnsiString("AdvantageDataSet", AdvantageDataSet);
                aSerializer.WriteBoolean("AdvantageIsRemote", AdvantageIsRemote);
            }
            else {
                aSerializer.WriteAnsiString("AdvantageDataSet", AdvantageDataSet);
                aSerializer.WriteAnsiString("AdvantageDataSource", AdvantageDataSource);
                aSerializer.WriteBoolean("AdvantageIsRemote", AdvantageIsRemote);
                aSerializer.WriteAnsiString("apiKey", apiKey);
                aSerializer.WriteAnsiString("SQLDatabase", SQLDatabase);
                aSerializer.WriteAnsiString("SQLInstance", SQLInstance);
                aSerializer.WriteAnsiString("SQLPassword", SQLPassword);
                aSerializer.WriteAnsiString("SQLServer", SQLServer);
                aSerializer.WriteAnsiString("SQLUser", SQLUser);
            }
        }
    }
    [RemObjects.SDK.Activator()]
    [System.Reflection.ObfuscationAttribute(Exclude=true, ApplyToMembers=false)]
    public class ApiKeyNCredential_Activator : RemObjects.SDK.TypeActivator {
        public ApiKeyNCredential_Activator() : 
                base() {
        }
        public override object CreateInstance() {
            return new ApiKeyNCredential();
        }
    }
    [RemObjects.SDK.EventSink(Name="MailboxEvents", InvokerClass=typeof(MailboxEvents_EventSinkInvoker))]
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public interface IMailboxEvents : RemObjects.SDK.IROEventSink {
        void OnMailboxItemsReady();
    }
    [System.Reflection.ObfuscationAttribute(Exclude=true)]
    public class MailboxEvents_EventSinkInvoker : RemObjects.SDK.EventSinkInvoker {
        [System.Reflection.ObfuscationAttribute(Exclude=true)]
        public static void Invoke_OnMailboxItemsReady(RemObjects.SDK.IROEventSinkHandlers @__Handlers, RemObjects.SDK.IMessage @__Message) {
            for (int @__i = 0; (@__i < @__Handlers.Count); @__i = (@__i + 1)) {
                ((IMailboxEvents)(@__Handlers[@__i])).OnMailboxItemsReady();
            }
        }
    }
    public interface IAuthentication : RemObjects.SDK.IROService {
        UserInfo1 Login1(string apiKey, PracticeInfo1 practiceInfo, string userId, string password);
        PracticeInfo1[] GetPracticeList1(string apiKey);
        bool CreatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string fourdigitpin);
        UserInfo1 ValidatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string pin);
        bool PinIsSet1(string apiKey, PracticeInfo1 practiceInfo, string userID);
        string GetAPIVersion();
        bool IsAPIOutOfDate();
    }
    public partial class Authentication_Proxy : RemObjects.SDK.Proxy, IAuthentication {
        public Authentication_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Authentication_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Authentication_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Authentication_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Authentication_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Authentication_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Authentication";
        }
        public virtual UserInfo1 Login1(string apiKey, PracticeInfo1 practiceInfo, string userId, string password) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "Login1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userId", userId);
            @__LocalMessage.WriteAnsiString("password", password);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            UserInfo1 userInfo = ((UserInfo1)(@__LocalMessage.Read("userInfo", typeof(UserInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return userInfo;
        }
        public virtual PracticeInfo1[] GetPracticeList1(string apiKey) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPracticeList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            PracticeInfo1[] PracticeList = ((PracticeInfo1[])(@__LocalMessage.Read("PracticeList", typeof(PracticeInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return PracticeList;
        }
        public virtual bool CreatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string fourdigitpin) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "CreatePin1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userID", userID);
            @__LocalMessage.WriteAnsiString("fourdigitpin", fourdigitpin);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual UserInfo1 ValidatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string pin) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "ValidatePin1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userID", userID);
            @__LocalMessage.WriteAnsiString("pin", pin);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            UserInfo1 UserInfo = ((UserInfo1)(@__LocalMessage.Read("UserInfo", typeof(UserInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return UserInfo;
        }
        public virtual bool PinIsSet1(string apiKey, PracticeInfo1 practiceInfo, string userID) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "PinIsSet1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userID", userID);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual string GetAPIVersion() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAPIVersion");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual bool IsAPIOutOfDate() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "IsAPIOutOfDate");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
    }
    public class CoAuthentication {
        public static IAuthentication Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Authentication_Proxy(aMessage, aClientChannel);
        }
        public static IAuthentication Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Authentication_Proxy(aRemoteService);
        }
        public static IAuthentication Create(System.Uri aUri) {
            return new Authentication_Proxy(aUri);
        }
        public static IAuthentication Create(string aUrl) {
            return new Authentication_Proxy(aUrl);
        }
    }
    public interface ISchedule : RemObjects.SDK.IROService {
        AppointmentInfo1[] GetAppointments1(string apiKey, ProviderInfo1[] providerInfos, ResourceInfo1[] resourecInfos, System.DateTime startDate, System.DateTime endDate);
        AppointmentDetail1 GetAppointmentDetail1(string apiKey, int ApptID, bool CalculateBalance);
        bool AddAppointment1(string apiKey, AppointmentInfo1 appointmentInfo);
    }
    public partial class Schedule_Proxy : RemObjects.SDK.Proxy, ISchedule {
        public Schedule_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Schedule_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Schedule_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Schedule_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Schedule_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Schedule_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Schedule";
        }
        public virtual AppointmentInfo1[] GetAppointments1(string apiKey, ProviderInfo1[] providerInfos, ResourceInfo1[] resourecInfos, System.DateTime startDate, System.DateTime endDate) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAppointments1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("providerInfos", providerInfos, typeof(ProviderInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.Write("resourecInfos", resourecInfos, typeof(ResourceInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteDateTime("startDate", startDate);
            @__LocalMessage.WriteDateTime("endDate", endDate);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            AppointmentInfo1[] AppointmentList = ((AppointmentInfo1[])(@__LocalMessage.Read("AppointmentList", typeof(AppointmentInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return AppointmentList;
        }
        public virtual AppointmentDetail1 GetAppointmentDetail1(string apiKey, int ApptID, bool CalculateBalance) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAppointmentDetail1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("ApptID", ApptID);
            @__LocalMessage.WriteBoolean("CalculateBalance", CalculateBalance);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            AppointmentDetail1 Result = ((AppointmentDetail1)(@__LocalMessage.Read("Result", typeof(AppointmentDetail1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual bool AddAppointment1(string apiKey, AppointmentInfo1 appointmentInfo) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "AddAppointment1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("appointmentInfo", appointmentInfo, typeof(AppointmentInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
    }
    public class CoSchedule {
        public static ISchedule Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Schedule_Proxy(aMessage, aClientChannel);
        }
        public static ISchedule Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Schedule_Proxy(aRemoteService);
        }
        public static ISchedule Create(System.Uri aUri) {
            return new Schedule_Proxy(aUri);
        }
        public static ISchedule Create(string aUrl) {
            return new Schedule_Proxy(aUrl);
        }
    }
    public interface IPractice : RemObjects.SDK.IROService {
        PracticeInfo1[] GetPracticeList1(string apiKey);
        ProviderInfo1[] GetProviderList1(string apiKey, PracticeInfo1 practiceInfo);
        PatientInfo1[] GetPatientList1(string apiKey, string lastName, string firstName, string dateOfBirth);
        MessageRecipientInfo1[] GetMessageRecipientList(string apiKey);
        ResourceInfo1[] GetResourcesList1(string apiKey);
        FacilityInfo1[] GetFacilitiesList1(string apiKey);
    }
    public partial class Practice_Proxy : RemObjects.SDK.Proxy, IPractice {
        public Practice_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Practice_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Practice_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Practice_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Practice_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Practice_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Practice";
        }
        public virtual PracticeInfo1[] GetPracticeList1(string apiKey) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPracticeList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            PracticeInfo1[] PracticeList = ((PracticeInfo1[])(@__LocalMessage.Read("PracticeList", typeof(PracticeInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return PracticeList;
        }
        public virtual ProviderInfo1[] GetProviderList1(string apiKey, PracticeInfo1 practiceInfo) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetProviderList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ProviderInfo1[] ProviderList = ((ProviderInfo1[])(@__LocalMessage.Read("ProviderList", typeof(ProviderInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return ProviderList;
        }
        public virtual PatientInfo1[] GetPatientList1(string apiKey, string lastName, string firstName, string dateOfBirth) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPatientList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("lastName", lastName);
            @__LocalMessage.WriteAnsiString("firstName", firstName);
            @__LocalMessage.WriteAnsiString("dateOfBirth", dateOfBirth);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            PatientInfo1[] PatientList = ((PatientInfo1[])(@__LocalMessage.Read("PatientList", typeof(PatientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return PatientList;
        }
        public virtual MessageRecipientInfo1[] GetMessageRecipientList(string apiKey) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMessageRecipientList");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            MessageRecipientInfo1[] MessageRecipients = ((MessageRecipientInfo1[])(@__LocalMessage.Read("MessageRecipients", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MessageRecipients;
        }
        public virtual ResourceInfo1[] GetResourcesList1(string apiKey) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetResourcesList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ResourceInfo1[] Result = ((ResourceInfo1[])(@__LocalMessage.Read("Result", typeof(ResourceInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual FacilityInfo1[] GetFacilitiesList1(string apiKey) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetFacilitiesList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            FacilityInfo1[] Result = ((FacilityInfo1[])(@__LocalMessage.Read("Result", typeof(FacilityInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
    }
    public class CoPractice {
        public static IPractice Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Practice_Proxy(aMessage, aClientChannel);
        }
        public static IPractice Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Practice_Proxy(aRemoteService);
        }
        public static IPractice Create(System.Uri aUri) {
            return new Practice_Proxy(aUri);
        }
        public static IPractice Create(string aUrl) {
            return new Practice_Proxy(aUrl);
        }
    }
    public interface IPatient : RemObjects.SDK.IROService {
        PrescribedMedicationInfo1[] GetMedications(string apiKey, int chartId);
        AllergyInfo1[] GetAllergies(string apiKey, int chartId);
        ProblemInfo1[] GetProblems(string apiKey, int chartId);
        ProcedureInfo1[] GetProcedures(string apiKey, int chartId);
        ChartInfo1 GetChart(string apiKey, int patientId, int chartId);
        VitalSignInfo1[] GetVitalSigns(string apiKey, int patientId, int chartId);
        void AddNote(string apiKey, int patientId, int chartId, PatientNoteInfo1 patientNote);
        PatientNoteInfo1[] GetNotes(string apiKey, int patientId, int chartId);
        PatientDetail1 GetPatientDetail(string apiKey, string chartID);
        string CreatePatient(string apiKey, PatientInfo1 basicPatientInfo);
    }
    public partial class Patient_Proxy : RemObjects.SDK.Proxy, IPatient {
        public Patient_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Patient_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Patient_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Patient_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Patient_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Patient_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Patient";
        }
        public virtual PrescribedMedicationInfo1[] GetMedications(string apiKey, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMedications");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            PrescribedMedicationInfo1[] MedicationList = ((PrescribedMedicationInfo1[])(@__LocalMessage.Read("MedicationList", typeof(PrescribedMedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MedicationList;
        }
        public virtual AllergyInfo1[] GetAllergies(string apiKey, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAllergies");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            AllergyInfo1[] AllergyList = ((AllergyInfo1[])(@__LocalMessage.Read("AllergyList", typeof(AllergyInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return AllergyList;
        }
        public virtual ProblemInfo1[] GetProblems(string apiKey, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetProblems");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ProblemInfo1[] ProblemList = ((ProblemInfo1[])(@__LocalMessage.Read("ProblemList", typeof(ProblemInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return ProblemList;
        }
        public virtual ProcedureInfo1[] GetProcedures(string apiKey, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetProcedures");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ProcedureInfo1[] Procedures = ((ProcedureInfo1[])(@__LocalMessage.Read("Procedures", typeof(ProcedureInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Procedures;
        }
        public virtual ChartInfo1 GetChart(string apiKey, int patientId, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetChart");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ChartInfo1 chart = ((ChartInfo1)(@__LocalMessage.Read("chart", typeof(ChartInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return chart;
        }
        public virtual VitalSignInfo1[] GetVitalSigns(string apiKey, int patientId, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetVitalSigns");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            VitalSignInfo1[] VitalSigns = ((VitalSignInfo1[])(@__LocalMessage.Read("VitalSigns", typeof(VitalSignInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return VitalSigns;
        }
        public virtual void AddNote(string apiKey, int patientId, int chartId, PatientNoteInfo1 patientNote) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "AddNote");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.Write("patientNote", patientNote, typeof(PatientNoteInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            @__LocalMessage.Clear();
        }
        public virtual PatientNoteInfo1[] GetNotes(string apiKey, int patientId, int chartId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetNotes");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            PatientNoteInfo1[] Notes = ((PatientNoteInfo1[])(@__LocalMessage.Read("Notes", typeof(PatientNoteInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Notes;
        }
        public virtual PatientDetail1 GetPatientDetail(string apiKey, string chartID) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPatientDetail");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("chartID", chartID);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            PatientDetail1 Result = ((PatientDetail1)(@__LocalMessage.Read("Result", typeof(PatientDetail1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual string CreatePatient(string apiKey, PatientInfo1 basicPatientInfo) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "CreatePatient");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("basicPatientInfo", basicPatientInfo, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            string ChartID = @__LocalMessage.ReadAnsiString("ChartID");
            @__LocalMessage.Clear();
            return ChartID;
        }
    }
    public class CoPatient {
        public static IPatient Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Patient_Proxy(aMessage, aClientChannel);
        }
        public static IPatient Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Patient_Proxy(aRemoteService);
        }
        public static IPatient Create(System.Uri aUri) {
            return new Patient_Proxy(aUri);
        }
        public static IPatient Create(string aUrl) {
            return new Patient_Proxy(aUrl);
        }
    }
    public interface IMedication : RemObjects.SDK.IROService {
        MedicationInfo1[] Search(string apiKey, string searchString);
    }
    public partial class Medication_Proxy : RemObjects.SDK.Proxy, IMedication {
        public Medication_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Medication_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Medication_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Medication_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Medication_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Medication_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Medication";
        }
        public virtual MedicationInfo1[] Search(string apiKey, string searchString) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "Search");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("searchString", searchString);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            MedicationInfo1[] MedicationSearchResults = ((MedicationInfo1[])(@__LocalMessage.Read("MedicationSearchResults", typeof(MedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MedicationSearchResults;
        }
    }
    public class CoMedication {
        public static IMedication Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Medication_Proxy(aMessage, aClientChannel);
        }
        public static IMedication Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Medication_Proxy(aRemoteService);
        }
        public static IMedication Create(System.Uri aUri) {
            return new Medication_Proxy(aUri);
        }
        public static IMedication Create(string aUrl) {
            return new Medication_Proxy(aUrl);
        }
    }
    public interface ITerminology : RemObjects.SDK.IROService {
        TerminologyInfo1[] SearchTerminology(string apiKey, string searchString, TerminologySearchTypeEnum searchType, TerminologyDomainEnum terminologyDomain, string chartID);
    }
    public partial class Terminology_Proxy : RemObjects.SDK.Proxy, ITerminology {
        public Terminology_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Terminology_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Terminology_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Terminology_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Terminology_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Terminology_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Terminology";
        }
        public virtual TerminologyInfo1[] SearchTerminology(string apiKey, string searchString, TerminologySearchTypeEnum searchType, TerminologyDomainEnum terminologyDomain, string chartID) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SearchTerminology");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("searchString", searchString);
            @__LocalMessage.Write("searchType", searchType, typeof(TerminologySearchTypeEnum), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.Write("terminologyDomain", terminologyDomain, typeof(TerminologyDomainEnum), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("chartID", chartID);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            TerminologyInfo1[] Terms = ((TerminologyInfo1[])(@__LocalMessage.Read("Terms", typeof(TerminologyInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Terms;
        }
    }
    public class CoTerminology {
        public static ITerminology Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Terminology_Proxy(aMessage, aClientChannel);
        }
        public static ITerminology Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Terminology_Proxy(aRemoteService);
        }
        public static ITerminology Create(System.Uri aUri) {
            return new Terminology_Proxy(aUri);
        }
        public static ITerminology Create(string aUrl) {
            return new Terminology_Proxy(aUrl);
        }
    }
    public interface IProvider : RemObjects.SDK.IROService {
        MailboxFolderInfo1[] GetMailboxFoldersInfo(string apiKey, int providerId);
        FolderItemInfo1[] GetMailboxItems(string apiKey, MailboxFolderTypeEnum folderType);
        MessageInfo1 GetMessage(string apiKey, long messageId);
        void SendMessage(string apiKey, MessageInfo1 message);
    }
    public partial class Provider_Proxy : RemObjects.SDK.Proxy, IProvider {
        public Provider_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Provider_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Provider_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Provider_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Provider_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Provider_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Provider";
        }
        public virtual MailboxFolderInfo1[] GetMailboxFoldersInfo(string apiKey, int providerId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMailboxFoldersInfo");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("providerId", providerId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            MailboxFolderInfo1[] MailboxFoldersInfo = ((MailboxFolderInfo1[])(@__LocalMessage.Read("MailboxFoldersInfo", typeof(MailboxFolderInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MailboxFoldersInfo;
        }
        public virtual FolderItemInfo1[] GetMailboxItems(string apiKey, MailboxFolderTypeEnum folderType) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMailboxItems");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("folderType", folderType, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            FolderItemInfo1[] FolderItems = ((FolderItemInfo1[])(@__LocalMessage.Read("FolderItems", typeof(FolderItemInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return FolderItems;
        }
        public virtual MessageInfo1 GetMessage(string apiKey, long messageId) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMessage");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt64("messageId", messageId);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            MessageInfo1 MessageInfo = ((MessageInfo1)(@__LocalMessage.Read("MessageInfo", typeof(MessageInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MessageInfo;
        }
        public virtual void SendMessage(string apiKey, MessageInfo1 message) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SendMessage");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("message", message, typeof(MessageInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            @__LocalMessage.Clear();
        }
    }
    public class CoProvider {
        public static IProvider Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Provider_Proxy(aMessage, aClientChannel);
        }
        public static IProvider Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Provider_Proxy(aRemoteService);
        }
        public static IProvider Create(System.Uri aUri) {
            return new Provider_Proxy(aUri);
        }
        public static IProvider Create(string aUrl) {
            return new Provider_Proxy(aUrl);
        }
    }
    public interface IBilling : RemObjects.SDK.IROService {
        System.Xml.XmlNode LoadSuperBill(string apiKey, string Name);
        void SaveSuperBill(string apiKey, string Name, System.Xml.XmlNode Data);
        string[] GetListOfAvailableSuperBills(string apiKey);
        bool PostBilling(string apiKey, string user, BillingPost1 billingPost);
        void DeleteSuperbill(string apiKey, string Name);
    }
    public partial class Billing_Proxy : RemObjects.SDK.Proxy, IBilling {
        public Billing_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Billing_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Billing_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Billing_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Billing_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Billing_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Billing";
        }
        public virtual System.Xml.XmlNode LoadSuperBill(string apiKey, string Name) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "LoadSuperBill");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("Name", Name);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            System.Xml.XmlNode Result = @__LocalMessage.ReadXml("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual void SaveSuperBill(string apiKey, string Name, System.Xml.XmlNode Data) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SaveSuperBill");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("Name", Name);
            @__LocalMessage.WriteXml("Data", Data);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            @__LocalMessage.Clear();
        }
        public virtual string[] GetListOfAvailableSuperBills(string apiKey) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetListOfAvailableSuperBills");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            string[] CSVList = ((string[])(@__LocalMessage.Read("CSVList", typeof(string[]), RemObjects.SDK.StreamingFormat.AnsiString)));
            @__LocalMessage.Clear();
            return CSVList;
        }
        public virtual bool PostBilling(string apiKey, string user, BillingPost1 billingPost) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "PostBilling");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("user", user);
            @__LocalMessage.Write("billingPost", billingPost, typeof(BillingPost1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual void DeleteSuperbill(string apiKey, string Name) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "DeleteSuperbill");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("Name", Name);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            @__LocalMessage.Clear();
        }
    }
    public class CoBilling {
        public static IBilling Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new Billing_Proxy(aMessage, aClientChannel);
        }
        public static IBilling Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new Billing_Proxy(aRemoteService);
        }
        public static IBilling Create(System.Uri aUri) {
            return new Billing_Proxy(aUri);
        }
        public static IBilling Create(string aUrl) {
            return new Billing_Proxy(aUrl);
        }
    }
    public interface IMSLSpecific : RemObjects.SDK.IROService {
        bool ProductSetupCompleted(string SharedConnectionDataSource, string RegisteredName);
        bool PracticeNameChangeOccured(string SharedConnectionDataSource, string NewPracticeName, string DataBaseNameOrDataSetName);
        ApiKeyNPin MobileAboutDialogCalled(string SharedConnectionDataSource, string RegisteredName, string PracticeName, string DataBaseNameOrDataSetName);
        bool IsServerReachableFromTheInternet(string SharedConnectionDataSource);
        void UpdateServiceIfNeeded();
        string GetHostSpecGUID();
        string GetLocalIP();
        string GetExternalIP();
        int GetExternalPort();
        bool SetExternalPort(int Port);
        ApiKeyNCredential[] GetLoadedCredentials();
        bool AddSharedCredential(ApiKeyNCredential credential);
        void GenerateApiKeysForPracticesInLoadedSharedCredentials();
    }
    public partial class MSLSpecific_Proxy : RemObjects.SDK.Proxy, IMSLSpecific {
        public MSLSpecific_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public MSLSpecific_Proxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public MSLSpecific_Proxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public MSLSpecific_Proxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public MSLSpecific_Proxy(System.Uri aUri) : 
                base(aUri) {
        }
        public MSLSpecific_Proxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "MSLSpecific";
        }
        public virtual bool ProductSetupCompleted(string SharedConnectionDataSource, string RegisteredName) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "ProductSetupCompleted");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.WriteAnsiString("RegisteredName", RegisteredName);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual bool PracticeNameChangeOccured(string SharedConnectionDataSource, string NewPracticeName, string DataBaseNameOrDataSetName) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "PracticeNameChangeOccured");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.WriteAnsiString("NewPracticeName", NewPracticeName);
            @__LocalMessage.WriteAnsiString("DataBaseNameOrDataSetName", DataBaseNameOrDataSetName);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual ApiKeyNPin MobileAboutDialogCalled(string SharedConnectionDataSource, string RegisteredName, string PracticeName, string DataBaseNameOrDataSetName) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "MobileAboutDialogCalled");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.WriteAnsiString("RegisteredName", RegisteredName);
            @__LocalMessage.WriteAnsiString("PracticeName", PracticeName);
            @__LocalMessage.WriteAnsiString("DataBaseNameOrDataSetName", DataBaseNameOrDataSetName);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ApiKeyNPin Result = ((ApiKeyNPin)(@__LocalMessage.Read("Result", typeof(ApiKeyNPin), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual bool IsServerReachableFromTheInternet(string SharedConnectionDataSource) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "IsServerReachableFromTheInternet");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual void UpdateServiceIfNeeded() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "UpdateServiceIfNeeded");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            @__LocalMessage.Clear();
        }
        public virtual string GetHostSpecGUID() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetHostSpecGUID");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual string GetLocalIP() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetLocalIP");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual string GetExternalIP() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetExternalIP");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual int GetExternalPort() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetExternalPort");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            int Result = @__LocalMessage.ReadInt32("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual bool SetExternalPort(int Port) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SetExternalPort");
            @__LocalMessage.WriteInt32("Port", Port);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual ApiKeyNCredential[] GetLoadedCredentials() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetLoadedCredentials");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            ApiKeyNCredential[] Result = ((ApiKeyNCredential[])(@__LocalMessage.Read("Result", typeof(ApiKeyNCredential[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual bool AddSharedCredential(ApiKeyNCredential credential) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "AddSharedCredential");
            @__LocalMessage.Write("credential", credential, typeof(ApiKeyNCredential), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual void GenerateApiKeysForPracticesInLoadedSharedCredentials() {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GenerateApiKeysForPracticesInLoadedSharedCredentials");
            @__LocalMessage.FinalizeMessage();
            @__ClientChannel.Dispatch(@__LocalMessage);
            @__LocalMessage.Clear();
        }
    }
    public class CoMSLSpecific {
        public static IMSLSpecific Create(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) {
            return new MSLSpecific_Proxy(aMessage, aClientChannel);
        }
        public static IMSLSpecific Create(RemObjects.SDK.IRemoteService aRemoteService) {
            return new MSLSpecific_Proxy(aRemoteService);
        }
        public static IMSLSpecific Create(System.Uri aUri) {
            return new MSLSpecific_Proxy(aUri);
        }
        public static IMSLSpecific Create(string aUrl) {
            return new MSLSpecific_Proxy(aUrl);
        }
    }
    public interface IAuthentication_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginLogin1(string apiKey, PracticeInfo1 practiceInfo, string userId, string password, System.AsyncCallback @__Callback, object @__UserData);
        UserInfo1 EndLogin1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetPracticeList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData);
        PracticeInfo1[] EndGetPracticeList1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginCreatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string fourdigitpin, System.AsyncCallback @__Callback, object @__UserData);
        bool EndCreatePin1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginValidatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string pin, System.AsyncCallback @__Callback, object @__UserData);
        UserInfo1 EndValidatePin1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginPinIsSet1(string apiKey, PracticeInfo1 practiceInfo, string userID, System.AsyncCallback @__Callback, object @__UserData);
        bool EndPinIsSet1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetAPIVersion(System.AsyncCallback @__Callback, object @__UserData);
        string EndGetAPIVersion(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginIsAPIOutOfDate(System.AsyncCallback @__Callback, object @__UserData);
        bool EndIsAPIOutOfDate(System.IAsyncResult @__AsyncResult);
    }
    public partial class Authentication_AsyncProxy : RemObjects.SDK.AsyncProxy, IAuthentication_Async {
        public Authentication_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Authentication_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Authentication_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Authentication_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Authentication_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Authentication_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Authentication";
        }
        public virtual System.IAsyncResult BeginLogin1(string apiKey, PracticeInfo1 practiceInfo, string userId, string password, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "Login1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userId", userId);
            @__LocalMessage.WriteAnsiString("password", password);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual UserInfo1 EndLogin1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            UserInfo1 userInfo = ((UserInfo1)(@__LocalMessage.Read("userInfo", typeof(UserInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return userInfo;
        }
        public virtual System.IAsyncResult BeginGetPracticeList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPracticeList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual PracticeInfo1[] EndGetPracticeList1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            PracticeInfo1[] PracticeList = ((PracticeInfo1[])(@__LocalMessage.Read("PracticeList", typeof(PracticeInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return PracticeList;
        }
        public virtual System.IAsyncResult BeginCreatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string fourdigitpin, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "CreatePin1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userID", userID);
            @__LocalMessage.WriteAnsiString("fourdigitpin", fourdigitpin);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndCreatePin1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginValidatePin1(string apiKey, PracticeInfo1 practiceInfo, string userID, string pin, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "ValidatePin1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userID", userID);
            @__LocalMessage.WriteAnsiString("pin", pin);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual UserInfo1 EndValidatePin1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            UserInfo1 UserInfo = ((UserInfo1)(@__LocalMessage.Read("UserInfo", typeof(UserInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return UserInfo;
        }
        public virtual System.IAsyncResult BeginPinIsSet1(string apiKey, PracticeInfo1 practiceInfo, string userID, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "PinIsSet1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("userID", userID);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndPinIsSet1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGetAPIVersion(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAPIVersion");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual string EndGetAPIVersion(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginIsAPIOutOfDate(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "IsAPIOutOfDate");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndIsAPIOutOfDate(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
    }
    public interface ISchedule_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginGetAppointments1(string apiKey, ProviderInfo1[] providerInfos, ResourceInfo1[] resourecInfos, System.DateTime startDate, System.DateTime endDate, System.AsyncCallback @__Callback, object @__UserData);
        AppointmentInfo1[] EndGetAppointments1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetAppointmentDetail1(string apiKey, int ApptID, bool CalculateBalance, System.AsyncCallback @__Callback, object @__UserData);
        AppointmentDetail1 EndGetAppointmentDetail1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginAddAppointment1(string apiKey, AppointmentInfo1 appointmentInfo, System.AsyncCallback @__Callback, object @__UserData);
        bool EndAddAppointment1(System.IAsyncResult @__AsyncResult);
    }
    public partial class Schedule_AsyncProxy : RemObjects.SDK.AsyncProxy, ISchedule_Async {
        public Schedule_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Schedule_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Schedule_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Schedule_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Schedule_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Schedule_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Schedule";
        }
        public virtual System.IAsyncResult BeginGetAppointments1(string apiKey, ProviderInfo1[] providerInfos, ResourceInfo1[] resourecInfos, System.DateTime startDate, System.DateTime endDate, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAppointments1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("providerInfos", providerInfos, typeof(ProviderInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.Write("resourecInfos", resourecInfos, typeof(ResourceInfo1[]), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteDateTime("startDate", startDate);
            @__LocalMessage.WriteDateTime("endDate", endDate);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual AppointmentInfo1[] EndGetAppointments1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            AppointmentInfo1[] AppointmentList = ((AppointmentInfo1[])(@__LocalMessage.Read("AppointmentList", typeof(AppointmentInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return AppointmentList;
        }
        public virtual System.IAsyncResult BeginGetAppointmentDetail1(string apiKey, int ApptID, bool CalculateBalance, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAppointmentDetail1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("ApptID", ApptID);
            @__LocalMessage.WriteBoolean("CalculateBalance", CalculateBalance);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual AppointmentDetail1 EndGetAppointmentDetail1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            AppointmentDetail1 Result = ((AppointmentDetail1)(@__LocalMessage.Read("Result", typeof(AppointmentDetail1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginAddAppointment1(string apiKey, AppointmentInfo1 appointmentInfo, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "AddAppointment1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("appointmentInfo", appointmentInfo, typeof(AppointmentInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndAddAppointment1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
    }
    public interface IPractice_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginGetPracticeList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData);
        PracticeInfo1[] EndGetPracticeList1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetProviderList1(string apiKey, PracticeInfo1 practiceInfo, System.AsyncCallback @__Callback, object @__UserData);
        ProviderInfo1[] EndGetProviderList1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetPatientList1(string apiKey, string lastName, string firstName, string dateOfBirth, System.AsyncCallback @__Callback, object @__UserData);
        PatientInfo1[] EndGetPatientList1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetMessageRecipientList(string apiKey, System.AsyncCallback @__Callback, object @__UserData);
        MessageRecipientInfo1[] EndGetMessageRecipientList(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetResourcesList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData);
        ResourceInfo1[] EndGetResourcesList1(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetFacilitiesList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData);
        FacilityInfo1[] EndGetFacilitiesList1(System.IAsyncResult @__AsyncResult);
    }
    public partial class Practice_AsyncProxy : RemObjects.SDK.AsyncProxy, IPractice_Async {
        public Practice_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Practice_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Practice_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Practice_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Practice_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Practice_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Practice";
        }
        public virtual System.IAsyncResult BeginGetPracticeList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPracticeList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual PracticeInfo1[] EndGetPracticeList1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            PracticeInfo1[] PracticeList = ((PracticeInfo1[])(@__LocalMessage.Read("PracticeList", typeof(PracticeInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return PracticeList;
        }
        public virtual System.IAsyncResult BeginGetProviderList1(string apiKey, PracticeInfo1 practiceInfo, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetProviderList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("practiceInfo", practiceInfo, typeof(PracticeInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ProviderInfo1[] EndGetProviderList1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ProviderInfo1[] ProviderList = ((ProviderInfo1[])(@__LocalMessage.Read("ProviderList", typeof(ProviderInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return ProviderList;
        }
        public virtual System.IAsyncResult BeginGetPatientList1(string apiKey, string lastName, string firstName, string dateOfBirth, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPatientList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("lastName", lastName);
            @__LocalMessage.WriteAnsiString("firstName", firstName);
            @__LocalMessage.WriteAnsiString("dateOfBirth", dateOfBirth);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual PatientInfo1[] EndGetPatientList1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            PatientInfo1[] PatientList = ((PatientInfo1[])(@__LocalMessage.Read("PatientList", typeof(PatientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return PatientList;
        }
        public virtual System.IAsyncResult BeginGetMessageRecipientList(string apiKey, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMessageRecipientList");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual MessageRecipientInfo1[] EndGetMessageRecipientList(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            MessageRecipientInfo1[] MessageRecipients = ((MessageRecipientInfo1[])(@__LocalMessage.Read("MessageRecipients", typeof(MessageRecipientInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MessageRecipients;
        }
        public virtual System.IAsyncResult BeginGetResourcesList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetResourcesList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ResourceInfo1[] EndGetResourcesList1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ResourceInfo1[] Result = ((ResourceInfo1[])(@__LocalMessage.Read("Result", typeof(ResourceInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGetFacilitiesList1(string apiKey, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetFacilitiesList1");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual FacilityInfo1[] EndGetFacilitiesList1(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            FacilityInfo1[] Result = ((FacilityInfo1[])(@__LocalMessage.Read("Result", typeof(FacilityInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
    }
    public interface IPatient_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginGetMedications(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        PrescribedMedicationInfo1[] EndGetMedications(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetAllergies(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        AllergyInfo1[] EndGetAllergies(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetProblems(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        ProblemInfo1[] EndGetProblems(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetProcedures(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        ProcedureInfo1[] EndGetProcedures(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetChart(string apiKey, int patientId, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        ChartInfo1 EndGetChart(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetVitalSigns(string apiKey, int patientId, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        VitalSignInfo1[] EndGetVitalSigns(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginAddNote(string apiKey, int patientId, int chartId, PatientNoteInfo1 patientNote, System.AsyncCallback @__Callback, object @__UserData);
        void EndAddNote(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetNotes(string apiKey, int patientId, int chartId, System.AsyncCallback @__Callback, object @__UserData);
        PatientNoteInfo1[] EndGetNotes(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetPatientDetail(string apiKey, string chartID, System.AsyncCallback @__Callback, object @__UserData);
        PatientDetail1 EndGetPatientDetail(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginCreatePatient(string apiKey, PatientInfo1 basicPatientInfo, System.AsyncCallback @__Callback, object @__UserData);
        string EndCreatePatient(System.IAsyncResult @__AsyncResult);
    }
    public partial class Patient_AsyncProxy : RemObjects.SDK.AsyncProxy, IPatient_Async {
        public Patient_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Patient_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Patient_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Patient_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Patient_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Patient_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Patient";
        }
        public virtual System.IAsyncResult BeginGetMedications(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMedications");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual PrescribedMedicationInfo1[] EndGetMedications(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            PrescribedMedicationInfo1[] MedicationList = ((PrescribedMedicationInfo1[])(@__LocalMessage.Read("MedicationList", typeof(PrescribedMedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MedicationList;
        }
        public virtual System.IAsyncResult BeginGetAllergies(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetAllergies");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual AllergyInfo1[] EndGetAllergies(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            AllergyInfo1[] AllergyList = ((AllergyInfo1[])(@__LocalMessage.Read("AllergyList", typeof(AllergyInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return AllergyList;
        }
        public virtual System.IAsyncResult BeginGetProblems(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetProblems");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ProblemInfo1[] EndGetProblems(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ProblemInfo1[] ProblemList = ((ProblemInfo1[])(@__LocalMessage.Read("ProblemList", typeof(ProblemInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return ProblemList;
        }
        public virtual System.IAsyncResult BeginGetProcedures(string apiKey, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetProcedures");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ProcedureInfo1[] EndGetProcedures(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ProcedureInfo1[] Procedures = ((ProcedureInfo1[])(@__LocalMessage.Read("Procedures", typeof(ProcedureInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Procedures;
        }
        public virtual System.IAsyncResult BeginGetChart(string apiKey, int patientId, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetChart");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ChartInfo1 EndGetChart(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ChartInfo1 chart = ((ChartInfo1)(@__LocalMessage.Read("chart", typeof(ChartInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return chart;
        }
        public virtual System.IAsyncResult BeginGetVitalSigns(string apiKey, int patientId, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetVitalSigns");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual VitalSignInfo1[] EndGetVitalSigns(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            VitalSignInfo1[] VitalSigns = ((VitalSignInfo1[])(@__LocalMessage.Read("VitalSigns", typeof(VitalSignInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return VitalSigns;
        }
        public virtual System.IAsyncResult BeginAddNote(string apiKey, int patientId, int chartId, PatientNoteInfo1 patientNote, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "AddNote");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.Write("patientNote", patientNote, typeof(PatientNoteInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual void EndAddNote(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            @__LocalMessage.Clear();
        }
        public virtual System.IAsyncResult BeginGetNotes(string apiKey, int patientId, int chartId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetNotes");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("patientId", patientId);
            @__LocalMessage.WriteInt32("chartId", chartId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual PatientNoteInfo1[] EndGetNotes(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            PatientNoteInfo1[] Notes = ((PatientNoteInfo1[])(@__LocalMessage.Read("Notes", typeof(PatientNoteInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Notes;
        }
        public virtual System.IAsyncResult BeginGetPatientDetail(string apiKey, string chartID, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetPatientDetail");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("chartID", chartID);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual PatientDetail1 EndGetPatientDetail(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            PatientDetail1 Result = ((PatientDetail1)(@__LocalMessage.Read("Result", typeof(PatientDetail1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginCreatePatient(string apiKey, PatientInfo1 basicPatientInfo, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "CreatePatient");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("basicPatientInfo", basicPatientInfo, typeof(PatientInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual string EndCreatePatient(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            string ChartID = @__LocalMessage.ReadAnsiString("ChartID");
            @__LocalMessage.Clear();
            return ChartID;
        }
    }
    public interface IMedication_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginSearch(string apiKey, string searchString, System.AsyncCallback @__Callback, object @__UserData);
        MedicationInfo1[] EndSearch(System.IAsyncResult @__AsyncResult);
    }
    public partial class Medication_AsyncProxy : RemObjects.SDK.AsyncProxy, IMedication_Async {
        public Medication_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Medication_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Medication_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Medication_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Medication_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Medication_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Medication";
        }
        public virtual System.IAsyncResult BeginSearch(string apiKey, string searchString, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "Search");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("searchString", searchString);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual MedicationInfo1[] EndSearch(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            MedicationInfo1[] MedicationSearchResults = ((MedicationInfo1[])(@__LocalMessage.Read("MedicationSearchResults", typeof(MedicationInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MedicationSearchResults;
        }
    }
    public interface ITerminology_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginSearchTerminology(string apiKey, string searchString, TerminologySearchTypeEnum searchType, TerminologyDomainEnum terminologyDomain, string chartID, System.AsyncCallback @__Callback, object @__UserData);
        TerminologyInfo1[] EndSearchTerminology(System.IAsyncResult @__AsyncResult);
    }
    public partial class Terminology_AsyncProxy : RemObjects.SDK.AsyncProxy, ITerminology_Async {
        public Terminology_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Terminology_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Terminology_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Terminology_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Terminology_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Terminology_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Terminology";
        }
        public virtual System.IAsyncResult BeginSearchTerminology(string apiKey, string searchString, TerminologySearchTypeEnum searchType, TerminologyDomainEnum terminologyDomain, string chartID, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SearchTerminology");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("searchString", searchString);
            @__LocalMessage.Write("searchType", searchType, typeof(TerminologySearchTypeEnum), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.Write("terminologyDomain", terminologyDomain, typeof(TerminologyDomainEnum), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.WriteAnsiString("chartID", chartID);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual TerminologyInfo1[] EndSearchTerminology(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            TerminologyInfo1[] Terms = ((TerminologyInfo1[])(@__LocalMessage.Read("Terms", typeof(TerminologyInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Terms;
        }
    }
    public interface IProvider_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginGetMailboxFoldersInfo(string apiKey, int providerId, System.AsyncCallback @__Callback, object @__UserData);
        MailboxFolderInfo1[] EndGetMailboxFoldersInfo(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetMailboxItems(string apiKey, MailboxFolderTypeEnum folderType, System.AsyncCallback @__Callback, object @__UserData);
        FolderItemInfo1[] EndGetMailboxItems(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetMessage(string apiKey, long messageId, System.AsyncCallback @__Callback, object @__UserData);
        MessageInfo1 EndGetMessage(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginSendMessage(string apiKey, MessageInfo1 message, System.AsyncCallback @__Callback, object @__UserData);
        void EndSendMessage(System.IAsyncResult @__AsyncResult);
    }
    public partial class Provider_AsyncProxy : RemObjects.SDK.AsyncProxy, IProvider_Async {
        public Provider_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Provider_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Provider_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Provider_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Provider_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Provider_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Provider";
        }
        public virtual System.IAsyncResult BeginGetMailboxFoldersInfo(string apiKey, int providerId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMailboxFoldersInfo");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt32("providerId", providerId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual MailboxFolderInfo1[] EndGetMailboxFoldersInfo(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            MailboxFolderInfo1[] MailboxFoldersInfo = ((MailboxFolderInfo1[])(@__LocalMessage.Read("MailboxFoldersInfo", typeof(MailboxFolderInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MailboxFoldersInfo;
        }
        public virtual System.IAsyncResult BeginGetMailboxItems(string apiKey, MailboxFolderTypeEnum folderType, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMailboxItems");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("folderType", folderType, typeof(MailboxFolderTypeEnum), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual FolderItemInfo1[] EndGetMailboxItems(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            FolderItemInfo1[] FolderItems = ((FolderItemInfo1[])(@__LocalMessage.Read("FolderItems", typeof(FolderItemInfo1[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return FolderItems;
        }
        public virtual System.IAsyncResult BeginGetMessage(string apiKey, long messageId, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetMessage");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteInt64("messageId", messageId);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual MessageInfo1 EndGetMessage(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            MessageInfo1 MessageInfo = ((MessageInfo1)(@__LocalMessage.Read("MessageInfo", typeof(MessageInfo1), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return MessageInfo;
        }
        public virtual System.IAsyncResult BeginSendMessage(string apiKey, MessageInfo1 message, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SendMessage");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.Write("message", message, typeof(MessageInfo1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual void EndSendMessage(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            @__LocalMessage.Clear();
        }
    }
    public interface IBilling_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginLoadSuperBill(string apiKey, string Name, System.AsyncCallback @__Callback, object @__UserData);
        System.Xml.XmlNode EndLoadSuperBill(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginSaveSuperBill(string apiKey, string Name, System.Xml.XmlNode Data, System.AsyncCallback @__Callback, object @__UserData);
        void EndSaveSuperBill(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetListOfAvailableSuperBills(string apiKey, System.AsyncCallback @__Callback, object @__UserData);
        string[] EndGetListOfAvailableSuperBills(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginPostBilling(string apiKey, string user, BillingPost1 billingPost, System.AsyncCallback @__Callback, object @__UserData);
        bool EndPostBilling(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginDeleteSuperbill(string apiKey, string Name, System.AsyncCallback @__Callback, object @__UserData);
        void EndDeleteSuperbill(System.IAsyncResult @__AsyncResult);
    }
    public partial class Billing_AsyncProxy : RemObjects.SDK.AsyncProxy, IBilling_Async {
        public Billing_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public Billing_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public Billing_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public Billing_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public Billing_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public Billing_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "Billing";
        }
        public virtual System.IAsyncResult BeginLoadSuperBill(string apiKey, string Name, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "LoadSuperBill");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("Name", Name);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual System.Xml.XmlNode EndLoadSuperBill(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            System.Xml.XmlNode Result = @__LocalMessage.ReadXml("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginSaveSuperBill(string apiKey, string Name, System.Xml.XmlNode Data, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SaveSuperBill");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("Name", Name);
            @__LocalMessage.WriteXml("Data", Data);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual void EndSaveSuperBill(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            @__LocalMessage.Clear();
        }
        public virtual System.IAsyncResult BeginGetListOfAvailableSuperBills(string apiKey, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetListOfAvailableSuperBills");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual string[] EndGetListOfAvailableSuperBills(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            string[] CSVList = ((string[])(@__LocalMessage.Read("CSVList", typeof(string[]), RemObjects.SDK.StreamingFormat.AnsiString)));
            @__LocalMessage.Clear();
            return CSVList;
        }
        public virtual System.IAsyncResult BeginPostBilling(string apiKey, string user, BillingPost1 billingPost, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "PostBilling");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("user", user);
            @__LocalMessage.Write("billingPost", billingPost, typeof(BillingPost1), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndPostBilling(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginDeleteSuperbill(string apiKey, string Name, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "DeleteSuperbill");
            @__LocalMessage.WriteAnsiString("apiKey", apiKey);
            @__LocalMessage.WriteAnsiString("Name", Name);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual void EndDeleteSuperbill(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            @__LocalMessage.Clear();
        }
    }
    public interface IMSLSpecific_Async : RemObjects.SDK.IROService_Async {
        System.IAsyncResult BeginProductSetupCompleted(string SharedConnectionDataSource, string RegisteredName, System.AsyncCallback @__Callback, object @__UserData);
        bool EndProductSetupCompleted(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginPracticeNameChangeOccured(string SharedConnectionDataSource, string NewPracticeName, string DataBaseNameOrDataSetName, System.AsyncCallback @__Callback, object @__UserData);
        bool EndPracticeNameChangeOccured(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginMobileAboutDialogCalled(string SharedConnectionDataSource, string RegisteredName, string PracticeName, string DataBaseNameOrDataSetName, System.AsyncCallback @__Callback, object @__UserData);
        ApiKeyNPin EndMobileAboutDialogCalled(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginIsServerReachableFromTheInternet(string SharedConnectionDataSource, System.AsyncCallback @__Callback, object @__UserData);
        bool EndIsServerReachableFromTheInternet(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginUpdateServiceIfNeeded(System.AsyncCallback @__Callback, object @__UserData);
        void EndUpdateServiceIfNeeded(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetHostSpecGUID(System.AsyncCallback @__Callback, object @__UserData);
        string EndGetHostSpecGUID(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetLocalIP(System.AsyncCallback @__Callback, object @__UserData);
        string EndGetLocalIP(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetExternalIP(System.AsyncCallback @__Callback, object @__UserData);
        string EndGetExternalIP(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetExternalPort(System.AsyncCallback @__Callback, object @__UserData);
        int EndGetExternalPort(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginSetExternalPort(int Port, System.AsyncCallback @__Callback, object @__UserData);
        bool EndSetExternalPort(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGetLoadedCredentials(System.AsyncCallback @__Callback, object @__UserData);
        ApiKeyNCredential[] EndGetLoadedCredentials(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginAddSharedCredential(ApiKeyNCredential credential, System.AsyncCallback @__Callback, object @__UserData);
        bool EndAddSharedCredential(System.IAsyncResult @__AsyncResult);
        System.IAsyncResult BeginGenerateApiKeysForPracticesInLoadedSharedCredentials(System.AsyncCallback @__Callback, object @__UserData);
        void EndGenerateApiKeysForPracticesInLoadedSharedCredentials(System.IAsyncResult @__AsyncResult);
    }
    public partial class MSLSpecific_AsyncProxy : RemObjects.SDK.AsyncProxy, IMSLSpecific_Async {
        public MSLSpecific_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel) : 
                base(aMessage, aClientChannel) {
        }
        public MSLSpecific_AsyncProxy(RemObjects.SDK.IMessage aMessage, RemObjects.SDK.IClientChannel aClientChannel, string aOverrideInterfaceName) : 
                base(aMessage, aClientChannel, aOverrideInterfaceName) {
        }
        public MSLSpecific_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService) : 
                base(aRemoteService) {
        }
        public MSLSpecific_AsyncProxy(RemObjects.SDK.IRemoteService aRemoteService, string aOverrideInterfaceName) : 
                base(aRemoteService, aOverrideInterfaceName) {
        }
        public MSLSpecific_AsyncProxy(System.Uri aUri) : 
                base(aUri) {
        }
        public MSLSpecific_AsyncProxy(string aUrl) : 
                base(aUrl) {
        }
        protected override string @__GetInterfaceName() {
            return "MSLSpecific";
        }
        public virtual System.IAsyncResult BeginProductSetupCompleted(string SharedConnectionDataSource, string RegisteredName, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "ProductSetupCompleted");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.WriteAnsiString("RegisteredName", RegisteredName);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndProductSetupCompleted(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginPracticeNameChangeOccured(string SharedConnectionDataSource, string NewPracticeName, string DataBaseNameOrDataSetName, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "PracticeNameChangeOccured");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.WriteAnsiString("NewPracticeName", NewPracticeName);
            @__LocalMessage.WriteAnsiString("DataBaseNameOrDataSetName", DataBaseNameOrDataSetName);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndPracticeNameChangeOccured(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginMobileAboutDialogCalled(string SharedConnectionDataSource, string RegisteredName, string PracticeName, string DataBaseNameOrDataSetName, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "MobileAboutDialogCalled");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.WriteAnsiString("RegisteredName", RegisteredName);
            @__LocalMessage.WriteAnsiString("PracticeName", PracticeName);
            @__LocalMessage.WriteAnsiString("DataBaseNameOrDataSetName", DataBaseNameOrDataSetName);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ApiKeyNPin EndMobileAboutDialogCalled(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ApiKeyNPin Result = ((ApiKeyNPin)(@__LocalMessage.Read("Result", typeof(ApiKeyNPin), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginIsServerReachableFromTheInternet(string SharedConnectionDataSource, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "IsServerReachableFromTheInternet");
            @__LocalMessage.WriteAnsiString("SharedConnectionDataSource", SharedConnectionDataSource);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndIsServerReachableFromTheInternet(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginUpdateServiceIfNeeded(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "UpdateServiceIfNeeded");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual void EndUpdateServiceIfNeeded(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            @__LocalMessage.Clear();
        }
        public virtual System.IAsyncResult BeginGetHostSpecGUID(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetHostSpecGUID");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual string EndGetHostSpecGUID(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGetLocalIP(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetLocalIP");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual string EndGetLocalIP(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGetExternalIP(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetExternalIP");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual string EndGetExternalIP(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            string Result = @__LocalMessage.ReadAnsiString("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGetExternalPort(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetExternalPort");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual int EndGetExternalPort(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            int Result = @__LocalMessage.ReadInt32("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginSetExternalPort(int Port, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "SetExternalPort");
            @__LocalMessage.WriteInt32("Port", Port);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndSetExternalPort(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGetLoadedCredentials(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GetLoadedCredentials");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual ApiKeyNCredential[] EndGetLoadedCredentials(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            ApiKeyNCredential[] Result = ((ApiKeyNCredential[])(@__LocalMessage.Read("Result", typeof(ApiKeyNCredential[]), RemObjects.SDK.StreamingFormat.Default)));
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginAddSharedCredential(ApiKeyNCredential credential, System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "AddSharedCredential");
            @__LocalMessage.Write("credential", credential, typeof(ApiKeyNCredential), RemObjects.SDK.StreamingFormat.Default);
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual bool EndAddSharedCredential(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            bool Result = @__LocalMessage.ReadBoolean("Result");
            @__LocalMessage.Clear();
            return Result;
        }
        public virtual System.IAsyncResult BeginGenerateApiKeysForPracticesInLoadedSharedCredentials(System.AsyncCallback @__Callback, object @__UserData) {
            RemObjects.SDK.IMessage @__LocalMessage = this.@__GetMessage();
            @__LocalMessage.InitializeRequestMessage(@__ClientChannel, "PlutoApi", @__GetActiveInterfaceName(), "GenerateApiKeysForPracticesInLoadedSharedCredentials");
            @__LocalMessage.FinalizeMessage();
            return @__ClientChannel.AsyncDispatch(@__LocalMessage, @__Callback, @__UserData);
        }
        public virtual void EndGenerateApiKeysForPracticesInLoadedSharedCredentials(System.IAsyncResult @__AsyncResult) {
            RemObjects.SDK.IMessage @__LocalMessage = ((RemObjects.SDK.IClientAsyncResult)(@__AsyncResult)).Message;
            @__LocalMessage.Clear();
        }
    }
}
