public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			Elements = decoder.ReadEncodableArray<RelativePathElement>("Elements");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			CreateSessionId = decoder.ReadNodeId("CreateSessionId");
			CreateClientName = decoder.ReadString("CreateClientName");
			InvocationCreationTime = decoder.ReadDateTime("InvocationCreationTime");
			LastTransitionTime = decoder.ReadDateTime("LastTransitionTime");
			LastMethodCall = decoder.ReadString("LastMethodCall");
			LastMethodSessionId = decoder.ReadNodeId("LastMethodSessionId");
			LastMethodInputArguments = decoder.ReadEncodableArray<Argument>("LastMethodInputArguments");
			LastMethodOutputArguments = decoder.ReadEncodableArray<Argument>("LastMethodOutputArguments");
			LastMethodCallTime = decoder.ReadDateTime("LastMethodCallTime");
			LastMethodReturnStatus = decoder.ReadEncodable<StatusResult>("LastMethodReturnStatus");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			EndpointUrl = decoder.ReadString("EndpointUrl");
			Server = decoder.ReadEncodable<ApplicationDescription>("Server");
			ServerCertificate = decoder.ReadByteString("ServerCertificate");
			SecurityMode = decoder.ReadEnumeration<MessageSecurityMode>("SecurityMode");
			SecurityPolicyUri = decoder.ReadString("SecurityPolicyUri");
			UserIdentityTokens = decoder.ReadEncodableArray<UserTokenPolicy>("UserIdentityTokens");
			TransportProfileUri = decoder.ReadString("TransportProfileUri");
			SecurityLevel = decoder.ReadByte("SecurityLevel");
            decoder.PopNamespace();
        }
        public override void Decode(IDecoder decoder) {
			base.Decode(decoder);
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			MonitoredItems = decoder.ReadEncodableArray<MonitoredItemNotification>("MonitoredItems");
			DiagnosticInfos = decoder.ReadDiagnosticInfoArray("DiagnosticInfos");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ResponseHeader = decoder.ReadEncodable<ResponseHeader>("ResponseHeader");
			Results = decoder.ReadEncodableArray<TransferResult>("Results");
			DiagnosticInfos = decoder.ReadDiagnosticInfoArray("DiagnosticInfos");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			HistoryUpdateDetails = decoder.ReadEncodableArray<HistoryUpdateDetails>("HistoryUpdateDetails");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			SubscriptionId = decoder.ReadUInt32("SubscriptionId");
			TimestampsToReturn = decoder.ReadEnumeration<TimestampsToReturn>("TimestampsToReturn");
			ItemsToModify = decoder.ReadEncodableArray<MonitoredItemModifyRequest>("ItemsToModify");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			NodeId = decoder.ReadNodeId("NodeId");
			NodeClass = decoder.ReadEnumeration<NodeClass>("NodeClass");
			BrowseName = decoder.ReadQualifiedName("BrowseName");
			DisplayName = decoder.ReadLocalizedText("DisplayName");
			Description = decoder.ReadLocalizedText("Description");
			WriteMask = decoder.ReadUInt32("WriteMask");
			UserWriteMask = decoder.ReadUInt32("UserWriteMask");
			References = decoder.ReadEncodableArray<ReferenceNode>("References");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			View = decoder.ReadEncodable<ViewDescription>("View");
			NodeTypes = decoder.ReadEncodableArray<NodeTypeDescription>("NodeTypes");
			Filter = decoder.ReadEncodable<ContentFilter>("Filter");
			MaxDataSetsToReturn = decoder.ReadUInt32("MaxDataSetsToReturn");
			MaxReferencesToReturn = decoder.ReadUInt32("MaxReferencesToReturn");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			TypeDefinitionNode = decoder.ReadExpandedNodeId("TypeDefinitionNode");
			IncludeSubTypes = decoder.ReadBoolean("IncludeSubTypes");
			DataToReturn = decoder.ReadEncodableArray<QueryDataDescription>("DataToReturn");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ElementResults = decoder.ReadEncodableArray<ContentFilterElementResult>("ElementResults");
			ElementDiagnosticInfos = decoder.ReadDiagnosticInfoArray("ElementDiagnosticInfos");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ProductName = decoder.ReadString("ProductName");
			ProductUri = decoder.ReadString("ProductUri");
			VendorName = decoder.ReadString("VendorName");
			VendorProductCertificate = decoder.ReadByteString("VendorProductCertificate");
			SoftwareVersion = decoder.ReadString("SoftwareVersion");
			BuildNumber = decoder.ReadString("BuildNumber");
			BuildDate = decoder.ReadDateTime("BuildDate");
			IssuedBy = decoder.ReadString("IssuedBy");
			IssueDate = decoder.ReadDateTime("IssueDate");
			SupportedProfiles = decoder.ReadEncodableArray<SupportedProfile>("SupportedProfiles");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			BrowsePaths = decoder.ReadEncodableArray<BrowsePath>("BrowsePaths");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			StatusCode = decoder.ReadStatusCode("StatusCode");
			Targets = decoder.ReadEncodableArray<BrowsePathTarget>("Targets");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			NodesToWrite = decoder.ReadEncodableArray<WriteValue>("NodesToWrite");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ResponseHeader = decoder.ReadEncodable<ResponseHeader>("ResponseHeader");
			QueryDataSets = decoder.ReadEncodableArray<QueryDataSet>("QueryDataSets");
			ContinuationPoint = decoder.ReadByteString("ContinuationPoint");
			ParsingResults = decoder.ReadEncodableArray<ParsingResult>("ParsingResults");
			DiagnosticInfos = decoder.ReadDiagnosticInfoArray("DiagnosticInfos");
			FilterResult = decoder.ReadEncodable<ContentFilterResult>("FilterResult");
            decoder.PopNamespace();
        }
        public override void Decode(IDecoder decoder) {
			base.Decode(decoder);
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			PerformInsertReplace = decoder.ReadEnumeration<PerformUpdateType>("PerformInsertReplace");
			Filter = decoder.ReadEncodable<EventFilter>("Filter");
			EventData = decoder.ReadEncodableArray<HistoryEventFieldList>("EventData");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ResponseHeader = decoder.ReadEncodable<ResponseHeader>("ResponseHeader");
			QueryDataSets = decoder.ReadEncodableArray<QueryDataSet>("QueryDataSets");
			RevisedContinuationPoint = decoder.ReadByteString("RevisedContinuationPoint");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			MethodsToCall = decoder.ReadEncodableArray<CallMethodRequest>("MethodsToCall");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			MaxAge = decoder.ReadDouble("MaxAge");
			TimestampsToReturn = decoder.ReadEnumeration<TimestampsToReturn>("TimestampsToReturn");
			NodesToRead = decoder.ReadEncodableArray<ReadValueId>("NodesToRead");
            decoder.PopNamespace();
        }
        public override void Decode(IDecoder decoder) {
			base.Decode(decoder);
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			Events = decoder.ReadEncodableArray<EventFieldList>("Events");
            decoder.PopNamespace();
        }
        public override void Decode(IDecoder decoder) {
			base.Decode(decoder);
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ModificationInfos = decoder.ReadEncodableArray<ModificationInfo>("ModificationInfos");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			SubscriptionAcknowledgements = decoder.ReadEncodableArray<SubscriptionAcknowledgement>("SubscriptionAcknowledgements");
            decoder.PopNamespace();
        }
        public override void Decode(IDecoder decoder) {
			base.Decode(decoder);
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			SelectClauses = decoder.ReadEncodableArray<SimpleAttributeOperand>("SelectClauses");
			WhereClause = decoder.ReadEncodable<ContentFilter>("WhereClause");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ServerUri = decoder.ReadString("ServerUri");
			NetworkPaths = decoder.ReadEncodableArray<EndpointUrlListDataType>("NetworkPaths");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			Events = decoder.ReadEncodableArray<HistoryEventFieldList>("Events");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ResponseHeader = decoder.ReadEncodable<ResponseHeader>("ResponseHeader");
			Services = decoder.ReadEncodableArray<DnsServiceRecord>("Services");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			HistoryReadDetails = decoder.ReadExtensionObject<HistoryReadDetails>("HistoryReadDetails");
			TimestampsToReturn = decoder.ReadEnumeration<TimestampsToReturn>("TimestampsToReturn");
			ReleaseContinuationPoints = decoder.ReadBoolean("ReleaseContinuationPoints");
			NodesToRead = decoder.ReadEncodableArray<HistoryReadValueId>("NodesToRead");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			ResponseHeader = decoder.ReadEncodable<ResponseHeader>("ResponseHeader");
			Endpoints = decoder.ReadEncodableArray<EndpointDescription>("Endpoints");
            decoder.PopNamespace();
        }
        public virtual void Decode(IDecoder decoder) {
            decoder.PushNamespace("http://opcfoundation.org/UA/2008/02/Types.xsd");
			RequestHeader = decoder.ReadEncodable<RequestHeader>("RequestHeader");
			View = decoder.ReadEncodable<ViewDescription>("View");
			RequestedMaxReferencesPerNode = decoder.ReadUInt32("RequestedMaxReferencesPerNode");
			NodesToBrowse = decoder.ReadEncodableArray<BrowseDescription>("NodesToBrowse");
            decoder.PopNamespace();
        }